notbugAs an Amazon Associate I earn from qualifying purchases.
Want a good read? Try FreeBSD Mastery: Jails (IT Mastery Book 15)
non port: Mk/Uses/

Number of commits found: 32

Thu, 20 May 2021
[ 16:00 dmgk (Dmitri Goutnik) ]    commit hash:475a23ad78aa18be05071e841fc82894711c085c  475a23a 
Mk/Uses/ Add -trimpath to GO_BUILDFLAGS

Differential Revision:
Fri, 16 Apr 2021
[ 21:19 yuri (Yuri Victorovich) ]    commit hash:b77a05bb44c206268971d14beb92fb9cf1d28842  b77a05b 
Mk/Uses/ Allow ports to have additional distfiles

Some ports need to perform extra build steps for which they need additional

This commit makes to preserve MASTER_SITES,DISTFILES,EXTRACT_ONLY set by
port's Makefile.

PR:		255085
Approved by:	dmgk (maintainer)
Tue, 6 Apr 2021
[ 14:27 mat (Mathieu Arnold) ]    commit hash:5d33e045968104ac678d8b4b4ec1e8956bbf68e0  5d33e04 (Only the first 10 of 224 ports in this commit are shown above. View all ports for this commit)
framework: Remove $FreeBSD$

Where appropriate fiddle with a few other things.
Wed, 24 Feb 2021
[ 22:39 dmgk ] Original commit   Revision:566511
Mk/Uses/ Escape module names

Escape module names according to the GOPROXY protocol [1].

"To avoid ambiguity when serving from case-insensitive file systems,
the $module and $version elements are case-encoded by replacing every
uppercase letter with an exclamation mark followed by the corresponding
lower-case letter."


Reported by:	yuri
Mon, 22 Feb 2021
[ 19:17 dmgk ] Original commit   Revision:566324
Mk/Uses/ Disable network access in extract and test targets.

Reported by:	Andrew Gierth <andrew at>
Sat, 20 Feb 2021
[ 23:30 dmgk ] Original commit   Revision:566197
Mk/Uses/ Work around symlink creation issue in Poudriere

PR:		253713
Reported by:	Dries Michiels <>
Reviewed by:	otis
Fri, 19 Feb 2021
[ 13:12 dmgk ] Original commit   Revision:566063
Mk/Uses/ Add support for using Go for dependency management

Add support for offloading dependency management to Go using `go mod download`.

Reviewed by:	swills
Differential Revision:
Fri, 8 Jan 2021
[ 14:21 dmgk ] Original commit   Revision:560773
Mk/Uses/ Explicitly set modules-aware mode depending on "modules" argument

Until now, relied on default Go behavior of switching to modules-aware
mode only in the presence of go.mod and building in legacy ("GOPATH") mode
otherwise. This changes with go1.16 [1] which flips defaults to always build in
modules-aware mode and needs an explicit GO111MODULE=off to turn modules off.

Stop relying on Go defaults and set build mode explicitly depending on
"modules" argument in USES=go.

Thu, 12 Nov 2020
[ 08:15 dch ] Original commit   Revision:554936
Ensure go modules cannot fetch missing modules via network

Notes from go help modules:

If GOPROXY is set to the string "direct", downloads use a direct connection to
source control servers. Setting GOPROXY to "off" disallows downloading modules
from any source. Otherwise, GOPROXY is expected to be list of module proxy URLs
separated by either comma (,) or pipe (|) characters, which control error
fallback behavior. For each request, the go command tries each proxy in
sequence. If there is an error, the go command will try the next proxy in the
list if the error is a 404 or 410 HTTP response or if the current proxy is
followed by a pipe character, indicating it is safe to fall back on any error.

The GOPRIVATE and GONOPROXY environment variables allow bypassing
the proxy for selected modules. See 'go help module-private' for details.
(Only the first 15 lines of the commit message are shown above View all of this commit message)
Tue, 14 Apr 2020
[ 12:52 dmgk ] Original commit   Revision:531678
Mk/Uses/ Fix gomod-vendor-diff when there are 3 or fewer items in the

'make gomod-vendor-diff' currently doesn't work properly when modules2tuple
doesn't return the first empty line, when 3 or fewer items are in the GH_TUPLE

PR:		245617
Submitted by:	yuri
Thu, 2 Apr 2020
[ 17:39 dmgk ] Original commit   Revision:530388

Set GO_NO_VENDOR_CHECKS=1 to signal lang/go to relax vendor checks during ports

