Build: Limit system features to C99 and POSIX
Use -std=c99 to try and enforce standard compliance.
This commit is contained in:
parent
2d2240bb99
commit
e662d9e8e5
|
@ -29,7 +29,7 @@ if BINDINGS_CXX
|
||||||
local_includes += -Ibindings/cxx/include -I$(srcdir)/bindings/cxx/include -Ibindings/cxx
|
local_includes += -Ibindings/cxx/include -I$(srcdir)/bindings/cxx/include -Ibindings/cxx
|
||||||
endif
|
endif
|
||||||
# Ensure that local include directories are always searched first.
|
# Ensure that local include directories are always searched first.
|
||||||
AM_CPPFLAGS = $(local_includes) -DFIRMWARE_DIR='"$(FIRMWARE_DIR)"'
|
AM_CPPFLAGS = $(local_includes) -D_POSIX_C_SOURCE=200112L -DFIRMWARE_DIR='"$(FIRMWARE_DIR)"'
|
||||||
|
|
||||||
# The check CFLAGS are a superset of the libsigrok CFLAGS, and the
|
# The check CFLAGS are a superset of the libsigrok CFLAGS, and the
|
||||||
# python bindings CFLAGS are a superset of the C++ bindings CFLAGS.
|
# python bindings CFLAGS are a superset of the C++ bindings CFLAGS.
|
||||||
|
|
|
@ -39,7 +39,6 @@ AH_BOTTOM([#endif /* SR_CONFIG_H */])
|
||||||
|
|
||||||
# Checks for programs.
|
# Checks for programs.
|
||||||
AC_PROG_CC
|
AC_PROG_CC
|
||||||
AC_PROG_CPP
|
|
||||||
AC_PROG_CXX
|
AC_PROG_CXX
|
||||||
AC_PROG_INSTALL
|
AC_PROG_INSTALL
|
||||||
AC_PROG_LN_S
|
AC_PROG_LN_S
|
||||||
|
@ -107,10 +106,10 @@ AM_CONDITIONAL([HAVE_CHECK], [test "x$sr_have_check" = xyes])
|
||||||
|
|
||||||
AC_LANG([C])
|
AC_LANG([C])
|
||||||
|
|
||||||
# Enable the C11 standard if possible, and enforce the use
|
# Enable the C99 standard if possible, and enforce the use
|
||||||
# of SR_API to explicitly mark all public API functions.
|
# of SR_API to explicitly mark all public API functions.
|
||||||
SR_EXTRA_CFLAGS=
|
SR_EXTRA_CFLAGS=
|
||||||
SR_CHECK_COMPILE_FLAGS([SR_EXTRA_CFLAGS], [C11], [-std=gnu11 -std=c11])
|
SR_CHECK_COMPILE_FLAGS([SR_EXTRA_CFLAGS], [C99], [-std=c99 -c99 -AC99 -qlanglvl=extc99])
|
||||||
SR_CHECK_COMPILE_FLAGS([SR_EXTRA_CFLAGS], [visibility], [-fvisibility=hidden])
|
SR_CHECK_COMPILE_FLAGS([SR_EXTRA_CFLAGS], [visibility], [-fvisibility=hidden])
|
||||||
|
|
||||||
SR_ARG_ENABLE_WARNINGS([SR_WFLAGS], [-Wall], [-Wall -Wextra -Wmissing-prototypes])
|
SR_ARG_ENABLE_WARNINGS([SR_WFLAGS], [-Wall], [-Wall -Wextra -Wmissing-prototypes])
|
||||||
|
@ -258,7 +257,7 @@ AC_ARG_ENABLE([java],
|
||||||
sr_cxx_missing=
|
sr_cxx_missing=
|
||||||
|
|
||||||
# Check if the C++ compiler supports the C++11 standard.
|
# Check if the C++ compiler supports the C++11 standard.
|
||||||
AX_CXX_COMPILE_STDCXX_11(, [optional])
|
AX_CXX_COMPILE_STDCXX_11([noext], [optional])
|
||||||
AS_IF([test "x$HAVE_CXX11" != x1],
|
AS_IF([test "x$HAVE_CXX11" != x1],
|
||||||
[SR_APPEND([sr_cxx_missing], [', '], ['C++11'])])
|
[SR_APPEND([sr_cxx_missing], [', '], ['C++11'])])
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue