Moved "news" into it's own file (#570)
This commit is contained in:
parent
4b265b0e61
commit
3389401e19
|
@ -0,0 +1,57 @@
|
||||||
|
# News
|
||||||
|
|
||||||
|
**March 2021:**
|
||||||
|
|
||||||
|
These rules are now maintained by the community.
|
||||||
|
|
||||||
|
_Note_: After this release we will be bumping the minimum tested version to _4.0.0_.
|
||||||
|
|
||||||
|
- Added repository rules for downloading prebuilt versions of cmake and ninja
|
||||||
|
rather than relying on system installed tools.
|
||||||
|
|
||||||
|
- Added native ninja build rule
|
||||||
|
|
||||||
|
- Now builds under the Bazel sandbox rather than in `/tmp`
|
||||||
|
|
||||||
|
- Tidied up the structure of the examples directory
|
||||||
|
|
||||||
|
- Deprecated the old rules `install_ws_dependency` and `cc_configure_make`
|
||||||
|
|
||||||
|
- Autogenerated documentation was added
|
||||||
|
|
||||||
|
**March 2019:**
|
||||||
|
|
||||||
|
- Support for versions earlier than 0.22 was removed.
|
||||||
|
|
||||||
|
- Tests on Bazel CI are running in the nested workspace
|
||||||
|
|
||||||
|
**January 2019:**
|
||||||
|
|
||||||
|
- Bazel 0.22.0 is released, no flags are needed for this version, but it does not work on Windows (Bazel C++ API is broken).
|
||||||
|
|
||||||
|
- Support for versions earlier than 0.20 was removed.
|
||||||
|
|
||||||
|
- [rules_foreign_cc take-aways](https://docs.google.com/document/d/1ZVvzvkUVTkPCzI-2z4S4VrSNu4kdaBknz7UnK8vaoZU/edit?usp=sharing) describing the recent work has been published.
|
||||||
|
|
||||||
|
- Examples package became the separate workspace.
|
||||||
|
This also allows to illustrate how to initialize rules_foreign_cc.
|
||||||
|
|
||||||
|
- Native tools (cmake, ninja) toolchains were introduced.
|
||||||
|
Though the user code does not have to be changed (default toolchains are registered, they call the preinstalled binaries by name.),
|
||||||
|
you may simplify usage of ninja with the cmake_external rule and call it just by name.
|
||||||
|
Please see examples/cmake_nghttp2 for ninja usage, and WORKSPACE and BUILD files in examples for the native tools toolchains usage
|
||||||
|
(the locally preinstalled tools are registered by default, the build as part of the build tools are used in examples).
|
||||||
|
Also, in examples/with_prebuilt_ninja_artefact you can see how to download and use prebuilt artifact.
|
||||||
|
|
||||||
|
- Shell script parts were extracted into a separate toolchain.
|
||||||
|
Shell script inside framework.bzl is first created with special notations:
|
||||||
|
- `export var_name=var_value` for defining the environment variable
|
||||||
|
- `$$var_name$$` for referencing environment variable
|
||||||
|
- `` `shell_command <space-separated-maybe-quoted-arguments>` `` for calling shell fragment
|
||||||
|
|
||||||
|
The created script is further processed to get the real shell script with shell parts either
|
||||||
|
replaced with actual fragments or with shell function calls (functions are added into the beginning of the script).
|
||||||
|
Extracted shell fragments are described in commands.bzl.
|
||||||
|
|
||||||
|
Further planned steps in this direction: testing with RBE, shell script fragments for running on Windows without msys/mingw,
|
||||||
|
tests for shell fragments.
|
58
README.md
58
README.md
|
@ -20,62 +20,8 @@ in future changes as these older versions are not tested.
|
||||||
|
|
||||||
## News
|
## News
|
||||||
|
|
||||||
**March 2021:**
|
For more generalized updates, please see [NEWS.md](./NEWS.md) or checkout the
|
||||||
|
[release notes](https://github.com/bazelbuild/rules_foreign_cc/releases) of current or previous releases
|
||||||
These rules are now maintained by the community.
|
|
||||||
|
|
||||||
*Note*: After this release we will be bumping the minimum tested version to *4.0.0*.
|
|
||||||
|
|
||||||
- Added repository rules for downloading prebuilt versions of cmake and ninja
|
|
||||||
rather than relying on system installed tools.
|
|
||||||
|
|
||||||
- Added native ninja build rule
|
|
||||||
|
|
||||||
- Now builds under the Bazel sandbox rather than in `/tmp`
|
|
||||||
|
|
||||||
- Tidied up the structure of the examples directory
|
|
||||||
|
|
||||||
- Deprecated the old rules `install_ws_dependency` and `cc_configure_make`
|
|
||||||
|
|
||||||
- Autogenerated documentation was added
|
|
||||||
|
|
||||||
**March 2019:**
|
|
||||||
|
|
||||||
- Support for versions earlier than 0.22 was removed.
|
|
||||||
|
|
||||||
- Tests on Bazel CI are running in the nested workspace
|
|
||||||
|
|
||||||
**January 2019:**
|
|
||||||
|
|
||||||
- Bazel 0.22.0 is released, no flags are needed for this version, but it does not work on Windows (Bazel C++ API is broken).
|
|
||||||
|
|
||||||
- Support for versions earlier than 0.20 was removed.
|
|
||||||
|
|
||||||
- [rules_foreign_cc take-aways](https://docs.google.com/document/d/1ZVvzvkUVTkPCzI-2z4S4VrSNu4kdaBknz7UnK8vaoZU/edit?usp=sharing) describing the recent work has been published.
|
|
||||||
|
|
||||||
- Examples package became the separate workspace.
|
|
||||||
This also allows to illustrate how to initialize rules_foreign_cc.
|
|
||||||
|
|
||||||
- Native tools (cmake, ninja) toolchains were introduced.
|
|
||||||
Though the user code does not have to be changed (default toolchains are registered, they call the preinstalled binaries by name.),
|
|
||||||
you may simplify usage of ninja with the cmake_external rule and call it just by name.
|
|
||||||
Please see examples/cmake_nghttp2 for ninja usage, and WORKSPACE and BUILD files in examples for the native tools toolchains usage
|
|
||||||
(the locally preinstalled tools are registered by default, the build as part of the build tools are used in examples).
|
|
||||||
Also, in examples/with_prebuilt_ninja_artefact you can see how to download and use prebuilt artifact.
|
|
||||||
|
|
||||||
- Shell script parts were extracted into a separate toolchain.
|
|
||||||
Shell script inside framework.bzl is first created with special notations:
|
|
||||||
|
|
||||||
- `export var_name=var_value` for defining the environment variable
|
|
||||||
- `$$var_name$$` for referencing environment variable
|
|
||||||
- `shell_command <space-separated-maybe-quoted-arguments>` for calling shell fragment
|
|
||||||
|
|
||||||
The created script is further processed to get the real shell script with shell parts either
|
|
||||||
replaced with actual fragments or with shell function calls (functions are added into the beginning of the script).
|
|
||||||
Extracted shell fragments are described in commands.bzl.
|
|
||||||
|
|
||||||
Further planned steps in this direction: testing with RBE, shell script fragments for running on Windows without msys/mingw,
|
|
||||||
tests for shell fragments.
|
|
||||||
|
|
||||||
## Building CMake projects
|
## Building CMake projects
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue