On 2021/10/30 19:40, Stuart Henderson wrote: > On 2021/10/30 19:53, Marc Espie wrote: > > Actually, my "yep" was just we should do things that way, the patch > > is broken. > > > > But go does things backwards by assembling DISTFILES with modern syntax > > and then parsing it back in MODGO_SETUP_WORKSPACE > > > > here's a (somewhat) saner way to do things > > > > Index: go.port.mk > > =================================================================== > > RCS file: /cvs/ports/lang/go/go.port.mk,v > > retrieving revision 1.45 > > diff -u -p -r1.45 go.port.mk > > --- go.port.mk 30 Oct 2021 17:15:11 -0000 1.45 > > +++ go.port.mk 30 Oct 2021 17:51:13 -0000 > > @@ -76,11 +76,16 @@ DISTFILES += ${DISTNAME_ESC}${EXTRACT_S > > EXTRACT_ONLY = ${DISTNAME_ESC}${EXTRACT_SUFX} > > MASTER_SITES ?= ${MASTER_SITE_ATHENS}${MODGO_MODNAME_ESC}/@v/ > > . for _modpath _modver in ${MODGO_MODULES} > > -DISTFILES += > > ${MODGO_DIST_SUBDIR}/{}${_modpath}/@v/${_modver}.zip:${MODGO_MASTER_SITESN} > > -DISTFILES += > > ${MODGO_DIST_SUBDIR}/{}${_modpath}/@v/${_modver}.mod:${MODGO_MASTER_SITESN} > > +. for _s in .zip .mod > > +DISTFILES += > > ${MODGO_DIST_SUBDIR}/{}${_modpath}/@v/${_modver}${_s}:${MODGO_MASTER_SITESN} > > +_MODGO_SETUP += ${MODGO_DIST_SUBDIR}/${_modpath}/@v/${_modver}${_s} > > +. endfor > > . endfor > > the inner loop can be dropped, just do the .zip files above, and add > ${MODGO_MODULES} to the .for below: > > > . for _modpath _modver in ${MODGO_MODFILES} > > -DISTFILES += > > ${MODGO_DIST_SUBDIR}/{}${_modpath}/@v/${_modver}.mod:${MODGO_MASTER_SITESN} > > +. for _s in .mod > > +DISTFILES += > > ${MODGO_DIST_SUBDIR}/{}${_modpath}/@v/${_modver}${_s}:${MODGO_MASTER_SITESN} > > +_MODGO_SETUP += ${MODGO_DIST_SUBDIR}/${_modpath}/@v/${_modver}${_s} > > +. endfor > > . endfor > > MAKE_ENV += GOPROXY=file://${WRKDIR}/go_modules > > MAKE_ENV += GO111MODULE=on GOPATH="${MODGO_GOPATH}" > > @@ -116,10 +121,10 @@ WRKSRC ?= ${MODGO_WORKSPACE}/src/${ALL_ > > MODGO_SETUP_WORKSPACE = mkdir -p ${WRKSRC:H}; mv ${MODGO_SUBDIR} > > ${WRKSRC}; > > .else > > WRKSRC ?= ${WRKDIR}/${MODGO_MODNAME}@${MODGO_VERSION} > > -MODGO_SETUP_WORKSPACE = ln -sf ${WRKSRC} ${WRKDIR}/${MODGO_MODNAME}; > > -. for _MODGO_m in ${DISTFILES:Mgo_modules/*:C/{.*//} > > -MODGO_SETUP_WORKSPACE += ${INSTALL} -D ${DISTDIR}/${_MODGO_m} > > ${WRKDIR}/${_MODGO_m}; > > -. endfor > > +MODGO_SETUP_WORKSPACE = ln -sf ${WRKSRC} ${WRKDIR}/${MODGO_MODNAME}; \ > > cd ${DISTDIR}; here allow getting rid of the repeated dirs in the install line > > > + for m in ${_MODGO_SETUP}; do \ > > + ${INSTALL} -D ${DISTDIR}/$$m ${WRKDIR}/$$m; \ > > ${INSTALL} -D {,${WRKDIR}/$$m; \
typo, I meant: ${INSTALL} -D {,${WRKDIR}}/$$m; \ > > > + done > > .endif > > > > INSTALL_STRIP = >