Merge topic 'add_windows_shell_ci_worker'
b033b28ef Add a windows10 vs2019 + shell builder 1e5c19a28 ContourTreeUniformAugmented compiles with visual studio + cuda 0ee0bf7cb Correct vtkm/Deprecated.h to work with CUDA and VS2019 Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Kenneth Moreland <kmorel@sandia.gov> Merge-request: !2055
This commit is contained in:
commit
2151c0a375
@ -169,3 +169,4 @@ include:
|
||||
- local: '/.gitlab/ci/rhel8.yml'
|
||||
- local: '/.gitlab/ci/ubuntu1604.yml'
|
||||
- local: '/.gitlab/ci/ubuntu1804.yml'
|
||||
- local: '/.gitlab/ci/windows10.yml'
|
||||
|
@ -74,10 +74,13 @@ if(DEFINED ENV{CTEST_MEMORYCHECK_SANITIZER_OPTIONS})
|
||||
endif()
|
||||
|
||||
#We need to do write this information out to a file in the build directory
|
||||
file(TO_CMAKE_PATH "${CTEST_SOURCE_DIRECTORY}" src_path) #converted so we can run on windows
|
||||
file(TO_CMAKE_PATH "${CTEST_BINARY_DIRECTORY}" bin_path) #converted so we can run on windows
|
||||
|
||||
set(state
|
||||
"
|
||||
set(CTEST_SOURCE_DIRECTORY \"${CTEST_SOURCE_DIRECTORY}\")
|
||||
set(CTEST_BINARY_DIRECTORY \"${CTEST_BINARY_DIRECTORY}\")
|
||||
set(CTEST_SOURCE_DIRECTORY \"${src_path}\")
|
||||
set(CTEST_BINARY_DIRECTORY \"${bin_path}\")
|
||||
|
||||
set(CTEST_BUILD_NAME ${CTEST_BUILD_NAME})
|
||||
set(CTEST_SITE ${CTEST_SITE})
|
||||
|
14
.gitlab/ci/config/setup_vs_powershell.ps1
Normal file
14
.gitlab/ci/config/setup_vs_powershell.ps1
Normal file
@ -0,0 +1,14 @@
|
||||
|
||||
$tempFile = "$env:temp\vcvars.txt"
|
||||
|
||||
if ($env:CI_JOB_NAME -eq "build:windows_vs2019") {
|
||||
cmd.exe /c "call `"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat`" && set > $tempFile"
|
||||
} else {
|
||||
cmd.exe /c "call `"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat`" && set > $tempFile"
|
||||
}
|
||||
|
||||
Get-Content "$tempFile" | Foreach-Object {
|
||||
if ($_ -match "^(.*?)=(.*)$") {
|
||||
Set-Content "env:\$($matches[1])" $matches[2]
|
||||
}
|
||||
}
|
87
.gitlab/ci/windows10.yml
Normal file
87
.gitlab/ci/windows10.yml
Normal file
@ -0,0 +1,87 @@
|
||||
|
||||
.cmake_build_windows: &cmake_build_windows
|
||||
stage: build
|
||||
timeout: 2 hours
|
||||
interruptible: true
|
||||
before_script:
|
||||
- .gitlab/ci/config/setup_vs_powershell.ps1
|
||||
- "cmake --version"
|
||||
- "cmake -V -P .gitlab/ci/config/gitlab_ci_setup.cmake"
|
||||
- "ctest -VV -S .gitlab/ci/ctest_configure.cmake"
|
||||
script:
|
||||
- "ctest -VV -S .gitlab/ci/ctest_build.cmake"
|
||||
artifacts:
|
||||
expire_in: 24 hours
|
||||
when: always
|
||||
paths:
|
||||
# The artifacts of the build.
|
||||
- build/bin/
|
||||
- build/include/
|
||||
- build/lib/
|
||||
|
||||
# CTest and CMake install files.
|
||||
# XXX(globbing): Can be simplified with support from
|
||||
# https://gitlab.com/gitlab-org/gitlab-runner/issues/4840
|
||||
#
|
||||
# Note: this also captures our CIState.cmake file
|
||||
- build/CMakeCache.txt
|
||||
- build/*.cmake
|
||||
- build/*/*.cmake
|
||||
- build/*/*/*.cmake
|
||||
- build/*/*/*/*.cmake
|
||||
- build/*/*/*/*/*.cmake
|
||||
- build/*/*/*/*/*/*.cmake
|
||||
- build/Testing/
|
||||
|
||||
# CDash files.
|
||||
- build/DartConfiguration.tcl
|
||||
|
||||
|
||||
.cmake_test_windows: &cmake_test_windows
|
||||
stage: test
|
||||
timeout: 50 minutes
|
||||
interruptible: true
|
||||
before_script:
|
||||
- .gitlab/ci/config/setup_vs_powershell.ps1
|
||||
script:
|
||||
#Need to use our custom ctest-latest symlink
|
||||
#This will allow us to use 3.17+ which has support
|
||||
#for running failed tests multiple times so failures
|
||||
#due to system load are not reported
|
||||
- "ctest-latest -VV -S .gitlab/ci/ctest_test.cmake"
|
||||
|
||||
# Build on windows10 with Visual Studio
|
||||
# Will have CUDA 10.2 once build issues are resolved
|
||||
build:windows_vs2019:
|
||||
tags:
|
||||
- build
|
||||
- vtkm
|
||||
- windows
|
||||
- vs2019
|
||||
- shell
|
||||
- large-memory
|
||||
extends:
|
||||
- .cmake_build_windows
|
||||
- .only-default
|
||||
variables:
|
||||
CMAKE_GENERATOR: "Ninja"
|
||||
CMAKE_BUILD_TYPE: Release
|
||||
# Disabled while we track down cub allocator issues with vtkm/io tests
|
||||
# VTKM_SETTINGS: "cuda+turing"
|
||||
VTKM_SETTINGS: "serial"
|
||||
|
||||
test:windows_vs2019:
|
||||
tags:
|
||||
- test
|
||||
- vtkm
|
||||
- windows
|
||||
- shell
|
||||
- cuda-rt
|
||||
- turing
|
||||
extends:
|
||||
- .cmake_test_windows
|
||||
- .only-default
|
||||
dependencies:
|
||||
- build:windows_vs2019
|
||||
needs:
|
||||
- build:windows_vs2019
|
@ -60,14 +60,12 @@
|
||||
// [[deprecated]] is supported, then VTK_M_DEPRECATED_ATTRIBUTE_SUPPORTED will get defined.
|
||||
#ifndef VTK_M_DEPRECATED_ATTRIBUTE_SUPPORTED
|
||||
|
||||
#if __cplusplus >= 201402L
|
||||
#if __cplusplus >= 201402L && !defined(__NVCC__)
|
||||
|
||||
// C++14 and better supports [[deprecated]]
|
||||
// Except in these cases:
|
||||
// - nvcc
|
||||
#if !(defined(VTKM_CUDA))
|
||||
#define VTK_M_DEPRECATED_ATTRIBUTE_SUPPORTED
|
||||
#endif
|
||||
|
||||
#elif defined(VTKM_GCC)
|
||||
|
||||
@ -78,14 +76,14 @@
|
||||
#define VTK_M_DEPRECATED_ATTRIBUTE_SUPPORTED
|
||||
#endif // Too old GCC
|
||||
|
||||
#elif defined(__has_cpp_attribute)
|
||||
#elif defined(__has_cpp_attribute) && !defined(__NVCC__)
|
||||
|
||||
#if __has_cpp_attribute(deprecated)
|
||||
// Compiler not fully C++14 compliant, but it reports to support [[deprecated]]
|
||||
#define VTK_M_DEPRECATED_ATTRIBUTE_SUPPORTED
|
||||
#endif // __has_cpp_attribute(deprecated)
|
||||
|
||||
#elif defined(VTKM_MSVC) && (_MSC_VER >= 1900) && !defined(VTKM_CUDA)
|
||||
#elif defined(VTKM_MSVC) && (_MSC_VER >= 1900) && !defined(__NVCC__)
|
||||
|
||||
#define VTK_M_DEPRECATED_ATTRIBUTE_SUPPORTED
|
||||
|
||||
|
@ -503,7 +503,8 @@ void MergeBlockFunctor(
|
||||
currNumIterations,
|
||||
block->ComputeRegularStructure,
|
||||
meshBoundaryExecObj);
|
||||
vtkm::worklet::contourtree_augmented::ContourTreeMesh<FieldType>* newContourTreeMesh = 0;
|
||||
vtkm::worklet::contourtree_augmented::ContourTreeMesh<FieldType>* newContourTreeMesh =
|
||||
nullptr;
|
||||
if (block->ComputeRegularStructure == 1)
|
||||
{
|
||||
// If we have the fully augmented contour tree
|
||||
@ -759,7 +760,7 @@ VTKM_CONT void ContourTreeAugmented::DoPostExecute(
|
||||
currBlock.GetField(this->GetActiveFieldName(), this->GetActiveFieldAssociation());
|
||||
//const vtkm::cont::ArrayHandle<T,StorageType> &fieldData = currField.GetData().Cast<vtkm::cont::ArrayHandle<T,StorageType> >();
|
||||
vtkm::cont::ArrayHandle<T> fieldData;
|
||||
vtkm::cont::ArrayCopy(currField.GetData().AsVirtual<T>(), fieldData);
|
||||
vtkm::cont::ArrayCopy(currField.GetData().template AsVirtual<T>(), fieldData);
|
||||
auto currContourTreeMesh =
|
||||
vtkm::filter::detail::MultiBlockContourTreeHelper::ComputeLocalContourTreeMesh<T>(
|
||||
this->MultiBlockTreeHelper->MultiBlockSpatialDecomposition.LocalBlockOrigins.ReadPortal()
|
||||
|
Loading…
Reference in New Issue
Block a user