summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Nagy <tnagy2pow10@gmail.com>2015-02-27 11:14:39 +0100
committerThomas Nagy <tnagy2pow10@gmail.com>2015-02-27 11:14:39 +0100
commitc60bddddbe9b9ff5ff0a462eefae3eec0a3d428e (patch)
tree9bb98be10ec4a03d9593dc2808054f17d7c827aa
parentf09def456d08db51052f9148197a8830a61fdeca (diff)
Disable execution in conf.check_define (cannot run sparc binaries on freebsd for example)
-rw-r--r--rtems_waf/config/base.py2
-rw-r--r--rtems_waf/waf.py7
2 files changed, 3 insertions, 6 deletions
diff --git a/rtems_waf/config/base.py b/rtems_waf/config/base.py
index 424090356a..e789a1e022 100644
--- a/rtems_waf/config/base.py
+++ b/rtems_waf/config/base.py
@@ -1,6 +1,6 @@
try:
from configparser import ConfigParser, NoOptionError
-except:
+except ImportError:
from ConfigParser import ConfigParser, NoOptionError
from os.path import exists
diff --git a/rtems_waf/waf.py b/rtems_waf/waf.py
index a116eb6fe5..f4c8e14610 100644
--- a/rtems_waf/waf.py
+++ b/rtems_waf/waf.py
@@ -167,16 +167,13 @@ def check_size(ctx, field, mandatory=False, define_name=None):
msg = "Checking size of %s" % field
)
-
-# XXX: It prints "yes" even if it doesn't exist.
@conf
def check_define(ctx, define, header, mandatory=False):
ctx.check(
mandatory = mandatory,
- fragment = '''#include <%s>\n int main () {\n #ifdef %s\n return 0;\n #endif\n return 1; }\n''' % (header, define),
+ fragment = '''#include <%s>\n int main () {\n #ifndef %s\n #error "missing define"\n #endif\n return 0; }\n''' % (header, define),
define_name = "HAVE_%s" % define.upper(),
- features = "c cprogram",
- execute = True,
+ features = "c",
msg = "Checking for define %s in %s" % (define, header)
)