Mercurial > hg-stable
changeset 44114:8a3b045d9086
rust: move hgcli's README out of the way
My understanding is that it's not meant to be used in the current
form.
Differential Revision: https://phab.mercurial-scm.org/D7951
author | Valentin Gatien-Baron <valentin.gatienbaron@gmail.com> |
---|---|
date | Mon, 20 Jan 2020 17:44:03 -0500 |
parents | e77b57e09bfa |
children | e1b8b4e4f496 |
files | rust/README.rst rust/hgcli/README.rst |
diffstat | 2 files changed, 58 insertions(+), 59 deletions(-) [+] |
line wrap: on
line diff
--- a/rust/README.rst Sat Jan 18 01:54:17 2020 -0500 +++ b/rust/README.rst Mon Jan 20 17:44:03 2020 -0500 @@ -17,62 +17,3 @@ If you prefer a non-debug / release configuration:: $ cargo build --release - -Features --------- - -The following Cargo features are available: - -localdev (default) - Produce files that work with an in-source-tree build. - - In this mode, the build finds and uses a ``python2.7`` binary from - ``PATH``. The ``hg`` binary assumes it runs from ``rust/target/<target>hg`` - and it finds Mercurial files at ``dirname($0)/../../../``. - -Build Mechanism ---------------- - -The produced ``hg`` binary is *bound* to a CPython installation. The -binary links against and loads a CPython library that is discovered -at build time (by a ``build.rs`` Cargo build script). The Python -standard library defined by this CPython installation is also used. - -Finding the appropriate CPython installation to use is done by -the ``python27-sys`` crate's ``build.rs``. Its search order is:: - -1. ``PYTHON_SYS_EXECUTABLE`` environment variable. -2. ``python`` executable on ``PATH`` -3. ``python2`` executable on ``PATH`` -4. ``python2.7`` executable on ``PATH`` - -Additional verification of the found Python will be performed by our -``build.rs`` to ensure it meets Mercurial's requirements. - -Details about the build-time configured Python are built into the -produced ``hg`` binary. This means that a built ``hg`` binary is only -suitable for a specific, well-defined role. These roles are controlled -by Cargo features (see above). - -Running -======= - -The ``hgcli`` crate produces an ``hg`` binary. You can run this binary -via ``cargo run``:: - - $ cargo run --manifest-path hgcli/Cargo.toml - -Or directly:: - - $ target/debug/hg - $ target/release/hg - -You can also run the test harness with this binary:: - - $ ./run-tests.py --with-hg ../rust/target/debug/hg - -.. note:: - - Integration with the test harness is still preliminary. Remember to - ``cargo build`` after changes because the test harness doesn't yet - automatically build Rust code.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rust/hgcli/README.rst Mon Jan 20 17:44:03 2020 -0500 @@ -0,0 +1,58 @@ +Features +-------- + +The following Cargo features are available: + +localdev (default) + Produce files that work with an in-source-tree build. + + In this mode, the build finds and uses a ``python2.7`` binary from + ``PATH``. The ``hg`` binary assumes it runs from ``rust/target/<target>hg`` + and it finds Mercurial files at ``dirname($0)/../../../``. + +Build Mechanism +--------------- + +The produced ``hg`` binary is *bound* to a CPython installation. The +binary links against and loads a CPython library that is discovered +at build time (by a ``build.rs`` Cargo build script). The Python +standard library defined by this CPython installation is also used. + +Finding the appropriate CPython installation to use is done by +the ``python27-sys`` crate's ``build.rs``. Its search order is:: + +1. ``PYTHON_SYS_EXECUTABLE`` environment variable. +2. ``python`` executable on ``PATH`` +3. ``python2`` executable on ``PATH`` +4. ``python2.7`` executable on ``PATH`` + +Additional verification of the found Python will be performed by our +``build.rs`` to ensure it meets Mercurial's requirements. + +Details about the build-time configured Python are built into the +produced ``hg`` binary. This means that a built ``hg`` binary is only +suitable for a specific, well-defined role. These roles are controlled +by Cargo features (see above). + +Running +======= + +The ``hgcli`` crate produces an ``hg`` binary. You can run this binary +via ``cargo run``:: + + $ cargo run --manifest-path hgcli/Cargo.toml + +Or directly:: + + $ target/debug/hg + $ target/release/hg + +You can also run the test harness with this binary:: + + $ ./run-tests.py --with-hg ../rust/target/debug/hg + +.. note:: + + Integration with the test harness is still preliminary. Remember to + ``cargo build`` after changes because the test harness doesn't yet + automatically build Rust code.