2
0
Fork 0
mirror of https://github.com/bazel-contrib/rules_foreign_cc synced 2024-11-28 08:43:26 +00:00
rules_foreign_cc/examples/third_party/BUILD.bazel
jheaff1 3cbd0a9938
Add meson support (#986)
* 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
2023-06-09 11:29:12 +01:00

118 lines
3.9 KiB
Python

package(default_visibility = ["//visibility:public"])
test_suite(
name = "linux_tests",
tags = ["manual"],
tests = [
"//apr:apr_build_test",
"//apr_util:apr_util_build_test",
# Builds but not useful as it hardcodes paths so isn't relocateable
# "//autotools:autoconf_build_test",
# Fails due to hardcoded paths in autoconf
# "//autotools:automake_build_test",
"//autotools:libtool_build_test",
"//autotools:m4_build_test",
"//bison:bison_build_test",
"//cares:test_c_ares",
"//curl:curl_test_suite",
"//gn:gn_launch_test",
"//gperftools:test",
"//glib:glib_build_test",
"//libgit2:libgit2_build_test",
"//iconv:iconv_linux_build_test",
"//libjpeg_turbo:libjpeg_turbo_build_test",
"//libpng:test_libpng",
"//libssh2:libssh2_build_test",
"//log4cxx:log4cxx_build_test",
"//mesa:mesa_build_test",
"//openssl:openssl_test_suite",
"//pcre:pcre_build_test",
"//python:python_tests",
"//sqlite:sqlite_build_test",
"//subversion:subversion_build_test",
],
)
test_suite(
name = "linux_rbe_tests",
tags = ["manual"],
tests = [
"//apr:apr_build_test",
# Copying files to RBE does not preserve timestamps, invoking autotools which is not new enough to build apr_util and its dependants
# "//apr_util:apr_util_build_test",
# M4 errors due to timestamps of source
# not being preserved
#"//autotools:autoconf_build_test",
#"//autotools:automake_build_test",
#"//autotools:libtool_build_test",
#"//autotools:m4_build_test",
# Missing a new enough m4 to build
# "//bison:bison_build_test",
"//cares:test_c_ares",
"//curl:curl_test_suite",
"//glib:glib_build_test",
# Attempts to access git sha during configure of build so fails
# "//gn:gn_launch_test",
"//gperftools:test",
"//libgit2:libgit2_build_test",
"//libjpeg_turbo:libjpeg_turbo_build_test",
"//libpng:test_libpng",
"//libssh2:libssh2_build_test",
# Missing new enough automake to build mesa
#"//mesa:mesa_build_test",
"//openssl:openssl_test_suite",
"//pcre:pcre_build_test",
"//python:python_tests",
# Missing a new enough automake to build
#"//sqlite:sqlite_build_test",
#"//subversion:subversion_build_test",
],
)
test_suite(
name = "macos_tests",
tags = ["manual"],
tests = [
"//apr:apr_build_test",
"//apr_util:apr_util_build_test",
# Builds but not useful as it hardcodes paths so isn't relocateable
# "//autotools:autoconf_build_test",
# Fails due to hardcoded paths in autoconf
#"//autotools:automake_build_test",
"//autotools:libtool_build_test",
"//autotools:m4_build_test",
# "//bison:bison_build_test",
"//cares:test_c_ares",
"//cares:test_c_ares_ios",
"//curl:curl_test_suite",
"//glib:glib_build_test",
"//gn:gn_launch_test",
"//gperftools:test",
"//iconv:iconv_macos_build_test",
"//libgit2:libgit2_build_test",
"//libjpeg_turbo:libjpeg_turbo_build_test",
"//libpng:test_libpng",
"//libssh2:libssh2_build_test",
"//log4cxx:log4cxx_build_test",
"//mesa:mesa_build_test",
"//openssl:openssl_test_suite",
"//pcre:pcre_build_test",
"//python:python_tests",
"//sqlite:sqlite_build_test",
"//subversion:subversion_build_test",
],
)
test_suite(
name = "windows_tests",
tags = ["manual"],
tests = [
"//apr:apr_build_test",
"//curl:curl_test_suite",
"//openssl:openssl_test_suite",
"//glib:glib_build_test",
"//mesa:mesa_build_test",
# TODO: Add more windows tests
],
)