Date: Mon, 2 Mar 2020 12:34:25 +0000 (UTC) From: Dmitri Goutnik <dmgk@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r527627 - head/lang/go Message-ID: <202003021234.022CYPkD076289@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dmgk Date: Mon Mar 2 12:34:25 2020 New Revision: 527627 URL: https://svnweb.freebsd.org/changeset/ports/527627 Log: lang/go: Switch to the new bootstrap, add aarch64 support PR: 244494 Reviewed by: tobik, mikael Approved by: jlaffaye (maintainer timeout, >1 month) Exp-run by: antoine Differential Revision: https://reviews.freebsd.org/D23151 Deleted: head/lang/go/pkg-plist Modified: head/lang/go/Makefile head/lang/go/distinfo Modified: head/lang/go/Makefile ============================================================================== --- head/lang/go/Makefile Mon Mar 2 12:19:53 2020 (r527626) +++ head/lang/go/Makefile Mon Mar 2 12:34:25 2020 (r527627) @@ -3,90 +3,126 @@ PORTNAME= go PORTVERSION= 1.14 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= lang -MASTER_SITES= https://golang.org/dl/ -DISTNAME= go${PORTVERSION}.src +MASTER_SITES= https://golang.org/dl/ \ + https://github.com/dmgk/go-bootstrap/releases/download/${BOOTSTRAP_TAG}/:bootstrap \ + LOCAL/dmgk:bootstrap +DISTFILES= go${PORTVERSION}.src.tar.gz \ + go-${OPSYS:tl}-${GOARCH_${ARCH}}${GOARM_${ARCH}}-${BOOTSTRAP_TAG}.tar.xz:bootstrap MAINTAINER= jlaffaye@FreeBSD.org COMMENT= Go programming language LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE -BUILD_DEPENDS= go14>=1.4:lang/go14 +.ifdef QEMU_EMULATING +IGNORE= fails to build with qemu-user-static +.endif +ONLY_FOR_ARCHS= aarch64 amd64 armv6 armv7 i386 + +RUN_DEPENDS= ${RUN_DEPENDS_${ARCH}} +# ld.bfd from devel/binutils is needed for working cgo on aarch64 +RUN_DEPENDS_aarch64= binutils>0:devel/binutils + +TEST_DEPENDS= ${TEST_DEPENDS_${ARCH}} +TEST_DEPENDS_aarch64= binutils>0:devel/binutils + USES= shebangfix -SHEBANG_LANG= sh perl + SHEBANG_FILES= misc/wasm/go_js_wasm_exec \ src/net/http/cgi/testdata/test.cgi SHEBANG_GLOB= *.bash *.pl *.sh - sh_OLD_CMD= /bin/bash "/usr/bin/env bash" sh_CMD= ${SH} -WRKSRC= ${WRKDIR}/go -ONLY_FOR_ARCHS= i386 amd64 armv6 armv7 - CONFLICTS_INSTALL= go-devel +# Upstream archive contains files with UTF-8 names +EXTRACT_CMD= ${SETENV} LC_ALL=en_US.UTF-8 ${TAR} + +WRKSRC= ${WRKDIR}/go + OPTIONS_DEFINE_i386= GO387 + GO387_DESC= Do not generate code with SSE2 (for old x86 CPU) -.include <bsd.port.pre.mk> +GO387_VARS= GO386=387 -.if ${ARCH} == i386 -GOARCH=386 -.elif ${ARCH} == "amd64" -GOARCH=amd64 -.elif ${ARCH} == armv6 || ${ARCH} == armv7 -GOARCH=arm -GOARM=${ARCH:C/armv//} -.else -IGNORE= unknown arch ${ARCH} -.endif +BINARIES= go gofmt +BOOTSTRAP_TAG= go1.14beta1 -.ifdef QEMU_EMULATING -IGNORE= fails to build with qemu-user-static -.endif +GOARCH_aarch64= arm64 +GOARCH_amd64= amd64 +GOARCH_armv6= arm +GOARCH_armv7= arm +GOARCH_i386= 386 -.if ${PORT_OPTIONS:MGO387} -GO386=387 -.endif +GOARM_armv6= 6 +GOARM_armv7= 7 -PLIST_SUB+= opsys_ARCH=${OPSYS:tl}_${GOARCH} +.include <bsd.port.pre.mk> +.if ${ARCH} == aarch64 && ${OSVERSION} < 1200000 +IGNORE= aarch64 support requires FreeBSD 12.0 or newer +.endif + post-patch: - @cd ${WRKSRC} && ${FIND} . -name '*.orig' -delete @${REINPLACE_CMD} -e 's|^if ulimit -T|false \&\& &|' ${WRKSRC}/src/run.bash +pre-build: + # Check that the running kernel has COMPAT_FREEBSD11 required by lang/go{,-devel} post-ino64 + @${SETENV} CC="${CC}" OPSYS="${OPSYS}" OSVERSION="${OSVERSION}" WRKDIR="${WRKDIR}" \ + ${SH} ${SCRIPTSDIR}/rust-compat11-canary.sh + do-build: - cd ${WRKSRC}/src && \ - GOROOT=${WRKSRC} GOROOT_FINAL=${PREFIX}/go \ - GOROOT_BOOTSTRAP=${LOCALBASE}/go14 \ - GOBIN= GOARCH=${GOARCH} GOOS=${OPSYS:tl} \ - GO386=${GO386} GOARM=${GOARM} CGO_ENABLED=1 \ + cd ${WRKSRC}/src ; ${SETENV} \ + XDG_CACHE_HOME=${WRKDIR} \ + GOROOT_BOOTSTRAP=${WRKDIR}/go-${OPSYS:tl}-${GOARCH_${ARCH}}${GOARM_${ARCH}}-bootstrap \ + GOROOT=${WRKSRC} \ + GOROOT_FINAL=${PREFIX}/go \ + GOBIN= \ + GOOS=${OPSYS:tl} \ + GOARCH=${GOARCH_${ARCH}} \ + GO386=${GO386} \ + GOARM=${GOARM_${ARCH}} \ ${SH} make.bash -v - ${RM} -r ${WRKSRC}/pkg/obj \ - ${WRKSRC}/pkg/bootstrap \ - ${WRKSRC}/pkg/${OPSYS:tl}_${GOARCH}/cmd do-install: - @${CP} -a ${WRKSRC} ${STAGEDIR}${PREFIX} -.for f in go gofmt - @${LN} -sf ../go/bin/${f} ${STAGEDIR}${PREFIX}/bin/${f} + @cd ${WRKSRC} ; \ + ${RM} -r .gitattributes .gitignore .github favicon.ico robots.txt \ + pkg/obj pkg/bootstrap pkg/${OPSYS:tl}_${GOARCH_${ARCH}}/cmd + @${MKDIR} ${STAGEDIR}${PREFIX}/go + @${CP} -a ${WRKSRC}/* ${STAGEDIR}${PREFIX}/go +.for file in ${BINARIES} + @${LN} -sf ../go/bin/${file} ${STAGEDIR}${PREFIX}/bin/${file} + @${ECHO_CMD} bin/${file} >> ${TMPPLIST} .endfor + @cd ${STAGEDIR}${PREFIX} && ${FIND} go -type f >> ${TMPPLIST} do-test: - cd ${WRKSRC}/src && GOROOT=${WRKSRC} PATH=${WRKSRC}/bin:${PATH} ${SH} run.bash -no-rebuild -banner "" + cd ${WRKSRC}/src && ${SETENV} \ + GOROOT=${WRKSRC} \ + PATH=${WRKSRC}/bin:${PATH} \ + GOOS=${OPSYS:tl} \ + GOARCH=${GOARCH_${ARCH}} \ + GO386=${GO386} \ + GOARM=${GOARM_${ARCH}} \ + ${SH} run.bash -no-rebuild -pkg-plist: stage - ${RM} ${WRKDIR}/pkg-plist -.for command in go gofmt - ${ECHO_CMD} bin/${command} >> ${WRKDIR}/pkg-plist +.if !defined(_GO_MAKESUM_GUARD) +makesum: + ${MAKE} -D_GO_MAKESUM_GUARD makesum ARCH=${ONLY_FOR_ARCHS:O:[1]} DISTINFO_FILE=${DISTINFO_FILE}.tmp +.for arch in ${ONLY_FOR_ARCHS:O:[2..-1]} + ${MAKE} -D_GO_MAKESUM_GUARD makesum ARCH=${arch} DISTINFO_FILE=${DISTINFO_FILE}.${arch} + ${SED} 1d ${DISTINFO_FILE}.${arch} >> ${DISTINFO_FILE}.tmp + ${RM} ${DISTINFO_FILE}.${arch} .endfor - cd ${WRKDIR} && ${FIND} go -type f | \ - ${SED} -e "s/\/${OPSYS:tl}_${GOARCH}\//\/%%opsys_ARCH%%\//g" | \ - ${SORT} >> ${WRKDIR}/pkg-plist - ${CP} ${WRKDIR}/pkg-plist ${.CURDIR}/pkg-plist + ${AWK} '!seen[$$0]++' ${DISTINFO_FILE}.tmp > ${DISTINFO_FILE} + ${RM} ${DISTINFO_FILE}.tmp +.endif .include <bsd.port.post.mk> Modified: head/lang/go/distinfo ============================================================================== --- head/lang/go/distinfo Mon Mar 2 12:19:53 2020 (r527626) +++ head/lang/go/distinfo Mon Mar 2 12:34:25 2020 (r527627) @@ -1,3 +1,13 @@ -TIMESTAMP = 1582668988 +TIMESTAMP = 1582719020 SHA256 (go1.14.src.tar.gz) = 6d643e46ad565058c7a39dac01144172ef9bd476521f42148be59249e4b74389 SIZE (go1.14.src.tar.gz) = 22377333 +SHA256 (go-freebsd-arm64-go1.14beta1.tar.xz) = 89104218da76ca4b0f2ede6523ff579db0a2a15695c77041896cb213d0f8dfa2 +SIZE (go-freebsd-arm64-go1.14beta1.tar.xz) = 33577440 +SHA256 (go-freebsd-amd64-go1.14beta1.tar.xz) = 41412e4f87110fa9dd1702899e7f292267f8c62e16641a21fc780308c772a24a +SIZE (go-freebsd-amd64-go1.14beta1.tar.xz) = 35668144 +SHA256 (go-freebsd-arm6-go1.14beta1.tar.xz) = 4076a0c5b337564b10f75c33e3a4f9369d66a44edc94fec038a4ae4dd2aac4e0 +SIZE (go-freebsd-arm6-go1.14beta1.tar.xz) = 33928624 +SHA256 (go-freebsd-arm7-go1.14beta1.tar.xz) = bd35b8db5eb756cbaede8b3b1219ad55d5e9fa3b6917856c2824b8dc0805f0f3 +SIZE (go-freebsd-arm7-go1.14beta1.tar.xz) = 33800908 +SHA256 (go-freebsd-386-go1.14beta1.tar.xz) = ff706ec4ca7a730e62ce58be31993cc129b2b0ab3e7c7a2e109da60e99fb2f61 +SIZE (go-freebsd-386-go1.14beta1.tar.xz) = 35961496
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202003021234.022CYPkD076289>