CC := @CC@
CXX := @CXX@
-CPPFLAGS := @CPPFLAGS@
-CXXFLAGS := @CXXFLAGS@
-COMPILE := $(CXX) -MMD -MP $(CPPFLAGS) $(CXXFLAGS) \
+CFLAGS += @CFLAGS@
+CPPFLAGS += @CPPFLAGS@
+CXXFLAGS += @CXXFLAGS@
+COMPILE := $(CXX) -MMD -MP $(CPPFLAGS) $(CFLAGS) $(CXXFLAGS) \
$(sprojs_include)
-COMPILE_C := $(CC) -MMD -MP $(CPPFLAGS) $(CXXFLAGS) \
+COMPILE_C := $(CC) -MMD -MP $(CPPFLAGS) $(CFLAGS) \
$(sprojs_include)
# Linker
# - LDFLAGS : Flags for the linker (eg. -L)
$(2)_c_objs := $$(patsubst %.c, %.o, $$($(2)_c_srcs))
$(2)_deps := $$(patsubst %.o, %.d, $$($(2)_objs))
$(2)_c_deps := $$(patsubst %.o, %.d, $$($(2)_c_objs))
-$$($(2)_objs) : %.o : %.cc
+$$($(2)_objs) : %.o : %.cc $$($(2)_gen_hdrs)
$(COMPILE) -c $$<
-$$($(2)_c_objs) : %.o : %.c
+$$($(2)_c_objs) : %.o : %.c $$($(2)_gen_hdrs)
$(COMPILE_C) -c $$<
$(2)_junk += $$($(2)_objs) $$($(2)_c_objs) $$($(2)_deps) $$($(2)_c_deps)
$(2)_install_prog_deps := $$(patsubst %.o, %.d, $$($(2)_install_prog_objs))
$(2)_install_prog_exes := $$(patsubst %.cc, %, $$($(2)_install_prog_srcs))
-$$($(2)_install_prog_objs) : %.o : %.cc
+$$($(2)_install_prog_objs) : %.o : %.cc $$($(2)_gen_hdrs)
$(COMPILE) -c $$<
$$($(2)_install_prog_exes) : % : %.o $$($(2)_prog_libnames)
libs += lib$(1).a
objs += $$($(2)_objs)
srcs += $$(addprefix $(src_dir)/$(1)/, $$($(2)_srcs))
-hdrs += $$(addprefix $(src_dir)/$(1)/, $$($(2)_hdrs))
+hdrs += $$(addprefix $(src_dir)/$(1)/, $$($(2)_hdrs)) $$($(2)_gen_hdrs)
junk += $$($(2)_junk)
deps += $$($(2)_deps)
test_outs += $$($(2)_test_outs)
-install_hdrs += $$(addprefix $(src_dir)/$(1)/, $$($(2)_hdrs))
+install_hdrs += $$(addprefix $(src_dir)/$(1)/, $$($(2)_hdrs)) $$($(2)_gen_hdrs)
install_libs += lib$(1).a
install_exes += $$($(2)_install_prog_exes)
install-hdrs : $(install_hdrs)
$(MKINSTALLDIRS) $(install_hdrs_dir)
- for file in $(install_hdrs); \
+ for file in $^; \
do \
$(INSTALL_HDR) $$file $(install_hdrs_dir); \
done
install-libs : $(install_libs)
$(MKINSTALLDIRS) $(install_libs_dir)
- for file in $(install_libs); \
+ for file in $^; \
do \
$(INSTALL_LIB) $$file $(install_libs_dir); \
done
install-exes : $(install_exes)
$(MKINSTALLDIRS) $(install_exes_dir)
- for file in $(install_exes); \
+ for file in $^; \
do \
$(INSTALL_EXE) $$file $(install_exes_dir); \
done