Clean up the way externals are picked up.

Same as: root-5.34.02-externals.
Silence roofit banner.

Same as root-5.28-00d-roofit-silence-static-printout.patch
Specify gnu hash style.

Same as root-5.34.00-linker-gnu-hash-style.patch.
Correct platform detection on mac.

Same as root-5.32.00-detect-arch.
Silence warnings.

Same as root-5.32.00-detect-arch.patch.
Use correct isnan.

Same as root-5.30.02-fix-isnan-again.spec.
Support for C++11 in ARM builds
Use pthread on linux, as suggested by Matevz
Make TMVA thread-safe with respect to use of Reader

It is now possible to create independent TMVA::Readers and use
them simultaneously on different threads.
Training of MVAs is still only safe single-threaded. In addition,
it is not safe to use multiple instances of MethodCFMlpANN either
single or multi-threaded because of a global 'this' pointer.

Conflicts:
	tmva/src/DecisionTreeNode.cxx
Lock calls to Reflex::Class::PathToBase

Instances of Reflex::Class are shared across threads. Calls to
Class::PathToBase caches values in a std::map for later use. Since
C;ass::PathToBase can be called from different threads, the map
needs to be locked. For simplicity, all Reflex::Class instances share
the same lock.
Include patches from roofit.spec

- roofit-5.30.00-remove-tmath-infinity.patch
- roofit-5.24-00-RooFactoryWSTool-include.patch
Have to use recusive_mutex when locking Reflex::Class::PathToBase
Protect global list of functions from concurrent access

The list returned from TROOT::GetListOfFunctions needs to be protected
from concurrent access to allow use of TFormulas on different
threads.
Adapt to Chris changes for multithreading.

Chris removed the naked static pointer to fgLogger in
bf35e4fd98458baa5f3a8f3507f73bae4524739c however there are a few places
where it was used. This should address all the remaining issues.
Add constexpr SMatrix constructor.
Make caching of fProperty and fInterShowMembers thread safe

The setting of the caches held by fProperty and fInterShowMembers
can happen on different threads. Therefore the values themselves
are now atomic and appropriate locks are held when updating the values.
Take lock before calling cint

Must serialize access when getting type related information from
cint.
Added additional error reporting

While debugging a problem related to thread safety these additional
checks and error reports were very helpful.
Synchronize construction of TApplication

It was possible for multiple threads to attempt construction of a
TApplication or for one thread to think the TApplication was already
constructed while another thread was in the process of doing the
construction.
Merge pull request #42 from ktf/prepare-5-34-22

Port CMS specific patches from 5.34.21