summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilliam Deegan <bill@baddogconsulting.com>2015-03-23 23:54:17 (GMT)
committerWilliam Deegan <bill@baddogconsulting.com>2015-03-23 23:54:17 (GMT)
commit976a3d27a47bf69eb886a92be06a09d7face2f55 (patch)
tree5990d2a9a4f9968db87711d8a13cf82293fd2071
parentb6c7bd73535753a45dec87e8bb3b8584443d40dd (diff)
downloadSCons-976a3d27a47bf69eb886a92be06a09d7face2f55.zip
SCons-976a3d27a47bf69eb886a92be06a09d7face2f55.tar.gz
SCons-976a3d27a47bf69eb886a92be06a09d7face2f55.tar.bz2
initial pass at improving documentation of versioned shared library logic
-rw-r--r--src/engine/SCons/Tool/__init__.xml5
-rw-r--r--src/engine/SCons/Tool/install.xml19
2 files changed, 20 insertions, 4 deletions
diff --git a/src/engine/SCons/Tool/__init__.xml b/src/engine/SCons/Tool/__init__.xml
index dd06f12..ee56fc3 100644
--- a/src/engine/SCons/Tool/__init__.xml
+++ b/src/engine/SCons/Tool/__init__.xml
@@ -205,6 +205,11 @@ and Y are numbers, and Z is a number but can also contain letters to designate
alpha, beta, or release candidate patch levels.
</para>
+<example_commands>
+env.SharedLibrary(target = 'bar', source = ['bar.c', 'foo.o'], SHLIBVERSION='1.5.2')
+</example_commands>
+
+
<para>
This builder may create multiple links to the library. On a POSIX system,
for the shared library libbar.so.2.3.1, the links created would be
diff --git a/src/engine/SCons/Tool/install.xml b/src/engine/SCons/Tool/install.xml
index 0a0ad71..da82c6e 100644
--- a/src/engine/SCons/Tool/install.xml
+++ b/src/engine/SCons/Tool/install.xml
@@ -68,6 +68,14 @@ and
source
arguments list different numbers of files or directories.
</para>
+
+<example_commands>
+env.InstallAs(target = '/usr/local/bin/foo',
+ source = 'foo_debug')
+env.InstallAs(target = ['../lib/libfoo.a', '../lib/libbar.a'],
+ source = ['libFOO.a', 'libBAR.a'])
+</example_commands>
+
</summary>
</builder>
@@ -77,14 +85,17 @@ arguments list different numbers of files or directories.
Installs a versioned shared library. The &cv-link-SHLIBVERSION;
construction variable should be defined in the environment
to confirm the version number in the library name.
+If &cv-link-SHLIBVERSION is not defined a warning will be issued
+and the name of the library will be parsed to derive the version.
The symlinks appropriate to the architecture will be generated.
</para>
<example_commands>
-env.InstallAs(target = '/usr/local/bin/foo',
- source = 'foo_debug')
-env.InstallAs(target = ['../lib/libfoo.a', '../lib/libbar.a'],
- source = ['libFOO.a', 'libBAR.a'])
+env.InstallVersionedLib(target = '/usr/local/bin/foo',
+ source = 'libxyz.1.5.2.so')
+env.InstallVersionedLib(target = '/usr/local/bin/foo',
+ source = 'libxyz.1.5.2.so',
+ SHLIBVERSION='1.5.2')
</example_commands>
</summary>
</builder>