No need to prefix $(LDLIBPTH) when running $(CC) to link perl and miniperl.
authorNicholas Clark <nick@ccl4.org>
Fri, 27 Apr 2012 15:56:34 +0000 (17:56 +0200)
committerNicholas Clark <nick@ccl4.org>
Tue, 30 Jul 2013 09:31:29 +0000 (11:31 +0200)
commitdfef7e5043ea07d18f882547566d0a06b7b68ea8
tree2327c8bc29483e381294a2195943d8a648379167
parent669d990be35a6a02b9d7ab8487aaba1d37bad180
No need to prefix $(LDLIBPTH) when running $(CC) to link perl and miniperl.

When perl is build with a shared perl library, $(LDLIBPTH) is used to prefix
the appropriate LD_LIBRARY_PATH=... before commands in the Makefile so that
the uninstalled ./perl will be able to find it.

Commit c4f23d77f4b3486a (in May 1998) added the code for LDLIBPTH, but also
added it to the default command line used to invoke $(CC) to link perl and
miniperl. These commands don't need to run ./perl, hence the use of
$(LDLIBPTH) is superfluous here. Removing it makes the code simpler.

$(LDLIBPTH) was first removed in commit d182087b9c1b8811 (April 2003), but
that change was reverted by commit f913803b6e67ae4c (in Aug 2003) as part of
an attempt to fix problems reported by a perl smoker on a platform where the
C compiler is actually a Perl wrapper script. However, from subsequent
discussion it seems that the reversion didn't actually fix the problem, and
both the documentation of LD_LIBRARY_PATH and attempting to replicate the
smoker's setup suggest that this particular change is independent of the
problem. I can't replicate the smoker's reported problems building a shared
library perl with (or without) this commit on a current Power Linux machine
using a Perl script to wrap the C compiler, where the #! line on that Perl
script is an install of perl 5.8.0 also using a shared perl library. Hence
I'm confident that this change is independent of the true cause of the
smoker's problems. See the discussion in RT #23212 for more details.
Makefile.SH