libstdc++: Fix run_doxygen for Doxygen 1.10 man page format

Doxygen switched from \fC to \fR in its man page output:
https://github.com/doxygen/doxygen/pull/10497

This breaks our script that expects \fC so change the regaulr expression
to work with either style.

libstdc++-v3/ChangeLog:

	* scripts/run_doxygen: Adjust sed pattern to match '\fR' for
	new man output that Doxygen 1.10 generates.

(cherry picked from commit c9cc1c850c)
This commit is contained in:
Jonathan Wakely 2024-04-25 13:24:56 +01:00
parent 47cac09307
commit bce15a5d7d
1 changed files with 5 additions and 1 deletions

View File

@ -294,7 +294,11 @@ $gxx $cppflags $cxxflags ${srcdir}/doc/doxygen/stdheader.cc -o ./stdheader || ex
problematic=`grep -E -l '#include <.*h>' [a-z]*.3` problematic=`grep -E -l '#include <.*h>' [a-z]*.3`
for f in $problematic; do for f in $problematic; do
# this is also slow, but safe and easy to debug # this is also slow, but safe and easy to debug
oldh=`sed -n '/fC#include </s/.*<\(.*\)>.*/\1/p' $f` oldh=`sed -n '/f[CR]#include </s/.*<\(.*\)>.*/\1/p' $f`
if [ "$oldh" == "" ]; then
echo "ERROR: Doxygen man page formatting changed" 2>&1
continue
fi
newh=`echo $oldh | sed 's/\\\\&\\././g' | ./stdheader` newh=`echo $oldh | sed 's/\\\\&\\././g' | ./stdheader`
sed "s=${oldh/\\/.}=${newh}=" $f > TEMP && mv TEMP $f sed "s=${oldh/\\/.}=${newh}=" $f > TEMP && mv TEMP $f
done done