Commit Graph

198 Commits

Author SHA1 Message Date
Mike Lundy 3ffc4bda69
cmake: handle builds that use static toolchain libs (#1256) 2024-08-12 21:49:55 +00:00
Mike Lundy 10d47d4421
configure_make: support autotools cross-compilation (#1247) 2024-08-12 22:07:54 +01:00
Thomas Lam 06e6964403
runnable_binary: use package_relative_label (#1253)
Co-authored-by: James Sharpe <james.sharpe@zenotech.com>
2024-08-12 15:41:56 +00:00
Michael Allwright 2375e1ddd6
Do not clobber user environment variables in Meson script (#1255) 2024-08-10 08:41:17 +01:00
Thomas Lam 509b5aa6d6
Portable copy_dir_contents_to_dir (#1246)
Co-authored-by: James Sharpe <james.sharpe@zenotech.com>
2024-08-08 11:22:40 +00:00
Michael Allwright af66969246
Add setup_args and run `meson setup` explictly (#1223)
Co-authored-by: James Sharpe <james.sharpe@zenotech.com>
2024-08-08 10:19:19 +00:00
James Sharpe d58cdf65cd
Upgrade default ninja version to 1.12.1 (#1248) 2024-08-08 09:51:41 +00:00
James Sharpe 122d83cd7d
Revert "Apply expand_locations_and_make_variables to cache_entries" (#1250) 2024-08-07 23:04:24 +01:00
Tom Birch 3debc17d85
Apply expand_locations_and_make_variables to cache_entries (#1240) 2024-08-02 09:03:59 +01:00
Misha Zharov fb209674f3
Re-export runfiles env vars so that dependencies can use them (#1235) 2024-07-26 09:34:57 +01:00
James Sharpe df265bb33a
Revert "cmake: use variable expansion on generator args" (#1219) 2024-06-18 15:26:29 +00:00
Guillaume Maudoux d2815388f8
Update framework.bzl to account for externalIncludes (#1215)
During our migration to Bazel 7, some of our cmake() rules broke. It
turns out there is a new field in CcCompilationContext to account for
external includes, as opposed to internal system_includes.

See
a6ef0b341a
2024-06-14 21:35:24 +01:00
James Sharpe c15a5201f5
Revert inadvertent direct commit to main (#1213) 2024-06-11 18:01:59 +00:00
James Sharpe 37383aaeba
fix: allow cmake and ninja versions to be set 2024-06-11 15:24:13 +01:00
John Sun aec70d3d1a
fix: path expansion on windows (#1207) 2024-06-11 15:22:21 +01:00
John Sun 546e06e654
fix: change cygpath to mixed mode (#1204) 2024-05-29 17:09:29 +01:00
Donald Stufft 73f7de5a07
Make pkgconfig Hermetic (#1069)
Co-authored-by: James Sharpe <james.sharpe@zenotech.com>
2024-04-21 23:07:44 +00:00
Matt Smith 6484d40492
adjust relative msvc paths (#1180)
Co-authored-by: James Sharpe <james.sharpe@zenotech.com>
2024-04-21 22:37:14 +00:00
James Sharpe 346025aa91
chore(deps): Add ninja 1.12.0 and latest versions of cmake (#1192) 2024-04-12 11:23:17 +00:00
James Sharpe f055b5b586
Revert "fix(docs): Port docs generation to bzlmod to fix user facing doc generation" (#1194) 2024-04-12 12:14:48 +01:00
James Sharpe 50b7d9bc94
fix(docs): Port docs generation to bzlmod to fix user facing doc generation (#1193) 2024-04-11 23:38:00 +01:00
Laurence Tews 5c34b7136f
Fix - Copy Dir ignores hidden files on macOS (#1188) 2024-04-06 21:15:15 +00:00
Michael Kaufmann 99d018f059
Use a sed delimiter that is unlikely to appear in the input (#1184) 2024-03-22 21:36:00 +00:00
Matt Smith 5547abc63b
Cater for different drive letters when normalizing path (#1169)
Co-authored-by: James Sharpe <james.sharpe@zenotech.com>
2024-02-20 09:34:17 +00:00
Misha Zharov 4831827e29
Increase resiliency of `runnable_binary` (#1134) 2024-02-01 20:21:01 +00:00
Mike Lundy 1ddd0ce6b5
Add make 4.4.1 (#1167) 2024-01-26 00:31:47 +00:00
John Sun c5d7942243
Fix tool path for nmake (#1165) 2024-01-25 23:27:52 +00:00
Matt Smith 930dcb97b1
Build msvc cmake with prebuilt cmake (#1148) 2024-01-12 21:37:09 +00:00
James Sharpe 18dcce582f
Use gazelle to generate bzl_library targets (#1127) 2023-12-21 10:42:09 +00:00
tanx 51152aac9d
set CC and CXX and their flags in meson (#1098) 2023-12-11 09:35:14 +00:00
Caleb Zulawski 0258d350a9
Advertise CcInfo provider (#1118)
Co-authored-by: Caleb Zulawski <caleb.zulawski@caci.com>
2023-11-10 09:41:52 +00:00
Attila Oláh bf8a7c2951
Set an empty tools_data attribute for boost (#1112) 2023-10-28 23:11:02 +01:00
James Sharpe ef3031e387
Expand locations and make variables in configure options (#1102) 2023-10-14 19:49:27 +00:00
James Sharpe e3003dd17f
Register pkgconfig by default (#1104) 2023-10-14 19:27:25 +00:00
Lukas bac2c19d23
cmake: use variable expansion on generator args (#1087) 2023-10-14 15:36:53 +00:00
James Sharpe 8fc5dbb559
Upgrade rules_python (#1058) 2023-10-14 15:10:57 +00:00
Donald Stufft c62e551f9f
Set the LD environment variable (#1068)
Co-authored-by: James Sharpe <james.sharpe@zenotech.com>
2023-10-14 14:38:09 +00:00
Mike Lundy 01cf7897e5
Allow runnable_binary to work on non-external targets (#1100) 2023-10-14 14:24:09 +01:00
Caleb Zulawski 14ded03b9c
Advertise CcInfo provider (#1095) 2023-09-19 18:47:35 +01:00
Mike Lundy 7b673547a3
Fix multiple-definition error on windows_config_setting (#1084) 2023-08-25 23:23:56 +01:00
James Sharpe 816905a078
Update meson to 1.1.1 (#1072) 2023-07-17 19:19:59 +01:00
James Sharpe 26c7700830
Create hub repo for shell framework toolchains (#1066)
This simplifies the registration of the shell framework toolchains in
bzlmod.
2023-06-28 09:20:01 +00:00
Isaac Torres ea7ed42949
fix linux cross compiling on macos (#1062)
Fixes cross-compiling from macos to linux.

see #997 for background.

I had to make a couple of extra changes to support this:

Setting CMAKE_SYSTEM_NAME manually causes CMAKE_SYSTEM_PROCESSOR to not be set. This breaks some builds that expect this variable to be set like libjpeg-turbo.
I made it so that the above variables are only set when cross-compilation is detected so that rules_foreign_cc only takes on responsibility of setting them when necessary.
2023-06-27 23:16:22 +01:00
Filip Filmar d74623f0ad
Adds some documentation specific to the `make` rule. (#1050) 2023-06-13 22:22:52 +00:00
DolceTriade 4f0b6b8159
Allow selecting individual outputs from a rule (#1056)
Co-authored-by: James Sharpe <james.sharpe@zenotech.com>
2023-06-13 23:00:52 +01:00
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
Gary Miguel 12ecb0419a
Specify path to sed on MacOS and FreeBSD (#961)
Co-authored-by: James Sharpe <james.sharpe@zenotech.com>
2023-05-10 19:37:44 +00:00
James Sharpe 7fa1a1259b
Add bzlmod support files. (#999)
* Bzlmod files

* Turn off android example with bzlmod

* Update .bcr/metadata.template.json
2023-05-06 08:56:00 +01:00
Jeremy Volkman 020854719e
Pass must_keep_debug = False to cc_common.create_link_variables (#1046) 2023-04-26 09:27:11 +01:00
lifengxiang1025 c327fbfdab
installdir_copy seems meaningless as output (#1038)
Co-authored-by: James Sharpe <james.sharpe@zenotech.com>
2023-04-23 19:19:20 +00:00