summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.clang-tidy5
-rw-r--r--meson/suppressions/meson.build3
-rw-r--r--meson_options.txt9
-rw-r--r--test/meson.build4
4 files changed, 14 insertions, 7 deletions
diff --git a/.clang-tidy b/.clang-tidy
index 5b9d54d..b281245 100644
--- a/.clang-tidy
+++ b/.clang-tidy
@@ -4,6 +4,7 @@
Checks: >
*,
-*-else-after-return,
+ -*-macro-to-enum,
-*-magic-numbers,
-*-non-private-member-variables-in-classes,
-*-static-assert,
@@ -19,6 +20,7 @@ Checks: >
-bugprone-branch-clone,
-bugprone-copy-constructor-init,
-bugprone-easily-swappable-parameters,
+ -bugprone-multi-level-implicit-pointer-conversion,
-bugprone-narrowing-conversions,
-bugprone-reserved-identifier,
-bugprone-suspicious-include,
@@ -29,6 +31,7 @@ Checks: >
-cert-err33-c,
-cert-err34-c,
-clang-analyzer-core.uninitialized.ArraySubscript,
+ -clang-analyzer-optin.core.EnumCastOutOfRange,
-clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling,
-clang-analyzer-valist.Uninitialized,
-cppcoreguidelines-avoid-non-const-global-variables,
@@ -56,13 +59,13 @@ Checks: >
-misc-include-cleaner,
-misc-no-recursion,
-misc-unused-parameters,
- -modernize-macro-to-enum,
-modernize-return-braced-init-list,
-modernize-use-default-member-init,
-modernize-use-trailing-return-type,
-performance-faster-string-find,
-performance-noexcept-move-constructor,
-performance-unnecessary-value-param,
+ -readability-avoid-nested-conditional-operator,
-readability-const-return-type,
-readability-function-cognitive-complexity,
-readability-identifier-length,
diff --git a/meson/suppressions/meson.build b/meson/suppressions/meson.build
index 0dd7f2b..386d24c 100644
--- a/meson/suppressions/meson.build
+++ b/meson/suppressions/meson.build
@@ -1,4 +1,4 @@
-# Copyright 2020-2023 David Robillard <d@drobilla.net>
+# Copyright 2020-2024 David Robillard <d@drobilla.net>
# SPDX-License-Identifier: 0BSD OR ISC
# Project-specific warning suppressions
@@ -24,6 +24,7 @@ if cc.get_id() in ['clang', 'emscripten']
'-Wno-padded',
'-Wno-reserved-id-macro',
'-Wno-sign-conversion',
+ '-Wno-switch-default',
'-Wno-switch-enum',
'-Wno-unsafe-buffer-usage',
'-Wno-unused-macros',
diff --git a/meson_options.txt b/meson_options.txt
index 41c5eb9..e3e283e 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -1,17 +1,20 @@
# Copyright 2021-2022 David Robillard <d@drobilla.net>
# SPDX-License-Identifier: 0BSD OR ISC
-option('docs', type: 'feature', value: 'auto', yield: true,
+option('docs', type: 'feature', yield: true,
description: 'Build documentation')
+option('lint', type: 'boolean', value: false, yield: true,
+ description: 'Run code quality checks')
+
option('man', type: 'feature', value: 'enabled', yield: true,
description: 'Install man pages')
-option('tests', type: 'feature', value: 'auto', yield: true,
+option('tests', type: 'feature', yield: true,
description: 'Build tests')
option('title', type: 'string', value: 'Sord',
description: 'Project title')
-option('tools', type: 'feature', value: 'auto', yield: true,
+option('tools', type: 'feature', yield: true,
description: 'Build command line utilities')
diff --git a/test/meson.build b/test/meson.build
index cbadd8f..cf8bcc4 100644
--- a/test/meson.build
+++ b/test/meson.build
@@ -5,9 +5,9 @@
# Project Metadata #
####################
-if get_option('warning_level') == 'everything'
- # Check release metadata
+if get_option('lint')
if not meson.is_subproject()
+ # Check release metadata
autoship = find_program('autoship', required: false)
if autoship.found()
test('autoship', autoship, args: ['test', sord_src_root], suite: 'data')