getting PKGNAME from CONFLICTS

Adam Weinberger adamw at adamw.org
Tue Aug 14 19:16:01 UTC 2018


On Tue, Aug 14, 2018 at 1:13 PM Adam Weinberger <adamw at adamw.org> wrote:
>
> On Tue, Aug 14, 2018 at 11:54 AM Dan Langille <dan at langille.org> wrote:
> >
> > I am in the process of adding FreshPorts support for CONFLICTS[1].
> >
> > I reference www/p5-CGI only because it had a recent commit and it contains a CONFLICTS directive.
> >
> > At https://dev.freshports.org/www/p5-CGI/ you can see:
> >
> >     CONFLICTS: p5-CGI.pm-[1-3]*
> >
> > My goal is to allow a link to the search page or to the page for that port.
> >
> > The CONFLICTS field is a 'A list of package name patterns'[2]
> >
> > I interpret this to mean the values returned by make -V PKGNAME and the documentation[3] indicates this is correct.
> >
> > Thus, the CONFLICTS matches https://dev.freshports.org/www/p5-CGI.pm [4]
> >
> > To extract the PKGNAME values from the CONFLICTS I will need to remove everything after the trailing dash.
> >
> > Can someone do me up a regex for that please? regex is a weak point for me. Or point me into the Mk infrastructure to locate an existing solution.
>
> Hi Dan,
>
> I suspect that the best you can get is to make some assumptions about
> what versions look like. This will catch most, but not all:
>
> /^(.*?)-[-_\.,0-9ab]+$/

On second thought, 'p' should be in there too. [-_\.,0-9abp].

# Adam


-- 
Adam Weinberger
adamw at adamw.org
https://www.adamw.org


More information about the freebsd-ports mailing list