summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--README6
-rw-r--r--THANKS1
-rw-r--r--TODO4
-rw-r--r--configure.ac43
5 files changed, 55 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 12c12e47..dad067f8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2007-02-20 Werner Koch <wk@g10code.com>
+
+ * configure.ac: New option --disable-endian-check.
+
+2007-02-02 Werner Koch <wk@g10code.com>
+
+ * configure.ac (FALLBACK_SOCKLEN_T): Special case for mingw32.
+
2006-11-15 Werner Koch <wk@g10code.com>
* autogen.sh: Add convenience option --build-amd64.
diff --git a/README b/README
index 2f74ce4a..74911d0a 100644
--- a/README
+++ b/README
@@ -114,6 +114,12 @@
to select exactly those algorithm modules, which
should be built.
+ --disable-endian-check
+ Don't let configure test for the endianness but
+ try to use the OS provided macros at compile
+ time. This is helpful to create OS X fat binaries.
+
+
Contact
-------
diff --git a/THANKS b/THANKS
index 9b131f71..6ae582af 100644
--- a/THANKS
+++ b/THANKS
@@ -4,6 +4,7 @@ complete and free of errors.
Allan Clark allanc@sco.com
Anand Kumria wildfire@progsoc.uts.edu.au
+Andreas Metzler ametzler at downhill.at.eu.org
Ariel T Glenn ariel@columbia.edu
Bodo Moeller Bodo_Moeller@public.uni-hamburg.de
Brenno de Winter brenno@dewinter.com
diff --git a/TODO b/TODO
index 6be15fc5..95ea299c 100644
--- a/TODO
+++ b/TODO
@@ -77,5 +77,7 @@ What's left to do -*- outline -*-
* gcryptrnd.c
Requires test for pth and other stuff.
-
+* secmem.c
+ Check whether the memory block is valid before releasing it and
+ print a diagnosic, like glibc does.
diff --git a/configure.ac b/configure.ac
index 1a0810b1..69ef67d8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -60,6 +60,19 @@ AH_TOP([
AH_BOTTOM([
#define _GCRYPT_IN_LIBGCRYPT 1
+
+/* If the configure check for endianness has been disabled, get it from
+ OS macros. This is intended for making fat binary builds on OS X. */
+#ifdef DISABLED_ENDIAN_CHECK
+# if defined(__BIG_ENDIAN__)
+# define WORDS_BIGENDIAN 1
+# elif defined(__LITTLE_ENDIAN__)
+# undef WORDS_BIGENDIAN
+# else
+# error "No endianness found"
+# endif
+#endif /*DISABLED_ENDIAN_CHECK*/
+
])
AH_VERBATIM([_REENTRANT],
@@ -247,7 +260,16 @@ case "${target}" in
esac
-AC_C_BIGENDIAN
+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" = xyes ; then
+ AC_C_BIGENDIAN
+else
+ AC_DEFINE(DISABLED_ENDIAN_CHECK,1,[configure did not test for endianess])
+fi
+
AC_CHECK_SIZEOF(unsigned short, 2)
AC_CHECK_SIZEOF(unsigned int, 4)
@@ -521,14 +543,23 @@ GNUPG_CHECK_TYPEDEF(u16, HAVE_U16_TYPEDEF)
GNUPG_CHECK_TYPEDEF(u32, HAVE_U32_TYPEDEF)
gl_TYPE_SOCKLEN_T
-if test ".$gl_cv_socklen_t_equiv" = "."; then
- FALLBACK_SOCKLEN_T="typedef socklen_t gcry_socklen_t;"
-else
- FALLBACK_SOCKLEN_T="typedef ${gl_cv_socklen_t_equiv} gcry_socklen_t;"
-fi
+case "${host}" in
+ *-*-mingw32*)
+ # socklen_t may or may not be defined depending on what headers
+ # are included. To be safe we use int as this is the actual type.
+ FALLBACK_SOCKLEN_T="typedef int gcry_socklen_t;"
+ ;;
+ *)
+ if test ".$gl_cv_socklen_t_equiv" = "."; then
+ FALLBACK_SOCKLEN_T="typedef socklen_t gcry_socklen_t;"
+ else
+ FALLBACK_SOCKLEN_T="typedef ${gl_cv_socklen_t_equiv} gcry_socklen_t;"
+ fi
+esac
AC_SUBST(FALLBACK_SOCKLEN_T)
+
#######################################
#### Checks for library functions. ####
#######################################