Revision: 103473 https://trac.macports.org/changeset/103473 Author: cal@macports.org Date: 2013-02-26 14:51:32 -0800 (Tue, 26 Feb 2013) Log Message: ----------- birdfont: new port, see https://lists.macosforge.org/pipermail/macports-users/2013-February/031931.h... Added Paths: ----------- trunk/dports/graphics/birdfont/ trunk/dports/graphics/birdfont/Portfile trunk/dports/graphics/birdfont/files/ trunk/dports/graphics/birdfont/files/patch-scripts__macports_build.py-use-cc-cflags-ldflags.diff Added: trunk/dports/graphics/birdfont/Portfile =================================================================== --- trunk/dports/graphics/birdfont/Portfile (rev 0) +++ trunk/dports/graphics/birdfont/Portfile 2013-02-26 22:51:32 UTC (rev 103473) @@ -0,0 +1,57 @@ +# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4 +# $Id$ + +PortSystem 1.0 + +name birdfont +version 0.18 +revision 1 +maintainers gmail.com:johan.mattsson +categories graphics +description Font editor +long_description ${description} +homepage http://birdfont.org +license GPL-3 + +checksums rmd160 358f540c4fb6d8862ab416e8529e2dde6009c6d5 \ + sha256 f1432dba6c19ee9f8d26b6680af7f6601254430d175ce4046176c90a15a29194 + +platforms darwin + +patchfiles patch-scripts__macports_build.py-use-cc-cflags-ldflags.diff +depends_build port:pkgconfig \ + port:vala \ + port:cctools + +depends_lib port:webkit-gtk \ + port:gtk2 \ + port:libxml2 + +distname birdfont-${version} +master_sites http://birdfont.org/releases/ + +livecheck.type regex +livecheck.url http://birdfont.org/releases +livecheck.regex birdfont-(\\d+.\\d+).tar.gz + +# I'm not convinced it wouldn't be possible to build this +universal, just +# haven't had the time to find out how to pass all necessary flags +universal_variant no + +compiler.blacklist clang + +configure.cmd ./scripts/macport_configure.py +configure.args --prefix=${prefix} + +build.cmd ./scripts/macport_build.py +build.args --prefix=${prefix} \ + --cc=${configure.cc} \ + --cflags=${configure.cflags} \ + --ldflags=${configure.ldflags} + +destroot.cmd ./scripts/macport_install.py +destroot.args --prefix=${prefix} --dest=${destroot} + +post-destroot { + file copy ${worksrcpath}/build/BirdFont.app ${destroot}${applications_dir} +} Property changes on: trunk/dports/graphics/birdfont/Portfile ___________________________________________________________________ Added: svn:keywords + Id Added: svn:eol-style + native Added: trunk/dports/graphics/birdfont/files/patch-scripts__macports_build.py-use-cc-cflags-ldflags.diff =================================================================== --- trunk/dports/graphics/birdfont/files/patch-scripts__macports_build.py-use-cc-cflags-ldflags.diff (rev 0) +++ trunk/dports/graphics/birdfont/files/patch-scripts__macports_build.py-use-cc-cflags-ldflags.diff 2013-02-26 22:51:32 UTC (rev 103473) @@ -0,0 +1,72 @@ +--- scripts/macport_build.py.orig 2013-02-26 20:25:37.000000000 +0100 ++++ scripts/macport_build.py 2013-02-26 20:32:27.000000000 +0100 +@@ -15,7 +15,7 @@ + print("Error: " + cmd) + exit(1) + +-def build (prefix): ++def build (prefix, cc, cflags, ldflags): + #libbirdfont + run("mkdir -p build/libbirdfont") + run("mkdir -p build/bin") +@@ -23,12 +23,11 @@ + run("valac -C --basedir build/libbirdfont/ --enable-experimental-non-null --enable-experimental --define=MAC --library libbirdfont -H build/libbirdfont/birdfont.h libbirdfont/* --pkg libxml-2.0 --pkg gio-2.0 --pkg cairo --pkg libsoup-2.4 --pkg gdk-pixbuf-2.0 --pkg webkit-1.0") + run("cp libbirdfont/*.c build/libbirdfont/") + +- run("""gcc -c build/libbirdfont/*.c -shared -fno-common -fPIC -D 'GETTEXT_PACKAGE="birdfont"' $(pkg-config --cflags --libs libxml-2.0) $(pkg-config --cflags --libs gio-2.0) $(pkg-config --cflags --libs cairo) $(pkg-config --cflags --libs glib-2.0) $(pkg-config --cflags --libs gdk-pixbuf-2.0) $(pkg-config --cflags --libs webkit-1.0) -I ./build/mac/birdfont""") ++ run(cc + " " + cflags + """ -c build/libbirdfont/*.c -fno-common -fPIC -D 'GETTEXT_PACKAGE="birdfont"' $(pkg-config --cflags libxml-2.0) $(pkg-config --cflags gio-2.0) $(pkg-config --cflags cairo) $(pkg-config --cflags glib-2.0) $(pkg-config --cflags gdk-pixbuf-2.0) $(pkg-config --cflags webkit-1.0) -I ./build/mac/birdfont""") + run("mv ./*.o build/libbirdfont/ ") + +- run("gcc -dynamiclib -Wl,-headerpad_max_install_names,-undefined,dynamic_lookup,-compatibility_version,1.0,-current_version,1.0,-install_name,/usr/local/lib/libbirdfont.dylib -shared build/libbirdfont/*.o $(pkg-config --cflags --libs libxml-2.0) $(pkg-config --cflags --libs gio-2.0) $(pkg-config --cflags --libs cairo) $(pkg-config --cflags --libs glib-2.0) $(pkg-config --cflags --libs gdk-pixbuf-2.0) $(pkg-config --cflags --libs webkit-1.0) -shared -o libbirdfont.dylib") ++ run(cc + " " + ldflags + " -dynamiclib -Wl,-headerpad_max_install_names,-undefined,dynamic_lookup,-compatibility_version,1.0,-current_version,1.0,-install_name," + prefix + "/lib/libbirdfont.dylib -shared build/libbirdfont/*.o $(pkg-config --libs libxml-2.0) $(pkg-config --libs gio-2.0) $(pkg-config --libs cairo) $(pkg-config --libs glib-2.0) $(pkg-config --libs gdk-pixbuf-2.0) $(pkg-config --libs webkit-1.0) -shared -o libbirdfont.dylib") + run("mv libbirdfont.dylib build/bin/") +- run ("install_name_tool -id " + prefix + "/lib/libbirdfont.dylib build/bin/libbirdfont.dylib") + + # birdfont + run("mkdir -p build/birdfont") +@@ -36,10 +35,10 @@ + run("valac -C --enable-experimental-non-null --enable-experimental --define=MAC birdfont/* --vapidir=./ --pkg libxml-2.0 --pkg gio-2.0 --pkg cairo --pkg libsoup-2.4 --pkg gdk-pixbuf-2.0 --pkg webkit-1.0 --pkg gtk+-2.0 --pkg libbirdfont") + run("mv birdfont/*.c build/birdfont/") + +- run("""gcc -c ./build/libbirdfont/birdfont.h build/birdfont/*.c -D 'GETTEXT_PACKAGE="birdfont"' $(pkg-config --cflags libxml-2.0) $(pkg-config --cflags gio-2.0) $(pkg-config --cflags cairo) $(pkg-config --cflags glib-2.0) $(pkg-config --cflags gdk-pixbuf-2.0) $(pkg-config --cflags webkit-1.0) -I ./build/libbirdfont/""") ++ run(cc + " " + cflags + """ -c ./build/libbirdfont/birdfont.h build/birdfont/*.c -D 'GETTEXT_PACKAGE="birdfont"' $(pkg-config --cflags libxml-2.0) $(pkg-config --cflags gio-2.0) $(pkg-config --cflags cairo) $(pkg-config --cflags glib-2.0) $(pkg-config --cflags gdk-pixbuf-2.0) $(pkg-config --cflags webkit-1.0) -I ./build/libbirdfont/""") + run("mv ./*.o build/birdfont/") + +- run("gcc build/birdfont/*.o ./build/bin/libbirdfont.dylib $(pkg-config --cflags --libs libxml-2.0) $(pkg-config --cflags --libs gio-2.0) $(pkg-config --cflags --libs cairo) $(pkg-config --cflags --libs glib-2.0) $(pkg-config --cflags --libs gdk-pixbuf-2.0) $(pkg-config --cflags --libs webkit-1.0) $(pkg-config --cflags --libs gtk+-2.0) -o ./build/bin/birdfont") ++ run(cc + " " + ldflags + " build/birdfont/*.o ./build/bin/libbirdfont.dylib $(pkg-config --libs libxml-2.0) $(pkg-config --libs gio-2.0) $(pkg-config --libs cairo) $(pkg-config --libs glib-2.0) $(pkg-config --libs gdk-pixbuf-2.0) $(pkg-config --libs webkit-1.0) $(pkg-config --libs gtk+-2.0) -o ./build/bin/birdfont") + + # birdfont-export + run("mkdir -p build/birdfont-export") +@@ -47,10 +46,10 @@ + run("valac -C --enable-experimental-non-null --enable-experimental --define=MAC birdfont-export/* --vapidir=./ --pkg libxml-2.0 --pkg gio-2.0 --pkg cairo --pkg libsoup-2.4 --pkg gdk-pixbuf-2.0 --pkg webkit-1.0 --pkg gtk+-2.0 --pkg libbirdfont") + run("mv birdfont-export/*.c build/birdfont-export/") + +- run("""gcc -c ./build/libbirdfont/birdfont.h build/birdfont-export/*.c -D 'GETTEXT_PACKAGE="birdfont"' $(pkg-config --cflags libxml-2.0) $(pkg-config --cflags gio-2.0) $(pkg-config --cflags cairo) $(pkg-config --cflags glib-2.0) $(pkg-config --cflags gdk-pixbuf-2.0) $(pkg-config --cflags webkit-1.0) -I ./build/libbirdfont/""") ++ run(cc + " " + cflags + """ -c ./build/libbirdfont/birdfont.h build/birdfont-export/*.c -D 'GETTEXT_PACKAGE="birdfont"' $(pkg-config --cflags libxml-2.0) $(pkg-config --cflags gio-2.0) $(pkg-config --cflags cairo) $(pkg-config --cflags glib-2.0) $(pkg-config --cflags gdk-pixbuf-2.0) $(pkg-config --cflags webkit-1.0) -I ./build/libbirdfont/""") + run("mv ./*.o build/birdfont-export/") + +- run("gcc build/birdfont-export/*.o ./build/bin/libbirdfont.dylib $(pkg-config --cflags --libs libxml-2.0) $(pkg-config --cflags --libs gio-2.0) $(pkg-config --cflags --libs cairo) $(pkg-config --cflags --libs glib-2.0) $(pkg-config --cflags --libs gdk-pixbuf-2.0) $(pkg-config --cflags --libs webkit-1.0) $(pkg-config --cflags --libs gtk+-2.0) -o ./build/bin/birdfont-export") ++ run(cc + " " + ldflags + " build/birdfont-export/*.o ./build/bin/libbirdfont.dylib $(pkg-config --libs libxml-2.0) $(pkg-config --libs gio-2.0) $(pkg-config --libs cairo) $(pkg-config --libs glib-2.0) $(pkg-config --libs gdk-pixbuf-2.0) $(pkg-config --libs webkit-1.0) $(pkg-config --libs gtk+-2.0) -o ./build/bin/birdfont-export") + + run("touch build/installed") + run("touch build/configured") +@@ -69,13 +68,18 @@ + parser = OptionParser() + parser.add_option ("-p", "--prefix", dest="prefix", help="install prefix", metavar="PREFIX") + parser.add_option ("-d", "--dest", dest="dest", help="install to this directory", metavar="DEST") ++parser.add_option ("-c", "--cc", dest="cc", help="select the C compiler", metavar="CC") ++parser.add_option ("-f", "--cflags", dest="cflags", help="set compiler flags", metavar="CFLAGS") ++parser.add_option ("-l", "--ldflags", dest="ldflags", help="set linker flags", metavar="LDFLAGS") + + (options, args) = parser.parse_args() + + if not options.prefix: + options.prefix = "/opt/local" ++if not options.cc: ++ options.cc = "gcc" + +-build (options.prefix) ++build (options.prefix, options.cc, options.cflags, options.ldflags) + build_app () + +