diff options
author | Khem Raj <raj.khem@gmail.com> | 2015-05-22 12:56:51 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-05-23 08:10:14 +0100 |
commit | 40016c7c19abdbdae4fcd86fab9672631f26712b (patch) | |
tree | bd8adbdae896035ac1ba685357fcd536456ed4f4 /meta | |
parent | 8f1f3520ca99d1e5fc777d6cd2ff0ceadcaa3e66 (diff) | |
download | openembedded-core-40016c7c19abdbdae4fcd86fab9672631f26712b.tar.gz openembedded-core-40016c7c19abdbdae4fcd86fab9672631f26712b.tar.bz2 openembedded-core-40016c7c19abdbdae4fcd86fab9672631f26712b.zip |
openssl: Fix build with gcc5 on mips64
Patch is submitted upstream as well
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/recipes-connectivity/openssl/openssl/0001-Define-GCC_VERSION-macro-to-cover-upto-gcc-5.patch | 53 | ||||
-rw-r--r-- | meta/recipes-connectivity/openssl/openssl_1.0.2a.bb | 1 |
2 files changed, 54 insertions, 0 deletions
diff --git a/meta/recipes-connectivity/openssl/openssl/0001-Define-GCC_VERSION-macro-to-cover-upto-gcc-5.patch b/meta/recipes-connectivity/openssl/openssl/0001-Define-GCC_VERSION-macro-to-cover-upto-gcc-5.patch new file mode 100644 index 0000000000..46d1adf33b --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl/0001-Define-GCC_VERSION-macro-to-cover-upto-gcc-5.patch @@ -0,0 +1,53 @@ +From 0aa68f7681a74f6ff80a80c5843bc35e5effffb9 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Fri, 22 May 2015 12:43:39 -0700 +Subject: [PATCH] Define GCC_VERSION macro to cover upto gcc-5 + +Current check is limited to gcc 4 with minor versions +but when we use gcc 5.1, then minor version check fails +with current setup and we end up with build errors like + +| In file included from bn_div.c:62:0: +| bn_div.c: In function 'BN_div': +| bn_lcl.h:311:9: error: impossible constraint in 'asm' +| asm ("dmultu %2,%3" \ +| ^ +| bn_div.c:402:13: note: in expansion of macro 'BN_UMULT_LOHI' +| BN_UMULT_LOHI(t2l, t2h, d1, q); +| ^ +| <builtin>: recipe for target 'bn_div.o' failed +| make[2]: *** [bn_div.o] Error 1 + +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- +Upstream-Status: [Submitted] + crypto/bn/bn_lcl.h | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/crypto/bn/bn_lcl.h b/crypto/bn/bn_lcl.h +index 196df7e..e801ba7 100644 +--- a/crypto/bn/bn_lcl.h ++++ b/crypto/bn/bn_lcl.h +@@ -118,6 +118,9 @@ + extern "C" { + #endif + ++#define GCC_VERSION (__GNUC__ * 10000 \ ++ + __GNUC_MINOR__ * 100 \ ++ + __GNUC_PATCHLEVEL__) + /*- + * Bignum consistency macros + * There is one "API" macro, bn_fix_top(), for stripping leading zeroes from +@@ -443,7 +446,7 @@ unsigned __int64 _umul128(unsigned __int64 a, unsigned __int64 b, + # endif + # elif defined(__mips) && (defined(SIXTY_FOUR_BIT) || defined(SIXTY_FOUR_BIT_LONG)) + # if defined(__GNUC__) && __GNUC__>=2 +-# if __GNUC__>=4 && __GNUC_MINOR__>=4 ++# if GCC_VERSION > 40400 + /* "h" constraint is no more since 4.4 */ + # define BN_UMULT_HIGH(a,b) (((__uint128_t)(a)*(b))>>64) + # define BN_UMULT_LOHI(low,high,a,b) ({ \ +-- +2.1.4 + diff --git a/meta/recipes-connectivity/openssl/openssl_1.0.2a.bb b/meta/recipes-connectivity/openssl/openssl_1.0.2a.bb index 0a04aeaaaa..5e767c3c2d 100644 --- a/meta/recipes-connectivity/openssl/openssl_1.0.2a.bb +++ b/meta/recipes-connectivity/openssl/openssl_1.0.2a.bb @@ -36,6 +36,7 @@ SRC_URI += "file://configure-targets.patch \ file://ptest-deps.patch \ file://run-ptest \ file://crypto_use_bigint_in_x86-64_perl.patch \ + file://0001-Define-GCC_VERSION-macro-to-cover-upto-gcc-5.patch \ " SRC_URI[md5sum] = "a06c547dac9044161a477211049f60ef" |