| #!/bin/bash |
| set -e |
| |
| BINARY_NAME="dockerd-$VERSION" |
| BINARY_EXTENSION="$(binary_extension)" |
| BINARY_FULLNAME="$BINARY_NAME$BINARY_EXTENSION" |
| |
| PROXY_NAME="docker-proxy-$VERSION" |
| PROXY_FULLNAME="$PROXY_NAME$BINARY_EXTENSION" |
| |
| CLIENTBIN_NAME="docker-$VERSION" |
| CLIENTBIN_FULLNAME="$CLIENTBIN_NAME$BINARY_EXTENSION" |
| |
| source "${MAKEDIR}/.go-autogen" |
| |
| if [[ "${BUILDFLAGS[@]}" =~ 'netgo ' ]]; then |
| EXTLDFLAGS_STATIC+=' -lnetgo' |
| fi |
| # gccgo require explicit flag -pthread to allow goroutines to work. |
| go build -compiler=gccgo \ |
| -o "$DEST/$BINARY_FULLNAME" \ |
| "${BUILDFLAGS[@]}" \ |
| -gccgoflags " |
| -g |
| $EXTLDFLAGS_STATIC |
| -Wl,--no-export-dynamic |
| -ldl |
| -pthread |
| " \ |
| ./cmd/dockerd |
| |
| echo "Created binary: $DEST/$BINARY_FULLNAME" |
| ln -sf "$BINARY_FULLNAME" "$DEST/dockerd$BINARY_EXTENSION" |
| |
| go build -compiler=gccgo \ |
| -o "$DEST/$PROXY_FULLNAME" \ |
| "${BUILDFLAGS[@]}" \ |
| -gccgoflags " |
| -g |
| $EXTLDFLAGS_STATIC |
| -Wl,--no-export-dynamic |
| -ldl |
| -pthread |
| " \ |
| ./vendor/src/github.com/docker/libnetwork/cmd/proxy |
| |
| echo "Created binary: $DEST/$PROXY_FULLNAME" |
| ln -sf "$PROXY_FULLNAME" "$DEST/docker-proxy$BINARY_EXTENSION" |
| |
| copy_containerd "$DEST" "hash" |
| hash_files "$DEST/$BINARY_FULLNAME" |
| |
| go build -compiler=gccgo \ |
| -o "$DEST/$CLIENTBIN_FULLNAME" \ |
| "${BUILDFLAGS[@]}" \ |
| -gccgoflags " |
| -g |
| $EXTLDFLAGS_STATIC |
| -Wl,--no-export-dynamic |
| -ldl |
| -pthread |
| " \ |
| ./cmd/docker |
| |
| echo "Created binary: $DEST/$CLIENTBIN_FULLNAME" |
| ln -sf "$CLIENTBIN_FULLNAME" "$DEST/docker$BINARY_EXTENSION" |
| hash_files "$DEST/$CLIENTBIN_FULLNAME" |
| |