This commit is contained in:
Antoine Viallon 2026-02-01 12:33:06 +02:00 committed by GitHub
commit 9205ca7f5c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 22 additions and 8 deletions

View File

@ -50,6 +50,8 @@ if (EMSCRIPTEN)
option(LLAMA_BUILD_HTML "llama: build HTML file" ON)
if (LLAMA_BUILD_HTML)
set(CMAKE_EXECUTABLE_SUFFIX ".html")
else()
set(CMAKE_EXECUTABLE_SUFFIX ".cjs")
endif()
else()
if (MINGW)

View File

@ -15,7 +15,6 @@
#include <cstdlib> // for qsort
#include <cstdio> // for GGML_ASSERT
#define GGML_CPU_CLANG_WORKAROUND
#include "../../repack.h"
#if defined(__GNUC__)

View File

@ -15,7 +15,6 @@
#include <cstdlib> // for qsort
#include <cstdio> // for GGML_ASSERT
#define GGML_CPU_CLANG_WORKAROUND
#include "../../repack.h"
#if defined(__GNUC__)

View File

@ -14,6 +14,12 @@ function(llama_build source)
install(TARGETS ${TEST_TARGET} RUNTIME)
endfunction()
if (EMSCRIPTEN)
set(LLAMA_TEST_LAUNCHER ${CMAKE_CROSSCOMPILING_EMULATOR})
else()
set(LLAMA_TEST_LAUNCHER)
endif()
function(llama_test target)
include(CMakeParseArguments)
set(options)
@ -38,7 +44,7 @@ function(llama_test target)
add_test(
NAME ${TEST_NAME}
WORKING_DIRECTORY ${LLAMA_TEST_WORKING_DIRECTORY}
COMMAND $<TARGET_FILE:${TEST_TARGET}>
COMMAND ${LLAMA_TEST_LAUNCHER} $<TARGET_FILE:${TEST_TARGET}>
${LLAMA_TEST_ARGS})
set_property(TEST ${TEST_NAME} PROPERTY LABELS ${LLAMA_TEST_LABEL})
@ -63,10 +69,16 @@ function(llama_test_cmd target)
set(TEST_NAME ${target})
endif()
if (TARGET ${target})
set(cmd $<TARGET_FILE:${target}>)
else()
set(cmd ${target})
endif()
add_test(
NAME ${TEST_NAME}
WORKING_DIRECTORY ${LLAMA_TEST_WORKING_DIRECTORY}
COMMAND ${target}
COMMAND ${LLAMA_TEST_LAUNCHER} ${cmd}
${LLAMA_TEST_ARGS})
set_property(TEST ${TEST_NAME} PROPERTY LABELS ${LLAMA_TEST_LABEL})
@ -106,7 +118,7 @@ function(llama_build_and_test source)
add_test(
NAME ${TEST_TARGET}
WORKING_DIRECTORY ${LLAMA_TEST_WORKING_DIRECTORY}
COMMAND $<TARGET_FILE:${TEST_TARGET}>
COMMAND ${LLAMA_TEST_LAUNCHER} $<TARGET_FILE:${TEST_TARGET}>
${LLAMA_TEST_ARGS})
set_property(TEST ${TEST_TARGET} PROPERTY LABELS ${LLAMA_TEST_LABEL})
@ -249,9 +261,11 @@ if (NOT GGML_BACKEND_DL)
endif()
# libmtmd
set(LLAMA_TEST_NAME test-mtmd-c-api)
llama_build_and_test(test-mtmd-c-api.c)
target_link_libraries(${LLAMA_TEST_NAME} PRIVATE mtmd)
if (NOT EMSCRIPTEN) # fails to build under emscripten because mtmd.h is not found
set(LLAMA_TEST_NAME test-mtmd-c-api)
llama_build_and_test(test-mtmd-c-api.c)
target_link_libraries(${LLAMA_TEST_NAME} PRIVATE mtmd)
endif()
# dummy executable - not installed
get_filename_component(TEST_TARGET test-c.c NAME_WE)