summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicharda Butler <39577672+RikkiButler20@users.noreply.github.com>2022-02-11 15:02:40 -0800
committerGitHub <noreply@github.com>2022-02-11 15:02:40 -0800
commitaf4d555c2030fa57fc2a0e00d9b558b3633b990e (patch)
treee81e3cfa7a90aaa07e4bbf9dbf1c39f8843ce5c9
parentdc949a5bdafc07523ec86815a133e720fc24d09e (diff)
downloadspack-af4d555c2030fa57fc2a0e00d9b558b3633b990e.tar.gz
spack-af4d555c2030fa57fc2a0e00d9b558b3633b990e.tar.bz2
spack-af4d555c2030fa57fc2a0e00d9b558b3633b990e.tar.xz
spack-af4d555c2030fa57fc2a0e00d9b558b3633b990e.zip
Update/caliper stand alone test compiler (#28526)
-rw-r--r--var/spack/repos/builtin/packages/caliper/package.py38
1 files changed, 22 insertions, 16 deletions
diff --git a/var/spack/repos/builtin/packages/caliper/package.py b/var/spack/repos/builtin/packages/caliper/package.py
index 30eb7f70b3..a41b1b685b 100644
--- a/var/spack/repos/builtin/packages/caliper/package.py
+++ b/var/spack/repos/builtin/packages/caliper/package.py
@@ -154,30 +154,36 @@ class Caliper(CMakePackage, CudaPackage):
def run_cxx_example_test(self):
"""Run stand alone test: cxx_example"""
- test_dir = join_path(self.test_suite.current_test_cache_dir, 'examples', 'apps')
+ test_dir = self.test_suite.current_test_cache_dir.examples.apps
+ exe = 'cxx-example'
+ source_file = 'cxx-example.cpp'
- if not os.path.isfile(join_path(test_dir, 'cxx-example.cpp')):
- tty.msg('Skipping caliper test: file does not exist')
+ if not os.path.isfile(join_path(test_dir, source_file)):
+ tty.warn('Skipping caliper test:'
+ '{0} does not exist'.format(source_file))
return
- exe = 'cxx-example'
-
if os.path.exists(self.prefix.lib):
lib_dir = self.prefix.lib
else:
lib_dir = self.prefix.lib64
- self.run_test(exe='gcc',
- options=['{0}'.format(join_path(test_dir, 'cxx-example.cpp')),
- '-L{0}'.format(lib_dir),
- '-I{0}'.format(self.prefix.include),
- '-std=c++11', '-lcaliper', '-lstdc++', '-o', exe],
- purpose='test: compile {0} example'.format(exe),
- work_dir=test_dir)
-
- self.run_test(exe,
- purpose='test: run {0} example'.format(exe),
- work_dir=test_dir)
+ options = ['-L{0}'.format(lib_dir),
+ '-I{0}'.format(self.prefix.include),
+ '{0}'.format(join_path(test_dir, source_file)),
+ '-o', exe, '-std=c++11', '-lcaliper', '-lstdc++']
+
+ if not self.run_test(exe=os.environ['CXX'],
+ options=options,
+ purpose='test: compile {0} example'.format(exe),
+ work_dir=test_dir):
+ tty.warn('Skipping caliper test: failed to compile example')
+ return
+
+ if not self.run_test(exe,
+ purpose='test: run {0} example'.format(exe),
+ work_dir=test_dir):
+ tty.warn('Skipping caliper test: failed to run example')
def test(self):
self.run_cxx_example_test()