Portfile configuration parameter to replace other ports

Ryan Schmidt ryandesign at macports.org
Thu Jul 12 04:33:20 PDT 2012


On Jul 12, 2012, at 05:49, Francisco Garcia wrote:

> I have just created my first two port contributions. I submitted one
> but I am having problems to decide the best approach for the second
> one.
> 
> I modified the ctags portfile to build the latest svn/trunk version
> instead of using the official release. The portfile is here:
> 
> https://github.com/fgarcia/macports/blob/master/devel/ctags-devel/Portfile
> 
> Since the official release lacks support for ObjectiveC I came up with
> two solutions:
> 
> 1. Create a new port named "ctags-devel". That will show it is not an
> official release
> 
> 2. Build a patch file for the ctags Portfile
> 
> I am not sure which one is the normal way to deal with such
> situations. I went for point (1) but that port will collide with the
> ctags port. I know about the parameter to make ctags-devel to conflict
> with ctags, but I cannot find one where I can say that ctags-devel
> "provides" plain ctags too. For example, MacVim depends on ctags and I
> would like an easy way to avoid this dependency conflict.

You've chosen wisely. A separate ctags-devel port is the correct solution.

There is no way to tell MacPorts that ctags-devel "provides" ctags. Instead, every port that declares a dependency on ctags will have to be changed to use a path:-style dependency so that either port could satisfy it. We can simply do a search and replace across all ports to do this.

See this ticket for some preliminary documentation about -devel ports:

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




More information about the macports-users mailing list