1ffa3406ae
Closes Homebrew/homebrew#32064. Signed-off-by: Misty De Meo <mistydemeo@gmail.com>
93 lines
2.7 KiB
Ruby
93 lines
2.7 KiB
Ruby
require 'formula'
|
|
|
|
class Sphinx < Formula
|
|
homepage 'http://www.sphinxsearch.com'
|
|
url 'http://sphinxsearch.com/files/sphinx-2.1.9-release.tar.gz'
|
|
sha1 '2ddd945eb0a7de532a7aaed2e933ac05b978cff2'
|
|
|
|
head 'http://sphinxsearch.googlecode.com/svn/trunk/'
|
|
|
|
bottle do
|
|
revision 1
|
|
sha1 "bedd71d9e8a0691e2e4bbfef057f6d87a6a7fe28" => :mavericks
|
|
sha1 "ba05b267136faff945b2370b81907c87c4126341" => :mountain_lion
|
|
sha1 "8c6351384d69e982527b71ca6162cc8fd680c2ec" => :lion
|
|
end
|
|
|
|
devel do
|
|
url 'http://sphinxsearch.com/files/sphinx-2.2.3-beta.tar.gz'
|
|
sha1 'ef78cebeae32a0582df504d74d6dd2ded81b73d9'
|
|
end
|
|
|
|
option 'mysql', 'Force compiling against MySQL'
|
|
option 'pgsql', 'Force compiling against PostgreSQL'
|
|
option 'id64', 'Force compiling with 64-bit ID support'
|
|
|
|
depends_on "re2" => :optional
|
|
depends_on :mysql if build.include? 'mysql'
|
|
depends_on :postgresql if build.include? 'pgsql'
|
|
|
|
# http://snowball.tartarus.org/
|
|
resource 'stemmer' do
|
|
url 'http://snowball.tartarus.org/dist/libstemmer_c.tgz'
|
|
sha1 '9b0f120a68a3c688b2f5a8d0f681620465c29d38'
|
|
end
|
|
|
|
fails_with :llvm do
|
|
build 2334
|
|
cause "ld: rel32 out of range in _GetPrivateProfileString from /usr/lib/libodbc.a(SQLGetPrivateProfileString.o)"
|
|
end
|
|
|
|
fails_with :clang do
|
|
build 421
|
|
cause "sphinxexpr.cpp:1802:11: error: use of undeclared identifier 'ExprEval'"
|
|
end
|
|
|
|
def install
|
|
(buildpath/'libstemmer_c').install resource('stemmer')
|
|
|
|
# libstemmer changed the name of the non-UTF8 Hungarian source files,
|
|
# but the released version of sphinx still refers to it under the old name.
|
|
inreplace "libstemmer_c/Makefile.in",
|
|
"stem_ISO_8859_1_hungarian", "stem_ISO_8859_2_hungarian"
|
|
|
|
args = %W[--prefix=#{prefix}
|
|
--disable-dependency-tracking
|
|
--localstatedir=#{var}
|
|
--with-libstemmer]
|
|
|
|
args << "--enable-id64" if build.include? 'id64'
|
|
args << "--with-re2" if build.with? 're2'
|
|
|
|
%w{mysql pgsql}.each do |db|
|
|
if build.include? db
|
|
args << "--with-#{db}"
|
|
else
|
|
args << "--without-#{db}"
|
|
end
|
|
end
|
|
|
|
system "./configure", *args
|
|
system "make install"
|
|
end
|
|
|
|
def caveats; <<-EOS.undent
|
|
Sphinx has been compiled with libstemmer support.
|
|
|
|
Sphinx depends on either MySQL or PostreSQL as a datasource.
|
|
|
|
You can install these with Homebrew with:
|
|
brew install mysql
|
|
For MySQL server.
|
|
|
|
brew install mysql-connector-c
|
|
For MySQL client libraries only.
|
|
|
|
brew install postgresql
|
|
For PostgreSQL server.
|
|
|
|
We don't install these for you when you install this formula, as
|
|
we don't know which datasource you intend to use.
|
|
EOS
|
|
end
|
|
end
|