]> git.saurik.com Git - wxWidgets.git/commitdiff
Add parameter to the --enable-universal_binary option for the path to the SDK.
authorMichael Wetherell <mike.wetherell@ntlworld.com>
Thu, 10 Aug 2006 13:38:23 +0000 (13:38 +0000)
committerMichael Wetherell <mike.wetherell@ntlworld.com>
Thu, 10 Aug 2006 13:38:23 +0000 (13:38 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40549 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

acinclude.m4
configure
configure.in
docs/changes.txt

index 4f4ecb9682151821e5cc7eb2ee7862134db23318..dcd3a5ecf74002a599ca28da3e104a124efdb353 100644 (file)
@@ -415,6 +415,47 @@ AC_DEFUN([WX_ARG_ENABLE],
         ])
 
 
+dnl Like WX_ARG_ENABLE but accepts a parameter.
+dnl
+dnl Usage:
+dnl   WX_ARG_ENABLE_PARAM(option, helpmessage, variable-name, enablestring)
+dnl
+dnl Example:
+dnl   WX_ARG_ENABLE_PARAM(foo, [[  --enable-foo[=bar] use foo]], wxUSE_FOO)
+dnl 
+dnl  --enable-foo       wxUSE_FOO=yes
+dnl  --disable-foo      wxUSE_FOO=no
+dnl  --enable-foo=bar   wxUSE_FOO=bar
+dnl  <not given>        value from configarg.cache or wxUSE_FOO=no
+dnl 
+AC_DEFUN([WX_ARG_ENABLE_PARAM],
+        [
+          enablestring=$4
+          AC_MSG_CHECKING([for --${enablestring:-enable}-$1])
+          no_cache=0
+          AC_ARG_ENABLE($1, [$2],
+                        [
+                          wx_cv_use_$1="$3='$enableval'"
+                        ],
+                        [
+                          LINE=`grep "$3" ${wx_arg_cache_file}`
+                          if test "x$LINE" != x ; then
+                            eval "DEFAULT_$LINE"
+                            wx_cv_use_$1='$3='$DEFAULT_$3
+                          else
+                            no_cache=1
+                            wx_cv_use_$1="$3=no"
+                          fi
+                        ])
+
+          eval "$wx_cv_use_$1"
+          if test "$no_cache" != 1; then
+            echo $wx_cv_use_$1 >> ${wx_arg_cache_file}.tmp
+          fi
+
+          AC_MSG_RESULT([$$3])
+        ])
+
 dnl ===========================================================================
 dnl Linker features test
 dnl ===========================================================================
index f0932740d101056cb7f14eff5c9900002f62b82f..c4d9216d3743f1c32c413635a40c5652436ca7b4 100755 (executable)
--- a/configure
+++ b/configure
@@ -889,7 +889,7 @@ Optional Features:
   --enable-no_exceptions  create code without C++ exceptions handling
   --enable-permissive     compile code disregarding strict ANSI
   --enable-no_deps        create code without dependency information
-  --enable-universal_binary create Mac PowerPC and Intel Universal binary (not yet working)
+  --enable-universal_binary[=SDK] create Mac PowerPC and Intel Universal binary (not yet working)
   --enable-compat24       enable wxWidgets 2.4 compatibility
   --disable-compat26      disable wxWidgets 2.6 compatibility
   --disable-rpath         disable use of rpath for uninstalled builds
@@ -4260,7 +4260,7 @@ echo "${ECHO_T}no" >&6
           fi
 
 
-         enablestring=
+          enablestring=
           echo "$as_me:$LINENO: checking for --${enablestring:-enable}-universal_binary" >&5
 echo $ECHO_N "checking for --${enablestring:-enable}-universal_binary... $ECHO_C" >&6
           no_cache=0
@@ -4268,37 +4268,28 @@ echo $ECHO_N "checking for --${enablestring:-enable}-universal_binary... $ECHO_C
 if test "${enable_universal_binary+set}" = set; then
   enableval="$enable_universal_binary"
 
