build: add install targets for the examples
authorJames Almer <jamrial@gmail.com>
Thu, 5 Oct 2017 03:47:41 +0000 (00:47 -0300)
committerJames Almer <jamrial@gmail.com>
Thu, 5 Oct 2017 14:35:56 +0000 (11:35 -0300)
Split it off from install-data.

Among other things, this prevents spamming triplicate log lines during install.

Reviewed-by: Clément Bœsch <u@pkh.me>
Signed-off-by: James Almer <jamrial@gmail.com>
Makefile
doc/examples/Makefile

index 3007da5..4a1253a 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -120,11 +120,9 @@ install: install-libs install-headers
 
 install-libs: install-libs-yes
 
-install-data: $(DATA_FILES) $(EXAMPLES_FILES) $(EXAMPLE_MAKEFILE)
-       $(Q)mkdir -p "$(DATADIR)/examples"
+install-data: $(DATA_FILES)
+       $(Q)mkdir -p "$(DATADIR)"
        $(INSTALL) -m 644 $(DATA_FILES) "$(DATADIR)"
-       $(INSTALL) -m 644 $(EXAMPLES_FILES) "$(DATADIR)/examples"
-       $(INSTALL) -m 644 $(EXAMPLE_MAKEFILE:%=%.example) "$(DATADIR)/examples/Makefile"
 
 uninstall: uninstall-libs uninstall-headers uninstall-data
 
index af000d9..58afd71 100644 (file)
@@ -26,8 +26,8 @@ ALL_EXAMPLES   := $(EXAMPLES) $(EXAMPLES-:%=doc/examples/%$(PROGSSUF)$(EXESUF))
 ALL_EXAMPLES_G := $(EXAMPLES_G) $(EXAMPLES-:%=doc/examples/%$(PROGSSUF)_g$(EXESUF))
 PROGS          += $(EXAMPLES)
 
-EXAMPLES_FILES := $(wildcard $(SRC_PATH)/doc/examples/*.c) $(SRC_PATH)/doc/examples/README
 EXAMPLE_MAKEFILE := $(SRC_PATH)/doc/examples/Makefile
+EXAMPLES_FILES := $(wildcard $(SRC_PATH)/doc/examples/*.c) $(SRC_PATH)/doc/examples/README $(EXAMPLE_MAKEFILE)
 
 $(foreach P,$(EXAMPLES),$(eval OBJS-$(P:%$(PROGSSUF)$(EXESUF)=%) = $(P:%$(PROGSSUF)$(EXESUF)=%).o))
 $(EXAMPLES_G): %$(PROGSSUF)_g$(EXESUF): %.o
@@ -39,6 +39,18 @@ OBJDIRS += doc/examples
 
 DOXY_INPUT += $(EXAMPLES:%$(PROGSSUF)$(EXESUF)=%.c)
 
+install: install-examples
+
+install-examples: $(EXAMPLES_FILES)
+       $(Q)mkdir -p "$(DATADIR)/examples"
+       $(INSTALL) -m 644 $(EXAMPLES_FILES) "$(DATADIR)/examples"
+       $(INSTALL) -m 644 $(EXAMPLE_MAKEFILE:%=%.example) "$(DATADIR)/examples/Makefile"
+
+uninstall: uninstall-examples
+
+uninstall-examples:
+       $(RM) -r "$(DATADIR)/examples"
+
 examplesclean:
        $(RM) $(ALL_EXAMPLES) $(ALL_EXAMPLES_G)
        $(RM) $(CLEANSUFFIXES:%=doc/examples/%)