コード例 #1
0
ファイル: conanfile.py プロジェクト: yuweishan/conan-brotli
 def build(self):
     cmake = CMake(self)
     cmake.configure(defs={"BROTLI_BUNDLED_MODE":"ON"})
     pattern = "brotli%s"
     if not self.options.shared: pattern += "-static"
     for libname in ["dec", "enc"]:
         cmake.build(target=pattern % libname)
コード例 #2
0
ファイル: conanfile.py プロジェクト: wdobbe/libtftp
 def build(self):
     cmake = CMake(self)
     cmake.definitions["CMAKE_TOOLCHAIN_FILE"] = os.path.join(os.getcwd(), 'conan_paths.cmake')
     cmake.definitions["BUILD_SHARED_LIBS"] = self.options.shared
     cmake.configure()
     cmake.build()
     cmake.install()
コード例 #3
0
ファイル: conanfile.py プロジェクト: Alabuta/IslandEngine
 def build(self):
     cmake=CMake(self)
     cmake.configure(defs={
         'PROJECT_VERSION': self.version
     })
     cmake.configure()
     cmake.build()
コード例 #4
0
    def build(self):
        if self.settings.os == "Windows" and self.version == "master":
            raise ConanException("Trunk builds are not supported on Windows (cannot build directly from master git repository).")

        if self.settings.compiler == "Visual Studio":
            env = VisualStudioBuildEnvironment(self)
            with tools.environment_append(env.vars):
                version = min(12, int(self.settings.compiler.version.value))
                version = 10 if version == 11 else version
                cd_build = "cd %s\\%s\\build\\vc%s" % (self.conanfile_directory, self.source_directory, version)
                build_command = build_sln_command(self.settings, "glew.sln")
                vcvars = vcvars_command(self.settings)
                self.run("%s && %s && %s" % (vcvars, cd_build, build_command.replace("x86", "Win32")))
        else:
            if self.settings.os == "Windows":
                replace_in_file("%s/build/cmake/CMakeLists.txt" % self.source_directory, \
                                "if(WIN32 AND (NOT MSVC_VERSION LESS 1600)", \
                                "if(WIN32 AND MSVC AND (NOT MSVC_VERSION LESS 1600)")

            if self.version == "master":
                self.run("make extensions")

            cmake = CMake(self)
            cmake.configure(source_dir="%s/build/cmake" % self.source_directory, defs={"BUILD_UTILS": "OFF"})
            cmake.build()
コード例 #5
0
 def build(self):
     cmake = CMake(self)
     cmake.definitions['CMAKE_INSTALL_PREFIX'] = os.path.join(self.conanfile_directory, 'install')
     cmake.definitions['BUILD_TEST'] = False
     cmake.definitions['BUILD_SHARED'] = self.options.shared
     cmake.configure(build_dir='_build')
     cmake.build(target='install')
コード例 #6
0
ファイル: conanfile.py プロジェクト: hoxnox/snappystream
 def build(self):
     cmake = CMake(self)
     cmake.definitions["WITH_BOOST_IOSTREAMS"] = self.options.boost_iostreams
     cmake.definitions["WITH_CONAN"] = True
     cmake.configure()
     cmake.build()
     cmake.install()
コード例 #7
0
 def build(self):
     if self.settings.compiler == "Visual Studio" and self.settings.compiler.version != 12:
         self.settings.compiler.version = 12
     cmake = CMake(self)
     cmake.definitions["MYSQL_MAINTAINER_MODE"]=0
     cmake.configure(source_folder="mysqlclient", build_folder="mysqlclient/build")
     cmake.build()
コード例 #8
0
ファイル: conanfile.py プロジェクト: 2gis/uniassert
 def build(self):
     cmake = CMake(self)
     configure_args = {
         'args': ['-DUNIASSERT_TESTS=ON', ] if self.develop else None,
         'source_dir': self.source_subdir(),
     }
     cmake.configure(**configure_args)
     cmake.build()
     cmake.test()
コード例 #9
0
ファイル: conanfile.py プロジェクト: mpherg/sgp4
 def build(self):
     cmake = CMake(self)
     cmake.definitions["BUILD_SHARED_LIBS"] = "ON" if self.options.shared else "OFF"
     cmake.definitions["CMAKE_POSITION_INDEPENDENT_CODE"] = "ON" if self.options.fpic else "OFF"
     cmake.definitions["CONAN_SYSTEM_INCLUDES"] = "ON"
     if os.path.exists(self.source_folder + "/sgp4/conanfile.py"):
         self.src_dir = self.source_folder + "/sgp4"
     cmake.configure(source_dir=self.src_dir, build_dir=".")
     cmake.build()
