Le Sat, Oct 30, 2021 at 07:41:20PM +0100, Stuart Henderson a écrit : > 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; \
so, to recap (first chunk is mine), if i got it right: @@ -49,6 +49,7 @@ # to explicitly disable SSE on i386 builds. MAKE_ENV += GO386=softfloat MAKE_ENV += GOCACHE="${MODGO_GOCACHE}" +MAKE_ENV += TMPDIR="${WRKDIR}" MODGO_CMD ?= ${SETENV} ${MAKE_ENV} go MODGO_BUILD_CMD = ${MODGO_CMD} install ${MODGO_FLAGS} @@ -77,10 +78,11 @@ 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} +_MODGO_SETUP += ${MODGO_DIST_SUBDIR}/${_modpath}/@v/${_modver}.zip . endfor -. for _modpath _modver in ${MODGO_MODFILES} +. for _modpath _modver in ${MODGO_MODFILES} ${MODGO_MODULES} DISTFILES += ${MODGO_DIST_SUBDIR}/{}${_modpath}/@v/${_modver}.mod:${MODGO_MASTER_SITESN} +_MODGO_SETUP += ${MODGO_DIST_SUBDIR}/${_modpath}/@v/${_modver}.mod . endfor MAKE_ENV += GOPROXY=file://${WRKDIR}/go_modules MAKE_ENV += GO111MODULE=on GOPATH="${MODGO_GOPATH}" @@ -116,10 +118,11 @@ 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}; \ + for m in ${_MODGO_SETUP}; do \ + ${INSTALL} -D {,${WRKDIR}/$$m; \ + done .endif Testing it locally with the telegraf update. Landry