PremakeDeps¶
警告
此功能是实验性的,可能会发生重大更改。有关更多信息,请参阅 Conan 稳定性 部分。
PremakeDeps 是 Premake 的依赖生成器。该生成器可以在 conanfile 中按名称使用
conanfile.py¶
class Pkg(ConanFile):
generators = "PremakeDeps"
conanfile.txt¶
[generators]
PremakeDeps
它也可以在 conanfile 的 generate() 方法中完全实例化
from conan import ConanFile
from conan.tools.premake import PremakeDeps
class App(ConanFile):
settings = "os", "arch", "compiler", "build_type"
requires = "zlib/1.3.1"
def generate(self):
deps = PremakeDeps(self)
deps.generate()
重要
PremakeDeps 生成器必须与 PremakeToolchain 生成器结合使用,因为它会生成一个 include('conandeps.premake5.lua'),该脚本将由工具链自动包含。
生成的文件¶
PremakeDeps 将生成一个 conandeps.premake5.lua 脚本文件,该文件将在稍后由工具链注入,并在 conanfile.generators_folder 中为每个依赖项生成以下文件
conan_<pkg>.premake5.lua:将根据build_type和架构包含适当的脚本。conan_<pkg>_vars_<config>.premake5.lua:将包含以下信息,针对特定的依赖项、架构和构建类型includedirslibdirsbindirssysincludedirsframeworkdirsframeworkslibssyslibsdefinescxxflagscflagssharedlinkflagsexelinkflags
所有这些信息都将加载到 conandeps.premake5.lua 脚本中,并在稍后注入到主 premake 脚本中,从而实现与 conan 的透明且易于使用的依赖管理。