engines/xnvme: only include entry-header ('libxnvme.h')
authorSimon A. F. Lund <simon.lund@samsung.com>
Mon, 20 Nov 2023 08:20:42 +0000 (09:20 +0100)
committerSimon A. F. Lund <simon.lund@samsung.com>
Mon, 20 Nov 2023 08:38:53 +0000 (09:38 +0100)
commit63f210e8c80bf9576264aca81780846e3b31b1a8
treeb0f0aeed3434faaded52af86d0797a2db312ae69
parentafdde534004397ba1fb00ccc6f5906fa50dd667f
engines/xnvme: only include entry-header ('libxnvme.h')

This changes how the xNVMe fio io-engine consumes the xNVMe library by
only including the library-entry header "libxnvme.h".

From version 0.7.0 the xNVMe API headers are refactored to drop header
guards on the individual headers and abide by the idiom of "headers must
not include other headers".

The exception is the library-entry header "libxnvme.h". The
library-entry-header includes all headers provided with xNVMe, which is
a convenient approach to consuming the library. One where, in case the
API namespace grows or shrinks, then the xNVMe fio io-engine need not
change how it includes xNVMe.

However, since fio has consumed the main-entry header and individual
headers, xNVMe has held back on removing the guards on _nvm, _zns, and
_spec to avoid breaking the xNVMe fio engine. They will eventually be
deprecated. Thus, this change to consume xNVMe in the manner intended
from version v0.7.0 and onwards.

Signed-off-by: Simon A. F. Lund <simon.lund@samsung.com>
engines/xnvme.c