summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDominic Dunlop <domo@computer.org>2006-02-24 18:22:54 +0100
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>2006-02-27 10:33:59 +0000
commitee94f8101362ee382e42ec2d404d79b0ab7d17ef (patch)
tree4afc1f551b829e9f05a4172215a458ab0e72464a
parent2b191d539426a03a8efd04e7a058708ee109afe5 (diff)
downloadperl-ee94f8101362ee382e42ec2d404d79b0ab7d17ef.tar.gz
Suppress System V IPC for 64-bit Darwin builds
Message-Id: <A685C5DB-23CE-430E-95F1-CC7A9480DDF9@mac.com> p4raw-id: //depot/perl@27333
-rw-r--r--README.macosx33
-rw-r--r--hints/darwin.sh13
2 files changed, 41 insertions, 5 deletions
diff --git a/README.macosx b/README.macosx
index c26eb0f8e6..235618a0ca 100644
--- a/README.macosx
+++ b/README.macosx
@@ -75,6 +75,37 @@ libraries it links to must also be universal binaries. The system libraries that
Apple includes with the 10.4u SDK are all universal, but user-installed libraries
may need to be re-installed as universal binaries.
+=head2 64-bit PPC support
+
+Follow the instructions in F<INSTALL> to build perl with support for 64-bit
+integers (C<use64bitint>) or both 64-bit integers and 64-bit addressing
+(C<use64bitall>). In the latter case, the resulting binary will run only
+on G5-based hosts.
+
+Support for 64-bit addressing is experimental: some aspects of Perl may be
+omitted or buggy. Note the messages output by F<Configure> for further
+information. Please use C<perlbug> to submit a problem report in the
+event that you encounter difficulties.
+
+When building 64-bit modules, it is your responsiblity to ensure that linked
+external libraries and frameworks provide 64-bit support: if they do not,
+module building may appear to succeed, but attempts to use the module will
+result in run-time dynamic linking errors, and subsequent test failures.
+You can use C<file> to discover the architectures supported by a library:
+
+ $ file libgdbm.3.0.0.dylib
+ libgdbm.3.0.0.dylib: Mach-O fat file with 2 architectures
+ libgdbm.3.0.0.dylib (for architecture ppc): Mach-O dynamically linked shared library ppc
+ libgdbm.3.0.0.dylib (for architecture ppc64): Mach-O 64-bit dynamically linked shared library ppc64
+
+Note that this issue precludes the building of many Macintosh-specific CPAN
+modules (C<Mac::*>), as the required Apple frameworks do not provide PPC64
+support. Similarly, downloads from Fink or Darwinports are unlikely to provide
+64-bit support; the libraries must be rebuilt from source with the appropriate
+compiler and linker flags. For further information, see Apple's
+I<64-Bit Transition Guide> at
+L<http://developer.apple.com/documentation/Darwin/Conceptual/64bitPorting/index.html>.
+
=head2 libperl and Prebinding
Mac OS X ships with a dynamically-loaded libperl, but the default for
@@ -230,4 +261,4 @@ E<lt>montbriand@apple.comE<gt>.
=head1 DATE
-Last modified 2005-11-07.
+Last modified 2006-02-24.
diff --git a/hints/darwin.sh b/hints/darwin.sh
index d2cfe20daa..ffca869c9c 100644
--- a/hints/darwin.sh
+++ b/hints/darwin.sh
@@ -217,16 +217,21 @@ 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/IPC/sysV/t/*
-*** ext/threads/shared/t/wait
+*** 10.4 ("Tiger") and Darwin version 8. System V IPC is disabled
+*** due to problems with the 64-bit versions of msgctl, semctl,
+*** and shmctl. You should also expect the following test failures:
+***
+*** ext/threads/shared/t/wait (threaded builds only)
EOM
for var in ccflags cppflags ld ldflags
do
eval $var="\$${var}\ -arch\ ppc64"
done
+
+ [ "$d_msgctl" ] || d_msgctl='undef'
+ [ "$d_semctl" ] || d_semctl='undef'
+ [ "$d_shmctl" ] || d_shmctl='undef'
;;
esac
fi