[MacPorts] #71142: perl5.36 @5.36.3_1 does not build on PPC Tiger, Mac OS X 10.4.11, because ld gets invoked with -rpath

MacPorts noreply at macports.org
Wed Oct 23 09:14:49 UTC 2024


#71142: perl5.36 @5.36.3_1 does not build on PPC Tiger, Mac OS X 10.4.11, because
ld gets invoked with -rpath
------------------------+----------------------
  Reporter:  ballapete  |      Owner:  mojca
      Type:  defect     |     Status:  assigned
  Priority:  Normal     |  Milestone:
 Component:  ports      |    Version:  2.10.2
Resolution:             |   Keywords:  tiger
      Port:  perl5.36   |
------------------------+----------------------

Comment (by ballapete):

 On my old PPC Tiger and Leopard systems I have -rpath in these files:

 {{{
 pete 235 /\  nice find /Volumes/Tiger/opt/local/lib/perl5
 /Volumes/Tiger/System/Library/Perl -type f -exec ggrep -n -e -rpath {}
 /dev/null \;
 /Volumes/Tiger/opt/local/lib/perl5/5.34/ExtUtils/Liblist/Kid.pm:72:
 if ( $thislib =~ s/^(-[LR]|-Wl,-R|-Wl,-rpath,)// ) {    # save path flag
 type
 /Volumes/Tiger/opt/local/lib/perl5/5.34/ExtUtils/MM_Unix.pm:1053:
 qq{-rpath "$self->{LD_RUN_PATH}"} : '';
 /Volumes/Tiger/opt/local/lib/perl5/5.34/ExtUtils/MakeMaker.pm:3367:
 PERL_MM_OPT='CCFLAGS="-Wl,-rpath -Wl,/foo/bar/lib" LIBS="-lwibble
 -lwobble"'
 /Volumes/Tiger/opt/local/lib/perl5/5.34/darwin-thread-multi-
 2level/Config.pod:8284:as -R F<$archlibexp/C<CORE>> (Solaris) or
 -Wl,-rpath
 /Volumes/Tiger/opt/local/lib/perl5/5.38/ExtUtils/Liblist/Kid.pm:77:
 if ( $thislib =~ s/^(-[LR]|-Wl,-R|-Wl,-rpath,)// ) {    # save path flag
 type
 /Volumes/Tiger/opt/local/lib/perl5/5.38/ExtUtils/MM_Unix.pm:1059:
 $ldrun = qq{-rpath "$self->{LD_RUN_PATH}"};
 /Volumes/Tiger/opt/local/lib/perl5/5.38/ExtUtils/MM_Unix.pm:1062:
 # both clang and gcc support -Wl,-rpath, but only clang supports
 /Volumes/Tiger/opt/local/lib/perl5/5.38/ExtUtils/MM_Unix.pm:1063:
 # -rpath so by using -Wl,-rpath we avoid having to check for the
 /Volumes/Tiger/opt/local/lib/perl5/5.38/ExtUtils/MM_Unix.pm:1065:
 $ldrun = qq{-Wl,-rpath,"$self->{LD_RUN_PATH}"};
 /Volumes/Tiger/opt/local/lib/perl5/5.38/ExtUtils/MakeMaker.pm:3356:
 PERL_MM_OPT='CCFLAGS="-Wl,-rpath -Wl,/foo/bar/lib" LIBS="-lwibble
 -lwobble"'
 /Volumes/Tiger/opt/local/lib/perl5/5.38/darwin-thread-multi-
 2level/Config.pod:8478:as -R F<$archlibexp/C<CORE>> (Solaris) or
 -Wl,-rpath
 /Volumes/Tiger/System/Library/Perl/5.8.6/ExtUtils/MM_Unix.pm:1111:
 qq{-rpath "$self->{LD_RUN_PATH}"} : '';
 /Volumes/Tiger/System/Library/Perl/5.8.6/darwin-thread-multi-
 2level/Config.pod:6769:as -R F<$archlibexp/C<CORE>> (Solaris) or
 -Wl,-rpath
 }}}

 {{{
 pete 236 /\  !!:gs:Tiger:Leopard:
 /Volumes/Leopard/opt/local/lib/perl5/5.34/ExtUtils/Liblist/Kid.pm:72:
 if ( $thislib =~ s/^(-[LR]|-Wl,-R|-Wl,-rpath,)// ) {    # save path flag
 type
 /Volumes/Leopard/opt/local/lib/perl5/5.34/ExtUtils/MM_Unix.pm:1053:
 qq{-rpath "$self->{LD_RUN_PATH}"} : '';
 /Volumes/Leopard/opt/local/lib/perl5/5.34/ExtUtils/MakeMaker.pm:3367:
 PERL_MM_OPT='CCFLAGS="-Wl,-rpath -Wl,/foo/bar/lib" LIBS="-lwibble
 -lwobble"'
 /Volumes/Leopard/opt/local/lib/perl5/5.34/darwin-thread-multi-
 2level/Config.pod:8284:as -R F<$archlibexp/C<CORE>> (Solaris) or
 -Wl,-rpath
 /Volumes/Leopard/System/Library/Perl/5.8.8/ExtUtils/MM_Unix.pm:919:
 qq{-rpath "$self->{LD_RUN_PATH}"} : '';
 /Volumes/Leopard/System/Library/Perl/5.8.8/darwin-thread-multi-
 2level/Config.pod:6884:as -R F<$archlibexp/C<CORE>> (Solaris) or
 -Wl,-rpath
 }}}

 In Kid.pm obviously a substitution takes place, in MakeMaker.pm it's part
 of documentation, and in MM_Unix.pm IRIX is addressed – except for Perl
 5.38, installed only on Tiger:

 {{{
 1058         if ( $Is{IRIX} ) {
 1059             $ldrun = qq{-rpath "$self->{LD_RUN_PATH}"};
 1060         }
 1061         elsif ( $^O eq 'darwin' && $Is{AppleRPath} ) {
 1062             # both clang and gcc support -Wl,-rpath, but only clang
 supports
 1063             # -rpath so by using -Wl,-rpath we avoid having to check
 for the
 1064             # type of compiler
 1065             $ldrun = qq{-Wl,-rpath,"$self->{LD_RUN_PATH}"};
 1066         }
 }}}

 Apple's versions are OK.

-- 
Ticket URL: <https://trac.macports.org/ticket/71142#comment:2>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list