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.
16 lines
1.2 KiB
16 lines
1.2 KiB
8 years ago
|
---
|
||
|
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).
|