コード例 #10
0
ファイル: conanfile.py プロジェクト: hoxnox/procman
 def do_build(self):
     cmake = CMake(self)
     cmake.build_dir = "{staging_dir}/src".format(staging_dir=self.staging_dir)
     tools.untargz("procman-{v}.tar.gz".format(v=self.version), cmake.build_dir)
     cmake.configure(defs={
             "CMAKE_INSTALL_PREFIX": self.staging_dir,
             "CMAKE_INSTALL_LIBDIR": "lib"
         }, source_dir="procman-{v}".format(v=self.version))
     cmake.build(target="install")
コード例 #11
0
ファイル: conanfile.py プロジェクト: royalharsh/flatbuffers
 def build(self):
     """Configure, build and install FlatBuffers using CMake.
     """
     self._inject_magic_lines()
     cmake = CMake(self)
     cmake.definitions["FLATBUFFERS_BUILD_TESTS"] = False
     cmake.definitions["FLATBUFFERS_BUILD_SHAREDLIB"] = self.options.shared
     cmake.configure()
     cmake.build()
     cmake.install()
コード例 #12
0
ファイル: conanfile.py プロジェクト: charlescva/common
    def build(self):
	self.run("export PATH=$PATH:$PWD/../cmake/build/bin")
        cmake = CMake(self)
	
	# Not working?
	#cmake.definitions["CONAN_CMAKE_FIND_ROOT_PATH"] = "../cmake/build"
	
	cmake.verbose = True
        cmake.configure(source_folder="gflags")
        cmake.build()
コード例 #13
0
ファイル: conanfile.py プロジェクト: Blosc/bcolz
    def build(self):
        os.mkdir("build")
        tools.replace_in_file("CMakeLists.txt", "project(blosc)", '''project(blosc)
            include(${CMAKE_BINARY_DIR}/../conanbuildinfo.cmake)
            conan_basic_setup(NO_OUTPUT_DIRS)''')
        cmake = CMake(self)
        cmake.definitions["BUILD_TESTS"] = "ON" if self.run_tests else "OFF"
        cmake.definitions["BUILD_BENCHMARKS"] = "ON" if self.run_tests else "OFF"
        cmake.definitions["BUILD_SHARED"] = "ON" if (self.options.shared or self.run_tests) else "OFF"
        cmake.definitions["BUILD_STATIC"] = "OFF" if self.options.shared else "ON"
        cmake.configure(build_folder="build")
        cmake.build()

        if self.run_tests:
            self.output.warn("Running tests!!")
            self.launch_tests()
コード例 #14
0
ファイル: conanfile.py プロジェクト: grisumbras/enum-flags
    def test(self):
        builder = b2.B2(self)
        builder.build_folder = os.path.join(self.build_folder, "base")
        builder.configure()
        builder.build()

        builder = b2.B2(self)
        builder.source_folder = os.path.join(self.source_folder, "pkgconfig")
        builder.build_folder = os.path.join(self.build_folder, "pkgconfig")
        builder.configure()
        builder.build()

        builder = CMake(self)
        builder.configure(
            source_folder=os.path.join(self.source_folder, "cmake"),
            build_folder=os.path.join(self.build_folder, "cmake"),
        )
        builder.build()
コード例 #15
0
ファイル: conanfile.py プロジェクト: Aquaveo/MFLib
 def build(self):
     """Build the package."""
     cmake = CMake(self)
     cmake.definitions["BUILD_TESTING"] = False
     cmake.definitions["USE_DBLPREC_AS_REAL"] = True
     cmake.configure(source_folder=".")
     cmake.build()
     print("***********(0.0)*************")
     try:
         # cmake.test()
         tests = False
         print(tests)
     except ConanException:
         raise
     finally:
         if os.path.isfile("TEST-cxxtest.xml"):
             with open("TEST-cxxtest.xml", "r") as f:
                 for line in f.readlines():
                     no_newline = line.strip('\n')
                     print(no_newline)
         print("***********(0.0)*************")