PR:		244783
Reported by:	Christopher Hall <>
Reviewed by:	mikael swills yuri
MFH:		2020Q2
Differential Revision:
Sun, 8 Mar 2020
[ 13:30 dmgk ] Original commit   Revision:528031
Mk/Uses/ Add the gomod-vendor-diff target

Add the 'gomod-vendor-diff' target that tells the user what changes are needed
in GH_TUPLE. This is in addition to the existing 'gomod-vendor' target that
shows the user the whole new GH_TUPLE.

PR:		244660
Submitted by:	yuri
Mon, 2 Mar 2020
[ 13:58 dmgk ] Original commit   Revision:527631
Mk/Uses/ Avoid pollution of Go module cache with modules downloaded by

Use module cache local to the WRKDIR and add the -modcacherw flag (available in
go1.14 [1, 2]) to instruct go mod vendor to leave directories in the module
cache read-write instead of making them unwritable.


Reviewed by:	swills
Differential Revision:
[ 13:47 dmgk ] Original commit   Revision:527629
Mk/Uses/ Revert r517706, switch GO_PORT to lang/go on aarch64

aarch64 support has landed in lang/go, switch default GO_PORT from
lang/go-devel to lang/go.
Thu, 20 Feb 2020
[ 12:15 dmgk ] Original commit   Revision:526567
Mk/Uses/ Add GO_TESTTARGET and provide default do-test

Add GO_TESTTARGET defaulting to `./...` (the current package and all
subpackages) and create do-test target unless already provided by port's

Also, while here

- remove GO_WRKDIR_SRC - it is not used by any port anymore
- sync GO_PKGNAME and GO_TARGET descriptions with Porter's Handbook

Reviewed by:	tobik
Differential Revision:
Wed, 25 Dec 2019
[ 18:10 dmgk ] Original commit   Revision:520881
Mk/Uses/ Warn if Go is not installed for gomod-vendor

PR:		242872
Reviewed by:	yuri
Differential Revision:
Tue, 3 Dec 2019
[ 11:16 antoine ] Original commit   Revision:518928
Revert r517831, FOO_TEST_TARGET is reserved for option helpers

With hat:	portmgr
Sun, 17 Nov 2019
[ 16:19 dmgk ] Original commit   Revision:517831
Mk/Uses/ Add GO_TEST_TARGET and provide default do-test

Add GO_TEST_TARGET defaulting to `./...` (the current package and all
subpackages) and create do-test target unless already provided by port's

In many cases this would allow us to remove explicit do-test and rely on
defaults provided by ports framework for testing.

Also, while here

- remove GO_WRKDIR_SRC - it is not used anywhere anymore
- sync GO_PKGNAME and GO_TARGET descriptions with Porter's Handbook

Reviewed by:	tobik
Approved by:	tz (mentor, implicit)
Differential Revision:
Sat, 16 Nov 2019
[ 12:39 dmgk ] Original commit   Revision:517743
Mk/Uses/ Omit symbol table and debug information by default

PR:		233335
Reported by:	yuri
Reviewed by:	0mp, tobik
Approved by:	araujo (mentor)
Differential Revision:
Fri, 15 Nov 2019
[ 22:47 dmgk ] Original commit   Revision:517706
Mk/Uses/ Enable binary package building for Go ports on aarch64

Tentatively enable package building for Go ports on aarch64 to catch
regressions early.

Reviewed by:	tobik, Mikael Urankar <>
Approved by:	tz (mentor, implicit)
Differential Revision:
Mon, 16 Sep 2019
[ 20:55 dmgk ] Original commit   Revision:512187(Only the first 10 of 46 ports in this commit are shown above. View all ports for this commit)
Change my maintainer email

Approved by:	tz (mentor), portmgr (adamw)
Differential Revision:
Sat, 14 Sep 2019
[ 08:20 tobik ] Original commit   Revision:512001
Mk/Uses/ Allow naming output executable in GO_TARGET

- Allow GO_TARGET to be specified as a tuple in the form package:output
- Rework build/install targets

PR:		240535
Submitted by:	Dmitri Goutnik <>
Exp-run by:	antoine
Differential Revision:
Tue, 13 Aug 2019
[ 17:23 tobik ] Original commit   Revision:508838
Mk/Uses/ Add gomod-vendor helper target

For USES=go:modules ports it simplifies generating GH_TUPLE by
calling modules2tuple in the right directory etc.

