36 lines
679 B
Makefile
36 lines
679 B
Makefile
DOCKER_PACKAGE := github.com/dotcloud/docker
|
|
|
|
BUILD_DIR := $(CURDIR)/.gopath
|
|
|
|
GOPATH ?= $(BUILD_DIR)
|
|
export GOPATH
|
|
|
|
SRC_DIR := $(GOPATH)/src
|
|
|
|
DOCKER_DIR := $(SRC_DIR)/$(DOCKER_PACKAGE)
|
|
DOCKER_MAIN := $(DOCKER_DIR)/docker
|
|
|
|
DOCKER_BIN := $(CURDIR)/bin/docker
|
|
|
|
.PHONY: all clean test
|
|
|
|
all: $(DOCKER_BIN)
|
|
|
|
$(DOCKER_BIN): $(DOCKER_DIR)
|
|
@mkdir -p $(dir $@)
|
|
(cd $(DOCKER_MAIN); go get; go build -o $@)
|
|
|
|
$(DOCKER_DIR):
|
|
@mkdir -p $(dir $@)
|
|
@ln -sf $(CURDIR)/ $@
|
|
|
|
clean:
|
|
@rm -rf $(dir $(DOCKER_BIN))
|
|
ifeq ($(GOPATH), $(BUILD_DIR))
|
|
@rm -rf $(BUILD_DIR)
|
|
else ifneq ($(DOCKER_DIR), $(realpath $(DOCKER_DIR)))
|
|
@rm -f $(DOCKER_DIR)
|
|
endif
|
|
|
|
test: all
|
|
(cd $(DOCKER_DIR); sudo -E go test)
|