コード例 #1
0
ファイル: conanfile.py プロジェクト: kapilsh/conan-scripts
 def package_info(self):
     self.cpp_info.libs = collect_libs(self)
     self.env_info.LD_LIBRARY_PATH.append("{}/lib".format(
         self.package_folder))
     self.env_info.PATH.append(os.path.join(self.package_folder, "bin"))
     self.cpp_info.includedirs = ['include']
     self.env_info.CPATH.append("{}/include".format(self.package_folder))
コード例 #2
0
 def package_info(self):
     self.cpp_info.libs = collect_libs(self)
     self.env_info.LD_LIBRARY_PATH.append("{}/lib".format(
         self.package_folder))
     self.env_info.PATH.append(os.path.join(self.package_folder, "bin"))
     self.cpp_info.includedirs = ['include']
     self.env_info.CPATH.append("{}/include".format(self.package_folder))
     self.cpp_info.defines.append('ZMQ_STATIC')
     self.cpp_info.builddirs.append(
         os.path.join(self.package_folder, 'share', 'cmake', 'ZeroMQ'))
コード例 #3
0
 def collect_libs(self, folder=None):
     self.output.warn("'self.collect_libs' is deprecated, "
                      "use 'tools.collect_libs(self)' instead")
     return tools.collect_libs(self, folder=folder)
コード例 #4
0
 def collect_libs(self, folder=None):
     conan_v2_error(
         "'self.collect_libs' is deprecated, use 'tools.collect_libs(self)' instead"
     )
     return tools.collect_libs(self, folder=folder)
コード例 #5
0
ファイル: tools_test.py プロジェクト: yfxu1990/conan
    def collect_libs_test(self):
        conanfile = ConanFileMock()
        # Without package_folder
        conanfile.package_folder = None
        result = tools.collect_libs(conanfile)
        self.assertEqual([], result)

        # Default behavior
        conanfile.package_folder = temp_folder()
        mylib_path = os.path.join(conanfile.package_folder, "lib", "mylib.lib")
        save(mylib_path, "")
        conanfile.cpp_info = CppInfo("")
        result = tools.collect_libs(conanfile)
        self.assertEqual(["mylib"], result)

        # Custom folder
        customlib_path = os.path.join(conanfile.package_folder, "custom_folder", "customlib.lib")
        save(customlib_path, "")
        result = tools.collect_libs(conanfile, folder="custom_folder")
        self.assertEqual(["customlib"], result)

        # Custom folder doesn't exist
        result = tools.collect_libs(conanfile, folder="fake_folder")
        self.assertEqual([], result)
        self.assertIn("Lib folder doesn't exist, can't collect libraries:", conanfile.output)

        # Use cpp_info.libdirs
        conanfile.cpp_info.libdirs = ["lib", "custom_folder"]
        result = tools.collect_libs(conanfile)
        self.assertEqual(["customlib", "mylib"], result)

        # Custom folder with multiple libdirs should only collect from custom folder
        self.assertEqual(["lib", "custom_folder"], conanfile.cpp_info.libdirs)
        result = tools.collect_libs(conanfile, folder="custom_folder")
        self.assertEqual(["customlib"], result)

        # Warn same lib different folders
        conanfile = ConanFileMock()
        conanfile.package_folder = temp_folder()
        conanfile.cpp_info = CppInfo("")
        custom_mylib_path = os.path.join(conanfile.package_folder, "custom_folder", "mylib.lib")
        lib_mylib_path = os.path.join(conanfile.package_folder, "lib", "mylib.lib")
        save(custom_mylib_path, "")
        save(lib_mylib_path, "")
        conanfile.cpp_info.libdirs = ["lib", "custom_folder"]
        result = tools.collect_libs(conanfile)
        self.assertEqual(["mylib"], result)
        self.assertIn("Library 'mylib' was either already found in a previous "
                      "'conanfile.cpp_info.libdirs' folder or appears several times with a "
                      "different file extension", conanfile.output)

        # Warn lib folder does not exist with correct result
        conanfile = ConanFileMock()
        conanfile.package_folder = temp_folder()
        conanfile.cpp_info = CppInfo("")
        lib_mylib_path = os.path.join(conanfile.package_folder, "lib", "mylib.lib")
        save(lib_mylib_path, "")
        no_folder_path = os.path.join(conanfile.package_folder, "no_folder")
        conanfile.cpp_info.libdirs = ["no_folder", "lib"]  # 'no_folder' does NOT exist
        result = tools.collect_libs(conanfile)
        self.assertEqual(["mylib"], result)
        self.assertIn("WARN: Lib folder doesn't exist, can't collect libraries: %s"
                      % no_folder_path, conanfile.output)
コード例 #6
0
 def collect_libs(self, folder=None):
     conan_v2_behavior(
         "'self.collect_libs' is deprecated, use 'tools.collect_libs(self)' instead",
         v1_behavior=self.output.warn)
     return tools.collect_libs(self, folder=folder)