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) polkit (optional)
To build in directory build/: 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 Any configuration options can be specified as -Darg=value... arguments
to meson. After the build directory is initially configured, meson will to meson. After the build directory is initially configured, meson will
@ -197,10 +197,10 @@ REQUIREMENTS:
their current values. their current values.
Useful commands: Useful commands:
ninja -v some/target meson compile -v -C build/ some/target
ninja test meson test -C build/
sudo ninja install sudo meson install -C build/
DESTDIR=... ninja install DESTDIR=... meson install -C build/
A tarball can be created with: A tarball can be created with:
git archive --format=tar --prefix=systemd-222/ v222 | xz > systemd-222.tar.xz 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 tree and on the github infrastructure. Here's an incomprehensive list of the
available functionality: 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 no privileges are available, hence consider also running them with `sudo
ninja -C build test`. A couple of unit tests are considered "unsafe" (as meson test -C build`. A couple of unit tests are considered "unsafe" (as
they change system state); to run those too, build with `meson they change system state); to run those too, build with `meson setup
-Dtests=unsafe`. Finally, some unit tests are considered to be very slow, -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 build them too with `meson setup -Dslow-tests=true`. (Note that there are a
of manual tests in addition to these unit tests.) 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 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 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 `./tools/find-tabs.sh recpatch` to fix them. (Again, grain of salt, foreign
headers should usually be left unmodified.) 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 symbols of `libsystemd.so` and `libudev.so` with the list of man pages. Symbols
lacking documentation are highlighted. 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. 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 building man pages automatically from the docbook XML files included in
`man/`. `man/`.

View File

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

View File

@ -7,14 +7,14 @@ layout: default
# Steps to a Successful Release # Steps to a Successful Release
1. Add all items to NEWS 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 3. Update the time and place in NEWS
4. [RC1] Update version and library numbers in `meson.build` 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}"` 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` 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) 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. 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. 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: initial template:
``` ```
$ ninja -C build/ systemd-pot $ meson compile -C build/ systemd-pot
``` ```
This will generate file `po/systemd.pot` in the source tree. 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: 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 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: 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. The resulting files will be saved in the `build/po/` directory.