あなたがアクセスできるようにあなたは、あなたのbuild()
メソッド内の依存関係モデルへのフルアクセス権を持っている:
def build(self):
print(self.deps_cpp_info["OpenSSL"].rootpath)
print(self.deps_cpp_info["OpenSSL"].include_paths)
print(self.deps_cpp_info["OpenSSL"].lib_paths)
print(self.deps_cpp_info["OpenSSL"].bin_paths)
print(self.deps_cpp_info["OpenSSL"].libs)
print(self.deps_cpp_info["OpenSSL"].defines)
print(self.deps_cpp_info["OpenSSL"].cflags)
print(self.deps_cpp_info["OpenSSL"].cppflags)
print(self.deps_cpp_info["OpenSSL"].sharedlinkflags)
print(self.deps_cpp_info["OpenSSL"].exelinkflags)
また、あなたが(すべての依存関係/要件について)集計値にアクセスしたい場合は、あなたが行うことができます:
def build(self):
cmake = CMake(self)
# Assuming there is only 1 include path, otherwise, we could join it
cmake.definitions["SSL_INCLUDE_PATH"] = self.deps_cpp_info["OpenSSL"].include_paths[0]
0:
def build(self):
print(self.deps_cpp_info.include_paths)
print(self.deps_cpp_info.lib_paths)
...
ので、これらの値が与えられ、あなたのような何かができるCMakeの場合には、ビルドシステムに渡すことができます
これは、-DSSL_INCLUDE_PATH=<path to openssl include>
フラグを含むcmakeコマンドに変換されます。
複数構成パッケージの場合は、(http://docs.conan.io/en/latest/packaging/package_info.html#multi-configuration-packages)を確認できます。
def build(self):
# besides the above values, that will contain data for both configs
# you can access information specific for each configuration
print(self.deps_cpp_info["OpenSSL"].debug.rootpath)
print(self.deps_cpp_info["OpenSSL"].debug.include_paths)
...
print(self.deps_cpp_info["OpenSSL"].release.rootpath)
print(self.deps_cpp_info["OpenSSL"].release.include_paths)
...
あなたが意味する場合は、どのように依存関係のモデルにアクセスするには、消費者のレシピ(RabbitMQの)からあなたが '' self.deps_cpp_info経由でアクセスすることができます。彼らはあなたにも、後でお使いのモデルで使用することができ、
debug, release
のconfigsを定義します["OpenSSL"] ''。そのオブジェクトには、 '' include_paths''、 '' lib_paths''などの情報が含まれます。http://conanio.readthedocs.io/en/latest/integrations/other.htmlをチェックすることができます。これが理にかなっているかどうか教えてください。そして、私は拡張答えを詳述します – drodri@drodri +110xそれは理にかなっていますが、ここでは2つの異なるOpenSSLパッケージが必要です。 1つはデバッグ用、もう1つはリリース用です。今では、RabbitMQ-CのDebugとReleaseバリアント用に異なるパッケージを作成しています。このため、同じ値を使用できますが、RabbitMQ-Cのデバッグ用とリリース用の両方のパッケージを作成する場合? – bobeff