The Meson Build System
http://mesonbuild.com/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
1.2 KiB
30 lines
1.2 KiB
--- |
|
short-description: Creating releases |
|
... |
|
|
|
# Creating releases |
|
|
|
In addition to development, almost all projects provide periodical |
|
source releases. These are standalone packages (usually either in tar |
|
or zip format) of the source code. They do not contain any revision |
|
control metadata, only the source code. |
|
|
|
Meson provides a simple way of generating these. It consists of a |
|
single command: |
|
|
|
ninja dist |
|
|
|
This creates a file called `projectname-version.tar.xz` in the build |
|
tree subdirectory `meson-dist`. This archive contains the full |
|
contents of the latest commit in revision control including all the |
|
submodules. All revision control metadata is removed. Meson then takes |
|
this archive and tests that it works by doing a full compile + test + |
|
install cycle. If all these pass, Meson will then create a SHA-256 |
|
checksum file next to the archive. |
|
|
|
**Note**: Meson behaviour is different from Autotools. The Autotools |
|
"dist" target packages up the current source tree. Meson packages |
|
the latest revision control commit. The reason for this is that it |
|
prevents developers from doing accidental releases where the |
|
distributed archive does not match any commit in revision control |
|
(especially the one tagged for the release).
|
|
|