77 lines
2.9 KiB
Diff
77 lines
2.9 KiB
Diff
From 3e1d00481093e10775eaf69d619c45b32a4aa7dc Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Martin=20Hundeb=C3=B8ll?= <martin@geanix.com>
|
|
Date: Tue, 6 Nov 2018 14:50:47 +0100
|
|
Subject: [PATCH] buildinfo: strip sysroot and debug-prefix-map from compiler
|
|
info
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
The openssl build system generates buildinf.h containing the full
|
|
compiler command line used to compile objects. This breaks
|
|
reproducibility, as the compile command is baked into libcrypto, where
|
|
it is used when running `openssl version -f`.
|
|
|
|
Add stripped build variables for the compiler and cflags lines, and use
|
|
those when generating buildinfo.h.
|
|
|
|
This is based on a similar patch for older openssl versions:
|
|
https://patchwork.openembedded.org/patch/147229/
|
|
|
|
Upstream-Status: Inappropriate [OE specific]
|
|
Signed-off-by: Martin Hundebøll <martin@geanix.com>
|
|
|
|
|
|
Update to fix buildpaths qa issue for '-fmacro-prefix-map'.
|
|
|
|
Signed-off-by: Kai Kang <kai.kang@windriver.com>
|
|
---
|
|
Configurations/unix-Makefile.tmpl | 10 +++++++++-
|
|
crypto/build.info | 2 +-
|
|
2 files changed, 10 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/Configurations/unix-Makefile.tmpl b/Configurations/unix-Makefile.tmpl
|
|
index 16af4d2087..54c162784c 100644
|
|
--- a/Configurations/unix-Makefile.tmpl
|
|
+++ b/Configurations/unix-Makefile.tmpl
|
|
@@ -317,13 +317,22 @@ BIN_LDFLAGS={- join(' ', $target{bin_lflags} || (),
|
|
'$(CNF_LDFLAGS)', '$(LDFLAGS)') -}
|
|
BIN_EX_LIBS=$(CNF_EX_LIBS) $(EX_LIBS)
|
|
|
|
-# CPPFLAGS_Q is used for one thing only: to build up buildinf.h
|
|
+# *_Q variables are used for one thing only: to build up buildinf.h
|
|
CPPFLAGS_Q={- $cppflags1 =~ s|([\\"])|\\$1|g;
|
|
$cppflags2 =~ s|([\\"])|\\$1|g;
|
|
$lib_cppflags =~ s|([\\"])|\\$1|g;
|
|
join(' ', $lib_cppflags || (), $cppflags2 || (),
|
|
$cppflags1 || ()) -}
|
|
|
|
+CFLAGS_Q={- for (@{$config{CFLAGS}}) {
|
|
+ s|-fdebug-prefix-map=[^ ]+|-fdebug-prefix-map=|g;
|
|
+ s|-fmacro-prefix-map=[^ ]+|-fmacro-prefix-map=|g;
|
|
+ }
|
|
+ join(' ', @{$config{CFLAGS}}) -}
|
|
+
|
|
+CC_Q={- $config{CC} =~ s|--sysroot=[^ ]+|--sysroot=recipe-sysroot|g;
|
|
+ join(' ', $config{CC}) -}
|
|
+
|
|
PERLASM_SCHEME= {- $target{perlasm_scheme} -}
|
|
|
|
# For x86 assembler: Set PROCESSOR to 386 if you want to support
|
|
diff --git a/crypto/build.info b/crypto/build.info
|
|
index b515b7318e..8c9cee2a09 100644
|
|
--- a/crypto/build.info
|
|
+++ b/crypto/build.info
|
|
@@ -10,7 +10,7 @@ EXTRA= ../ms/uplink-x86.pl ../ms/uplink.c ../ms/applink.c \
|
|
ppccpuid.pl pariscid.pl alphacpuid.pl arm64cpuid.pl armv4cpuid.pl
|
|
|
|
DEPEND[cversion.o]=buildinf.h
|
|
-GENERATE[buildinf.h]=../util/mkbuildinf.pl "$(CC) $(LIB_CFLAGS) $(CPPFLAGS_Q)" "$(PLATFORM)"
|
|
+GENERATE[buildinf.h]=../util/mkbuildinf.pl "$(CC_Q) $(CFLAGS_Q) $(CPPFLAGS_Q)" "$(PLATFORM)"
|
|
DEPEND[buildinf.h]=../configdata.pm
|
|
|
|
GENERATE[uplink-x86.s]=../ms/uplink-x86.pl $(PERLASM_SCHEME)
|
|
--
|
|
2.19.1
|
|
|