summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgdt <gdt>2015-02-22 02:28:02 +0000
committergdt <gdt>2015-02-22 02:28:02 +0000
commita128f353632e86970a11938dcd164ca537e61bc7 (patch)
tree36c8d9dee6ae5fd4cb913685ed9225e8ee69e38b
parent3a3358440317222e3043048e07eb8435af338781 (diff)
downloadpkgsrc-a128f353632e86970a11938dcd164ca537e61bc7.tar.gz
Revert edit on wrong branch.
-rw-r--r--bootstrap/README.MacOSX101
1 files changed, 67 insertions, 34 deletions
diff --git a/bootstrap/README.MacOSX b/bootstrap/README.MacOSX
index 8fa7adfba80..72b895b3473 100644
--- a/bootstrap/README.MacOSX
+++ b/bootstrap/README.MacOSX
@@ -1,20 +1,21 @@
-$NetBSD: README.MacOSX,v 1.18.4.2 2015/02/22 02:25:17 gdt Exp $
+$NetBSD: README.MacOSX,v 1.18.4.3 2015/02/22 02:28:02 gdt Exp $
* system tools issues
** gcc vs clang
-Older versions of Mac OS X (when XCode is installed) provided gcc, and
+Older versions of Mac OS X (with XCode, of course) provided gcc, and
pkgsrc defaulted to using gcc. With 10.9, gcc is no longer present.
(In 2014Q2 and earlier, one must explicitly bootstrap with
"--compiler=clang".)
** i386 vs x86_64 ABI issue
-Mac OS X 10.6 through 10.10 supports 64-bit binaries on most Intel
-Macs and builds those by default on such machine. This has caused
-problems with packages which get confused because "MACHINE_ARCH" is in
-some OS versions set to "i386" (on a 64-bit system!).
+Mac OS X Snow Leopard (10.6) through Mavericks (10.9) supports 64-bit
+binaries on most Intel Macs and build those by default on such
+machine. This has caused problems with packages which get confused
+because "MACHINE_ARCH" is in some OS versions set to "i386" (on a
+64-bit system!).
version: uname -m : uname -p
10.6: i386 : i386
10.9: x86_64 : i386
@@ -51,8 +52,38 @@ it may be useful to `git clone https://github.com/jsonn/pkgsrc.git`.
** X11
-X11 used to be built into Mac OS X, but as of 10.8 it is no longer
-included. Install XQuartz from http://xquartz.macosforge.org/landing/
+X11 used to be built into Mac OS X, but as of 10.8 it is not.
+Install XQuartz from http://xquartz.macosforge.org/landing/
+
+** XL compiler
+
+[The text in this section dates from 2004-10-07! Please update it if
+you have used XL since then.]
+
+Experimental support for IBM's XL C/C++ compiler is present (tested
+with version 6.0). To use it, set:
+
+PKGSRC_COMPILER=xlc
+
+in mk.conf. XL C uses the Apple provided libtool to create shared
+libraries, however, we must force it to call libtool with the full
+path to avoid calling the pkgsrc provided GNU libtool with arguments
+that it does not understand.
+
+edit the template configuration file /opt/ibmcmp/vac/6.0/etc/vac.base.cfg
+and set:
+
+libtool = /usr/bin/libtool
+
+then run:
+
+/opt/ibmcmp/vacpp/6.0/bin/vacpp_configure -gcc /usr -install -force
+
+as root to install the configuration.
+
+to bootstrap with xlc, you need to make sure CFLAGS contains "-ma":
+
+env CC=/opt/ibmcmp/vacpp/6.0/bin/xlc CFLAGS=-ma ./bootstrap
* Mac OS X Versions
@@ -65,33 +96,34 @@ in mind that there are no guarantees:
SUPPORTED doesn't mean that anyone is required to fix your problem; it
means that we agree that it is broadly desireable that such problems
be fixed and that we therefore allow them to be listed in our issue
- tracker. Structural breakage is unacceptable.
+ tracker.
DEPRECATED means that individual problems are not of interest, but
pkgsrc overall working is of enough interest to be allowed to be
- listed in the issue tracker. Structural breakage is undesirable,
- but a fair topic of discussion if keeping support is painful.
- Individual pkg PRs may be bounced to authors to retest with newer
- versions, and closed if that doesn't happen in 14 days.
+ listed in the issue tracker.
IGNORED means we are not willing to expend issue tracker resources
- (clutter for those reviewing the db) at all. PRs may be summarily
- closed. We are also unconcerned with whether pkgsrc works on the
- system at all.
+ (clutter for those reviewing the db) at all.
Given the above definitions, the pkgsrc developers label versions of
Mac OS X as follows:
- 10.10: current. [SUPPORTED]
-
- 10.9 (13.1.0): somewhat old but not that crufty. [SUPPORTED]
+ 10.9 (13.1.0): current, PRs may be filed. Structurally breaking
+ pkgsrc on 10.9 is considered not ok. [SUPPORTED]
- 10.8: old. [SUPPORTED]
+ 10.8: somewhat old, PRs may still be filed. Structurally breaking
+ pkgsrc on 10.8 is considered not ok. [SUPPORTED]
- 10.7: old. [SUPPORTED]
+ 10.7: old, but PRs may still be filed. Structurally breaking pkgsrc
+ on 10.7 is considered not ok. [SUPPORTED]
- 10.6 (10.8.0): very old [DEPRECATED] (But note that this is the
- Joyent i386-mode build target.)
+ 10.6 (10.8.0): very old, and individual pkg PRs may be bounced to
+ authors to retest with newer versions, and closed if that
+ doesn't happen in 14 days. We will for now consider
+ structurally breaking pkgsrc on 10.6 to be undesirable. If
+ keeping support for 10.6 causes excessive work for maintainers
+ it may be moved to IGNORED state any time, without
+ warning. [DEPRECATED]
10.5 and below: ancient, and PRs will be summarily closed. It is
acceptable to give zero consideration to causing structural
@@ -103,21 +135,20 @@ they might have otherwise. (The rationale for supporting versions
beyond the current and previous ones has been the difficulty for users
to upgrade.)
-* Bulk builds
+* Bulk build suggestions and issues
Clearly, it is desirable for a bulk build to be useful on as many
computers as possible. The main issues are which ABI and which OS X
-version. Targetting older versions makes a build run on more systems,
-and targetting newer versions makes the build closer to what would be
-obtained from bootstrappping on a newer version and thus avoids some
-issues.
+version.
** 10.6, --abi=32
-Joyent provide a bulk build for quarterly branches (--abi=32, OSX
-10.6, and therefore gcc 4.2.1, XQuartz, X11_TYPE=native):
- http://pkgsrc.joyent.com/install-on-osx/
-which should run on any version from 10.6 and up.
+jperkin@netbsd.org provides a bulk build for quarterly branches
+(--abi=32, OSX 10.6, and therefore gcc 4.2.1, XQuartz,
+X11_TYPE=native):
+ http://www.perkin.org.uk/pages/pkgsrc-binary-packages-for-osx.html
+ http://mail-index.netbsd.org/pkgsrc-bulk/2014/01/10/msg010276.html
+which should run on any version from 10.6 to 10.9.
Note that sed on 10.9 is broken, but a bootstrap on 10.6 will not
avoid it, so while one can install this bootstrap on 10.9 and run
@@ -125,5 +156,7 @@ binary packages, building packages will not in general work.
** 10.9, --abi=64 --compiler=clang
-Joyent provide a build build for 10.9/x86_64, at the same URL as
-above.
+Given the 10.9 license situation, a bulk build on 10.9 (and therefore
+clang) seems reasonable, with either --abi=32 or --abi=64. Such
+builds are almost certainly only usable on 10.9, but that is or will
+be soon a large fraction of Macs.