Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:15:26

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 import os
0008 
0009 
0010 class Dawn(MakefilePackage):
0011     """Fukui  Renderer   DAWN (Drawer for Academic WritiNgs)
0012     is a renderer, which reads 3D geometrical data and visualize them.
0013     It is a vectorized 3D PostScript processor with analytical
0014     hidden line/surface removal.
0015     It aims at precise technical drawing of complex geometries.
0016     It performs geometrical hidden line/surface removal and calculates
0017     out all visible parts of the 3D data before drawing.  This drawing
0018     algorithm realizes device-independent technical high quality of
0019     vectorized graphics.
0020     3D Data files should be generated by a modeler or by hands
0021     separately.  If you use DAWN as a visualizer of,
0022     say, a simulator of physical experiments,
0023     the simulator application itself is recognized as a modeler.
0024     An important feature of DAWN is that
0025     it has been developed to visualize 3D data generated by
0026     a high-energy experimental detector simulator "GEANT4"
0027     ( http://geant4.web.cern.ch/geant4 , http://geant4.kek.jp ).
0028 
0029     Note: we set 'gv' as default pdf/ps viewer, assuming this is
0030           installed on your system.
0031     """
0032 
0033     # Note: Dawn homepage not available anymore...
0034     homepage = "https://geant4.kek.jp/~tanaka"
0035     url = "http://geant4.kek.jp/~tanaka/src/dawn_3_91a.tgz"
0036 
0037     maintainers = ["sly2j"]
0038 
0039     version(
0040         "3_91a",
0041         sha256="81d855ead1117681b188242dd0be3a24e005d9bd4063fd2bda9a7a794ebcf5f4",
0042     )
0043 
0044     depends_on("c", type="build")
0045     depends_on("cxx", type="build")
0046 
0047     depends_on("tcl")
0048     depends_on("tk")
0049 
0050     ## Patch to ensure wish is called correctly
0051     patch("exec.patch")
0052     patch("install.patch")
0053 
0054     def edit(self, spec, prefix):
0055         makefile = FileFilter("Makefile")
0056         makefile.filter("CC= .*", "CC = " + env["CC"])
0057         makefile.filter("CXX = .*", "CXX = " + env["CXX"])
0058         makefile.filter("INSTALL_DIR = .*", "INSTALL_DIR = {}/bin".format(prefix))
0059         os.environ["DAWN_PS_PREVIEWER"] = "gv"