diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a687c107c..732f4d5e8 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -21,6 +21,7 @@ # - openmp # - openmpi # * .gitlab/ci/ubuntu1804/base/ +# - gcc 6.5 # - gcc 7.4 # - gcc 9 # - clang 8 @@ -59,7 +60,7 @@ - .docker_image .ubuntu1804: &ubuntu1804 - image: "kitware/vtkm:ci-ubuntu1804-20200320" + image: "kitware/vtkm:ci-ubuntu1804-20200330" extends: - .docker_image diff --git a/.gitlab/ci/config/initial_config.cmake b/.gitlab/ci/config/initial_config.cmake index e2d34fede..a4d64a537 100644 --- a/.gitlab/ci/config/initial_config.cmake +++ b/.gitlab/ci/config/initial_config.cmake @@ -26,6 +26,15 @@ foreach(option IN LISTS options) elseif(64bit_floats STREQUAL option) set(VTKm_USE_DOUBLE_PRECISION "ON" CACHE STRING "") + elseif(examples STREQUAL option) + set(VTKm_ENABLE_EXAMPLES "ON" CACHE STRING "") + + elseif(docs STREQUAL option) + set(VTKm_ENABLE_DOCUMENTATION "ON" CACHE STRING "") + + elseif(benchmarks STREQUAL option) + set(VTKm_ENABLE_BENCHMARKS "ON" CACHE STRING "") + elseif(mpi STREQUAL option) set(VTKm_ENABLE_MPI "ON" CACHE STRING "") diff --git a/.gitlab/ci/docker/ubuntu1804/base/Dockerfile b/.gitlab/ci/docker/ubuntu1804/base/Dockerfile index b1421cd0f..7c7159d26 100644 --- a/.gitlab/ci/docker/ubuntu1804/base/Dockerfile +++ b/.gitlab/ci/docker/ubuntu1804/base/Dockerfile @@ -6,6 +6,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ cmake \ curl \ g++ \ + g++-6 \ git \ git-lfs \ libmpich-dev \ diff --git a/.gitlab/ci/ubuntu1604.yml b/.gitlab/ci/ubuntu1604.yml index 707fb0c54..a36e15e3b 100644 --- a/.gitlab/ci/ubuntu1604.yml +++ b/.gitlab/ci/ubuntu1604.yml @@ -69,7 +69,7 @@ build:ubuntu1604_gcc48: CMAKE_BUILD_TYPE: Release #custom openmpi install location CMAKE_PREFIX_PATH: "/opt/openmpi/" - VTKM_SETTINGS: "tbb+mpi" + VTKM_SETTINGS: "tbb+mpi+shared" test:ubuntu1604_gcc48: tags: @@ -91,8 +91,37 @@ test:ubuntu1604_gcc48: needs: - build:ubuntu1604_gcc48 -# Todo: -# Build on ubuntu1604 with TBB and test on ubuntu1804 -# Uses clang 3.8 -# Build on ubuntu1604 with TBB and test on ubuntu1604 and ubuntu1804 -# Uses clang 5.0, Debug??, Static/shared? + +# Build on ubuntu1604 with tbb and test on ubuntu1604 +# Uses clang 5 +build:ubuntu1604_clang5: + tags: + - build + - vtkm + - docker + - linux + extends: + #Requires the cuda docker image as it uses a sufficiently new + #enough CMake version that supports mpi + - .ubuntu1604 + - .cmake_build_linux + - .only-default + variables: + CMAKE_BUILD_TYPE: Debug + VTKM_SETTINGS: "tbb+static+64bit_floats" + +test:ubuntu1604_clang5: + tags: + - test + - vtkm + - docker + - linux + extends: + - .ubuntu1604 + - .cmake_test_linux + - .only-default + + dependencies: + - build:ubuntu1604_clang5 + needs: + - build:ubuntu1604_clang5 diff --git a/.gitlab/ci/ubuntu1804.yml b/.gitlab/ci/ubuntu1804.yml index 861da3384..478380056 100644 --- a/.gitlab/ci/ubuntu1804.yml +++ b/.gitlab/ci/ubuntu1804.yml @@ -16,7 +16,7 @@ build:ubuntu1804_gcc9: CC: "gcc-9" CXX: "g++-9" CMAKE_BUILD_TYPE: Debug - VTKM_SETTINGS: "tbb+openmp+mpi" + VTKM_SETTINGS: "tbb+openmp+mpi+shared" test:ubuntu1804_gcc9: tags: @@ -69,6 +69,73 @@ test:ubuntu1804_gcc7: needs: - build:ubuntu1804_gcc7 + +# Build on ubuntu1804 with OpenMP and test on ubuntu1804 +# Uses gcc 7.4 +# Runs only on nightlies +build:ubuntu1804_gcc7_2: + tags: + - build + - vtkm + - docker + - linux + extends: + - .ubuntu1804 + - .cmake_build_linux + - .only-master + variables: + CC: "gcc-7" + CXX: "g++-7" + VTKM_SETTINGS: "openmp+shared+examples" + +test:ubuntu1804_gcc7_2: + tags: + - test + - vtkm + - docker + - linux + extends: + - .ubuntu1804 + - .cmake_test_linux + - .only-master + dependencies: + - build:ubuntu1804_gcc7_2 + needs: + - build:ubuntu1804_gcc7_2 + +# Build on ubuntu1804 with OpenMP and test on ubuntu1804 +# Uses gcc 6.5 +# Runs only on nightlies +build:ubuntu1804_gcc6: + tags: + - build + - vtkm + - docker + - linux + extends: + - .ubuntu1804 + - .cmake_build_linux + - .only-master + variables: + CC: "gcc-6" + CXX: "g++-6" + VTKM_SETTINGS: "openmp+shared" + +test:ubuntu1804_gcc6: + tags: + - test + - vtkm + - docker + - linux + extends: + - .ubuntu1804 + - .cmake_test_linux + - .only-master + dependencies: + - build:ubuntu1804_gcc6 + needs: + - build:ubuntu1804_gcc6 + # Build on ubuntu1804 with TBB and test on ubuntu1804 # Uses clang 8 build:ubuntu1804_clang8: