Skip to content

Commit b1f4290

Browse files
authoredJul 19, 2023
cmake : install targets (ggml-org#2256)
fix ggml-org#2252
1 parent d01bccd commit b1f4290

File tree

17 files changed

+42
-0
lines changed

17 files changed

+42
-0
lines changed
 

‎CMakeLists.txt

+25
Original file line numberDiff line numberDiff line change
@@ -512,6 +512,7 @@ if (BUILD_SHARED_LIBS)
512512
set_target_properties(ggml PROPERTIES POSITION_INDEPENDENT_CODE ON)
513513
add_library(ggml_shared SHARED $<TARGET_OBJECTS:ggml>)
514514
target_link_libraries(ggml_shared PUBLIC Threads::Threads ${LLAMA_EXTRA_LIBS})
515+
install(TARGETS ggml_shared LIBRARY)
515516
endif()
516517

517518
add_library(llama
@@ -533,8 +534,32 @@ if (BUILD_SHARED_LIBS)
533534
if (LLAMA_METAL)
534535
set_target_properties(llama PROPERTIES RESOURCE "${CMAKE_CURRENT_SOURCE_DIR}/ggml-metal.metal")
535536
endif()
537+
install(TARGETS llama LIBRARY)
536538
endif()
537539

540+
include(GNUInstallDirs)
541+
install(
542+
FILES convert.py
543+
PERMISSIONS
544+
OWNER_READ
545+
OWNER_WRITE
546+
OWNER_EXECUTE
547+
GROUP_READ
548+
GROUP_EXECUTE
549+
WORLD_READ
550+
WORLD_EXECUTE
551+
DESTINATION ${CMAKE_INSTALL_BINDIR})
552+
install(
553+
FILES convert-lora-to-ggml.py
554+
PERMISSIONS
555+
OWNER_READ
556+
OWNER_WRITE
557+
OWNER_EXECUTE
558+
GROUP_READ
559+
GROUP_EXECUTE
560+
WORLD_READ
561+
WORLD_EXECUTE
562+
DESTINATION ${CMAKE_INSTALL_BINDIR})
538563

539564
#
540565
# programs, examples and tests

‎convert-lora-to-ggml.py

100644100755
+1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
#!/usr/bin/env python
12
import json
23
import os
34
import re

‎convert.py

100644100755
+1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
#!/usr/bin/env python
12
import argparse
23
import concurrent.futures
34
import copy

‎examples/baby-llama/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
set(TARGET baby-llama)
22
add_executable(${TARGET} baby-llama.cpp)
3+
install(TARGETS ${TARGET} RUNTIME)
34
target_link_libraries(${TARGET} PRIVATE common llama ${CMAKE_THREAD_LIBS_INIT})
45
target_compile_features(${TARGET} PRIVATE cxx_std_11)

‎examples/benchmark/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
set(TARGET benchmark)
22
add_executable(${TARGET} benchmark-matmult.cpp)
3+
install(TARGETS ${TARGET} RUNTIME)
34
target_link_libraries(${TARGET} PRIVATE common llama ${CMAKE_THREAD_LIBS_INIT})
45
target_compile_features(${TARGET} PRIVATE cxx_std_11)
56
if(TARGET BUILD_INFO)

‎examples/embd-input/CMakeLists.txt

+2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
set(TARGET embdinput)
22
add_library(${TARGET} embd-input-lib.cpp embd-input.h)
3+
install(TARGETS ${TARGET} LIBRARY)
34
target_link_libraries(${TARGET} PRIVATE common llama ${CMAKE_THREAD_LIBS_INIT})
45
target_compile_features(${TARGET} PRIVATE cxx_std_11)
56
if(TARGET BUILD_INFO)
@@ -8,6 +9,7 @@ endif()
89

910
set(TARGET embd-input-test)
1011
add_executable(${TARGET} embd-input-test.cpp)
12+
install(TARGETS ${TARGET} RUNTIME)
1113
target_link_libraries(${TARGET} PRIVATE common llama embdinput ${CMAKE_THREAD_LIBS_INIT})
1214
target_compile_features(${TARGET} PRIVATE cxx_std_11)
1315
if(TARGET BUILD_INFO)

‎examples/embedding/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
set(TARGET embedding)
22
add_executable(${TARGET} embedding.cpp)
3+
install(TARGETS ${TARGET} RUNTIME)
34
target_link_libraries(${TARGET} PRIVATE common llama ${CMAKE_THREAD_LIBS_INIT})
45
target_compile_features(${TARGET} PRIVATE cxx_std_11)
56
if(TARGET BUILD_INFO)

‎examples/main/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
set(TARGET main)
22
add_executable(${TARGET} main.cpp)
3+
install(TARGETS ${TARGET} RUNTIME)
34
target_link_libraries(${TARGET} PRIVATE common llama ${CMAKE_THREAD_LIBS_INIT})
45
target_compile_features(${TARGET} PRIVATE cxx_std_11)
56
if(TARGET BUILD_INFO)

‎examples/metal/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
set(TEST_TARGET metal)
22
add_executable(${TEST_TARGET} metal.cpp)
3+
install(TARGETS ${TARGET} RUNTIME)
34
target_link_libraries(${TEST_TARGET} PRIVATE ggml)

‎examples/perplexity/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
set(TARGET perplexity)
22
add_executable(${TARGET} perplexity.cpp)
3+
install(TARGETS ${TARGET} RUNTIME)
34
target_link_libraries(${TARGET} PRIVATE common llama ${CMAKE_THREAD_LIBS_INIT})
45
target_compile_features(${TARGET} PRIVATE cxx_std_11)
56
if(TARGET BUILD_INFO)
+1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
set(TARGET quantize-stats)
22
add_executable(${TARGET} quantize-stats.cpp)
3+
install(TARGETS ${TARGET} RUNTIME)
34
target_link_libraries(${TARGET} PRIVATE llama ${CMAKE_THREAD_LIBS_INIT})
45
target_compile_features(${TARGET} PRIVATE cxx_std_11)

‎examples/quantize/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
set(TARGET quantize)
22
add_executable(${TARGET} quantize.cpp)
3+
install(TARGETS ${TARGET} RUNTIME)
34
target_link_libraries(${TARGET} PRIVATE llama ${CMAKE_THREAD_LIBS_INIT})
45
target_compile_features(${TARGET} PRIVATE cxx_std_11)
56
if(TARGET BUILD_INFO)

‎examples/save-load-state/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
set(TARGET save-load-state)
22
add_executable(${TARGET} save-load-state.cpp)
3+
install(TARGETS ${TARGET} RUNTIME)
34
target_link_libraries(${TARGET} PRIVATE common llama ${CMAKE_THREAD_LIBS_INIT})
45
target_compile_features(${TARGET} PRIVATE cxx_std_11)
56
if(TARGET BUILD_INFO)

‎examples/server/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ set(TARGET server)
22
option(LLAMA_SERVER_VERBOSE "Build verbose logging option for Server" ON)
33
include_directories(${CMAKE_CURRENT_SOURCE_DIR})
44
add_executable(${TARGET} server.cpp json.hpp httplib.h)
5+
install(TARGETS ${TARGET} RUNTIME)
56
target_compile_definitions(${TARGET} PRIVATE
67
SERVER_VERBOSE=$<BOOL:${LLAMA_SERVER_VERBOSE}>
78
)

‎examples/simple/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
set(TARGET simple)
22
add_executable(${TARGET} simple.cpp)
3+
install(TARGETS ${TARGET} RUNTIME)
34
target_link_libraries(${TARGET} PRIVATE common llama ${CMAKE_THREAD_LIBS_INIT})
45
target_compile_features(${TARGET} PRIVATE cxx_std_11)
56
if(TARGET BUILD_INFO)
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
set(TARGET train-text-from-scratch)
22
add_executable(${TARGET} train-text-from-scratch.cpp)
3+
install(TARGETS ${TARGET} RUNTIME)
34
target_link_libraries(${TARGET} PRIVATE common llama ${CMAKE_THREAD_LIBS_INIT})
45
target_compile_features(${TARGET} PRIVATE cxx_std_11)

‎tests/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
function(llama_add_test source)
22
get_filename_component(TEST_TARGET ${source} NAME_WE)
33
add_executable(${TEST_TARGET} ${source})
4+
install(TARGETS ${TEST_TARGET} RUNTIME)
45
target_link_libraries(${TEST_TARGET} PRIVATE llama)
56
add_test(NAME ${TEST_TARGET} COMMAND $<TARGET_FILE:${TEST_TARGET}> ${ARGN})
67
endfunction()

0 commit comments

Comments
 (0)