1
1
include (CheckCXXCompilerFlag)
2
2
3
- unset (GGML_CDEF_PRIVATE)
4
3
unset (GGML_CDEF_PUBLIC)
5
4
6
- list ( APPEND GGML_CDEF_PRIVATE GGML_SCHED_MAX_COPIES=${GGML_SCHED_MAX_COPIES} )
5
+ add_compile_definitions ( GGML_SCHED_MAX_COPIES=${GGML_SCHED_MAX_COPIES} )
7
6
8
7
# enable libstdc++ assertions for debug builds
9
8
if (CMAKE_SYSTEM_NAME MATCHES "Linux" )
@@ -32,9 +31,9 @@ if (APPLE AND GGML_ACCELERATE)
32
31
if (ACCELERATE_FRAMEWORK)
33
32
message (STATUS "Accelerate framework found" )
34
33
35
- list ( APPEND GGML_CDEF_PRIVATE GGML_USE_ACCELERATE)
36
- list ( APPEND GGML_CDEF_PRIVATE ACCELERATE_NEW_LAPACK)
37
- list ( APPEND GGML_CDEF_PRIVATE ACCELERATE_LAPACK_ILP64)
34
+ add_compile_definitions ( GGML_USE_ACCELERATE)
35
+ add_compile_definitions ( ACCELERATE_NEW_LAPACK)
36
+ add_compile_definitions ( ACCELERATE_LAPACK_ILP64)
38
37
39
38
set (GGML_EXTRA_LIBS ${GGML_EXTRA_LIBS} ${ACCELERATE_FRAMEWORK} )
40
39
else ()
@@ -48,12 +47,12 @@ if (GGML_METAL)
48
47
find_library (METALKIT_FRAMEWORK MetalKit REQUIRED)
49
48
50
49
message (STATUS "Metal framework found" )
51
- set (GGML_HEADERS_METAL ggml-metal.h)
50
+ set (GGML_HEADERS_METAL ../ include / ggml-metal.h)
52
51
set (GGML_SOURCES_METAL ggml-metal.m)
53
52
54
53
list (APPEND GGML_CDEF_PUBLIC GGML_USE_METAL)
55
54
if (GGML_METAL_NDEBUG)
56
- list ( APPEND GGML_CDEF_PRIVATE GGML_METAL_NDEBUG)
55
+ add_compile_definitions ( GGML_METAL_NDEBUG)
57
56
endif ()
58
57
59
58
# copy ggml-common.h and ggml-metal.metal to bin directory
@@ -63,7 +62,7 @@ if (GGML_METAL)
63
62
if (GGML_METAL_EMBED_LIBRARY)
64
63
enable_language (ASM)
65
64
66
- list ( APPEND GGML_CDEF_PRIVATE GGML_METAL_EMBED_LIBRARY)
65
+ add_compile_definitions ( GGML_METAL_EMBED_LIBRARY)
67
66
68
67
set (METALLIB_COMMON "${CMAKE_CURRENT_SOURCE_DIR} /ggml-common.h" )
69
68
set (METALLIB_SOURCE "${CMAKE_CURRENT_SOURCE_DIR} /ggml-metal.metal" )
@@ -145,7 +144,7 @@ if (GGML_OPENMP)
145
144
if (OpenMP_FOUND)
146
145
message (STATUS "OpenMP found" )
147
146
148
- list ( APPEND GGML_CDEF_PRIVATE GGML_USE_OPENMP)
147
+ add_compile_definitions ( GGML_USE_OPENMP)
149
148
150
149
set (GGML_EXTRA_LIBS ${GGML_EXTRA_LIBS} OpenMP::OpenMP_C OpenMP::OpenMP_CXX)
151
150
else ()
@@ -223,10 +222,10 @@ if (GGML_BLAS)
223
222
list (APPEND GGML_CDEF_PUBLIC GGML_USE_BLAS)
224
223
225
224
if (${BLAS_INCLUDE_DIRS} MATCHES "mkl" AND (${GGML_BLAS_VENDOR} MATCHES "Generic" OR ${GGML_BLAS_VENDOR} MATCHES "Intel" ))
226
- list ( APPEND GGML_CDEF_PRIVATE GGML_BLAS_USE_MKL)
225
+ add_compile_definitions ( GGML_BLAS_USE_MKL)
227
226
endif ()
228
227
229
- set (GGML_HEADERS_BLAS ggml-blas.h)
228
+ set (GGML_HEADERS_BLAS ../ include / ggml-blas.h)
230
229
set (GGML_SOURCES_BLAS ggml-blas.cpp)
231
230
232
231
set (GGML_EXTRA_LIBS ${GGML_EXTRA_LIBS} ${BLAS_LIBRARIES} )
@@ -241,7 +240,7 @@ endif()
241
240
if (GGML_LLAMAFILE)
242
241
message (STATUS "Using ggml SGEMM" )
243
242
244
- list ( APPEND GGML_CDEF_PRIVATE GGML_USE_LLAMAFILE)
243
+ add_compile_definitions ( GGML_USE_LLAMAFILE)
245
244
246
245
set (GGML_HEADERS_LLAMAFILE sgemm.h)
247
246
set (GGML_SOURCES_LLAMAFILE sgemm.cpp)
@@ -272,7 +271,7 @@ if (GGML_CUDA)
272
271
enable_language (CUDA)
273
272
274
273
file (GLOB GGML_HEADERS_CUDA "ggml-cuda/*.cuh" )
275
- list (APPEND GGML_HEADERS_CUDA "ggml-cuda.h" )
274
+ list (APPEND GGML_HEADERS_CUDA "../include/ ggml-cuda.h" )
276
275
277
276
file (GLOB GGML_SOURCES_CUDA "ggml-cuda/*.cu" )
278
277
list (APPEND GGML_SOURCES_CUDA "ggml-cuda.cu" )
@@ -284,7 +283,7 @@ if (GGML_CUDA)
284
283
if (GGML_CUDA_FA_ALL_QUANTS)
285
284
file (GLOB SRCS "ggml-cuda/template-instances/fattn-vec*.cu" )
286
285
list (APPEND GGML_SOURCES_CUDA ${SRCS} )
287
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_FA_ALL_QUANTS)
286
+ add_compile_definitions ( GGML_CUDA_FA_ALL_QUANTS)
288
287
else ()
289
288
file (GLOB SRCS "ggml-cuda/template-instances/fattn-vec*q4_0-q4_0.cu" )
290
289
list (APPEND GGML_SOURCES_CUDA ${SRCS} )
@@ -296,38 +295,38 @@ if (GGML_CUDA)
296
295
297
296
list (APPEND GGML_CDEF_PUBLIC GGML_USE_CUDA)
298
297
299
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_USE_GRAPHS)
300
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_DMMV_X=${GGML_CUDA_DMMV_X} )
301
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_MMV_Y=${GGML_CUDA_MMV_Y} )
302
- list ( APPEND GGML_CDEF_PRIVATE K_QUANTS_PER_ITERATION=${GGML_CUDA_KQUANTS_ITER} )
303
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_PEER_MAX_BATCH_SIZE=${GGML_CUDA_PEER_MAX_BATCH_SIZE} )
298
+ add_compile_definitions ( GGML_CUDA_USE_GRAPHS)
299
+ add_compile_definitions ( GGML_CUDA_DMMV_X=${GGML_CUDA_DMMV_X} )
300
+ add_compile_definitions ( GGML_CUDA_MMV_Y=${GGML_CUDA_MMV_Y} )
301
+ add_compile_definitions ( K_QUANTS_PER_ITERATION=${GGML_CUDA_KQUANTS_ITER} )
302
+ add_compile_definitions ( GGML_CUDA_PEER_MAX_BATCH_SIZE=${GGML_CUDA_PEER_MAX_BATCH_SIZE} )
304
303
305
304
if (GGML_CUDA_FORCE_DMMV)
306
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_FORCE_DMMV)
305
+ add_compile_definitions ( GGML_CUDA_FORCE_DMMV)
307
306
endif ()
308
307
309
308
if (GGML_CUDA_FORCE_MMQ)
310
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_FORCE_MMQ)
309
+ add_compile_definitions ( GGML_CUDA_FORCE_MMQ)
311
310
endif ()
312
311
313
312
if (GGML_CUDA_FORCE_CUBLAS)
314
313
add_compile_definitions (GGML_CUDA_FORCE_CUBLAS)
315
314
endif ()
316
315
317
316
if (GGML_CUDA_NO_VMM)
318
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_NO_VMM)
317
+ add_compile_definitions ( GGML_CUDA_NO_VMM)
319
318
endif ()
320
319
321
320
if (DEFINED GGML_CUDA_DMMV_Y)
322
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_MMV_Y=${GGML_CUDA_DMMV_Y} ) # for backwards compatibility
321
+ add_compile_definitions ( GGML_CUDA_MMV_Y=${GGML_CUDA_DMMV_Y} ) # for backwards compatibility
323
322
endif ()
324
323
325
324
if (GGML_CUDA_F16 OR GGML_CUDA_DMMV_F16)
326
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_F16)
325
+ add_compile_definitions ( GGML_CUDA_F16)
327
326
endif ()
328
327
329
328
if (GGML_CUDA_NO_PEER_COPY)
330
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_NO_PEER_COPY)
329
+ add_compile_definitions ( GGML_CUDA_NO_PEER_COPY)
331
330
endif ()
332
331
333
332
if (GGML_STATIC)
@@ -397,7 +396,7 @@ if (GGML_HIPBLAS)
397
396
message (STATUS "HIP and hipBLAS found" )
398
397
399
398
file (GLOB GGML_HEADERS_ROCM "ggml-cuda/*.cuh" )
400
- list (APPEND GGML_HEADERS_ROCM "ggml-cuda.h" )
399
+ list (APPEND GGML_HEADERS_ROCM "../include/ ggml-cuda.h" )
401
400
402
401
file (GLOB GGML_SOURCES_ROCM "ggml-cuda/*.cu" )
403
402
list (APPEND GGML_SOURCES_ROCM "ggml-cuda.cu" )
@@ -409,7 +408,7 @@ if (GGML_HIPBLAS)
409
408
if (GGML_CUDA_FA_ALL_QUANTS)
410
409
file (GLOB SRCS "ggml-cuda/template-instances/fattn-vec*.cu" )
411
410
list (APPEND GGML_SOURCES_ROCM ${SRCS} )
412
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_FA_ALL_QUANTS)
411
+ add_compile_definitions ( GGML_CUDA_FA_ALL_QUANTS)
413
412
else ()
414
413
file (GLOB SRCS "ggml-cuda/template-instances/fattn-vec*q4_0-q4_0.cu" )
415
414
list (APPEND GGML_SOURCES_ROCM ${SRCS} )
@@ -421,25 +420,25 @@ if (GGML_HIPBLAS)
421
420
422
421
list (APPEND GGML_CDEF_PUBLIC GGML_USE_CUDA)
423
422
424
- list ( APPEND GGML_CDEF_PRIVATE GGML_USE_HIPBLAS)
425
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_DMMV_X=${GGML_CUDA_DMMV_X} )
426
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_MMV_Y=${GGML_CUDA_MMV_Y} )
427
- list ( APPEND GGML_CDEF_PRIVATE K_QUANTS_PER_ITERATION=${GGML_CUDA_KQUANTS_ITER} )
423
+ add_compile_definitions ( GGML_USE_HIPBLAS)
424
+ add_compile_definitions ( GGML_CUDA_DMMV_X=${GGML_CUDA_DMMV_X} )
425
+ add_compile_definitions ( GGML_CUDA_MMV_Y=${GGML_CUDA_MMV_Y} )
426
+ add_compile_definitions ( K_QUANTS_PER_ITERATION=${GGML_CUDA_KQUANTS_ITER} )
428
427
429
428
if (GGML_HIP_UMA)
430
- list ( APPEND GGML_CDEF_PRIVATE GGML_HIP_UMA)
429
+ add_compile_definitions ( GGML_HIP_UMA)
431
430
endif ()
432
431
433
432
if (GGML_CUDA_FORCE_DMMV)
434
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_FORCE_DMMV)
433
+ add_compile_definitions ( GGML_CUDA_FORCE_DMMV)
435
434
endif ()
436
435
437
436
if (GGML_CUDA_FORCE_MMQ)
438
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_FORCE_MMQ)
437
+ add_compile_definitions ( GGML_CUDA_FORCE_MMQ)
439
438
endif ()
440
439
441
440
if (GGML_CUDA_NO_PEER_COPY)
442
- list ( APPEND GGML_CDEF_PRIVATE GGML_CUDA_NO_PEER_COPY)
441
+ add_compile_definitions ( GGML_CUDA_NO_PEER_COPY)
443
442
endif ()
444
443
445
444
if (CXX_IS_HIPCC)
@@ -474,11 +473,11 @@ if (GGML_SYCL)
474
473
list (APPEND GGML_CDEF_PUBLIC GGML_USE_SYCL)
475
474
476
475
if (GGML_SYCL_F16)
477
- list ( APPEND GGML_CDEF_PRIVATE GGML_SYCL_F16)
476
+ add_compile_definitions ( GGML_SYCL_F16)
478
477
endif ()
479
478
480
479
if (GGML_CUDA_FORCE_MMQ)
481
- list ( APPEND GGML_CDEF_PRIVATE GGML_SYCL_FORCE_MMQ)
480
+ add_compile_definitions ( GGML_SYCL_FORCE_MMQ)
482
481
endif ()
483
482
484
483
add_compile_options (-I./) #include DPCT
@@ -490,7 +489,7 @@ if (GGML_SYCL)
490
489
endif ()
491
490
492
491
file (GLOB GGML_HEADERS_SYCL "ggml-sycl/*.hpp" )
493
- list (APPEND GGML_HEADERS_SYCL "ggml-sycl.h" )
492
+ list (APPEND GGML_HEADERS_SYCL "../include/ ggml-sycl.h" )
494
493
495
494
file (GLOB GGML_SOURCES_SYCL "ggml-sycl/*.cpp" )
496
495
list (APPEND GGML_SOURCES_SYCL "ggml-sycl.cpp" )
@@ -518,7 +517,7 @@ if (GGML_RPC)
518
517
set (GGML_EXTRA_LIBS ${GGML_EXTRA_LIBS} ws2_32)
519
518
endif ()
520
519
521
- set (GGML_HEADERS_RPC ggml-rpc.h)
520
+ set (GGML_HEADERS_RPC ../ include / ggml-rpc.h)
522
521
set (GGML_SOURCES_RPC ggml-rpc.cpp)
523
522
endif ()
524
523
@@ -528,7 +527,7 @@ if (GGML_VULKAN)
528
527
if (Vulkan_FOUND)
529
528
message (STATUS "Vulkan found" )
530
529
531
- set (GGML_HEADERS_VULKAN ggml-vulkan.h)
530
+ set (GGML_HEADERS_VULKAN ../ include / ggml-vulkan.h)
532
531
set (GGML_SOURCES_VULKAN ggml-vulkan.cpp)
533
532
534
533
list (APPEND GGML_CDEF_PUBLIC GGML_USE_VULKAN)
@@ -540,23 +539,23 @@ if (GGML_VULKAN)
540
539
endif ()
541
540
542
541
if (GGML_VULKAN_CHECK_RESULTS)
543
- list ( APPEND GGML_CDEF_PRIVATE GGML_VULKAN_CHECK_RESULTS)
542
+ add_compile_definitions ( GGML_VULKAN_CHECK_RESULTS)
544
543
endif ()
545
544
546
545
if (GGML_VULKAN_DEBUG)
547
- list ( APPEND GGML_CDEF_PRIVATE GGML_VULKAN_DEBUG)
546
+ add_compile_definitions ( GGML_VULKAN_DEBUG)
548
547
endif ()
549
548
550
549
if (GGML_VULKAN_MEMORY_DEBUG)
551
- list ( APPEND GGML_CDEF_PRIVATE GGML_VULKAN_MEMORY_DEBUG)
550
+ add_compile_definitions ( GGML_VULKAN_MEMORY_DEBUG)
552
551
endif ()
553
552
554
553
if (GGML_VULKAN_VALIDATE)
555
- list ( APPEND GGML_CDEF_PRIVATE GGML_VULKAN_VALIDATE)
554
+ add_compile_definitions ( GGML_VULKAN_VALIDATE)
556
555
endif ()
557
556
558
557
if (GGML_VULKAN_RUN_TESTS)
559
- list ( APPEND GGML_CDEF_PRIVATE GGML_VULKAN_RUN_TESTS)
558
+ add_compile_definitions ( GGML_VULKAN_RUN_TESTS)
560
559
endif ()
561
560
562
561
set (GGML_EXTRA_LIBS ${GGML_EXTRA_LIBS} Vulkan::Vulkan)
@@ -713,8 +712,8 @@ if (GGML_KOMPUTE)
713
712
)
714
713
715
714
# Add the stamp to the main sources to ensure dependency tracking
716
- set (GGML_SOURCES_KOMPUTE ggml-kompute.cpp ${CMAKE_CURRENT_BINARY_DIR} /ggml-kompute.stamp)
717
- set (GGML_HEADERS_KOMPUTE ggml-kompute.h ${CMAKE_CURRENT_BINARY_DIR} /ggml-kompute.stamp)
715
+ set (GGML_SOURCES_KOMPUTE ggml-kompute.cpp ${CMAKE_CURRENT_BINARY_DIR} /ggml-kompute.stamp)
716
+ set (GGML_HEADERS_KOMPUTE ../ include / ggml-kompute.h ${CMAKE_CURRENT_BINARY_DIR} /ggml-kompute.stamp)
718
717
719
718
list (APPEND GGML_CDEF_PUBLIC GGML_USE_KOMPUTE)
720
719
@@ -730,7 +729,7 @@ if (GGML_CPU_HBM)
730
729
731
730
message (STATUS "Using memkind for CPU HBM" )
732
731
733
- list ( APPEND GGML_CDEF_PRIVATE GGML_USE_CPU_HBM)
732
+ add_compile_definitions ( GGML_USE_CPU_HBM)
734
733
735
734
target_link_libraries (ggml PUBLIC memkind)
736
735
endif ()
@@ -874,7 +873,7 @@ execute_process(
874
873
)
875
874
876
875
if (output MATCHES "dyld-1015\. 7" )
877
- list ( APPEND GGML_CDEF_PRIVATE HAVE_BUGGY_APPLE_LINKER)
876
+ add_compile_definitions ( HAVE_BUGGY_APPLE_LINKER)
878
877
endif ()
879
878
880
879
# architecture specific
@@ -1156,10 +1155,9 @@ if (EMSCRIPTEN)
1156
1155
endif ()
1157
1156
1158
1157
target_compile_definitions (ggml PUBLIC ${GGML_CDEF_PUBLIC} )
1159
- target_compile_definitions (ggml PRIVATE ${GGML_CDEF_PRIVATE} )
1160
-
1161
- target_include_directories (ggml PUBLIC . ../include ${GGML_EXTRA_INCLUDES} )
1162
- target_compile_features (ggml PUBLIC c_std_11) # don't bump
1158
+ target_include_directories (ggml PUBLIC ../include )
1159
+ target_include_directories (ggml PRIVATE . ${GGML_EXTRA_INCLUDES} )
1160
+ target_compile_features (ggml PRIVATE c_std_11) # don't bump
1163
1161
1164
1162
target_link_libraries (ggml PRIVATE Threads::Threads ${GGML_EXTRA_LIBS} )
1165
1163
0 commit comments