diff --git a/root-TGHtmlBrowser-crash.patch b/root-TGHtmlBrowser-crash.patch
deleted file mode 100644
index 5cd8c6b..0000000
--- a/root-TGHtmlBrowser-crash.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From 961e9457ce3a9f6641819ceab61ce55b147d2fe5 Mon Sep 17 00:00:00 2001
-From: Bertrand Bellenot
-Date: Fri, 21 Sep 2018 11:10:07 +0200
-Subject: [PATCH] Fix Jira issue #ROOT-9640 Segmentation violation after
- starting TBrowser b
-
-Only connect/disconnect TGHtmlBrowser signals when it is present
----
- gui/gui/src/TGFileBrowser.cxx | 8 +++++---
- gui/gui/src/TRootBrowser.cxx | 4 ++++
- 2 files changed, 9 insertions(+), 3 deletions(-)
-
-diff --git a/gui/gui/src/TGFileBrowser.cxx b/gui/gui/src/TGFileBrowser.cxx
-index 3f6ce23b60..17b13bacaf 100644
---- a/gui/gui/src/TGFileBrowser.cxx
-+++ b/gui/gui/src/TGFileBrowser.cxx
-@@ -232,8 +232,9 @@ void TGFileBrowser::CreateBrowser()
-
- fDblClick = kFALSE;
-
-- TQObject::Connect("TGHtmlBrowser", "Clicked(char*)",
-- "TGFileBrowser", this, "Selected(char*)");
-+ if (TClass::GetClass("TGHtmlBrowser"))
-+ TQObject::Connect("TGHtmlBrowser", "Clicked(char*)",
-+ "TGFileBrowser", this, "Selected(char*)");
-
- TQObject::Connect("TPad", "Modified()",
- "TGFileBrowser", this, "PadModified()");
-@@ -249,7 +250,8 @@ void TGFileBrowser::CreateBrowser()
-
- TGFileBrowser::~TGFileBrowser()
- {
-- TQObject::Disconnect("TGHtmlBrowser", "Clicked(char*)");
-+ if (TClass::GetClass("TGHtmlBrowser"))
-+ TQObject::Disconnect("TGHtmlBrowser", "Clicked(char*)");
- TQObject::Disconnect("TPad", "Modified()");
-
- delete fContextMenu;
-diff --git a/gui/gui/src/TRootBrowser.cxx b/gui/gui/src/TRootBrowser.cxx
-index 8105c29d09..56c39585bd 100644
---- a/gui/gui/src/TRootBrowser.cxx
-+++ b/gui/gui/src/TRootBrowser.cxx
-@@ -54,6 +54,7 @@
- #include "TSystem.h"
- #include "TApplication.h"
- #include "TBrowser.h"
-+#include "TClass.h"
- #include "TGClient.h"
- #include "TGFrame.h"
- #include "TGTab.h"
-@@ -213,6 +214,9 @@ void TRootBrowser::CreateBrowser(const char *name)
- fPreMenuFrame->AddFrame(fMenuBar, fLH2);
- fTopMenuFrame->AddFrame(fPreMenuFrame, fLH0);
-
-+ if (!TClass::GetClass("TGHtmlBrowser"))
-+ fMenuFile->DisableEntry(kNewHtml);
-+
- fMenuFrame = new TGHorizontalFrame(fTopMenuFrame, 100, 20, kRaisedFrame);
- fTopMenuFrame->AddFrame(fMenuFrame, fLH5);
-
---
-2.17.2
-
diff --git a/root-clang-ignore-gcc-options.patch b/root-clang-ignore-gcc-options.patch
new file mode 100644
index 0000000..ebd8957
--- /dev/null
+++ b/root-clang-ignore-gcc-options.patch
@@ -0,0 +1,33 @@
+From 1303b60707614043993f9c97c79dd4fe89e6efa4 Mon Sep 17 00:00:00 2001
+From: Mattias Ellert
+Date: Wed, 7 Nov 2018 12:05:30 +0100
+Subject: [PATCH] Let clang ignore some gcc options it hasn't implemented
+
+---
+ .../llvm/src/tools/clang/include/clang/Driver/Options.td | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/interpreter/llvm/src/tools/clang/include/clang/Driver/Options.td b/interpreter/llvm/src/tools/clang/include/clang/Driver/Options.td
+index 05dc9d7eb3..1e887ac6b1 100644
+--- a/interpreter/llvm/src/tools/clang/include/clang/Driver/Options.td
++++ b/interpreter/llvm/src/tools/clang/include/clang/Driver/Options.td
+@@ -2464,6 +2464,8 @@ defm align_loops : BooleanFFlag<"align-loops">, Group, Group;
+ defm align_jumps : BooleanFFlag<"align-jumps">, Group;
+ def falign_jumps_EQ : Joined<["-"], "falign-jumps=">, Group;
++defm cf_protection : BooleanFFlag<"cf-protection">, Group;
++def fcf_protection_EQ : Joined<["-"], "fcf-protection=">, Group;
+
+ // FIXME: This option should be supported and wired up to our diognostics, but
+ // ignore it for now to avoid breaking builds that use it.
+@@ -2524,6 +2526,7 @@ defm single_precision_constant : BooleanFFlag<"single-precision-constant">,
+ Group;
+ defm spec_constr_count : BooleanFFlag<"spec-constr-count">, Group;
+ defm stack_check : BooleanFFlag<"stack-check">, Group;
++defm stack_clash_protection : BooleanFFlag<"stack-clash-protection">, Group;
+ defm strength_reduce :
+ BooleanFFlag<"strength-reduce">, Group;
+ defm tls_model : BooleanFFlag<"tls-model">, Group;
+--
+2.19.1
+
diff --git a/root-unbundle-gtest.patch b/root-unbundle-gtest.patch
index f3b343d..b5f0531 100644
--- a/root-unbundle-gtest.patch
+++ b/root-unbundle-gtest.patch
@@ -1,7 +1,7 @@
-diff -ur root-6.12.04.orig/cmake/modules/SearchInstalledSoftware.cmake root-6.12.04/cmake/modules/SearchInstalledSoftware.cmake
---- root-6.12.04.orig/cmake/modules/SearchInstalledSoftware.cmake 2017-12-13 08:27:42.000000000 +0100
-+++ root-6.12.04/cmake/modules/SearchInstalledSoftware.cmake 2018-01-07 22:45:45.537658993 +0100
-@@ -1580,71 +1580,18 @@
+diff -ur root-6.14.06.orig/cmake/modules/SearchInstalledSoftware.cmake root-6.14.06/cmake/modules/SearchInstalledSoftware.cmake
+--- root-6.14.06.orig/cmake/modules/SearchInstalledSoftware.cmake 2018-11-05 10:30:03.000000000 +0100
++++ root-6.14.06/cmake/modules/SearchInstalledSoftware.cmake 2018-11-06 10:06:56.399528378 +0100
+@@ -1556,75 +1556,18 @@
#---Download googletest--------------------------------------------------------------
if (testing)
@@ -26,6 +26,10 @@ diff -ur root-6.12.04.orig/cmake/modules/SearchInstalledSoftware.cmake root-6.12
- -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG:PATH=\\\"\\\"
- -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE:PATH=\\\"\\\")
- endif()
+- if(APPLE)
+- set(EXTRA_GTEST_OPTS
+- -DCMAKE_OSX_SYSROOT=${CMAKE_OSX_SYSROOT})
+- endif()
-
- ExternalProject_Add(
- googletest
diff --git a/root.spec b/root.spec
index dd91288..c9ddf65 100644
--- a/root.spec
+++ b/root.spec
@@ -44,9 +44,9 @@
%global __provides_exclude_from ^(%{python2_sitearch}|%{python3_sitearch}%{?python3_other_sitearch:|%{python3_other_sitearch}})/libJupyROOT\\.so$
Name: root
-Version: 6.14.04
+Version: 6.14.06
%global libversion %(cut -d. -f 1-2 <<< %{version})
-Release: 3%{?dist}
+Release: 1%{?dist}
Summary: Numerical data analysis framework
License: LGPLv2+
@@ -118,10 +118,9 @@ Patch19: %{name}-ix32-geom-opt.patch
# Missing libcrypto dependency for libSrvAuth
# https://github.com/root-project/root/pull/2436
Patch20: %{name}-crypto.patch
-# Fix crash in TBrowser when root-gui-html is not installed
-# https://sft.its.cern.ch/jira/browse/ROOT-9640
-# Backported from git master
-Patch21: %{name}-TGHtmlBrowser-crash.patch
+# Let clang ignore some gcc options it hasn't implemented
+# https://github.com/root-project/root/pull/2933
+Patch21: %{name}-clang-ignore-gcc-options.patch
# s390x suffers from endian issues resulting in failing tests
# and broken documentation generation
@@ -373,6 +372,12 @@ Requires: urw-fonts
Requires: font(droidsansfallback)
Obsoletes: %{name}-ruby < 6.00.00
Obsoletes: %{name}-vdt < 6.10.00
+%if %{py3default}
+# Don't build python2-jupyroot/jsmva packages for Fedora >= 29
+Obsoletes: python2-jupyroot < %{version}-%{release}
+Obsoletes: python2-jsmva < %{version}-%{release}
+Obsoletes: %{name}-rootaas < 6.08.00
+%endif
%description core
This package contains the core libraries used by ROOT: libCore, libNew,
@@ -454,6 +459,7 @@ Requires: %{name}-tree%{?_isa} = %{version}-%{release}
This package contains the Python extension for ROOT. This package
provide a Python interface to ROOT, and a ROOT interface to Python.
+%if ! %{py3default}
%package -n python2-jupyroot
Summary: ROOT Jupyter kernel
Requires: python2-%{name}%{?_isa} = %{version}-%{release}
@@ -481,6 +487,7 @@ Requires: %{name}-tmva = %{version}-%{release}
%description -n python2-jsmva
TMVA interface used by JupyROOT.
+%endif
%package -n python%{python3_pkgversion}-%{name}
Summary: Python extension for ROOT
@@ -1650,7 +1657,7 @@ Requires: %{name}-net%{?_isa} = %{version}-%{release}
This package contains the Tree library for ROOT.
%package tree-dataframe
-Summary: A high level interfae to ROOT trees
+Summary: A high level interface to ROOT trees
Requires: %{name}-core%{?_isa} = %{version}-%{release}
Requires: %{name}-hist%{?_isa} = %{version}-%{release}
Requires: %{name}-tree%{?_isa} = %{version}-%{release}
@@ -1659,7 +1666,7 @@ Requires: %{name}-tree-player%{?_isa} = %{version}-%{release}
Obsoletes: %{name}-tree-player < 6.14.00
%description tree-dataframe
-This package contains a high level interfae to ROOT trees.
+This package contains a high level interface to ROOT trees.
%package tree-player
Summary: Library to loop over a ROOT tree
@@ -2187,6 +2194,7 @@ install -p -m 644 %SOURCE4 %{buildroot}%{_unitdir}
mkdir -p %{buildroot}%{_datadir}/%{name}/cli
mv %{buildroot}%{_libdir}/%{name}/cmdLineUtils.py* \
%{buildroot}%{_datadir}/%{name}/cli
+sed -e '/^\#!/d' -i %{buildroot}%{_datadir}/%{name}/cli/cmdLineUtils.py
%if %{py3default}
%py_byte_compile %{__python3} %{buildroot}%{_datadir}/%{name}/cli
@@ -2227,24 +2235,12 @@ DESTDIR=$tmpdir cmake3 -P builddir/bindings/python2/cmake_install.cmake
mkdir -p %{buildroot}%{python2_sitearch}
mv $tmpdir%{_libdir}/%{name}/libPyROOT.so.%{version} \
%{buildroot}%{python2_sitearch}/libPyROOT.so
-mv $tmpdir%{_libdir}/%{name}/libJupyROOT.so.%{version} \
- %{buildroot}%{python2_sitearch}/libJupyROOT.so
mv $tmpdir%{_libdir}/%{name}/*.py* %{buildroot}%{python2_sitearch}
-rm $tmpdir%{_libdir}/%{name}/JupyROOT/README.md
-rm -rf $tmpdir%{_libdir}/%{name}/JupyROOT/src
-mv $tmpdir%{_libdir}/%{name}/JupyROOT %{buildroot}%{python2_sitearch}
-rm $tmpdir%{_libdir}/%{name}/libJupyROOT.so.%{libversion}
-rm $tmpdir%{_libdir}/%{name}/libJupyROOT.so
-
-mkdir -p %{buildroot}%{python2_sitelib}
-mv $tmpdir%{_libdir}/%{name}/JsMVA %{buildroot}%{python2_sitelib}
rm -rf $tmpdir
# Create empty .egg-info files so that rpm auto-generates provides
touch %{buildroot}%{python2_sitearch}/ROOT-%{version}.egg-info
-touch %{buildroot}%{python2_sitearch}/JupyROOT-%{version}.egg-info
-touch %{buildroot}%{python2_sitelib}/JsMVA-%{version}.egg-info
%else
@@ -2336,21 +2332,32 @@ touch %{buildroot}%{python3_other_sitelib}/JsMVA-%{version}.egg-info
# Put jupyter stuff in the right places
mkdir -p %{buildroot}%{_datadir}/jupyter/kernels
+%if ! %{py3default}
cp -pr %{buildroot}%{_datadir}/%{name}/notebook/kernels/root \
%{buildroot}%{_datadir}/jupyter/kernels/python2-jupyroot
-sed -e 's/ROOT C++/& (Python 2)/' -e 's!python!%{__python2}!' \
+sed -e 's/ROOT C++/& (Python 2)/' \
+ -e 's!python!%{__python2}!' \
-i %{buildroot}%{_datadir}/jupyter/kernels/python2-jupyroot/kernel.json
+sed -e '/^\#!/d' \
+ -i %{buildroot}%{python2_sitearch}/JupyROOT/kernel/rootkernel.py
+%endif
cp -pr %{buildroot}%{_datadir}/%{name}/notebook/kernels/root \
%{buildroot}%{_datadir}/jupyter/kernels/python%{python3_pkgversion}-jupyroot
-sed -e 's/ROOT C++/& (Python 3)/' -e 's!python!%{__python3}!' \
+sed -e 's/ROOT C++/& (Python 3)/' \
+ -e 's!python!%{__python3}!' \
-i %{buildroot}%{_datadir}/jupyter/kernels/python%{python3_pkgversion}-jupyroot/kernel.json
+sed -e '/^\#!/d' \
+ -i %{buildroot}%{python3_sitearch}/JupyROOT/kernel/rootkernel.py
%if %{?rhel}%{!?rhel:0} == 7
cp -pr %{buildroot}%{_datadir}/%{name}/notebook/kernels/root \
%{buildroot}%{_datadir}/jupyter/kernels/python%{python3_other_pkgversion}-jupyroot
-sed -e 's/ROOT C++/& (Python %{python3_other_version})/' -e 's!python!%{__python3_other}!' \
+sed -e 's/ROOT C++/& (Python %{python3_other_version})/' \
+ -e 's!python!%{__python3_other}!' \
-i %{buildroot}%{_datadir}/jupyter/kernels/python%{python3_other_pkgversion}-jupyroot/kernel.json
+sed -e '/^\#!/d' \
+ -i %{buildroot}%{python3_other_sitearch}/JupyROOT/kernel/rootkernel.py
%endif
rm -rf %{buildroot}%{_datadir}/%{name}/notebook/custom
@@ -2395,10 +2402,6 @@ sed -e 's!/usr/bin/env python2!%{__python2}!' \
sed -e 's!/usr/bin/env python2!%{__python2}!' \
-e 's!/usr/bin/env python3!%{__python3}!' \
-i %{buildroot}%{_bindir}/rootdrawtree
-sed -e '/^\#!/d' \
- -i %{buildroot}%{_datadir}/%{name}/cli/cmdLineUtils.py \
- %{buildroot}%{python2_sitearch}/JupyROOT/kernel/rootkernel.py \
- %{buildroot}%{python3_sitearch}/JupyROOT/kernel/rootkernel.py
sed -e 's!/usr/bin/env python!%{__pythondef}!' \
-i %{buildroot}%{_datadir}/%{name}/dictpch/makepch.py \
%{buildroot}%{_pkgdocdir}/tutorials/histfactory/example.py \
@@ -3126,6 +3129,7 @@ end
%{python2_sitearch}/cppyy.py*
%{python2_sitearch}/_pythonization.py*
+%if ! %{py3default}
%files -n python2-jupyroot
%{python2_sitearch}/JupyROOT
%{python2_sitearch}/JupyROOT-*.egg-info
@@ -3136,6 +3140,7 @@ end
%files -n python2-jsmva
%{python2_sitelib}/JsMVA
%{python2_sitelib}/JsMVA-*.egg-info
+%endif
%files -n python%{python3_pkgversion}-%{name} -f includelist-bindings-pyroot
%{_libdir}/%{name}/libPyROOT.rootmap
@@ -3786,6 +3791,12 @@ end
%endif
%changelog
+* Tue Nov 06 2018 Mattias Ellert - 6.14.06-1
+- Update to 6.14.06
+- Let clang ignore some gcc options it hasn't implemented
+- Don't build python2-jupyroot/jsmva packages for Fedora >= 29
+- Drop previously backported patch root-TGHtmlBrowser-crash.patch
+
* Thu Oct 25 2018 Mattias Ellert - 6.14.04-3
- Fix crash in TBrowser when root-gui-html is not installed
- Use empty .egg-info files instead of empty .dist-info files to make
diff --git a/sources b/sources
index b4a761b..2031d9b 100644
--- a/sources
+++ b/sources
@@ -1,2 +1 @@
-SHA512 (root-6.14.04.tar.xz) = 02163e1eb003613ce245b232eb11e491b91367fa61ead224fc7f4cecd3f04acaaa6e53ff526f26cfee3e4a5f0f32a9bf683e8ab648bc3e6fb5eda8d9d9756def
-SHA512 (root-testfiles.tar.xz) = 22b85815a49a0acec13b4dc160cac0712398df1ec7b0a0bf9b01f31c72538f356190e386fb7a37cd797a3bff1c04a52567761b8b3720790de96f515596ceeea2
+SHA512 (root-6.14.06.tar.xz) = 6aaf3453ea20cf7c39d23100ceb0ce13c47f856eed27c5f19b144eb691cf82740d046ad7a77b097c0c9581221645294f38bb8a39941543ae74823f5e619fd639