git: 9a1d65ec41 - main - porters-handbook: update Go porting notes for D28184

Dmitri Goutnik <[email protected]>
Newsgroups gmane.os.freebsd.devel.cvs.doc
Message-ID <[email protected]>
The branch main has been updated by dmgk (ports committer):

URL: https://cgit.FreeBSD.org/doc/commit/?id=9a1d65ec41392a53d2b87c930a46a006153fdd1d

commit 9a1d65ec41392a53d2b87c930a46a006153fdd1d
Author:     Dmitri Goutnik <[email protected]>
AuthorDate: 2021-03-04 16:32:05 +0000
Commit:     Dmitri Goutnik <[email protected]>
CommitDate: 2021-03-04 16:32:05 +0000

    porters-handbook: update Go porting notes for D28184
    
    Approved by:            crees (doc)
    Differential Revision:  https://reviews.freebsd.org/D28789
---
 .../en/books/porters-handbook/special/chapter.adoc | 25 ++++++++++++++++++++++
 .../en/books/porters-handbook/uses/chapter.adoc    |  3 +++
 2 files changed, 28 insertions(+)

diff --git a/documentation/content/en/books/porters-handbook/special/chapter.adoc b/documentation/content/en/books/porters-handbook/special/chapter.adoc
index 696cf509a0..62400a9a8e 100644
--- a/documentation/content/en/books/porters-handbook/special/chapter.adoc
+++ b/documentation/content/en/books/porters-handbook/special/chapter.adoc
@@ -713,6 +713,31 @@ For ports that use Go, define `USES=go`. Refer to <<uses-go,`go`>> for a list of
 .Creating a Port for a Go Modules Based Application
 [example]
 ====
+In most cases, it is sufficient to set `GO_MODULE` variable to the value specified by `module` directive in `go.mod`:
+
+[.programlisting]
+....
+PORTNAME=       hey
+PORTVERSION=    0.1.4
+DISTVERSIONPREFIX=      v
+CATEGORIES=     benchmarks
+
+MAINTAINER=     [email protected]
+COMMENT=        Tiny program that sends some load to a web application
+
+LICENSE=        APACHE20
+LICENSE_FILE=   ${WRKSRC}/LICENSE
+
+USES=           go:modules
+GO_MODULE=      github.com/rakyll/hey
+
+PLIST_FILES=    bin/hey
+
+.include <bsd.port.mk>
+....
+
+If the "easy" way is not adequate or more control over dependencies is needed, the full porting process is described below.
+
 Creating a Go based port is a five stage process. First we need to provide a ports template that fetches the application distribution file:
 
 [.programlisting]
diff --git a/documentation/content/en/books/porters-handbook/uses/chapter.adoc b/documentation/content/en/books/porters-handbook/uses/chapter.adoc
index 3dafe3c57c..91d71fbf04 100644
--- a/documentation/content/en/books/porters-handbook/uses/chapter.adoc
+++ b/documentation/content/en/books/porters-handbook/uses/chapter.adoc
@@ -519,6 +519,9 @@ Sets default values and targets used to build Go software. A build dependency on
 
 The build process is controlled by several variables:
 
+`GO_MODULE`::
+The name of the application module as specified by `module` directive in `go.mod`. In most cases, this is the only requred variable for ports that use Go modules.
+
 `GO_PKGNAME`::
 The name of the Go package when building in GOPATH mode. This is the directory that will be created in `${GOPATH}/src`. If not set explicitly and `GH_SUBDIR` or `GL_SUBDIR` is present, `GO_PKGNAME` will be inferred from it. It is not needed when building in modules-aware mode.
 
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/dev-commits-doc-all
To unsubscribe, send any mail to "[email protected]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.