xref: /linux/scripts/coccinelle/misc/add_namespace.cocci (revision e205ceeb253723f4e4bdce619844ed678ae48276)
1// SPDX-License-Identifier: GPL-2.0-only
2//
3/// Adds missing MODULE_IMPORT_NS statements to source files
4///
5/// This script is usually called from scripts/nsdeps with -D ns=<namespace> to
6/// add a missing namespace tag to a module source file.
7///
8
9virtual report
10
11@has_ns_import@
12declarer name MODULE_IMPORT_NS;
13identifier virtual.ns;
14@@
15MODULE_IMPORT_NS(ns);
16
17// Add missing imports, but only adjacent to a MODULE_LICENSE statement.
18// That ensures we are adding it only to the main module source file.
19@do_import depends on !has_ns_import@
20declarer name MODULE_LICENSE;
21expression license;
22identifier virtual.ns;
23@@
24MODULE_LICENSE(license);
25+ MODULE_IMPORT_NS(ns);
26