sourCEntral - mobile manpages

pdf

DH_CLIDEPS

NAME

dh_clideps − calculates CLI (.NET) dependencies

SYNOPSIS

dh_clideps [debhelper options]

DESCRIPTION

dh_clideps is a debhelper program that is responsible for generating the ${cli:Depends} substitutions and adding them to substvars files.

The program will look at .dll/.exe and .config files in your package, and will use the embedded dependency information to generate a dependency string on assembly and shared libs packages, including the setting of version ranges (as declared by the shlibs/clilibs files of the used packages). The dependency on a certain CLR (Common Language Runtime) version will be also added to the final variable.

Note: the dependencies on shared libraries may be not resolved correctly if there are no .config files associated with the the .exe/.dll file which refers to the particular shared library (by its SONAME ).

If you use this program, your package should build-depend on cli-common-dev (>= 0.4.0).

OPTIONS

−d

Attempt to predict and avoid duplicates that may appear if you package both, native shared libraries and DLL assemblies in one package. The list of possibly duplicating candidates is expected to be in the variable shlib:Depends from debian/package.substvars.

−r

Don’t set a strong versioned dependency on mono-runtime or other CLR packages. This option can be used to specify a relaxed dependency on the VM/CLR by-hand in the control file, eg. "mono-runtime | cli-runtime".

−ldirectory[:directory:directory:..]

Before mondis is run, MONO_GAC_PREFIX and MONO_PATH are set to the specified directory (or directories -- separate with colons). This is useful for multi-binary packages where a library is built in one package and another package contains binaries linked against said library. Relative paths will be made absolute for the benefit of monodis.

Note that the directory given should be the complete or relative path to a directory that contains the library. See example below.

−Xpath −−exclude=path

Paths to exclude from the .dll/.exe search. Assemblies in these paths or their subdirectories will not be searched for dependencies, and assemblies missing references will not cause dh_clideps to fail.

−−exclude−moduleref=moduleref

ModuleRef to exclude from dependency resolution. dh_clideps will not attempt to resolve dependencies of these ModuleRefs. In particular, dh_clideps will not fail if these modulerefs are unresolvable.

May be specified multiple times. Each time it excludes a new ModuleRef.

ModuleRefs to be excluded can be optionally prefixed with "i:" to specify a case-insensitive match.

If foo is excluded, both foo and foo.dll will be considered when matching the exclude.

internal-mono

Uses the mono runtime in . (used for bootstrapping mono packages)

EXAMPLES

Suppose that your source package produces libfoo1.0−cil and libbar1.0−cil binary packages. In your rules file, first run dh_makeclilibs, then dh_clideps:
( MONO_GAC_PREFIX example)
dh_makeclilibs −V
dh_clideps −l debian/libfoo1.0−cil/usr:debian/libbar1.0−cil/usr or
( MONO_PATH example)
dh_clideps −l debian/foo−application/usr/lib/foo−application or
( MONO_GAC_PREFIX example)
dh_clideps −l debian/tmp/usr

Suppose your source package libquux1.0−cil also ships some examples in /usr/share, and you don’t want to pull in those dependencies.
dh_clideps −X/usr/share

Suppose your source package has a ModuleRef on libbaz but works correctly without it. Excluding this ModuleRef will prevent dh_clideps from adding a package dependency or failing if the libbaz dependency is unresolvable.
dh_clideps −−exclude−moduleref=libbaz

SEE ALSO

debhelper(7)

This program is a part of cli-common-dev.

AUTHOR

Mirco Bauer <meebey AT meebey DOT net>, Eduard Bloch <blade AT debian DOT org>, partialy based on code from Brendan O’Dea <bod AT debian DOT org> and Joey Hess <joeyh AT debian DOT org>.

pdf