mirror of
https://github.com/boostorg/build.git
synced 2026-02-14 00:32:11 +00:00
in it. Don't generate all main target into separate subdirectories
in this case.
* new/targets.jam:
(project-target.reference-properties): New method
(generate): Moved from basic-target.generate-source
(generate-dependencies): New rule.
* test/project_dependencies.py: New test.
[SVN r16453]
38 lines
820 B
Python
38 lines
820 B
Python
#!/usr/bin/python
|
|
|
|
# Test that we can specify a dependency property
|
|
# in project requirements, and that it won't
|
|
# cause every main target in the project to
|
|
# be generated in it's own subdirectory.
|
|
|
|
from BoostBuild import Tester
|
|
|
|
t = Tester()
|
|
|
|
t.write("project-root.jam", "import gcc ;")
|
|
t.write("Jamfile", "build-project src ;")
|
|
t.write("lib/Jamfile", "lib lib1 : lib1.cpp ;")
|
|
t.write("lib/lib1.cpp", "void foo() {}")
|
|
t.write("src/Jamfile", """
|
|
project
|
|
: requirements <library>../lib/lib1
|
|
;
|
|
|
|
exe a : a.cpp ;
|
|
exe b : b.cpp ;
|
|
""")
|
|
t.write("src/a.cpp", """
|
|
void foo();
|
|
int main() { foo(); return 0; }
|
|
""")
|
|
t.copy("src/a.cpp", "src/b.cpp")
|
|
|
|
t.run_build_system()
|
|
|
|
# Test that there's no "main-target-a" part.
|
|
t.expect_addition(["src/bin/gcc/debug/a",
|
|
"src/bin/gcc/debug/b"])
|
|
|
|
|
|
t.cleanup()
|