From 879fd93cf4efa0f6e839c95dc96277749f4f42d6 Mon Sep 17 00:00:00 2001 From: Sylvester Joosten <sjoosten@anl.gov> Date: Tue, 1 Jun 2021 17:55:15 +0000 Subject: [PATCH] Patch to temporarily address https://github.com/acts-project/acts/issues/822 --- spack.yaml | 2 +- spack/packages/acts/acts-822.patch | 31 ++++++++++++++++++++++++++++++ spack/packages/acts/package.py | 5 +++++ 3 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 spack/packages/acts/acts-822.patch diff --git a/spack.yaml b/spack.yaml index 2acd16acf..9d8370256 100644 --- a/spack.yaml +++ b/spack.yaml @@ -24,7 +24,7 @@ spack: - podio@0.13 - geant4@10.7.1 cxxstd=17 +opengl +vecgeom +x11 +qt ^qt +opengl - dd4hep@1.16.1 +geant4 +assimp +hepmc3 +ipo - - acts@8.02.0 +dd4hep +digitization +identification +json +tgeo +ipo + - acts@8.02.0p1 +dd4hep +digitization +identification +json +tgeo +ipo - gaudi@34.0 - dawn@3_91a - dawncut@1_54a diff --git a/spack/packages/acts/acts-822.patch b/spack/packages/acts/acts-822.patch new file mode 100644 index 000000000..8b9104720 --- /dev/null +++ b/spack/packages/acts/acts-822.patch @@ -0,0 +1,31 @@ +diff --git a/Core/src/Geometry/CylinderVolumeBuilder.cpp b/Core/src/Geometry/CylinderVolumeBuilder.cpp +index eba6f8617..950c5286b 100644 +--- a/Core/src/Geometry/CylinderVolumeBuilder.cpp ++++ b/Core/src/Geometry/CylinderVolumeBuilder.cpp +@@ -542,6 +542,7 @@ Acts::VolumeConfig Acts::CylinderVolumeBuilder::analyzeContent( + double zMaxD = center.z() + 0.5 * thickness; + lConfig.rMin = + std::min(lConfig.rMin, rMinD - m_cfg.layerEnvelopeR.first); ++ lConfig.rMin = std::max(0.0, lConfig.rMin); + lConfig.rMax = + std::max(lConfig.rMax, rMaxD + m_cfg.layerEnvelopeR.second); + lConfig.zMin = std::min(lConfig.zMin, zMinD - m_cfg.layerEnvelopeZ); +@@ -576,4 +577,4 @@ Acts::VolumeConfig Acts::CylinderVolumeBuilder::analyzeContent( + + // and return what you have + return lConfig; +-} +\ No newline at end of file ++} +diff --git a/Plugins/DD4hep/src/DD4hepLayerBuilder.cpp b/Plugins/DD4hep/src/DD4hepLayerBuilder.cpp +index 4d1695abf..455481538 100644 +--- a/Plugins/DD4hep/src/DD4hepLayerBuilder.cpp ++++ b/Plugins/DD4hep/src/DD4hepLayerBuilder.cpp +@@ -128,6 +128,7 @@ const Acts::LayerVector Acts::DD4hepLayerBuilder::endcapLayers( + std::abs(zMax - pl.max(Acts::binZ))}; + pl.envelope[Acts::binR] = {std::abs(rMin - pl.min(Acts::binR)), + std::abs(rMax - pl.max(Acts::binR))}; ++ pl.extent.ranges[Acts::binR] = {rMin, rMax}; + } + } else { + throw std::logic_error( diff --git a/spack/packages/acts/package.py b/spack/packages/acts/package.py index c86b6250f..eb788a546 100644 --- a/spack/packages/acts/package.py +++ b/spack/packages/acts/package.py @@ -37,6 +37,7 @@ class Acts(CMakePackage, CudaPackage): # Supported Acts versions version('master', branch='master') + version('8.02.0p1', commit='f25cf639915fc2ac65b03882ad3eb11fb037ed00') version('8.02.0', commit='f25cf639915fc2ac65b03882ad3eb11fb037ed00') version('8.01.0', commit='ccc8c77bbc011f3adc020c565a509815be0ea029') version('8.00.0', commit='50c972823144c007b406ae12d7ca25a1e0c35532') @@ -120,6 +121,10 @@ class Acts(CMakePackage, CudaPackage): variant('hepmc3', default=False, description='Build the HepMC3-based examples') variant('pythia8', default=False, description='Build the Pythia8-based examples') + ## Temporary patch for ACTS to address + ## https://github.com/acts-project/acts/issues/822 + patch('acts-822.patch', when='@8.02.0p1') + # Build dependencies # FIXME: Use spack's autodiff package once there is one depends_on('boost @1.62:1.69.99 +program_options +test', when='@:0.10.3') -- GitLab