d-shlibmove1
Move shared library files around in debian package creation process
Usage
d-shlibmove [options]
shared-library.so
Overview
Call this program in debian/rules as a replacement of dh_movefiles for shared library packages.
It also checks debian/control for validity.
Options
- --movedev [filename] [relative dir-path]
-
Install file into relative directory path within the
-devpackage. The dir will be created with install -d and the file will be moved.
- --moveshl [filename] [relative dir-path]
-
Install file into relative directory path within the shared library runtime package. The dir will be created with install -d and the file will be moved.
-
--movedevdoc [filename] -
Install file into the documentation directory of
-devpackage. The dir will be created with install -d and the file will be moved.Added in version 0.4
-
--extralib [shared-library.so] -
Install the shared library in the same package as the main shared library.
-
--multiarch -
By default
d-shlibmoveinstalls the shared library and any extralibs into /usr/lib. Add this flag to install them into /usr/lib/<architecture-tripplet> instead.Added in version 0.48
-
--commit -
By default
d-shlibmoveruns in a dry-run mode. Add this flag to make the moving actually happen.
- --suffix [suffix to add to shared library package]
-
Add a suffix to shared library package. This is a workaround when binary interface to package changed, and some fixup to Debian packaging needs to be done.
Added in version 0.3
- --devsuffix [suffix to add to development package]
-
Add a suffix to development package. For making incompatible development package.
-
--shlibs-local [current-version] -
Create a debian/shlibs.local file to use, and specify current-version of shared library package. You need to remove debian/shlibs.local, because this only appends to, not overwrite.
Added in version 0.3
-
--devunversioned -
Install into unversioned development package.
Added in version 0.42
-
--ignorelibdep -
Suppress shlib dependency. Useful when dynamically resolved e.g. using CDBS.
Added in version 0.42
-
--c102 -
Add c102 suffix to package names, for C++ ABI transition.
Added in version 0.8
-
--ldbl -
Add dbl suffix to package names.
Added in version 0.35
-
--v5 -
Add v5 suffix to package names.
Added in version 0.61
-
--t64 -
Add t64 suffix to package names.
Added in version 0.106
-
--include-a -
Install the *.a files. This is the default behavior.
Added in version 0.51
-
--exclude-a -
Avoid installing *.a files.
Added in version 0.51
-
--include-la -
Install the *.la files. This is the default behavior.
Added in version 0.45
-
--exclude-la -
Avoid installing *.la files.
Added in version 0.45
- --override [override statement]
-
Add an overriding sed expression, which looks like --override s/libshared1-dev/libshared-dev/. This expression is executed after the other rules.
Multiple
--overridecan be specified.Added in version 0.30
Exit code
Return 1 on error.
Return 2 on dry-run.
Return 0 on success.
Examples
The following is a sample command-line of a hypothetical package installation.
d-shlibmove --commit --movedev "debian/tmp/usr/include/*" usr/include --extralib debian/tmp/usr/lib/libhomeman-pthread.so debian/tmp/usr/lib/libhomeman.so
Releases
11 releases since Debian 3.1 (Sarge); the text changed 7 times.
--devunversioned since Debian 6.0 (Squeeze);
--exclude-a since Debian 7 (Wheezy);
--exclude-la since Debian 7 (Wheezy);
--ignorelibdep since Debian 6.0 (Squeeze);
--include-a since Debian 7 (Wheezy);
--include-la since Debian 7 (Wheezy);
--ldbl since Debian 5.0 (Lenny);
--multiarch since Debian 7 (Wheezy);
--t64 since Debian 13 (Trixie);
--v5 since Debian 9 (Stretch).