@@ -54,13 +54,15 @@ ifeq ($(PLATFORM),windows)
5454 LDFLAGS += -shared
5555 # Create .def file for Windows
5656 DEF_FILE := $(BUILD_DIR ) /ai.def
57+ STRIP = strip --strip-unneeded $@
5758else ifeq ($(PLATFORM),macos)
5859 TARGET := $(DIST_DIR ) /ai.dylib
5960 LLAMA_LIBS += $(BUILD_LLAMA ) /ggml/src/ggml-metal/libggml-metal.a $(BUILD_LLAMA ) /ggml/src/ggml-blas/libggml-blas.a
6061 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 Metal -framework Foundation -framework CoreFoundation -framework QuartzCore -framework Accelerate -framework CoreML -dynamiclib -undefined dynamic_lookup
6162 CFLAGS += -arch x86_64 -arch arm64
6263 LLAMA_OPTIONS += -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"
6364 WHISPER_OPTIONS += -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DWHISPER_COREML=ON
65+ STRIP = strip -x -S $@
6466else ifeq ($(PLATFORM),android)
6567 # Set ARCH to find Android NDK's Clang compiler, the user should set the ARCH
6668 ifeq ($(filter %,$(ARCH)),)
@@ -85,6 +87,7 @@ else ifeq ($(PLATFORM),android)
8587 LDFLAGS += -static-libstdc++ -shared
8688 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
8789 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
90+ STRIP = $(BIN ) /llvm-strip --strip-unneeded $@
8891else ifeq ($(PLATFORM),ios)
8992 TARGET := $(DIST_DIR ) /ai.dylib
9093 SDK := -isysroot $(shell xcrun --sdk iphoneos --show-sdk-path) -miphoneos-version-min=14.0
@@ -93,6 +96,7 @@ else ifeq ($(PLATFORM),ios)
9396 CFLAGS += -arch arm64 $(SDK )
9497 LLAMA_OPTIONS += -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0
9598 WHISPER_OPTIONS += -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0 -DWHISPER_COREML=ON
99+ STRIP = strip -x -S $@
96100else ifeq ($(PLATFORM),isim)
97101 TARGET := $(DIST_DIR ) /ai.dylib
98102 SDK := -isysroot $(shell xcrun --sdk iphonesimulator --show-sdk-path) -miphonesimulator-version-min=14.0
@@ -106,6 +110,7 @@ else # linux
106110 LDFLAGS += -shared
107111 LLAMA_OPTIONS += -DGGML_OPENMP=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON
108112 WHISPER_OPTIONS += -DGGML_OPENMP=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON
113+ STRIP = strip --strip-unneeded $@
109114endif
110115
111116# Windows .def file generation
@@ -130,10 +135,8 @@ ifeq ($(PLATFORM),windows)
130135 # Generate import library for Windows
131136 dlltool -D $@ -d $(DEF_FILE) -l $(DIST_DIR)/ai.lib
132137endif
133- ifeq ($(PLATFORM ) ,android)
134- # Android strip debug symbols
135- $(BIN)/llvm-strip --strip-unneeded $@
136- endif
138+ # Strip debug symbols
139+ $(STRIP)
137140
138141# Object files
139142$(BUILD_DIR ) /% .o : % .c
0 commit comments