From owner-freebsd-ports@freebsd.org Wed Jul 10 05:22:18 2019 Return-Path: Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6A41615CA873 for ; Wed, 10 Jul 2019 05:22:18 +0000 (UTC) (envelope-from idefix@fechner.net) Received: from anny.lostinspace.de (anny.lostinspace.de [IPv6:2001:608:a02::33]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2AC9E70BD5 for ; Wed, 10 Jul 2019 05:22:16 +0000 (UTC) (envelope-from idefix@fechner.net) Received: from server.idefix.lan (unknown [IPv6:2a01:5c0:1b:1b71:21b:21ff:fe7b:3468]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: idefix@fechner.net) by anny.lostinspace.de (Postfix) with ESMTPSA id 590E47170 for ; Wed, 10 Jul 2019 07:22:13 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fechner.net; s=default; t=1562736133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references:openpgp:openpgp:autocrypt:autocrypt; bh=tEFI2+SixbRGHNtB4QU6ois9p27UDFk7lnbd0s1oySM=; b=gQu0jPfe0XCIvX/ttiiDqlNdZO5MMKUGMncHGe7y45iChDn4eRwbMMjk3foaaJ1AF9H7uT jCGi91hK/0GsPGmtP0ntQvJQIofXZIh3RUvSlaMvhSk2SiRLv22p4m66Jv6GXnZPmlZW8E AMw5sVYL7lILMnPipIuhwOT/wGvtBEU= Received: from [192.168.0.151] (217-155-117-131.ip-addr.inexio.net [131.117.155.217]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by server.idefix.lan (Postfix) with ESMTPSA id B4E959DFD8 for ; Wed, 10 Jul 2019 07:22:11 +0200 (CEST) Subject: Re: How to handle go dependencies To: freebsd-ports@freebsd.org References: From: Matthias Fechner Openpgp: preference=signencrypt Autocrypt: addr=idefix@fechner.net; prefer-encrypt=mutual; keydata= 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 Xxj8Dw== Message-ID: <15e9b821-bf51-0eee-6000-3032bf4067d1@fechner.net> Date: Wed, 10 Jul 2019 07:22:03 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.7.2 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="QgrE7WfFmYksNbqRMArWjURLYOQZcLp9U" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=fechner.net; s=default; t=1562736133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references:openpgp:openpgp:autocrypt:autocrypt; bh=tEFI2+SixbRGHNtB4QU6ois9p27UDFk7lnbd0s1oySM=; b=Mwec2Kq/5yHyarcmPm+cj2KmUJuuO3gGsg597TBsKGaCdMWc6hSx7HWRR41su4Ddfp7i0V YD/QLr3zytdr5EClJR417r7PdR/oeEjnNspiVHX7VoLdLoaqVwMmkfQs15JfcVm6igi3Yh yo6xl2EsLC2ViY/wGWBZNM90bNOnpdQ= ARC-Seal: i=1; s=default; d=fechner.net; t=1562736133; a=rsa-sha256; cv=none; b=lWQXy/RKlAS5Fdfi7EpJayhsDYD5QOigE7gUg19HRStIOefmeOy9fKw3qUfAPLYNevZGAB 2B6OmOTQ5bvwU6ev1Q/Fh8Nkqoen6Q3ZKlqpe3v7sdMvPOglaTyO+1LDs4yQPREdRSLv82 Z+lDXi3ZiBan1YerMf2qdS4cl6hlDmw= ARC-Authentication-Results: i=1; ORIGINATING; auth=pass smtp.auth=idefix@fechner.net smtp.mailfrom=idefix@fechner.net X-Spamd-Bar: ----- Authentication-Results: ORIGINATING; auth=pass smtp.auth=idefix@fechner.net smtp.mailfrom=idefix@fechner.net X-Rspamd-Server: anny.lostinspace.de X-Rspamd-Queue-Id: 590E47170 X-Spamd-Result: default: False [-5.20 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; BAYES_HAM(-3.00)[100.00%]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; HAS_ATTACHMENT(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[freebsd-ports@freebsd.org]; TO_DN_NONE(0.00)[]; MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain]; RCPT_COUNT_ONE(0.00)[1]; ARC_SIGNED(0.00)[i=1]; DKIM_SIGNED(0.00)[]; SIGNED_PGP(-2.00)[]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:+,3:~]; ASN(0.00)[asn:12874, ipnet:2000::/3, country:IT]; MID_RHS_MATCH_FROM(0.00)[]; RCVD_TLS_ALL(0.00)[]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Jul 2019 05:22:18 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --QgrE7WfFmYksNbqRMArWjURLYOQZcLp9U Content-Type: multipart/mixed; boundary="nlbJrcVBW1wcRbBifGWCHJK62okrYeet8"; protected-headers="v1" From: Matthias Fechner To: freebsd-ports@freebsd.org Message-ID: <15e9b821-bf51-0eee-6000-3032bf4067d1@fechner.net> Subject: Re: How to handle go dependencies References: In-Reply-To: --nlbJrcVBW1wcRbBifGWCHJK62okrYeet8 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Content-Language: en-US Am 22.06.2019 um 11:58 schrieb Matthias Fechner: > What is the correct way to getting these dependencies fetched and > correctly included into the work-source in the fetch step using go? Here a short summary what I had to do to build the port successfully with go deps. Thanks a lot for all that helped here! Add: USES=3D=C2=A0=C2=A0=C2=A0 go:modules I had to use this USES as the port is using gmake to build everything: USES=3D=C2=A0=C2=A0=C2=A0 gmake go:modules,no_targets As gmake is used, the GOFLAGS must be passed to gmake with: MAKE_ENV=3D=C2=A0=C2=A0=C2=A0 GOFLAGS=3D"${GO_BUILDFLAGS}" The port uses gitlab to fetch the distfiles, so I had to tell the ports that github is not the default: USE_GITHUB=3D=C2=A0=C2=A0=C2=A0 nodefault The next step is then to create the GH_TUPLE and GL_TUPLE (depending where the go libs are hosted, for they were on github and gitlab). For this a very handy tool from Dmitri is existing: ports-mgmt/modules2tu= ple To simplify it, I create a new target: gomod-deps: patch =C2=A0=C2=A0=C2=A0 (cd ${WRKSRC} && go mod vendor) =C2=A0=C2=A0=C2=A0 (cd ${WRKSRC} && modules2tuple vendor/modules.txt) Just execute `make gomod-deps` and you should see the required GH/GL_TUPLE lines. For the GL_TUPLE lines I had to put in the full length for the commit hash, as the short one does not work. I'm not sure if this is a port problem or a gitlab limitation, a task for later to look into it. The last section of the TUPLE line must not contain the character `-` if this is the case, replace it by a `_`. I think the script from Dmitri is doing this already for the GH_TUPLE lin= es. Put the TUPLE lines into the Makefile, run `make makesum` and your port should be prepare to be able to build. If you need a full example, please have a look into devel/gitaly. Have fun and thanks again to all that helped me! =C2=A0=C2=A0=C2=A0 Gru=C3=9F Matthias --=20 "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning." -- Rich Cook --nlbJrcVBW1wcRbBifGWCHJK62okrYeet8-- --QgrE7WfFmYksNbqRMArWjURLYOQZcLp9U Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJdJXYCAAoJELaLddyf10fhBaAP/iSfPPe68JRZxWq0G2uZy4GH 3kmx7WbbZjIqVCOSRZFTTU9zh9isZ7GrbywMjD0eF07tMbpx2+c0c1tchR4ptjA+ rzILUfe/XICPX/8KEKPbJlBSBracQm9JbYAp4ZY30AAlc+MAE2hP8TeTbP19mEDq TD1bO4A0WlVRWwc4xxRl4dn0AvD5W4brY/2sHgXFtMv20fERaQWe6x7tK+CF0AL3 4iHV5DKEy3nZlQpyNaNnlihOZ12NS/4pPjGriJOS6DR29/VZiz9WK0N8F10DmbAL u+5fnNquWxNO2KeUXqC0bH9nm0Y01ADZzMKmtNAevCzeA7mGYVhcat6nZ4SZ8frE ucKlHPJ0E0sb+75QMVRxNSG26Vb86A9NU15jsX8UALNHVGhincQ3pXfXu51NwtFE +pD43mPQe++hQQXb8FjCutrlST/6Z8ms5zlHlw3mbTxhNQkQ0DWJ0es9UFCZ74I1 fxaCS07/4c0fwpWUi23BH8aLHoQh4sGjmKN5EuCpiSQfg1hgiqNzYSWZBkD9i6sG 4KiG/eBWVp+5RwMxyWD6RQ7GuehFlUrKM+wPnj1p/nQo/q1hXXTu/9oMC0NtMgjs LZ2TzJR5noKCv+CVRa5A1cpxEHWmRp4ViQ6f24lQ8eindgKamNxWNYelhjGG+5zS 542zHFmQe0/FWjsRudUT =6HBW -----END PGP SIGNATURE----- --QgrE7WfFmYksNbqRMArWjURLYOQZcLp9U--