]> sigrok.org Git - sigrok-test.git/blobdiff - configure.ac
avr_isp: add test for ATmega328/P
[sigrok-test.git] / configure.ac
index f0520de45774d5e950d4250f9afb1ff4e0da2ce6..f0c6753f4a115536dffbaf8959871b2c6fb79798 100644 (file)
@@ -25,6 +25,7 @@ AC_INIT([sigrok-test], [0.1.0], [sigrok-devel@lists.sourceforge.net],
        [sigrok-test], [http://www.sigrok.org])
 AC_CONFIG_MACRO_DIR([m4])
 AC_CONFIG_AUX_DIR([autostuff])
+AC_CONFIG_HEADERS([config.h])
 
 # We require at least automake 1.11 (needed for 'silent rules').
 AM_INIT_AUTOMAKE([1.11 -Wall -Werror no-define subdir-objects check-news])
@@ -54,8 +55,14 @@ ST_PKGLIBS=
 SR_PKG_CHECK_SUMMARY([st_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], [ST_PKGLIBS],
-       [python3 >= 3.2], [python-3.5 >= 3.5], [python-3.4 >= 3.4], [python-3.3 >= 3.3], [python-3.2 >= 3.2])
+       [python-3.8-embed], [python3-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.])])
 
@@ -86,8 +93,17 @@ AC_CHECK_HEADER([sys/resource.h],,
 
 # Retrieve the compile and link flags for all modules combined.
 # Also, bail out at this point if any module dependency is not met.
+# Check availability of library version dependent features.
 PKG_CHECK_MODULES([SIGROK_TEST],
        [glib-2.0 >= 2.24.0 libsigrok >= 0.5.0 libsigrokdecode >= 0.5.0 $ST_PKGLIBS])
+AC_LANG([C])
+st_save_cflags=$CFLAGS
+st_save_libs=$LIBS
+CFLAGS="$SIGROK_TEST_CFLAGS $CFLAGS"
+LIBS="$SIGROK_TEST_LIBS $LIBS"
+AC_CHECK_FUNCS([srd_session_send_eof])
+CFLAGS=$st_save_cflags
+LIBS=$st_save_libs
 
 # Allow the user to override the location of the protocol decoders.
 AC_ARG_WITH([decodersdir],