From: Patrik Gornicz Date: Wed, 1 Jul 2009 15:12:42 +0000 (-0400) Subject: create B_ varibles for build types X-Git-Tag: libbear-premerge~38 X-Git-Url: http://gitweb.pgornicz.com/?a=commitdiff_plain;h=698cb4b65e827dc9cbc227444901a82fa0ea72d4;p=libbear.git create B_ varibles for build types --- diff --git a/Makefile b/Makefile index 18a01d8..a1a2d5c 100644 --- a/Makefile +++ b/Makefile @@ -1,10 +1,4 @@ -# set this on the command line to get a WIN32 or a FINAL build -BUILD := DEBUG - -# cause the fancy $${@D} directory rules to work out -.SECONDEXPANSION: - # The first and therefor default rule .PHONY: default default: diff --git a/lib/vars.mk b/lib/vars.mk index 167c333..d739f7d 100644 --- a/lib/vars.mk +++ b/lib/vars.mk @@ -27,7 +27,7 @@ T_INCDIRS_$P := ${SRCSDIR_$P} ${CURDIR}inc/ T_INCDIRS_$P := -ifeq (${BUILD},WIN32) +ifeq (${G_BUILD},${B_WIN32}) LINKERNAME_$P := bear.dll SONAME_$P := bear.dll REALNAME_$P := bear.dll diff --git a/vars.mk b/vars.mk index f32cc85..24bf396 100644 --- a/vars.mk +++ b/vars.mk @@ -1,17 +1,43 @@ +# cause the fancy $${@D} directory rules to work out +.SECONDEXPANSION: + +B_DEBUG := DEBUG +B_FINAL := FINAL +B_WIN32 := WIN32 + +# set this on the command line to get a WIN32 or a FINAL build +G_BUILD := ${B_DEBUG} + +ifeq (${G_BUILD},${B_DEBUG}) +else +ifeq (${G_BUILD},${B_FINAL}) +else +ifeq (${G_BUILD},${B_WIN32}) +else + $(error 'G_BUILD = ${G_BUILD}' is invalid. Valid types are '${B_DEBUG}', '${B_FINAL}' or '${B_WIN32}') +endif +endif +endif + + T_OPTFLAGS := -O2 T_DBGFLAGS := -ggdb T_PRFFLAGS := ${T_DBGFLAGS} -pg T_WARFLAGS := -Wall -Wextra -pedantic -ansi G_CXXFLAGS := ${T_WARFLAGS} -ifeq (${BUILD},WIN32) +ifeq (${G_BUILD},${B_DEBUG}) + G_CXXFLAGS += ${T_DBGFLAGS} +else +ifeq (${G_BUILD},${B_FINAL}) G_CXXFLAGS += ${T_OPTFLAGS} else -ifeq (${BUILD},FINAL) +ifeq (${G_BUILD},${B_WIN32}) G_CXXFLAGS += ${T_OPTFLAGS} else - G_CXXFLAGS += ${T_DBGFLAGS} + $(error 'G_BUILD = ${G_BUILD}' is invalid.) +endif endif endif @@ -22,14 +48,13 @@ T_WARFLAGS := G_LNKFLAGS := -ifeq (${BUILD},WIN32) +ifeq (${G_BUILD},${B_WIN32}) G_CXX := mingw32-g++ else G_CXX := g++ endif - -ifeq (${BUILD},WIN32) +ifeq (${G_BUILD},${B_WIN32}) G_LIBGL := -lopengl32 -lglu32 G_LIBSDL := `/usr/mingw32/bin/sdl-config --libs` else @@ -40,21 +65,25 @@ endif G_SRCSDIR := src/ G_DEPSDIR := deps/ -ifeq (${BUILD},WIN32) - G_OBJSDIR := objs-mingw32/ - G_BINDIR := bin-mingw32/ +ifeq (${G_BUILD},${B_DEBUG}) + G_OBJSDIR := objsd/ + G_BINDIR := bind/ else -ifeq (${BUILD},FINAL) +ifeq (${G_BUILD},${B_FINAL}) G_OBJSDIR := objs/ G_BINDIR := bin/ else - G_OBJSDIR := objsd/ - G_BINDIR := bind/ +ifeq (${G_BUILD},${B_WIN32}) + G_OBJSDIR := objs-mingw32/ + G_BINDIR := bin-mingw32/ +else + $(error 'G_BUILD = ${G_BUILD}' is invalid.) +endif endif endif -ifeq (${BUILD},WIN32) +ifeq (${G_BUILD},${B_WIN32}) PRNTFMT := printf "%-12s: %s\n" else PRNTFMT := printf "%-8s: %s\n" @@ -75,7 +104,7 @@ else endif -ifeq (${BUILD},WIN32) +ifeq (${G_BUILD},${B_WIN32}) prefix := /usr/mingw32 else prefix := /usr