@@ -28,7 +28,7 @@ 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_LLAMA ) /common -L./$(BUILD_LLAMA ) /ggml/src -L./$(BUILD_LLAMA ) /src -L./$(BUILD_WHISPER ) /src -lcommon -lggml -lggml-base -lggml-cpu - lllama -lwhisper
31+ LDFLAGS = -L./$(BUILD_LLAMA ) /common -L./$(BUILD_LLAMA ) /ggml/src -L./$(BUILD_LLAMA ) /src -L./$(BUILD_WHISPER ) /src -lcommon -lggml -lggml-base -lllama -lwhisper
3232LLAMA_OPTIONS = $(LLAMA ) -DLLAMA_CURL=OFF -DLLAMA_BUILD_EXAMPLES=OFF -DLLAMA_BUILD_TESTS=OFF -DLLAMA_BUILD_TOOLS=OFF -DLLAMA_BUILD_SERVER=OFF
3333WHISPER_OPTIONS = $(WHISPER ) -DWHISPER_BUILD_EXAMPLES=OFF -DWHISPER_BUILD_TESTS=OFF -DWHISPER_BUILD_SERVER=OFF
3434
@@ -85,31 +85,31 @@ else ifeq ($(PLATFORM),android)
8585 CXX = $(CC ) ++
8686 TARGET := $(DIST_DIR ) /ai.so
8787 LDFLAGS += -static-libstdc++ -shared
88- LLAMA_OPTIONS += -DCMAKE_TOOLCHAIN_FILE=$(ANDROID_NDK ) /build/cmake/android.toolchain.cmake -DANDROID_ABI=$(if $(filter aarch64,$(ARCH ) ) ,arm64-v8a,$(ARCH ) ) -DANDROID_PLATFORM=android-26 -DCMAKE_C_FLAGS="-march=$(if $(filter aarch64,$(ARCH ) ) ,armv8.7a,x86-64) " -DCMAKE_CXX_FLAGS="-march=$(if $(filter aarch64,$(ARCH ) ) ,armv8.7a,x86-64) " -DGGML_OPENMP=OFF -DGGML_LLAMAFILE=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON
89- WHISPER_OPTIONS += -DCMAKE_TOOLCHAIN_FILE=$(ANDROID_NDK ) /build/cmake/android.toolchain.cmake -DANDROID_ABI=$(if $(filter aarch64,$(ARCH ) ) ,arm64-v8a,$(ARCH ) ) -DANDROID_PLATFORM=android-26 -DCMAKE_C_FLAGS="-march=$(if $(filter aarch64,$(ARCH ) ) ,armv8.7a,x86-64) " -DCMAKE_CXX_FLAGS="-march=$(if $(filter aarch64,$(ARCH ) ) ,armv8.7a,x86-64) " -DGGML_OPENMP=OFF -DGGML_LLAMAFILE=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON
88+ LLAMA_OPTIONS += -DBUILD_SHARED_LIBS=OFF - DCMAKE_TOOLCHAIN_FILE=$(ANDROID_NDK ) /build/cmake/android.toolchain.cmake -DANDROID_ABI=$(if $(filter aarch64,$(ARCH ) ) ,arm64-v8a,$(ARCH ) ) -DANDROID_PLATFORM=android-26 -DCMAKE_C_FLAGS="-march=$(if $(filter aarch64,$(ARCH ) ) ,armv8.7a,x86-64) " -DCMAKE_CXX_FLAGS="-march=$(if $(filter aarch64,$(ARCH ) ) ,armv8.7a,x86-64) " -DGGML_OPENMP=OFF -DGGML_LLAMAFILE=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON
89+ WHISPER_OPTIONS += -DBUILD_SHARED_LIBS=OFF - DCMAKE_TOOLCHAIN_FILE=$(ANDROID_NDK ) /build/cmake/android.toolchain.cmake -DANDROID_ABI=$(if $(filter aarch64,$(ARCH ) ) ,arm64-v8a,$(ARCH ) ) -DANDROID_PLATFORM=android-26 -DCMAKE_C_FLAGS="-march=$(if $(filter aarch64,$(ARCH ) ) ,armv8.7a,x86-64) " -DCMAKE_CXX_FLAGS="-march=$(if $(filter aarch64,$(ARCH ) ) ,armv8.7a,x86-64) " -DGGML_OPENMP=OFF -DGGML_LLAMAFILE=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON
9090 STRIP = $(BIN ) /llvm-strip --strip-unneeded $@
9191else ifeq ($(PLATFORM),ios)
9292 TARGET := $(DIST_DIR ) /ai.dylib
9393 SDK := -isysroot $(shell xcrun --sdk iphoneos --show-sdk-path) -miphoneos-version-min=14.0
9494 LLAMA_LIBS += $(BUILD_LLAMA ) /ggml/src/ggml-metal/libggml-metal.a $(BUILD_LLAMA ) /ggml/src/ggml-blas/libggml-blas.a
9595 LDFLAGS += -L./$(BUILD_LLAMA ) /ggml/src/ggml-metal -lggml-metal -L./$(BUILD_LLAMA ) /ggml/src/ggml-blas -lggml-blas -framework Accelerate -framework Metal -framework Foundation -framework CoreML -dynamiclib $(SDK )
9696 CFLAGS += -arch arm64 $(SDK )
97- LLAMA_OPTIONS += -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0
98- WHISPER_OPTIONS += -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0 -DWHISPER_COREML=ON
97+ LLAMA_OPTIONS += -DBUILD_SHARED_LIBS=OFF - DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0
98+ WHISPER_OPTIONS += -DBUILD_SHARED_LIBS=OFF - DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0 -DWHISPER_COREML=ON
9999 STRIP = strip -x -S $@
100100else ifeq ($(PLATFORM),isim)
101101 TARGET := $(DIST_DIR ) /ai.dylib
102102 SDK := -isysroot $(shell xcrun --sdk iphonesimulator --show-sdk-path) -miphonesimulator-version-min=14.0
103103 LLAMA_LIBS += $(BUILD_LLAMA ) /ggml/src/ggml-metal/libggml-metal.a $(BUILD_LLAMA ) /ggml/src/ggml-blas/libggml-blas.a
104104 LDFLAGS += -arch x86_64 -arch arm64 -L./$(BUILD_LLAMA ) /ggml/src/ggml-metal -lggml-metal -L./$(BUILD_LLAMA ) /ggml/src/ggml-blas -lggml-blas -framework Accelerate -framework Metal -framework Foundation -framework CoreML -dynamiclib $(SDK )
105105 CFLAGS += -arch x86_64 -arch arm64 $(SDK )
106- LLAMA_OPTIONS += -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphonesimulator -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0 -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"
107- WHISPER_OPTIONS += -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphonesimulator -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0 -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DWHISPER_COREML=ON
106+ LLAMA_OPTIONS += -DBUILD_SHARED_LIBS=OFF - DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphonesimulator -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0 -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"
107+ WHISPER_OPTIONS += -DBUILD_SHARED_LIBS=OFF - DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphonesimulator -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0 -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DWHISPER_COREML=ON
108108else # linux
109109 TARGET := $(DIST_DIR ) /ai.so
110- LDFLAGS += -shared
111- LLAMA_OPTIONS += -DGGML_OPENMP=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON
112- WHISPER_OPTIONS += -DGGML_OPENMP=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON
110+ LDFLAGS += -shared -L./ $( BUILD_LLAMA ) /bin -Wl,-rpath,./ $( BUILD_LLAMA ) /bin -Wl,-rpath,./ $( BUILD_LLAMA ) /common -Wl,-rpath,./ $( BUILD_LLAMA ) /ggml/src -Wl,-rpath,./ $( BUILD_LLAMA ) /src -Wl,-rpath,./ $( BUILD_WHISPER ) /src
111+ LLAMA_OPTIONS += -DBUILD_SHARED_LIBS=ON - DGGML_OPENMP=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON
112+ WHISPER_OPTIONS += -DBUILD_SHARED_LIBS=ON - DGGML_OPENMP=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON
113113 STRIP = strip --strip-unneeded $@
114114endif
115115
@@ -147,12 +147,12 @@ test: $(TARGET)
147147
148148# Build submodules
149149build/llama.cpp.stamp :
150- cmake -B $(BUILD_LLAMA ) -DBUILD_SHARED_LIBS=OFF $(LLAMA_OPTIONS ) $(LLAMA_DIR )
150+ cmake -B $(BUILD_LLAMA ) $(LLAMA_OPTIONS ) $(LLAMA_DIR )
151151 cmake --build $(BUILD_LLAMA ) --config Release -- -j$(CPUS )
152152 touch $@
153153
154154build/whisper.cpp.stamp :
155- cmake -B $(BUILD_WHISPER ) -DBUILD_SHARED_LIBS=OFF $(WHISPER_OPTIONS ) $(WHISPER_DIR )
155+ cmake -B $(BUILD_WHISPER ) $(WHISPER_OPTIONS ) $(WHISPER_DIR )
156156 cmake --build $(BUILD_WHISPER ) --config Release -- -j$(CPUS )
157157 touch $@
158158
0 commit comments