Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-03-30 07:48:31

0001 # Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
0002 # Spack Project Developers. See the top-level COPYRIGHT file for details.
0003 #
0004 # SPDX-License-Identifier: (Apache-2.0 OR MIT)
0005 
0006 from spack.package import *
0007 from spack_repo.builtin.build_systems.cmake import CMakePackage
0008 
0009 
0010 class Eicroot(CMakePackage):
0011     """EicRoot software framework"""
0012 
0013     homepage = "https://github.com/eic/EicRoot"
0014     url = "https://github.com/eic/EicRoot/archive/v2.0.0.tar.gz"
0015     list_url = "https://github.com/eic/EicRoot/releases"
0016     git = "https://github.com/eic/EicRoot.git"
0017 
0018     maintainer = ["wdconinc"]
0019 
0020     tags = ["eic"]
0021 
0022     version(
0023         "2.0.0",
0024         sha256="94cd28763ef99832efd619f47c9b5b000d31a445e940e6c8204a373ade7d6334",
0025     )
0026 
0027     depends_on("cxx", type="build")
0028 
0029     depends_on("root@6.18.04: -vmc")
0030     depends_on("geant3-vmc")
0031     depends_on("geant4-vmc")
0032 
0033     patch("eic-htc-libgeant321.patch", when="@:2.0.0")
0034 
0035     def patch(self):
0036         # Replace __USE_BSD with __USE_MISC in recent gcc
0037         filter_file("__USE_BSD", "__USE_MISC", "dbase/dbValidation/ValTimeStamp.cxx")
0038 
0039     def cmake_args(self):
0040         spec = self.spec
0041 
0042         args = []
0043         # C++ Standard
0044         args.append(
0045             "-DCMAKE_CXX_STANDARD=%s" % self.spec["root"].variants["cxxstd"].value
0046         )
0047         # args.append('-DEICSMEAR=') # FIXME 'eic-smear'
0048         # args.append('-DCBMROOT=') # FIXME ???
0049         # args.append('-DOPENCASCADE=') # FIXME 'opencascade'
0050         # args.append('-DJANA=') # FIXME 'jana2'
0051         args.append("-DG3VMC={0}".format(spec["geant3-vmc"].prefix))
0052         args.append("-DG4VMC={0}".format(spec["geant4-vmc"].prefix))
0053         args.append("-DCAD2ROOT=no")
0054         args.append("-DHTC=no")
0055 
0056         return args