summarylogtreecommitdiffstats
path: root/0001-Revert-Drop-install-target-and-documentation.patch
blob: 6d4f01e3a586c2246c1be2cc8af2057f28d50027 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
diff --git a/Makefile b/Makefile
index 6929769d..ca06efd7 100644
--- a/Makefile
+++ b/Makefile
@@ -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))
@@ -70,6 +77,22 @@ $(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/*/*.ld $(LIBDIR)
+	$(Q)$(INSTALL) -m 0644 lib/*/*/*.ld $(LIBDIR)
+
+
 html doc:
 	$(Q)$(MAKE) -C doc html
 
@@ -114,4 +137,4 @@ genlinktests.clean:
 	fi;
 
 
-.PHONY: build lib $(LIB_DIRS) doc clean generatedheaders cleanheaders stylecheck genlinktests genlinktests.clean
+.PHONY: build lib $(LIB_DIRS) install doc clean generatedheaders cleanheaders stylecheck genlinktests genlinktests.clean