mirror of
https://github.com/bazel-contrib/rules_foreign_cc
synced 2024-11-28 08:43:26 +00:00
3cbd0a9938
* Add meson support * Modify zlib to be detected via pkgconfig in dependent rules * Modify zlib and expat to be linked to shared libs in dependent rules * Add example usage of Meson rule This commit adds the glib library to the "examples" build. glib requires pcre2, so pcre and libgit2 (a dependent of pcre) have been updated/modified * Add example usage of meson_with_requirements macro This commit adds mesa to the "examples" build. This commit also changes the "examples" build to use the hermetic python toolchain provided by rules_foreign_cc. As such, the python toolchain built by rules_foreign_cc is no longer used, as it cannot be used in workspace rules, .e.g pip_parse(). As such, the python2 build has been removed from the examples as python2 is end-of-life. Until Bazel 4.2.0, the built-in android toolchain required Python 2. As such the minimum supported version has been upversioned to 4.2.0. Note that the BAZEL_VC env var was removed from CI as mesa requires MSVC 2019. * Set visibility for each target in foreign_cc_rule_variant * Apply formatting changes * Get meson examples working with bzlmod Note that a newer version of pkgconfig than that installed in ubuntu 20 must be used to build libxau, therefore the built_pkgconfig_toolchain is now registered
44 lines
1.2 KiB
Plaintext
44 lines
1.2 KiB
Plaintext
workspace(name = "rules_foreign_cc")
|
|
|
|
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
|
|
load("//foreign_cc:repositories.bzl", "rules_foreign_cc_dependencies")
|
|
|
|
rules_foreign_cc_dependencies(register_built_pkgconfig_toolchain = True)
|
|
|
|
local_repository(
|
|
name = "rules_foreign_cc_examples",
|
|
path = "examples",
|
|
)
|
|
|
|
load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace")
|
|
|
|
bazel_skylib_workspace()
|
|
|
|
load("@rules_python//python:repositories.bzl", "python_register_toolchains")
|
|
|
|
python_register_toolchains(
|
|
name = "python3_9",
|
|
python_version = "3.9",
|
|
)
|
|
|
|
load("//:docs/stardoc_repository.bzl", "stardoc_repository")
|
|
|
|
stardoc_repository()
|
|
|
|
http_archive(
|
|
name = "bazelci_rules",
|
|
sha256 = "eca21884e6f66a88c358e580fd67a6b148d30ab57b1680f62a96c00f9bc6a07e",
|
|
strip_prefix = "bazelci_rules-1.0.0",
|
|
url = "https://github.com/bazelbuild/continuous-integration/releases/download/rules-1.0.0/bazelci_rules-1.0.0.tar.gz",
|
|
)
|
|
|
|
load("@bazelci_rules//:rbe_repo.bzl", "rbe_preconfig")
|
|
|
|
# Creates a default toolchain config for RBE.
|
|
# Use this as is if you are using the rbe_ubuntu16_04 container,
|
|
# otherwise refer to RBE docs.
|
|
rbe_preconfig(
|
|
name = "buildkite_config",
|
|
toolchain = "ubuntu1804-bazel-java11",
|
|
)
|