homebrew-core/Formula/geoip.rb
nibbles 2bits 16773337b6 geoip: fix compile error using deps + autoreconf
geoip-1.4.8 always calls a form of autoreconf after configure,
then reruns configure.  This causes a build error on Lion when
it crafts a broken Makefile that is missing the rule to make the
target `../libGeoIP/libGeoIP.a`.

* Add deps on autoconf, automake, and libtool if XCode >= 4.3.
* Add a command to run `autoreconf -ivf` before configure, which
works on Lion and SL.  Previously, the autoreconf on SL would
fail to work because it tries to use shell `--missing` versions.

Both the universal and native builds compile and pass make check
using all five compilers from XCode-4.3.2 and 4.0.2, on both Lion
and 64bit Snow Leopard.

Fixes Homebrew/homebrew#11402.
Closes Homebrew/homebrew#11405.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-03 16:06:47 -05:00

30 lines
966 B
Ruby

require 'formula'
class Geoip < Formula
url 'http://geolite.maxmind.com/download/geoip/api/c/GeoIP-1.4.8.tar.gz'
homepage 'http://www.maxmind.com/app/c'
md5 '05b7300435336231b556df5ab36f326d'
# These are needed for the autoreconf it always tries to run.
if MacOS.xcode_version.to_f >= 4.3
depends_on 'automake' => :build
depends_on 'libtool' => :build
end
def options
[["--universal", "Build a universal binary."]]
end
def install
ENV.universal_binary if ARGV.build_universal?
# Fixes a build error on Lion when configure does a variant of autoreconf
# that results in a botched Makefile, causing this error:
# No rule to make target '../libGeoIP/libGeoIP.la', needed by 'geoiplookup'
# This works on Snow Leopard also when it tries but fails to run autoreconf.
system "autoreconf", "-ivf"
system "./configure", "--prefix=#{prefix}", "--disable-dependency-tracking"
system "make install"
end
end