This repository has been archived by the owner. It is now read-only.
Permalink
Browse files

openssl: remove keg_only status

With the dawning of OS X 10.11 Apple has seemingly removed the OpenSSL headers
from public availability. This has meant that unless we specifically point things
at our OpenSSL, or our OpenSSL is in the PATH things are failing to build in unusual
ways.

To work around this, we are removing the `keg_only` status on OpenSSL. This means
from today OpenSSL will symlink into your HOMEBREW_PREFIX and be available for all
and any thing to compile against, and presuming you have HOMEBREW_PREFIX at the front
of your PATH will be used over the older system OpenSSL.

Things that compile against Homebrew's OpenSSL but don't have an OpenSSL `depends_on`
should still be reported to Homebrew. We will need to fix the link so our bottles rely
on our OpenSSL rather than linking the system's still, and it allows us to revision
things when the security landscape dictates that it is necessary.

There are no plans to unkey LibreSSL at this time. It conflicts with the other OpenSSL
versions and at the moment there's still a lot that won't build against it. If that
changes in future we aren't rigid and unbending towards useful change, but for now
don't file PRs asking for LibreSSL to be unkegged, Thanks!

Please report any issues you discover to Homebrew and we'll endeavour to fix them
as quickly and thoroughly as possible.

Closes #41527.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
  • Loading branch information...
DomT4 authored and MikeMcQuaid committed Jul 9, 2015
1 parent 655ded7 commit 9ca3c054c070cc825870a6fc0fc5c5a22f7d8559
Showing with 1 addition and 4 deletions.
  1. +1 −4 Library/Formula/openssl.rb
@@ -17,9 +17,6 @@ class Openssl < Formula

depends_on "makedepend" => :build

keg_only :provided_by_osx,
"Apple has deprecated use of OpenSSL in favor of its own TLS and crypto libraries"

def arch_args
{
:x86_64 => %w[darwin64-x86_64-cc enable-ec_nistp_64_gcc_128],
@@ -114,7 +111,7 @@ def post_install
)

valid_certs = certs.select do |cert|
IO.popen('openssl x509 -inform pem -checkend 0 -noout', 'w') do |openssl_io|
IO.popen("openssl x509 -inform pem -checkend 0 -noout", "w") do |openssl_io|
openssl_io.write(cert)
openssl_io.close_write
end

0 comments on commit 9ca3c05

Please sign in to comment.