]> sigrok.org Git - libserialport.git/blobdiff - configure.ac
change type of result variables to ssize_t
[libserialport.git] / configure.ac
index f6b66e8eba68cbc81c58d14aafe86a1a7e861966..a26b85161593f01e3f52836ebe31e127d802985c 100644 (file)
@@ -29,7 +29,7 @@ m4_define([sp_package_version], [sp_package_version_major.sp_package_version_min
 
 AC_INIT([libserialport], [sp_package_version], [martin-libserialport@earth.li],
        [libserialport], [http://sigrok.org/wiki/Libserialport])
-AC_CONFIG_HEADERS([config.h libserialport.h])
+AC_CONFIG_HEADERS([config.h])
 AC_CONFIG_MACRO_DIR([autostuff])
 AC_CONFIG_AUX_DIR([autostuff])
 
@@ -50,6 +50,19 @@ AC_PROG_CC
 AC_PROG_INSTALL
 AC_PROG_LN_S
 
+## SP_PROG_VERSION(program, sh-var)
+## Obtain the version of <program> and store it in <sh-var>.
+AC_DEFUN([SP_PROG_VERSION],
+[dnl
+m4_assert([$# >= 2])[]dnl
+sp_prog_ver=`$1 --version 2>&AS_MESSAGE_LOG_FD | sed 1q 2>&AS_MESSAGE_LOG_FD`
+AS_CASE([[$]?:$sp_prog_ver],
+        [[0:*[0-9].[0-9]*]], [$2=$sp_prog_ver],
+        [$2=unknown])[]dnl
+])
+
+SP_PROG_VERSION([$CC], [sp_cc_version])
+
 # Initialize libtool.
 LT_INIT
 
@@ -74,18 +87,21 @@ AC_DEFINE_UNQUOTED([SP_LIB_VERSION_REVISION], [$SP_LIB_VERSION_REVISION], [.])
 AC_DEFINE_UNQUOTED([SP_LIB_VERSION_AGE], [$SP_LIB_VERSION_AGE], [.])
 AC_DEFINE_UNQUOTED([SP_LIB_VERSION_STRING], ["$SP_LIB_VERSION"], [.])
 
-AM_CONDITIONAL([LINUX], [test -z "${host_os##linux*}"])
-AM_CONDITIONAL([WIN32], [test -z "${host_os##mingw*}" || test -z "${host_os##cygwin*}"])
+AM_CONDITIONAL([LINUX], [test -z "${host_os##linux*}" || test -z "${host_os##uclinux*}"])
+AM_CONDITIONAL([WIN32], [test -z "${host_os##mingw*}"])
 AM_CONDITIONAL([MACOSX], [test -z "${host_os##darwin*}"])
 AM_CONDITIONAL([FREEBSD], [test -z "${host_os##freebsd*}"])
 
 AM_COND_IF([WIN32], [SP_LIBS='-lsetupapi'], [SP_LIBS=])
 AC_SUBST([SP_LIBS])
 
+AM_COND_IF([FREEBSD], [SP_PKGLIBS='libusb-2.0'], [SP_PKGLIBS=])
+AC_SUBST([SP_PKGLIBS])
+
 AM_COND_IF([MACOSX], [AC_CHECK_HEADER([IOKit/IOKitLib.h], [],
        [AC_MSG_ERROR([IOKit/IOKitLib.h not found])])])
 
-AS_CASE([$host_os], [linux*|darwin*|mingw*|cygwin*|freebsd*],, [
+AS_CASE([$host_os], [linux*|darwin*|mingw*|freebsd*],, [
        AC_DEFINE([NO_ENUMERATION], [1], [Enumeration is unsupported.])
        AC_DEFINE([NO_PORT_METADATA], [1], [Port metadata is unavailable.])
 ])
@@ -96,7 +112,7 @@ AC_SYS_LARGEFILE
 AC_TYPE_SIZE_T
 
 # Check for specific termios structures.
-AC_CHECK_TYPES([struct termios2, struct termiox],,,
+AC_CHECK_TYPES([struct termios2],,,
        [[#include <linux/termios.h>]])
 AC_CHECK_MEMBERS([struct termios.c_ispeed, struct termios.c_ospeed,
                struct termios2.c_ispeed, struct termios2.c_ospeed],,,
@@ -110,6 +126,17 @@ AC_CHECK_DECLS([BOTHER],,, [[#include <linux/termios.h>]])
 # Check for serial_struct.
 AC_CHECK_TYPES([struct serial_struct],,, [[#include <linux/serial.h>]])
 
+# Check for realpath().
+AC_CHECK_FUNC([realpath], [AC_DEFINE(HAVE_REALPATH, 1, [realpath is available.])], [])
+
+# Check for flock().
+AC_CHECK_HEADER([sys/file.h], [AC_DEFINE(HAVE_SYS_FILE_H, 1, [sys/file.h is available.])], [])
+AC_CHECK_FUNC([flock], [AC_DEFINE(HAVE_FLOCK, 1, [flock is available.])], [])
+
+# Check for clock_gettime().
+AC_CHECK_FUNC([clock_gettime],
+       [AC_DEFINE(HAVE_CLOCK_GETTIME, 1, [clock_gettime is available.])], [])
+
 AC_CACHE_CHECK([for visibility control], [sp_cv_visibility_control], [
        sp_saved_CFLAGS=$CFLAGS
        CFLAGS="$CFLAGS -Werror"
@@ -138,10 +165,17 @@ cat >&AS_MESSAGE_FD <<_EOF
 
 libserialport configuration summary:
 
- - Package version (major.minor.micro):    $SP_PACKAGE_VERSION
- - Library version (current:revision:age): $SP_LIB_VERSION
- - Prefix: $prefix
- - Building on:  $build
- - Building for: $host
+ - Package version................. $SP_PACKAGE_VERSION
+ - Library ABI version............. $SP_LIB_VERSION
+ - Prefix.......................... $prefix
+ - Building on..................... $build
+ - Building for.................... $host
+ - Building shared / static........ $enable_shared / $enable_static
+
+Compile configuration:
+ - C compiler...................... $CC
+ - C compiler version.............. $sp_cc_version
+ - C compiler flags................ $CFLAGS
+ - Linker flags.................... $LDFLAGS
 
 _EOF