From: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
To: Matt Madison <matt@madison.systems>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: cmake.bbclass questions
Date: Wed, 11 Feb 2015 14:12:08 +0100 [thread overview]
Message-ID: <54DB5528.9000407@herbrechtsmeier.net> (raw)
In-Reply-To: <1423657981.6238.8.camel@workhorse.madison.systems>
Am 11.02.2015 um 13:33 schrieb Matt Madison:
> On Wed, 2015-02-11 at 11:21 +0100, Stefan Herbrechtsmeier wrote:
>> Am 10.02.2015 um 23:53 schrieb Matt Madison:
>>> I just finished some recipes for some CMake-built packages (from the
>>> Kurento project). I managed to get everything building, but I had to
>>> modify how cmake.bbclass does things, and I'm wondering if there's a
>>> better way to solve some of these.
>>>
>>> Each of the packages generates a pkg-config file and a CMake module
>>> that are then used by other packages (later in the build) to locate
>>> their dependencies. I see that cmake.bbclass hard-codes the
>>> CMAKE_MODULE_PATH setting to point to just the location in the native
>>> sysroot, but target packages can't install their CMake modules there.
>>> I tweaked the definition so that when building non-native packages,
>>> CMAKE_MODULE_PATH points into both the target sysroot and the native
>>> sysroot. This seemed to do the trick, but wasn't sure it was the
>>> correct way to solve this.
>> Instead of a CMake module the project should install a
>> <Name>Config.cmake in its data directory and append a private module
>> directory to the CMAKE_MODULE_PATH.
> Ah, OK. Is that the typical pattern for CMake-based packages?
Typically a find module is needed when the upstream is not built with CMake.
http://www.cmake.org/cmake/help/git-master/manual/cmake-packages.7.html#find-module-packages
http://www.cmake.org/cmake/help/git-master/manual/cmake-packages.7.html#creating-packages
The pattern avoids the installation of files into the data directory of
a foreign project.
Regards,
Stefan
prev parent reply other threads:[~2015-02-11 13:14 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-10 22:53 cmake.bbclass questions Matt Madison
2015-02-11 10:21 ` Stefan Herbrechtsmeier
2015-02-11 12:33 ` Matt Madison
2015-02-11 13:12 ` Stefan Herbrechtsmeier [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=54DB5528.9000407@herbrechtsmeier.net \
--to=stefan@herbrechtsmeier.net \
--cc=matt@madison.systems \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.