fontforge package really old - need help with Portfile

Ryan Schmidt ryandesign at macports.org
Thu Apr 19 04:08:59 UTC 2018


On Apr 18, 2018, at 12:36, Helmut K. C. Tessarek wrote:

> I've recently found out that I need fontforge and the python bindings
> for creating fonts (ForkAwesome) but the package on MacPorts is really,
> really old.

Note that there is a ticket requesting this update:

https://trac.macports.org/ticket/43844

There isn't any work done there, but there is an interested developer you could contact to collaborate.


> The project has moved from sourceforge to github and I was trying to
> create a new Portfile (since it doesn't have a maintainer), but I ran
> into a few issues:
> 
> The packages are available on github
> (https://github.com/fontforge/fontforge/releases) but the names of the
> dist tarballs do not conform to any convention. e.g.:
> 
> https://github.com/fontforge/fontforge/releases/download/20161005/fontforge-dist-20161004.tar.gz
> https://github.com/fontforge/fontforge/releases/download/20170731/fontforge-dist-20170731.tar.xz
> 
> So release 20161005 uses fontforge-dist-20161004.tar.gz
> and release 20170731 uses fontforge-dist-20170731.tar.xz
> 
> Not even sure, if it's even possible to solve this unless there's a way
> to hardcode the download address (which I also do not know how to do).

It shouldn't be a problem to use those files, and it is preferred to do so. It should be as simple as:

github.setup        fontforge fontforge 20170731
github.tarball_from releases
use_xz              yes
distname            ${name}-dist-${version}

See documentation for the github portgroup at:

https://guide.macports.org/chunked/reference.portgroup.html#reference.portgroup.github


> Hmm, so maybe building from git master.

Possible, if absolutely necessary, though it should be a last resort. Again, see github portgroup documentation.


> Well, the package doesn't use
> ./autogen.sh but some other script called bootstrap.
> 
> So how do I run bootstrap instead of autogen.sh?

"bootstrap" is the recommended name for this script, according to GNU conventions, but most projects disregard the recommendation and name the script "autogen.sh".


> Do I just use:
> 
> use_autoreconf          yes
> autoreconf.cmd          ./bootstrap

Yes, except that when you change autoreconf.cmd, that causes MacPorts to assume that your different cmd doesn't require autotools dependencies, which is not correct in this case. So you need to re-add the dependencies:

depends_build-append    port:autoconf \
                        port:automake \
                        port:libtool


See also this mailing list thread:

https://lists.macports.org/pipermail/macports-dev/2017-December/037081.html



More information about the macports-dev mailing list