Creating a Portfile for BirdFont

Clemens Lang cal at macports.org
Tue Feb 26 14:53:32 PST 2013


On Tue, Feb 26, 2013 at 06:05:13PM +0100, Johan Mattsson wrote:
> > Do you want us to include the Portfile in the MacPorts tree?
> Yes, that would be nice.

OK, see r103473[1]. A couple of comments:

 - you can use port lint --nitpick on your package. This will check for
   common mistakes and required variables. In your case, it showed some
   of the following problems:
 - your Portfile had trailing whitespace
 - the maintainers line was missing. I added you; please consider adding
   openmaintainer (see [2] for an explanation)
 - the license line was missing
 - there was a typo in the categories line
 - we usually use at least two checksums, the defaults are rmd160 and
   sha256. You can generate a checksum line using port -v checksum.
 - MacPorts should be able to pass compiler and linker flags as well as
   choose the compiler. (This is needed, e.g. to build universal
   binaries or to select a different compiler, if a platform's "gcc"
   will not work for the software.) I've patched the source so this can
   be achieved.
 - You could avoid running install_name_tool by building the library
   with the correct path in the first place.
 - You sometimes specified linker flags when compiling or compiler flags
   when linking. This is unneeded.
 - Your software doesn't build with clang.
 - I didn't find a reason why the build dependency on python33 is
   needed. It builds fine without it for me.
 - Your application builds an OS X app bundle, but doesn't install it. I
   added the installation of the app bundle into ${applications_dir} (by
   default /Applications/MacPorts/ (You might also want to change that
   when building your package, see macports.conf for that).

While your software built correctly I still see some issues at runtime:
 - Lots of Icons.vala:36: Can't load icon: /opt/local/share/birdfont/icons/<filename>
   Did you forget to install these icons?
   I couldn't verify whether the GUI looks correct, because
 - it doesn't start for me due to a problem in webkit-gtk.

[1] https://trac.macports.org/changeset/103473
[2] https://guide.macports.org/#project.update-policies.nonmaintainer

-- 
Clemens Lang



More information about the macports-users mailing list