Skip to content
Snippets Groups Projects

meson build system

Merged Tomas Krizek requested to merge meson into master

Remaining TODOs

  • fix CI tests
  • update scripts for OBS to build successfully
  • make sure OSX build works
  • create migration documentation
  • document/resolve missing parts (coverage)
  • update respdiff toolchain
  • document modules' lua dependencies

Review

  • tarball includes the same files (see https://gitlab.labs.nic.cz/knot/knot-resolver/merge_requests/771#note_99606)
  • CFLAGS, LDFLAGS for dev build hasn't changed unintentionally
  • git diff doesn't contain forgotten TODO
  • no commit contains DROP, WIP or TODO in title/message
  • the same test suite is executed in CI
  • check every module loads when installed (incl. dnstap)
  • distro packages
    • no files were unintentionally removed
      • arch
      • deb
      • rpm
    • builds in OBS pass package test on a clean system
    • installed files/dir didn't unintentionally change permissions / owner
      • arch
      • deb
      • rpm
    • debian/ubuntu systemd works as before (service restart during update etc.)

Pre-merge

Edited by Tomas Krizek

Merge request reports

Pipeline #46396 failed

Pipeline failed for fdc69324 on meson

Merged by Tomas KrizekTomas Krizek 6 years ago (Mar 12, 2019 11:12am UTC)

Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Tomas Krizek changed milestone to %4.0.0

    changed milestone to %4.0.0

  • Tomas Krizek mentioned in merge request !685 (closed)

    mentioned in merge request !685 (closed)

  • Petr Špaček changed the description

    changed the description

  • Tomas Krizek changed the description

    changed the description

  • Tomas Krizek added 147 commits

    added 147 commits

    • f9a59d6b...217a46b3 - 5 commits from branch master
    • d23f333b - meson: initial attempt
    • a2eb2b5b - meson: kresd builds \o/
    • 6f4185e8 - meson: initial cleanup
    • a3daec02 - contrib: drop embedded lmdb support
    • 59632aec - meson: build contrib as a subdir
    • 7d4edcb3 - meson: build lib as subdir
    • db906152 - meson: build client as a subdir
    • 22a570f2 - meson: update dependencies
    • 941c189f - meson: build daemon in a subdir
    • b7c73083 - meson: clean up client subdir
    • 19d07214 - meson/daemon: fix *.lua -> *.inc conversion
    • 98059400 - meson/daemon/lua: install modules
    • ae4906d5 - meson: use build options for client/daemon builds
    • f942e511 - meson/daemon/lua: install modules from subdir
    • f96cd80e - meson: add option to override modules dir
    • 1f017d41 - meson: use proper etc_dir location
    • 78deab3f - meson: add option keyfile_default
    • fe03bcc6 - meson: move etc_dir to config
    • 4e66772c - meson/daemon/lua: install trust_anchors.lua
    • 22d7e581 - meson/modules: install lua modules
    • 27888117 - meson/daemon/lua: unify lua mod installation
    • 114e976c - meson: modules/daf - install daf.js
    • c3e2ca4f - meson: add luajit dependency to lib
    • 01dd35d7 - meson: modules/policy - compile lua-aho-corasick
    • 01322cc6 - meson: modules/edns_keepalive build
    • 3b1d312a - meson: modules/bogus_log build
    • 5aebf55d - meson: daemon - remove global link_args
    • ae784961 - meson: modules - remove unnecessary link_flags
    • 7627e40e - meson: modules/hints build
    • 1ef2f38e - meson: modules - build as shared_module, not library
    • 09bc86e6 - meson: modules/nsid - build
    • 37515ca4 - modules/stats/stats.c: remove trailing whitespace
    • 36888dc2 - modules/stats/stats.c: add missing lua.h
    • 2b416ae7 - meson: modules/stats - build
    • fd962a88 - meson: cleanup
    • 4202666b - modules/dnstap: remove generated dnstap.pb-c.* files
    • 7df7d012 - meson: modules/dnstap - build
    • a980a50f - meson: modules/http - install static files
    • cf8b0f1c - .gitignore: add generated dnstap files
    • 6e1e1dc8 - .gitignore: sort
    • 20a93c6c - meson: turn on C compiler warnings
    • 2901b2bb - meson: etc install configs and files
    • c65bf053 - scripts: add utility script to check for newer root.hints
    • 1d6f4792 - .gitlabci: check for newer root.hints nightly
    • dc7002bb - meson: doc - build doxyxml and html
    • 74cd9570 - meson: tests - unit tests without coverage
    • b7f6eef1 - meson: unit tests - move test closer to code
    • 79da137d - tests/test_cache: remove obsolete test
    • a38cb509 - tests/config: remove obsolete variable
    • 2e41204f - meson: tests/config - run simple config tests
    • 5adf0028 - meson: tests/config - run worker test
    • 03c4617e - meson: tests/config - add keyfile tests
    • 48d4ebbd - modules/predict: move test to module dir
    • b38a3fe3 - meson: tests/config - run additional tests from tree
    • 8751c2ae - meson: daemon+client install to sbindir
    • b2fc5fdb - meson: tests/config - use script to prepare workdir
    • 943e20aa - meson: tests/config - fix load_ta test
    • f99e2e44 - meson: tests/config: run all configtests
    • e5b8f4c7 - meson: specify meson_version
    • 8f3af1bf - meson: tests/pytests - compile tls proxy
    • 15232faa - tests/pytests: use KRESD_EXEC, TLSPROXY_EXEC env vars
    • e19edd49 - meson: tests/pytests - run pytests successfully
    • caa23315 - tests/pytests: fix deprecation warning with latest pytest
    • 544bc0a1 - meson: tests/pytests - run extended test suite
    • 79f65ec6 - meson: tests/config: always define config tests
    • 9db5f7d4 - test/integration: move deckard submodule
    • e9a4a785 - tests/integration: move related files
    • bfeb7168 - meson: tests/config: use PATH instead of KRESD_EXEC
    • 449257ba - meson: tests/pytests - use PATH instead of *_EXEC vars
    • fe38e581 - meson: tests/integration - prepare script
    • 3328cee6 - meson: doc - add python breathe dependency check
    • 0ed792bd - meson: tests/pytests - add extra_tests build option
    • 5433ac4e - meson: tests - check for py3_deps
    • d8fb4094 - meson: tests/integration run all test suites
    • cc3d3878 - meson: cleanup
    • 8daaf98b - meson: organize dependencies
    • 777e813f - meson: doc/kresd.8 - man page with correct version, date
    • 9fbe98fd - meson: archive target with dev version
    • 6ea63755 - gitignore: ignore *.tar.xz
    • e542f755 - meson: etc/config - WIP
    • b39a5ff3 - meson: etc/config - move and unify configs
    • 2efd5c04 - meson: additional build options
    • a085b6a3 - meson: use prefix variable
    • 6068ad6d - meson: use sbin_dir variable
    • 36e6dc6d - meson: options - trust_anchors
    • 992027b2 - meson: systemd option with autodetection
    • bd35d0d6 - meson: user + group options
    • a372040b - meson: minor fixes
    • 5974e4cc - meson: move configuration to appropriate sections
    • 76bbb0f1 - meson: use features in options
    • 281f3b95 - meson: etc - managed_ta and root.keys
    • abb7242b - meson: etc/config - configure and install configs
    • 1cbe0269 - meson: etc/config - install kresd.conf
    • 4761a806 - meson: systemd - configure and install
    • 204b4fda - meson: systemd/nosocket - add nosocket compatibility mode
    • e0df9596 - meson: managed_ta add note
    • 204bfd49 - meson: daemon - update build
    • 5b518d45 - meson: systemd - update kresd.systemd.7
    • 120220d3 - meson: systemd/nosocket - update man
    • 8ae844cc - meson: systemd - install drop-in examples
    • 7e20672a - meson: systemd - re-add modified README
    • 22f3c8da - meson: systemd - rename cache dir to work dir
    • 9b80c94f - meson: systemd - abandon user_mode
    • 5aaa0540 - gitlabci: add reminder about libkres symbol checks
    • 22b1899d - meson: update TA for keyfile_default
    • 10ec9828 - gitignore: add build directory
    • a1994318 - meson: daemon/lua - don't embed
    • a8c33ea9 - meson: modules - move lua_src var
    • d61bd0e3 - meson: change module names in lua code
    • 630ece6e - meson: use kresdconf.h instead of compiler defines
    • 02752d3e - meson: remove MODULEDIR
    • 5bfa7a92 - meson: fix typos
    • d67a5843 - meson: modules - fix ahocorasick, mock_cmodule
    • 616677a8 - meson: runtime lua fixes
    • 6814a581 - meson: fix path to load modules
    • ff7e7e34 - meson: remove moduledir
    • b1247e9c - meson: use c_args instead of setting global compiler options
    • 2d778189 - pytests/tlsproxy: fix C warnings
    • 0d62f8b2 - meson: resolve some TODOs
    • 2c27824a - meson: improve keyfile_default
    • 99f5c025 - meson: add root_hints option to customize location
    • ca7651df - systemd/kresd@.service: switch to Restart=on-abnormal
    • c31fea76 - meson: modules/policy - check if git submodules are present
    • 0c49ce6e - meson: modules/policy - fix lua-aho-corasick build
    • ea8d0b66 - meson: doc - improve dependency detection
    • 998f8a96 - meson: systemd - get unitdir, tmpfilesdir from pkg-config
    • 0f340972 - meson: systemd - simplify detection
    • 6cb86d0d - meson: doc/build - update dependencies and compilation info
    • 4e6abfa0 - meson: add verbose_log option
    • 282fea48 - meson: use add_project_arguments
    • b4f27bcb - meson: remove asserts when buildtype=release
    • 2781a017 - meson: doc/build - use meson configure for options
    • ceafd8f3 - meson: doc/build - add info for packagers
    • 164bf7f1 - meson: fix C args
    • 0816d182 - meson: doc/build - update build and docker info
    • 91a87eb1 - meson: tests/pytests - fix PATH
    • a5246800 - meson: tests/integration - turn off DNSSEC, add additional tests
    • 69bcfc23 - meson: fix root.hints installation
    • 447ab8e4 - daemon/engine: avoid unused variable with DNDEBUG
    • 3cf8c318 - meson: remove no longer needed makefiles
    • 6573f838 - meson: clean up meson.build
    • dffe2bde - meson: bench - compile and run

    Compare with previous version

  • Tomas Krizek added 11 commits

    added 11 commits

    • 67c859bf - meson: doc/conf.py - read version from meson.build
    • e34bc5e1 - meson: distro/deb - remove broken link
    • 072ed81e - doc/flowcharts: use underscores instead of spaces in filename
    • f074a722 - meson: change extra_tests to postinstall_tests (incl config tests)
    • e1bb6d9a - meson: scripts/make-archive.sh - generate dev tarball
    • c0ffb47d - meson: systemd - fix syntax
    • 01e792a2 - meson: doc - cache doctrees in another directory
    • 492277df - meson: trust_anchors - correctly set manage_ta for keyfile_default
    • 777ccba6 - meson: scripts/make-archive.sh: rename to make-dev-archive.sh
    • 3a29e512 - distro/arch: use meson build system
    • 6646f574 - meson: doc/build - systemd packaging, tests

    Compare with previous version

  • Tomas Krizek added 162 commits

    added 162 commits

    • 6646f574...970a63fa - 2 commits from branch master
    • a5df687c - meson: initial attempt
    • 55095859 - meson: kresd builds \o/
    • 8a058323 - meson: initial cleanup
    • 91f3450e - contrib: drop embedded lmdb support
    • c8bba01e - meson: build contrib as a subdir
    • a43eb343 - meson: build lib as subdir
    • fc737bad - meson: build client as a subdir
    • 79446f78 - meson: update dependencies
    • 9a0b0e07 - meson: build daemon in a subdir
    • 3c61292c - meson: clean up client subdir
    • cd651dc6 - meson/daemon: fix *.lua -> *.inc conversion
    • 2f1b9ed7 - meson/daemon/lua: install modules
    • 23f69b80 - meson: use build options for client/daemon builds
    • 530747cf - meson/daemon/lua: install modules from subdir
    • 862bf3f2 - meson: add option to override modules dir
    • 797bc5fd - meson: use proper etc_dir location
    • 8b657df8 - meson: add option keyfile_default
    • 29ac0495 - meson: move etc_dir to config
    • ebc6beb5 - meson/daemon/lua: install trust_anchors.lua
    • 040d1c1a - meson/modules: install lua modules
    • 3fe002f3 - meson/daemon/lua: unify lua mod installation
    • 0037e79d - meson: modules/daf - install daf.js
    • 84773c5a - meson: add luajit dependency to lib
    • 0f847c57 - meson: modules/policy - compile lua-aho-corasick
    • f4a8fce0 - meson: modules/edns_keepalive build
    • 49aecff2 - meson: modules/bogus_log build
    • ee86ee2a - meson: daemon - remove global link_args
    • 8076b6a4 - meson: modules - remove unnecessary link_flags
    • 9583ab62 - meson: modules/hints build
    • a7deb900 - meson: modules - build as shared_module, not library
    • 6d9c99ef - meson: modules/nsid - build
    • dfdc5975 - modules/stats/stats.c: remove trailing whitespace
    • a8c599a2 - modules/stats/stats.c: add missing lua.h
    • 84b6b2b9 - meson: modules/stats - build
    • d476c60f - meson: cleanup
    • 29fb179e - modules/dnstap: remove generated dnstap.pb-c.* files
    • 2af30f37 - meson: modules/dnstap - build
    • 71ae15ca - meson: modules/http - install static files
    • b62f843f - .gitignore: add generated dnstap files
    • 0a5f2f60 - .gitignore: sort
    • a9e5f1ff - meson: turn on C compiler warnings
    • f9cb01a0 - meson: etc install configs and files
    • 4d0e34e2 - scripts: add utility script to check for newer root.hints
    • c788f2c2 - .gitlabci: check for newer root.hints nightly
    • d3968f2b - meson: doc - build doxyxml and html
    • 0536ff2b - meson: tests - unit tests without coverage
    • 28b4c243 - meson: unit tests - move test closer to code
    • 28737a06 - tests/test_cache: remove obsolete test
    • 366489b5 - tests/config: remove obsolete variable
    • ef483e06 - meson: tests/config - run simple config tests
    • ddb4ac54 - meson: tests/config - run worker test
    • 0fe108f8 - meson: tests/config - add keyfile tests
    • d2f17653 - modules/predict: move test to module dir
    • a583230e - meson: tests/config - run additional tests from tree
    • d3ff3b9d - meson: daemon+client install to sbindir
    • cd7ffdc7 - meson: tests/config - use script to prepare workdir
    • da92225e - meson: tests/config - fix load_ta test
    • b03ed5d2 - meson: tests/config: run all configtests
    • 64cb5afc - meson: specify meson_version
    • 18c87003 - meson: tests/pytests - compile tls proxy
    • 1b278ca1 - tests/pytests: use KRESD_EXEC, TLSPROXY_EXEC env vars
    • 5b208e5c - meson: tests/pytests - run pytests successfully
    • cd3a8b6c - tests/pytests: fix deprecation warning with latest pytest
    • 671bcb8f - meson: tests/pytests - run extended test suite
    • 188b42fc - meson: tests/config: always define config tests
    • 13e18e0b - test/integration: move deckard submodule
    • 70c1b100 - tests/integration: move related files
    • c4ed1447 - meson: tests/config: use PATH instead of KRESD_EXEC
    • ead5dbd0 - meson: tests/pytests - use PATH instead of *_EXEC vars
    • 79fd445e - meson: tests/integration - prepare script
    • 698bc436 - meson: doc - add python breathe dependency check
    • 235e367b - meson: tests/pytests - add extra_tests build option
    • 1dd0a11f - meson: tests - check for py3_deps
    • ec3fe4be - meson: tests/integration run all test suites
    • abd5d4b8 - meson: cleanup
    • e1c7ffe7 - meson: organize dependencies
    • 925f8f86 - meson: doc/kresd.8 - man page with correct version, date
    • 3bf9c028 - meson: archive target with dev version
    • 12f9e25a - gitignore: ignore *.tar.xz
    • 573cefb2 - meson: etc/config - WIP
    • 97b01ba8 - meson: etc/config - move and unify configs
    • 154cebfd - meson: additional build options
    • a92ffe99 - meson: use prefix variable
    • 7e481e91 - meson: use sbin_dir variable
    • 33c7c558 - meson: options - trust_anchors
    • e1026fa5 - meson: systemd option with autodetection
    • 5a59be6e - meson: user + group options
    • 58295efe - meson: minor fixes
    • 00331123 - meson: move configuration to appropriate sections
    • b29f7468 - meson: use features in options
    • 01afa6a8 - meson: etc - managed_ta and root.keys
    • 4758ae40 - meson: etc/config - configure and install configs
    • 89547b64 - meson: etc/config - install kresd.conf
    • 41f3c802 - meson: systemd - configure and install
    • 03fc3dda - meson: systemd/nosocket - add nosocket compatibility mode
    • b5a337cd - meson: managed_ta add note
    • 4b67be5d - meson: daemon - update build
    • 8404e80a - meson: systemd - update kresd.systemd.7
    • 69c637be - meson: systemd/nosocket - update man
    • 991f1418 - meson: systemd - install drop-in examples
    • 4488f158 - meson: systemd - re-add modified README
    • 561232c2 - meson: systemd - rename cache dir to work dir
    • 37b47bcb - meson: systemd - abandon user_mode
    • 91a67aad - gitlabci: add reminder about libkres symbol checks
    • a900407a - meson: update TA for keyfile_default
    • 20a4b253 - gitignore: add build directory
    • 06c78fe9 - meson: daemon/lua - don't embed
    • a33478c1 - meson: modules - move lua_src var
    • 28ac2e68 - meson: change module names in lua code
    • f652d262 - meson: use kresdconf.h instead of compiler defines
    • 7b6d240a - meson: remove MODULEDIR
    • a0b4fb3b - meson: fix typos
    • 50afeae5 - meson: modules - fix ahocorasick, mock_cmodule
    • 4da3b14e - meson: runtime lua fixes
    • c275f87b - meson: fix path to load modules
    • c3bcb9f0 - meson: remove moduledir
    • 83b34077 - meson: use c_args instead of setting global compiler options
    • 72e8dde5 - pytests/tlsproxy: fix C warnings
    • 1526e1e7 - meson: resolve some TODOs
    • 6d9d159a - meson: improve keyfile_default
    • f722635d - meson: add root_hints option to customize location
    • 8c35a5bb - systemd/kresd@.service: switch to Restart=on-abnormal
    • c4b48f67 - meson: modules/policy - check if git submodules are present
    • f41896c2 - meson: modules/policy - fix lua-aho-corasick build
    • 696cebf4 - meson: doc - improve dependency detection
    • 1dd5b9a5 - meson: systemd - get unitdir, tmpfilesdir from pkg-config
    • fe7939a4 - meson: systemd - simplify detection
    • 07402e10 - meson: doc/build - update dependencies and compilation info
    • b3aa8bd4 - meson: add verbose_log option
    • 0654bd69 - meson: use add_project_arguments
    • e03cc061 - meson: remove asserts when buildtype=release
    • 89bada9d - meson: doc/build - use meson configure for options
    • 30a178fa - meson: doc/build - add info for packagers
    • aa1a5029 - meson: fix C args
    • f9346422 - meson: doc/build - update build and docker info
    • 5de16b0c - meson: tests/pytests - fix PATH
    • 96c85ef7 - meson: tests/integration - turn off DNSSEC, add additional tests
    • b83566df - meson: fix root.hints installation
    • 9faccd04 - daemon/engine: avoid unused variable with DNDEBUG
    • 0f3784de - meson: remove no longer needed makefiles
    • 8a3fba3e - meson: clean up meson.build
    • 4d6eb0e2 - meson: bench - compile and run
    • a6efe06a - meson: doc/conf.py - read version from meson.build
    • d2bedf9a - meson: distro/deb - remove broken link
    • 5c18e9d0 - meson: change extra_tests to postinstall_tests (incl config tests)
    • 0c69b479 - meson: scripts/make-archive.sh - generate dev tarball
    • 1681c7cc - meson: systemd - fix syntax
    • 08dc2002 - meson: doc - cache doctrees in another directory
    • c74b6b28 - meson: trust_anchors - correctly set manage_ta for keyfile_default
    • 892a875e - meson: scripts/make-archive.sh: rename to make-dev-archive.sh
    • c098ec7f - distro/arch: use meson build system
    • 1f595425 - meson: doc/build - systemd packaging, tests
    • fd93f021 - AUTHORS: update
    • 8d0af293 - meson: install additional files
    • 80f9418e - meson: doc/build - improve info about packaging
    • dca468fc - distro/rpm - use meson
    • 129cddc9 - daemon/network: avoid unused functions and variables
    • ca2b2596 - meson: etc/config - explicitly bind to localhost
    • ce04cb38 - TODO: update libkres9.symbols
    • 79de5ca2 - distro/debian: use meson

    Compare with previous version

  • Tomas Krizek added 3 commits

    added 3 commits

    • bb636b48 - daemon/kres-gen: generate directly to file instead of stdout
    • 4faa0154 - meson: ci - fix builds
    • 29f61ae4 - ci: debian/buster - update image, include meson

    Compare with previous version

  • Tomas Krizek added 1 commit

    added 1 commit

    • 069b6b30 - fixup! meson: ci - fix builds

    Compare with previous version

  • Tomas Krizek added 4 commits

    added 4 commits

    • 608c0767 - fixup! ci: debian/buster - update image, include meson
    • 0fd09a2e - ci: debian-unstable - remove no longer needed image
    • fff6cfd6 - meson: daemon/kres-gen - fix lua file generation
    • 16087e93 - fixup! meson: ci - fix builds

    Compare with previous version

  • Tomas Krizek added 1 commit

    added 1 commit

    • cf4191e7 - fixup! meson: daemon/kres-gen - fix lua file generation

    Compare with previous version

  • Tomas Krizek added 1 commit

    added 1 commit

    • 9511717a - fixup! meson: ci - fix builds

    Compare with previous version

  • Tomas Krizek added 1 commit

    added 1 commit

    • 85096f8d - fixup! meson: ci - fix builds

    Compare with previous version

  • Tomas Krizek changed the description

    changed the description

  • Tomas Krizek added 1 commit

    added 1 commit

    • 7e785f12 - ci: merge unit and config tests into single job

    Compare with previous version

  • Tomas Krizek added 1 commit

    added 1 commit

    • 9d0a4830 - fixup! ci: merge unit and config tests into single job

    Compare with previous version

  • Tomas Krizek added 1 commit

    added 1 commit

    • c3b19eb6 - fixup! ci: merge unit and config tests into single job

    Compare with previous version

  • Tomas Krizek added 1 commit

    added 1 commit

    • df8ee704 - fixup! ci: merge unit and config tests into single job

    Compare with previous version

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
Please register or sign in to reply
Loading