@@ -83,8 +83,10 @@ if &cv-link-SHLIBVERSION; is set. Otherwise, it evaluates to an empty string.
8383<cvar name =" _LDMODULESONAME" >
8484<summary >
8585<para >
86- A macro that automatically generates loadable module's SONAME based on $TARGET,
87- $LDMODULEVERSION and $LDMODULESUFFIX. Used by &b-link-LoadableModule; builder
86+ A macro that automatically generates a loadable module's &cv-link-SONAME;
87+ based on <literal >$TARGET</literal >,
88+ &cv-link-LDMODULEVERSION; and &cv-link-LDMODULESUFFIX; .
89+ Used by the &b-link-LoadableModule; builder
8890when the linker tool supports SONAME (e.g. &t-link-gnulink; ).
8991</para >
9092</summary >
@@ -94,11 +96,12 @@ when the linker tool supports SONAME (e.g. &t-link-gnulink;).
9496<summary >
9597<para >
9698This macro automatically introduces extra flags to &cv-link-LDMODULECOM; when
97- building versioned &b-link-LoadableModule; (that is when
98- &cv-link-LDMODULEVERSION; is set). <literal >_LDMODULEVERSIONFLAGS</literal >
99+ building a versioned &b-link-LoadableModule;
100+ (that is, when &cv-link-LDMODULEVERSION; is set).
101+ &cv-_LDMODULEVERSIONFLAGS;
99102usually adds &cv-link-SHLIBVERSIONFLAGS; and some extra dynamically generated
100- options (such as <literal >-Wl,-soname=$_LDMODULESONAME</literal >). It is unused
101- by plain (unversioned) loadable modules.
103+ options (such as <literal >-Wl,-soname=$_LDMODULESONAME</literal >).
104+ It is unused by plain (unversioned) loadable modules.
102105</para >
103106</summary >
104107</cvar >
@@ -107,20 +110,23 @@ by plain (unversioned) loadable modules.
107110<summary >
108111<para >
109112This macro automatically introduces extra flags to &cv-link-SHLINKCOM; when
110- building versioned &b-link-SharedLibrary; (that is when &cv-link-SHLIBVERSION;
111- is set). <literal >_SHLIBVERSIONFLAGS</literal > usually adds &cv-link-SHLIBVERSIONFLAGS;
112- and some extra dynamically generated options (such as
113- <literal >-Wl,-soname=$_SHLIBSONAME</literal >. It is unused by "plain"
114- (unversioned) shared libraries.
113+ building a versioned &b-link-SharedLibrary;
114+ (that is, when &cv-link-SHLIBVERSION; is set).
115+ &cv-_SHLIBVERSIONFLAGS; usually adds &cv-link-SHLIBVERSIONFLAGS;
116+ and some extra dynamically generated options
117+ (such as <literal >-Wl,-soname=$_SHLIBSONAME</literal >).
118+ It is unused by "plain" (unversioned) shared libraries.
115119</para >
116120</summary >
117121</cvar >
118122
119123<cvar name =" _SHLIBSONAME" >
120124<summary >
121125<para >
122- A macro that automatically generates shared library's SONAME based on $TARGET,
123- $SHLIBVERSION and $SHLIBSUFFIX. Used by &b-link-SharedLibrary; builder when
126+ A macro that automatically generates a shared library's &cv-link-SONAME;
127+ based on <literal >$TARGET</literal >,
128+ &cv-link-SHLIBVERSION; and &cv-link-SHLIBSUFFIX; .
129+ Used by the &b-link-SharedLibrary; builder when
124130the linker tool supports SONAME (e.g. &t-link-gnulink; ).
125131</para >
126132</summary >
@@ -202,8 +208,9 @@ General user options passed to the linker for building loadable modules.
202208<cvar name =" LDMODULENOVERSIONSYMLINKS" >
203209<summary >
204210<para >
205- Instructs the &b-link-LoadableModule; builder to not automatically create symlinks
206- for versioned modules. Defaults to <literal >$SHLIBNOVERSIONSYMLINKS</literal >
211+ Instructs the &b-link-LoadableModule; builder
212+ not to automatically create symlinks for versioned modules.
213+ Defaults to &cv-link-SHLIBNOVERSIONSYMLINKS; .
207214</para >
208215</summary >
209216</cvar >
@@ -234,8 +241,8 @@ the same as $SHLIBSUFFIX.
234241<summary >
235242<para >
236243Extra flags added to &cv-link-LDMODULECOM; when building versioned
237- &b-link-LoadableModule; . These flags are only used when &cv-link-LDMODULEVERSION; is
238- set.
244+ &b-link-LoadableModule; .
245+ These flags are only used when &cv-link-LDMODULEVERSION; is set.
239246</para >
240247</summary >
241248</cvar >
@@ -399,29 +406,37 @@ See also &cv-link-LINKFLAGS; for linking static objects.
399406<cvar name =" SONAME" >
400407<summary >
401408<para >
402- Variable used to hard-code SONAME for versioned shared library/loadable module.
409+ The name of a versioned shared library/loadable module.
410+ If specified, it is an explicit statement of the name;
411+ if unspecified, the value is generated.
412+ &cv-SONAME; and &cv-link-SOVERSION; may not both be specified
413+ in the same &consenv; or override.
403414<example_commands >
415+ # Will cause libtest.so.2 to exist and be a symlink to libtest.so.0.1.2
404416env.SharedLibrary('test', 'test.c', SHLIBVERSION='0.1.2', SONAME='libtest.so.2')
405417</example_commands >
406- The variable is used, for example, by &t-link-gnulink; linker tool.
418+ </para >
419+ <para >
420+ This variable is used by toolchains that support versioned shared objects.
407421</para >
408422</summary >
409423</cvar >
410424
411425<cvar name =" SOVERSION" >
412426<summary >
413427<para >
414- This will construct the <varname >SONAME</varname > using on the base library name
415- (<parameter >test</parameter > in the example below) and use specified <varname >SOVERSION</varname >
416- to create <varname >SONAME</varname >.
428+ Version string used in construction of &cv-link-SONAME; .
429+ The version is added to the base library name
430+ (<parameter >test</parameter > in the example below).
431+ &cv-SONAME; and &cv-SOVERSION; may not both be specified
432+ in the same &consenv; or override.
417433<example_commands >
434+ # SONAME will be libtest.so.2, and will be a symlink to libtest.so.0.1.2
418435env.SharedLibrary('test', 'test.c', SHLIBVERSION='0.1.2', SOVERSION='2')
419436</example_commands >
420- The variable is used, for example, by &t-link-gnulink; linker tool.
421437</para >
422438<para >
423- In the example above <varname >SONAME</varname > would be <filename >libtest.so.2</filename >
424- which would be a symlink and point to <filename >libtest.so.0.1.2</filename >
439+ This variable is used by toolchains that support versioned shared objects.
425440</para >
426441</summary >
427442</cvar >
0 commit comments