g++/final: don't add extra code to check for buffer overflows (-fno-stack-protector)
[senf.git] / SConfigure
index ebf2ae6..b7f1a2f 100644 (file)
@@ -1,5 +1,7 @@
 # -*- python -*-
 
+import glob
+
 Import('env')
 
 ###########################################################################
@@ -38,7 +40,7 @@ def CheckTempBufferStrategy(context):
 
       # alloca
       ret = context.TryCompile("#include <alloca.h>\n"
-                               "void test(int a){void *b(alloca(a));}"
+                               "void test(int a){void *b(alloca(a));}",
                                ".cc")
       if ret: return "alloca"
 
@@ -84,6 +86,7 @@ res = conf.CheckCXXHeader("boost/bimap.hpp"); \
 res = conf.CheckTempBufferStrategy()
 
 # Standard library stuff
+res = conf.CheckCHeader("execinfo.h")
 res = conf.FindCHeader("timerfd.h", [ 'sys', 'linux' ])
 res = conf.CheckFunc("timerfd_create")
 res = conf.CheckSymbolWithExpression(
@@ -98,4 +101,16 @@ res = conf.CheckSTLCopyN(); \
 res = conf.CheckValgrind() and conf.CheckValgrindWildcards(); \
     conf.env.Replace(HAVE_VALGRIND = res)
 
+###########################################################################
+
+# run configure scripts from external modules 
+Export('conf')
+
+sconscripts = sorted(glob.glob("senf/Ext/*/SConfigure"))
+if sconscripts:
+    SConscript(sconscripts)
+
+###########################################################################
+
 env = conf.Finish()
+