[Fakeroot-commits] [SCM] fakeroot branch, upstream, updated. debian/1.14.3-200-gb232f8a

Kyle J. McKay mackyle at gmail.com
Tue Aug 23 13:06:39 UTC 2011


The following commit has been merged in the upstream branch:
commit bd8e15c61bac573c494581da54613765fa971cb4
Author: Kyle J. McKay <mackyle at gmail.com>
Date:   Mon May 30 04:42:16 2011 -0700

    Add README_MACOSX.txt notes with build instructions.

diff --git a/README b/README
index 21451ee..0ad4968 100644
--- a/README
+++ b/README
@@ -12,3 +12,4 @@ Portability Notes
 
 On OS X, only binaries that do NOT rely on Mach-based [e]uid/[e]gid/mode
 APIs will correctly use fakeroot altered ownership/permissions.
+See README_MACOSX.txt for further information.
diff --git a/README_MACOSX.txt b/README_MACOSX.txt
new file mode 100644
index 0000000..cc76a80
--- /dev/null
+++ b/README_MACOSX.txt
@@ -0,0 +1,69 @@
+--------------------
+Building on Mac OS X
+--------------------
+It's necessary to have a fat binary library for fakeroot to work
+properly for all executables on Mac OS X.  (It's also pointless to
+build the static library version for Mac OS X because of the way
+fakeroot works on Mac OS X.)
+
+-------------
+Mac OS X 10.4
+-------------
+You'll need the GNU autotools to run bootstrap.  They can be installed
+via macports with "sudo port install libtool automake autoconf".
+Be sure to add the appropriate directory (/opt/local/bin for macports)
+to your path before running bootstrap.
+
+If building on 10.4 that means something like this:
+
+  ./bootstrap # GNU autotools required
+  SDKROOT='-isysroot /Developer/SDKs/MacOSX10.4u.sdk' \
+  CFLAGS="-pipe -O2 -arch x86_64 -arch ppc64 -arch i386 -arch ppc $SDKROOT" \
+  ./configure --disable-dependency-tracking --disable-static
+  make && make check && sudo make install
+
+Note the use of -isysroot.  The -isysroot option is only required
+when building on Mac OS X 10.4 because the system libraries are not
+guaranteed to be fat whereas they are on Mac OS X 10.5 and later.
+
+-------------
+Mac OS X 10.5
+-------------
+You'll need newer GNU autotools than come with 10.5.  They can be
+installed via macports with "sudo port install libtool automake
+autoconf".  Be sure to add the appropriate directory (/opt/local/bin
+for macports) to the FRONT of your path before running bootstrap.
+
+If building on 10.5 that means something like this:
+
+  ./bootstrap # Mac OS X 10.5 autotools are too old
+  CFLAGS='-pipe -O2 -arch x86_64 -arch ppc64 -arch i386 -arch ppc' \
+  LDFLAGS='-Wl,-force_cpusubtype_ALL' \
+  ./configure --disable-dependency-tracking --disable-static
+  make && make check && sudo make install
+
+-----------------------
+Mac OS X 10.6 and later
+-----------------------
+If building on 10.6 or later that means something like this:
+
+  ./bootstrap # Mac OS X 10.6 autotools are new enough
+  CFLAGS='-pipe -O2 -arch x86_64 -arch i386 -arch ppc -Wno-deprecated-declarations' \
+  LDFLAGS='-Wl,-force_cpusubtype_ALL' \
+  ./configure --disable-dependency-tracking --disable-static
+  make && make check && sudo make install
+
+The stat64 and friends functions may be deprecated as of 10.6, but
+they still need to be interecepted and we don't need to see the
+warnings about them hence the use of -Wno-deprecated-declarations.
+
+------------------------------
+Cross OS Version Compatibility
+------------------------------
+Building the 10.4 version and running it on 10.5 or 10.6 is not
+recommended because the new system calls added in 10.5 and 10.6
+will NOT be intercepted by the version built for 10.4.
+
+Similarly building the 10.5 version and running it on 10.6 is not
+recommended either because 10.6 added yet more calls that will NOT
+be intercepted by the version build for 10.5.

-- 
fakeroot



More information about the Fakeroot-commits mailing list