[perl #53452] [BUG] ar can't read libparrot.a on Mac OS 10.5.2
Allison: 1. Are you still experiencing these problems? 2. Since you said that these problems occurred after an upgrade, can I assume that you're working on PPC? 3. Have you had a chance to look at the related ticket I mentioned in my last post? Thanks. kid51
[perl #52198] [BUG]: Test failures on Win32: t/op/arithmetics.t t/op/sprintf.t t/pmc/complex.t t/pmc/float.t
On Sat Mar 29 08:41:56 2008, rblasch wrote: t/op/sprintf.t not ok 157 - [%.0g] C99 standard mandates minus sign but C89 does not skip: MSWin32 VMS hpux:10.20 openbsd netbsd:1.5 irix actual: 0 This particular TODO-ed test has begun to unexpectedly PASS for me on linux-i386 and darwin-ppc. Has it begun to pass on MSWin32 and the other systems? kid51
[perl #55950] problem compiling OpenGL/GLUT on PPC OS X
On Tue Jun 17 17:12:30 2008, japhb wrote: On Tue, 2008-06-17 at 11:27 -0700, Packy Anderson wrote: Here's the command I'm using to configure and make $ make realclean; CC=gcc-4.0 CX=g++-4.0 perl Configure.pl -- cc=$CC --cxx=$CX --link=$CX --ld=$CX --optimize; make -j 2 That's a pretty advanced build method. OK, let's sanity check: For years it was required for PPC OS X builds. He tried with a plain Configure.pl this weekend to no avail, so I gave him my old script. (he added in the optimize) * Does it still fail if you don't override the compiler and linker? * Does it still fail if you don't run a parallel make? * Does it still fail if you don't configure with --optimize? * Does it still fail for just 'make realclean; perl Configure.pl; make'? That's a different failure mode. I wonder if the fix for the DEPLOYMENT_TARGET removes the need for this old hackery: Packy, did you try a plain configure again without the options after you applied that patch? Do me a favor, try that, and if the build fails, submit another ticket showing what happens with the build. Then we can work on fixing that old issue as well. (And if it works, all the better.) (These aren't just silly questions. Parrot is not tested as often or as well with non-default build configurations, so a bug could easily have crept back in.) c++ -o digest_group.bundle lib-digest_group.o md2.o md4.o md5.o ripemd160.o sha.o sha1.o sha256.o sha512.o -lm -framework OpenGL - framework GLUT -lcrypto -L/usr/local/lib -L/usr/local/source/parrot/ blib/lib -L/opt/local/lib -L/usr/local/source/parrot/blib/lib - bundle -undefined dynamic_lookup -L/usr/local/source/parrot/blib/lib - lparrot /usr/bin/ld: warning can't open dynamic library: /opt/local/lib/libz. 1.dylib (checking for undefined symbols may be affected) (No such file or directory, errno = 2) This seems very odd to me. I'm not sure what is needing libz, or why it is pulling it from /opt/local/ ... I've asked another Mac OS X person to take a look at this, since it makes no sense to me. -'f -- Will Coke Coleda
Re: [perl #55950] problem compiling OpenGL/GLUT on PPC OS X
On Tue Jun 17 17:12:30 2008, japhb wrote: * Does it still fail if you don't override the compiler and linker? * Does it still fail if you don't run a parallel make? * Does it still fail if you don't configure with --optimize? * Does it still fail for just 'make realclean; perl Configure.pl; make'? With my patch for DEPLOYMENT_TARGET in place, running 'make realclean; perl Configure.pl; make' yields the same warning messages, but the build doesn't stop immediately afterward, probably because it's no longer running a parallel make and pieces that were being compiled earlier during the parallel make are delayed during a serial make. -- Packy Anderson [EMAIL PROTECTED] They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety. --Benjamin Franklin
[perl #55978] [PATCH] [OpenGL] cygwin fixes from donaldh++
# New Ticket Created by Geoffrey Broadwell # Please include the string: [perl #55978] # in the subject line of all future correspondence about this issue. # URL: http://rt.perl.org/rt3/Ticket/Display.html?id=55978 The attached patch is courtesy of donaldh++. It has been tested on cygwin and Debian/i686. Please someone test on Mac OS X, so that I can commit it. -'f Index: src/dynext.c === --- src/dynext.c (revision 28459) +++ src/dynext.c (working copy) @@ -276,12 +276,10 @@ /* And on cygwin replace a leading lib by cyg. */ #ifdef __CYGWIN__ if (!STRING_IS_EMPTY(lib) memcmp(lib-strstart, lib, 3) == 0) { -strcpy(path-strstart, lib-strstart); +path = string_append(interp, +string_from_cstring(interp, cyg, 3), +string_substr(interp, lib, 3, lib-strlen - 3, NULL, 0)); -path-strstart[0] = 'c'; -path-strstart[1] = 'y'; -path-strstart[2] = 'g'; - *handle = Parrot_dlopen(path-strstart); if (*handle) Index: lib/Parrot/Configure/Step/Methods.pm === --- lib/Parrot/Configure/Step/Methods.pm (revision 28459) +++ lib/Parrot/Configure/Step/Methods.pm (working copy) @@ -198,7 +198,8 @@ my $args = shift; croak _add_to_libs() takes hashref: $! unless ref($args) eq 'HASH'; my $platform = - ($args-{osname} =~ /mswin32/i + (($args-{osname} =~ /mswin32/i || + $args-{osname} =~ /cygwin/i) $args-{cc} =~ /^gcc/i) ? 'win32_gcc' : $args-{osname} =~ /mswin32/i? 'win32_nongcc' : $args-{osname} =~ /darwin/i ? 'darwin' Index: config/gen/opengl.pm === --- config/gen/opengl.pm (revision 28459) +++ config/gen/opengl.pm (working copy) @@ -410,6 +410,9 @@ '/System/Library/Frameworks/OpenGL.framework/Headers/*.h', '/System/Library/Frameworks/GLUT.framework/Headers/*.h', +# Cygwin +'/usr/include/w32api/GL/*.h', + # Windows/MSVC (map $_/gl/*.h = @include_paths_win32), @@ -444,11 +447,19 @@ # $ENV{HOME}/src/osx-insane/usr/X11R6 1/include/GL/*.h, ); +print \nChecking for OpenGL headers using the following globs:\n\t, +join(\n\t, @header_globs), \n +if $verbose; + my @header_files = sort map {File::Glob::bsd_glob($_)} @header_globs; my %skip = map {($_ = 1)} @SKIP; @header_files = grep {my ($file) = m{([^/]+)$}; !$skip{$file}} @header_files; +print \nFound the following OpenGL headers:\n\t, +join(\n\t, @header_files), \n +if $verbose; + die OpenGL enabled and detected, but no OpenGL headers found! unless @header_files;
[perl #55950] problem compiling OpenGL/GLUT on PPC OS X
On Tue Jun 17 17:12:30 2008, japhb wrote: On Tue, 2008-06-17 at 11:27 -0700, Packy Anderson wrote: Here's the command I'm using to configure and make $ make realclean; CC=gcc-4.0 CX=g++-4.0 perl Configure.pl -- cc=$CC --cxx=$CX --link=$CX --ld=$CX --optimize; make -j 2 That's a pretty advanced build method. OK, let's sanity check: For years it was required for PPC OS X builds. He tried with a plain Configure.pl this weekend to no avail, so I gave him my old script. (he added in the optimize) * Does it still fail if you don't override the compiler and linker? * Does it still fail if you don't run a parallel make? * Does it still fail if you don't configure with --optimize? * Does it still fail for just 'make realclean; perl Configure.pl; make'? That's a different failure mode. (These aren't just silly questions. Parrot is not tested as often or as well with non-default build configurations, so a bug could easily have crept back in.) c++ -o digest_group.bundle lib-digest_group.o md2.o md4.o md5.o ripemd160.o sha.o sha1.o sha256.o sha512.o -lm -framework OpenGL - framework GLUT -lcrypto -L/usr/local/lib -L/usr/local/source/parrot/ blib/lib -L/opt/local/lib -L/usr/local/source/parrot/blib/lib - bundle -undefined dynamic_lookup -L/usr/local/source/parrot/blib/lib - lparrot /usr/bin/ld: warning can't open dynamic library: /opt/local/lib/libz. 1.dylib (checking for undefined symbols may be affected) (No such file or directory, errno = 2) This seems very odd to me. I'm not sure what is needing libz, or why it is pulling it from /opt/local/ ... I've asked another Mac OS X person to take a look at this, since it makes no sense to me. -'f -- Will Coke Coleda
Re: [perl #55978] [PATCH] [OpenGL] cygwin fixes from donaldh++
On Tuesday 17 June 2008 21:06:58 Geoffrey Broadwell wrote: Index: src/dynext.c === --- src/dynext.c(revision 28459) +++ src/dynext.c(working copy) @@ -276,12 +276,10 @@ /* And on cygwin replace a leading lib by cyg. */ #ifdef __CYGWIN__ if (!STRING_IS_EMPTY(lib) memcmp(lib-strstart, lib, 3) == 0) { - strcpy(path-strstart, lib-strstart); + path = string_append(interp, + string_from_cstring(interp, cyg, 3), + string_substr(interp, lib, 3, lib-strlen - 3, NULL, 0)); That string_from_cstring could almost probably be CONST_STRING. If we can swing that, it's usually much better. -- c
[perl #55978] [PATCH] [OpenGL] cygwin fixes from donaldh++
On Tue Jun 17 21:06:58 2008, japhb wrote: The attached patch is courtesy of donaldh++. It has been tested on cygwin and Debian/i686. Please someone test on Mac OS X, so that I can commit it. Works for me on Mac OS X 10.4 (Panther) on PPC. kid51
[perl #52214] [BUG] [PATCH]: Lipo poses problems when building Parrot on Darwin with Apple-built Perl 5.8
On Sun May 25 13:15:10 2008, tetragon wrote: And here's a newer version of the patch that I use. This one changes config/init/hints/darwin.pm instead of config/init/defaults.pm Patch applied to trunk in r28513. Thanks to tetragon, testers who have posted so far, and participants in Parrot/Rakudo Build Fest at YAPC::NA::2008 in Chicago. kid51
Re: [perl #55978] [PATCH] [OpenGL] cygwin fixes from donaldh++
On Wed, 2008-06-18 at 09:06 -0700, chromatic wrote: On Tuesday 17 June 2008 21:06:58 Geoffrey Broadwell wrote: Index: src/dynext.c === --- src/dynext.c(revision 28459) +++ src/dynext.c(working copy) @@ -276,12 +276,10 @@ /* And on cygwin replace a leading lib by cyg. */ #ifdef __CYGWIN__ if (!STRING_IS_EMPTY(lib) memcmp(lib-strstart, lib, 3) == 0) { -strcpy(path-strstart, lib-strstart); +path = string_append(interp, +string_from_cstring(interp, cyg, 3), +string_substr(interp, lib, 3, lib-strlen - 3, NULL, 0)); That string_from_cstring could almost probably be CONST_STRING. If we can swing that, it's usually much better. OK, regenerated with this change. Tested to not break on Linux, but that's not saying much, given the #ifdef __CYGWIN__ -'f Index: src/dynext.c === --- src/dynext.c (revision 28514) +++ src/dynext.c (working copy) @@ -276,12 +276,9 @@ /* And on cygwin replace a leading lib by cyg. */ #ifdef __CYGWIN__ if (!STRING_IS_EMPTY(lib) memcmp(lib-strstart, lib, 3) == 0) { -strcpy(path-strstart, lib-strstart); +path = string_append(interp, CONST_STRING(interp, cyg), +string_substr(interp, lib, 3, lib-strlen - 3, NULL, 0)); -path-strstart[0] = 'c'; -path-strstart[1] = 'y'; -path-strstart[2] = 'g'; - *handle = Parrot_dlopen(path-strstart); if (*handle) Index: lib/Parrot/Configure/Step/Methods.pm === --- lib/Parrot/Configure/Step/Methods.pm (revision 28514) +++ lib/Parrot/Configure/Step/Methods.pm (working copy) @@ -198,7 +198,8 @@ my $args = shift; croak _add_to_libs() takes hashref: $! unless ref($args) eq 'HASH'; my $platform = - ($args-{osname} =~ /mswin32/i + (($args-{osname} =~ /mswin32/i || + $args-{osname} =~ /cygwin/i) $args-{cc} =~ /^gcc/i) ? 'win32_gcc' : $args-{osname} =~ /mswin32/i? 'win32_nongcc' : $args-{osname} =~ /darwin/i ? 'darwin' Index: config/gen/opengl.pm === --- config/gen/opengl.pm (revision 28514) +++ config/gen/opengl.pm (working copy) @@ -410,6 +410,9 @@ '/System/Library/Frameworks/OpenGL.framework/Headers/*.h', '/System/Library/Frameworks/GLUT.framework/Headers/*.h', +# Cygwin +'/usr/include/w32api/GL/*.h', + # Windows/MSVC (map $_/gl/*.h = @include_paths_win32), @@ -444,11 +447,19 @@ # $ENV{HOME}/src/osx-insane/usr/X11R6 1/include/GL/*.h, ); +print \nChecking for OpenGL headers using the following globs:\n\t, +join(\n\t, @header_globs), \n +if $verbose; + my @header_files = sort map {File::Glob::bsd_glob($_)} @header_globs; my %skip = map {($_ = 1)} @SKIP; @header_files = grep {my ($file) = m{([^/]+)$}; !$skip{$file}} @header_files; +print \nFound the following OpenGL headers:\n\t, +join(\n\t, @header_files), \n +if $verbose; + die OpenGL enabled and detected, but no OpenGL headers found! unless @header_files;
[PATCH] Perl::Critic Version Wrong
This patch fixes a test suite failure in t/codingstd/perlcritic.t The minimum required version for Perl::Critic was 1.03, but the default_forbidden_words method was not introduced until 1.082. I've bumped up the version number in the test to ensure it skips properly. Also, the Perl::Critic docs state that default_forbidden words is a method, not a function. It was called as a function, but I changed it to a class method call to ensure that if it really is required to be a method in the future, things don't break. Cheers, Ovid -- Buy the book - http://www.oreilly.com/catalog/perlhks/ Personal blog - http://publius-ovidius.livejournal.com/ Tech blog - http://use.perl.org/~Ovid/journal/ parrot_perl_critic_version.patch Description: 253545805-parrot_perl_critic_version.patch