Compare commits

...
Sign in to create a new pull request.

129 commits

Author SHA1 Message Date
Mattias Ellert
e8626580cf Fixes for gcc 16 2026-01-12 00:03:45 +01:00
Mattias Ellert
27b349be2a Fix test for stricter syntax in numpy 2.4.0 (backport) 2025-12-25 17:38:55 +01:00
Mattias Ellert
732511f3a6 Exclude tests for Fedora 43+ on s390x that fail due to hardware
acceleration in the zlib-ng library.
2025-12-20 12:41:20 +01:00
Mattias Ellert
64acc88ed1 Don't install the python modules twice
Fix Requires and Provides in the python3-root rpm
2025-12-18 13:08:34 +01:00
Mattias Ellert
bdcedb0537 Skip RPATH using -DCMAKE_SKIP_INSTALL_RPATH:BOOL=ON (replaces
previously used root specific -Drpath:BOOL=OFF no longer available)
Backport fixes to python module
Rebuild for pythia8 8.3.16
2025-12-13 12:55:11 +01:00
Mattias Ellert
bbcab50659 Update to 6.38.00
Removed subpackages: root-proof, root-proof-bench, root-proof-player,
    root-proof-sessionviewer, root-sql-mysql, root-sql-odbc, root-sql-pgsql
New subpackages: root-geom-checker, root-gui-treemap,
    root-tree-ntuple-browse, root-histv7
JsMVA python (sub)module dropped from python3-root package
Compile minuit2 with Open MP support
Dropped patches: 7
New patches: 4
2025-12-09 20:53:49 +01:00
Stephen Gallagher
32ec236e95
Rebuild for libarrow 22
Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
2025-10-29 09:28:19 -04:00
Jaroslav Škarvada
f287293ea9 - Rebuilt for new graphviz 2025-10-09 17:11:17 +02:00
Python Maint
84f092c91d Rebuilt for Python 3.14.0rc3 bytecode 2025-09-19 14:53:54 +02:00
Mattias Ellert
da1ca8ff8f Update sources 2025-08-28 06:37:03 +02:00
Mattias Ellert
66c113fcb0 Update to 6.36.04 2025-08-28 02:21:32 +02:00
Jerry James
18473dc6e6 Rebuild for tbb 2022.2.0 2025-08-20 15:52:02 -06:00
Jerry James
895043f78c Rebuild for tbb 2022.2.0 2025-08-20 15:39:40 -06:00
Mattias Ellert
c3014d3347 Fix typo in patch 2025-08-20 08:19:57 +02:00
Mattias Ellert
cb90d9590d Support libarrow 21 2025-08-20 06:32:28 +02:00
Orion Poplawski
3d242ce025 Rebuild for libarrow 21 2025-08-18 07:36:23 -06:00
Python Maint
146af48801 Rebuilt for Python 3.14.0rc2 bytecode 2025-08-15 15:16:09 +02:00
Orion Poplawski
e4856607de Rebuild for libarrow 21 2025-08-13 11:00:08 -06:00
Fedora Release Engineering
f25bdb0931 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-25 12:04:15 +00:00
Mattias Ellert
e076764de0 Disable two failing test for rawhide ppc64le 2025-07-13 18:59:06 +02:00
Mattias Ellert
3a74b8b610 Update to 6.36.02 2025-07-13 07:11:20 +02:00
Stephen Gallagher
2726b64fa0 Rebuilt for libarrow 20
Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
2025-07-10 19:21:27 -04:00
Mattias Ellert
0afdff9fae Add root-tree-ntuple and root-tree-ntuple-utils dependensies to root-core
(listed in root-config --libs)
Rename root-fonts package to root-font-files
Add optional test dependency python3-pandas now available in EPEL 10
Add dependency jupyter-notebook to root-jupyroot for EPEL 10.1 and later
Fix Python 3.14 refcount issues in tests
2025-06-21 05:38:04 +02:00
Mattias Ellert
6edd65804f Update to 6.36.00
Enable the R interface for EPEL 10.1
Removed subpackages: root-gui-qt5webdisplay, -hist-draw, -histv7 and -html
New subpackage: root-roofit-codegen
2025-06-09 14:00:51 +02:00
Python Maint
5a76613429 Rebuilt for Python 3.14 2025-06-03 15:33:23 +02:00
Iñaki Úcar
593e746266 R-maint-sig mass rebuild 2025-04-18 22:02:09 +02:00
Iñaki Úcar
ab1aa62b45 R-maint-sig mass rebuild 2025-04-18 20:42:27 +02:00
Iñaki Úcar
aaf51a11c7 R-maint-sig mass rebuild 2025-04-18 13:19:10 +02:00
Mattias Ellert
920e7b2575 Update to 6.34.08 2025-04-17 23:39:33 +02:00
Mattias Ellert
fe8a030c52 Update to 6.34.06
Drop patches accepted upstream or previously backported
2025-03-31 15:19:04 +02:00
Mattias Ellert
450c67721a Fix roofit/roostats test failures with gcc 15 2025-02-19 08:36:52 +01:00
Mattias Ellert
40be88f67c Update to 6.34.04
Drop patches accepted upstream or previously backported
2025-02-14 22:05:06 +01:00
Benjamin A. Beasley
71b6707207 Rebuilt for libarrow 19 2025-02-13 21:44:04 -05:00
Orion Poplawski
b1bbc0fadf Rebuild with gsl 2.8 2025-02-02 13:48:38 -07:00
Björn Esser
02870ffba1
Add explicit BR: libxcrypt-devel
Signed-off-by: Björn Esser <besser82@fedoraproject.org>
2025-02-01 19:57:12 +01:00
Mattias Ellert
3487b3a060 Apply patches to fix build with gcc 15
Enable roofit-multiprocess for EPEL 10 (dependencies available)
Rebuild for pythia8 8.3.13
2025-01-31 13:22:57 +01:00
Fedora Release Engineering
2ad57ba760 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-18 22:37:32 +00:00
Mattias Ellert
745e82c601 Don't add dependencies on root-roofit-multiprocess and root-roofit-zmq
to root-roofit-core for EPEL builds
2025-01-15 06:32:29 +01:00
Mattias Ellert
8d9fc44478 Adjust stressGraphics.ref
Build for EPEL 10
Disable the R interface for EPEL 10 (R not yet abailable)
Enable uring support for EPEL 9 (supported in kernel since RHEL 9.3)
2025-01-12 10:48:54 +01:00
Mattias Ellert
75f062bccd Update to 6.34.02
Build CLAD plugin
Removed package: root-roofit-dataframe-helpers
2024-12-26 10:59:52 +01:00
Richard W.M. Jones
cac5562c15 Rebuild for libarrow 18 2024-11-27 14:35:57 +00:00
Mattias Ellert
6b314d2ebb Update to 6.32.08 2024-11-14 22:31:01 +01:00
Mattias Ellert
5498e74caf Update to 6.32.06
Split out ROOT 7 dependent parts of root-browsable to a separate package
Split out ROOT 7 dependent parts of root-browserv7 to a separate package
2024-09-25 14:02:06 +02:00
Mattias Ellert
59f38a443a Re-enable Qt5 Web display for Fedora 41+ (qt5-qtwebengine fixed) 2024-08-21 16:38:38 +02:00
Mattias Ellert
1617973423 Update to 6.32.04
Drop patches accepted upstream
Disable Qt5 Web display for Fedora 41+ (broken qt5-qtwebengine package)
2024-08-16 06:35:34 +02:00
Mattias Ellert
dafa5d9be6 Update ROOT's R interface for Rcpp 1.0.13 2024-07-21 23:44:51 +02:00
Fedora Release Engineering
c960d44c7d Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-19 18:44:52 +00:00
Mattias Ellert
8bc319c318 Fixes for TUri class (PCRE2 compatibility)
Fix test failure with tbb 2021.13.0
2024-07-12 01:01:14 +02:00
Mattias Ellert
82f076284e Add openssl-devel-engine build requirement on Fedora 41+ 2024-07-11 21:27:50 +02:00
Mattias Ellert
c1e2a7a6b3 Update to 6.32.02
Drop paches accepted upstream
2024-06-18 17:15:43 +02:00
Mattias Ellert
ea27f7093b Add dependency on liburing-devel to root-io
Exclude failing tutorial-tmva-RBatchGenerator_filters_vectors-py test
  on aarch64 (Fedora 40+)
2024-06-18 04:22:08 +02:00
Mattias Ellert
4946c86aea Backport fix for failing test with Python 3.13 2024-06-10 22:42:59 +02:00
Python Maint
48045b2bdf Rebuilt for Python 3.13 2024-06-09 02:47:16 +02:00
Mattias Ellert
559fe2b850 Python 3.13 compatibility 2024-06-08 22:04:11 +02:00
Mattias Ellert
95f73fc33a Update to 6.32.00
Drop EPEL 8 build (now requires Python >= 3.7 ans tbb >= 2020)
Dropped patches: 12
New patches: 6
The JsMVA python module is now a submodule of the ROOT python module
The notebook package was merged with the JupyROOT package
2024-06-07 12:04:22 +02:00
Mattias Ellert
4d9bac3891 Rebuilt for libarrow.so.1601
Improved fontconfig support
2024-05-15 12:58:24 +02:00
Benjamin A. Beasley
0f2b684662 Do not test with Pandas on 32-bit architectures
https://bugzilla.redhat.com/show_bug.cgi?id=2263999
2024-04-28 08:30:34 -04:00
Iñaki Úcar
518c033b52 R-maint-sig mass rebuild 2024-04-25 16:16:49 +02:00
Mattias Ellert
fbaff99ab6 Rebuilt for libarrow.so.1600 2024-04-23 09:53:13 +02:00
Mattias Ellert
d22cdf6344 Update to 6.30.06 2024-04-05 15:37:21 +02:00
Mattias Ellert
29328ac08b Support StandardSymbolsPS.otf 2024-03-25 11:16:05 +01:00
Mattias Ellert
c2cd7682c3 Update to 6.30.04
Drop patch root-adjust-test-for-failures-on-aarch64-ppc64le-s390x.patch
  (accepted upstrem)
Exclude failing TClingDataMemberInfo.Offset test on s390x
2024-02-01 07:40:40 +01:00
Mattias Ellert
a5b9453dc4 Rebuilt for libarrow.so.1500 2024-01-26 23:46:38 +01:00
Mattias Ellert
65481a9244 Exclude failing gtest-math-matrix-test-testMatrixTSparse on Fedora 40
(aarch64, ppc64le and s390x)
2024-01-26 07:10:54 +01:00
Fedora Release Engineering
277c592ff2 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-22 11:52:28 +00:00
Jonathan Wakely
40040121b9 Rebuilt for TBB 2021.11 2024-01-17 23:46:44 +00:00
Mattias Ellert
63c341633f Define PYTHON_EXECUTABLE when calling cmake (Fixes EPEL 8 build) 2024-01-12 20:24:43 +01:00
Mattias Ellert
b4f122310f Adjust tests for zlib-ng 2023-12-21 21:31:38 +01:00
Mattias Ellert
735b7a8692 Use "standardsymbolsps" instead of "symbol" when searching for the
Symbols font in order to not find Noto Symbols instead
2023-12-18 20:23:26 +01:00
Mattias Ellert
9875b6b48a Exclude pyunittests-pyroot-numbadeclare test 2023-12-15 22:08:26 +01:00
Mattias Ellert
6d457ab71f Update to 6.30.02 2023-12-05 13:15:36 +01:00
Mattias Ellert
59989efa5f Update to 6.30.00
Removed subpackages: root-io-gfal and root-roofit-common
Dropped patches: 6
New patches: 6
2023-11-26 16:11:31 +01:00
Mattias Ellert
ae0a791925 Rebuilt for libarrow.so.1400 2023-11-02 12:45:23 +01:00
Mattias Ellert
fb5c22a14d Enable RooFit::MultiProcess on Fedroa 40+ 2023-11-01 13:42:56 +01:00
Mattias Ellert
85ea672407 Update to 6.28.08
New subpackage root-tmva-utils (split off from root-tmva)
Port to pcre2
2023-10-14 23:56:11 +02:00
Mattias Ellert
79c12df5ba Update to 6.28.06
Drop patches root-testRooAbsL-test-compares-two-doubles-and-fails.patch and
  root-strlcpy.patch (fixed upstream)
2023-09-06 23:23:03 +02:00
Mattias Ellert
d58a4c22ba Rebuilt for libarrow.so.1300 2023-08-06 06:49:55 +02:00
Fedora Release Engineering
879bb250d3 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-21 17:00:48 +00:00
Mattias Ellert
c3f7b6f7f1 Fix build on Fedora 39+ where glibc has strlcpy and strlcat
Enable build of root-gui-qt6webdisplay sub-package if Qt6 is available
2023-07-09 07:02:33 +02:00
Orion Poplawski
08cf4b36a2 Rebuilt for Python 3.12 2023-06-26 08:06:21 -06:00
Mattias Ellert
c39df0d6ce Update to 6.28.04
Drop patch root-RF-Rewrite-RooProdPdf.TestGetPartIntList-unit-test.patch
  (previously backported)
Enable Apache Arrow support (64 bit architectures only)
2023-05-09 21:38:39 +02:00
Iñaki Úcar
0de23e866b R-maint-sig mass rebuild 2023-04-21 12:42:03 +02:00
Mattias Ellert
3365b50fc9 Disable uring in EPEL 9 (liburing is available, but uring not
supported by kernel)
2023-03-23 03:47:57 +01:00
Mattias Ellert
088e995d07 Update to 6.28.02
Dropped patches: 13
New patches: 1
2023-03-22 21:46:20 +01:00
Mattias Ellert
b75f082179 Merge branch 'epel8' into rawhide 2023-03-20 20:39:10 +01:00
Mattias Ellert
a08fcbc5ad Update to 6.28.00
ROOT now uses llvm/clang version 13 (updated from version 9)
Clean up specfile by removing EPEL 7 conditionals
Drop dataframe, roofit and tmva-sofieparser on EPEL 8 ppc64le due to
  "pure virtual method called" errors
Split the root-geom sub-package into three separate sub-packages:
  root-geom, root-geom-builder and root-geom-painter
Enable uring support in EPEL 9 (liburing now available)
New sub-packages: root-geom-webviewer, root-roofit-jsoninterface,
  root-testsupport, root-tree-ntuple-utils, root-tree-webviewer,
  root-xroofit
Dropped patches: 31
New patches: 17
Updated patches: 4
2023-03-19 07:53:00 +01:00
Miro Hrončok
e41288dd18 Rebuilt to change Python shebangs to /usr/bin/python3.6 on EPEL 8
See https://lists.fedoraproject.org/archives/list/epel-devel@lists.fedoraproject.org/thread/RE3PG72B5AX7NTACPDSBGOWCMN7I3OQJ/
2023-01-30 22:16:05 +01:00
Mattias Ellert
1801745923 Adapt to numpy 1.24 2023-01-30 19:16:25 +01:00
Mattias Ellert
635da91690 Add missing #include <cstdint> 2023-01-21 08:32:07 +01:00
Fedora Release Engineering
6d31b558ee Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-20 19:53:22 +00:00
Maxwell G
bcb1ddcccf
Rebuild for cfitsio 4.2 2022-12-29 09:45:29 -10:00
Mattias Ellert
ab5d41c627 Update to 6.26.10
Drop patches root-Fixes-for-garbage-collection-in-Python-3.11.patch
  and root-Guard-gInterpreterMutex-in-TClingClassInfo-IsEnum.patch
  (fixed upstream)
Use different filenames in io/loopdir tests
Update root-test-timeout.patch to address one more issue
2022-11-17 13:06:43 +01:00
Mattias Ellert
75d8984496 Avoid race condition between C++ and Python version of a roofit test 2022-10-28 10:16:32 +02:00
Mattias Ellert
78faffb6b8 Update to 6.26.08
Drop patch root-move-private-decl.patch (fixed upstream)
Drop some previously backported patches
Rename patch root-blas-linking-and-ignore-prefix.patch (partially fixed)
Backport locking of gInterpreterMutex in TClingClassInfo::IsEnum
2022-10-21 05:11:01 +02:00
Mattias Ellert
521c5af35f Use upstream's proposed change for the Python garbage collection issue 2022-10-01 19:05:05 +02:00
Mamoru TASAKA
21a93fdb32 Rebuild for gsl-2.7.1 2022-08-23 17:37:01 +09:00
Mattias Ellert
7fb47abbc9 Use the json 3.11 fix upstream settled on 2022-08-19 14:16:54 +02:00
Mattias Ellert
ee45de2db7 Compatibility with nlohmann json 3.11+
Enable gfal support in EPEL 9 (gfal2 now available)
2022-08-17 23:19:25 +02:00
Mattias Ellert
4a05ecac34 Update to 6.26.06 2022-08-04 05:35:58 +02:00
Fedora Release Engineering
ddfa4e1c9b Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-23 00:57:28 +00:00
Mattias Ellert
b2e4c897d2 Don't use yuicompressor on Fedora (Java no longer available on ix86) 2022-07-18 23:37:13 +02:00
Mattias Ellert
dacf8d779a Backport python 3.11 fixes from upstream
Backport additional python 3.11 fixes from CPyCppyy upstream
Exclude some failing tests on Fedora 37+
  (segfaults during Python garbage collection with Python 3.11)
Adjust some test timeouts
2022-07-03 10:21:52 +02:00
Python Maint
9505e4b28a Rebuilt for Python 3.11 2022-06-15 14:00:40 +02:00
Mattias Ellert
a9b86f482f Update to 6.26.04
Drop patch root-missing-include.patch (accepted upstream)
2022-06-14 16:02:47 +02:00
Mattias Ellert
44203f1d1d Rebuild for gcc 12.1 (Fedora 36)
Update the root-tmva-threads patch
2022-05-20 14:43:55 +02:00
Mattias Ellert
51dd64e002 Rebuild for gcc 11.3 (Fedora 35)
Use upstream's version of the dataframe-snapshot on 32 bit patch
2022-04-29 14:26:18 +02:00
Mattias Ellert
4a99ec915c Update to 6.26.02
Drop patch root-roofit-overflow.patch (previously backported)
2022-04-18 04:04:24 +02:00
Mattias Ellert
2f8e3d96d1 Update to 6.24.04
New subpackages: root-roofit-common, root-roofit-dataframe-helpers,
  root-roofit-hs3, root-tmva-sofie and root-tmva-sofie-parser
Removed subpackages: root-memstat and root-montecarlo-vmc
Drop the doxygen generated root-doc package (doxygen runs out of memory)
Dropped patches: 17
New patches: 22
Updated patches: 5
2022-04-05 14:39:21 +02:00
Orion Poplawski
65aa8a7075 Rebuild for glew 2.2 2022-02-09 21:06:51 -07:00
Mattias Ellert
1ca8ad1517 Disable package note flags 2022-01-29 00:30:44 +01:00
Mattias Ellert
d28cfab6db Exclude failing test on Fedora 36 ppc64le:
test-stressHistFactory(-interpreted)
2022-01-28 21:28:20 +01:00
Fedora Release Engineering
79bc80ed33 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-21 17:57:47 +00:00
Mattias Ellert
530bdfbe23 Backport gcc 12 fix from LLVM
Fix test failure on ppc64le and aarch64 with gcc 12
2022-01-17 19:28:30 +01:00
Mattias Ellert
f57d1d575e Fix segfaults on ppc64le when using the large code model 2021-12-09 17:14:53 +01:00
Mattias Ellert
01b908fc8c Update to 6.24.06 2021-11-05 13:14:04 +01:00
Sahana Prasad
a96b0b3132 Rebuilt with OpenSSL 3.0.0 2021-09-14 19:13:40 +02:00
Mattias Ellert
19b1aedc98 Update to 6.24.04
Add dependency on json-devel to root-core
Disable uring in EPEL 8 (liburing is available, but uring not
  supported by kernel)
2021-08-28 13:11:27 +02:00
Mattias Ellert
1fd9670b71 Update to 6.24.02
ROOT now uses llvm/clang version 9 (updated from version 5)
No longer exclude arch s390x (better supported in llvm/clang 9)
Drop patches accepted upstream or previously backported
Backport some fixes that make more tests work
New subpackages: python{2,3}-distrdf, root-roofit-batchcompute
Require js-jsroot >= 6
2021-08-22 19:10:24 +02:00
Mattias Ellert
63048e8cb6 Drop the memstat module for Fedora 35+
The required __malloc_hook was removed from glibc 2.33.9000-48
  The memstat module is deprecated and will be removed in root 6.26
2021-07-26 20:54:55 +02:00
Fedora Release Engineering
f5f5cab0a0 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-23 11:32:11 +00:00
Mattias Ellert
76c3a41c1c Backport fix for jsroot loading in jupyterlab 2021-06-17 20:51:34 +02:00
Mattias Ellert
f34d998c21 Add configuration for jupyterlab 2021-06-14 11:20:14 +02:00
Mattias Ellert
37bb038cc9 cmake in EPEL 8 no longer provides cmake3 2021-06-13 08:55:01 +02:00
Python Maint
5bf9d68201 Rebuilt for Python 3.10 2021-06-04 21:13:47 +02:00
Mattias Ellert
c4fdaa5858 Use C++17 for Fedora 34+ (gcc 11) 2021-06-03 18:02:44 +02:00
Mattias Ellert
b1e3d73d24 Adapt to new Python RPM generators (empty .egg-info no longer works)
Filter out parts of tests that require remote network access instead of
  excluding the whole test
