All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Martin Ertsås" <martiert@gmail.com>
To: openembedded-devel@lists.openembedded.org
Subject: Re: New kmod {libdir} breaks udev 182 build
Date: Tue, 15 May 2012 10:41:54 +0200	[thread overview]
Message-ID: <4FB216D2.6010108@gmail.com> (raw)
In-Reply-To: <CADZ6=auir8z1R2eQ0c++EcdLWizOQ+=OhbqM5q6Fms1=G0CJhw@mail.gmail.com>

On 05/15/12 10:39, Thilo Fromm wrote:
> Hello Khem,
>
>>> I've got an issue with
>>> openembedded-core/meta/recipes-kernel/kmod/kmod_git.bb, with the way
>>> {libdir} is set in line 19:
>>>
>>> libdir = "${base_libdir}"
>>>
>>> "git blame" claims this was added by Khem Raj on 2012-05-08. This line
>>> causes libkmod to put its pkgconfig ".pc" file in the staging area at
>>> "/lib/pkgconfig/libkmod.pc". This is sad because other recipes would
>>> only look at /usr/lib/pkgconfig/ and /usr/share/pkgconfig.
>>>
>>> Take meta-openembedded/meta-oe/recipes-core/udev/udev_182.bb, for
>>> example. The build predictably fails with
>>>
>>> checking for KMOD... no
>>> configure: error: Package requirements (libkmod >= 5) were not met:
>>>
>>> No package 'libkmod' found
>>>
>>>
>>> So what's the right thing do do here? Use a different package install
>>> path for libkmod, or point udev to /lib/pkgconfig by extending its
>>> PKG_CONFIG_PATH correspondingly?
>> One solution is to fix kmod to install pc files in /usr/lib with right paths
>> to access libkmod
>>
>> second solution is to look for pc files in ${base_libdir} while building udev
>> can you try this option.
> Yes, I was trying to state these two possible resolutions in my first
> mail. I already tried adding
>
> PKG_CONFIG_PATH =
> "${PKG_CONFIG_DIR}:${STAGING_DATADIR}/pkgconfig:${PKG_CONFIG_SYSROOT_DIR}/${base_libdir}/pkgconfig/"
>
> to udev-182 and systemd (which is also affected) recipes. It works
> around the bug. Still, I think kmod is publishing its .pc files in the
> wrong directory.
>
> Regards,
> Thilo
>
We are also having this issue, and have just added this hack in a
bbappend for udev and systemd. Not a pretty solution, but found it to be
a lot of work to make only the .pc files be put in /usr/lib/pkgconfig
instead of /lib/pkgconfig. I totally agree that kmod publishes it's .pc
files in the wrong directory, as every distro I have tried uses
/usr/lib/pkgconfig as the pkgconfig directory. Guess we will keep this
hack until kmod is fixed upstream though.

- Martin



  reply	other threads:[~2012-05-15  8:54 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-14 11:18 New kmod {libdir} breaks udev 182 build Thilo Fromm
2012-05-14 12:33 ` Otavio Salvador
2012-05-14 17:26 ` Khem Raj
2012-05-15  8:39   ` Thilo Fromm
2012-05-15  8:41     ` Martin Ertsås [this message]
2012-05-15  9:33       ` Koen Kooi
2012-05-15  9:59         ` Thilo Fromm

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=4FB216D2.6010108@gmail.com \
    --to=martiert@gmail.com \
    --cc=openembedded-devel@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.