12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- from conans import ConanFile, CMake, tools
- class LibOggConan(ConanFile):
- name = "libogg"
- version = "1.3.4"
- license = "BSD-2-Clause"
- author = "Shawn Morford <DarkMorford@Gmail.com>"
- url = "https://code.darkmorford.net/conan-pkg/libogg"
- description = ("Ogg is a multimedia container format, and the native file and stream format for the "
- "Xiph.org multimedia codecs. As with all Xiph.org technology it is an open format "
- "free for anyone to use.")
- homepage = "https://www.xiph.org/ogg/"
- topics = ("xiph.org", "media", "container")
- 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 configure(self):
- del self.settings.compiler.libcxx
- 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"]
|