From 6184f4153fce2e77898c9a9c0f316ac19490fd6b Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Wed, 21 Sep 2016 10:45:32 +0200 Subject: Avoid running $(CXX) during build to obtain header file paths This reduces the build time somewhat and is particularly noticeable during rebuilds with few code changes. (cherry picked from commit fc3e1337be1c6935ab58bd13520f97a535cf70cc) --- configure.ac | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'configure.ac') diff --git a/configure.ac b/configure.ac index 8277d9f..1905e93 100644 --- a/configure.ac +++ b/configure.ac @@ -1039,6 +1039,18 @@ fi AC_SUBST(SYSINCLUDES) AC_SUBST(CXX_SYSINCLUDES) +# Obtain some C++ header file paths. This is used to make a local +# copy of those headers in Makerules. +if test -n "$CXX"; then + find_cxx_header () { + echo "#include <$1>" | $CXX -M -MP -x c++ - | sed -n "/$1:/{s/:\$//;p}" + } + CXX_CSTDLIB_HEADER="$(find_cxx_header cstdlib)" + CXX_CMATH_HEADER="$(find_cxx_header cmath)" +fi +AC_SUBST(CXX_CSTDLIB_HEADER) +AC_SUBST(CXX_CMATH_HEADER) + # Test if LD_LIBRARY_PATH contains the notation for the current directory # since this would lead to problems installing/building glibc. # LD_LIBRARY_PATH contains the current directory if one of the following -- cgit v1.1