Date:2010-01-11 12:04:30 (3 years 4 months ago)
Author:lars
Commit:d5d38d7ac5a49733ac26a3c8c2c917d98e685dfd
Message:mtd-utils: Disable lzo for mkfs.ubifs

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19104 3c298f89-4303-0410-b956-a3cf2f4a3e73
Files: tools/mtd-utils/patches/101-ubifs-optional_lzo.patch (1 diff)

Change Details

tools/mtd-utils/patches/101-ubifs-optional_lzo.patch
1diff --git a/mkfs.ubifs/Makefile b/mkfs.ubifs/Makefile
2index a678b0a..919ce89 100644
3--- a/mkfs.ubifs/Makefile
4@@ -5,7 +5,7 @@ ALL_SOURCES=*.[ch] hashtable/*.[ch]
5
6 TARGETS = mkfs.ubifs
7
8-LDLIBS_mkfs.ubifs = -lz -llzo2 -lm -luuid -L../ubi-utils/ -lubi
9+LDLIBS_mkfs.ubifs = -lz $(if,$(NO_LZO),,-llzo2) -lm -luuid -L../ubi-utils/ -lubi
10
11 include ../common.mk
12
13diff --git a/mkfs.ubifs/compr.c b/mkfs.ubifs/compr.c
14index e378c5d..0208f80 100644
15--- a/mkfs.ubifs/compr.c
16@@ -83,6 +83,17 @@ static int zlib_deflate(void *in_buf, size_t in_len, void *out_buf,
17     return 0;
18 }
19
20+static int no_compress(void *in_buf, size_t in_len, void *out_buf,
21+ size_t *out_len)
22+{
23+ memcpy(out_buf, in_buf, in_len);
24+ *out_len = in_len;
25+ return 0;
26+}
27+
28+
29+#if CONFIG_UBIFS_LZO
30+
31 static int lzo_compress(void *in_buf, size_t in_len, void *out_buf,
32             size_t *out_len)
33 {
34@@ -101,14 +112,16 @@ static int lzo_compress(void *in_buf, size_t in_len, void *out_buf,
35     return 0;
36 }
37
38-static int no_compress(void *in_buf, size_t in_len, void *out_buf,
39- size_t *out_len)
40+#else
41+
42+static int lzo_compress(void *in_buf, size_t in_len, void *out_buf,
43+ size_t *out_len)
44 {
45- memcpy(out_buf, in_buf, in_len);
46- *out_len = in_len;
47- return 0;
48+ return -1;
49 }
50
51+#endif
52+
53 static char *zlib_buf;
54
55 static int favor_lzo_compress(void *in_buf, size_t in_len, void *out_buf,
56@@ -195,9 +208,11 @@ int compress_data(void *in_buf, size_t in_len, void *out_buf, size_t *out_len,
57
58 int init_compression(void)
59 {
60+#ifdef CONFIG_UBIFS_LZO
61     lzo_mem = malloc(LZO1X_999_MEM_COMPRESS);
62     if (!lzo_mem)
63         return -1;
64+#endif
65
66     zlib_buf = malloc(UBIFS_BLOCK_SIZE * WORST_COMPR_FACTOR);
67     if (!zlib_buf) {
68@@ -211,7 +226,9 @@ int init_compression(void)
69 void destroy_compression(void)
70 {
71     free(zlib_buf);
72+#ifdef CONFIG_UBIFS_LZO
73     free(lzo_mem);
74+#endif
75     if (errcnt)
76         fprintf(stderr, "%llu compression errors occurred\n", errcnt);
77 }

Archive Download the corresponding diff file



interactive