d-shlibmove(1) Move shared library files around in Debian package creation process

SYNOPSIS

d-shlibmove [options] shared-library.so

DESCRIPTION

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 -dev package. 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 -dev package. 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-shlibmove installs 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-shlibmove runs 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

--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 --override can 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

AUTHOR

Junichi Uekawa <[email protected]> <[email protected]>