summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorManolo Gouy <Manolo>2011-03-06 16:54:58 +0000
committerManolo Gouy <Manolo>2011-03-06 16:54:58 +0000
commit937ddb60c1a1368b407032ed0153cd7c3108d20d (patch)
treeadbce2906299cc2a00c1deb6c13abf211dcc9a82
parentcff882f34d9283fc4efc4b7197ae791fa4225136 (diff)
Fix STR #2582 (Mac OS): The problem: under Mac OS, file config.h can be used with distinct
architectures when using configure --with-archflags option, thus file config.h should not contain architecture-dependent definitions. The fix: 1) don't use autoconf's endianness determination procedure because it can't give a result that fits both big and little endian architectures. 2) have config.h include a mac-specific file under Mac OS. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8511 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
-rw-r--r--configh.in6
-rw-r--r--configure.in4
-rw-r--r--mac_endianness.h38
3 files changed, 46 insertions, 2 deletions
diff --git a/configh.in b/configh.in
index c0f95fd69..3d1c4d1f0 100644
--- a/configh.in
+++ b/configh.in
@@ -161,8 +161,12 @@
*
* Byte order of your machine: 1 = big-endian, 0 = little-endian.
*/
-
+
+#ifdef __APPLE__
+#include <mac_endianness.h>
+#else
#define WORDS_BIGENDIAN 0
+#endif
/*
* U16, U32, U64:
diff --git a/configure.in b/configure.in
index c089af4a6..b965761bb 100644
--- a/configure.in
+++ b/configure.in
@@ -427,7 +427,9 @@ dnl this will only be used to compile resources for Windows .exe files
AC_PATH_TOOL(RC,windres)
dnl Architecture checks...
-AC_C_BIGENDIAN
+if test "$uname" != Darwin; then
+ AC_C_BIGENDIAN
+fi
AC_CHECK_SIZEOF(short, 2)
AC_CHECK_SIZEOF(int, 4)
diff --git a/mac_endianness.h b/mac_endianness.h
new file mode 100644
index 000000000..8005b9c94
--- /dev/null
+++ b/mac_endianness.h
@@ -0,0 +1,38 @@
+/*
+ * "$Id$"
+ *
+ * Mac-specific configuration file for the Fast Light Tool Kit (FLTK).
+ *
+ * Copyright 1998-2011 by Bill Spitzak and others.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA.
+ *
+ * Please report all bugs and problems on the following page:
+ *
+ * http://www.fltk.org/str.php
+ */
+
+#ifdef __APPLE__
+# ifdef __BIG_ENDIAN__
+# define WORDS_BIGENDIAN 1
+# else
+# define WORDS_BIGENDIAN 0
+# endif
+#endif
+
+/*
+ * End of "$Id$".
+ */