Saturday, October 30, 2021

go module fix

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
. 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}; \
+ for m in ${_MODGO_SETUP}; do \
+ ${INSTALL} -D ${DISTDIR}/$$m ${WRKDIR}/$$m; \
+ done
.endif

INSTALL_STRIP =

No comments:

Post a Comment