Submitted by:	Dmitri Goutnik <> (maintainer)
Differential Revision:
Thu, 1 Aug 2019
[ 06:25 tobik ] Original commit   Revision:507751

GO_PKGNAME defaults to ${PORTNAME}.  As a result it is often too
general and can produce bad results with make makeplist.  For
example, in mail/aerc it produces bogus entries like


since GO_PKGNAME=aerc there.

Having it in PLIST_SUB was only useful for Go libraries which we
no longer support.  Only 2 ports use it currently but do not really
need to and are easily fixed.

Approved by: (maintainer)
Differential Revision:
Fri, 26 Jul 2019
[ 07:15 tobik ] Original commit   Revision:507340
Mk/Uses/ Default to "." instead of PORTNAME

If neither GO_PKGNAME or GO_TARGET are set explicitly, go install
tries to install a package named ${PORTNAME} which is almost always
wrong.  This forces Go ports to set GO_PKGNAME or GO_TARGET although
their value is often redundant.

Update do-build to default to the "." package instead ("the package
in the current directory") and teach do-install to install the "."
package.  In many cases, this removes the need to explicitly set
GO_PKGNAME and GO_TARGET making USES=go:modules alone sufficient
for simpler ports.

This is a backward compatible change.

- Assign maintainership to Dmitri

Submitted by:	Dmitri Goutnik <>
Approved by:	jlaffaye (maintainer timeout, ~3 weeks)
Differential Revision:
Sat, 29 Jun 2019
[ 03:51 tobik ] Original commit   Revision:505321(Only the first 10 of 114 ports in this commit are shown above. View all ports for this commit)
Convert all Go ports to USES=go

This allows for port testing with lang/go-devel via GO_PORT, setting
up the Go build environment in a single place, and is step one in
simplifying Go ports that often define too complicated do-build
targets themselves.

USES=go gains new arguments 'run' to add lang/go to RUN_DEPENDS and
'no_targets' for ports with composite builds that call 'go' themselves
and do not need the do-build/do-install targets of USES=go.

PR:		238849
Submitted by: (also D20745)
Reviewed by:	mat, tobik
Exp-run by:	antoine
Differential Revision:
Sun, 23 Jun 2019
[ 11:50 tobik ] Original commit   Revision:504942
Mk/Uses/ Allow overriding the Go port

This is intended to be used for regression testing of USES=go ports
with lang/go-devel.

Submitted by:
Differential Revision:
Wed, 24 Apr 2019
[ 16:25 jlaffaye ] Original commit   Revision:499862
Improve support for ARM in
- Set GOARM value according to current ARCH

Submitted by:	Dmitri Goutnik <>
Differential Revision:	D19892
Mon, 8 Apr 2019
[ 16:46 tobik ] Original commit   Revision:498386
Mk/Uses/ Remove support for installing Go libs and sources

All ports that depend on it have been removed in r497504.

- Restrict build to only main packages by adding -buildmode=exe to
- Add initial support for building in module-aware mode

PR:		236509
Submitted by:	Dmitri Goutnik <>
Reviewed by:	0mp, jlaffaye, tobik
Approved by:	jlaffaye (maintainer)
Differential Revision:
Sat, 25 Aug 2018
[ 17:26 jlaffaye ] Original commit   Revision:478076
Add GO_BUILDFLAGS variable to Uses/

PR:		225812
Submitted by:	David O'Rourke <>
Sun, 11 Mar 2018
[ 02:24 woodsb02 ] Original commit   Revision:464138
Allow USES=go ports to override make targets & include <>

Prior to this change, if a port had:
- .include <>, and
- overrode a make target (e.g. post-extract:)

then the following warnings were produced when invoking make on the port:
  make: "/usr/local/poudriere/ports/default/CATEGORY/PORT/Makefile" line XX:
warning: duplicate script for target "post-extract" ignored
  make: "/usr/local/poudriere/ports/default/Mk/Uses/" line 68: warning:
using previous script for "post-extract" defined here

This change fixes this issue by wrapping the definition of make targets
in a separate once-only !defined wrapper which is blocked until
This concept was copied from Mk/Uses/

PR:		224948
Submitted by:	woodsb02
Approved by:	jlaffaye (maintainer)
Fri, 22 Apr 2016
[ 12:40 mat ] Original commit   Revision:413776(Only the first 10 of 35 ports in this commit are shown above. View all ports for this commit)
Move lang/go/files/ to USES=go.

Reviewed by:	bapt
Sponsored by:	Absolight
Differential Revision:

Number of commits found: 32