From 0505075ae8d339ba097aebb82b4d0ae62f87c0a9 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sun, 23 Jul 2017 17:47:43 -0700 Subject: ossp-uuid, libffi, libgcrypt: Pass --tag=CC option to libtool libtool tries to guess the --tag value based on CC/CXX environment variables and the compile commandline generated by makefiles. This heuristics however fails when we construct CC variables in OE and add security flags to it, especially -fPIE -pie which are added by external compilers e.g. clang particularly. It fails because libtool removed PIE flags from compiler cmdline intelligently if it figures out that its building a library, which means that the CC variable passed from cmdline does not match with the compiler cmdline constructed by libtool and we end up with errors like | arm-bec-linux-musleabi-libtool: compile: unable to infer tagged configuration | arm-bec-linux-musleabi-libtool: error: specify a tag with '--tag' This works with internal gcc toolchain because we configure gcc for PIE when hardening is selected and dont pass -fPIE -pie options explicitly but this is not an option for clang, and some external gcc toolchains using older gcc This patch adds the --tag option to help libtool set correct tags in packages where it cant get it right via its heuristics Signed-off-by: Khem Raj Signed-off-by: Ross Burton --- .../ossp-uuid/ossp-uuid/libtool-tag.patch | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 meta/recipes-devtools/ossp-uuid/ossp-uuid/libtool-tag.patch (limited to 'meta/recipes-devtools/ossp-uuid/ossp-uuid') diff --git a/meta/recipes-devtools/ossp-uuid/ossp-uuid/libtool-tag.patch b/meta/recipes-devtools/ossp-uuid/ossp-uuid/libtool-tag.patch new file mode 100644 index 0000000000..7f601afab5 --- /dev/null +++ b/meta/recipes-devtools/ossp-uuid/ossp-uuid/libtool-tag.patch @@ -0,0 +1,21 @@ +Repect LIBTOOLFLAGS + +This add a knob that can be controlled from env to set generic options +for libtool + +Upstream-Status: Pending +Signed-off-by: Khem Raj + +Index: uuid-1.6.2/Makefile.in +=================================================================== +--- uuid-1.6.2.orig/Makefile.in ++++ uuid-1.6.2/Makefile.in +@@ -56,7 +56,7 @@ RM = rm -f + CP = cp + RMDIR = rmdir + SHTOOL = $(S)/shtool +-LIBTOOL = @LIBTOOL@ ++LIBTOOL = @LIBTOOL@ $(LIBTOOLFLAGS) + TRUE = true + POD2MAN = pod2man + PERL = @PERL@ -- cgit 1.2.3-korg