diff options
author | Steven Knight <knight@baldmt.com> | 2002-06-15 04:53:49 (GMT) |
---|---|---|
committer | Steven Knight <knight@baldmt.com> | 2002-06-15 04:53:49 (GMT) |
commit | 77d43537975b406379979d599894971bf4a225f2 (patch) | |
tree | 93c8e6987a60b53f5ca0e3bc986bdcb4208893f3 /test/LIBPATH.py | |
parent | cef5b7fa735eb4e405fab5f852df8e7d53c76954 (diff) | |
download | SCons-77d43537975b406379979d599894971bf4a225f2.zip SCons-77d43537975b406379979d599894971bf4a225f2.tar.gz SCons-77d43537975b406379979d599894971bf4a225f2.tar.bz2 |
Add LIBS and LIBPATH dependencies for shared libraries. (Charles Crain)
Diffstat (limited to 'test/LIBPATH.py')
-rw-r--r-- | test/LIBPATH.py | 32 |
1 files changed, 19 insertions, 13 deletions
diff --git a/test/LIBPATH.py b/test/LIBPATH.py index d0bb065..0176c07 100644 --- a/test/LIBPATH.py +++ b/test/LIBPATH.py @@ -31,29 +31,32 @@ import time if sys.platform == 'win32': _exe = '.exe' + _dll = '.dll' + lib_ = '' else: _exe = '' + _dll = '.so' + lib_ = 'lib' test = TestSCons.TestSCons() test.subdir('lib1', 'lib2') prog1 = test.workpath('prog') + _exe -prog2 = test.workpath('prog2') + _exe +prog2 = test.workpath(lib_ + 'shlib') + _dll test.write('SConstruct', """ env1 = Environment(LIBS = [ 'foo1' ], LIBPATH = [ './lib1' ]) -prog = env1.Object('prog', 'prog.c') f1 = env1.Object('f1', 'f1.c') -env1.Program(target = 'prog', source = prog) +env1.Program(target = 'prog', source = 'prog.c') env1.Library(target = './lib1/foo1', source = f1) env2 = Environment(LIBS = 'foo2', LIBPATH = '.') -env2.Program(target = 'prog2', source = prog) +env2.SharedLibrary(target = 'shlib', source = 'shlib.c') env2.Library(target = 'foo2', source = f1) """) @@ -65,6 +68,15 @@ f1(void) } """) +test.write('shlib.c', r""" +void f1(void); +int +test() +{ + f1(); +} +""") + test.write('prog.c', r""" void f1(void); int @@ -81,8 +93,6 @@ test.run(arguments = '.') test.run(program = prog1, stdout = "f1.c\nprog.c\n") -test.run(program = prog2, - stdout = "f1.c\nprog.c\n") oldtime1 = os.path.getmtime(prog1) oldtime2 = os.path.getmtime(prog2) @@ -103,23 +113,21 @@ f1(void) test.run(arguments = '.') test.run(program = prog1, stdout = "f1.c 1\nprog.c\n") -test.run(program = prog2, - stdout = "f1.c 1\nprog.c\n") +test.fail_test(oldtime2 == os.path.getmtime(prog2)) #test.up_to_date(arguments = '.') # Change LIBPATH and make sure we don't rebuild because of it. test.write('SConstruct', """ env1 = Environment(LIBS = [ 'foo1' ], LIBPATH = [ './lib1', './lib2' ]) -prog = env1.Object('prog', 'prog.c') f1 = env1.Object('f1', 'f1.c') -env1.Program(target = 'prog', source = prog) +env1.Program(target = 'prog', source = 'prog.c') env1.Library(target = './lib1/foo1', source = f1) env2 = Environment(LIBS = 'foo2', LIBPATH = Split('. ./lib2')) -env2.Program(target = 'prog2', source = prog) +env2.SharedLibrary(target = 'shlib', source = 'shlib.c') env2.Library(target = 'foo2', source = f1) """) @@ -136,8 +144,6 @@ f1(void) test.run(arguments = '.') test.run(program = prog1, stdout = "f1.c 2\nprog.c\n") -test.run(program = prog2, - stdout = "f1.c 2\nprog.c\n") test.up_to_date(arguments = '.') |