Put LinkFunc() back to the way it was. (Christoph Wiedemann)
authorstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Tue, 20 May 2003 13:22:41 +0000 (13:22 +0000)
committerstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Tue, 20 May 2003 13:22:41 +0000 (13:22 +0000)
git-svn-id: http://scons.tigris.org/svn/scons/trunk@691 fdb21ef1-2011-0410-befe-b5e4ea1792b1

src/engine/SCons/Node/FS.py
test/BuildDir.py

index 4a633c9e92736c04e98fac4376d01daa0bc5b0f5..c2d001e88262638beae6b4d2727e303b715714dc 100644 (file)
@@ -69,8 +69,8 @@ else:
     _existsp = os.path.exists
 
 def LinkFunc(target, source, env):
-    src = str(source[0])
-    dest = str(target[0])
+    src = source[0].path
+    dest = target[0].path
     dir, file = os.path.split(dest)
     if dir and not os.path.isdir(dir):
         os.makedirs(dir)
index 25bbd25749922771ffd4faa57fd365280f45befe..9c37f2cad9cbfc40b014e94c0976440523e2efc2 100644 (file)
@@ -61,7 +61,7 @@ bar42 = test.workpath('work1', 'build', 'var4', 'bar2' + _exe)
 bar51 = test.workpath('build', 'var5', 'bar1' + _exe)
 bar52 = test.workpath('build', 'var5', 'bar2' + _exe)
 
-test.subdir('work1', 'work2')
+test.subdir('work1', 'work2', 'work3')
 
 test.write(['work1', 'SConstruct'], """
 src = Dir('src')
@@ -348,4 +348,31 @@ test.run(chdir='work2', arguments='.')
 
 test.up_to_date(chdir='work2', arguments='.')
 
+test.write( ['work3', 'SConstruct'], """\
+SConscriptChdir(0)
+BuildDir('build', '.', duplicate=1 ) 
+SConscript( 'build/SConscript' )
+""")
+
+test.write( ['work3', 'SConscript'], """\
+import sys
+headers = ['existing.h', 'non_existing.h']
+for header in headers:
+    h = File( header )
+    contents = h.get_contents()
+    sys.stderr.write( '%s:%s\\n' % (header, contents))
+""")
+
+test.write( ['work3', 'existing.h'], """\
+/* a header file */\
+""")
+
+test.run(chdir='work3',
+         stdout=test.wrap_stdout('scons: "." is up to date.\n'),
+         stderr="""\
+existing.h:/* a header file */
+non_existing.h:
+""")
+
 test.pass_test()
+