]> git.pld-linux.org Git - packages/cryptsetup.git/blame - cryptsetup.spec
- updated to 1.3.1
[packages/cryptsetup.git] / cryptsetup.spec
CommitLineData
5eb10616
JB
1#
2# Conditonal build:
21d48aec 3%bcond_without initrd # don't build initrd version
23904b26 4%bcond_without dietlibc # build initrd version with static glibc instead of dietlibc
802ed4ef
ER
5
6%define realname cryptsetup
2488c838 7Summary: LUKS for dm-crypt implemented in cryptsetup
29f5822a 8Summary(pl.UTF-8): LUKS dla dm-crypta zaimplementowany w cryptsetup
6351d6a5 9Name: cryptsetup-luks
4039109c 10Version: 1.3.1
c627e74c 11Release: 1
d7593791 12License: GPL v2
6351d6a5 13Group: Base
c905abc3 14#Source0Download: http://code.google.com/p/cryptsetup/downloads/list
79b6c53c 15Source0: http://cryptsetup.googlecode.com/files/%{realname}-%{version}.tar.bz2
4039109c 16# Source0-md5: 1f5b5a9d538e8a3c191fb7dd85b9b013
c25e31b1
JR
17Source1: %{name}-initramfs-root-conf
18Source2: %{name}-initramfs-root-hook
19Source3: %{name}-initramfs-root-local-top
20Source4: %{name}-initramfs-passdev-hook
21Source5: %{name}-initramfs-README
c905abc3 22Patch0: %{name}-diet.patch
c627e74c 23Patch1: %{name}-pl.po-update.patch
79b6c53c 24URL: http://code.google.com/p/cryptsetup/
c905abc3 25BuildRequires: autoconf >= 2.67
5fe93676 26BuildRequires: automake
79b6c53c
JB
27BuildRequires: device-mapper-devel >= 1.02.03
28BuildRequires: gettext-devel >= 0.15
0b90291e
JB
29BuildRequires: libgcrypt-devel >= 1.1.42
30BuildRequires: libselinux-devel
31BuildRequires: libsepol-devel
c905abc3 32BuildRequires: libtool >= 2:2.0
0b90291e 33BuildRequires: libuuid-devel
79b6c53c 34BuildRequires: popt-devel >= 1.7
d07d45f7 35%if %{with initrd}
21d48aec
JR
36BuildRequires: libgpg-error-static
37 %if %{with dietlibc}
38BuildRequires: device-mapper-dietlibc
52d14f29 39BuildRequires: dietlibc-static
21d48aec
JR
40BuildRequires: libgcrypt-dietlibc
41BuildRequires: libuuid-dietlibc
42BuildRequires: popt-dietlibc
43 %else
5eb10616 44BuildRequires: device-mapper-static >= 1.02.07
a6fd3218 45BuildRequires: libgcrypt-static >= 1.1.42
a6fd3218 46BuildRequires: libselinux-static
8d9e50de 47BuildRequires: libsepol-static
a6fd3218 48BuildRequires: libuuid-static
49BuildRequires: popt-static
21d48aec 50 %endif
5eb10616 51%endif
79b6c53c 52Requires: popt >= 1.7
c0cc5702 53Provides: cryptsetup = %{version}
12cca230 54Obsoletes: cryptsetup
751c89df
ER
55Conflicts: udev < 1:118-1
56Conflicts: udev-core < 1:115
6351d6a5 57BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
58
59%define _sbindir /sbin
60
61%description
6e98e6fb 62LUKS is the upcoming standard for Linux hard disk encryption. By
63providing a standard on-disk-format, it does not only facilitate
64compatibility among distributions, but also provide secure management
65of multiple user passwords. In contrast to existing solution, LUKS
66stores all setup necessary setup information in the partition header,
67enabling the user to transport or migrate his data seamlessly.
6351d6a5 68
6e98e6fb 69This package contains implementation of LUKS for dm-crypt implemented
70in cryptsetup.
6351d6a5 71
77f30028
JR
72%description -l pl.UTF-8
73LUKS to nadchodzący standard linuksowego szyfrowania twardego dysku.
74Dostarczając standardowy format danych na dysku nie tylko ułatwia
75utrzymanie kompatybilności między dystrybucjami, ale także dostarcza
76bezpieczne zarządzanie wieloma hasłami użytkowników. W przeciwieństwie
77do istniejącego rozwiązania LUKS przechowuje wszystkie potrzebne
78informacje o konfiguracji w nagłówku partycji, pozwalając
79użytkownikowi przenosić lub migrować dane w sposób przezroczysty.
12cca230 80
77f30028 81Ten pakiet zawiera implementację LUKS dla dm-crytpa zaimplementowaną w
12cca230
JB
82cryptsetup.
83
6351d6a5 84%package devel
85Summary: Header files for cryptsetup library
29f5822a 86Summary(pl.UTF-8): Pliki nagłówkowe biblioteki cryptsetup
6351d6a5 87Group: Development/Libraries
88Requires: %{name} = %{version}-%{release}
89Requires: device-mapper-devel
90Requires: libgcrypt-devel >= 1.1.42
12cca230 91Obsoletes: cryptsetup-devel
6351d6a5 92
93%description devel
94Header files for cryptsetup library.
95
77f30028
JR
96%description devel -l pl.UTF-8
97Pliki nagłówkowe biblioteki cryptsetup.
6351d6a5 98
99%package static
100Summary: Static cryptsetup library
29f5822a 101Summary(pl.UTF-8): Statyczna biblioteka cryptsetup
6351d6a5 102Group: Development/Libraries
103Requires: %{name}-devel = %{version}-%{release}
fca9458b 104Obsoletes: cryptsetup-static
6351d6a5 105
106%description static
107Static version of cryptsetup library.
108
77f30028 109%description static -l pl.UTF-8
6351d6a5 110Statyczna wersja biblioteki cryptsetup.
111
d07d45f7
ER
112%package initrd
113Summary: LUKS for dm-crypt implemented in cryptsetup - initrd version
1c89131c 114Summary(pl.UTF-8): LUKS dla dm-crypta zaimplementowany w cryptsetup - wersja initrd
d07d45f7 115Group: Base
311e3692 116Requires: udev-initrd >= 1:115
2dd5e1c3 117Conflicts: geninitrd < 10000.10
d07d45f7
ER
118
119%description initrd
120This package contains implementation of LUKS for dm-crypt implemented
1c89131c
JB
121in cryptsetup - statically linked for initrd.
122
123%description initrd -l pl.UTF-8
124Ten pakiet zawiera implementację LUKS dla dm-crypta zaimplementowaną
125w cryptsetup - wersję statycznie zlinkowaną dla initrd.
d07d45f7 126
ecaa484d
JR
127%package initramfs
128Summary: LUKS for dm-crypt implemented in cryptsetup - support scripts for initramfs-tools
129Summary(pl.UTF-8): LUKS dla dm-crypta zaimplementowany w cryptsetup - skrypty dla initramfs-tools
130Group: Base
131Requires: %{name} = %{version}-%{release}
132Requires: initramfs-tools
133
134%description initramfs
135LUKS for dm-crypt implemented in cryptsetup - support scripts
136for initramfs-tools.
137
138%description initramfs -l pl.UTF-8
139LUKS dla dm-crypta zaimplementowany w cryptsetup - skrypty dla
140initramfs-tools.
141
6351d6a5 142%prep
d7593791 143%setup -q -n %{realname}-%{version}
79b6c53c 144%patch0 -p1
c627e74c 145%patch1 -p1
6351d6a5 146
802ed4ef 147cp -a %{SOURCE5} README.initramfs
ecaa484d 148
c627e74c
JB
149%{__rm} po/stamp-po
150
6351d6a5 151%build
8d9e50de 152%{__gettextize}
d7593791 153%{__libtoolize}
8d9e50de 154%{__aclocal} -I m4
155%{__autoconf}
d7593791 156%{__autoheader}
8d9e50de 157%{__automake}
d07d45f7
ER
158
159%if %{with initrd}
802ed4ef 160CC="%{__cc}"
a6fd3218 161%configure \
21d48aec 162%if %{with dietlibc}
802ed4ef
ER
163%configure \
164 CC="diet ${CC#ccache } %{rpmcflags} %{rpmldflags} -Os" \
8a7a87e4 165 LIBS="-lcompat" \
21d48aec
JR
166 ac_cv_lib_popt_poptConfigFileToString=yes \
167 ac_cv_lib_sepol_sepol_bool_set=no \
168 ac_cv_lib_selinux_is_selinux_enabled=no \
802ed4ef
ER
169%endif
170%if "%{?configure_cache}" == "1"
171 --cache-file=%{?configure_cache_file}%{!?configure_cache_file:configure}-initrd.cache \
21d48aec 172%endif
8a7a87e4 173 --disable-shared \
5eb10616 174 --enable-static \
d6925a9f
ER
175 --enable-static-cryptsetup \
176 --disable-nls
21d48aec 177
21d48aec
JR
178%{__make} -C lib
179
180%if %{with dietlibc}
181# we have to do it by hand cause libtool "know better" and forces
182# static libs from /usr/lib
802ed4ef
ER
183CC="%{__cc}"
184diet ${CC#ccache } %{rpmcflags} %{rpmldflags} -Os -I. -I./lib -static \
593621cb
JR
185 -o cryptsetup-initrd src/cryptsetup.c ./lib/.libs/libcryptsetup.a \
186 -lpopt -lgcrypt -lgpg-error -ldevmapper -luuid -lcompat
21d48aec
JR
187%else
188%{__make} -C src
d07d45f7 189mv src/cryptsetup cryptsetup-initrd
21d48aec 190%endif
23904b26 191
d07d45f7
ER
192%{__make} clean
193%endif
194
195%configure \
196 --enable-static
6351d6a5 197%{__make}
198
199%install
200rm -rf $RPM_BUILD_ROOT
ecaa484d 201install -d $RPM_BUILD_ROOT%{_datadir}/initramfs-tools/{conf-hooks.d,hooks,scripts/local-top}
6351d6a5 202
203%{__make} install \
204 DESTDIR=$RPM_BUILD_ROOT
205
206install -d $RPM_BUILD_ROOT/%{_lib}
d7593791
JB
207mv -f $RPM_BUILD_ROOT%{_libdir}/libcryptsetup.so.* $RPM_BUILD_ROOT/%{_lib}
208ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libcryptsetup.so.*.*.*) \
6351d6a5 209 $RPM_BUILD_ROOT%{_libdir}/libcryptsetup.so
210
d07d45f7 211%if %{with initrd}
927d0cdf 212install -d $RPM_BUILD_ROOT%{_libdir}/initrd
802ed4ef 213install -p cryptsetup-initrd $RPM_BUILD_ROOT%{_libdir}/initrd/cryptsetup
d07d45f7
ER
214%endif
215
802ed4ef
ER
216install -p %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/initramfs-tools/conf-hooks.d/cryptsetup
217install -p %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/initramfs-tools/hooks/cryptroot
218install -p %{SOURCE3} $RPM_BUILD_ROOT%{_datadir}/initramfs-tools/scripts/local-top/cryptroot
219install -p %{SOURCE4} $RPM_BUILD_ROOT%{_datadir}/initramfs-tools/hooks/cryptpassdev
ecaa484d 220
d7593791 221%find_lang %{realname}
6351d6a5 222
223%clean
224rm -rf $RPM_BUILD_ROOT
225
226%post -p /sbin/ldconfig
227%postun -p /sbin/ldconfig
228
d7593791 229%files -f %{realname}.lang
6351d6a5 230%defattr(644,root,root,755)
d7593791 231%doc AUTHORS ChangeLog TODO
6351d6a5 232%attr(755,root,root) %{_sbindir}/cryptsetup
233%attr(755,root,root) /%{_lib}/libcryptsetup.so.*.*.*
79b6c53c 234%attr(755,root,root) %ghost /%{_lib}/libcryptsetup.so.1
d7593791 235%{_mandir}/man8/cryptsetup.8*
6351d6a5 236
237%files devel
238%defattr(644,root,root,755)
239%attr(755,root,root) %{_libdir}/libcryptsetup.so
240%{_libdir}/libcryptsetup.la
d7593791 241%{_includedir}/libcryptsetup.h
79b6c53c 242%{_pkgconfigdir}/libcryptsetup.pc
6351d6a5 243
a6fd3218 244%files static
245%defattr(644,root,root,755)
246%{_libdir}/libcryptsetup.a
d07d45f7
ER
247
248%if %{with initrd}
249%files initrd
250%defattr(644,root,root,755)
927d0cdf 251%attr(755,root,root) %{_libdir}/initrd/cryptsetup
d07d45f7 252%endif
ecaa484d
JR
253
254%files initramfs
255%defattr(644,root,root,755)
256%doc README.initramfs
257%attr(755,root,root) %{_datadir}/initramfs-tools/conf-hooks.d/cryptsetup
258%attr(755,root,root) %{_datadir}/initramfs-tools/hooks/cryptroot
259%attr(755,root,root) %{_datadir}/initramfs-tools/hooks/cryptpassdev
260%attr(755,root,root) %{_datadir}/initramfs-tools/scripts/local-top/cryptroot
This page took 0.122604 seconds and 4 git commands to generate.