88779ade49
Closes Homebrew/homebrew#14653.
92 lines
1.9 KiB
Ruby
92 lines
1.9 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
|
|
|
|
def no_mysql?
|
|
ARGV.include? '--without-mysql'
|
|
end
|
|
|
|
def no_postgresql?
|
|
ARGV.include? '--without-postgresql'
|
|
end
|
|
|
|
def no_sqlite?
|
|
ARGV.include? '--without-sqlite'
|
|
end
|
|
|
|
class Libzdb < Formula
|
|
homepage 'http://tildeslash.com/libzdb/'
|
|
url 'http://tildeslash.com/libzdb/dist/libzdb-2.10.5.tar.gz'
|
|
sha1 '30f975e73caf58f1fa02260ed7136185a3ba2d27'
|
|
|
|
depends_on PostgresInstalled.new unless no_postgresql?
|
|
depends_on MySqlInstalled.new unless no_mysql?
|
|
depends_on 'sqlite' unless no_sqlite?
|
|
|
|
def options
|
|
[
|
|
['--without-sqlite', "Compile without SQLite support."],
|
|
['--without-postgresql', "Compile without PostgreSQL support."],
|
|
['--without-mysql', "Compile without MySQL support."]
|
|
]
|
|
end
|
|
|
|
def install
|
|
args = ["--disable-debug",
|
|
"--disable-dependency-tracking",
|
|
"--prefix=#{prefix}"]
|
|
|
|
args << "--without-sqlite" if no_sqlite?
|
|
args << "--without-mysql" if no_mysql?
|
|
args << "--without-postgresql" if no_postgresql?
|
|
|
|
system "./configure", *args
|
|
system "make install"
|
|
end
|
|
end
|