Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 33 additions & 1 deletion .github/workflows/docker_linuxes.yml
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,18 @@ jobs:
- name: Run unit tests (ctest) within the Docker image
run: docker run ctl:latest sh -c "cd ./build && ctest"

ubuntu-latest-clang:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- name: Build the Docker image
run: docker build --no-cache --rm -f ./docker/Dockerfile_ubuntu_latest_clang -t ctl:latest .

- name: Run unit tests (ctest) within the Docker image
run: docker run ctl:latest sh -c "cd ./build && ctest"

redhat-ubi8:

runs-on: ubuntu-latest
Expand Down Expand Up @@ -223,4 +235,24 @@ jobs:

- name: Run the docker that runs valgrind
run: docker run ctl:latest


gentoo:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build the Docker image
run: docker build --no-cache --rm -f ./docker/Dockerfile_gentoo -t ctl:latest .

- name: Run unit tests (ctest) within the Docker image
run: docker run ctl:latest sh -c "cd ./build && ctest"

gentoo-clang:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build the Docker image
run: docker build --no-cache --rm -f ./docker/Dockerfile_gentoo_clang -t ctl:latest .

- name: Run unit tests (ctest) within the Docker image
run: docker run ctl:latest sh -c "cd ./build && ctest"

3 changes: 3 additions & 0 deletions .github/workflows/ubuntu_arm_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,9 @@ jobs:

steps:

- name: run apt-get update
run: sudo apt-get -y update

- name: install libtiff
run: sudo apt-get -y install libtiff-dev

Expand Down
25 changes: 25 additions & 0 deletions docker/Dockerfile_gentoo
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
FROM gentoo/stage3

# update packages
RUN emaint --auto sync

# install development tools
RUN emerge cmake

# install CTL required dependencies
RUN emerge openexr

# install CTL optional dependencies
RUN emerge tiff

# build CTL
WORKDIR /usr/src/CTL
COPY . .
WORKDIR /usr/src/CTL/build
RUN rm -R * || true
RUN cmake ..
RUN make
RUN make install

# finalize docker environment
WORKDIR /usr/src/CTL
44 changes: 44 additions & 0 deletions docker/Dockerfile_gentoo_clang
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
FROM gentoo/stage3

# update packages
RUN emaint --auto sync

# install development tools
RUN emerge cmake
RUN emerge llvm-core/clang

# install CTL required dependencies
RUN emerge openexr

# install CTL optional dependencies
RUN emerge tiff

# switch to clang system wide
# based on https://wiki.gentoo.org/wiki/LLVM/Clang
# RUN printf "CC=clang\n" >> /etc/portage/make.conf
# RUN printf "CPP=clang-cpp\n" >> /etc/portage/make.conf
# RUN printf "CXX=clang++\n" >> /etc/portage/make.conf
# RUN printf "AR=llvm-ar\n" >> /etc/portage/make.conf
# RUN printf "NM=llvm-nm\n" >> /etc/portage/make.conf
# RUN printf "RANLIB=llvm-ranlib\n" >> /etc/portage/make.conf

# switch to the make.profile symlink
#RUN eselect profile set 39

# update path
# RUN env-update && . /etc/profile
#RUN source /etc/profile && env-update
#RUN source /etc/profile
ENV PATH=$PATH:/usr/lib/llvm/19/bin

# build CTL
WORKDIR /usr/src/CTL
COPY . .
WORKDIR /usr/src/CTL/build
RUN rm -R * || true
RUN cmake .. -DCMAKE_CXX_COMPILER=clang++
RUN make
RUN make install

# finalize docker environment
WORKDIR /usr/src/CTL
27 changes: 27 additions & 0 deletions docker/Dockerfile_ubuntu_latest_clang
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
FROM ubuntu:latest

RUN apt-get update

# disable interactive install
ENV DEBIAN_FRONTEND noninteractive

# install developement tools
RUN apt-get -y install cmake
RUN apt-get -y install clang

# install CTL dependencies
RUN apt-get -y install libopenexr-dev
RUN apt-get -y install libtiff-dev

# build CTL
WORKDIR /usr/src/CTL
COPY . .
WORKDIR /usr/src/CTL/build
RUN rm -R * || true
RUN cmake ..
RUN make
RUN make install

# finalize docker environment
WORKDIR /usr/src/CTL

Loading