metaio dependency handling in lalinference config
Starting from an otherwise "minimal" lalsuite build I had used for CW-only work so far, I wanted to add lalinference:
./configure --prefix=/home/dkeitel/programs//lalsuite-opt --enable-lalframe --disable-lalmetaio --enable-lalxml --disable-lalburst --enable-lalinspiral --enable-lalinference --enable-lalsimulation --enable-doxygen --enable-swig --enable-swig-python --enable-swig-octave CFLAGS=-O3 CC=gcc
This resulted in:
[...]
* LALFrame library support is ENABLED
* LALMetaIO library support is DISABLED
* LALSimulation library support is ENABLED
* LALBurst library support is DISABLED
* LALInspiral library support is DISABLED
* LALPulsar library support is ENABLED
* LALInference library support is DISABLED
* LALApps library support is ENABLED
* Doxygen documentation is ENABLED
[...]
I couldn't figure out from either the top-level or lalinference-level log why LALInference ended up disabled, but figured it'd have to do with dependencies, so tried enabling more one-by-one. Removing the -disable-lalmetaio:
./configure --prefix=/home/dkeitel/programs//lalsuite-opt --enable-lalframe --enable-lalxml --disable-lalburst --enable-lalinspiral --enable-lalinference --enable-lalsimulation --enable-doxygen --enable-swig --enable-swig-python --enable-swig-octave CFLAGS=-O3 CC=gcc
resulted in:
[...]
checking for LAL... yes
checking for LALSUPPORT... yes
checking for LALMETAIO... yes
checking for LALFRAME... yes
checking for LALSIMULATION... yes
checking for LALINSPIRAL... yes
checking for LALPULSAR... yes
checking for LALBURST... no
configure: error: could not find the LALBurst library
configure: error: ./configure failed for lalinference
and then changing to --enable-lalburst lead to a successfull configuration.
So the bug report is that metaio is apparently hard-required for LALInference, but disabling it doesn't lead to a clear error like disabling LALBurst does, but just to a much harder to understand comment-free disabling of LALInference.
@adam-mercer @duncanmmacleod Would it be easy enough to add some failure check?