コード例 #16
0
ファイル: conanfile.py プロジェクト: inexor-game/code
    def build(self):
        cmake = CMake(self)
        if 'build_test' in os.environ or 'build_all' in os.environ:
            cmake.definitions['BUILD_TEST'] = "1"
        if 'build_server' in os.environ or 'build_all' in os.environ:
            cmake.definitions['BUILD_SERVER'] = "1"
        if 'create_package' in os.environ:
            cmake.definitions['CREATE_PACKAGE'] = "1"

        cmake.configure(source_folder='{}'.format(self.source_folder))
        cmake.build()
        cmake.install()
        if 'create_package' in os.environ:
            cmake.build(target="package")
        if 'create_package_debug' in os.environ:
            cmake.build(target="package_debug")
コード例 #17
0
ファイル: conanfile.py プロジェクト: MoZhonghua/gporca
 def build(self):
     cmake = CMake(self)
     cmake_defines = {
                     }
     cmake.configure(defs=cmake_defines)
     cmake.build(target="install")
コード例 #18
0
ファイル: conanfile.py プロジェクト: bilke/conan-eigen3
 def build(self):
     cmake = CMake(self)
     cmake.configure(source_dir=self.conanfile_directory, build_dir="./")
     cmake.build()
コード例 #19
0
ファイル: conanfile.py プロジェクト: mbrucher/AudioTK
 def build(self):
     cmake = CMake(self)
     cmake.definitions["ENABLE_PYTHON"] = "OFF"
     cmake.definitions["ENABLE_GPL"] = "ON"
     cmake.configure(source_folder=".")
     cmake.build()
コード例 #20
0
 def build(self):
     cmake = CMake(self)
     cmake.configure(source_folder="src")  # in src must be a makefile.
     cmake.build()
コード例 #21
0
 def build(self):
     cmake = CMake(self)
     cmake.configure(source_folder="sdk/angelscript/projects/cmake")
     cmake.build()
コード例 #22
0
ファイル: conanfile.py プロジェクト: CloudI/CloudI
 def build(self):
     cmake = CMake(self)
     cmake.configure(defs={'CMAKE_VERBOSE_MAKEFILE': 'ON'})
     cmake.build()
コード例 #23
0
 def build(self):
     if not tools.cross_building(self.settings):
         cmake = CMake(self)
         cmake.configure()
         cmake.build()
コード例 #24
0
ファイル: conanfile.py プロジェクト: elix22/FBX2glTF
 def build(self):
     cmake = CMake(self)
     cmake.definitions["FBXSDK_SDKS"] = os.getenv("FBXSDK_SDKS", "sdk")
     cmake.configure()
     cmake.build()
コード例 #25
0
 def build(self):
     cmake = CMake(self)
     cmake.definitions["TEST_LIBRARY"] = self._test_shared_library
     cmake.configure()
     cmake.build()
コード例 #26
0
 def build(self):
    cmake = CMake(self)
    cmake.definitions["BUILD_WITH_TESTS"] = self.options.with_tests
    cmake.definitions["BUILD_WITH_DEMO"] = self.options.with_demo
    cmake.configure()
    cmake.build()
コード例 #27
0
 def build(self):
     cmake = CMake(self)
     # Current dir is "test_package/build/<build_id>" and CMakeLists.txt is in "test_package"
     cmake.configure(source_dir=self.source_folder,
                     build_dir=self.build_folder)
     cmake.build()
コード例 #28
0
 def build(self):  # this is not building a library, just tests
     cmake = CMake(self)
     cmake.configure()
     cmake.build()
     cmake.test()
コード例 #29
0
 def build(self):
     cmake = CMake(self)
     cmake.configure()
     cmake.build()
     cmake.test()  # Build the "RUN_TESTS" or "test" target
     cmake.install()
コード例 #30
0
 def build(self):
     cmake = CMake(self)
     # Current dir is "test_package/build/<build_id>" and CMakeLists.txt is in "test_package"
     cmake.configure(source_dir=self.conanfile_directory, build_dir="./")
     cmake.build()
コード例 #31
0
ファイル: conanfile.py プロジェクト: chaubold/demo-libbar
 def build(self):
     cmake = CMake(self, generator="Unix Makefiles")
     # Current dir is "test_package/build/<build_id>" and CMakeLists.txt is
     # in "test_package"
     cmake.configure()
     cmake.build()
