On Sun, Nov 14, 2021 at 02:37:34PM +0000, Stuart Henderson wrote:
> On 2021/11/14 13:56, Marc Espie wrote:
> > On Sat, Nov 13, 2021 at 11:31:57AM +0000, Stuart Henderson wrote:
> > > We have a few ports that use GH_* and have a second distfile, so have to
> > > build up their own DISTFILES. Where that uses GH_TAGNAME it's not too bad
> > > but the ones with GH_COMMIT are a bit horrible:
> > > 
> > > $ ag -G Makef ^DISTF.*GH_COMMIT
> > > devel/cabal-bundler/Makefile
> > > 13:DISTFILES =    
> > > ${DISTNAME}-${GH_COMMIT:C/(........).*/\1/}${EXTRACT_SUFX}{${GH_COMMIT}${EXTRACT_SUFX}}
> > >  \
> > > 
> > > devel/msbuild/Makefile
> > > 29:DISTFILES =    ${DISTNAME}{${GH_COMMIT}}${EXTRACT_SUFX} \
> > > 
> > > net/arp-scan/Makefile
> > > 22:DISTFILES =    
> > > ${DISTNAME}-${GH_COMMIT:C/(........).*/\1/}${EXTRACT_SUFX}{${GH_COMMIT}${EXTRACT_SUFX}}
> > >  \
> > > 
> > > net/ntopng/Makefile
> > > 19:DISTFILES=     ntopng-${NTOPNG_V}-{}${GH_COMMIT}.tar.gz 
> > > ndpi-${NDPI_V}-{}${NDPI_COMMIT}.tar.gz:0
> > > 
> > > x11/gnome/gdm/Makefile
> > > 15:DISTFILES=             
> > > ${DISTNAME}-${GH_COMMIT:C/(........).*/\1/}${EXTRACT_SUFX}{${GH_COMMIT}${EXTRACT_SUFX}}
> > >  \
> > > 
> > > x11/mruby-zest/Makefile
> > > 45:DISTFILES=     zyn-fusion-{}${GH_COMMIT}${EXTRACT_SUFX} \
> > > 
> > > Seems like it might be useful to provide the generated distfile name
> > > in a variable that can be reused here. I set it for ports using either
> > > GH_TAGNAME and GH_COMMIT so that it doesn't need modifying if we
> > > need to update something to an untagged checkout.
> > > 
> > > Any comments? OK?
> > > 
> > > 
> > > Index: src/share/man/man5/bsd.port.mk.5
> > > ===================================================================
> > > RCS file: /cvs/src/share/man/man5/bsd.port.mk.5,v
> > > retrieving revision 1.546
> > > diff -u -p -r1.546 bsd.port.mk.5
> > > --- src/share/man/man5/bsd.port.mk.5      8 Oct 2021 13:52:28 -0000       
> > > 1.546
> > > +++ src/share/man/man5/bsd.port.mk.5      13 Nov 2021 11:27:24 -0000
> > > @@ -1925,6 +1925,12 @@ Account name of the GitHub user hosting 
> > >  .It Ev GH_COMMIT
> > >  SHA1 commit id to fetch.
> > >  It is an error to specify ${GH_COMMIT} when ${GH_TAGNAME} is specified.
> > > +.It Ev GH_DISTFILE
> > > +Set by
> > > +.Nm
> > > +to the generated name of the distribution file.
> > > +This can be useful for ports listing multiple
> > > +.Ev DISTFILES .
> > >  .It Ev GH_PROJECT
> > >  Name of the project on GitHub.
> > >  .It Ev GH_TAGNAME
> > > Index: ports/infrastructure/mk/bsd.port.mk
> > > ===================================================================
> > > RCS file: /cvs/ports/infrastructure/mk/bsd.port.mk,v
> > > retrieving revision 1.1558
> > > diff -u -p -r1.1558 bsd.port.mk
> > > --- ports/infrastructure/mk/bsd.port.mk   8 Nov 2021 13:36:25 -0000       
> > > 1.1558
> > > +++ ports/infrastructure/mk/bsd.port.mk   13 Nov 2021 11:27:24 -0000
> > > @@ -612,6 +612,7 @@ GH_PROJECT ?=
> > >  
> > >  .if !empty(GH_PROJECT) && !empty(GH_TAGNAME)
> > >  DISTNAME ?=      
> > > ${GH_PROJECT}-${GH_TAGNAME:C/^(v|V|ver|[Rr]el|[Rr]elease)[-._]?([0-9])/\2/}
> > > +GH_DISTFILE = 
> > > ${GH_PROJECT}-${GH_TAGNAME:C/^(v|V|ver|[Rr]el|[Rr]elease)[-._]?([0-9])/\2/}${EXTRACT_SUFX}
> > >  .endif
> > >  
> > >  PKGNAME ?= ${DISTNAME}
> > > @@ -1289,7 +1290,8 @@ _warn_checksum += ;echo ">>> MASTER_SITE
> > >  EXTRACT_SUFX ?= .tar.gz
> > >  
> > >  .if !empty(GH_COMMIT)
> > > -DISTFILES ?= 
> > > ${DISTNAME}-${GH_COMMIT:C/(........).*/\1/}${EXTRACT_SUFX}{${GH_COMMIT}${EXTRACT_SUFX}}
> > > +GH_DISTFILE = 
> > > ${DISTNAME}-${GH_COMMIT:C/(........).*/\1/}${EXTRACT_SUFX}{${GH_COMMIT}${EXTRACT_SUFX}}
> > > +DISTFILES ?= ${GH_DISTFILE}
> > >  .else
> > >  .  if defined(DISTNAME)
> > >  DISTFILES ?= ${DISTNAME}${EXTRACT_SUFX}
> > > 
> > > 
> > You didn't mention whether you left it intentionally out of
> > dump-vars and sqlports or not.
> 
> I forgot about those; it doesn't seem to me that it's useful to add to
> sqlports but maybe is for dump-vars. What do you think?
> 
> 
Well, if it's not useful for sqlports, it doesn't belong in dump-vars
most probably. You can always make show=GH_DISTFILE
if you want to see the value.

Reply via email to