blob: 60890c666d18ac04ff0242bab52c2bebcf66a213 [file] [log] [blame]
Andrew Geisslereff27472021-10-29 15:35:00 -05001From 5985253f2c9025d7c127443a3a9938946f80c2a1 Mon Sep 17 00:00:00 2001
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08002From: =?UTF-8?q?Martin=20Hundeb=C3=B8ll?= <martin@geanix.com>
3Date: Tue, 6 Nov 2018 14:50:47 +0100
4Subject: [PATCH] buildinfo: strip sysroot and debug-prefix-map from compiler
5 info
6MIME-Version: 1.0
7Content-Type: text/plain; charset=UTF-8
8Content-Transfer-Encoding: 8bit
9
10The openssl build system generates buildinf.h containing the full
11compiler command line used to compile objects. This breaks
12reproducibility, as the compile command is baked into libcrypto, where
13it is used when running `openssl version -f`.
14
15Add stripped build variables for the compiler and cflags lines, and use
16those when generating buildinfo.h.
17
18This is based on a similar patch for older openssl versions:
19https://patchwork.openembedded.org/patch/147229/
20
21Upstream-Status: Inappropriate [OE specific]
22Signed-off-by: Martin HundebΓΈll <martin@geanix.com>
Brad Bishop19323692019-04-05 15:28:33 -040023
Brad Bishop19323692019-04-05 15:28:33 -040024Update to fix buildpaths qa issue for '-fmacro-prefix-map'.
25
26Signed-off-by: Kai Kang <kai.kang@windriver.com>
Andrew Geisslerc926e172021-05-07 16:11:35 -050027
28Update to fix buildpaths qa issue for '-ffile-prefix-map'.
29
30Signed-off-by: Khem Raj <raj.khem@gmail.com>
31
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080032---
Andrew Geisslereff27472021-10-29 15:35:00 -050033 Configurations/unix-Makefile.tmpl | 12 +++++++++++-
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080034 crypto/build.info | 2 +-
Andrew Geisslereff27472021-10-29 15:35:00 -050035 2 files changed, 12 insertions(+), 2 deletions(-)
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080036
Andrew Geisslereff27472021-10-29 15:35:00 -050037diff --git a/Configurations/unix-Makefile.tmpl b/Configurations/unix-Makefile.tmpl
38index f88a70f..528cdef 100644
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080039--- a/Configurations/unix-Makefile.tmpl
40+++ b/Configurations/unix-Makefile.tmpl
Andrew Geisslereff27472021-10-29 15:35:00 -050041@@ -471,13 +471,23 @@ BIN_LDFLAGS={- join(' ', $target{bin_lflags} || (),
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080042 '$(CNF_LDFLAGS)', '$(LDFLAGS)') -}
43 BIN_EX_LIBS=$(CNF_EX_LIBS) $(EX_LIBS)
44
45-# CPPFLAGS_Q is used for one thing only: to build up buildinf.h
46+# *_Q variables are used for one thing only: to build up buildinf.h
47 CPPFLAGS_Q={- $cppflags1 =~ s|([\\"])|\\$1|g;
48 $cppflags2 =~ s|([\\"])|\\$1|g;
49 $lib_cppflags =~ s|([\\"])|\\$1|g;
50 join(' ', $lib_cppflags || (), $cppflags2 || (),
51 $cppflags1 || ()) -}
52
53+CFLAGS_Q={- for (@{$config{CFLAGS}}) {
54+ s|-fdebug-prefix-map=[^ ]+|-fdebug-prefix-map=|g;
Brad Bishop19323692019-04-05 15:28:33 -040055+ s|-fmacro-prefix-map=[^ ]+|-fmacro-prefix-map=|g;
Andrew Geisslerc926e172021-05-07 16:11:35 -050056+ s|-ffile-prefix-map=[^ ]+|-ffile-prefix-map=|g;
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080057+ }
58+ join(' ', @{$config{CFLAGS}}) -}
59+
60+CC_Q={- $config{CC} =~ s|--sysroot=[^ ]+|--sysroot=recipe-sysroot|g;
61+ join(' ', $config{CC}) -}
62+
63 PERLASM_SCHEME= {- $target{perlasm_scheme} -}
64
65 # For x86 assembler: Set PROCESSOR to 386 if you want to support
Andrew Geisslereff27472021-10-29 15:35:00 -050066diff --git a/crypto/build.info b/crypto/build.info
67index efca6cc..eda433e 100644
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080068--- a/crypto/build.info
69+++ b/crypto/build.info
Andrew Geisslereff27472021-10-29 15:35:00 -050070@@ -109,7 +109,7 @@ DEFINE[../libcrypto]=$UPLINKDEF
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080071
Andrew Geisslereff27472021-10-29 15:35:00 -050072 DEPEND[info.o]=buildinf.h
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080073 DEPEND[cversion.o]=buildinf.h
74-GENERATE[buildinf.h]=../util/mkbuildinf.pl "$(CC) $(LIB_CFLAGS) $(CPPFLAGS_Q)" "$(PLATFORM)"
75+GENERATE[buildinf.h]=../util/mkbuildinf.pl "$(CC_Q) $(CFLAGS_Q) $(CPPFLAGS_Q)" "$(PLATFORM)"
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080076
Andrew Geisslereff27472021-10-29 15:35:00 -050077 GENERATE[uplink-x86.s]=../ms/uplink-x86.pl
78 GENERATE[uplink-x86_64.s]=../ms/uplink-x86_64.pl