* Produce a position independent executable * Add OS detection to the main Makefile so we don't apply -pie on OS X
@@ -5,8 +5,13 @@ DATA_FILES := $(shell find conf | sed 's/ /\\ /g')
LESS_FILES := $(wildcard public/less/gogs.less public/less/_*.less)
GENERATED := modules/bindata/bindata.go public/css/gogs.css
+OS := $(shell uname)
+
TAGS = ""
BUILD_FLAGS = "-v"
+ifeq ($(OS),Linux)
+ BUILD_FLAGS += " -buildmode=pie"
+endif
RELEASE_ROOT = "release"
RELEASE_GOGS = "release/gogs"
@@ -5,7 +5,7 @@ outPath=./output_$outPlattform_$outArch
rm -rf $outPath
mkdir $outPath
-CGO_ENABLED=0 GOOS=$outPlattform GOARCH=$outArch go build ../gogs.go
+CGO_ENABLED=0 GOOS=$outPlattform GOARCH=$outArch go build -buildmode=pie ../gogs.go
chmod +x gogs
mv gogs $outPath/