Skip to content

Commit c23dc70

Browse files
authored
Update to Ubuntu 26.04 and ROOT 6.38.04
2 parents 388a738 + 70f1abf commit c23dc70

16 files changed

Lines changed: 519 additions & 26 deletions

.github/workflows/ci.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,6 @@ jobs:
6464
uses: docker/build-push-action@v7
6565
with:
6666
context: .
67-
cache-from: type=registry,ref=ldmx/dev:build-cache-${{ matrix.platform }}
68-
cache-to: type=registry,ref=ldmx/dev:build-cache-${{ matrix.platform }},mode=max
6967
platforms: linux/${{ matrix.platform }}
7068
labels: ${{ steps.meta.outputs.labels }}
7169
outputs: type=image,name=${{ env.REGISTRY_IMAGE }},push-by-digest=true,name-canonical=true,push=true

Dockerfile

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
FROM ubuntu:24.04
1+
FROM ubuntu:26.04
22
LABEL maintainer="Tom Eichlersmith <eichl008@umn.edu>, Tamas Almos Vami <Tamas.Almos.Vami@cern.ch>"
3-
LABEL ubuntu.version="24.04"
3+
LABEL ubuntu.version="26.04"
44

55
ARG NPROC=1
66

@@ -22,6 +22,7 @@ RUN install-ubuntu-packages \
2222
ccache \
2323
cmake \
2424
gcc g++ gfortran \
25+
gcc-13 g++-13 \
2526
libcurl4-openssl-dev \
2627
locales \
2728
make \
@@ -119,7 +120,6 @@ RUN mkdir src && \
119120

120121
RUN install-ubuntu-packages \
121122
fonts-freefont-ttf \
122-
libafterimage-dev \
123123
libfftw3-dev \
124124
libfreetype6-dev \
125125
libftgl-dev \
@@ -141,17 +141,17 @@ RUN install-ubuntu-packages \
141141
libz-dev \
142142
libzstd-dev \
143143
nlohmann-json3-dev \
144-
srm-ifce-dev \
145-
libgsl-dev
144+
libgsl-dev \
145+
libcrypt-dev
146146

147-
ENV ROOT_VERSION="6.34.10"
147+
ENV ROOT_VERSION="6.38.04"
148148
LABEL root.version=${ROOT_VERSION}
149149
RUN mkdir src &&\
150150
${__wget} https://root.cern/download/root_v${ROOT_VERSION}.source.tar.gz |\
151151
${__untar} &&\
152152
cmake \
153153
-DCMAKE_BUILD_TYPE=Release \
154-
-DCMAKE_CXX_STANDARD=20 \
154+
-DCMAKE_CXX_STANDARD=23 \
155155
-DCMAKE_INSTALL_PREFIX=${__prefix} \
156156
-DCMAKE_INSTALL_LIBDIR=lib \
157157
-Dgnuinstall=ON \
@@ -162,8 +162,8 @@ RUN mkdir src &&\
162162
-Dopengl=ON \
163163
-Dpyroot=ON \
164164
-Dxrootd=OFF \
165-
-Dmathmore=ON \
166-
-Dpythia8=ON \
165+
-Dmathmore=ON \
166+
-Dpythia8=ON \
167167
-B build \
168168
-S src \
169169
&& cmake --build build --target install -j$NPROC &&\
@@ -199,7 +199,11 @@ RUN __owner="geant4" &&\
199199
-DGEANT4_USE_GDML=ON \
200200
-DGEANT4_INSTALL_EXAMPLES=OFF \
201201
-DGEANT4_USE_OPENGL_X11=ON \
202+
-DGEANT4_USE_SYSTEM_ZLIB=ON \
202203
-DCMAKE_INSTALL_PREFIX=${__prefix} \
204+
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
205+
-DCMAKE_C_COMPILER=gcc-13 \
206+
-DCMAKE_CXX_COMPILER=g++-13 \
203207
-B src/build \
204208
-S src \
205209
&&\
@@ -259,7 +263,8 @@ RUN mkdir src &&\
259263
-DHEPMC3_BUILD_STATIC_LIBS:BOOL=ON \
260264
-DHEPMC3_BUILD_DOCS:BOOL=OFF \
261265
-DHEPMC3_ENABLE_PYTHON:BOOL=ON \
262-
-DHEPMC3_PYTHON_VERSIONS=3.10 \
266+
-DHEPMC3_PYTHON_VERSIONS=3.14 \
267+
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
263268
-B src/build \
264269
-S src \
265270
&&\
@@ -399,6 +404,7 @@ RUN install-ubuntu-packages \
399404
ca-certificates \
400405
clang-format \
401406
libboost-all-dev \
407+
libcurl4-openssl-dev \
402408
libssl-dev
403409

