summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.git-blame-ignore-revs5
-rw-r--r--.suppress.cppcheck2
-rw-r--r--bindings/test/bindings_test_plugin.c2
-rw-r--r--doc/world.rst2
-rw-r--r--meson.build3
-rw-r--r--src/.clang-tidy3
-rw-r--r--src/lilv_internal.h2
-rw-r--r--src/plugin.c2
-rw-r--r--test/bad_syntax.lv2/meson.build1
-rw-r--r--test/cpp/.clang-tidy4
-rw-r--r--test/cpp/meson.build1
-rw-r--r--test/failed_instantiation.lv2/meson.build1
-rw-r--r--test/failed_lib_descriptor.lv2/meson.build1
-rw-r--r--test/headers/meson.build1
-rw-r--r--test/lib_descriptor.lv2/meson.build1
-rw-r--r--test/lilv_test_uri_map.h2
-rw-r--r--test/lilv_test_utils.c3
-rw-r--r--test/meson.build1
-rw-r--r--test/missing_descriptor.lv2/meson.build1
-rw-r--r--test/missing_name.lv2/meson.build1
-rw-r--r--test/missing_plugin.lv2/meson.build1
-rw-r--r--test/missing_port.lv2/meson.build1
-rw-r--r--test/missing_port_name.lv2/meson.build1
-rw-r--r--test/test_state.c1
-rw-r--r--test/test_ui.c1
-rw-r--r--tools/meson.build3
26 files changed, 39 insertions, 8 deletions
diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs
new file mode 100644
index 0000000..adc9674
--- /dev/null
+++ b/.git-blame-ignore-revs
@@ -0,0 +1,5 @@
+# Copyright 2025 David Robillard <d@drobilla.net>
+# SPDX-License-Identifier: 0BSD OR ISC
+
+# Format all code with clang-format
+31cc05d5ef6e840ebe2b4c265f374f913f4758cc
diff --git a/.suppress.cppcheck b/.suppress.cppcheck
index 48513d7..3d51000 100644
--- a/.suppress.cppcheck
+++ b/.suppress.cppcheck
@@ -1,7 +1,9 @@
CastIntegerToAddressAtReturn
+ctunullpointerOutOfMemory
knownConditionTrueFalse
memleakOnRealloc
noExplicitConstructor
normalCheckLevelMaxBranches
+nullPointerOutOfMemory
redundantInitialization
varFuncNullUB
diff --git a/bindings/test/bindings_test_plugin.c b/bindings/test/bindings_test_plugin.c
index cdbdbb9..0397db4 100644
--- a/bindings/test/bindings_test_plugin.c
+++ b/bindings/test/bindings_test_plugin.c
@@ -174,7 +174,7 @@ static const LV2_Descriptor descriptor = {TEST_URI,
The lv2_descriptor() function is the entry point to the plugin library. The
host will load the library and call this function repeatedly with increasing
indices to find all the plugins defined in the library. The index is not an
- indentifier, the URI of the returned descriptor is used to determine the
+ identifier, the URI of the returned descriptor is used to determine the
identify of the plugin.
This method is in the ``discovery'' threading class, so no other functions
diff --git a/doc/world.rst b/doc/world.rst
index 8b71165..e96c18f 100644
--- a/doc/world.rst
+++ b/doc/world.rst
@@ -39,7 +39,7 @@ For example, to set the LV2 path to only load plugins bundled in the application
.. code-block:: c
- LilvNode* lv2_path = lilv_new_file_uri(world, NULL, "/myapp/lv2");
+ LilvNode* lv2_path = lilv_new_string(world, "/myapp/lv2");
lilv_world_set_option(world, LILV_OPTION_LV2_PATH, lv2_path);
diff --git a/meson.build b/meson.build
index 4e3193a..755b42d 100644
--- a/meson.build
+++ b/meson.build
@@ -294,6 +294,7 @@ liblilv = library(
darwin_versions: [major_version + '.0.0', meson.project_version()],
dependencies: common_dependencies,
gnu_symbol_visibility: 'hidden',
+ implicit_include_directories: false,
include_directories: include_directories('include'),
install: true,
soversion: soversion,
@@ -308,7 +309,7 @@ lilv_dep = declare_dependency(
link_with: liblilv,
)
-# Generage pkg-config file for external dependants
+# Generate pkg-config file for external dependants
pkg.generate(
liblilv,
description: 'Library for hosting LV2 plugins',
diff --git a/src/.clang-tidy b/src/.clang-tidy
index 9cc7cdc..0d90367 100644
--- a/src/.clang-tidy
+++ b/src/.clang-tidy
@@ -1,4 +1,4 @@
-# Copyright 2020-2024 David Robillard <d@drobilla.net>
+# Copyright 2020-2025 David Robillard <d@drobilla.net>
# SPDX-License-Identifier: 0BSD OR ISC
Checks: >
@@ -7,6 +7,7 @@ Checks: >
-bugprone-narrowing-conversions,
-cert-err33-c,
-clang-analyzer-optin.core.EnumCastOutOfRange,
+ -clang-analyzer-optin.taint.TaintedAlloc,
-clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling,
-clang-analyzer-valist.Uninitialized,
-concurrency-mt-unsafe,
diff --git a/src/lilv_internal.h b/src/lilv_internal.h
index 70c47de..2cef3aa 100644
--- a/src/lilv_internal.h
+++ b/src/lilv_internal.h
@@ -8,8 +8,6 @@
extern "C" {
#endif
-#include "lilv_config.h"
-
#include <lilv/lilv.h>
#include <lv2/core/lv2.h>
#include <serd/serd.h>
diff --git a/src/plugin.c b/src/plugin.c
index d828f6f..c82bb65 100644
--- a/src/plugin.c
+++ b/src/plugin.c
@@ -307,7 +307,7 @@ lilv_plugin_load_ports_if_necessary(const LilvPlugin* const_plugin)
plugin->num_ports = this_index + 1;
}
- // Havn't seen this port yet, add it to array
+ // Haven't seen this port yet, add it to array
if (!this_port) {
this_port = lilv_port_new(
plugin->world, port, this_index, lilv_node_as_string(symbol));
diff --git a/test/bad_syntax.lv2/meson.build b/test/bad_syntax.lv2/meson.build
index 2e22042..48df70e 100644
--- a/test/bad_syntax.lv2/meson.build
+++ b/test/bad_syntax.lv2/meson.build
@@ -29,6 +29,7 @@ test(
files('test_bad_syntax.c'),
c_args: c_suppressions + test_args,
dependencies: [lv2_dep, lilv_dep],
+ implicit_include_directories: false,
),
args: [meson.current_build_dir() / ''],
suite: 'plugin',
diff --git a/test/cpp/.clang-tidy b/test/cpp/.clang-tidy
index 5d20fa0..a087a3d 100644
--- a/test/cpp/.clang-tidy
+++ b/test/cpp/.clang-tidy
@@ -1,7 +1,8 @@
-# Copyright 2020-2022 David Robillard <d@drobilla.net>
+# Copyright 2020-2025 David Robillard <d@drobilla.net>
# SPDX-License-Identifier: 0BSD OR ISC
Checks: >
+ -*-nullptr,
-cert-dcl50-cpp,
-cppcoreguidelines-macro-usage,
-cppcoreguidelines-pro-bounds-array-to-pointer-decay,
@@ -14,6 +15,7 @@ Checks: >
-modernize-return-braced-init-list,
-modernize-use-nodiscard,
-modernize-use-trailing-return-type,
+ -modernize-use-using,
-readability-implicit-bool-conversion,
HeaderFilterRegex: '.*/lilvmm\.hpp'
InheritParentConfig: true
diff --git a/test/cpp/meson.build b/test/cpp/meson.build
index 0c750de..b810e39 100644
--- a/test/cpp/meson.build
+++ b/test/cpp/meson.build
@@ -31,6 +31,7 @@ test(
files('test_lilv_hpp.cpp'),
cpp_args: test_args + cpp_suppressions,
dependencies: [lv2_dep, lilv_dep],
+ implicit_include_directories: false,
),
suite: 'unit',
)
diff --git a/test/failed_instantiation.lv2/meson.build b/test/failed_instantiation.lv2/meson.build
index 37f8e26..0719d53 100644
--- a/test/failed_instantiation.lv2/meson.build
+++ b/test/failed_instantiation.lv2/meson.build
@@ -29,6 +29,7 @@ test(
files('test_failed_instantiation.c'),
c_args: c_suppressions + test_args,
dependencies: [lv2_dep, lilv_dep],
+ implicit_include_directories: false,
),
args: [meson.current_build_dir() / ''],
suite: 'plugin',
diff --git a/test/failed_lib_descriptor.lv2/meson.build b/test/failed_lib_descriptor.lv2/meson.build
index 15c01e1..8c5907a 100644
--- a/test/failed_lib_descriptor.lv2/meson.build
+++ b/test/failed_lib_descriptor.lv2/meson.build
@@ -29,6 +29,7 @@ test(
files('test_failed_lib_descriptor.c'),
c_args: c_suppressions + test_args,
dependencies: [lv2_dep, lilv_dep],
+ implicit_include_directories: false,
),
args: [meson.current_build_dir() / ''],
suite: 'plugin',
diff --git a/test/headers/meson.build b/test/headers/meson.build
index 573dbd9..c81ffaa 100644
--- a/test/headers/meson.build
+++ b/test/headers/meson.build
@@ -26,6 +26,7 @@ test(
files('test_headers.c'),
c_args: header_c_suppressions,
dependencies: lilv_dep,
+ implicit_include_directories: false,
),
suite: 'unit',
)
diff --git a/test/lib_descriptor.lv2/meson.build b/test/lib_descriptor.lv2/meson.build
index e70ed29..217b907 100644
--- a/test/lib_descriptor.lv2/meson.build
+++ b/test/lib_descriptor.lv2/meson.build
@@ -29,6 +29,7 @@ test(
files('test_lib_descriptor.c'),
c_args: c_suppressions + test_args,
dependencies: [lv2_dep, lilv_dep],
+ implicit_include_directories: false,
),
args: [meson.current_build_dir() / ''],
suite: 'plugin',
diff --git a/test/lilv_test_uri_map.h b/test/lilv_test_uri_map.h
index 00b5226..c74c8da 100644
--- a/test/lilv_test_uri_map.h
+++ b/test/lilv_test_uri_map.h
@@ -51,7 +51,9 @@ map_uri(LV2_URID_Map_Handle handle, const char* uri)
assert(serd_uri_string_has_scheme((const uint8_t*)uri));
map->uris = (char**)realloc(map->uris, ++map->n_uris * sizeof(char*));
+ assert(map->uris);
map->uris[map->n_uris - 1] = (char*)calloc(1, uri_len + 1);
+ assert(map->uris[map->n_uris - 1]);
memcpy(map->uris[map->n_uris - 1], uri, uri_len + 1);
return map->n_uris;
}
diff --git a/test/lilv_test_utils.c b/test/lilv_test_utils.c
index ba291d7..8086b65 100644
--- a/test/lilv_test_utils.c
+++ b/test/lilv_test_utils.c
@@ -10,6 +10,7 @@
#include <zix/path.h>
#include <zix/status.h>
+#include <assert.h>
#include <errno.h>
#include <stdbool.h>
#include <stdint.h>
@@ -26,6 +27,7 @@ lilv_test_env_new(void)
}
LilvTestEnv* env = (LilvTestEnv*)calloc(1, sizeof(LilvTestEnv));
+ assert(env);
env->world = world;
env->plugin1_uri = lilv_new_uri(world, "http://example.org/plug");
@@ -179,6 +181,7 @@ set_env(const char* name, const char* value)
// setenv on Windows does not modify the current process' environment
const size_t len = strlen(name) + 1 + strlen(value) + 1;
char* str = (char*)calloc(1, len);
+ assert(str);
snprintf(str, len, "%s=%s", name, value);
putenv(str);
free(str);
diff --git a/test/meson.build b/test/meson.build
index eec78b5..ce0c708 100644
--- a/test/meson.build
+++ b/test/meson.build
@@ -88,6 +88,7 @@ foreach unit : unit_tests
files('lilv_test_utils.c', 'test_@0@.c'.format(unit)),
c_args: define_args + test_args + c_suppressions,
dependencies: [lv2_dep, lilv_dep],
+ implicit_include_directories: false,
),
suite: 'unit',
)
diff --git a/test/missing_descriptor.lv2/meson.build b/test/missing_descriptor.lv2/meson.build
index 78d749b..92c5145 100644
--- a/test/missing_descriptor.lv2/meson.build
+++ b/test/missing_descriptor.lv2/meson.build
@@ -29,6 +29,7 @@ test(
files('test_missing_descriptor.c'),
c_args: c_suppressions + test_args,
dependencies: [lv2_dep, lilv_dep],
+ implicit_include_directories: false,
),
args: [meson.current_build_dir() / ''],
suite: 'plugin',
diff --git a/test/missing_name.lv2/meson.build b/test/missing_name.lv2/meson.build
index 56a695a..da9759e 100644
--- a/test/missing_name.lv2/meson.build
+++ b/test/missing_name.lv2/meson.build
@@ -29,6 +29,7 @@ test(
files('test_missing_name.c'),
c_args: c_suppressions + test_args,
dependencies: [lv2_dep, lilv_dep],
+ implicit_include_directories: false,
),
args: [meson.current_build_dir() / ''],
suite: 'plugin',
diff --git a/test/missing_plugin.lv2/meson.build b/test/missing_plugin.lv2/meson.build
index 7e6f51f..f28fc9f 100644
--- a/test/missing_plugin.lv2/meson.build
+++ b/test/missing_plugin.lv2/meson.build
@@ -29,6 +29,7 @@ test(
files('test_missing_plugin.c'),
c_args: c_suppressions + test_args,
dependencies: [lv2_dep, lilv_dep],
+ implicit_include_directories: false,
),
args: [meson.current_build_dir() / ''],
suite: 'plugin',
diff --git a/test/missing_port.lv2/meson.build b/test/missing_port.lv2/meson.build
index 8dfc655..3bf892b 100644
--- a/test/missing_port.lv2/meson.build
+++ b/test/missing_port.lv2/meson.build
@@ -29,6 +29,7 @@ test(
files('test_missing_port.c'),
c_args: c_suppressions + test_args,
dependencies: [lv2_dep, lilv_dep],
+ implicit_include_directories: false,
),
args: [meson.current_build_dir() / ''],
suite: 'plugin',
diff --git a/test/missing_port_name.lv2/meson.build b/test/missing_port_name.lv2/meson.build
index 734177f..68fe629 100644
--- a/test/missing_port_name.lv2/meson.build
+++ b/test/missing_port_name.lv2/meson.build
@@ -29,6 +29,7 @@ test(
files('test_missing_port_name.c'),
c_args: c_suppressions + test_args,
dependencies: [lv2_dep, lilv_dep],
+ implicit_include_directories: false,
),
args: [meson.current_build_dir() / ''],
suite: 'plugin',
diff --git a/test/test_state.c b/test/test_state.c
index aeb3f02..27224ad 100644
--- a/test/test_state.c
+++ b/test/test_state.c
@@ -60,6 +60,7 @@ static TestContext*
test_context_new(void)
{
TestContext* ctx = (TestContext*)calloc(1, sizeof(TestContext));
+ assert(ctx);
lilv_test_uri_map_init(&ctx->uri_map);
diff --git a/test/test_ui.c b/test/test_ui.c
index 73b32fe..bb6efb4 100644
--- a/test/test_ui.c
+++ b/test/test_ui.c
@@ -143,6 +143,7 @@ main(void)
strlen(lilv_node_as_string(plug_bundle_uri)) + strlen("ui" SHLIB_EXT);
char* ui_binary_uri_str = (char*)calloc(1, ui_binary_uri_str_len + 1);
+ assert(ui_binary_uri_str);
snprintf(ui_binary_uri_str,
ui_binary_uri_str_len + 1,
"%s%s",
diff --git a/tools/meson.build b/tools/meson.build
index 2338cc1..199f7d7 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -18,6 +18,7 @@ foreach tool : basic_tools
files(tool + '.c'),
c_args: c_suppressions,
dependencies: lilv_dep,
+ implicit_include_directories: false,
install: true,
)
@@ -49,6 +50,7 @@ if sndfile_dep.found()
files('lv2apply.c'),
c_args: c_suppressions,
dependencies: [lilv_dep, sndfile_dep],
+ implicit_include_directories: false,
install: true,
)
@@ -79,6 +81,7 @@ int main(void) { struct timespec t; return clock_gettime(CLOCK_MONOTONIC, &t); }
files('lv2bench.c'),
c_args: c_suppressions,
dependencies: [lilv_dep, rt_dep, sndfile_dep],
+ implicit_include_directories: false,
install: true,
)