tree-wide: suggest meson command lines instead of ninja ones

This only changes documentation. In various places we call "ninja"
directly. I figured it would be safer to leave those in place for now,
given the meson replacement commands lines appears to be supported in
newer meson versions only.
This commit is contained in:
Lennart Poettering 2020-12-11 11:33:39 +01:00
parent 68f18549c5
commit 8b08be4052
5 changed files with 24 additions and 22 deletions

10
README
View File

@ -187,7 +187,7 @@ REQUIREMENTS:
polkit (optional)
To build in directory build/:
meson build/ && ninja -C build
meson setup build/ && meson compile -C build/
Any configuration options can be specified as -Darg=value... arguments
to meson. After the build directory is initially configured, meson will
@ -197,10 +197,10 @@ REQUIREMENTS:
their current values.
Useful commands:
ninja -v some/target
ninja test
sudo ninja install
DESTDIR=... ninja install
meson compile -v -C build/ some/target
meson test -C build/
sudo meson install -C build/
DESTDIR=... meson install -C build/
A tarball can be created with:
git archive --format=tar --prefix=systemd-222/ v222 | xz > systemd-222.tar.xz

View File

@ -10,13 +10,15 @@ The systemd project has a number of code quality tools set up in the source
tree and on the github infrastructure. Here's an incomprehensive list of the
available functionality:
1. Use `ninja -C build test` to run the unit tests. Some tests are skipped if
1. Use `meson test -C build` to run the unit tests. Some tests are skipped if
no privileges are available, hence consider also running them with `sudo
ninja -C build test`. A couple of unit tests are considered "unsafe" (as
they change system state); to run those too, build with `meson
meson test -C build`. A couple of unit tests are considered "unsafe" (as
they change system state); to run those too, build with `meson setup
-Dtests=unsafe`. Finally, some unit tests are considered to be very slow,
build them too with `meson -Dslow-tests=true`. (Note that there are a couple
of manual tests in addition to these unit tests.)
build them too with `meson setup -Dslow-tests=true`. (Note that there are a
couple of manual tests in addition to these unit tests.) (Also note: you can
change these flags for an already set up build tree, too, with "meson
configure -C build -D…".)
2. Use `./test/run-integration-tests.sh` to run the full integration test
suite. This will build OS images with a number of integration tests and run
@ -35,14 +37,14 @@ available functionality:
`./tools/find-tabs.sh recpatch` to fix them. (Again, grain of salt, foreign
headers should usually be left unmodified.)
6. Use `ninja -C build check-api-docs` to compare the list of exported
6. Use `meson compile -C build check-api-docs` to compare the list of exported
symbols of `libsystemd.so` and `libudev.so` with the list of man pages. Symbols
lacking documentation are highlighted.
7. Use `ninja -C build hwdb-update` to automatically download and import the
7. Use `meson compile -C build hwdb-update` to automatically download and import the
PCI, USB and OUI databases into hwdb.
8. Use `ninja -C build man/update-man-rules` to update the meson rules for
8. Use `meson compile -C build man/update-man-rules` to update the meson rules for
building man pages automatically from the docbook XML files included in
`man/`.

View File

@ -81,8 +81,8 @@ $ git clone https://github.com/systemd/systemd.git
$ cd systemd
$ vim src/core/main.c # or wherever you'd like to make your changes
$ meson build # configure the build
$ ninja -C build # build it locally, see if everything compiles fine
$ ninja -C build test # run some simple regression tests
$ meson compile -C build # build it locally, see if everything compiles fine
$ meson test -C build # run some simple regression tests
$ ln -s .mkosi/mkosi.fedora mkosi.default # Configure mkosi to build a fedora image
$ (umask 077; echo 123 > mkosi.rootpw) # set root password used by mkosi
$ sudo mkosi # build a test image

View File

@ -7,14 +7,14 @@ layout: default
# Steps to a Successful Release
1. Add all items to NEWS
2. Update the contributors list in NEWS (`ninja -C build git-contrib`)
2. Update the contributors list in NEWS (`meson compile -C build git-contrib`)
3. Update the time and place in NEWS
4. [RC1] Update version and library numbers in `meson.build`
5. Check dbus docs with `ninja -C build man/update-dbus-docs`
5. Check dbus docs with `meson compile -C build man/update-dbus-docs`
6. Tag the release: `version=vXXX-rcY && git tag -s "${version}" -m "systemd ${version}"`
7. Do `ninja -C build`
7. Do `meson compile -C build`
8. Make sure that the version string and package string match: `build/systemctl --version`
9. Upload the documentation: `ninja -C build doc-sync`
9. Upload the documentation: `meson compile -C build doc-sync`
10. [FINAL] Close the github milestone and open a new one (https://github.com/systemd/systemd/milestones)
11. "Draft" a new release on github (https://github.com/systemd/systemd/releases/new), mark "This is a pre-release" if appropriate.
12. Check that announcement to systemd-devel, with a copy&paste from NEWS, was sent. This should happen automatically.

View File

@ -26,7 +26,7 @@ To create a translation to a language not yet available, start by creating the
initial template:
```
$ ninja -C build/ systemd-pot
$ meson compile -C build/ systemd-pot
```
This will generate file `po/systemd.pot` in the source tree.
@ -50,7 +50,7 @@ using the `poedit` GUI editor.)
Start by updating the `*.po` files from the latest template:
```
$ ninja -C build/ systemd-update-po
$ meson compile -C build/ systemd-update-po
```
This will touch all the `*.po` files, so you'll want to pay attention when
@ -74,7 +74,7 @@ using `git checkout -- po/` after you commit the changes you do want to keep.)
You can recompile the `*.po` files using the following command:
```
$ ninja -C build/ systemd-gmo
$ meson compile -C build/ systemd-gmo
```
The resulting files will be saved in the `build/po/` directory.