server/src/Jamrules
2005-07-10 07:10:15 +00:00

151 lines
2.7 KiB
Text

C++ = g++-3.3 ;
CC = gcc-3.3 ;
LINK = gcc-3.3 ;
# ECHO $(JAMUNAME) ;
LINKFLAGS += -rdynamic ;
if $(MSPACES) {
CCFLAGS += -DMSPACES ;
C++FLAGS += -DMSPACES ;
}
if ! $(HAVE_LUA) {
HAVE_LUA = 1 ;
}
if $(DISTCC_HOSTS) {
DISTCC = 1 ;
}
if $(DISTCC) {
CC = distcc $(CC) ;
C++ = distcc $(C++) ;
Echo Compiling with distcc ;
}
if ! $(CCACHE_DIR) {
} else {
CC = ccache $(CC) ;
C++ = ccache $(C++) ;
Echo Compiling with ccache ;
}
if $(DMALLOC) {
Echo Compiling with dmalloc ;
CCFLAGS += -DUSE_DMALLOC ;
C++FLAGS += -DUSE_DMALLOC ;
LINKFLAGS += -ldmalloc ;
}
if $(PROFILE) = 1 {
Echo Compiling with profiler ;
CCFLAGS += -pg -g ;
LINKFLAGS += -pg -g ;
}
CCFLAGS += -Wall ;
CCFLAGS += -Wwrite-strings
# -W
-Wstrict-prototypes
-Werror-implicit-function-declaration
-Wno-char-subscripts
-Wpointer-arith
# -Wshadow
# -Wcast-qual
# -Wcast-align
# -Wconversion
# -Wunreachable-code
;
# this require the latet luabind from CVS
if ! $(LUABIND) {
LUABIND = "B7" ;
}
C++FLAGS += -DHAVE_LUABIND_$(LUABIND) ;
if $(LOCAL_USR) {
XMLHDRS = $(LOCAL_USR)/include/libxml2 ;
C++FLAGS += -I$(LOCAL_USR)/include ;
CFLAGS += -I$(LOCAL_USR)/include ;
LINKLIBS += -L$(LOCAL_USR)/lib ;
} else {
XMLHDRS = /usr/include/libxml2 ;
}
C++FLAGS += -DHAVE_LUABIND_$(LUABIND) ;
rule iconv
{
if $(LINK_ICONV) {
LINKLIBS on $(<) += -liconv ;
}
}
rule luabind
{
LINKLIBS on $(<) += -L$(LUABIND_ROOT)/lib ;
LINKLIBS on $(<) += -llua50 -llualib50 ;
LINKLIBS on $(<) += -lm -lluabind ;
}
rule libxml2
{
LINKLIBS on $(<) += -lxml2 ;
}
rule UsingLuabind
{
SubDirHdrs $(LUABIND_ROOT)/include ;
}
rule UsingLua
{
SubDirHdrs /usr/include/lua50 ;
}
rule TargetDirectory
{
# Now set up SEARCH_SOURCE, LOCATE_TARGET, SOURCE_GRIST
# These can be reset if needed. For example, if the source
# directory should not hold object files, LOCATE_TARGET can
# subsequently be redefined.
local path = [ FDirName $(SUBDIR) $(TARGET_PREFIX) ] ;
SEARCH_SOURCE = $(SUBDIR) ;
LOCATE_SOURCE = $(ALL_LOCATE_TARGET) $(path) ;
LOCATE_TARGET = $(ALL_LOCATE_TARGET) $(path) ;
SOURCE_GRIST = $(path) ;
if $(DEBUG) = 1 {
SubDirCcFlags -g ;
SubDirC++Flags -g ;
}
else {
SubDirCcFlags -DNDEBUG -O2 ;
SubDirC++Flags -DNDEBUG -O2 ;
}
}
if ! $(DEBUG) {
ECHO Assuming DEBUG=1 ;
DEBUG = 1 ;
}
if $(WITHOUT_LUA) {
ECHO Compiling without LUA ;
}
if $(PROFILE) = 1 {
TARGET_PREFIX = Profile ;
}
else {
if $(DEBUG) = 0 {
TARGET_PREFIX = Release ;
}
else {
TARGET_PREFIX = Debug ;
}
}