class Nzbget < Formula desc "Binary newsgrabber for nzb files" homepage "http://nzbget.net/" url "https://github.com/nzbget/nzbget/releases/download/v15.0/nzbget-15.0-src.tar.gz" sha256 "3ef13f3e5917e4cda19c4fc0cd37e79967a19b4e3448c239ff24e37712a6cc0a" head "https://github.com/nzbget/nzbget.git" bottle do sha256 "575aa6f2c1e7a0782a0d01a735641b398819eebeedb45fc79893a0d8d8a99e1a" => :yosemite sha256 "4d9ba1a2d89d3f9cd2abccef3e3f3223c2e9d7a68582c1ea11eb20b0bcea37c0" => :mavericks sha256 "34f2fa74cd448347f0161e7adfdcfec754b3991e5058aad826df565f55e9776d" => :mountain_lion end depends_on "pkg-config" => :build depends_on "openssl" depends_on "libsigc++" fails_with :clang do build 500 cause <<-EOS.undent Clang older than 5.1 requires flexible array members to be POD types. More recent versions require only that they be trivially destructible. EOS end resource "libpar2" do url "https://launchpad.net/libpar2/trunk/0.4/+download/libpar2-0.4.tar.gz" sha256 "316d6f0eb31eb896f5546171c2e86801aeffe5ae5e2decffc17f0018346796d4" end def install resource("libpar2").stage do system "./configure", "--disable-dependency-tracking", "--prefix=#{libexec}/lp2" system "make", "install" end # Tell configure where libpar2 is, and tell it to use OpenSSL system "./configure", "--disable-debug", "--disable-dependency-tracking", "--prefix=#{prefix}", "--with-libpar2-includes=#{libexec}/lp2/include", "--with-libpar2-libraries=#{libexec}/lp2/lib", "--with-tlslib=OpenSSL" system "make" ENV.j1 system "make", "install" etc.install "nzbget.conf" end plist_options :manual => "nzbget" def plist; <<-EOS.undent Label #{plist_name} ProgramArguments #{opt_bin}/nzbget -s -o OutputMode=Log RunAtLoad KeepAlive EOS end test do # Start nzbget as a server in daemon-mode system "#{bin}/nzbget", "-D" # Query server for version information system "#{bin}/nzbget", "-V" # Shutdown server daemon system "#{bin}/nzbget", "-Q" end end