commit 643e1d6

Michael Forney  ·  2013-11-23 01:38:44 +0000 UTC
parent 3d65344
Makefile: Allow overriding of per-package CFLAGS/LIBS
2 files changed,  +8, -5
+6, -3
 1@@ -12,7 +12,6 @@ SUBDIRS         := launch libswc protocol
 2 CLEAN_FILES     := $(TARGETS)
 3 
 4 include config.mk
 5-include $(SUBDIRS:%=%/Makefile.local)
 6 
 7 ifeq ($(if $(V),$(V),0), 0)
 8     define quiet
 9@@ -28,8 +27,12 @@ define check_deps
10     @$(PKG_CONFIG) --exists --print-errors $2
11 endef
12 
13-compile = $(call quiet,CC) $(CFLAGS) $(CPPFLAGS) -I . -c -MMD -MP -MF .deps/$(basename $<).d -o $@ $<
14-link    = $(call quiet,CCLD,$(CC)) $(CFLAGS) -o $@ $^
15+compile     = $(call quiet,CC) $(CFLAGS) $(CPPFLAGS) -I . -c -MMD -MP -MF .deps/$(basename $<).d -o $@ $<
16+link        = $(call quiet,CCLD,$(CC)) $(CFLAGS) -o $@ $^
17+pkgconfig   = $(sort $(foreach pkg,$(1),$(if $($(pkg)_$(3)),$($(pkg)_$(3)), \
18+                                           $(shell $(PKG_CONFIG) --$(2) $(pkg)))))
19+
20+include $(SUBDIRS:%=%/Makefile.local)
21 
22 $(foreach dir,BIN LIB INCLUDE PKGCONFIG,$(DESTDIR)$($(dir)DIR)):
23 	mkdir -p "$@"
+2, -2
 1@@ -20,10 +20,10 @@ $(dir)/%.lo: $(dir)/%.c | .deps/$(dir)
 2 
 3 ifdef $(dir)_PACKAGES
 4     ifndef $(dir)_PACKAGE_CFLAGS
 5-        $(dir)_PACKAGE_CFLAGS := $(shell $(PKG_CONFIG) --cflags $($(dir)_PACKAGES))
 6+        $(dir)_PACKAGE_CFLAGS := $(call pkgconfig,$($(dir)_PACKAGES),cflags,CFLAGS)
 7     endif
 8     ifndef $(dir)_PACKAGE_LIBS
 9-        $(dir)_PACKAGE_LIBS := $(shell $(PKG_CONFIG) --libs $($(dir)_PACKAGES))
10+        $(dir)_PACKAGE_LIBS := $(call pkgconfig,$($(dir)_PACKAGES),libs,LIBS)
11     endif
12 endif
13