Back to home page

EIC code displayed by LXR

 
 

    


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

0001 # Copyright 2013-2022 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 Sartre(CMakePackage):
0011     """Sartre 1 is an event generator for exclusive diffractive vector
0012     meson production and DVCS in ep and eA collisions based on the
0013     dipole model."""
0014 
0015     homepage = "https://sartre.hepforge.org"
0016     url = "https://sartre.hepforge.org/downloads/?f=sartre-1.39-src.tgz"
0017     list_url = "https://sartre.hepforge.org/downloads/"
0018 
0019     maintainers = ["wdconinc"]
0020 
0021     version(
0022         "1.39",
0023         sha256="82ed77243bea61bb9335f705c4b132f0b53d0de17c26b89389fa9cd3adcef44d",
0024     )
0025 
0026     parallel = False
0027 
0028     depends_on("cxx", type="build")
0029 
0030     depends_on("gsl")
0031     depends_on("root")
0032     depends_on("boost@1.39: +thread")
0033     depends_on("cuba@4:")
0034 
0035     def patch(self):
0036         for file in ["src/CMakeLists.txt", "gemini/CMakeLists.txt"]:
0037             filter_file(
0038                 r"set\(CMAKE_CXX_STANDARD 11\)",
0039                 'set(CMAKE_CXX_STANDARD 11 CACHE STRING "C++ standard")',
0040                 file,
0041             )
0042 
0043     def cmake_args(self):
0044         args = [
0045             "-DCMAKE_CXX_STANDARD={0}".format(
0046                 self.spec["root"].variants["cxxstd"].value
0047             ),
0048             "-DMULTITHREADED=ON",
0049         ]
0050         return args