コード例 #32
0
 def build(self):
     cmake = CMake(self, msbuild_verbosity='normal')
     cmake.verbose = True
     cmake.configure()
     cmake.build()
     self.cmake_is_multi_configuration = cmake.is_multi_configuration
コード例 #33
0
 def build(self):
     cmake = CMake(self)
     # Current dir is "test_package/build/<build_id>" and CMakeLists.txt is in "test_package"
     cmake.configure(args=['-DCMAKE_CXX_STANDARD=%s' % self.options.stdcxx])
     cmake.build()
コード例 #34
0
 def build(self):
     cmake = CMake(self)
     cmake.definitions["WITH_SSL"] = self.options["rabbitmq-c"].ssl
     cmake.configure()
     cmake.build()
コード例 #35
0
 def build(self):
     cmake = CMake(self)
     cmake.definitions["BUILD_EXAMPLES"] = self.options.build_examples
     cmake.configure(source_dir="%s/cmake" % self.source_folder)
     cmake.build()
コード例 #36
0
    def build(self):
        cmake = CMake(self)
        try:
            os.makedirs(INSTALL_DIR)
        except OSError:
            pass

        try:
            shutil.rmtree(BUILD_DIR)
        except OSError:
            pass

        cmake.configure(defs={
            "CLANG_INCLUDE_DOCS":
            False,
            "CLANG_INCLUDE_TESTS":
            False,
            "CLANG_TOOLS_INCLUDE_EXTRA_DOCS":
            False,
            "COMPILER_RT_INCLUDE_TESTS":
            False,
            "LIBCXX_INCLUDE_TESTS":
            False,
            "LIBCXX_INCLUDE_DOCS":
            False,
            "LLVM_INCLUDE_TESTS":
            False,
            "LLVM_INCLUDE_TOOLS":
            True,
            "LLVM_BUILD_TOOLS":
            True,
            "LLVM_TOOL_LLVM_AR_BUILD":
            False,
            "LLVM_TOOL_LLVM_AS_BUILD":
            False,
            "LLVM_TOOL_LLVM_AS_FUZZER_BUILD":
            False,
            "LLVM_TOOL_LLVM_BUGPOINT_BUILD":
            False,
            "LLVM_TOOL_LLVM_BUGPOINT_PASSES_BUILD":
            False,
            "LLVM_TOOL_LLVM_BCANALYZER_BUILD":
            False,
            "LLVM_TOOL_LLVM_COV_BUILD":
            False,
            "LLVM_TOOL_LLVM_CXXDUMP_BUILD":
            False,
            "LLVM_TOOL_LLVM_DSYMUTIL_BUILD":
            False,
            "LLVM_TOOL_LLVM_LLC_BUILD":
            False,
            "LLVM_TOOL_LLVM_LLI_BUILD":
            False,
            "LLVM_TOOL_LLVM_DWARFDUMP_BUILD":
            False,
            "LLVM_TOOL_LLVM_DIS_BUILD":
            False,
            "LLVM_TOOL_LLVM_EXTRACT_BUILD":
            False,
            "LLVM_TOOL_LLVM_C_TEST_BUILD":
            False,
            "LLVM_TOOL_LLVM_DIFF_BUILD":
            False,
            "LLVM_TOOL_LLVM_GO_BUILD":
            False,
            "LLVM_TOOL_LLVM_JITLISTENER_BUILD":
            False,
            "LLVM_TOOL_LLVM_MCMARKUP_BUILD":
            False,
            "LLVM_TOOL_LLVM_MC_BUILD":
            False,
            "LLVM_TOOL_LLVM_MC_FUZZER_BUILD":
            False,
            "LLVM_TOOL_LLVM_NM_BUILD":
            False,
            "LLVM_TOOL_LLVM_OBJDUMP_BUILD":
            False,
            "LLVM_TOOL_LLVM_PDBDUMP_BUILD":
            False,
            "LLVM_TOOL_LLVM_PROFDATA_BUILD":
            False,
            "LLVM_TOOL_LLVM_RTDYLD_BUILD":
            False,
            "LLVM_TOOL_LLVM_SIZE_BUILD":
            False,
            "LLVM_TOOL_LLVM_SPLIT_BUILD":
            False,
            "LLVM_TOOL_LLVM_STRESS_BUILD":
            False,
            "LLVM_TOOL_LLVM_SYMBOLIZER_BUILD":
            False,
            "LLVM_TOOL_LLVM_LTO_BUILD":
            False,
            "LLVM_TOOL_LLVM_OBJ2YAML_BUILD":
            False,
            "LLVM_TOOL_LLVM_OPT_BUILD":
            False,
            "LLVM_TOOL_LLVM_SANCOV_BUILD":
            False,
            "LLVM_TOOL_LLVM_SANSTATS_BUILD":
            False,
            "LLVM_TOOL_LLVM_VERIFY_USELISTORDER_BUILD":
            False,
            "LLVM_TOOL_LLVM_XCODE_TOOLCHAIN_BUILD":
            False,
            "LLVM_TOOL_LLVM_YAML2OBJ_BUILD":
            False,
            "LLVM_INCLUDE_EXAMPLES":
            False,
            "LLVM_INCLUDE_GO_TESTS":
            False,
            "LLVM_BUILD_TESTS":
            False,
            "CMAKE_VERBOSE_MAKEFILE":
            True,
            "LLVM_TARGETS_TO_BUILD":
            "X86",
            "CMAKE_INSTALL_PREFIX":
            os.path.join(self.build_folder, INSTALL_DIR),
            "BUILD_SHARED_LIBS":
            self.options.shared if "shared" in self.options else False
        },
                        source_folder="src")
        cmake.build()
        cmake.install()
