|
|
ac3c7c0 |
diff --git a/build.go b/build.go
|
|
|
ba4b6d7 |
index 3744feb..7a4494a 100644
|
|
|
ac3c7c0 |
--- a/build.go
|
|
|
ac3c7c0 |
+++ b/build.go
|
|
|
ba4b6d7 |
@@ -443,9 +443,16 @@ func build(target target, tags []string) {
|
|
|
ac3c7c0 |
lazyRebuildAssets()
|
|
|
ac3c7c0 |
|
|
|
ac3c7c0 |
tags = append(target.tags, tags...)
|
|
|
ac3c7c0 |
+ tags = append(tags, "rpm_crashtraceback")
|
|
|
ac3c7c0 |
|
|
|
ac3c7c0 |
rmr(target.BinaryName())
|
|
|
ac3c7c0 |
- args := []string{"build", "-i", "-v", "-ldflags", ldflags()}
|
|
|
ac3c7c0 |
+
|
|
|
ac3c7c0 |
+ build_id, _ := ioutil.ReadFile("build_id")
|
|
|
ac3c7c0 |
+ ldflags := fmt.Sprintf("%s %s -B 0x%s -extldflags '-Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld'",
|
|
|
ac3c7c0 |
+ ldflags(), os.Getenv("LDFLAGS"), build_id)
|
|
|
ac3c7c0 |
+
|
|
|
ba4b6d7 |
+ args := []string{"build", "-compiler", "gc", "-ldflags", ldflags, "-a", "-v", "-x"}
|
|
|
ac3c7c0 |
+
|
|
|
ba4b6d7 |
if pkgdir != "" {
|
|
|
ba4b6d7 |
args = append(args, "-pkgdir", pkgdir)
|
|
|
ac3c7c0 |
}
|
|
|
ba4b6d7 |
@@ -724,11 +731,10 @@ func ldflags() string {
|
|
|
ac3c7c0 |
}
|
|
|
ac3c7c0 |
|
|
|
ac3c7c0 |
b := new(bytes.Buffer)
|
|
|
ac3c7c0 |
- b.WriteString("-w")
|
|
|
ac3c7c0 |
- fmt.Fprintf(b, " -X main.Version%c%s", sep, version)
|
|
|
ac3c7c0 |
- fmt.Fprintf(b, " -X main.BuildStamp%c%d", sep, buildStamp())
|
|
|
ac3c7c0 |
- fmt.Fprintf(b, " -X main.BuildUser%c%s", sep, buildUser())
|
|
|
ac3c7c0 |
- fmt.Fprintf(b, " -X main.BuildHost%c%s", sep, buildHost())
|
|
|
ac3c7c0 |
+ fmt.Fprintf(b, "-X main.Version%c%s ", sep, version)
|
|
|
ac3c7c0 |
+ fmt.Fprintf(b, "-X main.BuildStamp%c%d ", sep, buildStamp())
|
|
|
ac3c7c0 |
+ fmt.Fprintf(b, "-X main.BuildUser%c%s ", sep, buildUser())
|
|
|
ac3c7c0 |
+ fmt.Fprintf(b, "-X main.BuildHost%c%s", sep, buildHost())
|
|
|
ac3c7c0 |
return b.String()
|
|
|
ac3c7c0 |
}
|
|
|
ac3c7c0 |
|