46 lines
1.3 KiB
Python
46 lines
1.3 KiB
Python
# Copyright Spack Project Developers. See COPYRIGHT file for details.
|
|
#
|
|
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
|
|
|
|
|
from spack.package import *
|
|
|
|
|
|
class Linktest(MakefilePackage):
|
|
"""Performance tool to generate communication matrix using
|
|
parallel ping-pong benchmark"""
|
|
|
|
homepage = (
|
|
"https://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/LinkTest/_node.html"
|
|
)
|
|
url = "https://apps.fz-juelich.de/jsc/linktest/download.php?version=1.2p1"
|
|
|
|
maintainers("pramodk")
|
|
|
|
version(
|
|
"1.2p1",
|
|
sha256="981b96da1d5bf214507b8e219a36e8d0183d8bd5c10539b26f660b2c83e5269d",
|
|
extension="tar.gz",
|
|
)
|
|
|
|
depends_on("c", type="build") # generated
|
|
|
|
depends_on("mpi")
|
|
depends_on("sionlib")
|
|
|
|
def edit(self, spec, prefix):
|
|
with working_dir("src"):
|
|
makefile = FileFilter("Makefile")
|
|
makefile.filter("= gcc", "= cc")
|
|
makefile.filter("mpicc", spec["mpi"].mpicc)
|
|
makefile.filter("#SIONLIB_INST=.*", "SIONLIB_INST=%s" % spec["sionlib"].prefix)
|
|
|
|
def build(self, spec, prefix):
|
|
with working_dir("src"):
|
|
make()
|
|
|
|
def install(self, spec, prefix):
|
|
mkdir(prefix.bin)
|
|
install("src/mpilinktest", prefix.bin)
|
|
install("src/pingponganalysis", prefix.bin)
|