diff options
author | Pádraig Brady <P@draigBrady.com> | 2014-09-09 15:50:07 +0100 |
---|---|---|
committer | Pádraig Brady <P@draigBrady.com> | 2014-09-10 15:45:42 +0100 |
commit | 6f9b01873ee3c9e2be5daedc5b095a44d37a577c (patch) | |
tree | 869f9c2471c9040680a6ab5f77336d9bf57e2b1a | |
parent | 20f46a2e347a53855b70b47297cd1856741d6265 (diff) | |
download | coreutils-6f9b01873ee3c9e2be5daedc5b095a44d37a577c.tar.xz |
build: avoid name transformations on libstdbuf
* src/local.mk (transform): Skip the transformation for libstdbuf
since that should not be subject to name clashes, and we need
to reference the name directly in LD_PRELOAD etc.
* configure.ac: Add a comment on the coupling of pkglibexec_PROGRAMS
to $(transform).
Issue reported at https://trac.macports.org/ticket/44922
Improved by Nick Bowler
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | src/local.mk | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac index e061a0ad5..f45b06e3a 100644 --- a/configure.ac +++ b/configure.ac @@ -488,6 +488,8 @@ m4_include([m4/cu-progs.m4]) # Now that we know which programs will actually be built, determine # which optional helper progs should be compiled. +# Note it adding to pkglibexec_PROGRAMS, $(transform) in src/local.mk +# may need to be updated accordingly. case " $optional_bin_progs " in *' stdbuf '*) pkglibexec_PROGRAMS='src/libstdbuf.so';; *) pkglibexec_PROGRAMS='';; diff --git a/src/local.mk b/src/local.mk index c0d04d680..0a6f217e0 100644 --- a/src/local.mk +++ b/src/local.mk @@ -336,11 +336,18 @@ copy_sources = \ src/extent-scan.c \ src/extent-scan.h +# Don't apply prefix transformations to libstdbuf shared lib +# as that's not generally needed, and we need to reference the +# name directly in LD_PRELOAD etc. In general it's surprising +# that $(transform) is applied to libexec at all given that is +# for internal package naming, not privy to $(transform). + # Use 'ginstall' in the definition of PROGRAMS and in dependencies to avoid # confusion with the 'install' target. The install rule transforms 'ginstall' # to install before applying any user-specified name transformations. -transform = s/ginstall/install/; $(program_transform_name) +transform = /libstdbuf/q;s/ginstall/install/;$(program_transform_name) + src_ginstall_SOURCES = src/install.c src/prog-fprintf.c $(copy_sources) \ $(selinux_sources) |