--- Makefile.orig 2016-01-21 01:07:59.465866154 +0300 +++ Makefile 2016-01-21 01:09:35.673836966 +0300 @@ -23,6 +23,13 @@ PREFIX ?= arm-none-eabi STYLECHECK := scripts/checkpatch.pl STYLECHECKFLAGS := --no-tree -f --terse --mailback +DESTDIR ?= /usr/local + +INCDIR := $(DESTDIR)/$(PREFIX)/include +LIBDIR := $(DESTDIR)/$(PREFIX)/lib +SHAREDIR := $(DESTDIR)/$(PREFIX)/share/libopencm3/scripts +INSTALL := install + space:= space+= SRCLIBDIR:= $(subst $(space),\$(space),$(realpath lib)) @@ -64,6 +71,23 @@ $(LIB_DIRS): $(IRQ_DEFN_FILES:=.genhdr) lib: $(LIB_DIRS) $(Q)true +install: lib + @printf " INSTALL headers\n" + $(Q)$(INSTALL) -d $(INCDIR)/libopencm3 + $(Q)$(INSTALL) -d $(INCDIR)/libopencmsis + $(Q)$(INSTALL) -d $(LIBDIR) + $(Q)$(INSTALL) -d $(SHAREDIR) + $(Q)cp -r include/libopencm3/* $(INCDIR)/libopencm3 + $(Q)cp -r include/libopencmsis/* $(INCDIR)/libopencmsis + @printf " INSTALL libs\n" + $(Q)$(INSTALL) -m 0644 lib/*.a $(LIBDIR) + @printf " INSTALL ldscripts\n" + $(Q)$(INSTALL) -m 0644 lib/*.ld $(LIBDIR) + $(Q)$(INSTALL) -m 0644 lib/efm32/*/*.ld $(LIBDIR) + @printf " INSTALL scripts\n" + $(Q)$(INSTALL) -m 0644 scripts/*.scr $(SHAREDIR) + + html doc: $(Q)$(MAKE) -C doc html @@ -106,4 +130,4 @@ genlinktests: $(LDTESTS:.data=.ldtest) fi; -.PHONY: build lib $(LIB_DIRS) doc clean generatedheaders cleanheaders stylecheck genlinktests +.PHONY: build lib $(LIB_DIRS) install doc clean generatedheaders cleanheaders stylecheck genlinktests