This is a bit ugly. Specifing abs_builddir as an RPATH is plain wrong when cross compiling. Sadly, removing the rpath makes libtool/automake do weird things and breaks the build as shared libs are no longer generated. We already try and delete the RPATH at do_install with chrpath however that does leave the path in the string table so it doesn't help us with reproducibility. Instead, hack in a bogus but harmless path, then delete it later in our do_install. Ultimately we may want to pass a specific path to use to configure if we really do need to set an RPATH at all. It is unclear to me whether the tests need that or not. Fixes reproducibility issues for lttng-tools. Upstream-Status: Pending [needs discussion with upstream about the correct solution] RP 2021/3/1 Index: lttng-tools-2.12.2/tests/regression/ust/ust-dl/Makefile.am =================================================================== --- lttng-tools-2.12.2.orig/tests/regression/ust/ust-dl/Makefile.am +++ lttng-tools-2.12.2/tests/regression/ust/ust-dl/Makefile.am @@ -27,16 +27,16 @@ noinst_LTLIBRARIES = libzzz.la libbar.la libzzz_la_SOURCES = libzzz.c libzzz.h libzzz_la_LDFLAGS = -module -shared -avoid-version \ - -rpath $(abs_builddir) + -rpath /usr/lib libbar_la_SOURCES = libbar.c libbar.h libbar_la_LDFLAGS = -module -shared -avoid-version \ - -rpath $(abs_builddir) + -rpath /usr/lib libbar_la_LIBADD = libzzz.la libfoo_la_SOURCES = libfoo.c libfoo.h libfoo_la_LDFLAGS = -module -shared -avoid-version \ - -rpath $(abs_builddir) + -rpath /usr/lib libfoo_la_LIBADD = libbar.la CLEANFILES = libfoo.so libfoo.so.debug libbar.so libbar.so.debug \ @@ -44,7 +44,7 @@ CLEANFILES = libfoo.so libfoo.so.debug l libtp_la_SOURCES = libbar-tp.h libbar-tp.c libfoo-tp.h libfoo-tp.c \ libzzz-tp.h libzzz-tp.c -libtp_la_LDFLAGS = -module -shared -rpath $(abs_builddir) +libtp_la_LDFLAGS = -module -shared -rpath /usr/lib # Extract debug symbols libfoo.so.debug: libfoo.la Index: lttng-tools-2.12.2/tests/utils/testapp/userspace-probe-elf-binary/Makefile.am =================================================================== --- lttng-tools-2.12.2.orig/tests/utils/testapp/userspace-probe-elf-binary/Makefile.am +++ lttng-tools-2.12.2/tests/utils/testapp/userspace-probe-elf-binary/Makefile.am @@ -5,7 +5,7 @@ AM_CFLAGS += -O0 noinst_LTLIBRARIES = libfoo.la libfoo_la_SOURCES = foo.c foo.h -libfoo_la_LDFLAGS = -shared -module -avoid-version -rpath $(abs_builddir)/.libs/ +libfoo_la_LDFLAGS = -shared -module -avoid-version -rpath /usr/lib noinst_PROGRAMS = userspace-probe-elf-binary userspace_probe_elf_binary_SOURCES = userspace-probe-elf-binary.c