3 %bcond_without dist_kernel # without distribution kernel
5 %define _kernel24 %(echo %{_kernel_ver} | grep -q '2\.[012]\.' ; echo $?)
6 %define _orig_name capsel
9 Summary: Capsel - supports Linux-Privs security model
10 Summary(pl): Capsel - obs³uga modelu bezpieczeñstwa Linux-Privs
14 Release: %{_pre}.%{_rel}
17 Source0: http://cliph.linux.pl/capsel/capsel-%{version}%{_pre}.tar.gz
18 # Source0-md5: f886467eb458812f8ee426541c7e4e06
20 Patch0: %{name}-2.0rc2.diff
21 Patch1: %{name}-no_kernel_smp.patch
22 Patch2: %{name}-include-fix.patch
23 URL: http://cliph.linux.pl/capsel/
24 BuildRequires: %{kgcc_package}
25 BuildRequires: rpmbuild(macros) >= 1.118
26 %{?with_dist_kernel:BuildRequires: kernel-headers}
28 Requires(post,preun): /sbin/chkconfig
29 %{?with_dist_kernel:Requires: kernel(capsel)}
31 # 2.2/alpha has not necessary syscalls implemented
32 ExclusiveArch: %{ix86} ppc sparc
34 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
37 Capsel module is a small but very powerful loadable Linux kernel
38 module. Its advanced security features allows to improve overall
42 Capsel jest ma³ym, ale bardzo potê¿nym ³adowalnym modu³em dla Linuksa.
43 Jego cechy pozwalaj± zwiêkszyæ bezpieczeñstwo systemu.
45 %package -n kernel-misc-capsel
46 Summary: Capsel - supports Linux-Privs security model
47 Summary(pl): Capsel - obs³uga modelu bezpieczeñstwa Linux-Privs
48 Release: %{_rel}@%{_kernel_ver_str}
50 %{?with_dist_kernel:%requires_releq_kernel_up}
51 Requires(post,postun): /sbin/depmod
52 Provides: kernel(capsel)
54 %description -n kernel-misc-capsel
55 Capsel - kernel module.
57 %description -n kernel-misc-capsel -l pl
60 %package -n kernel-smp-misc-capsel
61 Summary: Capsel - supports Linux-Privs security model
62 Summary(pl): Capsel - obs³uga modelu bezpieczeñstwa Linux-Privs
63 Release: %{_rel}@%{_kernel_ver_str}
65 %{?with_dist_kernel:%requires_releq_kernel_smp}
66 Requires(post,postun): /sbin/depmod
67 Provides: kernel(capsel)
69 %description -n kernel-smp-misc-capsel
70 Capsel - SMP kernel module.
72 %description -n kernel-smp-misc-capsel -l pl
73 Capsel - modu³ j±dra SMP.
76 %setup -q -n %{name}-%{version}%{_pre}
84 %{__make} CC="%{kgcc} -DCONFIG_X86_LOCAL_APIC"
85 mv -f src/capsel.o bin/capsel.o
89 %{__make} CC="%{kgcc} -D__KERNEL_SMP=1 -D__SMP__ -DCONFIG_X86_LOCAL_APIC"
90 mv -f src/capsel.o bin/capselsmp.o
93 rm -rf $RPM_BUILD_ROOT
94 install -d $RPM_BUILD_ROOT{%{_sysconfdir}/{%{_orig_name},rc.d/init.d},/sbin} \
95 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{/misc,smp/misc}
97 install capsel.conf $RPM_BUILD_ROOT%{_sysconfdir}/capsel/default
98 install src/user/capsel $RPM_BUILD_ROOT/sbin/
100 install bin/capsel.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/capsel.o
101 install bin/capselsmp.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/capsel.o
103 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/capsel
106 rm -rf $RPM_BUILD_ROOT
109 /sbin/chkconfig --add capsel
110 if [ -f /var/lock/subsys/capsel ]; then
111 /etc/rc.d/init.d/capsel restart 1>&2
113 echo "Run \"/etc/rc.d/init.d/capsel start\" to start capsel."
117 if [ "$1" = "0" ]; then
118 if [ -f /var/lock/subsys/capsel ]; then
119 /etc/rc.d/init.d/capsel stop 1>&2
121 /sbin/chkconfig --del capsel
124 %post -n kernel-misc-capsel
125 %depmod %{_kernel_ver}
127 %postun -n kernel-misc-capsel
128 %depmod %{_kernel_ver}
130 %post -n kernel-smp-misc-capsel
131 %depmod %{_kernel_ver}smp
133 %postun -n kernel-smp-misc-capsel
134 %depmod %{_kernel_ver}smp
137 %defattr(644,root,root,755)
138 %doc README CAPABILITIES ChangeLog TODO misc scripts conf
139 %attr(755,root,root) /sbin/*
140 %dir %attr(750,root,root) %{_sysconfdir}/capsel
141 %attr(754,root,root) /etc/rc.d/init.d/capsel
142 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/capsel/*
144 %files -n kernel-misc-capsel
145 %defattr(644,root,root,755)
146 /lib/modules/%{_kernel_ver}/misc/*
148 %files -n kernel-smp-misc-capsel
149 %defattr(644,root,root,755)
150 /lib/modules/%{_kernel_ver}smp/misc/*