blob: 0c9568c672df92d9be1956576a2947faf6e1c682 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
# $NetBSD: Makefile,v 1.3 2018/10/02 18:19:56 bsiegert Exp $
.include "../../lang/go/version.mk"
DISTNAME= go${GO111_VERSION}.src
PKGNAME= go111-${GO111_VERSION}
CATEGORIES= lang
MASTER_SITES= https://storage.googleapis.com/golang/
EXTRACT_USING= bsdtar
MAINTAINER= bsiegert@NetBSD.org
HOMEPAGE= http://golang.org/
COMMENT= The Go programming language
LICENSE= modified-bsd
GOVERSSUFFIX= 111
WRKSRC= ${WRKDIR}/go
USE_TOOLS+= bash:run perl:run pax
# uses ulimit -T
# BUILD_DEPENDS+= bash>=4.2nb3:../../shells/bash
# cgo compiles under TMPDIR
TMPDIR?= /tmp
BUILDLINK_PASSTHRU_DIRS+= ${TMPDIR}
GOROOT_FINAL= ${PREFIX}/go${GOVERSSUFFIX}
INSTALLATION_DIRS= bin go${GOVERSSUFFIX}
REPLACE_BASH+= doc/articles/wiki/test.bash
REPLACE_BASH+= doc/codewalk/run
REPLACE_BASH+= lib/time/update.bash
REPLACE_BASH+= misc/arm/a
REPLACE_BASH+= misc/benchcmp
REPLACE_BASH+= misc/cgo/fortran/test.bash
REPLACE_BASH+= misc/cgo/testgodefs/test.bash
REPLACE_BASH+= misc/cgo/testplugin/test.bash
REPLACE_BASH+= misc/nacl/go_nacl_386_exec
REPLACE_BASH+= misc/nacl/go_nacl_amd64p32_exec
REPLACE_BASH+= misc/nacl/go_nacl_arm_exec
REPLACE_BASH+= misc/wasm/go_js_wasm_exec
REPLACE_BASH+= src/all.bash
REPLACE_BASH+= src/androidtest.bash
REPLACE_BASH+= src/bootstrap.bash
REPLACE_BASH+= src/buildall.bash
REPLACE_BASH+= src/clean.bash
REPLACE_BASH+= src/cmd/go/mkalldocs.sh
REPLACE_BASH+= src/cmd/vendor/github.com/google/pprof/test.sh
REPLACE_BASH+= src/cmd/vendor/github.com/google/pprof/internal/binutils/testdata/build_mac.sh
REPLACE_BASH+= src/cmd/vendor/golang.org/x/sys/unix/mkall.sh
REPLACE_BASH+= src/cmd/vendor/golang.org/x/sys/unix/mkerrors.sh
REPLACE_BASH+= src/internal/trace/mkcanned.bash
REPLACE_BASH+= src/iostest.bash
REPLACE_BASH+= src/make.bash
REPLACE_BASH+= src/naclmake.bash
REPLACE_BASH+= src/nacltest.bash
REPLACE_BASH+= src/race.bash
REPLACE_BASH+= src/run.bash
REPLACE_BASH+= src/runtime/mknacl.sh
REPLACE_BASH+= src/syscall/mkall.sh
REPLACE_BASH+= src/syscall/mkerrors.sh
REPLACE_BASH+= src/syscall/mksysnum_plan9.sh
REPLACE_PERL+= src/cmd/vendor/golang.org/x/sys/unix/*.pl
REPLACE_PERL+= src/net/http/cgi/testdata/test.cgi
REPLACE_PERL+= src/regexp/syntax/make_perl_groups.pl
REPLACE_PERL+= src/syscall/*.pl
REPLACE_PERL+= test/errchk
# uses own linker, which does not support relro on NetBSD
CHECK_RELRO_SKIP+= go${GOVERSSUFFIX}/bin/go
CHECK_RELRO_SKIP+= go${GOVERSSUFFIX}/bin/gofmt
CHECK_RELRO_SKIP+= go${GOVERSSUFFIX}/pkg/bootstrap/bin/asm
CHECK_RELRO_SKIP+= go${GOVERSSUFFIX}/pkg/bootstrap/bin/compile
CHECK_RELRO_SKIP+= go${GOVERSSUFFIX}/pkg/bootstrap/bin/link
CHECK_RELRO_SKIP+= go${GOVERSSUFFIX}/pkg/bootstrap/bin/cgo
# also does not support SSP at this time
CHECK_SSP_SKIP= ${CHECK_RELRO_SKIP}
# uses /bin/rc (for Plan 9)
CHECK_INTERPRETER_SKIP+= go${GOVERSSUFFIX}/include/plan9/mklibc.rc
CHECK_INTERPRETER_SKIP+= go${GOVERSSUFFIX}/src/all.rc
CHECK_INTERPRETER_SKIP+= go${GOVERSSUFFIX}/src/clean.rc
CHECK_INTERPRETER_SKIP+= go${GOVERSSUFFIX}/src/make.rc
CHECK_INTERPRETER_SKIP+= go${GOVERSSUFFIX}/src/run.rc
BUILD_DEPENDS+= go14-1.4*:../../lang/go14
GOROOT_BOOTSTRAP= ${PREFIX}/go14
PLIST_SUBST+= GOVERSSUFFIX=${GOVERSSUFFIX}
.include "../../mk/bsd.prefs.mk"
PLIST_VARS+= pty route
.if ${OPSYS} != "SunOS"
PLIST.pty= yes
.endif
.if ${OPSYS} != "Linux" && ${OPSYS} != "SunOS"
PLIST.route= yes
.endif
do-build:
cd ${WRKSRC}/src && env GOROOT_BOOTSTRAP=${GOROOT_BOOTSTRAP:Q} GOROOT_FINAL=${GOROOT_FINAL:Q} ${GOOPT} ${BASH} ./make.bash
# for RELRO build:
# cd ${WRKSRC}/src && env GOROOT_BOOTSTRAP=${GOROOT_BOOTSTRAP:Q} GOROOT_FINAL=${GOROOT_FINAL:Q} GO_LDFLAGS="-buildmode=pie" ${GOOPT} ${BASH} ./make.bash
do-install:
cd ${WRKSRC} && rm -rf .hgignore .hgtags pkg/obj
cd ${WRKSRC} && pax -rw . ${DESTDIR}${PREFIX}/go${GOVERSSUFFIX}
find ${DESTDIR}${PREFIX}/go${GOVERSSUFFIX} -name \*.orig -exec rm {} \;
.for cmd in go gofmt
${LN} -sf ${PREFIX}/go111/bin/${cmd} ${DESTDIR}${PREFIX}/bin/${cmd}${GOVERSSUFFIX}
.endfor
do-test:
cd ${WRKSRC}/src && GOROOT=${WRKSRC} PATH=${WRKSRC}/bin:${PATH} ${GOOPT} ${BASH} run.bash --no-rebuild --banner ""
.include "../../mk/bsd.pkg.mk"
|