mirror of
https://github.com/boostorg/build.git
synced 2026-02-14 12:42:11 +00:00
Bugfix: set NDEBUG for release builds.
* new/builtin.jam: Make <optimization>speed active property and add <define>NDEBUG for it. * test/ndebug.py: New test. [SVN r18250]
This commit is contained in:
47
test/ndebug.py
Normal file
47
test/ndebug.py
Normal file
@@ -0,0 +1,47 @@
|
||||
#!/usr/bin/python
|
||||
|
||||
# Copyright (C) Vladimir Prus 2003. Permission to copy, use, modify, sell and
|
||||
# distribute this software is granted provided this copyright notice appears in
|
||||
# all copies. This software is provided "as is" without express or implied
|
||||
# warranty, and with no claim as to its suitability for any purpose.
|
||||
|
||||
# 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.
|
||||
|
||||
|
||||
from BoostBuild import Tester, List
|
||||
|
||||
|
||||
t = Tester()
|
||||
|
||||
t.write("project-root.jam", "")
|
||||
t.write("Jamfile", """
|
||||
exe hello : hello.cpp lib/lib1 ;
|
||||
""")
|
||||
t.write("hello.cpp", """
|
||||
#ifdef NDEBUG
|
||||
void foo();
|
||||
int main()
|
||||
{
|
||||
foo();
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
""")
|
||||
t.write("lib/Jamfile", """
|
||||
lib lib1 : lib1.cpp ;
|
||||
""")
|
||||
t.write("lib/lib1.cpp", """
|
||||
#ifdef NDEBUG
|
||||
void foo() {}
|
||||
#endif
|
||||
""")
|
||||
|
||||
# 'release' builds should get NDEBUG define
|
||||
# use static linking to avoid messing with
|
||||
# imports/exports on windows.
|
||||
t.run_build_system("link=static release")
|
||||
|
||||
|
||||
t.cleanup()
|
||||
@@ -25,7 +25,7 @@ t.expect_content("bin/$toolset/debug/a.exe",
|
||||
|
||||
t.expect_addition("lib/bin/$toolset/debug/optimization-speed/b.obj")
|
||||
t.expect_content("lib/bin/$toolset/debug/optimization-speed/b.obj",
|
||||
"""$toolset/debug/include-everything/optimization-speed
|
||||
"""$toolset/debug/define-NDEBUG/include-everything/optimization-speed
|
||||
lib/b.cpp
|
||||
""")
|
||||
|
||||
|
||||
@@ -86,6 +86,7 @@ tests = [ "project_test1",
|
||||
"unused",
|
||||
"default_features",
|
||||
"print",
|
||||
"ndebug",
|
||||
]
|
||||
|
||||
if os.name == 'posix':
|
||||
|
||||
Reference in New Issue
Block a user