-
Notifications
You must be signed in to change notification settings - Fork 0
/
conanfile.py
33 lines (26 loc) · 1.21 KB
/
conanfile.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
from conans import ConanFile
from conans.tools import os_info, SystemPackageTool
from conans.errors import ConanInvalidConfiguration
import os
class ArduinoConan(ConanFile):
name = "arduino-cmake"
version = "1.0.1"
license = "Mozilla Public License, v. 2.0 http://mozilla.org/MPL/2.0/"
url = "https://github.com/Dr-QP/conan-arduino-cmake"
description = "Arduino cmake toolchain. Use it with build_requires"
settings = "os"
exports_sources = "cmake/*"
def configure(self):
import sys
is_64bits = sys.maxsize > 2 ** 32
if str(self.settings.os) != "Arduino":
raise ConanInvalidConfiguration(f"OS '{self.settings.os}' is not supported, only `Arduino` is supported.")
def package_id(self):
# Toolchain doesn't really depend on any of these settings, so package id should be platform agnostic
self.info.header_only()
def package(self):
self.copy("cmake/*", dst="", src=".")
def package_info(self):
self.env_info.CONAN_CMAKE_TOOLCHAIN_FILE = os.path.join(
self.package_folder, "cmake", "ArduinoToolchain.cmake")
self.env_info.ARDUINO_DEFAULT_BOARD = str(self.settings.os.board) # TODO: remote in future updates