-                          if test "$enableval" = yes; then
-                            ac_cv_use_universal_binary='wxUSE_UNIVERSAL_BINARY=yes'
-                          else
-                            ac_cv_use_universal_binary='wxUSE_UNIVERSAL_BINARY=no'
-                          fi
+                          wx_cv_use_universal_binary="wxUSE_UNIVERSAL_BINARY='$enableval'"
 
 else
 
                           LINE=`grep "wxUSE_UNIVERSAL_BINARY" ${wx_arg_cache_file}`
                           if test "x$LINE" != x ; then
                             eval "DEFAULT_$LINE"
+                            wx_cv_use_universal_binary='wxUSE_UNIVERSAL_BINARY='$DEFAULT_wxUSE_UNIVERSAL_BINARY
                           else
                             no_cache=1
+                            wx_cv_use_universal_binary="wxUSE_UNIVERSAL_BINARY=no"
                           fi
 
-                          ac_cv_use_universal_binary='wxUSE_UNIVERSAL_BINARY='$DEFAULT_wxUSE_UNIVERSAL_BINARY
-
 fi;
 
-          eval "$ac_cv_use_universal_binary"
+          eval "$wx_cv_use_universal_binary"
           if test "$no_cache" != 1; then
-            echo $ac_cv_use_universal_binary >> ${wx_arg_cache_file}.tmp
+            echo $wx_cv_use_universal_binary >> ${wx_arg_cache_file}.tmp
           fi
 
-          if test "$wxUSE_UNIVERSAL_BINARY" = yes; then
-            echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6
-          else
-            echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-          fi
+          echo "$as_me:$LINENO: result: $wxUSE_UNIVERSAL_BINARY" >&5
+echo "${ECHO_T}$wxUSE_UNIVERSAL_BINARY" >&6
 
 
 
@@ -45686,15 +45677,20 @@ if test "$wxUSE_WINE" = "yes"; then
 fi
 
 if test "$wxUSE_MAC" = 1 ; then
-    if test "$wxUSE_UNIVERSAL_BINARY" = "yes" ; then
-        CXXFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386 $CXXFLAGS"
-        CFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386 $CFLAGS"
-        LDFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386 $LDFLAGS"
+    if test "x$wxUSE_UNIVERSAL_BINARY" != xno ; then
+                        if test "x$wxUSE_UNIVERSAL_BINARY" == xyes; then
+            OSX_UNIV_OPTS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk"
+        else
+                                    OSX_UNIV_OPTS=${wxUSE_UNIVERSAL_BINARY:+"-isysroot '$wxUSE_UNIVERSAL_BINARY'"}
+        fi
+        OSX_UNIV_OPTS="$OSX_UNIV_OPTS -arch ppc -arch i386"
+        CXXFLAGS="$OSX_UNIV_OPTS $CXXFLAGS"
+        CFLAGS="$OSX_UNIV_OPTS $CFLAGS"
+        LDFLAGS="$OSX_UNIV_OPTS $LDFLAGS"
         bk_use_pch=no
     fi
     # TODO: where do we add "-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk" for libtool (static builds only)?
     #       The makefile currently uses AR and RANLIB, which libtool apparently supercedes.
-    # TODO: how can we avoid a hardwired reference to the SDK, above? (Someone used -lSystemStubs to avoid it)
 fi
 
 
@@ -48627,7 +48623,7 @@ echo "$as_me: error: Versions of Bakefile used to generate makefiles ($BAKEFILE_
 
 
 if test "$wxUSE_MAC" = 1 ; then
-    if test "$wxUSE_UNIVERSAL_BINARY" = "yes" ; then
+    if test "x$wxUSE_UNIVERSAL_BINARY" != "xno" ; then
         sed "s/DEPSMODE=gcc/DEPSMODE=none/" < bk-deps > temp
         mv temp bk-deps
         chmod +x bk-deps
