ggml : revert to -lm linking instead of find_library (#22355)
* ggml : revert to -lm linking instead of find_library `find_library(MATH_LIBRARY m)` was introduced recently, but it breaks CUDA compilation with GGML_STATIC. I could not find any valid use case where we would prefer `find_library` over the standard `-lm` approach. This commit is also meant to start a discussion if there is a valid reason to keep `find_library(MATH_LIBRARY m)`, we should clarify what problem it was solving and find an alternative fix that does not break CUDA with GGML_STATIC. Signed-off-by: Adrien Gallouët <angt@huggingface.co> * ggml : use MATH_LIBRARY only if defined Signed-off-by: Adrien Gallouët <angt@huggingface.co> * ggml : fix initial broken condition Signed-off-by: Adrien Gallouët <angt@huggingface.co> * ggml : always respect MATH_LIBRARY when defined Signed-off-by: Adrien Gallouët <angt@huggingface.co> --------- Signed-off-by: Adrien Gallouët <angt@huggingface.co>
This commit is contained in:
@@ -470,11 +470,10 @@ endforeach()
|
|||||||
|
|
||||||
target_link_libraries(ggml-base PRIVATE Threads::Threads)
|
target_link_libraries(ggml-base PRIVATE Threads::Threads)
|
||||||
|
|
||||||
find_library(MATH_LIBRARY m)
|
if (DEFINED MATH_LIBRARY)
|
||||||
if (MATH_LIBRARY)
|
|
||||||
if (NOT WIN32 OR NOT DEFINED ENV{ONEAPI_ROOT})
|
|
||||||
target_link_libraries(ggml-base PRIVATE ${MATH_LIBRARY})
|
target_link_libraries(ggml-base PRIVATE ${MATH_LIBRARY})
|
||||||
endif()
|
elseif (NOT WIN32 AND NOT DEFINED ENV{ONEAPI_ROOT})
|
||||||
|
target_link_libraries(ggml-base PRIVATE m)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (CMAKE_SYSTEM_NAME MATCHES "Android")
|
if (CMAKE_SYSTEM_NAME MATCHES "Android")
|
||||||
|
|||||||
Reference in New Issue
Block a user