Make G_ASSERT_STATIC work with clang
[platform/upstream/glib.git] / configure.ac
index ec0ae02..6a30ffe 100644 (file)
@@ -251,7 +251,7 @@ dnl location to install runtime libraries, e.g. ../../lib to install
 dnl to /lib if libdir is /usr/lib
 AC_ARG_WITH(runtime-libdir,
            [AC_HELP_STRING([--with-runtime-libdir=RELPATH],
-                           [Install runtime libraries relative to libdir])],
+                           [install runtime libraries relative to libdir])],
            [],
           [with_runtime_libdir=""])
 GLIB_RUNTIME_LIBDIR="$with_runtime_libdir"
@@ -907,6 +907,7 @@ AC_CHECK_HEADERS([sys/vfs.h sys/mount.h sys/vmount.h sys/statfs.h sys/statvfs.h]
 AC_CHECK_HEADERS([mntent.h sys/mnttab.h sys/vfstab.h sys/mntctl.h sys/sysctl.h fstab.h])
 AC_CHECK_HEADERS([sys/uio.h sys/mkdev.h])
 AC_CHECK_HEADERS([linux/magic.h])
+AC_CHECK_HEADERS([sys/prctl.h])
 
 # check for structure fields
 AC_CHECK_MEMBERS([struct stat.st_mtimensec, struct stat.st_mtim.tv_nsec, struct stat.st_atimensec, struct stat.st_atim.tv_nsec, struct stat.st_ctimensec, struct stat.st_ctim.tv_nsec])
@@ -1030,6 +1031,8 @@ AS_IF([test x$ac_cv_func_statfs = xyes],
 AC_CHECK_HEADERS(crt_externs.h)
 AC_CHECK_FUNCS(_NSGetEnviron)
 
+AC_CHECK_FUNCS(newlocale uselocale strtod_l strtoll_l strtoull_l)
+
 AC_FUNC_VSNPRINTF_C99
 AC_FUNC_PRINTF_UNIX98
 
@@ -1694,8 +1697,8 @@ dnl *** Directory for GIO modules ***
 dnl *********************************
 
 AC_ARG_WITH(gio-module-dir,
-           [AC_HELP_STRING([--with-gio-module-dir=PATH],
-                           [Load gio modules from this directory [LIBDIR/gio/modules]])],
+           [AC_HELP_STRING([--with-gio-module-dir=DIR],
+                           [load gio modules from this directory [LIBDIR/gio/modules]])],
            [],
           [with_gio_module_dir='${libdir}/gio/modules'])
 GIO_MODULE_DIR=$with_gio_module_dir
@@ -1704,7 +1707,9 @@ AC_SUBST(GIO_MODULE_DIR)
 dnl **********************************
 dnl *** Check for libselinux (GIO) ***
 dnl **********************************
-AC_ARG_ENABLE(selinux, [  --disable-selinux       build without selinux support])
+AC_ARG_ENABLE(selinux,
+              AC_HELP_STRING([--disable-selinux],
+                             [build without selinux support]))
 msg_selinux=no
 SELINUX_LIBS=
 if test "x$enable_selinux" != "xno"; then
@@ -1754,11 +1759,12 @@ dnl ****************************
 
 should_disable_fam=no
 
-AC_ARG_ENABLE(fam, [  --disable-fam          build without enabling fam for file system monitoring],
+AC_ARG_ENABLE(fam,
+              AC_HELP_STRING([--disable-fam],
+                             [don't use fam for file system monitoring]),
                          [
                                 if test "x$enable_fam" = "xno"; then
                                         should_disable_fam=yes
-                                        echo "Not building FAM support"
                                 fi
                          ]
                          )
@@ -1782,7 +1788,8 @@ AM_CONDITIONAL(HAVE_FAM, [test "$fam_support" = "yes"])
 dnl *****************************
 dnl *** Check for xattr (GIO) ***
 dnl *****************************
-AC_ARG_ENABLE(xattr, [  --disable-xattr           build without xattr support])
+AC_ARG_ENABLE(xattr,
+              AC_HELP_STRING([--disable-xattr], [build without xattr support]))
 msg_xattr=no
 XATTR_LIBS=
 if test "x$enable_xattr" != "xno"; then
@@ -2111,7 +2118,6 @@ CPPFLAGS="$CPPFLAGS $G_THREAD_CFLAGS"
 dnl determination of G_THREAD_LIBS
 dnl ******************************
 
-mutex_has_default=no
 case $have_threads in
         posix)
          glib_save_CPPFLAGS="$CPPFLAGS"
@@ -2192,10 +2198,6 @@ case $have_threads in
             fi
          done
          LIBS="$glib_save_LIBS"
-          mutex_has_default=yes
-          mutex_default_type='pthread_mutex_t'
-          mutex_default_init='PTHREAD_MUTEX_INITIALIZER'
-          mutex_header_file='pthread.h'
          g_threads_impl="POSIX"
          AC_SUBST(GTHREAD_COMPILE_IMPL_DEFINES)
           CPPFLAGS="$glib_save_CPPFLAGS"
@@ -2424,32 +2426,6 @@ AC_SUBST(G_THREAD_LIBS)
 AC_SUBST(G_THREAD_LIBS_FOR_GTHREAD)
 AC_SUBST(G_THREAD_LIBS_EXTRA)
 
-dnl **********************************************
-dnl *** GDefaultMutex setup and initialization ***
-dnl **********************************************
-dnl
-dnl if mutex_has_default = yes, we also got
-dnl mutex_default_type, mutex_default_init and mutex_header_file
-if test $mutex_has_default = yes ; then
-       glib_save_CPPFLAGS="$CPPFLAGS"
-       glib_save_LIBS="$LIBS"
-       LIBS="$G_THREAD_LIBS $LIBS"
-       CPPFLAGS="$CPPFLAGS $GTHREAD_COMPILE_IMPL_DEFINES"
-       GLIB_SIZEOF([#include <$mutex_header_file>],
-                    $mutex_default_type,
-                    gmutex)
-       GLIB_BYTE_CONTENTS([#include <$mutex_header_file>],
-                          $mutex_default_type,
-                          gmutex,
-                          $glib_cv_sizeof_gmutex,
-                          $mutex_default_init)
-       if test x"$glib_cv_byte_contents_gmutex" = xno; then
-               mutex_has_default=no
-       fi
-       CPPFLAGS="$glib_save_CPPFLAGS"
-       LIBS="$glib_save_LIBS"
-fi
-
 AC_CHECK_FUNCS(clock_gettime, [], [
   AC_CHECK_LIB(rt, clock_gettime, [
     AC_DEFINE(HAVE_CLOCK_GETTIME, 1)
@@ -2480,100 +2456,14 @@ dnl ************************
 dnl *** g_atomic_* tests ***
 dnl ************************
 
-AC_MSG_CHECKING([whether to use assembler code for atomic operations])
     case $host_cpu in
-      i386)
-        AC_MSG_RESULT([none])
-        glib_memory_barrier_needed=no
-        ;;
-      i?86)
-        AC_MSG_RESULT([i486])
-        AC_DEFINE_UNQUOTED(G_ATOMIC_I486, 1,
-                          [i486 atomic implementation])
+      i?86|x86_64|s390|s390x|arm*|crisv32*|etrax*)
         glib_memory_barrier_needed=no
         ;;
-      sparc*)
-        SPARCV9_WARNING="Try to rerun configure with CFLAGS='-mcpu=v9',
-                        when you are using a sparc with v9 instruction set (most
-                        sparcs nowadays). This will make the code for atomic
-                        operations much faster. The resulting code will not run
-                        on very old sparcs though."
-
-        AC_LINK_IFELSE([AC_LANG_SOURCE([[
-          main ()
-          {
-            int tmp1, tmp2, tmp3;
-            __asm__ __volatile__("casx [%2], %0, %1"
-                                 : "=&r" (tmp1), "=&r" (tmp2) : "r" (&tmp3));
-          }]])],
-          AC_MSG_RESULT([sparcv9])
-          AC_DEFINE_UNQUOTED(G_ATOMIC_SPARCV9, 1,
-                            [sparcv9 atomic implementation]),
-          AC_MSG_RESULT([no])
-          AC_MSG_WARN([[$SPARCV9_WARNING]]))
+      sparc*|alpha*|powerpc*|ia64)
         glib_memory_barrier_needed=yes
         ;;
-      alpha*)
-        AC_MSG_RESULT([alpha])
-        AC_DEFINE_UNQUOTED(G_ATOMIC_ALPHA, 1,
-                          [alpha atomic implementation])
-        glib_memory_barrier_needed=yes
-        ;;
-      x86_64)
-        AC_MSG_RESULT([x86_64])
-        AC_DEFINE_UNQUOTED(G_ATOMIC_X86_64, 1,
-                          [x86_64 atomic implementation])
-        glib_memory_barrier_needed=no
-       ;;
-      powerpc*)
-        AC_MSG_RESULT([powerpc])
-        AC_DEFINE_UNQUOTED(G_ATOMIC_POWERPC, 1,
-                          [powerpc atomic implementation])
-        glib_memory_barrier_needed=yes
-        AC_MSG_CHECKING([whether asm supports numbered local labels])
-        AC_TRY_COMPILE(
-                      ,[
-                      __asm__ __volatile__ ("1:       nop\n"
-                              "         bne-    1b")
-                      ],[
-                      AC_DEFINE_UNQUOTED(ASM_NUMERIC_LABELS, 1, [define if asm blocks can use numeric local labels])
-                      AC_MSG_RESULT([yes])
-                      ],[
-                      AC_MSG_RESULT([no])
-                      ])
-        ;;
-      ia64)
-        AC_MSG_RESULT([ia64])
-        AC_DEFINE_UNQUOTED(G_ATOMIC_IA64, 1,
-                          [ia64 atomic implementation])
-        glib_memory_barrier_needed=yes
-        ;;
-      s390|s390x)
-        AC_MSG_RESULT([s390])
-        AC_DEFINE_UNQUOTED(G_ATOMIC_S390, 1,
-                          [s390 atomic implementation])
-        glib_memory_barrier_needed=no
-        ;;
-      arm*)
-        AC_MSG_RESULT([arm])
-        AC_DEFINE_UNQUOTED(G_ATOMIC_ARM, 1,
-                          [arm atomic implementation])
-        glib_memory_barrier_needed=no
-        ;;
-      crisv32*|etraxfs*)
-        AC_MSG_RESULT([crisv32])
-        AC_DEFINE_UNQUOTED(G_ATOMIC_CRISV32, 1,
-                          [crisv32 atomic implementation])
-        glib_memory_barrier_needed=no
-        ;;
-      cris*|etrax*)
-        AC_MSG_RESULT([cris])
-        AC_DEFINE_UNQUOTED(G_ATOMIC_CRIS, 1,
-                          [cris atomic implementation])
-        glib_memory_barrier_needed=no
-        ;;
       *)
