@@ -177,22 +177,24 @@ if [ "$OUT" != "" ]; then
177
177
NAME=$OUT
178
178
fi
179
179
180
- if [ " $FLAG_V " == " true" ]; then V=-v; fi
180
+ if [ " $FLAG_V " == " true" ]; then V=-v; LD+= ' -v ' ; fi
181
181
if [ " $FLAG_X " == " true" ]; then X=-x; fi
182
182
if [ " $FLAG_RACE " == " true" ]; then R=-race; fi
183
183
if [ " $FLAG_TAGS " != " " ]; then T=(--tags " $FLAG_TAGS " ); fi
184
- if [ " $FLAG_LDFLAGS " != " " ]; then LD=" $ FLAG_LDFLAGS" ; fi
185
- if [ " $FLAG_GCFLAGS " != " " ]; then GC=" $FLAG_GCFLAGS " ; fi
184
+ if [ " $FLAG_LDFLAGS " != " " ]; then LD=( " ${LD[@]} " " ${ FLAG_LDFLAGS[@]} " ) ; fi
185
+ if [ " $FLAG_GCFLAGS " != " " ]; then GC=(--gcflags= " $FLAG_GCFLAGS " ) ; fi
186
186
187
- if [ " $FLAG_BUILDMODE " != " " ] && [ " $FLAG_BUILDMODE " != " default" ]; then BM=" --buildmode=$ FLAG_BUILDMODE" ; fi
187
+ if [ " $FLAG_BUILDMODE " != " " ] && [ " $FLAG_BUILDMODE " != " default" ]; then BM=( --buildmode=" ${ FLAG_BUILDMODE[@]} " ) ; fi
188
188
if [ " $FLAG_TRIMPATH " == " true" ]; then TP=-trimpath; fi
189
- if [ " $FLAG_MOD " != " " ]; then MOD=" --mod=$FLAG_MOD " ; fi
189
+ if [ " $FLAG_MOD " != " " ]; then MOD=( --mod=" $FLAG_MOD " ) ; fi
190
190
191
191
# If no build targets were specified, inject a catch all wildcard
192
192
if [ " $TARGETS " == " " ]; then
193
193
TARGETS=" ./."
194
194
fi
195
195
196
+ if [ " ${# LD[@]} " -gt 0 ]; then LDF=(--ldflags=" ${LD[@]} " ); fi
197
+
196
198
# Build for each requested platform individually
197
199
for TARGET in $TARGETS ; do
198
200
# Split the target into platform and architecture
@@ -206,15 +208,15 @@ for TARGET in $TARGETS; do
206
208
if [[ " $USEMODULES " == false ]]; then
207
209
GOOS=linux GOARCH=amd64 CGO_ENABLED=1 go get $V $X " ${T[@]} " -d " $PACK_RELPATH "
208
210
fi
209
- GOOS=linux GOARCH=amd64 CGO_ENABLED=1 go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $V $LD " --gcflags= " $GC " $R " $BM " -o " /build/$NAME -linux-amd64$R $( extension linux) " " $PACK_RELPATH "
211
+ GOOS=linux GOARCH=amd64 CGO_ENABLED=1 go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDF[@]} " " ${GC[@]} " $R " ${BM[@]} " -o " /build/$NAME -linux-amd64$R $( extension linux) " " $PACK_RELPATH "
210
212
fi
211
213
if { [ " $XGOOS " == " ." ] || [ " $XGOOS " == " linux" ]; } && { [ " $XGOARCH " == " ." ] || [ " $XGOARCH " == " 386" ]; }; then
212
214
echo " Compiling for linux/386..."
213
215
CC=" gcc -m32" CXX=" g++ -m32" HOST=i686-linux PREFIX=/usr/local $BUILD_DEPS /deps " ${DEPS_ARGS[@]} "
214
216
if [[ " $USEMODULES " == false ]]; then
215
217
GOOS=linux GOARCH=386 CGO_ENABLED=1 go get $V $X " ${T[@]} " -d " $PACK_RELPATH "
216
218
fi
217
- GOOS=linux GOARCH=386 CGO_ENABLED=1 go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $V $LD " --gcflags= " $GC " " $BM " -o " /build/$NAME -linux-386$( extension linux) " " $PACK_RELPATH "
219
+ GOOS=linux GOARCH=386 CGO_ENABLED=1 go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDF[@]} " " ${GC[@]} " " ${BM[@]} " -o " /build/$NAME -linux-386$( extension linux) " " $PACK_RELPATH "
218
220
fi
219
221
if { [ " $XGOOS " == " ." ] || [ " $XGOOS " == " linux" ]; } && { [ " $XGOARCH " == " ." ] || [ " $XGOARCH " == " arm" ] || [ " $XGOARCH " == " arm-5" ]; }; then
220
222
if [ " $GO_VERSION_MAJOR " -gt 1 ] || { [ " $GO_VERSION_MAJOR " == 1 ] && [ " $GO_VERSION_MINOR " -ge 15 ]; }; then
@@ -228,7 +230,7 @@ for TARGET in $TARGETS; do
228
230
if [[ " $USEMODULES " == false ]]; then
229
231
CC=arm-linux-gnueabi-gcc-6 CXX=arm-linux-gnueabi-g++-6 GOOS=linux GOARCH=arm GOARM=5 CGO_ENABLED=1 CGO_CFLAGS=" -march=armv5" CGO_CXXFLAGS=" -march=armv5" go get $V $X " ${T[@]} " -d " $PACK_RELPATH "
230
232
fi
231
- CC=arm-linux-gnueabi-gcc-6 CXX=arm-linux-gnueabi-g++-6 GOOS=linux GOARCH=arm GOARM=5 CGO_ENABLED=1 CGO_CFLAGS=" -march=armv5" CGO_CXXFLAGS=" -march=armv5" go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $V $LD " --gcflags= " $GC " " $BM " -o " /build/$NAME -linux-arm-5$( extension linux) " " $PACK_RELPATH "
233
+ CC=arm-linux-gnueabi-gcc-6 CXX=arm-linux-gnueabi-g++-6 GOOS=linux GOARCH=arm GOARM=5 CGO_ENABLED=1 CGO_CFLAGS=" -march=armv5" CGO_CXXFLAGS=" -march=armv5" go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDF[@]} " " ${GC[@]} " " ${BM[@]} " -o " /build/$NAME -linux-arm-5$( extension linux) " " $PACK_RELPATH "
232
234
if [ " $GO_VERSION_MAJOR " -gt 1 ] || { [ " $GO_VERSION_MAJOR " == 1 ] && [ " $GO_VERSION_MINOR " -ge 15 ]; }; then
233
235
echo " Cleaning up Go runtime for linux/arm-5..."
234
236
rm -rf /usr/local/go/pkg/linux_arm
@@ -248,7 +250,7 @@ for TARGET in $TARGETS; do
248
250
if [[ " $USEMODULES " == false ]]; then
249
251
CC=arm-linux-gnueabi-gcc-6 CXX=arm-linux-gnueabi-g++-6 GOOS=linux GOARCH=arm GOARM=6 CGO_ENABLED=1 CGO_CFLAGS=" -march=armv6" CGO_CXXFLAGS=" -march=armv6" go get $V $X " ${T[@]} " -d " $PACK_RELPATH "
250
252
fi
251
- CC=arm-linux-gnueabi-gcc-6 CXX=arm-linux-gnueabi-g++-6 GOOS=linux GOARCH=arm GOARM=6 CGO_ENABLED=1 CGO_CFLAGS=" -march=armv6" CGO_CXXFLAGS=" -march=armv6" go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $V $LD " --gcflags= " $GC " " $BM " -o " /build/$NAME -linux-arm-6$( extension linux) " " $PACK_RELPATH "
253
+ CC=arm-linux-gnueabi-gcc-6 CXX=arm-linux-gnueabi-g++-6 GOOS=linux GOARCH=arm GOARM=6 CGO_ENABLED=1 CGO_CFLAGS=" -march=armv6" CGO_CXXFLAGS=" -march=armv6" go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDF[@]} " " ${GC[@]} " " ${BM[@]} " -o " /build/$NAME -linux-arm-6$( extension linux) " " $PACK_RELPATH "
252
254
253
255
echo " Cleaning up Go runtime for linux/arm-6..."
254
256
rm -rf /usr/local/go/pkg/linux_arm
@@ -268,7 +270,7 @@ for TARGET in $TARGETS; do
268
270
if [[ " $USEMODULES " == false ]]; then
269
271
CC=arm-linux-gnueabihf-gcc-6 CXX=arm-linux-gnueabihf-g++-6 GOOS=linux GOARCH=arm GOARM=7 CGO_ENABLED=1 CGO_CFLAGS=" -march=armv7-a -fPIC" CGO_CXXFLAGS=" -march=armv7-a -fPIC" go get $V $X " ${T[@]} " -d " $PACK_RELPATH "
270
272
fi
271
- CC=arm-linux-gnueabihf-gcc-6 CXX=arm-linux-gnueabihf-g++-6 GOOS=linux GOARCH=arm GOARM=7 CGO_ENABLED=1 CGO_CFLAGS=" -march=armv7-a -fPIC" CGO_CXXFLAGS=" -march=armv7-a -fPIC" go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $V $LD " --gcflags= " $GC " " $BM " -o " /build/$NAME -linux-arm-7$( extension linux) " " $PACK_RELPATH "
273
+ CC=arm-linux-gnueabihf-gcc-6 CXX=arm-linux-gnueabihf-g++-6 GOOS=linux GOARCH=arm GOARM=7 CGO_ENABLED=1 CGO_CFLAGS=" -march=armv7-a -fPIC" CGO_CXXFLAGS=" -march=armv7-a -fPIC" go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDF[@]} " " ${GC[@]} " " ${BM[@]} " -o " /build/$NAME -linux-arm-7$( extension linux) " " $PACK_RELPATH "
272
274
273
275
echo " Cleaning up Go runtime for linux/arm-7..."
274
276
rm -rf /usr/local/go/pkg/linux_arm
@@ -285,7 +287,7 @@ for TARGET in $TARGETS; do
285
287
if [[ " $USEMODULES " == false ]]; then
286
288
CC=aarch64-linux-gnu-gcc-6 CXX=aarch64-linux-gnu-g++-6 GOOS=linux GOARCH=arm64 CGO_ENABLED=1 go get $V $X " ${T[@]} " -d " $PACK_RELPATH "
287
289
fi
288
- CC=aarch64-linux-gnu-gcc-6 CXX=aarch64-linux-gnu-g++-6 GOOS=linux GOARCH=arm64 CGO_ENABLED=1 go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $V $LD " --gcflags= " $GC " " $BM " -o " /build/$NAME -linux-arm64$( extension linux) " " $PACK_RELPATH "
290
+ CC=aarch64-linux-gnu-gcc-6 CXX=aarch64-linux-gnu-g++-6 GOOS=linux GOARCH=arm64 CGO_ENABLED=1 go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDF[@]} " " ${GC[@]} " " ${BM[@]} " -o " /build/$NAME -linux-arm64$( extension linux) " " $PACK_RELPATH "
289
291
fi
290
292
fi
291
293
if { [ " $XGOOS " == " ." ] || [ " $XGOOS " == " linux" ]; } && { [ " $XGOARCH " == " ." ] || [ " $XGOARCH " == " mips64" ]; }; then
@@ -299,7 +301,7 @@ for TARGET in $TARGETS; do
299
301
if [[ " $USEMODULES " == false ]]; then
300
302
CC=mips64-linux-gnuabi64-gcc-6 CXX=mips64-linux-gnuabi64-g++-6 GOOS=linux GOARCH=mips64 CGO_ENABLED=1 go get $V $X " ${T[@]} " -d " $PACK_RELPATH "
301
303
fi
302
- CC=mips64-linux-gnuabi64-gcc-6 CXX=mips64-linux-gnuabi64-g++-6 GOOS=linux GOARCH=mips64 CGO_ENABLED=1 go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $V $LD " --gcflags= " $GC " " $BM " -o " /build/$NAME -linux-mips64$( extension linux) " " $PACK_RELPATH "
304
+ CC=mips64-linux-gnuabi64-gcc-6 CXX=mips64-linux-gnuabi64-g++-6 GOOS=linux GOARCH=mips64 CGO_ENABLED=1 go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDF[@]} " " ${GC[@]} " " ${BM[@]} " -o " /build/$NAME -linux-mips64$( extension linux) " " $PACK_RELPATH "
303
305
fi
304
306
fi
305
307
if { [ " $XGOOS " == " ." ] || [ " $XGOOS " == " linux" ]; } && { [ " $XGOARCH " == " ." ] || [ " $XGOARCH " == " mips64le" ]; }; then
@@ -313,7 +315,7 @@ for TARGET in $TARGETS; do
313
315
if [[ " $USEMODULES " == false ]]; then
314
316
CC=mips64el-linux-gnuabi64-gcc-6 CXX=mips64el-linux-gnuabi64-g++-6 GOOS=linux GOARCH=mips64le CGO_ENABLED=1 go get $V $X " ${T[@]} " -d " $PACK_RELPATH "
315
317
fi
316
- CC=mips64el-linux-gnuabi64-gcc-6 CXX=mips64el-linux-gnuabi64-g++-6 GOOS=linux GOARCH=mips64le CGO_ENABLED=1 go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $V $LD " --gcflags= " $GC " " $BM " -o " /build/$NAME -linux-mips64le$( extension linux) " " $PACK_RELPATH "
318
+ CC=mips64el-linux-gnuabi64-gcc-6 CXX=mips64el-linux-gnuabi64-g++-6 GOOS=linux GOARCH=mips64le CGO_ENABLED=1 go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDF[@]} " " ${GC[@]} " " ${BM[@]} " -o " /build/$NAME -linux-mips64le$( extension linux) " " $PACK_RELPATH "
317
319
fi
318
320
fi
319
321
if { [ " $XGOOS " == " ." ] || [ " $XGOOS " == " linux" ]; } && { [ " $XGOARCH " == " ." ] || [ " $XGOARCH " == " mips" ]; }; then
@@ -327,7 +329,7 @@ for TARGET in $TARGETS; do
327
329
if [[ " $USEMODULES " == false ]]; then
328
330
CC=mips-linux-gnu-gcc-6 CXX=mips-linux-gnu-g++-6 GOOS=linux GOARCH=mips CGO_ENABLED=1 go get $V $X " ${T[@]} " -d " $PACK_RELPATH "
329
331
fi
330
- CC=mips-linux-gnu-gcc-6 CXX=mips-linux-gnu-g++-6 GOOS=linux GOARCH=mips CGO_ENABLED=1 go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $V $LD " --gcflags= " $GC " " $BM " -o " /build/$NAME -linux-mips$( extension linux) " " $PACK_RELPATH "
332
+ CC=mips-linux-gnu-gcc-6 CXX=mips-linux-gnu-g++-6 GOOS=linux GOARCH=mips CGO_ENABLED=1 go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDF[@]} " " ${GC[@]} " " ${BM[@]} " -o " /build/$NAME -linux-mips$( extension linux) " " $PACK_RELPATH "
331
333
fi
332
334
fi
333
335
if { [ " $XGOOS " == " ." ] || [ " $XGOOS " == " linux" ]; } && { [ " $XGOARCH " == " ." ] || [ " $XGOARCH " == " s390x" ]; }; then
@@ -341,7 +343,7 @@ for TARGET in $TARGETS; do
341
343
if [[ " $USEMODULES " == false ]]; then
342
344
CC=s390x-linux-gnu-gcc-6 CXX=s390x-linux-gnu-g++-6 GOOS=linux GOARCH=s390x CGO_ENABLED=1 go get $V $X " ${T[@]} " -d " $PACK_RELPATH "
343
345
fi
344
- CC=s390x-linux-gnu-gcc-6 CXX=s390x-linux-gnu-g++-6 GOOS=linux GOARCH=s390x CGO_ENABLED=1 go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $V $LD " --gcflags= " $GC " " $BM " -o " /build/$NAME -linux-s390x$( extension linux) " " $PACK_RELPATH "
346
+ CC=s390x-linux-gnu-gcc-6 CXX=s390x-linux-gnu-g++-6 GOOS=linux GOARCH=s390x CGO_ENABLED=1 go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDF[@]} " " ${GC[@]} " " ${BM[@]} " -o " /build/$NAME -linux-s390x$( extension linux) " " $PACK_RELPATH "
345
347
fi
346
348
fi
347
349
if { [ " $XGOOS " == " ." ] || [ " $XGOOS " == " linux" ]; } && { [ " $XGOARCH " == " ." ] || [ " $XGOARCH " == " riscv64" ]; }; then
@@ -355,7 +357,7 @@ for TARGET in $TARGETS; do
355
357
if [[ " $USEMODULES " == false ]]; then
356
358
CC=riscv64-linux-gnu-gcc-8 CXX=riscv64-linux-gnu-g++-8 GOOS=linux GOARCH=riscv64 CGO_ENABLED=1 go get $V $X " ${T[@]} " -d " $PACK_RELPATH "
357
359
fi
358
- CC=riscv64-linux-gnu-gcc-8 CXX=riscv64-linux-gnu-g++-8 GOOS=linux GOARCH=riscv64 CGO_ENABLED=1 go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $V $LD " --gcflags= " $GC " " $BM " -o " /build/$NAME -linux-riscv64$( extension linux) " " $PACK_RELPATH "
360
+ CC=riscv64-linux-gnu-gcc-8 CXX=riscv64-linux-gnu-g++-8 GOOS=linux GOARCH=riscv64 CGO_ENABLED=1 go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDF[@]} " " ${GC[@]} " " ${BM[@]} " -o " /build/$NAME -linux-riscv64$( extension linux) " " $PACK_RELPATH "
359
361
fi
360
362
fi
361
363
if { [ " $XGOOS " == " ." ] || [ " $XGOOS " == " linux" ]; } && { [ " $XGOARCH " == " ." ] || [ " $XGOARCH " == " ppc64le" ]; }; then
@@ -369,7 +371,7 @@ for TARGET in $TARGETS; do
369
371
if [[ " $USEMODULES " == false ]]; then
370
372
CC=powerpc64le-linux-gnu-gcc-6 CXX=powerpc64le-linux-gnu-g++-6 GOOS=linux GOARCH=ppc64le CGO_ENABLED=1 go get $V $X " ${T[@]} " -d " $PACK_RELPATH "
371
373
fi
372
- CC=powerpc64le-linux-gnu-gcc-6 CXX=powerpc64le-linux-gnu-g++-6 GOOS=linux GOARCH=ppc64le CGO_ENABLED=1 go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $V $LD " --gcflags= " $GC " " $BM " -o " /build/$NAME -linux-ppc64le$( extension linux) " " $PACK_RELPATH "
374
+ CC=powerpc64le-linux-gnu-gcc-6 CXX=powerpc64le-linux-gnu-g++-6 GOOS=linux GOARCH=ppc64le CGO_ENABLED=1 go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDF[@]} " " ${GC[@]} " " ${BM[@]} " -o " /build/$NAME -linux-ppc64le$( extension linux) " " $PACK_RELPATH "
373
375
fi
374
376
fi
375
377
if { [ " $XGOOS " == " ." ] || [ " $XGOOS " == " linux" ]; } && { [ " $XGOARCH " == " ." ] || [ " $XGOARCH " == " mipsle" ]; }; then
@@ -383,7 +385,7 @@ for TARGET in $TARGETS; do
383
385
if [[ " $USEMODULES " == false ]]; then
384
386
CC=mipsel-linux-gnu-gcc-6 CXX=mipsel-linux-gnu-g++-6 GOOS=linux GOARCH=mipsle CGO_ENABLED=1 go get $V $X " ${T[@]} " -d " $PACK_RELPATH "
385
387
fi
386
- CC=mipsel-linux-gnu-gcc-6 CXX=mipsel-linux-gnu-g++-6 GOOS=linux GOARCH=mipsle CGO_ENABLED=1 go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $V $LD " --gcflags= " $GC " " $BM " -o " /build/$NAME -linux-mipsle$( extension linux) " " $PACK_RELPATH "
388
+ CC=mipsel-linux-gnu-gcc-6 CXX=mipsel-linux-gnu-g++-6 GOOS=linux GOARCH=mipsle CGO_ENABLED=1 go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDF[@]} " " ${GC[@]} " " ${BM[@]} " -o " /build/$NAME -linux-mipsle$( extension linux) " " $PACK_RELPATH "
387
389
fi
388
390
fi
389
391
# Check and build for Windows targets
@@ -409,7 +411,7 @@ for TARGET in $TARGETS; do
409
411
if [[ " $USEMODULES " == false ]]; then
410
412
CC=x86_64-w64-mingw32-gcc-posix CXX=x86_64-w64-mingw32-g++-posix GOOS=windows GOARCH=amd64 CGO_ENABLED=1 CGO_CFLAGS=" $CGO_NTDEF " CGO_CXXFLAGS=" $CGO_NTDEF " go get $V $X " ${T[@]} " -d " $PACK_RELPATH "
411
413
fi
412
- CC=x86_64-w64-mingw32-gcc-posix CXX=x86_64-w64-mingw32-g++-posix GOOS=windows GOARCH=amd64 CGO_ENABLED=1 CGO_CFLAGS=" $CGO_NTDEF " CGO_CXXFLAGS=" $CGO_NTDEF " go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $V $LD " --gcflags= " $GC " $R " $BM " -o " /build/$NAME -windows-$PLATFORM -amd64$R $( extension windows) " " $PACK_RELPATH "
414
+ CC=x86_64-w64-mingw32-gcc-posix CXX=x86_64-w64-mingw32-g++-posix GOOS=windows GOARCH=amd64 CGO_ENABLED=1 CGO_CFLAGS=" $CGO_NTDEF " CGO_CXXFLAGS=" $CGO_NTDEF " go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDF[@]} " " ${GC[@]} " $R " ${BM[@]} " -o " /build/$NAME -windows-$PLATFORM -amd64$R $( extension windows) " " $PACK_RELPATH "
413
415
fi
414
416
if [ " $XGOARCH " == " ." ] || [ " $XGOARCH " == " 386" ]; then
415
417
echo " Compiling for windows-$PLATFORM /386..."
@@ -419,7 +421,7 @@ for TARGET in $TARGETS; do
419
421
if [[ " $USEMODULES " == false ]]; then
420
422
CC=i686-w64-mingw32-gcc-posix CXX=i686-w64-mingw32-g++-posix GOOS=windows GOARCH=386 CGO_ENABLED=1 CGO_CFLAGS=" $CGO_NTDEF " CGO_CXXFLAGS=" $CGO_NTDEF " go get $V $X " ${T[@]} " -d " $PACK_RELPATH "
421
423
fi
422
- CC=i686-w64-mingw32-gcc-posix CXX=i686-w64-mingw32-g++-posix GOOS=windows GOARCH=386 CGO_ENABLED=1 CGO_CFLAGS=" $CGO_NTDEF " CGO_CXXFLAGS=" $CGO_NTDEF " go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $V $LD " --gcflags= " $GC " " $BM " -o " /build/$NAME -windows-$PLATFORM -386$( extension windows) " " $PACK_RELPATH "
424
+ CC=i686-w64-mingw32-gcc-posix CXX=i686-w64-mingw32-g++-posix GOOS=windows GOARCH=386 CGO_ENABLED=1 CGO_CFLAGS=" $CGO_NTDEF " CGO_CXXFLAGS=" $CGO_NTDEF " go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDF[@]} " " ${GC[@]} " " ${BM[@]} " -o " /build/$NAME -windows-$PLATFORM -386$( extension windows) " " $PACK_RELPATH "
423
425
fi
424
426
fi
425
427
# Check and build for OSX targets
@@ -432,18 +434,21 @@ for TARGET in $TARGETS; do
432
434
export MACOSX_DEPLOYMENT_TARGET=$PLATFORM
433
435
434
436
# Strip symbol table below Go 1.6 to prevent DWARF issues
435
- LDSTRIP= " "
437
+ LDS=( " ${LD[@]} " )
436
438
if [ " $GO_VERSION_MAJOR " -lt 1 ] || { [ " $GO_VERSION_MAJOR " == 1 ] && [ " $GO_VERSION_MINOR " -lt 16 ]; }; then
437
- LDSTRIP=" -s"
439
+ LDS=(" -s" " ${LDS[@]} " )
440
+ fi
441
+ if [ ${# LDS[@]} -gt 0 ]; then
442
+ LDFS=(--ldflags=" ${LDS[@]} " )
438
443
fi
439
444
# Build the requested darwin binaries
440
445
if [ " $XGOARCH " == " ." ] || [ " $XGOARCH " == " amd64" ]; then
441
446
echo " Compiling for darwin-$PLATFORM /amd64..."
442
447
CC=o64-clang CXX=o64-clang++ HOST=x86_64-apple-darwin15 PREFIX=/usr/local $BUILD_DEPS /deps " ${DEPS_ARGS[@]} "
443
448
if [[ " $USEMODULES " == false ]]; then
444
- CC=o64-clang CXX=o64-clang++ GOOS=darwin GOARCH=amd64 CGO_ENABLED=1 go get $V $X " ${T[@]} " --ldflags= " $LDSTRIP $V $LD " --gcflags= " $GC " -d " $PACK_RELPATH "
449
+ CC=o64-clang CXX=o64-clang++ GOOS=darwin GOARCH=amd64 CGO_ENABLED=1 go get $V $X " ${T[@]} " " ${LDFS[@]} " " ${GC[@]} " -d " $PACK_RELPATH "
445
450
fi
446
- CC=o64-clang CXX=o64-clang++ GOOS=darwin GOARCH=amd64 CGO_ENABLED=1 go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $LDSTRIP $V $LD " --gcflags= " $GC " $R " $BM " -o " /build/$NAME -darwin-$PLATFORM -amd64$R $( extension darwin) " " $PACK_RELPATH "
451
+ CC=o64-clang CXX=o64-clang++ GOOS=darwin GOARCH=amd64 CGO_ENABLED=1 go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDFS[@]} " " ${GC[@]} " $R " ${BM[@]} " -o " /build/$NAME -darwin-$PLATFORM -amd64$R $( extension darwin) " " $PACK_RELPATH "
447
452
fi
448
453
if [ " $XGOARCH " == " ." ] || [ " $XGOARCH " == " arm64" ]; then
449
454
if [ " $GO_VERSION_MAJOR " -lt 1 ] || { [ " $GO_VERSION_MAJOR " == 1 ] && [ " $GO_VERSION_MINOR " -lt 16 ]; }; then
@@ -452,9 +457,9 @@ for TARGET in $TARGETS; do
452
457
echo " Compiling for darwin-$PLATFORM /arm64..."
453
458
CC=o64-clang CXX=o64-clang++ HOST=arm64-apple-darwin15 PREFIX=/usr/local $BUILD_DEPS /deps " ${DEPS_ARGS[@]} "
454
459
if [[ " $USEMODULES " == false ]]; then
455
- CC=o64-clang CXX=o64-clang++ GOOS=darwin GOARCH=arm64 CGO_ENABLED=1 go get $V $X " ${T[@]} " --ldflags= " $LDSTRIP $V $LD " --gcflags= " $GC " -d " $PACK_RELPATH "
460
+ CC=o64-clang CXX=o64-clang++ GOOS=darwin GOARCH=arm64 CGO_ENABLED=1 go get $V $X " ${T[@]} " " ${LDFS[@]} " " ${GC[@]} " -d " $PACK_RELPATH "
456
461
fi
457
- CC=o64-clang CXX=o64-clang++ GOOS=darwin GOARCH=arm64 CGO_ENABLED=1 go build $V $X $TP " $MOD " " ${T[@]} " --ldflags= " $LDSTRIP $V $LD " --gcflags= " $GC " $R " $BM " -o " /build/$NAME -darwin-$PLATFORM -arm64$R $( extension darwin) " " $PACK_RELPATH "
462
+ CC=o64-clang CXX=o64-clang++ GOOS=darwin GOARCH=arm64 CGO_ENABLED=1 go build $V $X $TP " ${ MOD[@]} " " ${T[@]} " " ${LDFS[@]} " " ${GC[@]} " $R " ${BM[@]} " -o " /build/$NAME -darwin-$PLATFORM -arm64$R $( extension darwin) " " $PACK_RELPATH "
458
463
fi
459
464
fi
460
465
# Remove any automatically injected deployment target vars
0 commit comments