summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorkwryankrattiger <80296582+kwryankrattiger@users.noreply.github.com>2022-05-13 15:26:53 -0500
committerGitHub <noreply@github.com>2022-05-13 13:26:53 -0700
commit72d83a6f9458d6a99f78694ca92aac5ee5cf49af (patch)
tree70abbffbb7573261fb62f13751f4e435fb26638c /var
parent5cb40cbcd2d9b6a95515de99bb6b3cc7fae14787 (diff)
downloadspack-72d83a6f9458d6a99f78694ca92aac5ee5cf49af.tar.gz
spack-72d83a6f9458d6a99f78694ca92aac5ee5cf49af.tar.bz2
spack-72d83a6f9458d6a99f78694ca92aac5ee5cf49af.tar.xz
spack-72d83a6f9458d6a99f78694ca92aac5ee5cf49af.zip
Ascent: Patch 0.8.0 for finding ADIOS2. (#30609)
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/ascent/ascent-find-adios2-pr922.patch99
-rw-r--r--var/spack/repos/builtin/packages/ascent/package.py3
2 files changed, 102 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/ascent/ascent-find-adios2-pr922.patch b/var/spack/repos/builtin/packages/ascent/ascent-find-adios2-pr922.patch
new file mode 100644
index 0000000000..037d6a89c8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ascent/ascent-find-adios2-pr922.patch
@@ -0,0 +1,99 @@
+diff --git a/src/cmake/thirdparty/SetupADIOS.cmake b/src/cmake/thirdparty/SetupADIOS.cmake
+index 7a7f038d..4b56b7e0 100644
+--- a/src/cmake/thirdparty/SetupADIOS.cmake
++++ b/src/cmake/thirdparty/SetupADIOS.cmake
+@@ -10,32 +10,32 @@
+ #
+ ###############################################################################
+
+-# first Check for ADIOS_DIR
++# first Check for ADIOS_ROOT
+
+-if(NOT ADIOS_DIR)
+- MESSAGE(FATAL_ERROR "ADIOS support needs explicit ADIOS_DIR")
++if(NOT ADIOS_ROOT)
++ MESSAGE(FATAL_ERROR "ADIOS support needs explicit ADIOS_ROOT")
+ endif()
+
+-MESSAGE(STATUS "Looking for ADIOS using ADIOS_DIR = ${ADIOS_DIR}")
++MESSAGE(STATUS "Looking for ADIOS using ADIOS_ROOT = ${ADIOS_ROOT}")
+
+ # CMake's FindADIOS module uses the ADIOS_ROOT env var
+-set(ADIOS_ROOT ${ADIOS_DIR})
++set(ADIOS_ROOT ${ADIOS_ROOT})
+ set(ENV{ADIOS_ROOT} ${ADIOS_ROOT})
+
+ # Use CMake's FindADIOS module, which uses hdf5's compiler wrappers to extract
+ # all the info about the hdf5 install
+-include(${ADIOS_DIR}/etc/FindADIOS.cmake)
++include(${ADIOS_ROOT}/etc/FindADIOS.cmake)
+
+-# FindADIOS sets ADIOS_DIR to it's installed CMake info if it exists
+-# we want to keep ADIOS_DIR as the root dir of the install to be
++# FindADIOS sets ADIOS_ROOT to it's installed CMake info if it exists
++# we want to keep ADIOS_ROOT as the root dir of the install to be
+ # consistent with other packages
+
+-set(ADIOS_DIR ${ADIOS_ROOT} CACHE PATH "" FORCE)
++set(ADIOS_ROOT ${ADIOS_ROOT} CACHE PATH "" FORCE)
+ # not sure why we need to set this, but we do
+ #set(ADIOS_FOUND TRUE CACHE PATH "" FORCE)
+
+ if(NOT ADIOS_FOUND)
+- message(FATAL_ERROR "ADIOS_DIR is not a path to a valid ADIOS install")
++ message(FATAL_ERROR "ADIOS_ROOT is not a path to a valid ADIOS install")
+ endif()
+
+ blt_register_library(NAME adios
+diff --git a/src/cmake/thirdparty/SetupADIOS2.cmake b/src/cmake/thirdparty/SetupADIOS2.cmake
+index d93c3e5b..3133c72c 100644
+--- a/src/cmake/thirdparty/SetupADIOS2.cmake
++++ b/src/cmake/thirdparty/SetupADIOS2.cmake
+@@ -10,21 +10,39 @@
+ #
+ ###############################################################################
+
+-# first Check for ADIOS_DIR
+-if(NOT ADIOS2_DIR)
+- MESSAGE(FATAL_ERROR "ADIOS2 support needs explicit ADIOS2_DIR")
++# Handle legacy usage of ADIOS2_DIR
++if (ADIOS2_DIR AND NOT ADIOS2_ROOT)
++ # If find_package(ADIOS2) has already been called this will fail
++ if (NOT EXISTS ${ADIOS2_DIR}/include)
++ get_filename_component(tmp "${ADIOS2_DIR}" DIRECTORY)
++ get_filename_component(tmp "${tmp}" DIRECTORY)
++ get_filename_component(tmp "${tmp}" DIRECTORY)
++ if (EXISTS ${tmp}/include)
++ set(ADIOS2_ROOT "${tmp}" CACHE PATH "")
++ else ()
++ message(FATAL_ERROR "Could not determine ADIOS2_ROOT from ADIOS2_DIR")
++ endif ()
++ else ()
++ set(ADIOS2_ROOT "${ADIOS2_DIR}" CACHE PATH "")
++ endif ()
++endif ()
++
++# Check for ADIOS_ROOT
++if(NOT ADIOS2_ROOT)
++ MESSAGE(FATAL_ERROR "ADIOS2 support needs explicit ADIOS2_ROOT")
+ endif()
+
+-MESSAGE(STATUS "Looking for ADIOS2 using ADIOS2_DIR = ${ADIOS2_DIR}")
++MESSAGE(STATUS "Looking for ADIOS2 using ADIOS2_ROOT = ${ADIOS2_ROOT}")
+
+-set(ADIOS2_DIR_ORIG ${ADIOS2_DIR})
++set(ADIOS2_DIR_ORIG ${ADIOS2_ROOT})
+
+ find_package(ADIOS2 REQUIRED
+ NO_DEFAULT_PATH
+- PATHS ${ADIOS2_DIR}/lib/cmake/adios2)
++ PATHS ${ADIOS2_ROOT})
+
++# ADIOS2_DIR is set by find_package
+ message(STATUS "FOUND ADIOS2 at ${ADIOS2_DIR}")
+
+ blt_register_library(NAME adios2
+- INCLUDES ${ADIOS2_INCLUDE_DIR}
+- LIBRARIES ${ADIOS2_LIB_DIRS} ${ADIOS2_LIBRARIES} )
++ INCLUDES ${ADIOS2_INCLUDE_DIR}
++ LIBRARIES ${ADIOS2_LIB_DIRS} ${ADIOS2_LIBRARIES} )
diff --git a/var/spack/repos/builtin/packages/ascent/package.py b/var/spack/repos/builtin/packages/ascent/package.py
index f5f5390820..be3ca2a333 100644
--- a/var/spack/repos/builtin/packages/ascent/package.py
+++ b/var/spack/repos/builtin/packages/ascent/package.py
@@ -102,6 +102,9 @@ class Ascent(CMakePackage, CudaPackage):
# patch for allowing +shared+cuda
# https://github.com/Alpine-DAV/ascent/pull/903
patch('ascent-shared-cuda-pr903.patch', when='@0.8.0')
+ # patch for finding ADIOS2 more reliably
+ # https://github.com/Alpine-DAV/ascent/pull/922
+ patch('ascent-find-adios2-pr922.patch', when='@0.8.0')
##########################################################################
# package dependencies