Files
TheRock/rocm-systems/projects/hip-tests/catch/unit/oob/CMakeLists.txt
T
derek.holloway 7502bf64a4
CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
Flatten subprojects into a single base monorepo
2026-09-02 16:34:47 -07:00

42 lines
2.3 KiB
CMake

set(TEST_SRC
oob_module.cc)
# Only the valid code object is compiled and installed. The malformed variants
# that exercise getElfSize's rejection paths are synthesized in-process by the
# test (see oob_module.cc); they are deliberately NOT generated or installed as
# fixtures, because installing corrupt ELFs breaks DEB packaging (dh_makeshlibs
# runs `objdump -p` on every installed ELF and aborts on a bad header).
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/oob_kernel.code
COMMAND ${CMAKE_HIP_COMPILER} ${HIP_DEVICE_BUILD_FLAGS_NO_ARCH} ${OFFLOAD_ARCH_LIST} --cuda-device-only
-x hip ${CMAKE_CURRENT_SOURCE_DIR}/kernel.cc
-I${HIP_INCLUDE_DIR} ${HIP_PATH_OPT}
-o ${CMAKE_CURRENT_BINARY_DIR}/oob_kernel.code
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/kernel.cc)
set_property(GLOBAL APPEND PROPERTY G_INSTALL_CUSTOM_TARGETS
${CMAKE_CURRENT_BINARY_DIR}/oob_kernel.code)
add_custom_target(gen_oob_kernel DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/oob_kernel.code)
# Valid compressed bundle used by oob_module.cc's false-positive guard.
# Built from a local copyKernel.cc (self-contained, no reach into unit/module).
# All fixtures install flat into one directory (see packaging/CMakeLists.txt), so
# the oob-prefixed name avoids colliding with module's copyKernelCompressed.code.
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/oob_copyKernelCompressed.code
COMMAND ${CMAKE_HIP_COMPILER} ${HIP_DEVICE_BUILD_FLAGS_NO_ARCH} ${OFFLOAD_ARCH_LIST} -mcode-object-version=5 --offload-compress --cuda-device-only
-x hip ${CMAKE_CURRENT_SOURCE_DIR}/copyKernel.cc
-I${HIP_INCLUDE_DIR} ${HIP_PATH_OPT}
-o ${CMAKE_CURRENT_BINARY_DIR}/oob_copyKernelCompressed.code
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/copyKernel.cc)
set_property(GLOBAL APPEND PROPERTY G_INSTALL_CUSTOM_TARGETS
${CMAKE_CURRENT_BINARY_DIR}/oob_copyKernelCompressed.code)
add_custom_target(oob_copyKernelCompressed_code DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/oob_copyKernelCompressed.code)
hip_add_exe_to_target(NAME oob_module
TEST_SRC ${TEST_SRC}
TEST_TARGET_NAME build_tests
LINKER_LIBS hiprtc::hiprtc)
add_dependencies(oob_module gen_oob_kernel oob_copyKernelCompressed_code)