From 8d7243b516c34e73b01892f96c7e78f5a589e8d1 Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Thu, 23 May 2002 09:58:44 +0000 Subject: [PATCH] defs-orig.mk, rules.mk: Started support for shared libraries --- make/defs-orig.mk | 12 +++++++----- make/rules.mk | 17 ++++++++++++++--- 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/make/defs-orig.mk b/make/defs-orig.mk index 92a5947f..1b5df1b8 100644 --- a/make/defs-orig.mk +++ b/make/defs-orig.mk @@ -85,16 +85,18 @@ ALL_CSRC = $(LOCAL_CSRC) $(PREREQ_CSRC) TEXTCLEAN = $(wildcard *~ .*~ .*.swp *.rep) INCLUDE = -I. -I$(TOPDIR)/include -I$(MODDIR)/include $(PROJECT_INCLUDE) $(LOCAL_INCLUDE) INSTALL_LIBDIR = $(PREFIX)/lib -LIB = $(LIBDIR)/lib$(LIBNAME).a -MEMBERS = $(LIB)($(OBJ)) + +LIB_SO = $(LIBDIR)/lib$(LIBNAME).so +LIB_A = $(LIBDIR)/lib$(LIBNAME).a +MEMBERS = $(LIB_A)($(OBJ)) #PREFIX = ../# CAUTION: This breaks the installation in the project #MEMWATCH = -DMEMWATCH -DMW_STDIO #YAMD = yamd- #EFENCE = -lefence -#CFLAGS = -DNDEBUG -O2 -g $(INCLUDE) $(LOCAL_CFLAGS) #production +#CFLAGS += -DNDEBUG -O2 -g $(INCLUDE) $(LOCAL_CFLAGS) #production CFLAGS_DEBUG = -Wall -D_DEBUG_ -g3 $(MEMWATCH) -CFLAGS = $(INCLUDE) $(PROJECT_CFLAGS) $(CFLAGS_DEBUG) $(LOCAL_CFLAGS) $(YLIB_CFLAGS) -CPPFLAGS = $(INCLUDE) $(PROJECT_CPPFLAGS) $(CPPFLAGS_DEBUG) $(LOCAL_CPPFLAGS) $(YLIB_CPPFLAGS) +CFLAGS += $(INCLUDE) $(PROJECT_CFLAGS) $(CFLAGS_DEBUG) $(LOCAL_CFLAGS) $(YLIB_CFLAGS) +CPPFLAGS += $(INCLUDE) $(PROJECT_CPPFLAGS) $(CPPFLAGS_DEBUG) $(LOCAL_CPPFLAGS) $(YLIB_CPPFLAGS) LDFFTW = -lrfftw -lfftw -lm #LDAUDIO = -laudiofile diff --git a/make/rules.mk b/make/rules.mk index 4cd1bc4c..d1fce6e3 100644 --- a/make/rules.mk +++ b/make/rules.mk @@ -27,9 +27,16 @@ $(LIBDIR): moc_%.cpp: %.h $(MOC) -o $@ $< -lib%.so: %.o # $(LIB) +ifeq ($(LIBTYPE),shared) +lib%.so: %.o $(LIB_SO) +else +lib%.so: %.o +endif $(CC) $< $(LDFLAGS) -o $@ +$(LIB_SO): $(LIB_A) + $(CC) $< $(filter-out -l$(LIBNAME),$(LDFLAGS)) -o $@ + $(TOPDIR)/include: mkdir -p $@ @@ -46,7 +53,11 @@ timers_%.h: %.h $(GENERATE_FUNC_TIMERS) sh $(GENERATE_FUNC_TIMERS) $< $@ ifeq ($(USE_PROJECT_LIB),true) -$(EXE): $(OBJ) $(LIB) +ifeq ($(LIBTYPE),shared) +$(EXE): $(OBJ) $(LIB_SO) +else +$(EXE): $(OBJ) $(LIB_A) +endif else $(EXE): $(OBJ) endif @@ -101,7 +112,7 @@ localclean: $(LOCAL_CLEAN) rm -rf $(CLEAN) libclean: - rm -rf $(LIB) + rm -rf $(LIB_A) $(LIB_SO) vcdistclean: rm -rf *.plg *.opt *.ncb Debug *.exe dist *.ilk