コード例 #37
0
ファイル: conanfile.py プロジェクト: ecashptyltd/conan-zlib
    def _build_zlib(self):
        with tools.chdir(self._source_subfolder):
            for filename in ['zconf.h', 'zconf.h.cmakein', 'zconf.h.in']:
                tools.replace_in_file(
                    filename,
                    '#ifdef HAVE_UNISTD_H    /* may be set to #if 1 by ./configure */',
                    '#if defined(HAVE_UNISTD_H) && (1-HAVE_UNISTD_H-1 != 0)')
                tools.replace_in_file(
                    filename,
                    '#ifdef HAVE_STDARG_H    /* may be set to #if 1 by ./configure */',
                    '#if defined(HAVE_STDARG_H) && (1-HAVE_STDARG_H-1 != 0)')
            tools.mkdir("_build")
            with tools.chdir("_build"):
                if not tools.os_info.is_windows:
                    env_build = AutoToolsBuildEnvironment(self)

                    if tools.is_apple_os(
                            self.settings.os) and self.settings.get_safe(
                                "os.version"):
                        env_build.flags.append(
                            tools.apple_deployment_target_flag(
                                self.settings.os, self.settings.os.version))

                    if self.settings.os == "Macos":
                        old_str = '-install_name $libdir/$SHAREDLIBM'
                        new_str = '-install_name $SHAREDLIBM'
                        tools.replace_in_file("../configure", old_str, new_str)

                    # https://github.com/madler/zlib/issues/268
                    tools.replace_in_file(
                        '../gzguts.h',
                        '#if defined(_WIN32) || defined(__CYGWIN__)',
                        '#if defined(_WIN32) || defined(__MINGW32__)')

                    if self.settings.os == "Windows":  # Cross building to Linux
                        tools.replace_in_file(
                            "../configure",
                            'LDSHAREDLIBC="${LDSHAREDLIBC--lc}"',
                            'LDSHAREDLIBC=""')
                    # Zlib configure doesnt allow this parameters

                    if self.settings.os == "iOS":
                        tools.replace_in_file(
                            "../gzguts.h", '#ifdef _LARGEFILE64_SOURCE',
                            '#include <unistd.h>\n\n#ifdef _LARGEFILE64_SOURCE'
                        )

                    # configure passes CFLAGS to linker, should be LDFLAGS
                    tools.replace_in_file("../configure", "$LDSHARED $SFLAGS",
                                          "$LDSHARED $LDFLAGS")
                    # same thing in Makefile.in, when building tests/example executables
                    tools.replace_in_file("../Makefile.in",
                                          "$(CC) $(CFLAGS) -o",
                                          "$(CC) $(LDFLAGS) -o")

                    env_build_vars = env_build.vars
                    if tools.is_apple_os(self.settings.os):
                        # force macOS ranlib because ranlib from binutils produced malformed ar archives
                        env_build_vars['RANLIB'] = tools.XCRun(
                            self.settings).ranlib

                    if self.settings.os == "Windows" and tools.os_info.is_linux:
                        # we need to build only libraries without test example and minigzip
                        if self.options.shared:
                            make_target = "zlib1.dll"
                        else:
                            make_target = "libz.a"
                        # Let our profile to declare what is needed.
                        tools.replace_in_file("../win32/Makefile.gcc",
                                              'LDFLAGS = $(LOC)', '')
                        tools.replace_in_file("../win32/Makefile.gcc",
                                              'AS = $(CC)', '')
                        tools.replace_in_file("../win32/Makefile.gcc",
                                              'AR = $(PREFIX)ar', '')
                        tools.replace_in_file("../win32/Makefile.gcc",
                                              'CC = $(PREFIX)gcc', '')
                        tools.replace_in_file("../win32/Makefile.gcc",
                                              'RC = $(PREFIX)windres', '')
                        self.run("cd .. && make -f win32/Makefile.gcc %s" %
                                 make_target)
                    else:
                        # we need to build only libraries without test example and minigzip
                        if self.options.shared:
                            if self.settings.os == "Macos":
                                make_target = "libz.%s.dylib" % self.version
                            else:
                                make_target = "libz.so.%s" % self.version
                        else:
                            make_target = "libz.a"
                        env_build.configure("../",
                                            build=False,
                                            host=False,
                                            target=False,
                                            vars=env_build_vars)
                        env_build.make(target=make_target)
                else:
                    cmake = CMake(self)
                    cmake.configure(build_dir=".")
                    # we need to build only libraries without test example/example64 and minigzip/minigzip64
                    if self.options.shared:
                        make_target = "zlib"
                    else:
                        make_target = "zlibstatic"
                    cmake.build(build_dir=".", target=make_target)
