-
-
Notifications
You must be signed in to change notification settings - Fork 11.3k
Fontforge 20141014 #33174
Fontforge 20141014 #33174
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,11 +4,15 @@ class Fontforge < Formula | |
homepage "https://fontforge.github.io" | ||
|
||
stable do | ||
url "https://github.com/fontforge/fontforge/archive/2.0.20140101.tar.gz" | ||
sha1 "abce297e53e8b6ff6f08871e53d1eb0be5ab82e7" | ||
|
||
depends_on "cairo" => :optional | ||
depends_on :python => :optional | ||
url "https://github.com/fontforge/fontforge/releases/download/20141014/fontforge-20141014.tar.gz" | ||
sha1 "b366293e423a94d213824368460fa80f9a1ad810" | ||
|
||
# Upstream commit allowing non-/Applications app bundle to run. | ||
# Doesn't actually work for me yet in stable - Keep an eye on that. | ||
patch do | ||
url "https://github.com/fontforge/fontforge/commit/bce235d23b8.diff" | ||
sha1 "8ec20f07bbf5f93c052bed7304c6e667046910ef" | ||
end | ||
end | ||
|
||
bottle do | ||
|
@@ -17,19 +21,14 @@ class Fontforge < Formula | |
sha1 "f1ff364ff4e0dc54483a370a8ea54abf150f4f22" => :lion | ||
end | ||
|
||
head do | ||
url "https://github.com/fontforge/fontforge.git" | ||
|
||
depends_on "zeromq" | ||
depends_on "czmq" | ||
depends_on "cairo" | ||
depends_on :python if MacOS.version <= :snow_leopard | ||
end | ||
head "https://github.com/fontforge/fontforge.git" | ||
|
||
option 'with-gif', 'Build with GIF support' | ||
option 'with-x', 'Build with X11 support, building the app bundle' | ||
option 'with-python', 'Build with Python extensions and scripting' | ||
option "with-gif", "Build with GIF support" | ||
option "with-x", "Build with X11 support, building the app bundle" | ||
|
||
# Autotools are required to build from source in all releases. | ||
# I have upstreamed a request to change this, so keep monitoring the situation. | ||
# Libtool must be :libltdl or bottling errors occur. | ||
depends_on "autoconf" => :build | ||
depends_on "automake" => :build | ||
depends_on "pkg-config" => :build | ||
|
@@ -44,22 +43,39 @@ class Fontforge < Formula | |
depends_on "giflib" if build.with? "gif" | ||
depends_on "libspiro" => :optional | ||
depends_on "fontconfig" | ||
# The below two below dependencies are highly unrecommended for now | ||
# https://github.com/fontforge/fontforge/issues/1837 | ||
# They should be made recommended again when functional. | ||
depends_on "zeromq" => :optional | ||
depends_on "czmq" if build.with? "zeromq" | ||
depends_on "cairo" | ||
depends_on :python if MacOS.version <= :snow_leopard | ||
|
||
fails_with :llvm do | ||
build 2336 | ||
cause "Compiling cvexportdlg.c fails with error: initializer element is not constant" | ||
end | ||
|
||
# Fix Fontforge collab tools causing folder to build inside bin | ||
# That folder causes audit build failures | ||
# https://github.com/fontforge/fontforge/pull/1838 | ||
if build.with? "zeromq" | ||
patch do | ||
url "https://github.com/fontforge/fontforge/pull/1838.diff" | ||
sha1 "5e7a848fd035b5b2aa18e9398f755feeb0bfafbb" | ||
end | ||
end | ||
|
||
def install | ||
args = ["--prefix=#{prefix}"] | ||
args << "--with-x" if build.with? 'x' | ||
|
||
unless build.head? | ||
# Cairo & Python are still optional in stable, but not in HEAD. | ||
args << "--without-cairo" if build.without? "cairo" | ||
args << "--disable-python-extension" if build.without? "python" | ||
args << "--disable-python-scripting" if build.without? "python" | ||
end | ||
args << "--with-x" if build.with? "x" | ||
|
||
args << "--without-libpng" if build.without? "libpng" | ||
args << "--without-libjpeg" if build.without? "jpeg" | ||
args << "--without-libtiff" if build.without? "libtiff" | ||
args << "--without-giflib" if build.without? "giflib" | ||
args << "--without-libspiro" if build.without? "libspiro" | ||
|
||
# Fix linker error; see: http://trac.macports.org/ticket/25012 | ||
ENV.append "LDFLAGS", "-lintl" | ||
|
@@ -69,27 +85,25 @@ def install | |
ENV.append "ZLIB_LIBS", "-L/usr/lib -lz" | ||
|
||
# And finding Homebrew's Python | ||
if build.with? "python" | ||
ENV.append_path "PKG_CONFIG_PATH", "#{HOMEBREW_PREFIX}/Frameworks/Python.framework/Versions/2.7/lib/pkgconfig/" | ||
ENV.prepend "LDFLAGS", "-L#{%x(python-config --prefix).chomp}/lib" | ||
end | ||
ENV.append_path "PKG_CONFIG_PATH", "#{HOMEBREW_PREFIX}/Frameworks/Python.framework/Versions/2.7/lib/pkgconfig/" | ||
ENV.prepend "LDFLAGS", "-L#{%x(python-config --prefix).chomp}/lib" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Also: non-optional? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yup. Crashes on launch without Python now. |
||
|
||
# Reset ARCHFLAGS to match how we build | ||
ENV["ARCHFLAGS"] = "-arch #{MacOS.preferred_arch}" | ||
|
||
system "./autogen.sh" if build.stable? | ||
system "./bootstrap" if build.head? | ||
# Fontforge is *really* bad at finding the ossp-uuid dependency. Help it. | ||
# It wildly ignores the uuid pkg-config file, so manually give it flags. | ||
ENV.prepend "LIBUUID_CFLAGS", "-I#{Formula["ossp-uuid"].include}" | ||
ENV.prepend "LIBUUID_LIBS", "-L#{Formula["ossp-uuid"].lib}" | ||
|
||
# Bootstrap in every build. See the link below. | ||
system "./bootstrap" #https://github.com/fontforge/fontforge/issues/1806 | ||
system "./configure", *args | ||
system "make" | ||
system "make", "install" | ||
|
||
# Fix the broken fontforge_package_name issue | ||
# This is fixed in the HEAD build. | ||
if build.stable? | ||
mv "#{include}/fontforge_package_name", "#{include}/fontforge" | ||
mv "#{share}/fontforge_package_name", "#{share}/fontforge" | ||
mv "#{share}/doc/fontforge_package_name", "#{share}/doc/fontforge" | ||
end | ||
# Link this to enable symlinking into /Applications with brew linkapps. | ||
ln_s "#{share}/fontforge/osx/Fontforge.app", "#{prefix}" | ||
end | ||
|
||
test do | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,10 +1,10 @@ | ||
require 'formula' | ||
require "formula" | ||
|
||
class Lilypond < Formula | ||
homepage "http://lilypond.org/" | ||
url "http://download.linuxaudio.org/lilypond/sources/v2.18/lilypond-2.18.2.tar.gz" | ||
sha1 "09d3a1e0e9fadeb8ef6e279227a2b30812c7ee9b" | ||
revision 2 | ||
revision 3 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is this because a library name changes or something else? Just curious why it's just There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Only There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Oh, that surprises me. Cool! There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think there was only one other thing before and that no longer applies because they use their own customised Fontforge library. |
||
|
||
devel do | ||
url "http://download.linuxaudio.org/lilypond/source/v2.19/lilypond-2.19.15.tar.gz" | ||
|
@@ -19,7 +19,7 @@ class Lilypond < Formula | |
|
||
env :std | ||
|
||
option 'with-doc', "Build documentation in addition to binaries (may require several hours)." | ||
option "with-doc", "Build documentation in addition to binaries (may require several hours)." | ||
|
||
# Dependencies for LilyPond | ||
depends_on :tex | ||
|
@@ -29,7 +29,7 @@ class Lilypond < Formula | |
depends_on "pango" | ||
depends_on "ghostscript" | ||
depends_on "mftrace" | ||
depends_on "fontforge" => ["with-x", "with-cairo"] | ||
depends_on "fontforge" => ["with-x"] | ||
depends_on "fondu" | ||
depends_on "texinfo" | ||
|
||
|
@@ -57,20 +57,20 @@ class Lilypond < Formula | |
end | ||
|
||
fails_with :clang do | ||
cause 'Strict C99 compliance error in a pointer conversion.' | ||
cause "Strict C99 compliance error in a pointer conversion." | ||
end | ||
|
||
def install | ||
# The contents of the following block are taken from the guile18 formula | ||
# in homebrew/versions. | ||
resource('guile18').stage do | ||
resource("guile18").stage do | ||
system "./configure", "--disable-dependency-tracking", | ||
"--prefix=#{prefix}", | ||
"--with-libreadline-prefix=#{Formula["readline"].opt_prefix}" | ||
system "make", "install" | ||
# A really messed up workaround required on OS X --mkhl | ||
lib.cd { Dir["*.dylib"].each {|p| ln_sf p, File.basename(p, ".dylib")+".so" }} | ||
ENV.prepend_path 'PATH', "#{bin}" | ||
ENV.prepend_path "PATH", "#{bin}" | ||
end | ||
|
||
gs = Formula["ghostscript"] | ||
|
@@ -83,8 +83,8 @@ def install | |
system "./configure", *args | ||
|
||
# Separate steps to ensure that lilypond's custom fonts are created. | ||
system 'make all' | ||
system "make install" | ||
system "make all" | ||
system "make", "install" | ||
|
||
# Build documentation if requested. | ||
if build.with? "doc" | ||
|
@@ -102,7 +102,7 @@ def caveats; <<-EOS.undent | |
end | ||
|
||
test do | ||
(testpath/'test.ly').write <<-EOS.undent | ||
(testpath/"test.ly").write <<-EOS.undent | ||
\\header { title = "Do-Re-Mi" } | ||
{ c' d' e' } | ||
EOS | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All non-optional?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also unclear. The
./configure
script calls them optional, but they've been non-optional in theHEAD
for a while and Fontforge hits errors on loading without them present.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As of this release and going forwards these are non optional.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks. Perhaps that was the cause of my build error the other day. Will try again with the mandatory
cairo
shortly.