3 %bcond_without dist_kernel # without distribution kernel
5 %define _orig_name capsel
9 Summary: Capsel - supports Linux-Privs security model
10 Summary(pl.UTF-8): Capsel - obsługa modelu bezpieczeństwa Linux-Privs
13 Release: %{_pre}.%{_rel}
16 Source0: http://cliph.linux.pl/capsel/capsel-%{version}%{_pre}.tar.gz
17 # Source0-md5: f886467eb458812f8ee426541c7e4e06
19 Patch0: %{name}-2.0rc2.diff
20 Patch1: %{name}-no_kernel_smp.patch
21 Patch2: %{name}-include-fix.patch
22 URL: http://cliph.linux.pl/capsel/
23 BuildRequires: %{kgcc_package}
24 %{?with_dist_kernel:BuildRequires: kernel-headers}
25 BuildRequires: rpmbuild(macros) >= 1.268
26 Requires(post,preun): /sbin/chkconfig
27 %{?with_dist_kernel:Requires: kernel(capsel)}
29 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
32 Capsel module is a small but very powerful loadable Linux kernel
33 module. Its advanced security features allows to improve overall
36 %description -l pl.UTF-8
37 Capsel jest małym, ale bardzo potężnym ładowalnym modułem dla Linuksa.
38 Jego cechy pozwalają zwiększyć bezpieczeństwo systemu.
40 %package -n kernel-misc-capsel
41 Summary: Capsel - supports Linux-Privs security model
42 Summary(pl.UTF-8): Capsel - obsługa modelu bezpieczeństwa Linux-Privs
43 Release: %{_rel}@%{_kernel_ver_str}
45 %{?with_dist_kernel:%requires_releq_kernel_up}
46 Requires(post,postun): /sbin/depmod
47 Provides: kernel(capsel)
49 %description -n kernel-misc-capsel
50 Capsel - kernel module.
52 %description -n kernel-misc-capsel -l pl.UTF-8
55 %package -n kernel-smp-misc-capsel
56 Summary: Capsel - supports Linux-Privs security model
57 Summary(pl.UTF-8): Capsel - obsługa modelu bezpieczeństwa Linux-Privs
58 Release: %{_rel}@%{_kernel_ver_str}
60 %{?with_dist_kernel:%requires_releq_kernel_smp}
61 Requires(post,postun): /sbin/depmod
62 Provides: kernel(capsel)
64 %description -n kernel-smp-misc-capsel
65 Capsel - SMP kernel module.
67 %description -n kernel-smp-misc-capsel -l pl.UTF-8
68 Capsel - moduł jądra SMP.
71 %setup -q -n %{name}-%{version}%{_pre}
79 %{__make} CC="%{kgcc} -DCONFIG_X86_LOCAL_APIC"
80 mv -f src/capsel.o bin/capsel.o
84 %{__make} CC="%{kgcc} -D__KERNEL_SMP=1 -D__SMP__ -DCONFIG_X86_LOCAL_APIC"
85 mv -f src/capsel.o bin/capselsmp.o
88 rm -rf $RPM_BUILD_ROOT
89 install -d $RPM_BUILD_ROOT{%{_sysconfdir}/{%{_orig_name},rc.d/init.d},/sbin} \
90 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{/misc,smp/misc}
92 install capsel.conf $RPM_BUILD_ROOT%{_sysconfdir}/capsel/default
93 install src/user/capsel $RPM_BUILD_ROOT/sbin/
95 install bin/capsel.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/capsel.o
96 install bin/capselsmp.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/capsel.o
98 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/capsel
101 rm -rf $RPM_BUILD_ROOT
104 /sbin/chkconfig --add capsel
105 %service capsel restart
108 if [ "$1" = "0" ]; then
110 /sbin/chkconfig --del capsel
113 %post -n kernel-misc-capsel
114 %depmod %{_kernel_ver}
116 %postun -n kernel-misc-capsel
117 %depmod %{_kernel_ver}
119 %post -n kernel-smp-misc-capsel
120 %depmod %{_kernel_ver}smp
122 %postun -n kernel-smp-misc-capsel
123 %depmod %{_kernel_ver}smp
126 %defattr(644,root,root,755)
127 %doc README CAPABILITIES ChangeLog TODO misc scripts conf
128 %attr(755,root,root) /sbin/*
129 %dir %attr(750,root,root) %{_sysconfdir}/capsel
130 %attr(754,root,root) /etc/rc.d/init.d/capsel
131 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/capsel/*
133 %files -n kernel-misc-capsel
134 %defattr(644,root,root,755)
135 /lib/modules/%{_kernel_ver}/misc/*
137 %files -n kernel-smp-misc-capsel
138 %defattr(644,root,root,755)
139 /lib/modules/%{_kernel_ver}smp/misc/*