[MacPorts] #38015: openssl 1.0.1d Broken
MacPorts
noreply at macports.org
Tue Feb 26 05:03:14 PST 2013
#38015: openssl 1.0.1d Broken
--------------------------+--------------------
Reporter: dylanryan@… | Owner: mww@…
Type: defect | Status: closed
Priority: Normal | Milestone:
Component: ports | Version: 2.1.3
Resolution: fixed | Keywords:
Port: openssl |
--------------------------+--------------------
Changes (by ryandesign@…):
* cc: elventear@… (added)
* status: new => closed
* resolution: => fixed
Comment:
The no-asm build option in openssl has a bit of a history in MacPorts
which is worth recounting:
* r2140: the openssl 0.9.7a port is created, with the no-asm option in
place; no explanation is given, but it could be that OS X was still so new
that the project's assembly code did not work on OS X.
* r90928: with openssl now at 1.0.1, no-asm is removed (i.e. asm is
enabled) because "all tests pass on 10.7/x64".
* r91166: no-asm is reinstated (i.e. asm is disabled again) for OS X 10.5
and 10.6 only, because "'asm' only is tested on 10.7/x64"; asm remains
enabled for 10.4, presumably erroneously. It's not clear whether Markus
specifically knew of problems with asm on Leopard or Snow Leopard or
whether he was just being cautious.
* r92126: openssl is updated to 1.0.1a and no-asm is reinstated globally
"to make compile on 10.7/x64". I backdated my openssl port to r92126 and
verified it built fine on Lion x86_64; then I edited the portfile and
removed no-asm and verified that it did in fact fail to build.
* r92138: the platform darwin 9 and darwin 10 blocks that were added in
r91166 are removed again since they are now redundant with the reinstated
global no-asm option.
So asm has been off for most of the openssl port's life, and it was only
briefly enabled for openssl version 1.0.1 only, and only for Lion, and
then disabled when the next version of openssl didn't build with that
option anymore. So if we want to enable asm now, we should do some
thorough testing. Which is what I did, with the current version, 1.0.1e:
{{{#!html
<table class="wiki">
<tr>
<th rowspan="2">CPU</th>
<th rowspan="2">OS X</th>
<th rowspan="2">Xcode</th>
<th rowspan="2">Compiler</th>
<th rowspan="2">Compiler Version</th>
<th rowspan="2">Archs</th>
<th colspan="2">Tests Pass</th>
<th colspan="2"><code>curl https://google.com</code> works</th>
</tr>
<tr>
<th>Before (no-asm)</th>
<th>After (asm)</th>
<th>Before (no-asm)</th>
<th>After (asm)</th>
</tr>
<tr>
<th rowspan="2">PowerPC G4</th>
<td>10.4.11</td>
<td>2.5</td>
<td>gcc-4.0</td>
<td>gcc version 4.0.1 (Apple Computer, Inc. build 5370)</td>
<td>ppc</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
</tr>
<tr>
<td>10.5.8</td>
<td>3.1.2</td>
<td>gcc-4.0</td>
<td>gcc version 4.0.1 (Apple Inc. build 5493)</td>
<td>ppc</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
</tr>
<tr>
<th rowspan="2">Intel</th>
<td rowspan="2">10.5.8</td>
<td rowspan="2">3.1.2</td>
<td rowspan="2">gcc-4.0</td>
<td rowspan="2">gcc version 4.0.1 (Apple Inc. build 5493)</td>
<td>i386</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
</tr>
<tr>
<td>x86_64</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
</tr>
<tr>
<th rowspan="6">Core 2 Duo</th>
<td rowspan="2">10.6.8</td>
<td rowspan="2">3.2.6</td>
<td rowspan="2">gcc-4.2</td>
<td rowspan="2"></td>
<td>i386</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
</tr>
<tr>
<td>x86_64</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
</tr>
<tr>
<td rowspan="2">10.7.5</td>
<td rowspan="2">4.3.3</td>
<td rowspan="2">clang</td>
<td rowspan="2">Apple clang version 3.1 (tags/Apple/clang-318.0.61) (based
on LLVM 3.1svn)</td>
<td>i386</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
</tr>
<tr>
<td>x86_64</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
</tr>
<tr>
<td rowspan="2">10.8.2</td>
<td rowspan="2">4.5.2</td>
<td rowspan="2">clang</td>
<td rowspan="2">Apple clang version 4.1 (tags/Apple/clang-421.11.66)
(based on LLVM 3.1svn)</td>
<td>i386</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
</tr>
<tr>
<td>x86_64</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
</tr>
<tr>
<th rowspan="2">Core i7</th>
<td rowspan="2">10.8.2</td>
<td rowspan="2">4.6</td>
<td rowspan="2">clang</td>
<td rowspan="2">Apple LLVM version 4.2 (clang-425.0.24) (based on LLVM
3.2svn)</td>
<td>i386</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
<td bgcolor="lime">yes</td>
</tr>
<tr>
<td>x86_64</td>
<td bgcolor="red">no</td>
<td bgcolor="lime">yes</td>
<td bgcolor="red">no</td>
<td bgcolor="lime">yes</td>
</tr>
</table>
}}}
Given these results I think it's safe to remove no-asm globally. Committed
in r103461.
--
Ticket URL: <https://trac.macports.org/ticket/38015#comment:40>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list