@@ -0,0 +1,90 @@
|
||||
import conan
|
||||
import conan.tools.cmake
|
||||
|
||||
class product_vamp_conan(conan.ConanFile):
|
||||
name = "product-vamp"
|
||||
version = "latest"
|
||||
description = "Two-device sheet-music display and guitar remote"
|
||||
license = "MIT"
|
||||
package_type = "application"
|
||||
settings = "os", "arch", "compiler", "build_type"
|
||||
options = {
|
||||
"with_tests": [
|
||||
True,
|
||||
False,
|
||||
],
|
||||
}
|
||||
default_options = {
|
||||
"with_tests": False,
|
||||
}
|
||||
python_requires = "modulus/latest"
|
||||
exports = "modulus.json"
|
||||
exports_sources = (
|
||||
"CMakeLists.txt",
|
||||
"cmake/*.cmake",
|
||||
"data/*.json",
|
||||
"data/**/*.json",
|
||||
"generator/*.py",
|
||||
"generator/**/*.py",
|
||||
"include/*.hpp",
|
||||
"include/vamp_style/*.hpp",
|
||||
"include/vamp_pico/*.h",
|
||||
"include/vamp_pico/capi/*.h",
|
||||
"include/vamp_pico/*.hpp",
|
||||
"include/vamp_protocol/*.hpp",
|
||||
"include/vamp_zero/*.hpp",
|
||||
"package/assets/*",
|
||||
"package/assets/**/*",
|
||||
"package/config/*.json",
|
||||
"package/manifest.json.in",
|
||||
"package/migrations/*.sql",
|
||||
"package/pico/*",
|
||||
"package/scripts/*.py",
|
||||
"package/scripts/*.sh",
|
||||
"package/zero/*",
|
||||
"src/vamp_style.cpp",
|
||||
"src/vamp_style/*.cpp",
|
||||
"src/vamp_pico/*.cpp",
|
||||
"src/vamp_protocol/*.cpp",
|
||||
"src/vamp_zero/*.cpp",
|
||||
)
|
||||
|
||||
def requirements(self):
|
||||
self.requires(
|
||||
str(self.python_requires["modulus"].ref),
|
||||
transitive_headers=True,
|
||||
transitive_libs=True,
|
||||
)
|
||||
for reference in (
|
||||
"ligo/latest",
|
||||
"noto/latest",
|
||||
"luma/latest",
|
||||
):
|
||||
self.requires(
|
||||
reference,
|
||||
transitive_headers=True,
|
||||
transitive_libs=True,
|
||||
)
|
||||
|
||||
def generate(self):
|
||||
dependencies = conan.tools.cmake.CMakeDeps(self)
|
||||
dependencies.generate()
|
||||
toolchain = conan.tools.cmake.CMakeToolchain(self)
|
||||
if hasattr(toolchain, "user_presets_path"):
|
||||
toolchain.user_presets_path = False
|
||||
toolchain.generate()
|
||||
|
||||
def build(self):
|
||||
cmake = conan.tools.cmake.CMake(self)
|
||||
cmake.configure()
|
||||
cmake.build()
|
||||
|
||||
def package_id(self):
|
||||
self.info.options.rm_safe("with_tests")
|
||||
|
||||
def package(self):
|
||||
cmake = conan.tools.cmake.CMake(self)
|
||||
cmake.install()
|
||||
|
||||
def package_info(self):
|
||||
self.cpp_info.bindirs = ["zero/bin"]
|
||||
Reference in New Issue
Block a user