[OE-core] [oe-core][PATCH v3 2/3] systemd.bbclass: Use systemd_system_unitdir

Pau Espin Pedrol pespin.shar at gmail.com
Mon Jul 27 08:28:48 UTC 2015


OK Tanu,

I will try to do some tests and prepare new patches during the following
days.

Thanks for reviewing,

Pau Espin Pedrol
mail/jabber: pespin.shar at gmail.com
http://blog.espeweb.net

2015-07-25 9:29 GMT+02:00 Tanu Kaskinen <tanu.kaskinen at linux.intel.com>:

> On Fri, 2015-07-24 at 17:10 +0200, Pau Espin Pedrol wrote:
> > Hi,
> >
> > actually this breaks build of systemd.bb itself, because it installs
> > its system recipes using paths from Makefile.am:
> >         userunitdir=$(prefix)/lib/systemd/user
> >         systemunitdir=$(rootprefix)/lib/systemd/system
> >
> > And in the recipe for systemd_219.bb we have:
> >         # Helper variables to clarify locations.  This mirrors the
> >         logic in systemd's
> >         # build system.
> >         rootprefix ?= "${base_prefix}"
> >         rootlibdir ?= "${base_libdir}"
> >         rootlibexecdir = "${rootprefix}/lib"
> >
> >
> > So, that means it installs its own services into /lib, not /usr/lib.
> > The changes done in systemd.bbclass in this patch remove the search
> > path of /lib, allowing only ${system_system_unitdir} which is
> > "/usr/lib/systemd/system".
> >
> >
> > I tried changing rootprefix to use "${prefix}" but then I get other
> > problems:
> >         ERROR: QA Issue: systemd: Files/directories were installed but
> >         not shipped
> >           /usr/bin/udevadm
> >           /usr/bin/journalctl
> >           /usr/bin/loginctl
> >           /usr/bin/machinectl
> >           /usr/bin/systemctl
> >           /usr/lib/udev/.debug
> >           /usr/lib/udev/.debug/cdrom_id
> >           /usr/lib/udev/.debug/collect
> >           /usr/lib/udev/.debug/ata_id
> >           /usr/lib/udev/.debug/v4l_id
> >           /usr/lib/udev/.debug/mtd_probe
> >           /usr/lib/udev/.debug/scsi_id
> >           /usr/lib/udev/.debug/accelerometer
> >           /usr/lib/udev/rules.d/70-uaccess.rules
> >           /usr/lib/udev/rules.d/73-seat-late.rules
> >           /usr/lib/udev/rules.d/71-seat.rules
> >           /usr/lib/udev/rules.d/99-systemd.rules
> >
> >
> > Which at the end makes me think... is it really a good idea to set
> > systemd_unitdir and system_system_unitdir to use "${nonarch_libdir}"?
> > I think we should be better using ${nonarch_base_libdir} for those, as
> > systemd guys themselves make distinction between both (prefix vs
> > rootprefix).
>
> I agree. ${nonarch_base_libdir} seems to be definitely the right place
> to put system service files. This may change if some day nobody will
> have a separate /usr partition any more (which is what the systemd
> developers are pushing for, AFAIK), but as long as we have to deal with
> systems with a separate /usr partition, I think using /lib is the only
> safe choice.
>
> --
> Tanu
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20150727/02a093c5/attachment-0002.html>


More information about the Openembedded-core mailing list