コード例 #38
0
 def build(self):
     cmake = CMake(self)
     # Current dir is "test_package/build/<build_id>" and CMakeLists.txt is in "test_package"
     cmake.configure(build_dir="./")
     cmake.build()
コード例 #39
0
ファイル: conanfile.py プロジェクト: tkhyn/conan-gsl
 def build(self):
     cmake = CMake(self)
     cmake.configure(source_folder="gsl-2.4.0")
     cmake.build()
コード例 #40
0
 def build(self):
     cmake = CMake(self)
     cmake.configure(source_folder="hello")
     cmake.build()
コード例 #41
0
    def build(self):

        self.output.info("cwd=%s" % (os.getcwd()))

        # put conan inclusion into CMakeLists.txt file or fail (strict=True)
        self.output.info('Patching CMakeLists.txt')
        tools.replace_in_file(os.sep.join([self.folder_name, "CMakeLists.txt"]), "project(RdKafka)",
        '''project(RdKafka)
           include(${CMAKE_BINARY_DIR}/../../conanbuildinfo.cmake)
           conan_basic_setup()''')

        # Some situations like using a bad passphrase causes rk to never be initialized
        # so calling this function would cause a segfault.  Input validation would be helpful.
        tools.replace_in_file(os.sep.join([self.folder_name, "src", "rdkafka.c"]),
        '''static void rd_kafka_destroy_app (rd_kafka_t *rk, int blocking) {
        thrd_t thrd;
#ifndef _MSC_VER
	int term_sig = rk->rk_conf.term_sig;
#endif''',
'''static void rd_kafka_destroy_app (rd_kafka_t *rk, int blocking) {
        if (rk == NULL)
        {
            return;
        }
        thrd_t thrd;
#ifndef _MSC_VER
	int term_sig = rk->rk_conf.term_sig;
#endif''')

        if tools.os_info.is_windows:

            # rdkafka C++ library does not export the special partition and offset constants/values
            # variables from the DLL, and looks like the library is switching to a preprocessor define
            # instead.  This change includes the C-header file just to get the macro values, and then
            # changes the constants from being used as imported values to read from the macros.
            tools.replace_in_file(os.sep.join([self.folder_name, "examples", "rdkafka_example.cpp"]), '#include "rdkafkacpp.h"',
    '''#include "rdkafkacpp.h"
    #include "rdkafka.h"''')
            tools.replace_in_file(os.sep.join([self.folder_name, "examples", "rdkafka_example.cpp"]), 'RdKafka::Topic::PARTITION_UA', 'RD_KAFKA_PARTITION_UA')
            tools.replace_in_file(os.sep.join([self.folder_name, "examples", "rdkafka_example.cpp"]), 'RdKafka::Topic::OFFSET_BEGINNING', 'RD_KAFKA_OFFSET_BEGINNING')
            tools.replace_in_file(os.sep.join([self.folder_name, "examples", "rdkafka_example.cpp"]), 'RdKafka::Topic::OFFSET_END', 'RD_KAFKA_OFFSET_END')
            tools.replace_in_file(os.sep.join([self.folder_name, "examples", "rdkafka_example.cpp"]), 'RdKafka::Topic::OFFSET_STORED', 'RD_KAFKA_OFFSET_STORED')


            # src/rd.h includes win32_config.h which is not generated by CMake/Conan
            # so it builds librdkafka with fixed settings (!!!).
            # This change removes that choice, and  both platforms use the generated config.h file
            self.output.info('Patching src/rd.h file')
            tools.replace_in_file(os.sep.join([self.folder_name, 'src', 'rd.h']),
'''
#ifdef _MSC_VER
/* Visual Studio */
#include "win32_config.h"
#else
/* POSIX / UNIX based systems */
#include "../config.h" /* mklove output */
#endif
''',
'#include "../config.h"')

            files.mkdir("./{}/build".format(self.folder_name))
            with tools.chdir("./{}/build".format(self.folder_name)):
                cmake = CMake(self)

                cmake.definitions['RDKAFKA_BUILD_STATIC'] = "OFF" if self.options.shared else "ON"

                cmake.definitions['ENABLE_DEVEL'] = "ON" if self.options.with_devel_asserts else "OFF"
                cmake.definitions['ENABLE_REFCNT_DEBUG'] = 'ON' if self.options.with_refcount_debug else "OFF"
                cmake.definitions['ENABLE_SHAREDPTR_DEBUG'] = 'ON' if self.options.with_sharedptr_debug else "OFF"

                cmake.definitions["RDKAFKA_BUILD_EXAMPLES"] = "ON" if self.options.build_examples else "OFF"
                cmake.definitions["RDKAFKA_BUILD_TESTS"] = "ON"  if self.options.build_tests else "OFF"
                cmake.definitions["WITH_LIBDL"] = "OFF"
                cmake.definitions["WITH_PLUGINS"] = "OFF"
                cmake.definitions["WITH_SASL"] = "OFF"
                cmake.definitions["WITH_SSL"] = "ON" if self.options.with_openssl else "OFF"
                cmake.definitions["WITH_ZLIB"] = "ON" if self.options.with_zlib else "OFF"

                if self.settings.build_type == "Debug":
                    cmake.definitions["WITHOUT_OPTIMIZATION"] = "ON"
                if self.options.shared:
                    cmake.definitions["BUILD_SHARED_LIBS"] = "ON"

                # Enables overridding of default window build settings
                cmake.definitions["WITHOUT_WIN32_CONFIG"] = "ON"

                cmake.configure(source_dir="..", build_dir=".")
                cmake.build(build_dir=".")
        else:
            configure_args = [
                "--prefix=",
                "--disable-sasl"
            ]

            if not self.options.with_openssl:
                configure_args.append('--disable-ssl')
            if not self.options.with_zlib:
                configure_args.append('--disable-lz4')

            if self.options.shared:
                ldflags = os.environ.get("LDFLAGS", "")
                if tools.os_info.is_linux:
                    os.environ["LDFLAGS"] = ldflags + " -Wl,-rpath=\\$$ORIGIN"
                elif tools.os_info.is_macos:
                    os.environ["LDFLAGS"] = ldflags + " -headerpad_max_install_names"
            else:
                configure_args.append("--enable-static")

            if self.settings.build_type == "Debug":
                configure_args.append("--disable-optimization")

            destdir = os.path.join(os.getcwd(), "install")
            with tools.chdir(self.folder_name):
                if tools.os_info.is_macos and self.options.shared:
                    path = os.path.join(os.getcwd(), "mklove", "modules", "configure.lib")
                    tools.replace_in_file(
                        path,
                         '-dynamiclib -Wl,-install_name,$(DESTDIR)$(libdir)/$(LIBFILENAME)',
                         '-dynamiclib -Wl,-install_name,@rpath/$(LIBFILENAME)',
                    )

                env_build = AutoToolsBuildEnvironment(self)
                env_build.configure(args=configure_args)
                env_build.make()
                env_build.make(args=["install", "DESTDIR="+destdir])

        with tools.chdir(self.folder_name):
            os.rename("LICENSE", "LICENSE.librdkafka")
