8230210b98
In previous formula, only unixodbc is supported, however, freetds can be built with either unixodbc or libiodbc. This patch add support of libiodbc. The changes are based on #4211
85 lines
2.7 KiB
Ruby
85 lines
2.7 KiB
Ruby
class Freetds < Formula
|
|
desc "Libraries to talk to Microsoft SQL Server and Sybase databases"
|
|
homepage "http://www.freetds.org/"
|
|
url "ftp://ftp.freetds.org/pub/freetds/stable/freetds-1.00.15.tar.gz"
|
|
mirror "https://fossies.org/linux/privat/freetds-1.00.15.tar.gz"
|
|
sha256 "310be6a9396a3de7a420f58219afacc13fb4f774ee6c70c06da903262db06ec2"
|
|
|
|
bottle do
|
|
sha256 "8504714793c26361e045fe9d4a8640eb9f26399c8f188927b771e2c20066b29a" => :sierra
|
|
sha256 "500e02460d3b18e869d4bdb182ddfecdeeb5efc218db4a1da7d8ad3424743028" => :el_capitan
|
|
sha256 "fd457df31dac76810fde87d45e42b0ba9723841ace49510d56059367ba3b1802" => :yosemite
|
|
end
|
|
|
|
head do
|
|
url "https://github.com/FreeTDS/freetds.git"
|
|
|
|
depends_on "autoconf" => :build
|
|
depends_on "automake" => :build
|
|
depends_on "gettext" => :build
|
|
depends_on "libtool" => :build
|
|
end
|
|
|
|
option :universal
|
|
option "with-msdblib", "Enable Microsoft behavior in the DB-Library API where it diverges from Sybase's"
|
|
option "with-sybase-compat", "Enable close compatibility with Sybase's ABI, at the expense of other features"
|
|
option "with-odbc-wide", "Enable odbc wide, prevent unicode - MemoryError's"
|
|
option "with-krb5", "Enable Kerberos support"
|
|
|
|
deprecated_option "enable-msdblib" => "with-msdblib"
|
|
deprecated_option "enable-sybase-compat" => "with-sybase-compat"
|
|
deprecated_option "enable-odbc-wide" => "with-odbc-wide"
|
|
deprecated_option "enable-krb" => "with-krb5"
|
|
|
|
depends_on "pkg-config" => :build
|
|
depends_on "unixodbc" => :optional
|
|
depends_on "libiodbc" => :optional
|
|
depends_on "openssl" => :recommended
|
|
|
|
def install
|
|
if build.with?("unixodbc") && build.with?("libiodbc")
|
|
odie "freetds: --without-libiodbc must be specified when using --with-unixodbc"
|
|
end
|
|
|
|
args = %W[
|
|
--prefix=#{prefix}
|
|
--with-tdsver=7.3
|
|
--mandir=#{man}
|
|
]
|
|
|
|
if build.with? "openssl"
|
|
args << "--with-openssl=#{Formula["openssl"].opt_prefix}"
|
|
end
|
|
|
|
if build.with? "unixodbc"
|
|
args << "--with-unixodbc=#{Formula["unixodbc"].opt_prefix}"
|
|
end
|
|
|
|
if build.with? "libiodbc"
|
|
args << "--with-libiodbc=#{Formula["libiodbc"].opt_prefix}"
|
|
end
|
|
|
|
# Translate formula's "--with" options to configuration script's "--enable"
|
|
# options
|
|
%w[msdblib sybase-compat odbc-wide krb5].each do |option|
|
|
if build.with? option
|
|
args << "--enable-#{option}"
|
|
end
|
|
end
|
|
|
|
ENV.universal_binary if build.universal?
|
|
|
|
if build.head?
|
|
system "./autogen.sh", *args
|
|
else
|
|
system "./configure", *args
|
|
end
|
|
system "make"
|
|
ENV.j1 # Or fails to install on multi-core machines
|
|
system "make", "install"
|
|
end
|
|
|
|
test do
|
|
system "#{bin}/tsql", "-C"
|
|
end
|
|
end
|