Some older versions of gcc give "all.hpp: linker input file unused because linking not done" otherwise, because they don't realize files named *.hpp are headers. Reported-by: Wayne Scott <wsc9tt@gmail.com>
30 lines
875 B
Text
30 lines
875 B
Text
. ./redoconf.rc
|
|
rc_include rc/CXX.rc
|
|
|
|
base="${1#rc/}"
|
|
src="${base%.hpp.precompiled.rc}"
|
|
|
|
# Check whether the compiler supports forcing
|
|
# the language type. Some versions of gcc
|
|
# need this in order to precompile headers
|
|
# named *.hpp.
|
|
x="-x${NL}c++-header"
|
|
if (appendln CXXFLAGS "$x" && rc_compile cxx nolink); then
|
|
rc_appendln CXXFLAGS_PCH_LANG "$x"
|
|
fi
|
|
|
|
# The existence of the specific gcc warning about
|
|
# precompiled headers is a pretty good indicator
|
|
# that they are supported in the way we expect.
|
|
rc_appendln CXXFLAGS "-Winvalid-pch"
|
|
if rc_compile cxx nolink; then
|
|
rc_appendln CXXFLAGS_PCH "-include$NL$src.hpp"
|
|
rc_appendln CXXFLAGS_PCH_FPIC "-include$NL$src.hpp.fpic"
|
|
|
|
rc_appendln PRE_CXX_TARGETS "$src.hpp.gch"
|
|
rc_appendln PRE_CXX_TARGETS_FPIC "$src.hpp.fpic.gch"
|
|
rc_save
|
|
else
|
|
echo "Precompiled C++ headers not supported." >&2
|
|
rc_undo
|
|
fi
|