Commit abf6eb27 authored by Jolien Creighton's avatar Jolien Creighton

modified build system to reduce reliance on pkg-config

Original: 25beb73c29476527b47ae0f8ebb75fcbabaae114
parent 7145ff5d
...@@ -25,7 +25,12 @@ LALSUITE_ENABLE_LALPULSAR ...@@ -25,7 +25,12 @@ LALSUITE_ENABLE_LALPULSAR
LALSUITE_ENABLE_LALINFERENCE LALSUITE_ENABLE_LALINFERENCE
LALSUITE_ENABLE_LALAPPS LALSUITE_ENABLE_LALAPPS
# determine subdirectories to configure/build # directories of top-level build and source
lalsuite_abs_top_builddir="`pwd`"
#lalsuite_top_builddir='$(top_builddir)/..'
lalsuite_top_srcdir='$(top_srcdir)/..'
# configure a lalsuite package
AC_DEFUN([lalsuite_config_subdir],[ AC_DEFUN([lalsuite_config_subdir],[
m4_pushdef([lowercase],m4_translit([[$1]], [A-Z], [a-z])) m4_pushdef([lowercase],m4_translit([[$1]], [A-Z], [a-z]))
m4_pushdef([uppercase],m4_translit([[$1]], [a-z], [A-Z])) m4_pushdef([uppercase],m4_translit([[$1]], [a-z], [A-Z]))
...@@ -33,24 +38,48 @@ AC_DEFUN([lalsuite_config_subdir],[ ...@@ -33,24 +38,48 @@ AC_DEFUN([lalsuite_config_subdir],[
# if $1 is enabled # if $1 is enabled
AS_IF([test "x${lowercase}" = xtrue],[ AS_IF([test "x${lowercase}" = xtrue],[
# add $1 build directory to PKG_CONFIG_PATH # export precious environment variables
LALSUITE_ADD_PATH(PKG_CONFIG_PATH,"`pwd`/lowercase") uppercase[]_LIBS="${lalsuite_abs_top_builddir}/lowercase/src/lib[]lowercase.la"
export PKG_CONFIG_PATH uppercase[]_CFLAGS="-I${lalsuite_abs_top_builddir}/lowercase/include"
uppercase[]_DATA_PATH="${lalsuite_top_srcdir}/lowercase/test"
uppercase[]_OCTAVE_PATH="${lalsuite_abs_top_builddir}/lowercase/octave"
uppercase[]_PYTHON_PATH="${lalsuite_abs_top_builddir}/lowercase/python"
export uppercase[]_LIBS uppercase[]_CFLAGS
export uppercase[]_DATA_PATH uppercase[]_OCTAVE_PATH uppercase[]_PYTHON_PATH
# configure $1 # configure $1
AC_CONFIG_SUBDIRS(lowercase) AC_CONFIG_SUBDIRS(lowercase)
# set enable/disable string # set enable string
uppercase[]_ENABLE_VAL=ENABLED uppercase[]_ENABLE_VAL=ENABLED
],[ ],[
# set disable string
uppercase[]_ENABLE_VAL=DISABLED uppercase[]_ENABLE_VAL=DISABLED
]) ])
m4_popdef([lowercase]) m4_popdef([lowercase])
m4_popdef([uppercase]) m4_popdef([uppercase])
]) ])
lalsuite_config_subdir([doxygen])
lalsuite_config_subdir([lal]) # doxygen, lal, and lalsupport are always configured
AC_CONFIG_SUBDIRS(doxygen)
AC_CONFIG_SUBDIRS(lal)
LAL_LIBS="${lalsuite_abs_top_builddir}/lal/lib/lal/liblal.la"
LAL_CFLAGS="-I${lalsuite_abs_top_builddir}/lal/include"
LAL_DATA_PATH="${lalsuite_top_srcdir}/lal/test"
LAL_OCTAVE_PATH="${lalsuite_abs_top_builddir}/lal/octave"
LAL_PYTHON_PATH="${lalsuite_abs_top_builddir}/lal/python"
LALSUPPORT_LIBS="${lalsuite_abs_top_builddir}/lal/lib/lalsupport/src/liblalsupport.la"
LALSUPPORT_CFLAGS="-I${lalsuite_abs_top_builddir}/lal/include"
LALSUPPORT_DATA_PATH="${LAL_DATA_PATH}"
LALSUPPORT_OCTAVE_PATH="${LAL_OCTAVE_PATH}"
LALSUPPORT_PYTHON_PATH="${LAL_PYTHON_PATH}"
LALSUITE_BUILD="true"
export LALSUITE_BUILD
export LAL_LIBS LAL_CFLAGS LAL_DATA_PATH LAL_OCTAVE_PATH LAL_PYTHON_PATH
export LALSUPPORT_LIBS LALSUPPORT_CFLAGS LALSUPPORT_DATA_PATH LALSUPPORT_OCTAVE_PATH LALSUPPORT_PYTHON_PATH
# configure optional packages
lalsuite_config_subdir([lalframe]) lalsuite_config_subdir([lalframe])
lalsuite_config_subdir([lalmetaio]) lalsuite_config_subdir([lalmetaio])
lalsuite_config_subdir([lalxml]) lalsuite_config_subdir([lalxml])
...@@ -61,7 +90,14 @@ lalsuite_config_subdir([lalinspiral]) ...@@ -61,7 +90,14 @@ lalsuite_config_subdir([lalinspiral])
lalsuite_config_subdir([lalstochastic]) lalsuite_config_subdir([lalstochastic])
lalsuite_config_subdir([lalpulsar]) lalsuite_config_subdir([lalpulsar])
lalsuite_config_subdir([lalinference]) lalsuite_config_subdir([lalinference])
lalsuite_config_subdir([lalapps])
# optionally configure lalapps
AS_IF([test "x$lalapps" = xtrue],[
AC_CONFIG_SUBDIRS(lalapps)
LALAPPS_ENABLE_VAL=ENABLED
],[
LALAPPS_ENABLE_VAL=DISABLED
])
AC_SUBST([ac_configure_args]) AC_SUBST([ac_configure_args])
AC_OUTPUT AC_OUTPUT
......
# -*- mode: autoconf; -*- # -*- mode: autoconf; -*-
# lalsuite_build.m4 - top level build macros # lalsuite_build.m4 - top level build macros
# #
# serial 88 # serial 89
# not present in older versions of pkg.m4 # not present in older versions of pkg.m4
m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
# forbid LALSUITE_... from appearing in output (./configure) # forbid LALSUITE_... from appearing in output (./configure)
m4_pattern_forbid([^_?LALSUITE_[A-Z_]+$]) #m4_pattern_forbid([^_?LALSUITE_[A-Z_]+$])
# list of user variables; see section 4.8.1 of the Autoconf manual # list of user variables; see section 4.8.1 of the Autoconf manual
m4_define([uvar_list],[CPPFLAGS CFLAGS CXXFLAGS FCFLAGS FFLAGS LDFLAGS]) m4_define([uvar_list],[CPPFLAGS CFLAGS CXXFLAGS FCFLAGS FFLAGS LDFLAGS])
...@@ -16,6 +16,13 @@ m4_define([uvar_list],[CPPFLAGS CFLAGS CXXFLAGS FCFLAGS FFLAGS LDFLAGS]) ...@@ -16,6 +16,13 @@ m4_define([uvar_list],[CPPFLAGS CFLAGS CXXFLAGS FCFLAGS FFLAGS LDFLAGS])
m4_define([uvar_orig_prefix],[lalsuite_uvar_]) m4_define([uvar_orig_prefix],[lalsuite_uvar_])
m4_define([uvar_prefix],uvar_orig_prefix) m4_define([uvar_prefix],uvar_orig_prefix)
AC_DEFUN([LALSUITE_ARG_VAR],[
AC_ARG_VAR(LAL_DATA_PATH,[Location of LAL data files])
AC_ARG_VAR(LAL_OCTAVE_PATH,[Location of LAL octave files])
AC_ARG_VAR(LAL_PYTHON_PATH,[Location of LAL python files])
AC_ARG_VAR(LALSUITE_BUILD,[Set if part of lalsuite build])
])
m4_append([AC_INIT],[ m4_append([AC_INIT],[
# just after AC_INIT: # just after AC_INIT:
# save user-supplied values of user variables # save user-supplied values of user variables
...@@ -444,94 +451,35 @@ AC_DEFUN([LALSUITE_CHECK_LIB],[ ...@@ -444,94 +451,35 @@ AC_DEFUN([LALSUITE_CHECK_LIB],[
# - arg 2: minimum version required # - arg 2: minimum version required
# - arg 3: library function to check for # - arg 3: library function to check for
# - arg 4: library header to check for # - arg 4: library header to check for
AC_REQUIRE([PKG_PROG_PKG_CONFIG])
m4_pushdef([lowercase],m4_translit([[$1]], [A-Z], [a-z])) m4_pushdef([lowercase],m4_translit([[$1]], [A-Z], [a-z]))
m4_pushdef([uppercase],m4_translit([[$1]], [a-z], [A-Z])) m4_pushdef([uppercase],m4_translit([[$1]], [a-z], [A-Z]))
PKG_CHECK_MODULES(uppercase, [lowercase >= $2], [lowercase="true"], [lowercase="false"])
# build pkg-config library name and version PKG_CHECK_VAR(uppercase[]_DATA_PATH, [lowercase >= $2], uppercase[]_DATA_PATH,,)
lal_pkg="lowercase[] >= $2" PKG_CHECK_VAR(uppercase[]_OCTAVE_PATH, [lowercase >= $2], uppercase[]_OCTAVE_PATH,,)
PKG_CHECK_VAR(uppercase[]_PYTHON_PATH, [lowercase >= $2], uppercase[]_PYTHON_PATH,,)
# substitute required library version in pkg-config files if test "$lowercase" = "true"; then
AC_SUBST(uppercase[]_VERSION,[$2]) LALSUITE_ADD_FLAGS([C],$[]uppercase[]_CFLAGS,$[]uppercase[]_LIBS)
LALSUITE_ADD_PATH(LAL_DATA_PATH,"$[]uppercase[]_DATA_PATH")
# set up pkg-config environment LALSUITE_ADD_PATH(LAL_OCTAVE_PATH,"$[]uppercase[]_OCTAVE_PATH")
export PKG_CONFIG_PATH LALSUITE_ADD_PATH(LAL_PYTHON_PATH,"$[]uppercase[]_PYTHON_PATH")
AS_UNSET([PKG_CONFIG_DISABLE_UNINSTALLED]) fi
AS_UNSET([PKG_CONFIG_ALLOW_SYSTEM_CFLAGS]) if test "$LALSUITE_BUILD" = "true"; then
AS_UNSET([PKG_CONFIG_ALLOW_SYSTEM_LIBS]) if test "$lowercase" = "false"; then
# should never get here: bug in build system
# check for $1 AC_MSG_ERROR([could not find the $1 library])
AC_MSG_CHECKING([for ${lal_pkg}]) fi
lal_pkg_errors=`${PKG_CONFIG} --print-errors --cflags "${lal_pkg}" 2>&1 >/dev/null` else
AS_IF([test "x${lal_pkg_errors}" = x],[ AC_CHECK_LIB(lowercase,[$3],,[AC_MSG_ERROR([could not find the $1 library])])
lowercase=true AC_CHECK_HEADERS([$4],,[AC_MSG_ERROR([could not find the $4 header])])
AC_MSG_RESULT([yes]) if test "$1" != "LALSupport"; then
LALSUITE_HEADER_LIBRARY_MISMATCH_CHECK([$1])
# define that we have $1 in the configuration header fi
AC_DEFINE([HAVE_LIB]uppercase,[1],[Define to 1 if you have the $1 library]) fi
AC_DEFINE([HAVE_LIB]uppercase,[1],[Define to 1 if you have the $1 library])
# add $1 to list of LALSuite libraries # add $1 to list of LALSuite libraries
lalsuite_libs="${lalsuite_libs} lowercase" lalsuite_libs="${lalsuite_libs} lowercase"
lowercase="true"
# add $1 compiler and linker flags to CPPFLAGS/CFLAGS/LDFLAGS/LIBS LALSUITE_ENABLE_MODULE($1)
LALSUITE_ADD_FLAGS([C],[`${PKG_CONFIG} --cflags "${lal_pkg}"`],[`${PKG_CONFIG} --libs "${lal_pkg}"`])
# add system include flags to LAL_SYSTEM_INCLUDES: get $1 include flags with system flags,
# then add any flags not already in CPPFLAGS or LAL_SYSTEM_INCLUDES to LAL_SYSTEM_INCLUDES
PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1
export PKG_CONFIG_ALLOW_SYSTEM_CFLAGS
for flag in `${PKG_CONFIG} --cflags-only-I "${lal_pkg}"`; do
AS_CASE([" ${CPPFLAGS} ${LAL_SYSTEM_INCLUDES} "],
[*" ${flag} "*],[:],
[LAL_SYSTEM_INCLUDES="${LAL_SYSTEM_INCLUDES} ${flag}"]
)
done
AS_UNSET([PKG_CONFIG_ALLOW_SYSTEM_CFLAGS])
AC_SUBST([LAL_SYSTEM_INCLUDES])
# add $1 data path to LAL_DATA_PATH
LALSUITE_ADD_PATH(LAL_DATA_PATH,`${PKG_CONFIG} --variable=LAL_DATA_PATH "${lal_pkg}"`)
AC_SUBST([LAL_DATA_PATH])
# add $1 Octave extension path to LAL_OCTAVE_PATH
LALSUITE_ADD_PATH(LAL_OCTAVE_PATH,`${PKG_CONFIG} --variable=LAL_OCTAVE_PATH "${lal_pkg}"`)
AC_SUBST([LAL_OCTAVE_PATH])
# add $1 Python extension path to LAL_PYTHON_PATH
LALSUITE_ADD_PATH(LAL_PYTHON_PATH,`${PKG_CONFIG} --variable=LAL_PYTHON_PATH "${lal_pkg}"`)
AC_SUBST([LAL_PYTHON_PATH])
AS_IF([${PKG_CONFIG} --uninstalled "${lal_pkg}"],[
# if $1 is not installed, add .pc.in file to ./config.status dependencies
lal_pkg_pcin_dir=`${PKG_CONFIG} --variable=abs_top_srcdir "${lal_pkg}"`
lal_pkg_pcin_file="${lal_pkg_pcin_dir}/lowercase[]-uninstalled.pc.in"
AS_IF([test ! -f "${lal_pkg_pcin_file}"],[
AC_MSG_ERROR([could not find file ${lal_pkg_pcin_file}])
])
CONFIG_STATUS_DEPENDENCIES="${CONFIG_STATUS_DEPENDENCIES} ${lal_pkg_pcin_file}"
AC_SUBST([CONFIG_STATUS_DEPENDENCIES])
],[
# if $1 is installed, check linking, headers, and VCS info consistency
AC_CHECK_LIB(lowercase,[$3],[:],[AC_MSG_ERROR([could not link against the $1 library])])
AC_CHECK_HEADERS([$4],[:],[AC_MSG_ERROR([could not find the $1 header $4])])
AS_IF([test x`${PKG_CONFIG} --variable=no_header_library_mismatch_check "${lal_pkg}"` != xyes],[
LALSUITE_HEADER_LIBRARY_MISMATCH_CHECK([$1])
])
])
],[
lowercase=false
AC_MSG_RESULT([no])
AC_MSG_ERROR([could not find the $1 library
${lal_pkg_errors}
])
])
m4_popdef([lowercase]) m4_popdef([lowercase])
m4_popdef([uppercase]) m4_popdef([uppercase])
# end $0 # end $0
......
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
# serial 1 (pkg-config-0.24)
#
# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# PKG_PROG_PKG_CONFIG([MIN-VERSION])
# ----------------------------------
AC_DEFUN([PKG_PROG_PKG_CONFIG],
[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
fi
if test -n "$PKG_CONFIG"; then
_pkg_min_version=m4_default([$1], [0.9.0])
AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
PKG_CONFIG=""
fi
fi[]dnl
])# PKG_PROG_PKG_CONFIG
# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
#
# Check to see whether a particular set of modules exists. Similar
# to PKG_CHECK_MODULES(), but does not set variables or print errors.
#
# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
# only at the first occurence in configure.ac, so if the first place
# it's called might be skipped (such as if it is within an "if", you
# have to call PKG_CHECK_EXISTS manually
# --------------------------------------------------------------
AC_DEFUN([PKG_CHECK_EXISTS],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
if test -n "$PKG_CONFIG" && \
AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
m4_default([$2], [:])
m4_ifvaln([$3], [else
$3])dnl
fi])
# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
# ---------------------------------------------
m4_define([_PKG_CONFIG],
[if test -n "$$1"; then
pkg_cv_[]$1="$$1"
elif test -n "$PKG_CONFIG"; then
PKG_CHECK_EXISTS([$3],
[pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes ],
[pkg_failed=yes])
else
pkg_failed=untried
fi[]dnl
])# _PKG_CONFIG
# _PKG_SHORT_ERRORS_SUPPORTED
# -----------------------------
AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
_pkg_short_errors_supported=yes
else
_pkg_short_errors_supported=no
fi[]dnl
])# _PKG_SHORT_ERRORS_SUPPORTED
# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
# [ACTION-IF-NOT-FOUND])
#
#
# Note that if there is a possibility the first call to
# PKG_CHECK_MODULES might not happen, you should be sure to include an
# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
#
#
# --------------------------------------------------------------
AC_DEFUN([PKG_CHECK_MODULES],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
pkg_failed=no
AC_MSG_CHECKING([for $1])
_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
_PKG_CONFIG([$1][_LIBS], [libs], [$2])
m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
and $1[]_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.])
if test $pkg_failed = yes; then
AC_MSG_RESULT([no])
_PKG_SHORT_ERRORS_SUPPORTED
if test $_pkg_short_errors_supported = yes; then
$1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
else
$1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
m4_default([$4], [AC_MSG_ERROR(
[Package requirements ($2) were not met:
$$1_PKG_ERRORS
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
_PKG_TEXT])[]dnl
])
elif test $pkg_failed = untried; then
AC_MSG_RESULT([no])
m4_default([$4], [AC_MSG_FAILURE(
[The pkg-config script could not be found or is too old. Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full
path to pkg-config.
_PKG_TEXT
To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
])
else
$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
AC_MSG_RESULT([yes])
$3
fi[]dnl
])# PKG_CHECK_MODULES
# PKG_INSTALLDIR(DIRECTORY)
# -------------------------
# Substitutes the variable pkgconfigdir as the location where a module
# should install pkg-config .pc files. By default the directory is
# $libdir/pkgconfig, but the default can be changed by passing
# DIRECTORY. The user can override through the --with-pkgconfigdir
# parameter.
AC_DEFUN([PKG_INSTALLDIR],
[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
m4_pushdef([pkg_description],
[pkg-config installation directory @<:@]pkg_default[@:>@])
AC_ARG_WITH([pkgconfigdir],
[AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
[with_pkgconfigdir=]pkg_default)
AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
m4_popdef([pkg_default])
m4_popdef([pkg_description])
]) dnl PKG_INSTALLDIR
# PKG_NOARCH_INSTALLDIR(DIRECTORY)
# -------------------------
# Substitutes the variable noarch_pkgconfigdir as the location where a
# module should install arch-independent pkg-config .pc files. By
# default the directory is $datadir/pkgconfig, but the default can be
# changed by passing DIRECTORY. The user can override through the
# --with-noarch-pkgconfigdir parameter.
AC_DEFUN([PKG_NOARCH_INSTALLDIR],
[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
m4_pushdef([pkg_description],
[pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
AC_ARG_WITH([noarch-pkgconfigdir],
[AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
[with_noarch_pkgconfigdir=]pkg_default)
AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
m4_popdef([pkg_default])
m4_popdef([pkg_description])
]) dnl PKG_NOARCH_INSTALLDIR
# PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
# -------------------------------------------
# Retrieves the value of the pkg-config variable for the given module.
AC_DEFUN([PKG_CHECK_VAR],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
_PKG_CONFIG([$1], [variable="][$3]["], [$2])
AS_VAR_COPY([$1], [pkg_cv_][$1])
AS_VAR_IF([$1], [""], [$5], [$4])dnl
])# PKG_CHECK_VAR
../../gnuscripts/pkg.m4
\ No newline at end of file
...@@ -2,7 +2,9 @@ prefix=@prefix@ ...@@ -2,7 +2,9 @@ prefix=@prefix@
exec_prefix=@exec_prefix@ exec_prefix=@exec_prefix@
libdir=@libdir@ libdir=@libdir@
includedir=@includedir@ includedir=@includedir@
no_header_library_mismatch_check=yes LALSUPPORT_DATA_PATH=@datadir@/@PACKAGE@
LALSUPPORT_OCTAVE_PATH=@octexecdir@
LALSUPPORT_PYTHON_PATH=@pyexecdir@
Name: LALSupport Name: LALSupport
Description: LSC Algorithm Support Library (useful but non-conforming routines) Description: LSC Algorithm Support Library (useful but non-conforming routines)
......
...@@ -55,6 +55,8 @@ AM_INIT_AUTOMAKE([1.11 foreign color-tests parallel-tests -Wno-unsupported]) ...@@ -55,6 +55,8 @@ AM_INIT_AUTOMAKE([1.11 foreign color-tests parallel-tests -Wno-unsupported])
AC_CANONICAL_HOST AC_CANONICAL_HOST
LALSUITE_ARG_VAR
LALSUITE_CHECK_GIT_REPO LALSUITE_CHECK_GIT_REPO
LALSUITE_DISTCHECK_CONFIGURE_FLAGS LALSUITE_DISTCHECK_CONFIGURE_FLAGS
......
../../gnuscripts/pkg.m4
\ No newline at end of file
...@@ -25,6 +25,8 @@ AM_INIT_AUTOMAKE([1.11 foreign subdir-objects color-tests parallel-tests]) ...@@ -25,6 +25,8 @@ AM_INIT_AUTOMAKE([1.11 foreign subdir-objects color-tests parallel-tests])
AC_CANONICAL_HOST AC_CANONICAL_HOST
LALSUITE_ARG_VAR
LALSUITE_CHECK_GIT_REPO LALSUITE_CHECK_GIT_REPO
LALSUITE_DISTCHECK_CONFIGURE_FLAGS LALSUITE_DISTCHECK_CONFIGURE_FLAGS
......
../../gnuscripts/pkg.m4
\ No newline at end of file
...@@ -3,9 +3,9 @@ exec_prefix=@exec_prefix@ ...@@ -3,9 +3,9 @@ exec_prefix=@exec_prefix@
libdir=@libdir@ libdir=@libdir@
includedir=@includedir@ includedir=@includedir@
datarootdir=@datarootdir@ datarootdir=@datarootdir@
LAL_DATA_PATH=@datadir@/@PACKAGE@:@LAL_DATA_PATH@ LALBURST_DATA_PATH=@datadir@/@PACKAGE@
LAL_OCTAVE_PATH=@octexecdir@:@LAL_OCTAVE_PATH@ LALBURST_OCTAVE_PATH=@octexecdir@
LAL_PYTHON_PATH=@pyexecdir@:@LAL_PYTHON_PATH@ LALBURST_PYTHON_PATH=@pyexecdir@
Name: LALBurst Name: LALBurst
Description: LAL Burst Library Support Description: LAL Burst Library Support
......
...@@ -27,6 +27,8 @@ AM_INIT_AUTOMAKE([1.11 foreign subdir-objects color-tests parallel-tests]) ...@@ -27,6 +27,8 @@ AM_INIT_AUTOMAKE([1.11 foreign subdir-objects color-tests parallel-tests])
AC_CANONICAL_HOST AC_CANONICAL_HOST
LALSUITE_ARG_VAR
LALSUITE_CHECK_GIT_REPO LALSUITE_CHECK_GIT_REPO
LALSUITE_DISTCHECK_CONFIGURE_FLAGS LALSUITE_DISTCHECK_CONFIGURE_FLAGS
...@@ -109,10 +111,16 @@ LALSUITE_ADD_FLAGS([C],[${GLIB_CFLAGS}],[${GLIB_LIBS}]) ...@@ -109,10 +111,16 @@ LALSUITE_ADD_FLAGS([C],[${GLIB_CFLAGS}],[${GLIB_LIBS}])
AC_CHECK_LIB([glib-2.0],[g_sequence_new],,[AC_MSG_ERROR([could not find the glib library])]) AC_CHECK_LIB([glib-2.0],[g_sequence_new],,[AC_MSG_ERROR([could not find the glib library])])
AC_CHECK_HEADERS([glib.h],,[AC_MSG_ERROR([could not find the glib.h header])]) AC_CHECK_HEADERS([glib.h],,[AC_MSG_ERROR([could not find the glib.h header])])
# check for metaio
PKG_CHECK_MODULES([METAIO],[libmetaio],[true],[false])
LALSUITE_ADD_FLAGS([C],[${METAIO_CFLAGS}],[${METAIO_LIBS}])
AC_CHECK_LIB([metaio],[MetaioOpen],,[AC_MSG_ERROR([could not find the metaio library])])
# check for lal libraries and headers # check for lal libraries and headers
LALSUITE_CHECK_LIB([LAL],[6.12.0],[LALVersion],[lal/LALStdio.h]) LALSUITE_CHECK_LIB([LAL],[6.12.0],[LALVersion],[lal/LALStdio.h])
LALSUITE_CHECK_LIB([LALSupport],[6.12.0],[XLALCacheImport],[lal/LALCache.h]) LALSUITE_CHECK_LIB([LALSupport],[6.12.0],[XLALCacheImport],[lal/LALCache.h])
LALSUITE_CHECK_LIB([LALMetaIO],[1.2.0],[XLALCreateMetaTableDir],[lal/LIGOLwXMLRead.h]) LALSUITE_CHECK_LIB([LALMetaIO],[1.2.0],[XLALCreateMetaTableDir],[lal/LIGOLwXMLRead.h])
LALSUITE_CHECK_LIB([LALSimulation],[1.1.0],[XLALSimDetectorStrainREAL8TimeSeries],[lal/LALSimulation.h])
LALSUITE_CHECK_LIB([LALBurst],[1.2.0],[XLALEPSearch],[lal/EPSearch.h]) LALSUITE_CHECK_LIB([LALBurst],[1.2.0],[XLALEPSearch],[lal/EPSearch.h])
# configure SWIG wrapping modules # configure SWIG wrapping modules
......
../../gnuscripts/pkg.m4
\ No newline at end of file
...@@ -3,9 +3,9 @@ exec_prefix=@exec_prefix@ ...@@ -3,9 +3,9 @@ exec_prefix=@exec_prefix@
libdir=@libdir@ libdir=@libdir@
includedir=@includedir@ includedir=@includedir@
datarootdir=@datarootdir@ datarootdir=@datarootdir@
LAL_DATA_PATH=@datadir@/@PACKAGE@:@LAL_DATA_PATH@ LALDETCHAR_DATA_PATH=@datadir@/@PACKAGE@
LAL_OCTAVE_PATH=@octexecdir@:@LAL_OCTAVE_PATH@ LALDETCHAR_OCTAVE_PATH=@octexecdir@
LAL_PYTHON_PATH=@pyexecdir@:@LAL_PYTHON_PATH@ LADETCHARL_PYTHON_PATH=@pyexecdir@
Name: LALDetChar Name: LALDetChar
Description: LAL DetChar Library Support Description: LAL DetChar Library Support
......
...@@ -26,6 +26,8 @@ AM_INIT_AUTOMAKE([1.11 foreign subdir-objects color-tests parallel-tests]) ...@@ -26,6 +26,8 @@ AM_INIT_AUTOMAKE([1.11 foreign subdir-objects color-tests parallel-tests])
AC_CANONICAL_HOST AC_CANONICAL_HOST
LALSUITE_ARG_VAR
LALSUITE_CHECK_GIT_REPO LALSUITE_CHECK_GIT_REPO
LALSUITE_DISTCHECK_CONFIGURE_FLAGS LALSUITE_DISTCHECK_CONFIGURE_FLAGS
......
../../gnuscripts/pkg.m4
\ No newline at end of file
...@@ -3,9 +3,9 @@ exec_prefix=@exec_prefix@ ...@@ -3,9 +3,9 @@ exec_prefix=@exec_prefix@
libdir=@libdir@ libdir=@libdir@
includedir=@includedir@ includedir=@includedir@