[CMake] Package installation conundrum
Dave Abrahams
dave at boostpro.com
Mon May 7 20:11:07 EDT 2012
Here's another one!
Scenario:
* I am running CMake under 0install to build and install libraries
* Each library builds a package SomePackage for the library binaries
and another package SomePackage-dev for the library headers (and
import libraries on Windows)
* The FindSomePackage.cmake file is part of the -dev package
* After building, 0install moves each package's build products into a
mostly-unpredictable subdirectory of its otherwise-read-only "cache"
(~/.cache/0install.net/). The subdirectory's name is determined by a
hash of the files.
* To get this working, I followed the scheme discussed here:
http://news.gmane.org/find-root.php?message_id=%3cm2lil6s8jq.fsf%40pluto.luannocracy.com%3e
Summary:
1. Create a 0install "SomePackage-preinstall" package. Building this
package involves CMake building and installing both SomePackage and
SomePackage-dev into separate subdirectories (main/ and dev/) of
some prefix. 0install thereafter moves the whole directory tree
into its cache in a directory called sha1=someuglyhash
2. SomePackage's 0installation procedure is to copy sha1=someuglyhash/main/
into its distribution directory (which then ends up in
~/.cache/0install.net/sha1=otheruglyhash)
3. SomePackage-dev's 0installation procedure is to copy
sha1=someuglyhash/dev/ into its distribution directory
Problem: FindSomePackageConfig.cmake now has the wrong path to the
library binaries.
Any help most appreciated.
--
Dave Abrahams
BoostPro Computing
http://www.boostpro.com
More information about the CMake
mailing list