Automatically emit make rules for header files
This commit is contained in:
parent
b8e9efc476
commit
bc96c4518e
2 changed files with 7 additions and 4 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -129,6 +129,7 @@ Makefile.config
|
|||
*.la
|
||||
*.o
|
||||
*.so
|
||||
*.dep
|
||||
*~
|
||||
|
||||
# GNU Global
|
||||
|
|
10
Makefile.lib
10
Makefile.lib
|
@ -7,10 +7,10 @@ LIBS =
|
|||
QUIET = @
|
||||
|
||||
%.o: %.cc
|
||||
$(QUIET) g++ -o $@ -c $^ -g -fPIC $(CXXFLAGS) $($@_CXXFLAGS)
|
||||
$(QUIET) g++ -o $@ -c $< -g -fPIC $(CXXFLAGS) $($@_CXXFLAGS) -MMD -MF $(basename $@).dep -MP
|
||||
|
||||
%.o: %.c
|
||||
$(QUIET) gcc -o $@ -c $^ -g -fPIC $(CFLAGS) $($@_CFLAGS)
|
||||
$(QUIET) gcc -o $@ -c $< -g -fPIC $(CFLAGS) $($@_CFLAGS) -MMD -MF $(basename $@).dep -MP
|
||||
|
||||
|
||||
# Generate Make rules for libraries.
|
||||
|
@ -28,7 +28,9 @@ define LIBS_template =
|
|||
# Propagate CXXFLAGS to the individual object files.
|
||||
$$(foreach obj, $$(_objs), $$(eval $$(obj)_CXXFLAGS=$$($(1)_CXXFLAGS)))
|
||||
|
||||
clean_list += $$(_lib) $$(_objs)
|
||||
include $$(wildcard $$(_d)/*.dep)
|
||||
|
||||
clean_list += $$(_lib) $$(_objs) $$(_d)*.dep
|
||||
libs_list += $$(_lib)
|
||||
endef
|
||||
|
||||
|
@ -48,7 +50,7 @@ define PROGRAMS_template =
|
|||
# Propagate CXXFLAGS to the individual object files.
|
||||
$$(foreach obj, $$(_objs), $$(eval $$(obj)_CXXFLAGS=$$($(1)_CXXFLAGS)))
|
||||
|
||||
clean_list += $$(_prog) $$(_objs)
|
||||
clean_list += $$(_prog) $$(_objs) $$(_d)*.dep
|
||||
programs_list += $$(_prog)
|
||||
endef
|
||||
|
||||
|
|
Loading…
Reference in a new issue