|
|
@@ -2,9 +2,18 @@ |
|
|
|
MK_FILE_PATH = $(lastword $(MAKEFILE_LIST)) |
|
|
|
PRJ_DIR = $(abspath $(dir $(MK_FILE_PATH))) |
|
|
|
GOPATH_LOCAL = $(PRJ_DIR)/build |
|
|
|
GOPATH_PKG = src/github.com/cloudflare/p751sidh |
|
|
|
GOPATH_DIR = github.com/cloudflare/p751sidh |
|
|
|
CSHAKE_PKG = github.com/henrydcase/nobs/hash/sha3 |
|
|
|
TARGETS = p751toolbox sidh sike |
|
|
|
GOARCH ?= |
|
|
|
OPTS_GCCGO ?= -compiler gccgo -O2 -g |
|
|
|
OPTS_TAGS ?= -tags=noasm |
|
|
|
OPTS ?= |
|
|
|
NOASM ?= |
|
|
|
|
|
|
|
ifeq ($(NOASM),1) |
|
|
|
OPTS+=$(OPTS_TAGS) |
|
|
|
endif |
|
|
|
|
|
|
|
clean: |
|
|
|
rm -rf $(GOPATH_LOCAL) |
|
|
@@ -12,20 +21,24 @@ clean: |
|
|
|
|
|
|
|
prep: |
|
|
|
GOPATH=$(GOPATH_LOCAL) go get $(CSHAKE_PKG) |
|
|
|
mkdir -p $(GOPATH_LOCAL)/$(GOPATH_PKG) |
|
|
|
cp -rf p751toolbox $(GOPATH_LOCAL)/$(GOPATH_PKG) |
|
|
|
cp -rf sidh $(GOPATH_LOCAL)/$(GOPATH_PKG) |
|
|
|
mkdir -p $(GOPATH_LOCAL)/src/$(GOPATH_DIR) |
|
|
|
cp -rf p751toolbox $(GOPATH_LOCAL)/src/$(GOPATH_DIR) |
|
|
|
cp -rf sidh $(GOPATH_LOCAL)/src/$(GOPATH_DIR) |
|
|
|
cp -rf sike $(GOPATH_LOCAL)/src/$(GOPATH_DIR) |
|
|
|
cp -rf etc $(GOPATH_LOCAL)/src/$(GOPATH_DIR) |
|
|
|
|
|
|
|
test-%: clean prep |
|
|
|
GOPATH=$(GOPATH_LOCAL) go test -race -v ./$* |
|
|
|
test-%: prep |
|
|
|
GOPATH=$(GOPATH_LOCAL) go test -v $(OPTS) $(GOPATH_DIR)/$* |
|
|
|
|
|
|
|
bench-%: prep |
|
|
|
cd $*; GOPATH=$(GOPATH_LOCAL) go test -v $(OPTS) -bench=. |
|
|
|
|
|
|
|
cover-%: clean prep |
|
|
|
GOPATH=$(GOPATH_LOCAL) go test -race -coverprofile=coverage_$*.txt -covermode=atomic ./$* |
|
|
|
cover-%: prep |
|
|
|
GOPATH=$(GOPATH_LOCAL) go test \ |
|
|
|
-race -coverprofile=coverage_$*.txt -covermode=atomic $(OPTS) $(GOPATH_DIR)/$* |
|
|
|
cat coverage_$*.txt >> coverage.txt |
|
|
|
rm coverage_$*.txt |
|
|
|
|
|
|
|
test: $(addprefix test-, $(TARGETS)) |
|
|
|
bench: $(addprefix bench-, $(TARGETS)) |
|
|
|
cover: $(addprefix cover-, $(TARGETS)) |
|
|
|
cover: $(addprefix cover-, $(TARGETS)) |