diff --git a/.clang-tidy b/.clang-tidy new file mode 100644 index 0000000000..c335774445 --- /dev/null +++ b/.clang-tidy @@ -0,0 +1,16 @@ +Checks: > + # The clang-* checks are enabled by default. To enable extra checks, add + # patterns for them above this comment, for example: + # bugprone-*, + # cert-*, + # cppcoreguidelines-*, + # google-*, + # hicpp-*, + # misc-*, + # modernize-*, + # objc-*, + # + # Or go nuclear with "*" +WarningsAsErrors: '*' +HeaderFilterRegex: '.*' +FormatStyle: file diff --git a/gtk2_ardour/.clang-tidy b/gtk2_ardour/.clang-tidy new file mode 100644 index 0000000000..ea8e8a382e --- /dev/null +++ b/gtk2_ardour/.clang-tidy @@ -0,0 +1,24 @@ +Checks: > + -clang-analyzer-core.CallAndMessage, + -clang-analyzer-cplusplus.NewDeleteLeaks, + -clang-analyzer-cplusplus.StringChecker, + -clang-analyzer-deadcode.DeadStores, + -clang-analyzer-optin.cplusplus.UninitializedObject, + -clang-analyzer-optin.cplusplus.VirtualCall, + -clang-analyzer-optin.portability.UnixAPI, + -clang-analyzer-security.FloatLoopCounter, + -clang-analyzer-security.insecureAPI.strcpy, + -clang-analyzer-unix.Malloc, + -clang-diagnostic-#warnings, + -clang-diagnostic-constant-conversion, + -clang-diagnostic-fortify-source, + -clang-diagnostic-implicit-const-int-float-conversion, + -clang-diagnostic-non-virtual-dtor, + -clang-diagnostic-null-dereference, + -clang-diagnostic-self-assign-overloaded, + -clang-diagnostic-switch, + -clang-diagnostic-undefined-bool-conversion, + -clang-diagnostic-unused-but-set-variable, + -clang-diagnostic-unused-const-variable, + -clang-diagnostic-unused-label, +InheritParentConfig: true diff --git a/libs/ardour/.clang-tidy b/libs/ardour/.clang-tidy new file mode 100644 index 0000000000..e5e633b6bb --- /dev/null +++ b/libs/ardour/.clang-tidy @@ -0,0 +1,17 @@ +Checks: > + -clang-analyzer-core.DivideZero, + -clang-analyzer-core.NullDereference, + -clang-analyzer-cplusplus.NewDeleteLeaks, + -clang-analyzer-cplusplus.StringChecker, + -clang-analyzer-deadcode.DeadStores, + -clang-analyzer-optin.cplusplus.UninitializedObject, + -clang-analyzer-optin.cplusplus.VirtualCall, + -clang-analyzer-security.insecureAPI.strcpy, + -clang-diagnostic-#warnings, + -clang-diagnostic-bitwise-instead-of-logical, + -clang-diagnostic-sign-compare, + -clang-diagnostic-uninitialized, + -clang-diagnostic-unused-but-set-variable, + -clang-diagnostic-unused-private-field, + -clang-diagnostic-unused-variable, +InheritParentConfig: true diff --git a/libs/audiographer/.clang-tidy b/libs/audiographer/.clang-tidy new file mode 100644 index 0000000000..c31dc11624 --- /dev/null +++ b/libs/audiographer/.clang-tidy @@ -0,0 +1,4 @@ +Checks: > + -clang-analyzer-core.DivideZero, + -clang-analyzer-deadcode.DeadStores, +InheritParentConfig: true diff --git a/libs/backends/.clang-tidy b/libs/backends/.clang-tidy new file mode 100644 index 0000000000..f50415fadf --- /dev/null +++ b/libs/backends/.clang-tidy @@ -0,0 +1,7 @@ +Checks: > + -clang-analyzer-core.UndefinedBinaryOperatorResult, + -clang-analyzer-deadcode.DeadStores, + -clang-analyzer-optin.cplusplus.VirtualCall, + -clang-analyzer-security.insecureAPI.vfork, + -clang-diagnostic-unused-const-variable, +InheritParentConfig: true diff --git a/libs/canvas/.clang-tidy b/libs/canvas/.clang-tidy new file mode 100644 index 0000000000..c1b4f46f12 --- /dev/null +++ b/libs/canvas/.clang-tidy @@ -0,0 +1,4 @@ +Checks: > + -clang-analyzer-core.uninitialized.Assign, + -clang-diagnostic-braced-scalar-init, +InheritParentConfig: true diff --git a/libs/clearlooks-newer/.clang-tidy b/libs/clearlooks-newer/.clang-tidy new file mode 100644 index 0000000000..1fd041287a --- /dev/null +++ b/libs/clearlooks-newer/.clang-tidy @@ -0,0 +1,6 @@ +Checks: > + -clang-analyzer-deadcode.DeadStores, + -clang-diagnostic-cast-qual, + -clang-diagnostic-enum-conversion, + -clang-diagnostic-literal-conversion, +InheritParentConfig: true diff --git a/libs/ctrl-interface/.clang-tidy b/libs/ctrl-interface/.clang-tidy new file mode 100644 index 0000000000..9a7215bd77 --- /dev/null +++ b/libs/ctrl-interface/.clang-tidy @@ -0,0 +1,4 @@ +Checks: > + -clang-diagnostic-varargs, + -clang-analyzer-cplusplus.NewDeleteLeaks, +InheritParentConfig: true diff --git a/libs/evoral/.clang-tidy b/libs/evoral/.clang-tidy new file mode 100644 index 0000000000..9f1e74abda --- /dev/null +++ b/libs/evoral/.clang-tidy @@ -0,0 +1,4 @@ +Checks: > + -clang-analyzer-deadcode.DeadStores, + -clang-analyzer-optin.cplusplus.VirtualCall, +InheritParentConfig: true diff --git a/libs/fluidsynth/.clang-tidy b/libs/fluidsynth/.clang-tidy new file mode 100644 index 0000000000..f84fb218ca --- /dev/null +++ b/libs/fluidsynth/.clang-tidy @@ -0,0 +1,7 @@ +Checks: > + -clang-analyzer-core.CallAndMessage, + -clang-analyzer-cplusplus.NewDeleteLeaks, + -clang-analyzer-security.insecureAPI.strcpy, + -clang-diagnostic-c11-extensions, + -clang-diagnostic-strict-prototypes, +InheritParentConfig: true diff --git a/libs/fst/.clang-tidy b/libs/fst/.clang-tidy new file mode 100644 index 0000000000..8afaf14c33 --- /dev/null +++ b/libs/fst/.clang-tidy @@ -0,0 +1,3 @@ +Checks: > + -clang-analyzer-optin.cplusplus.VirtualCall, +InheritParentConfig: true diff --git a/libs/gtkmm2ext/.clang-tidy b/libs/gtkmm2ext/.clang-tidy new file mode 100644 index 0000000000..1522393bd0 --- /dev/null +++ b/libs/gtkmm2ext/.clang-tidy @@ -0,0 +1,6 @@ +Checks: > + -clang-analyzer-cplusplus.NewDeleteLeaks, + -clang-analyzer-deadcode.DeadStores, + -clang-analyzer-optin.cplusplus.VirtualCall, + -clang-diagnostic-null-dereference, +InheritParentConfig: true diff --git a/libs/hidapi/.clang-tidy b/libs/hidapi/.clang-tidy new file mode 100644 index 0000000000..75716aa74f --- /dev/null +++ b/libs/hidapi/.clang-tidy @@ -0,0 +1,4 @@ +Checks: > + -clang-analyzer-core.UndefinedBinaryOperatorResult, + -clang-analyzer-unix.Malloc, +InheritParentConfig: true diff --git a/libs/libltc/.clang-tidy b/libs/libltc/.clang-tidy new file mode 100644 index 0000000000..02e2a32b1b --- /dev/null +++ b/libs/libltc/.clang-tidy @@ -0,0 +1,3 @@ +Checks: > + -clang-analyzer-security.insecureAPI.strcpy, +InheritParentConfig: true diff --git a/libs/midi++2/.clang-tidy b/libs/midi++2/.clang-tidy new file mode 100644 index 0000000000..8afaf14c33 --- /dev/null +++ b/libs/midi++2/.clang-tidy @@ -0,0 +1,3 @@ +Checks: > + -clang-analyzer-optin.cplusplus.VirtualCall, +InheritParentConfig: true diff --git a/libs/panners/.clang-tidy b/libs/panners/.clang-tidy new file mode 100644 index 0000000000..c26c1f0d6d --- /dev/null +++ b/libs/panners/.clang-tidy @@ -0,0 +1,4 @@ +Checks: > + -clang-analyzer-optin.cplusplus.VirtualCall, + -clang-analyzer-optin.cplusplus.CallAndMessage, +InheritParentConfig: true diff --git a/libs/pbd/.clang-tidy b/libs/pbd/.clang-tidy new file mode 100644 index 0000000000..6e562fc0db --- /dev/null +++ b/libs/pbd/.clang-tidy @@ -0,0 +1,7 @@ +Checks: > + -clang-analyzer-core.NonNullParamChecker, + -clang-analyzer-cplusplus.NewDeleteLeaks, + -clang-analyzer-cplusplus.StringChecker, + -clang-analyzer-security.insecureAPI.vfork, + -clang-analyzer-unix.Vfork, +InheritParentConfig: true diff --git a/libs/plugins/.clang-tidy b/libs/plugins/.clang-tidy new file mode 100644 index 0000000000..090c41b5e0 --- /dev/null +++ b/libs/plugins/.clang-tidy @@ -0,0 +1,5 @@ +Checks: > + -clang-analyzer-core.NullDereference, + -clang-analyzer-deadcode.DeadStores, + -clang-analyzer-security.insecureAPI.strcpy, +InheritParentConfig: true diff --git a/libs/ptformat/.clang-tidy b/libs/ptformat/.clang-tidy new file mode 100644 index 0000000000..75eb5fa76a --- /dev/null +++ b/libs/ptformat/.clang-tidy @@ -0,0 +1,4 @@ +Checks: > + -clang-analyzer-deadcode.DeadStores, + -clang-diagnostic-unused-but-set-variable, +InheritParentConfig: true diff --git a/libs/qm-dsp/.clang-tidy b/libs/qm-dsp/.clang-tidy new file mode 100644 index 0000000000..16e153ea07 --- /dev/null +++ b/libs/qm-dsp/.clang-tidy @@ -0,0 +1,8 @@ +Checks: > + -clang-analyzer-core.CallAndMessage, + -clang-analyzer-core.UndefinedBinaryOperatorResult, + -clang-analyzer-cplusplus.NewDeleteLeaks, + -clang-analyzer-deadcode.DeadStores, + -clang-diagnostic-cast-align, + -clang-diagnostic-cast-qual, +InheritParentConfig: true diff --git a/libs/surfaces/.clang-tidy b/libs/surfaces/.clang-tidy new file mode 100644 index 0000000000..ca1c24c092 --- /dev/null +++ b/libs/surfaces/.clang-tidy @@ -0,0 +1,12 @@ +Checks: > + -clang-analyzer-core.CallAndMessage, + -clang-analyzer-core.uninitialized.UndefReturn, + -clang-analyzer-cplusplus.NewDeleteLeaks, + -clang-analyzer-deadcode.DeadStores, + -clang-analyzer-optin.cplusplus.CallAndMessage, + -clang-analyzer-optin.cplusplus.VirtualCall, + -clang-diagnostic-sometimes-uninitialized, + -clang-diagnostic-unused-but-set-variable, + -clang-diagnostic-unused-variable, + -clang-diagnostic-varargs, +InheritParentConfig: true diff --git a/libs/temporal/.clang-tidy b/libs/temporal/.clang-tidy new file mode 100644 index 0000000000..22a196939e --- /dev/null +++ b/libs/temporal/.clang-tidy @@ -0,0 +1,7 @@ +Checks: > + -clang-analyzer-optin.cplusplus.VirtualCall, + -clang-diagnostic-logical-not-parentheses, + -clang-analyzer-core.CallAndMessage, + -clang-diagnostic-unused-but-set-variable, + -clang-analyzer-deadcode.DeadStores, +InheritParentConfig: true diff --git a/libs/vamp-plugins/.clang-tidy b/libs/vamp-plugins/.clang-tidy new file mode 100644 index 0000000000..3c19e5bd75 --- /dev/null +++ b/libs/vamp-plugins/.clang-tidy @@ -0,0 +1,7 @@ +Checks: > + -clang-analyzer-core.UndefinedBinaryOperatorResult, + -clang-analyzer-core.uninitialized.Assign, + -clang-analyzer-cplusplus.NewDelete, + -clang-analyzer-cplusplus.NewDeleteLeaks, + -clang-analyzer-deadcode.DeadStores, +InheritParentConfig: true diff --git a/libs/vamp-pyin/.clang-tidy b/libs/vamp-pyin/.clang-tidy new file mode 100644 index 0000000000..75eb5fa76a --- /dev/null +++ b/libs/vamp-pyin/.clang-tidy @@ -0,0 +1,4 @@ +Checks: > + -clang-analyzer-deadcode.DeadStores, + -clang-diagnostic-unused-but-set-variable, +InheritParentConfig: true diff --git a/libs/widgets/.clang-tidy b/libs/widgets/.clang-tidy new file mode 100644 index 0000000000..e4018a79a3 --- /dev/null +++ b/libs/widgets/.clang-tidy @@ -0,0 +1,4 @@ +Checks: > + -clang-analyzer-deadcode.DeadStores, + -clang-diagnostic-null-dereference, +InheritParentConfig: true diff --git a/luasession/.clang-tidy b/luasession/.clang-tidy new file mode 100644 index 0000000000..02e2a32b1b --- /dev/null +++ b/luasession/.clang-tidy @@ -0,0 +1,3 @@ +Checks: > + -clang-analyzer-security.insecureAPI.strcpy, +InheritParentConfig: true diff --git a/wscript b/wscript index f4df8abc8f..1bf2953b1a 100644 --- a/wscript +++ b/wscript @@ -958,6 +958,7 @@ def configure(conf): set_version () conf.load('compiler_c') conf.load('compiler_cxx') + conf.load('clang_compilation_database') if Options.options.dist_target == 'mingw': conf.load('winres') elif Options.options.clang_compile_db: