summaryrefslogtreecommitdiffstats
path: root/gettext-runtime/m4
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2006-10-04 16:38:07 +0000
committerBruno Haible <bruno@clisp.org>2009-06-23 12:14:03 +0200
commit7d68b275cc35434efa5f4b3403b1f5815cb8241a (patch)
tree04b7cbec5b156695ed25b3c553502039286f1bab /gettext-runtime/m4
parentded664fd9999b176bdca4ba83ae7a2cef94a3647 (diff)
downloadexternal_gettext-7d68b275cc35434efa5f4b3403b1f5815cb8241a.zip
external_gettext-7d68b275cc35434efa5f4b3403b1f5815cb8241a.tar.gz
external_gettext-7d68b275cc35434efa5f4b3403b1f5815cb8241a.tar.bz2
Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
Diffstat (limited to 'gettext-runtime/m4')
-rw-r--r--gettext-runtime/m4/ChangeLog10
-rw-r--r--gettext-runtime/m4/lock.m458
2 files changed, 43 insertions, 25 deletions
diff --git a/gettext-runtime/m4/ChangeLog b/gettext-runtime/m4/ChangeLog
index c733086..1500c97 100644
--- a/gettext-runtime/m4/ChangeLog
+++ b/gettext-runtime/m4/ChangeLog
@@ -1,5 +1,15 @@
2006-10-01 Bruno Haible <bruno@clisp.org>
+ Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
+ * lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
+ gl_LOCK_BODY.
+ (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
+ (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
+ gl_LOCK_EARLY_BODY.
+ (gl_LOCK): Require gl_LOCK_BODY.
+
+2006-10-01 Bruno Haible <bruno@clisp.org>
+
* gettext.m4 (gt_NEEDS_INIT, AM_GNU_GETTEXT_NEED): New macros.
(AM_GNU_GETTEXT): Invoke them. Convert gt_api_version,
gt_cv_func_gnugettext_libc, gt_cv_func_gnugettext_libintl from
diff --git a/gettext-runtime/m4/lock.m4 b/gettext-runtime/m4/lock.m4
index 94c1870..e031415 100644
--- a/gettext-runtime/m4/lock.m4
+++ b/gettext-runtime/m4/lock.m4
@@ -1,4 +1,4 @@
-# lock.m4 serial 5 (gettext-0.15.1)
+# lock.m4 serial 6 (gettext-0.15.1)
dnl Copyright (C) 2005-2006 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -21,12 +21,12 @@ dnl multithread-safe programs.
AC_DEFUN([gl_LOCK_EARLY],
[
- AC_REQUIRE([gl_LOCK_BODY])
+ AC_REQUIRE([gl_LOCK_EARLY_BODY])
])
dnl The guts of gl_LOCK_EARLY. Needs to be expanded only once.
-AC_DEFUN([gl_LOCK_BODY],
+AC_DEFUN([gl_LOCK_EARLY_BODY],
[
dnl Ordering constraints: This macro modifies CPPFLAGS in a way that
dnl influences the result of the autoconf tests that test for *_unlocked
@@ -49,6 +49,34 @@ AC_HELP_STRING([--disable-threads], [build without multithread safety]),
*) gl_use_threads=yes ;;
esac
])
+ if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then
+ # For using <pthread.h>:
+ case "$host_os" in
+ osf*)
+ # On OSF/1, the compiler needs the flag -D_REENTRANT so that it
+ # groks <pthread.h>. cc also understands the flag -pthread, but
+ # we don't use it because 1. gcc-2.95 doesn't understand -pthread,
+ # 2. putting a flag into CPPFLAGS that has an effect on the linker
+ # causes the AC_TRY_LINK test below to succeed unexpectedly,
+ # leading to wrong values of LIBTHREAD and LTLIBTHREAD.
+ CPPFLAGS="$CPPFLAGS -D_REENTRANT"
+ ;;
+ esac
+ # Some systems optimize for single-threaded programs by default, and
+ # need special flags to disable these optimizations. For example, the
+ # definition of 'errno' in <errno.h>.
+ case "$host_os" in
+ aix* | freebsd*) CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" ;;
+ solaris*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" ;;
+ esac
+ fi
+])
+
+dnl The guts of gl_LOCK. Needs to be expanded only once.
+
+AC_DEFUN([gl_LOCK_BODY],
+[
+ AC_REQUIRE([gl_LOCK_EARLY_BODY])
gl_threads_api=none
LIBTHREAD=
LTLIBTHREAD=
@@ -63,26 +91,12 @@ AC_HELP_STRING([--disable-threads], [build without multithread safety]),
AC_MSG_RESULT([$gl_have_weak])
if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then
# On OSF/1, the compiler needs the flag -pthread or -D_REENTRANT so that
- # it groks <pthread.h>.
- gl_save_CPPFLAGS="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS -D_REENTRANT"
+ # it groks <pthread.h>. It's added above, in gl_LOCK_EARLY_BODY.
AC_CHECK_HEADER(pthread.h, gl_have_pthread_h=yes, gl_have_pthread_h=no)
- CPPFLAGS="$gl_save_CPPFLAGS"
if test "$gl_have_pthread_h" = yes; then
# Other possible tests:
# -lpthreads (FSU threads, PCthreads)
# -lgthreads
- case "$host_os" in
- osf*)
- # On OSF/1, the compiler needs the flag -D_REENTRANT so that it
- # groks <pthread.h>. cc also understands the flag -pthread, but
- # we don't use it because 1. gcc-2.95 doesn't understand -pthread,
- # 2. putting a flag into CPPFLAGS that has an effect on the linker
- # causes the AC_TRY_LINK test below to succeed unexpectedly,
- # leading to wrong values of LIBTHREAD and LTLIBTHREAD.
- CPPFLAGS="$CPPFLAGS -D_REENTRANT"
- ;;
- esac
gl_have_pthread=
# Test whether both pthread_mutex_lock and pthread_mutexattr_init exist
# in libc. IRIX 6.5 has the first one in both libc and libpthread, but
@@ -151,13 +165,6 @@ return !x;
#endif],
[AC_DEFINE([HAVE_PTHREAD_MUTEX_RECURSIVE], 1,
[Define if the <pthread.h> defines PTHREAD_MUTEX_RECURSIVE.])])
- # Some systems optimize for single-threaded programs by default, and
- # need special flags to disable these optimizations. For example, the
- # definition of 'errno' in <errno.h>.
- case "$host_os" in
- aix* | freebsd*) CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" ;;
- solaris*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" ;;
- esac
fi
fi
fi
@@ -241,6 +248,7 @@ return !x;
AC_DEFUN([gl_LOCK],
[
AC_REQUIRE([gl_LOCK_EARLY])
+ AC_REQUIRE([gl_LOCK_BODY])
gl_PREREQ_LOCK
])