]> TLD Linux GIT Repositories - packages/lvm2.git/blob - lvm2-diet.patch
- fixed post/postun broken by PLD merge
[packages/lvm2.git] / lvm2-diet.patch
1 diff -urp LVM2.2.02.177.orig/lib/commands/toolcontext.c LVM2.2.02.177/lib/commands/toolcontext.c
2 --- LVM2.2.02.177.orig/lib/commands/toolcontext.c       2017-12-18 20:44:35.000000000 +0000
3 +++ LVM2.2.02.177/lib/commands/toolcontext.c    2018-01-26 15:13:17.915538732 +0000
4 @@ -1840,10 +1840,10 @@ struct cmd_context *create_toolcontext(u
5  #ifdef M_MMAP_MAX
6         mallopt(M_MMAP_MAX, 0);
7  #endif
8 -
9 +#ifdef __dietlibc__
10         if (!setlocale(LC_ALL, ""))
11                 log_very_verbose("setlocale failed");
12 -
13 +#endif
14  #ifdef INTL_PACKAGE
15         bindtextdomain(INTL_PACKAGE, LOCALEDIR);
16  #endif
17 diff -urp LVM2.2.02.177.orig/lib/config/config.c LVM2.2.02.177/lib/config/config.c
18 --- LVM2.2.02.177.orig/lib/config/config.c      2017-12-18 20:44:35.000000000 +0000
19 +++ LVM2.2.02.177/lib/config/config.c   2018-01-26 15:13:17.917538732 +0000
20 @@ -43,6 +43,10 @@ static const char *_config_source_names[
21         [CONFIG_FILE_SPECIAL] = "special purpose"
22  };
23  
24 +#ifdef __dietlibc__
25 +typedef char* caddr_t __attribute_dontuse__;
26 +#endif
27 +
28  struct config_file {
29         off_t st_size;
30         char *filename;
31 diff -urp LVM2.2.02.177.orig/lib/metadata/pv.c LVM2.2.02.177/lib/metadata/pv.c
32 --- LVM2.2.02.177.orig/lib/metadata/pv.c        2017-12-18 20:44:35.000000000 +0000
33 +++ LVM2.2.02.177/lib/metadata/pv.c     2018-01-26 15:13:17.919538732 +0000
34 @@ -17,6 +17,12 @@
35  #include "metadata.h"
36  #include "lvmcache.h"
37  
38 +#ifdef __dietlibc__
39 +# ifndef UINT64_MAX
40 +#  define UINT64_MAX             __UINT64_MAX__
41 +# endif
42 +#endif
43 +
44  /*
45   * FIXME: Check for valid handle before dereferencing field or log error?
46   */
47 diff -urp LVM2.2.02.177.orig/lib/misc/lib.h LVM2.2.02.177/lib/misc/lib.h
48 --- LVM2.2.02.177.orig/lib/misc/lib.h   2017-12-18 20:44:35.000000000 +0000
49 +++ LVM2.2.02.177/lib/misc/lib.h        2018-01-26 15:13:17.917538732 +0000
50 @@ -94,4 +94,20 @@
51  
52  #include <unistd.h>
53  
54 +#ifdef __dietlibc__
55 +# include <strings.h>
56 +# include <limits.h>
57 +# if __WORDSIZE == 64
58 +#  define INT64_C(c)    c ## L
59 +# else
60 +#  define INT64_C(c)    c ## LL
61 +# endif
62 +# define UINT32_C(c)    c ## U
63 +# if __WORDSIZE == 64
64 +#  define UINT64_C(c)   c ## UL
65 +# else
66 +#  define UINT64_C(c)   c ## ULL
67 +# endif
68 +#endif
69 +
70  #endif
71 diff -urp LVM2.2.02.177.orig/lib/report/report.c LVM2.2.02.177/lib/report/report.c
72 --- LVM2.2.02.177.orig/lib/report/report.c      2017-12-18 20:44:35.000000000 +0000
73 +++ LVM2.2.02.177/lib/report/report.c   2018-01-26 15:13:17.918538732 +0000
74 @@ -29,6 +29,11 @@
75  #include <float.h> /* DBL_MAX */
76  #include <time.h>
77  
78 +#ifdef __dietlibc__
79 +#define __UINT64_C(c) c ## ULL
80 +# define UINT64_MAX             (__UINT64_C(18446744073709551615))
81 +#endif
82 +
83  struct lvm_report_object {
84         struct volume_group *vg;
85         struct lv_with_info_and_seg_status *lvdm;
86 diff -urp LVM2.2.02.177.orig/libdm/libdevmapper.h LVM2.2.02.177/libdm/libdevmapper.h
87 --- LVM2.2.02.177.orig/libdm/libdevmapper.h     2017-12-18 20:44:35.000000000 +0000
88 +++ LVM2.2.02.177/libdm/libdevmapper.h  2018-01-26 15:13:17.916538732 +0000
89 @@ -251,6 +251,10 @@ int dm_task_set_add_node(struct dm_task
90  /*
91   * Control read_ahead.
92   */
93 +#ifdef __dietlibc__
94 +# define UINT32_MAX             (4294967295U)
95 +#endif
96 +
97  #define DM_READ_AHEAD_AUTO UINT32_MAX  /* Use kernel default readahead */
98  #define DM_READ_AHEAD_NONE 0           /* Disable readahead */
99  
100 diff -urp LVM2.2.02.177.orig/tools/dmsetup.c LVM2.2.02.177/tools/dmsetup.c
101 --- LVM2.2.02.177.orig/tools/dmsetup.c  2017-12-18 20:44:35.000000000 +0000
102 +++ LVM2.2.02.177/tools/dmsetup.c       2018-01-26 15:13:17.919538732 +0000
103 @@ -37,6 +37,23 @@
104  #  include <libudev.h>
105  #endif
106  
107 +#ifdef __dietlibc__
108 +# include <limits.h>
109 +# if __WORDSIZE == 64
110 +#  define INT64_C(c)    c ## L
111 +# else
112 +#  define INT64_C(c)    c ## LL
113 +# endif
114 +# define UINT32_C(c)    c ## U
115 +# if __WORDSIZE == 64
116 +#  define UINT64_C(c)   c ## UL
117 +# else
118 +#  define UINT64_C(c)   c ## ULL
119 +# endif
120 +#define canonicalize_file_name(x) realpath(x, NULL)
121 +#endif
122 +#include <strings.h>
123 +
124  /* FIXME Unused so far */
125  #undef HAVE_SYS_STATVFS_H
126  
127 diff -urp LVM2.2.02.177.orig/tools/Makefile.in LVM2.2.02.177/tools/Makefile.in
128 --- LVM2.2.02.177.orig/tools/Makefile.in        2018-01-26 15:12:22.000000000 +0000
129 +++ LVM2.2.02.177/tools/Makefile.in     2018-01-26 15:17:46.765522708 +0000
130 @@ -126,12 +126,13 @@ device-mapper: $(TARGETS_DM)
131  CFLAGS_dmsetup.o += $(UDEV_CFLAGS) $(EXTRA_EXEC_CFLAGS)
132  
133  dmsetup: dmsetup.o $(top_builddir)/libdm/libdevmapper.$(LIB_SUFFIX)
134 -       $(CC) $(CFLAGS) $(LDFLAGS) $(EXTRA_EXEC_LDFLAGS) $(ELDFLAGS) \
135 +       $(CC) $(CFLAGS) -L$(interfacebuilddir) -L$(top_builddir)/libdm \
136 +             $(LDFLAGS) $(EXTRA_EXEC_LDFLAGS) $(ELDFLAGS) \
137               -o $@ dmsetup.o -ldevmapper $(LIBS)
138  
139  dmsetup.static: dmsetup.o $(interfacebuilddir)/libdevmapper.a
140 -       $(CC) $(CFLAGS) $(LDFLAGS) -static -L$(interfacebuilddir) \
141 -             -o $@ dmsetup.o -ldevmapper $(M_LIBS) $(PTHREAD_LIBS) $(STATIC_LIBS) $(LIBS)
142 +       $(CC) $(CFLAGS) -static -L$(interfacebuilddir) $(LDFLAGS) \
143 +             -o $@ dmsetup.o -ldevmapper $(M_LIBS) $(PTHREAD_LIBS) $(STATIC_LIBS) $(LIBS) $(DIETLIBC_LIBS)
144  
145  all: device-mapper
146  
147 @@ -140,7 +141,7 @@ CFLAGS_lvm.o += $(EXTRA_EXEC_CFLAGS)
148  INCLUDES += -I$(top_builddir)/tools
149  
150  lvm: $(OBJECTS) lvm.o $(top_builddir)/lib/liblvm-internal.a
151 -       $(CC) $(CFLAGS) $(LDFLAGS) $(EXTRA_EXEC_LDFLAGS) $(ELDFLAGS) -o $@ $(OBJECTS) lvm.o \
152 +       $(CC) $(CFLAGS) -L$(interfacebuilddir) $(LDFLAGS) $(EXTRA_EXEC_LDFLAGS) $(ELDFLAGS) -o $@ $(OBJECTS) lvm.o \
153                 $(LVMLIBS) $(READLINE_LIBS) $(LIBS)
154  
155  DEFS_man-generator.o += -DMAN_PAGE_GENERATOR
156 @@ -157,7 +158,7 @@ endif
157  
158  lvm.static: $(OBJECTS) lvm-static.o $(top_builddir)/lib/liblvm-internal.a  $(interfacebuilddir)/libdevmapper.a
159         $(CC) $(CFLAGS) $(LDFLAGS) -static -L$(interfacebuilddir) -o $@ \
160 -             $(OBJECTS) lvm-static.o $(LVMLIBS) $(STATIC_LIBS) $(LIBS)
161 +             $(OBJECTS) lvm-static.o $(LVMLIBS) $(STATIC_LIBS) $(LIBS) $(PTHREAD_LIBS) $(DIETLIBC_LIBS)
162  
163  liblvm2cmd.a: $(top_builddir)/lib/liblvm-internal.a $(OBJECTS) lvmcmdlib.o lvm2cmd.o
164         cat $(top_builddir)/lib/liblvm-internal.a > $@
165 diff -urp LVM2.2.02.177.orig/tools/tools.h LVM2.2.02.177/tools/tools.h
166 --- LVM2.2.02.177.orig/tools/tools.h    2017-12-18 20:44:35.000000000 +0000
167 +++ LVM2.2.02.177/tools/tools.h 2018-01-26 15:13:17.917538732 +0000
168 @@ -47,6 +47,21 @@
169  #include <ctype.h>
170  #include <sys/types.h>
171  
172 +#ifdef __dietlibc__
173 +# include <limits.h>
174 +# if __WORDSIZE == 64
175 +#  define INT64_C(c)    c ## L
176 +# else
177 +#  define INT64_C(c)    c ## LL
178 +# endif
179 +# define UINT32_C(c)    c ## U
180 +# if __WORDSIZE == 64
181 +#  define UINT64_C(c)   c ## UL
182 +# else
183 +#  define UINT64_C(c)   c ## ULL
184 +# endif
185 +#endif
186 +
187  #define CMD_LEN 256
188  #define MAX_ARGS 64
189