mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-12-01 07:04:10 +01:00
configure: Add sanity checking for environment variables
Passing in environment variables incompatible with the compiler may cause other parts of the configure script to fail in hard to understand ways, so we abort early.
This commit is contained in:
parent
c5ef2dc448
commit
ccd7c0b0e6
1 changed files with 30 additions and 2 deletions
32
configure
vendored
32
configure
vendored
|
@ -47,6 +47,7 @@ CC=${CC:-cc}
|
||||||
CXX=${CXX:-c++}
|
CXX=${CXX:-c++}
|
||||||
CFLAGS=${CFLAGS:--g -O2}
|
CFLAGS=${CFLAGS:--g -O2}
|
||||||
CPPFLAGS=${CPPFLAGS:-}
|
CPPFLAGS=${CPPFLAGS:-}
|
||||||
|
CXXFLAGS_for_sh=${CXXFLAGS:-${CFLAGS}}
|
||||||
CXXFLAGS=${CXXFLAGS:-\$(CFLAGS)}
|
CXXFLAGS=${CXXFLAGS:-\$(CFLAGS)}
|
||||||
LDFLAGS=${LDFLAGS:-}
|
LDFLAGS=${LDFLAGS:-}
|
||||||
XAPIAN_CONFIG=${XAPIAN_CONFIG:-xapian-config}
|
XAPIAN_CONFIG=${XAPIAN_CONFIG:-xapian-config}
|
||||||
|
@ -269,6 +270,35 @@ dependencies are available:
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
errors=0
|
errors=0
|
||||||
|
printf "int main(void){return 0;}\n" > minimal.c
|
||||||
|
|
||||||
|
printf "Sanity checking C compilation environment... "
|
||||||
|
if ${CC} ${CFLAGS} ${CPPFLAGS} minimal.c ${LDFLAGS} -o minimal > /dev/null 2>&1
|
||||||
|
then
|
||||||
|
printf "OK.\n"
|
||||||
|
else
|
||||||
|
printf "Fail.\n"
|
||||||
|
errors=$((errors + 1))
|
||||||
|
fi
|
||||||
|
|
||||||
|
printf "Sanity checking C++ compilation environment... "
|
||||||
|
if ${CXX} ${CXXFLAGS_for_sh} ${CPPFLAGS} minimal.c ${LDFLAGS} -o minimal > /dev/null 2>&1
|
||||||
|
then
|
||||||
|
printf "OK.\n"
|
||||||
|
else
|
||||||
|
printf "Fail.\n"
|
||||||
|
errors=$((errors + 1))
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ $errors -gt 0 ]; then
|
||||||
|
cat <<EOF
|
||||||
|
*** Error: Initial sanity checking of environment failed. Please try
|
||||||
|
running configure in a clean environment, and if the problem persists,
|
||||||
|
report a bug.
|
||||||
|
EOF
|
||||||
|
rm -f minimal minimal.c
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
if pkg-config --version > /dev/null 2>&1; then
|
if pkg-config --version > /dev/null 2>&1; then
|
||||||
have_pkg_config=1
|
have_pkg_config=1
|
||||||
|
@ -690,8 +720,6 @@ else
|
||||||
fi
|
fi
|
||||||
rm -f compat/check_asctime
|
rm -f compat/check_asctime
|
||||||
|
|
||||||
printf "int main(void){return 0;}\n" > minimal.c
|
|
||||||
|
|
||||||
printf "Checking for rpath support... "
|
printf "Checking for rpath support... "
|
||||||
if ${CC} -Wl,--enable-new-dtags -Wl,-rpath,/tmp/ -o minimal minimal.c >/dev/null 2>&1
|
if ${CC} -Wl,--enable-new-dtags -Wl,-rpath,/tmp/ -o minimal minimal.c >/dev/null 2>&1
|
||||||
then
|
then
|
||||||
|
|
Loading…
Reference in a new issue