[PATCH -perfbook 3/8] Cope with iconv without ISO~8859-1 support

Akira Yokosawa <[email protected]> Wed, 6 May 2026 20:41:59 +0900
Newsgroups org.kernel.vger.perfbook
Message-ID <[email protected]>
It turns out that assuming ISO-8859-1 available in "iconv" was
wrong, for example, under openSUSE/leap 15.6.
Fallback to plain "cat" in case that is not the case.

Fixes: 00361e8bb1e5 ("Convert *.log files into UTF-8 encoding")
Signed-off-by: Akira Yokosawa <[email protected]>
---
 utilities/runfirstlatex.sh | 9 ++++++++-
 utilities/runlatex.sh      | 9 ++++++++-
 2 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/utilities/runfirstlatex.sh b/utilities/runfirstlatex.sh
index 676502b2..3fed1b69 100644
--- a/utilities/runfirstlatex.sh
+++ b/utilities/runfirstlatex.sh
@@ -69,6 +69,13 @@ basename=`echo $1 | sed -e 's/\.tex$//'`
 
 : ${LATEX:=pdflatex}
 
+if iconv --list | grep -q -i iso-8859-1
+then
+	ICONV="iconv -f ISO-8859-1 -t UTF-8"
+else
+	ICONV="cat"
+fi
+
 echo "$LATEX 1 for $basename.pdf"
 $LATEX $LATEX_OPT $basename > /dev/null 2>&1 < /dev/null
 exitcode=$?
@@ -78,7 +85,7 @@ then
 	if encguess -s iso-8859-1 $basename.log | grep -q ISO-8859-1
 	then
 		mv $basename.log $basename-tmp.log
-		iconv -f ISO-8859-1 -t UTF-8 $basename-tmp.log > $basename.log
+		$ICONV $basename-tmp.log > $basename.log
 		rm $basename-tmp.log
 	fi
 fi
diff --git a/utilities/runlatex.sh b/utilities/runlatex.sh
index 5346bb3b..e9689a99 100644
--- a/utilities/runlatex.sh
+++ b/utilities/runlatex.sh
@@ -31,6 +31,13 @@
 
 : ${LATEX:=pdflatex}
 
+if iconv --list | grep -q -i iso-8859-1
+then
+	ICONV="iconv -f ISO-8859-1 -t UTF-8"
+else
+	ICONV="cat"
+fi
+
 diff_warning () {
 	if diff -q $basename-warning.log $basename-warning-prev.log >/dev/null
 	then
@@ -90,7 +97,7 @@ iterate_latex () {
 		if encguess -s iso-8859-1 $basename.log | grep -q ISO-8859-1
 		then
 			mv $basename.log $basename-tmp.log
-			iconv -f ISO-8859-1 -t UTF-8 $basename-tmp.log > $basename.log
+			$ICONV $basename-tmp.log > $basename.log
 			rm $basename-tmp.log
 		fi
 	fi
-- 
2.43.0