コード例 #42
0
 def build(self):
     os.mkdir("build")
     cmake = CMake(self)
     cmake.configure(source_folder="sources", build_folder="build")
     cmake.build()
     cmake.install()
コード例 #43
0
ファイル: conanfile.py プロジェクト: tomiaijo/scientist
 def build(self):
     cmake = CMake(self)
     cmake.definitions['BENCHMARK_ENABLE_TESTING'] = 'OFF'
     cmake.configure()
     cmake.build()
     cmake.test()
コード例 #44
0
 def build(self):
     cmake = CMake(self)
     cmake.configure()
     cmake.build()
コード例 #45
0
ファイル: conanfile.py プロジェクト: BaroboRobotics/civetweb
 def build(self):
     cmake = CMake(self)
     os.makedirs("./buildit")
     cmake.configure(defs=self.parseOptionsToCMake(), build_dir="./buildit")
     cmake.build()
     cmake.install()
コード例 #46
0
ファイル: conanfile.py プロジェクト: adishavit/argh
 def build(self):
     cmake = CMake(self)
     cmake.configure()
     cmake.build()
コード例 #47
0
 def build(self):
     cmake = CMake(self)
     # Current dir is "test_package/build/<build_id>" and CMakeLists.txt is in "test_package"
     cmake.configure(source_dir=self.conanfile_directory, build_dir="./")
     cmake.build()