index 4368d689c68010f5d130e0e5e16a62894ca57ea4..88a29df436979273e863541efc280286a8e43110 100644 (file)
@@ -898,7 +898,7 @@ WX_ARG_ENABLE(no_rtti,       [  --enable-no_rtti        create code without RTTI
 WX_ARG_ENABLE(no_exceptions, [  --enable-no_exceptions  create code without C++ exceptions handling], wxUSE_NO_EXCEPTIONS)
 WX_ARG_ENABLE(permissive,    [  --enable-permissive     compile code disregarding strict ANSI], wxUSE_PERMISSIVE)
 WX_ARG_ENABLE(no_deps,       [  --enable-no_deps        create code without dependency information], wxUSE_NO_DEPS)
-WX_ARG_ENABLE(universal_binary, [  --enable-universal_binary create Mac PowerPC and Intel Universal binary (not yet working)], wxUSE_UNIVERSAL_BINARY)
+WX_ARG_ENABLE_PARAM(universal_binary, [[  --enable-universal_binary[=SDK] create Mac PowerPC and Intel Universal binary (not yet working)]], wxUSE_UNIVERSAL_BINARY)
 
 WX_ARG_ENABLE(compat24,      [  --enable-compat24       enable wxWidgets 2.4 compatibility], WXWIN_COMPATIBILITY_2_4, enable)
 WX_ARG_ENABLE(compat26,      [  --disable-compat26      disable wxWidgets 2.6 compatibility], WXWIN_COMPATIBILITY_2_6, disable)
@@ -7346,15 +7346,24 @@ dnl Note we don't do this earlier because adding these cpp/ld flags could
 dnl cause configure tests to fail.
 dnl ---------------------------------------------------------------------------
 if test "$wxUSE_MAC" = 1 ; then
-    if test "$wxUSE_UNIVERSAL_BINARY" = "yes" ; then
-        CXXFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386 $CXXFLAGS"
-        CFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386 $CFLAGS"
-        LDFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386 $LDFLAGS"
+    if test "x$wxUSE_UNIVERSAL_BINARY" != xno ; then
+        dnl --enable-universal_binary uses a default SDK (currently 10.4u)
+        dnl --enable-universal_binary=SDK names a path to an SDK
+        if test "x$wxUSE_UNIVERSAL_BINARY" == xyes; then
+            OSX_UNIV_OPTS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk"
+        else 
+            dnl '' would mean universal with no SDK, which may be the case if
+            dnl the compiler uses a sysroot by default
+            OSX_UNIV_OPTS=${wxUSE_UNIVERSAL_BINARY:+"-isysroot '$wxUSE_UNIVERSAL_BINARY'"}
+        fi
+        OSX_UNIV_OPTS="$OSX_UNIV_OPTS -arch ppc -arch i386"
+        CXXFLAGS="$OSX_UNIV_OPTS $CXXFLAGS"
+        CFLAGS="$OSX_UNIV_OPTS $CFLAGS"
+        LDFLAGS="$OSX_UNIV_OPTS $LDFLAGS"
         bk_use_pch=no
     fi
     # TODO: where do we add "-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk" for libtool (static builds only)?
     #       The makefile currently uses AR and RANLIB, which libtool apparently supercedes.
-    # TODO: how can we avoid a hardwired reference to the SDK, above? (Someone used -lSystemStubs to avoid it)
 fi
 
 AC_BAKEFILE([m4_include(autoconf_inc.m4)])
@@ -7366,7 +7375,7 @@ dnl The next version of Bakefile will have the correct fix for this
 dnl at which time, this hack can be removed.
 
 if test "$wxUSE_MAC" = 1 ; then
-    if test "$wxUSE_UNIVERSAL_BINARY" = "yes" ; then
+    if test "x$wxUSE_UNIVERSAL_BINARY" != "xno" ; then
         sed "s/DEPSMODE=gcc/DEPSMODE=none/" < bk-deps > temp
         mv temp bk-deps
         chmod +x bk-deps
index 8a82d7ded4aa032a29d4952ac86aafe827fcbd9d..060487d33c372e587ef64e03cab205aeb6b2834c 100644 (file)
@@ -52,6 +52,11 @@ All (GUI):
 
 - Added wxID_PAGE_SETUP standard id
 
+wxMac:
+
+- Add parameter to the --enable-universal_binary configure option for the path
+  to the SDK.
+
 
 2.7.0
 -----