Software that doesn't use DESTROOT and funny tarball directories

Ryan Schmidt ryandesign at macports.org
Tue Jul 19 05:13:23 PDT 2016


On Jul 17, 2016, at 12:31 AM, Watson Ladd wrote:

> I'm trying to write a portfile for ChezScheme.

Thanks!


> The problem is that
> they want you to run configure with an argument indicating the install
> prefix, then don't seem to support DESTROOT. I've gone to upstream to
> report this, but I understand there is black magic we could use
> instead.

Looking in https://github.com/cisco/ChezScheme/blob/master/makefiles/Mf-install.in, it looks like this project's Makefile supports a variable TempRoot which is equivalent to what other projects call DESTROOT. So you can set:

destroot.destdir TempRoot=${destroot}



> The second question is about names: I named the port chez-scheme.
> Unfortunately the tarball they have expands into one with a directory
> named ChezScheme-9.4 and not chez-scheme-9.4  The obvious thing to do
> is to change the name of the port to ChezScheme, but I do not recall
> many ports with uppercase names. Is this the right thing to do?

Usually you should name the port whatever the upstream developers call themselves, including proper capitalization. If they call themselves ChezScheme, call the port that. If they call themselves chez-scheme, name the port that.

distname defaults to ${name}-${version} but if that's not what the upstream project uses, override distname.

In the case of ChezScheme, if we're talking about https://github.com/cisco/ChezScheme, then they don't appear to offer any downloads. So you'll be using the automatically-generated GitHub tarballs, in which case you'll be using the github portgroup and its defaults and won't need to set distname or master_sites.




More information about the macports-dev mailing list