def build(): n = get_build_number() conanfile = load_conanfile_class(os.path.join(__dir__, 'conanfile.py')) version = conanfile.version CONAN_STABLE_CHANNEL = None if n == 0: CONAN_CHANNEL = 'stable' CONAN_UPLOAD_ONLY_WHEN_STABLE = True else: version = '%s.%d' % (version, n) CONAN_CHANNEL = 'testing' CONAN_UPLOAD_ONLY_WHEN_STABLE = False CONAN_STABLE_CHANNEL = 'testing' update_version(version) CONAN_UPLOAD = 'https://api.bintray.com/conan/%s/%s' % (CONAN_USERNAME, CONAN_CHANNEL) builder = ConanMultiPackager( channel=CONAN_CHANNEL, upload_only_when_stable=CONAN_UPLOAD_ONLY_WHEN_STABLE, upload=CONAN_UPLOAD, username=CONAN_USERNAME, stable_channel=CONAN_STABLE_CHANNEL) builder.add_common_builds() builds = [] for settings, options, env_vars, build_requires, reference in builder.items: # dynamic only if not options["libwebstreamer:shared"]: continue # release only if settings["build_type"] == "Debug": continue # Visual Sutido 2017 only if platform.system() == "Windows": if settings["compiler"] == "Visual Studio": if settings["compiler.version"] == '14': builds.append( [settings, options, env_vars, build_requires]) elif platform.system() == "Linux": if settings["compiler"] == "gcc": if settings["compiler.version"] == '4.9' and settings[ "arch"] == 'x86_64': builds.append([ settings, options, { 'DEPENDENT_BINTRAY_REPO': DEPENDENT_BINTRAY_REPO }, build_requires ]) builder.builds = builds builder.run()
# #!/usr/bin/env python # # -*- coding: utf-8 -*- import os from cpt.packager import ConanMultiPackager from kthbuild import get_name_from_recipe, get_base_march_ids, get_builder, handle_microarchs, copy_env_vars, filter_valid_exts, filter_marchs_tests if __name__ == "__main__": recipe_dir = os.path.dirname(os.path.abspath(__file__)) name = get_name_from_recipe(recipe_dir) builder = ConanMultiPackager(username="******", channel="stable", archs=["x86_64"] , remotes="https://api.bintray.com/conan/k-nuth/kth") builder.add_common_builds(shared_option_name="%s:shared" % name, pure_c=False) march_ids = get_base_march_ids() filtered_builds = [] for settings, options, env_vars, build_requires, reference in builder.items: if (settings["build_type"] == "Release" or settings["build_type"] == "Debug") \ and not options["icu:shared"] \ and (not "compiler.libcxx" in settings or settings["compiler.libcxx"] != "libstdc++11"): handle_microarchs("%s:march_id" % name, march_ids, filtered_builds, settings, options, env_vars, build_requires) # filtered_builds.append([settings, options, env_vars, build_requires]) builder.builds = filtered_builds builder.run()
from cpt.packager import ConanMultiPackager if __name__ == "__main__": builder = ConanMultiPackager() builder.add_common_builds() transformed_builds = [] for settings, options, env_vars, build_requires, reference in builder.items: if settings["compiler"] != "Visual Studio": options["zziplib:shared"] = "True" transformed_builds.append( [settings, options, env_vars, build_requires, reference]) options2 = options.copy() options2["zziplib:shared"] = "False" transformed_builds.append( [settings, options2, env_vars, build_requires, reference]) else: try: del options["zziplib:shared"] except: pass transformed_builds.append( [settings, options, env_vars, build_requires, reference]) if transformed_builds: builder.builds = transformed_builds builder.run()
settings.update({'cppstd': '14'}) elif compiler_version == 7: settings.update({'cppstd': '17'}) elif settings['compiler'] == 'apple-clang': settings.update({'cppstd': 'gnu17'}) elif settings['compiler'] == 'Visual Studio': settings.update({'cppstd': '17'}) pybind_updated_builds = [] for settings, options, env_vars, build_requires, reference in builder.items: # pybind option if settings['arch'] == "x86_64" and settings['build_type'] != 'Debug': pybind_options = dict(options) pybind_options.update({'xmsgrid:pybind': True}) pybind_updated_builds.append([settings, pybind_options, env_vars, build_requires]) pybind_updated_builds.append([settings, options, env_vars, build_requires]) builder.builds = pybind_updated_builds testing_updated_builds = [] for settings, options, env_vars, build_requires, reference in builder.items: # testing option if not options.get('xmsgrid:xms', False) and not options.get('xmsgrid:pybind', False): testing_options = dict(options) testing_options.update({'xmsgrid:testing': True}) testing_updated_builds.append([settings, testing_options, env_vars, build_requires]) testing_updated_builds.append([settings, options, env_vars, build_requires]) builder.builds = testing_updated_builds builder.run()
#!/usr/bin/env python # -*- coding: utf-8 -*- import copy from cpt.packager import ConanMultiPackager if __name__ == "__main__": builder = ConanMultiPackager() builder.add_common_builds() # add c++17 build configs new_builds = [] for settings, options, env_vars, build_requires, reference in builder.items: new_settings = copy.copy(settings) new_settings["compiler.cppstd"] = "17" new_settings["compiler.libcxx"] = "libstdc++11" new_options = copy.copy(options) new_options["assimp:build_zlib"] = False new_builds.append([new_settings, options, env_vars, build_requires]) new_builds.append( [new_settings, new_options, env_vars, build_requires]) builder.builds = new_builds builder.run()
#!/usr/bin/env python # -*- coding: utf-8 -*- from cpt.packager import ConanMultiPackager if __name__ == "__main__": builder = ConanMultiPackager() builder.add_common_builds() updated_builds = [] for settings, options, env_vars, build_requires, reference in builder.items: options['prometheus-cpp:mode'] = 'pull' updated_builds.append([settings, options, env_vars, build_requires]) options = options.copy() options['prometheus-cpp:mode'] = 'push' updated_builds.append([settings, options, env_vars, build_requires]) builder.builds = updated_builds builder.run()
#!/usr/bin/env python from cpt.packager import ConanMultiPackager import copy if __name__ == "__main__": builder = ConanMultiPackager() builder.add_common_builds() buildsWithOptions = [] for settings, options, env_vars, build_requires, reference in builder.items: options['SimCenterCommonQt:MDOFwithQt3D'] = False buildsWithOptions.append( [settings, options, env_vars, build_requires, reference]) options = copy.deepcopy(options) options['SimCenterCommonQt:MDOFwithQt3D'] = True buildsWithOptions.append( [settings, options, env_vars, build_requires, reference]) builder.builds = buildsWithOptions builder.run()
settings, assimp_options, env_vars, build_requires, reference ]) freetype_options = copy.copy(options) freetype_options["magnum-plugins:with_freetypefont"] = True named_builds[ f"{settings['build_type']}-" f"{'static' if options['magnum-plugins:build_plugins_static'] else 'shared'}-freetype"].append( [ settings, freetype_options, env_vars, build_requires, reference ]) assimp_and_freetype_options = copy.copy(options) assimp_and_freetype_options[ "magnum-plugins:with_assimpimporter"] = True assimp_and_freetype_options["magnum-plugins:with_freetypefont"] = True named_builds[ f"{settings['build_type']}-" f"{'static' if options['magnum-plugins:build_plugins_static'] else 'shared'}" "-assimp-freetype"].append([ settings, assimp_and_freetype_options, env_vars, build_requires, reference ]) builder.builds = [] builder.named_builds = named_builds builder.run()