diff options
author | Joshua Lock <josh@linux.intel.com> | 2010-05-07 00:41:15 +0100 |
---|---|---|
committer | Joshua Lock <josh@linux.intel.com> | 2010-05-07 00:45:38 +0100 |
commit | c89362c767ba3255358f5bf5630bdef8cb3d107d (patch) | |
tree | c554d77ccd3d59af06b471abb02a8c3f00e2f51c /meta/packages/openssl | |
parent | 229c80ad19cd693e71b5d9dfa0438fff85b04039 (diff) | |
download | poky-c89362c767ba3255358f5bf5630bdef8cb3d107d.tar.gz |
openssl: Fix build of openssl-native on x86_64 with recent binutils
Apply a patch from upstream that fixes the build, patch should be able to be
dropped when we update openssl version.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Diffstat (limited to 'meta/packages/openssl')
-rw-r--r-- | meta/packages/openssl/openssl-0.9.8g/fix-md5-x86_64.patch | 47 | ||||
-rw-r--r-- | meta/packages/openssl/openssl_0.9.8g.bb | 3 |
2 files changed, 49 insertions, 1 deletions
diff --git a/meta/packages/openssl/openssl-0.9.8g/fix-md5-x86_64.patch b/meta/packages/openssl/openssl-0.9.8g/fix-md5-x86_64.patch new file mode 100644 index 0000000000..05b48ab110 --- /dev/null +++ b/meta/packages/openssl/openssl-0.9.8g/fix-md5-x86_64.patch | |||
@@ -0,0 +1,47 @@ | |||
1 | Fix for building md5-x86_64.pl with recent gcc and binutils (as first discovered | ||
2 | on my Fedora 13 machine). | ||
3 | |||
4 | Patch taken from upstream bug tracker: | ||
5 | http://rt.openssl.org/Ticket/Display.html?id=2094&user=guest&pass=guest | ||
6 | |||
7 | This issue is marked as resolved upstream (on 13/11/2009) so we should be able | ||
8 | to remove this patch when we update openssl. | ||
9 | |||
10 | JL - 07/05/2010 | ||
11 | |||
12 | Index: openssl-0.9.8g/crypto/md5/asm/md5-x86_64.pl | ||
13 | =================================================================== | ||
14 | --- openssl-0.9.8g.orig/crypto/md5/asm/md5-x86_64.pl 2010-05-07 00:24:16.000000000 +0100 | ||
15 | +++ openssl-0.9.8g/crypto/md5/asm/md5-x86_64.pl 2010-05-07 00:26:25.639809341 +0100 | ||
16 | @@ -19,6 +19,7 @@ | ||
17 | sub round1_step | ||
18 | { | ||
19 | my ($pos, $dst, $x, $y, $z, $k_next, $T_i, $s) = @_; | ||
20 | + $T_i = unpack("l",pack("l", hex($T_i))); # convert to 32-bit signed decimal | ||
21 | $code .= " mov 0*4(%rsi), %r10d /* (NEXT STEP) X[0] */\n" if ($pos == -1); | ||
22 | $code .= " mov %edx, %r11d /* (NEXT STEP) z' = %edx */\n" if ($pos == -1); | ||
23 | $code .= <<EOF; | ||
24 | @@ -42,6 +43,7 @@ | ||
25 | sub round2_step | ||
26 | { | ||
27 | my ($pos, $dst, $x, $y, $z, $k_next, $T_i, $s) = @_; | ||
28 | + $T_i = unpack("l",pack("l", hex($T_i))); # convert to 32-bit signed decimal | ||
29 | $code .= " mov 1*4(%rsi), %r10d /* (NEXT STEP) X[1] */\n" if ($pos == -1); | ||
30 | $code .= " mov %ecx, %r11d /* (NEXT STEP) y' = %ecx */\n" if ($pos == -1); | ||
31 | $code .= <<EOF; | ||
32 | @@ -65,6 +67,7 @@ | ||
33 | sub round3_step | ||
34 | { | ||
35 | my ($pos, $dst, $x, $y, $z, $k_next, $T_i, $s) = @_; | ||
36 | + $T_i = unpack("l",pack("l", hex($T_i))); # convert to 32-bit signed decimal | ||
37 | $code .= " mov 5*4(%rsi), %r10d /* (NEXT STEP) X[5] */\n" if ($pos == -1); | ||
38 | $code .= " mov %ecx, %r11d /* (NEXT STEP) y' = %ecx */\n" if ($pos == -1); | ||
39 | $code .= <<EOF; | ||
40 | @@ -87,6 +90,7 @@ | ||
41 | sub round4_step | ||
42 | { | ||
43 | my ($pos, $dst, $x, $y, $z, $k_next, $T_i, $s) = @_; | ||
44 | + $T_i = unpack("l",pack("l", hex($T_i))); # convert to 32-bit signed decimal | ||
45 | $code .= " mov 0*4(%rsi), %r10d /* (NEXT STEP) X[0] */\n" if ($pos == -1); | ||
46 | $code .= " mov \$0xffffffff, %r11d\n" if ($pos == -1); | ||
47 | $code .= " xor %edx, %r11d /* (NEXT STEP) not z' = not %edx*/\n" | ||
diff --git a/meta/packages/openssl/openssl_0.9.8g.bb b/meta/packages/openssl/openssl_0.9.8g.bb index 9abbbdce05..01fa6c9d26 100644 --- a/meta/packages/openssl/openssl_0.9.8g.bb +++ b/meta/packages/openssl/openssl_0.9.8g.bb | |||
@@ -1,9 +1,10 @@ | |||
1 | require openssl.inc | 1 | require openssl.inc |
2 | 2 | ||
3 | PR = "r10" | 3 | PR = "r11" |
4 | 4 | ||
5 | SRC_URI += "file://debian.patch;patch=1 \ | 5 | SRC_URI += "file://debian.patch;patch=1 \ |
6 | file://configure-targets.patch;patch=1 \ | 6 | file://configure-targets.patch;patch=1 \ |
7 | file://fix-md5-x86_64.patch;patch=1 \ | ||
7 | file://shared-libs.patch;patch=1" | 8 | file://shared-libs.patch;patch=1" |
8 | 9 | ||
9 | BBCLASSEXTEND = "native" | 10 | BBCLASSEXTEND = "native" |