2023-07-24 19:54:11 +00:00
|
|
|
##=============================================================================
|
|
|
|
##
|
|
|
|
## Copyright (c) Kitware, Inc.
|
|
|
|
## All rights reserved.
|
|
|
|
## See LICENSE.txt for details.
|
|
|
|
##
|
|
|
|
## This software is distributed WITHOUT ANY WARRANTY; without even
|
|
|
|
## the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
|
|
## PURPOSE. See the above copyright notice for more information.
|
|
|
|
##
|
|
|
|
##=============================================================================
|
|
|
|
|
2020-02-12 20:19:29 +00:00
|
|
|
FROM ubuntu:18.04
|
2023-09-06 22:37:51 +00:00
|
|
|
LABEL maintainer "Vicente Adolfo Bolea Sanchez<vicente.bolea@gmail.com>"
|
2020-02-12 20:19:29 +00:00
|
|
|
|
|
|
|
# Base dependencies for building VTK-m projects
|
|
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
|
|
cmake \
|
|
|
|
curl \
|
|
|
|
g++ \
|
2020-03-30 14:58:07 +00:00
|
|
|
g++-6 \
|
2020-02-12 20:19:29 +00:00
|
|
|
git \
|
|
|
|
git-lfs \
|
|
|
|
libmpich-dev \
|
|
|
|
libomp-dev \
|
|
|
|
libtbb-dev \
|
2021-01-07 16:56:27 +00:00
|
|
|
libhdf5-dev \
|
2023-09-06 22:37:51 +00:00
|
|
|
make \
|
2020-02-12 20:19:29 +00:00
|
|
|
mpich \
|
|
|
|
ninja-build \
|
2023-09-06 22:37:51 +00:00
|
|
|
pkg-config \
|
2020-02-12 20:19:29 +00:00
|
|
|
software-properties-common
|
|
|
|
|
|
|
|
# extra dependencies for charm machine
|
2021-01-07 16:56:27 +00:00
|
|
|
RUN add-apt-repository ppa:jonathonf/gcc
|
2020-02-12 20:19:29 +00:00
|
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
|
|
clang-8 \
|
|
|
|
g++-9 \
|
|
|
|
&& \
|
|
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
|
|
|
|
# Need to run git-lfs install manually on ubuntu based images when using the
|
|
|
|
# system packaged version
|
|
|
|
RUN git-lfs install
|
|
|
|
|
|
|
|
# Provide a consistent CMake path across all images
|
|
|
|
# Allow tests that require CMake to work correctly
|
|
|
|
RUN mkdir /opt/cmake && \
|
2020-05-29 21:04:18 +00:00
|
|
|
curl -L https://github.com/Kitware/CMake/releases/download/v3.16.7/cmake-3.16.7-Linux-x86_64.sh > cmake-3.16.7-Linux-x86_64.sh && \
|
|
|
|
sh cmake-3.16.7-Linux-x86_64.sh --prefix=/opt/cmake/ --exclude-subdir --skip-license && \
|
|
|
|
rm cmake-3.16.7-Linux-x86_64.sh
|
2020-02-12 20:19:29 +00:00
|
|
|
|
|
|
|
# Provide CMake 3.17 so we can re-run tests easily
|
|
|
|
# This will be used when we run just the tests
|
|
|
|
RUN mkdir /opt/cmake-latest/ && \
|
2020-05-29 21:04:18 +00:00
|
|
|
curl -L https://github.com/Kitware/CMake/releases/download/v3.17.3/cmake-3.17.3-Linux-x86_64.sh > cmake-3.17.3-Linux-x86_64.sh && \
|
|
|
|
sh cmake-3.17.3-Linux-x86_64.sh --prefix=/opt/cmake-latest/ --exclude-subdir --skip-license && \
|
|
|
|
rm cmake-3.17.3-Linux-x86_64.sh && \
|
2020-02-12 20:19:29 +00:00
|
|
|
ln -s /opt/cmake-latest/bin/ctest /opt/cmake-latest/bin/ctest-latest
|
|
|
|
|
|
|
|
ENV PATH "/opt/cmake/bin:/opt/cmake-latest/bin:${PATH}"
|