From c89fa6645ef87e1863ef5812bd42176f5bd987ca Mon Sep 17 00:00:00 2001 From: "Guillaume J. Charmes" Date: Thu, 6 Mar 2014 12:04:51 -0800 Subject: [PATCH] Add buildflags to allow crosscompilation for apparmor Docker-DCO-1.1-Signed-off-by: Guillaume J. Charmes (github: creack) --- hack/make.sh | 3 ++- hack/make/binary | 2 +- hack/make/cross | 1 + pkg/libcontainer/apparmor/apparmor.go | 2 ++ pkg/libcontainer/apparmor/apparmor_disabled.go | 13 +++++++++++++ 5 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 pkg/libcontainer/apparmor/apparmor_disabled.go diff --git a/hack/make.sh b/hack/make.sh index 59bd716022..7f143dd464 100755 --- a/hack/make.sh +++ b/hack/make.sh @@ -84,7 +84,8 @@ fi # Use these flags when compiling the tests and final binary LDFLAGS='-X github.com/dotcloud/docker/dockerversion.GITCOMMIT "'$GITCOMMIT'" -X github.com/dotcloud/docker/dockerversion.VERSION "'$VERSION'" -w' LDFLAGS_STATIC='-X github.com/dotcloud/docker/dockerversion.IAMSTATIC true -linkmode external -extldflags "-lpthread -static -Wl,--unresolved-symbols=ignore-in-object-files"' -BUILDFLAGS='-tags netgo -a' +BUILDFLAGS='-a' +BUILDTAGS="apparmor netgo" HAVE_GO_TEST_COVER= if \ diff --git a/hack/make/binary b/hack/make/binary index 93e99fee8f..344be25a73 100644 --- a/hack/make/binary +++ b/hack/make/binary @@ -2,5 +2,5 @@ DEST=$1 -go build -o $DEST/docker-$VERSION -ldflags "$LDFLAGS $LDFLAGS_STATIC" $BUILDFLAGS ./docker +go build -o $DEST/docker-$VERSION -ldflags "$LDFLAGS $LDFLAGS_STATIC" $BUILDFLAGS -tags "$BUILDTAGS" ./docker echo "Created binary: $DEST/docker-$VERSION" diff --git a/hack/make/cross b/hack/make/cross index a67ab6c28a..28424c432e 100644 --- a/hack/make/cross +++ b/hack/make/cross @@ -18,6 +18,7 @@ for platform in $DOCKER_CROSSPLATFORMS; do export GOOS=${platform%/*} export GOARCH=${platform##*/} export LDFLAGS_STATIC="" # we just need a simple client for these platforms (TODO this might change someday) + export BUILDTAGS="netgo" source "$(dirname "$BASH_SOURCE")/binary" "$DEST/$platform" ) done diff --git a/pkg/libcontainer/apparmor/apparmor.go b/pkg/libcontainer/apparmor/apparmor.go index c2954fdad4..d07c710dbe 100644 --- a/pkg/libcontainer/apparmor/apparmor.go +++ b/pkg/libcontainer/apparmor/apparmor.go @@ -1,3 +1,5 @@ +// +build apparmor + package apparmor // #cgo LDFLAGS: -lapparmor diff --git a/pkg/libcontainer/apparmor/apparmor_disabled.go b/pkg/libcontainer/apparmor/apparmor_disabled.go new file mode 100644 index 0000000000..489484fcc6 --- /dev/null +++ b/pkg/libcontainer/apparmor/apparmor_disabled.go @@ -0,0 +1,13 @@ +// +build !apparmor + +package apparmor + +import () + +func IsEnabled() bool { + return false +} + +func ApplyProfile(pid int, name string) error { + return nil +}