CFLAGS += -pthread
CXXFLAGS += -pthread
endif
+ifeq ($(UNAME_S),Haiku)
+ CFLAGS += -pthread
+ CXXFLAGS += -pthread
+endif
# Architecture specific
# TODO: probably these flags need to be tweaked on some architectures
ifneq (,$(findstring f16c,$(F16C_M)))
CFLAGS += -mf16c
endif
+ else ifeq ($(UNAME_S),Haiku)
+ AVX1_M := $(shell sysinfo -cpu | grep "AVX ")
+ ifneq (,$(findstring avx,$(AVX1_M)))
+ CFLAGS += -mavx
+ endif
+ AVX2_M := $(shell sysinfo -cpu | grep "AVX2 ")
+ ifneq (,$(findstring avx2,$(AVX2_M)))
+ CFLAGS += -mavx2
+ endif
+ FMA_M := $(shell sysinfo -cpu | grep "FMA ")
+ ifneq (,$(findstring fma,$(FMA_M)))
+ CFLAGS += -mfma
+ endif
+ F16C_M := $(shell sysinfo -cpu | grep "F16C ")
+ ifneq (,$(findstring f16c,$(F16C_M)))
+ CFLAGS += -mf16c
+ endif
else
CFLAGS += -mfma -mf16c -mavx -mavx2
endif
typedef void* thread_ret_t;
#endif
+#ifdef __HAIKU__
+#define static_assert(cond, msg) _Static_assert(cond, msg)
+#endif
+
#define GGML_DEBUG 0
#define GGML_GELU_FP16