diff options
| -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 @@ | |||
| 1 | From 0aa68f7681a74f6ff80a80c5843bc35e5effffb9 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Fri, 22 May 2015 12:43:39 -0700 | ||
| 4 | Subject: [PATCH] Define GCC_VERSION macro to cover upto gcc-5 | ||
| 5 | |||
| 6 | Current check is limited to gcc 4 with minor versions | ||
| 7 | but when we use gcc 5.1, then minor version check fails | ||
| 8 | with current setup and we end up with build errors like | ||
| 9 | |||
| 10 | | In file included from bn_div.c:62:0: | ||
| 11 | | bn_div.c: In function 'BN_div': | ||
| 12 | | bn_lcl.h:311:9: error: impossible constraint in 'asm' | ||
| 13 | | asm ("dmultu %2,%3" \ | ||
| 14 | | ^ | ||
| 15 | | bn_div.c:402:13: note: in expansion of macro 'BN_UMULT_LOHI' | ||
| 16 | | BN_UMULT_LOHI(t2l, t2h, d1, q); | ||
| 17 | | ^ | ||
| 18 | | <builtin>: recipe for target 'bn_div.o' failed | ||
| 19 | | make[2]: *** [bn_div.o] Error 1 | ||
| 20 | |||
| 21 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 22 | |||
| 23 | --- | ||
| 24 | Upstream-Status: [Submitted] | ||
| 25 | crypto/bn/bn_lcl.h | 5 ++++- | ||
| 26 | 1 file changed, 4 insertions(+), 1 deletion(-) | ||
| 27 | |||
| 28 | diff --git a/crypto/bn/bn_lcl.h b/crypto/bn/bn_lcl.h | ||
| 29 | index 196df7e..e801ba7 100644 | ||
| 30 | --- a/crypto/bn/bn_lcl.h | ||
| 31 | +++ b/crypto/bn/bn_lcl.h | ||
| 32 | @@ -118,6 +118,9 @@ | ||
| 33 | extern "C" { | ||
| 34 | #endif | ||
| 35 | |||
| 36 | +#define GCC_VERSION (__GNUC__ * 10000 \ | ||
| 37 | + + __GNUC_MINOR__ * 100 \ | ||
| 38 | + + __GNUC_PATCHLEVEL__) | ||
| 39 | /*- | ||
| 40 | * Bignum consistency macros | ||
| 41 | * There is one "API" macro, bn_fix_top(), for stripping leading zeroes from | ||
| 42 | @@ -443,7 +446,7 @@ unsigned __int64 _umul128(unsigned __int64 a, unsigned __int64 b, | ||
| 43 | # endif | ||
| 44 | # elif defined(__mips) && (defined(SIXTY_FOUR_BIT) || defined(SIXTY_FOUR_BIT_LONG)) | ||
| 45 | # if defined(__GNUC__) && __GNUC__>=2 | ||
| 46 | -# if __GNUC__>=4 && __GNUC_MINOR__>=4 | ||
| 47 | +# if GCC_VERSION > 40400 | ||
| 48 | /* "h" constraint is no more since 4.4 */ | ||
| 49 | # define BN_UMULT_HIGH(a,b) (((__uint128_t)(a)*(b))>>64) | ||
| 50 | # define BN_UMULT_LOHI(low,high,a,b) ({ \ | ||
| 51 | -- | ||
| 52 | 2.1.4 | ||
| 53 | |||
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 \ | |||
| 36 | file://ptest-deps.patch \ | 36 | file://ptest-deps.patch \ |
| 37 | file://run-ptest \ | 37 | file://run-ptest \ |
| 38 | file://crypto_use_bigint_in_x86-64_perl.patch \ | 38 | file://crypto_use_bigint_in_x86-64_perl.patch \ |
| 39 | file://0001-Define-GCC_VERSION-macro-to-cover-upto-gcc-5.patch \ | ||
| 39 | " | 40 | " |
| 40 | 41 | ||
| 41 | SRC_URI[md5sum] = "a06c547dac9044161a477211049f60ef" | 42 | SRC_URI[md5sum] = "a06c547dac9044161a477211049f60ef" |
