From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59533) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dtaA7-0007vw-I1 for guix-patches@gnu.org; Sun, 17 Sep 2017 10:03:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dtaA3-0003A7-KP for guix-patches@gnu.org; Sun, 17 Sep 2017 10:03:07 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:36496) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dtaA3-00039k-H7 for guix-patches@gnu.org; Sun, 17 Sep 2017 10:03:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1dtaA3-0008VT-2R for guix-patches@gnu.org; Sun, 17 Sep 2017 10:03:03 -0400 Subject: [bug#28444] [PATCH 3/3] build-system: Add 'meson-build-system'. Resent-Message-ID: MIME-Version: 1.0 In-Reply-To: <87vakhihs9.fsf@gnu.org> References: <20170913125003.13313-1-petermikkelsen10@gmail.com> <20170913125003.13313-3-petermikkelsen10@gmail.com> <87a81vllgk.fsf@gnu.org> <87ingik4hc.fsf@gnu.org> <87vakhihs9.fsf@gnu.org> From: Peter Mikkelsen Date: Sun, 17 Sep 2017 16:01:59 +0200 Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 28444-done@debbugs.gnu.org 2017-09-17 15:19 GMT+02:00 Ludovic Court=C3=A8s : > Hi Peter, > > Peter Mikkelsen skribis: > >> and without the shrinking done, the runpath looks like this: >> >> /gnu/store/8y6wd2rfi6p3gpxcz3p1gyzsbxwyc9ha-uuid-cpp-0.6.5.1/lib:$ORIGIN= /:/gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib:/gnu/store/3x5= 3yv4v144c9xp02rs64z7j597kkqax-gcc-5.4.0-lib/lib:/gnu/store/3x53yv4v144c9xp0= 2rs64z7j597kkqax-gcc-5.4.0-lib/lib/gcc/x86_64-unknown-linux-gnu/5.4.0/../..= /.. >> >> and with, it looks like this: >> >> /gnu/store/nqdf6kr5cqfqh9z5yprar1yyfqwprj4v-uuid-cpp-0.6.5.1/lib:$ORIGIN= /:/gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib:/gnu/store/3x5= 3yv4v144c9xp02rs64z7j597kkqax-gcc-5.4.0-lib/lib >> >> So the last part of the old runpath is removed, and looking at the >> output of ldd, it seems like it was never needed: >> >> linux-vdso.so.1 (0x00007ffd6cbe2000) >> libuuid.so =3D> /gnu/store/8y6wd2rfi6p3gpxcz3p1gyzsbxwyc9ha-uuid-cpp-0.6= .5.1/lib/libuuid.so >> (0x00007feae61bc000) >> libstdc++.so.6 =3D> >> /gnu/store/3x53yv4v144c9xp02rs64z7j597kkqax-gcc-5.4.0-lib/lib/libstdc++.= so.6 >> (0x00007feae5e42000) >> libgcc_s.so.1 =3D> >> /gnu/store/3x53yv4v144c9xp02rs64z7j597kkqax-gcc-5.4.0-lib/lib/libgcc_s.s= o.1 >> (0x00007feae5c2b000) >> libc.so.6 =3D> /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/li= b/libc.so.6 >> (0x00007feae588c000) >> libm.so.6 =3D> /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/li= b/libm.so.6 >> (0x00007feae557a000) >> /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/ld-linux-x86-= 64.so.2 >> (0x00007feae63c4000) >> >> Now, I am not sure it is worth shrinking, but I just think it is a >> little bit strange having unneeded directories in the runpath :) > > The last element of the RUNPATH above comes from GCC or so. I can=E2=80= =99t > hurt and you=E2=80=99ll probably find it on all the binaries we build; it= =E2=80=99s not > related to Meson, I think. > > So if that=E2=80=99s the only reason for =E2=80=98patchelf --shrink-runpa= th=E2=80=99, I would > argue it=E2=80=99s not a valid one. :-) > >> While trying to build a gnome package, I noticed that the runpath was >> huuuge before shrinking, but I don't have that package definition >> anymore :/ > > Unless you find a more compelling example ;-) as you build packages with > =E2=80=98meson-build-system=E2=80=99, I=E2=80=99d suggest we eventually r= evisit this issue and > get rid of =E2=80=98fix-runpath=E2=80=99. That would remove the dependen= cy on PatchELF, > which is sometimes a bit fragile. > > How does that sound? > > Thanks, > Ludo=E2=80=99. I just tried building nautilus 3.26.0 and without the shrinking done, the nautilus binary has the following rpath: /gnu/store/xw2zvqd6q2gf2pj9y3xvgk4y2fnk5nna-nautilus-3.26.0/lib:$ORIGIN/../= libnautilus-extension:/gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.2= 5/lib:/gnu/store/3x53yv4v144c9xp02rs64z7j597kkqax-gcc-5.4.0-lib/lib:/gnu/st= ore/12zbd0c57gb79gyfx8xwqiv6pyj3i0q6-glib-2.52.2/lib:/gnu/store/b8lcaqx0rkf= nd3xbvqy5lr879fyk5x3q-gtk+-3.22.15/lib:/gnu/store/ssgjajkyc4az3akaham2azyq7= gs9cl37-pango-1.40.6/lib:/gnu/store/rcs3yji9vi2lmm22lmxk54jnhch2jry9-atk-2.= 24.0/lib:/gnu/store/1fzljsi7ksngzq2g66lcvwjadfxnplkh-cairo-1.14.8/lib:/gnu/= store/w7rxc4g47k2i6f8zrxnlsvajm5vz4r68-gdk-pixbuf+svg-2.36.6/lib:/gnu/store= /q0aya45mp1y1hk8i2wx4jgr0y81j8pi3-gnome-autoar-0.2.2/lib:/gnu/store/13980g3= 067dcx7hw6m766qlhagj1vfck-libarchive-3.3.1/lib:/gnu/store/kwzs8k97qy7avxxld= nzavlii9zphh3d6-libxml2-2.9.4/lib:/gnu/store/h4vf97f7fxjzqwhds2xccmk4ahr100= 9q-gnome-desktop-3.24.2/lib:/gnu/store/np05q8mf1y9y4bk5y4ssj99m0dss2b1q-lib= x11-1.6.5/lib:/gnu/store/mw7hxaz7k5amabk8g2gr5akyrvvm1pmf-tracker-1.12.3/li= b:/gnu/store/3x53yv4v144c9xp02rs64z7j597kkqax-gcc-5.4.0-lib/lib/gcc/x86_64-= unknown-linux-gnu/5.4.0/../../.. And with shrinking this: /gnu/store/c0jkvchpxs3qfkai8cgz2d65xzhlhwb6-nautilus-3.26.0/lib:$ORIGIN/../= libnautilus-extension:/gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.2= 5/lib:/gnu/store/3x53yv4v144c9xp02rs64z7j597kkqax-gcc-5.4.0-lib/lib:/gnu/st= ore/12zbd0c57gb79gyfx8xwqiv6pyj3i0q6-glib-2.52.2/lib:/gnu/store/b8lcaqx0rkf= nd3xbvqy5lr879fyk5x3q-gtk+-3.22.15/lib:/gnu/store/ssgjajkyc4az3akaham2azyq7= gs9cl37-pango-1.40.6/lib:/gnu/store/rcs3yji9vi2lmm22lmxk54jnhch2jry9-atk-2.= 24.0/lib:/gnu/store/1fzljsi7ksngzq2g66lcvwjadfxnplkh-cairo-1.14.8/lib:/gnu/= store/w7rxc4g47k2i6f8zrxnlsvajm5vz4r68-gdk-pixbuf+svg-2.36.6/lib:/gnu/store= /q0aya45mp1y1hk8i2wx4jgr0y81j8pi3-gnome-autoar-0.2.2/lib:/gnu/store/h4vf97f= 7fxjzqwhds2xccmk4ahr1009q-gnome-desktop-3.24.2/lib:/gnu/store/np05q8mf1y9y4= bk5y4ssj99m0dss2b1q-libx11-1.6.5/lib:/gnu/store/mw7hxaz7k5amabk8g2gr5akyrvv= m1pmf-tracker-1.12.3/lib This means that the following directories are unneeded but still in the RUNPATH for some reason: /gnu/store/13980g3067dcx7hw6m766qlhagj1vfck-libarchive-3.3.1/lib:/gnu/store= /kwzs8k97qy7avxxldnzavlii9zphh3d6-libxml2-2.9.4/lib :) Peter