![]() Not having the package name in the conflict messages can make debugging conflicts exceedingly hard when trying to concretize an environment with a sufficient number of packages. This patch adds the package name to all of the conflict messages so that it is easy to tell just from the message which package is causing conflicts. |
||
---|---|---|
.. | ||
find-mysql.patch | ||
format-stringbuf-size.patch | ||
honor-unuran-switch.patch | ||
math_uint.patch | ||
package.py | ||
README.md | ||
root6-60606-mathmore.patch | ||
root7-webgui.patch |
ROOT Recipe Notes
ROOT has a significant number of build options. Not all of them are supported by this package recipe at this time. Relevant notes on support (or lack thereof) for various options is below.
Fixed and unsupported options
Missing dependencies
The following configuration options are unsupported (set to OFF
) due to missing dependencies:
alien
Requires libgapiUI
from ALICE.
gfal
monalisa
Monitoring with Monalisa depends on libapmoncpp
.
odbc
tcmalloc
xinetd
Discontinued options
Support for several options was discontinued in ROOT without prior support in the recipe:
afdsmgrd
afs
bonjour
castor
chirp
geocad
glite
globus
hdfs
ios
krb5
ldap
rfio
ruby
sapdb
srp
Other fixed or unsupported options
arrow=OFF
asimage=ON
, astiff=ON
, builtin_afterimage=ON
Full control of asimage
and astiff
would require a package recipe for libAfterImage or Afterstep. In their absence, we use the provided and internally built version of libAfterImage.
ccache=OFF
Only useful for repeated builds.
cling=OFF
The use of Cling is assumed.
cxxmodules
This option should not be confused with runtime_cxxmodules
. cxxmodules
is an optimization that affects only the efficiency of building ROOT.
exceptions=ON
Support for C++ exceptions is assumed.
explicitlink=ON
Use of explicit linking when making shared libraries is assumed.
fail-on-missing=ON
Failure on missing dependencies is assumed (vs automatically setting builtin_XXX
).
gnuinstall=OFF
GNU-compliant install layout.
libcxx
This option controls use of the libC++ standard C++ library via compiler options. It is set automatically by ROOT's configuration on macOS >=10.7 when a Clang compiler is configured. Due to complexities related to compiler options and the way a compiler might have been configured, configurable support is disabled until (at least) Spack supports the standard library as a virtual dependency.
pch=ON
The use of pre-compiled headers when building is assumed.
roottest=OFF
roottest
requires access to the network.
runtime_cxxmodules=OFF
This option tells ROOT to generate and use PCMs for its own libraries. This functionality is experimental for ROOT < 6.20, and is currently not supported by the recipe.
shared=ON
The use of shared libraries is assumed.
soversion=ON
The use of versioning for shared libraries is assumed.
testing
The building of ROOT's test suite and its availability for use by CTest is pegged to Spack's determination of whether testing is required for the current installation procedure.
Variants and version dependent support for options
Some configuration options are version dependent---unavailable before or after a specific version. The current accounting for such options in the recipe is far from exhaustive, and a survey of the various options and the versions that support them would be useful. However, accounting for them is somewhat clumsy absent a when
clause for variants, or similar.
Conflicting variants since 6.18
memstat
qt4
Representing the obsolete qt
and qtgsi
ROOT build options.
table
Temporarily conflicting variants
Permanently removed variants
The following variants have been removed from the recipe as they have always been ineffective:
avahi
kerberos
ldap
libcxx
odbc
tiff
In addition, the test
variant has been removed as its actions are irrelevant to the installed source---the corresponding testing
ROOT option is enabled if and only if self.run_tests
is set.