404410
###############################################################################

README.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -37,16 +37,16 @@ which provides support for Docker, Podman, and Apptainer.
3737

3838
Software Package | Version | Construction Process
3939
---|---|---
40-
[Ubuntu Server](https://ubuntu.com/) | 24.04 | Base Image
41-
[GCC](https://gcc.gnu.org/) | 13.3.0 | From Ubuntu Repos
42-
[Python](https://www.python.org/) | 3.12.3 | From Ubuntu Repos
43-
[cmake](https://cmake.org/) | 3.28.3 | From Ubuntu Repos
44-
[Boost](https://www.boost.org/doc/libs/1_83_0/) | 1.83.0 | From Ubuntu Repos
40+
[Ubuntu Server](https://ubuntu.com/) | 26.04 | Base Image
41+
[GCC](https://gcc.gnu.org/) | 15.2.0 | From Ubuntu Repos
42+
[Python](https://www.python.org/) | 3.14.4 | From Ubuntu Repos
43+
[cmake](https://cmake.org/) | 4.3.2 | From Ubuntu Repos
44+
[Boost](https://www.boost.org/doc/libs/1_90_0/) | 1.9.0 | From Ubuntu Repos
4545
[XercesC](http://xerces.apache.org/xerces-c/) | 3.3.0 | Built from source
4646
[LHAPDF](https://www.lhapdf.org/) | 6.5.5 | Built from source
4747
[Pythia8](https://pythia.org/) | 8.313 | Built from source
4848
[nlohmann/json](https://json.nlohmann.me/) | 3.11.3 | From Ubuntu Repos
49-
[ROOT](https://root.cern.ch/) | 6.34.10 | Built from source
49+
[ROOT](https://root.cern.ch/) | 6.38.04 | Built from source
5050
[Geant4](https://geant4.web.cern.ch/) | [LDMX.10.2.3\_v0.6](https://github.com/LDMX-Software/geant4/tree/LDMX.10.2.3_v0.6) | Built from source
5151
[Eigen](https://eigen.tuxfamily.org) | 3.4.0 | Built from source
5252
[HEPMC3](https://hepmc.web.cern.ch) | 3.3.0 | Built from source
@@ -55,7 +55,7 @@ Software Package | Version | Construction Process
5555
[Catch2](https://github.com/catchorg/Catch2) | 3.8.0 | Built from source
5656
[Acts](https://acts.readthedocs.io/en/v36.0.0/) | 36.0.0 | Built from source
5757
[ONNX Runtime](https://github.com/microsoft/onnxruntime) | 1.15.0 | Download pre-built binaries
58-
[Clang](https://clang.llvm.org/) | 18.1.3 | From Ubuntu Repos
58+
[Clang](https://clang.llvm.org/) | 21.1.8 | From Ubuntu Repos
5959

6060
More detailed documentation of the available software is online.
6161
- [Ubuntu Packages](https://ldmx-software.github.io/dev-build-context/ubuntu-packages.html)

ci/interop/v3.3.0.patch

Lines changed: 64 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,71 @@ index e418c42..79ed3a3 100644
55
+++ b/Conditions/include/Conditions/SimpleTableCondition.h
66
@@ -7,6 +7,7 @@
77
#define FRAMEWORK_SIMPLETABLECONDITION_H_
8-
8+
99
#include <vector>
1010
+#include <cstdint>
11-
11+
1212
#include "Framework/ConditionsObject.h"
1313
#include "Framework/Exception/Exception.h"
14+
diff --git a/DetDescr/CMakeLists.txt b/DetDescr/CMakeLists.txt
15+
--- a/DetDescr/CMakeLists.txt
16+
+++ b/DetDescr/CMakeLists.txt
17+
@@ -17,32 +17,27 @@
18+
option(BUILD_DETECTORID_BINDINGS "Build the python bindings for the the DetDescr/DetectorID components" ON)
19+
if(BUILD_DETECTORID_BINDINGS)
20+
+ cmake_policy(SET CMP0167 NEW)
21+
find_package(Python COMPONENTS Development)
22+
23+
- message("Looking for libboost_python${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR}")
24+
- find_package(Boost QUIET COMPONENTS python${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR})
25+
+ message("Looking for libboost_python${Python_VERSION_MAJOR}${Python_VERSION_MINOR}")
26+
+ find_package(Boost QUIET COMPONENTS python${Python_VERSION_MAJOR}${Python_VERSION_MINOR})
27+
# libboost_python3 style libraries
28+
if (NOT Boost_FOUND)
29+
- message("Looking for libboost_python${PYTHON_VERSION_MAJOR}")
30+
- find_package(Boost QUIET COMPONENTS python${PYTHON_VERSION_MAJOR})
31+
+ message("Looking for libboost_python${Python_VERSION_MAJOR}")
32+
+ find_package(Boost QUIET COMPONENTS python${Python_VERSION_MAJOR})
33+
endif()
34+
35+
- # libboost_python style libraries
36+
- if (NOT Boost_FOUND)
37+
- message("Looking for libboost_python")
38+
- find_package(Boost QUIET COMPONENTS system thread python)
39+
- endif()
40+
-
41+
# libboost_python-py36 style libraries
42+
if (NOT Boost_FOUND)
43+
- message("Looking for libboost_python-py${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR}")
44+
- find_package(Boost QUIET COMPONENTS python-py${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR})
45+
+ message("Looking for libboost_python-py${Python_VERSION_MAJOR}${Python_VERSION_MINOR}")
46+
+ find_package(Boost QUIET COMPONENTS python-py${Python_VERSION_MAJOR}${Python_VERSION_MINOR})
47+
endif()
48+
49+
# libboost_python3-py36 style libraries
50+
if (NOT Boost_FOUND)
51+
- message("Looking for libboost_python3-py${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR}")
52+
- find_package(Boost QUIET COMPONENTS python3-py${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR})
53+
+ message("Looking for libboost_python3-py${Python_VERSION_MAJOR}${Python_VERSION_MINOR}")
54+
+ find_package(Boost QUIET COMPONENTS python3-py${Python_VERSION_MAJOR}${Python_VERSION_MINOR})
55+
endif()
56+
57+
# Nothing worked
58+
if (NOT Boost_FOUND)
59+
diff --git a/Framework/CMakeLists.txt b/Framework/CMakeLists.txt
60+
--- a/Framework/CMakeLists.txt
61+
+++ b/Framework/CMakeLists.txt
62+
@@ -16,11 +16,11 @@
63+
# Search for the Python3 library
64+
find_package(Python3 COMPONENTS Interpreter Development)
65+
66+
+cmake_policy(SET CMP0167 NEW)
67+
# Search for Boost
68+
find_package(
69+
Boost REQUIRED
70+
- COMPONENTS system
71+
- log
72+
+ COMPONENTS log
73+
filesystem
74+
thread
75+
chrono

ci/interop/v3.4.0.patch

Lines changed: 64 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,72 @@ index 467d8b9..632de04 100644
44
--- a/Conditions/include/Conditions/SimpleTableCondition.h
55
+++ b/Conditions/include/Conditions/SimpleTableCondition.h
66
@@ -8,6 +8,7 @@
7-
7+
88
#include <vector>
99
#include <ostream>
1010
+#include <cstdint>
11-
11+
1212
#include "Framework/ConditionsObject.h"
1313
#include "Framework/Exception/Exception.h"
14+
diff --git a/DetDescr/CMakeLists.txt b/DetDescr/CMakeLists.txt
15+
--- a/DetDescr/CMakeLists.txt
16+
+++ b/DetDescr/CMakeLists.txt
17+
@@ -17,32 +17,27 @@
18+
option(BUILD_DETECTORID_BINDINGS "Build the python bindings for the the DetDescr/DetectorID components" ON)
19+
if(BUILD_DETECTORID_BINDINGS)
20+
+ cmake_policy(SET CMP0167 NEW)
21+
find_package(Python COMPONENTS Development)
22+
23+
- message("Looking for libboost_python${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR}")
24+
- find_package(Boost QUIET COMPONENTS python${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR})
25+
+ message("Looking for libboost_python${Python_VERSION_MAJOR}${Python_VERSION_MINOR}")
26+
+ find_package(Boost QUIET COMPONENTS python${Python_VERSION_MAJOR}${Python_VERSION_MINOR})
27+
# libboost_python3 style libraries
28+
if (NOT Boost_FOUND)
29+
- message("Looking for libboost_python${PYTHON_VERSION_MAJOR}")
30+
- find_package(Boost QUIET COMPONENTS python${PYTHON_VERSION_MAJOR})
31+
+ message("Looking for libboost_python${Python_VERSION_MAJOR}")
32+
+ find_package(Boost QUIET COMPONENTS python${Python_VERSION_MAJOR})
33+
endif()
34+
35+
- # libboost_python style libraries
36+
- if (NOT Boost_FOUND)
37+
- message("Looking for libboost_python")
38+
- find_package(Boost QUIET COMPONENTS system thread python)
39+
- endif()
40+
-
41+
# libboost_python-py36 style libraries
42+
if (NOT Boost_FOUND)
43+
- message("Looking for libboost_python-py${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR}")
44+
- find_package(Boost QUIET COMPONENTS python-py${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR})
45+
+ message("Looking for libboost_python-py${Python_VERSION_MAJOR}${Python_VERSION_MINOR}")
46+
+ find_package(Boost QUIET COMPONENTS python-py${Python_VERSION_MAJOR}${Python_VERSION_MINOR})
47+
endif()
48+
49+
# libboost_python3-py36 style libraries
50+
if (NOT Boost_FOUND)
51+
- message("Looking for libboost_python3-py${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR}")
52+
- find_package(Boost QUIET COMPONENTS python3-py${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR})
53+
+ message("Looking for libboost_python3-py${Python_VERSION_MAJOR}${Python_VERSION_MINOR}")
54+
+ find_package(Boost QUIET COMPONENTS python3-py${Python_VERSION_MAJOR}${Python_VERSION_MINOR})
55+
endif()
56+
57+
# Nothing worked
58+
if (NOT Boost_FOUND)
59+
diff --git a/Framework/CMakeLists.txt b/Framework/CMakeLists.txt
60+
--- a/Framework/CMakeLists.txt
61+
+++ b/Framework/CMakeLists.txt
62+
@@ -23,11 +23,11 @@
63+
# Search for the Python3 library
64+
find_package(Python3 COMPONENTS Interpreter Development)
65+
66+
+cmake_policy(SET CMP0167 NEW)
67+
# Search for Boost
68+
find_package(
69+
Boost REQUIRED
70+
- COMPONENTS system
71+
- log
72+
+ COMPONENTS log
73+
filesystem
74+
thread
75+
chrono

ci/interop/v4.0.5.patch

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,76 @@ index d34d930d..b69f81c7 100644
1010

1111
#include "Framework/ConditionsObject.h"
1212
#include "Framework/Exception/Exception.h"
13+
diff --git a/DetDescr/CMakeLists.txt b/DetDescr/CMakeLists.txt
14+
--- a/DetDescr/CMakeLists.txt
15+
+++ b/DetDescr/CMakeLists.txt
16+
@@ -17,32 +17,27 @@
17+
option(BUILD_DETECTORID_BINDINGS "Build the python bindings for the the DetDescr/DetectorID components" ON)
18+
if(BUILD_DETECTORID_BINDINGS)
19+
+ cmake_policy(SET CMP0167 NEW)
20+
find_package(Python COMPONENTS Development)
21+
22+
- message("Looking for libboost_python${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR}")
23+
- find_package(Boost QUIET COMPONENTS python${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR})
24+
+ message("Looking for libboost_python${Python_VERSION_MAJOR}${Python_VERSION_MINOR}")
25+
+ find_package(Boost QUIET COMPONENTS python${Python_VERSION_MAJOR}${Python_VERSION_MINOR})
26+
# libboost_python3 style libraries
27+
if (NOT Boost_FOUND)
28+
- message("Looking for libboost_python${PYTHON_VERSION_MAJOR}")
29+
- find_package(Boost QUIET COMPONENTS python${PYTHON_VERSION_MAJOR})
30+
+ message("Looking for libboost_python${Python_VERSION_MAJOR}")
31+
+ find_package(Boost QUIET COMPONENTS python${Python_VERSION_MAJOR})
32+
endif()
33+
34+
- # libboost_python style libraries
35+
- if (NOT Boost_FOUND)
36+
- message("Looking for libboost_python")
37+
- find_package(Boost QUIET COMPONENTS system thread python)
38+
- endif()
39+
-
40+
# libboost_python-py36 style libraries
41+
if (NOT Boost_FOUND)
42+
- message("Looking for libboost_python-py${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR}")
43+
- find_package(Boost QUIET COMPONENTS python-py${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR})
44+
+ message("Looking for libboost_python-py${Python_VERSION_MAJOR}${Python_VERSION_MINOR}")
45+
+ find_package(Boost QUIET COMPONENTS python-py${Python_VERSION_MAJOR}${Python_VERSION_MINOR})
46+
endif()
47+
48+
# libboost_python3-py36 style libraries
49+
if (NOT Boost_FOUND)
50+
- message("Looking for libboost_python3-py${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR}")
51+
- find_package(Boost QUIET COMPONENTS python3-py${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR})
52+
+ message("Looking for libboost_python3-py${Python_VERSION_MAJOR}${Python_VERSION_MINOR}")
53+
+ find_package(Boost QUIET COMPONENTS python3-py${Python_VERSION_MAJOR}${Python_VERSION_MINOR})
54+
endif()
55+
56+
# Nothing worked
57+
if (NOT Boost_FOUND)
58+
diff --git a/Framework/CMakeLists.txt b/Framework/CMakeLists.txt
59+
--- a/Framework/CMakeLists.txt
60+
+++ b/Framework/CMakeLists.txt
61+
@@ -23,11 +23,11 @@
62+
# Search for the Python3 library
63+
find_package(Python3 COMPONENTS Interpreter Development)
64+
65+
+cmake_policy(SET CMP0167 NEW)
66+
# Search for Boost
67+
find_package(
68+
Boost REQUIRED
69+
- COMPONENTS system
70+
- log
71+
+ COMPONENTS log
72+
filesystem
73+
thread
74+
chrono
75+
diff --git a/Hcal/src/Hcal/HcalClusterProducer.cxx b/Hcal/src/Hcal/HcalClusterProducer.cxx
76+
--- a/Hcal/src/Hcal/HcalClusterProducer.cxx
77+
+++ b/Hcal/src/Hcal/HcalClusterProducer.cxx
78+
@@ -2,6 +2,7 @@
79+
80+
#include <exception>
81+
#include <iostream>
82+
+#include <list>
83+
84+
#include "Hcal/MyClusterWeight.h"
85+
#include "Hcal/TemplatedClusterFinder.h"

0 commit comments

Comments
 (0)