From 22c51e2f73fc7d7363755baf546b6f9944fb5376 Mon Sep 17 00:00:00 2001 From: "Dr. Werner Fink" Date: Thu, 15 Sep 2022 13:15:46 +0000 Subject: [PATCH 1/4] boo#1203091 OBS-URL: https://build.opensuse.org/package/show/Base:System/bash?expand=0&rev=348 --- bash.changes | 6 ++++++ bash.spec | 3 +++ quotes-man2html.patch | 27 +++++++++++++++++++++++++++ 3 files changed, 36 insertions(+) create mode 100644 quotes-man2html.patch diff --git a/bash.changes b/bash.changes index 2cc8ec7c..08bc83d3 100644 --- a/bash.changes +++ b/bash.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Thu Sep 15 13:09:24 UTC 2022 - Dr. Werner Fink + +- Add patch quotes-man2html.patch + * Fix boo#1203091 -- BASH(1) Manual Page: Unprocessed macro aq + ------------------------------------------------------------------- Thu Apr 28 19:00:17 UTC 2022 - Dirk Müller diff --git a/bash.spec b/bash.spec index 44f72cc8..0521da09 100644 --- a/bash.spec +++ b/bash.spec @@ -82,6 +82,8 @@ Patch47: bash-4.3-perl522.patch Patch48: bash-4.3-extra-import-func.patch # PATCH-EXTEND-SUSE Allow root to clean file system if filled up Patch49: bash-4.3-pathtemp.patch +# PATCH-FIX-SUSE +Patch50: quotes-man2html.patch BuildRequires: autoconf BuildRequires: bison BuildRequires: fdupes @@ -267,6 +269,7 @@ set -x %patch48 -b .eif %endif %patch49 -b .pthtmp +%patch50 -b .qd %patch0 -b .0 # This has to be always the same version as included in the bash its self diff --git a/quotes-man2html.patch b/quotes-man2html.patch new file mode 100644 index 00000000..7b46eb11 --- /dev/null +++ b/quotes-man2html.patch @@ -0,0 +1,27 @@ +boo#1203091 + +--- + support/man2html.c | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +--- support/man2html.c ++++ support/man2html.c 2022-09-12 08:27:06.352648345 +0000 +@@ -476,6 +476,18 @@ expand_char(int nr) + charb[0] = nr / 256; + charb[1] = nr % 256; + charb[2] = '\0'; ++ if (charb[1] == 'q') { ++ switch (charb[0]) { ++ case 'a': ++ strncpy(charb, "′", 7); ++ charb[7] = '\0'; ++ break; ++ case 'd': ++ strncpy(charb, """, 6); ++ charb[6] = '\0'; ++ break; ++ } ++ } + if (charb[0] == '<') { /* Fix up <= */ + charb[4] = charb[1]; + strncpy(charb, "<", 4); From dec9a7959cb88e4677cc1e95ae387ae56972f2a7 Mon Sep 17 00:00:00 2001 From: "Dr. Werner Fink" Date: Mon, 19 Sep 2022 13:12:58 +0000 Subject: [PATCH 2/4] Simple quote OBS-URL: https://build.opensuse.org/package/show/Base:System/bash?expand=0&rev=349 --- bash.changes | 6 ++++++ quotes-man2html.patch | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/bash.changes b/bash.changes index 08bc83d3..7a141afa 100644 --- a/bash.changes +++ b/bash.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Mon Sep 19 13:11:05 UTC 2022 - Dr. Werner Fink + +- Small change in quotes-man2html.patch + * Use a simple "'" aka quote instead of "′" for "\(aq" + ------------------------------------------------------------------- Thu Sep 15 13:09:24 UTC 2022 - Dr. Werner Fink diff --git a/quotes-man2html.patch b/quotes-man2html.patch index 7b46eb11..61cb8c8e 100644 --- a/quotes-man2html.patch +++ b/quotes-man2html.patch @@ -13,7 +13,7 @@ boo#1203091 + if (charb[1] == 'q') { + switch (charb[0]) { + case 'a': -+ strncpy(charb, "′", 7); ++ strncpy(charb, "'", 7); + charb[7] = '\0'; + break; + case 'd': From c532ce9c6f8c94103119b249a2e380eb4c7588cd Mon Sep 17 00:00:00 2001 From: "Dr. Werner Fink" Date: Mon, 19 Sep 2022 13:30:02 +0000 Subject: [PATCH 3/4] . OBS-URL: https://build.opensuse.org/package/show/Base:System/bash?expand=0&rev=350 --- bash.spec | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/bash.spec b/bash.spec index 0521da09..33e4bf7b 100644 --- a/bash.spec +++ b/bash.spec @@ -21,6 +21,8 @@ %else %bcond_without alternatives %endif +# Parallel builds do not work! +%global _smp_mflags -j1 %define bextend %{nil} %define bversion 5.1 @@ -224,13 +226,12 @@ Legacy usrmove helper files for the build system. Do not install. %prep %if %{with sjis} -echo -e '\033[1m\033[31mWarning: Shift JIS support is enabled\033[m' +%{warn:Shift JIS support is enabled} %else -echo -e '\033[1m\032[31mShift JIS support disabled\033[m' +%{echo:Shift JIS support disabled} %endif %setup -q -n bash-%{bversion}%{bextend} -b1 typeset -i level -set +x for patch in ../bash-%{bversion}-patches/*-*[0-9]; do test -e $patch || break @@ -245,7 +246,6 @@ for patch in ../bash-%{bversion}-patches/*-*[0-9]; do echo Patch $patch patch -s -p$level < $patch done -set -x %patch1 -b .manual %patch3 -b .2.4.4 %patch4 -b .evalexp @@ -452,23 +452,23 @@ test ${rl1[2]} = ${rl2[2]} || exit 1 profilecflags=CFLAGS="$CFLAGS %{cflags_profile_generate}" %endif makeopts="Machine=${HOSTTYPE} OS=${OSTYPE} VENDOR=${VENDOR} MACHTYPE=${MACHTYPE}" - make $makeopts "$profilecflags" \ + %make_build $makeopts "$profilecflags" \ all printenv recho zecho xcase TMPDIR=$(mktemp -d /tmp/bash.XXXXXXXXXX) || exit 1 > $SCREENLOG tail -q -s 0.5 -f $SCREENLOG & pid=$! env -i HOME=$PWD TERM=$TERM LD_LIBRARY_PATH=$LD_RUN_PATH TMPDIR=$TMPDIR \ SCREENRC=$SCREENRC SCREENDIR=$SCREENDIR \ - screen -D -m make TESTSCRIPT=%{SOURCE4} check + screen -D -m %make_build TESTSCRIPT=%{SOURCE4} check kill -TERM $pid %if 0%{?do_profiling} rm -f jobs.gcda profilecflags=CFLAGS="$CFLAGS %{cflags_profile_feedback} -fprofile-correction" clean=clean %endif - make $makeopts "$profilecflags" $clean all - make $makeopts -C examples/loadables/ - make $makeopts documentation + %make_build $makeopts "$profilecflags" $clean all + %make_build $makeopts -C examples/loadables/ + %make_build $makeopts documentation %install %make_install From 18361d63d4f3646172c3ab14665f6bedf7dccb98 Mon Sep 17 00:00:00 2001 From: "Dr. Werner Fink" Date: Tue, 20 Sep 2022 07:01:04 +0000 Subject: [PATCH 4/4] Fix the fix OBS-URL: https://build.opensuse.org/package/show/Base:System/bash?expand=0&rev=351 --- bash.changes | 8 ++++++++ bash.spec | 6 ++---- quotes-man2html.patch | 4 ++-- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/bash.changes b/bash.changes index 7a141afa..c1813e07 100644 --- a/bash.changes +++ b/bash.changes @@ -1,3 +1,11 @@ +------------------------------------------------------------------- +Tue Sep 20 06:59:04 UTC 2022 - Dr. Werner Fink + +- Enable parallel builds by slpitting clean and all at make time + (Thanks to Christopher Yeleighton) +- Do not copy more than 1 byte for \(aq becoming a "'" in + quotes-man2html.patch + ------------------------------------------------------------------- Mon Sep 19 13:11:05 UTC 2022 - Dr. Werner Fink diff --git a/bash.spec b/bash.spec index 33e4bf7b..42830585 100644 --- a/bash.spec +++ b/bash.spec @@ -21,8 +21,6 @@ %else %bcond_without alternatives %endif -# Parallel builds do not work! -%global _smp_mflags -j1 %define bextend %{nil} %define bversion 5.1 @@ -464,9 +462,9 @@ test ${rl1[2]} = ${rl2[2]} || exit 1 %if 0%{?do_profiling} rm -f jobs.gcda profilecflags=CFLAGS="$CFLAGS %{cflags_profile_feedback} -fprofile-correction" - clean=clean + %make_build $makeopts "$profilecflags" clean %endif - %make_build $makeopts "$profilecflags" $clean all + %make_build $makeopts "$profilecflags" all %make_build $makeopts -C examples/loadables/ %make_build $makeopts documentation diff --git a/quotes-man2html.patch b/quotes-man2html.patch index 61cb8c8e..e4f6a620 100644 --- a/quotes-man2html.patch +++ b/quotes-man2html.patch @@ -13,8 +13,8 @@ boo#1203091 + if (charb[1] == 'q') { + switch (charb[0]) { + case 'a': -+ strncpy(charb, "'", 7); -+ charb[7] = '\0'; ++ strncpy(charb, "'", 1); ++ charb[1] = '\0'; + break; + case 'd': + strncpy(charb, """, 6);