Use compile:binary-lib-mappings when compiling.
commitfb907f7b0772442cfdfdd191de5b06f5f9fe8713
authorThomas Leonard <talex5@gmail.com>
Fri, 22 Feb 2008 18:07:33 +0000 (22 18:07 +0000)
committerThomas Leonard <talex5@gmail.com>
Fri, 22 Feb 2008 21:21:40 +0000 (22 21:21 +0000)
tree6a4990ea59f82547520cc1dcc9696b103cd1716f
parent54c829bfe8c733b69a037ac4eeef990750bed9c4
Use compile:binary-lib-mappings when compiling.

In Zero Install:
- A library package contains the foo.so and foo.so.version files.
- A -dev package contains the header files.

In a distribution package:
- A library package contains the foo.so.version file only.
- A -dev package contains headers and the foo.so file.

So, if you try to use a Zero Install -dev package with a distribution library
package, no one provides the libfoo.so file.

In this case, a -dev package should specify the mappings, like this:

<implementation arch='*-src' compile:lib-mappings="glade:0 foo:5" ...

When 0compile compile anything that depends on this -dev package, it searches
for libglade.so.0 and libfoo.so.5 in the library search path and creates
symlinks to them named libglade.so and libfoo.so in a temporary directory,
which it adds to the search path. Programs should then compile correctly without
modifications.

The source for a -dev package can use compile:binary-lib-mappings to have this
value placed in the generated -dev "binary" package.
0compile.xml
build.py
setup.py