Codebase list bambamc / 202df879-cc38-47d2-b96d-0d48119547ca/main configure.in
202df879-cc38-47d2-b96d-0d48119547ca/main

Tree @202df879-cc38-47d2-b96d-0d48119547ca/main (Download .tar.gz)

configure.in @202df879-cc38-47d2-b96d-0d48119547ca/mainraw · history · blame

AC_INIT(bambamc,0.0.50,[gt1@sanger.ac.uk],[bambamc],[http://www.sanger.ac.uk])
LIBRARY_VERSION=0:50:0
AC_CANONICAL_SYSTEM
AC_PROG_LIBTOOL

AM_CONFIG_HEADER(config.h)
AM_INIT_AUTOMAKE
AC_CONFIG_MACRO_DIR([m4])

# check for c99 compiler
CFLAGS_SAVE="${CFLAGS}"
CPPFLAGS_SAVE="${CPPFLAGS}"
CFLAGS=""
CPPFLAGS=""
AC_PROG_CC_C99
C99CFLAGS="${CFLAGS}"
C99CPPFLAGS="${CPPFLAGS}"
CFLAGS="${CFLAGS_SAVE}"
CPPFLAGS="${CPPFLAGS_SAVE}"

# AC_MSG_NOTICE([C99: :${C99CFLAGS}: :${C99CPPFLAGS}:])

AM_PROG_CC_C_O

AC_LANG_ASSERT([C])

AC_HEADER_STDC

PKG_PROG_PKG_CONFIG
PKG_CHECK_MODULES([zlib],[zlib >= 0],[zlibpkg=yes],[zlibpkg=no])

if [[ "${zlibpkg}" = "yes" ]] ; then
	PKG_CHECK_MODULES([zlib],[zlib >= 0])

	LIBSSAVE="${LIBS}"
	LIBS="${LIBS} ${zlib_LIBS}"
	CPPFLAGSSAVE="${CPPFLAGS}"
	CPPFLAGS="${CPPFLAGS} ${zlib_CFLAGS}"
        AC_MSG_CHECKING([whether we can compile a zlib program])
        AC_TRY_LINK([#include <zlib.h>
#include <string.h>
],[
	z_stream strm;
	memset ( &strm , 0, sizeof(z_stream) );
	strm.zalloc = Z_NULL;
	strm.zfree = Z_NULL;
	strm.opaque = Z_NULL;
	deflateInit(&strm,Z_DEFAULT_COMPRESSION);
	],[zlib=yes],[zlib=no])
        AC_MSG_RESULT([${zlib}])
	LIBS="${LIBSSAVE}"
	CPPFLAGS="${CPPFLAGSSAVE}"

	if [[ "$zlib" = "no" ]] ; then
		AC_MSG_ERROR([Required library zlib not found.]);
	else
		ZLIBREQ=zlib
		ZLIBCPPFLAGS="${zlib_CFLAGS}"
		ZLIBLIBS="${zlib_LIBS}"
		ZLIBPKGLBIS=
	fi
else
	AC_MSG_WARN([zlib pkgconfig file is not installed. Trying if -lz for LIBS is enough.])

	LIBSSAVE="${LIBS}"
	LIBS="${LIBS} -lz"
        AC_MSG_CHECKING([whether we can compile a zlib program])
        AC_TRY_LINK([#include <zlib.h>
#include <string.h>
],[
	z_stream strm;
	memset ( &strm , 0, sizeof(z_stream) );
	strm.zalloc = Z_NULL;
	strm.zfree = Z_NULL;
	strm.opaque = Z_NULL;
	deflateInit(&strm,Z_DEFAULT_COMPRESSION);
	],[zlib=yes],[zlib=no])
        AC_MSG_RESULT([${zlib}])
	LIBS="${LIBSSAVE}"

	if [[ "$zlib" = "no" ]] ; then
		AC_MSG_ERROR([Required library zlib not found.]);
	else
		ZLIBREQ=
		ZLIBCPPFLAGS=
		ZLIBLIBS="-lz"
		ZLIBPKGLIBS="-lz"
	fi
fi

if test "${CC}" = "gcc" ; then
	CPPFLAGS="${CPPFLAGS} -W -Wall"
fi
if test "${CC}" = "cl.exe" ; then
	CPPFLAGS="${CPPFLAGS} -W1" # -Wall
fi

AC_ARG_ENABLE(optimization,
       AS_HELP_STRING([--enable-optimization],[use compiler optimization (default yes)]),
        [optimization=${enableval}],[optimization=yes])
AC_ARG_ENABLE(debug,
        AS_HELP_STRING([--enable-debug],[use compiler debug flags (default no)]),
        [debug=${enableval}],[debug=no])
AC_ARG_ENABLE(profile,
        AS_HELP_STRING([--enable-profile],[use compiler profiling flags (default no)]),
        [profile=${enableval}],[profile=no])
AC_ARG_ENABLE(fast,
        AS_HELP_STRING([--enable-fast],[disable evaluation of assertions (default no)]),
        [fast=${enableval}],[fast=no])

if test "${fast}" = "yes" ; then
	CPPFLAGS="${CPPFLAGS} -DNDEBUG"
fi

if test "${debug}" = "yes" ; then
        CFLAGS="${CFLAGS} -g -O0 -rdynamic"
else
	if test "${profile}" = "yes" ; then
	        CFLAGS="${CFLAGS} -g -pg -rdynamic"
	else
		if test "${optimization}" = "yes" ; then
			case ${CC} in
				gcc)
					CFLAGS="${CFLAGS} -O3 -rdynamic"
					;;
				*-mingw32msvc-gcc)
					CFLAGS="${CFLAGS} -O3 -rdynamic"
					;;
				cl.exe)
					CFLAGS="${CFLAGS} -O2 -Ob2 -Ot -Oy"
					;;
			esac
		fi

	fi
fi

AC_CHECK_FUNC([_mkdir],[have_mkdir=yes],[have_mkdir=no])
AC_CHECK_HEADER([direct.h],[have_direct_h=yes],[have_direct_h=no])

if test "${have_mkdir}" = "yes" -a "${have_direct_h}" = "yes" ; then

AC_MSG_CHECKING([whether we can compile a program using _mkdir])
        AC_TRY_LINK([#include <direct.h>],[_mkdir("tmpdir");],[have_mkdir=yes],[have_mkdir=no])
        AC_MSG_RESULT([${have_mkdir}])
fi

if test "${have_mkdir}" = "yes" ; then
	HAVEWINDOWS_MKDIR="#define HAVEWINDOWS_MKDIR"
else
	HAVEWINDOWS_MKDIR=
fi

PACKAGE_NAME=${PACKAGE}
PACKAGE_VERSION=${VERSION}

AC_SUBST([PACKAGE_NAME])
AC_SUBST([PACKAGE_VERSION])
AC_SUBST([ZLIBCPPFLAGS])
AC_SUBST([ZLIBLIBS])
AC_SUBST([ZLIBPKGLIBS])
AC_SUBST([ZLIBREQ])
AC_SUBST([LIBRARY_VERSION])
AC_SUBST([HAVEWINDOWS_MKDIR])
AC_OUTPUT(Makefile src/Makefile ubuntu.sh bambamc.pc src/bambamc/BamBam_Config.h)