* configure.ac: Add --disable-endian-check for building fat binaries
authorDavid Shaw <dshaw@jabberwocky.com>
Mon, 20 Mar 2006 00:57:33 +0000 (00:57 +0000)
committerDavid Shaw <dshaw@jabberwocky.com>
Mon, 20 Mar 2006 00:57:33 +0000 (00:57 +0000)
on OSX.

* README: Add note on how to build a fat binary on OSX.

ChangeLog
README
configure.ac

index 371fd49..61be84a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2006-03-19  David Shaw  <dshaw@jabberwocky.com>
+
+       * configure.ac: Add --disable-endian-check for building fat
+       binaries on OSX.
+
+       * README: Add note on how to build a fat binary on OSX.
+
 2006-03-17  David Shaw  <dshaw@jabberwocky.com>
 
        * configure.ac: Allow the DNS stuff to work on OSX by trying the
diff --git a/README b/README
index e31cb28..fdbc881 100644 (file)
--- a/README
+++ b/README
@@ -47,6 +47,7 @@
 
     Installation
     ------------
+
     Please read the file INSTALL and the sections in this file
     related to the installation.  Here is a quick summary:
 
@@ -74,6 +75,7 @@
 
     How to Verify the Source
     ------------------------
+
     In order to check that the version of GnuPG which you are going to
     install is an original and unmodified one, you can do it in one of
     the following ways:
 
     Introduction
     ------------
+
     Here is a brief overview on how to use GnuPG - it is strongly suggested
     that you read the manual and other information about the use of
     cryptography.  GnuPG is only a tool, secure usage requires that
 
 
     8 Ways to Specify a User ID
-    --------------------------
+    ---------=-----------------
+
     There are several ways to specify a user ID, here are some examples.
 
     * Only by the short keyid (prepend a zero if it begins with A..F):
 
     Batch mode
     ----------
+
     If you use the option "--batch", GnuPG runs in non-interactive mode and
     never prompts for input data.  This does not even allow entering the
     passphrase.  Until we have a better solution (something like ssh-agent),
 
     Exit status
     -----------
+
     GnuPG returns with an exit status of 1 if in batch mode and a bad signature
     has been detected or 2 or higher for all other errors.  You should parse
     stderr or, better, the output of the fd specified with --status-fd to get
 
     Configure options 
     -----------------
+
     Here is a list of configure options which are sometime useful 
     for installation.
 
                     the use of iconv.  Note, that iconv is also
                     disabled if gettext has been disabled.
 
-     --enable-backsigs
-                    Enables "backsigs" support.  This is a currently
-                   experimental solution to a subtle OpenPGP protocol
-                   problem involving signing subkeys.  It is
-                   specified in the 2440bis drafts that will become
-                   the new OpenPGP standard, but is not finalized yet
-                   and has not had interoperability testing.  Use at
-                   your own risk.
-
 
     Installation Problems
     ---------------------
+
     If you get unresolved externals "gettext" you should run configure
     again with the option "--with-included-gettext"; this is version
     0.12.1 which is available at ftp.gnu.org.
 
          ./configure ac_cv_sys_symbol_underscore=yes
 
+
     The Random Device
     -----------------
 
 
     Creating an RPM package
     -----------------------
+
     The file scripts/gnupg.spec is used to build a RPM package (both
     binary and src):
       1. copy the spec file into /usr/src/redhat/SPECS
     rpm in /usr/src/redhat/SRPMS
 
 
+    Building Universal Binaries on Apple OS X
+    -----------------------------------------
+
+    You can build a universal ("fat") binary that will work on both
+    PPC and Intel Macs with something like:
+
+    ./configure CFLAGS="-arch ppc -arch i386" \
+               --disable-dependency-tracking --disable-asm
+
+    If you are doing the build on a OS X 10.4 (Tiger) PPC machine you
+    may need to add "-isysroot /Developer/SDKs/MacOSX10.4u.sdk" to
+    those CFLAGS.
+
 
     GnuPG 1.4 and GnuPG 1.9
     -----------------------
+
     GnuPG 1.4 is the stable version of GnuPG; GnuPG 1.9 is the
     development branch.  However, large parts of GnuPG 1.9 are also
     considered to be stable and useful.  In particular the tools
     want to make use of gpg-agent.
 
 
-
     How to Get More Information
     ---------------------------
 
index 9539850..9c6928e 100644 (file)
@@ -823,7 +823,18 @@ AC_TYPE_MODE_T
 AC_TYPE_SIGNAL
 AC_DECL_SYS_SIGLIST
 
-GNUPG_CHECK_ENDIAN
+AC_ARG_ENABLE(endian-check,
+              AC_HELP_STRING([--disable-endian-check],[disable the endian check and trust the OS provided macros]),
+             endiancheck=$enableval,endiancheck=yes)
+
+if test x"$endiancheck" = xno ; then
+   # don't do an endian check so we can build universal ("fat")
+   # binaries on OS X.
+   AC_DEFINE_UNQUOTED(LITTLE_ENDIAN_HOST,__LITTLE_ENDIAN__)
+   AC_DEFINE_UNQUOTED(BIG_ENDIAN_HOST,__BIG_ENDIAN__)
+else
+   GNUPG_CHECK_ENDIAN
+fi
 
 GNUPG_CHECK_TYPEDEF(byte, HAVE_BYTE_TYPEDEF)
 GNUPG_CHECK_TYPEDEF(ushort, HAVE_USHORT_TYPEDEF)