]> git.pld-linux.org Git - packages/xfsprogs.git/blame - xfsprogs.spec
- up to 3.1.1
[packages/xfsprogs.git] / xfsprogs.spec
CommitLineData
00d1530a
JR
1#
2# Conditional build:
3%bcond_without initrd # don't build initrd version
4%bcond_without dietlibc # link initrd version with static glibc instead of dietlibc
5#
80ded214 6Summary: Tools for the XFS filesystem
809af116 7Summary(pl.UTF-8): Narzędzia do systemu plików XFS
80ded214 8Name: xfsprogs
51a52578 9Version: 3.1.1
5cae9acb 10Release: 0.5
636af8bd 11License: LGPL v2.1 (libhandle), GPL v2 (the rest)
80ded214 12Group: Applications/System
4ede93fd 13Source0: ftp://linux-xfs.sgi.com/projects/xfs/cmd_tars/%{name}-%{version}.tar.gz
51a52578 14# Source0-md5: c2308b46ee707597ac50aae418d321b8
bc92c0b0 15Patch0: %{name}-miscfix-v2.patch
cb58e4a3 16Patch1: %{name}-install-sh.patch
6ad71900 17Patch2: %{name}-sharedlibs.patch
21a3d2af
JB
18Patch3: %{name}-pl.po-update.patch
19Patch4: %{name}-dynamic_exe.patch
2528905a 20Patch5: %{name}-LDFLAGS.patch
00d1530a 21Patch6: %{name}-diet.patch
a86cbc2d 22Patch7: %{name}-static-librt.patch
51a52578 23URL: http://www.xfs.org/
80ded214 24BuildRequires: autoconf
1c0f6863 25BuildRequires: automake
cb58e4a3 26BuildRequires: bash
a86cbc2d
JR
27%if %{with initrd}
28 %if %{with dietlibc}
29BuildRequires: dietlibc-static >= 2:0.31-6
30BuildRequires: libuuid-dietlibc
31 %else
32BuildRequires: glibc-static
33BuildRequires: libuuid-static
34 %endif
35%endif
8c56223e 36BuildRequires: gettext-devel
51a52578 37BuildRequires: libblkid-devel
92a53cbb 38BuildRequires: libtool
a5769371 39BuildRequires: libuuid-devel
99229502 40BuildRequires: readline-devel
dec839eb 41BuildRequires: rpm >= 4.4.9-56
9656c3b9 42BuildRequires: rpmbuild(macros) >= 1.402
c826f244 43BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
80ded214 44
dec839eb
ER
45%if "%{pld_release}" == "ac"
46# libtool in ac doesn't do the reordering of args properly
47%define filterout_ld -Wl,--as-needed
48%endif
49
b087bbdd
JR
50%define _sbindir /sbin
51%define _bindir /usr/sbin
a19d7677
JK
52%define _libdir /%{_lib}
53%define _libexecdir /usr/%{_lib}
4bf87b58
AF
54# for some reason known only to rpm there must be "\\|" not "\|" here
55%define dietarch %(echo %{_target_cpu} | sed -e 's/i.86\\|pentium.\\|athlon/i386/;s/amd64/x86_64/;s/armv.*/arm/')
56%define dietlibdir %{_prefix}/lib/dietlibc/lib-%{dietarch}
b087bbdd 57
80ded214
AM
58%description
59A set of commands to use the XFS filesystem, including mkfs.xfs.
60
61XFS is a high performance journaling filesystem which originated on
62the SGI IRIX platform. It is completely multi-threaded, can support
63large files and large filesystems, extended attributes, variable block
64sizes, is extent based, and makes extensive use of Btrees
65(directories, extents, free space) to aid both performance and
66scalability.
67
68This implementation is on-disk compatible with the IRIX version of
69XFS.
70
ddc220a9
JR
71%description -l pl.UTF-8
72Zbiór komend do użytku z systemem plików XFS, włączając w to mkfs.xfs.
80ded214 73
ddc220a9
JR
74XFS jest wysoko wydajnym systemem plików z kroniką, który oryginalnie
75był używany na platformie SGI IRIX. Jest to w pełni wielowątkowy,
76obsługujący wielkie pliki oraz wielkie systemy, o rozszerzonych
77atrybutach, zmiennych wielkościach bloków, mocno wykorzystujący
78B-drzewa by uzyskać wysoką wydajność oraz skalowalność.
80ded214
AM
79
80%package devel
81Summary: Header files and libraries to develop XFS software
809af116 82Summary(pl.UTF-8): Pliki nagłówkowe i biblioteki
80ded214 83Group: Development/Libraries
8b4647b2 84Requires: %{name} = %{version}-%{release}
2528905a 85Requires: libuuid-devel
80ded214
AM
86
87%description devel
88Header files and libraries to develop software which operates on XFS
89filesystems.
90
ddc220a9
JR
91%description devel -l pl.UTF-8
92Pliki nagłówkowe i biblioteki potrzebne do rozwoju oprogramowania
93operującego na systemie plików XFS.
80ded214 94
1c0f6863 95%package static
96Summary: Static XFS software libraries
809af116 97Summary(pl.UTF-8): Biblioteki statyczne do XFS
1c0f6863 98Group: Development/Libraries
8b4647b2 99Requires: %{name}-devel = %{version}-%{release}
1c0f6863 100
101%description static
102Static XFS software libraries.
103
ddc220a9 104%description static -l pl.UTF-8
1c0f6863 105Biblioteki statyczne do XFS.
106
a86cbc2d
JR
107%package initrd
108Summary: Tools for the XFS filesystem - initrd version
109Summary(pl.UTF-8): Narzędzia do systemu plików XFS - wersja dla initrd
110Group: Base
111
112%description initrd
113A set of commands to use the XFS filesystem, including mkfs.xfs
114 - initrd version.
115
116%description initrd -l pl.UTF-8
117Zbiór komend do użytku z systemem plików XFS, włączając w to mkfs.xfs
118 - wersja dla initrd.
119
80ded214 120%prep
600886d5 121%setup -q
80ded214 122%patch0 -p1
cb58e4a3 123%patch1 -p1
6ad71900 124%patch2 -p1
4ede93fd
AM
125# currently obsolete until needed again
126# %patch3 -p1
5cae9acb 127#%patch4 -p1
2528905a 128%patch5 -p1
00d1530a 129%patch6 -p1
a86cbc2d 130%patch7 -p1
4ede93fd
AM
131
132rm -f include/{builddefs,platform_defs}.h
80ded214
AM
133
134%build
ff9c0a4e 135%{__aclocal} -I m4
00d1530a
JR
136
137%if %{with initrd}
a86cbc2d
JR
138%if %{with dietlibc}
139# dietlibc doesn't have aio.h (and xfsprogs does not need it really)
140# dietlibc has needed librt stuff in libc/libpthread
00d1530a
JR
141sed -i -e 's|^AC_PACKAGE_NEED_AIO_H|dnl AC_PACKAGE_NEED_AIO_H|' \
142 -e 's|^AC_PACKAGE_NEED_LIO_LISTIO|dnl AC_PACKAGE_NEED_LIO_LISTIO|' \
143 configure.in
144sed -i -e 's|\(^LIBRT.*=.*\)|# \1|' include/builddefs.in
145sed -i -e 's|\(^LLDLIBS.*=.*\)|\1 -lcompat|' db/Makefile mkfs/Makefile
a86cbc2d 146%endif
00d1530a
JR
147
148%{__autoconf}
149%configure \
a86cbc2d 150 %{?with_dietlibc:CC="diet %{__cc} -static"} \
5cae9acb 151 --sbindir=/usr/sbin \
00d1530a
JR
152 --disable-gettext \
153 --disable-readline \
00d1530a 154 DEBUG="%{?debug:-DDEBUG}%{!?debug:-DNDEBUG}" \
1e21e3aa 155 OPTIMIZER="%{rpmcflags} -Wno-deprecated-declarations -Os -D_BSD_SOURCE -D__USE_XOPEN_EXTENDED"
00d1530a 156
4bf87b58
AF
157%{__make} -j1 include libxfs libxlog libxcmd libhandle libdisk \
158 LIBUUID="%{dietlibdir}/libuuid.a"
a86cbc2d 159%{__make} -j1 db growfs logprint mkfs mdrestore repair \
4bf87b58
AF
160 LDFLAGS="%{rpmldflags} -all-static" \
161 LIBUUID="%{dietlibdir}/libuuid.a"
00d1530a 162
9c0b9403
JR
163mkdir -p initrd
164mv -f db/xfs_db initrd/xfs_db
165mv -f growfs/xfs_growfs initrd/xfs_growfs
166mv -f logprint/xfs_logprint initrd/xfs_logprint
167mv -f mkfs/mkfs.xfs initrd/mkfs.xfs
168mv -f mdrestore/xfs_mdrestore initrd/xfs_mdrestore
169mv -f repair/xfs_repair initrd/xfs_repair
a86cbc2d
JR
170
171%if %{with dietlibc}
00d1530a
JR
172sed -i -e 's|^dnl AC_PACKAGE_NEED_AIO_H|AC_PACKAGE_NEED_AIO_H|' \
173 -e 's|^dnl AC_PACKAGE_NEED_LIO_LISTIO|AC_PACKAGE_NEED_LIO_LISTIO|' \
174 configure.in
a86cbc2d 175sed -i -e 's|^# \(LIBRT.*=.*\)|\1|' include/builddefs.in
00d1530a 176sed -i -e 's|\(^LLDLIBS.*=.*\) -lcompat|\1|' db/Makefile mkfs/Makefile
a86cbc2d 177%endif
00d1530a 178
a86cbc2d 179%{__make} clean
00d1530a
JR
180%endif
181
551b0d1f 182%{__autoconf}
1c0f6863 183%configure \
5cae9acb 184 --sbindir=/usr/sbin \
4ede93fd
AM
185 --enable-gettext \
186 --enable-readline \
0c1d4bf9 187 DEBUG="%{?debug:-DDEBUG}%{!?debug:-DNDEBUG}" \
4ede93fd 188 OPTIMIZER="%{rpmcflags}"
00d1530a 189
4ede93fd 190%{__make} -j1
80ded214
AM
191
192%install
193rm -rf $RPM_BUILD_ROOT
194
9656c3b9
ER
195DIST_ROOT=$RPM_BUILD_ROOT
196DIST_INSTALL=$(pwd)/install.manifest
197DIST_INSTALL_DEV=$(pwd)/install-dev.manifest
59aa30e8 198export DIST_ROOT DIST_INSTALL DIST_INSTALL_DEV
ff9c0a4e
JB
199
200%{__make} install \
201 DIST_MANIFEST="$DIST_INSTALL"
202%{__make} install-dev \
203 DIST_MANIFEST="$DIST_INSTALL_DEV"
80ded214 204
9656c3b9 205ln -sf %{_libdir}/$(basename $RPM_BUILD_ROOT%{_libdir}/libhandle.so.*.*.*) \
ff9c0a4e 206 $RPM_BUILD_ROOT%{_libexecdir}/libhandle.so
0c1d4bf9
JB
207ln -sf %{_libdir}/$(basename $RPM_BUILD_ROOT%{_libdir}/libxcmd.so.*.*.*) \
208 $RPM_BUILD_ROOT%{_libexecdir}/libxcmd.so
9656c3b9 209ln -sf %{_libdir}/$(basename $RPM_BUILD_ROOT%{_libdir}/libxfs.so.*.*.*) \
ff9c0a4e 210 $RPM_BUILD_ROOT%{_libexecdir}/libxfs.so
9656c3b9 211ln -sf %{_libdir}/$(basename $RPM_BUILD_ROOT%{_libdir}/libxlog.so.*.*.*) \
ff9c0a4e 212 $RPM_BUILD_ROOT%{_libexecdir}/libxlog.so
cb190f67 213
51a52578
AM
214mv $RPM_BUILD_ROOT%{_libdir}/lib*.la $RPM_BUILD_ROOT%{_libexecdir}
215mv $RPM_BUILD_ROOT%{_libdir}/lib*.a $RPM_BUILD_ROOT%{_libexecdir}
216
4ede93fd 217%{__sed} -i -e "s|libdir='%{_libdir}'|libdir='%{_libexecdir}'|" \
51a52578 218 $RPM_BUILD_ROOT%{_libexecdir}/lib{handle,xcmd,xfs,xlog}.la
b13dd065
AM
219%{__sed} -i -e "s| %{_libdir}/libxfs.la | %{_libexecdir}/libxfs.la |" \
220 $RPM_BUILD_ROOT%{_libexecdir}/libxlog.la
b756248b 221
a86cbc2d 222%if %{with initrd}
9c0b9403
JR
223install -d $RPM_BUILD_ROOT%{_libexecdir}/initrd
224install initrd/* $RPM_BUILD_ROOT%{_libexecdir}/initrd/
a86cbc2d
JR
225%endif
226
01483858
JB
227%find_lang %{name}
228
5e040522
ER
229rm -rf $RPM_BUILD_ROOT%{_docdir}/%{name}
230
9656c3b9 231# already in /usr
9656c3b9 232rm -f $RPM_BUILD_ROOT%{_libdir}/libhandle.{a,la,so}
0c1d4bf9 233rm -f $RPM_BUILD_ROOT%{_libdir}/libxcmd.{a,la,so}
9656c3b9 234rm -f $RPM_BUILD_ROOT%{_libdir}/libxfs.{a,la,so}
9656c3b9
ER
235rm -f $RPM_BUILD_ROOT%{_libdir}/libxlog.{a,la,so}
236
80ded214
AM
237%clean
238rm -rf $RPM_BUILD_ROOT
239
c5b3782d 240%post -p /sbin/ldconfig
c7083593
JR
241%postun -p /sbin/ldconfig
242
01483858 243%files -f %{name}.lang
80ded214 244%defattr(644,root,root,755)
636af8bd 245%doc README doc/{CHANGES,CREDITS}
0c1d4bf9
JB
246%attr(755,root,root) %{_sbindir}/fsck.xfs
247%attr(755,root,root) %{_sbindir}/mkfs.xfs
248%attr(755,root,root) %{_sbindir}/xfs_repair
249%attr(755,root,root) %{_bindir}/xfs_*
9656c3b9 250%attr(755,root,root) %{_libdir}/libhandle.so.*.*
423c4374 251%attr(755,root,root) %{_libdir}/libxcmd.so.*.*
9656c3b9
ER
252%attr(755,root,root) %{_libdir}/libxfs.so.*.*
253%attr(755,root,root) %{_libdir}/libxlog.so.*.*
9656c3b9 254%attr(755,root,root) %ghost %{_libdir}/libhandle.so.1
423c4374 255%attr(755,root,root) %ghost %{_libdir}/libxcmd.so.0
9656c3b9
ER
256%attr(755,root,root) %ghost %{_libdir}/libxfs.so.0
257%attr(755,root,root) %ghost %{_libdir}/libxlog.so.0
275db5b4
AM
258%{_mandir}/man5/projects.5*
259%{_mandir}/man5/projid.5*
0c1d4bf9
JB
260%{_mandir}/man5/xfs.5*
261%{_mandir}/man8/fsck.xfs.8*
262%{_mandir}/man8/mkfs.xfs.8*
263%{_mandir}/man8/xfs_*.8*
80ded214
AM
264
265%files devel
266%defattr(644,root,root,755)
0c1d4bf9
JB
267%attr(755,root,root) %{_libexecdir}/libhandle.so
268%attr(755,root,root) %{_libexecdir}/libxcmd.so
269%attr(755,root,root) %{_libexecdir}/libxfs.so
270%attr(755,root,root) %{_libexecdir}/libxlog.so
0c1d4bf9
JB
271%{_libexecdir}/libhandle.la
272%{_libexecdir}/libxcmd.la
273%{_libexecdir}/libxfs.la
274%{_libexecdir}/libxlog.la
353bc53d 275%{_includedir}/xfs
0c1d4bf9
JB
276%{_mandir}/man3/*handle.3*
277%{_mandir}/man3/xfsctl.3*
1c0f6863 278
279%files static
280%defattr(644,root,root,755)
0c1d4bf9
JB
281%{_libexecdir}/libhandle.a
282%{_libexecdir}/libxcmd.a
283%{_libexecdir}/libxfs.a
284%{_libexecdir}/libxlog.a
a86cbc2d
JR
285
286%if %{with initrd}
287%files initrd
288%defattr(644,root,root,755)
9c0b9403
JR
289%attr(755,root,root) %{_libexecdir}/initrd/mkfs.xfs
290%attr(755,root,root) %{_libexecdir}/initrd/xfs_db
291%attr(755,root,root) %{_libexecdir}/initrd/xfs_growfs
292%attr(755,root,root) %{_libexecdir}/initrd/xfs_logprint
293%attr(755,root,root) %{_libexecdir}/initrd/xfs_mdrestore
294%attr(755,root,root) %{_libexecdir}/initrd/xfs_repair
a86cbc2d 295%endif
This page took 0.096361 seconds and 4 git commands to generate.