Skip Menu |

This queue is for tickets about the ExtUtils-FakeConfig CPAN distribution.

Report information
The Basics
Id: 35224
Status: resolved
Priority: 0/
Queue: ExtUtils-FakeConfig

People
Owner: Nobody in particular
Requestors: mdootson [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: 0.10
Fixed in: (no value)



Subject: Export ccname, work with Perl 5.10, install with dmake
Needs updating for Perl 5.10 Needs to export ccname to support Alien-wxWidgets Install using dmake fails at Makefile 'implib_mingw' due to whitespace Patch attached Best regards Mark
Subject: extutils.patch
diff -ruN Changes Changes --- Changes 2007-05-28 21:42:10.000000000 +0100 +++ Changes 2008-04-19 16:26:41.224621800 +0100 @@ -1,5 +1,9 @@ Revision history for Perl extension ExtUtils::FakeConfig. +0.11 + - Updates for Perl 5.10 and 'ccname' + - Makefile implib_mingw now works with dmake + 0.10 Mon May 28 21:41:57 CEST 2007 - Corrected dmake URL (patch by Steve Hay). diff -ruN Makefile.PL Makefile.PL --- Makefile.PL 2007-03-18 19:45:42.000000000 +0000 +++ Makefile.PL 2008-04-19 16:28:27.130871800 +0100 @@ -65,12 +65,13 @@ my( @params, $templater ); BEGIN { + my $specfile = 'spec/ap_mingw.txt'; + $specfile = 'spec/ap_mingw_58.txt' if $] >= 5.008; + $specfile = 'spec/ap_mingw_510.txt' if $] >= 5.010; $templater = '$(PERL) script/fill_template.pl'; @params = ( { Module => 'Config_m.pm', Template => 'spec/Config_ap.txt', - Spec => ( $] >= 5.008 - ? 'spec/ap_mingw_58.txt' - : 'spec/ap_mingw.txt' ), + Spec => $specfile, Params => "cc=gcc pack_name=Config_m" }, ); } @@ -106,7 +107,7 @@ *i = $j; $ret .= <<EOT; $lib/$i{Module} : $i{Template} $i{Spec} - $templater $i{Template} $i{Spec} \$@ $i{Params} + $templater $i{Template} $i{Spec} \$@ $i{Params} EOT } @@ -115,13 +116,15 @@ my $perl5_dll = ( glob( "$Config{binexp}\\perl*.dll" ) )[0]; my $gcc = ( ExtUtils::FakeConfig::find_program( 'gcc' ) )[1]; my $msvc = ( ExtUtils::FakeConfig::find_program( 'cl' ) )[1]; - + + # dmake needs tabs - fails with whitespace + if( $gcc ) { $ret .= <<EOT; pure_install :: implib_mingw implib_mingw : - \$(PERL) script\\make_implib.pl --output-dir="$core" --target=mingw "$perl5_dll" +\t\$(PERL) script\\make_implib.pl --output-dir="$core" --target=mingw "$perl5_dll" EOT } @@ -129,7 +132,7 @@ if( $msvc ) { $ret .= <<EOT; implib_msvc : - \$(PERL) script\\make_implib.pl --output-dir="$core" --target=vc "$perl5_dll" +\t\$(PERL) script\\make_implib.pl --output-dir="$core" --target=vc "$perl5_dll" EOT } diff -ruN MANIFEST MANIFEST --- MANIFEST 2007-05-28 21:45:40.000000000 +0100 +++ MANIFEST 2008-04-19 15:29:25.281733400 +0100 @@ -9,6 +9,7 @@ spec/Config_ap.txt spec/ap_mingw.txt spec/ap_mingw_58.txt +spec/ap_mingw_510.txt script/fill_template.pl script/make_implib.pl diff -ruN spec/ap_mingw.txt spec/ap_mingw.txt --- spec/ap_mingw.txt 2006-09-17 16:43:36.000000000 +0100 +++ spec/ap_mingw.txt 2008-04-19 15:17:29.272152200 +0100 @@ -1,4 +1,5 @@ cc='gcc' +ccname='gcc' ccflags='-O2 -DWIN32 -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -fno-strict-aliasing -DPERL_MSVCRT_READFIX' cccdlflags='-DHASATTRIBUTE' libpth='"(CC)\lib" "(CC)\i386-mingw32msvc\lib"' diff -ruN spec/ap_mingw_510.txt spec/ap_mingw_510.txt --- spec/ap_mingw_510.txt 1970-01-01 00:00:00.000000000 +0000 +++ spec/ap_mingw_510.txt 2008-04-19 15:18:26.307344000 +0100 @@ -0,0 +1,33 @@ +cc='gcc' +cc='ccname' +ccflags='-O2 -DWIN32 -DPERL_IMPLICIT_CONTEXT -DPERL_MSVCRT_READFIX' +cccdlflags='-DHASATTRIBUTE' +libpth='"(CC)\lib" "(CC)\i386-mingw32msvc\lib"' +libs=' -lmsvcrt -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lwsock32 -lmpr -lwinmm -lversion -lodbc32' +_a='.a' +_o='.o' +ar='ar' +cpp='gcc -E' +cppminus='-' +cpprun='gcc -E' +cppstdin='gcc -E' +d_attribut='define' +d_casti32='define' +i64type='long long' +ld='g++' +lddlflags='-s -mdll -L"(PERL)\lib\CORE"' +ldflags='-s -L"(PERL)\lib\CORE"' +lib_ext='.a' +libc='-lmsvcrt' +libperl='libperl510.a' +longdblsize='12' +lseektype='long long' +make='(MAKE)' +nm='nm' +obj_ext='.o' +optimize='-O2' +perlpath='(PERL)\bin\perl.exe' +perllibs=' -lmsvcrt -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lwsock32 -lmpr -lwinmm -lversion -lodbc32' +quadtype='long long' +u64type='unsigned long long' +uquadtype='unsigned long long' diff -ruN spec/ap_mingw_58.txt spec/ap_mingw_58.txt --- spec/ap_mingw_58.txt 2006-09-17 16:43:28.000000000 +0100 +++ spec/ap_mingw_58.txt 2008-04-19 15:17:54.282654000 +0100 @@ -1,4 +1,5 @@ cc='gcc' +ccname='gcc' ccflags='-O2 -DWIN32 -DPERL_IMPLICIT_CONTEXT -DPERL_MSVCRT_READFIX' cccdlflags='-DHASATTRIBUTE' libpth='"(CC)\lib" "(CC)\i386-mingw32msvc\lib"'
Better still, a patch that works. Missed off a tab. Sigh. On Sat Apr 19 11:37:12 2008, MDOOTSON wrote: Show quoted text
> Needs updating for Perl 5.10 > Needs to export ccname to support Alien-wxWidgets > Install using dmake fails at Makefile 'implib_mingw' due to whitespace > > Patch attached > > Best regards > > Mark
diff -ruN Changes Changes --- Changes 2007-05-28 21:42:10.000000000 +0100 +++ Changes 2008-04-19 16:26:41.224621800 +0100 @@ -1,5 +1,9 @@ Revision history for Perl extension ExtUtils::FakeConfig. +0.11 + - Updates for Perl 5.10 and 'ccname' + - Makefile implib_mingw now works with dmake + 0.10 Mon May 28 21:41:57 CEST 2007 - Corrected dmake URL (patch by Steve Hay). diff -ruN Makefile.PL Makefile.PL --- Makefile.PL 2008-04-19 16:54:12.443371800 +0100 +++ Makefile.PL 2008-04-19 16:54:42.818371800 +0100 @@ -63,14 +63,15 @@ print "Using: '$make'\n"; -my( @params, $templater ); +my( @params, $templater, $specfile ); BEGIN { + $specfile = 'spec/ap_mingw.txt'; + $specfile = 'spec/ap_mingw_58.txt' if $] >= 5.008; + $specfile = 'spec/ap_mingw_510.txt' if $] >= 5.010; $templater = '$(PERL) script/fill_template.pl'; @params = ( { Module => 'Config_m.pm', Template => 'spec/Config_ap.txt', - Spec => ( $] >= 5.008 - ? 'spec/ap_mingw_58.txt' - : 'spec/ap_mingw.txt' ), + Spec => $specfile, Params => "cc=gcc pack_name=Config_m" }, ); } @@ -106,7 +107,7 @@ *i = $j; $ret .= <<EOT; $lib/$i{Module} : $i{Template} $i{Spec} - $templater $i{Template} $i{Spec} \$@ $i{Params} +\t$templater $i{Template} $i{Spec} \$@ $i{Params} EOT } @@ -115,13 +116,15 @@ my $perl5_dll = ( glob( "$Config{binexp}\\perl*.dll" ) )[0]; my $gcc = ( ExtUtils::FakeConfig::find_program( 'gcc' ) )[1]; my $msvc = ( ExtUtils::FakeConfig::find_program( 'cl' ) )[1]; - + + # dmake needs tabs - fails with whitespace + if( $gcc ) { $ret .= <<EOT; pure_install :: implib_mingw implib_mingw : - \$(PERL) script\\make_implib.pl --output-dir="$core" --target=mingw "$perl5_dll" +\t\$(PERL) script\\make_implib.pl --output-dir="$core" --target=mingw "$perl5_dll" EOT } @@ -129,7 +132,7 @@ if( $msvc ) { $ret .= <<EOT; implib_msvc : - \$(PERL) script\\make_implib.pl --output-dir="$core" --target=vc "$perl5_dll" +\t\$(PERL) script\\make_implib.pl --output-dir="$core" --target=vc "$perl5_dll" EOT } diff -ruN MANIFEST MANIFEST --- MANIFEST 2007-05-28 21:45:40.000000000 +0100 +++ MANIFEST 2008-04-19 15:29:25.281733400 +0100 @@ -9,6 +9,7 @@ spec/Config_ap.txt spec/ap_mingw.txt spec/ap_mingw_58.txt +spec/ap_mingw_510.txt script/fill_template.pl script/make_implib.pl diff -ruN spec/ap_mingw.txt spec/ap_mingw.txt --- spec/ap_mingw.txt 2006-09-17 16:43:36.000000000 +0100 +++ spec/ap_mingw.txt 2008-04-19 15:17:29.272152200 +0100 @@ -1,4 +1,5 @@ cc='gcc' +ccname='gcc' ccflags='-O2 -DWIN32 -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -fno-strict-aliasing -DPERL_MSVCRT_READFIX' cccdlflags='-DHASATTRIBUTE' libpth='"(CC)\lib" "(CC)\i386-mingw32msvc\lib"' diff -ruN spec/ap_mingw_510.txt spec/ap_mingw_510.txt --- spec/ap_mingw_510.txt 1970-01-01 00:00:00.000000000 +0000 +++ spec/ap_mingw_510.txt 2008-04-19 15:18:26.307344000 +0100 @@ -0,0 +1,33 @@ +cc='gcc' +cc='ccname' +ccflags='-O2 -DWIN32 -DPERL_IMPLICIT_CONTEXT -DPERL_MSVCRT_READFIX' +cccdlflags='-DHASATTRIBUTE' +libpth='"(CC)\lib" "(CC)\i386-mingw32msvc\lib"' +libs=' -lmsvcrt -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lwsock32 -lmpr -lwinmm -lversion -lodbc32' +_a='.a' +_o='.o' +ar='ar' +cpp='gcc -E' +cppminus='-' +cpprun='gcc -E' +cppstdin='gcc -E' +d_attribut='define' +d_casti32='define' +i64type='long long' +ld='g++' +lddlflags='-s -mdll -L"(PERL)\lib\CORE"' +ldflags='-s -L"(PERL)\lib\CORE"' +lib_ext='.a' +libc='-lmsvcrt' +libperl='libperl510.a' +longdblsize='12' +lseektype='long long' +make='(MAKE)' +nm='nm' +obj_ext='.o' +optimize='-O2' +perlpath='(PERL)\bin\perl.exe' +perllibs=' -lmsvcrt -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lwsock32 -lmpr -lwinmm -lversion -lodbc32' +quadtype='long long' +u64type='unsigned long long' +uquadtype='unsigned long long' diff -ruN spec/ap_mingw_58.txt spec/ap_mingw_58.txt --- spec/ap_mingw_58.txt 2006-09-17 16:43:28.000000000 +0100 +++ spec/ap_mingw_58.txt 2008-04-19 15:17:54.282654000 +0100 @@ -1,4 +1,5 @@ cc='gcc' +ccname='gcc' ccflags='-O2 -DWIN32 -DPERL_IMPLICIT_CONTEXT -DPERL_MSVCRT_READFIX' cccdlflags='-DHASATTRIBUTE' libpth='"(CC)\lib" "(CC)\i386-mingw32msvc\lib"'
This is not a good day. My apologies. THIRD attempt at a patch actually does work. On Sat Apr 19 11:58:20 2008, MDOOTSON wrote: Show quoted text
> Better still, a patch that works. > > Missed off a tab. Sigh. > > > On Sat Apr 19 11:37:12 2008, MDOOTSON wrote:
> > Needs updating for Perl 5.10 > > Needs to export ccname to support Alien-wxWidgets > > Install using dmake fails at Makefile 'implib_mingw' due to whitespace > > > > Patch attached > > > > Best regards > > > > Mark
>
diff -ruN Changes Changes --- Changes 2007-05-28 21:42:10.000000000 +0100 +++ Changes 2008-04-19 16:26:41.224621800 +0100 @@ -1,5 +1,9 @@ Revision history for Perl extension ExtUtils::FakeConfig. +0.11 + - Updates for Perl 5.10 and 'ccname' + - Makefile implib_mingw now works with dmake + 0.10 Mon May 28 21:41:57 CEST 2007 - Corrected dmake URL (patch by Steve Hay). diff -ruN Makefile.PL Makefile.PL --- Makefile.PL 2008-04-19 16:54:12.443371800 +0100 +++ Makefile.PL 2008-04-19 16:54:42.818371800 +0100 @@ -63,14 +63,15 @@ print "Using: '$make'\n"; -my( @params, $templater ); +my( @params, $templater, $specfile ); BEGIN { + $specfile = 'spec/ap_mingw.txt'; + $specfile = 'spec/ap_mingw_58.txt' if $] >= 5.008; + $specfile = 'spec/ap_mingw_510.txt' if $] >= 5.010; $templater = '$(PERL) script/fill_template.pl'; @params = ( { Module => 'Config_m.pm', Template => 'spec/Config_ap.txt', - Spec => ( $] >= 5.008 - ? 'spec/ap_mingw_58.txt' - : 'spec/ap_mingw.txt' ), + Spec => $specfile, Params => "cc=gcc pack_name=Config_m" }, ); } @@ -106,7 +107,7 @@ *i = $j; $ret .= <<EOT; $lib/$i{Module} : $i{Template} $i{Spec} - $templater $i{Template} $i{Spec} \$@ $i{Params} +\t$templater $i{Template} $i{Spec} \$@ $i{Params} EOT } @@ -115,13 +116,15 @@ my $perl5_dll = ( glob( "$Config{binexp}\\perl*.dll" ) )[0]; my $gcc = ( ExtUtils::FakeConfig::find_program( 'gcc' ) )[1]; my $msvc = ( ExtUtils::FakeConfig::find_program( 'cl' ) )[1]; - + + # dmake needs tabs - fails with whitespace + if( $gcc ) { $ret .= <<EOT; pure_install :: implib_mingw implib_mingw : - \$(PERL) script\\make_implib.pl --output-dir="$core" --target=mingw "$perl5_dll" +\t\$(PERL) script\\make_implib.pl --output-dir="$core" --target=mingw "$perl5_dll" EOT } @@ -129,7 +132,7 @@ if( $msvc ) { $ret .= <<EOT; implib_msvc : - \$(PERL) script\\make_implib.pl --output-dir="$core" --target=vc "$perl5_dll" +\t\$(PERL) script\\make_implib.pl --output-dir="$core" --target=vc "$perl5_dll" EOT } diff -ruN MANIFEST MANIFEST --- MANIFEST 2007-05-28 21:45:40.000000000 +0100 +++ MANIFEST 2008-04-19 15:29:25.281733400 +0100 @@ -9,6 +9,7 @@ spec/Config_ap.txt spec/ap_mingw.txt spec/ap_mingw_58.txt +spec/ap_mingw_510.txt script/fill_template.pl script/make_implib.pl diff -ruN spec/ap_mingw.txt spec/ap_mingw.txt --- spec/ap_mingw.txt 2006-09-17 16:43:36.000000000 +0100 +++ spec/ap_mingw.txt 2008-04-19 15:17:29.272152200 +0100 @@ -1,4 +1,5 @@ cc='gcc' +ccname='gcc' ccflags='-O2 -DWIN32 -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -fno-strict-aliasing -DPERL_MSVCRT_READFIX' cccdlflags='-DHASATTRIBUTE' libpth='"(CC)\lib" "(CC)\i386-mingw32msvc\lib"' diff -ruN spec/ap_mingw_510.txt spec/ap_mingw_510.txt --- spec/ap_mingw_510.txt 1970-01-01 00:00:00.000000000 +0000 +++ spec/ap_mingw_510.txt 2008-04-19 17:04:28.349621800 +0100 @@ -0,0 +1,33 @@ +cc='gcc' +ccname='gcc' +ccflags='-O2 -DWIN32 -DPERL_IMPLICIT_CONTEXT -DPERL_MSVCRT_READFIX' +cccdlflags='-DHASATTRIBUTE' +libpth='"(CC)\lib" "(CC)\i386-mingw32msvc\lib"' +libs=' -lmsvcrt -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lwsock32 -lmpr -lwinmm -lversion -lodbc32' +_a='.a' +_o='.o' +ar='ar' +cpp='gcc -E' +cppminus='-' +cpprun='gcc -E' +cppstdin='gcc -E' +d_attribut='define' +d_casti32='define' +i64type='long long' +ld='g++' +lddlflags='-s -mdll -L"(PERL)\lib\CORE"' +ldflags='-s -L"(PERL)\lib\CORE"' +lib_ext='.a' +libc='-lmsvcrt' +libperl='libperl510.a' +longdblsize='12' +lseektype='long long' +make='(MAKE)' +nm='nm' +obj_ext='.o' +optimize='-O2' +perlpath='(PERL)\bin\perl.exe' +perllibs=' -lmsvcrt -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lwsock32 -lmpr -lwinmm -lversion -lodbc32' +quadtype='long long' +u64type='unsigned long long' +uquadtype='unsigned long long' diff -ruN spec/ap_mingw_58.txt spec/ap_mingw_58.txt --- spec/ap_mingw_58.txt 2006-09-17 16:43:28.000000000 +0100 +++ spec/ap_mingw_58.txt 2008-04-19 15:17:54.282654000 +0100 @@ -1,4 +1,5 @@ cc='gcc' +ccname='gcc' ccflags='-O2 -DWIN32 -DPERL_IMPLICIT_CONTEXT -DPERL_MSVCRT_READFIX' cccdlflags='-DHASATTRIBUTE' libpth='"(CC)\lib" "(CC)\i386-mingw32msvc\lib"'
Subject: Re: [rt.cpan.org #35224] Export ccname, work with Perl 5.10, install with dmake
Date: Sun, 27 Apr 2008 18:41:12 +0200
To: bug-ExtUtils-FakeConfig [...] rt.cpan.org
From: Mattia Barbon <mattia.barbon [...] libero.it>
Applied and releases new version of ExtUtils::FakeConfig. Thanks! Mattia