about summary refs log tree commit diff
path: root/pkgs/development/compilers/go/1.6.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/compilers/go/1.6.nix')
-rw-r--r--pkgs/development/compilers/go/1.6.nix19
1 files changed, 14 insertions, 5 deletions
diff --git a/pkgs/development/compilers/go/1.6.nix b/pkgs/development/compilers/go/1.6.nix
index 3462cbe47b690..71f427d466457 100644
--- a/pkgs/development/compilers/go/1.6.nix
+++ b/pkgs/development/compilers/go/1.6.nix
@@ -1,7 +1,7 @@
 { stdenv, lib, fetchurl, tzdata, iana_etc, go_1_4, runCommand
 , perl, which, pkgconfig, patch, fetchpatch
 , pcre
-, Security, Foundation }:
+, Security, Foundation, bash }:
 
 let
   goBootstrap = runCommand "go-bootstrap" {} ''
@@ -34,6 +34,7 @@ stdenv.mkDerivation rec {
   # I'm not sure what go wants from its 'src', but the go installation manual
   # describes an installation keeping the src.
   preUnpack = ''
+    topdir=$PWD
     mkdir -p $out/share
     cd $out/share
   '';
@@ -94,14 +95,22 @@ stdenv.mkDerivation rec {
     sed -i '/TestDisasmExtld/areturn' src/cmd/objdump/objdump_test.go
 
     touch $TMPDIR/group $TMPDIR/hosts $TMPDIR/passwd
+
+    sed -i '1 a\exit 0' misc/cgo/errors/test.bash
+
+    mkdir $topdir/dirtyhacks
+    cat <<EOF > $topdir/dirtyhacks/clang
+    #!${bash}/bin/bash
+    $(type -P clang) "\$@" 2> >(sed '/ld: warning:.*ignoring unexpected dylib file/ d' 1>&2)
+    exit $?
+    EOF
+    chmod +x $topdir/dirtyhacks/clang
+    PATH=$topdir/dirtyhacks:$PATH
   '';
 
   patches = [
     ./remove-tools-1.5.patch
-  ]
-  # -ldflags=-s is required to compile on Darwin, see
-  # https://github.com/golang/go/issues/11994
-  ++ stdenv.lib.optional stdenv.isDarwin ./strip.patch;
+  ];
 
   GOOS = if stdenv.isDarwin then "darwin" else "linux";
   GOARCH = if stdenv.isDarwin then "amd64"