diff options
-rw-r--r-- | Makefile.config.in | 1 | ||||
-rw-r--r-- | Makefile.lib | 23 |
2 files changed, 20 insertions, 4 deletions
diff --git a/Makefile.config.in b/Makefile.config.in index 45fb74c91..bfe3deab9 100644 --- a/Makefile.config.in +++ b/Makefile.config.in @@ -1,3 +1,4 @@ +BUILD_DEBUG = 1 CC = @CC@ CFLAGS = @CFLAGS@ CXX = @CXX@ diff --git a/Makefile.lib b/Makefile.lib index 4df40c9d2..b045534dc 100644 --- a/Makefile.lib +++ b/Makefile.lib @@ -17,17 +17,33 @@ endef $(foreach mf, $(SUBS), $(eval $(call include_sub_makefile, $(mf)))) +# Initialise some variables. clean_list := dist_files := +QUIET = @ -QUIET = @ +# Pass -fPIC if we're building dynamic libraries. +ifeq ($(BUILD_SHARED_LIBS), 1) +GLOBAL_CFLAGS += -fPIC +GLOBAL_CXXFLAGS += -fPIC +endif + + +# Pass -g if we want debug info. +ifeq ($(BUILD_DEBUG), 1) +GLOBAL_CFLAGS += -g +GLOBAL_CXXFLAGS += -g +endif + + +# Pattern rules. %.o: %.cc - $(QUIET) $(CXX) -o $@ -c $< -g -fPIC $(GLOBAL_CXXFLAGS) $(CXXFLAGS) $($@_CXXFLAGS) -MMD -MF $(basename $@).dep -MP + $(QUIET) $(CXX) -o $@ -c $< $(GLOBAL_CXXFLAGS) $(CXXFLAGS) $($@_CXXFLAGS) -MMD -MF $(basename $@).dep -MP %.o: %.c - $(QUIET) $(CC) -o $@ -c $< -g -fPIC $(GLOBAL_CFLAGS) $(CFLAGS) $($@_CFLAGS) -MMD -MF $(basename $@).dep -MP + $(QUIET) $(CC) -o $@ -c $< $(GLOBAL_CFLAGS) $(CFLAGS) $($@_CFLAGS) -MMD -MF $(basename $@).dep -MP # Generate Make rules for libraries. @@ -91,7 +107,6 @@ dist: # Cleaning stuff. - clean: rm -fv $(clean_list) |