gccgo 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #!/bin/bash
  2. set -e
  3. BINARY_NAME="dockerd-$VERSION"
  4. BINARY_EXTENSION="$(binary_extension)"
  5. BINARY_FULLNAME="$BINARY_NAME$BINARY_EXTENSION"
  6. PROXY_NAME="docker-proxy-$VERSION"
  7. PROXY_FULLNAME="$PROXY_NAME$BINARY_EXTENSION"
  8. CLIENTBIN_NAME="docker-$VERSION"
  9. CLIENTBIN_FULLNAME="$CLIENTBIN_NAME$BINARY_EXTENSION"
  10. source "${MAKEDIR}/.go-autogen"
  11. if [[ "${BUILDFLAGS[@]}" =~ 'netgo ' ]]; then
  12. EXTLDFLAGS_STATIC+=' -lnetgo'
  13. fi
  14. # gccgo require explicit flag -pthread to allow goroutines to work.
  15. go build -compiler=gccgo \
  16. -o "$DEST/$BINARY_FULLNAME" \
  17. "${BUILDFLAGS[@]}" \
  18. -gccgoflags "
  19. -g
  20. $EXTLDFLAGS_STATIC
  21. -Wl,--no-export-dynamic
  22. -ldl
  23. -pthread
  24. " \
  25. ./cmd/dockerd
  26. echo "Created binary: $DEST/$BINARY_FULLNAME"
  27. ln -sf "$BINARY_FULLNAME" "$DEST/dockerd$BINARY_EXTENSION"
  28. go build -compiler=gccgo \
  29. -o "$DEST/$PROXY_FULLNAME" \
  30. "${BUILDFLAGS[@]}" \
  31. -gccgoflags "
  32. -g
  33. $EXTLDFLAGS_STATIC
  34. -Wl,--no-export-dynamic
  35. -ldl
  36. -pthread
  37. " \
  38. ./vendor/src/github.com/docker/libnetwork/cmd/proxy
  39. echo "Created binary: $DEST/$PROXY_FULLNAME"
  40. ln -sf "$PROXY_FULLNAME" "$DEST/docker-proxy$BINARY_EXTENSION"
  41. copy_containerd "$DEST" "hash"
  42. hash_files "$DEST/$BINARY_FULLNAME"
  43. go build -compiler=gccgo \
  44. -o "$DEST/$CLIENTBIN_FULLNAME" \
  45. "${BUILDFLAGS[@]}" \
  46. -gccgoflags "
  47. -g
  48. $EXTLDFLAGS_STATIC
  49. -Wl,--no-export-dynamic
  50. -ldl
  51. -pthread
  52. " \
  53. ./cmd/docker
  54. echo "Created binary: $DEST/$CLIENTBIN_FULLNAME"
  55. ln -sf "$CLIENTBIN_FULLNAME" "$DEST/docker$BINARY_EXTENSION"
  56. hash_files "$DEST/$CLIENTBIN_FULLNAME"