# Copyright Advanced Micro Devices, Inc. # SPDX-License-Identifier: MIT therock_subproject_fetch(therock-SuiteSparse-sources CMAKE_PROJECT # Originally mirrored from: https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/refs/tags/v7.8.3.tar.gz URL https://rocm-third-party-deps.s3.us-east-2.amazonaws.com/SuiteSparse-7.8.3.tar.gz URL_HASH SHA256=ce39b28d4038a09c14f21e02c664401be73c0cb96a9198418d6a98a7db73a259 ) therock_cmake_subproject_declare(therock-SuiteSparse USE_DIST_AMDGPU_TARGETS BACKGROUND_BUILD EXCLUDE_FROM_ALL NO_MERGE_COMPILE_COMMANDS OUTPUT_ON_FAILURE EXTERNAL_SOURCE_DIR "${CMAKE_CURRENT_BINARY_DIR}/source" INSTALL_DESTINATION "lib/host-math" # RPATH logic needs to know that executables/libs for this project are in # a non-default location. INSTALL_RPATH_EXECUTABLE_DIR "lib/host-math/bin" INSTALL_RPATH_LIBRARY_DIR "lib/host-math/lib" # We both have inter-library deps and need to advertise that consumers need # their RPATH to include our locations. INSTALL_RPATH_DIRS "lib/host-math/lib" INTERFACE_INSTALL_RPATH_DIRS "lib/host-math/lib" CMAKE_ARGS "-DSUITESPARSE_ENABLE_PROJECTS=\"suitesparse_config;cholmod\"" -DBLA_VENDOR=OpenBLAS -DBUILD_STATIC_LIBS=OFF -DSUITESPARSE_USE_CUDA=OFF -DSUITESPARSE_USE_OPENMP=OFF -DSUITESPARSE_USE_FORTRAN=OFF RUNTIME_DEPS therock-host-blas ) therock_cmake_subproject_provide_package( therock-SuiteSparse AMD lib/host-math/lib/cmake/AMD) therock_cmake_subproject_provide_package( therock-SuiteSparse CAMD lib/host-math/lib/cmake/CAMD) therock_cmake_subproject_provide_package( therock-SuiteSparse CCOLAMD lib/host-math/lib/cmake/CCOLAMD) therock_cmake_subproject_provide_package( therock-SuiteSparse CHOLMOD lib/host-math/lib/cmake/CHOLMOD) therock_cmake_subproject_provide_package( therock-SuiteSparse COLAMD lib/host-math/lib/cmake/COLAMD) therock_cmake_subproject_provide_package( therock-SuiteSparse SuiteSparse_config lib/host-math/lib/cmake/SuiteSparse_config) therock_cmake_subproject_activate(therock-SuiteSparse) therock_test_validate_shared_lib( PATH dist/lib/host-math/lib LIB_NAMES libamd.so libcamd.so libccolamd.so libcholmod.so libcolamd.so libsuitesparseconfig.so ) therock_provide_artifact(host-suite-sparse DESCRIPTOR artifact-host-suite-sparse.toml TARGET_NEUTRAL COMPONENTS dbg dev doc lib run SUBPROJECT_DEPS therock-SuiteSparse )