]> git.pld-linux.org Git - packages/xfsprogs.git/blame - xfsprogs.spec
- up to 3.1.2
[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
f337758d
AM
9Version: 3.1.2
10Release: 1
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
f337758d 14# Source0-md5: 86d10178ee6897cb099c97303e6d9da0
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
df004a70 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"} \
a084b099 151 --sbindir=%{_bindir} \
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 \
a084b099 184 --sbindir=%{_bindir}\
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
df004a70
BZ
195install -d $RPM_BUILD_ROOT%{_libexecdir}
196
9656c3b9
ER
197DIST_ROOT=$RPM_BUILD_ROOT
198DIST_INSTALL=$(pwd)/install.manifest
199DIST_INSTALL_DEV=$(pwd)/install-dev.manifest
59aa30e8 200export DIST_ROOT DIST_INSTALL DIST_INSTALL_DEV
ff9c0a4e
JB
201
202%{__make} install \
203 DIST_MANIFEST="$DIST_INSTALL"
204%{__make} install-dev \
205 DIST_MANIFEST="$DIST_INSTALL_DEV"
80ded214 206
9656c3b9 207ln -sf %{_libdir}/$(basename $RPM_BUILD_ROOT%{_libdir}/libhandle.so.*.*.*) \
ff9c0a4e 208 $RPM_BUILD_ROOT%{_libexecdir}/libhandle.so
0c1d4bf9
JB
209ln -sf %{_libdir}/$(basename $RPM_BUILD_ROOT%{_libdir}/libxcmd.so.*.*.*) \
210 $RPM_BUILD_ROOT%{_libexecdir}/libxcmd.so
9656c3b9 211ln -sf %{_libdir}/$(basename $RPM_BUILD_ROOT%{_libdir}/libxfs.so.*.*.*) \
ff9c0a4e 212 $RPM_BUILD_ROOT%{_libexecdir}/libxfs.so
9656c3b9 213ln -sf %{_libdir}/$(basename $RPM_BUILD_ROOT%{_libdir}/libxlog.so.*.*.*) \
ff9c0a4e 214 $RPM_BUILD_ROOT%{_libexecdir}/libxlog.so
cb190f67 215
51a52578
AM
216mv $RPM_BUILD_ROOT%{_libdir}/lib*.la $RPM_BUILD_ROOT%{_libexecdir}
217mv $RPM_BUILD_ROOT%{_libdir}/lib*.a $RPM_BUILD_ROOT%{_libexecdir}
218
4ede93fd 219%{__sed} -i -e "s|libdir='%{_libdir}'|libdir='%{_libexecdir}'|" \
51a52578 220 $RPM_BUILD_ROOT%{_libexecdir}/lib{handle,xcmd,xfs,xlog}.la
b13dd065
AM
221%{__sed} -i -e "s| %{_libdir}/libxfs.la | %{_libexecdir}/libxfs.la |" \
222 $RPM_BUILD_ROOT%{_libexecdir}/libxlog.la
b756248b 223
a86cbc2d 224%if %{with initrd}
9c0b9403
JR
225install -d $RPM_BUILD_ROOT%{_libexecdir}/initrd
226install initrd/* $RPM_BUILD_ROOT%{_libexecdir}/initrd/
a86cbc2d
JR
227%endif
228
01483858
JB
229%find_lang %{name}
230
5e040522
ER
231rm -rf $RPM_BUILD_ROOT%{_docdir}/%{name}
232
9656c3b9 233# already in /usr
9656c3b9 234rm -f $RPM_BUILD_ROOT%{_libdir}/libhandle.{a,la,so}
0c1d4bf9 235rm -f $RPM_BUILD_ROOT%{_libdir}/libxcmd.{a,la,so}
9656c3b9 236rm -f $RPM_BUILD_ROOT%{_libdir}/libxfs.{a,la,so}
9656c3b9
ER
237rm -f $RPM_BUILD_ROOT%{_libdir}/libxlog.{a,la,so}
238
80ded214
AM
239%clean
240rm -rf $RPM_BUILD_ROOT
241
c5b3782d 242%post -p /sbin/ldconfig
c7083593
JR
243%postun -p /sbin/ldconfig
244
01483858 245%files -f %{name}.lang
80ded214 246%defattr(644,root,root,755)
636af8bd 247%doc README doc/{CHANGES,CREDITS}
0c1d4bf9
JB
248%attr(755,root,root) %{_sbindir}/fsck.xfs
249%attr(755,root,root) %{_sbindir}/mkfs.xfs
250%attr(755,root,root) %{_sbindir}/xfs_repair
251%attr(755,root,root) %{_bindir}/xfs_*
9656c3b9 252%attr(755,root,root) %{_libdir}/libhandle.so.*.*
423c4374 253%attr(755,root,root) %{_libdir}/libxcmd.so.*.*
9656c3b9
ER
254%attr(755,root,root) %{_libdir}/libxfs.so.*.*
255%attr(755,root,root) %{_libdir}/libxlog.so.*.*
9656c3b9 256%attr(755,root,root) %ghost %{_libdir}/libhandle.so.1
423c4374 257%attr(755,root,root) %ghost %{_libdir}/libxcmd.so.0
9656c3b9
ER
258%attr(755,root,root) %ghost %{_libdir}/libxfs.so.0
259%attr(755,root,root) %ghost %{_libdir}/libxlog.so.0
275db5b4
AM
260%{_mandir}/man5/projects.5*
261%{_mandir}/man5/projid.5*
0c1d4bf9
JB
262%{_mandir}/man5/xfs.5*
263%{_mandir}/man8/fsck.xfs.8*
264%{_mandir}/man8/mkfs.xfs.8*
265%{_mandir}/man8/xfs_*.8*
80ded214
AM
266
267%files devel
268%defattr(644,root,root,755)
0c1d4bf9
JB
269%attr(755,root,root) %{_libexecdir}/libhandle.so
270%attr(755,root,root) %{_libexecdir}/libxcmd.so
271%attr(755,root,root) %{_libexecdir}/libxfs.so
272%attr(755,root,root) %{_libexecdir}/libxlog.so
0c1d4bf9
JB
273%{_libexecdir}/libhandle.la
274%{_libexecdir}/libxcmd.la
275%{_libexecdir}/libxfs.la
276%{_libexecdir}/libxlog.la
353bc53d 277%{_includedir}/xfs
0c1d4bf9
JB
278%{_mandir}/man3/*handle.3*
279%{_mandir}/man3/xfsctl.3*
1c0f6863 280
281%files static
282%defattr(644,root,root,755)
0c1d4bf9
JB
283%{_libexecdir}/libhandle.a
284%{_libexecdir}/libxcmd.a
285%{_libexecdir}/libxfs.a
286%{_libexecdir}/libxlog.a
a86cbc2d
JR
287
288%if %{with initrd}
289%files initrd
290%defattr(644,root,root,755)
9c0b9403
JR
291%attr(755,root,root) %{_libexecdir}/initrd/mkfs.xfs
292%attr(755,root,root) %{_libexecdir}/initrd/xfs_db
293%attr(755,root,root) %{_libexecdir}/initrd/xfs_growfs
294%attr(755,root,root) %{_libexecdir}/initrd/xfs_logprint
295%attr(755,root,root) %{_libexecdir}/initrd/xfs_mdrestore
296%attr(755,root,root) %{_libexecdir}/initrd/xfs_repair
a86cbc2d 297%endif
This page took 0.121361 seconds and 4 git commands to generate.