Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 14 Aug 2018 13:13:12 -0600
From:      Adam Weinberger <adamw@adamw.org>
To:        dan@langille.org
Cc:        freebsd-ports@freebsd.org
Subject:   Re: getting PKGNAME from CONFLICTS
Message-ID:  <CAP7rwcgUfFyUedagXbKmWT7bFnbu=hsUAeR__%2B1f497AH-WSVg@mail.gmail.com>
In-Reply-To: <ED883748-4CE1-4CEB-9830-224F253561E4@langille.org>
References:  <ED883748-4CE1-4CEB-9830-224F253561E4@langille.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Aug 14, 2018 at 11:54 AM Dan Langille <dan@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]+$/
That should put PKGNAME in $1.

# Adam

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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAP7rwcgUfFyUedagXbKmWT7bFnbu=hsUAeR__%2B1f497AH-WSVg>