Include latest fixes from develop into ROCm 6.5 - #268
Conversation
* Fix handling of hyphens in base target ID * Fixup and comment _rocm_sanitize_target_id * Handle empty target feature list --------- Co-authored-by: Cordell Bloor <Cordell.Bloor@amd.com>
* Update upper end of cmake_minimum_required range CMake 3.31 is dropping support for cmake_minimum_required for versions less than 3.10, but adding 3.25 (which is tested on math-ci) indicates that we test compatibility with 3.25, which causes those warnings to be suppressed. * Add CMake version 3.31.0 to testing * Change CMP0079 behaviour * Update upper end of range to latest version tested (3.31.0) * Update CMake versions in test.yml
cgmb
left a comment
There was a problem hiding this comment.
Are we still using this branch?
* Add --hip-link to target_id check The new driver in clang does not automatically link against the HIP libraries, so we need to add a --hip-link option here to enforce linking. Otherwise we'll get an error on the link stem of check_cxx_compiler_flag() when calling with "-xhip" and "--offload-arch" Note: The link step isn't really needed for this use case, as invalid targets will fail the compilation step. But check_cxx_compiler_flag() performs both compiling and linking by default * Update test.yml
* Lintian Warning Fix, License Folder Name Update * Prioritizing Lintian Warning Fixes * UT FIX Update * Update comments
|
This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation. |
1 similar comment
|
This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation. |
* fix: allow suppression of warning for third-party deps * fix: analyzer issues
To read a test's properties you must be in the directory scope where the test was registered. Two constraints force the split: Properties are set after rocm_add_test. e.g. test/verify/CMakeLists.txt calls rocm_add_test(...) and then set_tests_properties(... RESOURCE_LOCK gpu). So you can't read them inside rocm_add_test — they don't exist yet. You have to read them at the end of that directory, once all its set_tests_properties have run. That's exactly what cmake_language(DEFER CALL …) does: it schedules a call to run at the end of the current directory, still in that directory's scope. cmake_language(DEFER CALL …) can only schedule a named command. You can't defer an inline block; you defer a function. So the property-capture logic has to live in its own named function — rocm_save_test_props — to be the deferred target. And the two halves now run in different scopes and at different times, so they can't be the same function: rocm_save_test still runs at root, at finalization, to emit the consolidated add_test lines (target genexes like ROCM_INSTALL_DIR resolve fine there). rocm_save_test_props runs per-subdirectory, at that directory's end, where get_test_property actually sees the test. A global property (rocm_test_props) bridges the gap: rocm_save_test_props captures the values in the correct scope and stashes them in a scope-independent global; rocm_save_test reads that global at root and writes the set_tests_properties line right after the test's add_test.
No description provided.