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