# TODO: probably these flags need to be tweaked on some architectures
# feel free to update the Makefile for your architecture and send a pull request or issue
ifeq ($(UNAME_M),x86_64)
- CFLAGS += -mfma -mf16c
ifeq ($(UNAME_S),Darwin)
+ CFLAGS += -mfma -mf16c
AVX1_M := $(shell sysctl machdep.cpu.features)
ifneq (,$(findstring AVX1.0,$(AVX1_M)))
CFLAGS += -mavx
ifneq (,$(findstring AVX2,$(AVX2_M)))
CFLAGS += -mavx2
endif
+ endif
+ ifeq ($(UNAME_S),Linux)
+ AVX1_M := $(shell grep "avx " /proc/cpuinfo)
+ ifneq (,$(findstring avx,$(AVX1_M)))
+ CFLAGS += -mavx
+ endif
+ AVX2_M := $(shell grep "avx2 " /proc/cpuinfo)
+ ifneq (,$(findstring avx2,$(AVX2_M)))
+ CFLAGS += -mavx2
+ endif
+ FMA_M := $(shell grep "fma " /proc/cpuinfo)
+ ifneq (,$(findstring fma,$(FMA_M)))
+ CFLAGS += -mfma
+ endif
+ F16C_M := $(shell grep "f16c " /proc/cpuinfo)
+ ifneq (,$(findstring f16c,$(F16C_M)))
+ CFLAGS += -mf16c
+ endif
else
- CFLAGS += -mavx -mavx2
+ CFLAGS += -mfma -mf16c -mavx -mavx2
endif
endif
ifeq ($(UNAME_M),amd64)
LDFLAGS += -framework Accelerate
endif
endif
+ifdef WHISPER_OPENBLAS
+ CFLAGS += -DGGML_USE_OPENBLAS -I/usr/local/include/openblas
+ LDFLAGS += -lopenblas
+endif
ifneq ($(filter aarch64%,$(UNAME_M)),)
endif
ifneq ($(filter armv6%,$(UNAME_M)),)