-        AC_MSG_RESULT([none])
         glib_memory_barrier_needed=yes
         ;;
     esac
@@ -2707,7 +2597,7 @@ PCRE_REQUIRED_VERSION=8.11
 
 # Check if we should compile GRegex
 AC_ARG_ENABLE(regex, AC_HELP_STRING([--disable-regex],
-              [disable the compilation of GRegex]),
+                                    [disable the compilation of GRegex]),
 [case "${enableval}" in
   yes) enable_regex=true ;;
   no)  enable_regex=false ;;
@@ -2722,8 +2612,7 @@ if test x$enable_regex = xtrue; then
   # Check if we should use the internal or the system-supplied pcre
   AC_ARG_WITH(pcre,
              [AC_HELP_STRING([--with-pcre=@<:@internal/system@:>@],
-                             [specify whether to use the internal or the
-                              system-supplied PCRE library])])
+                             [whether to use system PCRE [default=internal]])])
 
   AM_CONDITIONAL(USE_SYSTEM_PCRE, [test "x$with_pcre" = xsystem])
 
@@ -2858,7 +2747,7 @@ dnl
 
 AC_ARG_ENABLE([dtrace],
              [AS_HELP_STRING([--enable-dtrace],
-                              [Enable inclusion of dtrace trace support])])
+                              [include tracing support for dtrace])])
 have_dtrace=no
 AC_MSG_CHECKING([whether to include dtrace tracing support])
 if test "x$enable_dtrace" != xno; then
