[Fli4l_dev] RPATHs (was: Informationen zum Weekly-Tarball vom 14.12.2012 [24502])

Bernd Kuhls berndkuhls at hotmail.com
Sa Dez 29 11:53:20 CET 2012


Christoph Schulz <fli4l at kristov.de> wrote in
news:50dea1ac$0$6580$9b4e6d93 at newsspool3.arcor-online.net: 

> Ich denke mir da etwas aus. Wie sehen denn die RPATHs dieses Pakets aus,
> wenn man sie nicht entfernt? /usr/lib/... oder /home/bernd/... ?

Hi,

- alter rpath

/home/bernd/.fbr/buildroot/output/sandbox/foo-
0.1/target/usr/lib/foo/libbar.so.0.0.0:

RPATH=
/home/bernd/.fbr/buildroot/output/build/foo-0.1/src/lib-foo1/.libs:
/home/bernd/.fbr/buildroot/output/build/foo-0.1/src/lib-foo2/.libs:
/usr/lib/foo

- neuer rpath nach chrpath

/home/bernd/.fbr/buildroot/output/sandbox/foo-
0.1/target/usr/lib/foo/libbar.so.0.0.0:
new RPATH: /usr/lib/foo


Ich habe das Problem mit einem kleinen Patch gelöst:
============================================================
diff -uNr a/src//fbr/buildroot/package/pkg-autotools.mk 
fli4l/src/fbr/buildroot/package/pkg-autotools.mk
--- src/fbr/buildroot/package/pkg-autotools.mk  2012-12-28 
05:07:30.000000000 +0100
+++ src/fbr/buildroot/package/pkg-autotools.mk  2012-12-29 
11:36:45.000000000 +0100
@@ -211,8 +211,10 @@
                sed -i 's/^\(hardcode_libdir_flag_spec\)=.*$$$$/\1=" "/' 
$$$$f; \
        done
 endef
+ifneq ($$($(2)_KEEP_RPATH),YES)
 $(2)_POST_CONFIGURE_HOOKS += LIBTOOL_RPATH_HOOK
 endif
+endif

 #
 # Build step. Only define it if not already defined by the package .mk
diff -uNr a/src//fbr/buildroot/package/pkg-generic.mk 
fli4l/src/fbr/buildroot/package/pkg-generic.mk
--- src/fbr/buildroot/package/pkg-generic.mk    2012-12-28 
05:07:30.000000000 +0100
+++ src/fbr/buildroot/package/pkg-generic.mk    2012-12-29 
11:12:12.000000000 +0100
@@ -335,6 +335,7 @@
 $(2)_INSTALL_STAGING           ?= NO
 $(2)_INSTALL_IMAGES            ?= NO
 $(2)_INSTALL_TARGET            ?= YES
+$(2)_KEEP_RPATH                        ?= NO
 $(2)_DIR_PREFIX                        = $(if $(4),$(4),
$(TOP_SRCDIR)/package)

 # define sub-target stamps

============================================================
in foo.mk dann noch

FOO_KEEP_RPATH = YES

und das Paket besteht alle Tests, für alle anderen Pakete ändert sich 
nichts :)

Viele Grüße, Bernd


Mehr Informationen über die Mailingliste Fli4l_dev