Commit Graph

27 Commits

Author SHA1 Message Date
Fabian Meumertzheim 0cf751c053
Bootstrap make reproducibly (#817)
* Make cc_toolchain_utils.bzl more reusable

By using getattr, the helper functions in this file can be reused in
rules that do not define all of the framework attributes, e.g. bootstrap
rules.

* Bootstrap make reproducibly on Linux and macOS

Uses the Bazel C/C++ toolchain to bootstrap make and ensure that the
resulting binary contains no absolute and thus non-hermetic paths.

Building make reproducibly helps with remote caching and removes the
dependency on a C compiler installed on the host.
2021-11-30 15:58:53 +00:00
James Sharpe 1327fa3d4c
CMake 3.21.3, 3.21.4 and 3.22.0 support (#815) 2021-11-19 00:27:40 +00:00
James Sharpe 8f6fc67384
Add cmake version 3.21.2 (#778) 2021-08-28 21:16:01 +01:00
UebelAndre 9bfb4d7da6
Added CMake 3.21.1 (#757) 2021-08-17 13:49:18 +00:00
jheaff1 2e61d9588a
Add <rule>_variant macros (#734)
The macros utilise bazel "transitions" to set the `make` toolchain used
in the configure_make(), cmake() or make() rules to
a given make variant toolchain, e.g. preinstalled_nmake.

Note that the msvc constraint was removed from the
`exec_compatible_with` attribute of `preinstalled_nmake_toolchain` as
the condition is not actually met even when building with msvc. See
https://github.com/bazelbuild/bazel/issues/7730.

This will be tested in PR#729
2021-07-28 15:30:04 +01:00
Alexander Turkin 721fd85881
added cmake 3.21.0 (#726) 2021-07-19 10:04:44 +01:00
UebelAndre c95d769e30
Added a `make_toolchain`, `nmake` for `msvc` windows platforms (#724) 2021-07-18 20:46:46 +01:00
UebelAndre 6f03311e89
Added cmake 3.20.5 and all other final releases of 3.X (#698)
* Added cmake 3.20.5 and all other final releases of 3.X

* Updated built-toolchains
2021-06-28 15:22:06 +00:00
UebelAndre 0887dc8044
Added google mirror for gnu make (#693) 2021-06-21 08:14:51 -07:00
Alexander Turkin 23907e5972
update cmake to 3.20.4 (#680)
* update cmake to 3.20.4

* update cmake to 3.20.4

* update cmake to 3.20.4
2021-06-16 12:46:23 +01:00
James Sharpe 2baa2e8948
Correct configuration for native_tools_toolchain (#637) 2021-05-09 15:15:52 -07:00
James Sharpe b9685b507e
Update cmake to 3.20.2 (#636)
* Update cmake to 3.20.2

* Update docs
2021-05-09 09:17:54 -07:00
UebelAndre d9ef75e6fc
Fixed missing sha256 value for cmake v3.20.1 (#610) 2021-04-18 15:31:50 +00:00
James Sharpe 1f48d7756c
Update CMake versions (#605) 2021-04-09 07:00:16 -07:00
UebelAndre 2ac3b83c93
Addressed buildifier defects (#599) 2021-04-02 01:45:36 +00:00
UebelAndre 5686d0f832
built ninja tools no longer carry the entire source tree (#580) 2021-03-31 13:23:07 -07:00
James Sharpe 322732bef7
Add CMake 3.20.0 and 3.19.7 (#587)
* Add CMake 3.20.0 and 3.19.7

* Update docs
2021-03-28 16:04:35 -07:00
UebelAndre f48ec05fed
Fixed incorrect tool paths for windows (#561)
Co-authored-by: James Sharpe <james.sharpe@zenotech.com>
2021-03-15 10:24:49 -07:00
UebelAndre ec65e18bb5
Added a common framework for built tools (#559)
Co-authored-by: James Sharpe <james.sharpe@zenotech.com>
2021-03-15 17:17:59 +00:00
UebelAndre 43a43353ff
Moved more toolchain related rules into `./toolchains` (#541)
* Moved more toolchain related rules into `./toolchains`

* Updated toolchain locations in rules
2021-03-11 08:52:36 -08:00
UebelAndre dc49c3716c
Added architecture documentation (#544) 2021-03-09 10:49:13 -08:00
James Sharpe b7c0461a66
Fixes to cmake toolchain so it can find CMAKE_ROOT correctly (#547) 2021-03-09 07:21:10 -08:00
UebelAndre 175b29c6f7
Renamed BUILD files to BUILD.bazel (#540)
* Renamed BUILD files to BUILD.bazel

* Ran Buildifier
2021-03-03 10:08:03 -08:00
James Sharpe 03cd811f50
Fix build_make and enable other built toolchains (#521)
* Don't use deprecated targets for the preinstalled toolchains

* Add option to the repository macro for using built version of the build tools.

* Fix buildifier complaint

* Create BUILD_TMP directory when building make

* Corrections to toolchain setup for make_tool, cmake_tool and ninja_tool

* Fix path to built tools

* Attempting to fix make_tool for RBE

* Disable dependency tracking for make build

* Add cc_toolchain deps

* Add a built_toolchains.bzl file to be able to select the version to build

* Address buildifier issues

* Use geolocated mirror redirect for downloading make srcs

* Update docs
2021-03-02 08:32:31 -08:00
James Sharpe 0010a50291
Update default cmake to 3.19.6 (#522) 2021-02-24 12:51:09 -08:00
UebelAndre 5a09829838
Updated documentation (#516) 2021-02-18 22:51:11 -08:00
UebelAndre 689c96aaa7
Fetch prebuilt cmake and ninja binaries as registered default toolchains (#508)
* Added tooling for generating repositories for pre-built cmake and ninja binaries

* Generated toolchains

* Picked up fix

* Removed toolchains from http_archives and updated generator script

* Regenerated toolchains

* Updated cmake version

* Added additional constraints

* Added option for registering preinstalled toolchains

* MacOS uses universal binaries

* Fixed typo

* More constraints
2021-02-16 15:41:58 +00:00