From 98e480a32ec77bc494df887da3f69e53373122a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrien=20Gallou=C3=ABt?= Date: Fri, 29 May 2026 07:46:11 +0200 Subject: [PATCH] app : move licences to llama-app (#23824) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Adrien Gallouët --- CMakeLists.txt | 13 ------------- app/CMakeLists.txt | 11 +++++++++++ app/llama.cpp | 12 ++++++++++++ common/arg.cpp | 12 ------------ tools/cli/README.md | 1 - tools/completion/README.md | 1 - tools/server/README.md | 1 - 7 files changed, 23 insertions(+), 28 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index edd0ea1de..9e7b1253c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -222,19 +222,6 @@ if (LLAMA_BUILD_APP) add_subdirectory(app) endif() -# Automatically add all files from the 'licenses' directory -file(GLOB EXTRA_LICENSES "${CMAKE_SOURCE_DIR}/licenses/LICENSE-*") - -foreach(FILE_PATH ${EXTRA_LICENSES}) - get_filename_component(FILE_NAME "${FILE_PATH}" NAME) - string(REGEX REPLACE "^LICENSE-" "" NAME "${FILE_NAME}") - license_add_file("${NAME}" "${FILE_PATH}") -endforeach() - -if (LLAMA_BUILD_COMMON) - license_generate(llama-common) -endif() - # # install # diff --git a/app/CMakeLists.txt b/app/CMakeLists.txt index 6c53ce0e4..3ce503955 100644 --- a/app/CMakeLists.txt +++ b/app/CMakeLists.txt @@ -15,6 +15,17 @@ target_link_libraries(${TARGET} PRIVATE ) target_compile_features(${TARGET} PRIVATE cxx_std_17) +# Automatically add all files from the 'licenses' directory +file(GLOB EXTRA_LICENSES "${CMAKE_SOURCE_DIR}/licenses/LICENSE-*") + +foreach(FILE_PATH ${EXTRA_LICENSES}) + get_filename_component(FILE_NAME "${FILE_PATH}" NAME) + string(REGEX REPLACE "^LICENSE-" "" NAME "${FILE_NAME}") + license_add_file("${NAME}" "${FILE_PATH}") +endforeach() + +license_generate(${TARGET}) + if(LLAMA_TOOLS_INSTALL) install(TARGETS ${TARGET} RUNTIME) endif() diff --git a/app/llama.cpp b/app/llama.cpp index 0e932c355..d898bfdfb 100644 --- a/app/llama.cpp +++ b/app/llama.cpp @@ -5,6 +5,9 @@ #include #include +// embedded data generated by cmake +extern const char * LICENSES[]; + // visible int llama_server(int argc, char ** argv); int llama_cli(int argc, char ** argv); @@ -21,6 +24,7 @@ static const char * progname; static int help(int argc, char ** argv); static int version(int argc, char ** argv); +static int licenses(int argc, char ** argv); struct command { const char * name; @@ -40,6 +44,7 @@ static const command cmds[] = { {"quantize", "Quantize a model", {}, true, llama_quantize }, {"perplexity", "Compute model perplexity and KL divergence", {}, true, llama_perplexity }, {"version", "Show version", {}, false, version }, + {"licenses", "Show third-party licenses", {"credits"}, false, licenses }, {"help", "Show available commands", {}, false, help }, }; @@ -48,6 +53,13 @@ static int version(int argc, char ** argv) { return 0; } +static int licenses(int argc, char ** argv) { + for (int i = 0; LICENSES[i]; ++i) { + printf("%s\n", LICENSES[i]); + } + return 0; +} + static int help(int argc, char ** argv) { const bool show_all = argc >= 2 && std::string(argv[1]) == "all"; diff --git a/common/arg.cpp b/common/arg.cpp index f6fdd4fa6..51631765f 100644 --- a/common/arg.cpp +++ b/common/arg.cpp @@ -50,8 +50,6 @@ #define LLAMA_MAX_URL_LENGTH 2084 // Maximum URL Length in Chrome: 2083 -extern const char * LICENSES[]; - using json = nlohmann::ordered_json; using namespace common_arg_utils; @@ -1091,16 +1089,6 @@ common_params_context common_params_parser_init(common_params & params, llama_ex exit(0); } )); - add_opt(common_arg( - {"--license"}, - "show source code license and dependencies", - [](common_params &) { - for (int i = 0; LICENSES[i]; ++i) { - printf("%s\n", LICENSES[i]); - } - exit(0); - } - )); add_opt(common_arg( {"-cl", "--cache-list"}, "show list of models in cache", diff --git a/tools/cli/README.md b/tools/cli/README.md index 04aef0188..f34417a83 100644 --- a/tools/cli/README.md +++ b/tools/cli/README.md @@ -12,7 +12,6 @@ | -------- | ----------- | | `-h, --help, --usage` | print usage and exit | | `--version` | show version and build info | -| `--license` | show source code license and dependencies | | `-cl, --cache-list` | show list of models in cache | | `--completion-bash` | print source-able bash completion script for llama.cpp | | `-t, --threads N` | number of CPU threads to use during generation (default: -1)
(env: LLAMA_ARG_THREADS) | diff --git a/tools/completion/README.md b/tools/completion/README.md index e8a1287f3..bcaae18f3 100644 --- a/tools/completion/README.md +++ b/tools/completion/README.md @@ -95,7 +95,6 @@ llama-completion.exe -m models\gemma-1.1-7b-it.Q4_K_M.gguf --ignore-eos -n -1 | -------- | ----------- | | `-h, --help, --usage` | print usage and exit | | `--version` | show version and build info | -| `--license` | show source code license and dependencies | | `-cl, --cache-list` | show list of models in cache | | `--completion-bash` | print source-able bash completion script for llama.cpp | | `-t, --threads N` | number of CPU threads to use during generation (default: -1)
(env: LLAMA_ARG_THREADS) | diff --git a/tools/server/README.md b/tools/server/README.md index b975088e4..7870e3091 100644 --- a/tools/server/README.md +++ b/tools/server/README.md @@ -33,7 +33,6 @@ For the full list of features, please refer to [server's changelog](https://gith | -------- | ----------- | | `-h, --help, --usage` | print usage and exit | | `--version` | show version and build info | -| `--license` | show source code license and dependencies | | `-cl, --cache-list` | show list of models in cache | | `--completion-bash` | print source-able bash completion script for llama.cpp | | `-t, --threads N` | number of CPU threads to use during generation (default: -1)
(env: LLAMA_ARG_THREADS) |