Back to home page

EIC code displayed by LXR

 
 

    


Warning, /geant4/cmake/History is written in an unsupported language. File is not indexed.

0001 # Category cmake History
0002 
0003 See `CONTRIBUTING.rst` for details of **required** info/format for each entry,
0004 which **must** added in reverse chronological order (newest at the top).
0005 It must **not** be used as a substitute for writing good git commit messages!
0006 
0007 -------------------------------------------------------------------------------
0008 
0009 ## 2024-06-07 Ben Morgan (cmake-V11-02-18)
0010 - Add optional install of new URRPT data model
0011   - Fixes Issue #217
0012 
0013 ## 2024-06-04 Ben Morgan (cmake-V11-02-17)
0014 - Do not export HDF5 version to Geant4Config
0015   - Fixes Issue #214
0016 
0017 ## 2024-05-17 Gunter Folger (cmake-V11-02-16)
0018 - Use patched G4NDL 4.7.1 dataset.
0019 
0020 ## 2024-05-17 Ben Morgan (cmake-V11-02-15)
0021 - Add optional install of new NuDEXLib data model
0022 
0023 ## 2024-05-09 Ben Morgan (cmake-V11-02-14)
0024 - Provide CMake function to assist in linking unit tests to final libraries
0025   given required source code modules.
0026 
0027 ## 2024-05-08 Ben Morgan (cmake-V11-02-13)
0028 - Remove configuration/setup of TiMemory in Geant4.
0029 
0030 ## 2024-05-03 Ben Morgan (cmake-V11-02-12)
0031 - Introduce new `FullRelWithDebInfo` build mode.
0032   - Essentially `-O3 -g`, so maximum optimization with debugging symbols
0033   - Intended to help diagnose FPE exceptions on Alma9/gcc13/c++20 and future
0034     proof against similar
0035 - Remove obsolete `Maintainer` build mode that is nothing more than `Debug` 
0036 
0037 ## 2024-04-30 Ben Morgan (cmake-V11-02-11)
0038 - Simplifications to Geant4Config.cmake
0039   - Remove obsolete and never run "whole archive" linking of G4physics_lists
0040   - Replace TOOLSSG vis driver variables that are just synonyms for more
0041     fundamental config options (e.g. GEANT4_USE_QT) with the underlying
0042     variable.
0043 
0044 ## 2024-03-26 Ben Morgan (cmake-V11-02-10)
0045 - Disable use of FindPythia6 outside of internal Geant4 examples.
0046 
0047 ## 2024-04-17 Stephan Hageboeck (cmake-V11-02-09)
0048 - Mention the possibility of using cvmfs datasets in the cmake configure warning
0049 
0050 ## 2024-04-17 Ben Morgan (cmake-V11-02-08)
0051 - Bump G4EMLOW dataset to v8.6
0052 
0053 ## 2024-04-08 Guilherme Amadio (cmake-V11-02-07)
0054 - Fix also find_package(SoXt) and find_package(SoWin)
0055 
0056 ## 2024-04-20 Ben Morgan (cmake-V11-02-06)
0057 - Update FindPythia8 module to:
0058   - Apply [GitHub PR 68](https://github.com/Geant4/geant4/pull/68)
0059   - Reduce capability to only that required by py8decayer example
0060   - Emit error if used in project outside Geant4 or py8decayer
0061 
0062 ## 2024-03-12 Ben Morgan (cmake-V11-02-05)
0063 - Update FindPythia6 module to account for lib64
0064   - Applies [GitHub PR 63](https://github.com/Geant4/geant4/pull/63)
0065 
0066 ## 2024-03-11 Ben Morgan (cmake-V11-02-04)
0067 - Fix escaping of regex in geant4_module_check to satisfy latest Python3. 
0068 
0069 ## 2024-03-06 Ben Morgan (cmake-V11-02-03)
0070 - Bump G4PARTICLEXS dataset to v4.1
0071 
0072 ## 2024-01-29 Ben Morgan (cmake-V11-02-02)
0073 - Manually check versions of found SoXX packages to workaround their use of
0074   the `ExactVersionOnly` version checking strategy in find_package. Geant4
0075   only requires a minimum version. 
0076 
0077 ## 2024-01-26 Ben Morgan (cmake-V11-02-01)
0078 - Add -F flag for Qt when on macOS and with a framework build of Qt
0079   - Addresses [Bugzilla 2589](https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2589)
0080 
0081 ## 2024-01-19 Ben Morgan (cmake-V11-02-00)
0082 - Add compiler flags for GCC only to help detect/debug LTO-related problems when
0083   building with CMAKE_INTERPROCEDURAL_OPTIMIZATION. 
0084 
0085 ## 2023-11-28 Ben Morgan (cmake-V11-01-30)
0086 - Bump minimum VecGeom version to 1.2.6
0087 
0088 ## 2023-11-14 Ben Morgan (cmake-V11-01-29)
0089 - Export QT_VERSION value to GNUmake setup script
0090 
0091 ## 2023-11-03 Ben Morgan (cmake-V11-01-28)
0092 - Prefix ZLIB/EXPAT variables with "G4" to prevent clash with VTK's own internal
0093   find of these packages.
0094 
0095 ## 2023-10-09 Ben Morgan (cmake-V11-01-27)
0096 - Use FindPython in place of deprecated FindPythonInterp in FindStatTest
0097 
0098 ## 2023-10-06 Ben Morgan (cmake-V11-01-26)
0099 - Update G4INCL to v1.2
0100 - Update G4EMLOW to v8.5
0101 
0102 ## 2023-09-06 Stewart Boogert (cmake-V11-01-25)
0103 - Update VTK module deps for geometry IO
0104 - Updated module init for VTK
0105 
0106 ## 2023-09-05 Ben Morgan (cmake-V11-01-24)
0107 - Allow source code modules to have an AUTOMOC property and promote this to
0108   consuming target to remove hardcoding of Qt-using modules
0109 
0110 ## 2023-08-02 Ben Morgan (cmake-V11-01-23)
0111 - Export non-cache variables to Geant4PackageCache to support CMake>=3.27
0112   - Fixes Bugzilla 2556
0113 
0114 ## 2023-07-05 Igor Semeniouk (cmake-V11-01-22)
0115 - print md5sum in coreutils format for compatibility with busybox
0116 
0117 ## 2023-06-21 Ben Morgan (cmake-V11-01-21)
0118 - Remobe obsolete and confusing GEANT4_BUILD_TESTS option and configuration
0119 
0120 ## 2023-06-14 Gunter Folger (cmake-V11-01-20)
0121 - Update to use G4EMLOW 8.4, as provoded by Vladimir
0122 
0123 ## 2023-05-31 Ben Morgan (cmake-V11-01-19)
0124 - Require Qt5 >= 5.9 if Qt5 support is selected
0125   - Version chosen as current system version on oldest support OS (CentOS7)  
0126 
0127 ## 2023-05-29 Guy Barrand (cmake-V11-01-18)
0128 - Templates/Geant4Config.cmake.inm Modules/G4InterfaceOptions.cmake: handle the TOOLSSG_[X11,XT,WINDOWS,QT]_ZB vis drivers.
0129 
0130 ## 2023-05-23 Ben Morgan (cmake-V11-01-17)
0131 - Add capabilities to geant4_module_check.py:
0132   - Given a module, print list of modules that depend on it
0133   - Print all modules sorted in descending order of the number of modules using them
0134   - Show which headers from linked modules are included by a module in its
0135     usage requirements output
0136 
0137 ## 2023-05-12 Ben Morgan (cmake-V11-01-16)
0138 - Make linking a source code module to a final Geant4 library a cmake-time error
0139   - Fixes #161
0140 
0141 ## 2023-05-10 Ben Morgan (cmake-V11-01-15)
0142 - Update config scripts for split of G4persistency library
0143 
0144 ## 2023-05-10 Gunter Folger (cmake-V11-01-14)
0145 - Update to use G4INCL 1.1
0146 
0147 ## 2023-04-28 Ben Morgan (cmake-V11-01-13)
0148 - Export VTK_DIR and QtX_DIR to package cache to assist in refinding both.
0149 
0150 ## 2023-04-27 Ben Morgan (cmake-V11-01-12)
0151 - Find and refind Qt6OpenGLWidgets module in Qt6 for use by Qt/OpenGL consumers.
0152 
0153 ## 2023-04-26 Ben Morgan (cmake-V11-01-11)
0154 - Support finding and use of Qt6 on request for beta testing.
0155 
0156 ## 2023-04-02 Ben Morgan (cmake-V11-01-10)
0157 - No longer link to QtPrintSupport, which is not used in the toolkit.
0158 
0159 ## 2023-03-28 Gunter Folger (cmake-V11-01-09)
0160 - Update to use G4ABLA 3.3
0161 
0162 ## 2023-03-22 Ben Morgan (cmake-V11-01-08)
0163 - Remove setting of -D flags in Geant4Config to enable vis drivers. Libraries
0164   now export compile definitions for what they support to move to a "use on link"
0165   model.
0166 
0167 ## 2023-02-16 Gunter Folger (cmake-V11-01-07)
0168 - Update to use G4EMLOW 8.3
0169 
0170 ## 2023-02-13 Stewart Boogert (cmake-V11-01-06)
0171 - streamlined VTK cmake components.
0172 
0173 ## 2023-02-06 Ben Morgan (cmake-V11-01-05)
0174 - Remove no longer required G4VecGeomShim module.
0175   - VecGeom supports/supplies full imported targets since 1.1.18
0176   - Use of VECGEOM_LIBRARIES variable required to allow build against CUDA-enabled VecGeom
0177 
0178 ## 2023-01-30 Ben Morgan (cmake-V11-01-04)
0179 - Update Qt MOC application for G4UIimplementation in place of G4UIbasic/G4UIcommon
0180 
0181 ## 2023-01-25 Ben Morgan (cmake-V11-01-03)
0182 - Initial support for declaring headers of a source code module private.
0183   - Headers declared private are not installed
0184   - geant4_module_check reports an inconsistency if a private header is used
0185     non-privately
0186 
0187 ## 2023-01-18 Ben Morgan (cmake-V11-01-02)
0188 - Fix configuration/use of G4ToolsSG in geant4-config
0189   - Addresses issue reported on [Geant4 Forum](https://geant4-forum.web.cern.ch/t/missing-g4toolssg-in-geant4-config-in-pre-compiled-geant4-11-1-for-linux/9738)
0190 
0191 ## 2023-01-09 Ben Morgan (cmake-V11-01-01)
0192 - Use PROJECT_ or Geant4_ scoped _SOURCE/BINARY_DIR variables in place of CMAKE_ 
0193   scope version to ease use of Geant4 as a CMake subproject. 
0194   - Fixes [GitHub PR #52](https://github.com/Geant4/geant4/pull/52)
0195 
0196 ## 2022-12-20 Gunter Folger (cmake-V11-01-00)
0197 - Use new dataset G4ABLA 3.2
0198 
0199 ## 2022-12-05 Ben Morgan (cmake-V11-00-50)
0200 - Revert VecGeom minimum version to 1.2.0 due to issues with 1.2.1 reported by
0201   CMS but not yet triaged in VecGeom itself.
0202 
0203 ## 2022-11-29 Ben Morgan (cmake-V11-00-49)
0204 - Stamp minimum versions of CLHEP and VecGeom required for 11.1 release
0205 
0206 ## 2022-11-21 Ben Morgan (cmake-V11-00-48)
0207 - Only support Qt5. Code updates to support Qt6 did not make release deadline, so
0208   remove find of Qt6, retaining other support structures to enable quick updates
0209   later.
0210 
0211 ## 2022-11-15 Ben Morgan (cmake-V11-00-47)
0212 - Remove Geant4Py from toolkit build, pointing users to upstream repo if they
0213   set GEANT4_USE_PYTHON in the CMake arguments.
0214 
0215 ## 2022-11-07 Ben Morgan (cmake-V11-00-46)
0216 - Keep file timestamps from unpacked data libraries in CMake 3.24 and newer.
0217 
0218 ## 2022-10-27 Ben Morgan (cmake-V11-00-45)
0219 - Fix bug in Qt3D activation as [reported on the Forum](https://geant4-forum.web.cern.ch/t/compiling-geant4-11-1-0-beta-failed-on-built-target-g4physicslist-s/9064/8) 
0220 
0221 ## 2022-10-20 Guy Barrand (cmake-V11-00-44)
0222 - Modules/G4InterfaceOptions.cmake: remove usage of GEANT4_USE_TOOLSSG since ToolsSG
0223   is now "always on" on all platforms.
0224 - Templates/Geant4Config.cmake.in: remove usage of _geant4_use_toolssg_library, and
0225   setup of -DG4VIS_USE_TOOLSSG for compilation.
0226 
0227 ## 2022-10-13 Ben Morgan (cmake-V11-00-43)
0228 - Find, use and re-find Qt OpenGLWidgets component when Qt6 is in use.
0229 
0230 ## 2022-10-12 Gunter Folger (cmake-V11-00-42)
0231 - add new dataset G4EMLOW 8.2 as provided by Vladimir:
0232     This modification include additions for atomic de-excitation for Z=101-104 
0233     and N2 DNA data. No change for existing tests is expected.
0234 
0235 ## 2022-10-07 Gabriele Cosmo (cmake-V11-00-41)
0236 - Added "-diag-disable=10441" CXX option to Intel compilers, to disable
0237   icc compiler deprecation message.
0238 
0239 ## 2022-09-27 Ben Morgan (cmake-V11-00-40)
0240 - Promote INTERFACE module properties to PUBLIC when merging them into a non-INTERFACE
0241   final target.
0242 
0243 ## 2022-09-25 Ben Morgan (cmake-V11-00-39)
0244 - Fix bug causing failure in `do_provides` function of geant4_module_check.py
0245 
0246 ## 2022-09-10 Ben Morgan (cmake-V11-00-38)
0247 - Implement mechanism to filter out headers in geant4_module_check with linting comment
0248 
0249 ## 2022-09-09 Ben Morgan (cmake-V11-00-37)
0250 - Fix geant4_module_check returning 1 on successful run
0251 - Filter out C++ filesystem library from checks
0252 
0253 ## 2022-09-03 Ben Morgan (cmake-V11-00-36)
0254 - Filter out Vis driver modules from consistency check for G4vis_management
0255   - G4VisExecutive is a user level compile time interface to "plugin" drivers.
0256   - Driver headers need filtering out as they are not linked to in Geant4 itself
0257     to avoid circular dependencies.
0258 
0259 ## 2022-08-31 Ben Morgan (cmake-V11-00-35)
0260 - New geant4_module_check.py script to provide convenient interface for developers
0261   and testing to check module/library cycles and dependency inconsistencies.
0262 
0263 ## 2022-07-14 Ben Morgan (cmake-V11-00-34)
0264 - Remove obsolete and now longer built G4gl2ps target
0265 
0266 ## 2022-07-14 Ben Morgan (cmake-V11-00-33)
0267 - Address [Bugzilla 2485](https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2485)
0268   - Update extraction of include paths from VecGeom to use imported target
0269     property.
0270 
0271 ## 2022-06-09 Igor Semeniouk (cmake-V11-00-32)
0272 - G4ConfigureGNUMakeHelpers.cmake (geant4.[c]sh, geant4.bat generation )
0273    - use the environment variable GEANT4_DATA_DIR as top data dir
0274    - the environment variables for individual dataset commented in scripts
0275 
0276 ## 2022-06-07 Ben Morgan (cmake-V11-00-31)
0277 - Rationalize interlinked PTL/TBB build options 
0278 
0279 ## 2022-05-30 Guilherme Amadio (cmake-V11-00-30)
0280 - Add options --sh and --csh to geant4-config script
0281 
0282 ## 2022-05-18 Guilherme Amadio (cmake-V11-00-29)
0283 - Use more standard install location for CMake files
0284 - Remove version from default installation directories
0285 - Add required configuration to be able to generate DEB/RPM packages with CPack
0286 
0287 ## 2022-05-16 Guilherme Amadio (cmake-V11-00-28)
0288 - Add source validation exception for G4FindDataDir.hh generated header
0289 
0290 ## 2022-05-03 Ben Morgan (cmake-V11-00-27)
0291 - Preliminary configuration support for Qt5 and Qt6
0292 
0293 ## 2022-04-27 Gunter Folger (cmake-V11-00-26)
0294 - add new dataset G4NDL 4.7 with new TermalScattering data
0295 
0296 ## 2022-04-11 Ben Morgan (cmake-V11-00-25)
0297 - Allow library composition to be overriden in developer builds
0298 
0299 ## 2022-04-11 Ben Morgan (cmake-V11-00-24)
0300 - Do not use "readlink -f" to support pre-Monterey macOS systems
0301 
0302 ## 2022-04-08 Ben Morgan (cmake-V11-00-23)
0303 - Add -Og to GNU/Clang default debug flags
0304 
0305 ## 2022-04-06 Ben Morgan (cmake-V11-00-22)
0306 - Don't add CLHEP_INCLUDE_DIRS directly through include_directories to prevent potential
0307   issues with it holding relative paths (reported by Seth Johnson)
0308 
0309 ## 2022-04-05 Ben Morgan (cmake-V11-00-21)
0310 - Copy .clang-tidy file to build directory to assist run-clang-tidy reporting.
0311 
0312 ## 2022-04-04 Igor Semeniouk (cmake-V11-00-20)
0313 - In G4ConfigurePkgConfigHelpers.cmake, geant4-config.in (geant4-config generation)
0314   - new flag "--features", add vtk and qt3d feature
0315   - allow use md5sun if openssl missing
0316   - canonicalize prefix path
0317 - In G4ConfigureGNUMakeHelpers.cmake (geant4.[c]sh, geant4.bat generation )
0318    - allow full path source in zsh, sh
0319    - unset local variables at the end
0320    - introduced GEANT4_DATA_DIR, all DS path relative to this
0321 
0322 ## 2022-03-25 Ben Morgan (cmake-V11-00-19)
0323 - Add commands for working with categories analagous to module commands
0324 
0325 ## 2022-03-28 Ben Morgan (cmake-V11-00-18)
0326 - Remove retired G4tasking library from configuration files
0327 
0328 ## 2022-03-28 Ben Morgan (cmake-V11-00-17)
0329 - Fix typo in G4DeveloperAPI that prevented install of headers
0330 
0331 ## 2022-03-25 Ben Morgan (cmake-V11-00-16)
0332 - Do not use CMAKE_VERBOSE_MAKEFILE when building tests
0333 
0334 ## 2022-03-22 Ben Morgan (cmake-V11-00-15)
0335 - Add geant4_module_sources command to enable appending of headers/sources
0336   to a module after creation
0337 
0338 ## 2022-03-18 Ben Morgan (cmake-V11-00-14)
0339 - Change default value of GEANT4_BUILD_BUILTIN_BACKTRACE to OFF
0340 
0341 ## 2022-03-15 Ben Morgan (cmake-V11-00-13)
0342 - Rationalize declaration and use of internal builds of required externals CLHEP, 
0343   zlib, expat, PTL and tools libraries.
0344 
0345 ## 2022-03-10 Ben Morgan (cmake-V11-00-12)
0346 - Remove deprecated functions in G4DeveloperAPI
0347 - Support declaration and composition of header-only modules and libraries  
0348 
0349 ## 2022-03-03 Ben Morgan (cmake-V11-00-11)
0350 - Provide GEANT4_BUILD_ENABLE_ASSERTIONS option to enable assert() in all
0351   release build modes (Release, RelWithDebInfo, MinSizeRel)
0352   - Addresses GitLab Issue #104
0353 - Forward `CMAKE_<LANG>_FLAGS[_<MODE>]` flags to `geant4_add_test` so that
0354   a consistent set is used through the project. 
0355 
0356 ## 2022-03-07 Gunter Folger (cmake-V11-00-10)
0357 - fix in CMakeCPackOptions.cmake.in to avoid PATH with only /, without \, for g4_small.bmp
0358 
0359 ## 2022-02-11 Gunter Folger (cmake-V11-00-09)
0360 - add new dataset G4EMLOW 8.1
0361 
0362 ## 2022-02-11 Igor Semeniouk (cmake-V11-00-08)
0363 - Bug fix introduced in cmake-V11-00-06
0364   - G4ConfigureGNUMakeHelpers.cmake - Fix for _g4tc_prepend_path on geant4.bat genaration ( Windows only)
0365   - History - fix comment syntax
0366 
0367 ## 2022-02-11 Ben Morgan (cmake-V11-00-07)
0368 - Apply [GitHub PR 37](https://github.com/Geant4/geant4/pull/37) from gondiaz.
0369   - Add G4ptl and G4tasking libraries to link list in geant4-config
0370 - Fixup: place G4tasking in correct location in dependency list 
0371 
0372 ## 2022-02-11 Igor Semeniouk (cmake-V11-00-06)
0373 - Bug fix in functions _g4tc_prepend_path, _g4tc_apppend_path on geant4.bat genaration ( Windows only)
0374 
0375 ## 2022-02-10 Igor Semeniouk (cmake-V11-00-05)
0376 - In G4ConfigureGNUMakeHelpers.cmake
0377   - not set LD_LIBRARY_PATH configuration on MacOS (Darwin)
0378   - add paths to DLL into PATH on Windows
0379 
0380 ## 2022-02-08 Ben Morgan (cmake-V11-00-04)
0381 - Enable ToolsSG and backends based on use of external libraries (Qt, X11, Xm, Win32)
0382   - Backends made non-mutally exclusive
0383   - Remove GEANT4_USE_TOOLSSG public CMake option
0384   - Addresses #117
0385 
0386 ## 2022-02-06 Gabriele Cosmo (cmake-V11-00-03)
0387 - Updated compilation flags for Intel icc/icx compilers.
0388 
0389 ## 2022-02-05 Gunter Folger (cmake-V11-00-02)
0390 - Add icpx/icx compiler to G4ConfigureGNUMakeHelpers.cmake
0391 
0392 ## 2022-01-28 Ben Morgan (cmake-V11-00-01)
0393 - Correct logic error in checking whether module is already composed
0394 - **DEPRECATIONS**
0395   - `geant4_define_module`
0396   - `geant4_global_library_target`
0397   - Implementation reduced to emitting a CMake warning message on what to replace with
0398 
0399 ## 2021-12-10 Ben Morgan (cmake-V11-00-00)
0400 - Change to new Markdown History format
0401 
0402 ---
0403 
0404 # History entries prior to 11.0
0405 
0406 09 November 2021 - Ben Morgan (cmake-V10-07-53)
0407 - Only configure public release contribution guide if present
0408 
0409 30 November 2021 - Ivana Hrivnacova (cmake-V10-07-52)
0410 - Removed FindAIDA.cmake from Modules
0411 
0412 29 November 2021 - Ben Morgan (cmake-V10-07-51)
0413 - Require VecGeom 1.1.18 or newer
0414 - Configure/find Vtk alongside other UI/Vis options
0415 
0416 26 November 2021 - Ben Morgan (cmake-V10-07-50)
0417 - Strip .git{ignore,lab,hub} files/dirs from source package
0418 - Use XZ compression instead of BZIP for source package
0419 
0420 22 November 2021 - Ben Morgan (cmake-V10-07-49)
0421 - Improve/modernize CPack source packaging
0422 
0423 12 November 2021 - Ben Morgan (cmake-V10-07-48)
0424 - Retire G4VIS_... preprocessor symbols in toolkit build, only required
0425   by obsolete GNUmake system
0426 
0427 8 November 2021 - Ben Morgan (cmake-V10-07-47)
0428 - Retire G4UI/G4INTY_... preprocessor symbols in toolkit build, only required
0429   by obsolete GNUmake system
0430   
0431 2 November 2021 - Gunter Folger (cmake-V10-07-46)
0432 - switch to new dataset G4EMLOW8.0, given by Vladimir
0433 
0434 27 October 2021 - Guy Barrand (cmake-V10-07-45)
0435 - Modules/G4DeveloperAPI.cmake: ToolsSG => G4ToolsSG in the list of Qt moc-able modules.
0436 
0437 25/27/28 October 2021 - Gunter Folger (cmake-V10-07-44)
0438 - switch to new dataset G4TENDL1.4 provided by Alberto
0439 
0440 22 October 2021 - Guy Barrand (cmake-V10-07-43)
0441 - Modules/G4DeveloperAPI.cmake: have ToolsSG as a Qt moc-able module.
0442 
0443 13 October 2021 - Ben Morgan (cmake-V10-07-42)
0444 - Add XercesC library directory to Linux LD_LIBRARY_PATH for GNUmake.
0445   Workaround for incorrect setup on LCG stacks for Nightly builds
0446 
0447 12 October 2021 - Ben Morgan (cmake-V10-07-41)
0448 - Make ToolsSG options mutually exclusive
0449 
0450 04 October 2021 - Stewart Boogert / Laurie Nevay (cmake-V10-07-40)
0451 - Add options and find module for VTK visualisation driver
0452 
0453 27 September 2021 - Ben Morgan (cmake-V10-07-39)
0454 - Change default value of GEANT4_BUILD_MULTITHREADED to ON
0455 
0456 22 September 2021 - Guilherme Amadio (cmake-V10-07-38)
0457 - geant4_add_test:
0458   - Ensure that Geant4 being built is picked up to build examples.
0459   - Ensure that the same compiler is used to build the tests.
0460 
0461 13 September 2021 - Gabriele Cosmo (cmake-V10-04-37)
0462 - Set CLHEP-2.4.5.1 as the required minimum version.
0463 
0464 3 September 2021 - Ben Morgan (cmake-V10-04-36)
0465 - geant4_add_test creates separate build/run tests when asked to do both
0466   - Required to support valgrind/memcheck runs without valgrind-ing
0467     the build part of the test.
0468 
0469 1 September 2021 - Ben Morgan (cmake-V10-04-35)
0470 - Remove obsolete geant4_{executable,link_library} options
0471 
0472 26 August 2021 - Ben Morgan (cmake-V10-07-34)
0473 - Remove obsolete network VRML driver option
0474 - Remove obsolete network FukuiRenderer driver option
0475 
0476 23 August 2021 - Guilherme Amadio (cmake-V10-07-33)
0477 - Rename Geant4::HDF5 to hdf5::hdf5 to be compatible with
0478   imported target provided since CMake 3.20.
0479 
0480 20 August 2021    - Gunter Folger  (cmake-V10-07-32)
0481 - Switch to G4ParticleXS 4.0
0482 
0483 22 July 2021 - Ivana Hrivnacova (cmake-V10-07-31)
0484 - Fixed path to g4tools/fonts, now in source/externals
0485 
0486 30 June 2021 - Ben Morgan (cmake-V10-07-30)
0487 - Remove obsolete GEANT4_USE_SYSTEM_CLHEP_GRANULAR option
0488 
0489 29 June 2021 - Ben Morgan (cmake-V10-07-29)
0490 - Disable creation of clang-formatting targets
0491 
0492 21 June 2021   - Julia Yarba    (cmake-V10-07-28)
0493 - Clean cmake/Modules/FindPythia8.cmake
0494   (remove trailing whitespaces)
0495 
0496 18 June 2021   - Julia Yarba    (cmake-V10-07-27)
0497 - Add cmake/Modules/FindPythia8.cmake
0498 - Update cmake/Modules/G4ConfigureCMakeHelpers.cmake
0499 
0500 8 June 2021    - Gunter Folger  (cmake-V10-07-26)
0501 - Switch to G4EMLOW 7.17
0502 
0503 03 June 2021 - Ben Morgan (cmake-V10-07-25)
0504 - Remove explicit setting of PTL_ cmake options.
0505 - Add GEANT4_USE_PTL_LOCKS option to forward to internal PTL
0506   as PTL_USE_LOCKS.
0507 
0508 27 May 2021 - Ben Morgan (cmake-V10-07-24)
0509 - Implement build/test script in Python to check for cycles in the
0510   declared source module dependency graph.
0511 
0512 25 May 2021 - Jonathan Madsen (cmake-V10-07-23)
0513 - External PTL requires v2.0.0
0514 
0515 25 May 2021 - Ben Morgan (cmake-V10-07-22)
0516 - Clarify use of Freetype for both analysis and visualization
0517   - Remove use of no longer required imported target shim for build
0518 
0519 24 May 2021 - Ben Morgan (cmake-V10-07-21)
0520 - Bump minimum CMake version to 3.12
0521 
0522 22 May 2021 - Ben Morgan (cmake-V10-07-20)
0523 - Qualify geant4_add_feature descriptions with "G4_" to distinguish them from
0524   CMake property descriptions.
0525 
0526 18 May 2021 - Ben Morgan (cmake-V10-07-19)
0527 - Require C++17 as minimum standard to compile Geant4
0528   - Allow compilation against C++23 with CMake 3.20 and newer
0529   - Check for filesystem support in native or extension (GNU/Clang) libraries
0530 
0531 15 May 2021 - Jonathan Madsen (cmake-V10-07-18)
0532 - Set GEANT4_BUILD_BUILTIN_BACKTRACE to ON by default so novice
0533   and intermediate users can, by default, get valuable information
0534   on segmentation faults. Projects with their own signal handlers
0535   can configure with this option off, set G4BACKTRACE="none" in
0536   the environment, create their signal handlers after G4RunManager
0537   gets created, or add `G4BackTrace::DefaultSignals() = std::set<int>{};`
0538   before G4RunManager gets created.
0539 
0540 10 May 2021    - John Allison  (cmake-V10-07-17)
0541 - With vis-V10-07-03, incorporating visman-V10-07-06 and vis_toolsg-V10-07-00.
0542   Introduce a new vis driver, TOOLSSG (Guy Barrand).
0543   o Four (mutually exclusive) options:
0544     . TOOLSSG_X11_GLES
0545     . TOOLSSG_WINDOWS_GLES
0546     . TOOLSSG_XT_GLES
0547     . TOOLSSG_QT_GLES
0548 
0549 7 May 2021    - Gunter Folger  (cmake-V10-07-16)
0550 - Switch to G4EMLOW 7.16
0551 
0552 4th May 2021 - Ben Morgan (cmake-V10-07-15)
0553 - Remove obsolete -stdlib flag for AppleClang
0554 
0555 3 May 2021    - Gunter Folger  (cmake-V10-07-14)
0556 - Switch to G4EMLOW 7.15
0557 
0558 28 April 2021 - Ben Morgan (cmake-V10-07-13)
0559 - Preliminary support for sanitizers
0560 
0561 22 March 2021 - Alberto Ribon (cmake-V10-07-12)
0562 - Modules/G4BuildSettings.cmake : removed deprecated PHP_AS_HP
0563   environmental variable.
0564 
0565 19th March 2021 - Gunter Folger (cmake-V10-07-11)
0566 - Update to older G4TENDL 1.3.2, 1.4 has problems.
0567 
0568 18 March 2021 - Ben Morgan (cmake-V10-07-10)
0569 - Check for unparsed arguments in G4DeveloperAPI functions to
0570   provide better validation against typos/etc in use
0571 
0572 09 March 2021 - John Allison (cmake-V10-07-09)
0573 - Remove all references to Wt.
0574 
0575 23 February 2021 - Ben Morgan (cmake-V10-07-08)
0576 - Store PUBLIC/PRIVATE/INTERFACE module usage requirements explicitly
0577 
0578 18th February 2021 - Ben Morgan (cmake-V10-07-07)
0579 - Add G4tools target to CMake/GNUmake configuration following its
0580   migration from analysis to externals categories.
0581 
0582 4th February 2021 -  Igor Semeniouk (cmake-V10-07-06)
0583 - geant4.bat prototype
0584 - hint to run geant4-config on windows
0585 
0586 30th January 2021 - Gunter Folger (cmake-V10-07-05)
0587 - Update to patched dataset G4PARTICLEXS 3.1.1 as provided by Vladimir I.
0588 
0589 22nd January 2021 - Ben Morgan (cmake-V10-07-04)
0590 - Update for GitHub PR #17: Provide same fix for MacPorts
0591 - Address Bugzilla #2303: Fail configuration if Qt is enabled with CMake < 3.9
0592 
0593 15th January 2021 - Ben Morgan (cmake-V10-07-03)
0594 - Apply GitHub PR #17 from Florian Uhlig: Fix installation
0595   error with Homebrew X11/GL.
0596 
0597 11th January 2021 - Ben Morgan (cmake-V10-07-02)
0598 - Apply GitHub PR #16 from andriish: Fix configure/build with
0599   system PTL 1.0.0.
0600 
0601 5th January 2010 - Gunter Folger (cmake-V10-07-01)
0602 - Update to dataset G4EMLOW 7.14 as provided by Sebastien
0603 
0604 8th November 2020 - Ben Morgan (cmake-V10-07-00)
0605 - Install/Use builtin PTL CMake scripts from PTL subdirectory
0606   alongside Geant4Config.cmake
0607 
0608 20th November 2020 - Ben Morgan (cmake-V10-06-46)
0609 - Make GEANT4_USE_SYSTEM_PTL option advanced
0610 
0611 12th November 2020 - Jonathan Madsen (cmake-V10-06-45)
0612 - Updated find package routines for timemory
0613 
0614 19th November 2020 - Ben Morgan (cmake-V10-06-44)
0615 - Require VecGeom 1.1.8 or newer
0616 
0617 18th November 2020 - Ben Morgan (cmake-V10-06-43)
0618 - Add GEANT4_BUILD_BUILTIN_BACKTRACE option to enable automatic
0619   use of G4BackTrace signal handling in G4RunManager.
0620 
0621 17th November 2020 - Gunter Folger (cmake-V10-06-42)
0622 - Bump CLHEP minimum required version to 2.4.4.0
0623 
0624 4th November 2020 - Ben Morgan (cmake-V10-06-41)
0625 - Make Qt53D driver optional based on find of required Qt5 modules
0626 
0627 2nd/3rd November 2020 - Gunter Folger   (cmake-V10-06-40)
0628 - Update to dataset RadioactiveDecay5.6 and PhotonEvaporation5.7 as
0629     provided by Laurent
0630 
0631 30th October 2020 - Gunter Folger   (cmake-V10-06-39)
0632 - Update datasets as provided by Laurent:
0633   - G4ENSDFSTATE2.3
0634   - PhotonEvaporation5.6
0635   - RadioactiveDecay5.5
0636 
0637 29th October 2020 - Ben Morgan (cmake-V10-06-38)
0638 - Remove obsolete Geant4MacroDefineModule and G4DeveloperAPI_OLD modules
0639 - Make Geant4MacroLibraryTargets module a no-op pending final removal in
0640   2021
0641 - Remove GEANT4_USE_NEW_CMAKE option to complete migration to new system
0642 - Use STRINGS cache property for enum options and CMAKE_BUILD_TYPE to
0643   give easier interface in (G)UIs
0644 - Remove pre CMake3 functionality from G4InstallData module
0645 
0646 27th October 2020 - Gunter Folger   (cmake-V10-06-37)
0647 - Add optional TENDL dataset
0648 
0649 26th October 2020 - Ben Morgan (cmake-V10-06-36)
0650 - Explicitly initialize GEANT4_USE_QT3D to OFF to prevent
0651   user override.
0652 
0653 26th October 2020 - Gunter Folger   (cmake-V10-06-35)
0654 - Switch to G4PARTICLEXS 3.1
0655 
0656 23rd October 2020 - John Allison (cmake-V10-06-34)
0657 - Introduce changes for Qt3D vis driver.
0658 
0659 20th October 2020 - Ben Morgan (cmake-V10-06-33)
0660 - Update functions to use G4expat{-static} as custom built targets.
0661   Fixes GitLab Issue #44.
0662 
0663 19th October 2020 - Ben Morgan (cmake-V10-06-32)
0664 - Support CMake 3.8 through 3.18
0665 - Allow specification of C++20 for CMake 3.12 and above
0666 
0667 12th October 2020 - Daren Sawkey (cmake-V10-06-31)
0668 - Switch to new data set G4RealSurface 2.2
0669 
0670 12th October 2020 - Gunter Folger   (cmake-V10-06-30)
0671 - Switch to G4PARTICLEXS 3.0
0672 
0673 24th September 2020 - Gunter Folger (cmake-V10-06-29)
0674 - Switch to G4EMLOW 7.13
0675 
0676 15 September 2020 - Jonathan Madsen (cmake-V10-06-28)
0677 - Updated GEANT4_TEST_ENVIRONMENT to set G4RUN_MANAGER_TYPE=TBB when MT and
0678   GEANT4_USE_TBB=ON
0679 
0680 28 August - Ben Morgan (cmake-V10-06-27)
0681 - Improve support for Inventor (Coin)
0682   - Simplify configuration options, handling co-working ones both
0683     at configure time and by client applications.
0684   - Separate out dependency finding to keep these in one place.
0685   - Improve consistency of using XQuartz vs System OpenGL on
0686     macOS.
0687   - Remove obsolete FindInventor module
0688 
0689 21 July 2020 - Ben Morgan (cmake-V10-06-26)
0690 - Provide new GEANT4_BUILD_PHP_AS_HP option to enable ParticleHP as
0691   HP in G4processes. Replaces PHP_AS_HP environment variable.
0692 - Add PHP_AS_HP "feature" in Geant4Config.cmake/geant4-config to allow
0693   clients to check availability.
0694 
0695 17th June 2020 - Jonathan Madsen (cmake-V10-06-25)
0696 - Moved TBB before PTL
0697 - Forced PTL_USE_TBB to be set to GEANT4_USE_TBB when not
0698   using system PTL
0699 - Added Geant4::G4ptl ALIAS targets for build tree testing
0700 - Added support for building G4ptl, GEANT4_USE_TBB option
0701 - Updated FindTBB.cmake to be more robust
0702 - Updates to PTL internal/external handling
0703 - fixed PTL find_dependency
0704 
0705 15th June 2020 - Gunter Folger (cmake-V10-06-24)
0706 - Switch to G4EMLOW 7.12
0707 
0708 8th June 2020 - Ben Morgan (cmake-V10-06-23)
0709 - Default GEANT4_USE_NEW_CMAKE to ON to use new build organization
0710   as the primary system.
0711 - Fix bug in setting of AUTOMOC
0712 - Handle install of G4clhep{-static} independently of main modules
0713   due it being built outside the category system.
0714 - Retain GEANT4_BUILDTREE_INCLUDE_DIRS in new CMake system to support
0715   clients that may not yet support CMake target usage requirements.
0716 - Protect recursion into tests module on existence of the directory
0717 
0718 2nd June 2020 - Guilherme Amadio (cmake-V10-06-22)
0719 - Avoid warnings from propagating CMAKE_DISABLE_FIND_PACKAGE_ROOT
0720   down to tests.
0721 
0722 30th May 2020 - Ben Morgan (cmake-V10-06-21)
0723 - Modules/Geant4DeveloperAPI.cmake: Import new "target" style API for
0724   declaring and composing libraries from modules of source code.
0725   Provide GEANT4_USE_NEW_CMAKE option, OFF by default, to switch between
0726   systems.
0727 
0728 28th May 2020 - Gunter Folger (cmake-V10-06-20)
0729 - Switch to G4EMLOW 7.11
0730 
0731 26th May 2020 - Ben Morgan (cmake-V10-06-19)
0732 - Use "VecGeom::vecgeom" as imported target name for VecGeom library
0733   to bring in line with upstream master of VecGeom. Export VecCore_DIR
0734   if it is set to package cache file, as new VecGeomConfig needs to refind
0735   VecCore.
0736 
0737 20 May 2020 - Frederick Jones (cmake-V10-06-18)
0738 - Modules/G4InterfaceOptions.cmake: added GEANT4_USE_XM to Open
0739   Inventor X driver code block to correct Xm and Xt link order.
0740 
0741 19th May 2020 - Guilherme Amadio (cmake-V10-06-17)
0742 - Propagate value of CMAKE_DISABLE_FIND_PACKAGE_ROOT down to tests
0743   that optionally support ROOT to allow testing Geant4 with ROOT support
0744   disabled. This is necessary when testing Geant4 with a different C++
0745   standard than ROOT when it's installed.
0746 
0747 29th April 2020 - Ben Morgan (cmake-V10-06-16)
0748 - Add GEANT4_USE_NEW_CMAKE option in preparation for testing of modular
0749   build updates. Added now to suppress Continuous warnings
0750 
0751 22 April 2020 - Frederick Jones (cmake-V10-06-15)
0752 - Modules/G4InterfaceOptions.cmake, Templates/Geant4Config.cmake.in:
0753   Added support for Open Inventor Qt Vis driver to be built
0754   and used in applications.  The library can be built with the
0755   OIQT driver, or with the OIX/OIXE drivers, but not both.
0756 
0757 6th April 2020 - Ben Morgan (cmake-V10-06-14)
0758 - Activate build of geant4py when GEANT4_USE_PYTHON is set
0759   Check that MT builds use global-dynamic TLS to allow Python
0760   module loading of the Geant4 dynamic libraries.
0761 
0762 21st April 2020 - Ben Morgan (cmake-V10-06-13)
0763 - BUGFIX: Only store variables in Geant4PackageCache if they have
0764   a value.
0765 
0766 20th April 2020 - Ben Morgan (cmake-V10-06-12)
0767 - Remove Qt4 support
0768 
0769 17th April 2020 - Ben Morgan (cmake-V10-06-11)
0770 - Add GEANT4_USE_PYTHON option to suppress Continuous warnings
0771 
0772 3rd April 2020 - Guilherme Amadio (cmake-V10-06-10)
0773 - Use full path to datasets if GEANT4_INSTALL_DATADIR is an absolute path
0774 
0775 2nd April 2020 - Guilherme Amadio (cmake-V10-06-09)
0776 - Customize CMAKE_INSTALL_DATADIR in a single location
0777 
0778 18th March 2020 - Gunter Folger (cmake-V10-06-08)
0779 - In Modules/G4CPack.cmake suppress warnings about icc libraries not existing
0780   for Intel icc version 19.
0781 
0782 16th March 2020 - Gunter Folger (cmake-V10-06-07)
0783 - Switch to G4EMLOW 7.10
0784 
0785 14th February 2020 - Ben Morgan (cmake-V10-06-06)
0786 - No longer create gnumake symlinks on Windows
0787   Windows permissions may prevent creation of symlinks, leading to
0788   errors at install time. As gnumake is no longer supported on
0789   Windows, protect symlink creation with test on host platform.
0790 
0791 4th February 2020 - Ben Morgan (cmake-V10-06-05)
0792 - BUGFIX 2221
0793   Use "${FOO:-}" variable expansion and "-z" test to check for
0794   undefined variables in Bourne Shell scripts. Prevents errors when
0795   shell is in "set -u" mode. Report and patch supplied by Michael Reilly
0796 
0797 27th January 2020 - Gunter Folger (cmake-V10-06-04)
0798 - Switch to G4EMLOW 7.9.1
0799 
0800 15th January 2020 - Ben Morgan (cmake-V10-06-03)
0801 - Quote VECGEOM_COMPILE_DEFINITIONS to avoid incorrect argument errors
0802 
0803 6th January 2020 - Ben Morgan (cmake-V10-06-02)
0804 - Apply patch from TXCorp to allow compilation on Windows using Clang
0805 
0806 12th December 2019 - Ben Morgan (cmake-V10-06-01)
0807 - Remove requirement on presence of XQuartz GLU library
0808 - No longer save glu related variables in the package cache
0809 
0810 6th December 2019 - Ben Morgan (cmake-V10-06-00)
0811 - Remove obsolete Geant4Wrapping module in preparation for full G4Py
0812   build support
0813 - Rename remaining internal "Geant4..." modules to "G4" convention
0814   Retain Geant4DefineModule and Geant4LibraryTargets until new modularization
0815   scheme in place.
0816 - Format G4ClangFormat
0817 
0818 25th November 2019 - Ben Morgan (cmake-V10-05-29)
0819 - Disable configuration of Wt UI/Vis driver due to it no longer
0820   compiling with recent Wt versions
0821 
0822 22nd November 2019 - Jonathan Madsen (cmake-V10-05-28)
0823 - Updated Geant4OptionalComponents.cmake and Geant4Config.cmake.in to support
0824   the timemory find_package COMPONENTS and the INTERFACE library generation
0825 - Updated "TiMemory" package name to simple "timemory"
0826 
0827 20th November 2019 - Ben Morgan (cmake-V10-05-27)
0828 - Require MSVC 19.20 (Visual Studio 2019) or newer to support
0829   std::filesystem on Windows platforms
0830 
0831 18th November 2019 - Gunter Folger (cmake-V10-05-26)
0832 - Switch to PhotonEvaporation 5.5
0833 
0834 16th November 2019 - Ben Morgan (cmake-V10-05-25)
0835 - BUGFIX: Ensure visibility of custom modules in scope of Geant4Config.
0836   Custom modules must be visible during scope of Geant4Config so packages
0837   such as XQuartzGL can be refound.
0838 
0839 14th November 2019 - Ben Morgan (cmake-V10-05-24)
0840 - BUGFIX: Ensure installation of all *Shim.cmake files
0841 
0842 13th November 2019 - Ben Morgan (cmake-V10-05-23)
0843 - BUGFIX: Fix typo in setup of Qt4 libraries that resulted in use of a
0844   Qt5 imported target
0845 - BUGFIX #1663: Prepend Geant4_CXX_FLAGS[_<MODE>] to CMAKE_CXX_FLAGS[_<MODE>]
0846   instead of overwriting
0847 
0848 12th November 2019 - Ben Morgan (cmake-V10-05-22)
0849 - BUGFIX: Use VECGEOM_INCLUDE_DIRS in INTERFACE_INCLUDE_DIRECTORIES for
0850   the VecGeom::VecGeom imported targets. This will include required
0851   externals such as VecCore and similar.
0852 
0853 7th November 2019 - Ben Morgan (cmake-V10-05-21)
0854 - Use target_XXX usage requirements to transport header paths and
0855   links. Remove requirement to use complete include_directories chain
0856   in Module sources.cmake files
0857 - Retain exported "Geant4_INCLUDE_DIR{S}" variables in case clients use
0858   ROOT dictionary generation (which does not understand usage requirements
0859   of targets until latest versions).
0860 - Namespace exported targets with "Geant4::" to enforce use of targets and
0861   prevent accidental linkage via "-lG4name" expansion.
0862 - Migrate use of all external packages to use and refind exported targets,
0863   with shim scripts to support CMake versions from 3.8 at build/use time.
0864 - Store build-time locations of used external packages in an optionally
0865   installable CMake script for reuse, if present, by Geant4Config.cmake
0866   in refinding packages.
0867 - Remove remaining -D flags set via add_definitions, moving to
0868   target_compile_definitions
0869 
0870 6th November 2019 - Ben Morgan (cmake-V10-05-20)
0871 - Remove GEANT4_FORCE_QT4 option, deprecating Qt4 support
0872 - Retain fallback to finding Qt4, emitting a CMake warning that use
0873   of Qt4 is deprecated.
0874 - Fixes GitLab Issue #23
0875 
0876 5th November 2019 - Gunter Folger (cmake-V10-05-19)
0877 - Switch to PhotonEvaporation 5.4 and to RadioactiveDecay 5.4
0878 
0879 31st October 2019 - Ben Morgan (cmake-V10-05-18)
0880 - Require MSVC 19.11.25505 (Visual Studio 2017 update 3) as
0881   minimum required version to build Geant4 on Windows. Needed
0882   to support use of C++17 filesystem in visualization with standard
0883   selection.
0884 - Support compile features for this MSVC when using CMake < 3.10
0885 - Default C++ Standard with MSVC is now C++17
0886 - Remove old genwindef method of generating DLL symbol exports, as
0887   min cmake version of 3.8 fully supports direct generation via target
0888   properties.
0889 
0890 25th October - Ben Morgan (cmake-V10-05-17)
0891 - Bump minimum CMake version for build/use of Geant4 to 3.8, addressing Bug #2044
0892 - Update IntelCompileFeatures to support C++17 for ICC 18 and above when
0893   using CMake 3.8-3.10
0894 
0895 23rd October 2019 - Gunter Folger (cmake-V10-05-16)
0896 - Switch to G4NDL 4.6
0897 
0898 14th October 2019 - Gunter Folger (cmake-V10-05-15)
0899 - Switch to G4EMLOW 7.9
0900 
0901 2nd October 2019 - Gunter Folger (cmake-V10-05-13)
0902 - Switch to G4EMLOW 7.8
0903 
0904 6th September 2019 - Ben Morgan (cmake-V10-05-12)
0905 - Templates/UseGeant4_internal.cmake: Only scope location of test executable
0906   when using a generator that supports multiconfig.
0907   Allows tests to be run with Ninja Generator as "ninja test"
0908 
0909 21st August 2019 - Ben Morgan (cmake-V10-05-11)
0910 - Modules/Geant4InterfaceOptions.cmake: set OpenGL_GL_PREFERENCE to LEGACY
0911   Prevents warning on CMake >= 3.10, and keeps existing behaviour.
0912 
0913 20th August 2019 - Gunter Folger (cmake-V10-05-10)
0914 - Switch to G4PARTICLEXS 2.1
0915 
0916 13th August 2019 - Gabriele Cosmo (cmake-V10-05-09)
0917 - Modules/Geant4OptionalComponents.cmake: added ELLIPSOID, ELLIPTICALCONE and
0918   ELLIPTICALTUBE flags to enable wrapping of G4Ellipsoid, G4EllipticalCone and
0919   G4EllipticalTube in GEANT4_USOLIDS_SHAPES.
0920   Coworks with tag geom-specific-V10-04-13.
0921 
0922 11th July 2019 - Ben Morgan (cmake-V10-05-08)
0923 - Fix path-with-spaces bug reported by Eleanor Murray on Discourse
0924   - https://geant4-forum.web.cern.ch/t/problem-running-example-b1/451
0925   - Triaged as the include paths not being quoted so that when they have
0926     spaces in them, the several expansions involved mean CMake can interpret
0927     the space as a list seperator (;). This causes the wrong paths to be used
0928     in compiler commands
0929   - Explicitly quote Geant4 header paths from creation to export and use.
0930 
0931 4th July 2019 - Ben Morgan (cmake-V10-05-07)
0932 - Fix logic of setting up components in Geant4Config.cmake.
0933   - Set up component when:
0934     - Is found (Geant4_comp_FOUND is TRUE)
0935     - comp exists in Geant4_FIND_COMPONENTS
0936   - Don't remove found components from Geant4_FIND_COMPONENTS
0937   - Check if component is FOUND and REQUIRED as last action,
0938     setting Geant4_FOUND to FALSE if a missing required component
0939     is detected.
0940 - Fixes Bugzilla #2139
0941 
0942 3rd July 2019 - Ben Morgan (cmake-V10-05-06)
0943 - Do not switch off CMAKE_CXX_EXTENSIONS in Geant4Config.
0944   Not required for client applications.
0945 - Fixes Bugzilla #2002
0946 
0947 6th June 2019 - Ben Morgan (cmake-V10-05-05)
0948 - Remove G4FPE_DEBUG from Debug build mode
0949   - Not appropriate for basic debug and incompatible with Qt
0950 - Provide new "Debug_FPE" build mode which copies Debug mode and
0951   appends -DG4FPE_DEBUG to allow continued use without clashing
0952   with common primary modes.
0953 
0954 24th May 2019 - Gunter Folger (cmake-V10-05-04)
0955 - Switch to G4PARTICLEXS 2.0
0956 
0957 14th May 2019 - Ben Morgan (cmake-V10-05-03)
0958 - Promote always required -D flags for VecGeom replacements to fixed
0959   #define/undef flags in a header
0960   - See geommng-V10-05-05, G4GeomTypes/G4GeomConfig.hh
0961 - Set CMake variables for G4GEOM_USE_... parameters as configured
0962 - Retain add_definitions for VecGeom until it supports usage requirements
0963 - Update XXHelpers scripts for generating GNUmake/pkg-config/CMake files
0964 
0965 8th February 2019 - Ben Morgan (cmake-V10-05-02)
0966 - DEV-250: Promote global, always required, -D flags to fixed #define/undef
0967   in new G4GlobalConfig.hh header:
0968   - G4USE_STD11
0969   - G4MULTITHREADED
0970   - G4_STORE_TRAJECTORY
0971   - G4VERBOSE
0972   - GEANT4_USE_TIMEMORY
0973 - Remove use of add_definitions of CMAKE_CXX_FLAGS to set these in Geant4
0974   and client scripts
0975 - Used by global-V10-05-02
0976 
0977 7th February 2019 - Ben Morgan (cmake-V10-05-01)
0978 - Remove obsolete GEANT4_BUILD_MUONIC_ATOMS_IN_USE option
0979   and associated configuration/compiler flags.
0980 
0981 21st December 2018 - Makoto Asai (cmake-V10-05-00)
0982 - Modules/Geant4OptionalComponents.cmake:
0983 - Template/Geant4Config.cmake.in:
0984    Add GEANT4_USE_SMARTSTACK
0985 
0986 5th November 2018 - Gunter Folger  (cmake-V10-04-27)
0987 - Switch to G4PARTICLEXS 1.1
0988 
0989 5th November 2018 - Gunter Folger  (cmake-V10-04-26)
0990 - Modules/Geant4DatasetDefinitions.cmake:
0991    remove entry for G4NEUTRONXS
0992 
0993 2nd November 2018 - Gunter Folger  (cmake-V10-04-25)
0994 - Modules/Geant4DatasetDefinitions.cmake:
0995    Add new  G4PARTICLEXS data set; this replaces G4NEUTRONXS
0996 - fix dates of two entries below; was wrong, not even a typo
0997 
0998 29th October 2018 - Gunter Folger  (cmake-V10-04-24)
0999 - Switch to new dataset RadioactiveDecay5.3
1000 
1001 29th October 2018 - Gunter Folger  (cmake-V10-04-23)
1002 - Switch to new dataset PhotonEvaporation5.3
1003 
1004 18th October 2018 - Ben Morgan (cmake-V10-04-22)
1005 - Modules/Geant4InstallData.cmake: Use https for URL
1006 - Templates/geant4-config.in: Add -L flag to curl to follow redirects
1007   when accessing dataset url
1008 
1009 28th September 2018  - Gabriele Cosmo (cmake-V10-04-21)
1010 - Modules/Geant4MakeRules_cxx.cmake: added -DGL_SILENCE_DEPRECATION
1011   to CMAKE_CXX_FLAGS_INIT for clang to silence GL deprecation compilation
1012   warnings on MacOS 10.14 Mojave.
1013 
1014 19th September 2018  - Gunter Folger (cmake-V10-04-20)
1015 - Switch to G4SAIDDATA2.0
1016 
1017 17th September 2018  - Gunter Folger (cmake-V10-04-19)
1018 - Switch to G4EMLOW7.7
1019 
1020 22nd August 2018 - Gabriele Cosmo (cmake-V10-04-18)
1021 - Updated FindInventor.cmake to properly setup SoQt if existing.
1022 - Geant4InterfaceOptions.cmake: added check for existance of SoQt package.
1023 
1024 9th August 2018  - Gunter Folger (cmake-V10-04-17)
1025 - Switch to G4EMLOW7.6
1026 
1027 3rd August 2018  - Gunter Folger (cmake-V10-04-16)
1028 - Add new dataset for INCL, G4INCL1.0
1029 
1030 4th July 2018  - Gunter Folger (cmake-V10-04-15)
1031 - Switch to G4EMLOW7.5
1032 
1033 19th June 2018 - Gunter Folger (cmake-V10-04-14)
1034 - Templates/geant4_validate_sources.cmake.in, revert addition of .c and .h
1035   Skip checking sources for zlib
1036     (.c and .h match far too many other files)
1037 - Switch to G4EMLOW7.4
1038 
1039 14th June 2018 - Gunter Folger (cmake-V10-04-13)
1040 -  Templates/geant4_validate_sources.cmake.in: add C sources and headers
1041 
1042 8th June 2018 - Ben Morgan (cmake-V10-04-12)
1043 - Add "auto" dummy Thread Local Storage model
1044   Per request from CERN, when "auto" is used,
1045   no explicit compiler flag to select the TLS model is
1046   set. Record this in Geant4Config.cmake and geant4-config
1047   as unset/empty variables.
1048 
1049 6th Jun 2018 - Jonathan Madsen (cmake-V10-04-11)
1050 - Addition of TiMemory as an optional package
1051 
1052 23rd May 2018 - Ben Morgan (cmake-V10-04-10)
1053 - Remove CMake warning about building MT DLLs on Windows, as
1054   these are now supported.
1055 
1056 23rd May 2018 - Gunter Folger  (cmake-V10-04-09)
1057 - Update Geant4DatasetDefinitions to use G4RealSurface 2.1.1
1058    patched version bringing back data lost in 2.1
1059 
1060 14st May 2018 - Gunter Folger  (cmake-V10-04-08)
1061 - Update Geant4DatasetDefinitions to use G4NEUTRONXS 2.0
1062 
1063 21st March 2018 - Ben Morgan (cmake-V10-04-07)
1064 - G4BuildSettings.cmake: Allow Windows MT builds to use DLLs, but warn.
1065 
1066 26th February 2018 - Ben Morgan (cmake-V10-04-06)
1067 - Geant4InstallData.cmake, Geant4CTest.cmake: Update URL for downloads
1068   to "cern.ch/geant4-data" as the correct alias to new EOS area, seperate
1069   from main website.
1070 
1071 26th February 2018 - Ben Morgan (cmake-V10-04-05)
1072 - Geant4InstallData.cmake, Geant4CTest.cmake: Update URL for downloads
1073   to "cern.ch/geant4" as the correct alias.
1074 
1075 26th February 2018 - Ben Morgan (cmake-V10-04-04)
1076 - G4BuildSettings.cmake: Add 17/c++17 to C++ standards against which
1077   Geant4 can be compiled. Will require a minimum CMake version of
1078   3.8 to enable, but this is not checked.
1079 
1080 20th February 2018 - Ben Morgan (cmake-V10-04-03)
1081 - Initial configuration support for MT on Windows
1082 - Modules/G4BuildSettings.cmake: Remove restrictions and warnings on enabling
1083   MT on Windows. Add restriction on building MT DLLs, emitting a fatal error
1084   if this combination is selcted, and report needed settings to enable
1085   static MT libraries.
1086 
1087 18th January 2018 - Ben Morgan (cmake-V10-04-02)
1088 - Support use of WINDOWS_EXPORT_ALL_SYMBOLS for DLL builds with cmake >=3.4
1089   retaining old capability for CMake 3.3.
1090 - Modules/G4WindowsDLLSupport.cmake: New module to hold old DLL support.
1091   Create old `genwindef` support program, moved from G4BuildSettings.
1092   Implement `__geant4_add_dll_old` macro which expands to the pre cmake 3.4
1093   use of `genwindef` to export symbols and create DLL.
1094 - Modules/G4DeveloperAPI_OLD.cmake: Include G4WindowsDLLSupport module, and
1095   use functionality to create DLL when CMake is <3.4. Otherwise, use
1096   new WINDOWS_EXPORT_ALL_SYMBOLS property when building a shared library.
1097 
1098 11th January 2018 - Gabriele Cosmo (cmake-V10-04-01)
1099 - Modules/Geant4OptionalComponents.cmake: add TESSELLATEDSOLID flag to enable
1100   wrapping of G4TessellatedSolid in GEANT4_USOLIDS_SHAPES.
1101   Coworks with tag geom-specific-V10-04-03.
1102 
1103 8th December 2017 - Ben Morgan (cmake-V10-04-00)
1104 - Templates/UseGeant4_internal.cmake: When running test driver directly,
1105   make it run in WORKING_DIRECTORY if this is supplied.
1106 
1107 30th November 2017 - Gabriele Cosmo (cmake-V10-03-49)
1108 - Replaced USolids specific flags with VecGeom in Geant4OptionalComponents.cmake.
1109   From now on VecGeomConfig.cmake will be required and used instead of
1110   USolidsConfig.cmake, as well as VecGeom_DIR instead of USolids_DIR.
1111 
1112 29th November 2017 - Ben Morgan (cmake-V10-03-48)
1113 - Bugfix: Restore reporting of GEANT4_BUILD_CXXSTD.
1114 
1115 27th November 2017 - Ben Morgan (cmake-V10-03-47)
1116 - Remove obsolete FindROOT module
1117 
1118 10th November 2017 - Gunter Folger  (cmake-V10-03-46)
1119 - Switch to new dataset G4PhotonEvaporation5.2
1120 
1121 10th November 2017 - Gabriele Cosmo (cmake-V10-03-45)
1122 - G4ConfigureGNUMakeHelpers.cmake: corrected setting of USOLIDS_BASE_DIR
1123   path for GNUmake.
1124 
1125 7th November 2017 - Ben Morgan (cmake-V10-03-44)
1126 - Modules/Geant4OptionalComponents.cmake:
1127   When using HDF5 with Multithreaded Geant4, check
1128   that found install of HDF5 was built with thread
1129   safety. Require HDF5 >= 1.8.
1130 
1131 3rd November 2017 - Ben Morgan (cmake-V10-03-43)
1132 - BUGFIX: Make HDF5 component checkable by clients
1133 - Templates/Geant4Config.cmake.in : Add "hdf5" component
1134   with associated boolean Geant4_hdf5_FOUND.
1135 - Templates/geant4-config.in: add "hdf5" feature
1136 
1137 27th October 2017 - Gunter Folger  (cmake-V10-03-42)
1138 - Switch to new dataset G4EMLOW 7.3
1139 
1140 25th October 2017 - Ben Morgan (cmake-V10-03-41)
1141 - Modules/Geant4LibraryBuildOptions.cmake:
1142   Add new advanced build option GEANT4_BUILD_MUONIC_ATOMS_IN_USE,
1143   requested by Krzysztof Genser and Makoto Asai. OFF by default,
1144   when ON, adds G4MUTOMS_INUSE to compile definitions. As the
1145   code protected by the symbol only appears in .cc files, do
1146   not export this definition to clinet side build settings.
1147 - Templates/geant4-config.in, Templates/Geant4Config.cmake.in
1148   Record use of GEANT4_BUILD_MUONIC_ATOMS_IN_USE as a feature
1149   and component respectively. Neither affects the build settings,
1150   it's simply a report on whether the option was used or not.
1151 
1152 19th October 2017 - Gunter Folger  (cmake-V10-03-40)
1153 - Switch to new dataset G4EMLOW 7.2
1154 
1155 19th October 2017 - Gunter Folger  (cmake-V10-03-39)
1156 - Switch to new dataset G4ABLA 3.1
1157 
1158 16th October 2017 - Gabriele Cosmo (cmake-V10-03-38)
1159 - Modules/Geant4OptionalComponents.cmake: add HYPE flag to enable
1160   wrapping of G4Hype in GEANT4_USOLIDS_SHAPES.
1161   Coworks with tag geom-specific-V10-03-21.
1162 
1163 26th September 2017 - Gunter Folger (cmake-V10-03-37)
1164 - Switch to new datasets:
1165   - G4ENSDFSTATE2.2
1166   - G4PhotonEvaporation5.1
1167   - G4RadioactiveDecay5.2
1168 
1169 13th September 2017 - Ben Morgan (cmake-V10-03-36)
1170 - Modules/Geant4OptionalComponents.cmake: Require system expat version
1171   >= 2.0.1. Identified in Bugzilla #2003. g4tools uses expat functions
1172   only present in 2.0.1 or higher. Though Geant4 supported systems all
1173   meet this requirement, check expat version and error out if version
1174   is < 2.0.1. On error, report information on cause and how to rectify.
1175 
1176 11th September 2017 - Ben Morgan (cmake-V10-03-35)
1177 - Modules/G4CMakeMain.cmake: Remove GEANT4_BUILD_EXAMPLES option.
1178   Add GEANT4_INSTALL_EXAMPLES option. Advanced and ON by default,
1179   thia is for use by developers who wish to save time/space by not
1180   installing all the example code.
1181 
1182 7th September 2017 - Ben Morgan (cmake-V10-03-34)
1183 - Modules/G4DeveloperAPI_OLD.cmake: Set INSTALL_RPATH on macOS
1184   Requested by Fons Rademackers. Loading Geant4 dylibs in Python
1185   can lead to resolution errors as they cannot locate each other.
1186   Append "@loader_path" to the INSTALL_RPATH for all Geant4 libraries.
1187   This will expand to the directory of the library being loaded, which
1188   will contain the other Geant4 libraries. Append is used to that
1189   users may still supply CMAKE_INSTALL_RPATH at configure time,
1190   and this will be preferred.
1191 
1192 5th September 2017 - Gunter Folger (cmake-V10-03-33)
1193 - Modules/Geant4DatasetDefinitions.cmake: switch to G4EMLOW7.1
1194 
1195 23rd August 2017 - Gunter Folger   (cmake-V10-03-32)
1196 - Modules/Geant4DatasetDefinitions.cmake: switch to G4EMLOW7.0
1197 
1198 3rd August 2017 - Ben Morgan (cmake-V10-03-31)
1199 - Create a G4HDF INTERFACE target for uniform access to HDF5 headers
1200   and libraries at build, test and install time. It is not completely
1201   relocatable as the target hardcodes header/library paths. However,
1202   it creates a single point of access so that adding relocation
1203   will require minimal changes, limited to the cmake category.
1204 
1205 27th July 2017 - Ivana Hrivnacova (cmake-V10-03-30)
1206 - Removed FindHdf5.cmake as the find module is provided with CMake
1207 
1208 27th July 2017 - Ivana Hrivnacova (cmake-V10-03-29)
1209 - Modules/Geant4OptionalComponents.cmake : Add new GEANT4_USE_HDF5
1210   option, OFF by defaults, to allow user to enable Hdf5 support
1211   in analysis library.
1212 
1213 18th July 2017 - Andrea Dotti (cmake-V10-03-27,-28)
1214 - Modules/FindStatTest.cmake fix logic to set
1215   STATTEST_FOUND==FALSE if GEANT4_ENABLE_TESTING==FALSE
1216 
1217 17th July 2017 - Gabriele Cosmo (cmake-V10-03-26)
1218 - Modules/G4ConfigureGNUMakeHelpers, Modules/Geant4InterfaceOptions.cmake:
1219   corrected Qt setup for GNUmake builds, avoid setting QTLIBS and GLQTLIBS
1220   as already handled by the GNUmake system for Qt4 and Qt5.
1221 
1222 11th July 2017 - Gabriele Cosmo (cmake-V10-03-25)
1223 - Modules/Geant4OptionalComponents.cmake: add PARA flag to enable
1224   wrapping of G4Para in GEANT4_USOLIDS_SHAPES.
1225   Coworks with tag geom-csg-V10-03-29.
1226 
1227 10th July 2017 - Gabriele Cosmo (cmake-V10-03-24)
1228 - Modules/Geant4OptionalComponents.cmake: add CTUBS flag to enable
1229   wrapping of G4CutTubs in GEANT4_USOLIDS_SHAPES.
1230   Coworks with tag geom-csg-V10-03-28.
1231 
1232 12th June 2017 - Ben Morgan (cmake-V10-03-23)
1233 - Remove support for modulefile generation, as not used and
1234   generated files not compatible with relocatability. It's
1235   expected that software stack managers will generate a
1236   modulefile file according to their requirements.
1237 
1238 9th June 2017 - Gabriele Cosmo  (cmake-V10-03-22)
1239 - Corrected exporting of external packages paths from VecGeom.
1240 
1241 8th June 2017 - Gunter Folger   (cmake-V10-03-21)
1242 - Modules/Geant4DatasetDefinitions.cmake: switch to G4EMLOW6.54
1243 
1244 31st May 2017 - Gunter Folger   (cmake-V10-03-20)
1245 - Modules/Geant4DatasetDefinitions.cmake: switch to RealSurface 2.1
1246 
1247 30th May 2017 - Gabriele Cosmo  (cmake-V10-03-19)
1248 - Modules/Geant4OptionalComponents.cmake: added VECGEOM_EXTERNAL_INCLUDES
1249   to include directories for USolids/VecGeom enabled build, in order to
1250   allow for detection of external packages paths from VecGeom (e.g. Vc if
1251   Vetor backend is chosen at installation of VecGeom).
1252 
1253 24th May 2017 - Gabriele Cosmo  (cmake-V10-03-18)
1254 - Modules/Geant4OptionalComponents.cmake: appended VECGEOM_DEFINITIONS
1255   to GEANT4_USOLIDS_COMPILE_DEFINITIONS. Preparing for introducing direct
1256   dependency on VecGeom in G4U* wrappers, and deprecate USolids.
1257 
1258 16th May 2017 - Ben Morgan      (cmake-V10-03-17)
1259 - BUGFIX #1960: Do not set or modify DYLD_LIBRARY_PATH in basic and
1260   geant4make setup scripts on macOS.
1261 
1262 2nd May 2017 - Gunter Folger    (cmake-V10-03-16)
1263 - Update G4EMLOW data to 6.53
1264 
1265 4th April 2017 - Gunter Folger  (cmake-V10-03-15)
1266 - Update PhotonEvaporation data to 5.0
1267 
1268 27th March 2017 - Gunter Folger (cmake-V10-03-14)
1269 - fix previous tag: the download file for RealSurface re-named
1270    from RealSurface to G4RealSurface, making this name is  consistent
1271    with other datafiles.
1272 
1273 23rd March 2017 - Gunter Folger (cmake-V10-03-13)
1274 - Update RealSurface data to 2.0
1275 
1276 9th March 2017 - Gunter Folger  (cmake-V10-03-12)
1277 - Modules/G4CMakeMain.cmake: add directory verification to testing
1278 
1279 23rd February 2017 - Ben Morgan (cmake-V10-03-11)
1280 - Bugfix-1934
1281 - Templates/Geant4Config.cmake.in: Re-include CLHEP
1282   include directories when using external CLHEP. Needed
1283   to allow examples using ROOT to generate dictionaries
1284   as ROOT's CMake functions do not support usage requirements
1285   or generator expressions yet.
1286 
1287 21st February 2017 - Gunter Folger  (cmake-V10-03-10)
1288  base on tag cmake-V10-03-06, and only update History
1289  and Modules/Geant4DatasetDefinitions.cmake to trunk.
1290  Changes to above two files committed first in trunk.
1291  Then create branch cmake-V10-03-06_branch for tagging.
1292 - switch to PhotonEvaporation 4.3.2
1293 
1294 
1295 21st February 2017 - Gunter Folger  (cmake-V10-03-09)
1296  rejected: as based on previous rejected tags
1297 - switch to PhotonEvaporation 4.3.2
1298 
1299 10th February 2017 - Ben Morgan (cmake-V10-03-08)
1300 - Bugfix: Continuous identified issue on Windows and internal CLHEP.
1301   Way that DLLs are built means that target_include_directories are
1302   not propagated to intermediate archive library, causing builds
1303   to fail due to missing CLHEP headers.
1304 - Geant4OptionalComponents.cmake : Set CLHEP_INCLUDE_DIRS to internal
1305   path for CLHEP headers with using builtin CLHEP.
1306 - TODO: look at resolution via better DLL build process.
1307 
1308 9th February 2017 - Ben Morgan (cmake-V10-03-07)
1309 - BUGFIX-1934
1310 - Incorporates all changes from branch cmake-bugfix-1934
1311 
1312 8th February 2017 - Ben Morgan (branch cmake-bugfix-1934)
1313 - BUGFIX 1934
1314 - Note that this patch should not be applied to Geant4 < 10.3 without additional
1315   changes to support CLHEP's imported targets in versions =< 2.3.3.0.
1316 - See the comments in Geant4OptionalComponents.cmake for details.
1317 - Remove obsolete FindCLHEP.cmake module
1318 - Geant4OptionalComponents.cmake: Update Internal/System CLHEP selection
1319   - Prepend CLHEP_ROOT_DIR to CMAKE_PREFIX_PATH so that find_package's
1320     Config mode finds CLHEP as FindCLHEP did. Retain auto-activation
1321     of GEANT4_USE_SYSTEM_CLHEP if CLHEP_ROOT_DIR supplied.
1322   - Simplify System/Granular CLHEP selection using dependent options
1323   - Simplify location/setup of system CLHEP as CLHEP >= 2.3.3.0 provides
1324     CLHEP_LIBRARIES set with appropriate single/granular targets with
1325     full usage requirements.
1326   - Remove setting of GEANT4_USE_BUILTIN_CLHEP variable.
1327 - G4ConfigureCMakeHelpers.cmake: Remove install of deleted FindCLHEP module
1328 - Geant4Config.cmake.in: Update re-find of CLHEP to use find_package Config mode
1329   - Set CLHEP_DIR rather than CLHEP_ROOT_DIR.
1330   - Add new variable Geant4_system_clhep_FOUND set from expansion of
1331     buildtime GEANT4_USE_SYSTEM_CLHEP option.
1332   - Set value of Geant4_builtin_clhep_FOUND as boolean inverse of Geant4_system_clhep_FOUND
1333 
1334 7th February 2017 - Ben Morgan (cmake-V10-03-06)
1335 - Restructure developer API scripts for clarity ready for new system
1336 - Merge Geant4MacroDefineModule.cmake and Geant4MacroLibraryTargets.cmake
1337   into single G4DeveloperAPI_OLD.cmake module
1338 - Create new G4DeveloperAPI.cmake module. This will be the eventual home
1339   for the new developer API, but for now it simply forwards to
1340   G4DeveloperAPI_OLD.cmake.
1341 - Leave Geant4MacroDefineModule and Geant4MacroLibraryTargets modules
1342   as stubs which simply forward to G4DeveloperAPI. At present these modules
1343   are included in several places, so maintaining their presence is required.
1344 - Include G4DeveloperAPI in top levl G4CMakeMain module.
1345 
1346 3rd February 2017 - Gunter Folger  (cmake-V10-03-05)
1347 - switch to
1348   - PhotonEvaporation 4.3.1
1349   - RadioactiveDecay 5.1.1
1350 
1351 27th January 2017 - Ben Morgan (cmake-V10-03-04)
1352 - Refactor core Configure/Build and Client Script modules for
1353   clarity and cohesion.
1354 - Module renames and changes:
1355   - Modules/G4CMakeSettings.cmake (NEW)
1356     - Handles all core CMake behaviour and extensions
1357   - Modules/Geant4MacroUtilities.cmake -> Modules/G4CMakeUtilities.cmake
1358     - Rename to better reflect purpose
1359   - Modules/Geant4LibraryBuildOptions.cmake -> Modules/G4BuildSettings.cmake
1360     - Handles all core build/link options not dependent on externals
1361     - All functionality in Modules/Geant4BuildModes.cmake moved to this module
1362   - Modules/Geant4ToolchainBackwardCompatibility.cmake -> Modules/G4ConfigureGNUMakeHelpers.cmake
1363     - Rename to clearly identify task
1364     - Move all GMake related setup to this module
1365   - Modules/Geant4ConfigureConfigScript.cmake -> Modules/G4ConfigurePkgConfigHelpers.cmake
1366     - Rename to clearly identify task
1367   - Modules/Geant4BuildProjectConfig.cmake -> Modules/G4ConfigureCMakeHelpers.cmake
1368     - Rename to clearly identify task
1369 - Modules/Geant4CTest.cmake
1370   - All test-related options moved into file.
1371 
1372 16th January 2017 - Ben Morgan (cmake-V10-03-03)
1373 - Remove/refactor obsolete CMake modules
1374 - Modules/CMakeMacroParseArguments.cmake: Remove as interface
1375   provided by CMake builtin CMakeParseArguments. Use builtin
1376   interface in modules:
1377   - FindROOT.cmake
1378   - Geant4MacroDefineModule.cmake
1379   - Geant4MacroLibraryTargets.cmake
1380   - Geant4MacroUtilities.cmake
1381   - UseGeant4_internal.cmake
1382 - Modules/Geant4InstallDirs.cmake: Remove as interface
1383   provided by CMake builtin GNUInstallDirs, included in
1384   G4CMakeMain.cmake
1385 - Modules/MacroEnsureVersion.cmake: Remove as unused, version
1386   comparison now supplied in CMake if()
1387 - Modules/ResolveCompilerPaths.cmake: Remove as unused.
1388 - Modules/Geant4BuildProjectConfig.cmake: Remove install
1389   of obsolete modules.
1390 
1391 5th January 2017 - Gunter Folger    (cmake-V10-03-02)
1392 - switch to EMLOW6.52
1393 
1394 19th December 2016 - Gunter Folger (cmake-V10-03-01)
1395 - switch to EMLOW6.51
1396 
1397 12th December 2016 - Ben Morgan (cmake-V10-03-00)
1398 - Modules/G4CMakeMain.cmake : New Module
1399   Refactor core implementation from top level CMake script into a module
1400   under the CMake category. This assists with tagging and upcoming
1401   modularization work, as changes will be tagged in category and
1402   can be made without requiring changes and co-working tag for
1403   top level script.
1404 
1405 24th November 2016 - Gunter Folger  (cmake-V10-02-37)
1406 - Switch to PhotonEvaporation 4.3
1407 
1408 22nd November 2016 - Ben Morgan (cmake-V10-02-36)
1409 - Modules/Geant4MakeRules_cxx.cmake : Change optimization level for MSVC in
1410   Release mode to -Ox for consistentcy with GNUmake system.
1411 
1412 18th November 2016 - Ben Morgan (cmake-V10-02-35)
1413 - Modules/Geant4BuildModes.cmake : Change default build type to Release
1414   when using single mode tools like Make/Ninja.
1415 - Modules/Geant4InstallData.cmake : Always convert exported data paths to
1416   native CMake paths. Prevents parse errors on Windows, where native
1417   paths are exported (reported by Brian Smith)
1418 
1419 17th November 2016 - Ben Morgan (cmake-V10-02-34)
1420 - Fix bug in Qt4/5 handling on Windows
1421 - Templates/Geant4Config.cmake.in : Move re-find of Qt4 inside overall
1422   Qt4/5 setup section.
1423 - Modules/Geant4BuildProjectConfig.cmake : Remove setting of GEANT4_THIRD_PARTY_IMPORT_SETUP
1424   variable, and replace with dedicated GEANT4_QT4_IMPORT_SETUP variable for Qt
1425 - Export Qt library path to dynamic loader path in Geant4GNUmake environment setup
1426 - Modules/Geant4ToolchainBackwardCompatibility.cmake :
1427   Prepend Qt library path to dynamic loader path, noting obselescense on
1428   macOS.
1429 - Templates/geant4make-skeleton.in : Add expansion variable for Qt dynamic
1430   loader setup.
1431 
1432 15th November 2016 - Ben Morgan (cmake-V10-02-33)
1433 - Export USolids/VecGeom compile defs to Geant4GNUmake environment setup scripts
1434 - Modules/Geant4ToolchainBackwardCompatibility.cmake :
1435   Configure export variables based on choice of USolids full/partial
1436   replacement
1437 - Templates/geant4make-skeleton.in : Add entries for required env vars
1438 
1439 9th November 2016 - Ivana Hrivnacova  (cmake-V10-02-32)
1440 - Added FindDCMTK.cmake needed for extended/medical/DICOM example
1441 
1442 8th November 2016 - Gunter Folger  (cmake-V10-02-31)
1443 - switch to RadioactiveDecay5.1, PhotonEvaporation4.2, G4ENSDFSTATE2.1
1444 
1445 3rd November 2016 - Gunter Folger  (cmake-V10-02-30)
1446 - switch to PhotonEvaporation 4.1
1447 
1448 31st October 2016 - Ben Morgan (cmake-V10-02-29)
1449 - Modules/Geant4MakeRules_cxx.cmake : fix bug - use correct
1450   CMAKE_CXX_FLAGS_INIT variable to add -pipe argument to.
1451 
1452 31st October 2016 - Ben Morgan (cmake-V10-02-28)
1453 - Bugfix #1877
1454 - Templates/geant4-env-skeleton.in : Provide placeholder
1455   variable for adding setting of XercesC libpath
1456 - Modules/Geant4ToolchainBackwardCompatibility.cmake
1457   Extract and export XercesC library directory to geant4.(c)sh
1458   scripts. Add new _g4tc_append_path function to allow appending
1459   of entries to a path-like variable. This ensures paths to third
1460   party libraries appear after the core Geant4 library path which
1461   should prevent clashes.
1462 
1463 27th October 2016 - Gunter Folger (cmake-V10-02-27)
1464 - switch to G4EMLOW 6.50
1465 
1466 6th October 2016 - Ben Morgan (cmake-V10-02-26)
1467 - Modules/Geant4MakeRules_cxx.cmake : Move all -f optimization options
1468 to Release mode only. Add -fno-math-errno and -ftree-vectorize.
1469 
1470 
1471 6th October 2016 - Ben Morgan (cmake-V10-02-25)
1472 - Modules/Geant4MakeRules_cxx.cmake : Add -fno-trapping-math to default
1473 flags of GCC/Clang compielrs to assist in auto-vectorization (recommended
1474 by CMS/GCC). Bump optimization level in Release mode to O3 on all supported
1475 compilers.
1476 
1477 3rd October 2016- Gunter Folger (cmake-V10-02-24)
1478 - switch to use G4ENSDFSTATE 2.0
1479         (requires tag particles-V10-02-28)
1480 
1481 29th September 2016 - Robert Hatcher (cmake-V10-02-23)
1482 - Templates/Geant4Config.cmake.in : No longer use --whole-archive for
1483 G4physicslists on static builds; this was never possible for _WIN32 and recent
1484 physics list factory work makes this untenable on some build platforms.
1485 
1486 28th September 2016 - Andrea Dotti  (cmake-V10-02-22)
1487 - add option for TEXT output file in FindStatTest.cmake script
1488 
1489 19th September 2016 - Gunter Folger (cmake-V10-02-21)
1490 - switch to PhotonEvaporation 4.0
1491 
1492 7th September 2016 - Gunter Folger (cmake-V10-02-20)
1493 - switch to G4RadioactiveDecay.5.0
1494 
1495 22nd August 2016 - Ben Morgan (cmake-V10-02-19)
1496 - Templates/UseGeant4.cmake : Force core and per-mode flags to those used to
1497   build Geant4. When Geant4 is built with a single mode generator, default
1498   CMAKE_BUILD_TYPE for the client to that used to build this install. This
1499   guarantees matching of librayr/application optimization for most use cases.
1500   NB: No default mode can be provided if Geant4 itself was built/installed using
1501   multimode tool like Xcode/VS. This is because multiple modes may be installed
1502   at once so a sensible default cannot be set (to be looked at further).
1503 - Templates/Geant4Config.cmake.in : Add new Geant4_BUILD_TYPE variable to hold
1504   build type of install when Geant4 is installed using a single mode tool.
1505 - Modules/Geant4BuildProjectConfig.cmake : Set Geant4_BUILD_TYPE to CMAKE_BUILD_TYPE
1506   when building with a single mode tool.
1507 
1508 15th August 2016 - Gunter Folger (cmake-V10-02-18)
1509 - switch to G4EMLOW.6.49
1510 
1511 17th June 2016 - Gabriele Cosmo (cmake-V10-02-17)
1512 - Modules/Geant4OptionalComponents.cmake: set CLHEP-2.3.3.0 as the required
1513   version for external CLHEP library.
1514 
1515 9th June 2016 - Gunter Folger  (cmake-V10-02-16)
1516 - revert change in Templates/Geant4Config.cmake.in in tag cmake-V10-02-14,
1517     revision 97140; the coworking tags have been rejected.
1518 
1519 3rd June 2016 - Gunter Folger  (cmake-V10-02-15)
1520 - switch to RadioActiveDecay 4.4.1 and  G4ENSDFSTATE 1.3.1, both provided by
1521    Laurent.
1522 
1523 25th May 2016 - Robert Hatcher (cmake-V10-02-14)
1524 - Templates/Geant4Config.cmake.in : No longer use --whole-archive for
1525 G4physicslists on static builds; this was never possible for _WIN32 and recent
1526 physics list factory work makes this untenable.
1527 
1528 25th May 2016 - Ben Morgan (cmake-V10-02-13)
1529 - Modules/Geant4InterfaceOptions.cmake : Always add Xmu to X11_LIBRARIES when
1530 using Motif/OpenInventor to avoid missing symbol errors on OS X.
1531 
1532 24th May 2016 - Ben Morgan (cmake-V10-02-12)
1533 - Modules/Geant4OptionalComponents.cmake : Fix regex to avoid matching to "CONS"
1534   shape is check for all shapes.
1535 
1536 24th May 2016 - Ben Morgan (cmake-V10-02-11)
1537 - Modules/Geant4OptionalComponents.cmake : Initial implementation of a list
1538   based interface to GEANT4_USE_USOLIDS. Rather than booleans, unify USolids
1539   replacement into single string/list variable with following behaviour:
1540   1) Setting to "all", any CMake boolean true value, or a list containing either
1541      results in complete usolids replacement
1542   2) A list, i.e. "a;b;c", or shapes to replace with Usolids equivalents may be supplied.
1543   Validate arguments to prevent unknown shapes being set, and otherwise retain previous
1544   behaviour
1545   List allowed values in option docstring.
1546 - Modules/Geant4BuildProjectConfig.cmake : Ensure setting of Usolids use marker to a
1547   proper boolean value.
1548 - Templates/Geant4Config.cmake.in : Use new full boolean variable as expansion variable
1549   to indicate usolids support.
1550 
1551 23rd May 2016 - Ben Morgan
1552 - Modules/Geant4OptionalComponents.cmake : Allow developers to select
1553   subsets of solids to replace with USolids equivalents. Request from developers
1554   and CMS to assist in performance evaluation. NOT INTENDED FOR USERS!
1555   If GEANT4_USE_SOLIDS is set, use existing configuration/setup. If it is OFF,
1556   allow setting of additional CMake options, one per shape, to enable replacement
1557   of that shape with USolids equivalent. When any of these variables are set, set
1558   additional internal variable GEANT4_USE_PARTIAL_USOLIDS. Convert variables to
1559   internal preprocessor flags for shape/usolid activation.
1560 - Modules/Geant4BuildProjectConfig.cmake : Export needed USOLIDS/shape activation
1561   preprocessor flags for selected configuration.
1562 - Modules/Geant4ConfigureConfigScript.cmake : Export needed USOLIDS/shape activation
1563   preprocessor flags for selected configuration.
1564 
1565 28th April 2016 - Ben Morgan (cmake-V10-02-10)
1566 - Templates/Geant4Config.cmake.in: BUGFIX #1855. When using an external
1567   CLHEP, the provided FindCLHEP module is not used. Wrap call to
1568   find_package(CLHEP) with push/pop of CMAKE_MODULE_PATH to ensure
1569   Geant4's builtin module is used and not interfere with any user
1570   settings of CMAKE_MODULE_PATH.
1571 
1572 19th April 2016 - Gunter Folger (cmake-V10-02-09)
1573 -  correct Modules/genwindef/LibSymbolInfo.cpp for use with VC 64 bit compilation
1574 
1575 29th March 2016 - Gunter Folger (cmake-V10-02-08)
1576 -  switch to RadioActiveDecay 4.4; dataset identical to 4.3.1, packaging
1577     corrected to be a compressed tar file, 4.3.1 is plain tar
1578 
1579 16th March 2016 - Ben Morgan (cmake-V10-02-07)
1580 - Modules/Geant4InterfaceOptions.cmake : Fix Bug #1828
1581   Apply patch from Vladimir Belov to add libXt to X11_LIBRARIES on all
1582   Unix platforms when using Motif/Inventor.
1583 
1584 23rd February 2016 - Gunter Folger (cmake-V10-02-06)
1585 -  Correct md5sum for RadioactiveDecay.4.3.1 after removal of MAC Safari files.
1586 
1587 23rd February 2016 - Gunter Folger (cmake-V10-02-05)
1588 - Modules/Geant4DatasetDefinitions.cmake:
1589     - revert back to G4ENSDFSTATE.1.3
1590          - use patched RadioactiveDecay data 4.3.1
1591 
1592 23rd February 2016 - Gunter Folger (cmake-V10-02-04)
1593 - Modules/Geant4DatasetDefinitions.cmake: Use data set G4ENSDFSTATE.1.2.1
1594    Note 1.2.1 is identical to 1.3, it is a patch on 1.2
1595 
1596 5th February 2016 - Gunter Folger (cmake-V10-02-03)
1597 - Modules/Geant4DatasetDefinitions.cmake: Use new data set G4ENSDFSTATE.1.3
1598 
1599 22nd January 2016 - Ben Morgan (cmake-V10-02-02)
1600 - Modules/FindCLHEP.cmake : Restore from last version. Update regexing
1601   of defs.h file for CLHEP 2.3.1.1 changes, retaining compatibility with
1602   earlier versions. Create imported targets CLHEP and CLHEP::<COMPONENT>
1603   to ease transition to full Config mode support once we can support it.
1604 - Modules/Geant4OptionalComponents.cmake : Rollback to using package-mode
1605   to locate CLHEP. Modify CLHEP_LIBRARIES after finding to fill this with
1606   the imported targets instead of absolute paths.
1607 - Modules/Geant4BuildProjectConfig.cmake : Add FindCLHEP.cmake to installed
1608   modules so that Geant4Config.cmake can refind CLHEP and hence the imported
1609   targets.
1610 - Templates/Geant4Config.cmake.in : Refind CLHEP using package-mode,
1611   using hardcoded CLHEP_ROOT_DIR if set as a hint.
1612 
1613 15th December 2015 - Ben Morgan (cmake-V10-02-01)
1614 - Templates/Geant4Config.cmake.in : Use PATHS option in find_package
1615   for CLHEP, setting it to discovered CLHEP_DIR. Required at present
1616   to provide a hint to builds of tests, which do not have
1617   CMAKE_PREFIX_PATH set appropriately.
1618 
1619 15th December 2015 - Ben Morgan (cmake-V10-02-00)
1620 - [BUGFIX #1805] : Preliminary fix for CLHEP 2.3.1.1 config error
1621 - Modules/FindCLHEP.cmake : REMOVED as obsolete
1622 - Modules/Geant4OptionalComponents.cmake : Use NO_MODULE in
1623   find_package(CLHEP) so that CLHEPConfig.cmake is preferred.
1624   Retain use of CLHEP_ROOT_DIR temporarily for transition in
1625   testing system
1626 - Modules/Geant4BuildProjectConfig.cmake : Remove setting of explicit CLHEP
1627   directory, defering this to find_package call in Geant4Config.cmake
1628 - Templates/Geant4Config.cmake.in : Use namespaced name for Geant4 cmake
1629   directory to avoid upstream clashes.
1630   Add explicit call to find_package(CLHEP) so that imported targets are refound.
1631   Move inclusion of targets file to after setup steps to ensure all external
1632   targets exist before this is included. This is also to help further work
1633   on use of imported targets.
1634 - Modules/Geant4ConfigureConfigScript.cmake : Extract LOCATION property from
1635   CLHEP targets to provide setting of lib paths in geant4-config
1636 - Templates/geant4-config.cmake.in : Remove explicit calls to clhep-config
1637 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Extract LOCATION
1638   properties from CLHEP imported targets.
1639 
1640 
1641 25th November 2015 - Ben Morgan (cmake-V10-01-41)
1642 - Modules/Geant4InterfaceOptions.cmake : Move force Qt4 option
1643   alongside use Qt option so that it can be set in Curses/GUI before
1644   first-pass search for Qt.
1645 - Modules/Geant4BuildModes.cmake : Change default build mode for
1646   single config generators to RelWithDebInfo to match testing
1647   system and UNIX conventions.
1648 - Modules/Geant4LibraryBuildOptions.cmake : Add new MSVC only option
1649   GEANT4_BUILD_MSVC_MP, defaulting to OFF. When ON, it prepends /MP
1650   to CMAKE_CXX_FLAGS to enable file level parallel compilation when
1651   using MSBuild.
1652 
1653 23rd November 2015 - Ben Morgan (cmake-V10-01-40)
1654 - Modules/FindROOT.cmake : Apply patch from Ivana Hrivnacova to provide
1655   compatibility with ROOT6 and allow usage of ROOTConfig.cmake, if
1656   available.
1657 - Modules/Geant4MakeRules_cxx.cmake : Correct checking of Intel compiler
1658   to use better CMAKE_CXX_COMPILER_ID variable.
1659 - Modules/Geant4InterfaceOptions.cmake : Allow user to force search for
1660   Qt4 only when GEANT4_USE_QT is selected. Requested on User Forum by
1661   Jan Pipek (http://hypernews.slac.stanford.edu/HyperNews/geant4/get/installconfig/1766.html)
1662 
1663 18th November 2015 - Ben Morgan (cmake-V10-01-39)
1664 - Modules/IntelCompileFeatures.cmake : Fix logic error in conditionals
1665   that resulted in only one branch being followed and a non-complete
1666   set of compile features being set.
1667 
1668 17th November 2015 - Ben Morgan (cmake-V10-01-38)
1669 - Modules/Geant4LibraryBuildOptions.cmake : To provide backward
1670   compatibility, allow GEANT4_BUILD_CXXSTD to be supplied as either
1671   an epoch like '11' or as 'c++<epoch>'. If the latter form is supplied
1672   postprocess to remove the 'c++' so that standards can be dealt with in
1673   a uniform numeric manner.
1674 
1675 17th November 2015 - Ben Morgan (cmake-V10-01-37)
1676 - Use CMake Compile Features to setup C++ Standard
1677 - Modules/Geant4MakeRules_cxx.cmake : Remove setup of standard selection
1678   via compiler version checking.
1679 - Modules/Geant4LibraryBuildOptions.cmake : Create list of compile
1680   features required by Geant4, per C++ Taskforce report. For 10.2, do
1681   not include
1682   - cxx_deleted_functions
1683   - cxx_generalized_initializers
1684   - cxx_constexpr
1685   - cxx_inheriting_constructors
1686   to provide backward compatibility with Visual Studio 2013 (MSVC 18).
1687   Maintain GEANT4_BUILD_CXXSTD option to allow user to choose between
1688   C++11 and C++14 standards. When newer standard is chosen, require that
1689   compiler supports at least one feature from that standard, and add all
1690   supported features of that standard to the required list.
1691 - Modules/IntelCompileFeatures.cmake : CMake does not currently provide
1692   builtin compile features for ICC. Use info provide by Intel to support
1693   compile features for this compiler.
1694 - Modules/Geant4MacroLibraryTargets.cmake : Use target_compile_features
1695   to set the required features on all Geant4 targets.
1696 - Modules/Geant4BuildProjectConfig.cmake,
1697   Templates/Geant4Config.cmake.in, Templates/geant4-config.in: Update
1698   setting of flags and standard used to obtain information from
1699   compile features.
1700 
1701 10th November 2015 - Gabriele Cosmo (cmake-V10-01-36)
1702 - Put CLHEP version 2.3.1.0 as the minimum required in script
1703   Modules/Geant4OptionalComponents.cmake.
1704 
1705 9th November 2015 - Gunter Folger (cmake-V10-01-35)
1706 - Modules/Geant4DatasetDefinitions.cmake: Use new data sets
1707   PhotonEvaporation3.2 and RadioactiveDecay4.3.
1708 
1709 2nd November 2015 - Ben Morgan (cmake-V10-01-34)
1710 - Modules/Geant4CTest.cmake : Add TOOLS_FONT_PATH to test environment
1711   when Freetype support enabled.
1712 
1713 28th October 2015 - Gunter Folger (cmake-V10-01-33)
1714 - Modules/Geant4DatasetDefinitions.cmake: Use new data set G4EMLOW6.48
1715 
1716 23th October 2015 - Gunter Folger (cmake-V10-01-32)
1717 - Modules/Geant4DatasetDefinitions.cmake: Use new data set G4ENSDFSTATE.1.2
1718 
1719 22nd October 2015 - Ben Morgan (cmake-V10-01-31)
1720 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Add export
1721   of TOOLS_FONT_PATH to environment when Freetype support is enabled,
1722   pointing to the fonts/ subdirectory of Geant4's share directory.
1723   For the buildtree, point it to PROJECT_SOURCE_DIR/source/analysis/fonts
1724   Treat TOOLS_FONT_PATH as a UNIX style PATH variable with normal
1725   separators.
1726 - Templates/geant4-env-skeleton.in, Templates/geant4make-skeleton.in :
1727   Add export variables for configuring TOOLS_FONT_PATH variable.
1728 
1729 21st October 2015 - Ben Morgan (cmake-V10-01-30)
1730 - Modules/Geant4ConfigureConfigScript.cmake : Export value of
1731   GEANT4_USE_FREETYPE to geant4-config to allow this to report support
1732   status of freetype in G4analysis
1733 - Templates/geant4-config.in : Add freetype feature to report status of
1734   freetype support in G4analysis
1735 - Templates/Geant4Config.cmake.in : Add freetype component to require
1736   freetype support in G4analysis.
1737 
1738 19th October 2015 - Ben Morgan
1739 - Modules/Geant4OptionalComponents.cmake : Add new GEANT4_USE_FREETYPE
1740   option, OFF by defaults, to allow user to enable Freetype support
1741   in analysis library.
1742 
1743 12th October 2015 - Gunter Folger (cmake-V10-01-29)
1744 - Modules/Geant4DatasetDefinitions.cmake: Use new data set G4EMLOW.6.47
1745 
1746 8th October 2015 - Ben Morgan (cmake-V10-01-28)
1747 - Modules/Geant4OptionalComponents.cmake: Only allow use of system
1748   USolids. Remove old "USE_SYSTEM_USOLIDS" option, and always call
1749   find_package for USolids.
1750 - Modules/GeantBuildProjectConfig.cmake, Templates/Geant4Config.cmake.in:
1751   Remove old system usolids settings as USolids is always system now
1752 - Modules/Geant4ConfigureConfigScript.cmake, Templates/geant4-config.in:
1753   Remove old system Usolids settings as Usolids is alsways system now.
1754   Ensure include paths exported.
1755 
1756 6th October 2015 - Ben Morgan (cmake-V10-01-27)
1757 - Modules/Geant4MakeRules_cxx.cmake: Update AppleClang detection to
1758   for Xcode 7 and match to CMake 3's AppleClang rules. Provide
1759   CXXSTD_IS_AVAILABLE for MSVC 19 so that appropriate standard selection
1760   preprocessor symbols are defined.
1761 
1762 1st October 2015 - Gunter Folger (cmake-V10-01-26)
1763 - Modules/Geant4DatasetDefinitions.cmake: Use new data set G4EMLOW.6.46
1764 
1765 18th September 2015 - Ben Morgan (cmake-V10-01-25)
1766 - Modules/Geant4LibraryBuildOptions.cmake, Modules/Geant4MacroLibraryTargets, Modules/GeantBuildProjectConfig.cmake: Allow both static and shared libs
1767   to be built on Windows. Remove G4LIB_BUILD_DLL preprocessor def from
1768   global settings, only adding it to the public compile defs of the
1769   resulting DLL. To create DLL, always compile dedicated archive library
1770   separate from installed version. Compile the sources of this dedicated
1771   archive library with G4LIB_BUILD_DLL set so that DLL relevant symbols
1772   are used.
1773 
1774 16th September 2015 - Gunter Folger (cmake-V10-01-24)
1775 - Modules/Geant4DatasetDefinitions.cmake: Use new data set G4ENSDFSTATE.1.1
1776 
1777 14th September 2015 - Ben Morgan (cmake-V10-01-23)
1778 - Modules/Geant4CTest.cmake, Modules/Geant4InstallData.cmake, Modules/Geant4ToolchainBackwardCompatibility.cmake: Export and use G4ENSDFDATA dataset
1779   and environment variable. It will become the default to use this dataset
1780   so requires export.
1781 
1782 1st September 2015 - Gunter Folger (cmake-V10-01-22)
1783 - Modules/Geant4DatasetDefinitions.cmake: Use new data set G4EMLOW.6.45
1784 
1785 31st August 2015 - Gabriele Cosmo (cmake-V10-01-21)
1786 - Modules/Geant4OptionalComponents.cmake, GeantBuilsProjectConfig.cmake and
1787   Templates/geant4-config.in: added specific compilation flag
1788   "-DG4GEOM_USE_SYS_USOLIDS" to distinguish build with sys-installed
1789   USolids/VecGeom module (temporary, until internal USolids module will be
1790   removed).
1791 
1792 12th August 2015 - Gabriele Cosmo (cmake-V10-01-20)
1793 - Modules/Geant4MakeRules_cxx.cmake: removed -gcc-sys in CMAKE_CXX_FLAGS
1794   for the Intel compiler, as no longer necessary.
1795 - Modules/Geant4LibraryBuildOptions.cmake: removed try-compile block for
1796   atomics on Intel compiler, as no longer necessary.
1797 
1798 7th August 2015 - Gabriele Cosmo (cmake-V10-01-19)
1799 - Modules/Geant4MakeRules_cxx.cmake: replaced -no-gcc with -gcc-sys
1800   in CMAKE_CXX_FLAGS when using Intel compiler, to allow for GNU macros
1801   to be defined when compiling system headers.
1802 
1803 31st July 2015 - Ben Morgan (cmake-V10-01-18)
1804 - Modules/Geant4MacroLibraryTargets.cmake : Updates for migration to
1805   CMake >= 2.8.12. Use generator expressions in setting of per-mode
1806   compile definitions for Geant4 libs. Use INTERFACE_LINK_LIBRARIES
1807   instead of LINK_INTERFACE_LIBRARIES on Windows. Replace use of
1808   INSTALL_NAME_DIR with MACOSX_RPATH property for OS X libraries.
1809 
1810 29th July 2015 - Ben Morgan
1811 - Module/Geant4LibraryBuildOptions.cmake : Add try-compile for
1812   atomics with Intel in C++1X mode and use Intel atomic if system
1813   cannot support them. Reported by Andrea Dotti,
1814   because Geant4 uses Intel's no-gcc flag to prevent thread local
1815   issues, system atomic header will be used by default. If system
1816   compiler does not support atomic, builds will fail.
1817 
1818 27th July 2015 - Ben Morgan (cmake-V10-01-17)
1819 - Modules/Geant4MakeRules_cxx.cmake : Always use libc++ with Apple
1820   Clang so that std-supporting library is used for C++11 mode on
1821   older Mac systems where libstdc++ is the default.
1822 
1823 23rd July 2015 - Ben Morgan (cmake-V10-01-16)
1824 - Modules/Geant4MacroLibraryTargets.cmake : Update rules for .def
1825   file generation to use new output dirs and to separate .def files
1826   for each build mode.
1827 - Modules/Geant4MakeRules_cxx.cmake : To permit transition to C++11
1828   update std-flag setting rules to only allow C++11 builds with compiler
1829   versions that are know to support the features in current use.
1830 
1831 22nd July 2015 - Ben Morgan (cmake-V10-01-15)
1832 - Modules/Geant4MakeRules_cxx.cmake : When compiler allows selection
1833   of C++ standard and allows C++0x/11, default to using this standard.
1834 
1835 13th July 2015 - Ben Morgan (cmake-V10-01-14)
1836 - Modules/Geant4LibraryBuildOptions.cmake : Migrate output directories
1837   for build products to use same layout as install tree. For single
1838   mode generators (Makefiles/Ninja), products are output to a
1839   'BuildProducts' subdir of the main binary dir which holds bin/lib
1840   directories as derived from requested install dirs. With multimode
1841   generators (Xcode/VS), 'BuildProducts' holds an extra directory layer,
1842   one per build mode, under which the same bin/lib structure is used.
1843 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Update to use
1844   correct output dirs.
1845 - Modules/Geant4ConfigureConfigScript.cmake : Note that this will not
1846   work for multimode builds.
1847 
1848 8th June 2015 - Ben Morgan (cmake-V10-01-13)
1849 - Templates/Geant4Config.cmake.in : Always re-find Qt5 via find_package
1850   if Geant4 was configured with Qt5 support. Qt5 libraries are in
1851   public link interface of G4interfaces and G4OpenGL whether or not it
1852   is activated for an application, so must always be linked. Without
1853   refinding, dangling imported targets are left in the link interfaces
1854   of G4interfaces and G4OpenGL.
1855 
1856 26th May 2015 - Gunter Folger (cmake-V10-01-12)
1857 -  Modules/Geant4DatasetDefinitions.cmake: Use new data set G4EMLOW.6.44
1858 
1859 19th May 2015 - Gunter Folger (cmake-V10-01-11)
1860 -  Modules/Geant4DatasetDefinitions.cmake: Use new data set G4EMLOW.6.43
1861 
1862 5th May 2015 - Ben Morgan (cmake-V10-01-10)
1863 - Modules/Geant4ConfigureModulefile.cmake : Genarate a modulefile
1864   for the build tree. Requested by developers, but otherwise unsupported.
1865 - Templates/geant4-modulefile.in : Update export variables to allow
1866   transparent configuration of build/install tree versions.
1867 
1868 29th April 2015 - Ben Morgan (cmake-V10-01-09)
1869 - Modules/Geant4MakeRules_cxx.cmake: Add `-no-gcc` to CMAKE_CXX_FLAGS
1870   when using Intel compiler. This is temporary fix to give
1871   matching flags against old GNUmake build. It requires further checks
1872   to understand full behaviour of this flag to tune code versus
1873   Intel's `-gcc-sys` flag and `__INTEL_COMPILER` macro.
1874 
1875 22nd April 2015 - Ben Morgan (cmake-V10-01-08)
1876 - Modules/FindCLHEP.cmake: Add CLHEP_ROOT_DIR to CMake cache, allowing
1877   it to be editted in the CMake curses/GUI. Use unset command to remove
1878   LIBRARY and INCLUDE_DIR variables for CLHEP from the cache when
1879   CLHEP_ROOT_DIR is changed.
1880 - Templates/geant4-env-skeleton.in: Add expansion entry for CLHEP library
1881   path
1882 - Modules/Geant4ToolchainBackwardCompatibility.cmake: Export setting
1883   of dynamic library path to prepend system CLHEP's library path in
1884   geant4.(c)sh
1885 
1886 17th April 2015 - Ben Morgan (cmake-V10-01-07)
1887 - Fixes for JIRA DEV-185 (Allow use of system CLHEP granular libraries)
1888 - Modules/FindCLHEP.cmake: Allow component arguments to be supplied to
1889   find_package, each component being a CLHEP granular library. Support
1890   dependencies between components, and fail on REQUIRED if any requested
1891   component or dependency is not found. Set cache variables for each requested
1892   component library, and fill CLHEP_LIBRARIES with the requested libraries
1893 - Modules/Geant4OptionalComponents.cmake: Provide new advanced option
1894   GEANT4_USE_SYSTEM_CLHEP_GRANULAR, which can be set to enable use of CLHEP
1895   granular libraries from the system. When activated, use new FindCLHEP
1896   interface to search for Geant4's required components.
1897 - Templates/Geant4Config.cmake.in: Export and document a new variable,
1898   Geant4_system_clhep_ISGRANULAR that clients can query to check whether
1899   the system CLHEP was linked in granular mode.
1900 - Modules/Geant4ConfigureConfigScript.cmake: Process and export system CLHEP
1901   library list to support either singular or granular CLHEP libraries.
1902 - Templates/geant4-config.in: Support CLHEP granular library listing in
1903   '--libs' argument.
1904 - Modules/Geant4ToolchainBackwardCompatibility.cmake: Export CLHEP_LIB env var
1905   to support use of system CLHEP libraries in granular mode.
1906 - Templates/geant4make-skeleton.in: Export CLHEP_LIB env var to support
1907   system CLHEP libs in granular mode.
1908 
1909 15th April 2015 - Ben Morgan (cmake-V10-01-06)
1910 - Modules/Geant4MakeRules_cxx.cmake: Update AppleClang version regex for
1911   Xcode 6.1. This version adds the patch number to the "based on LLVM"
1912   id. The full version number is now derived.
1913 
1914 20th March 2015 - Gabriele Cosmo (cmake-V10-01-05)
1915 - Modules/Geant4MacroLibraryTargets.cmake: Added external G4geomUSolids
1916   library to static linkage list. Addressing problem report #1725.
1917 
1918 2nd February 2015 - Ben Morgan
1919 - Modules/Geant4CPackBase.cmake: Exclude directories named "test"
1920   and "tests" from source package. Provide function to pad version
1921   triplet entries to two digits (with zeros), and name source package
1922   following convention of standatd release proceedure. CAVEATS: Patch
1923   version still included with initial release, no use of beta/patch/rc
1924   tags in patch numbering.
1925 
1926 29th January 2015 - Ben Morgan (cmake-V10-01-04)
1927 - Modules/Geant4MakeRules_cxx.cmake: Minor update to only use c++11
1928   on Intel 15 compiler and better. Though this standard can be used
1929   on slightly earlier versions, only 15 has full features (for Geant4's
1930   needs). We would like to be consistent in standard use so that 'c++0x'
1931   is always used for compilers with partial support (even if 'c++11' is
1932   allowed), reserving 'c++11' for fully supported cases. This still
1933   needs review for GNU and Clang.
1934 
1935 29th January 2015 - Ben Morgan (cmake-V10-01-03)
1936 - Modules/Geant4MakeRules_cxx.cmake: Add support for compiling against
1937   c++1y standard for GNU and Clang compilers. Add support for compiling
1938   against c++11 standard for Intel compiler.
1939 
1940 17th December - Ben Morgan (cmake-V10-01-02)
1941 - Modules/Geant4InterfaceOptions.cmake: BUGFIX #1683. Correct search
1942   path for X11 libraries to ensure location of Xquartz libs on OS X.
1943 
1944 15th December 2014 - Gunter Folger (cmake-V10-01-01)
1945 -  Modules/Geant4DatasetDefinitions.cmake: Use new data set G4EMLOW.6.42
1946 
1947 05th December 2014 - Ben Morgan (cmake-V10-01-00)
1948 - Modules/Geant4LibraryBuildOptions.cmake: When on OS X, check
1949   whether compiler IDed as Clang is actually g++ via command
1950   path. Ensures that "GEANT4_COMPILER" is correctly set for
1951   GNUmake compatibility.
1952 
1953 01st December 2014 - Ben Morgan (cmake-V10-00-37)
1954 - Modules/Geant4BuildProjectConfig.cmake: Correct export of USolids
1955   system headers so that these are exported whether or not USolids
1956   are used to replace G4 solids.
1957 
1958 18th November 2014 - Ben Morgan (cmake-V10-00-36)
1959 - Templates/UseGeant4.cmake : Include Geant4 headers as SYSTEM and after
1960   other headers. This is to help to suppress warnings when user has
1961   more stringent compiler settings than us.
1962 
1963 12th November 2014 - Ben Morgan (cmake-V10-00-35)
1964 - Modules/Geant4LibraryBuildOptions.cmake: Remove GEANT4_BUILD_TPMALLOC
1965   as this is no longer required
1966 
1967 11th November 2014 - Gunter Folger (cmake-V10-00-34)
1968 - Modules/Geant4DatasetDefinitions.cmake: update md5sum
1969    for G4EMLOW6.21 after correction of files access permissions.
1970 
1971 10th November 2014 - Gunter Folger (cmake-V10-00-33)
1972 - Modules/Geant4DatasetDefinitions.cmake: RadioactiveDecay4.2
1973    and update md5sum for G4EMLOW6.21 after correction of files
1974         access permissions.
1975 
1976 07th November 2014 - Ben Morgan (cmake-V10-00-32)
1977 - Modules/Geant4OptionalComponents.cmake : BUGFIX: Failures of static
1978   builds traced to typo in USolids settings in static mode where
1979   EXPAT_LIBRARIES was overwritten. Correct typo.
1980 
1981 30th October 2014 - Ben Morgan (cmake-V10-00-31)(INTERNAL)
1982 - Modules/Geant4OptionalComponents.cmake : Update USolids configuration
1983   to decouple GEANT4_USE_USOLIDS and GEANT4_USE_SYSTEM_USOLIDS
1984   options.
1985   - GEANT4_USE_USOLIDS ON means that Geant4 solids are replaced with
1986     USolids equivalents, OFF means Geant4 solids and USolids are available
1987   - A USolids lib must ALWAYS be availble, so GEANT4_USE_SYSTEM_USOLIDS
1988     simply switches between these.
1989 - Templates/Geant4Config.cmake.in : decouple GEANT4_USE_USOLIDS and
1990   GEANT4_USE_SYSTEM_USOLIDS
1991 - Templates/geant4-config.in : decouple GEANT4_USE_USOLIDS and
1992   GEANT4_USE_SYSTEM_USOLIDS
1993 
1994 30th October 2014 - Ben Morgan (cmake-V10-00-30)(INTERNAL)
1995 - Support builtin/system USolids library
1996 - Modules/Geant4OptionalComponents.cmake : Update USolids configuration
1997   use internal G4geomUSolids by default if USolids support requested.
1998   Add dependent option to allow system USolids to be searched for.
1999   This assumes that USolids will supply a "USolidsConfig.cmake" file
2000 - Modules/Geant4BuildProjectConfig.cmake : Update to export USolids
2001   settings as required.
2002 - Templates/Geant4Config.cmake.in : Update to provide new USolids
2003   component and relevant variables and settings
2004 - Modules/Geant4ConfigureConfigScript.cmake : Update to export
2005   USolids settings as required
2006 - Templates/geant4-config.in : Update to support USolids builtin/system
2007   switch.
2008 
2009 23rd October 2014 - Ben Morgan (cmake-V10-00-29)
2010 - Templates/geant4-config.in : Add command line arguments to report
2011   C++ standard compiled against and TLS model used if multithreading
2012   support available.
2013   Add presence of static libs as a feature argument that can be checked.
2014 - Modules/Geant4ConfigureConfigScript.cmake : Export yes/no value
2015   indicating presence of static libraries to config script.
2016 - Templates/Geant4Config.cmake.in : Add variables to indicate C++
2017   standard compiled against and TLS model used. Latter is only set
2018   if multithreading support is available.
2019 - Modules/
2020 
2021 22nd October 2014 - Gunter Folger (cmake-V10-00-28)
2022 - Modules/Geant4DatasetDefinitions.cmake: G4EMLOW.6.41
2023 
2024 21st October 2014 - Ben Morgan (cmake-V10-00-27)
2025 - Modules/Geant4ConfigureModulefile.cmake : New file to configure
2026   and install a basic Environment Modules modulefile for Geant4.
2027   Provides basic Path/Datapath settings only, in line with geant4.(c)sh
2028   scripts. Because the location of modulefiles can be highly system
2029   dependent, install file in datarootdir with absolute paths coded in.
2030   Allows file to be moved later on as required on the system and
2031   patched accordingly.
2032 - Templates/geant4-modulefile.in : basic template for a modulefile
2033 - Modules/Geant4ToolchainBackwardCompatibility.cmake : include and
2034   call functionality in Geant4ConfigureModulefile.
2035 
2036 20th October 2014 - Ben Morgan
2037 - Modules/Geant4ToolchainBackwardCompatibility.cmake,
2038   Templates/geant4make-skeleton.in: Revert changes introduced to
2039   support modulefiles due to uneeded variables being exported.
2040 
2041 10th October 2014 - Andrea Dotti (cmake-V10-00-26)
2042 - Modules/FindROOT.cmake add ROOT_BIN_DIR variable to point to the
2043   path of root executables. Needed to use hadd application for
2044   physics testings (merging of output files for MT)
2045 
2046 08th October 2014 - Ben Morgan (cmake-V10-00-25)
2047 - Templates/UseGeant4.cmake : BUGFIX #1663, Append existing CMake
2048   CXX/EXE_LINKER flags to Geant4 flags when setting overall CMake flags.
2049   This allows users to override the base set if needed, at their own
2050   risk.
2051 
2052 26th September 2014 - Ben Morgan (cmake-V10-00-24)
2053 - Modules/Geant4ToolchainBackwardCompatibility.cmake,
2054   Templates/geant4make-skeleton.in: Revert changes introduced to
2055   support modulefiles due to incorrect installation names of scripts.
2056 
2057 26th August 2014 - Gunter Folger (cmake-V10-00-23)
2058 -  Modules/Geant4CTest.cmake: Add variable for reference files for testing
2059 
2060 26th August 2014 - Ben Morgan (cmake-V10-00-22)
2061 - Modules/Geant4MacroLibraryTargets.cmake : Remove any self-links
2062   from internal library link list when building global libraries.
2063 
2064 26th August 2014 - Gunter Folger (cmake-V10-00-21)
2065 - Modules/Geant4DatasetDefinitions.cmake: G4EMLOW.6.40
2066 
2067 19th August 2014 - Gunter Folger (cmake-V10-00-20)
2068 - Modules/Geant4DatasetDefinitions.cmake: G4NDL.4.5
2069 
2070 08th July 2014 - Andrea Dotti (cmake-V10-00-19)
2071 - Templates/UseGeant4_internal.cmake in geant4_add_test function convert
2072   character '=' present in command line to be executed to '@'
2073 - Modules/Geant4TestDriver.cmake convert back character '@' to '=' for
2074   command line to be executed in test
2075 Both changes are needed to support "offloading" of tests (e.g. will be
2076 used by testing on Xeon Phi co-processors that require complex command
2077 lines containing '=' character).
2078 
2079 06th June 2014 - Ben Morgan (cmake-V10-00-18)
2080 - Templates/geant4-config.in : Add zlib and g3tog4 to list of features
2081   that --has-feature recognizes and can query (Patch from Ivana
2082   Hrivnacova)
2083 
2084 05th June 2014 - Gunter Folger (cmake-V10-00-17)
2085 - Modules/Geant4DatasetDefinitions.cmake: G4EMLOW6.39
2086 
2087 27th May 2014 - Ben Morgan (cmake-V10-00-16)
2088 - Modules/Geant4MakeRules_cxx.cmake : Factor -ftls-model flag
2089   out of GEANT4_MULTITHREADED_CXX_FLAGS and provide function
2090   supplying available thread local storage model flag arguments.
2091   Addresses JIRA DEV-142
2092 - Modules/Geant4LibraryBuildOptions.cmake : Provide advanced option
2093   to select thread local storage model when building multithreaded.
2094   Default to supported initial-exec model. Addresses JIRA DEV-142.
2095 
2096 26th May 2014 - Ben Morgan (cmake-V10-00-15)
2097 - Modules/Geant4MakeRules_cxx.cmake : Add -DG4FPE_DEBUG to GNU/Clang
2098 flags for Debug build mode. Added following discussion with Gunter
2099 Folger to help developers diagnose FPE problems.
2100 
2101 09th May 2014 - Gunter Folger (cmake-V10-00-14)
2102 - Modules/Geant4DatasetDefinitions.cmake: G4EMLOW6.38
2103 
2104 10th April - Ben Morgan (cmake-V10-00-13)
2105 - Modules/Geant4LibraryBuildOptions.cmake: When building against the C++11
2106   standard, append -DG4USE_STD11 to CMAKE_CXX_FLAGS. Requested by Gabriele
2107   Cosmo (DEV-138). Known issues: Provides no guarantee that required
2108   C++11 features are present. Does not work on MSVC yet, but neither
2109   will the parts of the code making use of C++11 features.
2110 
2111 18th March 2014 - Gunter Folger (cmake-V10-00-12)
2112 - Modules/Geant4DatasetDefinitions.cmake: G4EMLOW6.37
2113 
2114 20th March 2014 - Ben Morgan (cmake-V10-00-11)
2115 - Templates/Geant4Config.cmake.in : Fixes by Witold Pokorski for correct
2116   static archive flags on Clang and syntax fixes for GNU.
2117 
2118 18th March 2014 - Gunter Folger (cmake-V10-00-10)
2119 - Modules/Geant4DatasetDefinitions.cmake: G4EMLOW6.36
2120 
2121 6th March 2014 - Ben Morgan (cmake-V10-00-09)
2122 - Modules/Geant4Config.cmake.in : When static libraries are used,
2123   wrap G4physicslists library with flags suitable to import whole
2124   archive. Implemented for GNU/Clang/Intel compilers. Other compilers
2125   require further checks on flags and how to apply to single library.
2126   This functionality is needed to support global registration of
2127   factories.
2128 
2129 5th March 2014 - Ben Morgan (cmake-V10-00-08)
2130 - Modules/Geant4MacroLibraryTargets.cmake : Fixup usage of shared/static
2131   builtin libraries. Ensure that shared builtins do not get linked to
2132   static.
2133 - Templates/Geant4Config.cmake.in : Add new component 'static' allowing
2134   user to select static Geant4 libraries if they are available.
2135 
2136 26th February 2014 - Gunter Folger (cmake-V10-00-07)
2137 - Modules/Geant4DatasetDefinitions.cmake: PhotonEvaporation3.1
2138 
2139 26th February 2014 - Gunter Folger (cmake-V10-00-06)
2140 - Modules/Geant4DatasetDefinitions.cmake: RadioactiveDecay4.1
2141 
2142 18th February 2014 - Ben Morgan (cmake-V10-00-05)
2143 - Modules/Geant4ConfigureConfigScript.cmake : Export use of builtin
2144   zlib or otherwise to geant4-config (Bugfix #1572).
2145 - Template/geant4-config.in : Add builtin zlib to list of features,
2146   adding G4zlib to list of libraries when used (Bugfix #1572).
2147 - Template/geant4-config.in : Replace use of GNU awk extension 'length'
2148   for determining number of datasets. Use return value of split function
2149   to get length of array. Problem reported on Hypernews:
2150   http://hypernews.slac.stanford.edu/HyperNews/geant4/get/installconfig/1614.html
2151 
2152 17th February 2014 - Ben Morgan (cmake-V10-00-04)
2153 - Templates/geant4make-skeleton.in : Add variables for
2154   G4LIB_{BUILD,USE}_EXPAT as for ZLIB. Fixes Bug #1567
2155 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Export
2156   G4LIB_{BUILD,USE}_EXPAT based on value of GEANT4_USE_SYSTEM_EXPAT.
2157   Fixes Bug #1567.
2158 
2159 21st January 2014 - Jonathan Madsen (cmake-V10-00-03)
2160 - Updated Modules/Geant4InterfaceOptions.cmake to include /opt/X11
2161    paths that are now the standard places for X11 and OpenGL on Mac OSX
2162    as of Mavericks (OS X 10.9). Without these paths configuring CMake with
2163    GEANT4_USE_OPENGL_X11=ON fails
2164 
2165 18th December 2013 - Gunter Folger (cmake-V10-00-02)
2166 - Modules/Geant4TestDriver.cmake: CTEST_TEST_TIMEOUT is empty, or
2167    its setting is not visible.
2168         Directly using environment variable CTEST_TIMEOUT finally works.
2169 
2170 16th December 2013 - Gunter Folger (cmake-V10-00-01)
2171 - Modules/Geant4TestDriver.cmake: fix typo introduced in previous tag
2172 
2173 16th December 2013 - Gunter Folger (cmake-V10-00-00)
2174 - Modules/Geant4TestDriver.cmake: use CTEST_TEST_TIMEOUT if set to set
2175   default timeout
2176 
2177 28th November 2013 - Ben Morgan (cmake-V09-06-45)
2178 - Modules/Geant4CTest.cmake : Remove G4ENSDFSTATE dataset from list
2179   exported to the testing environment, as it should not be used by
2180   default.
2181 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Remove G4ENSDFSTATE
2182   from datasets exported to the environment. This is because this dataset
2183   should not be set in the environment by default.
2184 - Modules/Geant4InstallData.cmake : Remove G4ENSDFSTATE dataset from
2185   export definitions. The ENSDF data is not intended to be used by
2186   default, and any setting of its environment variable changes the
2187   behaviour of Geant4 (i.e. it's an active rather than passive variable).
2188 
2189 27th November 2013 - Gunter Folger (cmake-V09-06-44)
2190 - Modules/Geant4DatasetDefinitions.cmake: Add ENSDFSTATE data
2191 
2192 27th November 2013 - Ben Morgan (cmake-V09-06-43)
2193 - Modules/Geant4MakeRules_cxx.cmake : Set GEANT4_MULTITHREADED_CXX_FLAGS
2194   for Intel compiler to "-ftls-model=initial-exec -pthread" as for GNU and
2195   Clang.
2196 
2197 26th November 2013 - Ben Morgan (cmake-V09-06-42)
2198 - Modules/Geant4LibraryBuildOptions.cmake : Mark GEANT4_BUILD_MULTITHREADED
2199   as advanced on Win32, and emit a warning on Win32 if it is activated.
2200   This allows developers to keep working whilst warning users about the
2201   non-support.
2202 
2203 21st November 2013 - Ben Morgan (cmake-V09-06-41)
2204 - Modules/Geant4InterfaceOptions.cmake : Fix bug in checking of status
2205   of Xmu include path and library variables that resulted in no error
2206   being emitted if these were not found.
2207 
2208 19th November 2013 - Ben Morgan (cmake-V09-06-40)
2209 - Modules/Geant4ConfigureConfigScript.cmake : Fix bug in list manipulation
2210   of non-existant list backported in by accident by previous tag. This
2211   caused an error report when using Qt5.
2212 
2213 14th November 2013 - Gunter Folger (cmake-V09-06-39)
2214 - use G4RadioactiveDecay.4.0
2215 - use G4PhotonEvaporation.3.0
2216 
2217 13th November 2013 - Ben Morgan (cmake-V09-06-38)
2218 - Modules/Geant4BuildProjectConfig.cmake : Add FindTBB to exported modules.
2219 - Modules/Geant4OptionalComponents.cmake : Correct usolids include path.
2220   Document option and feature report as "EXPERIMENTAL".
2221 
2222 12th November 2013 - Ben Morgan (cmake-V09-06-37)
2223 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Fix mistake in
2224   configuration of binary directory PATH which resulted in G4INCLUDE
2225   being overwritten.
2226 
2227 8th November 2013 - Ben Morgan (cmake-V09-06-36)
2228 - Modules/Geant4ConfigureConfigScript.cmake : Add support for export
2229   of existence of USolids support to geant4-config.
2230 - Templates/geant4-config.in : Add usolids as a new feature. If present,
2231   ensure G4GEOM_USE_USOLIDS compile definition is prepended to the cflags.
2232 - Modules/Geant4BuildProjectConfig.cmake : Export required
2233   G4GEOM_USE_USOLIDS to core definitions if USolids support enabled.
2234 - Modules/Geant4OptionalComponents.cmake : Add option to enable support
2235   for USolids classes. Marked as advanced.
2236 
2237 6th November 2013 - Ben Morgan (cmake-V09-06-35 internal)
2238 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Add support
2239   for export of multithreading and application PATH variables.
2240 - Templates/geant4make-skeleton.in : Export G4MULTITHREADED variable,
2241   and prepend binary directory to PATH to provide direct access to
2242   geant4-config.
2243 - Modules/Geant4ConfigureConfigScript.cmake : Add support for export
2244   of multithreading variables.
2245 - Templates/geant4-config.in :
2246    Bug fixes : add core compiler flags to cflags
2247              : add support for multithreading (NB default is to supply
2248                cflags for multithreading if Geant4 built in MT)
2249    New feature : Implement post install of datasets. Supplying the
2250                  --install-data flag will perform a download and
2251                  install of all datasets to the configured data directory
2252                  of Geant4.
2253 - Modules/Geant4InstallData.cmake : Append filename and md5 to tuples
2254   exported by geant4_export_datasets. This is used by geant4-config to
2255   set up the post-install of datasets.
2256 
2257 6th November 2013 - Ben Morgan (cmake-V09-06-34 internal)
2258 - Modules/Geant4DatasetDefinitions.cmake : Add definition for ABLA
2259 dataset.
2260 
2261 28th October 2013 - Ben Morgan (cmake-V09-06-33)
2262 - Modules/Geant4InterfaceOptions.cmake : BUGFIX : add Wt_HTTP_LIBRARY to
2263 list of libraries required by Wt interface.
2264 
2265 26th October 2013 - Ben Morgan (cmake-V09-06-32)
2266 - Modules/Geant4DatasetDefinitions.cmake : Remove ENSDFSTATE data definition
2267 
2268 25th October 2013 - Ben Morgan (cmake-V09-06-31)
2269 Templates/Geant4Config.cmake.in : Re-find Qt5 when Geant4 uses it to ensu     re imported targets are recreated
2270 Templates/geant4make-skeleton.in : Support export of QT4/5 variables to G     eant4Make
2271 Modules/Geant4ToolchainBackwardCompatibility.cmake : Support export of QT     4/5 variables to Geant4Make
2272 Modules/Geant4InterfaceOptions.cmake : Support export of QT4/5 variables      to Geant4Make
2273 
2274 25st October 2013 - Gunter Folger
2275 - switch to G4ELOW6.35
2276 - add new NuclideTable with datafile ENSDFSTATE
2277 
2278 24th October 2013 - Ben Morgan (cmake-V09-06-30)
2279 - Modules/FindWt.cmake : add use of FindPackageHandleStandardArgs to
2280   ensure correct behaviour when supplying REQUIRED/QUIET keywords
2281 
2282 24rd October 2013 - Laurent Garnier
2283 - Template/Geant4Config.cmake.in
2284   Template/geant4make-skeleton.in
2285   Modules/Geant4ConfigureConfigScript.cmake
2286   Add Wt support
2287 
2288 24th October 2013 - Ben Morgan
2289 - Modules/Geant4InterfaceOptions.cmake : Simplify configuration of
2290   Wt and Boost location.
2291 
2292 24rd October 2013 - Laurent Garnier
2293 - Modules/Geant4InterfaceOptions.cmake : Add section for locating Wt
2294 - Modules/FindWt.cmake : New file taken form Wt sources
2295   http://www.webtoolkit.eu/wt/download
2296 
2297 23rd October 2013 - Ben Morgan (cmake-V09-06-29)
2298 - Templates/Geant4UseQt5.cmake.in : New file providing forward
2299   compatibility of compilation against Qt5 with no changes required
2300   to CMake scripts in interfaces and OpenGL.
2301 - Modules/Geant4InterfaceOptions.cmake : Search for Qt5 first, then Qt4.
2302   When Qt5 is found, configure forward compatibility use file using
2303   Geant4UseQt5.cmake.in template. If Qt5 is not found, unset its usage
2304   and require loacation of Qt4.
2305 
2306 21st October 2013 - Gunter Folger (cmake-V09-06-28)
2307 - switch to G4NEUTRONXS 1.4
2308 
2309 14th October 2013 - Gunter Folger (cmake-V09-06-27)
2310 - switch to G4EMLOW 6.34
2311 
2312 26th September 2013 - Ben Morgan (cmake-V09-06-26)
2313 - Modules/Geant4LibraryBuildOptions.cmake : When building in
2314   multithreaded mode on a UNIX system, perform a compile test to check
2315   that compiler supports thread local storage via availability of
2316   "__thread". Emit a FATAL_ERROR if the compiler does not support TLS,
2317   reporting this and the compiler used.
2318 - Templates/geant4-config.cmake.in : Implement new --check-datasets and
2319   --install-datasets tasks. The former checks that the known datasets are
2320   installed in the configured location, reporting status. The latter is a
2321   stub for implementing post-install download and unpack of datasets
2322 
2323 17th September 2013 - Ben Morgan (cmake-V09-06-25)
2324 - Templates/geant4-config.cmake.in : Expand export variable holding
2325   list of dataset tuples. Process list from CMake ';' separated to
2326   shell ' ' separated list. Implement new '--datasets' argument to
2327   print out space separated dataset name, envvar name and path, with
2328   information for each dataset on a separate line.
2329 - Templates/Geant4Config.cmake.in : Expand export variable holding
2330   list of dataset tuples. Process list to create variable holding a
2331   list of dataset names, plus variables, one per dataset, holding the
2332   dataset environment variable and configured path.
2333 - Modules/Geant4ConfigureConfigScript.cmake : Call geant4_export_datasets
2334   function before configuration of build/install tree version(s) of
2335   geant4-config so dataset information can be exported to it
2336 - Modules/Geant4BuildProjectConfig.cmake : Call geant4_export_datasets
2337   function before configuration of build/install tree version(s) of
2338   Geant4Config.cmake so dataset information can be exported to the
2339   CMake config script.
2340 - Modules/Geant4InstallData.cmake : Implement new geant4_export_datasets
2341   function. Write list of dataset tuples to an output variable, each
2342   tuple consisting of dataset name, envvar name and path separated by "|"
2343   Use option argument BUILD|INSTALL to use build and install paths for
2344   datasets respectively.
2345 
2346 16th September 2013 - Ben Morgan (cmake-V09-06-24)
2347 - Modules/Geant4LibraryBuildOptions.cmake : Emit fatal error if
2348   GEANT4_BUILD_GRANULAR_LIBS variable is set.
2349 
2350 30th August 2013 - Gunter Folger (cmake-V09-06-23)
2351 - add FindXvfb checking if fake X server Xvfb is installed in system (/usr/bin)
2352     needed by test202.
2353 
2354 22nd August 2013 - Ben Morgan (cmake-V09-06-22)
2355 - Modules/Geant4MakeRules_cxx.cmake : Check for "Apple LLVM" string
2356   in output of regex parse of "clang++ -v" command output. If string is
2357   found, re-parse string to extract LLVM version on which Apple LLVM is
2358   based because this reflects the true LLVM, and hence C++ Standard
2359   support, of the compiler. Fixes problem with being unable to change
2360   C++ Standard with latest Xcode reported by Gabriele Cosmo.
2361 
2362 16th August 2013 - Ivana Hrivnacova (cmake-V09-06-21)
2363 - Suppress error messages from FindAIDA module for informative options.
2364   This fixes problem report #1485.
2365 
2366 23rd July 2013 - Gunter Folger (cmake-V09-06-20)
2367 - Update datasets for NDL to NDL4.4
2368 
2369 23rd July 2013 - Ben Morgan (cmake-V09-06-19)
2370 - Modules/Geant4InstallData.cmake : Remove GEANT4_INSTALL_EXAMPLES option.
2371   Always install example/ directory, move installation scripting into
2372   the top level CMakeLists.txt.
2373 
2374 25th June 2013 - John Apostolakis (cmake-V09-06-18)
2375 - Added FindTBB.cmake module for Intel Threading-Building-Blocks library.
2376 
2377 13th June 2013 - Ben Morgan (cmake-V09-06-17)
2378 - Templates/geant4-config.in : BUGFIX #1477 : Correct output of
2379   --has-feature for clhep feature.
2380 
2381 11th June 2013 - Gunter Folger (cmake-V09-06-16)
2382 - Update md5sum for NDL after removal of data for Z>92
2383 
2384 11th June 2013 - Gunter Folger (cmake-V09-06-15)
2385 - Update datasets for NDL, EMLOW, and RadioactiveDecay
2386 
2387 11th June 2013 - Pere Mato (cmake-V09-06-14)
2388 - Modules/FindROOT.cmake : Minor changes for gccxml dictionary generation.
2389 
2390 28th May 2013 - Ben Morgan (cmake-V09-06-13)
2391 - Modules/Geant4LibraryBuildOptions.cmake : Add option
2392   GEANT4_BUILD_TPMALLOC. It defaults to OFF, and is set to OFF if
2393   GEANT4_BUILD_MULTITHREADED is OFF or the platform is WIN32.
2394   When set, this adds a global compiler definition G4TPMALLOC.
2395   Feature requested by Andrea Dotti.
2396 
2397 22nd May 2013 - Ben Morgan (cmake-V09-06-12)
2398 - Modules/FindROOT.cmake : Remove "/usr/include" from list of
2399   include directories passed to rootcint in root_generate_dictionary
2400   function. Needed to workaround bug in rootcint reported by Andrea
2401   Dotti.
2402 
2403 7th May 2013 - Ben Morgan (cmake-V09-06-11)
2404 - Modules/Geant4OptionalComponents.cmake : Set variables
2405   GEANT4_USE_BUILTIN_{CLHEP,EXPAT,ZLIB} when the builtin versions
2406   of these packages are used. This is to assist the generation of
2407   Geant4Config.cmake using simple expansion variables
2408 - Templates/Geant4Config.cmake.in : Add and document new variables
2409   Geant4_builtin_{clhep,expat,zlib}_FOUND which are expanded to
2410   the value of GEANT4_USE_BUILTIN_{CLHEP,EXPAT,ZLIB} respectively.
2411 - These fixes are applied to support an issue in the nanobeam example,
2412   which requires the full CLHEP, so must check that the builtin
2413   version is not used. Whilst the test build is protected in
2414   tests/ctests/CMakeLists.txt, the nanobeam example uses an
2415   internal Geant4 variable to check for an external CLHEP, and so
2416   always fails.
2417 
2418 6th May 2013 - Gunter Folger (cmake-V09-06-10)
2419 - modification for internal zlib:
2420    ZLIB_INCLUDE_DIRS: added ${PROJECT_BINARY_DIR}/source/externals/zlib to
2421     make generated zconf.h available; as side effect this zconf.h will be
2422     installed.
2423 
2424 22nd April 2013 - Gabriele Cosmo (cmake-V09-06-09)
2425 - Fixed comments in scripts Geant4MakeRules_cxx.cmake and
2426   Geant4LibraryBuildOptions.cmake...
2427 
2428 15th April 2013 - Ben Morgan (cmake-V09-06-08)
2429 - Modules/Geant4MakeRules_cxx.cmake : Use -pthread flag for clang and
2430   gcc compilers in preference to -lpthread. Remove -lpthread from
2431   exe linker flags as the compiler flag should get passed to this.
2432 - Modules/Geant4LibraryBuildOptions.cmake : Remove addition of MT flags
2433   from exe linker flags, as main CXX flags should handle this.
2434 
2435 9th April 2013 - Andrea Dotti
2436 - Adding -lpthread to GCC linker flags if GEANT4_BUILD_MULTITHREADED is on.
2437 
2438 25th March 2013 - Ben Morgan
2439 - Modules/Geant4ToolchainBackwardCompatibility.cmake : BUGFIX #1399
2440   Applied Mike's patch for selflocation to C-shell template
2441   generation.
2442 
2443 25th March 2013 - Ben Morgan (cmake-V09-06-07)
2444 - Modules/Geant4OptionalComponents.cmake : BUGFIX #1322 Noted that
2445   FindZLIB in CMake < 2.8 does not set the ZLIB_INCLUDE_DIRS variable,
2446   so set it manually to ensure uniform behaviour in ZLIB clients.
2447 
2448 25th March 2013 - Ben Morgan
2449 - Modules/Geant4OptionalComponents.cmake : BUGFIX #1322 Enable option
2450   GEANT4_USE_SYSTEM_ZLIB to locate system zlib if requested and otherwise
2451   use internal version. This will co-work with externals-V09-06-00.
2452   It *breaks* the analysis module, and HepRep module requires adjustment
2453   as reported in above bug report to ensure zlib is enabled.
2454 
2455 25th March 2013 - Ben Morgan (cmake-V09-06-06)
2456 - Modules/Geant4MacroLibraryTargets.cmake : BUGFIX #1353 : Add a build
2457   mode dependent compiler definition to the build of each Geant4 target
2458   in the form GEANT4_DEVELOPER_<CONFIG> where <CONFIG> is the uppercased
2459   build mode as determined from CMAKE_CONFIGURATION_TYPES or
2460   CMAKE_BUILD_TYPE as appropriate for the generator.
2461   Checked on Linux and Mac with Make/Xcode generators, tagging for testing
2462 
2463 1st March 2013 - Ben Morgan (cmake-V09-06-05)
2464 - Templates/Geant4Config.cmake.in : Add 'multithreaded' component to
2465   indicate if Geant4 was built with multithreading. If it is requested,
2466   and the build is multithreaded, append the -DG4MULTITHREADED compile
2467   definition to GEANT4_DEFINITIONS. Note clear this is the best option
2468   yet, but awaits testing and example builds.
2469 - Modules/Geant4LibraryBuildOptions.cmake : Add option
2470   GEANT4_BUILD_MULTITHREADED which when ON, adds the compiler definition
2471   -DG4MULTITHREADED globally, and appends GEANT4_MULTITHREADED_CXX_FLAGS
2472   to CMAKE_CXX_FLAGS. Set to OFF by default as requested for testing.
2473 - Modules/Geant4MakeRules_cxx.cmake : For GNU compiler only (which may also
2474   apply to clang compiler with CMake 2.8.2 and earlier), set a new variable
2475   GEANT4_MULTITHREADED_CXX_FLAGS to hold any extra flags needed by
2476   multithreaded build, but would conflict with sequential. Not clear
2477   this separation is needed yet, but this aims for safety to allow testing
2478   of MT builds without interfering with other work.
2479 
2480 21st February 2013 - Gunter Folger (cmake-V09-06-04)
2481 - Updated dataset G4NEUTRONXS 1.3 ( previous was not yet released)
2482 
2483 13th February 2013 - Gunter Folger (cmake-V09-06-03)
2484 - Switch to G4NEUTRONXS 1.3
2485 
2486 12th February 2013 - Ben Morgan (cmake-V09-06-02)
2487 - Modules/Geant4MakeRules_cxx.cmake : Revert default CXX flags for GNU
2488   (and clang) compilers to non-MT versions. Leave MT flag set as commented
2489   out line for future reference, although MT will be optional.
2490 
2491 11th February 2013 -  Pere Mato  (cmake-V09-06-01)
2492 - Modules/Geant4TestDriver.cmake : increased the timeout safety to 120
2493   seconds. This is to avoid having a timeout in a test without having
2494   the time to write the output.
2495 
2496 18th December 2012 -  Ben Morgan       (cmake-V09-06-00)
2497 - Templates/UseGeant4_internal.cmake : Tidy layout
2498 - Templates/UseGeant4.cmake : Tidy layout and remove obsolete
2499   geant4_collate_application_sources macro.
2500 - Templates/Geant4ConfigVersion.cmake.in : Tidy layout
2501 - Templates/Geant4Config.cmake.in : Tidy layout
2502 - Modules/ResolveCompilerPaths.cmake : Tidy layout and convert macros to
2503   consistent use of lowercase naming.
2504 - Modules/MacroEnsureVersion.cmake : Tidy layout and convert macros to
2505   consistent use of lowercase naming.
2506 - Modules/Geant4ValidateSources.cmake : Tidy up layout/commenting
2507 - Modules/Geant4TestDriver.cmake : Tidy up layout/commenting
2508 - Modules/Geant4OptionalComponents.cmake : Tidy up layout.
2509 - Modules/Geant4MakeRules_fortran.cmake : Remove obsolete file.
2510 - Modules/Geant4MacroDefineModule.cmake : Tidy up layout and add basic
2511   documentation placeholders for main macros.
2512 - Modules/Geant4LibraryBuildOptions.cmake : Tidy up layout
2513 - Modules/Geant4InstallDirs.cmake : Tidy up layout
2514 - Modules/Geant4ConfigureConfigScript.cmake : Tidy up layout
2515 - Modules/Geant4CTest.cmake : Tidy up layout
2516 - Modules/Geant4CPackBase.cmake : Tidy up layout
2517 - Modules/Geant4BuildProjectConfig.cmake : Tidy up layout
2518 - Modules/Geant4BuildModes.cmake : Tidy up commenting and layout.
2519 - Modules/Geant4MacroUtilities.cmake : Functionize macros where possible,
2520   add include guard and standardize on lower case for function and internal
2521   variable names.
2522 - INSTALL.g4cmake : Remove this now obsolete file
2523 
2524 27th November 2012 -  Ben Morgan       (cmake-V09-05-79)
2525 - Templates/geant4-config.in : Correct listing of G3toG4 library,
2526   replacing "-lG3ToG4" with "-lG3toG4"
2527 
2528 27th November 2012 -  Gabriele Cosmo   (cmake-V09-05-78)
2529 - Added "-Wno-variadic-macros -Wshadow" compilation options g++ and clang.
2530 - Extended description in Geant4CPackBase.cmake script.
2531 
2532 26th November 2012 -  Gunter Folger    (cmake-V09-05-77)
2533 - Switch to PhotonEvaporation 2.3
2534 
2535 23rd November 2012 -  Gunter Folger    (cmake-V09-05-76)
2536 - Switch to G4RadioactiveDecay 3.6
2537 
2538 21st November 2012 - Ben Morgan        (cmake-V09-05-75)
2539 - Templates/geant4_validate_sources.cmake.in : Add "T1xxChannel.cc"
2540   and "XXChannel.cc" names to false positives. These names appear
2541   in processes/hadronic/models/cascade/cascade/sources.cmake as
2542   comments, but the current regex picks them up. This is a temporary
2543   fix as longer term solution is to update regex to not match
2544   comments!
2545 
2546 21st November 2012 - Ben Morgan        (cmake-V09-05-74)
2547 - Templates/Geant4Config.cmake.in : Fix setting of Geant4 DEFINITIONS
2548   INCLUDE_DIRS and LIBRARIES so that multiple calls to find_package
2549   do not overwrite previosu settings. Multiple calls now copy,
2550   insert or append to these variables as needed. Duplicates
2551   are removed from the final list.
2552 - Templates/UseGeant4.cmake : Tidy up documentation and mark
2553   macros as deprecated.
2554 
2555 20th November 2012 - Ivana Hrivnacova  (cmake-V09-05-73)
2556 - Fixed FindHepMC.cmake (GenEvent.h file extension was missing)
2557 
2558 16th November 2012 - Ben Morgan        (cmake-V09-05-72)
2559 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Improve
2560   description of workaround for sourcing Cshell scripts
2561   non-interactively, as reported in HyperNews:
2562   http://hypernews.slac.stanford.edu/HyperNews/geant4/get/installconfig/1513/1.html
2563 
2564 15th November 2012 - Ben Morgan        (cmake-V09-05-71)
2565 [BUGFIX #1387]
2566 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Correct shell
2567   variable name in export of commands to scripts.
2568 
2569 14th November 2012 - Ben Morgan        (cmake-V09-05-70)
2570 - Modules/Geant4BuildProjectConfig.cmake : Add CMakeMacroParseArguments
2571   to list of modules installed as it is needed to support FindROOT
2572   on CMake < 2.8.
2573 
2574 
2575 14th November 2012 -  Gunter Folger    (cmake-V09-05-69)
2576 -  switch to G4NDL 4.2
2577    (excluding changes made past tag cmake-V09-05-68)
2578 
2579 13th November 2012 - Ben Morgan
2580 [BUGFIX #1290, #1328]
2581 - Templates/geant4-config.in : Add support for G3ToG4 library. Add
2582   CLHEP library to link line using output from clhep-config.
2583   Replace explicit -I@VAR@ flags with pure @VAR@ variables for
2584   each include path that may be filtered out if it is in the
2585   compiler's default search path.
2586 - Modules/Geant4ConfigureConfigScript.cmake : Set export variable
2587   for existence of G3ToG4. Implement function to return list of
2588   default search paths for GNU, Clang and Intel compilers.
2589   Create list before configuring geant4-config, and filter out
2590   any header paths that we need to export but that appear in this list
2591   before creating export variables.
2592 
2593 13th November 2012 - Ben Morgan       (cmake-V09-05-68)
2594 - Modules/Geant4BuildProjectConfig.cmake : Copy FindXXX modules required
2595   by examples from source to build tree, and install them into a
2596   Modules subdirectory of GEANT4_CMAKE_DIR.
2597 - Templates/UseGeant4.cmake : Append path for FindXXX modules required
2598   by examples to CMAKE_MODULE_PATH. This is transparent across both
2599   the build and install trees.
2600 
2601 
2602 12th November 2012 - Ben Morgan       (cmake-V09-05-67)
2603 - Modules/Geant4MakeRules_cxx.cmake : Add -Qunused-arguments flag
2604   to compiler flags when running Clang. This is to finally suppress
2605   warnings when building tests, which CTest cannot filter out.
2606 
2607 
2608 9th November 2012 - Ben Morgan        (cmake-V09-05-66)
2609 - Resubmission of cmake-V09-05-64+cmake-V09-05-65. Former was
2610   rejected after clang warnings, which are now ignored by the
2611   CTest system. Latter passed Continuous builds without issue and
2612   only affects Windows systems.
2613 
2614 
2615 8th November 2012 - Ben Morgan        (cmake-V09-05-65)
2616 - Modules/Geant4MakeRules_cxx.cmake : Remove MD flags from core flags.
2617   Add MD flag to Release style build modes (RELEASE, MINSIZEREL and
2618   RELWITHDEBINFO). Add MDd flag to Debug style build modes (DEBUG,
2619   TESTRELEASE, MAINTAINER).
2620   This follows discussions originated from HyperNews:
2621   http://hypernews.slac.stanford.edu:5090/HyperNews/geant4/get/installconfig/1436/1.html
2622 
2623 
2624 7th November 2012 - Ben Morgan        (cmake-V09-05-64)
2625 - [BUGFIX #1351]
2626 - Geant4MacroUtilities.cmake : Implement new functions set_ifnot
2627   and enum_option
2628 - Geant4MakeRules_cxx.cmake : Implement C++ Standard detection and
2629   flag configuration for GNU, Clang and Intel compilers.
2630 - Geant4LibraryBuildOptions.cmake : Add user option to select C++
2631   Standard to build against, it the compiler supports this. The
2632   default is always c++98/'ansi' (C++98 plus the '03 addenda).
2633 
2634 
2635 5th November 2012 - Ben Morgan        (cmake-V09-05-63)
2636 - Modules/Geant4InterfaceOptions.cmake: Remove requirement to co-work
2637   with internal tag openinventor-V09-05-16.
2638 
2639 
2640 5th November 2012 - Ben Morgan        (cmake-V09-05-62)
2641 - Modules/Geant4InterfaceOptions.cmake: Check that X11 Xpm library
2642   has been found when Inventor driver is activated, and FATAL_ERROR
2643   is it is not located.
2644 
2645 
2646 2nd November 2012 - Ben Morgan        (cmake-V09-05-61)
2647 - [BUGFIX #1285]
2648 - Modules/Geant4InstallData.cmake: Implement new
2649   API for managing data to allow reuse of existing datasets and
2650   not install data at build time if required.
2651 - Modules/Geant4DatasetDefinitions.cmake: Migrate dataset definitions
2652   to separate file to ease update and patch cycle.
2653 - Modules/Geant4ToolchainBackwardCompatibility.cmake: Migrate export
2654   of dataset environment variables/paths to use new dataset API. Avoids
2655   hardcoding of dataset names, allowing for easy expansion/contraction
2656   in the future.
2657 - Modules/Geant4CTest.cmake: Migrate setting of GEANT4_TEST_ENVIRONMENT
2658   to use new dataset API for export of environment variable names and
2659   values.
2660 - Templates/geant4make-skeleton.in: Migrate expansion variables for
2661   datasets to single 'code block' variable.
2662 - Templates/geant4-env-skeleton.in: Migrate expansion variables for
2663   datasets to single 'code block' variable.
2664 - [PERFORMANCE]: Tidy up module inclusions to provide minor, but
2665   noticeable, speed up in CMake configuration time.
2666 - Modules/Geant4MacroDefineModule.cmake: Use 'header guard' variable to
2667   prevent module being loaded multiple times.
2668 - Modules/Geant4MacroLibraryTargets.cmake: Use 'header guard' variable to
2669   prevent module being loaded multiple times.
2670 - Modules/Geant4MacroUtilities.cmake: Include Geant4MacroDefineModule
2671   and Geant4MacroLibraryTargets so these are included at top level and
2672   hence are not re-parsed by CMake if they are included in lower scopes.
2673 - [CLEANUP]
2674 - Templates/geant4-env.csh.in: Remove obsolete file.
2675 - Templates/geant4-env.sh.in: Remove obsolete file.
2676 
2677 
2678 31st October 2012 - Ben Morgan        (cmake-V09-05-60)
2679 - Modules/Geant4InstallData.cmake: Remove obsolete ABLA dataset.
2680 - Modules/Geant4ToolchainBackwardCompatibility.cmake: Remove
2681   setting of ABLA environment export variables to overcome error
2682   reported by Gunter Folger and Hisaya Kurashige.
2683 - Modules/Geant4CTest.cmake: Remove obsolete ABLA dataset.
2684 - Template/geant4-env-skeleton.in: Remove ABLA export variables
2685 - Template/geant4make-skeleton.in: Remove ABLA export variables
2686 
2687 
2688 31th October 2012 -  Gunter Folger    (cmake-V09-05-59)
2689 -  bring settings for ABLA back in , used elsewhere, and caused
2690     configure to badly fail.
2691 
2692 30th October 2012 -  Gunter Folger    (cmake-V09-05-58)
2693 - Modules/Geant4InstallData.cmake: Revert to use G4EMLOW.6.32
2694     and delete settings for ABLA, not needed per Davide M.
2695 
2696 30th October 2012 - John Apostolakis  (cmake-V09-05-57)
2697 - Modules/Geant4InstallData.cmake: Revert to use G4EMLOW.6.31
2698     to overcome problems in Continuous build of G4 in Cdash
2699 
2700 30th October 2012 - Gunter Folger     (cmake-V09-05-56)
2701 - Modules/Geant4InstallData.cmake: Use G4EMLOW.6.32
2702 
2703 25th October 2012 - Pere Mato (cmake-V09-05-55)
2704 - Templates/Geant4CTest.cmake: corrected mistake with GEANT4_DATA_DIR
2705 
2706 19th October 2012 - Ben Morgan (cmake-V09-05-54)
2707 - Templates/Geant4Config.cmake.in : Add g3tog4 component to detect
2708   and configure G3toG4 library if required.
2709 - Modules/Geant4OptionalComponents.cmake : Improve documentation of
2710   GEANT4_USE_G3TOG4 option.
2711 - Modules/Geant4CTest.cmake : Remove un-needed message() of dataset
2712   configuration.
2713 
2714 18th October 2012 - Gunter Folger     (cmake-V09-05-53)
2715 - Modules/Geant4InstallData.cmake: Use G4EMLOW.6.31
2716 
2717 16th October 2012 Ben Morgan (cmake-V09-05-52)
2718 - Modules/Geant4InstallData.cmake : Update version and MD5 of
2719   G4NEUTRONXS for 1.2 release, add new G4SAIDDATA dataset,
2720   version 1.1
2721 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Export
2722   new G4SAIDDATA dataset to scripts.
2723 - Modules/Geant4CTest.cmake : Add new G4SAIDDATA dataset to
2724   CTest environment, and remove obsolete G4ELASTICDATA and
2725   NeutronHPCrossSections environment variables.
2726 - Templates/geant4-env-skeleton.in : Add expansion variable for
2727   export of new G4SAIDDATA dataset.
2728 - Templates/geant4make-skeleton.in : Add expansion variable for
2729   export of new G4SAIDDATA dataset.
2730 
2731 
2732 12th October 2012 Ben Morgan (cmake-V09-05-51)
2733 - Modules/FindInventor.cmake: BUGFIX #1320: Remove find of Inventor
2734   debug libraries and do not use the "optimized;debug" technique.
2735   Add find for of SoXt headers.
2736 - Modules/Geant4InterfaceOptions.cmake: BUGFIX #1320: Add SoXt headers
2737   to INVENTOR_INCLUDE_DIR when on UNIX, and FATAL_ERROR if SoXt not
2738   located. Add X11 Xt library when SoXt is used on Mac OS X
2739 
2740 9th October 2012 Pere Mato (cmake-V09-05-50)
2741 - Modules/Geant4CTest.cmake: minor changes to avoid user traps
2742 
2743 4th October 2012 - Gunter Folger     (cmake-V09-05-49)
2744 - Modules/Geant4InstallData.cmake: Use G4EMLOW.6.30
2745 
2746 26th September 2012 Ivana Hrivnacova (cmake-V09-05-48)
2747 - Adding FindPythia6 module.
2748 - Modules/FindHepMC.cmake: support also HEPMC_DIR environment variable (which
2749   is used in GNUmake build); added HEPMC_FIO_LIBRARIES
2750 
2751 25th September 2012 Ivana Hrivnacova (cmake-V09-05-47)
2752 - Adding FindAIDA module.
2753 
2754 24th September - Pere Mato (cmake-V09-05-46)
2755 - Modules/Geant4TestDriver.cmake : Use the argument TIM=<timeout> to set a shorter timeout than CTest
2756 - Templates/UseGeant4_internal.cmake : Generate TIM argument from test TIMEOUT property
2757 
2758 24th September - Ben Morgan (cmake-V09-05-45)
2759 - Modules/ResolveCompilerPaths.cmake : Remove extraneous quotes around
2760   resolved include paths (patch from Fabian Kislat, BUGFIX #1357)
2761 
2762 19th September - Ben Morgan (cmake-V09-05-44)
2763 - Modules/Geant4MakeRules_cxx.cmake : Remove optimization flags from
2764   TestRelease build mode flags on all platforms (BUGFIX #1263).
2765 - Modules/Geant4BuildModes.cmake : Remove obsolete "TestReleaseDebug" build
2766   mode (BUGFIX #1263)
2767 
2768 17th September - Ben Morgan (cmake-V09-05-43)
2769 - Modules/Geant4InstallData.cmake : Update G4EMLOW dataset to version 6.29
2770   and update MD5 sum.
2771 
2772 30th August 2012 Pere Mato (cmake-V09-05-42)
2773 - Modules/Geant4CTest.cmake : Added Unit Tests and some re-organization of the module
2774 - Modules/Geant4MacroUtilities.cmake : Moved macro GEANT4_LATEST_VERSION to this module
2775 
2776 29th August 2012 Witek Pokorski (cmake-V09-05-41)
2777 - Adding FindHepMC module.
2778 
2779 28th August 2012 - Pere Mato
2780 - Modules/Geant4MacroUtilities.cmake: Defined new macro GEANT4_ADD_UNIT_TESTS
2781 - Modules/Geant4LibraryBuildOptions.cmake: Added new option GEANT4_BUILD_TESTS
2782 
2783 28th August 2012 - Gunter Folger (cmake-V09-05-39)
2784 - Modules/Geant4InstallData.cmake: Use RadioactiveDecay3.5
2785 
2786 16th July 2012 - Ben Morgan (cmake-V09-05-38)
2787 - Use correct tag name. Update tag number to ensure numerical sequence.
2788 
2789 16th July 2012 - Ben Morgan (cmake-V09-05-37)
2790 - Templates/geant4_validate_sources.cmake.in : Remove use of STATUS in
2791   error messages so all errors go to stderr.
2792 
2793 10th July 2012 - Ben Morgan (cmake-V09-05-36)
2794 - Modules/Geant4MakeRules_cxx.cmake : Add preliminary support for Clang
2795   detection (CMake > 2.8.1)
2796 - Modules/Geant4/LibraryBuildOptions.cmake : Add preliminary support for
2797   Clang detection (CMake > 2.8.1)
2798 
2799 10th July 2012 - Ben Morgan
2800 - Modules/FindStatTest.cmake : Minor formatting/layout updates.
2801 
2802 10th July 2012 - Andrea Dotti (cmake-V09-05-35)
2803 - Modules/FindStatTest.cmake : First commit of module to find and setup
2804   utility program StatTest for automatic regression testing of Geant4
2805   ctest outputs
2806 
2807 27th June 2012 - Pere Mato  (cmake-V09-05-34)
2808 - Modules/Geant4TestDriver.cmake : Added TST paramenter to obtain the test name to produce
2809                                    <test>.out and <test>.err
2810 - Templates/UseGeant4_internal.cmake: mofdified to pass the test name
2811 
2812 22nd June 2012 - Pere Mato  (cmake-V09-05-33)
2813 - Modules/Geant4TestDriver.cmake : Fixed the problem that <test> should be only the
2814   file name and not the full path of the executable.
2815 
2816 22nd June 2012 - Pere Mato  (cmake-V09-05-32)
2817 - Modules/Geant4TestDriver.cmake : adapted to create <test>.out and <test>.err files
2818   with stdout and stderr each time a test is run in the current directory.
2819 
2820 21th June 2012 - Gunter Folger  (cmake-V09-05-31)
2821 - After update of G4EMLOW6.27, new tar needs updated md5sum.
2822 
2823 21th June 2012 - Gunter Folger  (cmake-V09-05-30)
2824 - After recreating G4NDL4.1, update md5sum.
2825 
2826 20th June 2012 - Gunter Folger  (cmake-V09-05-29)
2827 - Modules/Geant4InstallData.cmake: Use G4NDL 4.1
2828 
2829 15th June 2012 - Gabriele Cosmo (cmake-V09-05-28)
2830 - Updated tags to 9.6.0 for 9.6-beta.
2831 
2832 14th June 2012 - Ben Morgan (cmake-V09-05-27)
2833 - Modules/Geant4OptionalComponents.cmake : Search for system expat by
2834   default on non-Win32. We prefer the system library on these platforms
2835   due to compilation warnings in the current internal version of expat.
2836 
2837 13th June 2012 - Ben Morgan (cmake-V09-05-26)
2838 - Modules/Geant4OptionalComponents.cmake : Allow choice between internal
2839   and system expat library on non-Win32 platforms, default to use
2840   internal. Choosing system expat requires it to be found.
2841 
2842 12th June 2012 - Ben Morgan (cmake-V09-05-25)
2843 - Modules/Geant4ToolchainBackwardCompatibility.cmake: Quote paths used
2844   in execute_process calls run at install time. This fixes a problem
2845   reported by Joseph Perl on Windows, when a space appears in the install
2846   prefix.
2847 
2848 8th June, 2012 - Gunter Folger (cmake-V09-05-24)
2849 - Modules/Geant4OptionalComponents.cmake: require CLHEP 2.1.2.3
2850 
2851 4th June, 2012 - Gunter Folger (cmake-V09-05-23)
2852 - Modules/Geant4InstallData.cmake: use G4EMLOW.6.27
2853 
2854 1st June, 2012 - Ben Morgan (cmake-V09-05-22)
2855 - Modules/Geant4InstallData.cmake : Complete rewrite of data installation
2856   with support for CMake >= 2.6.4 and custom physics data install location.
2857   Downloaded data bundles are also verified using MD5 hashes.
2858 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Location of data
2859   updated to use new paths from Geant4InstallData.cmake.
2860 
2861 May 31st, 2012 - Pere Mato (cmake-V09-05-21)
2862 - Modules/Geant4BuildProjectConfig.cmake : Transmit CMAKE_EXE_LINKER_FLAGS as Geant4_EXE_LINKER_FLAGS
2863 - Templates/UseGeant4.cmake : Set CMAKE_EXE_LINKER_FLAGS as Geant4_EXE_LINKER_FLAGS
2864   This is to ensure that the definition is of CMAKE_EXE_LINKER_FLAGS is used by projects using Geant4
2865 
2866 May 30th, 2012 - Pere Mato (cmake-V09-05-20)
2867 - Modules/Geant4MakeRules_cxx.cmake : Added -limf library in CMAKE_EXE_LINKER_FLAGS for icc compiler.
2868   This is to avoid warnings of the type "warning: feupdateenv is not implemented and will always fail"
2869 
2870 May 30th, 2012 - Pere Mato (cmake-V09-05-19)
2871 - Templates/UseGeant4_internal.cmake : Added new arguments WORKING_DIRECTORY and LABELS to GEANT4_ADD_TEST()
2872   This allows to assign tests to specific test slots (Nightly, Continuous, PhyscisChecks). If no label is specified it is
2873   given the Nightly label.
2874 
2875 May 29th, 2012 - Ben Morgan (cmake-V09-05-18)
2876 - Modules/Geant4ToolchainBackwardCompatibility.cmake : [BUGFIX #1268] Enable use of C-shell scripts inside other scripts.
2877  This follows the pattern used in ROOT's cshell scripts, which works at
2878  the cost of the user having to supply extra information to the source
2879  command/script.
2880 - Templates/geant4-env-skeleton.in : [BUGFIX #1268] Protect changes to the environment if self location fails.
2881 - Templates/geant4make-skeleton.in : [BUGFIX #1268] Protect changes to the environment if self location fails.
2882 
2883 
2884 May 9th, 2012 - Pere Mato (cmake-V09-05-17)
2885 - Templates/UseGeant4_internal.cmake : By default tests building anything will fail in case of warnings.
2886   This is wanted by G. Folger.
2887 
2888 May 8th, 2012 - Pere Mato (cmake-V09-05-16)
2889 - Templates/UseGeant4_internal.cmake : Added PASSREGEX and FAILREGEX arguments to GEANT4_ADD_TEST()
2890 
2891 April 30th, 2012 - Ben Morgan (cmake-V09-05-15)
2892 - Modules/Geant4InstallData.cmake : GEANT4_INSTALL_DATA set as an INTERNAL
2893   variable when deactivated on CMake < 2.8. Ensures it doesn't show in GUI.
2894 - Modules/Geant4LibraryBuildOptions.cmake : Force deactivation of
2895   GEANT4_ENABLE_TESTING on CMake < 2.8 due to compatibility issues.
2896 
2897 April 24th, 2012 - Ben Morgan (cmake-V09-05-14)
2898 - Modules/Geant4InstallData.cmake : Force GEANT4_INSTALL_DATA to OFF if
2899   CMake < 2.8.0 is used, and warn user if it has been set. This prevents the
2900   problem reported on HyperNews:
2901   http://hypernews.slac.stanford.edu/HyperNews/geant4/get/visualization/612/3/1/1/1.html
2902 
2903 April 20th, 2012 - Ben Morgan (cmake-V09-05-13)
2904 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Fixed Bug #1306, using
2905   BASH_VERSION instead of non-POSIX compliant check.
2906 
2907 April 12th, 2012 - Pere Mato (cmake-V09-05-12)
2908 - Fixed bug in Modules/Geant4CTest.cmake to locate newest data library version
2909 
2910 April 12th, 2012 - Gunter Folger (cmake-V09-05-11)
2911 - Switch to G4EMLOW6.26
2912 
2913 April 5th, 2012 - Gunter Folger  (cmake-V09-05-10)
2914 - Switch to G4EMLOW6.25
2915 
2916 April 3rd, 2012 - Ben Morgan (cmake-V09-05-09)
2917 - Modules/Geant4InstallData.cmake : Increased default timeout to 1500s.
2918 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Redirect all cd commands
2919   to /dev/null as some cd implementations report change to stdout.
2920 
2921 March 30th, 2012 - Ben Morgan (cmake-V09-05-08)
2922 - Modules/Geant4InstallData.cmake : Add GEANT4_INSTALL_DATA_TIMEOUT cache
2923   variable to allow users to increase the download timeout on slow connections.
2924   Only available on CMake 2.8.1 and above.
2925 
2926 March 22nd, 2012 - Pere Mato (cmake-V09-05-07)
2927 - genwindef/LibSymbolInfo.cpp : filter the symbols giving problems when building G4clhep for Win64 (second attempt)
2928 
2929 March 22nd, 2012 - Pere Mato (cmake-V09-05-06)
2930 - genwindef/LibSymbolInfo.cpp : filter the symbols giving problems when building G4clhep for Win64
2931 
2932 March 7th, 2012 - Pere Mato (cmake-V09-05-05)
2933 - Modules/Geant4MakeRules_cxx.cmake : added link flag "-i-dynamic" to avoid link ICC warnings of the sort
2934                                       "warning: feupdateenv is not implemented and will always fail"
2935 
2936 March 6th, 2012 - Pere Mato (cmake-V09-05-04)
2937 - Modules/Geant4LibraryBuildOptions.cmake : matching "icc" in addition to "icpc" to detect Intel compiler
2938 - Modules/Geant4MakeRules_cxx.cmake : change ICC option from -Wnon-virtual-dtor to -Wno-non-virtual-dtor
2939 
2940 February 10th, 2012 - Pere Mato (cmake-V09-05-03)
2941 - Added function REFLEX_GENERATE_DICTIONARY() in FindROOT.cmake
2942 
2943 January 25th, 2012 - Gunter Folger (cmake-V09-05-02)
2944 - Switch to G4EMLOW6.24
2945 
2946 December 13th 2011 - P. mato (cmake-V09-05-01)
2947 - Templates/UseGeant4_internal.cmake: Avoid prepending configuration tag for existing commands
2948 
2949 December 6th 2011 - B.Morgan (cmake-V09-05-00)
2950 - Modules/Geant4ToolchainBackwardCompatibility.cmake [BUGFIX #1265]: Added
2951   setting of expansion variable needed to prepend path with G4WORKDIR path.
2952 - Templates/geant4make-skeleton.in [BUGFIX #1265] : Added expansion variable for
2953   path setup to G4WORKDIR directory for executables.
2954 - Templates/geant4-env-skeleton.in [BUGFIX #1265] : Added needed '@' symbol
2955   to end of GEANT4_TC_SHELL_PROGRAM used as shbang.
2956 
2957 
2958 November 30th 2011 - B.Morgan (cmake-V09-04-41)
2959 - Modules/Geant4LibraryBuildOptions.cmake : Commented out
2960   GEANT4_BUILD_GRANULAR_LIBS option to restrict these builds for 9.5. Current
2961   granular build is not tested and broken in several places, so we want to
2962   prevent its use for now.
2963 
2964 November 29th 2011 - B.Morgan (cmake-V09-04-40)
2965 - Modules/Geant4InterfaceOptions.cmake : Added ability for Mac to concurrently
2966   build mixed Qt and X11 OpenGL driver. Xt library adde to X11 libraries, but
2967   only on Mac when Xm is built. Linking Xt on Linux causes runtime errors.
2968 - Templates Geant4Config.cmake.in : Fixed bug that prevented OpenInventor
2969   library being appended to output when vis_all was set.
2970 
2971 
2972 November 24th 2011 - B.Morgan (cmake-V09-04-39)
2973 - Modules/Geant4InstallData.cmake : Updated data library versions
2974   G4NDL -> 4.0
2975   RadioactiveDecay - > 3.4
2976   Added GEANT4_ADD_FEATURE reporting for data and example code install.
2977 
2978 
2979 November 23rd 2011 - B.Morgan (cmake-V09-04-38)
2980 - Modules/Geant4LibraryBuildOptions.cmake : Marked GEANT4_ENABLE_TESTING and
2981   GEANT4_BUILD_EXAMPLES options as advanced because these are for developers and
2982   system testing only.
2983 - Templates/geant4-env-skeleton.in (NEWFILE) : New shell skeleton file for core
2984   environment setup of geant4, just PATH, (DY)LD_LIBRARY_PATH and data libraries
2985   if installed.
2986 - Templates/geant4-environment-skeleton.in : RENAMED -> geant4make-skeleton.in
2987 - Templates/geant4-environment-skeleton.in : Added expansion variable to handle
2988   G4WORKDIR setup. Added expansion variables for data library setup.
2989   Added expansion variable to provide a self location block.
2990 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Added a function to
2991   conditional set environment variables. Added setup of G4WORKDIR.
2992   Added setup of data library variables if they've been installed.
2993   Added self location capability so that scripts can find themselves and
2994   consequently locate library and include directories relative to the determined
2995   location.
2996   Moved installation of of backwared compatible toolchain files to a directory
2997   named 'geant4make' under the main data directory. This helps to partition the
2998   setup script and gmk files into their own, isolated location.
2999   Configure new 'geant4.(c)sh' setup script from geant4-env-skeleton.in file.
3000 - Modules/Geant4InstallData.cmake : Set name of list holding dataset information
3001   to GEANT4_DATASETS just to mark it as usable elsewhere. Added environment
3002   variable name to end of dataset information strings to help in setting them up
3003   in configuration of shell scripts.
3004   Marked GEANT4_INSTALL_EXAMPLES option as advanced.
3005 
3006 
3007 November 22nd 2011 - B.Morgan (cmake-V09-04-37)
3008 - Templates/Geant4Config.cmake : Added 'ui_all' and 'vis_all' components to
3009   allow simple selection of all available UI and Vis components.
3010 
3011 
3012 November 18th 2011 - P.Mato (cmake-V09-04-36)
3013 - Modules/Geant4CTest.cmake : Added some protection if GEANT4_DATA_DIR not defined
3014 
3015 November 16th 2011 - B.Morgan (cmake-V09-04-35)
3016 - Templates/geant4_validate_sources.cmake.in : Added two VRML icc files
3017   to false positive list. These are in VRML's src/ directory for internal
3018   use only.
3019 
3020 November 16th 2011 - G.Folger (cmake-V09-04-34)
3021 - Modules/Geant4InstallData.cmake: correct data file name
3022 
3023 November 15th 2011 - G.Folger (cmake-V09-04-33)
3024 - Modules/Geant4InstallData.cmake: update data libraries version for 9.5
3025 
3026 November 8th 2011 - B.Morgan (cmake-V09-04-32)
3027 - Templates/Geant4Config.cmake.in [BUGFIX #1196, #1261]: Added support for
3028   G4OpenInventor as a component, named 'vis_openinventor'. Prtected inclusion of
3029   Geant4LibraryDepends file by test on a variable Geant4_LIBDEPS_LOADED so that
3030   multiple calls to the config file from find_package are possible. This allows
3031   option selecting of the components. NB Full Inventor build requires tag
3032   openinventor-V09-04-02).
3033 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Added support for
3034   configuration of OpenInventor environment variables in
3035   geant4-environment-setup scripts.
3036 - Templates/geant4-environment-skeleton.in : Added support for OpenInventor
3037   environment variables needed by old Makefile toolchain. At present, OIVHOME is
3038   not set, as the Geant4 public interface should not need this.
3039 - Modules/Geant4ConfigureConfigScript.cmake : Added support for configuration
3040   of OpenInventor feature.
3041 - Templates/geant4-config.in : Added support for OpenInventor feature.
3042 - Modules/Geant4InterfaceOptions.cmake : Added support for OpenInventor, with
3043   new CMake option GEANT4_USE_INVENTOR to enable build. On Unix platforms, X11
3044   and Xm are also searched for as these are used in Geant4's Inventor module.
3045 - Modules/FindInventor.cmake (NEWFILE) : Find module for Inventor, adapted from
3046   post on CMake mailing list by Jan Peciva. Tested against Coin3d
3047   implementation.
3048 
3049 
3050 November 4th 2011 - B.Morgan
3051 - Modules/Geant4ConfigureConfigScript.cmake : Added setup of installed script
3052   to use self location functionality in geant4-config when installation is
3053   relocatable.
3054 - Templates/geant4-config.in : Added capability for script to self locate
3055   itself. The technique is to fully resolve any softlinks to the script file
3056   itself using readlink, but with workarounds because the '-f' option to
3057   readlink is not available on all platforms. No attempt is made to resolve
3058   any softlinks in the path elements or to replace occurrence of '.' or '..'.
3059   However, the algorithm has been tested in several softlinking situations
3060   and should cover everything but real corner cases... The result of the
3061   resolution is the diectory in which the script resides. This can be used
3062   later in the script as necessary.
3063 
3064 
3065 November 2nd 2011 - B.Morgan (cmake-V09-04-31)
3066 - Modules/Geant4InstallData.cmake : Bumped version of G4EMLOW library to be
3067   installed from 6.22 -> 6.23.
3068 
3069 
3070 November 2nd 2011 - B.Morgan (cmake-V09-04-30)
3071 - Modules/Geant4BuildModes.cmake : Reverted file to revision 51604
3072   (cmake-V04-04-28 tag) which removes the TestReleaseDebug mode.
3073 - Modules/Geant4MakeRules_cxx.cmake : Reverted file to revision 52696
3074   (cmake-V09-04-28 tag) which removes the TestReleaseDebug mode. This reverts
3075   TestRelease to having platform dependent flags, specifically there is no
3076   optimization on Apple.
3077 - Modules/geant4-config.in : Fixed typo error that used incorrect name for
3078   CMake supplied variable Geant4_VERSION, preventing correct expansion.
3079 - Modules/Geant4ConfigureConfigScript.cmake : Tidied up indenting to standard
3080   two space format. Added skeleton setup for making script relocatable in
3081   the Install Tree.
3082 
3083 
3084 October 11th 2011 - B.Morgan
3085 - Templates/Geant4Config.cmake.in [BUGFIX #1253] : Jean Jacquemier reported
3086   a problem when building applications using a pure static build of Geant4.
3087   This was traced to incorrect list syntax in Geant4Config.cmake, as detailed
3088   in the above Bug Report #1253. The fix is to remove the quotes around the
3089   list as these cause it to be represented as one single string.
3090 
3091 
3092 October 10th 2011 - B.Morgan (cmake-V09-04-29)
3093 - Modules/Geant4ValidateSources.cmake (NEWFILE) : Module to configure the
3094   geant4_validate_sources.cmake.in and create a custom 'validate_sources'
3095   target which runs the resulting configured script.
3096 - Templates/geant4_validate_sources.cmake.in (NEWFILE) : CMake script that
3097   locates all sources.cmake files in the Geant4 source tree, parses them to
3098   extract all listed sources/headers and compares that list with sources and
3099   headers on disk. Any mismatches whether files listed in sources.cmake and no
3100   longer on disk, or files on disk but not listed in sources.cmake, are
3101   reported. If any mismatches are found, the script will fail with FATAL_ERROR,
3102   though it will not do so until the whole tree has been scanned to ensure all
3103   mismatches are located. It ignores certain files that are known to cause
3104   mismatch detection but which are no longer part of the Geant4 CMake build.
3105 
3106 
3107 October 6th 2011 - B.Morgan (cmake-V09-04-28)
3108 - Modules/Geant4BuildModes.cmake : Added TestReleaseDebug mode to
3109   CMAKE_BUILD_TYPES and CMAKE_CONFIGURATION_TYPES.
3110   NB: Diaganosed problem reported by Pere, whereby added modes were not
3111   appearing in VS. This is likely because CMAKE_CONFIGURATION_TYPES is set
3112   *after* the project(...) call: http://www.itk.org/Bug/view.php?id=6788
3113   Will fix after new modes are confirmed.
3114 - Modules/Geant4MakeRules_cxx.cmake : Split TestRelease mode into two,
3115   TestRelease, which is optimized and has debugging symbols, and
3116   TestReleaseDebug, which has debug symbols only. Both still use
3117   G4DEBUG_VERBOSE and G4FPE_DEBUG definitions.
3118 
3119 
3120 October 4th 2011 - P. Mato (cmake-V09-04-27)
3121 - Modules/Geant4TestDriver.cmake: Fix to allow an empty command
3122 
3123 October 4th 2011 - P. Mato (cmake-V09-04-26)
3124 - Modules/FindXercesC.cmake: Added xerces-c_3 as a possible name for libraries (for windows)
3125 
3126 September 30th 2011 - P. Mato (cmake-V09-04-25)
3127 - Modules/Geant4MakeRules_cxx.cmake: Fixed debug flag to -Zi for Visual C++
3128 
3129 - Modules/Geant4CTest.cmake: Moved from tests/CMakeLists.txt the logic to
3130   construct the GEANT_TEST_ENVIRONMENT with data file locations to be useful
3131   for benchmarks tests.
3132 
3133 September 29th 2011 - B. Morgan (cmake-V09-04-24)
3134 - Modules/Geant4OptionalComponents.cmake : Removed enabling of Fortran language
3135   when G3toG4 is enabled. Gunter Folger reported problems with obtaining correct
3136   Fortran setup, so we disable this since we don't actually compile the rztog4
3137   app at present. A change has also been made in the top level CMakeLists.txt
3138   so that the Make rules initialization for Fortran is no longer set up.
3139 
3140 
3141 September 16th 2011 - B. Morgan (cmake-V09-04-23)
3142 - Templates/Geant4Config.cmake.in : Addition of G4VIS_USE and G4UI_USE to list
3143   of definitions has been made conditional on the existence of the variables
3144   G4VIS_NONE and G4UI_NONE. If those variables are set, e.g. via -DG4UI_NONE,
3145   the corresponding compile definition will not be set. This gives
3146   requested behaviour, but as before this is a temporary hack.
3147 
3148 
3149 September 16th 2011 - B. Morgan (cmake-V09-04-22)
3150 - Templates/Geant4Config.cmake.in : Added G4VIS_USE and G4UI_USE to list
3151   of core compile definitions. This is seemingly needed to support test
3152   building, but should only be seen as a temporary fix. These variables
3153   should be set at the application level.
3154 
3155 
3156 September 15th 2011 - P. Mato (cmake-V09-04-21)
3157 - Templates/UseGeant4_internal.cmake: Fixed a bug affecting tests on Windows.
3158 
3159 August 16th 2011 - P. Mato (cmake-V09-04-20)
3160 - Templates/UseGeant4_internal.cmake: Added support for tests on Windows with
3161   NMake and Visual Studio.
3162 
3163 - Modules/Geant4TestDriver.cmake: Avoid the use of ':' as separator since is used
3164   already in the drive letters on Windows.
3165 
3166 August 16th 2011 - P. Mato (cmake-V09-04-19)
3167 - Modules/FindROOT.cmake : Added function ROOT_GENERATE_DICTIONARY() to facilitate
3168   the generation of ROOT dictionaries
3169 
3170 - Modules/Geant4CTest.cmake (NEWFILE): Place for the configutation of CTest.
3171 
3172 - Modules/Geant4TestDriver.cmake: Added the pre- and post-commands for tests. This
3173   was neeed to preform some initial cleanup of post processing on some tests.
3174 
3175 - Templates/UseGeant4_internal.cmake: Changed the function GEANT4_ADD_TEST() to
3176   make use of the pre- and post-commands.
3177 
3178 August 16th 2011 - B.Morgan (cmake-V09-04-18)
3179 - Templates/UseGeant4.cmake : Fixed error is use of get_filename_component
3180   to locate internal use file.
3181 
3182 
3183 August 10th 2011 - B.Morgan (cmake-V09-04-17)
3184 - Modules/Geant4BuildProjectConfig.cmake : Added copy of UseGeant4_internal
3185   file to build tree, but do not install it.
3186 
3187 - UseGeant4.cmake : Factored out internal only macros into UseGeant4_internal
3188   module. Added optional inclusion of that module, which will only happen in the
3189   build tree.
3190 
3191 - UseGeant4_internal.cmake (NEWFILE) : Added to hold CMake code only needed
3192   by 'use' of Geant4 inside Geant4 itself, e.g. unit and validation tests.
3193   This is done to fix a bug reported offline by Alberto Ribon, where including
3194   UseGeant4.cmake fails due to an unfound custom CMake module. The functions
3195   like GEANT4_ADD_TEST use extra functionality which is located in custom CMake
3196   modules. Whilst these modules could be installed, this adds unneeded
3197   complexity to the use of Geant4 and may also clash with CMake itself. Also,
3198   the functions needing the modules are not intended for use by users, so are
3199   factored out into this build tree only module.
3200 
3201 
3202 August 3rd 2011 - B.Morgan (cmake-V09-04-16)
3203 - Modules/Geant4MakeRules_cxx.cmake, Modules/Geant4BuildModes.cmake :
3204   Moved setting of initial values for TestRelease and Maintainer mode compiler
3205   flags to make rules override file. Values are now set based on compiler and
3206   platform, as G4FPE_DEBUG option should only be used for GNU compiler, and
3207   with non-optimized code on Mac OS X (information from Gunter Folger).
3208   Geant4BuildModes uses initial values as input to cache value, so variables
3209   can be reset from the command line and within the cache interfaces if
3210   needed.
3211 
3212 - Modules/Geant4BuildProjectConfig.cmake : Re-added WIN32 guard on export of
3213   the G4LIB_BUILD_DLL definition.
3214 
3215 
3216 July 29th 2011 - B.Morgan (cmake-V09-04-15)
3217 - Modules/Geant4InstallData.cmake : Corrected URL for use in downloading data
3218   to use direct URL. Original URL redirects, which early 2.8 iterations of
3219   CMake appear not to like.
3220   Use .tar.gz of RadioactiveDecay as this is available and cheaper to download.
3221   Added use of PREFIX in ExternalProject so that all EP directories are
3222   created under a single 'Externals' directory. This is simply to keep the
3223   build tree nicely organized. The data still appear in the data/ subdirectory
3224   of the build directory, so this should not affect usage by tests.
3225 
3226 
3227 July 29th 2011 - P. Mato
3228 - Modules/CMakeMacroParseArguments.cmake : updated to the version exiting in CMake 2.8.5
3229 
3230 - Modules/Geant4MacroLibraryTargets.cmake, Modules/Geant4MacroDefineModule.cmake,
3231   Modules/Geant4MacroDefineModule.cmake : Adjusted to the new CMakeMacroParseArguments.cmake
3232 
3233 - Templates/UseGeant4.cmake : Removed installs included in GEANT4_LIBRARY and
3234   GEANT4_EXECUTABLE macros and fixed comments.
3235 
3236 
3237 July 28th 2011 - B. Morgan (cmake-V09-04-14)
3238 - History : Added note on preferred format of entries.
3239 
3240 - Modules/Geant4InstallData.cmake : Added guard on option and install of data so
3241   that this is only available on CMake >= 2.8 due to use of ExternalProject.
3242   (NB: Usage still broken, probably due to tar formats (CMake 2.8.1).
3243 
3244 - Modules/UseGeant4.cmake : Forced all CXX flags to use those used to build
3245   Geant4 [BUGFIX #1227]. Neatified and commented internal functions for
3246   library/exe/test builds. Added WARNING message if GEANT4_ADD_TEST is used
3247   outside of the Geant4 project. Corrected(?) include of
3248   CMakeMacroParseArguments (MIGHT BREAK GEANT4_XXX FUNCTIONS IN UseGeant4).
3249 
3250 - Modules/Geant4CPackBase.cmake : Added TBZ2 and ZIP types back into list of
3251   source package generators. Neatified the generation of the README file.
3252   Neatified and commented new component build commands.
3253 
3254 - Modules/Geant4MacroLibraryTargets.cmake : Corrected setting of
3255   INSTALL_NAME_DIR for library targets [BUGFIX #1231].
3256 
3257 - Templates/geant4-config.in : Added G4analysis library to default list of
3258   libraries.
3259 
3260 - Templates/Geant4Config.cmake.in : Added G4analysis library to Geant4_LIBRARIES
3261   variable. Always added for now rather than as an optional component.
3262 
3263 
3264 July 27th 2011 - P. Mato
3265 - Added the downloading and installation of Geant4 Data files if the option
3266   GEANT4_INSTALL_DATA is set. Modified Modules/Geant4InstallData.cmake
3267 - Initial version of CPack configuration for binaries.
3268   Modified Modules/Geant4CPackBase.cmake and added Templates/CMakeCPackOptions.cmake.in,
3269     Templates/g4_small.gif
3270 - Initial set of files needed for testing with CTest.
3271   Added Modules/FindROOT.cmake, Modules/Geant, Geant4TestDriver.cmake
3272   Added options GEANT4_ENABLE_TESTING, GEANT4_BUILD_EXAMPLES in
3273     Modules/Geant4LibraryBuildOptions.cmake
3274   Inherit CMAKE_MODULE_PATH in tests. Modified Modules/Geant4BuildProjectConfig.cmake,
3275     Templates/Geant4Config.cmake.in
3276   Added convenient macros to Templates/UseGeant4.cmake
3277 
3278 
3279 July 5th 2011 - G.Folger  (cmake-V09-04-13)
3280 - Modules/{Geant4LibraryBuildOptions,Geant4BuildProjectConfig}.cmake:
3281    protect setting of G4LIB_BUILD_DLL to happen on WIN32 only.
3282     (Affected examples/.../olap, which was built without this flag,
3283      and failed to link)
3284 
3285 July 5th 2011 - B. Morgan (cmake-V09-04-12)
3286 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Added support for
3287   setting GDML/Xerces variables as needed.
3288 - Templates/geant4-environment-skeleton.in : Added unsetting/setting of
3289   G4LIB_USE_GDML and XERCESCROOT. These are needed to help the automated builds
3290   of examples in the old toolchain. XERCESCROOT uses the value of
3291   XERCESC_INCLUDE_DIR with one directory level stripped off the end. This
3292   is not 100% foolproof if an odd XercesC install is used, but should cover
3293   the vast majority of cases.
3294 
3295 June 29th 2011 - B.Morgan (cmake-V09-04-11) (In geant4-09-04-ref-06)
3296 - INSTALL.g4cmake : Added warning about ensuring consistent compiler flag
3297   sets between build of Geant4 and build of user application.
3298 - Templates/UseGeant4.cmake : Added setting of all CMAKE_CXX_FLAGS_XXXX
3299   variables with appending of Geant4 recommended flags, and filter out
3300   any duplicate flags. Adding warning in documentation about this.
3301 
3302 June 23rd 2011 - B.Morgan (cmake-V09-04-10)
3303 - INSTALL.g4cmake : Added note on possible issues when building Windows
3304   applications using Windows 7 + VS2010 Express.
3305 - Templates/UseGeant4.cmake : Fixed idiotic typo error in globbing expressions
3306   inside file(GLOB_RECURSE).
3307 
3308 June 23rd 2011 - B.Morgan (cmake-V09-04-09)
3309 - INSTALL.g4cmake : Added in missing data library package names. Added
3310   note in Known Issues on Mac warnings from ld due to duplicate dylibs
3311   (the overlinking issue as it appears on Mac).
3312 - Modules/Geant4MacroLibraryTargets.cmake : Added setting of INSTALL_NAME_DIR
3313   target property to shared libraries (only affects Mac OS X) to final
3314   install location of libraries. This prevents "image not found" errors when
3315   building an app against Geant4 (you don't need DYLD_LIBRARY_PATH set).
3316   CMake *should* build the dylibs with the headerpad_max_install_names flag
3317   so that bundling the Geant4 libraries into an app should work (you can
3318   repoint the app to use the bundled libraries).
3319   N.B. THIS IS LIKELY TO AFFECT USAGE OF CPACK LATER ON!
3320 - Templates/UseGeant4.cmake : Fixed error in use of file(GLOB_RECURSE) so
3321   that globas are done only under the current source directory.
3322 
3323 June 22nd 2011 - B.Morgan (cmake-V09-04-08)
3324 - INSTALL.g4cmake : Finalized with description of using the three toolchains
3325   to build Geant4 applications.
3326 - Modules/Geant4ConfigureConfigScript.cmake : Updated with patch from Pere
3327   Mato Vila to export use of internal CLHEP to script when used. Also upgraded
3328   to export details on Motif. Script is now generated for both the build and
3329   install trees. On CMake >= 2.8, the build tree script is made executable.
3330 - Templates/geant4-config : Updated with patch from Pere Mato Vila to use
3331   internal CLHEP, plus upgrades to provide easier setting of third party paths,
3332   compile defintions and libraries. Added motif feature, and changed main
3333   prefix, lib and include directory variable replacement to that the script
3334   can be used form the build directory as well.
3335 - INSTALL.g4cmake : Updated with new guides on building user applications
3336   using CMake and GNU make.
3337 - Templates/Geant4Config.cmake.in : First full implementation with most
3338   features in place. Provides version and component checking. Setting of
3339   components features quite a bit of boilerplate code and a reasonable degree
3340   of in module processing. TODO : Investigate clean up and better
3341   modularization.
3342 - Templates/UseGeant4.cmake : NEW FILE : Provides a simple CMake module which
3343   users can include to setup the build of a basic Geant4 application without
3344   needing to know too many details. Sets definitions, include directories and
3345   compiler flags. Provides a simple macro to collate sources in an old style
3346   Geant4 Example, with documetation on usage in the file.
3347 - Modules/Geant4BuildProjectConfig.cmake : Set needed variables for export to
3348   Geant4Config.cmake script.
3349 - Modules/Geant4MakeRules_cxx.cmake : Added -DXPNET and
3350   -D_CRT_SECURE_NO_DEPRECATE to MSVC flags to make these exactly the same as
3351   used on old makefile system.
3352 - Modules/Geant4LibraryBuildOptions.cmake : Added definition G4LIB_BUILD_DLL
3353   needed to define import/export correctly. Done globally.
3354 - INSTALL.g4cmake : Fleshed out further.
3355 - Templates/Geant4Config.cmake.in : Fleshed out documentation with extra notes
3356   to help development.
3357 - Modules/Geant4BuildProjectConfig.cmake : Added extra comments
3358 
3359 June 21st 2011 - B.Morgan (cmake-V09-04-07)
3360 - Modules/Geant4BuildProjectConfig.cmake : Added section for collecting
3361   variables to be exported to the configuration files. Rationalized config of
3362   Build and Install Trees so that these sections have the same structure.
3363 - Templates/Geant4Config.cmake.in : Updates with documentation, debugging
3364   option and some improved setting of definitions. Still a skeleton though.
3365 - Modules/Geant4InterfaceOptions.cmake : Removed reset of OpenGL variables on
3366   Win32 because this seems to prevent proper refind of the variables. Since we
3367   expect to be able to use Qt and OpenGL concurrently on Win32. This *should*
3368   be o.k.
3369 - INSTALL.g4cmake : Added extra information on using Visual Studio.
3370 - Modules/Geant4ToolChainBackwardCompatibility.cmake : Removed setting of
3371   G4ORDPARAMTABLE as this is no longer needed.
3372 - Templates/geant4-environment-skeleton.in : Removed setting of G4ORDPARAMTABLE.
3373 
3374 
3375 June 20th 2011 - B.Morgan (cmake-V09-04-06)
3376 - Modules/Geant4InterfaceOptions.cmake : Corrected typographic error in option
3377   test for enabling Qt on Non-Apple platforms.
3378 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Added Geant4 to
3379   end of G4INCLUDE path for install tree in line with changes to
3380   Geant4InstallDirs.
3381 - Modules/Geant4MacroLibraryTargets.cmake : Added Geant4 to end of installation
3382   destination for headers in line with changes to Geant4InstalDirs.
3383 - Modules/Geant4InstallDirs.cmake : Removed Geant4 from INCLUDEDIR to better
3384   reflect standard practice. The Geant4 tag is now added to the destination in
3385   the install commands for headers.
3386 - Modules/Geant4OptionalComponents.cmake : Automatically use GDML if user
3387   supplies XERCESC_ROOT_DIR argument.
3388 - Modules/Geant4InstallData.cmake : NEW FILE : Refactored installation of
3389   examples from top level CMakeLists.txt into this file. Also provided stub
3390   option for installation of data libraries. We don't implement this yet
3391   because it appears to require some CMake 2.8 specific functionality and
3392   I haven't yet worked out how to reproduce this in 2.6.4.
3393 - INSTALL.g4cmake : Rewritten for updated CMake system with full documentation
3394   of variables. Provided sections for describing use of the three toolchains
3395   for building user applications, but not fully covered yet.
3396 
3397 June 20th 2011 - B.Morgan (cmake-V09-04-05)
3398 - Modules/Geant4LibraryOptions.cmake : On Unix platforms, set output directory
3399   for libraries to end in the 'SYSTEM-COMPILER' tag expected by the old
3400   toolchain. This allows the build tree to be used with the old toolchain.
3401   #BUGFIX - 1200 (PARTIAL)
3402 - Modules/Geant4OptionalComponents.cmake : Now ensures that the static versions
3403   of the internal G4clhep and G4expat libraries are used if geant4 is built
3404   completely static, otherwise dynamic libs will be used. This is not perfect
3405   but ensures builds will not fail.
3406 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Completely rewritten
3407   to use new geant4-environment-skeleton.in template. Provides full setup
3408   of environment from build and install trees, permitting developers to
3409   build applications directly using the build tree. Also adds all currently
3410   supported visualization/ui modules. Adds setting of the G4ORDPARAMTABLE
3411   variable to support this new resource file.
3412 - Templates/geant4-environment-skeleton.in : NEW FILE : Universal shell script
3413   skeleton for generating backward compatible environment variable setup.
3414   # BUGFIX - 1202
3415 
3416 June 17th 2011 - B.Morgan (cmake-V09-04-04)
3417 - Modules/Geant4ConfigureConfigScript.cmake
3418   Modules/Geant4ToolchainBackwardCompatibility.cmake : Updated to use new
3419   GEANT4_USE_RAYTRACER_X11 variable.
3420 - Modules/Geant4InterfaceOptions.cmake : Corrected type in resetting of OpenGL
3421   variables.
3422   Changed GEANT4_USE_RAYTRACERX -> GEANT4_USE_RAYTRACER_X11 to be in line with
3423   what's done for other drivers.
3424 
3425 June 17th 2011 - B.Morgan (cmake-V09-04-03)
3426 - Tagging : internal because this requires testing.
3427   Full support also requires tags:
3428    interfaces-V09-04-03
3429    opengl-V09-04-05
3430 
3431 - Modules/Geant4InterfaceOptions.cmake : Rewritten to enable correct switch
3432   between Qt and X11 based GUIs on Mac, with consistent changes in OpenGL
3433   location. Added in find_package for Motif. Added full option and find_package
3434   for locating OpenGL on Win32.
3435 - Modules/Geant4OptionalComponents.cmake : Imporved documentation of external
3436   CLHEP option. GEANT4_USE_SYSTEM_CLHEP made a standard option as it will
3437   likely be used a lot to begin with.
3438 
3439 June 16th 2011 - B.Morgan (cmake-V09-04-02)
3440 - Modules/Geant4LibraryBuildOptions.cmake : Default to building shared libraries
3441   on all platforms, but warn about possible link errors on MSVC when building
3442   both shared and static libs. Mark both library build options as advanced.
3443   Add warning about building granular libs as only for developers.
3444 - Modules/Geant4InterfaceOptions.cmake : Reverted to version from
3445   cmake-V09-04-01 because of poor logic.
3446 - Modules/FindCLHEP.cmake : UPGRADE WITH INTERFACE BREAK : Much simplified
3447   search structure which no longer relies on clhep-config. The user can supply
3448   a CLHEP_ROOT_DIR argument to point CMake to a specific installation. On UNIX
3449   clhep-config will be searched for under this root dir. CLHEP library and
3450   include path will be found under this root dir, or in the system paths.
3451   Version checking is also provided which follows the standard logic of
3452   CMake modules.
3453 - Modules/Geant4OptionalComponents.cmake : Option to use system CLHEP is
3454   now automatically set to ON if the user has supplied a CLHEP_ROOT_DIR
3455   argument. This simplifies the interface.
3456 
3457 June 15th 2011 - B.Morgan
3458 - Modules/Geant4InterfaceOptions.cmake : Added in option for enabling Xm (Motif)
3459   support with find_package for Motif headers/libraries.
3460   Use of Qt and X11 OpenGL have been made mutually exclusive on Mac OS X to
3461   prevent clashes between Framework OpenGL and X11 OpenGL.
3462   Added new stub option to build OpenInventor driver
3463   TODO: Add FindInventor module, check build of OpenInventor category.
3464   Added new stub option to build Win32 OpenGL driver.
3465   TODO: Add Win32 build to OpenGL category.
3466 - Templates/geant4-env.sh.in
3467   Templates/geant4-env.csh.in : Removed unsetting of data library environment
3468   variables.
3469   TODO : Add setting of these as an optional codeblock if data was installed
3470   as part of the Geant4 build.
3471 
3472 June 15th 2011 - B.Morgan (cmake-V09-04-01)
3473 - Modules/Geant4InterfaceOptions.cmake : Set QT_USE_IMPORTED_TARGETS on WIN32
3474   to stop errors when setting LINK_INTERFACE_LIBRARIES to a value containing
3475   the 'optimized' etc library link keywords. By default, FindQt4 will use
3476   these keywords...
3477   KNOWNISSUE: Using imported targets means that the Geant4Config.cmake file
3478   must regenerate these targets otherwise the link will fail.
3479 
3480 June 14th 2011 - B.Morgan
3481 - Modules/Geant4MacroLibraryTargets.cmake : Added build of DLL targets on
3482   WIN32 platforms. Export definition files are generated by genwindef from
3483   an archive library. If Geant4 is not built with archive libraries, a
3484   dummy, non-installed archive will be built an used.
3485   The structure largely follows that of GaudiPolicy.cmake from Pere Mato Vila.
3486 - Modules/Geant4LibraryBuildOptions.cmake : Added build of genwindef app
3487   on WIN32 platforms as an internal app, as per guidelines from
3488   GaudiPolicy.cmake from Pere Mato Vila.
3489 - Modules/genwindef/genwindef.cpp
3490   Modules/genwindef/LibSymbolInfo.hpp
3491   Modules/genwindef/LibSymbolInfo.cpp:
3492   NEW FILES to support generation of DLL .def files on WIN32 platform.
3493   Courtesy of Pere Mato Vila.
3494 - Modules/Geant4Wrapping.cmake : NEW FILE : Refactoring of options for
3495   Python wrapping to help in modularization. Python wrapping is not yet
3496   implemented in the CMake build, but this is where we'll set it up.
3497 - Modules/Geant4OptionalComponents.cmake : NEW FILE : Refactoring of options
3498   for CLHEP, Expat, ZLIB, GDML, G3TOG4 from top level CMakeLists.txt to
3499   help with modularization.
3500 - Modules/Geant4LibraryBuildOptions.cmake : NEW FILE : Refactoring of library
3501   build options from top level CMakeLists.txt, including global define flags,
3502   global vs granular library format and static vs shared builds.
3503 - Modules/Geant4MacroLibraryTargets.cmake : Ensure that when static targets
3504   are built, they are linked to Geant4 static targets.
3505   TODO: Do we want to make this the case also for external libraries (very
3506   difficult?)?
3507   KNOWNISSUE: G4global will always be linked to shared G4clhep if latter is
3508   built as will G4processes to shared G4expat. Not critical (well, shouldn't
3509   affect running or applications).
3510 
3511 June 13th 2011 - B.Morgan
3512 - Modules/Geant4CPackBase.cmake : Added to list of files to be excluded for
3513   source package so that .svn and top level tests directories are not added.
3514   Fixed source package generator so that .tar.gz, .tar.bz2 and .zip packages
3515   are created.
3516   Tidied up structure so that future changes are easier to add in a clear
3517   way.
3518 - Modules/Geant4InterfaceOptions.cmake : Removed accidently commited change
3519  of finding VTK as a test of find_package.
3520 
3521 June 10th 2011 - B.Morgan
3522 - Templates/geant4-config.in : Adapted to use new install directories as
3523   provided by Geant4InstallDirs as template parameters.
3524 - Modules/Geant4ConfigureConfigScript.cmake : Added support for new
3525   install directories defined in Geant4InstallDirs
3526 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Added support for
3527   new install directories defined in Geant4InstallDirs.
3528 - Modules/Geant4MacroLibraryTargets.cmake : Added support for install of
3529   libraries and headers to new install paths defined by Geant4InstallDirs.
3530   Added EXPORT to library targets so that they can be used by Geant4Config
3531   scripts.
3532   Added proper COMPONENT argument to install commands to correctly partition
3533   targets needed for Development and for Runtime.
3534   Appended each library target and include paths to global
3535   properties so these can be exported to Geant4Config file easily for use
3536   from the build tree.
3537 - Templates/Geant4Config.cmake.in : NEW FILE : Template versioning file
3538   for use by Geant4Config.cmake.
3539 - Templates/Geant4Config.cmake.in : NEW FILE : Template files for CMake
3540   config script for Geant4. VERY PRELIMINARY.
3541 - Modules/Geant4BuildProjectConfig.in : NEW FILE : Builds CMake Config scripts
3542   to allow external projects to use Geant4 from a build or install tree.
3543 - Modules/Geant4InstallDirs.cmake : NEW FILE : Adds a standard set of
3544   installation location based on the GNU set. Adapted from GNUInstallDirs
3545   provided with CMake 2.8, but cut down to only use directories needed by
3546   Geant4.
3547 - Modules/CMakeUninstallTarget.cmake : NEW FILE : Adds an 'uninstall' target
3548   to remove all items installed via the install command.
3549 - History: Corrected a couple of entries with incorrect year in the date.
3550 - Modules/Geant4InterfaceOptions.cmake: Set GEANT4_ADD_FEATURE for all
3551   UI/Vis options so that enabled options are reported at the end of
3552   configuration.
3553 
3554 
3555 May 25th 2011 - B.Morgan
3556 - Modules/Geant4InterfaceOptions.cmake : Added new GEANT4_USE_OPENGL_X11
3557   option to enable build of OpenGL library X11 component. If enabled, will
3558   search for X11 libraries (plus Xmu, which FindX11 doesn't do) and OpenGL.
3559   Also performed some cleanup of the Qt section.
3560 - Templates/geant4-env.sh.in : Added variable setting for OpenGL X11
3561 - Templates/geant4-env.csh.in : Added variable setting for OpenGL X11
3562 - Templates/geant4-config.in : Added needed reporting and flags setting for
3563   OpenGL X11 support.
3564 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Added setting of
3565   variable needed to export the existence of OpenGL X11 in the geant4-env
3566   scripts.
3567 - Modules/Geant4ConfigureConfigScript.cmake : Added setting of variables
3568   needed to export OpenGL X11 existence and X11 flags to geant4-config script.
3569 
3570 
3571 May 24th 2011 - B.Morgan (cmake-V09-04-00)
3572 - *** All History for the CMake category will now be in this file ***
3573 - Templates/geant4-env.sh.in : Added variable setting for RayTracerX
3574 - Templates/geant4-env.csh.in : Added variable setting for RayTracerX
3575 - Templates/geant4-config.in : Added needed reporting and flags setting for
3576   RayTracerX support.
3577 - Modules/Geant4ToolchainBackwardCompatibility.cmake : Added setting of
3578   variable needed to export the existence of RayTracerX in the geant4-env
3579   scripts.
3580 - Modules/Geant4ConfigureConfigScript.cmake : Added setting of variables
3581   needed to export RayTracerX existence and X11 flags to geant4-config script.
3582 
3583 
3584 December 3rd 2010 - B. Morgan (cmake-V09-03-01)
3585 - Added generation of geant4-config script.
3586 
3587 October 29th 2010 - B. Morgan
3588 - Install.g4cmake: Added as installation guide for using CMake.
3589 
3590 October 1st, 2010 - B.Morgan (cmake-V09-03-00)
3591 - Created. First Alpha version of CMake build system.