diff options
Diffstat (limited to 'spec/fixtures/packages/conan/recipe_files/conanfile.py')
-rw-r--r-- | spec/fixtures/packages/conan/recipe_files/conanfile.py | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/spec/fixtures/packages/conan/recipe_files/conanfile.py b/spec/fixtures/packages/conan/recipe_files/conanfile.py new file mode 100644 index 00000000000..910bd5a0b51 --- /dev/null +++ b/spec/fixtures/packages/conan/recipe_files/conanfile.py @@ -0,0 +1,47 @@ +from conans import ConanFile, CMake, tools + + +class HelloConan(ConanFile): + name = "Hello" + version = "0.1" + license = "<Put the package license here>" + author = "<Put your name here> <And your email here>" + url = "<Package recipe repository url here, for issues about the package>" + description = "<Description of Hello here>" + topics = ("<Put some tag here>", "<here>", "<and here>") + settings = "os", "compiler", "build_type", "arch" + options = {"shared": [True, False]} + default_options = "shared=False" + generators = "cmake" + + def source(self): + self.run("git clone https://github.com/conan-io/hello.git") + # This small hack might be useful to guarantee proper /MT /MD linkage + # in MSVC if the packaged project doesn't have variables to set it + # properly + tools.replace_in_file("hello/CMakeLists.txt", "PROJECT(HelloWorld)", + '''PROJECT(HelloWorld) +include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake) +conan_basic_setup()''') + + def build(self): + cmake = CMake(self) + cmake.configure(source_folder="hello") + cmake.build() + + # Explicit way: + # self.run('cmake %s/hello %s' + # % (self.source_folder, cmake.command_line)) + # self.run("cmake --build . %s" % cmake.build_config) + + def package(self): + self.copy("*.h", dst="include", src="hello") + self.copy("*hello.lib", dst="lib", keep_path=False) + self.copy("*.dll", dst="bin", keep_path=False) + self.copy("*.so", dst="lib", keep_path=False) + self.copy("*.dylib", dst="lib", keep_path=False) + self.copy("*.a", dst="lib", keep_path=False) + + def package_info(self): + self.cpp_info.libs = ["hello"] + |