Unverified Commit e424d5ef authored by Jon Seager's avatar Jon Seager Committed by GitHub
Browse files

Merge pull request #278115 from katexochen/buildGoModule/trimpath

parents 66c85021 fba75829
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -41,6 +41,8 @@

, ldflags ? [ ]

, GOFLAGS ? [ ]

  # needed for buildFlags{,Array} warning
, buildFlags ? ""
, buildFlagsArray ? ""
@@ -153,11 +155,13 @@ let

    inherit (go) GOOS GOARCH;

    GOFLAGS = lib.optionals (!proxyVendor) [ "-mod=vendor" ] ++ lib.optionals (!allowGoReference) [ "-trimpath" ];
    GOFLAGS = GOFLAGS
      ++ lib.optional (!proxyVendor) "-mod=vendor"
      ++ lib.optional (!allowGoReference) "-trimpath";
    inherit CGO_ENABLED enableParallelBuilding GO111MODULE GOTOOLCHAIN;

    # If not set to an explicit value, set the buildid empty for reproducibility.
    ldflags = ldflags ++ lib.optionals (!lib.any (lib.hasPrefix "-buildid=") ldflags) [ "-buildid=" ];
    ldflags = ldflags ++ lib.optional (!lib.any (lib.hasPrefix "-buildid=") ldflags) "-buildid=";

    configurePhase = args.configurePhase or (''
      runHook preConfigure
@@ -307,4 +311,6 @@ lib.warnIf (args' ? vendorSha256) "`vendorSha256` is deprecated. Use `vendorHash
lib.warnIf (buildFlags != "" || buildFlagsArray != "")
  "Use the `ldflags` and/or `tags` attributes instead of `buildFlags`/`buildFlagsArray`"
lib.warnIf (builtins.elem "-buildid=" ldflags) "`-buildid=` is set by default as ldflag by buildGoModule"
lib.warnIf (builtins.elem "-trimpath" GOFLAGS) "`-trimpath` is added by default to GOFLAGS by buildGoModule when allowGoReference isn't set to true"
lib.warnIf (lib.any (lib.hasPrefix "-mod=") GOFLAGS) "use `proxyVendor` to control Go module/vendor behavior instead of setting `-mod=` in GOFLAGS"
  package
+5 −2
Original line number Diff line number Diff line
@@ -39,6 +39,8 @@

, ldflags ? [ ]

, GOFLAGS ? [ ]

# needed for buildFlags{,Array} warning
, buildFlags ? ""
, buildFlagsArray ? ""
@@ -89,12 +91,12 @@ let

    GO111MODULE = "off";
    GOTOOLCHAIN = "local";
    GOFLAGS = lib.optionals (!allowGoReference) [ "-trimpath" ];
    GOFLAGS = GOFLAGS ++ lib.optional (!allowGoReference)  "-trimpath" ;

    GOARM = toString (lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]);

    # If not set to an explicit value, set the buildid empty for reproducibility.
    ldflags = ldflags ++ lib.optionals (!lib.any (lib.hasPrefix "-buildid=") ldflags) [ "-buildid=" ];
    ldflags = ldflags ++ lib.optional (!lib.any (lib.hasPrefix "-buildid=") ldflags) "-buildid=";

    configurePhase = args.configurePhase or (''
      runHook preConfigure
@@ -286,4 +288,5 @@ in
lib.warnIf (buildFlags != "" || buildFlagsArray != "")
  "Use the `ldflags` and/or `tags` attributes instead of `buildFlags`/`buildFlagsArray`"
lib.warnIf (builtins.elem "-buildid=" ldflags) "`-buildid=` is set by default as ldflag by buildGoModule"
lib.warnIf (builtins.elem "-trimpath" GOFLAGS) "`-trimpath` is added by default to GOFLAGS by buildGoModule when allowGoReference isn't set to true"
  package
+1 −1
Original line number Diff line number Diff line
@@ -56,7 +56,7 @@ buildGoModule rec {
  ];

  # flags are based on https://github.com/richardwilkes/gcs/blob/master/build.sh
  flags = [ "-a -trimpath" ];
  flags = [ "-a" ];
  ldflags = [ "-s" "-w" "-X github.com/richardwilkes/toolbox/cmdline.AppVersion=${version}" ];

  installPhase = ''
+0 −1
Original line number Diff line number Diff line
@@ -23,7 +23,6 @@ buildGoModule rec {
  doCheck = false;

  CGO_ENABLED = 0;
  GOFLAGS = [ "-trimpath" ];
  ldflags = [
    "-s"
    "-w"
+0 −1
Original line number Diff line number Diff line
@@ -18,7 +18,6 @@ buildGoModule rec {

  CGO_ENABLED = "0";
  ldflags = [ "-s" "-w" "-X main.version=${version}" ];
  flags = [ "-trimpath" ];

  nativeBuildInputs = [ installShellFiles ];

Loading