Anton Matosov | 01a5e4b | 2019-02-11 10:46:53 -0800 | [diff] [blame] | 1 | from conans import ConanFile, CMake, tools |
| 2 | from os import path |
| 3 | |
| 4 | class NanoPbConan(ConanFile): |
| 5 | name = "nanopb" |
Petteri Aimonen | da21b5e | 2022-05-30 20:30:35 +0300 | [diff] [blame] | 6 | version = "0.4.6" |
Anton Matosov | 01a5e4b | 2019-02-11 10:46:53 -0800 | [diff] [blame] | 7 | license = "zlib" |
| 8 | url = "https://jpa.kapsi.fi/nanopb/" |
| 9 | description = "Protocol Buffers with small code size" |
Psy-Kai | e1f55a8 | 2020-08-10 10:34:05 +0200 | [diff] [blame] | 10 | settings = "os_build", "compiler", "build_type", "arch" |
Anton Matosov | 01a5e4b | 2019-02-11 10:46:53 -0800 | [diff] [blame] | 11 | generators = "cmake" |
| 12 | exports = '*' |
| 13 | options = { |
| 14 | "fPIC": [True, False], |
| 15 | } |
| 16 | default_options = { |
| 17 | "fPIC": True, |
| 18 | } |
| 19 | |
| 20 | def configure(self): |
Psy-Kai | e1f55a8 | 2020-08-10 10:34:05 +0200 | [diff] [blame] | 21 | if self.settings.os_build == "Windows" and self.settings.compiler == "Visual Studio": |
Anton Matosov | 01a5e4b | 2019-02-11 10:46:53 -0800 | [diff] [blame] | 22 | del self.options.fPIC |
| 23 | |
| 24 | def build(self): |
| 25 | cmake = CMake(self) |
| 26 | cmake.configure(source_folder=path.join(self.source_folder, "conan-wrapper")) |
| 27 | cmake.build() |
| 28 | cmake.install() |
| 29 | |
| 30 | def package_info(self): |
| 31 | self.cpp_info.includedirs = ["include"] |
| 32 | self.cpp_info.libdirs = ["lib"] |
a1lu | a162fa4 | 2020-10-10 15:22:48 +0200 | [diff] [blame] | 33 | self.cpp_info.libs = ["protobuf-nanopb"] |