Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 4 May 2022 12:31:08 GMT
From:      Dmitri Goutnik <dmgk@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: d592a0f851d5 - main - Mk/Uses/go.mk: Do not insist on always pulling go.mod and distfile from GOPROXY
Message-ID:  <202205041231.244CV8ie097640@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by dmgk:

URL: https://cgit.FreeBSD.org/ports/commit/?id=d592a0f851d5e09f08eb62f0e7342b3cc69d9ad1

commit d592a0f851d5e09f08eb62f0e7342b3cc69d9ad1
Author:     Dmitri Goutnik <dmgk@FreeBSD.org>
AuthorDate: 2022-05-04 12:12:06 +0000
Commit:     Dmitri Goutnik <dmgk@FreeBSD.org>
CommitDate: 2022-05-04 12:30:23 +0000

    Mk/Uses/go.mk: Do not insist on always pulling go.mod and distfile from GOPROXY
    
    Some Go packages are not listed on pkg.go.dev (usually because their
    versioning scheme does not satisfy Go requirements) and, as a
    consequence, are not accessible through proxy.golang.org.
    
    Instead of resorting to hacks with pseudo-versions and/or enumerating
    dependencies manually with modules2tuple, support fetching go.mod and
    distfile from the usual places using DISTFILES mechanism. This will
    allow bypassing GOPROXY for go.mod and the distribution archive, but
    will still use it for fetching dependencies (with GO_MODULE).
---
 Mk/Uses/go.mk | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/Mk/Uses/go.mk b/Mk/Uses/go.mk
index 034416dda1c1..d77c78c63b84 100644
--- a/Mk/Uses/go.mk
+++ b/Mk/Uses/go.mk
@@ -120,14 +120,16 @@ GO_ENV+=	GOPATH="${GO_GOPATH}" \
 		GOSUMDB=${GO_GOSUMDB}
 .    if defined(GO_MODULE)
 GO_MODNAME=	${GO_MODULE:C/^([^@]*)(@([^@]*)?)/\1/}
+.      if empty(DISTFILES:Mgo.mod*)
 GO_MODVERSION=	${GO_MODULE:C/^([^@]*)(@([^@]*)?)/\2/:M@*:S/^@//:S/^$/${DISTVERSIONFULL}/}
 GO_MODFILE=	${GO_MODVERSION}.mod
 GO_DISTFILE=	${GO_MODVERSION}.zip
-DIST_SUBDIR=	go/${PKGORIGIN:S,/,_,g}/${DISTNAME}
 MASTER_SITES+=	${GO_GOPROXY}/${GO_MODNAME:C/([A-Z])/!\1/g:tl}/@v/
 DISTFILES+=	${GO_MODFILE} ${GO_DISTFILE}
 EXTRACT_ONLY+=	${GO_DISTFILE}
 WRKSRC=		${WRKDIR}/${GO_MODNAME}@${GO_MODVERSION}
+.      endif
+DIST_SUBDIR=	go/${PKGORIGIN:S,/,_,g}/${DISTNAME}
 FETCH_DEPENDS+=	${GO_CMD}:${GO_PORT} \
 		ca_root_nss>0:security/ca_root_nss
 USES+=		zip



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202205041231.244CV8ie097640>