From 454f10866e2abf710312a540c4321da532b596e8 Mon Sep 17 00:00:00 2001 From: rofl0r Date: Sat, 3 Aug 2013 21:59:05 +0200 Subject: [PATCH] fix sconscript --- g_src/SConscript | 84 +++++++++++++++++++++++++++++++------------------------- 1 file changed, 46 insertions(+), 38 deletions(-) diff --git a/g_src/SConscript b/g_src/SConscript index 54664d7..8cc76a8 100644 --- a/g_src/SConscript +++ b/g_src/SConscript @@ -25,6 +25,11 @@ M64 = False if libgraphics else True # Propagate PATH. We'll just take our chances with non-repeatable builds. env = Environment(ENV = {'PATH' : os.environ['PATH']}) +env['LINKFLAGS'] = [] +env['CCFLAGS'] = [] +env['CPPPATH'] = [] +env['LIBPATH'] = [] +env['LIBS'] = [] if clang: env["STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME"]=True @@ -51,21 +56,54 @@ conf = Configure(env) if not conf.CheckCXX(): print('error: no working C++ compiler detected.') Exit(1) -env = conf.Finish() + +disablegtk = ARGUMENTS.get('disable-gtk', 0) +if not int(disablegtk): + try: + conf.env.ParseConfig('pkg-config gtk+-2.0 --cflags --libs') + env['CCFLAGS'].append('-DHAVE_GTK2') + except OSError,e: + print 'gtk+-2.0 not found!' + +disablecurses = ARGUMENTS.get('disable-curses', 0) +if not int(disablecurses): + # ncurses has a plethora of different configs, but does not offer pkg-config support + have_ncursesw = conf.CheckCHeader('ncursesw/curses.h') and conf.CheckLib('ncursesw') + have_ncurses = conf.CheckCHeader('ncurses.h') and conf.CheckLib('ncurses') + if have_ncurses or have_ncursesw: + conf.env['CCFLAGS'].append('-DCURSES') + else: + print('ncurses not found') + if have_ncursesw: + env['LINKFLAGS'].append('-lncursesw') + env['CCFLAGS'].append('-DHAVE_NCURSESW') + elif have_ncurses: + env['LINKFLAGS'].append('-lncurses') + +disablegl = ARGUMENTS.get('disable-gl', 0) +if not int(disablegl): + try: + env.ParseConfig('pkg-config glu --cflags --libs') + env["CCFLAGS"].append('-DWANT_GL') + except OSError,e: + print 'glu not found, disabling GL' + +#env = conf.Finish() +conf.Finish() # Init variables, and make sure they're around for appending to # These variables are the ones used by the actual compilation. We construct # them from ccflags/libs in varying ways depending on which compiler is used, # below. -env['CPPPATH']=["#g_src/fmodexinclude"] -env['CCFLAGS']=["-Dunix"] +env['CPPPATH'].append(["#g_src/fmodexinclude"]) +env['CCFLAGS'].append("-Dunix") env['CXXFLAGS'].append("-std=gnu++0x") -env['LIBS']=["SDL_image","z","SDL_ttf"] +env['LIBS'].append(["SDL_image","z","SDL_ttf"]) # If there's a library in the libs folder it will get linked over a system one. -env['LIBPATH']=["#libs"] +env['LIBPATH'].append(["#libs"]) if not M64: env['LIBPATH'].append("/usr/lib32") -env['LINKFLAGS']=["-Wl,--as-needed"] +env['LINKFLAGS'].append("-Wl,--as-needed") #env['LINKFLAGS'].append('-Wl,-rpath=\$$ORIGIN/libs') # GLEW @@ -77,48 +115,18 @@ if not clang and not M64: env['ASFLAGS']="--32" env['LINKFLAGS'].append("-m32") env["CCFLAGS"].append("-m32") -disablegtk = ARGUMENTS.get('disable-gtk', 0) -if not int(disablegtk): - try: - env.ParseConfig('pkg-config gtk+-2.0 --cflags --libs') - env["CCFLAGS"].append('-DHAVE_GTK2') - except OSError,e: - print 'gtk+-2.0 not found!' - -disablecurses = ARGUMENTS.get('disable-curses', 0) -if not int(disablecurses): - # ncurses has a plethora of different configs, but does not offer pkg-config support - conf = Configure(Environment()) - have_ncursesw = conf.CheckCHeader('ncursesw/curses.h') and conf.CheckLib('ncursesw') - have_ncurses = conf.CheckCHeader('ncurses.h') and conf.CheckLib('ncurses') - if have_ncurses or have_ncursesw: - env["CCFLAGS"].append('-DCURSES') - if have_ncurses: - env["LINKFLAGS"].append('-lncurses') - if have_ncursesw: - env["LINKFLAGS"].append('-lncursesw') - env["CCFLAGS"].append('-DHAVE_NCURSESW') - conf.Finish() env.ParseConfig('pkg-config openal --cflags') env.ParseConfig('pkg-config sndfile --cflags') env.ParseConfig('pkg-config sdl --cflags --libs') -disablegl = ARGUMENTS.get('disable-gl', 0) -if not int(disablegl): - try: - env.ParseConfig('pkg-config glu --cflags --libs') - env["CCFLAGS"].append('-DWANT_GL') - except OSError,e: - print 'glu not found, disabling GL' +ldflags=Split(os.environ.get("LDFLAGS")) +env['LINKFLAGS'].append(ldflags) if profile: env["CCFLAGS"].append("-pg") env['LINKFLAGS'].append("-pg") -ldflags=Split(os.environ.get("LDFLAGS")) -env['LINKFLAGS'].append(ldflags) - if optimize: if not clang: if not debug: -- 2.11.4.GIT