* 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 <redacted>
* ggml : use MATH_LIBRARY only if defined
Signed-off-by: Adrien Gallouët <redacted>
* ggml : fix initial broken condition
Signed-off-by: Adrien Gallouët <redacted>
* ggml : always respect MATH_LIBRARY when defined
Signed-off-by: Adrien Gallouët <redacted>
---------
Signed-off-by: Adrien Gallouët <redacted>
target_link_libraries(ggml-base PRIVATE Threads::Threads)
-find_library(MATH_LIBRARY m)
-if (MATH_LIBRARY)
- if (NOT WIN32 OR NOT DEFINED ENV{ONEAPI_ROOT})
- target_link_libraries(ggml-base PRIVATE ${MATH_LIBRARY})
- endif()
+if (DEFINED MATH_LIBRARY)
+ target_link_libraries(ggml-base PRIVATE ${MATH_LIBRARY})
+elseif (NOT WIN32 AND NOT DEFINED ENV{ONEAPI_ROOT})
+ target_link_libraries(ggml-base PRIVATE m)
endif()
if (CMAKE_SYSTEM_NAME MATCHES "Android")