From 0a46b9de7f8c9f71041700dc2e58033d86170b0d Mon Sep 17 00:00:00 2001 From: Mihail Slobodyanuk Date: Wed, 7 Dec 2022 13:52:38 +0200 Subject: [PATCH 1/2] statically linked executable --- build | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/build b/build index 708c431b..80a92d54 100755 --- a/build +++ b/build @@ -12,7 +12,7 @@ else fi ARGS="-v" -while getopts "utc:l:dro:p" option +while getopts "utc:l:dro:ps" option do case "$option" in @@ -24,6 +24,8 @@ do r) ARGS="$ARGS -race";; o) ARGS="$ARGS -o $OPTARG";; p) ARGS="$ARGS -buildmode=pie";; + # statically linked executable + s) LDFLAGS="$LDFLAGS -linkmode external -extldflags=-static";; esac done From 91c904cc2f44ae30cb8edb9747f1d616eeab7b59 Mon Sep 17 00:00:00 2001 From: Mihail Slobodyanuk Date: Wed, 7 Dec 2022 14:12:16 +0200 Subject: [PATCH 2/2] statically linked executable --- build | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/build b/build index 80a92d54..786e7db2 100755 --- a/build +++ b/build @@ -25,7 +25,7 @@ do o) ARGS="$ARGS -o $OPTARG";; p) ARGS="$ARGS -buildmode=pie";; # statically linked executable - s) LDFLAGS="$LDFLAGS -linkmode external -extldflags=-static";; + s) STATIC=" -linkmode external -extldflags=-static";; esac done @@ -33,7 +33,18 @@ if [ -z $TABLES ] && [ -z $DEBUG ]; then LDFLAGS="$LDFLAGS -s -w" fi -for CMD in ./cmd/mesh ./cmd/meshctl ./contrib/ui/mesh-ui ; do +#could be static +for CMD in ./cmd/mesh ./cmd/meshctl ; do + echo "Building: $CMD" + go build $ARGS -ldflags "${LDFLAGS}${STATIC}" -gcflags "$GCFLAGS" $CMD + + if [ $UPX ]; then + upx --brute $CMD + fi +done + +#dynamic only +for CMD in ./contrib/ui/mesh-ui ; do echo "Building: $CMD" go build $ARGS -ldflags "$LDFLAGS" -gcflags "$GCFLAGS" $CMD