X-Git-Url: https://git.liburcu.org/?p=urcu.git;a=blobdiff_plain;f=configure.ac;h=690fe8fa7f1d41b8c4972fc9c0927bc9a42cb4ca;hp=2b7ace568b60eddb682ea5c34d9d814d672accc6;hb=c7f4490afcccb5d27b0f17e99ea782b21449e27b;hpb=0195634254d90bac8517076685032ccffee75456 diff --git a/configure.ac b/configure.ac index 2b7ace5..690fe8f 100644 --- a/configure.ac +++ b/configure.ac @@ -6,9 +6,9 @@ dnl Process this file with autoconf to produce a configure script. # Project version information m4_define([urcu_version_major], [0]) -m4_define([urcu_version_minor], [12]) +m4_define([urcu_version_minor], [13]) m4_define([urcu_version_patch], [0]) -m4_define([urcu_version_dev_stage], []) +m4_define([urcu_version_dev_stage], [-pre]) m4_define([urcu_version], urcu_version_major[.]urcu_version_minor[.]urcu_version_patch[]urcu_version_dev_stage) # Library version information of "liburcu" @@ -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)