-diff -urp LVM2.2.02.179.orig/lib/commands/toolcontext.c LVM2.2.02.179/lib/commands/toolcontext.c
---- LVM2.2.02.179.orig/lib/commands/toolcontext.c 2018-06-18 05:24:22.000000000 +0000
-+++ LVM2.2.02.179/lib/commands/toolcontext.c 2018-06-26 11:40:23.355840745 +0000
-@@ -1827,10 +1827,10 @@ struct cmd_context *create_toolcontext(u
- #ifdef M_MMAP_MAX
- mallopt(M_MMAP_MAX, 0);
- #endif
--
-+#ifdef __dietlibc__
- if (!setlocale(LC_ALL, ""))
- log_very_verbose("setlocale failed");
--
-+#endif
- #ifdef INTL_PACKAGE
- bindtextdomain(INTL_PACKAGE, LOCALEDIR);
- #endif
-diff -urp LVM2.2.02.179.orig/lib/config/config.c LVM2.2.02.179/lib/config/config.c
---- LVM2.2.02.179.orig/lib/config/config.c 2018-06-18 05:24:22.000000000 +0000
-+++ LVM2.2.02.179/lib/config/config.c 2018-06-26 11:40:23.356840745 +0000
-@@ -44,6 +44,10 @@ static const char *_config_source_names[
- [CONFIG_FILE_SPECIAL] = "special purpose"
- };
-
-+#ifdef __dietlibc__
-+typedef char* caddr_t __attribute_dontuse__;
-+#endif
-+
- struct config_file {
- off_t st_size;
- char *filename;
-diff -urp LVM2.2.02.179.orig/lib/metadata/pv.c LVM2.2.02.179/lib/metadata/pv.c
---- LVM2.2.02.179.orig/lib/metadata/pv.c 2018-06-18 05:24:22.000000000 +0000
-+++ LVM2.2.02.179/lib/metadata/pv.c 2018-06-26 11:40:23.356840745 +0000
-@@ -17,6 +17,12 @@
- #include "metadata.h"
- #include "lvmcache.h"
-
-+#ifdef __dietlibc__
-+# ifndef UINT64_MAX
-+# define UINT64_MAX __UINT64_MAX__
-+# endif
-+#endif
-+
- /*
- * FIXME: Check for valid handle before dereferencing field or log error?
- */
-diff -urp LVM2.2.02.179.orig/lib/misc/lib.h LVM2.2.02.179/lib/misc/lib.h
---- LVM2.2.02.179.orig/lib/misc/lib.h 2018-06-18 05:24:22.000000000 +0000
-+++ LVM2.2.02.179/lib/misc/lib.h 2018-06-26 11:40:23.356840745 +0000
-@@ -93,4 +93,20 @@
-
- #include <unistd.h>
-
-+#ifdef __dietlibc__
-+# include <strings.h>
-+# include <limits.h>
-+# if __WORDSIZE == 64
-+# define INT64_C(c) c ## L
-+# else
-+# define INT64_C(c) c ## LL
-+# endif
-+# define UINT32_C(c) c ## U
-+# if __WORDSIZE == 64
-+# define UINT64_C(c) c ## UL
-+# else
-+# define UINT64_C(c) c ## ULL
-+# endif
-+#endif
-+
- #endif
-diff -urp LVM2.2.02.179.orig/lib/report/report.c LVM2.2.02.179/lib/report/report.c
---- LVM2.2.02.179.orig/lib/report/report.c 2018-06-18 05:24:22.000000000 +0000
-+++ LVM2.2.02.179/lib/report/report.c 2018-06-26 11:40:23.357840745 +0000
-@@ -29,6 +29,11 @@
- #include <float.h> /* DBL_MAX */
- #include <time.h>
-
-+#ifdef __dietlibc__
-+#define __UINT64_C(c) c ## ULL
-+# define UINT64_MAX (__UINT64_C(18446744073709551615))
-+#endif
-+
- struct lvm_report_object {
- struct volume_group *vg;
- struct lv_with_info_and_seg_status *lvdm;
-diff -urp LVM2.2.02.179.orig/libdm/libdevmapper.h LVM2.2.02.179/libdm/libdevmapper.h
---- LVM2.2.02.179.orig/libdm/libdevmapper.h 2018-06-18 05:24:22.000000000 +0000
-+++ LVM2.2.02.179/libdm/libdevmapper.h 2018-06-26 11:40:23.357840745 +0000
-@@ -251,6 +251,10 @@ int dm_task_set_add_node(struct dm_task
- /*
- * Control read_ahead.
- */
-+#ifdef __dietlibc__
-+# define UINT32_MAX (4294967295U)
-+#endif
-+
- #define DM_READ_AHEAD_AUTO UINT32_MAX /* Use kernel default readahead */
- #define DM_READ_AHEAD_NONE 0 /* Disable readahead */
-
-diff -urp LVM2.2.02.179.orig/tools/dmsetup.c LVM2.2.02.179/tools/dmsetup.c
---- LVM2.2.02.179.orig/tools/dmsetup.c 2018-06-18 05:24:22.000000000 +0000
-+++ LVM2.2.02.179/tools/dmsetup.c 2018-06-26 11:40:23.358840745 +0000
-@@ -37,6 +37,23 @@
- # include <libudev.h>
- #endif
-
-+#ifdef __dietlibc__
-+# include <limits.h>
-+# if __WORDSIZE == 64
-+# define INT64_C(c) c ## L
-+# else
-+# define INT64_C(c) c ## LL
-+# endif
-+# define UINT32_C(c) c ## U
-+# if __WORDSIZE == 64
-+# define UINT64_C(c) c ## UL
-+# else
-+# define UINT64_C(c) c ## ULL
-+# endif
-+#define canonicalize_file_name(x) realpath(x, NULL)
-+#endif
-+#include <strings.h>
-+
- /* FIXME Unused so far */
- #undef HAVE_SYS_STATVFS_H
-
-diff -urp LVM2.2.02.179.orig/tools/Makefile.in LVM2.2.02.179/tools/Makefile.in
---- LVM2.2.02.179.orig/tools/Makefile.in 2018-06-26 11:33:19.629866001 +0000
-+++ LVM2.2.02.179/tools/Makefile.in 2018-06-26 11:44:55.383824531 +0000
-@@ -127,13 +127,14 @@ CFLAGS_dmsetup.o += $(UDEV_CFLAGS) $(EXT
-
- dmsetup: dmsetup.o $(top_builddir)/libdm/libdevmapper.$(LIB_SUFFIX)
- @echo " [CC] $@"
-- $(Q) $(CC) $(CFLAGS) $(LDFLAGS) $(EXTRA_EXEC_LDFLAGS) $(ELDFLAGS) \
-+ $(Q) $(CC) $(CFLAGS) -L$(interfacebuilddir) -L$(top_builddir)/libdm \
-+ $(LDFLAGS) $(EXTRA_EXEC_LDFLAGS) $(ELDFLAGS) \
- -o $@ dmsetup.o -ldevmapper $(LIBS)
-
- dmsetup.static: dmsetup.o $(interfacebuilddir)/libdevmapper.a
- @echo " [CC] $@"
-- $(Q) $(CC) $(CFLAGS) $(LDFLAGS) -static -L$(interfacebuilddir) \
-- -o $@ dmsetup.o -ldevmapper $(M_LIBS) $(PTHREAD_LIBS) $(STATIC_LIBS) $(LIBS)
-+ $(Q) $(CC) $(CFLAGS) -static -L$(interfacebuilddir) $(LDFLAGS) \
-+ -o $@ dmsetup.o -ldevmapper $(M_LIBS) $(PTHREAD_LIBS) $(STATIC_LIBS) $(LIBS) $(DIETLIBC_LIBS)
-
- all: device-mapper
-
-@@ -143,7 +144,7 @@ INCLUDES += -I$(top_builddir)/tools
-
- lvm: $(OBJECTS) lvm.o $(top_builddir)/lib/liblvm-internal.a
- @echo " [CC] $@"
-- $(Q) $(CC) $(CFLAGS) $(LDFLAGS) $(EXTRA_EXEC_LDFLAGS) $(ELDFLAGS) -o $@ $(OBJECTS) lvm.o \
-+ $(Q) $(CC) $(CFLAGS) -L$(interfacebuilddir) $(LDFLAGS) $(EXTRA_EXEC_LDFLAGS) $(ELDFLAGS) -o $@ $(OBJECTS) lvm.o \
- $(LVMLIBS) $(READLINE_LIBS) $(LIBS)
-
- DEFS_man-generator.o += -DMAN_PAGE_GENERATOR
-@@ -163,7 +164,7 @@ endif
- lvm.static: $(OBJECTS) lvm-static.o $(top_builddir)/lib/liblvm-internal.a $(interfacebuilddir)/libdevmapper.a
- @echo " [CC] $@"
- $(Q) $(CC) $(CFLAGS) $(LDFLAGS) -static -L$(interfacebuilddir) -o $@ \
-- $(OBJECTS) lvm-static.o $(LVMLIBS) $(STATIC_LIBS) $(LIBS)
-+ $(OBJECTS) lvm-static.o $(LVMLIBS) $(STATIC_LIBS) $(LIBS) $(PTHREAD_LIBS) $(DIETLIBC_LIBS)
-
- liblvm2cmd.a: $(top_builddir)/lib/liblvm-internal.a $(OBJECTS) lvmcmdlib.o lvm2cmd.o
- @echo " [AR] $@"
-diff -urp LVM2.2.02.179.orig/tools/tools.h LVM2.2.02.179/tools/tools.h
---- LVM2.2.02.179.orig/tools/tools.h 2018-06-18 05:24:22.000000000 +0000
-+++ LVM2.2.02.179/tools/tools.h 2018-06-26 11:40:23.359840745 +0000
-@@ -47,6 +47,21 @@
- #include <ctype.h>
- #include <sys/types.h>
-
-+#ifdef __dietlibc__
-+# include <limits.h>
-+# if __WORDSIZE == 64
-+# define INT64_C(c) c ## L
-+# else
-+# define INT64_C(c) c ## LL
-+# endif
-+# define UINT32_C(c) c ## U
-+# if __WORDSIZE == 64
-+# define UINT64_C(c) c ## UL
-+# else
-+# define UINT64_C(c) c ## ULL
-+# endif
-+#endif
-+
- #define CMD_LEN 256
- #define MAX_ARGS 64
-