[OE-core] [PATCH V2] boost: Improve reproducibility

mingli.yu at windriver.com mingli.yu at windriver.com
Fri Jun 15 08:35:05 UTC 2018


From: Mingli Yu <Mingli.Yu at windriver.com>

Set .file section explicitly for .S files to avoid
the linker introduces the host path in symbols for
object files whose source file is .S
Otherwise, there is a host path in the symbols as
below:
$ readelf --wide --symbols /my-build/boost/1.67.0-r0/boost_1_67_0/x86_64-poky-linux/boost/bin.v2/libs/context/build/aca09349fdb84d131321425f6c3a38ed/libboost_context.so.1.67.0
42: 0000000000000000 0 FILE LOCAL DEFAULT ABS /my-build/boost/1.67.0-r0/boost_1_67_0/x86_64-poky-linux/boost/bin.v2/libs/context/build/aca09349fdb84d131321425f6c3a38ed/asm/make_x86_64_sysv_elf_gas.o

[YOCTO #12708]

Signed-off-by: Mingli Yu <Mingli.Yu at windriver.com>
---
 ...e_x86_64_sysv_elf_gas.S-set-.file-section.patch | 48 ++++++++++++++++++++++
 meta/recipes-support/boost/boost_1.67.0.bb         |  1 +
 2 files changed, 49 insertions(+)
 create mode 100644 meta/recipes-support/boost/boost/0001-make_x86_64_sysv_elf_gas.S-set-.file-section.patch

diff --git a/meta/recipes-support/boost/boost/0001-make_x86_64_sysv_elf_gas.S-set-.file-section.patch b/meta/recipes-support/boost/boost/0001-make_x86_64_sysv_elf_gas.S-set-.file-section.patch
new file mode 100644
index 0000000..c2ac49e
--- /dev/null
+++ b/meta/recipes-support/boost/boost/0001-make_x86_64_sysv_elf_gas.S-set-.file-section.patch
@@ -0,0 +1,48 @@
+From c99f798407e44c86e9f64f5b1adf3b4d0549eef2 Mon Sep 17 00:00:00 2001
+From: Mingli Yu <Mingli.Yu at windriver.com>
+Date: Fri, 15 Jun 2018 16:21:56 +0800
+Subject: [PATCH] make_x86_64_sysv_elf_gas.S: set .file section
+
+Set .file section explicitly for .S files to avoid
+the linker introduces the host path in symbols for
+object files whose source file is .S
+Otherwise, there is a host path in the symbols as below:
+$ readelf --wide --symbols /my-build/boost/1.67.0-r0/boost_1_67_0/x86_64-poky-linux/boost/bin.v2/libs/context/build/aca09349fdb84d131321425f6c3a38ed/libboost_context.so.1.67.0
+
+42: 0000000000000000 0 FILE LOCAL DEFAULT ABS /my-build/boost/1.67.0-r0/boost_1_67_0/x86_64-poky-linux/boost/bin.v2/libs/context/build/aca09349fdb84d131321425f6c3a38ed/asm/make_x86_64_sysv_elf_gas.o
+
+Upstream-Status: Pending
+
+Signed-off-by: Mingli Yu <Mingli.Yu at windriver.com>
+---
+ libs/context/src/asm/make_i386_sysv_elf_gas.S   | 1 +
+ libs/context/src/asm/make_x86_64_sysv_elf_gas.S | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/libs/context/src/asm/make_i386_sysv_elf_gas.S b/libs/context/src/asm/make_i386_sysv_elf_gas.S
+index de77e88..b76de26 100644
+--- a/libs/context/src/asm/make_i386_sysv_elf_gas.S
++++ b/libs/context/src/asm/make_i386_sysv_elf_gas.S
+@@ -24,6 +24,7 @@
+  *                                                                                      *
+  ****************************************************************************************/
+ 
++.file "make_i386_sysv_elf_gas.S"
+ .text
+ .globl make_fcontext
+ .align 2
+diff --git a/libs/context/src/asm/make_x86_64_sysv_elf_gas.S b/libs/context/src/asm/make_x86_64_sysv_elf_gas.S
+index 25a0c00..0ef3756 100644
+--- a/libs/context/src/asm/make_x86_64_sysv_elf_gas.S
++++ b/libs/context/src/asm/make_x86_64_sysv_elf_gas.S
+@@ -24,6 +24,7 @@
+  *                                                                                      *
+  ****************************************************************************************/
+ 
++.file "make_x86_64_sysv_elf_gas.S"
+ .text
+ .globl make_fcontext
+ .type make_fcontext, at function
+-- 
+2.7.4
+
diff --git a/meta/recipes-support/boost/boost_1.67.0.bb b/meta/recipes-support/boost/boost_1.67.0.bb
index eb50899..7bb4511 100644
--- a/meta/recipes-support/boost/boost_1.67.0.bb
+++ b/meta/recipes-support/boost/boost_1.67.0.bb
@@ -7,4 +7,5 @@ SRC_URI += "\
     file://boost-math-disable-pch-for-gcc.patch \
     file://0001-Apply-boost-1.62.0-no-forced-flags.patch.patch \
     file://0003-Don-t-set-up-arch-instruction-set-flags-we-do-that-o.patch \
+    file://0001-make_x86_64_sysv_elf_gas.S-set-.file-section.patch \
 "
-- 
2.7.4




More information about the Openembedded-core mailing list