--- dev-lang/perl/files/perl-5.8.8-LDFLAGS.patch +++ dev-lang/perl/files/perl-5.8.8-LDFLAGS.patch @@ -0,0 +1,865 @@ +Patch created by Arfrever Frehtes Taifersar Arahesis. +--- ext/attrs/Makefile.PL ++++ ext/attrs/Makefile.PL +@@ -2,6 +2,7 @@ + WriteMakefile( + NAME => 'attrs', + VERSION_FROM => 'attrs.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + MAN3PODS => {}, # Pods will be built by installman. + XSPROTOARG => '-noprototypes' + ); +--- ext/B/Makefile.PL ++++ ext/B/Makefile.PL +@@ -17,6 +17,7 @@ + WriteMakefile( + NAME => "B", + VERSION_FROM => "B.pm", ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + PL_FILES => { 'defsubs_h.PL' => 'defsubs.h' }, + MAN3PODS => {}, + clean => { +--- ext/B/C/Makefile.PL ++++ ext/B/C/Makefile.PL +@@ -2,7 +2,8 @@ + + use ExtUtils::MakeMaker; + +-WriteMakefile( NAME => 'B::C', +- VERSION_FROM => '../B/C.pm' +- ); +- ++WriteMakefile( ++ NAME => 'B::C', ++ VERSION_FROM => '../B/C.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared' ++); +--- ext/ByteLoader/Makefile.PL ++++ ext/ByteLoader/Makefile.PL +@@ -3,7 +3,8 @@ + WriteMakefile( + NAME => 'ByteLoader', + VERSION_FROM => 'ByteLoader.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + XSPROTOARG => '-noprototypes', + MAN3PODS => {}, # Pods will be built by installman. +- OBJECT => 'byterun$(OBJ_EXT) ByteLoader$(OBJ_EXT)', ++ OBJECT => 'byterun$(OBJ_EXT) ByteLoader$(OBJ_EXT)' + ); +--- ext/Cwd/Makefile.PL ++++ ext/Cwd/Makefile.PL +@@ -2,4 +2,5 @@ + WriteMakefile( + NAME => 'Cwd', + VERSION_FROM => '../../lib/Cwd.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared' + ); +--- ext/Data/Dumper/Makefile.PL ++++ ext/Data/Dumper/Makefile.PL +@@ -2,10 +2,11 @@ + WriteMakefile( + NAME => "Data::Dumper", + VERSION_FROM => 'Dumper.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + 'dist' => { + COMPRESS => 'gzip -9f', + SUFFIX => 'gz', + DIST_DEFAULT => 'all tardist', + }, +- MAN3PODS => {}, ++ MAN3PODS => {} + ); +--- ext/DB_File/Makefile.PL ++++ ext/DB_File/Makefile.PL +@@ -15,6 +15,7 @@ + WriteMakefile( + NAME => 'DB_File', + LIBS => ["-L/usr/local/lib $LIB"], ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + MAN3PODS => {}, # Pods will be built by installman. + #INC => '-I/usr/local/include', + VERSION_FROM => 'DB_File.pm', +@@ -23,7 +24,7 @@ + DEFINE => $OS2 || "", + INC => ($^O eq "MacOS" ? "-i ::::db:include" : ""), + 'depend' => {'version$(OBJ_EXT)' => 'version.c'}, +- 'clean' => {FILES => 'constants.h constants.xs'}, ++ 'clean' => {FILES => 'constants.h constants.xs'} + ); + + my @names = qw( +--- ext/Devel/DProf/Makefile.PL ++++ ext/Devel/DProf/Makefile.PL +@@ -8,6 +8,7 @@ + NAME => 'Devel::DProf', + DISTNAME => 'DProf', + VERSION_FROM => 'DProf.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + clean => { 'FILES' => 'tmon.out t/tmon.out t/err'}, + XSPROTOARG => '-noprototypes', + DEFINE => '-DPERLDBf_NONAME=0x40 -DPERLDBf_GOTO=0x80 ' +@@ -17,5 +18,5 @@ + SUFFIX => 'gz', + DIST_DEFAULT => 'all tardist', + }, +- MAN3PODS => {}, ++ MAN3PODS => {} + ); +--- ext/Devel/Peek/Makefile.PL ++++ ext/Devel/Peek/Makefile.PL +@@ -2,11 +2,12 @@ + WriteMakefile( + NAME => "Devel::Peek", + VERSION_FROM => 'Peek.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + XSPROTOARG => '-noprototypes', + 'dist' => { + COMPRESS => 'gzip -9f', + SUFFIX => 'gz', + DIST_DEFAULT => 'all tardist', + }, +- MAN3PODS => {}, ++ MAN3PODS => {} + ); +--- ext/Devel/PPPort/Makefile.PL ++++ ext/Devel/PPPort/Makefile.PL +@@ -52,6 +52,7 @@ + WriteMakefile( + NAME => 'Devel::PPPort', + VERSION_FROM => 'PPPort_pm.PL', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + PL_FILES => \%PL_FILES, + PM => { 'PPPort.pm' => '$(INST_LIBDIR)/PPPort.pm' }, + C => \@C_FILES, +@@ -60,7 +61,7 @@ + XSPROTOARG => '-noprototypes', + clean => { FILES => "@clean" }, + depend => { '$(OBJECT)' => '$(H_FILES)' }, +- @coreopts, ++ @coreopts + ); + + sub MY::postamble { +--- ext/Digest/MD5/Makefile.PL ++++ ext/Digest/MD5/Makefile.PL +@@ -23,13 +23,14 @@ + push(@extra, 'MAN3PODS' => {}) if $PERL_CORE; # Pods built by installman. + + WriteMakefile( +- 'NAME' => 'Digest::MD5', +- 'VERSION_FROM' => 'MD5.pm', +- 'PREREQ_PM' => { 'File::Spec' => 0, ++ NAME => 'Digest::MD5', ++ VERSION_FROM => 'MD5.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', ++ PREREQ_PM => { 'File::Spec' => 0, + 'Digest::base' => '1.00', + }, + @extra, +- 'dist' => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', }, ++ 'dist' => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', } + ); + + +--- ext/Encode/Byte/Makefile.PL ++++ ext/Encode/Byte/Makefile.PL +@@ -57,6 +57,7 @@ + INC => "-I../Encode", + NAME => 'Encode::'.$name, + VERSION_FROM => "$name.pm", ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + OBJECT => '$(O_FILES)', + 'dist' => { + COMPRESS => 'gzip -9f', +@@ -65,7 +66,7 @@ + }, + MAN3PODS => {}, + # OS 390 winges about line numbers > 64K ??? +- XSOPT => '-nolinenumbers', ++ XSOPT => '-nolinenumbers' + ); + + package MY; +--- ext/Encode/CN/Makefile.PL ++++ ext/Encode/CN/Makefile.PL +@@ -32,6 +32,7 @@ + INC => "-I../Encode", + NAME => 'Encode::'.$name, + VERSION_FROM => "$name.pm", ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + OBJECT => '$(O_FILES)', + 'dist' => { + COMPRESS => 'gzip -9f', +@@ -41,7 +42,7 @@ + MAN3PODS => {}, + # OS 390 winges about line numbers > 64K ??? + XSOPT => '-nolinenumbers', +- XSPROTOARG => '-noprototypes', ++ XSPROTOARG => '-noprototypes' + ); + + package MY; +--- ext/Encode/EBCDIC/Makefile.PL ++++ ext/Encode/EBCDIC/Makefile.PL +@@ -14,6 +14,7 @@ + INC => "-I../Encode", + NAME => 'Encode::'.$name, + VERSION_FROM => "$name.pm", ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + OBJECT => '$(O_FILES)', + 'dist' => { + COMPRESS => 'gzip -9f', +@@ -22,7 +23,7 @@ + }, + MAN3PODS => {}, + # OS 390 winges about line numbers > 64K ??? +- XSOPT => '-nolinenumbers', ++ XSOPT => '-nolinenumbers' + ); + + package MY; +--- ext/Encode/JP/Makefile.PL ++++ ext/Encode/JP/Makefile.PL +@@ -33,6 +33,7 @@ + INC => "-I../Encode", + NAME => 'Encode::'.$name, + VERSION_FROM => "$name.pm", ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + OBJECT => '$(O_FILES)', + 'dist' => { + COMPRESS => 'gzip -9f', +@@ -41,7 +42,7 @@ + }, + MAN3PODS => {}, + # OS 390 winges about line numbers > 64K ??? +- XSOPT => '-nolinenumbers', ++ XSOPT => '-nolinenumbers' + ); + + package MY; +--- ext/Encode/KR/Makefile.PL ++++ ext/Encode/KR/Makefile.PL +@@ -31,6 +31,7 @@ + INC => "-I../Encode", + NAME => 'Encode::'.$name, + VERSION_FROM => "$name.pm", ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + OBJECT => '$(O_FILES)', + 'dist' => { + COMPRESS => 'gzip -9f', +@@ -39,7 +40,7 @@ + }, + MAN3PODS => {}, + # OS 390 winges about line numbers > 64K ??? +- XSOPT => '-nolinenumbers', ++ XSOPT => '-nolinenumbers' + ); + + package MY; +--- ext/Encode/Makefile.PL ++++ ext/Encode/Makefile.PL +@@ -30,6 +30,7 @@ + NAME => "Encode", + EXE_FILES => \@exe_files, + VERSION_FROM => 'Encode.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + OBJECT => '$(O_FILES)', + 'dist' => { + COMPRESS => 'gzip -9f', +@@ -39,7 +40,7 @@ + MAN3PODS => {}, + INC => "-I./Encode", + PMLIBDIRS => \@pmlibdirs, +- INSTALLDIRS => 'perl', ++ INSTALLDIRS => 'perl' + ); + + package MY; +--- ext/Encode/Symbol/Makefile.PL ++++ ext/Encode/Symbol/Makefile.PL +@@ -19,6 +19,7 @@ + INC => "-I../Encode", + NAME => 'Encode::'.$name, + VERSION_FROM => "$name.pm", ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + OBJECT => '$(O_FILES)', + 'dist' => { + COMPRESS => 'gzip -9f', +@@ -27,7 +28,7 @@ + }, + MAN3PODS => {}, + # OS 390 winges about line numbers > 64K ??? +- XSOPT => '-nolinenumbers', ++ XSOPT => '-nolinenumbers' + ); + + package MY; +--- ext/Encode/TW/Makefile.PL ++++ ext/Encode/TW/Makefile.PL +@@ -29,6 +29,7 @@ + INC => "-I../Encode", + NAME => 'Encode::'.$name, + VERSION_FROM => "$name.pm", ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + OBJECT => '$(O_FILES)', + 'dist' => { + COMPRESS => 'gzip -9f', +@@ -37,7 +38,7 @@ + }, + MAN3PODS => {}, + # OS 390 winges about line numbers > 64K ??? +- XSOPT => '-nolinenumbers', ++ XSOPT => '-nolinenumbers' + ); + + package MY; +--- ext/Encode/Unicode/Makefile.PL ++++ ext/Encode/Unicode/Makefile.PL +@@ -6,6 +6,7 @@ + INC => "-I../Encode", + NAME => 'Encode::Unicode', + VERSION_FROM => "Unicode.pm", +- MAN3PODS => {}, ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', ++ MAN3PODS => {} + ); + +--- ext/Fcntl/Makefile.PL ++++ ext/Fcntl/Makefile.PL +@@ -5,7 +5,8 @@ + MAN3PODS => {}, # Pods will be built by installman. + XSPROTOARG => '-noprototypes', # XXX remove later? + VERSION_FROM => 'Fcntl.pm', +- realclean => {FILES=> 'const-c.inc const-xs.inc'}, ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', ++ realclean => {FILES=> 'const-c.inc const-xs.inc'} + ); + + my @names = (qw( +--- ext/File/Glob/Makefile.PL ++++ ext/File/Glob/Makefile.PL +@@ -3,9 +3,10 @@ + WriteMakefile( + NAME => 'File::Glob', + VERSION_FROM => 'Glob.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + MAN3PODS => {}, # Pods will be built by installman. + OBJECT => 'bsd_glob$(OBJ_EXT) Glob$(OBJ_EXT)', +- realclean => {FILES=> 'const-c.inc const-xs.inc'}, ++ realclean => {FILES => 'const-c.inc const-xs.inc'}, + + ## uncomment for glob debugging (will cause make test to fail) + # DEFINE => '-DGLOB_DEBUG', +--- ext/Filter/Util/Call/Makefile.PL ++++ ext/Filter/Util/Call/Makefile.PL +@@ -3,5 +3,6 @@ + WriteMakefile( + NAME => 'Filter::Util::Call', + VERSION_FROM => 'Call.pm', +- MAN3PODS => {}, # Pods will be built by installman. ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', ++ MAN3PODS => {} # Pods will be built by installman. + ); +--- ext/GDBM_File/Makefile.PL ++++ ext/GDBM_File/Makefile.PL +@@ -6,7 +6,8 @@ + MAN3PODS => {}, # Pods will be built by installman. + XSPROTOARG => '-noprototypes', # XXX remove later? + VERSION_FROM => 'GDBM_File.pm', +- realclean => {FILES=> 'const-c.inc const-xs.inc'}, ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', ++ realclean => {FILES=> 'const-c.inc const-xs.inc'} + ); + WriteConstants( + NAME => 'GDBM_File', +--- ext/I18N/Langinfo/Makefile.PL ++++ ext/I18N/Langinfo/Makefile.PL +@@ -2,20 +2,21 @@ + # See lib/ExtUtils/MakeMaker.pm for details of how to influence + # the contents of the Makefile that is written. + WriteMakefile( +- 'NAME' => 'I18N::Langinfo', +- 'VERSION_FROM' => 'Langinfo.pm', # finds $VERSION +- 'PREREQ_PM' => {}, # e.g., Module::Name => 1.1 ++ NAME => 'I18N::Langinfo', ++ VERSION_FROM => 'Langinfo.pm', # finds $VERSION ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', ++ PREREQ_PM => {}, # e.g., Module::Name => 1.1 + ($] >= 5.005 ? ## Add these new keywords supported since 5.005 + (ABSTRACT_FROM => 'Langinfo.pm', # retrieve abstract from module + AUTHOR => 'Jarkko Hietaniemi ') : ()), +- 'LIBS' => [''], # e.g., '-lm' +- 'DEFINE' => '', # e.g., '-DHAVE_SOMETHING' ++ LIBS => [''], # e.g., '-lm' ++ DEFINE => '', # e.g., '-DHAVE_SOMETHING' + # Insert -I. if you add *.h files later: +- 'INC' => '', # e.g., '-I/usr/include/other' +- 'MAN3PODS' => {}, # Pods will be built by installman ++ INC => '', # e.g., '-I/usr/include/other' ++ MAN3PODS => {}, # Pods will be built by installman + realclean => {FILES=> 'const-c.inc const-xs.inc'}, + # Un-comment this if you add C files to link with later: +- # 'OBJECT' => '$(O_FILES)', # link all the C files too ++ # OBJECT => '$(O_FILES)', # link all the C files too + ); + if (eval {require ExtUtils::Constant; 1}) { + # Some older versions of glibc use only enums, no defines, hence all this +--- ext/IO/Makefile.PL ++++ ext/IO/Makefile.PL +@@ -3,7 +3,8 @@ + + WriteMakefile( + VERSION_FROM => "IO.pm", +- NAME => "IO", ++ NAME => "IO", ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + OBJECT => '$(O_FILES)', +- MAN3PODS => {}, # Pods will be built by installman. ++ MAN3PODS => {} # Pods will be built by installman. + ); +--- ext/IPC/SysV/Makefile.PL ++++ ext/IPC/SysV/Makefile.PL +@@ -21,17 +21,18 @@ + + WriteMakefile( + VERSION_FROM => "SysV.pm", +- NAME => "IPC::SysV", ++ NAME => "IPC::SysV", ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + MAN3PODS => {}, # Pods will be built by installman. + +- 'dist' => {COMPRESS => 'gzip -9f', ++ 'dist' => {COMPRESS => 'gzip -9f', + SUFFIX => 'gz', + DIST_DEFAULT => 'all tardist', + }, + +- 'clean' => {FILES => join(" ", ++ 'clean' => {FILES => join(" ", + map { "$_ */$_ */*/$_" } + qw(*% *.html *.b[ac]k *.old)) + }, +- 'macro' => { INSTALLDIRS => 'perl' }, ++ 'macro' => { INSTALLDIRS => 'perl' } + ); +--- ext/List/Util/Makefile.PL ++++ ext/List/Util/Makefile.PL +@@ -4,7 +4,8 @@ + VERSION_FROM => "lib/List/Util.pm", + MAN3PODS => {}, # Pods will be built by installman. + NAME => "List::Util", +- DEFINE => "-DPERL_EXT", ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', ++ DEFINE => "-DPERL_EXT" + ); + + package MY; +--- ext/MIME/Base64/Makefile.PL ++++ ext/MIME/Base64/Makefile.PL +@@ -12,6 +12,7 @@ + WriteMakefile( + NAME => 'MIME::Base64', + VERSION_FROM => 'Base64.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + dist => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', }, +- @makefileopts, ++ @makefileopts + ); +--- ext/NDBM_File/Makefile.PL ++++ ext/NDBM_File/Makefile.PL +@@ -5,5 +5,6 @@ + MAN3PODS => {}, # Pods will be built by installman. + XSPROTOARG => '-noprototypes', # XXX remove later? + VERSION_FROM => 'NDBM_File.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + INC => ($^O eq "MacOS" ? "-i ::::db:include" : "") + ); +--- ext/ODBM_File/Makefile.PL ++++ ext/ODBM_File/Makefile.PL +@@ -4,5 +4,6 @@ + LIBS => ["-ldbm -lucb"], + MAN3PODS => {}, # Pods will be built by installman. + XSPROTOARG => '-noprototypes', # XXX remove later? +- VERSION_FROM => 'ODBM_File.pm', ++ VERSION_FROM => 'ODBM_File.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + ); +--- ext/Opcode/Makefile.PL ++++ ext/Opcode/Makefile.PL +@@ -3,5 +3,6 @@ + NAME => 'Opcode', + MAN3PODS => {}, + VERSION_FROM => 'Opcode.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + XS_VERSION => '1.03' + ); +--- ext/PerlIO/encoding/Makefile.PL ++++ ext/PerlIO/encoding/Makefile.PL +@@ -1,7 +1,8 @@ + use ExtUtils::MakeMaker; + WriteMakefile( + NAME => "PerlIO::encoding", +- MAN3PODS => {}, # Pods will be built by installman. ++ MAN3PODS => {}, # Pods will be built by installman. + VERSION_FROM => 'encoding.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared' + ); + +--- ext/PerlIO/scalar/Makefile.PL ++++ ext/PerlIO/scalar/Makefile.PL +@@ -1,7 +1,8 @@ + use ExtUtils::MakeMaker; + WriteMakefile( + NAME => "PerlIO::scalar", +- MAN3PODS => {}, # Pods will be built by installman. ++ MAN3PODS => {}, # Pods will be built by installman. + VERSION_FROM => 'scalar.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared' + ); + +--- ext/PerlIO/via/Makefile.PL ++++ ext/PerlIO/via/Makefile.PL +@@ -1,7 +1,8 @@ + use ExtUtils::MakeMaker; + WriteMakefile( + NAME => "PerlIO::via", +- MAN3PODS => {}, # Pods will be built by installman. ++ MAN3PODS => {}, # Pods will be built by installman. + VERSION_FROM => 'via.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared' + ); + +--- ext/POSIX/Makefile.PL ++++ ext/POSIX/Makefile.PL +@@ -15,6 +15,7 @@ + MAN3PODS => {}, # Pods will be built by installman. + XSPROTOARG => '-noprototypes', # XXX remove later? + VERSION_FROM => 'POSIX.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + realclean => {FILES=> 'const-c.inc const-xs.inc'}, + ); + +--- ext/re/Makefile.PL ++++ ext/re/Makefile.PL +@@ -9,11 +9,12 @@ + WriteMakefile( + NAME => 're', + VERSION_FROM => 're.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + MAN3PODS => {}, # Pods will be built by installman. + XSPROTOARG => '-noprototypes', + OBJECT => $object, +- DEFINE => $defines, +- clean => { FILES => '*$(OBJ_EXT) *.c ../../lib/re.pm' }, ++ DEFINE => $defines, ++ clean => { FILES => '*$(OBJ_EXT) *.c ../../lib/re.pm' } + ); + + package MY; +--- ext/SDBM_File/Makefile.PL ++++ ext/SDBM_File/Makefile.PL +@@ -11,13 +11,14 @@ + else { $myextlib = 'sdbm/libsdbm$(LIB_EXT)'; } + + WriteMakefile( +- NAME => 'SDBM_File', +- MYEXTLIB => $myextlib, +- MAN3PODS => {}, # Pods will be built by installman. +- XSPROTOARG => '-noprototypes', # XXX remove later? +- VERSION_FROM => 'SDBM_File.pm', +- DEFINE => $define, +- PERL_MALLOC_OK => 1, ++ NAME => 'SDBM_File', ++ MYEXTLIB => $myextlib, ++ MAN3PODS => {}, # Pods will be built by installman. ++ XSPROTOARG => '-noprototypes', # XXX remove later? ++ VERSION_FROM => 'SDBM_File.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', ++ DEFINE => $define, ++ PERL_MALLOC_OK => 1 + ); + + sub MY::postamble { +--- ext/Socket/Makefile.PL ++++ ext/Socket/Makefile.PL +@@ -2,12 +2,13 @@ + use ExtUtils::Constant 0.11 'WriteConstants'; + use Config; + WriteMakefile( +- NAME => 'Socket', +- VERSION_FROM => 'Socket.pm', ++ NAME => 'Socket', ++ VERSION_FROM => 'Socket.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + ($Config{libs} =~ /(-lsocks\S*)/ ? (LIBS => [ "$1" ] ) : ()), +- MAN3PODS => {}, # Pods will be built by installman. +- XSPROTOARG => '-noprototypes', # XXX remove later? +- realclean => {FILES=> 'const-c.inc const-xs.inc'}, ++ MAN3PODS => {}, # Pods will be built by installman. ++ XSPROTOARG => '-noprototypes', # XXX remove later? ++ realclean => {FILES=> 'const-c.inc const-xs.inc'} + ); + my @names = (qw(AF_802 AF_AAL AF_APPLETALK AF_CCITT AF_CHAOS AF_CTF + AF_DATAKIT AF_DECnet AF_DLI AF_ECMA AF_GOSIP AF_HYLINK +--- ext/Storable/Makefile.PL ++++ ext/Storable/Makefile.PL +@@ -16,7 +16,8 @@ + # PREREQ_PM => { 'Test::More' => '0.41' }, + INSTALLDIRS => $] >= 5.007 ? 'perl' : 'site', + VERSION_FROM => 'Storable.pm', +- dist => { SUFFIX => 'gz', COMPRESS => 'gzip -f' }, ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', ++ dist => { SUFFIX => 'gz', COMPRESS => 'gzip -f' } + ); + + my $ivtype = $Config{ivtype}; +--- ext/Sys/Hostname/Makefile.PL ++++ ext/Sys/Hostname/Makefile.PL +@@ -2,7 +2,8 @@ + + WriteMakefile( + NAME => 'Sys::Hostname', +- VERSION_FROM => 'Hostname.pm', ++ VERSION_FROM => 'Hostname.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + MAN3PODS => {}, # Pods will be built by installman. +- XSPROTOARG => '-noprototypes', ++ XSPROTOARG => '-noprototypes' + ); +--- ext/Sys/Syslog/Makefile.PL ++++ ext/Sys/Syslog/Makefile.PL +@@ -5,6 +5,7 @@ + WriteMakefile( + NAME => 'Sys::Syslog', + VERSION_FROM => 'Syslog.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', + ABSTRACT_FROM => 'Syslog.pm', + INSTALLDIRS => 'perl', + MAN3PODS => {}, # Pods will be built by installman. +@@ -15,7 +16,7 @@ + }, + dist => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', }, + clean => { FILES => 'Sys-Syslog-*' }, +- realclean => { FILES => 'const-c.inc const-xs.inc macros.all' }, ++ realclean => { FILES => 'const-c.inc const-xs.inc macros.all' } + ); + + my $_PATH_LOG; +--- ext/threads/Makefile.PL ++++ ext/threads/Makefile.PL +@@ -3,26 +3,27 @@ + # the contents of the Makefile that is written. + + WriteMakefile( +- 'NAME' => 'threads', +- 'VERSION_FROM' => 'threads.pm', # finds $VERSION +- 'PREREQ_PM' => {}, # e.g., Module::Name => 1.1 ++ NAME => 'threads', ++ VERSION_FROM => 'threads.pm', # finds $VERSION ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', ++ PREREQ_PM => {}, # e.g., Module::Name => 1.1 + ($] >= 5.005 ? ## Add these new keywords supported since 5.005 + (ABSTRACT_FROM => 'threads.pm', # retrieve abstract from module + AUTHOR => 'Artur Bergman ') : ()), +- 'MAN3PODS' => {}, # Pods will be built by installman +- 'LIBS' => [''], # e.g., '-lm' +- 'DEFINE' => '', # e.g., '-DHAVE_SOMETHING' ++ MAN3PODS => {}, # Pods will be built by installman ++ LIBS => [''], # e.g., '-lm' ++ DEFINE => '', # e.g., '-DHAVE_SOMETHING' + # Insert -I. if you add *.h files later: +-# 'INC' => '', # e.g., '-I/usr/include/other' ++# INC => '', # e.g., '-I/usr/include/other' + # Un-comment this if you add C files to link with later: +- # 'OBJECT' => '$(O_FILES)', # link all the C files too ++ # OBJECT => '$(O_FILES)', # link all the C files too + + # ext/threads/shared is a completely different module. Don't + # recurse into it. +- 'NORECURS' => 1, ++ NORECURS => 1, + + # Bug in MakeMaker continues to put ext/threads/shared into DIR + # even if we said NORECURS. Remove when fixed. +- 'DIR' => [], ++ DIR => [] + ); + +--- ext/threads/shared/Makefile.PL ++++ ext/threads/shared/Makefile.PL +@@ -3,21 +3,21 @@ + # the contents of the Makefile that is written. + + WriteMakefile( +- 'NAME' => 'threads::shared', +- 'VERSION_FROM' => 'shared.pm', # finds $VERSION +- 'PM' => { +- 'shared.pm' => '$(INST_LIBDIR)/shared.pm', +- }, +- 'PREREQ_PM' => {}, # e.g., Module::Name => 1.1 ++ NAME => 'threads::shared', ++ VERSION_FROM => 'shared.pm', # finds $VERSION ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', ++ PM => { ++ 'shared.pm' => '$(INST_LIBDIR)/shared.pm', ++ }, ++ PREREQ_PM => {}, # e.g., Module::Name => 1.1 + ($] >= 5.005 ? ## Add these new keywords supported since 5.005 + (ABSTRACT_FROM => 'shared.pm', # retrieve abstract from module + AUTHOR => 'Arthur Bergman ') : ()), +- 'MAN3PODS' => {}, # Pods will be built by installman +- 'LIBS' => [''], # e.g., '-lm' +- 'DEFINE' => '', # e.g., '-DHAVE_SOMETHING' ++ MAN3PODS => {}, # Pods will be built by installman ++ LIBS => [''], # e.g., '-lm' ++ DEFINE => '', # e.g., '-DHAVE_SOMETHING' + # Insert -I. if you add *.h files later: +- 'INC' => '', # e.g., '-I/usr/include/other' ++ INC => '', # e.g., '-I/usr/include/other' + # Un-comment this if you add C files to link with later: +- # 'OBJECT' => '$(O_FILES)', # link all the C files too +- ++ # OBJECT => '$(O_FILES)', # link all the C files too + ); +--- ext/Time/HiRes/Makefile.PL ++++ ext/Time/HiRes/Makefile.PL +@@ -625,22 +625,23 @@ + } + + push (@makefileopts, +- 'NAME' => 'Time::HiRes', +- 'VERSION_FROM' => 'HiRes.pm', # finds $VERSION +- 'LIBS' => $LIBS, # e.g., '-lm' +- 'DEFINE' => $DEFINE, # e.g., '-DHAS_SOMETHING' +- 'XSOPT' => $XSOPT, +- # Do not even think about 'INC' => '-I/usr/ucbinclude', ++ NAME => 'Time::HiRes', ++ VERSION_FROM => 'HiRes.pm', # finds $VERSION ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', ++ LIBS => $LIBS, # e.g., '-lm' ++ DEFINE => $DEFINE, # e.g., '-DHAS_SOMETHING' ++ XSOPT => $XSOPT, ++ # Do not even think about INC => '-I/usr/ucbinclude', + # Solaris will avenge. +- 'INC' => '', # e.g., '-I/usr/include/other' +- 'INSTALLDIRS' => ($] >= 5.008 ? 'perl' : 'site'), +- 'dist' => { ++ INC => '', # e.g., '-I/usr/include/other' ++ INSTALLDIRS => ($] >= 5.008 ? 'perl' : 'site'), ++ 'dist' => { + 'CI' => 'ci -l', + 'COMPRESS' => 'gzip -9f', + 'SUFFIX' => 'gz', + }, +- clean => { FILES => "xdefine" }, +- realclean => { FILES=> 'const-c.inc const-xs.inc' }, ++ clean => { FILES => "xdefine" }, ++ realclean => { FILES=> 'const-c.inc const-xs.inc' } + ); + + if ($ENV{PERL_CORE}) { +--- ext/Unicode/Normalize/Makefile.PL ++++ ext/Unicode/Normalize/Makefile.PL +@@ -12,11 +12,12 @@ + } + + WriteMakefile( +- 'INSTALLDIRS' => $] >= 5.007002 ? 'perl' : 'site', +- 'NAME' => 'Unicode::Normalize', +- 'VERSION_FROM' => 'Normalize.pm', # finds $VERSION +- 'clean' => $clean, +- 'PREREQ_PM' => { ++ INSTALLDIRS => $] >= 5.007002 ? 'perl' : 'site', ++ NAME => 'Unicode::Normalize', ++ VERSION_FROM => 'Normalize.pm', # finds $VERSION ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', ++ clean => $clean, ++ PREREQ_PM => { + Carp => 0, + constant => 0, + DynaLoader => 0, +@@ -26,5 +27,5 @@ + strict => 0, + Test => 0, + warnings => 0, +- }, ++ } + ); +--- ext/XS/APItest/Makefile.PL ++++ ext/XS/APItest/Makefile.PL +@@ -3,18 +3,19 @@ + # See lib/ExtUtils/MakeMaker.pm for details of how to influence + # the contents of the Makefile that is written. + WriteMakefile( +- 'NAME' => 'XS::APItest', +- 'VERSION_FROM' => 'APItest.pm', # finds $VERSION +- 'PREREQ_PM' => {}, # e.g., Module::Name => 1.1 ++ NAME => 'XS::APItest', ++ VERSION_FROM => 'APItest.pm', # finds $VERSION ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', ++ PREREQ_PM => {}, # e.g., Module::Name => 1.1 + ($] >= 5.005 ? ## Add these new keywords supported since 5.005 + (ABSTRACT_FROM => 'APItest.pm', # retrieve abstract from module + AUTHOR => 'Tim Jenness , Christian Soeller , Hugo van der Sanden ') : ()), +- 'LIBS' => [''], # e.g., '-lm' +- 'DEFINE' => '', # e.g., '-DHAVE_SOMETHING' +- 'INC' => '-I.', # e.g., '-I. -I/usr/include/other' ++ LIBS => [''], # e.g., '-lm' ++ DEFINE => '', # e.g., '-DHAVE_SOMETHING' ++ INC => '-I.', # e.g., '-I. -I/usr/include/other' + # Un-comment this if you add C files to link with later: +- # 'OBJECT' => '$(O_FILES)', # link all the C files too +- MAN3PODS => {}, # Pods will be built by installman. ++ # OBJECT => '$(O_FILES)', # link all the C files too ++ MAN3PODS => {} # Pods will be built by installman. + ); + + sub MY::install { "install ::\n" }; +--- ext/XS/Typemap/Makefile.PL ++++ ext/XS/Typemap/Makefile.PL +@@ -1,13 +1,14 @@ + use ExtUtils::MakeMaker; + + WriteMakefile( +- 'NAME' => 'XS::Typemap', +- MAN3PODS => {}, # Pods will be built by installman. +- 'VERSION_FROM' => 'Typemap.pm', +- 'dist' => { COMPRESS => "gzip -9f"}, +- OBJECT => 'stdio.o Typemap.o', +- ABSTRACT_FROM => 'Typemap.pm', +- AUTHOR => 'Tim Jenness ', ++ NAME => 'XS::Typemap', ++ MAN3PODS => {}, # Pods will be built by installman. ++ VERSION_FROM => 'Typemap.pm', ++ LDDLFLAGS => '$(EXTRA_LDFLAGS) -shared', ++ 'dist' => { COMPRESS => "gzip -9f"}, ++ OBJECT => 'stdio.o Typemap.o', ++ ABSTRACT_FROM => 'Typemap.pm', ++ AUTHOR => 'Tim Jenness ' + ); + + +--- Makefile.SH ++++ Makefile.SH +@@ -196,8 +196,8 @@ + CC = $cc + LD = $ld + +-LDFLAGS = $ldflags +-CLDFLAGS = $ldflags ++LDFLAGS = $LDFLAGS ++CLDFLAGS = $LDFLAGS + + mallocsrc = $mallocsrc + mallocobj = $mallocobj +--- x2p/Makefile.SH ++++ x2p/Makefile.SH +@@ -33,7 +33,7 @@ + + CC = $cc + BYACC = $byacc +-LDFLAGS = $ldflags ++LDFLAGS = $LDFLAGS + # XXX Perl malloc temporarily unusable (declaration collisions with stdlib.h) + #mallocsrc = $mallocsrc + #mallocobj = $mallocobj --- dev-lang/perl/perl-5.8.8-r2.ebuild +++ dev-lang/perl/perl-5.8.8-r2.ebuild @@ -131,7 +131,7 @@ # Patch from bug 168312, thanks Peter! has_version '>sys-kernel/linux-headers-2.6.20' && epatch ${FILESDIR}/${P}-asm-page-h-compile-failure.patch - + epatch "${FILESDIR}/${P}-LDFLAGS.patch" } myconf() { @@ -157,6 +157,7 @@ filter-flags "-fsched2-use-superblocks" export LC_ALL="C" + export EXTRA_LDFLAGS="${LDFLAGS}" case ${CHOST} in *-freebsd*) osname="freebsd" ;;