Fix: x86 and s390 uatomic: __hp() macro warning with gcc 11
[urcu.git] / configure.ac
index eb3aa9ca3521779498970eaad3342561b8d5999a..f026c6d60ffa44156abec1a633c6289779a151ea 100644 (file)
@@ -8,15 +8,15 @@ dnl Process this file with autoconf to produce a configure script.
 m4_define([urcu_version_major], [0])
 m4_define([urcu_version_minor], [13])
 m4_define([urcu_version_patch], [0])
-m4_define([urcu_version_dev_stage], [-pre])
+m4_define([urcu_version_dev_stage], [])
 m4_define([urcu_version], urcu_version_major[.]urcu_version_minor[.]urcu_version_patch[]urcu_version_dev_stage)
 
 # Library version information of "liburcu"
 # Following the numbering scheme proposed by libtool for the library version
 # http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
-m4_define([urcu_lib_version_current], [7])
+m4_define([urcu_lib_version_current], [8])
 m4_define([urcu_lib_version_revision], [0])
-m4_define([urcu_lib_version_age], [1])
+m4_define([urcu_lib_version_age], [0])
 m4_define([urcu_lib_version], urcu_lib_version_current[:]urcu_lib_version_revision[:]urcu_lib_version_age)
 
 
@@ -79,11 +79,6 @@ AS_IF([test "x$ax_cv___attribute__" != "xyes"],
 # Make sure we have pthread support
 AX_PTHREAD([], [AC_MSG_ERROR([Could not configure pthread support])])
 
-# Make sure the C compiler supports weak symbols
-AX_SYS_WEAK_ALIAS
-AS_IF([test "x$ax_cv_sys_weak_alias" = "xno"],
-  [AC_MSG_ERROR([Your platform doesn't support weak symbols.])])
-
 # Checks for typedefs, structures, and compiler characteristics.
 AC_C_INLINE
 AC_C_TYPEOF
@@ -96,6 +91,39 @@ AC_TYPE_UINT32_T
 AC_TYPE_UINT64_T
 AC_TYPE_UINT8_T
 
+# Detect warning flags supported by the C compiler and append them to
+# WARN_CFLAGS.
+m4_define([WARN_FLAGS_LIST], [ dnl
+  -Wall dnl
+  -Wextra dnl
+  -Wmissing-prototypes dnl
+  -Wmissing-declarations dnl
+  -Wnull-dereference dnl
+  -Wundef dnl
+  -Wshadow dnl
+  -Wjump-misses-init dnl
+  -Wsuggest-attribute=format dnl
+  -Wtautological-constant-out-of-range-compare dnl
+  -Wnested-externs dnl
+  -Wwrite-strings dnl
+  -Wformat=2 dnl
+  -Wstrict-aliasing dnl
+  -Wmissing-noreturn dnl
+  -Winit-self dnl
+  -Wduplicated-cond dnl
+  -Wduplicated-branches dnl
+  -Wlogical-op dnl
+  dnl
+  dnl-Wredundant-decls dnl
+  -Wno-null-dereference dnl
+])
+
+# Pass -Werror as an extra flag during the test: this is needed to make the
+# -Wunknown-warning-option diagnostic fatal with clang.
+AC_LANG_PUSH([C])
+AX_APPEND_COMPILE_FLAGS([WARN_FLAGS_LIST], [WARN_CFLAGS], [-Werror])
+AC_LANG_POP([C])
+
 
 ##               ##
 ## Header checks ##
@@ -118,7 +146,7 @@ AC_PROG_AWK
 AC_PROG_GREP
 AC_PROG_MAKE_SET
 AC_CHECK_PROGS(NPROC, [nproc gnproc])
-AC_CHECK_PROG(GETCONF, [getconf])
+AC_CHECK_PROGS(GETCONF, [getconf])
 AS_IF([test "x$NPROC" != "x"],
        [NPROC_CMD=$NPROC],
        [AS_IF([test "x$GETCONF" != "x"],
@@ -244,7 +272,7 @@ AC_SUBST(LT_NO_UNDEFINED)
 AM_CPPFLAGS="-I\$(top_builddir)/include -I\$(top_srcdir)/include -include config.h"
 AC_SUBST(AM_CPPFLAGS)
 
-AM_CFLAGS="-Wall -Wextra -Wno-unused-parameter $PTHREAD_CFLAGS"
+AM_CFLAGS="$WARN_CFLAGS $PTHREAD_CFLAGS"
 AC_SUBST(AM_CFLAGS)
 
 
@@ -256,6 +284,7 @@ AC_CONFIG_FILES([
        Makefile
        doc/Makefile
        doc/examples/Makefile
+       extras/Makefile
        include/Makefile
        src/Makefile
        tests/Makefile
This page took 0.023602 seconds and 4 git commands to generate.