support m1 mac

update-fork
MITSUNARI Shigeo 4 years ago
parent d0da379eb2
commit b0abe614ae
  1. 6
      Makefile
  2. 21
      common.mk

@ -91,6 +91,10 @@ ifneq ($(CPU),)
ASM_SRC=$(ASM_SRC_PATH_NAME).s ASM_SRC=$(ASM_SRC_PATH_NAME).s
endif endif
ASM_OBJ=$(OBJ_DIR)/$(CPU).o ASM_OBJ=$(OBJ_DIR)/$(CPU).o
ifeq ($(OS),mac-m1)
ASM_SRC=src/base64.ll
ASM_OBJ=$(OBJ_DIR)/base64.o
endif
BN256_OBJ=$(OBJ_DIR)/bn_c256.o BN256_OBJ=$(OBJ_DIR)/bn_c256.o
BN384_OBJ=$(OBJ_DIR)/bn_c384.o BN384_OBJ=$(OBJ_DIR)/bn_c384.o
BN384_256_OBJ=$(OBJ_DIR)/bn_c384_256.o BN384_256_OBJ=$(OBJ_DIR)/bn_c384_256.o
@ -400,7 +404,7 @@ update_cybozulib:
cp -a $(addprefix ../cybozulib/,$(wildcard include/cybozu/*.hpp)) include/cybozu/ cp -a $(addprefix ../cybozulib/,$(wildcard include/cybozu/*.hpp)) include/cybozu/
clean: clean:
$(RM) $(LIB_DIR)/*.a $(LIB_DIR)/*.$(LIB_SUF) $(OBJ_DIR)/*.o $(OBJ_DIR)/*.obj $(OBJ_DIR)/*.d $(EXE_DIR)/*.exe $(GEN_EXE) $(ASM_OBJ) $(LIB_OBJ) $(BN256_OBJ) $(BN384_OBJ) $(BN512_OBJ) $(FUNC_LIST) src/*.ll lib/*.a src/static_code.asm src/dump_code $(RM) $(LIB_DIR)/*.a $(LIB_DIR)/*.$(LIB_SUF) $(OBJ_DIR)/*.o $(OBJ_DIR)/*.obj $(OBJ_DIR)/*.d $(EXE_DIR)/*.exe $(GEN_EXE) $(ASM_OBJ) $(LIB_OBJ) $(BN256_OBJ) $(BN384_OBJ) $(BN512_OBJ) $(FUNC_LIST) lib/*.a src/static_code.asm src/dump_code
ALL_SRC=$(SRC_SRC) $(TEST_SRC) $(SAMPLE_SRC) ALL_SRC=$(SRC_SRC) $(TEST_SRC) $(SAMPLE_SRC)
DEPEND_FILE=$(addprefix $(OBJ_DIR)/, $(addsuffix .d,$(basename $(ALL_SRC)))) DEPEND_FILE=$(addprefix $(OBJ_DIR)/, $(addsuffix .d,$(basename $(ALL_SRC))))

@ -1,5 +1,6 @@
GCC_VER=$(shell $(PRE)$(CC) -dumpversion) GCC_VER=$(shell $(PRE)$(CC) -dumpversion)
UNAME_S=$(shell uname -s) UNAME_S=$(shell uname -s)
ARCH?=$(shell uname -m)
NASM_ELF_OPT=-felf64 NASM_ELF_OPT=-felf64
ifeq ($(UNAME_S),Linux) ifeq ($(UNAME_S),Linux)
OS=Linux OS=Linux
@ -13,8 +14,11 @@ ifeq ($(findstring CYGWIN,$(UNAME_S)),CYGWIN)
OS=cygwin OS=cygwin
endif endif
ifeq ($(UNAME_S),Darwin) ifeq ($(UNAME_S),Darwin)
OS=mac ifeq ($(ARCH),x86_64)
ARCH=x86_64 OS=mac
else
OS=mac-m1
endif
LIB_SUF=dylib LIB_SUF=dylib
OPENSSL_DIR?=/usr/local/opt/openssl OPENSSL_DIR?=/usr/local/opt/openssl
CFLAGS+=-I$(OPENSSL_DIR)/include CFLAGS+=-I$(OPENSSL_DIR)/include
@ -39,7 +43,6 @@ ifeq ($(UNAME_S),FreeBSD)
LDFLAGS+=-L/usr/local/lib LDFLAGS+=-L/usr/local/lib
endif endif
ARCH?=$(shell uname -m)
ifneq ($(findstring $(ARCH),x86_64/amd64),) ifneq ($(findstring $(ARCH),x86_64/amd64),)
CPU=x86-64 CPU=x86-64
INTEL=1 INTEL=1
@ -63,11 +66,12 @@ ifneq ($(findstring $(ARCH),armv7l/armv6l),)
BIT=32 BIT=32
#LOW_ASM_SRC=src/asm/low_arm.s #LOW_ASM_SRC=src/asm/low_arm.s
endif endif
ifeq ($(ARCH),aarch64) #ifeq ($(ARCH),aarch64)
ifneq ($(findstring $(ARCH),aarch64/arm64),)
CPU=aarch64 CPU=aarch64
BIT=64 BIT=64
endif endif
ifeq ($(findstring $(OS),mac/mingw64/openbsd),) ifeq ($(findstring $(OS),mac/mac-m1/mingw64/openbsd),)
LDFLAGS+=-lrt LDFLAGS+=-lrt
endif endif
@ -111,11 +115,8 @@ CFLAGS+=$(CFLAGS_OPT_USER)
endif endif
CFLAGS+=$(CFLAGS_USER) CFLAGS+=$(CFLAGS_USER)
MCL_USE_GMP?=1 MCL_USE_GMP?=1
ifeq ($(OS),mac) ifneq ($(OS),mac/mac-m1,)
ifeq ($(shell sw_vers -productVersion),10.15) MCL_USE_GMP=0
# workaround because of GMP does not run well on Catalina
MCL_USE_GMP=0
endif
endif endif
MCL_USE_OPENSSL?=0 MCL_USE_OPENSSL?=0
ifeq ($(MCL_USE_GMP),0) ifeq ($(MCL_USE_GMP),0)

Loading…
Cancel
Save