40 lines
1.1 KiB
Ruby
40 lines
1.1 KiB
Ruby
class Soci < Formula
|
|
desc "Database access library for C++"
|
|
homepage "http://soci.sourceforge.net/"
|
|
url "https://download.sourceforge.net/project/soci/soci/soci-3.2.2/soci-3.2.2.zip"
|
|
sha256 "e3ad3ea0ef37eab0ae9e6459d2cdd099b1fa1165b663c349e1200356cf4e9c91"
|
|
|
|
depends_on "cmake" => :build
|
|
depends_on "boost" => [:build, :optional]
|
|
depends_on "sqlite" if MacOS.version <= :snow_leopard
|
|
|
|
option "with-oracle", "Enable Oracle support."
|
|
option "with-boost", "Enable boost support."
|
|
option "with-mysql", "Enable MySQL support."
|
|
option "with-odbc", "Enable ODBC support."
|
|
option "with-pg", "Enable PostgreSQL support."
|
|
|
|
def translate(a)
|
|
if a == "pg" then "postgresql" else a end
|
|
end
|
|
|
|
fails_with :clang do
|
|
build 421
|
|
cause "Template oddities"
|
|
end
|
|
|
|
def install
|
|
args = std_cmake_args + %w[.. -DWITH_SQLITE3:BOOL=ON]
|
|
|
|
%w[boost mysql oracle odbc pg].each do |a|
|
|
bool = build.with?(a) ? "ON" : "OFF"
|
|
args << "-DWITH_#{translate(a).upcase}:BOOL=#{bool}"
|
|
end
|
|
|
|
mkdir "build" do
|
|
system "cmake", *args
|
|
system "make", "install"
|
|
end
|
|
end
|
|
end
|