<div dir="ltr"><div><div>OK Tanu,<br><br></div>I will try to do some tests and prepare new patches during the following days.<br><br></div>Thanks for reviewing,<br></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature">Pau Espin Pedrol<br>mail/jabber: <a href="mailto:pespin.shar@gmail.com" target="_blank">pespin.shar@gmail.com</a><br><a href="http://blog.espeweb.net" target="_blank">http://blog.espeweb.net</a><br></div></div>
<br><div class="gmail_quote">2015-07-25 9:29 GMT+02:00 Tanu Kaskinen <span dir="ltr">&lt;<a href="mailto:tanu.kaskinen@linux.intel.com" target="_blank">tanu.kaskinen@linux.intel.com</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Fri, 2015-07-24 at 17:10 +0200, Pau Espin Pedrol wrote:<br>
&gt; Hi,<br>
&gt;<br>
</span>&gt; actually this breaks build of <a href="http://systemd.bb" rel="noreferrer" target="_blank">systemd.bb</a> itself, because it installs<br>
<span class="">&gt; its system recipes using paths from Makefile.am:<br>
&gt;         userunitdir=$(prefix)/lib/systemd/user<br>
&gt;         systemunitdir=$(rootprefix)/lib/systemd/system<br>
&gt;<br>
</span>&gt; And in the recipe for <a href="http://systemd_219.bb" rel="noreferrer" target="_blank">systemd_219.bb</a> we have:<br>
<div><div class="h5">&gt;         # Helper variables to clarify locations.  This mirrors the<br>
&gt;         logic in systemd&#39;s<br>
&gt;         # build system.<br>
&gt;         rootprefix ?= &quot;${base_prefix}&quot;<br>
&gt;         rootlibdir ?= &quot;${base_libdir}&quot;<br>
&gt;         rootlibexecdir = &quot;${rootprefix}/lib&quot;<br>
&gt;<br>
&gt;<br>
&gt; So, that means it installs its own services into /lib, not /usr/lib.<br>
&gt; The changes done in systemd.bbclass in this patch remove the search<br>
&gt; path of /lib, allowing only ${system_system_unitdir} which is<br>
&gt; &quot;/usr/lib/systemd/system&quot;.<br>
&gt;<br>
&gt;<br>
&gt; I tried changing rootprefix to use &quot;${prefix}&quot; but then I get other<br>
&gt; problems:<br>
&gt;         ERROR: QA Issue: systemd: Files/directories were installed but<br>
&gt;         not shipped<br>
&gt;           /usr/bin/udevadm<br>
&gt;           /usr/bin/journalctl<br>
&gt;           /usr/bin/loginctl<br>
&gt;           /usr/bin/machinectl<br>
&gt;           /usr/bin/systemctl<br>
&gt;           /usr/lib/udev/.debug<br>
&gt;           /usr/lib/udev/.debug/cdrom_id<br>
&gt;           /usr/lib/udev/.debug/collect<br>
&gt;           /usr/lib/udev/.debug/ata_id<br>
&gt;           /usr/lib/udev/.debug/v4l_id<br>
&gt;           /usr/lib/udev/.debug/mtd_probe<br>
&gt;           /usr/lib/udev/.debug/scsi_id<br>
&gt;           /usr/lib/udev/.debug/accelerometer<br>
&gt;           /usr/lib/udev/rules.d/70-uaccess.rules<br>
&gt;           /usr/lib/udev/rules.d/73-seat-late.rules<br>
&gt;           /usr/lib/udev/rules.d/71-seat.rules<br>
&gt;           /usr/lib/udev/rules.d/99-systemd.rules<br>
&gt;<br>
&gt;<br>
&gt; Which at the end makes me think... is it really a good idea to set<br>
&gt; systemd_unitdir and system_system_unitdir to use &quot;${nonarch_libdir}&quot;?<br>
&gt; I think we should be better using ${nonarch_base_libdir} for those, as<br>
&gt; systemd guys themselves make distinction between both (prefix vs<br>
&gt; rootprefix).<br>
<br>
</div></div>I agree. ${nonarch_base_libdir} seems to be definitely the right place<br>
to put system service files. This may change if some day nobody will<br>
have a separate /usr partition any more (which is what the systemd<br>
developers are pushing for, AFAIK), but as long as we have to deal with<br>
systems with a separate /usr partition, I think using /lib is the only<br>
safe choice.<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Tanu<br>
<br>
<br>
</font></span></blockquote></div><br></div>