@@ -28,8 +28,8 @@ MAKEFLAGS += -j$(CPUS)
2828CC = gcc
2929CXX = g++
3030CFLAGS = -Wall -Wextra -Wno-unused-parameter -I$(SRC_DIR ) -I$(LLAMA_DIR ) /ggml/include -I$(LLAMA_DIR ) /include
31- LDFLAGS = -L./$(BUILD_DIR ) /lib/common -L./$(BUILD_DIR ) /lib/ggml/src -L./$(BUILD_DIR ) /lib/src - lcommon -lggml -lggml-base -lggml-cpu -lllama
32- LLAMA_OPTIONS = -DLLAMA_CURL=OFF
31+ LDFLAGS = -L./$(BUILD_DIR ) /lib/common -L./$(BUILD_DIR ) /lib/ggml/src -L./$(BUILD_DIR ) /lib/ggml/ src/ggml-blas -L./ $( BUILD_DIR ) /lib/src - lcommon -lggml -lggml-blas -lggml-base -lggml-cpu -lllama
32+ LLAMA_OPTIONS = -DLLAMA_CURL=OFF -DLLAMA_BUILD_EXAMPLES=OFF -DLLAMA_BUILD_TESTS=OFF -DLLAMA_BUILD_TOOLS=OFF -DLLAMA_BUILD_SERVER=OFF
3333
3434# Directories
3535SRC_DIR = src
@@ -43,6 +43,7 @@ SRC_FILES = $(wildcard $(SRC_DIR)/*.c)
4343OBJ_FILES = $(patsubst % .c, $(BUILD_DIR ) /% .o, $(notdir $(SRC_FILES ) ) )
4444LIBS = $(BUILD_DIR ) /lib/common/libcommon.a \
4545 $(BUILD_DIR ) /lib/ggml/src/libggml.a \
46+ $(BUILD_DIR ) /lib/ggml/src/ggml-blas/libggml-blas.a \
4647 $(BUILD_DIR ) /lib/ggml/src/libggml-base.a \
4748 $(BUILD_DIR ) /lib/ggml/src/libggml-cpu.a \
4849 $(BUILD_DIR ) /lib/src/libllama.a
@@ -55,8 +56,8 @@ ifeq ($(PLATFORM),windows)
5556 DEF_FILE := $(BUILD_DIR ) /ai.def
5657else ifeq ($(PLATFORM),macos)
5758 TARGET := $(DIST_DIR ) /ai.dylib
58- LIBS += $(BUILD_DIR ) /lib/ggml/src/ggml-metal/libggml-metal.a $( BUILD_DIR ) /lib/ggml/src/ggml-blas/libggml-blas.a
59- LDFLAGS += -arch x86_64 -arch arm64 -L./$(BUILD_DIR ) /lib/ggml/src/ggml-metal -lggml-metal -L./ $( BUILD_DIR ) /lib/ggml/src/ggml-blas -lggml-blas - framework Metal -framework Foundation -framework CoreFoundation -framework QuartzCore -framework Accelerate -dynamiclib -undefined dynamic_lookup
59+ LIBS += $(BUILD_DIR ) /lib/ggml/src/ggml-metal/libggml-metal.a
60+ LDFLAGS += -arch x86_64 -arch arm64 -L./$(BUILD_DIR ) /lib/ggml/src/ggml-metal -lggml-metal -framework Metal -framework Foundation -framework CoreFoundation -framework QuartzCore -framework Accelerate -dynamiclib -undefined dynamic_lookup
6061 CFLAGS += -arch x86_64 -arch arm64
6162 LLAMA_OPTIONS += -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"
6263else ifeq ($(PLATFORM),android)
@@ -82,19 +83,20 @@ else ifeq ($(PLATFORM),android)
8283 LDFLAGS += -shared
8384else ifeq ($(PLATFORM),ios)
8485 TARGET := $(DIST_DIR ) /ai.dylib
85- SDK := -isysroot $(shell xcrun --sdk iphoneos --show-sdk-path) -miphoneos-version-min=11 .0
86- LDFLAGS += -dynamiclib $(SDK )
86+ SDK := -isysroot $(shell xcrun --sdk iphoneos --show-sdk-path) -miphoneos-version-min=14 .0
87+ LDFLAGS += -framework Accelerate -framework Metal - dynamiclib $(SDK )
8788 CFLAGS += -arch arm64 $(SDK )
88- LLAMA_OPTIONS += -DCMAKE_SYSTEM_NAME=iOS
89+ LLAMA_OPTIONS += -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0
8990else ifeq ($(PLATFORM),isim)
9091 TARGET := $(DIST_DIR ) /ai.dylib
91- SDK := -isysroot $(shell xcrun --sdk iphonesimulator --show-sdk-path) -miphonesimulator-version-min=11 .0
92- LDFLAGS += -arch x86_64 -arch arm64 -dynamiclib $(SDK )
92+ SDK := -isysroot $(shell xcrun --sdk iphonesimulator --show-sdk-path) -miphonesimulator-version-min=14 .0
93+ LDFLAGS += -arch x86_64 -arch arm64 -framework Accelerate -framework Metal - dynamiclib $(SDK )
9394 CFLAGS += -arch x86_64 -arch arm64 $(SDK )
94- LLAMA_OPTIONS += -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"
95+ LLAMA_OPTIONS += -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0 - DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"
9596else # linux
9697 TARGET := $(DIST_DIR ) /ai.so
9798 LDFLAGS += -shared
99+ LLAMA_OPTIONS += -DCMAKE_POSITION_INDEPENDENT_CODE=ON
98100endif
99101
100102# Windows .def file generation
0 commit comments