zstd/build/meson
lzutao 1d70bc3ba9 meson: Enable testing in CI (#1609)
* tests: Fix shellcheck warnings in playTests.sh

* tests: Do not use ../programs which is relative to tests dirs

This commit fixes error when running playTests.sh in Meson.
Mesonbuild runs out of tree, so ./datagen not in `zstd/tests` dir,
it lies in <mesonbuilddir>/tests. This leads to ../programs invalid.

* tests: Replace relative paths for zstd/tests dir

* playTests: Set shell options explicitly, not in shebang

* playTests: Replace echo -e with printf

* meson: Fix test-zstd

Use std=gnu99 to build and test just like `make test`.

* meson: Fix legacy test

* meson: Enable testing in CI

Run build under release mode for faster test time.

* meson: Increase timeout time for test-zstream
2019-05-02 12:35:37 -07:00
..
contrib meson: Remove redundant join_paths function 2018-12-01 23:18:59 +07:00
lib -Wformat-security not needed with -Wformat=2 2019-02-01 09:30:31 +00:00
programs meson: Fix build 2019-04-12 21:28:36 +07:00
tests meson: Enable testing in CI (#1609) 2019-05-02 12:35:37 -07:00
GetZstdLibraryVersion.py meson: Remove unused sys import 2018-12-14 11:03:04 +07:00
InstallSymlink.py Simplify logic by setting default value for MESON_INSTALL_DESTDIR_PREFIX 2018-12-13 18:07:01 +07:00
meson_options.txt meson: Change build options' name 2018-12-01 23:18:59 +07:00
meson.build meson: Enable testing in CI (#1609) 2019-05-02 12:35:37 -07:00
README.md meson: Update build guide [skip ci] 2018-12-28 11:17:11 +07:00

Meson build system for zstandard

Meson is a build system designed to optimize programmer productivity. It aims to do this by providing simple, out-of-the-box support for modern software development tools and practices, such as unit tests, coverage reports, Valgrind, CCache and the like.

This Meson build system is provided with no guarantee and maintained by Dima Krasner <dima@dimakrasner.com>.

It outputs one libzstd, either shared or static, depending on default_library option.

How to build

cd to this meson directory (build/meson)

meson --buildtype=release -Dbuild_{programs,contrib}=true builddir
cd builddir
ninja             # to build
ninja install     # to install

You might want to install it in staging directory:

DESTDIR=./staging ninja install

To configure build options, use:

meson configure

See man meson(1).