Make SDBM_File work with -Duse64bitall on Darwin (Mac OS X)
Dominic Dunlop [Mon, 20 Feb 2006 13:46:00 +0000 (13:46 +0000)]
Message-Id: <B699DDDE-EC4E-495D-AFF5-3D7399332A24@mac.com>

p4raw-id: //depot/perl@27250

ext/SDBM_File/Makefile.PL
hints/darwin.sh

index 05e08b5..ba4214c 100644 (file)
@@ -6,8 +6,12 @@ use Config;
 #      config, all, clean, realclean and sdbm/Makefile
 # which perform the corresponding actions in the subdirectory.
 
+# Work around: Darwin ppc64 bug ignores archive contents when building bundles
+
 $define = ($^O eq 'MSWin32') ? '-DMSDOS' : '';
 if ($^O eq 'MSWin32') { $myextlib = 'sdbm\\libsdbm$(LIB_EXT)'; }
+elsif ($^O eq 'darwin' && $Config{'ldflags'} =~/-arch ppc64/) {
+                        $myextlib = '-all_load sdbm/libsdbm$(LIB_EXT)'; }
 else                  { $myextlib = 'sdbm/libsdbm$(LIB_EXT)';  }
 
 WriteMakefile(
index 3e1c603..d2cfe20 100644 (file)
@@ -219,8 +219,8 @@ EOM
 *** Perl 64-bit addressing support is experimental for Mac OS X
 *** 10.4 ("Tiger") and Darwin version 8. Expect a number of test
 *** failures:
-***    ext/IO/io_*   ext/IPC/sysV/t/*   lib/Net/Ping/t/450_service
-***    Any test that uses sdbm
+***    ext/IPC/sysV/t/*
+***    ext/threads/shared/t/wait
 
 EOM
     for var in ccflags cppflags ld ldflags