security/libgcrypt: Fix regression

In order to harvest the best entropy jitterentropy-base.c requires
that the compiler not optimize out any of its code. To ensure this
the cipher and randmom makefiles remove optmization options. This
will work in cases where the user has specified, for instance,
CFLAGS=-O3 but will not work when CFLAGS+=-O3 is specified. These
makefiles will only remove the first occurrence of the optimization
flag, resulting in a build failure. This patch alters the "munging"
sed command to remove all optimization options.

PR:	280081
MFH:	2024Q3
This commit is contained in:
Daniel Engberg 2024-07-12 21:35:25 -07:00 committed by Cy Schubert
parent 4e0616a206
commit 518e0275a6
2 changed files with 22 additions and 0 deletions

View file

@ -0,0 +1,11 @@
--- cipher/Makefile.in.orig 2024-07-13 04:19:00 UTC
+++ cipher/Makefile.in
@@ -643,7 +643,7 @@ EXTRA_libcipher_la_SOURCES = \
blake2s-amd64-avx.S blake2s-amd64-avx512.S
@ENABLE_O_FLAG_MUNGING_FALSE@o_flag_munging = cat
-@ENABLE_O_FLAG_MUNGING_TRUE@o_flag_munging = sed -e 's/[[:blank:]]-O\([2-9sgz][2-9sgz]*\)/ -O1 /' -e 's/[[:blank:]]-Ofast/ -O1 /g'
+@ENABLE_O_FLAG_MUNGING_TRUE@o_flag_munging = sed -e 's/[[:blank:]]-O\([2-9sgz][2-9sgz]*\)/ -O1 /g' -e 's/[[:blank:]]-Ofast/ -O1 /g'
@ENABLE_INSTRUMENTATION_MUNGING_FALSE@instrumentation_munging = cat
# We need to disable instrumentation for these modules as they use cc as

View file

@ -0,0 +1,11 @@
--- random/Makefile.in.orig 2024-07-13 04:20:47 UTC
+++ random/Makefile.in
@@ -407,7 +407,7 @@ jitterentropy-base.c jitterentropy.h jitterentropy-bas
@ENABLE_O_FLAG_MUNGING_FALSE@o_flag_munging = cat
# The rndjent module needs to be compiled without optimization. */
-@ENABLE_O_FLAG_MUNGING_TRUE@o_flag_munging = sed -e 's/[[:blank:]]-O\([1-9sgz][1-9sgz]*\)/ -O0 /' -e 's/[[:blank:]]-Ofast/ -O0 /g'
+@ENABLE_O_FLAG_MUNGING_TRUE@o_flag_munging = sed -e 's/[[:blank:]]-O\([1-9sgz][1-9sgz]*\)/ -O0 /g' -e 's/[[:blank:]]-Ofast/ -O0 /g'
all: all-am
.SUFFIXES: