summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorVinícius <vinicius.pinto@inf.ufrgs.br>2021-03-20 07:35:43 -0300
committerGitHub <noreply@github.com>2021-03-20 10:35:43 +0000
commitce64a4170f594e9f1317da5da20904ec2a855b1c (patch)
tree6992a242c7be99a4822636fd3eaff3ae14fdf862 /var
parentbba41f16d401c6b09404b4ce2332162329635e9f (diff)
downloadspack-ce64a4170f594e9f1317da5da20904ec2a855b1c.tar.gz
spack-ce64a4170f594e9f1317da5da20904ec2a855b1c.tar.bz2
spack-ce64a4170f594e9f1317da5da20904ec2a855b1c.tar.xz
spack-ce64a4170f594e9f1317da5da20904ec2a855b1c.zip
pajeng: new package (#22398)
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/pajeng/package.py68
1 files changed, 68 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/pajeng/package.py b/var/spack/repos/builtin/packages/pajeng/package.py
new file mode 100644
index 0000000000..53a033e7c4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pajeng/package.py
@@ -0,0 +1,68 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Pajeng(CMakePackage):
+ """PajeNG is a re-implementation of the well-known Paje visualization
+ tool for the analysis of execution traces. PajeNG comprises the
+ libpaje library, and an auxiliary tool called pj_dump to transform
+ Paje trace files to Comma-Separated Value (CSV). The space-time
+ visualization tool called pajeng had been deprecated (removed from
+ the sources) since modern tools do a better job (see pj_gantt)."""
+
+ homepage = "https://github.com/schnorr/pajeng"
+ git = "https://github.com/schnorr/pajeng.git"
+ url = "https://github.com/schnorr/pajeng/archive/1.3.6.tar.gz"
+
+ maintainers = ['viniciusvgp', 'schnorr']
+
+ version('develop', git='https://github.com/schnorr/pajeng.git')
+ version('1.3.6', sha256='1a2722bfaeb0c6437fb9e8efc2592edbf14ba01172f97e01c7839ffea8b9d0b3')
+ version('1.3.5', sha256='ea8ca02484de4091dcf57289724876ec17dd98e3a032dc609b7ea020ca2629eb')
+ version('1.3.4', sha256='284e9a590a2861251e808542663bf1b77bc2c99650a1fbf945cd5bab65402f9e')
+ version('1.3.3', sha256='42cf44003d238fd5c4ab512bdeb445fc12f7e3bd3f0526b389f080c84b83b19f')
+ version('1.3.2', sha256='97154415a22f9b7f83516e988ea664b3990377d69fca859275ca48d7bfad0932')
+ version('1.3.1', sha256='4bc3764aaa7e79da9a81f40c0593b646007b689e4ac20886d06f271ce0fa0a60')
+ version('1.3', sha256='781b8be935e10b65470207f4f179bb1196aa6740547f9f1af0cb1c0193f11c6f')
+ version('1.1', sha256='986d03e6deed20a3b9d0e076b1be9053c1bc86c8b41ca36cce3ba3b22dc6abca')
+ version('1.0', sha256='4d98d1a78669290d0a2e6bfe07a1eb4ab96bd05e5ef78da96d2c3cf03b023aa0')
+
+ variant('static', default=False, description="Build as static library")
+ variant('doc', default=False, description="The Paje Trace File documentation")
+ variant('lib', default=True, description="Build libpaje")
+ variant('tools', default=True, description="Build auxiliary tools")
+ variant('gui', default=False, description="The PajeNG visualization tool")
+
+ depends_on('boost')
+ depends_on('flex')
+ depends_on('bison')
+ depends_on('qt@:4.999+opengl', when='@:1.3.2+gui')
+ depends_on('freeglut', when='@:1.3.2+gui')
+
+ conflicts('+tools', when='~lib', msg="Enable libpaje to compile tools.")
+ conflicts('+gui', when='@1.3.3:', msg="PajeNG visualization tool is available only for versions up to 1.3.2.")
+
+ def cmake_args(self):
+ args = [
+ self.define_from_variant('STATIC_LINKING', 'static'),
+ self.define_from_variant('PAJE_DOC', 'doc'),
+ self.define_from_variant('PAJE_LIBRARY', 'lib'),
+ self.define_from_variant('PAJE_TOOLS', 'tools')
+ ]
+
+ if self.spec.satisfies('@:1.3.2'):
+ args.extend([self.define_from_variant('PAJENG', 'gui'),
+ self.define_from_variant('PAJE_UTILS_LIBRARY', 'gui'),
+ self.define_from_variant('PJ_DUMP', 'tools'),
+ self.define_from_variant('PJ_VALIDATE', 'tools')])
+
+ return args
+
+ @when('@1.1+lib')
+ def build(self, spec, prefix):
+ with working_dir(self.build_directory):
+ make('paje_library')