diff --git a/docker-builders/KomputeBuilder.Dockerfile b/docker-builders/KomputeBuilder.Dockerfile index a71a87fe8..4cb31c9fd 100644 --- a/docker-builders/KomputeBuilder.Dockerfile +++ b/docker-builders/KomputeBuilder.Dockerfile @@ -1,30 +1,30 @@ FROM ubuntu:18.04 +# Base packages from default ppa RUN apt-get update -y RUN apt-get install -y wget RUN apt-get install -y gnupg RUN apt-get install -y ca-certificates RUN apt-get install -y software-properties-common -# Repository to install latest cmake +# Repository to latest cmake RUN wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | apt-key add - RUN apt-add-repository 'deb https://apt.kitware.com/ubuntu/ bionic main' -# Refresh repositories -RUN apt-get update -y +# Repository for latest git (needed for gh actions) +RUN add-apt-repository -y ppa:git-core/ppa + +# Refresh repositories +RUN apt update -y + +RUN apt install -y git RUN apt-get install -y cmake g++ RUN apt-get install -y libvulkan-dev -RUN apt-get install -y git -RUN apt-get install -y g++-8 gcc-8 +# Swiftshader dependencies RUN apt-get install -y libx11-dev zlib1g-dev RUN apt-get install -y libxext-dev -# Run swiftshader via env VK_ICD_FILENAMES=/swiftshader/vk_swiftshader_icd.json -RUN git clone https://github.com/google/swiftshader swiftshader-build -RUN CC="/usr/bin/gcc-8" CXX="/usr/bin/g++-8" cmake swiftshader-build/. -Bswiftshader-build/build/ -RUN cmake --build swiftshader-build/build/. --parallel 12 -RUN mv swiftshader-build/build/Linux/ swiftshader/ -RUN rm -rf swiftshader-build/ +COPY --from=axsauze/swiftshader:0.1 /swiftshader/ /swiftshader/ # Setup Python RUN apt-get install -y python3-pip diff --git a/docker-builders/Makefile b/docker-builders/Makefile new file mode 100644 index 000000000..11a8344b4 --- /dev/null +++ b/docker-builders/Makefile @@ -0,0 +1,19 @@ + +build_kompute_builder: + docker build .. -f KomputeBuilder.Dockerfile -t axsauze/kompute-builder:0.2 + +push_kompute_builder: + docker push axsauze/kompute-builder:0.2 + +build_swiftshader: + docker build .. -f Swiftshader.Dockerfile -t axsauze/swiftshader:0.1 + +push_swiftshader: + docker push axsauze/swiftshader:0.1 + +build_vulkan_sdk: + docker build .. -f VulkanSDK.Dockerfile -t axsauze/vulkan-sdk:0.1 + +push_vulkan_sdk: + docker push axsauze/vulkan-sdk:0.1 + diff --git a/docker-builders/Swiftshader.Dockerfile b/docker-builders/Swiftshader.Dockerfile new file mode 100644 index 000000000..b942e0bab --- /dev/null +++ b/docker-builders/Swiftshader.Dockerfile @@ -0,0 +1,34 @@ +FROM ubuntu:18.04 + +# Base packages from default ppa +RUN apt-get update -y +RUN apt-get install -y wget +RUN apt-get install -y gnupg +RUN apt-get install -y ca-certificates +RUN apt-get install -y software-properties-common + +# Repository to latest cmake +RUN wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | apt-key add - +RUN apt-add-repository 'deb https://apt.kitware.com/ubuntu/ bionic main' + +# Repository for latest git (needed for gh actions) +RUN add-apt-repository -y ppa:git-core/ppa + +# Refresh repositories +RUN apt update -y + +RUN apt install -y git +RUN apt-get install -y cmake g++ +RUN apt-get install -y libvulkan-dev + +# Dependencies for swiftshader +RUN apt-get install -y g++-8 gcc-8 +RUN apt-get install -y libx11-dev zlib1g-dev +RUN apt-get install -y libxext-dev + +# Run swiftshader via env VK_ICD_FILENAMES=/swiftshader/vk_swiftshader_icd.json +RUN git clone https://github.com/google/swiftshader swiftshader-build +RUN CC="/usr/bin/gcc-8" CXX="/usr/bin/g++-8" cmake swiftshader-build/. -Bswiftshader-build/build/ +RUN cmake --build swiftshader-build/build/. --parallel 12 +COPY swiftshader-build/build/Linux/ swiftshader/ +