Work around change of interface for setRndmEnginePtr in Pythia8 310
Summary:
As detailed in T228, the interface of setRndmEnginePtr has changed in Pythia8
version 310, which results in build failures for EvtGen.
This revision works around this change by modifying the internal storage of the
EvtPythiaRandom pointer from a std::unique_ptr to a std::shared_ptr and then
having a compile-time switch on the Pythia8 version to either pass directly the
shared_ptr (in versions 310 and later) or the underlying raw pointer (in
earlier versions).
Closes T228.
Test Plan:
Code compiles successfully with Pythia8 310 and also earlier versions.
Comparison of generated validation distributions before and after change look good.
Reviewers: jback, kreps, abudinen
Reviewed By: jback, abudinen
Subscribers: #evtgen_admins
Tags: #evtgen
Maniphest Tasks: T228
Differential Revision: https://phab.hepforge.org/D96