Fix multicore tests when running on machines with few cores
2021-06-01 09:42:05 +02:00
Jonathan Wakely
f21e05fd5f Rebuilt for removed libstdc++ symbols (#1937698) 2021-05-10 16:08:35 +01:00
Tomas Hrnciar
a49523d8a5 BuildRequire setuptools explicitly
See https://fedoraproject.org/wiki/Changes/Reduce_dependencies_on_python3-setuptools
2021-04-19 13:18:32 +02:00
Jonathan Wakely
07ab2f0b59 Rebuilt for removed libstdc++ symbol (#1937698) 2021-03-30 19:39:57 +01:00
53 changed files with 3230 additions and 6973 deletions

View file

@ -1,150 +0,0 @@
diff -ur root-6.22.00.orig/bindings/pyroot_legacy/ROOT.py root-6.22.00/bindings/pyroot_legacy/ROOT.py
--- root-6.22.00.orig/bindings/pyroot_legacy/ROOT.py 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot_legacy/ROOT.py 2020-06-29 09:07:41.574798580 +0200
@@ -438,9 +438,7 @@
# This function is injected as method to the respective classes in Pythonize.cxx.
_root._RDataFrameAsNumpy = _RDataFrameAsNumpy
-# This Pythonisation is there only for 64 bits builds
-if (sys.maxsize > 2**32): # https://docs.python.org/3/library/platform.html#cross-platform
- _root.CreateScopeProxy( "TTree" ).AsMatrix = _TTreeAsMatrix
+_root.CreateScopeProxy( "TTree" ).AsMatrix = _TTreeAsMatrix
### RINT command emulation ------------------------------------------------------
diff -ur root-6.22.00.orig/build/unix/makepchinput.py root-6.22.00/build/unix/makepchinput.py
--- root-6.22.00.orig/build/unix/makepchinput.py 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/build/unix/makepchinput.py 2020-06-29 09:07:41.639798769 +0200
@@ -252,9 +252,6 @@
"math/vdt",
"tmva/rmva"]
- if (sys.platform != 'win32' and sys.maxsize <= 2**32): # https://docs.python.org/3/library/platform.html#cross-platform
- PCHPatternsBlacklist.append("tree/dataframe")
-
accepted = isAnyPatternInString(PCHPatternsWhitelist,dirName) and \
not isAnyPatternInString(PCHPatternsBlacklist,dirName)
diff -ur root-6.22.00.orig/tree/dataframe/test/dataframe_cache.cxx root-6.22.00/tree/dataframe/test/dataframe_cache.cxx
--- root-6.22.00.orig/tree/dataframe/test/dataframe_cache.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/tree/dataframe/test/dataframe_cache.cxx 2020-06-29 09:07:41.640798772 +0200
@@ -224,8 +224,6 @@
}
-#ifdef R__B64
-
TEST(Cache, Regex)
{
@@ -335,8 +333,6 @@
gSystem->Unlink(fileName);
}
-#endif // R__B64
-
// ROOT-10563
TEST(Cache, Alias)
{
diff -ur root-6.22.00.orig/tree/dataframe/test/datasource_arrow.cxx root-6.22.00/tree/dataframe/test/datasource_arrow.cxx
--- root-6.22.00.orig/tree/dataframe/test/datasource_arrow.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/tree/dataframe/test/datasource_arrow.cxx 2020-06-29 09:07:41.645798787 +0200
@@ -177,8 +177,6 @@
}
#endif
-#ifdef R__B64
-
TEST(RArrowDS, FromARDF)
{
std::unique_ptr<RDataSource> tds(new RArrowDS(createTestTable(), {}));
@@ -250,5 +248,3 @@
}
#endif // R__USE_IMT
-
-#endif // R__B64
diff -ur root-6.22.00.orig/tree/dataframe/test/datasource_csv.cxx root-6.22.00/tree/dataframe/test/datasource_csv.cxx
--- root-6.22.00.orig/tree/dataframe/test/datasource_csv.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/tree/dataframe/test/datasource_csv.cxx 2020-06-29 09:07:41.645798787 +0200
@@ -195,8 +195,6 @@
}
#endif
-#ifdef R__B64
-
TEST(RCsvDS, FromARDF)
{
std::unique_ptr<RDataSource> tds(new RCsvDS(fileName0));
@@ -292,5 +290,3 @@
}
#endif // R__USE_IMT
-
-#endif // R__B64
diff -ur root-6.22.00.orig/tree/dataframe/test/datasource_root.cxx root-6.22.00/tree/dataframe/test/datasource_root.cxx
--- root-6.22.00.orig/tree/dataframe/test/datasource_root.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/tree/dataframe/test/datasource_root.cxx 2020-06-29 09:07:41.649798799 +0200
@@ -117,8 +117,6 @@
}
#endif
-#ifdef R__B64
-
TEST(TRootTDS, FromARDF)
{
std::unique_ptr<RDataSource> tds(new RRootDS(treeName, fileGlob));
@@ -190,5 +188,3 @@
}
#endif // R__USE_IMT
-
-#endif // R__B64
diff -ur root-6.22.00.orig/tree/dataframe/test/datasource_trivial.cxx root-6.22.00/tree/dataframe/test/datasource_trivial.cxx
--- root-6.22.00.orig/tree/dataframe/test/datasource_trivial.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/tree/dataframe/test/datasource_trivial.cxx 2020-06-29 09:07:41.654798814 +0200
@@ -132,8 +132,6 @@
EXPECT_EQ(*tdfAll.Count(), 20ULL);
}
-#ifdef R__B64
-
TEST(RTrivialDS, FromARDFWithJitting)
{
std::unique_ptr<RDataSource> tds(new RTrivialDS(32));
@@ -236,5 +234,3 @@
}
#endif // R__USE_IMT
-
-#endif // R__B64
diff -ur root-6.22.00.orig/tutorials/CMakeLists.txt root-6.22.00/tutorials/CMakeLists.txt
--- root-6.22.00.orig/tutorials/CMakeLists.txt 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/tutorials/CMakeLists.txt 2020-06-29 09:07:41.655798816 +0200
@@ -257,10 +257,6 @@
set(root7_veto v7/ntuple/ntpl004_dimuon.C)
endif()
-if( CMAKE_SIZEOF_VOID_P EQUAL 4 )
- set(bits32_veto dataframe/*.C graphs/timeSeriesFrom*.C v7/ntuple/ntpl004_dimuon.C)
-endif()
-
#---These ones are disabled !!! ------------------------------------
set(extra_veto
legacy/benchmarks.C
@@ -313,7 +309,6 @@
${classic_veto}
${pythia_veto}
${root7_veto}
- ${bits32_veto}
${xrootd_veto}
${mlp_veto}
${spectrum_veto}
@@ -526,7 +521,6 @@
list(REMOVE_ITEM pytutorials ${pyveto})
if(NOT dataframe)
- set(dataframe_veto_py dataframe/*.py)
file(GLOB dataframe_veto_py RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} dataframe/*.py tmva/tmva*.py)
list(REMOVE_ITEM pytutorials ${dataframe_veto_py})
list(REMOVE_ITEM pytutorials

View file

@ -1,7 +1,7 @@
From 70d941cd6ebbc3726e08ef7f52d0135453f0b840 Mon Sep 17 00:00:00 2001
From 55446dcd6eabc1fff218f266c11f31697fe99f09 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Fri, 13 Mar 2020 16:21:55 +0100
Subject: [PATCH 2/3] Run tests on 32 bit
Subject: [PATCH] Run tests on 32 bit
---
test/stressGeometry.cxx | 8 --------
@ -9,7 +9,7 @@ Subject: [PATCH 2/3] Run tests on 32 bit
2 files changed, 3 insertions(+), 15 deletions(-)
diff --git a/test/stressGeometry.cxx b/test/stressGeometry.cxx
index 5e81f5f2ca..18e41a6f45 100644
index f8d78f4f54..617b9e1644 100644
--- a/test/stressGeometry.cxx
+++ b/test/stressGeometry.cxx
@@ -257,14 +257,6 @@ void stressGeometry(const char *exp="*", Bool_t generate_ref=kFALSE, Bool_t vecg
@ -28,26 +28,26 @@ index 5e81f5f2ca..18e41a6f45 100644
TString fname;
for (i=0; i<NG; i++) {
diff --git a/tree/tree/test/CMakeLists.txt b/tree/tree/test/CMakeLists.txt
index 0c1a39d01e..3bafe47934 100644
index 5bb222edc5..f29a17801d 100644
--- a/tree/tree/test/CMakeLists.txt
+++ b/tree/tree/test/CMakeLists.txt
@@ -12,13 +12,9 @@ ROOT_ADD_GTEST(testTOffsetGeneration TOffsetGeneration.cxx ElementStruct.cxx Ele
@@ -17,13 +17,9 @@ endif()
target_include_directories(testTOffsetGeneration PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
ROOT_STANDARD_LIBRARY_PACKAGE(SillyStruct NO_INSTALL_HEADERS HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/SillyStruct.h SOURCES SillyStruct.cxx LINKDEF SillyStructLinkDef.h DEPENDENCIES RIO)
ROOT_ADD_GTEST(testBulkApi BulkApi.cxx LIBRARIES RIO Tree TreePlayer)
-#FIXME: tests are having timeout on 32bit CERN VM (in docker container everything is fine),
-# to be reverted after investigation.
-if(NOT CMAKE_SIZEOF_VOID_P EQUAL 4)
- ROOT_ADD_GTEST(testBulkApiMultiple BulkApiMultiple.cxx LIBRARIES RIO Tree TreePlayer)
- ROOT_ADD_GTEST(testBulkApiMultiple BulkApiMultiple.cxx LIBRARIES RIO Tree TreePlayer TIMEOUT 3000)
- ROOT_ADD_GTEST(testBulkApiVarLength BulkApiVarLength.cxx LIBRARIES RIO Tree TreePlayer)
- ROOT_ADD_GTEST(testBulkApiSillyStruct BulkApiSillyStruct.cxx LIBRARIES RIO Tree TreePlayer SillyStruct)
-endif()
+ROOT_ADD_GTEST(testBulkApiMultiple BulkApiMultiple.cxx LIBRARIES RIO Tree TreePlayer)
+ROOT_ADD_GTEST(testBulkApiMultiple BulkApiMultiple.cxx LIBRARIES RIO Tree TreePlayer TIMEOUT 3000)
+ROOT_ADD_GTEST(testBulkApiVarLength BulkApiVarLength.cxx LIBRARIES RIO Tree TreePlayer)
+ROOT_ADD_GTEST(testBulkApiSillyStruct BulkApiSillyStruct.cxx LIBRARIES RIO Tree TreePlayer SillyStruct)
ROOT_ADD_GTEST(testTBasket TBasket.cxx LIBRARIES RIO Tree)
ROOT_ADD_GTEST(testTBranch TBranch.cxx LIBRARIES RIO Tree MathCore)
ROOT_ADD_GTEST(testTIOFeatures TIOFeatures.cxx LIBRARIES RIO Tree)
--
2.24.1
2.45.1

View file

@ -0,0 +1,49 @@
From f7bfa429deb9dbae9058998888bbcaa84af0ca08 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Tue, 2 Dec 2025 05:33:31 +0100
Subject: [PATCH] Adjust test/stressGraphics.ref
---
test/stressGraphics.ref | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/test/stressGraphics.ref b/test/stressGraphics.ref
index 2498ec6d755..4520a5ab113 100644
--- a/test/stressGraphics.ref
+++ b/test/stressGraphics.ref
@@ -10,11 +10,11 @@ Test# PS1Ref# PS1Err# PDFRef# PDFErr# JPGRef# JPGErr# PNGRef# PN
9 9253 100 14377 150 19851 2400 12199 900 9283 100
10 8863 70 13645 100 24343 1100 23278 1700 8894 70
11 12971 100 14750 50 34063 2000 32033 1200 13070 150
- 12 7674 100 13533 50 83557 3000 38505 4000 7720 150
- 13 5600 400 13242 300 16881 400 15063 800 5638 400
+ 12 7674 100 13533 100 83557 3000 38505 4000 7720 150
+ 13 5600 400 13242 400 16881 400 15063 800 5638 400
14 14190539 4000000 12926 100 23076 9500 25987 3000 14190704 4000000
15 15690 5000 17179 200 23076 9500 14232 1500 10437 5000
- 16 28072 400 23520 200 44462 11000 30062 5000 38007 400
+ 16 28072 400 23520 250 44462 11000 30062 5000 38007 400
17 20444 400 21520 150 27511 11000 16867 600 20721 400
18 15894 100 19305 200 27187 10300 15925 350 15925 100
19 22521 300 42926 250 43868 17000 19232 11000 22729 300
@@ -44,7 +44,7 @@ Test# PS1Ref# PS1Err# PDFRef# PDFErr# JPGRef# JPGErr# PNGRef# PN
43 207729 750 87126 750 76094 38000 54717 11000 210497 800
44 401670 6500 156361 2000 62719 34100 45592 14000 410114 6500
45 566142 5000 225206 2000 65828 31800 53934 6500 573396 5000
- 46 3738751 35000 1292739 12000 60580 9900 133547 3500 3783013 35000
+ 46 3738751 35000 1292739 13000 60580 9900 133547 3500 3783013 35000
47 1466028 9000 853193 50000 38425 13500 91242 18100 1463263 7500
48 38312 200 56877 750 36524 11800 119641 8000 38121 200
49 19556 1000 31967 1000 36859 10000 37602 8000 19900 3000
@@ -53,7 +53,7 @@ Test# PS1Ref# PS1Err# PDFRef# PDFErr# JPGRef# JPGErr# PNGRef# PN
52 270825 10000 115500 1000 45496 11000 34685 5000 272950 10000
53 15025 3000 29289 500 42525 11300 33336 3900 14787 4000
54 254604 5000 383258 7000 55666 30400 46534 6500 259594 7000
- 55 4846 150 14075 150 33239 600 25303 500 4877 150
+ 55 4846 150 14075 200 33239 600 25303 500 4877 150
56 1435879 150000 12837 100 25830 100 365000 15000 1085792 250000
57 5884 500 16577 200 40706 14000 30026 4000 5884 500
58 5723 700 15720 200 32236 11000 16916 3200 5670 800
--
2.52.0

View file

@ -0,0 +1,32 @@
From 40f8cd0adeb7257778c789e1ae639f260780402b Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Sun, 7 Dec 2025 19:30:55 +0100
Subject: [PATCH] Fix a numpy test for 32 bit archs
The default dtype used in numpy array is "int". This type has
different sizes on 32 and 64 bit architectures. The test tries to use
the numpy array as a Long64_t dataframe. On 32 bit architectures this
results in an error.
This commit explicitly changes the numpy array's dtype to "int64" to
match the Long64_t dataframe type on all architectyres.
---
bindings/pyroot/pythonizations/test/rdataframe_misc.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/bindings/pyroot/pythonizations/test/rdataframe_misc.py b/bindings/pyroot/pythonizations/test/rdataframe_misc.py
index 1a1efd21b3e..150828613b3 100644
--- a/bindings/pyroot/pythonizations/test/rdataframe_misc.py
+++ b/bindings/pyroot/pythonizations/test/rdataframe_misc.py
@@ -132,7 +132,7 @@ class RDataFrameMisc(unittest.TestCase):
return
out_path = "dataframe_misc_regression_gh20291.root"
try:
- x, y = numpy.array([1, 2, 3]), numpy.array([4, 5, 6])
+ x, y = numpy.array([1, 2, 3], dtype='int64'), numpy.array([4, 5, 6], dtype='int64')
df = ROOT.RDF.FromNumpy({"x": x, "y": y})
df.Snapshot("tree", out_path)
--
2.52.0

View file

@ -1,14 +0,0 @@
diff -ur root-6.14.00.orig/interpreter/llvm/src/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h root-6.14.00/interpreter/llvm/src/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h
--- root-6.14.00.orig/interpreter/llvm/src/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h 2018-06-13 12:10:40.000000000 +0200
+++ root-6.14.00/interpreter/llvm/src/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h 2018-06-27 17:05:07.750663216 +0200
@@ -713,8 +713,8 @@
uint32_t getTrampolineSize() const { return RemoteTrampolineSize; }
- Expected<std::vector<char>> readMem(char *Dst, JITTargetAddress Src,
- uint64_t Size) {
+ Expected<std::vector<uint8_t>> readMem(char *Dst, JITTargetAddress Src,
+ uint64_t Size) {
// Check for an 'out-of-band' error, e.g. from an MM destructor.
if (ExistingError)
return std::move(ExistingError);

View file

@ -0,0 +1,63 @@
From 0e1e1f0ba1908ae1020337ed7ec0565bf979b92c Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Tue, 2 Dec 2025 04:57:30 +0100
Subject: [PATCH] [Geom] Add missing includes of TMath.h
---
geom/geombuilder/src/TGeoParaEditor.cxx | 1 +
geom/geombuilder/src/TGeoPconEditor.cxx | 1 +
geom/geombuilder/src/TGeoPgonEditor.cxx | 1 +
geom/geombuilder/src/TGeoTrapEditor.cxx | 1 +
4 files changed, 4 insertions(+)
diff --git a/geom/geombuilder/src/TGeoParaEditor.cxx b/geom/geombuilder/src/TGeoParaEditor.cxx
index fdc344ba4d2..bd173607d2c 100644
--- a/geom/geombuilder/src/TGeoParaEditor.cxx
+++ b/geom/geombuilder/src/TGeoParaEditor.cxx
@@ -27,6 +27,7 @@ Editor for a TGeoPara.
#include "TVirtualGeoPainter.h"
#include "TVirtualPad.h"
#include "TView.h"
+#include "TMath.h"
#include "TGButton.h"
#include "TGTextEntry.h"
#include "TGNumberEntry.h"
diff --git a/geom/geombuilder/src/TGeoPconEditor.cxx b/geom/geombuilder/src/TGeoPconEditor.cxx
index a66359853be..50598d2cb90 100644
--- a/geom/geombuilder/src/TGeoPconEditor.cxx
+++ b/geom/geombuilder/src/TGeoPconEditor.cxx
@@ -27,6 +27,7 @@ Editor for a TGeoPcon.
#include "TVirtualGeoPainter.h"
#include "TVirtualPad.h"
#include "TView.h"
+#include "TMath.h"
#include "TGCanvas.h"
#include "TGButton.h"
#include "TGTextEntry.h"
diff --git a/geom/geombuilder/src/TGeoPgonEditor.cxx b/geom/geombuilder/src/TGeoPgonEditor.cxx
index 949d0045a66..33638d66b2b 100644
--- a/geom/geombuilder/src/TGeoPgonEditor.cxx
+++ b/geom/geombuilder/src/TGeoPgonEditor.cxx
@@ -27,6 +27,7 @@ Editor for a TGeoPgon.
#include "TVirtualGeoPainter.h"
#include "TVirtualPad.h"
#include "TView.h"
+#include "TMath.h"
#include "TGTextEntry.h"
#include "TGNumberEntry.h"
#include "TGLabel.h"
diff --git a/geom/geombuilder/src/TGeoTrapEditor.cxx b/geom/geombuilder/src/TGeoTrapEditor.cxx
index d9c2916d075..459e0191117 100644
--- a/geom/geombuilder/src/TGeoTrapEditor.cxx
+++ b/geom/geombuilder/src/TGeoTrapEditor.cxx
@@ -27,6 +27,7 @@ Editor for a TGeoTrap.
#include "TVirtualGeoPainter.h"
#include "TVirtualPad.h"
#include "TView.h"
+#include "TMath.h"
#include "TGButton.h"
#include "TGTextEntry.h"
#include "TGNumberEntry.h"
--
2.52.0

View file

@ -1,23 +0,0 @@
diff -ur root-6.14.00.orig/interpreter/llvm/src/lib/Target/PowerPC/PPCISelLowering.cpp root-6.14.00/interpreter/llvm/src/lib/Target/PowerPC/PPCISelLowering.cpp
--- root-6.14.00.orig/interpreter/llvm/src/lib/Target/PowerPC/PPCISelLowering.cpp 2018-06-13 12:10:40.000000000 +0200
+++ root-6.14.00/interpreter/llvm/src/lib/Target/PowerPC/PPCISelLowering.cpp 2018-06-27 17:06:55.739506085 +0200
@@ -11861,6 +11861,11 @@
N->getOperand(1).getValueType() == MVT::i16 ||
(Subtarget.hasLDBRX() && Subtarget.isPPC64() &&
N->getOperand(1).getValueType() == MVT::i64))) {
+ // STBRX can only handle simple types.
+ EVT mVT = cast<StoreSDNode>(N)->getMemoryVT();
+ if (mVT.isExtended())
+ break;
+
SDValue BSwapOp = N->getOperand(1).getOperand(0);
// Do an any-extend to 32-bits if this is a half-word input.
if (BSwapOp.getValueType() == MVT::i16)
@@ -11868,7 +11873,6 @@
// If the type of BSWAP operand is wider than stored memory width
// it need to be shifted to the right side before STBRX.
- EVT mVT = cast<StoreSDNode>(N)->getMemoryVT();
if (Op1VT.bitsGT(mVT)) {
int Shift = Op1VT.getSizeInBits() - mVT.getSizeInBits();
BSwapOp = DAG.getNode(ISD::SRL, dl, Op1VT, BSwapOp,

View file

@ -1,27 +0,0 @@
diff -ur root-6.12.04.orig/interpreter/llvm/src/lib/Target/PowerPC/PPCISelLowering.cpp root-6.12.04/interpreter/llvm/src/lib/Target/PowerPC/PPCISelLowering.cpp
--- root-6.12.04.orig/interpreter/llvm/src/lib/Target/PowerPC/PPCISelLowering.cpp 2017-12-13 08:27:42.000000000 +0100
+++ root-6.12.04/interpreter/llvm/src/lib/Target/PowerPC/PPCISelLowering.cpp 2018-01-11 12:40:14.956914822 +0100
@@ -7448,9 +7448,11 @@
/// - The node is a "load-and-splat"
/// In all other cases, we will choose to keep the BUILD_VECTOR.
static bool haveEfficientBuildVectorPattern(BuildVectorSDNode *V,
- bool HasDirectMove) {
+ bool HasDirectMove,
+ bool HasP8Vector) {
EVT VecVT = V->getValueType(0);
- bool RightType = VecVT == MVT::v2f64 || VecVT == MVT::v4f32 ||
+ bool RightType = VecVT == MVT::v2f64 ||
+ (HasP8Vector && VecVT == MVT::v4f32) ||
(HasDirectMove && (VecVT == MVT::v2i64 || VecVT == MVT::v4i32));
if (!RightType)
return false;
@@ -7612,7 +7614,8 @@
// lowered to VSX instructions under certain conditions.
// Without VSX, there is no pattern more efficient than expanding the node.
if (Subtarget.hasVSX() &&
- haveEfficientBuildVectorPattern(BVN, Subtarget.hasDirectMove()))
+ haveEfficientBuildVectorPattern(BVN, Subtarget.hasDirectMove(),
+ Subtarget.hasP8Vector()))
return Op;
return SDValue();
}

View file

@ -0,0 +1,70 @@
From f09b4ce027b31dcd19ea8a398c35c5dfbcc0507f Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Thu, 18 Dec 2025 11:49:12 +0100
Subject: [PATCH] [PyROOT] Don't install the python modules twice
The binary python modules were moved one directory level down into the
ROOT and cppyy directories, so that they reside alongside the python
files in the same directories. The install rule for the python files
must therefore be extended to exclude the binary modules (PATTERN *.so
EXCLUDE) so that these are not installed a second time overwriting the
files installed by the install rule for the binary modules with another
copy with the wrong file permissions.
Also use the no-version option for the cppyy binary module as is
already done for the pythonization binary module, since it is now
installed in the python directory. Before it was installed in the
library directory with an unversioned symlink in the python directory.
---
bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt | 2 +-
bindings/pyroot/cppyy/cppyy/CMakeLists.txt | 5 +++--
bindings/pyroot/pythonizations/CMakeLists.txt | 3 ++-
3 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt b/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt
index bb48c032974..065a89348ff 100644
--- a/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt
+++ b/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt
@@ -73,7 +73,7 @@ endif()
add_library(cppyy SHARED src/CPyCppyyPyModule.cxx)
# Set the suffix to '.so' and the prefix to 'lib'
-set_target_properties(cppyy PROPERTIES ${ROOT_LIBRARY_PROPERTIES}
+set_target_properties(cppyy PROPERTIES ${ROOT_LIBRARY_PROPERTIES_NO_VERSION}
LIBRARY_OUTPUT_DIRECTORY ${localruntimedir}/cppyy)
if(MSVC)
target_link_libraries(cppyy PRIVATE CPyCppyy)
diff --git a/bindings/pyroot/cppyy/cppyy/CMakeLists.txt b/bindings/pyroot/cppyy/cppyy/CMakeLists.txt
index 3a29b4525f7..842ad12df97 100644
--- a/bindings/pyroot/cppyy/cppyy/CMakeLists.txt
+++ b/bindings/pyroot/cppyy/cppyy/CMakeLists.txt
@@ -31,8 +31,9 @@ endforeach()
# Install Python sources and bytecode
install(DIRECTORY ${localruntimedir}/cppyy
DESTINATION ${CMAKE_INSTALL_PYTHONDIR}
- COMPONENT libraries)
+ COMPONENT libraries
+ PATTERN *.so EXCLUDE)
if(NOT MSVC)
ROOT_ADD_TEST_SUBDIRECTORY(test)
-endif()
\ No newline at end of file
+endif()
diff --git a/bindings/pyroot/pythonizations/CMakeLists.txt b/bindings/pyroot/pythonizations/CMakeLists.txt
index 1230f18ca47..b415ba13697 100644
--- a/bindings/pyroot/pythonizations/CMakeLists.txt
+++ b/bindings/pyroot/pythonizations/CMakeLists.txt
@@ -239,7 +239,8 @@ install(TARGETS ${libname} EXPORT ${CMAKE_PROJECT_NAME}Exports
# Install Python sources and bytecode
install(DIRECTORY ${localruntimedir}/ROOT
DESTINATION ${CMAKE_INSTALL_PYTHONDIR}
- COMPONENT libraries)
+ COMPONENT libraries
+ PATTERN *.so EXCLUDE)
# Install headers required by pythonizations
install(FILES ${PYROOT_EXTRA_HEADERS}
--
2.52.0

View file

@ -0,0 +1,82 @@
From d5135f7869406396b3ba8e944c71dbdd67d3ea01 Mon Sep 17 00:00:00 2001
From: Jonas Rembser <jonas.rembser@cern.ch>
Date: Tue, 23 Dec 2025 19:04:45 +0100
Subject: [PATCH] [Python] Fix TF1 Pythonization test for NumPy 2.4.0
The new NumPy 2.4.0 is more strict when implicitly converting 1-element
arrays to scalars. It doesn't do that anymore, causing the TF1
Pythonization tests to fail (see log below).
This actually pointed to a real mistake in setting up the test, where a
2D array was used to define the TFormula parameters while it should be a
1D array.
```txt
962/3718 Test #93: pyunittests-bindings-pyroot-pythonizations-pyroot-pyz-tf-pycallables ..............................***Failed 3.05 sec
test_callable (tf_pycallables.TF1.test_callable)
Test function provided as callable ... ok
test_evalpar (tf_pycallables.TF1.test_evalpar)
Test the 2D Numpy array pythonizations for TF1::EvalPar ... ERROR
test_evalpar_dynamic (tf_pycallables.TF1.test_evalpar_dynamic)
Test the 2D NumPy pythonizations with dynamic TF1 data dimensions ... ok
test_fitgauss (tf_pycallables.TF1.test_fitgauss)
Test fitting a histogram to a Python function ... ok
test_identity (tf_pycallables.TF1.test_identity)
Test simple function without parameters ... ok
test_params (tf_pycallables.TF1.test_params)
Test function with parameters ... ok
test_params (tf_pycallables.TF2.test_params)
Test function with parameters ... ok
test_params (tf_pycallables.TF3.test_params)
Test function with parameters ... ok
======================================================================
ERROR: test_evalpar (tf_pycallables.TF1.test_evalpar)
Test the 2D Numpy array pythonizations for TF1::EvalPar
----------------------------------------------------------------------
Traceback (most recent call last):
File "/github/home/ROOT-CI/src/bindings/pyroot/pythonizations/test/tf_pycallables.py", line 129, in test_evalpar
expected_value = pyf_tf1_coulomb(x[i, ::2], params)
File "/github/home/ROOT-CI/src/bindings/pyroot/pythonizations/test/tf_pycallables.py", line 33, in pyf_tf1_coulomb
return p[1] * x[0] * x[1] / (p[0]**2) * math.exp(-p[2] / p[0])
~~~~~~~~^^^^^^^^^^^^^^
TypeError: only 0-dimensional arrays can be converted to Python scalars
----------------------------------------------------------------------
Ran 8 tests in 1.469s
FAILED (errors=1)
CMake Error at /github/home/ROOT-CI/src/cmake/modules/RootTestDriver.cmake:232 (message):
error code: 1
```
---
.../pyroot/pythonizations/test/tf_pycallables.py | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/bindings/pyroot/pythonizations/test/tf_pycallables.py b/bindings/pyroot/pythonizations/test/tf_pycallables.py
index 2a7d6b72462..5a223030ec9 100644
--- a/bindings/pyroot/pythonizations/test/tf_pycallables.py
+++ b/bindings/pyroot/pythonizations/test/tf_pycallables.py
@@ -116,11 +116,13 @@ class TF1(unittest.TestCase):
[3.0, 10, 4.0]
])
- params = np.array([
- [1.0], # Distance between charges r
- [8.99e9], # Coulomb constant k (in N·m²/C²)
- [0.1] # Additional factor for modulation
- ])
+ params = np.array(
+ [
+ 1.0, # Distance between charges r
+ 8.99e9, # Coulomb constant k (in N·m²/C²)
+ 0.1, # Additional factor for modulation
+ ]
+ )
# Slice to avoid the dummy column of 10's
res = rtf1_coulomb.EvalPar(x[:, ::2], params)
--
2.52.0

View file

@ -0,0 +1,50 @@
From e1f42658629ad67ce7cb224a1379d133f61f2e35 Mon Sep 17 00:00:00 2001
From: Jonas Rembser <jonas.rembser@cern.ch>
Date: Sun, 11 Jan 2026 10:25:51 +0100
Subject: [PATCH] [RF] Use TRandom3 in test RooFuncWrapper
Use TRandom3 instead of the `<random>` to get compiler-independent,
reproducible behavior.
---
roofit/roofitcore/test/testRooFuncWrapper.cxx | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/roofit/roofitcore/test/testRooFuncWrapper.cxx b/roofit/roofitcore/test/testRooFuncWrapper.cxx
index 2ebdf95333f..189e8f2e266 100644
--- a/roofit/roofitcore/test/testRooFuncWrapper.cxx
+++ b/roofit/roofitcore/test/testRooFuncWrapper.cxx
@@ -34,12 +34,12 @@
#include <RooWorkspace.h>
#include <ROOT/StringUtils.hxx>
+#include <TMath.h>
#include <TROOT.h>
+#include <TRandom3.h>
#include <TSystem.h>
-#include <TMath.h>
#include <functional>
-#include <random>
#include "gtest_wrapper.h"
@@ -66,13 +66,13 @@ double getNumDerivative(const RooAbsReal &pdf, RooRealVar &var, const RooArgSet
void randomizeParameters(const RooArgSet &parameters)
{
+ TRandom3 rng(1337);
+
double lowerBound = -0.1;
double upperBound = 0.1;
- std::uniform_real_distribution<double> unif(lowerBound, upperBound);
- std::default_random_engine re;
for (auto *param : parameters) {
- double mul = unif(re);
+ double mul = rng.Uniform(lowerBound, upperBound);
auto par = dynamic_cast<RooAbsRealLValue *>(param);
if (!par)
--
2.52.0

View file

@ -0,0 +1,60 @@
From 4da50ef374cd231163dff77493f9367cd62583d9 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Sun, 30 Mar 2025 21:23:14 +0200
Subject: [PATCH] Revert "[test] Fetch the geometries from EOS and not from the
website"
This reverts commit a8a879ce252e45405452db38d9178c7883582a7d.
---
test/stressGeometry.cxx | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/test/stressGeometry.cxx b/test/stressGeometry.cxx
index 7fb6bf97e7..f8d78f4f54 100644
--- a/test/stressGeometry.cxx
+++ b/test/stressGeometry.cxx
@@ -1,6 +1,6 @@
// Program to check a TGeo geometry
// The first time you run this program, the geometry files will be taken
-// from /eos/root-eos/testfiles/ (previously from http://root.cern/files)
+// from http://root.cern/files
//
// How the program works
// If the file <geom_name>_ref.root does not exist, it is generated. The file
@@ -274,13 +274,13 @@ void stressGeometry(const char *exp="*", Bool_t generate_ref=kFALSE, Bool_t vecg
delete gGeoManager;
gGeoManager = 0;
}
- TGeoManager::Import(Form("root://eospublic.cern.ch//eos/root-eos/testfiles/%s",fname.Data()));
+ TGeoManager::Import(Form("http://root.cern/files/%s",fname.Data()));
if (!gGeoManager) return;
if (vecgeom) TVirtualGeoConverter::Instance()->ConvertGeometry();
fname = TString::Format("files/%s_ref_%d.root", exps[i],versions[i]);
- if (gen_ref || !TFile::Open(Form("root://eospublic.cern.ch//eos/root-eos/testfiles//%s_ref_%d.root",exps[i],versions[i]),"CACHEREAD")) {
+ if (gen_ref || !TFile::Open(Form("http://root.cern/files/%s_ref_%d.root",exps[i],versions[i]),"CACHEREAD")) {
if (!gen_ref) fprintf(stderr,"File: %s does not exist, generating it\n", fname.Data());
else fprintf(stderr,"Generating reference file %s\n", fname.Data());
WriteRef(i);
@@ -320,7 +320,7 @@ void ReadRef(Int_t kexp) {
TFile *f = 0;
//use ref_[version[i]] files
if (!gen_ref)
- fname = TString::Format("root://eospublic.cern.ch//eos/root-eos/testfiles//%s_ref_%d.root", exps[kexp],versions[kexp]);
+ fname = TString::Format("http://root.cern/files/%s_ref_%d.root", exps[kexp],versions[kexp]);
else
fname.Format("files/%s_ref_%d.root", exps[kexp],versions[kexp]);
@@ -546,7 +546,7 @@ void InspectDiff(const char* exp="alice",Long64_t ientry=-1) {
Float_t rad = 0.;
TString fname(TString::Format("%s.root",exp));
if (gSystem->AccessPathName(fname)) {
- TGeoManager::Import(Form("root://eospublic.cern.ch//eos/root-eos/testfiles//%s",fname.Data()));
+ TGeoManager::Import(Form("http://root.cern/files/%s",fname.Data()));
} else {
TGeoManager::Import(fname);
}
--
2.49.0

View file

@ -0,0 +1,47 @@
From 98a5042a02dd7c1aaa9fbd5e54c8620c6b72484f Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Mon, 2 Jun 2025 21:22:39 +0200
Subject: [PATCH] Save memory. Do not link to LLVM libraries in parallel
---
core/clingutils/test/CMakeLists.txt | 3 +++
interpreter/CppInterOp/unittests/CppInterOp/CMakeLists.txt | 6 ++++++
2 files changed, 9 insertions(+)
diff --git a/core/clingutils/test/CMakeLists.txt b/core/clingutils/test/CMakeLists.txt
index a6c7aedac99..90ac0139c24 100644
--- a/core/clingutils/test/CMakeLists.txt
+++ b/core/clingutils/test/CMakeLists.txt
@@ -36,3 +36,6 @@ if(NOT builtin_clang)
endif()
ROOT_ADD_UNITTEST_DIR(Core ${CLING_LIBRARIES} $<TARGET_OBJECTS:ClingUtils>)
+
+# Save memory. Do not link to LLVM libraries in parallel
+add_dependencies(coreclingutilstestUnit CppInterOpTests)
diff --git a/interpreter/CppInterOp/unittests/CppInterOp/CMakeLists.txt b/interpreter/CppInterOp/unittests/CppInterOp/CMakeLists.txt
index 4b4b43bdd29..a028802fedc 100644
--- a/interpreter/CppInterOp/unittests/CppInterOp/CMakeLists.txt
+++ b/interpreter/CppInterOp/unittests/CppInterOp/CMakeLists.txt
@@ -66,6 +66,9 @@ target_link_libraries(CppInterOpTests
clangCppInterOp
)
+# Save memory. Do not link to LLVM libraries in parallel
+add_dependencies(CppInterOpTests DynamicLibraryManagerTests)
+
set_output_directory(CppInterOpTests
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/${EXTRA_PATH_TEST_BINARIES}
LIBRARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/${EXTRA_PATH_TEST_BINARIES}
@@ -129,5 +132,8 @@ set_output_directory(DynamicLibraryManagerTests
add_dependencies(DynamicLibraryManagerTests TestSharedLib)
+# Save memory. Do not link to LLVM libraries in parallel
+add_dependencies(DynamicLibraryManagerTests Cling)
+
#export_executable_symbols_for_plugins(TestSharedLib)
add_subdirectory(TestSharedLib)
--
2.52.0

View file

@ -0,0 +1,34 @@
From fd18e83ae79760f7e8cca6f28b6d0f89d912b152 Mon Sep 17 00:00:00 2001
From: Jonas Rembser <jonas.rembser@cern.ch>
Date: Wed, 26 Nov 2025 12:40:03 +0100
Subject: [PATCH] [VecOps] Remove outdated `IsSmall` helper function in tests
The commit 2605710bea7b1 changed from using the `ROOT::Detail::VecOps::`
namespace explicitly for `IsSmall` to a `using` statement. However,
there was also a remnant `IsSmall` function with an outdated
implementation in the test file itself, which we can now remove.
---
math/vecops/test/vecops_rvec.cxx | 7 -------
1 file changed, 7 deletions(-)
diff --git a/math/vecops/test/vecops_rvec.cxx b/math/vecops/test/vecops_rvec.cxx
index 034f06ca211..432c673a553 100644
--- a/math/vecops/test/vecops_rvec.cxx
+++ b/math/vecops/test/vecops_rvec.cxx
@@ -1493,13 +1493,6 @@ TEST(VecOps, Construct)
EXPECT_TRUE(fourVects[2] == ref2);
}
-bool IsSmall(const RVec<int> &v)
-{
- // the first array element is right after the 3 data members of SmallVectorBase
- return reinterpret_cast<std::uintptr_t>(v.begin()) - reinterpret_cast<std::uintptr_t>(&v) ==
- sizeof(void *) + 2 * sizeof(int);
-}
-
// this is a regression test for https://github.com/root-project/root/issues/6796
TEST(VecOps, MemoryAdoptionAndClear)
{
--
2.52.0

View file

@ -1,28 +0,0 @@
From d589c5f31f940ea6a3a5144ca1664b2ec9ea7d38 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Wed, 19 Aug 2020 20:08:32 +0200
Subject: [PATCH] Add back line accidentally removed in commit
17bc17715524b4cc6b46324c428845e9ab945684
---
config/root-config.in | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/config/root-config.in b/config/root-config.in
index d86b7d35af..7029439362 100755
--- a/config/root-config.in
+++ b/config/root-config.in
@@ -438,7 +438,9 @@ Usage: root-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version]\
[--cflags] [--auxcflags] [--ldflags] [--new] [--nonew] [--libs] [--glibs]\
[--evelibs] [--bindir] [--libdir] [--incdir] [--etcdir] [--tutdir] [--srcdir]\
[--noauxcflags] [--noauxlibs] [--noldflags] [--has-<feature>] [--arch]\
-[--python-version] [--python2-version] [--python3-version] [--cc] [--cxx] [--f77] [--ld ] [--help]"
+ [--platform] [--config] [--features] [--ncpu] [--git-revision]\
+ [--python-version] [--python2-version] [--python3-version]\
+ [--cc] [--cxx] [--f77] [--ld ] [--help]"
if test $# -eq 0; then
echo "${usage}" 1>&2
--
2.26.2

View file

@ -0,0 +1,109 @@
From 251de0f8b237ce041df4960f831fe4a1fade6d92 Mon Sep 17 00:00:00 2001
From: Jonas Rembser <jonas.rembser@cern.ch>
Date: Sat, 6 Dec 2025 17:39:40 +0100
Subject: [PATCH] [cppyy] Remove code related to finding CPyCppyy API header
path
This is not needed for ROOT, because the CPyCppyy API headers are
installed with the other ROOT headers anyway, and ROOT knows where to
find them already.
---
.../cppyy/cppyy/python/cppyy/__init__.py | 82 -------------------
1 file changed, 82 deletions(-)
diff --git a/bindings/pyroot/cppyy/cppyy/python/cppyy/__init__.py b/bindings/pyroot/cppyy/cppyy/python/cppyy/__init__.py
index 68e3c49e5fe..c8dd458bfdd 100644
--- a/bindings/pyroot/cppyy/cppyy/python/cppyy/__init__.py
+++ b/bindings/pyroot/cppyy/cppyy/python/cppyy/__init__.py
@@ -297,88 +297,6 @@ elif ispypy:
if os.path.exists(apipath) and os.path.exists(os.path.join(apipath, 'Python.h')):
add_include_path(apipath)
-# add access to extra headers for dispatcher (CPyCppyy only (?))
-if not ispypy:
- try:
- apipath_extra = os.environ['CPPYY_API_PATH']
- if os.path.basename(apipath_extra) == 'CPyCppyy':
- apipath_extra = os.path.dirname(apipath_extra)
- except KeyError:
- apipath_extra = None
-
- if apipath_extra is None:
- try:
- if 0x30a0000 <= sys.hexversion:
- import importlib.metadata as m
-
- for p in m.files('CPyCppyy'):
- if p.match('API.h'):
- ape = p.locate()
- break
- del p, m
- else:
- import pkg_resources as pr
-
- d = pr.get_distribution('CPyCppyy')
- for line in d.get_metadata_lines('RECORD'):
- if 'API.h' in line:
- ape = os.path.join(d.location, line[0:line.find(',')])
- break
- del line, d, pr
-
- if os.path.exists(ape):
- apipath_extra = os.path.dirname(os.path.dirname(ape))
- del ape
- except Exception:
- pass
-
- if apipath_extra is None:
- ldversion = sysconfig.get_config_var('LDVERSION')
- if not ldversion:
- ldversion = sys.version[:3]
-
- apipath_extra = os.path.join(os.path.dirname(apipath), 'site', 'python'+ldversion)
- if not os.path.exists(os.path.join(apipath_extra, 'CPyCppyy')):
- import glob
- import platform
-
- if platform.system() == "Windows":
- # Install locations are handled differently on Windows
- import libcppyy
-
- ape = os.path.dirname(libcppyy.__file__)
- else:
- import cppyy.libcppyy as libcppyy
-
- ape = os.path.dirname(libcppyy.__file__)
- # a "normal" structure finds the include directory up to 3 levels up,
- # ie. dropping lib/pythonx.y[md]/site-packages
- for i in range(3):
- if os.path.exists(os.path.join(ape, 'include')):
- break
- ape = os.path.dirname(ape)
-
- ape = os.path.join(ape, 'include')
- if os.path.exists(os.path.join(ape, 'CPyCppyy')):
- apipath_extra = ape
- else:
- # add back pythonx.y or site/pythonx.y if present
- for p in glob.glob(os.path.join(ape, 'python'+sys.version[:3]+'*'))+\
- glob.glob(os.path.join(ape, '*', 'python'+sys.version[:3]+'*')):
- if os.path.exists(os.path.join(p, 'CPyCppyy')):
- apipath_extra = p
- break
-
- if apipath_extra.lower() != 'none':
- if not os.path.exists(os.path.join(apipath_extra, 'CPyCppyy')):
- warnings.warn("CPyCppyy API not found (tried: %s); "
- "set CPPYY_API_PATH envar to the 'CPyCppyy' API directory to fix"
- % apipath_extra)
- else:
- add_include_path(apipath_extra)
-
- del apipath_extra
-
if os.getenv('CONDA_PREFIX'):
# MacOS, Linux
include_path = os.path.join(os.getenv('CONDA_PREFIX'), 'include')
--
2.52.0

View file

@ -0,0 +1,46 @@
From f4577e76a5dc23842d6be0a82df804f71fc820ef Mon Sep 17 00:00:00 2001
From: Jonas Rembser <jonas.rembser@cern.ch>
Date: Mon, 1 Dec 2025 16:51:36 +0100
Subject: [PATCH] [cppyy] Remove now irrelevant `load_cpp_backend()` call
As we don't have a separate `cppyy_backend` anymore (neither as a Python
package, nor as a shared library), trying to load the backend library
will always give an exception that will be caught as an `ImportError`.
It would be cleaner if this code branch is not even taken.
---
.../cppyy/cppyy/python/cppyy/_cpython_cppyy.py | 12 ------------
1 file changed, 12 deletions(-)
diff --git a/bindings/pyroot/cppyy/cppyy/python/cppyy/_cpython_cppyy.py b/bindings/pyroot/cppyy/cppyy/python/cppyy/_cpython_cppyy.py
index bac078ea7c9..f98a34a697c 100644
--- a/bindings/pyroot/cppyy/cppyy/python/cppyy/_cpython_cppyy.py
+++ b/bindings/pyroot/cppyy/cppyy/python/cppyy/_cpython_cppyy.py
@@ -19,24 +19,12 @@ __all__ = [
'_end_capture_stderr'
]
-# First load the dependency libraries of the backend, then pull in the libcppyy
-# extension module. If the backed can't be loaded, it was probably linked
-# statically into the extension module, so we don't error out at this point.
-try:
- from cppyy_backend import loader
- c = loader.load_cpp_backend()
-except ImportError:
- c = None
-
if platform.system() == "Windows":
# On Windows, the library has to be searched without prefix
import libcppyy as _backend
else:
import cppyy.libcppyy as _backend
-if c is not None:
- _backend._cpp_backend = c
-
# explicitly expose APIs from libcppyy
_w = ctypes.CDLL(_backend.__file__, ctypes.RTLD_GLOBAL)
--
2.52.0

View file

@ -1,42 +0,0 @@
From 4aa3e75da6afba4dc7f86fa264acf30eca60d56f Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Thu, 26 Nov 2020 11:14:57 +0100
Subject: [PATCH] Do not attempt to load_library the ROOT Pythonizations module
It is not necessary here, since it is already loaded due to the
from libROOTPythonizations import ...
earlier in the file, and it fails when the python module is not in the
library path (it is in the python path only)
/usr/lib64/python3.9/site-packages/libROOTPythonizations3_9.cpython-39-x86_64-linux-gnu.so
https://bugzilla.redhat.com/show_bug.cgi?id=1900661
---
bindings/pyroot/pythonizations/python/ROOT/_facade.py | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/bindings/pyroot/pythonizations/python/ROOT/_facade.py b/bindings/pyroot/pythonizations/python/ROOT/_facade.py
index c028006c70..37365c36ca 100644
--- a/bindings/pyroot/pythonizations/python/ROOT/_facade.py
+++ b/bindings/pyroot/pythonizations/python/ROOT/_facade.py
@@ -5,7 +5,7 @@ from functools import partial
import libcppyy as cppyy_backend
from cppyy import gbl as gbl_namespace
-from cppyy import cppdef, include, load_library
+from cppyy import cppdef, include
from libROOTPythonizations import gROOT, CreateBufferFromAddress
from ._application import PyROOTApplication
@@ -291,8 +291,6 @@ class ROOTFacade(types.ModuleType):
@property
def TPyDispatcher(self):
include('ROOT/TPyDispatcher.h')
- major, minor = sys.version_info[0:2]
- load_library('libROOTPythonizations{}_{}'.format(major, minor))
tpd = gbl_namespace.TPyDispatcher
type(self).TPyDispatcher = tpd
return tpd
--
2.28.0

View file

@ -1,21 +0,0 @@
diff -ur root-6.20.02.orig/documentation/doxygen/filter.cxx root-6.20.02/documentation/doxygen/filter.cxx
--- root-6.20.02.orig/documentation/doxygen/filter.cxx 2020-03-15 16:21:25.000000000 +0100
+++ root-6.20.02/documentation/doxygen/filter.cxx 2020-03-15 20:05:59.047270429 +0100
@@ -378,16 +378,7 @@
// notebook found
if (gLineString.find("\\notebook") != string::npos) {
- ExecuteCommand(StringFormat("%s converttonotebook.py %s %s/notebooks/",
- gPythonExec.c_str(),
- gFileName.c_str(), gOutDir.c_str()));
- if (gPython){
- gLineString = "## ";
- }
- else{
- gLineString = "/// ";
- }
- gLineString += StringFormat( "\\htmlonly <a href=\"https://nbviewer.jupyter.org/url/root.cern/doc/master/notebooks/%s.nbconvert.ipynb\" target=\"_blank\"><img src= notebook.gif alt=\"View in nbviewer\" style=\"height:1em\" ></a> <a href=\"https://cern.ch/swanserver/cgi-bin/go?projurl=https://root.cern/doc/master/notebooks/%s.nbconvert.ipynb\" target=\"_blank\"><img src=\"https://swanserver.web.cern.ch/swanserver/images/badge_swan_white_150.png\" alt=\"Open in SWAN\" style=\"height:1em\" ></a> \\endhtmlonly \n", gMacroName.c_str() , gMacroName.c_str());
+ gLineString = "";
}
// \macro_output found

View file

@ -1,33 +0,0 @@
diff -ur root-6.22.00.orig/tutorials/tmva/tmva003_RReader.C root-6.22.00/tutorials/tmva/tmva003_RReader.C
--- root-6.22.00.orig/tutorials/tmva/tmva003_RReader.C 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/tutorials/tmva/tmva003_RReader.C 2020-07-09 18:58:36.854733120 +0200
@@ -5,7 +5,6 @@
/// TMVA XML files.
///
/// \macro_code
-/// \macro_output
///
/// \date July 2019
/// \author Stefan Wunsch
diff -ur root-6.22.00.orig/tutorials/tmva/tmva103_Application.C root-6.22.00/tutorials/tmva/tmva103_Application.C
--- root-6.22.00.orig/tutorials/tmva/tmva103_Application.C 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/tutorials/tmva/tmva103_Application.C 2020-07-09 18:58:36.855733122 +0200
@@ -6,7 +6,6 @@
/// event-by-event inference, batch inference and pipelines with RDataFrame.
///
/// \macro_code
-/// \macro_output
///
/// \date December 2018
/// \author Stefan Wunsch
diff -ur root-6.22.00.orig/tutorials/v7/line.cxx root-6.22.00/tutorials/v7/line.cxx
--- root-6.22.00.orig/tutorials/v7/line.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/tutorials/v7/line.cxx 2020-07-09 18:58:42.202745047 +0200
@@ -6,7 +6,6 @@
/// "normal" coordinates' system and changing the line color linearly from black
/// to red.
///
-/// \macro_image (line.png)
/// \macro_code
///
/// \date 2018-03-18

View file

@ -1,978 +0,0 @@
From 1198ee3e08c46d1edc9258dbe857f66340f53a20 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Wed, 8 Jul 2020 10:39:54 +0200
Subject: [PATCH 2/5] Fix various "end of ..." warnings from doxygen.
This addresses warnings like:
- end of comment block while expecting command </b>
- end of comment block while expecting command </em>
- end of comment block while expecting command </pre>
- end of comment block while expecting command </s>
- end of comment block while expecting command </sup>
- end of comment block while expecting command </tt>
- end of comment block while expecting command </u>
- end of list marker found without any preceding list items
- found </em> tag without matching <em>
- found </li> tag without matching <li>
- found </pre> tag without matching <pre>
- found </sub> tag while expecting </sup>
- found </sup> tag without matching <sup>
- found </tt> tag without matching <tt>
- found </ul> tag without matching <ul>
- illegal </br> tag found
- reached end of file while inside a 'code' block!
- reached end of file while still inside a (nested) comment.
- unexpected end of comment while inside <a href=...> tag
- unexpected end of comment while inside <ul> block
- unexpected html tag <blockquote> found within <h1> context
- unexpected tag </h2> found
- unexpected tag </h3> found
- unsupported xml/html tag <it> found
- unsupported xml/html tag </it> found
---
bindings/r/inc/TRDataFrame.h | 2 +-
core/base/src/TEnv.cxx | 7 +-
core/cont/src/TBits.cxx | 2 +-
core/dictgen/res/DictSelectionReader.h | 140 +++++++++---------
core/foundation/inc/ROOT/TypeTraits.hxx | 2 +-
core/meta/src/TClass.cxx | 6 +-
core/metacling/src/TCling.cxx | 8 +-
graf2d/x11/src/TGX11.cxx | 6 +-
gui/guihtml/src/TGHtmlSizer.cxx | 4 +-
hist/hist/src/TSVDUnfold.cxx | 8 +-
hist/histpainter/src/THistPainter.cxx | 2 +-
hist/histv7/speed/histspeedtest.cxx | 1 -
hist/unfold/inc/TUnfold.h | 8 +-
html/src/TDocDirective.cxx | 2 +-
math/mathcore/inc/Math/ProbFuncMathCore.h | 8 +-
math/mathcore/inc/Math/QuantFuncMathCore.h | 4 +-
math/mathcore/src/TMath.cxx | 2 +-
math/mathmore/inc/Math/GSLMultiRootFinder.h | 16 +-
math/matrix/doc/Matrix.md | 2 +-
math/minuit/src/TMinuit.cxx | 4 +-
montecarlo/eg/src/TDatabasePDG.cxx | 2 +-
montecarlo/vmc/README.md | 2 +-
net/http/civetweb/LICENSE.md | 4 -
proof/proof/src/TProofMgr.cxx | 50 ++++---
proof/proof/src/TProofServ.cxx | 10 +-
roofit/histfactory/doc/index.md | 11 +-
.../src/MakeModelAndMeasurementsFast.cxx | 11 +-
roofit/roofitcore/inc/RooAbsCategory.h | 2 +-
roofit/roofitcore/src/RooSimPdfBuilder.cxx | 4 +-
tmva/tmva/src/Factory.cxx | 6 +-
tmva/tmva/src/Reader.cxx | 4 +-
tree/dataframe/inc/ROOT/RDF/RColumnValue.hxx | 2 +-
tutorials/net/udpserver.c | 2 +-
tutorials/tmva/TMVA_CNN_Classification.C | 2 +-
34 files changed, 168 insertions(+), 178 deletions(-)
diff --git a/bindings/r/inc/TRDataFrame.h b/bindings/r/inc/TRDataFrame.h
index b7bb4ed89d..dbf48e1383 100644
--- a/bindings/r/inc/TRDataFrame.h
+++ b/bindings/r/inc/TRDataFrame.h
@@ -136,7 +136,7 @@ namespace ROOT {
2 |1
\endcode
- </h2>Working with colunms between dataframes</h2><br>
+ <h2>Working with colunms between dataframes</h2><br>
\code{.cpp}
df2["v3"]<<df1["strings"];
diff --git a/core/base/src/TEnv.cxx b/core/base/src/TEnv.cxx
index 39c07caf21..ab697df7b7 100644
--- a/core/base/src/TEnv.cxx
+++ b/core/base/src/TEnv.cxx
@@ -388,10 +388,9 @@ TString TEnvRec::ExpandValue(const char *value)
ClassImp(TEnv);
////////////////////////////////////////////////////////////////////////////////
-/// Create a resource table and read the (possibly) three resource files, i.e
-/// `$ROOTSYS/etc/system``<name>` (or `ROOTETCDIR/system``<name>`),
-/// `$HOME/``<name>` and
-/// `./``<name>`.
+/// Create a resource table and read the (possibly) three resource files,
+/// i.e.\ `$ROOTSYS/etc/system<name>` (or `ROOTETCDIR/system<name>`),
+/// `$HOME/<name>` and `$PWD/<name>`.
/// ROOT always reads ".rootrc" (in TROOT::InitSystem()). You can
/// read additional user defined resource files by creating additional TEnv
/// objects. By setting the shell variable ROOTENV_NO_HOME=1 the reading of
diff --git a/core/cont/src/TBits.cxx b/core/cont/src/TBits.cxx
index 155bfd4b4c..95167dd5b1 100644
--- a/core/cont/src/TBits.cxx
+++ b/core/cont/src/TBits.cxx
@@ -10,7 +10,7 @@ Container of bits.
This class provides a simple container of bits.
Each bit can be set and tested via the functions SetBitNumber and
TestBitNumber.
- .
+
The default value of all bits is kFALSE.
The size of the container is automatically extended when a bit
number is either set or tested. To reduce the memory size of the
diff --git a/core/dictgen/res/DictSelectionReader.h b/core/dictgen/res/DictSelectionReader.h
index 52921d6237..b19135badd 100644
--- a/core/dictgen/res/DictSelectionReader.h
+++ b/core/dictgen/res/DictSelectionReader.h
@@ -60,34 +60,32 @@ namespace clang {
* By default, the Name of the selection class is then
* @c ROOT::Meta::Selection::C. If you have such a class, it will be found
* automatically. If @c C is in a namespace, @c NS::C, then
- * the selection class should be in the same namespace: @c
-ROOT::Selection::NS::C.
+ * the selection class should be in the same namespace:
+ * @c ROOT::Meta::Selection::NS::C.
+ *
* Examples:
*
-
-**/
-
-/**
* The DictSelectionReader is used to create selection rules starting from
* C++ the constructs of the @c ROOT::Meta::Selection namespace. All rules
* are matching by name.
* A brief description of the operations that lead to class selection:
- * 1. If a class declaration is present in the selection namespace, a class
- * with the same name is selected outside the selection namespace.
- * 2. If a template class declaration and a template instantiation is present
- * in the selection namespace, all the instances of the template are
- * selected outside the namespace.
+ * 1. If a class declaration is present in the selection namespace, a class
+ * with the same name is selected outside the selection namespace.
+ * 2. If a template class declaration and a template instantiation is present
+ * in the selection namespace, all the instances of the template are
+ * selected outside the namespace.
+ *
* For example:
* @code
* [...]
* class classVanilla{};
* template <class A> class classTemplateVanilla {};
* classTemplateVanilla<char> t0;
- * namespace ROOT{
+ * namespace ROOT {
* namespace Meta {
- * namespace Selection{
- * class classVanilla{};
- * template <typename A> class classTemplateVanilla{};
+ * namespace Selection {
+ * class classVanilla {};
+ * template <typename A> class classTemplateVanilla {};
* classTemplateVanilla<char> st0;
* }
* }
@@ -98,14 +96,15 @@ ROOT::Selection::NS::C.
*
* A brief description of the properties that can be assigned to classes
* with the @c ROOT::Meta::Selection::ClassAttributes class.
- * 1. @c kNonSplittable : Makes the class non splittable
+ * 1. @c kNonSplittable : Makes the class non splittable
+ *
* The class properties can be assigned via a traits mechanism. For example:
* @code
* [...]
- * class classWithAttributes{};
- * namespace ROOT{
+ * class classWithAttributes {};
+ * namespace ROOT {
* namespace Meta {
- * namespace Selection{
+ * namespace Selection {
* class classWithAttributes : ClassAttributes <kNonSplittable> {};
* }
* }
@@ -116,9 +115,9 @@ ROOT::Selection::NS::C.
* properties can be assigned to a single class with this syntax:
* @code
* [...]
- * namespace ROOT{
+ * namespace ROOT {
* namespace Meta {
- * namespace Selection{
+ * namespace Selection {
* class classWithAttributes :
* ClassAttributes <kProperty1 + kProperty2 + ... + kPropertyN> {};
* }
@@ -126,7 +125,6 @@ ROOT::Selection::NS::C.
* }
* @endcode
*
- *
* The @c ROOT::Meta::Selection syntax allows to alter the number of template
* parameters of a certain template class within the ROOT type system, TClass.
* Technically it allows to alter the way in which the "normalized name" (in
@@ -137,23 +135,21 @@ ROOT::Selection::NS::C.
* a long explaination in this case:
* @code
* [...]
- * template <class T, class U=int, int V=3> class A{...};
- * template <class T, class Alloc= myAllocator<T> > class myVector{...};
+ * template <class T, class U = int, int V = 3> class A {...};
+ * template <class T, class Alloc = myAllocator<T> > class myVector {...};
* A<char> a1;
- * A<char,float> a2;
+ * A<char, float> a2;
* myVector<float> v1;
* myVector<A<char>> v2;
*
- * namespace ROOT{
+ * namespace ROOT {
* namespace Meta {
- * namespace Selection{
- * template <class T, class U=int, int V=3> class A
- * :KeepFirstTemplateArguments<1>{};
- *
- * A<double> ;
- * template <class T, class Alloc= myAllocator<T> > class myVector
- * :KeepFirstTemplateArguments<1>{};
- *
+ * namespace Selection {
+ * template <class T, class U = int, int V = 3> class A
+ * : KeepFirstTemplateArguments<1> {};
+ * A<double> a;
+ * template <class T, class Alloc = myAllocator<T> > class myVector
+ * : KeepFirstTemplateArguments<1> {};
* myVector<double> vd;
* }
* }
@@ -165,53 +161,55 @@ ROOT::Selection::NS::C.
* will be kept.
* In absence of any @c KeepFirstTemplateArguments trait, the normalization
* would be:
- * @c A<char> &rarr @c A<char,float,3>
- * @c A<char,float> &rarr @c A<char,int,3>
- * @c myVector<float> &rarr @c myVector<A<char,int,3>,myAllocator<A<char,int,3>>>
- * @c myVector<A<char>> &rarr @c myVector<float,myAllocator<float>>
+ * - @c A<char> &rarr; @c A<char,float,3>
+ * - @c A<char,float> &rarr; @c A<char,int,3>
+ * - @c myVector<float> &rarr; @c myVector<A<char,int,3>,myAllocator<A<char,int,3>>>
+ * - @c myVector<A<char>> &rarr; @c myVector<float,myAllocator<float>>
*
* Now, deciding to keep just one argument (@c KeepFirstTemplateArguments<1>):
- * @c A<char> &rarr @c A<char,float>
- * @c A<char,float> &rarr @c A<char>
- * @c myVector<float> &rarr @c myVector<A<char>,myAllocator<A<char>>>
- * @c myVector<A<char>> &rarr @c myVector<float,myAllocator<float>>
+ * - @c A<char> &rarr; @c A<char,float>
+ * - @c A<char,float> &rarr; @c A<char>
+ * - @c myVector<float> &rarr; @c myVector<A<char>,myAllocator<A<char>>>
+ * - @c myVector<A<char>> &rarr; @c myVector<float,myAllocator<float>>
*
* And deciding to keep two arguments (@c KeepFirstTemplateArguments<2>):
- * @c A<char> &rarr @c A<char,float>
- * @c A<char,float> &rarr @c A<char,int>
- * @c myVector<float> &rarr @c myVector<A<char,int>,myAllocator<A<char,int>>>
- * @c myVector<A<char>> &rarr @c myVector<float,myAllocator<float>>
+ * - @c A<char> &rarr; @c A<char,float>
+ * - @c A<char,float> &rarr; @c A<char,int>
+ * - @c myVector<float> &rarr; @c myVector<A<char,int>,myAllocator<A<char,int>>>
+ * - @c myVector<A<char>> &rarr; @c myVector<float,myAllocator<float>>
*
* A brief description of the properties that can be assigned to data members
* with the @c ROOT::Meta::Selection MemberAttributes class:
- * 1. @c kTransient : the data member is transient, not persistified by the
- * ROOT I/O.
- * 2. @c kAutoSelected : the type of the data member is selected without the
- * need of specifying its class explicitely.
+ * 1. @c kTransient : the data member is transient, not persistified by the
+ * ROOT I/O.
+ * 2. @c kAutoSelected : the type of the data member is selected without the
+ * need of specifying its class explicitely.
+ *
* For example:
* @code
* [...]
- * class classTransientMember{
+ * class classTransientMember {
* private:
* int transientMember;
* };
- * class classAutoselected{};
- * class classTestAutoselect{
+ * class classAutoselected {};
+ * class classTestAutoselect {
* private:
* classAutoselected autoselected;
* };
*
- * namespace ROOT{
+ * namespace ROOT {
* namespace Meta {
- * namespace Selection{
- * class classTestAutoselect{
+ * namespace Selection {
+ * class classTestAutoselect {
* MemberAttributes<kAutoSelected> autoselected;
* };
-
- class classTransientMember{
- MemberAttributes<kTransient> transientMember;
- };
- *
+ * class classTransientMember {
+ * MemberAttributes<kTransient> transientMember;
+ * };
+ * }
+ * }
+ * }
* @endcode
* would lead to the creation of selection rules for @c classTransientMember
* specifying that @c transientMember is transient, @c classTestAutoselect and
@@ -229,10 +227,10 @@ ROOT::Selection::NS::C.
* template< class T, class BASE >
* class MyDataVector : KeepFirstTemplateArguments< 1 >, SelectNoInstance {
* MemberAttributes< kTransient + kAutoSelected > m_isMostDerived;
- * MemberAttributes< kNonSplittable+ kAutoSelected > m_isNonSplit;
- * };
+ * MemberAttributes< kNonSplittable + kAutoSelected > m_isNonSplit;
+ * };
* [...]
- *
+ * @endcode
**/
namespace ROOT {
namespace Internal {
@@ -265,12 +263,9 @@ private:
inline bool
InSelectionNamespace(const clang::RecordDecl &,
const std::string &str =
- ""); ///< Check if in the ROOT::Selection namespace
+ ""); ///< Check if in the ROOT::Meta::Selection namespace
inline bool FirstPass(const clang::RecordDecl &); ///< First pass on the AST
- inline bool SecondPass(const clang::RecordDecl &); ///< Second pass on the
- ///AST, using the
- ///information of the first
- ///one
+ inline bool SecondPass(const clang::RecordDecl &); ///< Second pass on the AST, using the information of the first one
inline void
ManageFields(const clang::RecordDecl &,
const std::string &,
@@ -285,8 +280,7 @@ private:
inline const clang::TemplateArgumentList *GetTmplArgList(
const clang::CXXRecordDecl &); ///< Get the template arguments list if any
- std::string PatternifyName(const std::string &className); ///< Transform instance
- ///< name in pattern for selection
+ std::string PatternifyName(const std::string &className); ///< Transform instance name in pattern for selection
void GetPointeeType(std::string &typeName); ///< Get name of the pointee type
SelectionRules &fSelectionRules; ///< The selection rules to be filled
@@ -300,9 +294,9 @@ private:
fNoAutoSelectedClassFieldNames; ///< Collect the autoexcluded classes
std::unordered_map<std::string, TemplateInfo> fTemplateInfoMap; ///< List template name - properties map
llvm::StringMap<ClassSelectionRule>
- fClassNameSelectionRuleMap; /// < Map of the already built sel rules
+ fClassNameSelectionRuleMap; ///< Map of the already built sel rules
bool fIsFirstPass; ///< Keep trance of the number of passes through the AST
- ROOT::TMetaUtils::TNormalizedCtxt &fNormCtxt; /// < The reference to the normalized context
+ ROOT::TMetaUtils::TNormalizedCtxt &fNormCtxt; ///< The reference to the normalized context
};
}
}
diff --git a/core/foundation/inc/ROOT/TypeTraits.hxx b/core/foundation/inc/ROOT/TypeTraits.hxx
index 1abf64e73a..ab491c2504 100644
--- a/core/foundation/inc/ROOT/TypeTraits.hxx
+++ b/core/foundation/inc/ROOT/TypeTraits.hxx
@@ -155,7 +155,7 @@ template <typename T>
using TakeFirstParameter_t = typename TakeFirstParameter<T>::type;
/// Remove first of possibly many template parameters.
-/// e.g. RemoveFirstParameter_t<U<A,B>> is U<B>
+/// e.g. RemoveFirstParameter_t<U<A,B>> is U\<B\>
template <typename>
struct RemoveFirstParameter {
};
diff --git a/core/meta/src/TClass.cxx b/core/meta/src/TClass.cxx
index 4eeec81dc1..f29ab7fd85 100644
--- a/core/meta/src/TClass.cxx
+++ b/core/meta/src/TClass.cxx
@@ -6780,7 +6780,7 @@ void TClass::SetDestructor(ROOT::DesFunc_t destructorFunc)
}
////////////////////////////////////////////////////////////////////////////////
-/// Install a new wrapper around the directory auto add function..
+/// Install a new wrapper around the directory auto add function.
/// The function autoAddFunc has the signature void (*)(void *obj, TDirectory dir)
/// and should register 'obj' to the directory if dir is not null
/// and unregister 'obj' from its current directory if dir is null
@@ -7120,12 +7120,12 @@ Bool_t ROOT::Internal::HasConsistentHashMember(TClass &clRef)
/// (public or not), use
/// \code{.cpp}
/// cl->GetProperty() & kClassHasDefaultCtor
-/// \code
+/// \endcode
/// To know if the class described by this TClass has a public default
/// constructor use:
/// \code{.cpp}
/// gInterpreter->ClassInfo_HasDefaultConstructor(aClass->GetClassInfo());
-/// \code
+/// \endcode
Bool_t TClass::HasDefaultConstructor(Bool_t testio) const
{
diff --git a/core/metacling/src/TCling.cxx b/core/metacling/src/TCling.cxx
index db0da13620..279744834a 100644
--- a/core/metacling/src/TCling.cxx
+++ b/core/metacling/src/TCling.cxx
@@ -5388,10 +5388,10 @@ int TCling::ReadRootmapFile(const char *rootmapfile, TUniqueString *uniqueString
}
////////////////////////////////////////////////////////////////////////////////
-/// Create a resource table and read the (possibly) three resource files, i.e
-/// $ROOTSYS/etc/system<name> (or ROOTETCDIR/system<name>), $HOME/<name> and
-/// ./<name>. ROOT always reads ".rootrc" (in TROOT::InitSystem()). You can
-/// read additional user defined resource files by creating additional TEnv
+/// Create a resource table and read the (possibly) three resource files,
+/// i.e.\ $ROOTSYS/etc/system<name> (or ROOTETCDIR/system<name>), $HOME/<name>
+/// and $PWD/<name>. ROOT always reads ".rootrc" (in TROOT::InitSystem()). You
+/// can read additional user defined resource files by creating additional TEnv
/// objects. By setting the shell variable ROOTENV_NO_HOME=1 the reading of
/// the $HOME/<name> resource file will be skipped. This might be useful in
/// case the home directory resides on an automounted remote file system
diff --git a/graf2d/x11/src/TGX11.cxx b/graf2d/x11/src/TGX11.cxx
index 59e5260c92..26f88dd045 100644
--- a/graf2d/x11/src/TGX11.cxx
+++ b/graf2d/x11/src/TGX11.cxx
@@ -3599,9 +3599,9 @@ Pixmap_t TGX11::ReadGIF(int x0, int y0, const char *file, Window_t id)
}
////////////////////////////////////////////////////////////////////////////////
-/// Returns an array of pixels created from a part of drawable (defined by x, y, w, h)
-/// in format:
-/// `b1, g1, r1, 0, b2, g2, r2, 0 ... bn, gn, rn, 0 ..`
+/// Returns an array of pixels created from a part of drawable
+/// (defined by x, y, w, h) in format:
+/// `b1, g1, r1, 0, b2, g2, r2, 0, ..., bn, gn, rn, 0`.
///
/// Pixels are numbered from left to right and from top to bottom.
/// By default all pixels from the whole drawable are returned.
diff --git a/gui/guihtml/src/TGHtmlSizer.cxx b/gui/guihtml/src/TGHtmlSizer.cxx
index c73eb581b5..8e6e71dcf7 100644
--- a/gui/guihtml/src/TGHtmlSizer.cxx
+++ b/gui/guihtml/src/TGHtmlSizer.cxx
@@ -60,7 +60,7 @@ SHtmlStyle_t TGHtml::GetCurrentStyle()
////////////////////////////////////////////////////////////////////////////////
/// Push a new rendering style onto the stack.
///
-/// tag - Tag for this style. Normally the end-tag such as </h3> or </em>.
+/// tag - Tag for this style. Normally the end-tag such as \</h3\> or \</em\>.
/// style - The style to push
void TGHtml::PushStyleStack(int tag, SHtmlStyle_t style)
@@ -152,7 +152,7 @@ void TGHtml::MakeInvisible(TGHtmlElement *p_first, TGHtmlElement *p_last)
}
////////////////////////////////////////////////////////////////////////////////
-/// For the markup <a href=XXX>, find out if the URL has been visited
+/// For the markup \<a href=XXX\>, find out if the URL has been visited
/// before or not. Return COLOR_Visited or COLOR_Unvisited, as
/// appropriate.
diff --git a/hist/hist/src/TSVDUnfold.cxx b/hist/hist/src/TSVDUnfold.cxx
index 85cfa9f241..2b570bdb22 100644
--- a/hist/hist/src/TSVDUnfold.cxx
+++ b/hist/hist/src/TSVDUnfold.cxx
@@ -46,13 +46,11 @@
The measured distribution can be unfolded for any combination of resolution, efficiency and acceptance effects, provided an appropriate definition of <tt>xini</tt> and <tt>Adet</tt>.<br><br>
<p>
The unfolding can be performed by
- <ul>
- <pre>
+ \code{.cpp}
TSVDUnfold *tsvdunf = new TSVDUnfold( bdat, Bcov, bini, xini, Adet );
TH1D* unfresult = tsvdunf->Unfold( kreg );
- </pre>
- </ul>
- where <tt>kreg</tt> determines the regularisation of the unfolding. In general, overregularisation (too small <tt>kreg</tt>) will bias the unfolded spectrum towards the Monte Carlo input, while underregularisation (too large <tt>kreg</tt>) will lead to large fluctuations in the unfolded spectrum. The optimal regularisation can be determined following guidelines in <a href="http://arXiv.org/abs/hep-ph/9509307">Nucl. Instrum. Meth. A372, 469 (1996) [hep-ph/9509307]</a> using the distribution of the <tt>|d_i|<\tt> that can be obtained by <tt>tsvdunf->GetD()</tt> and/or using pseudo-experiments.
+ \endcode
+ where <tt>kreg</tt> determines the regularisation of the unfolding. In general, overregularisation (too small <tt>kreg</tt>) will bias the unfolded spectrum towards the Monte Carlo input, while underregularisation (too large <tt>kreg</tt>) will lead to large fluctuations in the unfolded spectrum. The optimal regularisation can be determined following guidelines in <a href="http://arXiv.org/abs/hep-ph/9509307">Nucl. Instrum. Meth. A372, 469 (1996) [hep-ph/9509307]</a> using the distribution of the <tt>|d_i|</tt> that can be obtained by <tt>tsvdunf->GetD()</tt> and/or using pseudo-experiments.
<p>
Covariance matrices on the measured spectrum (for either the total uncertainties or individual sources of uncertainties) can be propagated to covariance matrices using the <tt>GetUnfoldCovMatrix</tt> method, which uses pseudo experiments for the propagation. In addition, <tt>GetAdetCovMatrix</tt> allows for the propagation of the statistical uncertainties on the response matrix using pseudo experiments. The covariance matrix corresponding to <tt>Bcov</tt> is also computed as described in <a href="http://arXiv.org/abs/hep-ph/9509307">Nucl. Instrum. Meth. A372, 469 (1996) [hep-ph/9509307]</a> and can be obtained from <tt>tsvdunf->GetXtau()</tt> and its (regularisation independent) inverse from <tt>tsvdunf->GetXinv()</tt>. The distribution of singular values can be retrieved using <tt>tsvdunf->GetSV()</tt>.
<p>
diff --git a/hist/histpainter/src/THistPainter.cxx b/hist/histpainter/src/THistPainter.cxx
index 0f80505570..20a944a545 100644
--- a/hist/histpainter/src/THistPainter.cxx
+++ b/hist/histpainter/src/THistPainter.cxx
@@ -418,7 +418,7 @@ some combinations must be use with care.
- It does not work when combined with the `LEGO` and `SURF` options unless the
histogram plotted with the option `SAME` has exactly the same
ranges on the X, Y and Z axis as the currently drawn histogram. To superimpose
- lego plots [histograms' stacks](#HP26) should be used.</li>
+ lego plots [histograms' stacks](#HP26) should be used.
### <a name="HP061"></a> Colors automatically picked in palette
diff --git a/hist/histv7/speed/histspeedtest.cxx b/hist/histv7/speed/histspeedtest.cxx
index 55c0992bd5..065a10f0d7 100644
--- a/hist/histv7/speed/histspeedtest.cxx
+++ b/hist/histv7/speed/histspeedtest.cxx
@@ -35,7 +35,6 @@ and
/opt/build/root_builds/rootcling.cmake/include/ROOT/THistBinIter.h:53:50: error: no member named 'GetUncertainty' in
'ROOT::Experimental::THistDataContent<2, double, ROOT::Experimental::THistDataDefaultStorage>::TBinStat<double>' auto
GetUncertainty() const { return GetStat().GetUncertainty(); }
- ~~~~~~~~~ ^
new ones (STATCLASSES)
diff --git a/hist/unfold/inc/TUnfold.h b/hist/unfold/inc/TUnfold.h
index a69da26b4c..ce6e16fb4a 100644
--- a/hist/unfold/inc/TUnfold.h
+++ b/hist/unfold/inc/TUnfold.h
@@ -179,15 +179,15 @@ class TUnfold : public TObject {
TMatrixD *fX;
/// covariance matrix Vxx
TMatrixDSparse *fVxx;
- /// inverse of covariance matrix Vxx<sup>-1</sub>
+ /// inverse of covariance matrix Vxx<sup>-1</sup>
TMatrixDSparse *fVxxInv;
- /// inverse of the input covariance matrix Vyy<sup>-1</sub>
+ /// inverse of the input covariance matrix Vyy<sup>-1</sup>
TMatrixDSparse *fVyyInv;
/// result x folded back A*x
TMatrixDSparse *fAx;
- /// chi**2 contribution from (y-Ax)Vyy<sup>-1</sub>(y-Ax)
+ /// chi**2 contribution from (y-Ax)Vyy<sup>-1</sup>(y-Ax)
Double_t fChi2A;
- /// chi**2 contribution from (x-s*x0)<sup>T</sub>L<sup>T</sub>L(x-s*x0)
+ /// chi**2 contribution from (x-s*x0)<sup>T</sup>L<sup>T</sup>L(x-s*x0)
Double_t fLXsquared;
/// maximum global correlation coefficient
Double_t fRhoMax;
diff --git a/html/src/TDocDirective.cxx b/html/src/TDocDirective.cxx
index f7ffdc29c3..ab43d1ab38 100644
--- a/html/src/TDocDirective.cxx
+++ b/html/src/TDocDirective.cxx
@@ -215,7 +215,7 @@ void TDocHtmlDirective::AddLine(const TSubString& line)
////////////////////////////////////////////////////////////////////////////////
/// Set result to the HTML code that was passed in via AddLine().
-/// Prepend a closing </pre>, append an opening <pre>
+/// Prepend a closing \</pre\>, append an opening \<pre\>
Bool_t TDocHtmlDirective::GetResult(TString& result)
{
diff --git a/math/mathcore/inc/Math/ProbFuncMathCore.h b/math/mathcore/inc/Math/ProbFuncMathCore.h
index d751c47a36..16e205347c 100644
--- a/math/mathcore/inc/Math/ProbFuncMathCore.h
+++ b/math/mathcore/inc/Math/ProbFuncMathCore.h
@@ -41,8 +41,8 @@ namespace Math {
* These names are currently kept for backward compatibility, but
* their usage is deprecated.
*
- * These functions are defined in the header file <em>Math/ProbFunc.h<em> or in the global one
- * including all statistical functions <em>Math/DistFunc.h<em>
+ * These functions are defined in the header file <em>Math/ProbFunc.h</em> or in the global one
+ * including all statistical functions <em>Math/DistFunc.h</em>
*
*/
@@ -727,8 +727,8 @@ namespace Math {
first or the second momentum of the truncated distribution.
In the case of the Landau, first and second momentum functions are provided for the Landau
distribution truncated only on the right side.
- These functions are defined in the header file <em>Math/ProbFunc.h<em> or in the global one
- including all statistical functions <em>Math/StatFunc.h<em>
+ These functions are defined in the header file <em>Math/ProbFunc.h</em> or in the global one
+ including all statistical functions <em>Math/StatFunc.h</em>
*/
diff --git a/math/mathcore/inc/Math/QuantFuncMathCore.h b/math/mathcore/inc/Math/QuantFuncMathCore.h
index 7da5bd1178..1be023b33f 100644
--- a/math/mathcore/inc/Math/QuantFuncMathCore.h
+++ b/math/mathcore/inc/Math/QuantFuncMathCore.h
@@ -41,8 +41,8 @@ namespace Math {
*
* \f[ D(x) = \int_{x}^{+\infty} p(x') dx' \f]
*
- * These functions are defined in the header file <em>Math/ProbFunc.h<em> or in the global one
- * including all statistical functions <em>Math/DistFunc.h<em>
+ * These functions are defined in the header file <em>Math/ProbFunc.h</em> or in the global one
+ * including all statistical functions <em>Math/DistFunc.h</em>
*
*
* <strong>NOTE:</strong> In the old releases (< 5.14) the <em>_quantile</em> functions were called
diff --git a/math/mathcore/src/TMath.cxx b/math/mathcore/src/TMath.cxx
index 49a81d56f7..ba8799b570 100644
--- a/math/mathcore/src/TMath.cxx
+++ b/math/mathcore/src/TMath.cxx
@@ -857,7 +857,7 @@ Double_t TMath::KolmogorovTest(Int_t na, const Double_t *a, Int_t nb, const Doub
/// \f[
/// lorentz(xx) = \frac{ \frac{1}{\pi} \frac{lg}{2} }{ (xx^{2} + \frac{lg^{2}}{4}) }
/// \f]
-/// .
+/// \.
///
/// The Voigt function is known to be the real part of Faddeeva function also
/// called complex error function [2].
diff --git a/math/mathmore/inc/Math/GSLMultiRootFinder.h b/math/mathmore/inc/Math/GSLMultiRootFinder.h
index 42069d2387..b7efe4157d 100644
--- a/math/mathmore/inc/Math/GSLMultiRootFinder.h
+++ b/math/mathmore/inc/Math/GSLMultiRootFinder.h
@@ -69,23 +69,23 @@ namespace Math {
<A HREF="http://www.gnu.org/software/gsl/manual/html_node/Algorithms-using-Derivatives.html">documentation</A> )
are the followings:
<ul>
- <li><tt>ROOT::Math::GSLMultiRootFinder::kHybridSJ</tt> with name <it>"HybridSJ"</it>: modified Powell's hybrid
+ <li><tt>ROOT::Math::GSLMultiRootFinder::kHybridSJ</tt> with name <i>"HybridSJ"</i>: modified Powell's hybrid
method as implemented in HYBRJ in MINPACK
- <li><tt>ROOT::Math::GSLMultiRootFinder::kHybridJ</tt> with name <it>"HybridJ"</it>: unscaled version of the
+ <li><tt>ROOT::Math::GSLMultiRootFinder::kHybridJ</tt> with name <i>"HybridJ"</i>: unscaled version of the
previous algorithm</li>
- <li><tt>ROOT::Math::GSLMultiRootFinder::kNewton</tt> with name <it>"Newton"</it>: Newton method </li>
- <li><tt>ROOT::Math::GSLMultiRootFinder::kGNewton</tt> with name <it>"GNewton"</it>: modified Newton method </li>
+ <li><tt>ROOT::Math::GSLMultiRootFinder::kNewton</tt> with name <i>"Newton"</i>: Newton method </li>
+ <li><tt>ROOT::Math::GSLMultiRootFinder::kGNewton</tt> with name <i>"GNewton"</i>: modified Newton method </li>
</ul>
The algorithms without derivatives (see also the GSL
<A HREF="http://www.gnu.org/software/gsl/manual/html_node/Algorithms-without-Derivatives.html">documentation</A> )
are the followings:
<ul>
- <li><tt>ROOT::Math::GSLMultiRootFinder::kHybridS</tt> with name <it>"HybridS"</it>: same as HybridSJ but using
+ <li><tt>ROOT::Math::GSLMultiRootFinder::kHybridS</tt> with name <i>"HybridS"</i>: same as HybridSJ but using
finate difference approximation for the derivatives</li>
- <li><tt>ROOT::Math::GSLMultiRootFinder::kHybrid</tt> with name <it>"Hybrid"</it>: unscaled version of the
+ <li><tt>ROOT::Math::GSLMultiRootFinder::kHybrid</tt> with name <i>"Hybrid"</i>: unscaled version of the
previous algorithm</li>
- <li><tt>ROOT::Math::GSLMultiRootFinder::kDNewton</tt> with name <it>"DNewton"</it>: discrete Newton algorithm </li>
- <li><tt>ROOT::Math::GSLMultiRootFinder::kBroyden</tt> with name <it>"Broyden"</it>: Broyden algorithm </li>
+ <li><tt>ROOT::Math::GSLMultiRootFinder::kDNewton</tt> with name <i>"DNewton"</i>: discrete Newton algorithm </li>
+ <li><tt>ROOT::Math::GSLMultiRootFinder::kBroyden</tt> with name <i>"Broyden"</i>: Broyden algorithm </li>
</ul>
@ingroup MultiRoot
diff --git a/math/matrix/doc/Matrix.md b/math/matrix/doc/Matrix.md
index f53b29ca0b..c484c27c72 100644
--- a/math/matrix/doc/Matrix.md
+++ b/math/matrix/doc/Matrix.md
@@ -325,7 +325,7 @@ constructor</td>
<td>C=A*B<br>
A*=B<br>
C.Mult(A,B)<br>TMatrixD(A,TMatrixD::kMult,B)<br>TMatrixD(A, TMatrixD(A, TMatrixD::kTransposeMult,B)<br>TMatrixD(A, TMatrixD::kMultTranspose,B)</td>
- <td>overwrites A<br>&nbsp;<br>&nbsp;<br>constructor of A.B<br>constructor of A<sup>T</sup> .B<br>constructor of A.B<sup>T</sup></td>
+ <td>overwrites A<br>&nbsp;<br>&nbsp;<br>constructor of A·B<br>constructor of A<sup>T</sup>·B<br>constructor of A·B<sup>T</sup></td>
</tr>
<tr>
<td>Element wise multiplication</td>
diff --git a/math/minuit/src/TMinuit.cxx b/math/minuit/src/TMinuit.cxx
index df3e563a73..18a6437c68 100644
--- a/math/minuit/src/TMinuit.cxx
+++ b/math/minuit/src/TMinuit.cxx
@@ -187,11 +187,11 @@ the error matrix, or setting of exact confidence levels see:
1. F.James.
Determining the statistical Significance of experimental Results.
- Technical Report DD/81/02 and CERN Report 81-03, CERN, 1981.</li>
+ Technical Report DD/81/02 and CERN Report 81-03, CERN, 1981.
2. W.T.Eadie, D.Drijard, F.James, M.Roos, and B.Sadoulet.
Statistical Methods in Experimental Physics.
- North-Holland, 1971.</li>
+ North-Holland, 1971.
### Reliability of MINUIT error estimates.
diff --git a/montecarlo/eg/src/TDatabasePDG.cxx b/montecarlo/eg/src/TDatabasePDG.cxx
index 23c32e9668..85e9fe2a6d 100644
--- a/montecarlo/eg/src/TDatabasePDG.cxx
+++ b/montecarlo/eg/src/TDatabasePDG.cxx
@@ -46,7 +46,7 @@ Root.DatabasePDG: $(HOME)/my_pdg_table.txt
See TParticlePDG for the description of a static particle properties.
See TParticle for the description of a dynamic particle particle.
-<br>The current default pdg_table file displays lifetime 0 for some unstable particles.</br>
+The current default pdg_table file displays lifetime 0 for some unstable particles.
*/
diff --git a/montecarlo/vmc/README.md b/montecarlo/vmc/README.md
index dc66ec401f..c731b26e92 100644
--- a/montecarlo/vmc/README.md
+++ b/montecarlo/vmc/README.md
@@ -43,7 +43,7 @@ See more detailed description in [the dedicated README](README.multiple.md).
## Authors
The concept of Virtual MonteCarlo has been developed by the [ALICE Software Project](http://aliceinfo.cern.ch/Offline/).<br>
-Authors: R.Brun<sup>1</sup>, F.Carminati<sup>1</sup>, A. Gheata<sup>1</sup>, I.Hrivnacova<sup>2</sup>, A.Morsch<sup>1</sup>, B.Volkel<sup>1</sup>;<br>
+Authors: R. Brun<sup>1</sup>, F. Carminati<sup>1</sup>, A. Gheata<sup>1</sup>, I. Hrivnacova<sup>2</sup>, A. Morsch<sup>1</sup>, B. Volkel<sup>1</sup>;<br>
<sup>1</sup>European Organization for Nuclear Research (CERN), Geneva, Switzerland;<br>
<sup>2</sup>Institut de Physique Nucléaire dʼOrsay (IPNO), Université Paris-Sud, CNRS-IN2P3, Orsay, France
diff --git a/net/http/civetweb/LICENSE.md b/net/http/civetweb/LICENSE.md
index ab049e3e72..b6bb8ff037 100644
--- a/net/http/civetweb/LICENSE.md
+++ b/net/http/civetweb/LICENSE.md
@@ -180,10 +180,6 @@ Duktape License
https://github.com/svaarala/duktape/blob/master/LICENSE.txt
-> ===============
-> Duktape license
-> ===============
->
> (http://opensource.org/licenses/MIT)
>
> Copyright (c) 2013-2017 by Duktape authors (see AUTHORS.rst)
diff --git a/proof/proof/src/TProofMgr.cxx b/proof/proof/src/TProofMgr.cxx
index 2a140e4e7a..e41b637a15 100644
--- a/proof/proof/src/TProofMgr.cxx
+++ b/proof/proof/src/TProofMgr.cxx
@@ -775,26 +775,29 @@ void TProofMgr::ReplaceSubdirs(const char *fn, TString &fdst, TList &dirph)
/// Upload files provided via the list 'src' (as TFileInfo or TObjString)
/// to 'mss'. The path under 'mss' is determined by 'dest'; the following
/// place-holders can be used in 'dest':
-/// <d0>, <d1>, <d2>, ... referring to the n-th sub-component
-/// of the src path
-/// <bn> basename in the source path
-/// <bs> basename sans extension
-/// <ex> Extension
-/// <sn> serial number of file in the list
-/// <s0> as <sn> but zero padded
-/// <fn> the full file path
-/// <us>, <gr> the local user and group names.
-/// <pg> the users PROOF group
-/// <pa> immediate parent directory
-/// <gp> next-to immediate parent directory
+///
+/// Place-holder | Meaning |
+/// ----------------------------|------------------------------------
+/// \<d0\>, \<d1\>, \<d2\>, ... | referring to the n-th sub-component of the src path
+/// \<bn\> | basename in the source path
+/// \<bs\> | basename sans extension
+/// \<ex\> | Extension
+/// \<sn\> | serial number of file in the list
+/// \<s0\> | as \<sn\> but zero padded
+/// \<fn\> | the full file path
+/// \<us\>, \<gr\> | the local user and group names.
+/// \<pg\> | the users PROOF group
+/// \<pa\> | immediate parent directory
+/// \<gp\> | next-to immediate parent directory
+///
/// So, for example, if the source filename for the 99-th file is
/// protosrc://host//d0/d1/d2/d3/d4/d5/myfile
-/// then with dest = '/pool/user/<d3>/<d4>/<d5>/<s>/<bn>' and
+/// then with dest = '/pool/user/\<d3\>/\<d4\>/\<d5\>/\<sn\>/\<bn\>' and
/// mss = 'protodst://hostdst//nm/
/// the corresponding destination path is
/// protodst://hostdst//nm/pool/user/d3/d4/d5/99/myfile
///
-/// If 'dest' is empty, <fn> is used.
+/// If 'dest' is empty, \<fn\> is used.
///
/// Returns a TFileCollection with the destination files created; this
/// TFileCollection is, for example, ready to be registered as dataset.
@@ -966,20 +969,23 @@ TFileCollection *TProofMgr::UploadFiles(TList *src,
/// line, with line beginning by '#' ignored (i.e. considered comments).
/// The path under 'mss' is defined by 'dest'; the following
/// place-holders can be used in 'dest':
-/// <d0>, <d1>, <d2>, ... referring to the n-th sub-component
-/// of the src path
-/// <bn> basename in the source path
-/// <sn> serial number of file in the list
-/// <fn> the full file path
-/// <us>, <gr> the local user and group names.
+///
+/// Place-holder | Meaning |
+/// ----------------------------|------------------------------------
+/// \<d0\>, \<d1\>, \<d2\>, ... | referring to the n-th sub-component of the src path
+/// \<bn\> | basename in the source path
+/// \<sn\> | serial number of file in the list
+/// \<fn\> | the full file path
+/// \<us\>, \<gr\> | the local user and group names.
+///
/// So, for example, if the source filename for the 99-th file is
/// protosrc://host//d0/d1/d2/d3/d4/d5/myfile
-/// then with dest = '/pool/user/<d3>/<d4>/<d5>/<s>/<bn>' and
+/// then with dest = '/pool/user/\<d3\>/\<d4\>/\<d5\>/\<sn\>/\<bn\>' and
/// mss = 'protodst://hostdst//nm/
/// the corresponding destination path is
/// protodst://hostdst//nm/pool/user/d3/d4/d5/99/myfile
///
-/// If 'dest' is empty, <fn> is used.
+/// If 'dest' is empty, \<fn\> is used.
///
/// Returns a TFileCollection with the destination files created; this
/// TFileCollection is, for example, ready to be registered as dataset.
diff --git a/proof/proof/src/TProofServ.cxx b/proof/proof/src/TProofServ.cxx
index 24c521743d..3697f257a0 100644
--- a/proof/proof/src/TProofServ.cxx
+++ b/proof/proof/src/TProofServ.cxx
@@ -6696,11 +6696,11 @@ Int_t TProofServ::Fork()
}
////////////////////////////////////////////////////////////////////////////////
-/// Replace <ord>, <user>, <u>, <group>, <stag>, <qnum>, <file>, <rver> and
-/// <build> placeholders in fname.
-/// Here, <rver> is the root version in integer form, e.g. 53403, and <build> a
-/// string includign version, architecture and compiler version, e.g.
-/// '53403_linuxx8664gcc_gcc46' .
+/// Replace \<ord\>, \<user\>, \<u\>, \<group\>, \<stag\>, \<qnum\>, \<file\>,
+/// \<rver\> and \<build\> placeholders in fname.
+/// Here, \<rver\> is the root version in integer form, e.g. 53403, and
+/// \<build\> a string includign version, architecture and compiler version,
+/// e.g. '53403_linuxx8664gcc_gcc46' .
void TProofServ::ResolveKeywords(TString &fname, const char *path)
{
diff --git a/roofit/histfactory/doc/index.md b/roofit/histfactory/doc/index.md
index 32f1c551a4..9256a9cf11 100644
--- a/roofit/histfactory/doc/index.md
+++ b/roofit/histfactory/doc/index.md
@@ -41,12 +41,11 @@ it is organized as follows (see the examples in `${ROOTSYS}/tutorials/histfactor
<li> several 'Measurements' (corresponding to a full fit of the model) each of which specifies</li>
<ul>
<li> a name for this fit to be used in tables and files</li>
-<ul>
-<li> what is the luminosity associated to the measurement in picobarns</li>
-<li> which bins of the histogram should be used</li>
-<li> what is the relative uncertainty on the luminosity </li>
-<li> what is (are) the parameter(s) of interest that will be measured</li>
-<li> which parameters should be fixed/floating (eg. nuisance parameters)</li>
+<li> what is the luminosity associated to the measurement in picobarns</li>
+<li> which bins of the histogram should be used</li>
+<li> what is the relative uncertainty on the luminosity </li>
+<li> what is (are) the parameter(s) of interest that will be measured</li>
+<li> which parameters should be fixed/floating (eg. nuisance parameters)</li>
</ul>
</ul>
</ul>
diff --git a/roofit/histfactory/src/MakeModelAndMeasurementsFast.cxx b/roofit/histfactory/src/MakeModelAndMeasurementsFast.cxx
index e14e63ec89..73a3f627ba 100644
--- a/roofit/histfactory/src/MakeModelAndMeasurementsFast.cxx
+++ b/roofit/histfactory/src/MakeModelAndMeasurementsFast.cxx
@@ -92,12 +92,11 @@ using namespace RooFit;
<li> several 'Measurements' (corresponding to a full fit of the model) each of which specifies</li>
<ul>
<li> a name for this fit to be used in tables and files</li>
- <ul>
- <li> what is the luminosity associated to the measurement in picobarns</li>
- <li> which bins of the histogram should be used</li>
- <li> what is the relative uncertainty on the luminosity </li>
- <li> what is (are) the parameter(s) of interest that will be measured</li>
- <li> which parameters should be fixed/floating (eg. nuisance parameters)</li>
+ <li> what is the luminosity associated to the measurement in picobarns</li>
+ <li> which bins of the histogram should be used</li>
+ <li> what is the relative uncertainty on the luminosity </li>
+ <li> what is (are) the parameter(s) of interest that will be measured</li>
+ <li> which parameters should be fixed/floating (eg. nuisance parameters)</li>
</ul>
</ul>
</ul>
diff --git a/roofit/roofitcore/inc/RooAbsCategory.h b/roofit/roofitcore/inc/RooAbsCategory.h
index a7eaf8772a..4f0937a99d 100644
--- a/roofit/roofitcore/inc/RooAbsCategory.h
+++ b/roofit/roofitcore/inc/RooAbsCategory.h
@@ -199,7 +199,7 @@ protected:
return hasIndex(_currentIndex);
}
- /// If a category depends on the shape of others, *i.e.*, its state numbers or names depend
+ /// If a category depends on the shape of others, i.e.\ its state numbers or names depend
/// on the states of other categories, this function has to be implemented to recompute
/// _stateNames and _insertionOrder.
/// If one of these two changes, setShapeDirty() has to be called to propagate this information
diff --git a/roofit/roofitcore/src/RooSimPdfBuilder.cxx b/roofit/roofitcore/src/RooSimPdfBuilder.cxx
index 4c8289523d..57ea1e9196 100644
--- a/roofit/roofitcore/src/RooSimPdfBuilder.cxx
+++ b/roofit/roofitcore/src/RooSimPdfBuilder.cxx
@@ -99,7 +99,7 @@
/// PDF for each state of the C index category.
/// </p>
/// <p>
-/// In the above example </tt>RooSimPdfBuilder</tt>
+/// In the above example <tt>RooSimPdfBuilder</tt>
/// will first replicate <tt>k</tt> and <tt>s</tt> into
/// <tt>k_C1,k_C2</tt> and <tt>s_C1,s_C2</tt>, as prescribed in the
/// configuration. Then it will recursively replicate all PDF nodes that depend on
@@ -383,7 +383,7 @@
/// <tt>pdfA(x;p,q)</tt> and <tt>pdfB(x;p,r)</tt> that have a common parameter <tt>p</tt>.
/// We want to build a <tt>RooSimultaneous</tt> for both <tt>pdfA</tt> and <tt>B</tt>,
/// which involves a split of parameter <tt>p</tt> and we would like to build the
-/// simultaneous pdfs </tt>simA</tt> and <tt>simB</tt> such that still share their (now split) parameters
+/// simultaneous pdfs <tt>simA</tt> and <tt>simB</tt> such that still share their (now split) parameters
/// <tt>p_XXX</tt>. This is accomplished by letting a single instance of <tt>RooSimPdfBuilder</tt> handle
/// the builds of both <tt>pdfA</tt> and <tt>pdfB</tt>, as illustrated in this example:
/// </p>
diff --git a/tmva/tmva/src/Factory.cxx b/tmva/tmva/src/Factory.cxx
index eda1b9ca1a..866aad0e18 100644
--- a/tmva/tmva/src/Factory.cxx
+++ b/tmva/tmva/src/Factory.cxx
@@ -683,9 +683,9 @@ void TMVA::Factory::WriteDataInformation(DataSetInfo& fDataSetInfo)
}
////////////////////////////////////////////////////////////////////////////////
-/// Iterates through all booked methods and sees if they use parameter tuning and if so..
-/// does just that i.e. calls "Method::Train()" for different parameter settings and
-/// keeps in mind the "optimal one"... and that's the one that will later on be used
+/// Iterates through all booked methods and sees if they use parameter tuning and if so
+/// does just that, i.e.\ calls "Method::Train()" for different parameter settings and
+/// keeps in mind the "optimal one"...\ and that's the one that will later on be used
/// in the main training loop.
std::map<TString,Double_t> TMVA::Factory::OptimizeAllMethods(TString fomType, TString fitType)
diff --git a/tmva/tmva/src/Reader.cxx b/tmva/tmva/src/Reader.cxx
index 56d65bb9bf..b34ee9f1de 100644
--- a/tmva/tmva/src/Reader.cxx
+++ b/tmva/tmva/src/Reader.cxx
@@ -594,7 +594,7 @@ const std::vector< Float_t >& TMVA::Reader::EvaluateRegression( const TString& m
////////////////////////////////////////////////////////////////////////////////
/// evaluates the regression MVA
/// check for NaN in event data: (note: in the factory, this check was done already at the creation of the datasets, hence
-/// it is not again checked in each of these subsequent calls..
+/// it is not again checked in each of these subsequent calls.
const std::vector< Float_t >& TMVA::Reader::EvaluateRegression( MethodBase* method, Double_t /*aux*/ )
{
@@ -660,7 +660,7 @@ const std::vector< Float_t >& TMVA::Reader::EvaluateMulticlass( const TString& m
////////////////////////////////////////////////////////////////////////////////
/// evaluates the multiclass MVA
/// check for NaN in event data: (note: in the factory, this check was done already at the creation of the datasets, hence
-/// it is not again checked in each of these subsequent calls..
+/// it is not again checked in each of these subsequent calls.
const std::vector< Float_t >& TMVA::Reader::EvaluateMulticlass( MethodBase* method, Double_t /*aux*/ )
{
diff --git a/tree/dataframe/inc/ROOT/RDF/RColumnValue.hxx b/tree/dataframe/inc/ROOT/RDF/RColumnValue.hxx
index 17527ac16d..497dd3d5c6 100644
--- a/tree/dataframe/inc/ROOT/RDF/RColumnValue.hxx
+++ b/tree/dataframe/inc/ROOT/RDF/RColumnValue.hxx
@@ -93,7 +93,7 @@ class R__CLING_PTRCHECK(off) RColumnValue {
/// Enumerator for the different properties of the branch storage in memory
enum class EStorageType : char { kContiguous, kUnknown, kSparse };
/// Signal whether we ever checked that the branch we are reading with a TTreeReaderArray stores array elements
- /// in contiguous memory. Only used when T == RVec<U>.
+ /// in contiguous memory. Only used when T == RVec\<U\>.
EStorageType fStorageType = EStorageType::kUnknown;
/// If MustUseRVec, i.e. we are reading an array, we return a reference to this RVec to clients
RVec<ColumnValue_t> fRVec;
diff --git a/tutorials/net/udpserver.c b/tutorials/net/udpserver.c
index c54685400e..a74f6f0a85 100644
--- a/tutorials/net/udpserver.c
+++ b/tutorials/net/udpserver.c
@@ -4,7 +4,7 @@
/* Converted to echo client/server with select() (timeout option).
See testTUDPSocket.C */
-/* Compile with: gcc udpserver.c -o udpserver
+/* Compile with: gcc udpserver.c -o udpserver */
/* on Windows: cl -nologo -Z7 -MD -GR -EHsc udpserver.c */
/* 3/30/05 John Schultz */
diff --git a/tutorials/tmva/TMVA_CNN_Classification.C b/tutorials/tmva/TMVA_CNN_Classification.C
index 47f26368d9..89373a8887 100644
--- a/tutorials/tmva/TMVA_CNN_Classification.C
+++ b/tutorials/tmva/TMVA_CNN_Classification.C
@@ -22,7 +22,7 @@
/// Helper function to create input images data
/// we create a signal and background 2D histograms from 2d gaussians
/// with a location (means in X and Y) different for each event
-/// The difference between signal and background is in the gaussian width..
+/// The difference between signal and background is in the gaussian width.
/// The width for the bakground gaussian is slightly larger than the signal width by few % values
///
///
--
2.26.2

View file

@ -1,378 +0,0 @@
From 116be70d2786a3fecdfcd6445d06ad6f3768f5a6 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Fri, 3 Jul 2020 08:08:33 +0200
Subject: [PATCH 1/5] Fix \file references in doxygen markup
---
core/base/v7/inc/ROOT/RDirectory.hxx | 2 +-
core/base/v7/inc/ROOT/RDirectoryEntry.hxx | 2 +-
core/base/v7/inc/ROOT/RError.hxx | 2 +-
core/base/v7/inc/ROOT/RIndexIter.hxx | 2 +-
core/base/v7/inc/ROOT/RLogger.hxx | 2 +-
core/base/v7/inc/ROOT/RTupleApply.hxx | 2 +-
core/base/v7/inc/ROOT/impl_tuple_apply.hxx | 2 +-
core/base/v7/src/RLogger.cxx | 2 +-
core/clingutils/test/TClingUtilsTests.cxx | 2 +-
core/foundation/inc/ROOT/RNotFn.hxx | 2 +-
core/foundation/inc/ROOT/RSpan.hxx | 2 +-
core/foundation/inc/ROOT/span.hxx | 2 +-
core/foundation/src/FoundationUtils.cxx | 2 +-
gui/browsable/inc/ROOT/Browsable/RItem.hxx | 2 +-
gui/browsable/src/RHistDraw7Provider.cxx | 2 +-
gui/browsable/src/RSysFile.cxx | 2 +-
gui/browserv7/inc/ROOT/RBrowserReply.hxx | 2 +-
hist/hist/test/TFormulaGradientTests.cxx | 2 +-
hist/histdrawv7/inc/ROOT/RHistDrawable.hxx | 2 +-
hist/histv7/inc/ROOT/RAxis.hxx | 2 +-
hist/histv7/inc/ROOT/RAxisConfig.hxx | 2 +-
hist/histv7/inc/ROOT/RHist.hxx | 2 +-
hist/histv7/inc/ROOT/RHistBinIter.hxx | 2 +-
hist/histv7/inc/ROOT/RHistBufferedFill.hxx | 2 +-
hist/histv7/inc/ROOT/RHistConcurrentFill.hxx | 2 +-
hist/histv7/inc/ROOT/RHistData.hxx | 2 +-
hist/histv7/inc/ROOT/RHistImpl.hxx | 2 +-
hist/histv7/inc/ROOT/RHistUtils.hxx | 2 +-
hist/histv7/inc/ROOT/RHistView.hxx | 2 +-
io/io/v7/inc/ROOT/RFile.hxx | 2 +-
math/mathcore/test/CladDerivatorTests.cxx | 2 +-
math/mathcore/v7/inc/ROOT/RFit.hxx | 2 +-
tmva/tmva/inc/TMVA/NeuralNet.h | 2 +-
33 files changed, 33 insertions(+), 33 deletions(-)
diff --git a/core/base/v7/inc/ROOT/RDirectory.hxx b/core/base/v7/inc/ROOT/RDirectory.hxx
index 5331f91144..6d1a4b0541 100644
--- a/core/base/v7/inc/ROOT/RDirectory.hxx
+++ b/core/base/v7/inc/ROOT/RDirectory.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RDirectory.h
+/// \file ROOT/RDirectory.hxx
/// \ingroup Base ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-07-31
diff --git a/core/base/v7/inc/ROOT/RDirectoryEntry.hxx b/core/base/v7/inc/ROOT/RDirectoryEntry.hxx
index a7258bc642..1a33e5003a 100644
--- a/core/base/v7/inc/ROOT/RDirectoryEntry.hxx
+++ b/core/base/v7/inc/ROOT/RDirectoryEntry.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RDirectoryEntry.h
+/// \file ROOT/RDirectoryEntry.hxx
/// \ingroup Base ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-07-31
diff --git a/core/base/v7/inc/ROOT/RError.hxx b/core/base/v7/inc/ROOT/RError.hxx
index 7a0d363e7f..6af7a38f01 100644
--- a/core/base/v7/inc/ROOT/RError.hxx
+++ b/core/base/v7/inc/ROOT/RError.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RError.h
+/// \file ROOT/RError.hxx
/// \ingroup Base ROOT7
/// \author Jakob Blomer <jblomer@cern.ch>
/// \date 2019-12-11
diff --git a/core/base/v7/inc/ROOT/RIndexIter.hxx b/core/base/v7/inc/ROOT/RIndexIter.hxx
index 1e290d82c8..fc424fdb8d 100644
--- a/core/base/v7/inc/ROOT/RIndexIter.hxx
+++ b/core/base/v7/inc/ROOT/RIndexIter.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RIndexIter.h
+/// \file ROOT/RIndexIter.hxx
/// \ingroup Base ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2016-01-19
diff --git a/core/base/v7/inc/ROOT/RLogger.hxx b/core/base/v7/inc/ROOT/RLogger.hxx
index c1852656ee..d4e3e6e7bd 100644
--- a/core/base/v7/inc/ROOT/RLogger.hxx
+++ b/core/base/v7/inc/ROOT/RLogger.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/TLogger.h
+/// \file ROOT/RLogger.hxx
/// \ingroup Base ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-03-29
diff --git a/core/base/v7/inc/ROOT/RTupleApply.hxx b/core/base/v7/inc/ROOT/RTupleApply.hxx
index 9a80bfcd6f..995246505f 100644
--- a/core/base/v7/inc/ROOT/RTupleApply.hxx
+++ b/core/base/v7/inc/ROOT/RTupleApply.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RTupleApply.h
+/// \file ROOT/RTupleApply.hxx
/// \ingroup Base StdExt ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-09-06
diff --git a/core/base/v7/inc/ROOT/impl_tuple_apply.hxx b/core/base/v7/inc/ROOT/impl_tuple_apply.hxx
index dc12706906..68d6988f97 100644
--- a/core/base/v7/inc/ROOT/impl_tuple_apply.hxx
+++ b/core/base/v7/inc/ROOT/impl_tuple_apply.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/impl_tuple_apply.h
+/// \file ROOT/impl_tuple_apply.hxx
/// \ingroup Base StdExt ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-07-09
diff --git a/core/base/v7/src/RLogger.cxx b/core/base/v7/src/RLogger.cxx
index 69aba0b05c..3ac8bb760f 100644
--- a/core/base/v7/src/RLogger.cxx
+++ b/core/base/v7/src/RLogger.cxx
@@ -1,4 +1,4 @@
-/// \file TLogger.cxx
+/// \file RLogger.cxx
/// \ingroup Base ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-07-07
diff --git a/core/clingutils/test/TClingUtilsTests.cxx b/core/clingutils/test/TClingUtilsTests.cxx
index fca26705c3..fbc12cd352 100644
--- a/core/clingutils/test/TClingUtilsTests.cxx
+++ b/core/clingutils/test/TClingUtilsTests.cxx
@@ -1,4 +1,4 @@
-/// \file TClingUtilsTest.cxx
+/// \file TClingUtilsTests.cxx
///
/// \brief The file contain unit tests which test the TClingUtils.h
///
diff --git a/core/foundation/inc/ROOT/RNotFn.hxx b/core/foundation/inc/ROOT/RNotFn.hxx
index a6dd13679e..a3877797f3 100644
--- a/core/foundation/inc/ROOT/RNotFn.hxx
+++ b/core/foundation/inc/ROOT/RNotFn.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RNotFn.h
+/// \file ROOT/RNotFn.hxx
/// \ingroup Base StdExt
/// \author Danilo Piparo, Enrico Guiraud
/// \date 2018-01-19
diff --git a/core/foundation/inc/ROOT/RSpan.hxx b/core/foundation/inc/ROOT/RSpan.hxx
index 9e356493e6..b7366d58e7 100644
--- a/core/foundation/inc/ROOT/RSpan.hxx
+++ b/core/foundation/inc/ROOT/RSpan.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RSpan.h
+/// \file ROOT/RSpan.hxx
/// \ingroup Base StdExt
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-09-06
diff --git a/core/foundation/inc/ROOT/span.hxx b/core/foundation/inc/ROOT/span.hxx
index ce1b0e1d96..185055bbe6 100644
--- a/core/foundation/inc/ROOT/span.hxx
+++ b/core/foundation/inc/ROOT/span.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/rhysd_span.h
+/// \file ROOT/span.hxx
/// \ingroup Base StdExt
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-09-06
diff --git a/core/foundation/src/FoundationUtils.cxx b/core/foundation/src/FoundationUtils.cxx
index 9de395698b..d70e196130 100644
--- a/core/foundation/src/FoundationUtils.cxx
+++ b/core/foundation/src/FoundationUtils.cxx
@@ -1,4 +1,4 @@
-/// \file FoundationUtils.hxx
+/// \file FoundationUtils.cxx
///
/// \brief The file contains utilities which are foundational and could be used
/// across the core component of ROOT.
diff --git a/gui/browsable/inc/ROOT/Browsable/RItem.hxx b/gui/browsable/inc/ROOT/Browsable/RItem.hxx
index a07870a2cb..290587013e 100644
--- a/gui/browsable/inc/ROOT/Browsable/RItem.hxx
+++ b/gui/browsable/inc/ROOT/Browsable/RItem.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RBrowser.hxx
+/// \file ROOT/RItem.hxx
/// \ingroup WebGui ROOT7
/// \author Bertrand Bellenot <bertrand.bellenot@cern.ch>
/// \author Sergey Linev <S.Linev@gsi.de>
diff --git a/gui/browsable/src/RHistDraw7Provider.cxx b/gui/browsable/src/RHistDraw7Provider.cxx
index 416db22472..e2e15303c6 100644
--- a/gui/browsable/src/RHistDraw7Provider.cxx
+++ b/gui/browsable/src/RHistDraw7Provider.cxx
@@ -1,4 +1,4 @@
-/// \file RDrawableRHist.cxx
+/// \file RHistDraw7Provider.cxx
/// \ingroup rbrowser
/// \author Bertrand Bellenot <bertrand.bellenot@cern.ch>
/// \author Sergey Linev <S.Linev@gsi.de>
diff --git a/gui/browsable/src/RSysFile.cxx b/gui/browsable/src/RSysFile.cxx
index d5f481cb83..4447164f52 100644
--- a/gui/browsable/src/RSysFile.cxx
+++ b/gui/browsable/src/RSysFile.cxx
@@ -6,7 +6,7 @@
* For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/
-/// \file ROOT/RFileBrowsable.cxx
+/// \file ROOT/RSysFile.cxx
/// \ingroup rbrowser
/// \author Sergey Linev <S.Linev@gsi.de>
/// \date 2019-10-15
diff --git a/gui/browserv7/inc/ROOT/RBrowserReply.hxx b/gui/browserv7/inc/ROOT/RBrowserReply.hxx
index bdb94f60ea..35a2f1f978 100644
--- a/gui/browserv7/inc/ROOT/RBrowserReply.hxx
+++ b/gui/browserv7/inc/ROOT/RBrowserReply.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RBrowserRequest.hxx
+/// \file ROOT/RBrowserReply.hxx
/// \ingroup WebGui ROOT7
/// \author Bertrand Bellenot <bertrand.bellenot@cern.ch>
/// \author Sergey Linev <S.Linev@gsi.de>
diff --git a/hist/hist/test/TFormulaGradientTests.cxx b/hist/hist/test/TFormulaGradientTests.cxx
index 8c11a56077..74c0930f03 100644
--- a/hist/hist/test/TFormulaGradientTests.cxx
+++ b/hist/hist/test/TFormulaGradientTests.cxx
@@ -1,4 +1,4 @@
-/// \file TFormulaGradientTests.h
+/// \file TFormulaGradientTests.cxx
///
/// \brief The file contain unit tests which test the clad-based gradient
/// computations.
diff --git a/hist/histdrawv7/inc/ROOT/RHistDrawable.hxx b/hist/histdrawv7/inc/ROOT/RHistDrawable.hxx
index ac56b9c8f3..0b3b635d92 100644
--- a/hist/histdrawv7/inc/ROOT/RHistDrawable.hxx
+++ b/hist/histdrawv7/inc/ROOT/RHistDrawable.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RHistDrawable.h
+/// \file ROOT/RHistDrawable.hxx
/// \ingroup HistDraw ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-07-09
diff --git a/hist/histv7/inc/ROOT/RAxis.hxx b/hist/histv7/inc/ROOT/RAxis.hxx
index 1d35ed9b93..0371a06f97 100644
--- a/hist/histv7/inc/ROOT/RAxis.hxx
+++ b/hist/histv7/inc/ROOT/RAxis.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RAxis.h
+/// \file ROOT/RAxis.hxx
/// \ingroup Hist ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-03-23
diff --git a/hist/histv7/inc/ROOT/RAxisConfig.hxx b/hist/histv7/inc/ROOT/RAxisConfig.hxx
index 1e100986f0..34bf2f6a4a 100644
--- a/hist/histv7/inc/ROOT/RAxisConfig.hxx
+++ b/hist/histv7/inc/ROOT/RAxisConfig.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RAxisConfig.h
+/// \file ROOT/RAxisConfig.hxx
/// \ingroup Hist ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2020-02-05
diff --git a/hist/histv7/inc/ROOT/RHist.hxx b/hist/histv7/inc/ROOT/RHist.hxx
index ebb319f1ef..5567683b27 100644
--- a/hist/histv7/inc/ROOT/RHist.hxx
+++ b/hist/histv7/inc/ROOT/RHist.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RHist.h
+/// \file ROOT/RHist.hxx
/// \ingroup Hist ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-03-23
diff --git a/hist/histv7/inc/ROOT/RHistBinIter.hxx b/hist/histv7/inc/ROOT/RHistBinIter.hxx
index 60f57dd20e..ab77dfbeaa 100644
--- a/hist/histv7/inc/ROOT/RHistBinIter.hxx
+++ b/hist/histv7/inc/ROOT/RHistBinIter.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RHistBinIter.h
+/// \file ROOT/RHistBinIter.hxx
/// \ingroup Hist ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-08-07
diff --git a/hist/histv7/inc/ROOT/RHistBufferedFill.hxx b/hist/histv7/inc/ROOT/RHistBufferedFill.hxx
index bb1cade29b..8efe00e207 100644
--- a/hist/histv7/inc/ROOT/RHistBufferedFill.hxx
+++ b/hist/histv7/inc/ROOT/RHistBufferedFill.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RHistBufferedFill.h
+/// \file ROOT/RHistBufferedFill.hxx
/// \ingroup Hist ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-07-03
diff --git a/hist/histv7/inc/ROOT/RHistConcurrentFill.hxx b/hist/histv7/inc/ROOT/RHistConcurrentFill.hxx
index a6b4b6a8e2..8ff76eb659 100644
--- a/hist/histv7/inc/ROOT/RHistConcurrentFill.hxx
+++ b/hist/histv7/inc/ROOT/RHistConcurrentFill.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RHistConcurrentFill.h
+/// \file ROOT/RHistConcurrentFill.hxx
/// \ingroup Hist ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-07-03
diff --git a/hist/histv7/inc/ROOT/RHistData.hxx b/hist/histv7/inc/ROOT/RHistData.hxx
index 901bd5c33a..9757986ff4 100644
--- a/hist/histv7/inc/ROOT/RHistData.hxx
+++ b/hist/histv7/inc/ROOT/RHistData.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RHistData.h
+/// \file ROOT/RHistData.hxx
/// \ingroup Hist ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-06-14
diff --git a/hist/histv7/inc/ROOT/RHistImpl.hxx b/hist/histv7/inc/ROOT/RHistImpl.hxx
index 483d879f0e..b6d4b2c6b5 100644
--- a/hist/histv7/inc/ROOT/RHistImpl.hxx
+++ b/hist/histv7/inc/ROOT/RHistImpl.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RHistImpl.h
+/// \file ROOT/RHistImpl.hxx
/// \ingroup Hist ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-03-23
diff --git a/hist/histv7/inc/ROOT/RHistUtils.hxx b/hist/histv7/inc/ROOT/RHistUtils.hxx
index 3733113c2b..08a342bf61 100644
--- a/hist/histv7/inc/ROOT/RHistUtils.hxx
+++ b/hist/histv7/inc/ROOT/RHistUtils.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RHistData.h
+/// \file ROOT/RHistUtils.hxx
/// \ingroup Hist ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2016-06-01
diff --git a/hist/histv7/inc/ROOT/RHistView.hxx b/hist/histv7/inc/ROOT/RHistView.hxx
index b65d3518dd..d2b40e0f35 100644
--- a/hist/histv7/inc/ROOT/RHistView.hxx
+++ b/hist/histv7/inc/ROOT/RHistView.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RHistView.h
+/// \file ROOT/RHistView.hxx
/// \ingroup Hist ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-08-06
diff --git a/io/io/v7/inc/ROOT/RFile.hxx b/io/io/v7/inc/ROOT/RFile.hxx
index 6d3baaec05..c371a25875 100644
--- a/io/io/v7/inc/ROOT/RFile.hxx
+++ b/io/io/v7/inc/ROOT/RFile.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RFile.h
+/// \file ROOT/RFile.hxx
/// \ingroup Base ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-07-31
diff --git a/math/mathcore/test/CladDerivatorTests.cxx b/math/mathcore/test/CladDerivatorTests.cxx
index e4289a7286..d1682094e0 100644
--- a/math/mathcore/test/CladDerivatorTests.cxx
+++ b/math/mathcore/test/CladDerivatorTests.cxx
@@ -1,4 +1,4 @@
-/// \file CladDerivator.h
+/// \file CladDerivatorTests.cxx
///
/// \brief The file contain unit tests which test the CladDerivator facility.
///
diff --git a/math/mathcore/v7/inc/ROOT/RFit.hxx b/math/mathcore/v7/inc/ROOT/RFit.hxx
index 4fae336242..5b92733152 100644
--- a/math/mathcore/v7/inc/ROOT/RFit.hxx
+++ b/math/mathcore/v7/inc/ROOT/RFit.hxx
@@ -1,4 +1,4 @@
-/// \file ROOT/RFit.h
+/// \file ROOT/RFit.hxx
/// \ingroup MathCore ROOT7
/// \author Axel Naumann <axel@cern.ch>
/// \date 2015-09-06
diff --git a/tmva/tmva/inc/TMVA/NeuralNet.h b/tmva/tmva/inc/TMVA/NeuralNet.h
index 31229cb1cf..bae98a48b2 100644
--- a/tmva/tmva/inc/TMVA/NeuralNet.h
+++ b/tmva/tmva/inc/TMVA/NeuralNet.h
@@ -1,5 +1,5 @@
/**
- * @file NeuralNet
+ * @file TMVA/NeuralNet.h
* @author Peter Speckmayer
* @version 1.0
*
--
2.26.2

View file

@ -1,29 +0,0 @@
From 8266262f76eaef4dc72ffda38e1d315be2ce3ff0 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Wed, 8 Jul 2020 19:41:34 +0200
Subject: [PATCH 5/5] Make the name of macro match the filename
Fixes:
warning: Failed to call `rs302_JeffreysPriorDemo()` to execute the macro.
Add this function or rename the macro. Falling back to `.L`.
---
tutorials/roostats/rs302_JeffreysPriorDemo.C | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tutorials/roostats/rs302_JeffreysPriorDemo.C b/tutorials/roostats/rs302_JeffreysPriorDemo.C
index c2f720a5f9..1c52e5dd83 100644
--- a/tutorials/roostats/rs302_JeffreysPriorDemo.C
+++ b/tutorials/roostats/rs302_JeffreysPriorDemo.C
@@ -49,7 +49,7 @@
using namespace RooFit;
-void JeffreysPriorDemo()
+void rs302_JeffreysPriorDemo()
{
RooWorkspace w("w");
w.factory("Uniform::u(x[0,1])");
--
2.26.2

View file

@ -1,214 +0,0 @@
From 7336caccd3288a9164c82b78053e8f4f59eb1a9c Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Sun, 12 Jul 2020 12:12:15 +0200
Subject: [PATCH] Remove /** comments */ from md files
---
math/genvector/doc/Genvector.md | 7 -------
math/genvector/doc/LorentzVector.md | 6 +-----
math/genvector/doc/Point3D.md | 6 ------
math/genvector/doc/Transformation.md | 6 ------
math/genvector/doc/Vector3D.md | 4 ----
math/genvector/doc/VectorPoint2D.md | 6 ------
math/genvector/doc/externalUsage.md | 6 ------
math/mathcore/doc/MathCore.md | 5 -----
math/mathmore/doc/MathMore.md | 5 -----
math/matrix/doc/Matrix.md | 3 ---
math/unuran/doc/Unuran.md | 8 ++------
11 files changed, 3 insertions(+), 59 deletions(-)
diff --git a/math/genvector/doc/Genvector.md b/math/genvector/doc/Genvector.md
index 12e4e47a93..50dc61b2ce 100644
--- a/math/genvector/doc/Genvector.md
+++ b/math/genvector/doc/Genvector.md
@@ -1,5 +1,3 @@
-/**
-
\page Vector Generic Vector for 2, 3 and 4 Dimensions
@@ -113,8 +111,3 @@ A more detailed description of all the GenVector classes is available in this [d
2. [CLHEP Geometry package](http://www.hep.phy.cam.ac.uk/lhcb/doc/CLHEP/1.9.1.2/html/namespaceH)
3. [%ROOT Physics Vector classes](http://root.cern.ch/root/html/PHYSICS_Index.html)
4. [CMS Vector package](http://lcgapp.cern.ch/doxygen/SEAL/snapshot/html/dir_000007.html)
-
-* * *
-
-*/
-
diff --git a/math/genvector/doc/LorentzVector.md b/math/genvector/doc/LorentzVector.md
index b40ea8c69c..e01ed4a8ca 100644
--- a/math/genvector/doc/LorentzVector.md
+++ b/math/genvector/doc/LorentzVector.md
@@ -1,6 +1,4 @@
-// LorentzVector doxygen page
-
-/** \page LorentzVectorPage LorentzVector Classes
+\page LorentzVectorPage LorentzVector Classes
To avoid exposing templated parameter to the users, typedefs are defined for all types of vectors based an double's and float's. To use them, one must include the header file _Math/Vector4D.h_. The following typedef's, defined in the header file _Math/Vector4Dfwd.h_, are available for the different instantiations of the template class ROOT::Math::LorentzVector:
@@ -110,5 +108,3 @@ v.Beta(); // return beta and gamma value
v.Gamma() // (vector must be time-like otherwise result is meaningless)
XYZVector b = v.BoostToCM() // return boost vector which will bring the Vector in its mas frame (P=0)
</pre>
-
-*/
diff --git a/math/genvector/doc/Point3D.md b/math/genvector/doc/Point3D.md
index a273b182d4..db55c68752 100644
--- a/math/genvector/doc/Point3D.md
+++ b/math/genvector/doc/Point3D.md
@@ -1,7 +1,3 @@
-// Point3d doxygen page
-
-/**
-
\page Point3DPage Point3D Classes
To avoid exposing templated parameter to the users, typedefs are defined for all types of vectors based an double's and float's. To use them, one must include the header file _Math/Point3D.h_. The following typedef's, defined in the header file _Math/Point3Dfwd.h_, are available for the different instantiations of the template class ROOT::Math::PositionVector3D:
@@ -61,5 +57,3 @@ Exactly as for the 3D Vectors, the following operations are allowed:
* comparison of points
* scaling and division of points with a scalar
* dot and cross product with any type of vector
-
-*/
diff --git a/math/genvector/doc/Transformation.md b/math/genvector/doc/Transformation.md
index 7e66107f55..edc36778ed 100644
--- a/math/genvector/doc/Transformation.md
+++ b/math/genvector/doc/Transformation.md
@@ -1,7 +1,3 @@
-// Rotation and transformation doxygen page
-
-/**
-
\page TransformPage Vector Transformations
Transformations classes are grouped in Rotations (in 3 dimensions), Lorentz transformations and Poincarre transformations, which are Translation/Rotation combinations. Each group has several members which may model physically equivalent trasformations but with different internal representations.
@@ -114,5 +110,3 @@ Transform3D t; t.GetComponens(m); // fill matrix of size 3x4 with c
</pre>
For more detailed documentation on all methods see the reference doc for the specific transformation class.
-
-*/
diff --git a/math/genvector/doc/Vector3D.md b/math/genvector/doc/Vector3D.md
index 4f65f6b603..9d10ce7db2 100644
--- a/math/genvector/doc/Vector3D.md
+++ b/math/genvector/doc/Vector3D.md
@@ -1,5 +1,3 @@
-/**
-
\page Vector3DPage Vector3D Classes
@@ -120,5 +118,3 @@ Note that the multiplication between two vectors using the operator * is not sup
<pre>XYZVector u = v1.Unit(); // return unit vector parallel to v1
</pre>
-
-*/
diff --git a/math/genvector/doc/VectorPoint2D.md b/math/genvector/doc/VectorPoint2D.md
index 5c5e665088..287f3f8b73 100644
--- a/math/genvector/doc/VectorPoint2D.md
+++ b/math/genvector/doc/VectorPoint2D.md
@@ -1,7 +1,3 @@
-// Vector2d doxygen page
-
-/**
-
\page Vector2DPage 2D Point and Vector Classes
Similar to the \ref Vector3DPage and \ref Point3DPage , typedefs are defined to avoid exposing templated parameter to the users, for all 2D vectors based an double's and float's. To use them, one must include the header file _Math/Vector2D.h_ or _Math/Point2D.h_. The following typedef's, defined in the header file _Math/Vector2Dfwd.h_, are available for the different instantiations of the template class ROOT::Math::DisplacementVector2D:
@@ -19,5 +15,3 @@ The typedef's, defined in the header file _Math/Point2Dfwd.h_, available for the
* ROOT::Math::Polar2DPointF vector based on r,phi coordinates (polar) in float precision
Similar constructs, functions and operations available for the 3D vectors and points (see \ref Vector3DPage and \ref Point3DPage ) are available also for the 2D vector and points. No transformations or rotation classes are available for the 2D vectors.
-
-*/
diff --git a/math/genvector/doc/externalUsage.md b/math/genvector/doc/externalUsage.md
index f8580225a5..4413bbafca 100644
--- a/math/genvector/doc/externalUsage.md
+++ b/math/genvector/doc/externalUsage.md
@@ -1,7 +1,3 @@
-// example on using with exteral classes (doxygen page)
-
-/**
-
\page ExtUsagePage Examples with External Packages
### Connection to Linear Algebra classes
@@ -48,5 +44,3 @@ XYZPoint p1(hp); // create a 3D Point from CLHEP geom
CLHEP::HepLorentzVector hq;
XYZTVector q(hq); // create a LorentzVector from CLHEP L.V.</double> </pre>
-
-*/
diff --git a/math/mathcore/doc/MathCore.md b/math/mathcore/doc/MathCore.md
index 4efc043cab..8d38b4ae19 100644
--- a/math/mathcore/doc/MathCore.md
+++ b/math/mathcore/doc/MathCore.md
@@ -1,5 +1,3 @@
-/**
-
\defgroup MathCore MathCore
\brief The Core Mathematical Library of %ROOT. See the \ref MathCorePage "MathCore" description page.
@@ -32,6 +30,3 @@ MathCore contains instead now classes which were originally part of _libCore_. T
* Other classes, such as
* TKDTree for partitioning the data using a kd-Tree and TKDTreeBinning for binning data using a kdTree
* ROOT::Math::GoFTest for goodness of fit tests
-
-
-*/
diff --git a/math/mathmore/doc/MathMore.md b/math/mathmore/doc/MathMore.md
index 28b3528a68..f30ef6d0be 100644
--- a/math/mathmore/doc/MathMore.md
+++ b/math/mathmore/doc/MathMore.md
@@ -1,6 +1,3 @@
-
-/**
-
\defgroup MathMore MathMore
\brief The Mathematical library providing some advanced functionality and based on GSL. See the \ref MathMorePage "MathMore" Library page.
@@ -32,5 +29,3 @@ To build MathMore you need to have first GSL installed somewhere in your system.
MathMore (and its %ROOT CINT dictionary) can be built within %ROOT whenever a GSL library is found in the system. Optionally the GSL library and header file location can be specified in the %ROOT configure script with _configure --with-gsl-incdir=... --with-gsl-libdir=..._
MathMore links with the GSL static libraries. On some platform (like Linux x86-64) GSL needs to be compiled with the option _--with-pic_.
The source code of MathMore is distributed under the GNU General Public License
-
-*/
diff --git a/math/matrix/doc/Matrix.md b/math/matrix/doc/Matrix.md
index ed0d9fffe8..f0b9d7a06a 100644
--- a/math/matrix/doc/Matrix.md
+++ b/math/matrix/doc/Matrix.md
@@ -1,6 +1,3 @@
-/**
-
-
\page MatrixPage The ROOT Matrix Linear Algebra classes.
diff --git a/math/unuran/doc/Unuran.md b/math/unuran/doc/Unuran.md
index d807c4e807..4c64e0d214 100644
--- a/math/unuran/doc/Unuran.md
+++ b/math/unuran/doc/Unuran.md
@@ -1,9 +1,7 @@
-/**
-
-Universal Non Uniform Random number generator for generating non uniform pseudo-random numbers
-
\defgroup Unuran Unuran
+\brief Universal Non Uniform Random number generator for generating non uniform pseudo-random numbers.
+
\ingroup Math
UNU.RAN, (Universal Non Uniform Random number generator for generating non uniform pseudo-random numbers)
@@ -120,5 +118,3 @@ TRandom pointer when constructing the TUnuran class (by default the ROOT gRandom
The (UNU.RAN documentation)[http://statistik.wu-wien.ac.at/unuran/doc/unuran.html#Top] provides a detailed
description of all the available methods and the possible options which one can pass to UNU.RAN for the various distributions.
-*/
-
--
2.26.2

View file

@ -1,25 +0,0 @@
From e6e6715a73fb8b65ee24c11ff08ca34e25db9ef1 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Wed, 8 Jul 2020 19:41:10 +0200
Subject: [PATCH 4/5] Add missing underscore
---
tutorials/fit/vectorizedFit.C | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tutorials/fit/vectorizedFit.C b/tutorials/fit/vectorizedFit.C
index d6b13e2fa7..1f6e317aa6 100644
--- a/tutorials/fit/vectorizedFit.C
+++ b/tutorials/fit/vectorizedFit.C
@@ -8,7 +8,7 @@
/// TF1::SetVectorized
///
/// \macro_image
-/// \macro output
+/// \macro_output
/// \macro_code
///
/// \author Lorenzo Moneta
--
2.26.2

File diff suppressed because it is too large Load diff

View file

@ -1,16 +0,0 @@
diff -ur root-6.22.04.orig/bindings/pyroot/pythonizations/python/ROOT/__init__.py root-6.22.04/bindings/pyroot/pythonizations/python/ROOT/__init__.py
--- root-6.22.04.orig/bindings/pyroot/pythonizations/python/ROOT/__init__.py 2020-11-13 11:42:09.000000000 +0100
+++ root-6.22.04/bindings/pyroot/pythonizations/python/ROOT/__init__.py 2020-11-14 15:38:24.462463625 +0100
@@ -19,6 +19,12 @@
# Prevent cppyy from filtering ROOT libraries
environ['CPPYY_NO_ROOT_FILTER'] = '1'
+try:
+ from ctypes import cdll
+ libCore = cdll.LoadLibrary("libCore.so")
+except:
+ print("An exception occurred while loading libCore.so with ctypes")
+
import cppyy
if not 'ROOTSYS' in environ:
# Revert setting made by cppyy

View file

@ -1,41 +0,0 @@
From 00bbfddbf5c900923b284ddc540d2458bda15b7b Mon Sep 17 00:00:00 2001
From: Stephan Hageboeck <stephan.hageboeck@cern.ch>
Date: Wed, 5 Aug 2020 13:22:46 +0200
Subject: [PATCH] Fix a shadow warning.
---
roofit/roofitmore/src/RooHypatia2.cxx | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/roofit/roofitmore/src/RooHypatia2.cxx b/roofit/roofitmore/src/RooHypatia2.cxx
index 7d550b2753..fe80f414d0 100644
--- a/roofit/roofitmore/src/RooHypatia2.cxx
+++ b/roofit/roofitmore/src/RooHypatia2.cxx
@@ -119,21 +119,21 @@
/// \param[in] a2 Start of right tail.
/// \param[in] n2 Shape parameter of right tail (\f$ n2 \ge 0 \f$). With \f$ n2 = 0 \f$, the function is constant.
RooHypatia2::RooHypatia2(const char *name, const char *title, RooAbsReal& x, RooAbsReal& lambda,
- RooAbsReal& zeta, RooAbsReal& beta, RooAbsReal& sigma, RooAbsReal& mu, RooAbsReal& a,
+ RooAbsReal& zeta, RooAbsReal& beta, RooAbsReal& argSigma, RooAbsReal& mu, RooAbsReal& a,
RooAbsReal& n, RooAbsReal& a2, RooAbsReal& n2) :
RooAbsPdf(name, title),
_x("x", "x", this, x),
_lambda("lambda", "Lambda", this, lambda),
_zeta("zeta", "zeta", this, zeta),
_beta("beta", "Asymmetry parameter beta", this, beta),
- _sigma("sigma", "Width parameter sigma", this, sigma),
+ _sigma("sigma", "Width parameter sigma", this, argSigma),
_mu("mu", "Location parameter mu", this, mu),
_a("a", "Left tail location a", this, a),
_n("n", "Left tail parameter n", this, n),
_a2("a2", "Right tail location a2", this, a2),
_n2("n2", "Right tail parameter n2", this, n2)
{
- RooHelpers::checkRangeOfParameters(this, {&sigma}, 0.);
+ RooHelpers::checkRangeOfParameters(this, {&argSigma}, 0.);
RooHelpers::checkRangeOfParameters(this, {&zeta, &n, &n2, &a, &a2}, 0., std::numeric_limits<double>::max(), true);
if (zeta.getVal() == 0. && zeta.isConstant()) {
RooHelpers::checkRangeOfParameters(this, {&lambda}, -std::numeric_limits<double>::max(), 0., false,
--
2.26.2

View file

@ -1,25 +0,0 @@
From b7dc989f9a49ad31094331aa272859ff7480f943 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Thu, 9 Jul 2020 21:29:46 +0200
Subject: [PATCH] Fix bad regex
---
proof/proof/src/TProofMgr.cxx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/proof/proof/src/TProofMgr.cxx b/proof/proof/src/TProofMgr.cxx
index 2a140e4e7a..35c91b77ac 100644
--- a/proof/proof/src/TProofMgr.cxx
+++ b/proof/proof/src/TProofMgr.cxx
@@ -820,7 +820,7 @@ TFileCollection *TProofMgr::UploadFiles(TList *src,
if (dest && strlen(dest) > 0) {
TString dst(dest), dt;
Ssiz_t from = 0;
- TRegexp re("<d+[0-9]>");
+ TRegexp re("<d[0-9]+>");
while (dst.Tokenize(dt, from, "/")) {
if (dt.Contains(re)) {
TParameter<Int_t> *pi = new TParameter<Int_t>(dt, -1);
--
2.26.2

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,32 @@
From 7b1632f5602a1bb6e6278d66c25640349c852ab1 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Fri, 9 Jan 2026 00:32:27 +0100
Subject: [PATCH] Starting with gcc 16, libstdc++ links to libatomic. Add to
whitelist.
$ ldd /lib64/libstdc++.so.6
linux-vdso.so.1 (0x00007f3cb4c13000)
libm.so.6 => /lib64/libm.so.6 (0x00007f3cb4afc000)
libatomic.so.1 => /lib64/libatomic.so.1 (0x00007f3cb4af1000)
libc.so.6 => /lib64/libc.so.6 (0x00007f3cb460d000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f3cb4ac5000)
/lib64/ld-linux-x86-64.so.2 (0x00007f3cb4c15000)
---
bindings/pyroot/pythonizations/test/import_load_libs.py | 1 +
1 file changed, 1 insertion(+)
diff --git a/bindings/pyroot/pythonizations/test/import_load_libs.py b/bindings/pyroot/pythonizations/test/import_load_libs.py
index 63feeca89ba..18906ff921e 100644
--- a/bindings/pyroot/pythonizations/test/import_load_libs.py
+++ b/bindings/pyroot/pythonizations/test/import_load_libs.py
@@ -77,6 +77,7 @@ class ImportLoadLibs(unittest.TestCase):
"ld.*",
"libffi",
"libgcc_s",
+ "libatomic",
# AddressSanitizer runtime and ROOT configuration
"libclang_rt.asan-.*",
"libROOTSanitizerConfig",
--
2.52.0

6
root-get-src.sh Executable file
View file

@ -0,0 +1,6 @@
#!/bin/sh
VERSION=$1
wget -N https://root.cern/download/root_v${VERSION}.source.tar.gz
tar -z -x -f root_v${VERSION}.source.tar.gz
find root-${VERSION}/fonts -type f -a '!' -name 'STIX*' -exec rm {} ';'
tar -J -c --group root --owner root -f root-${VERSION}.tar.xz root-${VERSION}

View file

@ -1,51 +0,0 @@
From af2e5c8b1bf17a0a0e1c1492735395bdd49ffd65 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Mon, 29 Jun 2020 12:57:43 +0200
Subject: [PATCH] Fix off-by-one error in the histogram v7 bin iterator
The histogram bin iterator should start at 1 and end at N + 1, not
start at 0 and end at N. (As for all iterators, the end element is the
invalid element after the last one.)
Fixes an assertion in the histhistv7testUnit test
[----------] 2 tests from BinIterNBins
[ RUN ] BinIterNBins.NumBins
/usr/include/c++/10/bits/stl_vector.h:1045: std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::operator[](std::vector<_Tp, _Alloc>::size_type) [with _Tp = float; _Alloc = std::allocator<float>; std::vector<_Tp, _Alloc>::reference = float&; std::vector<_Tp, _Alloc>::size_type = long unsigned int]: Assertion '__builtin_expect(__n < this->size(), true)' failed.
---
hist/histv7/inc/ROOT/RHist.hxx | 4 ++--
hist/histv7/test/biniter.cxx | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/hist/histv7/inc/ROOT/RHist.hxx b/hist/histv7/inc/ROOT/RHist.hxx
index ebb319f1ef..9521fe182f 100644
--- a/hist/histv7/inc/ROOT/RHist.hxx
+++ b/hist/histv7/inc/ROOT/RHist.hxx
@@ -158,9 +158,9 @@ public:
/// Get the uncertainty on the content of the bin at `x`.
double GetBinUncertainty(const CoordArray_t &x) const { return fImpl->GetBinUncertainty(x); }
- const_iterator begin() const { return const_iterator(*fImpl); }
+ const_iterator begin() const { return const_iterator(*fImpl, 1); }
- const_iterator end() const { return const_iterator(*fImpl, fImpl->GetNBinsNoOver()); }
+ const_iterator end() const { return const_iterator(*fImpl, fImpl->GetNBinsNoOver() + 1); }
/// Swap *this and other.
///
diff --git a/hist/histv7/test/biniter.cxx b/hist/histv7/test/biniter.cxx
index aa1c2dfef9..1f940aa8e7 100644
--- a/hist/histv7/test/biniter.cxx
+++ b/hist/histv7/test/biniter.cxx
@@ -45,7 +45,7 @@ TEST(BinIterNBins, BinRef) {
double founduncert = -1.;
RH2F::CoordArray_t foundcoord{};
- int nBins = 0;
+ int nBins = 1;
for (auto bin: h) {
auto binCenter = bin.GetCenter();
if (std::fabs(binCenter[0] - x) < 0.1 && std::fabs(binCenter[1] - y) < 0.1) {
--
2.26.2

View file

@ -1,34 +0,0 @@
From 4a4f661e80aa569a2fe2fcadeb2632db52371f79 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Fri, 21 Aug 2020 18:46:36 +0200
Subject: [PATCH] Increase timeout for PPC64
---
tutorials/CMakeLists.txt | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tutorials/CMakeLists.txt b/tutorials/CMakeLists.txt
index b49bc68209..ef6e884658 100644
--- a/tutorials/CMakeLists.txt
+++ b/tutorials/CMakeLists.txt
@@ -462,7 +462,7 @@ foreach(t ${tutorials})
endif()
# These tests on ARM64 need much more than 20 minutes - increase the timeout
- if(ROOT_ARCHITECTURE MATCHES arm64)
+ if(ROOT_ARCHITECTURE MATCHES arm64 OR ROOT_ARCHITECTURE MATCHES ppc64)
set(thisTestTimeout 2400) # 40m
else()
set(thisTestTimeout 1200) # 20m
@@ -489,7 +489,7 @@ foreach(t ${mpi_tutorials})
string(REPLACE "/" "-" tname ${tname})
# These tests on ARM64 need much more than 20 minutes - increase the timeout
- if(ROOT_ARCHITECTURE MATCHES arm64)
+ if(ROOT_ARCHITECTURE MATCHES arm64 OR ROOT_ARCHITECTURE MATCHES ppc64)
set(thisTestTimeout 2400) # 40m
else()
set(thisTestTimeout 1200) # 20m
--
2.28.0

View file

@ -1,39 +0,0 @@
From c6b03126690439f5137e4a1090e81e93fd09df9a Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Wed, 19 Aug 2020 20:17:37 +0200
Subject: [PATCH] Install headers with COMPONENT headers
---
bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt | 4 +++-
bindings/pyroot/pythonizations/CMakeLists.txt | 4 +++-
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt b/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt
index 00ce6c13b8..e23b439b3e 100644
--- a/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt
+++ b/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt
@@ -120,4 +120,6 @@ foreach(val RANGE ${how_many_pythons})
endforeach()
file(COPY ${headers} DESTINATION ${CMAKE_BINARY_DIR}/include/CPyCppyy)
-install(FILES ${headers} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/CPyCppyy)
+install(FILES ${headers}
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/CPyCppyy
+ COMPONENT headers)
diff --git a/bindings/pyroot/pythonizations/CMakeLists.txt b/bindings/pyroot/pythonizations/CMakeLists.txt
index 7827204396..377ec46916 100644
--- a/bindings/pyroot/pythonizations/CMakeLists.txt
+++ b/bindings/pyroot/pythonizations/CMakeLists.txt
@@ -159,6 +159,8 @@ install(DIRECTORY ${localruntimedir}/ROOT
COMPONENT libraries)
# Install headers required by pythonizations
-install(FILES ${PYROOT_EXTRA_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ROOT)
+install(FILES ${PYROOT_EXTRA_HEADERS}
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ROOT
+ COMPONENT headers)
ROOT_ADD_TEST_SUBDIRECTORY(test)
--
2.26.2

View file

@ -1,72 +0,0 @@
diff -ur root-6.22.00.orig/bindings/jsmva/python/JsMVA/JPyInterface.py root-6.22.00/bindings/jsmva/python/JsMVA/JPyInterface.py
--- root-6.22.00.orig/bindings/jsmva/python/JsMVA/JPyInterface.py 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/jsmva/python/JsMVA/JPyInterface.py 2020-06-21 20:20:27.744527667 +0200
@@ -188,7 +188,7 @@
## Class for creating the output scripts and inserting them to cell output
class JsDraw:
## Base repository
- __jsMVARepo = "https://root.cern.ch/js/jsmva/latest"
+ __jsMVARepo = "/static/JsMVA"
## String containing the link to JavaScript files
__jsMVASourceDir = __jsMVARepo + "/js"
diff -ur root-6.22.00.orig/bindings/jupyroot/python/JupyROOT/helpers/utils.py root-6.22.00/bindings/jupyroot/python/JupyROOT/helpers/utils.py
--- root-6.22.00.orig/bindings/jupyroot/python/JupyROOT/helpers/utils.py 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/jupyroot/python/JupyROOT/helpers/utils.py 2020-06-21 20:18:22.840258397 +0200
@@ -40,7 +40,7 @@
_jsNotDrawableClassesPatterns = ["TEve*","TF3","TPolyLine3D"]
-_jsROOTSourceDir = "/static/"
+_jsROOTSourceDir = "/static/jsroot/"
_jsCanvasWidth = 800
_jsCanvasHeight = 600
diff -ur root-6.22.00.orig/bindings/pyroot_legacy/JsMVA/JPyInterface.py root-6.22.00/bindings/pyroot_legacy/JsMVA/JPyInterface.py
--- root-6.22.00.orig/bindings/pyroot_legacy/JsMVA/JPyInterface.py 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot_legacy/JsMVA/JPyInterface.py 2020-06-21 20:09:42.265004565 +0200
@@ -188,7 +188,7 @@
## Class for creating the output scripts and inserting them to cell output
class JsDraw:
## Base repository
- __jsMVARepo = "https://root.cern.ch/js/jsmva/latest"
+ __jsMVARepo = "/static/JsMVA"
## String containing the link to JavaScript files
__jsMVASourceDir = __jsMVARepo + "/js"
diff -ur root-6.22.00.orig/bindings/pyroot_legacy/JupyROOT/helpers/utils.py root-6.22.00/bindings/pyroot_legacy/JupyROOT/helpers/utils.py
--- root-6.22.00.orig/bindings/pyroot_legacy/JupyROOT/helpers/utils.py 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot_legacy/JupyROOT/helpers/utils.py 2020-06-21 20:09:42.266004568 +0200
@@ -82,7 +82,7 @@
function requirejs_success(base_url) {{
return function() {{
require.config({{
- baseUrl: base_url + 'static/'
+ baseUrl: base_url + 'static/jsroot/'
}});
display_{jsDivId}();
}}
diff -ur root-6.22.00.orig/etc/notebook/JsMVA/js/JsMVA.js root-6.22.00/etc/notebook/JsMVA/js/JsMVA.js
--- root-6.22.00.orig/etc/notebook/JsMVA/js/JsMVA.js 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/etc/notebook/JsMVA/js/JsMVA.js 2020-06-21 20:10:34.552121014 +0200
@@ -16,7 +16,7 @@
(function(factory){
- var JSROOT_source_dir = "https://root.cern.ch/js/notebook/scripts/";
+ var JSROOT_source_dir = "/static/jsroot/scripts/";
var url = "";
if (requirejs.s.contexts.hasOwnProperty("_")) {
diff -ur root-6.22.00.orig/etc/notebook/JsMVA/js/NetworkDesigner.js root-6.22.00/etc/notebook/JsMVA/js/NetworkDesigner.js
--- root-6.22.00.orig/etc/notebook/JsMVA/js/NetworkDesigner.js 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/etc/notebook/JsMVA/js/NetworkDesigner.js 2020-06-21 20:10:34.552121014 +0200
@@ -19,7 +19,7 @@
paths: {
"jquery-connections": baseURL + "jquery.connections.min",
"jquery-timing": baseURL + "jquery-timing.min",
- "d3": "/static/scripts/d3.min"
+ "d3": "/static/jsroot/scripts/d3.min"
},
shim: {
"jquery-ui": {

View file

@ -1,47 +0,0 @@
From f7161d2612c035604146298809e628d806dbed3a Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Sun, 29 Nov 2020 07:58:30 +0100
Subject: [PATCH] Several new test failures on ppc64le with 6.22.06 due to:
g++: error: linux-vdso64.so.1: No such file or directory
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The list of names filtered out by TCling is incomplete.
The vdso(7) man page gives the following list:
user ABI vDSO name
─────────────────────────────
aarch64 linux-vdso.so.1
arm linux-vdso.so.1
ia64 linux-gate.so.1
mips linux-vdso.so.1
ppc/32 linux-vdso32.so.1
ppc/64 linux-vdso64.so.1
riscv linux-vdso.so.1
s390 linux-vdso32.so.1
s390x linux-vdso64.so.1
sh linux-gate.so.1
i386 linux-gate.so.1
x86-64 linux-vdso.so.1
x86/x32 linux-vdso.so.1
---
core/metacling/src/TCling.cxx | 2 ++
1 file changed, 2 insertions(+)
diff --git a/core/metacling/src/TCling.cxx b/core/metacling/src/TCling.cxx
index 5078d7b93e..0e605a5388 100644
--- a/core/metacling/src/TCling.cxx
+++ b/core/metacling/src/TCling.cxx
@@ -3274,6 +3274,8 @@ static int callback_for_dl_iterate_phdr(struct dl_phdr_info *info, size_t size,
// Skip \0, "", and kernel pseudo-libs linux-vdso.so.1 or linux-gate.so.1
if (info->dlpi_name && info->dlpi_name[0]
&& strncmp(info->dlpi_name, "linux-vdso.so", 13)
+ && strncmp(info->dlpi_name, "linux-vdso32.so", 15)
+ && strncmp(info->dlpi_name, "linux-vdso64.so", 15)
&& strncmp(info->dlpi_name, "linux-gate.so", 13))
newLibs->emplace_back(info->dlpi_name);
sKnownLoadedLibBaseAddrs.insert(info->dlpi_addr);
--
2.28.0

View file

@ -1,43 +0,0 @@
From 21395b23947df7e2b5e0c93626453aeacdee026c Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Tue, 16 Jan 2018 10:25:50 +0100
Subject: [PATCH] Reduce the needed memory for compilation
The linking of rootcling_stage1 and libCling requires a lot of memory.
Since these are linked from mostly the same objects, the build is
ready to link them at the same time. If you make a parallel build this
means that the two targets that require the most amount of memory are
being linked in parallel. This exhausts the available memory, and the
computer starts swapping.
This commit adds a dependency of one of the targets to the other. The
dependency is not really there since it is not needed for building,
but it prevents the two memory consuming targets to be built in
parallel.
A similar dependency existed before the latest code changes (see
commit 2638f6fc7f54b0995f2f9d60363daaf8aae2386e), then between
rootcling and libCling.
---
core/metacling/src/CMakeLists.txt | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/core/metacling/src/CMakeLists.txt b/core/metacling/src/CMakeLists.txt
index 2923345f7c..b44a4d4115 100644
--- a/core/metacling/src/CMakeLists.txt
+++ b/core/metacling/src/CMakeLists.txt
@@ -114,6 +114,11 @@ ROOT_LINKER_LIBRARY(Cling
$<TARGET_OBJECTS:MetaCling>
LIBRARIES ${CLING_LIBRARIES} ${LINK_LIBS} ${CLING_PLUGIN_LINK_LIBS})
+# The dependency on rootcling_stage1 was added to prevent Cling (libCling) and
+# rootcling_stage1 from being linked in parallel.
+# This avoids doing two memory consuming operations in parallel.
+add_dependencies(Cling rootcling_stage1)
+
if(MSVC)
set_target_properties(Cling PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS TRUE)
set(cling_exports
--
2.26.2

View file

@ -1,30 +1,53 @@
diff -ur root-6.22.02.orig/bindings/jupyroot/CMakeLists.txt root-6.22.02/bindings/jupyroot/CMakeLists.txt
--- root-6.22.02.orig/bindings/jupyroot/CMakeLists.txt 2020-08-17 14:41:56.000000000 +0200
+++ root-6.22.02/bindings/jupyroot/CMakeLists.txt 2020-08-19 09:49:12.094722642 +0200
@@ -70,8 +70,7 @@
endforeach()
From b4e57c8ccd59d69fe61fa5f6470b3a99ba52aeeb Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Thu, 4 Dec 2025 23:13:28 +0100
Subject: [PATCH] Dont export Python modules
---
bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt | 3 +--
bindings/pyroot/pythonizations/CMakeLists.txt | 8 +-------
2 files changed, 2 insertions(+), 9 deletions(-)
diff --git a/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt b/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt
index bb48c032974..c34069855b2 100644
--- a/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt
+++ b/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt
@@ -119,8 +119,7 @@ install(TARGETS CPyCppyy EXPORT ${CMAKE_PROJECT_NAME}Exports
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries)
# Install library
- install(TARGETS ${libname} EXPORT ${CMAKE_PROJECT_NAME}Exports
- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT libraries
+ install(TARGETS ${libname} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT libraries
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries)
-install(TARGETS cppyy EXPORT ${CMAKE_PROJECT_NAME}Exports
- RUNTIME DESTINATION ${CMAKE_INSTALL_PYTHONDIR}/cppyy COMPONENT libraries # Windows
+install(TARGETS cppyy RUNTIME DESTINATION ${CMAKE_INSTALL_PYTHONDIR}/cppyy COMPONENT libraries # Windows
LIBRARY DESTINATION ${CMAKE_INSTALL_PYTHONDIR}/cppyy COMPONENT libraries
ARCHIVE DESTINATION ${CMAKE_INSTALL_PYTHONDIR}/cppyy COMPONENT libraries)
diff -ur root-6.22.02.orig/bindings/pyroot/pythonizations/CMakeLists.txt root-6.22.02/bindings/pyroot/pythonizations/CMakeLists.txt
--- root-6.22.02.orig/bindings/pyroot/pythonizations/CMakeLists.txt 2020-08-17 14:41:56.000000000 +0200
+++ root-6.22.02/bindings/pyroot/pythonizations/CMakeLists.txt 2020-08-19 10:36:10.390486171 +0200
@@ -133,11 +133,10 @@
# Create meta-target PyROOT2 and PyROOT3 (INTERFACE library)
# Export of targets are not supported for custom targets(add_custom_targets())
add_library(PyROOT${python_major_version_string} INTERFACE)
- target_link_libraries(PyROOT${python_major_version_string} INTERFACE cppyy_backend${python_under_version_string} cppyy${python_under_version_string} ROOTPythonizations${python_under_version_string})
+ target_link_libraries(PyROOT${python_major_version_string} INTERFACE cppyy_backend${python_under_version_string} cppyy${python_under_version_string})
diff --git a/bindings/pyroot/pythonizations/CMakeLists.txt b/bindings/pyroot/pythonizations/CMakeLists.txt
index 1230f18ca47..2df4b733320 100644
--- a/bindings/pyroot/pythonizations/CMakeLists.txt
+++ b/bindings/pyroot/pythonizations/CMakeLists.txt
@@ -202,11 +202,6 @@ foreach(py_source ${py_sources})
COMMENT "Compiling PyROOT source ${py_source} for Python ${Python3_VERSION}")
endforeach()
# Install library
- install(TARGETS ${libname} EXPORT ${CMAKE_PROJECT_NAME}Exports
- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT libraries
+ install(TARGETS ${libname} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT libraries
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries)
-# Create meta-target PyROOT3 (INTERFACE library)
-# Export of targets are not supported for custom targets(add_custom_targets())
-add_library(PyROOT INTERFACE)
-target_link_libraries(PyROOT INTERFACE cppyy_backend cppyy ROOTPythonizations)
-
# Define library output directories for build and install trees
set(pymoduledir_build "${localruntimedir}/ROOT")
set(pymoduledir_install "${CMAKE_INSTALL_PYTHONDIR}/ROOT")
@@ -231,8 +226,7 @@ if(NOT MSVC)
endif()
# Install library
-install(TARGETS ${libname} EXPORT ${CMAKE_PROJECT_NAME}Exports
- RUNTIME DESTINATION ${pymoduledir_install} COMPONENT libraries
+install(TARGETS ${libname} RUNTIME DESTINATION ${pymoduledir_install} COMPONENT libraries
LIBRARY DESTINATION ${pymoduledir_install} COMPONENT libraries
ARCHIVE DESTINATION ${pymoduledir_install} COMPONENT libraries)
--
2.52.0

View file

@ -1,139 +0,0 @@
diff -ur root-6.22.00.orig/io/io/src/RRawFileUnix.cxx root-6.22.00/io/io/src/RRawFileUnix.cxx
--- root-6.22.00.orig/io/io/src/RRawFileUnix.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/io/io/src/RRawFileUnix.cxx 2020-07-02 09:02:48.202677798 +0200
@@ -9,6 +9,8 @@
* For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/
+#include "ROOT/RConfig.hxx"
+
#include "ROOT/RRawFileUnix.hxx"
#include "ROOT/RMakeUnique.hxx"
@@ -47,8 +49,13 @@
std::uint64_t ROOT::Internal::RRawFileUnix::GetSizeImpl()
{
+#ifdef R__SEEK64
+ struct stat64 info;
+ int res = fstat64(fFileDes, &info);
+#else
struct stat info;
int res = fstat(fFileDes, &info);
+#endif
if (res != 0)
throw std::runtime_error("Cannot call fstat on '" + fUrl + "', error: " + std::string(strerror(errno)));
return info.st_size;
@@ -68,7 +75,11 @@
void ROOT::Internal::RRawFileUnix::OpenImpl()
{
+#ifdef R__SEEK64
+ fFileDes = open64(GetLocation(fUrl).c_str(), O_RDONLY);
+#else
fFileDes = open(GetLocation(fUrl).c_str(), O_RDONLY);
+#endif
if (fFileDes < 0) {
throw std::runtime_error("Cannot open '" + fUrl + "', error: " + std::string(strerror(errno)));
}
@@ -76,8 +87,13 @@
if (fOptions.fBlockSize >= 0)
return;
+#ifdef R__SEEK64
+ struct stat64 info;
+ int res = fstat64(fFileDes, &info);
+#else
struct stat info;
int res = fstat(fFileDes, &info);
+#endif
if (res != 0) {
throw std::runtime_error("Cannot call fstat on '" + fUrl + "', error: " + std::string(strerror(errno)));
}
@@ -92,7 +108,11 @@
{
size_t total_bytes = 0;
while (nbytes) {
+#ifdef R__SEEK64
+ ssize_t res = pread64(fFileDes, buffer, nbytes, offset);
+#else
ssize_t res = pread(fFileDes, buffer, nbytes, offset);
+#endif
if (res < 0) {
if (errno == EINTR)
continue;
diff -ur root-6.22.00.orig/tree/ntuple/v7/src/RMiniFile.cxx root-6.22.00/tree/ntuple/v7/src/RMiniFile.cxx
--- root-6.22.00.orig/tree/ntuple/v7/src/RMiniFile.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/tree/ntuple/v7/src/RMiniFile.cxx 2020-07-02 10:06:55.066204147 +0200
@@ -13,6 +13,8 @@
* For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/
+#include <ROOT/RConfig.hxx>
+
#include "ROOT/RMiniFile.hxx"
#include <ROOT/RRawFile.hxx>
@@ -999,7 +1001,11 @@
R__ASSERT(fFile);
size_t retval;
if ((offset >= 0) && (static_cast<std::uint64_t>(offset) != fFilePos)) {
+#ifdef R__SEEK64
+ retval = fseeko64(fFile, offset, SEEK_SET);
+#else
retval = fseek(fFile, offset, SEEK_SET);
+#endif
R__ASSERT(retval == 0);
fFilePos = offset;
}
@@ -1099,7 +1105,11 @@
if (idxDirSep != std::string::npos) {
fileName.erase(0, idxDirSep + 1);
}
+#ifdef R__SEEK64
+ FILE *fileStream = fopen64(std::string(path.data(), path.size()).c_str(), "wb");
+#else
FILE *fileStream = fopen(std::string(path.data(), path.size()).c_str(), "wb");
+#endif
R__ASSERT(fileStream);
auto writer = new RNTupleFileWriter(ntupleName);
@@ -1319,7 +1329,11 @@
fFileSimple.Write(&strEmpty, strEmpty.GetSize());
fFileSimple.Write(&fileRoot, fileRoot.GetSize());
fFileSimple.fFilePos = tail;
+#ifdef R__SEEK64
+ auto retval = fseeko64(fFileSimple.fFile, tail, SEEK_SET);
+#else
auto retval = fseek(fFileSimple.fFile, tail, SEEK_SET);
+#endif
R__ASSERT(retval == 0);
fFileSimple.fFilePos = tail;
}
diff -ur root-6.22.00.orig/tree/ntuple/v7/test/ntuple.cxx root-6.22.00/tree/ntuple/v7/test/ntuple.cxx
--- root-6.22.00.orig/tree/ntuple/v7/test/ntuple.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/tree/ntuple/v7/test/ntuple.cxx 2020-07-02 10:10:54.409737807 +0200
@@ -1,3 +1,5 @@
+#include <ROOT/RConfig.hxx>
+
#include <ROOT/RColumnModel.hxx>
#include <ROOT/RDataFrame.hxx>
#include <ROOT/RNTuple.hxx>
@@ -891,10 +893,17 @@
ntuple->Fill();
}
}
+#ifdef R__SEEK64
+ FILE *file = fopen64(fileGuard.GetPath().c_str(), "rb");
+ ASSERT_TRUE(file != nullptr);
+ EXPECT_EQ(0, fseeko64(file, 0, SEEK_END));
+ EXPECT_GT(ftello64(file), 2048LL * 1024LL * 1024LL);
+#else
FILE *file = fopen(fileGuard.GetPath().c_str(), "rb");
ASSERT_TRUE(file != nullptr);
EXPECT_EQ(0, fseek(file, 0, SEEK_END));
EXPECT_GT(ftell(file), 2048LL * 1024LL * 1024LL);
+#endif
fclose(file);
auto ntuple = RNTupleReader::Open("myNTuple", fileGuard.GetPath());

View file

@ -1,161 +0,0 @@
diff -ur root-6.22.00.orig/math/mathcore/test/stress/testGenVector.cxx root-6.22.00/math/mathcore/test/stress/testGenVector.cxx
--- root-6.22.00.orig/math/mathcore/test/stress/testGenVector.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/math/mathcore/test/stress/testGenVector.cxx 2020-06-29 19:38:08.524050438 +0200
@@ -4,6 +4,16 @@
#include "gtest/gtest.h"
+#ifndef TYPED_TEST_SUITE_P
+#define TYPED_TEST_SUITE_P TYPED_TEST_CASE_P
+#endif
+#ifndef REGISTER_TYPED_TEST_SUITE_P
+#define REGISTER_TYPED_TEST_SUITE_P REGISTER_TYPED_TEST_CASE_P
+#endif
+#ifndef INSTANTIATE_TYPED_TEST_SUITE_P
+#define INSTANTIATE_TYPED_TEST_SUITE_P INSTANTIATE_TYPED_TEST_CASE_P
+#endif
+
#include "StatFunction.h"
#include "TestHelper.h"
#include "VectorTest.h"
diff -ur root-6.22.00.orig/math/mathcore/test/stress/testSMatrix.cxx root-6.22.00/math/mathcore/test/stress/testSMatrix.cxx
--- root-6.22.00.orig/math/mathcore/test/stress/testSMatrix.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/math/mathcore/test/stress/testSMatrix.cxx 2020-06-29 19:38:08.524050438 +0200
@@ -7,6 +7,16 @@
#include "TestHelper.h"
#include "gtest/gtest.h"
+#ifndef TYPED_TEST_SUITE_P
+#define TYPED_TEST_SUITE_P TYPED_TEST_CASE_P
+#endif
+#ifndef REGISTER_TYPED_TEST_SUITE_P
+#define REGISTER_TYPED_TEST_SUITE_P REGISTER_TYPED_TEST_CASE_P
+#endif
+#ifndef INSTANTIATE_TYPED_TEST_SUITE_P
+#define INSTANTIATE_TYPED_TEST_SUITE_P INSTANTIATE_TYPED_TEST_CASE_P
+#endif
+
#include "VectorTest.h"
#include "TROOT.h"
#include "TSystem.h"
diff -ur root-6.22.00.orig/math/mathcore/test/stress/testVector34.cxx root-6.22.00/math/mathcore/test/stress/testVector34.cxx
--- root-6.22.00.orig/math/mathcore/test/stress/testVector34.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/math/mathcore/test/stress/testVector34.cxx 2020-06-29 19:38:08.525050440 +0200
@@ -4,6 +4,16 @@
#include "gtest/gtest.h"
+#ifndef TYPED_TEST_SUITE_P
+#define TYPED_TEST_SUITE_P TYPED_TEST_CASE_P
+#endif
+#ifndef REGISTER_TYPED_TEST_SUITE_P
+#define REGISTER_TYPED_TEST_SUITE_P REGISTER_TYPED_TEST_CASE_P
+#endif
+#ifndef INSTANTIATE_TYPED_TEST_SUITE_P
+#define INSTANTIATE_TYPED_TEST_SUITE_P INSTANTIATE_TYPED_TEST_CASE_P
+#endif
+
#include "StatFunction.h"
#include "VectorTest.h"
diff -ur root-6.22.00.orig/math/mathcore/test/stress/testVector.cxx root-6.22.00/math/mathcore/test/stress/testVector.cxx
--- root-6.22.00.orig/math/mathcore/test/stress/testVector.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/math/mathcore/test/stress/testVector.cxx 2020-06-29 19:38:08.525050440 +0200
@@ -4,6 +4,16 @@
#include "gtest/gtest.h"
+#ifndef TYPED_TEST_SUITE_P
+#define TYPED_TEST_SUITE_P TYPED_TEST_CASE_P
+#endif
+#ifndef REGISTER_TYPED_TEST_SUITE_P
+#define REGISTER_TYPED_TEST_SUITE_P REGISTER_TYPED_TEST_CASE_P
+#endif
+#ifndef INSTANTIATE_TYPED_TEST_SUITE_P
+#define INSTANTIATE_TYPED_TEST_SUITE_P INSTANTIATE_TYPED_TEST_CASE_P
+#endif
+
#include "StatFunction.h"
#include "TestHelper.h"
#include "VectorTest.h"
diff -ur root-6.22.00.orig/math/mathcore/test/testGradient.cxx root-6.22.00/math/mathcore/test/testGradient.cxx
--- root-6.22.00.orig/math/mathcore/test/testGradient.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/math/mathcore/test/testGradient.cxx 2020-06-29 19:38:08.525050440 +0200
@@ -22,6 +22,10 @@
#include "gtest/gtest.h"
+#ifndef TYPED_TEST_SUITE
+#define TYPED_TEST_SUITE TYPED_TEST_CASE
+#endif
+
#include <chrono>
#include <iostream>
#include <string>
diff -ur root-6.22.00.orig/math/mathcore/test/testGradientFitting.cxx root-6.22.00/math/mathcore/test/testGradientFitting.cxx
--- root-6.22.00.orig/math/mathcore/test/testGradientFitting.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/math/mathcore/test/testGradientFitting.cxx 2020-06-29 19:38:08.525050440 +0200
@@ -12,6 +12,16 @@
#include "gtest/gtest.h"
+#ifndef TYPED_TEST_SUITE_P
+#define TYPED_TEST_SUITE_P TYPED_TEST_CASE_P
+#endif
+#ifndef REGISTER_TYPED_TEST_SUITE_P
+#define REGISTER_TYPED_TEST_SUITE_P REGISTER_TYPED_TEST_CASE_P
+#endif
+#ifndef INSTANTIATE_TYPED_TEST_SUITE_P
+#define INSTANTIATE_TYPED_TEST_SUITE_P INSTANTIATE_TYPED_TEST_CASE_P
+#endif
+
#include <iostream>
#include <string>
diff -ur root-6.22.00.orig/math/mathmore/test/testStress.cxx root-6.22.00/math/mathmore/test/testStress.cxx
--- root-6.22.00.orig/math/mathmore/test/testStress.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/math/mathmore/test/testStress.cxx 2020-06-29 19:38:08.526050443 +0200
@@ -28,6 +28,16 @@
#include "gtest/gtest.h"
+#ifndef TYPED_TEST_SUITE_P
+#define TYPED_TEST_SUITE_P TYPED_TEST_CASE_P
+#endif
+#ifndef REGISTER_TYPED_TEST_SUITE_P
+#define REGISTER_TYPED_TEST_SUITE_P REGISTER_TYPED_TEST_CASE_P
+#endif
+#ifndef INSTANTIATE_TYPED_TEST_SUITE_P
+#define INSTANTIATE_TYPED_TEST_SUITE_P INSTANTIATE_TYPED_TEST_CASE_P
+#endif
+
using ::testing::TestWithParam;
using ::testing::Values;
diff -ur root-6.22.00.orig/roofit/roofitcore/test/testProxiesAndCategories.cxx root-6.22.00/roofit/roofitcore/test/testProxiesAndCategories.cxx
--- root-6.22.00.orig/roofit/roofitcore/test/testProxiesAndCategories.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/roofit/roofitcore/test/testProxiesAndCategories.cxx 2020-06-29 19:38:08.526050443 +0200
@@ -16,6 +16,9 @@
#include "gtest/gtest.h"
+#ifndef INSTANTIATE_TEST_SUITE_P
+#define INSTANTIATE_TEST_SUITE_P INSTANTIATE_TEST_CASE_P
+#endif
TEST(RooCategory, CategoryDefineMultiState) {
RooCategory myCat("myCat", "A category", { {"0Lep", 0}, {"1Lep", 1}, {"2Lep", 2}, {"3Lep", 3} });
diff -ur root-6.22.00.orig/tree/dataframe/test/dataframe_simple.cxx root-6.22.00/tree/dataframe/test/dataframe_simple.cxx
--- root-6.22.00.orig/tree/dataframe/test/dataframe_simple.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/tree/dataframe/test/dataframe_simple.cxx 2020-06-29 19:38:45.667130468 +0200
@@ -1,5 +1,10 @@
/****** Run RDataFrame tests both with and without IMT enabled *******/
#include <gtest/gtest.h>
+
+#ifndef INSTANTIATE_TEST_SUITE_P
+#define INSTANTIATE_TEST_SUITE_P INSTANTIATE_TEST_CASE_P
+#endif
+
#include <ROOT/RDataFrame.hxx>
#include <ROOT/TSeq.hxx>
#include <TChain.h>

View file

@ -1,333 +0,0 @@
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt 2020-06-21 20:54:24.848992803 +0200
@@ -85,11 +85,6 @@
target_compile_options(${libname} PRIVATE -Wno-deprecated-register)
endif()
- # Disables warnings due to new field tp_vectorcall in Python 3.8
- if(NOT MSVC AND ${python_version_string} VERSION_GREATER_EQUAL "3.8")
- target_compile_options(${libname} PRIVATE -Wno-missing-field-initializers)
- endif()
-
target_include_directories(${libname}
PRIVATE
${CMAKE_SOURCE_DIR}/core/foundation/inc # needed for string_view backport
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPDataMember.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPDataMember.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPDataMember.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPDataMember.cxx 2020-06-21 20:53:49.651914431 +0200
@@ -167,7 +167,8 @@
sizeof(CPPDataMember), // tp_basicsize
0, // tp_itemsize
(destructor)pp_dealloc, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -216,6 +217,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPExcInstance.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPExcInstance.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPExcInstance.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPExcInstance.cxx 2020-06-21 20:53:49.651914431 +0200
@@ -158,7 +158,8 @@
sizeof(CPPExcInstance), // tp_basicsize
0, // tp_itemsize
(destructor)ep_dealloc, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -211,6 +212,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPInstance.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPInstance.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPInstance.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPInstance.cxx 2020-06-21 20:53:49.651914431 +0200
@@ -746,7 +746,8 @@
sizeof(CPPInstance), // tp_basicsize
0, // tp_itemsize
(destructor)op_dealloc, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -798,6 +799,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPOverload.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPOverload.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPOverload.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPOverload.cxx 2020-06-21 20:53:49.652914433 +0200
@@ -866,7 +866,8 @@
sizeof(CPPOverload), // tp_basicsize
0, // tp_itemsize
(destructor)mp_dealloc, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -915,6 +916,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPScope.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPScope.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPScope.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPScope.cxx 2020-06-21 20:53:49.652914433 +0200
@@ -616,7 +616,8 @@
sizeof(CPyCppyy::CPPScope), // tp_basicsize
0, // tp_itemsize
0, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -669,6 +670,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPyCppyyModule.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPyCppyyModule.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPyCppyyModule.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPyCppyyModule.cxx 2020-06-21 20:53:49.652914433 +0200
@@ -141,6 +141,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
namespace {
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CustomPyTypes.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CustomPyTypes.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CustomPyTypes.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CustomPyTypes.cxx 2020-06-21 20:53:49.652914433 +0200
@@ -34,6 +34,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
//= long type allowed for reference passing ==================================
@@ -60,6 +66,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
//- custom type representing typedef to pointer of class ---------------------
@@ -90,6 +102,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
//= instancemethod object with a more efficient call function ================
@@ -255,6 +273,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
@@ -305,6 +329,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
@@ -364,6 +394,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/LowLevelViews.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/LowLevelViews.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/LowLevelViews.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/LowLevelViews.cxx 2020-06-21 20:53:49.653914436 +0200
@@ -651,7 +651,8 @@
sizeof(CPyCppyy::LowLevelView),// tp_basicsize
0, // tp_itemsize
(destructor)ll_dealloc, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -701,6 +702,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/TemplateProxy.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/TemplateProxy.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/TemplateProxy.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/TemplateProxy.cxx 2020-06-21 20:53:49.653914436 +0200
@@ -730,7 +730,8 @@
sizeof(TemplateProxy), // tp_basicsize
0, // tp_itemsize
(destructor)tpp_dealloc, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -779,6 +780,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/TupleOfInstances.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/TupleOfInstances.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/TupleOfInstances.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/TupleOfInstances.cxx 2020-06-21 20:53:49.653914436 +0200
@@ -82,6 +82,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
@@ -161,7 +167,8 @@
0, // tp_basicsize
0, // tp_itemsize
0, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -211,6 +218,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy

View file

@ -1,34 +0,0 @@
From 357ac50a2420a4544c9c63594cccb994ee14f870 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Sat, 13 Jun 2020 14:23:15 +0200
Subject: [PATCH] The roofit/roostats/test/testHypoTestInvResult.cxx test fails
on aarch64 and ppc64le. This commit adjusts the allowed deviation from the
expected value so that the test passes.
The reported error is (with slight variations in the exact numbers):
/builddir/build/BUILD/root-6.20.06/roofit/roostats/test/testHypoTestInvResult.cxx:24: Failure
The difference between result->UpperLimitEstimatedError() and 0.059684301 is 1.1846561807221656e-07, which exceeds 1.E-8, where
result->UpperLimitEstimatedError() evaluates to 0.05968418253438193,
0.059684301 evaluates to 0.059684301000000002, and
1.E-8 evaluates to 1e-08.
---
roofit/roostats/test/testHypoTestInvResult.cxx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/roofit/roostats/test/testHypoTestInvResult.cxx b/roofit/roostats/test/testHypoTestInvResult.cxx
index 9c2896185a..b89eab9b69 100644
--- a/roofit/roostats/test/testHypoTestInvResult.cxx
+++ b/roofit/roostats/test/testHypoTestInvResult.cxx
@@ -21,7 +21,7 @@ TEST(HypoTestInvResult, ReadFromFile)
// This just reads members
EXPECT_NEAR(result->UpperLimit(), 2.4613465, 1.E-7);
- EXPECT_NEAR(result->UpperLimitEstimatedError(), 0.059684301, 1.E-8);
+ EXPECT_NEAR(result->UpperLimitEstimatedError(), 0.059684301, 2.E-7);
// This accesses the sampling distribution
EXPECT_DOUBLE_EQ(result->GetExpectedUpperLimit(0), 1.60988427028569);
--
2.26.2

View file

@ -1,30 +0,0 @@
From 532e02a0e5373d26f73495183dc13055e7f13421 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Mon, 29 Jun 2020 12:08:15 +0200
Subject: [PATCH] Add missing call to TFile::SetCacheFileDir(".")
Without it the following TFile::Open call using the CACHEREAD option
will not work as intended:
inputFile = TFile::Open(inputFileLink, "CACHEREAD");
---
tutorials/tmva/TMVA_Higgs_Classification.C | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/tutorials/tmva/TMVA_Higgs_Classification.C b/tutorials/tmva/TMVA_Higgs_Classification.C
index 6b4a8ed028..85dffc2790 100644
--- a/tutorials/tmva/TMVA_Higgs_Classification.C
+++ b/tutorials/tmva/TMVA_Higgs_Classification.C
@@ -72,9 +72,8 @@ Define now input data file and signal and background trees
if (!inputFile) {
// download file from Cernbox location
Info("TMVA_Higgs_Classification","Download Higgs_data.root file");
+ TFile::SetCacheFileDir(".");
inputFile = TFile::Open(inputFileLink, "CACHEREAD");
- //gSystem->Exec( TString::Format("wget -O %s %s",inputFileName.Data(), downloadLinkFile.Data() ) );
- //inputFile = TFile::Open( inputFileName);
if (!inputFile) {
Error("TMVA_Higgs_Classification","Input file cannot be downloaded - exit");
return;
--
2.26.2

View file

@ -1,49 +0,0 @@
From 7e8706b21dc62fc7b56709cf03c2650c715e5b64 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Wed, 19 Aug 2020 20:23:15 +0200
Subject: [PATCH] When building ROOT's libGFAL using gfal2, srm-ifce is not a
build dependency.
---
cmake/modules/FindGFAL.cmake | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
diff --git a/cmake/modules/FindGFAL.cmake b/cmake/modules/FindGFAL.cmake
index 71163a1714..74028ac5a7 100644
--- a/cmake/modules/FindGFAL.cmake
+++ b/cmake/modules/FindGFAL.cmake
@@ -17,22 +17,26 @@ find_path(GFAL_INCLUDE_DIR NAMES gfal_api.h
HINTS ${GFAL_DIR}/include $ENV{GFAL_DIR}/include)
find_library(GFAL_LIBRARY NAMES gfal gfal2
HINTS ${GFAL_DIR}/lib $ENV{GFAL_DIR}/lib)
-find_path(SRM_IFCE_INCLUDE_DIR gfal_srm_ifce_types.h
- HINTS ${SRM_IFCE_DIR}/include $ENV{SRM_IFCE_DIR}/include)
set(GFAL_LIBRARIES ${GFAL_LIBRARY})
-set(GFAL_INCLUDE_DIRS ${GFAL_INCLUDE_DIR} ${SRM_IFCE_INCLUDE_DIR})
+set(GFAL_INCLUDE_DIRS ${GFAL_INCLUDE_DIR})
if(GFAL_LIBRARY MATCHES gfal2)
# use pkg-config to get the directories for glib and then use these values
find_package(PkgConfig)
pkg_check_modules(GLIB2 REQUIRED glib-2.0)
list(APPEND GFAL_INCLUDE_DIRS ${GLIB2_INCLUDE_DIRS})
+ set(GFAL_DEP GLIB2_INCLUDE_DIRS)
+else()
+ find_path(SRM_IFCE_INCLUDE_DIR gfal_srm_ifce_types.h
+ HINTS ${SRM_IFCE_DIR}/include $ENV{SRM_IFCE_DIR}/include)
+ list(APPEND GFAL_INCLUDE_DIRS ${SRM_IFCE_INCLUDE_DIR})
+ set(GFAL_DEP SRM_IFCE_INCLUDE_DIR)
endif()
# handle the QUIETLY and REQUIRED arguments and set GFAL_FOUND to TRUE if
# all listed variables are TRUE
include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(GFAL DEFAULT_MSG GFAL_INCLUDE_DIR SRM_IFCE_INCLUDE_DIR GFAL_LIBRARY)
+find_package_handle_standard_args(GFAL DEFAULT_MSG GFAL_INCLUDE_DIR ${GFAL_DEP} GFAL_LIBRARY)
-mark_as_advanced(GFAL_FOUND GFAL_INCLUDE_DIR GFAL_LIBRARY SRM_IFCE_INCLUDE_DIR GLIB_INCLUDE_DIR)
+mark_as_advanced(GFAL_FOUND GFAL_INCLUDE_DIR GFAL_LIBRARY SRM_IFCE_INCLUDE_DIR GLIB2_INCLUDE_DIRS)
--
2.26.2

View file

@ -1,34 +0,0 @@
From 141dc7359fa890b081802532b97c25eeb5be5ee1 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Mon, 29 Jun 2020 12:53:07 +0200
Subject: [PATCH] Adjust stressGraphics.ref
---
test/stressGraphics.ref | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/test/stressGraphics.ref b/test/stressGraphics.ref
index 38474d0549..2aecf462e8 100644
--- a/test/stressGraphics.ref
+++ b/test/stressGraphics.ref
@@ -3,7 +3,7 @@ Test# PS1Ref# PS1Err# PDFRef# PDFErr# GIFRef# GIFErr# JPGRef# JP
2 4627 600 14506 100 7608 1500 13368 7900 9208 3000 4690 600
3 452 50 12632 50 4797 350 11232 4200 3796 10700 492 50
4 23617 1500 19386 100 43077 12000 143320 123000 45665 11000 24908 1500
- 5 1025 150 12802 150 19715 2900 33468 9900 30846 5000 1072 200
+ 5 1025 150 12802 200 19715 2900 33468 9900 30846 5000 1072 200
6 430 50 12669 50 4041 400 9558 100 5325 700 471 50
7 4980 50 13893 50 8215 310 16143 1300 12230 500 5011 70
8 5442 80 13473 50 9599 150 18430 700 12398 300 5469 80
@@ -41,7 +41,7 @@ Test# PS1Ref# PS1Err# PDFRef# PDFErr# GIFRef# GIFErr# JPGRef# JP
40 38312 200 56877 250 47205 3900 36524 11800 119641 8000 38121 200
41 15025 3000 29289 500 34091 1500 42525 11300 33336 3900 14787 4000
42 254604 5000 383258 7000 34608 5000 55666 30400 46534 6500 259594 7000
- 43 4846 150 14075 100 24281 200 33239 600 25303 300 4877 150
+ 43 4846 150 14075 150 24281 200 33239 600 25303 300 4877 150
44 1435879 150000 12837 100 96029 4000 25972 100 359846 15000 1085792 250000
45 5884 500 16577 200 30259 3500 40706 14000 30026 4000 0 0
46 5723 700 15720 200 14291 2600 32236 11000 16916 3200 5670 800
--
2.26.2

View file

@ -72,14 +72,7 @@ wget -N ${SITE}/tesla.root
wget -N ${SITE}/wa91_ref_3.root
wget -N ${SITE}/wa91.root
wget -N ${SITE}/AtlasGraphs.root
wget -N ${SITE}/europe.root
wget -N ${SITE}/Higgs_data.root
wget -N ${SITE}/linearIO.root
wget -N ${SITE}/stressHistogram.5.18.00.root
wget -N ${SITE}/tmva_class_example.root
wget -N ${SITE}/tmva_multiclass_example.root
wget -N ${SITE}/tmva_reg_example.root
wget -N ${SITE}/usa.root
for f in *.root ; do ln -s $f $f.ROOT.cachefile ; done

View file

@ -1,109 +0,0 @@
diff -ur root-6.22.00.orig/cmake/modules/SearchInstalledSoftware.cmake root-6.22.00/cmake/modules/SearchInstalledSoftware.cmake
--- root-6.22.00.orig/cmake/modules/SearchInstalledSoftware.cmake 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/cmake/modules/SearchInstalledSoftware.cmake 2020-06-21 18:29:13.973655810 +0200
@@ -1592,100 +1592,17 @@
#---Download googletest--------------------------------------------------------------
if (testing)
- # FIXME: Remove our version of gtest in roottest. We can reuse this one.
- # Add googletest
- # http://stackoverflow.com/questions/9689183/cmake-googletest
+ # Workaround for missing libraries in Fedora's gmock packaging < 1.8.0
+ if(EXISTS ${CMAKE_SOURCE_DIR}/googlemock)
+ set(_G_LIBRARY_PATH ${CMAKE_SOURCE_DIR}/googlemock)
- set(_gtest_byproduct_binary_dir
- ${CMAKE_CURRENT_BINARY_DIR}/googletest-prefix/src/googletest-build)
- set(_gtest_byproducts
- ${_gtest_byproduct_binary_dir}/lib/libgtest.a
- ${_gtest_byproduct_binary_dir}/lib/libgtest_main.a
- ${_gtest_byproduct_binary_dir}/lib/libgmock.a
- ${_gtest_byproduct_binary_dir}/lib/libgmock_main.a
- )
-
- if(MSVC)
- set(EXTRA_GTEST_OPTS
- -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG:PATH=${_gtest_byproduct_binary_dir}/lib/
- -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_MINSIZEREL:PATH=${_gtest_byproduct_binary_dir}/lib/
- -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE:PATH=${_gtest_byproduct_binary_dir}/lib/
- -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELWITHDEBINFO:PATH=${_gtest_byproduct_binary_dir}/lib/
- -Dgtest_force_shared_crt=ON
- BUILD_COMMAND ${CMAKE_COMMAND} --build <BINARY_DIR> --config Release)
- endif()
- if(APPLE)
- set(EXTRA_GTEST_OPTS
- -DCMAKE_OSX_SYSROOT=${CMAKE_OSX_SYSROOT})
- endif()
-
- ExternalProject_Add(
- googletest
- GIT_REPOSITORY https://github.com/google/googletest.git
- GIT_SHALLOW 1
- GIT_TAG release-1.10.0
- UPDATE_COMMAND ""
- # TIMEOUT 10
- # # Force separate output paths for debug and release builds to allow easy
- # # identification of correct lib in subsequent TARGET_LINK_LIBRARIES commands
- # CMAKE_ARGS -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG:PATH=DebugLibs
- # -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE:PATH=ReleaseLibs
- # -Dgtest_force_shared_crt=ON
- CMAKE_ARGS -G ${CMAKE_GENERATOR}
- -DCMAKE_BUILD_TYPE=Release
- -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
- -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS}
- -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
- -DCMAKE_CXX_FLAGS=${ROOT_EXTERNAL_CXX_FLAGS}
- -DCMAKE_AR=${CMAKE_AR}
- -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX}
- ${EXTRA_GTEST_OPTS}
- # Disable install step
- INSTALL_COMMAND ""
- BUILD_BYPRODUCTS ${_gtest_byproducts}
- # Wrap download, configure and build steps in a script to log output
- LOG_DOWNLOAD ON
- LOG_CONFIGURE ON
- LOG_BUILD ON)
-
- # Specify include dirs for gtest and gmock
- ExternalProject_Get_Property(googletest source_dir)
- set(GTEST_INCLUDE_DIR ${source_dir}/googletest/include)
- set(GMOCK_INCLUDE_DIR ${source_dir}/googlemock/include)
- # Create the directories. Prevents bug https://gitlab.kitware.com/cmake/cmake/issues/15052
- file(MAKE_DIRECTORY ${GTEST_INCLUDE_DIR} ${GMOCK_INCLUDE_DIR})
-
- # Libraries
- ExternalProject_Get_Property(googletest binary_dir)
- set(_G_LIBRARY_PATH ${binary_dir}/lib/)
-
- # Use gmock_main instead of gtest_main because it initializes gtest as well.
- # Note: The libraries are listed in reverse order of their dependancies.
- foreach(lib gtest gtest_main gmock gmock_main)
+ foreach(lib gmock gmock_main)
add_library(${lib} IMPORTED STATIC GLOBAL)
- set_target_properties(${lib} PROPERTIES
- IMPORTED_LOCATION "${_G_LIBRARY_PATH}${CMAKE_STATIC_LIBRARY_PREFIX}${lib}${CMAKE_STATIC_LIBRARY_SUFFIX}"
- INTERFACE_INCLUDE_DIRECTORIES "${GTEST_INCLUDE_DIRS}"
- )
- add_dependencies(${lib} googletest)
- if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" AND
- ${CMAKE_CXX_COMPILER_VERSION} VERSION_GREATER_EQUAL 9)
- target_compile_options(${lib} INTERFACE -Wno-deprecated-copy)
- endif()
endforeach()
- # Once we require at least cmake 3.11, target_include_directories will work for imported targets
- # Because of https://gitlab.kitware.com/cmake/cmake/-/merge_requests/1264
- # We need this workaround:
- SET_PROPERTY(TARGET gtest APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${GTEST_INCLUDE_DIR})
- SET_PROPERTY(TARGET gmock APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${GMOCK_INCLUDE_DIR})
- #target_include_directories(gtest INTERFACE ${GTEST_INCLUDE_DIR})
- #target_include_directories(gmock INTERFACE ${GMOCK_INCLUDE_DIR})
-
- set_property(TARGET gtest PROPERTY IMPORTED_LOCATION ${_G_LIBRARY_PATH}/${CMAKE_STATIC_LIBRARY_PREFIX}gtest${CMAKE_STATIC_LIBRARY_SUFFIX})
- set_property(TARGET gtest_main PROPERTY IMPORTED_LOCATION ${_G_LIBRARY_PATH}/${CMAKE_STATIC_LIBRARY_PREFIX}gtest_main${CMAKE_STATIC_LIBRARY_SUFFIX})
set_property(TARGET gmock PROPERTY IMPORTED_LOCATION ${_G_LIBRARY_PATH}/${CMAKE_STATIC_LIBRARY_PREFIX}gmock${CMAKE_STATIC_LIBRARY_SUFFIX})
set_property(TARGET gmock_main PROPERTY IMPORTED_LOCATION ${_G_LIBRARY_PATH}/${CMAKE_STATIC_LIBRARY_PREFIX}gmock_main${CMAKE_STATIC_LIBRARY_SUFFIX})
+ endif()
endif()
#------------------------------------------------------------------------------------

View file

@ -0,0 +1,135 @@
From 44c501ac9fdb9049783d9738a9603eec572f52f0 Mon Sep 17 00:00:00 2001
From: Jonas Rembser <jonas.rembser@cern.ch>
Date: Wed, 26 Nov 2025 18:11:25 +0100
Subject: [PATCH] [vecops] Adaptive size of long RVec instances in RVec test
For the tests to make sense, some vectors need to be longer than the
maximum small vector size. This maximum size is compiler and
architecture dependent. For `RVec<int>` on ARM64 with gcc 14, the
small vector capacity turns out to be 60, which is larger than the
current test vector size of 18.
Therefore, the test is refactored to adapt the large vector size
automatically, according to the maximum small vector size.
---
math/vecops/test/vecops_rvec.cxx | 81 +++++++++++++++++++++++++-------
1 file changed, 63 insertions(+), 18 deletions(-)
diff --git a/math/vecops/test/vecops_rvec.cxx b/math/vecops/test/vecops_rvec.cxx
index 432c673a553..8cbe36ee6d8 100644
--- a/math/vecops/test/vecops_rvec.cxx
+++ b/math/vecops/test/vecops_rvec.cxx
@@ -1672,15 +1672,35 @@ TEST_P(VecOpsSwap, BothSmallVectors)
TEST_P(VecOpsSwap, BothRegularVectors)
{
- RVec<int> fixed_vreg1{1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3};
- RVec<int> fixed_vreg2{4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6};
- RVec<int> fixed_vreg3{7, 8, 9, 7, 8, 9, 7, 8, 9, 7, 8, 9, 7, 8, 9, 7, 8, 9, 7};
+ constexpr std::size_t smallVecSize = ROOT::Internal::VecOps::RVecInlineStorageSize<int>::value;
+
+ // The number of elemens in the large RVecs will be the smallest multiple of
+ // three that larger than smallVecSize.
+ constexpr int nCycle = 3;
+ constexpr std::size_t nElems = ((smallVecSize / nCycle) + 1) * nCycle;
+
+ RVec<int> fixed_vreg1(nElems);
+ RVec<int> fixed_vreg2(nElems);
+ RVec<int> fixed_vreg3(nElems + 1);
RVec<int> fixed_vmocksmall{0, 7};
- RVec<int> vreg1{1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3};
- RVec<int> vreg2{4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6};
- RVec<int> vreg3{7, 8, 9, 7, 8, 9, 7, 8, 9, 7, 8, 9, 7, 8, 9, 7, 8, 9, 7};
- RVec<int> vmocksmall{0, 7, 8, 9, 7, 8, 9, 7, 8, 9, 7, 8, 7, 8, 9, 7, 8, 9};
+ RVec<int> vreg1(nElems);
+ RVec<int> vreg2(nElems);
+ RVec<int> vreg3(nElems + 1);
+ RVec<int> vmocksmall(nElems + 1);
+
+ for (std::size_t i = 0; i < nElems; ++i) {
+ vreg1[i] = (i % nCycle) + 1;
+ vreg2[i] = vreg1[i] + nCycle;
+ vreg3[i] = vreg2[i] + nCycle;
+ fixed_vreg1[i] = vreg1[i];
+ fixed_vreg2[i] = vreg2[i];
+ fixed_vreg3[i] = vreg3[i];
+ vmocksmall[i + 1] = vreg3[i];
+ }
+ fixed_vreg3[nElems] = fixed_vreg3[0];
+ vreg3[nElems] = vreg3[0];
+
vmocksmall.erase(vmocksmall.begin() + 2, vmocksmall.end());
// vmocksmall is a regular vector of size 2
@@ -1798,11 +1818,22 @@ TEST_P(VecOpsSwap, BothAdoptingVectors)
// in cases where ROOT::VecOps::swap produces 1 regular and 1 adopting vector
TEST_P(VecOpsSwap, SmallRegularVectors)
{
+ constexpr std::size_t smallVecSize = ROOT::Internal::VecOps::RVecInlineStorageSize<int>::value;
+
+ // The number of elemens in the large RVecs will be the smallest multiple of
+ // three that larger than smallVecSize.
+ constexpr int nCycle = 3;
+ constexpr std::size_t nElems1 = ((smallVecSize / nCycle) + 1) * nCycle;
+ constexpr std::size_t nElems2 = nElems1 + nCycle; // some vectors should be larger than others
+
RVec<int> fixed_vsmall{1, 2, 3};
RVec<int> fixed_vreg1{4, 5, 6};
RVec<int> fixed_vreg2{7, 8};
RVec<int> fixed_vreg3{9, 10, 11, 12, 13, 14};
- RVec<int> fixed_vreg4{15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30};
+ RVec<int> fixed_vreg4(nElems1);
+ for (std::size_t i = 0; i < nElems1; ++i) {
+ fixed_vreg4[i] = i + 15;
+ }
// need multiple hard copies since after swap of a small and a regular,
// there is no fixed policy whether 2 regular vectors are produced or 1 small and 1 regular
@@ -1815,19 +1846,33 @@ TEST_P(VecOpsSwap, SmallRegularVectors)
RVec<int> vsmall7{1, 2, 3};
RVec<int> vsmall8{1, 2, 3};
- RVec<int> vreg1{4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6};
- vreg1.erase(vreg1.begin() + 3, vreg1.end()); // regular vector of size 3
- RVec<int> vreg10{4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6};
+ RVec<int> vreg1;
+ RVec<int> vreg10;
+ RVec<int> vreg2{7, 8};
+ RVec<int> vreg20{7, 8};
+ RVec<int> vreg3{9, 10, 11, 12, 13, 14};
+ RVec<int> vreg30{9, 10, 11, 12, 13, 14};
+ RVec<int> vreg4(nElems1);
+
+ for (std::size_t i = 0; i < nElems2; ++i) {
+ double val = (i % nCycle) + 4;
+ vreg1.push_back(val);
+ vreg10.push_back(vreg1.back());
+ vreg2.push_back(val);
+ vreg20.push_back(vreg2.back());
+ vreg3.push_back(val);
+ vreg30.push_back(vreg3.back());
+ }
+ for (std::size_t i = 0; i < nElems1; ++i) {
+ vreg4[i] = i + 15;
+ }
+
+ vreg1.erase(vreg1.begin() + 3, vreg1.end()); // regular vector of size 3
vreg10.erase(vreg10.begin() + 3, vreg10.end()); // regular vector of size 3
- RVec<int> vreg2{7, 8, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6};
- vreg2.erase(vreg2.begin() + 2, vreg2.end()); // regular vector of size 2
- RVec<int> vreg20{7, 8, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6};
+ vreg2.erase(vreg2.begin() + 2, vreg2.end()); // regular vector of size 2
vreg20.erase(vreg20.begin() + 2, vreg20.end()); // regular vector of size 2
- RVec<int> vreg3{9, 10, 11, 12, 13, 14, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6};
- vreg3.erase(vreg3.begin() + 6, vreg3.end()); // regular vector of size 6
- RVec<int> vreg30{9, 10, 11, 12, 13, 14, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6, 4, 5, 6};
+ vreg3.erase(vreg3.begin() + 6, vreg3.end()); // regular vector of size 6
vreg30.erase(vreg30.begin() + 6, vreg30.end()); // regular vector of size 6
- RVec<int> vreg4{15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30};
// vreg4 is a regular vector that cannot "fit" to small vector
// verify that initially vectors are not small
--
2.52.0

View file

@ -1,57 +0,0 @@
From a5185f2cdf509314970c1b332c5926283f6962e2 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Mon, 22 Jun 2020 09:21:23 +0200
Subject: [PATCH] Fix too aggressive -Werror replacements
The replacements removes the -Werror option for externals, which is
intended. However, it also replaces e.g. -Werror=format-security with
=format-security, which results in compilation failures due to the
unknown option =format-security.
---
builtins/davix/CMakeLists.txt | 2 +-
cmake/modules/SearchInstalledSoftware.cmake | 2 +-
interpreter/CMakeLists.txt | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/builtins/davix/CMakeLists.txt b/builtins/davix/CMakeLists.txt
index 52614ae2e0..c9b291ec45 100644
--- a/builtins/davix/CMakeLists.txt
+++ b/builtins/davix/CMakeLists.txt
@@ -21,7 +21,7 @@ foreach(lib davix neon)
list(APPEND DAVIX_LIBRARIES ${DAVIX_PREFIX}/lib/${libname})
endforeach()
-string(REPLACE "-Werror" "" DAVIX_CXX_FLAGS ${CMAKE_CXX_FLAGS})
+string(REPLACE "-Werror " "" DAVIX_CXX_FLAGS "${CMAKE_CXX_FLAGS} ")
ExternalProject_Add(DAVIX
URL ${DAVIX_URL}/davix-${DAVIX_VERSION}.tar.gz
diff --git a/cmake/modules/SearchInstalledSoftware.cmake b/cmake/modules/SearchInstalledSoftware.cmake
index ad63f08cd0..36aa88d8cf 100644
--- a/cmake/modules/SearchInstalledSoftware.cmake
+++ b/cmake/modules/SearchInstalledSoftware.cmake
@@ -9,7 +9,7 @@ include(ExternalProject)
include(FindPackageHandleStandardArgs)
set(lcgpackages http://lcgpackages.web.cern.ch/lcgpackages/tarFiles/sources)
-string(REPLACE "-Werror" "" ROOT_EXTERNAL_CXX_FLAGS ${CMAKE_CXX_FLAGS})
+string(REPLACE "-Werror " "" ROOT_EXTERNAL_CXX_FLAGS "${CMAKE_CXX_FLAGS} ")
macro(find_package)
if(NOT "${ARGV0}" IN_LIST ROOT_BUILTINS)
diff --git a/interpreter/CMakeLists.txt b/interpreter/CMakeLists.txt
index 0f43893443..1274758410 100644
--- a/interpreter/CMakeLists.txt
+++ b/interpreter/CMakeLists.txt
@@ -140,7 +140,7 @@ if(gcctoolchain)
endif()
# We will not fix llvm or clang.
-string(REPLACE "-Werror" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
+string(REPLACE "-Werror " "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ")
if(LLVM_SHARED_LINKER_FLAGS)
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${LLVM_SHARED_LINKER_FLAGS}")
--
2.26.2

View file

@ -1,54 +0,0 @@
From 0a752f33834a3520a7f18433f48bc9e1e9d32cea Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Sun, 30 Aug 2020 05:46:42 +0200
Subject: [PATCH] Only install the xproofd script and man page if xproofd
option is on
---
CMakeLists.txt | 7 ++++++-
cmake/modules/RootConfiguration.cmake | 4 ++--
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 76f6ad93b3..b37a1bbe70 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -528,7 +528,12 @@ if(NOT CMAKE_SOURCE_DIR STREQUAL CMAKE_INSTALL_PREFIX)
if(webgui)
install(DIRECTORY ui5/ DESTINATION ${CMAKE_INSTALL_OPENUI5DIR})
endif()
- install(DIRECTORY man/ DESTINATION ${CMAKE_INSTALL_MANDIR})
+ if(xproofd AND xrootd AND ssl)
+ set(MAN_PATT_EXCL)
+ else()
+ set(MAN_PATT_EXCL PATTERN xproofd.1 EXCLUDE)
+ endif()
+ install(DIRECTORY man/ DESTINATION ${CMAKE_INSTALL_MANDIR} ${MAN_PATT_EXCL})
install(DIRECTORY tutorials/ DESTINATION ${CMAKE_INSTALL_TUTDIR} COMPONENT tests)
install(FILES
cmake/modules/RootMacros.cmake
diff --git a/cmake/modules/RootConfiguration.cmake b/cmake/modules/RootConfiguration.cmake
index 151235aa4e..a71ac72101 100644
--- a/cmake/modules/RootConfiguration.cmake
+++ b/cmake/modules/RootConfiguration.cmake
@@ -819,7 +819,7 @@ configure_file(${CMAKE_SOURCE_DIR}/config/setxrd.sh ${CMAKE_RUNTIME_OUTPUT_DIREC
configure_file(${CMAKE_SOURCE_DIR}/config/proofserv.in ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/proofserv @ONLY NEWLINE_STYLE UNIX)
configure_file(${CMAKE_SOURCE_DIR}/config/roots.in ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/roots @ONLY NEWLINE_STYLE UNIX)
configure_file(${CMAKE_SOURCE_DIR}/config/root-help.el.in root-help.el @ONLY NEWLINE_STYLE UNIX)
-if (XROOTD_FOUND AND XROOTD_NOMAIN)
+if(xproofd AND xrootd AND ssl AND XROOTD_NOMAIN)
configure_file(${CMAKE_SOURCE_DIR}/config/xproofd.in ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/xproofd @ONLY NEWLINE_STYLE UNIX)
endif()
if(WIN32)
@@ -857,7 +857,7 @@ install(FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/memprobe
WORLD_EXECUTE WORLD_READ
DESTINATION ${CMAKE_INSTALL_BINDIR})
-if (XROOTD_FOUND AND XROOTD_NOMAIN)
+if(xproofd AND xrootd AND ssl AND XROOTD_NOMAIN)
install(FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/xproofd
PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ
GROUP_EXECUTE GROUP_READ
--
2.26.2

3174
root.spec

File diff suppressed because it is too large Load diff

View file

@ -1,2 +1,3 @@
SHA512 (root-6.22.08.tar.xz) = 9080168116ffdd07cfce411dca77404177cd3ba57af498419432ca95169dbce581a7a2a667c22273685d659b3e0398d567b2d51d07ca767b076ee5196395d828
SHA512 (root-testfiles.tar.xz) = 945aef1a0cf5af672d4ab84b0ac00b76118e93008ff72447658ee82d9e955a1540af3ff7126e701418872f1d91b92ee96d4985840a519036c42732023a13f00f
SHA512 (root-6.38.00.tar.xz) = 7c452b509e8171a0cbb7c102a3d4c07333fc8535f1b2c2ab0b9f7434604f098989a78bb71c41039dd41dbbd3438ea8703939826092f075d9d730b6b53c84ac55
SHA512 (root-testfiles.tar.xz) = 4bb7f8ca00b1427ba49f6428e9cfe5908a2ffdd2ce4134d3bc169a0629198352b5500fe0cf92c121d148e5af41f7016c96038a77794a4d37d94e6ec0a9d75670
SHA512 (clad-2.2.tar.gz) = 6f76d706a829901fc0fcdb38b5ddad6ea8ad9186ea48a4b6b585fc62974a2cda11b96a448c25daaba0586962d6428773e7ab751236c6afa72a91d12f30f2d05e