mirror of
https://github.com/boostorg/build.git
synced 2026-02-13 12:22:17 +00:00
40 lines
881 B
Python
40 lines
881 B
Python
#!/usr/bin/python
|
|
|
|
# Copyright 2003 Vladimir Prus
|
|
# Distributed under the Boost Software License, Version 1.0.
|
|
# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
|
|
|
|
# Test that building with optimization brings NDEBUG define, and, more
|
|
# importantly, that dependency targets are built with NDEBUG as well, even if
|
|
# they are not directly requested.
|
|
|
|
import BoostBuild
|
|
|
|
t = BoostBuild.Tester()
|
|
|
|
t.write("jamroot.jam", """
|
|
exe hello : hello.cpp lib//lib1 ;
|
|
""")
|
|
|
|
t.write("hello.cpp", """
|
|
#ifdef NDEBUG
|
|
void foo();
|
|
int main() { foo(); }
|
|
#endif
|
|
""")
|
|
|
|
t.write("lib/jamfile.jam", """
|
|
lib lib1 : lib1.cpp ;
|
|
""")
|
|
t.write("lib/lib1.cpp", """
|
|
#ifdef NDEBUG
|
|
void foo() {}
|
|
#endif
|
|
""")
|
|
|
|
# 'release' builds should get the NDEBUG define. We use static linking to avoid
|
|
# messing with imports/exports on windows.
|
|
t.run_build_system("link=static release")
|
|
|
|
t.cleanup()
|