summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSreenivasa Murthy Kolam <67086238+srekolam@users.noreply.github.com>2021-11-09 02:09:15 -0800
committerGitHub <noreply@github.com>2021-11-09 11:09:15 +0100
commit1d0947497543d03b9d13fac63dd44da640a0b876 (patch)
tree1cfb4ff8278f115186f177a609f542bd5946b893
parent3484434fe2caaa765ed15c9a2e0b7f5ded5a6c7c (diff)
downloadspack-1d0947497543d03b9d13fac63dd44da640a0b876.tar.gz
spack-1d0947497543d03b9d13fac63dd44da640a0b876.tar.bz2
spack-1d0947497543d03b9d13fac63dd44da640a0b876.tar.xz
spack-1d0947497543d03b9d13fac63dd44da640a0b876.zip
fix rvs build issue by using yaml-cpp spack recipe (#26000)
-rw-r--r--var/spack/repos/builtin/packages/rocm-validation-suite/004-remove-git-download-yaml-cpp-use-yaml-cpp-recipe.patch50
-rw-r--r--var/spack/repos/builtin/packages/rocm-validation-suite/package.py6
2 files changed, 55 insertions, 1 deletions
diff --git a/var/spack/repos/builtin/packages/rocm-validation-suite/004-remove-git-download-yaml-cpp-use-yaml-cpp-recipe.patch b/var/spack/repos/builtin/packages/rocm-validation-suite/004-remove-git-download-yaml-cpp-use-yaml-cpp-recipe.patch
new file mode 100644
index 0000000000..6224329bab
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rocm-validation-suite/004-remove-git-download-yaml-cpp-use-yaml-cpp-recipe.patch
@@ -0,0 +1,50 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ff77558..278a732 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -207,36 +207,7 @@ if ( NOT DEFINED CMAKE_PACKAGING_INSTALL_PREFIX )
+ endif ()
+
+ ################################################################################
+-# Download and unpack yaml-cpp at configure time
+-configure_file(CMakeYamlDownload.cmake yaml-download/CMakeLists.txt)
+-execute_process(COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}" .
+- RESULT_VARIABLE result
+- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/yaml-download )
+-if(result)
+- message(FATAL_ERROR "CMake step for yaml-download failed: ${result}")
+-endif()
+-execute_process(COMMAND ${CMAKE_COMMAND} --build .
+- RESULT_VARIABLE result
+- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/yaml-download )
+-if(result)
+- message(FATAL_ERROR "Build step for yaml-download failed: ${result}")
+-endif()
+-execute_process(COMMAND ${CMAKE_COMMAND} ${CMAKE_BINARY_DIR}/yaml-src -B${CMAKE_BINARY_DIR}/yaml-build
+- RESULT_VARIABLE result
+- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/yaml-src )
+-if(result)
+- message(FATAL_ERROR "Config step for yaml-src failed: ${result}")
+-endif()
+
+-add_custom_target(rvs_yaml_target
+- DEPENDS ${CMAKE_BINARY_DIR}/yaml-build/libyaml-cpp.a
+-)
+-
+-add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/yaml-build/libyaml-cpp.a
+- COMMAND make -C ${CMAKE_BINARY_DIR}/yaml-build
+- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/yaml-src
+- COMMENT "Generating yaml-cpp targets"
+- VERBATIM)
+
+ ################################################################################
+ ## GOOGLE TEST
+@@ -446,7 +417,7 @@ if (RVS_BUILD_TESTS)
+ add_subdirectory(testif.so)
+ endif()
+
+-add_dependencies(rvshelper rvs_bin_folder rvs_doc rvs_yaml_target)
++add_dependencies(rvshelper rvs_bin_folder rvs_doc)
+
+
+ add_dependencies(pesm rvslib rvslibrt)
diff --git a/var/spack/repos/builtin/packages/rocm-validation-suite/package.py b/var/spack/repos/builtin/packages/rocm-validation-suite/package.py
index 137b9aa1a5..833cce2fe5 100644
--- a/var/spack/repos/builtin/packages/rocm-validation-suite/package.py
+++ b/var/spack/repos/builtin/packages/rocm-validation-suite/package.py
@@ -35,9 +35,11 @@ class RocmValidationSuite(CMakePackage):
patch('001-fixes-for-rocblas-rocm-smi-install-prefix-path.patch')
patch('002-remove-force-setting-hip-inc-path.patch', when='@4.1.0:')
patch('003-cmake-change-to-remove-installs-and-sudo.patch', when='@4.1.0:')
+ patch('004-remove-git-download-yaml-cpp-use-yaml-cpp-recipe.patch', when='@4.3.0:')
depends_on('cmake@3.5:', type='build')
depends_on('zlib', type='link')
+ depends_on('yaml-cpp~shared')
def setup_build_environment(self, build_env):
spec = self.spec
@@ -55,5 +57,7 @@ class RocmValidationSuite(CMakePackage):
return [
self.define('HIP_INC_DIR', self.spec['hip'].prefix),
self.define('ROCM_SMI_DIR', self.spec['rocm-smi-lib'].prefix),
- self.define('ROCBLAS_DIR', self.spec['rocblas'].prefix)
+ self.define('ROCBLAS_DIR', self.spec['rocblas'].prefix),
+ self.define('YAML_INC_DIR', self.spec['yaml-cpp'].prefix.include),
+ self.define('YAML_LIB_DIR', self.spec['yaml-cpp'].libs.directories[0])
]