diff options
author | MITSUNARI Shigeo <herumi@nifty.com> | 2019-01-05 21:09:09 +0800 |
---|---|---|
committer | MITSUNARI Shigeo <herumi@nifty.com> | 2019-01-05 21:09:09 +0800 |
commit | 3c7d378c00da0c2d9cf2691bfd363fc0c41ffe54 (patch) | |
tree | eac208a8678d701766ceab8dd3a02ff68570c178 /Makefile | |
parent | 62317075921e6e31b1e6ff31eb41d335696fd1bd (diff) | |
download | dexon-bls-3c7d378c00da0c2d9cf2691bfd363fc0c41ffe54.tar dexon-bls-3c7d378c00da0c2d9cf2691bfd363fc0c41ffe54.tar.gz dexon-bls-3c7d378c00da0c2d9cf2691bfd363fc0c41ffe54.tar.bz2 dexon-bls-3c7d378c00da0c2d9cf2691bfd363fc0c41ffe54.tar.lz dexon-bls-3c7d378c00da0c2d9cf2691bfd363fc0c41ffe54.tar.xz dexon-bls-3c7d378c00da0c2d9cf2691bfd363fc0c41ffe54.tar.zst dexon-bls-3c7d378c00da0c2d9cf2691bfd363fc0c41ffe54.zip |
sample_test runs on mac
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 33 |
1 files changed, 22 insertions, 11 deletions
@@ -1,4 +1,10 @@ -MCL_DIR?=../mcl +ifeq ($(findstring MINGW64,$(shell uname -s)),MINGW64) + # cgo accepts not '/c/path' but 'c:/path' + PWD=$(shell pwd|sed s'@^/\([a-z]\)@\1:@') +else + PWD=$(shell pwd) +endif +MCL_DIR?=$(PWD)/../mcl include $(MCL_DIR)/common.mk LIB_DIR=lib OBJ_DIR=obj @@ -82,38 +88,43 @@ $(EXE_DIR)/%256_test.exe: $(OBJ_DIR)/%256_test.o $(BLS256_LIB) $(MCL_LIB) # sample exe links libbls256.a $(EXE_DIR)/%.exe: $(OBJ_DIR)/%.o $(BLS256_LIB) $(MCL_LIB) $(PRE)$(CXX) $< -o $@ $(BLS256_LIB) -L$(MCL_DIR)/lib -lmcl $(LDFLAGS) +ifeq ($(OS),mac) + install_name_tool bin/bls_smpl.exe -change lib/libmcl.dylib $(MCL_DIR)/lib/libmcl.dylib +endif SAMPLE_EXE=$(addprefix $(EXE_DIR)/,$(SAMPLE_SRC:.cpp=.exe)) sample: $(SAMPLE_EXE) TEST_EXE=$(addprefix $(EXE_DIR)/,$(TEST_SRC:.cpp=.exe)) +ifeq ($(OS),mac) + LIBPATH_KEY=DYLD_LIBRARY_PATH +else + LIBPATH_KEY=LD_LIBRARY_PATH +endif test_ci: $(TEST_EXE) - @sh -ec 'for i in $(TEST_EXE); do echo $$i; env LSAN_OPTIONS=verbosity=1 log_threads=1 LD_LIBRARY_PATH=../mcl/lib $$i; done' + @sh -ec 'for i in $(TEST_EXE); do echo $$i; env PATH=$$PATH:../mcl/lib $(LIBPATH_KEY)=../mcl/lib LSAN_OPTIONS=verbosity=1 log_threads=1 $$i; done' $(MAKE) sample_test test: $(TEST_EXE) @echo test $(TEST_EXE) - @sh -ec 'for i in $(TEST_EXE); do env LD_LIBRARY_PATH=../mcl/lib $$i|grep "ctest:name"; done' > result.txt + @sh -ec 'for i in $(TEST_EXE); do env PATH=$$PATH:../mcl/lib $(LIBPATH_KEY)=../mcl/lib $$i|grep "ctest:name"; done' > result.txt @grep -v "ng=0, exception=0" result.txt; if [ $$? -eq 1 ]; then echo "all unit tests succeed"; else exit 1; fi $(MAKE) sample_test sample_test: $(EXE_DIR)/bls_smpl.exe - env LD_LIBRARY_PATH=../mcl/lib python bls_smpl.py + env PATH=$$PATH:../mcl/lib $(LIBPATH_KEY)=../mcl/lib python bls_smpl.py # PATH is for mingw, LD_LIBRARY_PATH is for linux, DYLD_LIBRARY_PATH is for mac COMMON_LIB_PATH="../../../lib:../../../../mcl/lib" -# use bls384 unless tags is specified -test_go_default: ffi/go/bls/bls.go ffi/go/bls/bls_test.go $(BLS384_SLIB) - cd ffi/go/bls && env PATH=$$PATH:$(COMMON_LIB_PATH) LD_LIBRARY_PATH=$(COMMON_LIB_PATH) DYLD_LIBRARY_PATH=$(COMMON_LIB_PATH) go test . +PATH_VAL=$$PATH:$(COMMON_LIB_PATH) LD_LIBRARY_PATH=$(COMMON_LIB_PATH) DYLD_LIBRARY_PATH=$(COMMON_LIB_PATH) CGO_LDFLAGS="-L../../../lib" CGO_CFLAGS="-I$(PWD)/include -I$(MCL_DIR)/include" test_go256: ffi/go/bls/bls.go ffi/go/bls/bls_test.go $(BLS256_SLIB) - cd ffi/go/bls && env PATH=$$PATH:$(COMMON_LIB_PATH) LD_LIBRARY_PATH=$(COMMON_LIB_PATH) DYLD_LIBRARY_PATH=$(COMMON_LIB_PATH) go test -tags bn256 . + cd ffi/go/bls && env PATH=$(PATH_VAL) go test -tags bn256 . test_go384: ffi/go/bls/bls.go ffi/go/bls/bls_test.go $(BLS384_SLIB) - cd ffi/go/bls && env PATH=$$PATH:$(COMMON_LIB_PATH) LD_LIBRARY_PATH=$(COMMON_LIB_PATH) DYLD_LIBRARY_PATH=$(COMMON_LIB_PATH) go test -tags bn384 . + cd ffi/go/bls && env PATH=$(PATH_VAL) go test -tags bn384 . test_go384_256: ffi/go/bls/bls.go ffi/go/bls/bls_test.go $(BLS384_256_SLIB) - cd ffi/go/bls && env PATH=$$PATH:$(COMMON_LIB_PATH) LD_LIBRARY_PATH=$(COMMON_LIB_PATH) DYLD_LIBRARY_PATH=$(COMMON_LIB_PATH) go test -tags bn384_256 . + cd ffi/go/bls && env PATH=$(PATH_VAL) go test -tags bn384_256 . test_go: - $(MAKE) test_go_default $(MAKE) test_go256 $(MAKE) test_go384 $(MAKE) test_go384_256 |