[Module-build-general] Re: Module-Build CVS on Cygwin98
Status: Beta
Brought to you by:
kwilliams
|
From: Ken W. <ke...@ma...> - 2002-11-21 00:04:25
|
On Wednesday, November 20, 2002, at 09:33 PM, Michael G Schwern wrote:
> Attached is the results from running ./Build test against Module::Build
> from CVS on Cygwin98 4.10 with their default 5.6.1.
>
> The failure to cleanup _build is probably due to the mandatory
> locking on
> Windows. You must have a file open inside that directory when
> realclean is
> done. $self->{cleanup_fh} looks like the problem. If I
> manually close that
> in ACTION_realclean() just before $self->delete_filetree() is called
> everything's ok.
>
> Given that it looks like $self->{cleanup_fh} is only used inside
> add_to_cleanup() you can probably eliminate it.
Thanks for tracking this down - it would have taken me a while
to figure that out. I'll patch like this:
@@ -707,6 +706,12 @@
sub ACTION_realclean {
my ($self) = @_;
$self->depends_on('clean');
+ if ($self->{cleanup_fh}) {
+ # On Windows, you can't delete a directory with files open inside,
+ # so we close the cleanup file.
+ close $self->{cleanup_fh};
+ delete $self->{cleanup_fh};
+ }
$self->delete_filetree($self->{properties}{config_dir},
$self->{properties}{build_script});
}
>
>
> As for the linker errors, I don't even understand linking on Linux.
>
Eek - either someone will have to reach in with the hand of God
to show what the problem is, or I'll have to get access to a
machine with Cygwin. I could probably figure it out then.
Unfortunately, it look like SF doesn't have it in their compile
farm.
>
>
> t/basic.............1..11
> ok 1
> Checking whether your kit is complete...
> Looks good
> ok 2
> Checking whether your kit is complete...
> Looks good
> ok 3
> ok 4
> Checking whether your kit is complete...
> Looks good
> ok 5
> ok 6
> ok 7
> ok 8
> ok 9
> Checking whether your kit is complete...
> Looks good
> ok 10
> ok 11
> Deleting blib
> Deleting _build
> Can't remove directory _build: Directory not empty at
> /cygdrive/c/temp/Module-Build/blib/lib/Module/Build/Base.pm
> line 863
> Couldn't remove '_build':
> dubious
> Test returned status 255 (wstat 65280, 0xff00)
> after all the subtests completed successfully
> t/runthrough........1..10
> ok 1
> Checking whether your kit is complete...
> Looks good
> ok 2
> Removing previous file 'Build'
> Creating new 'Build' script for 'Sample' version '0.01'
> ok 3
> lib/Sample.pm -> blib/lib/Sample.pm
> test.p..............ok
> All tests successful.
> Files=1, Tests=1, 1 wallclock secs ( 0.00 cusr + 0.00 csys =
> 0.00 CPU)
> ok 4
> /usr/bin/perl Build.PL
> Checking whether your kit is complete...
> Looks good
> Creating new 'Build' script for 'Sample' version '0.01'
> ../Build
> lib/Sample.pm -> blib/lib/Sample.pm
> ../Build test
> No tests defined.
> ok 5
> ok 6
> Deleting Sample-0.01
> ok 7
> ok 8
> ok 9
> Deleting blib
> Deleting _build
> Can't remove directory _build: Directory not empty at
> /cygdrive/c/temp/Module-Build/blib/lib/Module/Build/Base.pm
> line 863
> not ok 10
> # Test 10 got: 'Couldn't remove '_build':
> ' (t/runthrough.t at line 50)
> # Expected: ''
> FAILED test 10
> Failed 1/10 tests, 90.00% okay
> t/xs................1..7
> ok 1
> Checking whether your kit is complete...
> Looks good
> ok 2
> ok 3
> lib/XSTest.pm -> blib/lib/XSTest.pm
> /usr/bin/perl -I/usr/lib/perl5/5.6.1/cygwin-multi
> -I/usr/lib/perl5/5.6.1 /usr/lib/perl5/5.6.1/cygwin-
> multi/ExtUtils/xsubpp -noprototypes -typemap
> '/usr/lib/perl5/5.6.1/cygwin-multi/ExtUtils/typemap'
> lib/XSTest.xs > lib/XSTest.c
> gcc -c -DPERL_USE_SAFE_PUTENV -fno-strict-aliasing
> -I/usr/local/include -I/usr/lib/perl5/5.6.1/cygwin-multi/CORE
> -o lib/XSTest.o lib/XSTest.c
> ExtUtils::Mkbootstrap::Mkbootstrap('lib/XSTest')
> lib/XSTest.bs -> blib/arch/auto/XSTest/XSTest.bs
> env LD_RUN_PATH=/usr/lib/perl5/5.6.1/cygwin-multi/CORE gcc -s
> -L/usr/local/lib -o blib/arch/auto/XSTest/XSTest.dll
> lib/XSTest.o
> lib/XSTest.o(.text+0x2d):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x37):XSTest.c: undefined reference to
> `_Perl_Tstack_sp_ptr'
> lib/XSTest.o(.text+0x48):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x52):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x60):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x6a):XSTest.c: undefined reference to
> `_Perl_Tmarkstack_ptr_ptr'
> lib/XSTest.o(.text+0x87):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x91):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0xbb):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0xcd):XSTest.c: undefined reference to `_Perl_croak'
> lib/XSTest.o(.text+0xd9):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0xe3):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x10c):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x116):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x13d):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x14b):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x155):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x174):XSTest.c: undefined reference to
> `_Perl_sv_2iv'
> lib/XSTest.o(.text+0x189):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x193):XSTest.c: undefined reference to
> `_Perl_Top_ptr'
> lib/XSTest.o(.text+0x1ab):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x1b5):XSTest.c: undefined reference to
> `_Perl_Tcurpad_ptr'
> lib/XSTest.o(.text+0x1c3):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x1cd):XSTest.c: undefined reference to
> `_Perl_Top_ptr'
> lib/XSTest.o(.text+0x1ef):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x1f9):XSTest.c: undefined reference to
> `_Perl_sv_newmortal'
> lib/XSTest.o(.text+0x21f):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x229):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x248):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x260):XSTest.c: undefined reference to
> `_Perl_sv_setiv'
> lib/XSTest.o(.text+0x27b):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x28c):XSTest.c: undefined reference to
> `_Perl_mg_set'
> lib/XSTest.o(.text+0x2a4):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x2ae):XSTest.c: undefined reference to
> `_Perl_Tstack_sp_ptr'
> lib/XSTest.o(.text+0x2bc):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x2c6):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x306):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x310):XSTest.c: undefined reference to
> `_Perl_Tstack_sp_ptr'
> lib/XSTest.o(.text+0x31e):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x328):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x336):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x340):XSTest.c: undefined reference to
> `_Perl_Tmarkstack_ptr_ptr'
> lib/XSTest.o(.text+0x35d):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x367):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x391):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x3b2):XSTest.c: undefined reference to
> `_Perl_newXS'
> lib/XSTest.o(.text+0x3be):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x3c8):XSTest.c: undefined reference to
> `_Perl_Isv_yes_ptr'
> lib/XSTest.o(.text+0x3d6):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x3e0):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x3fd):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x407):XSTest.c: undefined reference to
> `_Perl_Tstack_sp_ptr'
> lib/XSTest.o(.text+0x415):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x41f):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> /usr/lib/gcc-lib/i686-pc-
> cygwin/3.2/../../../libcygwin.a(libcmain.o)(.text+0x7c):
> undefined reference to `_WinMain@16'
> collect2: ld returned 1 exit status
> not ok 4
> # Test 4 got: 'error building lib/XSTest.o from
> 'lib/XSTest.dll' at /cygdrive/c/temp/Module-
> Build/blib/lib/Module/Build/Base.pm line 930.
> ' (t/xs.t at line 28)
> # Expected: ''
> lib/XSTest.bs -> blib/arch/auto/XSTest/XSTest.bs
> env LD_RUN_PATH=/usr/lib/perl5/5.6.1/cygwin-multi/CORE gcc -s
> -L/usr/local/lib -o blib/arch/auto/XSTest/XSTest.dll
> lib/XSTest.o
> lib/XSTest.o(.text+0x2d):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x37):XSTest.c: undefined reference to
> `_Perl_Tstack_sp_ptr'
> lib/XSTest.o(.text+0x48):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x52):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x60):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x6a):XSTest.c: undefined reference to
> `_Perl_Tmarkstack_ptr_ptr'
> lib/XSTest.o(.text+0x87):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x91):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0xbb):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0xcd):XSTest.c: undefined reference to `_Perl_croak'
> lib/XSTest.o(.text+0xd9):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0xe3):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x10c):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x116):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x13d):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x14b):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x155):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x174):XSTest.c: undefined reference to
> `_Perl_sv_2iv'
> lib/XSTest.o(.text+0x189):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x193):XSTest.c: undefined reference to
> `_Perl_Top_ptr'
> lib/XSTest.o(.text+0x1ab):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x1b5):XSTest.c: undefined reference to
> `_Perl_Tcurpad_ptr'
> lib/XSTest.o(.text+0x1c3):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x1cd):XSTest.c: undefined reference to
> `_Perl_Top_ptr'
> lib/XSTest.o(.text+0x1ef):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x1f9):XSTest.c: undefined reference to
> `_Perl_sv_newmortal'
> lib/XSTest.o(.text+0x21f):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x229):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x248):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x260):XSTest.c: undefined reference to
> `_Perl_sv_setiv'
> lib/XSTest.o(.text+0x27b):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x28c):XSTest.c: undefined reference to
> `_Perl_mg_set'
> lib/XSTest.o(.text+0x2a4):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x2ae):XSTest.c: undefined reference to
> `_Perl_Tstack_sp_ptr'
> lib/XSTest.o(.text+0x2bc):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x2c6):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x306):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x310):XSTest.c: undefined reference to
> `_Perl_Tstack_sp_ptr'
> lib/XSTest.o(.text+0x31e):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x328):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x336):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x340):XSTest.c: undefined reference to
> `_Perl_Tmarkstack_ptr_ptr'
> lib/XSTest.o(.text+0x35d):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x367):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x391):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x3b2):XSTest.c: undefined reference to
> `_Perl_newXS'
> lib/XSTest.o(.text+0x3be):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x3c8):XSTest.c: undefined reference to
> `_Perl_Isv_yes_ptr'
> lib/XSTest.o(.text+0x3d6):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x3e0):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> lib/XSTest.o(.text+0x3fd):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x407):XSTest.c: undefined reference to
> `_Perl_Tstack_sp_ptr'
> lib/XSTest.o(.text+0x415):XSTest.c: undefined reference to
> `_Perl_Gcurinterp_ptr'
> lib/XSTest.o(.text+0x41f):XSTest.c: undefined reference to
> `_Perl_Tstack_base_ptr'
> /usr/lib/gcc-lib/i686-pc-
> cygwin/3.2/../../../libcygwin.a(libcmain.o)(.text+0x7c):
> undefined reference to `_WinMain@16'
> collect2: ld returned 1 exit status
> not ok 5
> # Test 5 got: 'error building lib/XSTest.o from
> 'lib/XSTest.dll' at /cygdrive/c/temp/Module-
> Build/blib/lib/Module/Build/Base.pm line 930.
> ' (t/xs.t at line 32)
> # Expected: ''
> Deleting lib/XSTest.o
> Deleting lib/XSTest.bs
> Deleting blib
> Deleting lib/XSTest.c
> ok 6
> ok 7
> FAILED tests 4-5
> Failed 2/7 tests, 71.43% okay
> Failed Test Status Wstat Total Fail Failed List of Failed
> --------------------------------------------------------------------------------
> t/basic.t 255 65280 11 0 0.00% ??
> t/runthrough.t 10 1 10.00% 10
> t/xs.t 7 2 28.57% 4-5
> Failed 3/3 test scripts, 0.00% okay. 3/28 subtests failed, 89.29% okay.
>
>
>
> --
>
> Michael G. Schwern <sc...@po...>
> http://www.pobox.com/~schwern/
> Perl Quality Assurance <pe...@pe...> Kwalitee
> Is Job One
> The desired effect is what you get when you improve your interplanetary
> funksmanship.
>
-Ken
|