76 lines
1.8 KiB
Ruby
76 lines
1.8 KiB
Ruby
require 'formula'
|
|
|
|
class MySqlInstalled < Requirement
|
|
def message
|
|
<<-EOS.undent
|
|
MySQL is required to install.
|
|
|
|
You can install this with Homebrew using:
|
|
brew install mysql-connector-c
|
|
For MySQL client libraries only.
|
|
|
|
brew install mysql
|
|
For MySQL server.
|
|
|
|
Or you can use an official installer from:
|
|
http://dev.mysql.com/downloads/mysql/
|
|
EOS
|
|
end
|
|
|
|
def satisfied?
|
|
which 'mysql_config'
|
|
end
|
|
|
|
def fatal?
|
|
true
|
|
end
|
|
end
|
|
|
|
class PostgresInstalled < Requirement
|
|
def message
|
|
<<-EOS.undent
|
|
Postgres is required to install.
|
|
|
|
You can install this with Homebrew using:
|
|
brew install postgres
|
|
|
|
Or you can use an official installer from:
|
|
http://www.postgresql.org/download/macosx/
|
|
EOS
|
|
end
|
|
|
|
def satisfied?
|
|
which 'pg_config'
|
|
end
|
|
|
|
def fatal?
|
|
true
|
|
end
|
|
end
|
|
|
|
class Libzdb < Formula
|
|
homepage 'http://tildeslash.com/libzdb/'
|
|
url 'http://tildeslash.com/libzdb/dist/libzdb-2.10.5.tar.gz'
|
|
sha1 '30f975e73caf58f1fa02260ed7136185a3ba2d27'
|
|
|
|
option 'without-sqlite', "Compile without SQLite support"
|
|
option 'without-postgresql', "Compile without PostgreSQL support"
|
|
option 'without-mysql', "Compile without MySQL support"
|
|
|
|
depends_on PostgresInstalled.new unless build.include? 'without-postgresql'
|
|
depends_on MySqlInstalled.new unless build.include? 'without-mysql'
|
|
depends_on 'sqlite' unless build.include? 'without-sqlite'
|
|
|
|
def install
|
|
args = ["--disable-debug",
|
|
"--disable-dependency-tracking",
|
|
"--prefix=#{prefix}"]
|
|
|
|
args << "--without-sqlite" if build.include? 'without-sqlite'
|
|
args << "--without-mysql" if build.include? 'without-mysql'
|
|
args << "--without-postgresql" if build.include? 'without-postgresql'
|
|
|
|
system "./configure", *args
|
|
system "make install"
|
|
end
|
|
end
|