@@ -2889,7 +2778,7 @@ AM_CONDITIONAL([ENABLE_DTRACE], [test x$have_dtrace = xyes ])
 AC_MSG_CHECKING([whether to include systemtap tracing support])
 AC_ARG_ENABLE([systemtap],
              [AS_HELP_STRING([--enable-systemtap],
-                              [Enable inclusion of systemtap trace support])])
+                              [include tracing support for systemtap])])
 have_systemtap=no
 if test "x$enable_systemtap" != xno -a "x$have_dtrace" = xyes; then
   have_systemtap=yes
@@ -2899,8 +2788,8 @@ AC_MSG_RESULT(${have_systemtap})
 AM_CONDITIONAL([ENABLE_SYSTEMTAP], [test x$have_systemtap = xyes])
 
 AC_ARG_WITH([tapset-install-dir],
-            [AS_HELP_STRING([--with-tapset-install-dir],
-            [The absolute path where the systemtap tapsets will be installed])],
+            AS_HELP_STRING([--with-tapset-install-dir=DIR],
+                            [path where systemtap tapsets are installed [DATADIR/systemtap/tapset]]),
             [if test "x${withval}" = x; then
               ABS_TAPSET_DIR="\$(datadir)/systemtap/tapset"
             else
@@ -2915,7 +2804,7 @@ dnl ************************************
 
 AC_ARG_ENABLE(gcov,
   AS_HELP_STRING([--enable-gcov],
-                [Enable gcov]),
+                [enable coverage testing with gcov]),
   [use_gcov=$enableval], [use_gcov=no])
 
 if test "x$use_gcov" = "xyes"; then
@@ -3245,38 +3134,11 @@ _______EOF
 #endif 
 _______EOF
 
-
        echo >>$outfile
-       if test x$g_mutex_has_default = xyes; then
-               cat >>$outfile <<_______EOF
-#define G_THREADS_ENABLED
-#define G_THREADS_IMPL_$g_threads_impl_def
-typedef struct _GStaticMutex GStaticMutex;
-struct _GStaticMutex
-{
-  struct _GMutex *runtime_mutex;
-  union {
-    char   pad[[$g_mutex_sizeof]];
-    double dummy_double;
-    void  *dummy_pointer;
-    long   dummy_long;
-  } static_mutex;
-};
-#define        G_STATIC_MUTEX_INIT     { NULL, { { $g_mutex_contents} } }
-#define        g_static_mutex_get_mutex(mutex) \\
-  (g_thread_use_default_impl ? ((GMutex*)(gpointer) ((mutex)->static_mutex.pad)) : \\
-   g_static_mutex_get_mutex_impl_shortcut (&((mutex)->runtime_mutex)))
-_______EOF
-       else
-               cat >>$outfile <<_______EOF
+       cat >>$outfile <<_______EOF
 #define G_THREADS_ENABLED
 #define G_THREADS_IMPL_$g_threads_impl_def
-typedef struct _GMutex* GStaticMutex;
-#define G_STATIC_MUTEX_INIT NULL
-#define g_static_mutex_get_mutex(mutex) \\
-  (g_static_mutex_get_mutex_impl_shortcut (mutex))
 _______EOF
-       fi
 
        cat >>$outfile <<_______EOF
 /* This represents a system thread as used by the implementation. An
@@ -3665,10 +3527,7 @@ g_have_eilseq=$have_eilseq
 
 g_threads_impl_def=$g_threads_impl
 
-g_mutex_has_default="$mutex_has_default"
-g_mutex_sizeof="$glib_cv_sizeof_gmutex"
 g_system_thread_sizeof="$glib_cv_sizeof_system_thread"
-g_mutex_contents="$glib_cv_byte_contents_gmutex"
 
 g_memory_barrier_needed="$glib_memory_barrier_needed"
 g_gcc_atomic_ops="$glib_cv_gcc_has_builtin_atomic_operations"