Spaces:
Sleeping
Sleeping
Christian Kastner
commited on
Commit
·
6da01d6
1
Parent(s):
6f03947
cmake : enable building llama.cpp using system libggml (llama/12321)
Browse files* cmake: Factor out compiler flag function from ggml
llama.cpps's build requires it, too, and we may want to make use of it
without add_subdirectory(ggml).
* cmake: Enable building against system ggml
This facilitates package maintenance for Linux distributions, where the
libggml library most likely will be shipped as an individual package
upon which a llama.cpp package depends.
- ggml/src/CMakeLists.txt +1 -27
ggml/src/CMakeLists.txt
CHANGED
|
@@ -1,4 +1,5 @@
|
|
| 1 |
include(CheckCXXCompilerFlag)
|
|
|
|
| 2 |
|
| 3 |
add_compile_definitions(GGML_SCHED_MAX_COPIES=${GGML_SCHED_MAX_COPIES})
|
| 4 |
|
|
@@ -24,33 +25,6 @@ if (NOT MSVC)
|
|
| 24 |
endif()
|
| 25 |
endif()
|
| 26 |
|
| 27 |
-
function(ggml_get_flags CCID CCVER)
|
| 28 |
-
set(C_FLAGS "")
|
| 29 |
-
set(CXX_FLAGS "")
|
| 30 |
-
|
| 31 |
-
if (CCID MATCHES "Clang")
|
| 32 |
-
set(C_FLAGS -Wunreachable-code-break -Wunreachable-code-return)
|
| 33 |
-
set(CXX_FLAGS -Wunreachable-code-break -Wunreachable-code-return -Wmissing-prototypes -Wextra-semi)
|
| 34 |
-
|
| 35 |
-
if (
|
| 36 |
-
(CCID STREQUAL "Clang" AND CCVER VERSION_GREATER_EQUAL 3.8.0) OR
|
| 37 |
-
(CCID STREQUAL "AppleClang" AND CCVER VERSION_GREATER_EQUAL 7.3.0)
|
| 38 |
-
)
|
| 39 |
-
list(APPEND C_FLAGS -Wdouble-promotion)
|
| 40 |
-
endif()
|
| 41 |
-
elseif (CCID STREQUAL "GNU")
|
| 42 |
-
set(C_FLAGS -Wdouble-promotion)
|
| 43 |
-
set(CXX_FLAGS -Wno-array-bounds)
|
| 44 |
-
|
| 45 |
-
if (CCVER VERSION_GREATER_EQUAL 8.1.0)
|
| 46 |
-
list(APPEND CXX_FLAGS -Wextra-semi)
|
| 47 |
-
endif()
|
| 48 |
-
endif()
|
| 49 |
-
|
| 50 |
-
set(GF_C_FLAGS ${C_FLAGS} PARENT_SCOPE)
|
| 51 |
-
set(GF_CXX_FLAGS ${CXX_FLAGS} PARENT_SCOPE)
|
| 52 |
-
endfunction()
|
| 53 |
-
|
| 54 |
if (GGML_FATAL_WARNINGS)
|
| 55 |
if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
| 56 |
list(APPEND C_FLAGS -Werror)
|
|
|
|
| 1 |
include(CheckCXXCompilerFlag)
|
| 2 |
+
include("../cmake/common.cmake")
|
| 3 |
|
| 4 |
add_compile_definitions(GGML_SCHED_MAX_COPIES=${GGML_SCHED_MAX_COPIES})
|
| 5 |
|
|
|
|
| 25 |
endif()
|
| 26 |
endif()
|
| 27 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 28 |
if (GGML_FATAL_WARNINGS)
|
| 29 |
if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
| 30 |
list(APPEND C_FLAGS -Werror)
|