From c0ce7599526c4dce6d889fc4a5aa007f445e6d76 Mon Sep 17 00:00:00 2001 From: Hongxu Jia Date: Tue, 12 Aug 2014 14:26:13 +0800 Subject: syslog-ng: fix do_compi1e of qemuarm while DEBUG_BUILD The thread local storage caused arm-gcc broken while compiling syslog-ng with option '-g -O'. ... dnscache.s: Assembler messages: dnscache.s:100: Error: invalid operands (.text and *UND* sections) for `-' ... Add option --enable-thread-tls in configure to explicitly disable thread local storage for arm while DEBUG_BUILD enabled. Signed-off-by: Hongxu Jia Signed-off-by: Martin Jansa --- ...c-add-option-enable-thread-tls-to-manage-.patch | 50 ++++++++++++++++++++++ meta-oe/recipes-support/syslog-ng/syslog-ng.inc | 5 +++ 2 files changed, 55 insertions(+) create mode 100644 meta-oe/recipes-support/syslog-ng/files/configure.ac-add-option-enable-thread-tls-to-manage-.patch (limited to 'meta-oe/recipes-support/syslog-ng') diff --git a/meta-oe/recipes-support/syslog-ng/files/configure.ac-add-option-enable-thread-tls-to-manage-.patch b/meta-oe/recipes-support/syslog-ng/files/configure.ac-add-option-enable-thread-tls-to-manage-.patch new file mode 100644 index 0000000000..cc8d11044a --- /dev/null +++ b/meta-oe/recipes-support/syslog-ng/files/configure.ac-add-option-enable-thread-tls-to-manage-.patch @@ -0,0 +1,50 @@ +configure.ac: add option --enable-thread-tls to manage thread ssl support + +Add option --enable-thread-tls to manage the including of thread +local storage, so we could explicitly disable it. + +Upstream-Status: Pending + +Signed-off-by: Hongxu Jia +--- + configure.ac | 17 +++++++++++------ + 1 file changed, 11 insertions(+), 6 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 474e094..cedca54 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -120,6 +120,9 @@ AC_ARG_ENABLE(memtrace, + AC_ARG_ENABLE(ssl, + [ --enable-ssl Enable SSL support.],,enable_ssl="auto") + ++AC_ARG_ENABLE(thread-tls, ++ [ --enable-thread-tls Enable Thread Transport Layer Security support.],,enable_thread_tls="no") ++ + AC_ARG_ENABLE(dynamic-linking, + [ --enable-dynamic-linking Link everything dynamically.],,enable_dynamic_linking="auto") + +@@ -381,12 +384,14 @@ dnl *************************************************************************** + dnl Is the __thread keyword available? + dnl *************************************************************************** + +-AC_LINK_IFELSE([AC_LANG_PROGRAM( +-[[#include +-__thread int a; +-]], +-[a=0;])], +-[ac_cv_have_tls=yes; AC_DEFINE_UNQUOTED(HAVE_THREAD_KEYWORD, 1, "Whether Transport Layer Security is supported by the system")]) ++if test "x$enable_thread_tls" != "xno"; then ++ AC_LINK_IFELSE([AC_LANG_PROGRAM( ++ [[#include ++ __thread int a; ++ ]], ++ [a=0;])], ++ [ac_cv_have_tls=yes; AC_DEFINE_UNQUOTED(HAVE_THREAD_KEYWORD, 1, "Whether Transport Layer Security is supported by the system")]) ++fi + + dnl *************************************************************************** + dnl How to do static linking? +-- +1.9.1 + diff --git a/meta-oe/recipes-support/syslog-ng/syslog-ng.inc b/meta-oe/recipes-support/syslog-ng/syslog-ng.inc index 57976b3a2a..22767778f6 100644 --- a/meta-oe/recipes-support/syslog-ng/syslog-ng.inc +++ b/meta-oe/recipes-support/syslog-ng/syslog-ng.inc @@ -18,6 +18,7 @@ SRC_URI = "http://www.balabit.com/downloads/files/syslog-ng/sources/${PV}/source file://syslog-ng.conf \ file://initscript \ file://volatiles.03_syslog-ng \ + file://configure.ac-add-option-enable-thread-tls-to-manage-.patch \ " inherit autotools systemd pkgconfig update-rc.d update-alternatives @@ -32,8 +33,12 @@ EXTRA_OECONF = " \ --with-sysroot=${STAGING_DIR_HOST} \ --with-libmongo-client=no --disable-mongodb \ --with-librabbitmq-client=no \ + ${CONFIG_TLS} \ " +CONFIG_TLS = "--enable-thread-tls" +CONFIG_TLS_arm = "${@base_conditional( "DEBUG_BUILD", "1", " --disable-thread-tls", " --enable-thread-tls", d )}" + PACKAGECONFIG ??= "openssl \ ${@base_contains('DISTRO_FEATURES', 'ipv6', 'ipv6', '', d)} \ ${@base_contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \ -- cgit 1.2.3-korg