fio: use LDFLAGS when linking dynamic engines
[fio.git] / optgroup.c
index 122d24e98bbb80710df3ab3a7a32e7596be71984..bebb4a5133a8615fa341c83d0dddcc80c38ba1b4 100644 (file)
@@ -1,6 +1,7 @@
 #include <stdio.h>
 #include <inttypes.h>
 #include "optgroup.h"
+#include "compiler/compiler.h"
 
 /*
  * Option grouping
@@ -140,6 +141,10 @@ static const struct opt_group fio_opt_cat_groups[] = {
                .name   = "RDMA I/O engine", /* rdma */
                .mask   = FIO_OPT_G_RDMA,
        },
+       {
+               .name   = "librpma I/O engines", /* librpma_apm && librpma_gpspm */
+               .mask   = FIO_OPT_G_LIBRPMA,
+       },
        {
                .name   = "libaio I/O engine", /* libaio */
                .mask   = FIO_OPT_G_LIBAIO,
@@ -168,6 +173,22 @@ static const struct opt_group fio_opt_cat_groups[] = {
                .name   = "libhdfs I/O engine", /* libhdfs */
                .mask   = FIO_OPT_G_HDFS,
        },
+       {
+               .name   = "NBD I/O engine", /* NBD */
+               .mask   = FIO_OPT_G_NBD,
+       },
+       {
+               .name   = "libcufile I/O engine", /* libcufile */
+               .mask   = FIO_OPT_G_LIBCUFILE,
+       },
+       {
+               .name   = "DAOS File System (dfs) I/O engine", /* dfs */
+               .mask   = FIO_OPT_G_DFS,
+       },
+       {
+               .name   = "NFS I/O engine", /* nfs */
+               .mask   = FIO_OPT_G_NFS,
+       },
        {
                .name   = NULL,
        },
@@ -201,5 +222,8 @@ const struct opt_group *opt_group_from_mask(uint64_t *mask)
 
 const struct opt_group *opt_group_cat_from_mask(uint64_t *mask)
 {
+       compiletime_assert(__FIO_OPT_G_NR <= 8 * sizeof(uint64_t),
+                               "__FIO_OPT_G_NR");
+
        return group_from_mask(fio_opt_cat_groups, mask, FIO_OPT_G_INVALID);
 }