Initial work on Conan packaging.
continuous-integration/drone/push Build is failing Details

This commit is contained in:
Deukhoofd 2019-12-19 14:22:44 +01:00
parent 573ff56bb6
commit 57702ba23d
Signed by: Deukhoofd
GPG Key ID: ADF2E9256009EDCE
2 changed files with 42 additions and 1 deletions

View File

@ -17,7 +17,6 @@ steps:
- cmake --build build-release --target all -- -j 4
- build-release/CreatureLibTests -s --durations yes --use-colour yes
- valgrind --tool=memcheck --gen-suppressions=all --leak-check=full --leak-resolution=med --track-origins=yes --vgdb=no --error-exitcode=1 build-release/CreatureLibTests
- name: test-release-windows
image: deukhoofd/windowsbuilder
commands:
@ -29,3 +28,11 @@ steps:
- cmake --build build-release-windows --target all -- -j 4
- export WINEARCH=win64
- wine build-release-windows/CreatureLibTests.exe -s
- name: conan-deploy
image: deukhoofd/linux64builder
commands:
- conan create . creaturelib/$$BRANCH
- conan remote add epsilon-public https://packages.p-epsilon.com/artifactory/api/conan/epsilon-public
- conan user -p -r=epsilon-public
- conan upload CreatureLib/0.1@creaturelib/$$BRANCH --all -r=epsilon-public
- conan user --clean

34
conanfile.py Normal file
View File

@ -0,0 +1,34 @@
from conans import ConanFile, CMake
class HelloConan(ConanFile):
name = "CreatureLib"
version = "0.1"
license = "TODO"
url = "https://git.p-epsilon.com/Deukhoofd/CreatureLib"
description = "The core implementation for turn based battling using creatures."
settings = "os", "compiler", "build_type", "arch"
options = {"shared": [True, False]}
default_options = {"shared": False}
generators = "cmake"
exports_sources = "*"
def build(self):
cmake = CMake(self)
cmake.configure(source_folder=".")
cmake.build()
# Explicit way:
# self.run('cmake "%s/src" %s' % (self.source_folder, cmake.command_line))
# self.run("cmake --build . %s" % cmake.build_config)
def package(self):
self.copy("*.h", dst="include", src="src")
self.copy("*.lib", dst="lib", keep_path=False)
self.copy("*.dll", dst="bin", keep_path=False)
self.copy("*.dylib*", dst="lib", keep_path=False)
self.copy("*.so", dst="lib", keep_path=False)
self.copy("*.a", dst="lib", keep_path=False)
def package_info(self):
self.cpp_info.libs = ["hello"]