pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/lang/go14



Module Name:    pkgsrc
Committed By:   bsiegert
Date:           Sun Sep 13 08:38:04 UTC 2026

Modified Files:
        pkgsrc/lang/go14: Makefile distinfo
Added Files:
        pkgsrc/lang/go14/patches: patch-src_runtime_mem__freebsd.c

Log Message:
go14: fix build on FreeBSD with ASLR enabled

The package lang/go14 used for bootstrapping Go fails to build on
FreeBSD with ASLR enabled. Fix by Sean Hickey in PR pkg/59620.


To generate a diff of this commit:
cvs rdiff -u -r1.31 -r1.32 pkgsrc/lang/go14/Makefile
cvs rdiff -u -r1.13 -r1.14 pkgsrc/lang/go14/distinfo
cvs rdiff -u -r0 -r1.1 \
    pkgsrc/lang/go14/patches/patch-src_runtime_mem__freebsd.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/lang/go14/Makefile
diff -u pkgsrc/lang/go14/Makefile:1.31 pkgsrc/lang/go14/Makefile:1.32
--- pkgsrc/lang/go14/Makefile:1.31      Mon Feb 16 18:28:28 2026
+++ pkgsrc/lang/go14/Makefile   Sun Sep 13 08:38:04 2026
@@ -1,10 +1,10 @@
-# $NetBSD: Makefile,v 1.31 2026/02/16 18:28:28 maya Exp $
+# $NetBSD: Makefile,v 1.32 2026/09/13 08:38:04 bsiegert Exp $
 
 .include "../../lang/go/version.mk"
 
 DISTNAME=      go${GO14_VERSION}.src
 PKGNAME=       go14-${GO14_VERSION}
-PKGREVISION=   15
+PKGREVISION=   16
 CATEGORIES=    lang
 MASTER_SITES=  https://storage.googleapis.com/golang/
 PATCH_SITES=   https://codereview.appspot.com/download/

Index: pkgsrc/lang/go14/distinfo
diff -u pkgsrc/lang/go14/distinfo:1.13 pkgsrc/lang/go14/distinfo:1.14
--- pkgsrc/lang/go14/distinfo:1.13      Tue Oct 26 10:51:37 2021
+++ pkgsrc/lang/go14/distinfo   Sun Sep 13 08:38:04 2026
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.13 2021/10/26 10:51:37 nia Exp $
+$NetBSD: distinfo,v 1.14 2026/09/13 08:38:04 bsiegert Exp $
 
 BLAKE2s (go1.4.3.src.tar.gz) = a4f765aad84be48fa690c042b7511c212b0cb0ecc6aad0318dec1cbf13c3e251
 SHA512 (go1.4.3.src.tar.gz) = 12bade4bce9aa4b34e2b9495ae65a1fc6a2449b3a43bc4de85c8b87ba223c2f999b2f37c1e2fe1188d8521118b5e5357d27afb8b85c0b8ebb4503d4125d25273
@@ -40,6 +40,7 @@ SHA1 (patch-src_runtime_defs__netbsd__ar
 SHA1 (patch-src_runtime_defs__openbsd__386.h) = 314a5bdc4ff0ee5f9fb969cdb134fe6183acebb6
 SHA1 (patch-src_runtime_defs__openbsd__amd64.h) = 72335c404604df53b943f3bb3d1088ae784fef0e
 SHA1 (patch-src_runtime_malloc.h) = c41776870b4d95657ad45711b5d921cda4febd29
+SHA1 (patch-src_runtime_mem__freebsd.c) = 2e3db3ea885b6820a476380e3cc45cc01c6c9926
 SHA1 (patch-src_runtime_mem__openbsd.c) = 2800a500d3bd5bde0bb3a05ac6aec5630b098bca
 SHA1 (patch-src_runtime_mgc0.c) = 6cd1a52376efbf3f825fc511044af4a82528eccc
 SHA1 (patch-src_runtime_mheap.c) = 646f4ba1abf407936ec6c3c0783dd59922079fe3

Added files:

Index: pkgsrc/lang/go14/patches/patch-src_runtime_mem__freebsd.c
diff -u /dev/null pkgsrc/lang/go14/patches/patch-src_runtime_mem__freebsd.c:1.1
--- /dev/null   Sun Sep 13 08:38:04 2026
+++ pkgsrc/lang/go14/patches/patch-src_runtime_mem__freebsd.c   Sun Sep 13 08:38:04 2026
@@ -0,0 +1,29 @@
+$NetBSD: patch-src_runtime_mem__freebsd.c,v 1.1 2026/09/13 08:38:04 bsiegert Exp $
+
+Fix FreeBSD address space conflict when ASLR is enabled.
+
+https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=235735
+
+--- src/runtime/mem_freebsd.c.orig     2015-09-23 04:37:37.000000000 +0000
++++ src/runtime/mem_freebsd.c
+@@ -73,6 +73,11 @@ runtime·SysReserve(void *v, uintptr n,
+       return p;
+ }
+ 
++enum
++{
++      MAP_EXCL = 0x4000
++};
++
+ void
+ runtime·SysMap(void *v, uintptr n, bool reserved, uint64 *stat)
+ {
+@@ -82,7 +87,7 @@ runtime·SysMap(void *v, uintptr n, bool
+ 
+       // On 64-bit, we don't actually have v reserved, so tread carefully.
+       if(!reserved) {
+-              p = runtime·mmap(v, n, PROT_READ|PROT_WRITE, MAP_ANON|MAP_PRIVATE, -1, 0);
++              p = runtime·mmap(v, n, PROT_READ|PROT_WRITE, MAP_ANON|MAP_FIXED|MAP_EXCL|MAP_PRIVATE, -1, 0);
+               if(p == (void*)ENOMEM)
+                       runtime·throw("runtime: out of memory");
+               if(p != v) {



Home | Main Index | Thread Index | Old Index