Skip to content
Snippets Groups Projects
Commit d0ce8c49 authored by Patrick MADELA's avatar Patrick MADELA
Browse files

Use new approach based python requires

parent 2ac3e2c3
Branches
Tags
1 merge request!6Use new approach based python requires
...@@ -4,7 +4,7 @@ project (yat) ...@@ -4,7 +4,7 @@ project (yat)
option(BUILD_SHARED_LIBS "Build using shared libraries" ON) option(BUILD_SHARED_LIBS "Build using shared libraries" ON)
add_compile_definitions(YAT_PROJECT_NAME=${PROJECT_NAME}) add_compile_definitions(YAT_PROJECT_NAME=${PROJECT_NAME})
add_compile_definitions(YAT_PROJECT_VERSION=${VERSION}) add_compile_definitions(YAT_PROJECT_VERSION=${PROJECT_VERSION})
if (UNIX) if (UNIX)
add_definitions(-std=c++0x) add_definitions(-std=c++0x)
......
...@@ -7,53 +7,21 @@ class yatRecipe(ConanFile): ...@@ -7,53 +7,21 @@ class yatRecipe(ConanFile):
version = "1.21.2" version = "1.21.2"
package_type = "library" package_type = "library"
user = "soleil" user = "soleil"
python_requires = "base/[>=1.0]@soleil/stable"
python_requires_extend = "base.Library"
# Optional metadata
license = "GPL-2" license = "GPL-2"
author = "stephane.poirier@synchrotron-soleil.fr" author = "stephane.poirier@synchrotron-soleil.fr"
url = "https://gitlab.synchrotron-soleil.fr/software-control-system/libraries/yat" url = "https://gitlab.synchrotron-soleil.fr/software-control-system/libraries/yat"
description = "Yet Another Toolkit Library" description = "Yet Another Toolkit Library"
topics = ("utility", "control-system") topics = ("utility", "control-system")
# Binary configuration
settings = "os", "compiler", "build_type", "arch" settings = "os", "compiler", "build_type", "arch"
options = {"shared": [True, False], "fPIC": [True, False]} options = {"shared": [True, False], "fPIC": [True, False]}
default_options = {"shared": False, "fPIC": True} default_options = {"shared": False, "fPIC": True}
# Sources are located in the same place as this recipe, copy them to the recipe
exports_sources = "CMakeLists.txt", "src/**", "include/**" exports_sources = "CMakeLists.txt", "src/**", "include/**"
def config_options(self):
if self.settings.os == "Windows":
self.options.rm_safe("fPIC")
def configure(self):
if self.options.shared:
self.options.rm_safe("fPIC")
def layout(self):
cmake_layout(self)
def generate(self):
deps = CMakeDeps(self)
deps.generate()
tc = CMakeToolchain(self)
major, minor, patch = map(int, self.version.split('.'))
tc.variables["VERSION"] = self.version
tc.variables["MAJOR_VERSION"] = major
tc.variables["MINOR_VERSION"] = minor
tc.variables["PATCH_VERSION"] = patch
tc.generate()
def build(self):
cmake = CMake(self)
cmake.configure()
cmake.build()
def package(self):
cmake = CMake(self)
cmake.install()
def package_info(self): def package_info(self):
self.cpp_info.libs = ["yat"] self.cpp_info.libs = ["yat"]
......
...@@ -67,7 +67,7 @@ if (WIN32) ...@@ -67,7 +67,7 @@ if (WIN32)
endif() endif()
if(MAJOR_VERSION) if(MAJOR_VERSION)
set_target_properties (yat PROPERTIES VERSION ${VERSION} SOVERSION ${MAJOR_VERSION}) set_target_properties (yat PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION ${MAJOR_VERSION})
endif() endif()
if (UNIX) if (UNIX)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment