Whamcloud - gitweb
libext2fs: properly free the bitmaps in read_bitmap()'s error/cleanup path
[tools/e2fsprogs.git] / e2fsprogs.spec
1 %define _root_sbindir   /sbin
2 %define _root_libdir    /%{_lib}
3 %define _root_localedir /usr/share/locale
4 %define _root_etcdir    /etc
5
6 Summary: Utilities for managing ext2/ext3/ext4 filesystems
7 Name: e2fsprogs
8 Version: 1.45.4
9 Release: 0
10 License: GPLv2
11 Group: System Environment/Base
12 Source:  ftp://download.sourceforge.net/pub/sourceforge/e2fsprogs/e2fsprogs-%{version}.tar.gz
13 Url: http://e2fsprogs.sourceforge.net/
14 Prereq: /sbin/ldconfig
15 BuildRoot: %{_tmppath}/%{name}-root
16
17 %description
18 The e2fsprogs package contains a number of utilities for creating,
19 checking, modifying, and correcting any inconsistencies in ext2, ext3,
20 and ext4 filesystems.  E2fsprogs contains e2fsck (used to repair
21 filesystem inconsistencies after an unclean shutdown), mke2fs (used to
22 initialize a partition to contain an empty ext2 filesystem), debugfs
23 (used to examine the internal structure of a filesystem, to manually
24 repair a corrupted filesystem or to create test cases for e2fsck),
25 tune2fs (used to modify filesystem parameters), resize2fs to grow and
26 shrink unmounted ext2 filesystems, and most of the other core ext2fs
27 filesystem utilities.
28
29 You should install the e2fsprogs package if you are using any ext2,
30 ext3, or ext4 filesystems (if you're not sure, you probably should
31 install this package).  You may also need to install it (even if you
32 don't use ext2/ext3/ext4) for the libuuid and libblkid libraries and
33 fsck tool that are included here.
34
35 %package devel
36 Summary: Ext2 filesystem-specific static libraries and headers.
37 Group: Development/Libraries
38 Requires: e2fsprogs = %{version}
39 Prereq: /sbin/install-info
40
41 %description devel
42 E2fsprogs-devel contains the libraries and header files needed to
43 develop ext2, ext3, or ext4 filesystem-specific programs.
44
45 You should install e2fsprogs-devel if you want to develop
46 ext2. ext3. or ext4 filesystem-specific programs.  If you install
47 e2fsprogs-devel, you'll also want to install e2fsprogs.
48
49 %package -n uuidd
50 Summary: helper daemon to guarantee uniqueness of time-based UUIDs
51 Group: System Environment/Daemons
52 License: GPLv2
53 Requires: e2fsprogs = %{version}
54 Requires(pre): shadow-utils
55
56 %description -n uuidd
57 The uuidd package contains a userspace daemon (uuidd) which guarantees
58 uniqueness of time-based UUID generation even at very high rates on
59 SMP systems.
60
61 %prep
62 %setup
63
64 %build
65 %configure --enable-elf-shlibs --enable-nls \
66         %{?extra_config_flags:%extra_config_flags}
67 make
68 make check
69
70 %install
71 rm -rf $RPM_BUILD_ROOT
72 export PATH=/sbin:$PATH
73 make install install-libs DESTDIR="$RPM_BUILD_ROOT" \
74         root_sbindir=%{_root_sbindir} root_libdir=%{_root_libdir}
75 /sbin/ldconfig -n ${RPM_BUILD_ROOT}%{_libdir}
76
77 # Add a dir that uuidd needs that the Makefiles don't create
78 install -d $RPM_BUILD_ROOT/var/lib/libuuid
79
80 %find_lang %{name}
81
82 %clean
83 rm -rf $RPM_BUILD_ROOT
84
85 %post -p /sbin/ldconfig
86
87 %postun -p /sbin/ldconfig
88
89 %post devel
90 if [ -x /sbin/install-info -a -f %{_infodir}/libext2fs.info.gz ]; then
91     /sbin/install-info %{_infodir}/libext2fs.info.gz %{_infodir}/dir
92 fi
93 exit 0
94
95 %postun devel
96 if [ $1 = 0 -a -x /sbin/install-info -a -f %{_infodir}/libext2fs.info.gz ]; then
97    /sbin/install-info --delete %{_infodir}/libext2fs.info.gz %{_infodir}/dir
98 fi
99 exit 0
100
101 %pre -n uuidd
102 getent group uuidd >/dev/null || groupadd -r uuidd
103 getent passwd uuidd >/dev/null || \
104 useradd -r -g uuidd -d /var/lib/libuuid -s /sbin/nologin \
105     -c "UUID generator helper daemon" uuidd
106 exit 0
107
108 %files -f %{name}.lang
109 %defattr(-,root,root)
110 %doc README RELEASE-NOTES
111
112 %{_root_sbindir}/badblocks
113 %{_root_sbindir}/blkid
114 %{_root_sbindir}/debugfs
115 %{_root_sbindir}/dumpe2fs
116 %{_root_sbindir}/e2fsck
117 %{_root_sbindir}/e2image
118 %{_root_sbindir}/e2label
119 %{_root_sbindir}/e2mmpstatus
120 %{_root_sbindir}/e2undo
121 %{_root_sbindir}/findfs
122 %{_root_sbindir}/fsck
123 %{_root_sbindir}/fsck.ext2
124 %{_root_sbindir}/fsck.ext3
125 %{_root_sbindir}/fsck.ext4
126 %{_root_sbindir}/fsck.ext4dev
127 %{_root_sbindir}/logsave
128 %{_root_sbindir}/mke2fs
129 %{_root_etcdir}/mke2fs.conf
130 %{_root_sbindir}/mkfs.ext2
131 %{_root_sbindir}/mkfs.ext3
132 %{_root_sbindir}/mkfs.ext4
133 %{_root_sbindir}/mkfs.ext4dev
134 %{_root_sbindir}/resize2fs
135 %{_root_sbindir}/tune2fs
136 %{_sbindir}/filefrag
137 %{_sbindir}/mklost+found
138 %{_sbindir}/e2freefrag
139
140 %{_root_libdir}/libblkid.so.*
141 %{_root_libdir}/libcom_err.so.*
142 %{_root_libdir}/libe2p.so.*
143 %{_root_libdir}/libext2fs.so.*
144 %{_root_libdir}/libss.so.*
145 %{_root_libdir}/libuuid.so.*
146
147 %{_libdir}/e2initrd_helper
148
149 %{_bindir}/chattr
150 %{_bindir}/lsattr
151 %{_bindir}/uuidgen
152 %{_mandir}/man1/chattr.1*
153 %{_mandir}/man1/lsattr.1*
154 %{_mandir}/man1/uuidgen.1*
155
156 %{_mandir}/man5/e2fsck.conf.5*
157 %{_mandir}/man5/mke2fs.conf.5*
158
159 %{_mandir}/man8/badblocks.8*
160 %{_mandir}/man8/blkid.8*
161 %{_mandir}/man8/debugfs.8*
162 %{_mandir}/man8/dumpe2fs.8*
163 %{_mandir}/man8/e2fsck.8*
164 %{_mandir}/man8/findfs.8*
165 %{_mandir}/man8/fsck.ext2.8*
166 %{_mandir}/man8/fsck.ext3.8*
167 %{_mandir}/man8/fsck.ext4.8*
168 %{_mandir}/man8/fsck.ext4dev.8*
169 %{_mandir}/man8/e2image.8*
170 %{_mandir}/man8/e2label.8*
171 %{_mandir}/man8/e2mmpstatus.8*
172 %{_mandir}/man8/e2undo.8*
173 %{_mandir}/man8/fsck.8*
174 %{_mandir}/man8/logsave.8*
175 %{_mandir}/man8/mke2fs.8*
176 %{_mandir}/man8/mkfs.ext2.8*
177 %{_mandir}/man8/mkfs.ext3.8*
178 %{_mandir}/man8/mkfs.ext4.8*
179 %{_mandir}/man8/mkfs.ext4dev.8*
180 %{_mandir}/man8/mklost+found.8*
181 %{_mandir}/man8/resize2fs.8*
182 %{_mandir}/man8/tune2fs.8*
183 %{_mandir}/man8/filefrag.8*
184 %{_mandir}/man8/e2freefrag.8*
185
186 %files devel
187 %defattr(-,root,root)
188 %{_infodir}/libext2fs.info*
189 %{_bindir}/compile_et
190 %{_bindir}/mk_cmds
191
192 %{_libdir}/libblkid.a
193 %{_libdir}/libblkid.so
194 %{_libdir}/libcom_err.a
195 %{_libdir}/libcom_err.so
196 %{_libdir}/libe2p.a
197 %{_libdir}/libe2p.so
198 %{_libdir}/libext2fs.a
199 %{_libdir}/libext2fs.so
200 %{_libdir}/libss.a
201 %{_libdir}/libss.so
202 %{_libdir}/libuuid.a
203 %{_libdir}/libuuid.so
204
205 %{_libdir}/pkgconfig/blkid.pc
206 %{_libdir}/pkgconfig/com_err.pc
207 %{_libdir}/pkgconfig/e2p.pc
208 %{_libdir}/pkgconfig/ext2fs.pc
209 %{_libdir}/pkgconfig/ss.pc
210 %{_libdir}/pkgconfig/uuid.pc
211
212 %{_datadir}/et
213 %{_datadir}/ss
214 %{_includedir}/blkid
215 %{_includedir}/e2p
216 %{_includedir}/et
217 %{_includedir}/com_err.h
218 %{_includedir}/ext2fs
219 %{_includedir}/ss
220 %{_includedir}/uuid
221 %{_mandir}/man1/compile_et.1*
222 %{_mandir}/man1/mk_cmds.1*
223 %{_mandir}/man3/com_err.3*
224 %{_mandir}/man3/libblkid.3*
225 %{_mandir}/man3/uuid.3*
226 %{_mandir}/man3/uuid_clear.3*
227 %{_mandir}/man3/uuid_compare.3*
228 %{_mandir}/man3/uuid_copy.3*
229 %{_mandir}/man3/uuid_generate.3*
230 %{_mandir}/man3/uuid_generate_random.3*
231 %{_mandir}/man3/uuid_generate_time.3*
232 %{_mandir}/man3/uuid_is_null.3*
233 %{_mandir}/man3/uuid_parse.3*
234 %{_mandir}/man3/uuid_time.3*
235 %{_mandir}/man3/uuid_unparse.3*
236
237 %files -n uuidd
238 %defattr(-,root,root)
239 # if you want to run via init
240 # /etc/init.d/uuidd
241 %{_mandir}/man8/uuidd.8*
242 %attr(6755, uuidd, uuidd) %{_sbindir}/uuidd
243 %dir %attr(2775, uuidd, uuidd) /var/lib/libuuid
244