class Pdf2htmlex < Formula desc "PDF to HTML converter" homepage "https://coolwanglu.github.io/pdf2htmlEX/" url "https://github.com/coolwanglu/pdf2htmlEX/archive/v0.14.6.tar.gz" sha256 "320ac2e1c2ea4a2972970f52809d90073ee00a6c42ef6d9833fb48436222f0e5" revision 20 head "https://github.com/coolwanglu/pdf2htmlEX.git" bottle do sha256 "316df8e38b0533e5c7ebbd3b120fe4e5d2957f7d7de92ccc0dbe75c72d1285b6" => :high_sierra sha256 "e02628e81215b1e9fea902f9b353e6f8ea93f1eda7e385f886cee95e39627d20" => :sierra sha256 "5c72b64128d75ce84c0158f6c90c8e710c299de71f593a5b15868c006c5396fb" => :el_capitan end depends_on :macos => :lion depends_on "cmake" => :build depends_on "pkg-config" => :build depends_on "gnu-getopt" depends_on "openjpeg" # for poppler depends_on "ttfautohint" # Fontforge dependencies depends_on "autoconf" => :build depends_on "automake" => :build depends_on "libtool" depends_on "cairo" depends_on "freetype" depends_on "gettext" depends_on "giflib" depends_on "glib" depends_on "jpeg" depends_on "libpng" depends_on "libtiff" depends_on "pango" # Pdf2htmlex use an outdated, customised Fontforge installation. # See https://github.com/coolwanglu/pdf2htmlEX/wiki/Building resource "fontforge" do url "https://github.com/coolwanglu/fontforge.git", :branch => "pdf2htmlEX" end # Upstream issue "poppler 0.59.0 incompatibility" # Reported 4 Sep 2017 https://github.com/coolwanglu/pdf2htmlEX/issues/733 resource "poppler" do url "https://poppler.freedesktop.org/poppler-0.57.0.tar.xz" sha256 "0ea37de71b7db78212ebc79df59f99b66409a29c2eac4d882dae9f2397fe44d8" end resource "poppler-data" do url "https://poppler.freedesktop.org/poppler-data-0.4.8.tar.gz" sha256 "1096a18161f263cccdc6d8a2eb5548c41ff8fcf9a3609243f1b6296abdf72872" end def install ENV.cxx11 if MacOS.version < :mavericks resource("fontforge").stage do # Fix for incomplete giflib 5 support, see # https://github.com/coolwanglu/pdf2htmlEX/issues/713 inreplace "gutils/gimagereadgif.c", "DGifCloseFile(gif)", "DGifCloseFile(gif, NULL)" # Fix linker error; see: https://trac.macports.org/ticket/25012 ENV.append "LDFLAGS", "-lintl" # Reset ARCHFLAGS to match how we build ENV["ARCHFLAGS"] = "-arch #{MacOS.preferred_arch}" system "./autogen.sh" system "./configure", "--prefix=#{libexec}/fontforge", "--without-libzmq", "--without-x", "--without-iconv", "--disable-python-scripting", "--disable-python-extension" system "make" system "make", "install" end ENV.prepend_path "PKG_CONFIG_PATH", "#{libexec}/fontforge/lib/pkgconfig" ENV.prepend_path "PATH", "#{libexec}/fontforge/bin" resource("poppler").stage do inreplace "poppler.pc.in", "Cflags: -I${includedir}/poppler", "Cflags: -I${includedir}/poppler -I${includedir}" system "./configure", "--disable-dependency-tracking", "--prefix=#{libexec}/poppler", "--enable-xpdf-headers", "--enable-poppler-glib", "--disable-gtk-test", "--enable-introspection=no", "--disable-poppler-qt4" system "make", "install" resource("poppler-data").stage do system "make", "install", "prefix=#{libexec}/poppler" end end ENV.prepend_path "PKG_CONFIG_PATH", "#{libexec}/poppler/lib/pkgconfig" ENV.prepend_path "PATH", "#{libexec}/poppler/bin" system "cmake", ".", *std_cmake_args system "make" system "make", "install" end test do system "#{bin}/pdf2htmlEX", test_fixtures("test.pdf") end end