[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