Browse Source

cmake: fix Mach-O current version number (#17877)

PR #17091 set the VERSION of various libraries to 0.0.abcd, where abcd
is the LLAMA_BUILD_NUMBER. That build number is too large to fit in the
Mach-O 'current version' field's 'micro' part, which only goes up to
255. This just sets the Mach-O current version to 0 to get it building
properly again.

Fixes #17258.
Rhys-T 1 month ago
parent
commit
63908b631a
2 changed files with 2 additions and 0 deletions
  1. 1 0
      src/CMakeLists.txt
  2. 1 0
      tools/mtmd/CMakeLists.txt

+ 1 - 0
src/CMakeLists.txt

@@ -139,6 +139,7 @@ add_library(llama
 set_target_properties(llama PROPERTIES
 set_target_properties(llama PROPERTIES
     VERSION ${LLAMA_INSTALL_VERSION}
     VERSION ${LLAMA_INSTALL_VERSION}
     SOVERSION 0
     SOVERSION 0
+    MACHO_CURRENT_VERSION 0 # keep macOS linker from seeing oversized version number
 )
 )
 
 
 target_include_directories(llama PRIVATE .)
 target_include_directories(llama PRIVATE .)

+ 1 - 0
tools/mtmd/CMakeLists.txt

@@ -16,6 +16,7 @@ add_library(mtmd
 set_target_properties(mtmd PROPERTIES
 set_target_properties(mtmd PROPERTIES
     VERSION ${LLAMA_INSTALL_VERSION}
     VERSION ${LLAMA_INSTALL_VERSION}
     SOVERSION 0
     SOVERSION 0
+    MACHO_CURRENT_VERSION 0 # keep macOS linker from seeing oversized version number
 )
 )
 
 
 target_link_libraries     (mtmd PUBLIC ggml llama)
 target_link_libraries     (mtmd PUBLIC ggml llama)