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