import os.path from conan import ConanFile from conan.tools.meson import Meson from conan.tools.layout import basic_layout from conan.tools.build import can_run class ElemmirePackageTestRecipe(ConanFile): # Optional metadata license = "CECILL-2.1/GPL-3.0" author = "The Aquila Consortium" url = "https://bitbucket.org/aquila-consortium/elemmire" description = "The Elemmire library" topics = ("cosmology", "data analysis") # Binary configuration generators = "PkgConfigDeps", "MesonToolchain" settings = "os", "compiler", "build_type", "arch" # Location of sources exports_sources = "meson.build", "src/*" def requirements(self): self.requires(self.tested_reference_str) self.requires("fftw/[>=3.3.8]") def build_requirements(self): self.tool_requires("meson/[~1.0]") def build(self): meson = Meson(self) meson.configure() meson.build() def layout(self): basic_layout(self) self.folders.build = os.path.join(self.folders.build, "meson") def test(self): if can_run(self): cmd = os.path.join(self.cpp.build.bindir, "elemmire_test_package") self.run(cmd, env="conanrun")