From e5e35399b5968edf1ad178c1e13d7d5edb105792 Mon Sep 17 00:00:00 2001 From: samueljohn Date: Mon, 25 Jun 2012 12:41:47 +0200 Subject: [PATCH] botan: fix xcode-only install - botan's configure.py ignores our CFLAGS and switches the compiler to llvm :-/ We can use the MACH_OPT variable to insert our CLFAGS and make this build with Xcode-only setups. - Using ENV.compiler.to_s for the compiler string. - Fixing the "ld: unknown option soname" issue when using clang. Closes Homebrew/homebrew#13065. Signed-off-by: Jack Nagel --- Formula/botan.rb | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Formula/botan.rb b/Formula/botan.rb index 0bd89113dd..f443b08d45 100644 --- a/Formula/botan.rb +++ b/Formula/botan.rb @@ -13,8 +13,14 @@ class Botan < Formula args = ["--prefix=#{prefix}"] args << "--cpu=x86_64" if MacOS.prefer_64_bit? args << "--enable-debug" if ARGV.include? "--enable-debug" + # The --cc option needs "clang" or "gcc" and not the full path. + args << "--cc=#{ENV.compiler.to_s}" system "./configure.py", *args - system "make install" + # "-soname" can lead to issues like https://github.com/mxcl/homebrew/issues/11972 + inreplace "Makefile", "-Wl,-soname", "-dynamiclib -install_name " + # A hack to force them use our CFLAGS. MACH_OPT is empty in the Makefile + # but used for each call to cc/ld. + system "make", "install", "MACH_OPT=#{ENV.cflags}" end end