From 9828fccba76ee63ef2196b09f7d45230a5571b8f Mon Sep 17 00:00:00 2001 From: Daniel Wagner Date: Tue, 1 Apr 2025 10:48:33 +0200 Subject: [PATCH 1/2] gitignore: ignore .build-tools The .build-tools is created by the scripts/build.sh script. Let's add it to the git ignore list so the tree is marked as clean when the tools dir exists. Signed-off-by: Daniel Wagner --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index bfd45bdd8..d1345fa7f 100644 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,7 @@ cscope.* compile_commands.json .build +.build-tools .cache .vscode/ From 3c9c20525d58e4eb9bd015e1b6666600d27deb11 Mon Sep 17 00:00:00 2001 From: Daniel Wagner Date: Tue, 1 Apr 2025 11:13:09 +0200 Subject: [PATCH 2/2] src: update include directive Tell the preprocessor to use the global search sequence. These is a public interface thus "" include lookup order is wrong. Signed-off-by: Daniel Wagner --- src/libnvme-mi.h | 6 +++--- src/libnvme.h | 18 +++++++++--------- src/nvme/api-types.h | 3 ++- src/nvme/fabrics.h | 3 ++- src/nvme/filters.h | 3 ++- src/nvme/ioctl.h | 5 +++-- src/nvme/linux.h | 4 ++-- src/nvme/log.h | 2 +- src/nvme/mi.h | 4 ++-- src/nvme/nbft.h | 3 ++- src/nvme/private.h | 5 ++--- src/nvme/tree.h | 4 ++-- src/nvme/util.h | 2 +- test/cpp.cc | 1 + test/ioctl/ana.c | 5 +++-- test/ioctl/discovery.c | 7 ++++--- test/ioctl/features.c | 4 ++-- test/ioctl/identify.c | 4 ++-- test/ioctl/meson.build | 1 + test/ioctl/mock.c | 6 +++--- test/ioctl/util.c | 4 ++-- 21 files changed, 51 insertions(+), 43 deletions(-) diff --git a/src/libnvme-mi.h b/src/libnvme-mi.h index f0b1a9169..225270efc 100644 --- a/src/libnvme-mi.h +++ b/src/libnvme-mi.h @@ -13,9 +13,9 @@ extern "C" { #endif -#include "nvme/types.h" -#include "nvme/mi.h" -#include "nvme/log.h" +#include +#include +#include #ifdef __cplusplus } diff --git a/src/libnvme.h b/src/libnvme.h index 2c7fe3a33..47ae117e2 100644 --- a/src/libnvme.h +++ b/src/libnvme.h @@ -14,15 +14,15 @@ extern "C" { #endif -#include "nvme/types.h" -#include "nvme/linux.h" -#include "nvme/ioctl.h" -#include "nvme/nbft.h" -#include "nvme/fabrics.h" -#include "nvme/filters.h" -#include "nvme/tree.h" -#include "nvme/util.h" -#include "nvme/log.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include #ifdef __cplusplus } diff --git a/src/nvme/api-types.h b/src/nvme/api-types.h index 912634329..23c512aeb 100644 --- a/src/nvme/api-types.h +++ b/src/nvme/api-types.h @@ -14,7 +14,8 @@ #define _LIBNVME_API_TYPES_H #include -#include "types.h" + +#include /* * _args struct definitions. These are used by both the ioctl-based and diff --git a/src/nvme/fabrics.h b/src/nvme/fabrics.h index 4da438848..4c84bd32f 100644 --- a/src/nvme/fabrics.h +++ b/src/nvme/fabrics.h @@ -11,7 +11,8 @@ #include #include -#include "tree.h" + +#include /** * DOC: fabrics.h diff --git a/src/nvme/filters.h b/src/nvme/filters.h index 49bbeead3..4ceeffd56 100644 --- a/src/nvme/filters.h +++ b/src/nvme/filters.h @@ -10,7 +10,8 @@ #define _LIBNVME_FILTERS_H #include -#include "tree.h" + +#include /** * DOC: filters.h diff --git a/src/nvme/ioctl.h b/src/nvme/ioctl.h index b1449f9e4..f0e9636eb 100644 --- a/src/nvme/ioctl.h +++ b/src/nvme/ioctl.h @@ -12,8 +12,9 @@ #include #include -#include "types.h" -#include "api-types.h" + +#include +#include /* * We can not always count on the kernel UAPI being installed. Use the same diff --git a/src/nvme/linux.h b/src/nvme/linux.h index c38c47a1d..e865a8c8a 100644 --- a/src/nvme/linux.h +++ b/src/nvme/linux.h @@ -11,8 +11,8 @@ #include -#include "ioctl.h" -#include "types.h" +#include +#include /** * DOC: linux.h diff --git a/src/nvme/log.h b/src/nvme/log.h index 80c642aa4..5a2f81c1b 100644 --- a/src/nvme/log.h +++ b/src/nvme/log.h @@ -9,7 +9,7 @@ #include /* for nvme_root_t */ -#include "tree.h" +#include #ifndef MAX_LOGLEVEL # define MAX_LOGLEVEL LOG_DEBUG diff --git a/src/nvme/mi.h b/src/nvme/mi.h index 825de2748..bb816512b 100644 --- a/src/nvme/mi.h +++ b/src/nvme/mi.h @@ -87,8 +87,8 @@ #include #include -#include "types.h" -#include "tree.h" +#include +#include /** * NVME_MI_MSGTYPE_NVME - MCTP message type for NVMe-MI messages. diff --git a/src/nvme/nbft.h b/src/nvme/nbft.h index a9eaf6f41..424d6504e 100644 --- a/src/nvme/nbft.h +++ b/src/nvme/nbft.h @@ -10,7 +10,8 @@ #define _NBFT_H #include -#include "util.h" + +#include /** * DOC: nbft.h diff --git a/src/nvme/private.h b/src/nvme/private.h index 48ddedc2a..33cdd555d 100644 --- a/src/nvme/private.h +++ b/src/nvme/private.h @@ -13,9 +13,8 @@ #include #include -#include "fabrics.h" -#include "mi.h" - +#include +#include const char *nvme_subsys_sysfs_dir(void); const char *nvme_ctrl_sysfs_dir(void); diff --git a/src/nvme/tree.h b/src/nvme/tree.h index ede1b2cf1..25d4b31b8 100644 --- a/src/nvme/tree.h +++ b/src/nvme/tree.h @@ -17,8 +17,8 @@ #include #include -#include "ioctl.h" -#include "util.h" +#include +#include /** * DOC: tree.h diff --git a/src/nvme/util.h b/src/nvme/util.h index 409dd3f54..ffbea7ff1 100644 --- a/src/nvme/util.h +++ b/src/nvme/util.h @@ -11,7 +11,7 @@ #include -#include "types.h" +#include /** * DOC: util.h diff --git a/test/cpp.cc b/test/cpp.cc index 3d0a7d250..a6bbf42fd 100644 --- a/test/cpp.cc +++ b/test/cpp.cc @@ -7,6 +7,7 @@ */ #include + #include int main() diff --git a/test/ioctl/ana.c b/test/ioctl/ana.c index ba8549802..1e2cffb79 100644 --- a/test/ioctl/ana.c +++ b/test/ioctl/ana.c @@ -1,14 +1,15 @@ // SPDX-License-Identifier: LGPL-2.1-or-later -#include - #include #include #include #include + #include #include +#include + #include "mock.h" #include "util.h" diff --git a/test/ioctl/discovery.c b/test/ioctl/discovery.c index f5f6f5160..457acb0a8 100644 --- a/test/ioctl/discovery.c +++ b/test/ioctl/discovery.c @@ -1,14 +1,15 @@ // SPDX-License-Identifier: LGPL-2.1-or-later -#include - #include #include #include + #include #include -#include "../../src/nvme/private.h" +#include +#include + #include "mock.h" #include "util.h" diff --git a/test/ioctl/features.c b/test/ioctl/features.c index 738649799..ab863a456 100644 --- a/test/ioctl/features.c +++ b/test/ioctl/features.c @@ -1,10 +1,10 @@ // SPDX-License-Identifier: LGPL-2.1-or-later -#include - #include #include +#include + #include "mock.h" #include "util.h" diff --git a/test/ioctl/identify.c b/test/ioctl/identify.c index ccde02b6c..9f2f21db2 100644 --- a/test/ioctl/identify.c +++ b/test/ioctl/identify.c @@ -1,10 +1,10 @@ // SPDX-License-Identifier: LGPL-2.1-or-later -#include - #include #include +#include + #include "mock.h" #include "util.h" diff --git a/test/ioctl/meson.build b/test/ioctl/meson.build index e70f0dc8a..9ace403de 100644 --- a/test/ioctl/meson.build +++ b/test/ioctl/meson.build @@ -14,6 +14,7 @@ mock_conf.set( mock_ioctl = library( 'mock-ioctl', ['mock.c', 'util.c'], + include_directories: [incdir, internal_incdir], dependencies: [dl_dep], c_args: ['-DHAVE_GLIBC_IOCTL=' + (mock_conf.get('HAVE_GLIBC_IOCTL') ? '1' : '0')]) diff --git a/test/ioctl/mock.c b/test/ioctl/mock.c index 90a244d23..7402b45c1 100644 --- a/test/ioctl/mock.c +++ b/test/ioctl/mock.c @@ -1,7 +1,5 @@ // SPDX-License-Identifier: LGPL-2.1-or-later -#include "mock.h" - #include #include #include @@ -9,7 +7,9 @@ #include #include -#include "../../src/nvme/ioctl.h" +#include + +#include "mock.h" #include "util.h" struct mock_cmds { diff --git a/test/ioctl/util.c b/test/ioctl/util.c index 09c6e7f9a..fbe4a5038 100644 --- a/test/ioctl/util.c +++ b/test/ioctl/util.c @@ -1,13 +1,13 @@ // SPDX-License-Identifier: LGPL-2.1-or-later -#include "util.h" - #include #include #include #include #include +#include "util.h" + static void hexdump(const uint8_t *buf, size_t len) { size_t i = 0;