diff --git a/Utils/Daemon/Daemon.test.cc b/Utils/Daemon/Daemon.test.cc index 584761f42ac09b5ffb41960544a051c65fb08c90..f3dfc1eccd582951a3dd2cce904c4d5aa1919c20 100644 --- a/Utils/Daemon/Daemon.test.cc +++ b/Utils/Daemon/Daemon.test.cc @@ -88,7 +88,7 @@ namespace { ::kill(::getpid(), SIGABRT); }; - int run(int argc, char ** argv) + int run(int argc, char const ** argv) { pid = ::fork(); if (pid < 0) throw senf::SystemException("::fork()"); @@ -124,7 +124,7 @@ BOOST_AUTO_UNIT_TEST(testDaemon) "--console-log=testDaemon.log", "--pid-file=testDaemon.pid" }; - SENF_CHECK_NO_THROW( BOOST_CHECK_EQUAL( run(sizeof(args)/sizeof(*args), const_cast<char **>(args)), 0 ) ); + SENF_CHECK_NO_THROW( BOOST_CHECK_EQUAL( run(sizeof(args)/sizeof(*args), args), 0 ) ); BOOST_CHECK( ! boost::filesystem::exists("invalid.log") ); BOOST_CHECK( ! boost::filesystem::exists("invalid.pid") ); diff --git a/senfscons/SENFSCons.py b/senfscons/SENFSCons.py index 4c3f3b8626edb8444f7294da8b70c6eef575b76e..90a04ffb72f617ee5d1ab669b5945f3f86d7f4ae 100644 --- a/senfscons/SENFSCons.py +++ b/senfscons/SENFSCons.py @@ -72,6 +72,7 @@ def InitOpts(): opts.Add('EXTRA_DEFINES', 'Additional preprocessor defines', '') opts.Add('EXTRA_LIBS', 'Additional libraries to link against', '') opts.Add(SCons.Options.BoolOption('final','Enable optimization',0)) + opts.Add(SCons.Options.BoolOption('debug','Enable debug symbols in binaries',0)) opts.Add('PREFIX', 'Installation prefix', '/usr/local') opts.Add('LIBINSTALLDIR', 'Library install dir', '$PREFIX/lib') opts.Add('BININSTALLDIR', 'Executable install dir', '$PREFIX/bin') @@ -267,8 +268,11 @@ def MakeEnvironment(): # The boost-regex library is not compiled with _GLIBCXX_DEBUG so this fails: # CPPDEFINES = [ '_GLIBCXX_DEBUG' ], env.Append(CXXFLAGS = [ '-O0', '-g' ], - CPPDEFINES = { 'SENF_DEBUG': ''}, - LINKFLAGS = [ '-g', '-rdynamic' ]) + CPPDEFINES = { 'SENF_DEBUG': ''}) + if env['debug']: + env.Append(LINKFLAGS = [ '-g', '-rdynamic' ]) + else: + env.Append(LINKFLAGS = [ '-Wl,-S', '-rdynamic' ]) env.Append(CPPDEFINES = [ '$EXTRA_DEFINES' ], LIBS = [ '$EXTRA_LIBS' ],