1AC_PREREQ(2.57) 2AC_INIT([libltc], [-], [robin@gareus.org], [], [http://x42.github.com/libltc/]) 3 4AC_PATH_PROG(SED, sed, "", $PATH:/bin:/usr/bin:/usr/local/bin) 5if test -z "$SED"; then 6 AC_MSG_ERROR([sed was not found -- sed is requied to extract version information]) 7fi 8 9AC_MSG_CHECKING([libltc version]) 10VERSION=`$SED -ne 's/^#define LIBLTC_VERSION "\(.*\)"/\1/p' ${srcdir}/src/ltc.h 2>/dev/null` 11AC_MSG_RESULT($VERSION) 12if test -z "$VERSION"; then 13 AC_MSG_ERROR([version number can not be retrieved from src/ltc.h]) 14fi 15 16VERSION_CUR=`$SED -ne 's/^#define LIBLTC_CUR *\([0-9]*\)/\1/p' ${srcdir}/src/ltc.h 2>/dev/null` 17VERSION_REV=`$SED -ne 's/^#define LIBLTC_REV *\([0-9]*\)/\1/p' ${srcdir}/src/ltc.h 2>/dev/null` 18VERSION_AGE=`$SED -ne 's/^#define LIBLTC_AGE *\([0-9]*\)/\1/p' ${srcdir}/src/ltc.h 2>/dev/null` 19VERSION_INFO=${VERSION_CUR}:${VERSION_REV}:${VERSION_AGE} 20 21AC_CONFIG_SRCDIR([src/ltc.c]) 22AC_CONFIG_TESTDIR([tests]) 23AC_CANONICAL_TARGET([]) 24AC_COPYRIGHT([Copyright (C) Robin Gareus 2006-2012]) 25 26AM_INIT_AUTOMAKE(libltc,$VERSION) 27AC_CONFIG_HEADERS([src/config.h]) 28 29AC_CANONICAL_HOST 30 31AC_PROG_INSTALL 32AC_PROG_CC 33AC_PROG_MAKE_SET 34AC_PROG_LN_S 35AC_PROG_LIBTOOL 36AC_LIBTOOL_WIN32_DLL 37 38dnl *** misc complier/linker flags *** 39LIBLTC_CFLAGS="-Wall" 40LIBLTC_LDFLAGS="-export-symbols-regex '^(ltc_).*'" 41 42case $target_os in 43 *mingw32*|*win*) 44 LDFLAGS="-no-undefined" 45 ;; 46 *) 47 AC_MSG_CHECKING([if -Wl,--as-needed works]) 48 LDFLAGS_save=$LDFLAGS 49 LDFLAGS="$LDFLAGS -Wl,--as-needed" 50 AC_TRY_LINK([], [], 51 [ 52 AC_MSG_RESULT([yes]) 53 LIBLTC_LDFLAGS="$LIBLTC_LDFLAGS -Wl,--as-needed" 54 ], 55 [AC_MSG_RESULT([no])]) 56 LDFLAGS=$LDFLAGS_save 57 ;; 58esac 59 60dnl *** check for dependencies *** 61AC_CHECK_HEADERS(stdio.h stdlib.h string.h unistd.h math.h stdint.h) 62 63dnl *** check for doxygen *** 64AC_ARG_VAR(DOXYGEN, Doxygen) 65AC_PATH_PROG(DOXYGEN, doxygen, no) 66 67if test "$DOXYGEN" != "no"; then 68 DOXMAKE='run "make dox" to generate API html reference: doc/html/index.html' 69fi 70 71subdirs="src doc tests" 72 73AC_SUBST(subdirs) 74AC_SUBST(VERSION) 75AC_SUBST(VERSION_INFO) 76AC_SUBST(LIBLTC_CFLAGS) 77AC_SUBST(LIBLTC_LDFLAGS) 78 79AC_OUTPUT(Makefile src/Makefile doc/Makefile tests/Makefile ltc.pc Doxyfile) 80 81AC_MSG_NOTICE([ 82 83 libltc configured: 84 ----------------------- 85 86 version: $VERSION 87 interface revision: $VERSION_INFO 88 89 doxygen: $DOXYGEN 90 installation prefix: $prefix 91 92 type "make" followed my "make install" as root. 93 run "make check" to perform selftests. 94 $DOXMAKE 95]) 96