mirror of
https://github.com/ml-explore/mlx.git
synced 2025-12-16 01:49:05 +08:00
Some checks failed
Build and Test / check_lint (push) Has been cancelled
Build and Test / linux_build_and_test (ubuntu-22.04) (push) Has been cancelled
Build and Test / linux_build_and_test (ubuntu-22.04-arm) (push) Has been cancelled
Build and Test / mac_build_and_test (14.0) (push) Has been cancelled
Build and Test / mac_build_and_test (15.0) (push) Has been cancelled
Build and Test / cuda_build_and_test (cuda-12.6) (push) Has been cancelled
Build and Test / cuda_build_and_test (cuda-12.9) (push) Has been cancelled
Build and Test / build_documentation (push) Has been cancelled
Build and Test / Linux Fedora CPP Build (aarch64) (push) Has been cancelled
Build and Test / Linux Fedora CPP Build (x86_64) (push) Has been cancelled
Nightly Build / build_linux_release (3.10) (push) Has been cancelled
Nightly Build / build_linux_release (3.14) (push) Has been cancelled
Nightly Build / build_linux_with_tests (3.11, ubuntu-22.04) (push) Has been cancelled
Nightly Build / build_linux_with_tests (3.11, ubuntu-22.04-arm) (push) Has been cancelled
Nightly Build / build_linux_with_tests (3.12, ubuntu-22.04) (push) Has been cancelled
Nightly Build / build_linux_with_tests (3.12, ubuntu-22.04-arm) (push) Has been cancelled
Nightly Build / build_linux_with_tests (3.13, ubuntu-22.04) (push) Has been cancelled
Nightly Build / build_linux_with_tests (3.13, ubuntu-22.04-arm) (push) Has been cancelled
Nightly Build / build_linux_with_tests (3.14, ubuntu-22.04) (push) Has been cancelled
Nightly Build / build_linux_with_tests (3.14, ubuntu-22.04-arm) (push) Has been cancelled
Nightly Build / build_mac_release (3.10) (push) Has been cancelled
Nightly Build / build_mac_release (3.13) (push) Has been cancelled
Nightly Build / build_cuda_release (push) Has been cancelled
50 lines
1.4 KiB
CMake
50 lines
1.4 KiB
CMake
FetchContent_Declare(
|
|
doctest
|
|
GIT_REPOSITORY https://github.com/onqtam/doctest.git
|
|
GIT_TAG v2.4.12)
|
|
FetchContent_MakeAvailable(doctest)
|
|
|
|
add_executable(tests ${PROJECT_SOURCE_DIR}/tests/tests.cpp)
|
|
|
|
if(MLX_BUILD_METAL OR MLX_BUILD_CUDA)
|
|
set(METAL_TEST_SOURCES gpu_tests.cpp)
|
|
endif()
|
|
|
|
include(${doctest_SOURCE_DIR}/scripts/cmake/doctest.cmake)
|
|
|
|
target_sources(
|
|
tests
|
|
PRIVATE allocator_tests.cpp
|
|
array_tests.cpp
|
|
arg_reduce_tests.cpp
|
|
autograd_tests.cpp
|
|
blas_tests.cpp
|
|
compile_tests.cpp
|
|
custom_vjp_tests.cpp
|
|
creations_tests.cpp
|
|
device_tests.cpp
|
|
einsum_tests.cpp
|
|
export_import_tests.cpp
|
|
eval_tests.cpp
|
|
fft_tests.cpp
|
|
load_tests.cpp
|
|
ops_tests.cpp
|
|
random_tests.cpp
|
|
scheduler_tests.cpp
|
|
utils_tests.cpp
|
|
vmap_tests.cpp
|
|
linalg_tests.cpp
|
|
${METAL_TEST_SOURCES})
|
|
|
|
if(MLX_BUILD_CUDA)
|
|
# C++ tests are always built from source, so we have to specify where to find
|
|
# CCCL headers for JIT as they are not installed in system.
|
|
get_target_property(MLX_CCCL_DIR mlx CCCL_DIR)
|
|
target_compile_definitions(mlx PRIVATE MLX_CCCL_DIR="${MLX_CCCL_DIR}")
|
|
message(STATUS MLX_CCCL_DIR="${MLX_CCCL_DIR}")
|
|
endif()
|
|
|
|
target_link_libraries(tests PRIVATE mlx doctest)
|
|
doctest_discover_tests(tests)
|
|
add_test(NAME tests COMMAND tests)
|