2013-03-25 17:48:46 -04:00
|
|
|
DOCKER_PACKAGE := github.com/dotcloud/docker
|
|
|
|
|
2013-03-25 20:23:36 -04:00
|
|
|
BUILD_DIR := $(CURDIR)/.gopath
|
2013-03-25 17:48:46 -04:00
|
|
|
|
|
|
|
GOPATH ?= $(BUILD_DIR)
|
|
|
|
export GOPATH
|
|
|
|
|
2013-03-26 02:28:35 -04:00
|
|
|
GO_OPTIONS ?=
|
|
|
|
ifeq ($(VERBOSE), 1)
|
|
|
|
GO_OPTIONS += -v
|
|
|
|
endif
|
|
|
|
|
2013-04-02 10:38:08 -04:00
|
|
|
GIT_COMMIT = $(shell git rev-parse --short HEAD)
|
|
|
|
GIT_STATUS = $(shell test -n "`git status --porcelain`" && echo "+CHANGES")
|
|
|
|
|
2013-04-11 15:58:23 -04:00
|
|
|
NO_MEMORY_LIMIT ?= 0
|
|
|
|
export NO_MEMORY_LIMIT
|
|
|
|
|
|
|
|
BUILD_OPTIONS = -ldflags "-X main.GIT_COMMIT $(GIT_COMMIT)$(GIT_STATUS) -X main.NO_MEMORY_LIMIT $(NO_MEMORY_LIMIT)"
|
2013-04-01 14:12:56 -04:00
|
|
|
|
2013-03-25 17:48:46 -04:00
|
|
|
SRC_DIR := $(GOPATH)/src
|
|
|
|
|
|
|
|
DOCKER_DIR := $(SRC_DIR)/$(DOCKER_PACKAGE)
|
|
|
|
DOCKER_MAIN := $(DOCKER_DIR)/docker
|
|
|
|
|
2013-03-26 10:30:01 -04:00
|
|
|
DOCKER_BIN_RELATIVE := bin/docker
|
|
|
|
DOCKER_BIN := $(CURDIR)/$(DOCKER_BIN_RELATIVE)
|
2013-03-25 17:48:46 -04:00
|
|
|
|
2013-03-25 18:15:37 -04:00
|
|
|
.PHONY: all clean test
|
2013-03-25 17:48:46 -04:00
|
|
|
|
|
|
|
all: $(DOCKER_BIN)
|
|
|
|
|
|
|
|
$(DOCKER_BIN): $(DOCKER_DIR)
|
|
|
|
@mkdir -p $(dir $@)
|
2013-04-01 14:12:56 -04:00
|
|
|
@(cd $(DOCKER_MAIN); go get $(GO_OPTIONS); go build $(GO_OPTIONS) $(BUILD_OPTIONS) -o $@)
|
2013-03-26 10:30:01 -04:00
|
|
|
@echo $(DOCKER_BIN_RELATIVE) is created.
|
2013-03-25 17:48:46 -04:00
|
|
|
|
|
|
|
$(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
|
2013-03-25 18:15:37 -04:00
|
|
|
|
|
|
|
test: all
|
2013-03-26 02:28:35 -04:00
|
|
|
@(cd $(DOCKER_DIR); sudo -E go test $(GO_OPTIONS))
|
2013-04-01 16:05:00 -04:00
|
|
|
|
|
|
|
fmt:
|
2013-04-01 17:50:25 -04:00
|
|
|
@gofmt -s -l -w .
|