diff options
Diffstat (limited to 'nxcomp/configure.ac')
-rw-r--r-- | nxcomp/configure.ac | 118 |
1 files changed, 118 insertions, 0 deletions
diff --git a/nxcomp/configure.ac b/nxcomp/configure.ac new file mode 100644 index 000000000..8037250e7 --- /dev/null +++ b/nxcomp/configure.ac @@ -0,0 +1,118 @@ +# *************************************************************************** +# *** configure.ac for nxcomp *** +# *************************************************************************** + +m4_define([nxcomp_version], m4_esyscmd([tr -d '\n' < VERSION])) + +# Initialize Autoconf +AC_PREREQ(2.60) + +AC_INIT([libXcomp], [nxcomp_version], [https://github.com/ArcticaProject/nx-libs/issues]) +AC_CONFIG_AUX_DIR([build-aux]) +AC_PROG_CXX +AC_CONFIG_SRCDIR([Makefile.am]) +AC_CONFIG_HEADERS([config.h]) +AC_CONFIG_MACRO_DIR([m4]) + +AM_INIT_AUTOMAKE([foreign no-dist-gzip dist-xz]) + +# Initialize libtool +AC_PROG_LIBTOOL + +COMP_VERSION=nxcomp_version +AC_SUBST([COMP_VERSION]) + +LT_COMP_VERSION=[`echo $COMP_VERSION | sed -r -e 's/^([0-9]+\.[0-9]+\.[0-9]+).*$/\1/' -e 's/\./:/g'`] +AC_SUBST([LT_COMP_VERSION]) + +# Silence warning: ar: 'u' modifier ignored since 'D' is the default +AC_SUBST(AR_FLAGS, [cr]) + +# Upstream's pkg.m4 (since 0.27) offers this now, but define our own +# compatible version in case the local version of pkgconfig isn't new enough. +# https://bugs.freedesktop.org/show_bug.cgi?id=48743 +m4_ifdef([PKG_INSTALLDIR], [PKG_INSTALLDIR], + [AC_ARG_WITH([pkgconfigdir], + [AS_HELP_STRING([--with-pkgconfigdir], + [install directory for nxcomp.pc pkg-config file])], + [],[with_pkgconfigdir='$(libdir)/pkgconfig']) + AC_SUBST([pkgconfigdir], [${with_pkgconfigdir}])]) + +PKG_CHECK_MODULES([JPEG], [libjpeg], [], [LIBJPEG_FALLBACK_CHECK]) +PKG_CHECK_MODULES([PNG], [libpng]) +PKG_CHECK_MODULES([Z], [zlib]) + +AC_LANG([C++]) +NX_COMPILER_BRAND +NX_DEFAULT_OPTIONS + +NX_BUILD_ON_CYGWIN32 +NX_BUILD_ON_AMD64 +NX_BUILD_ON_DARWIN +NX_BUILD_ON_SUN +NX_BUILD_ON_FreeBSD + +# Build PIC libraries. + +if test "$CYGWIN32" != yes -a "$DARWIN" != yes; then + CXXFLAGS="$CXXFLAGS -fPIC" + CFLAGS="$CFLAGS -fPIC" +fi + +# On FreeBSD search libraries and includes under /usr/local. + +if test "$FreeBSD" = yes; then + LIBS="$LIBS -L/usr/local/lib" + CPPFLAGS="$CPPFLAGS -I/usr/local/include" +fi + +AX_PTHREAD([], AC_MSG_ERROR([no POSIX threads support detected])) + +# If in_addr_t is not defined use unsigned int. +AC_CHECK_TYPES([in_addr_t], [], [], [[#include <netinet/in.h>]]) + +AC_ARG_ENABLE([cxx11], + [AS_HELP_STRING([--enable-cxx11], + [enable optional features requiring C++11 support (disabled by default)])], + [AS_IF([test x$enableval = xyes], + [AX_CXX_COMPILE_STDCXX_11([], [mandatory])])]) + +# Check if std::put_time is available. +AC_MSG_CHECKING([if std::put_time is available]) +AC_COMPILE_IFELSE([AC_LANG_PROGRAM( +[[ +#include <iomanip> +#include <ctime> +]], +[[ +std::time_t t = std::time(NULL); +std::tm tm = *std::localtime(&t); +(void) std::put_time(&tm, "%c"); +]])], + [AC_MSG_RESULT([yes]) + AC_DEFINE(HAVE_STD_PUT_TIME, [1], + [Use std::put_time to format times, must be made available by the compiler if turned on.])], + [AC_MSG_RESULT([no])]) + +AC_ARG_ENABLE([debug], + [AS_HELP_STRING([--enable-debug], + [enable to get info session log output (disabled by default)])], + [AS_IF([test x$enableval = xyes], + [AC_DEFINE(INFO, 1, [Define this to get info session log output.]) + info_messages=yes])]) + +AC_ARG_ENABLE([valgrind], + [AS_HELP_STRING([--enable-valgrind], + [enable for extra valgrind hacks (disabled by default)])], + [AS_IF([test x$enableval = xyes], + [AC_DEFINE(VALGRIND, 1, [Define this for extra valgrind hacks.]) + valgrind_hacks=yes])]) + +AC_CONFIG_FILES([ +Makefile +src/Makefile +test/Makefile +nxcomp.pc +]) + +AC_OUTPUT |