From 3d578b0e0221740434c19fdab3eadc7a81762f5f Mon Sep 17 00:00:00 2001 From: Oliver Bock <oliver.bock@aei.mpg.de> Date: Thu, 23 Oct 2008 17:13:25 +0200 Subject: [PATCH] Optimized makefiles (e.g. make sure LDFLAGS isn't emptied by concatenation) --- src/framework/Makefile | 13 ++++++------- src/framework/Makefile.mingw | 13 ++++++------- src/starsphere/Makefile | 17 ++++++++++------- src/starsphere/Makefile.macos | 9 +++++---- src/starsphere/Makefile.mingw | 7 +++---- 5 files changed, 30 insertions(+), 29 deletions(-) diff --git a/src/framework/Makefile b/src/framework/Makefile index 8a8ace7..e15ddc6 100644 --- a/src/framework/Makefile +++ b/src/framework/Makefile @@ -26,7 +26,7 @@ FRAMEWORK_INSTALL?=$(PWD) CXX?=g++ # variables -CPPFLAGS = $(shell $(FRAMEWORK_INSTALL)/bin/sdl-config --cflags) +CPPFLAGS += $(shell $(FRAMEWORK_INSTALL)/bin/sdl-config --cflags) CPPFLAGS += $(shell $(FRAMEWORK_INSTALL)/bin/freetype-config --cflags) CPPFLAGS += $(shell $(FRAMEWORK_INSTALL)/bin/xml2-config --cflags) CPPFLAGS += -I$(FRAMEWORK_INSTALL)/include/BOINC -I/usr/include @@ -47,7 +47,6 @@ release: clean libframework.a # target specific options debug: CPPFLAGS += -pg -ggdb3 -O0 -Wall -Wno-switch-enum release: CPPFLAGS += -DNDEBUG -ggdb3 -O3 -Wall -Wno-switch-enum -release: LDFLAGS += # file based targets libframework.a: $(OBJS) @@ -55,19 +54,19 @@ libframework.a: $(OBJS) AbstractGraphicsEngine.o: $(DEPS) $(FRAMEWORK_SRC)/AbstractGraphicsEngine.cpp $(FRAMEWORK_SRC)/AbstractGraphicsEngine.h $(CXX) -g ${CPPFLAGS} -c $(FRAMEWORK_SRC)/AbstractGraphicsEngine.cpp - + GraphicsEngineFactory.o: $(DEPS) $(FRAMEWORK_SRC)/GraphicsEngineFactory.cpp $(FRAMEWORK_SRC)/GraphicsEngineFactory.h $(CXX) -g ${CPPFLAGS} -c $(FRAMEWORK_SRC)/GraphicsEngineFactory.cpp - + WindowManager.o: $(DEPS) $(FRAMEWORK_SRC)/WindowManager.cpp $(FRAMEWORK_SRC)/WindowManager.h $(CXX) -g ${CPPFLAGS} -c $(FRAMEWORK_SRC)/WindowManager.cpp - + BOINCClientAdapter.o: $(DEPS) $(FRAMEWORK_SRC)/BOINCClientAdapter.cpp $(FRAMEWORK_SRC)/BOINCClientAdapter.h $(CXX) -g ${CPPFLAGS} -c $(FRAMEWORK_SRC)/BOINCClientAdapter.cpp - + ResourceFactory.o: $(DEPS) $(FRAMEWORK_SRC)/ResourceFactory.cpp $(FRAMEWORK_SRC)/ResourceFactory.h $(CXX) -g ${CPPFLAGS} -c $(FRAMEWORK_SRC)/ResourceFactory.cpp - + Resource.o: $(DEPS) $(FRAMEWORK_SRC)/Resource.cpp $(FRAMEWORK_SRC)/Resource.h $(CXX) -g ${CPPFLAGS} -c $(FRAMEWORK_SRC)/Resource.cpp diff --git a/src/framework/Makefile.mingw b/src/framework/Makefile.mingw index ee54f08..5976f6a 100644 --- a/src/framework/Makefile.mingw +++ b/src/framework/Makefile.mingw @@ -26,7 +26,7 @@ FRAMEWORK_INSTALL?=$(PWD) CXX?=g++ # variables -CPPFLAGS = $(shell $(FRAMEWORK_INSTALL)/bin/sdl-config --cflags) +CPPFLAGS += $(shell $(FRAMEWORK_INSTALL)/bin/sdl-config --cflags) CPPFLAGS += $(shell $(FRAMEWORK_INSTALL)/bin/freetype-config --cflags) CPPFLAGS += $(shell $(FRAMEWORK_INSTALL)/bin/xml2-config --cflags) CPPFLAGS += -I$(FRAMEWORK_INSTALL)/include/BOINC -I$(FRAMEWORK_INSTALL)/include @@ -47,7 +47,6 @@ release: clean libframework.a # target specific options debug: CPPFLAGS += -pg -gstabs3 -O0 -Wall -Wno-switch-enum release: CPPFLAGS += -DNDEBUG -gstabs3 -O3 -Wall -Wno-switch-enum -release: LDFLAGS += # file based targets libframework.a: $(OBJS) @@ -55,19 +54,19 @@ libframework.a: $(OBJS) AbstractGraphicsEngine.o: $(DEPS) $(FRAMEWORK_SRC)/AbstractGraphicsEngine.cpp $(FRAMEWORK_SRC)/AbstractGraphicsEngine.h $(CXX) -g ${CPPFLAGS} -c $(FRAMEWORK_SRC)/AbstractGraphicsEngine.cpp - + GraphicsEngineFactory.o: $(DEPS) $(FRAMEWORK_SRC)/GraphicsEngineFactory.cpp $(FRAMEWORK_SRC)/GraphicsEngineFactory.h $(CXX) -g ${CPPFLAGS} -c $(FRAMEWORK_SRC)/GraphicsEngineFactory.cpp - + WindowManager.o: $(DEPS) $(FRAMEWORK_SRC)/WindowManager.cpp $(FRAMEWORK_SRC)/WindowManager.h $(CXX) -g ${CPPFLAGS} -c $(FRAMEWORK_SRC)/WindowManager.cpp - + BOINCClientAdapter.o: $(DEPS) $(FRAMEWORK_SRC)/BOINCClientAdapter.cpp $(FRAMEWORK_SRC)/BOINCClientAdapter.h $(CXX) -g ${CPPFLAGS} -c $(FRAMEWORK_SRC)/BOINCClientAdapter.cpp - + ResourceFactory.o: $(DEPS) $(FRAMEWORK_SRC)/ResourceFactory.cpp $(FRAMEWORK_SRC)/ResourceFactory.h $(CXX) -g ${CPPFLAGS} -c $(FRAMEWORK_SRC)/ResourceFactory.cpp - + Resource.o: $(DEPS) $(FRAMEWORK_SRC)/Resource.cpp $(FRAMEWORK_SRC)/Resource.h $(CXX) -g ${CPPFLAGS} -c $(FRAMEWORK_SRC)/Resource.cpp diff --git a/src/starsphere/Makefile b/src/starsphere/Makefile index 0fbfb80..b613bfc 100644 --- a/src/starsphere/Makefile +++ b/src/starsphere/Makefile @@ -26,15 +26,19 @@ STARSPHERE_INSTALL?=$(PWD) CXX ?= g++ # variables -LIBS = -Wl,-Bstatic -lframework -loglft -L$(STARSPHERE_INSTALL)/lib +LIBS += -Wl,-Bstatic -lframework -loglft -L$(STARSPHERE_INSTALL)/lib LIBS += $(shell $(STARSPHERE_INSTALL)/bin/freetype-config --libs) LIBS += $(shell $(STARSPHERE_INSTALL)/bin/xml2-config --libs) -LIBS += -lboinc_api -lboinc -L/usr/lib -LIBS += -Wl,-Bdynamic $(shell $(STARSPHERE_INSTALL)/bin/sdl-config --static-libs) -lGL -lGLU +LIBS += -lboinc_api -lboinc +LIBS += -lstdc++ +LIBS += -L/usr/lib +LIBS += -Wl,-Bdynamic $(shell $(STARSPHERE_INSTALL)/bin/sdl-config --static-libs) +LIBS += -lGL -lGLU +LIBS += -lpthread -lm -lc -LDFLAGS = -static-libgcc +LDFLAGS += -static-libgcc -CPPFLAGS = -I$(STARSPHERE_INSTALL)/include +CPPFLAGS += -I$(STARSPHERE_INSTALL)/include CPPFLAGS += $(shell $(STARSPHERE_INSTALL)/bin/sdl-config --cflags) CPPFLAGS += $(shell $(STARSPHERE_INSTALL)/bin/freetype-config --cflags) CPPFLAGS += $(shell $(STARSPHERE_INSTALL)/bin/xml2-config --cflags) @@ -58,7 +62,6 @@ callgrind: clean debug starsphere # target specific options debug: CPPFLAGS += -pg -ggdb3 -O0 -Wall -Wno-switch-enum release: CPPFLAGS += -DNDEBUG -ggdb3 -O3 -Wall -Wno-switch-enum -release: LDFLAGS += starsphere_EinsteinS5R3: CPPFLAGS += -D SCIENCE_APP=EinsteinS5R3 starsphere_EinsteinRadio: CPPFLAGS += -D SCIENCE_APP=EinsteinRadio memcheck: CPPFLAGS += $(DEBUGFLAGSCPP) -D DEBUG_VALGRIND @@ -73,7 +76,7 @@ starsphere_EinsteinRadio: $(DEPS) $(STARSPHERE_SRC)/main.cpp $(OBJS) Starsphere.o: $(DEPS) $(STARSPHERE_SRC)/Starsphere.cpp $(STARSPHERE_SRC)/Starsphere.h $(CXX) -g $(CPPFLAGS) -c $(STARSPHERE_SRC)/Starsphere.cpp - + StarsphereS5R3.o: $(DEPS) $(STARSPHERE_SRC)/StarsphereS5R3.cpp $(STARSPHERE_SRC)/StarsphereS5R3.h $(CXX) -g $(CPPFLAGS) -c $(STARSPHERE_SRC)/StarsphereS5R3.cpp diff --git a/src/starsphere/Makefile.macos b/src/starsphere/Makefile.macos index c2bd56e..e1fef21 100644 --- a/src/starsphere/Makefile.macos +++ b/src/starsphere/Makefile.macos @@ -26,15 +26,17 @@ STARSPHERE_INSTALL?=$(PWD) CXX ?= g++ # variables -LIBS = -lframework -loglft -L$(STARSPHERE_INSTALL)/lib +LIBS += -lframework -loglft -L$(STARSPHERE_INSTALL)/lib LIBS += $(shell $(STARSPHERE_INSTALL)/bin/freetype-config --libs) LIBS += $(shell $(STARSPHERE_INSTALL)/bin/xml2-config --libs) LIBS += -lboinc_graphics2 -lboinc_api -lboinc -L$(STARSPHERE_INSTALL)/lib LIBS += $(shell $(STARSPHERE_INSTALL)/bin/sdl-config --static-libs) +LIBS += -lstdc++ +LIBS += -lpthread -lm -lc -LDFLAGS = -static-libgcc +LDFLAGS += -static-libgcc -CPPFLAGS = -I$(STARSPHERE_INSTALL)/include +CPPFLAGS += -I$(STARSPHERE_INSTALL)/include CPPFLAGS += $(shell $(STARSPHERE_INSTALL)/bin/sdl-config --cflags) CPPFLAGS += $(shell $(STARSPHERE_INSTALL)/bin/freetype-config --cflags) CPPFLAGS += $(shell $(STARSPHERE_INSTALL)/bin/xml2-config --cflags) @@ -59,7 +61,6 @@ callgrind: clean debug starsphere # target specific options debug: CPPFLAGS += -pg -ggdb3 -O0 -Wall -Wno-switch-enum release: CPPFLAGS += -DNDEBUG -ggdb3 -O3 -Wall -Wno-switch-enum -release: LDFLAGS += starsphere_EinsteinS5R3: CPPFLAGS += -D SCIENCE_APP=EinsteinS5R3 starsphere_EinsteinRadio: CPPFLAGS += -D SCIENCE_APP=EinsteinRadio memcheck: CPPFLAGS += $(DEBUGFLAGSCPP) -D DEBUG_VALGRIND diff --git a/src/starsphere/Makefile.mingw b/src/starsphere/Makefile.mingw index b98624f..cdb872a 100644 --- a/src/starsphere/Makefile.mingw +++ b/src/starsphere/Makefile.mingw @@ -26,7 +26,7 @@ STARSPHERE_INSTALL?=$(PWD) CXX ?= g++ # variables -LIBS = -Wl,-Bstatic +LIBS += -Wl,-Bstatic LIBS += -lframework -loglft -L$(STARSPHERE_INSTALL)/lib LIBS += $(shell $(STARSPHERE_INSTALL)/bin/freetype-config --libs) LIBS += $(shell $(STARSPHERE_INSTALL)/bin/xml2-config --libs) @@ -36,9 +36,9 @@ LIBS += -Wl,-Bdynamic LIBS += $(shell $(STARSPHERE_INSTALL)/bin/sdl-config --static-libs) LIBS += -lopengl32 -lglu32 -LDFLAGS = -static-libgcc +LDFLAGS += -static-libgcc -CPPFLAGS = -I$(STARSPHERE_INSTALL)/include +CPPFLAGS += -I$(STARSPHERE_INSTALL)/include CPPFLAGS += $(shell $(STARSPHERE_INSTALL)/bin/sdl-config --cflags) CPPFLAGS += $(shell $(STARSPHERE_INSTALL)/bin/freetype-config --cflags) CPPFLAGS += $(shell $(STARSPHERE_INSTALL)/bin/xml2-config --cflags) @@ -62,7 +62,6 @@ callgrind: clean debug starsphere # target specific options debug: CPPFLAGS += -pg -gstabs3 -O0 -Wall -Wno-switch-enum release: CPPFLAGS += -DNDEBUG -gstabs3 -O3 -Wall -Wno-switch-enum -release: LDFLAGS += starsphere_EinsteinS5R3: CPPFLAGS += -D SCIENCE_APP=EinsteinS5R3 starsphere_EinsteinRadio: CPPFLAGS += -D SCIENCE_APP=EinsteinRadio memcheck: CPPFLAGS += $(DEBUGFLAGSCPP) -D DEBUG_VALGRIND -- GitLab