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 <jacknagel@gmail.com>
This commit is contained in:
samueljohn 2012-06-25 12:41:47 +02:00 committed by Jack Nagel
parent 846d61ba9b
commit e5e35399b5

View file

@ -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