コード例 #48
0
ファイル: conanfile.py プロジェクト: BMBurstein/Catch
 def build(self):
     cmake = CMake(self)
     cmake.configure(build_dir="./")
     cmake.build()
コード例 #49
0
 def build(self):
     cmake = CMake(self)
     cmake.definitions["CONAN_CPYTHON_VERSION"] = self.deps_user_info[
         "cpython"].VERSION
     cmake.configure()
     cmake.build()
コード例 #50
0
 def build(self):
     cmake = CMake(self)
     cmake.configure(defs={"CMAKE_VERBOSE_MAKEFILE":True,
         "CMAKE_EXPORT_COMPILE_COMMANDS": True})
     cmake.build()
コード例 #51
0
ファイル: conanfile.py プロジェクト: bincrafters/conan-fmt
 def build(self):
     cmake = CMake(self)
     cmake.definitions["FMT_HEADER_ONLY"] = self.options["fmt"].header_only
     cmake.configure()
     cmake.build()
コード例 #52
0
 def build(self):
     cmake = CMake(self)
     cmake.verbose = True
     cmake.configure()
     cmake.build()
コード例 #53
0
ファイル: conanfile.py プロジェクト: tuncb/BulkFileReader
 def build(self):
     cmake = CMake(self)
     # Current dir is "test_package/build/<build_id>" and CMakeLists.txt is in "test_package"
     cmake.configure()
     cmake.build()
コード例 #54
0
ファイル: conanfile.py プロジェクト: TyRoXx/conan-duktape
 def build(self):
     cmake = CMake(self)
     cmake.configure(source_dir="../../", build_dir="./")
     cmake.build()
コード例 #55
0
ファイル: conanfile.py プロジェクト: nanopb/nanopb
 def build(self):
     cmake = CMake(self)
     cmake.configure(source_folder=path.join(self.source_folder, "conan-wrapper"))
     cmake.build()
     cmake.install()
コード例 #56
0
 def build(self):
     cmake = CMake(self, parallel=False)
     cmake.verbose = True
     cmake.configure()
     cmake.build()
コード例 #57
0
 def build(self):
     cmake = CMake(self)
     cmake.configure()
     cmake.build(target="flatbuffers")
コード例 #58
0
ファイル: conanfile.py プロジェクト: charlescva/common
 def build(self):
     cmake = CMake(self)
     #cmake.definitions["CONAN_CMAKE_FIND_ROOT_PATH"] = "../cmake/build"
     cmake.verbose = True
     cmake.configure(source_folder="opencv-2.4.13.5")
     cmake.build()
コード例 #59
0
 def build(self):
     cmake = CMake(self)
     cmake.configure(source_folder=path.join(self.source_folder, "conan-wrapper"))
     cmake.build()
     cmake.install()
コード例 #60
0
ファイル: conanfile.py プロジェクト: AnotherFoxGuy/conan-Curl
 def build(self):
     cmake = CMake(self)
     cmake.definitions['BUILD_TESTING'] = False
     cmake.configure()
     cmake.build()