build: Rename SystemTap scripts to include the LT version

In a vague attempt at ensuring the .stp scripts can be closely
associated with the .so files which they hard-code references to, rename
the scripts so they include the LT version — so that they are the .so
file name plus .stp.

This does not fix the fact that our .stp scripts will not work on
multiarch systems, as they are installed in an architecture-independent
directory (/usr/share/systemtap/tapset). At the moment, it is
recommended that any distribution who package the .stp files should
install them in the architecture-specific subdirectories of this (for
example, /usr/share/systemtap/tapset/x86-64).

A better long-term solution for this is under discussion upstream:
https://sourceware.org/bugzilla/show_bug.cgi?id=20264

https://bugzilla.gnome.org/show_bug.cgi?id=662802
This commit is contained in:
Philip Withnall
2016-06-16 16:17:46 -04:00
parent c9d661b431
commit c4695f192c
4 changed files with 17 additions and 20 deletions

View File

@@ -776,15 +776,14 @@ CLEANFILES += gio_probes.h gio_probes.h.tmp
libgio_2_0_la_LIBADD += gio_probes.lo
endif
tapset_in_files = gio.stp.in
EXTRA_DIST += $(tapset_in_files)
tapsetdir = @ABS_TAPSET_DIR@
EXTRA_DIST += gio.stp.in
if ENABLE_SYSTEMTAP
tapsetdir = @ABS_TAPSET_DIR@
tapset_DATA = $(tapset_in_files:.stp.in=.stp)
CLEANFILES += $(tapset_in_files:.stp.in=.stp)
tapset_DATA = libgio-2.0.so.0.@LT_CURRENT@.@LT_REVISION@.stp
CLEANFILES += $(tapset_DATA)
$(tapset_DATA): %.stp: %.stp.in Makefile
$(tapset_DATA): gio.stp.in Makefile
$(AM_V_GEN)$(SED) \
-e 's|[@]ABS_GLIB_RUNTIME_LIBDIR[@]|$(ABS_GLIB_RUNTIME_LIBDIR)|g' \
-e 's|[@]LT_CURRENT[@]|$(LT_CURRENT)|g' \