Skip to content

Commit

Permalink
pdf2svg: Depend on a Requirement for Poppler-Glib
Browse files Browse the repository at this point in the history
Instead of doing `pkg-config` checks, now use a Requirement that references the
installation Tab for Poppler.
  • Loading branch information
Sharpie committed May 23, 2012
1 parent 3358a54 commit 6e12e07
Showing 1 changed file with 18 additions and 15 deletions.
33 changes: 18 additions & 15 deletions Library/Formula/pdf2svg.rb
Original file line number Diff line number Diff line change
@@ -1,9 +1,21 @@
require 'formula'

def have_poppler_glib?
# Not using Homebrew's system wrapper because we actually want to see the
# exit code of the command.
Kernel.system "#{HOMEBREW_PREFIX}/bin/pkg-config", "poppler-glib", "--exists"
class PopplerGlib < Requirement
def satisfied?
poppler = Tab.for_formula 'poppler'
poppler.installed_with? '--with-glib'
end

def fatal?
true
end

def message; <<-EOS.undent
pdf2svg requires the Poppler-Glib bindings but Poppler was not installed
with support for glib. Please reinstall Poppler using the `--with-glib`
option.
EOS
end
end

class Pdf2svg < Formula
Expand All @@ -14,6 +26,7 @@ class Pdf2svg < Formula
depends_on "pkg-config" => :build

depends_on "poppler"
depends_on PopplerGlib.new
depends_on "gtk+"
depends_on "cairo" # Poppler-glib needs a newer cairo than provided by OS X 10.6.x
# and pdf2svg needs it to be on PKG_CONFIG_PATH during the build
Expand All @@ -24,18 +37,8 @@ def patches
end

def install
unless have_poppler_glib?
onoe <<-EOS.undent
pkg-config could not find poppler-glib! Please try re-installing
Poppler with support for the Glib backend:
brew uninstall poppler
brew install --with-glib poppler
EOS
exit 1
end

ENV.x11

system "./configure", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking"
system "make install"
end
Expand Down

0 comments on commit 6e12e07

Please sign in to comment.