docker-engine: fix handling of vendor tree
authorChristian Stewart <christian@paral.in>
Tue, 18 Apr 2017 07:53:59 +0000 (03:53 -0400)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tue, 18 Apr 2017 15:46:37 +0000 (17:46 +0200)
The latest docker-engine release changes the vendor tree slightly. The
Go tool will recognize a ./vendor directory and use it as a vendor tree
automatically, but only when run inside a valid GOPATH. This patch
adjusts how the GOPATH is built - now docker/docker is linked into a
blank tree, and the Go tool recognizes the ./vendor directory correctly.

Signed-off-by: Christian Stewart <christian@paral.in>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/docker-engine/docker-engine.mk

index 5101702045f33b321ee2eb6be6eae079613b01cb..c4c1157f437c26e3af06864bc502ee6267c1b23e 100644 (file)
@@ -13,7 +13,7 @@ DOCKER_ENGINE_LICENSE_FILES = LICENSE
 
 DOCKER_ENGINE_DEPENDENCIES = host-go host-pkgconf
 
-DOCKER_ENGINE_GOPATH = "$(@D)/vendor"
+DOCKER_ENGINE_GOPATH = "$(@D)/gopath"
 DOCKER_ENGINE_MAKE_ENV = $(HOST_GO_TARGET_ENV) \
        CGO_ENABLED=1 \
        CGO_NO_EMULATION=1 \
@@ -100,7 +100,8 @@ endif
 
 define DOCKER_ENGINE_BUILD_CMDS
        $(foreach target,$(DOCKER_ENGINE_BUILD_TARGETS), \
-               cd $(@D); $(DOCKER_ENGINE_MAKE_ENV) \
+               cd $(@D)/gopath/src/github.com/docker/docker; \
+               $(DOCKER_ENGINE_MAKE_ENV) \
                $(HOST_DIR)/usr/bin/go build -v \
                        -o $(@D)/bin/$(target) \
                        -tags "$(DOCKER_ENGINE_BUILD_TAGS)" \