forked from KhronosGroup/OpenCL-SDK
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Format and minor CI update (KhronosGroup#2)
* WIP * Added error handling to context_properties * Initial Utility and SDK lib docs * Match definition to declaration * Fix constraints lifetime * Explicit narrowing conversion * Fix lifetime * Initial NBody sample * Reduce NBody particle count * NBody docs * Add GLM as a dependency * Don't draw after closing window * Fix InteropWindow namespace * Don't call CTOR explicitly * Simplify includes * Build SDK libs in correct place * Hook SDK deps to the correct targerts * Only install Util headers * Check for TCLAP alongside other deps * Only check for sample deps when building them * Add TCLAP to SDK props * Build SDK lib only with samples * Inherit common deps from libSDK * Modularize Stb detection for non-Vcpkg consumers * Revamp dependency use * Install layout overhaul * Fix CI YAML * Fix dynamic library dependence in install tree * Update readme * Don't test NBody using CTest * Move image Dockerfiles to OpenCL-SDK * Remove dead kernel code * README typo fixes. * Newline * Update submodules to point GitHub * Apply git-format * CI bump * Install deps. * apt update * Install stb * Acknolwedge Linux stb install layout * Fix build path * Fix vcpkg paths Co-authored-by: Ivan Siutsou <ivan@streamhpc.com>
- Loading branch information
1 parent
625a564
commit 37a3e6e
Showing
85 changed files
with
20,421 additions
and
14,205 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
FROM streamhpc/opencl-sdk-base:ubuntu-18.04-20211119 | ||
RUN set -ex; \ | ||
export DEBIAN_FRONTEND=noninteractive ; \ | ||
# Register ROCm APT repo | ||
wget --quiet --recursive --no-directories --no-parent "https://repo.radeon.com/amdgpu-install/latest/ubuntu/bionic/" --accept "amdgpu-install-*_all.deb" ; \ | ||
apt install -y -qq ./amdgpu-install-*_all.deb libnuma-dev initramfs-tools ; \ | ||
apt update -qq; \ | ||
rm ./amdgpu-install-*_all.deb ; \ | ||
# Install OpenCL package only (and dependency) | ||
amdgpu-install -y --usecase=opencl |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
FROM ubuntu:18.04 AS apt-installs | ||
RUN set -ex; \ | ||
export DEBIAN_FRONTEND=noninteractive ; \ | ||
apt update -qq; \ | ||
# install wget to download repository keys and CMake tarballs | ||
# install software-properties-common for the apt-add-repository command | ||
apt install -y -qq wget software-properties-common ; \ | ||
# Canonical hosts recent GCC compilers in ubuntu-toolchain-r/test | ||
apt-add-repository -y ppa:ubuntu-toolchain-r/test ; \ | ||
# LLVM hosts most toolchain in separate repos. We only register those absent from ubuntu-toolchain-r/test | ||
wget -q -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - ; \ | ||
apt-add-repository -y 'deb [arch=amd64] https://apt.llvm.org/bionic/ llvm-toolchain-bionic-11 main' ; \ | ||
apt-add-repository -y 'deb [arch=amd64] https://apt.llvm.org/bionic/ llvm-toolchain-bionic-12 main' ; \ | ||
apt-add-repository -y 'deb [arch=amd64] https://apt.llvm.org/bionic/ llvm-toolchain-bionic-13 main' ; \ | ||
# install ninja, GCC 7-10, LLVM 8-13 and build-essential to get linkers, etc. | ||
# install git to download dependencies | ||
# install ruby to run CMock | ||
# install libidn11 which CMake 3.1.3 only depends on | ||
# install ca-certificates to `git clone` via HTTPS | ||
# install SFML dependencies | ||
# libx11-dev libxrandr-dev libxi-dev | ||
# mesa-common-dev for gl.h | ||
# libgl1-mesa-dev for libGL.so | ||
# libglu1-mesa-dev for glu.h | ||
# libudev-dev | ||
# install Vcpkg dependencies | ||
# curl zip unzip tar | ||
apt install -y -qq build-essential g++-7 g++-8 g++-9 g++-10 clang-8 clang-9 clang-10 clang-11 clang-12 clang-13 ninja-build git ruby libidn11 ca-certificates libx11-dev libxrandr-dev libxi-dev mesa-common-dev libgl1-mesa-dev libglu1-mesa-dev libudev-dev curl zip unzip tar | ||
|
||
# install CMake minimum (3.0.2 (Headers, ICD Loader), 3.1.3 (CLHPP), 3.10.3 (SDK)) and latest (3.21.2) | ||
RUN mkdir -p /opt/Kitware/CMake ; \ | ||
wget -c https://github.com/Kitware/CMake/releases/download/v3.0.2/cmake-3.0.2-Linux-i386.tar.gz -O - | tar -xz --directory /opt/Kitware/CMake ; \ | ||
mv /opt/Kitware/CMake/cmake-3.0.2-Linux-i386 /opt/Kitware/CMake/3.0.2 ; \ | ||
wget -c https://github.com/Kitware/CMake/releases/download/v3.1.3/cmake-3.1.3-Linux-x86_64.tar.gz -O - | tar -xz --directory /opt/Kitware/CMake ; \ | ||
mv /opt/Kitware/CMake/cmake-3.1.3-Linux-x86_64 /opt/Kitware/CMake/3.1.3 ; \ | ||
wget -c https://github.com/Kitware/CMake/releases/download/v3.10.3/cmake-3.10.3-Linux-x86_64.tar.gz -O - | tar -xz --directory /opt/Kitware/CMake ; \ | ||
mv /opt/Kitware/CMake/cmake-3.10.3-Linux-x86_64 /opt/Kitware/CMake/3.10.3 ; \ | ||
wget -c https://github.com/Kitware/CMake/releases/download/v3.21.2/cmake-3.21.2-linux-x86_64.tar.gz -O - | tar -xz --directory /opt/Kitware/CMake ; \ | ||
mv /opt/Kitware/CMake/cmake-3.21.2-linux-x86_64 /opt/Kitware/CMake/3.21.2 | ||
|
||
# install Vcpkg | ||
RUN git clone --depth 1 https://github.com/Microsoft/vcpkg.git /opt/Microsoft/vcpkg ; \ | ||
/opt/Microsoft/vcpkg/bootstrap-vcpkg.sh ; \ | ||
# install SFML, TCLAP, GLM | ||
/opt/Microsoft/vcpkg/vcpkg install sfml tclap glm glew |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,12 +1,12 @@ | ||
[submodule "loader"] | ||
path = external/OpenCL-ICD-Loader | ||
url = git@projects.streamhpc.com:Khronos/OpenCL-ICD-Loader.git | ||
url = https://github.com/StreamHPC/OpenCL-ICD-Loader.git | ||
branch = develop_stream | ||
[submodule "headers"] | ||
path = external/OpenCL-Headers | ||
url = git@projects.streamhpc.com:Khronos/OpenCL-Headers.git | ||
url = https://github.com/StreamHPC/OpenCL-Headers.git | ||
branch = develop_stream | ||
[submodule "headers-cpp"] | ||
path = external/OpenCL-CLHPP | ||
url = git@projects.streamhpc.com:Khronos/OpenCL-CLHPP.git | ||
url = https://github.com/StreamHPC/OpenCL-CLHPP.git | ||
branch = develop_stream |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
# - Find Stb | ||
# Find the Stb headers | ||
# | ||
# Stb_INCLUDE_DIR - where to find the TCLAP headers | ||
# Stb_FOUND - True if TCLAP is found | ||
|
||
if (Stb_INCLUDE_DIR) | ||
# already in cache, be silent | ||
set (Stb_FIND_QUIETLY TRUE) | ||
endif (Stb_INCLUDE_DIR) | ||
|
||
# find the headers | ||
find_path (Stb_INCLUDE_PATH stb_image.h | ||
PATHS | ||
${Stb_DIR} | ||
PATH_SUFFIXES | ||
include | ||
include/stb | ||
) | ||
|
||
# handle the QUIETLY and REQUIRED arguments and set Stb_FOUND to | ||
# TRUE if all listed variables are TRUE | ||
include (FindPackageHandleStandardArgs) | ||
find_package_handle_standard_args (Stb "Stb (https://github.com/nothings/stb) could not be found. Set Stb_INCLUDE_PATH to point to the headers adding '-D Stb_INCLUDE_PATH=/path/to/stb' to the cmake command." Stb_INCLUDE_PATH) | ||
|
||
if (Stb_FOUND) | ||
set (Stb_INCLUDE_DIR ${Stb_INCLUDE_PATH}) | ||
endif (Stb_FOUND) | ||
|
||
mark_as_advanced(Stb_INCLUDE_PATH) |
Oops, something went wrong.