On 2023/05/17 11:02, Laurent Cheylus wrote:
> Hi,
>
> as maintainer, I'm trying to update devel/goreleaser port for the latest
> version 1.18.2 https://github.com/goreleaser/goreleaser/releases/tag/v1.18.2
> , latest version in ports@ tree is 1.17.2.
>
> After update of modules.inc file (list of Go modules as dependencies), I
> have an error to update distinfo file during 'make makesum' execution :
>
> $ make makesum
> (download of a lot of Go modules...)
> /bin/sh: Argument list too long
> *** Error 1 in /usr/ports/mystuff/devel/goreleaser
> (/usr/ports/infrastructure/mk/bsd.port.mk:2250 'makesum': @cd
> /home/fox/ports/distfiles; ...)
sigh, bloody go modules.
here's a workaround:
Index: bsd.port.mk
===================================================================
RCS file: /cvs/ports/infrastructure/mk/bsd.port.mk,v
retrieving revision 1.1587
diff -u -p -r1.1587 bsd.port.mk
--- bsd.port.mk 11 May 2023 17:36:32 -0000 1.1587
+++ bsd.port.mk 17 May 2023 09:46:58 -0000
@@ -2234,6 +2234,7 @@ ${_FUPDATE_COOKIE${_S}}:
.PRECIOUS: ${_PACKAGE_COOKIES} ${_INSTALL_COOKIES}
+# shell command is split up because MAKESUMFILES is huge with go ports
makesum:
@${_warn_checksum}
@${MAKE} fetch-all _MAKESUM=true
@@ -2241,7 +2242,11 @@ makesum:
@cd ${DISTDIR}; \
ck=${CHECKSUM_FILE}.new; \
trap "rm -f $$ck; exit 1" 1 2 3 13 15; \
- cksum -b -a "${_CIPHER}" -- ${MAKESUMFILES} >> $$ck; \
+ cksum -b -a "${_CIPHER}" -- ${MAKESUMFILES} >> $$ck
+
+ @cd ${DISTDIR}; \
+ ck=${CHECKSUM_FILE}.new; \
+ trap "rm -f $$ck; exit 1" 1 2 3 13 15; \
for file in ${MAKESUMFILES}; do \
${_size_fragment} $$file $$file >> $$ck; \
done; \