X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=configure.ac;h=f9958b329a14f2e7eecb6cc50813a776e6f559fb;hb=33687d6ed7b923662566e6a6f2761792bb087fb4;hp=5593bc4db070f0be02a63b6c2483624401709cbf;hpb=1a41642e2cd8ecfa703c45264c522866b4c99f01;p=libsigrokdecode.git diff --git a/configure.ac b/configure.ac index 5593bc4..f9958b3 100644 --- a/configure.ac +++ b/configure.ac @@ -40,9 +40,16 @@ AC_PROG_CC AC_PROG_INSTALL AC_PROG_LN_S +AC_C_CONST + # Required for per-target flags or subdir-objects with C sources. AM_PROG_CC_C_O +# Support building Windows DLLs. +AC_LIBTOOL_WIN32_DLL +AM_PROG_CC_STDC +AM_PROG_LIBTOOL + # Set the standard the C library headers should conform to. AH_VERBATIM([_POSIX_C_SOURCE], [/* The targeted POSIX standard. */ #ifndef _POSIX_C_SOURCE @@ -89,15 +96,18 @@ SRD_PKGLIBS_TESTS= SR_PKG_CHECK_SUMMARY([srd_pkglibs_summary]) # Python 3 is always needed. +# Starting with Python 3.8 we need to check for "python-3.8-embed" +# first, since usually only that variant will add "-lpython3.8". +# https://docs.python.org/3/whatsnew/3.8.html#debug-build-uses-the-same-abi-as-release-build SR_PKG_CHECK([python3], [SRD_PKGLIBS], - [python3 >= 3.2], [python-3.6 >= 3.6], [python-3.5 >= 3.5], [python-3.4 >= 3.4], [python-3.3 >= 3.3], [python-3.2 >= 3.2]) + [python-3.8-embed], [python-3.8 >= 3.8], [python-3.7 >= 3.7], [python-3.6 >= 3.6], [python-3.5 >= 3.5], [python-3.4 >= 3.4], [python-3.3 >= 3.3], [python-3.2 >= 3.2], [python3 >= 3.2]) AS_IF([test "x$sr_have_python3" = xno], [AC_MSG_ERROR([Cannot find Python 3 development headers.])]) # We also need to find the name of the python3 executable (for 'make install'). # Some OSes call this python3, some call it python3.2, etc. etc. AC_ARG_VAR([PYTHON3], [Python 3 interpreter]) -AC_CHECK_PROGS([PYTHON3], [python3.6 python3.5 python3.4 python3.3 python3.2 python3]) +AC_CHECK_PROGS([PYTHON3], [python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3]) AS_IF([test "x$PYTHON3" = x], [AC_MSG_ERROR([Cannot find Python 3 interpreter.])]) @@ -119,7 +129,7 @@ SR_CHECK_COMPILE_FLAGS([SRD_EXTRA_CFLAGS], [C99], [-std=c99 -c99 -AC99 -qlanglvl SR_CHECK_COMPILE_FLAGS([SRD_EXTRA_CFLAGS], [visibility], [-fvisibility=hidden]) # Select suitable compiler warning flags. -SR_ARG_ENABLE_WARNINGS([SRD_WFLAGS], [-Wall], [-Wall -Wextra -Wmissing-prototypes]) +SR_ARG_ENABLE_WARNINGS([SRD_WFLAGS], [-Wall], [-Wall -Wextra -Wmissing-prototypes -Wshadow -Wformat=2 -Wno-format-nonliteral -Wfloat-equal]) # Link against libm, this is required (among other things) by Python. SRD_EXTRA_LIBS= @@ -129,6 +139,17 @@ AC_SYS_LARGEFILE AC_C_BIGENDIAN +######################### +## Optional features. ## +######################### + +# Enable IRMP support by default. Accept user overrides. +AC_ARG_ENABLE([irmp], + [AS_HELP_STRING([--enable-irmp], [enable IRMP shared object [default=yes]])], + [], [enable_irmp_so=yes]) +AM_CONDITIONAL([WITH_IRMP], [test "x$enable_irmp_so" = "xyes"]) +test -n "$enable_irmp_so" || enable_irmp_so=no + ############################## ## Finalize configuration ## ############################## @@ -172,4 +193,6 @@ Detected libraries (required): $srd_pkglibs_summary Detected libraries (optional): $srd_pkglibs_opt_summary +Optional features: + - IRMP support library .......... $enable_irmp_so _EOF