]> www.infradead.org Git - users/sagi/nvme-cli.git/commitdiff
build: Drop dependency on libuuid
authorDaniel Wagner <dwagner@suse.de>
Thu, 13 Oct 2022 15:52:10 +0000 (17:52 +0200)
committerDaniel Wagner <dwagner@suse.de>
Thu, 27 Oct 2022 15:09:16 +0000 (17:09 +0200)
libnvme provide the uuid functions we actually need, so just use those
and drop the libuuid dependency.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
meson.build
nvme-print.c
plugins/netapp/netapp-nvme.c
tests/meson.build
util/types.c
util/types.h

index aca98f896adbf5ff10d90ac4e1bd9c933c08922d..eb7c6af64849c52c191ad399a0b5b56eac6b3bdc 100644 (file)
@@ -49,11 +49,6 @@ libnvme_dep = dependency('libnvme', version: '>=1.1', required: true,
 libnvme_mi_dep = dependency('libnvme-mi', required: true,
                          fallback : ['libnvme', 'libnvme_mi_dep'])
 
-# Check for libuuid availability
-libuuid_dep = dependency('uuid', required: true,
-                         fallback : ['uuid', 'uuid_dep'])
-conf.set('CONFIG_LIBUUID', libuuid_dep.found(), description: 'Is libuuid available?')
-
 # Check for libjson-c availability
 json_c_dep = dependency('json-c', required: true, version: '>=0.13',
                         fallback : ['json-c', 'json_c_dep'])
@@ -261,7 +256,7 @@ subdir('Documentation')
 executable(
   'nvme',
   sources,
-  dependencies: [ libnvme_dep, libnvme_mi_dep, libuuid_dep, json_c_dep, libz_dep,
+  dependencies: [ libnvme_dep, libnvme_mi_dep, json_c_dep, libz_dep,
                   libhugetlbfs_dep ],
   link_args: '-ldl',
   include_directories: incdir,
index a50d6363b0edd408e9c5e2c209e681feb91ffa28..b16bccf7df7888ce355415fa4a993d6f0002b569 100644 (file)
@@ -6,7 +6,6 @@
 #include <stdlib.h>
 #include <time.h>
 #include <sys/stat.h>
-#include <uuid/uuid.h>
 
 #include "nvme.h"
 #include "libnvme.h"
@@ -4326,7 +4325,7 @@ static void json_nvme_id_ns_descs(void *data)
        union {
                __u8 eui64[NVME_NIDT_EUI64_LEN];
                __u8 nguid[NVME_NIDT_NGUID_LEN];
-               uuid_t uuid;
+               __u8 uuid[NVME_UUID_LEN];
                __u8 csi;
        } desc;
 
@@ -4367,7 +4366,7 @@ static void json_nvme_id_ns_descs(void *data)
 
                case NVME_NIDT_UUID:
                        memcpy(desc.uuid, data + off, sizeof(desc.uuid));
-                       uuid_unparse_lower(desc.uuid, json_str);
+                       nvme_uuid_to_string(desc.uuid, json_str);
                        len = sizeof(desc.uuid);
                        nidt_name = "uuid";
                        break;
@@ -4417,8 +4416,8 @@ void nvme_show_id_ns_descs(void *data, unsigned nsid, enum nvme_print_flags flag
 {
        int pos, len = 0;
        int i;
-       uuid_t uuid;
-       char uuid_str[37];
+       __u8 uuid[NVME_UUID_LEN];
+       char uuid_str[NVME_UUID_LEN_STRING];
        __u8 eui64[8];
        __u8 nguid[16];
        __u8 csi;
@@ -4454,7 +4453,7 @@ void nvme_show_id_ns_descs(void *data, unsigned nsid, enum nvme_print_flags flag
                        break;
                case NVME_NIDT_UUID:
                        memcpy(uuid, data + pos + sizeof(*cur), 16);
-                       uuid_unparse_lower(uuid, uuid_str);
+                       nvme_uuid_to_string(uuid, uuid_str);
                        printf("uuid    : %s\n", uuid_str);
                        len = sizeof(uuid);
                        break;
@@ -5607,7 +5606,7 @@ static void json_nvme_id_uuid_list(const struct nvme_id_uuid_list *uuid_list)
        entries = json_create_array();
        /* The 0th entry is reserved */
        for (i = 1; i < NVME_ID_UUID_LIST_MAX; i++) {
-               uuid_t uuid;
+               __u8 uuid[NVME_UUID_LEN];
                struct json_object *entry = json_create_object();
 
                /* The list is terminated by a zero UUID value */
@@ -5639,13 +5638,13 @@ void nvme_show_id_uuid_list(const struct nvme_id_uuid_list *uuid_list,
        /* The 0th entry is reserved */
        printf("NVME Identify UUID:\n");
        for (i = 0; i < NVME_ID_UUID_LIST_MAX; i++) {
-               uuid_t uuid;
+               __u8 uuid[NVME_UUID_LEN];
                char *association = "";
                uint8_t identifier_association = uuid_list->entry[i].header & 0x3;
                /* The list is terminated by a zero UUID value */
-               if (memcmp(uuid_list->entry[i].uuid, zero_uuid, sizeof(zero_uuid)) == 0)
+               if (memcmp(uuid_list->entry[i].uuid, zero_uuid, NVME_UUID_LEN) == 0)
                        break;
-               memcpy(&uuid, uuid_list->entry[i].uuid, sizeof(uuid));
+               memcpy(&uuid, uuid_list->entry[i].uuid, NVME_UUID_LEN);
                if (human) {
                        switch (identifier_association) {
                        case 0x0:
index b6bd3f689cb281d0496cacac66170ff7fb94301a..f5cb073308b8b2776a84c36b021599604f580051 100644 (file)
@@ -22,7 +22,6 @@
 #include <unistd.h>
 #include <errno.h>
 #include <string.h>
-#include <uuid/uuid.h>
 
 #include "common.h"
 #include "nvme.h"
@@ -68,7 +67,7 @@ struct ontapdevice_info {
        unsigned                nsid;
        struct nvme_id_ctrl     ctrl;
        struct nvme_id_ns       ns;
-       uuid_t                  uuid;
+       unsigned char           uuid[NVME_UUID_LEN];
        unsigned char           log_data[ONTAP_C2_LOG_SIZE];
        char                    dev[265];
 };
@@ -334,7 +333,7 @@ static void netapp_ontapdevices_print(struct ontapdevice_info *devices,
        for (i = 0; i < count; i++) {
 
                netapp_get_ns_size(size, &lba, &devices[i].ns);
-               uuid_unparse_lower(devices[i].uuid, uuid_str);
+               nvme_uuid_to_string(devices[i].uuid, uuid_str);
                netapp_get_ontap_labels(vsname, nspath, devices[i].log_data);
 
                if (format == NJSON) {
index c148c7364c86c698e480b6b0ee250379ac34ec1e..6f171373d4286f12304754f842e11822a13a48ec 100644 (file)
@@ -59,7 +59,7 @@ test_uint128 = executable(
     'test-uint128',
     ['test-uint128.c', '../util/types.c'],
     include_directories: [incdir, '..'],
-    dependencies: [libuuid_dep],
+    dependencies: [libnvme_dep],
 )
 
 test('uint128', test_uint128)
index f063ad5b9d0ff167ff1e5c811b0f940fe2e7cf36..06bb8d4e52a69596b34a4307501b3269954aa414 100644 (file)
@@ -78,12 +78,11 @@ char *uint128_t_to_string(nvme_uint128_t val)
        return str + idx;
 }
 
-const char *util_uuid_to_string(uuid_t uuid)
+const char *util_uuid_to_string(unsigned char uuid[NVME_UUID_LEN])
 {
-       /* large enough to hold uuid str (37) + null-termination byte */
-       static char uuid_str[40];
+       static char uuid_str[NVME_UUID_LEN_STRING];
 
-       uuid_unparse_lower(uuid, uuid_str);
+       nvme_uuid_to_string(uuid, uuid_str);
 
        return uuid_str;
 }
index d48dda18b7421b6c797585fc30511086ae05b55a..45fbbb6a59d195ed9436a662e55fa0f8cc173223 100644 (file)
@@ -8,6 +8,8 @@
 #include <uuid/uuid.h>
 #include <linux/types.h>
 
+#include <libnvme.h>
+
 #define ABSOLUTE_ZERO_CELSIUS -273
 
 static inline long kelvin_to_celsius(long t)
@@ -28,7 +30,7 @@ long double int128_to_double(__u8 *data);
 uint64_t int48_to_long(__u8 *data);
 
 char *uint128_t_to_string(nvme_uint128_t val);
-const char *util_uuid_to_string(uuid_t uuid);
+const char *util_uuid_to_string(unsigned char uuid[NVME_UUID_LEN]);
 const char *util_fw_to_string(char *c);
 
 #endif /* _MISC_H */