aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2022-10-23 21:48:38 -0400
committerDavid Robillard <d@drobilla.net>2022-10-23 21:48:38 -0400
commit2c1e022ebbb2619b6e497a360480294bb950e20e (patch)
tree9dc84b0da6088d5bc49b714aad600d78f0a16084
parent94e66b9793932483b5b0f5f67a16c4c16bd4665c (diff)
downloadserd-2c1e022ebbb2619b6e497a360480294bb950e20e.tar.gz
serd-2c1e022ebbb2619b6e497a360480294bb950e20e.tar.bz2
serd-2c1e022ebbb2619b6e497a360480294bb950e20e.zip
Test header for warnings more strictly
-rw-r--r--NEWS3
-rw-r--r--test/headers/.clang-tidy (renamed from include/.clang-tidy)4
-rw-r--r--test/headers/meson.build29
-rw-r--r--test/headers/test_headers.c11
-rw-r--r--test/meson.build6
5 files changed, 50 insertions, 3 deletions
diff --git a/NEWS b/NEWS
index cbcb4286..4b72e0a6 100644
--- a/NEWS
+++ b/NEWS
@@ -1,8 +1,9 @@
serd (0.30.17) unstable; urgency=medium
* Override pkg-config dependency within meson
+ * Test header for warnings more strictly
- -- David Robillard <d@drobilla.net> Fri, 07 Oct 2022 17:20:42 +0000
+ -- David Robillard <d@drobilla.net> Sat, 01 Oct 2022 16:24:20 +0000
serd (0.30.16) stable; urgency=medium
diff --git a/include/.clang-tidy b/test/headers/.clang-tidy
index a2f9d2b0..e7f1ca66 100644
--- a/include/.clang-tidy
+++ b/test/headers/.clang-tidy
@@ -1,10 +1,10 @@
# Copyright 2020-2022 David Robillard <d@drobilla.net>
# SPDX-License-Identifier: 0BSD OR ISC
+
Checks: >
*,
-*-uppercase-literal-suffix,
- -altera-struct-pack-align,
- -clang-diagnostic-unused-macros,
+ -altera-*,
-llvmlibc-*,
-readability-identifier-length,
WarningsAsErrors: '*'
diff --git a/test/headers/meson.build b/test/headers/meson.build
new file mode 100644
index 00000000..ac9dc2d2
--- /dev/null
+++ b/test/headers/meson.build
@@ -0,0 +1,29 @@
+# Copyright 2020-2022 David Robillard <d@drobilla.net>
+# SPDX-License-Identifier: 0BSD OR ISC
+
+header_c_suppressions = []
+
+if get_option('strict')
+ if cc.get_id() == 'clang'
+ header_c_suppressions += [
+ '-Wno-nullability-extension',
+ '-Wno-padded',
+ ]
+ elif cc.get_id() == 'gcc'
+ header_c_suppressions += [
+ '-Wno-padded',
+ '-Wno-unused-const-variable',
+ ]
+ endif
+endif
+
+test(
+ 'headers',
+ executable(
+ 'test_headers',
+ files('test_headers.c'),
+ c_args: header_c_suppressions,
+ dependencies: serd_dep,
+ ),
+ suite: 'unit',
+)
diff --git a/test/headers/test_headers.c b/test/headers/test_headers.c
new file mode 100644
index 00000000..c855c103
--- /dev/null
+++ b/test/headers/test_headers.c
@@ -0,0 +1,11 @@
+// Copyright 2022 David Robillard <d@drobilla.net>
+// SPDX-License-Identifier: ISC
+
+#include "serd/serd.h" // IWYU pragma: keep
+
+SERD_CONST_FUNC
+int
+main(void)
+{
+ return 0;
+}
diff --git a/test/meson.build b/test/meson.build
index eaf8fff3..3980538d 100644
--- a/test/meson.build
+++ b/test/meson.build
@@ -27,6 +27,12 @@ if get_option('strict')
endif
endif
+###################
+# Header Warnings #
+###################
+
+subdir('headers')
+
##############
# Unit Tests #
##############