summaryrefslogtreecommitdiff
path: root/test/LINK
diff options
context:
space:
mode:
authorWilliam Deegan <bill@baddogconsulting.com>2018-12-04 17:33:28 -0500
committerWilliam Deegan <bill@baddogconsulting.com>2018-12-04 17:33:28 -0500
commit2b978d126393723def974e48fec0f7fffcd5743e (patch)
treeaa1f53e9b0e45491e0523e6c266902b9ed7b7e54 /test/LINK
parent666368d25da2c4339f5e7143eb0678b41ce95f87 (diff)
downloadscons-git-2b978d126393723def974e48fec0f7fffcd5743e.tar.gz
Initial checkin of functional versioned shared libraries for applelink. Not loadable modules don't get versions embedded in the generated file
Diffstat (limited to 'test/LINK')
-rw-r--r--test/LINK/LDMODULEVERSIONFLAGS.py1
-rw-r--r--test/LINK/SHLIBVERSIONFLAGS.py2
-rw-r--r--test/LINK/VersionedLib-VariantDir.py6
-rw-r--r--test/LINK/VersionedLib-j2.py5
-rw-r--r--test/LINK/VersionedLib-subdir.py5
-rw-r--r--test/LINK/VersionedLib.py6
6 files changed, 3 insertions, 22 deletions
diff --git a/test/LINK/LDMODULEVERSIONFLAGS.py b/test/LINK/LDMODULEVERSIONFLAGS.py
index 0683b72f8..6e3085cd4 100644
--- a/test/LINK/LDMODULEVERSIONFLAGS.py
+++ b/test/LINK/LDMODULEVERSIONFLAGS.py
@@ -57,6 +57,7 @@ test.run(arguments = ['-c'])
for versionvar in ['SHLIBVERSION', 'LDMODULEVERSION']:
test = TestSCons.TestSCons()
+ test.verbose_set(1)
test.write('foo.c', foo_c_src)
test.write('SConstruct', "LoadableModule('foo','foo.c',%s='1.2.3')\n" % versionvar)
test.run(stdout = versionflags, match = TestSCons.match_re_dotall)
diff --git a/test/LINK/SHLIBVERSIONFLAGS.py b/test/LINK/SHLIBVERSIONFLAGS.py
index aae8843b3..9d91868d3 100644
--- a/test/LINK/SHLIBVERSIONFLAGS.py
+++ b/test/LINK/SHLIBVERSIONFLAGS.py
@@ -42,6 +42,8 @@ if 'gnulink' in tool_list:
versionflags = r".+ -Wl,-Bsymbolic -Wl,-soname=libfoo.so.1( .+)+"
elif 'sunlink' in tool_list:
versionflags = r".+ -h libfoo.so.1( .+)+"
+elif 'applelink' in tool_list:
+ versionflags = r".+ -dynamiclib -Wl,-current_version,1.2.3 -Wl,-compatibility_version,1.2.0( .+)+"
else:
test.skip_test('No testable linkers found, skipping the test\n')
diff --git a/test/LINK/VersionedLib-VariantDir.py b/test/LINK/VersionedLib-VariantDir.py
index 340fee0c4..4a5ac4018 100644
--- a/test/LINK/VersionedLib-VariantDir.py
+++ b/test/LINK/VersionedLib-VariantDir.py
@@ -37,12 +37,6 @@ import SCons.Defaults
test = TestSCons.TestSCons()
-import sys
-if sys.platform == 'darwin':
- # Skipping until logic is fixed for macosx
- test.skip_test("Not working on darwin yet\n")
-
-
env = SCons.Defaults.DefaultEnvironment()
platform = SCons.Platform.platform_default()
tool_list = SCons.Platform.DefaultToolList(platform, env)
diff --git a/test/LINK/VersionedLib-j2.py b/test/LINK/VersionedLib-j2.py
index ed3b7ff30..0cde91c56 100644
--- a/test/LINK/VersionedLib-j2.py
+++ b/test/LINK/VersionedLib-j2.py
@@ -39,11 +39,6 @@ import SCons.Defaults
test = TestSCons.TestSCons()
-if sys.platform == 'darwin':
- # Skipping until logic is fixed for macosx
- test.skip_test("Not working on darwin yet\n")
-
-
test.write('foo.c', """
#if _WIN32
__declspec(dllexport)
diff --git a/test/LINK/VersionedLib-subdir.py b/test/LINK/VersionedLib-subdir.py
index 2271a5468..66fef63ad 100644
--- a/test/LINK/VersionedLib-subdir.py
+++ b/test/LINK/VersionedLib-subdir.py
@@ -41,11 +41,6 @@ import SCons.Defaults
test = TestSCons.TestSCons()
-if sys.platform == 'darwin':
- # Skipping until logic is fixed for macosx
- test.skip_test("Not working on darwin yet\n")
-
-
test.write('foo.c', """
#if _WIN32
__declspec(dllexport)
diff --git a/test/LINK/VersionedLib.py b/test/LINK/VersionedLib.py
index c05c15913..468e3e572 100644
--- a/test/LINK/VersionedLib.py
+++ b/test/LINK/VersionedLib.py
@@ -33,12 +33,6 @@ import TestSCons
import SCons.Platform
import SCons.Defaults
-import sys
-if sys.platform == 'darwin':
- # Skipping until logic is fixed for macosx
- test = TestSCons.TestSCons()
- test.skip_test("Not working on darwin yet\n")
-
env = SCons.Defaults.DefaultEnvironment()
platform = SCons.Platform.platform_default()
tool_list = SCons.Platform.DefaultToolList(platform, env)