]> git.pld-linux.org Git - packages/CapOver.git/blob - CapOver.spec
5383772ffd1c7ef2a482abaa96df5bdc020a7752
[packages/CapOver.git] / CapOver.spec
1 #
2 # Conditional build:
3 %bcond_without  dist_kernel     # without distribution kernel
4 %bcond_without  kernel          # don't build kernel modules
5 %bcond_without  up              # don't build UP module
6 %bcond_without  smp             # don't build SMP module
7 %bcond_without  userspace       # don't build userspace module
8 #
9 %define rel     1
10 Summary:        Capability Override LSM
11 Summary(pl.UTF-8):      Moduł LSM Capability Override
12 Name:           CapOver
13 Version:        0.9.3
14 Release:        %{rel}
15 License:        GPL
16 Group:          Base/Kernel
17 Source0:        http://files.randombit.net/cap_over/%{name}-%{version}.tgz
18 # Source0-md5:  971e50c1abaa97ee4a9958e92dd88300
19 URL:            http://www.randombit.net/projects/cap_over/
20 %{?with_dist_kernel:BuildRequires:      kernel-module-build >= 3:2.6.0}
21 BuildRequires:  rpmbuild(macros) >= 1.153
22 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
23
24 %description
25 The Capability Override LSM, is a kernel module which gives the
26 ability to specify that certain users/groups/programs are to gain
27 access to one or more extra capabilities. This means this LSM is a
28 permissive module, rather than a restrictive one (which is more
29 typical of LSMs).
30
31 %description -l pl.UTF-8
32 Capability Override LSM to moduł jądra dający możliwość określenia
33 pewnych użytkowników/grup/programów mogących mieć dostęp do jednego
34 lub większej liczby uprawnień (capabilities). Oznacza to, że ten LSM
35 jest modułem zezwalającym, a nie restrykcyjnym (co jest bardziej
36 typowe dla LSM).
37
38 %package -n kernel%{_alt_kernel}-misc-cap_over
39 Summary:        cap_over kernel module
40 Summary(pl.UTF-8):      Moduł jądra cap_over
41 Release:        %{rel}@%{_kernel_ver_str}
42 Group:          Base/Kernel
43 %{?with_dist_kernel:%requires_releq_kernel_up}
44 Requires(post,postun):  /sbin/depmod
45 Requires:       CapOver
46
47 %description -n kernel%{_alt_kernel}-misc-cap_over
48 cap_over kernel module.
49
50 %description -n kernel%{_alt_kernel}-misc-cap_over -l pl.UTF-8
51 Moduł jądra cap_over.
52
53 %package -n kernel%{_alt_kernel}-smp-misc-cap_over
54 Summary:        cap_over SMP kernel module
55 Summary(pl.UTF-8):      Moduł SMP jądra cap_over
56 Release:        %{rel}@%{_kernel_ver_str}
57 Group:          Base/Kernel
58 %{?with_dist_kernel:%requires_releq_kernel_smp}
59 Requires(post,postun):  /sbin/depmod
60 Requires:       CapOver
61
62 %description -n kernel%{_alt_kernel}-smp-misc-cap_over
63 cap_over SMP kernel module.
64
65 %description -n kernel%{_alt_kernel}-smp-misc-cap_over -l pl.UTF-8
66 Moduł SMP jądra cap_over.
67
68 %prep
69 %setup -q
70
71 %build
72 %if %{with kernel}
73 %configure \
74         --with-linux="%{_kernelsrcdir}"
75
76 for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
77         if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
78                 exit 1
79         fi
80         install -d o/include/linux
81         ln -sf %{_kernelsrcdir}/config-$cfg o/.config
82         ln -sf %{_kernelsrcdir}/Module.symvers-$cfg Module.symvers
83         ln -sf %{_kernelsrcdir}/include/linux/autoconf-${cfg}.h o/include/linux/autoconf.h
84 %if %{with dist_kernel}
85         %{__make} -j1 -C %{_kernelsrcdir} O=$PWD/o prepare scripts
86 %else
87         install -d o/include/config
88         touch o/include/config/MARKER
89         ln -sf %{_kernelsrcdir}/scripts o/scripts
90 %endif
91         %{__make} -C %{_kernelsrcdir} clean \
92                 RCS_FIND_IGNORE="-name '*.ko' -o" \
93                 SYSSRC=%{_kernelsrcdir} \
94                 SYSOUT=$PWD/o \
95                 M=$PWD O=$PWD/o \
96                 %{?with_verbose:V=1}
97         %{__make} -C %{_kernelsrcdir} modules \
98                 CC="%{__cc}" CPP="%{__cpp}" \
99                 SYSSRC=%{_kernelsrcdir} \
100                 SYSOUT=$PWD/o \
101                 M=$PWD O=$PWD/o \
102                 %{?with_verbose:V=1}
103
104         mv cap_over{,-$cfg}.ko
105 done
106 %endif
107
108 %install
109 rm -rf $RPM_BUILD_ROOT
110
111 %if %{with kernel}
112 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc
113 install cap_over-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
114                 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/cap_over.ko
115 %if %{with smp} && %{with dist_kernel}
116 install cap_over-smp.ko \
117                 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/cap_over.ko
118 %endif
119 %endif
120
121 %if %{with userspace}
122 install -d $RPM_BUILD_ROOT/sbin
123 install policy.pl $RPM_BUILD_ROOT/sbin
124 %endif
125
126 %clean
127 rm -rf $RPM_BUILD_ROOT
128
129 %post   -n kernel%{_alt_kernel}-misc-cap_over
130 %depmod %{_kernel_ver}
131
132 %postun -n kernel%{_alt_kernel}-misc-cap_over
133 %depmod %{_kernel_ver}
134
135 %post   -n kernel%{_alt_kernel}-smp-misc-cap_over
136 %depmod %{_kernel_ver}smp
137
138 %postun -n kernel%{_alt_kernel}-smp-misc-cap_over
139 %depmod %{_kernel_ver}smp
140
141 %if %{with userspace}
142 %files
143 %defattr(644,root,root,755)
144 %doc readme.txt doc/[e-t]*
145 %attr(755,root,root) /sbin/policy.pl
146 %endif
147
148 %if %{with kernel}
149 %if %{with up} || %{without dist_kernel}
150 %files -n kernel%{_alt_kernel}-misc-cap_over
151 %defattr(644,root,root,755)
152 /lib/modules/%{_kernel_ver}/misc/*
153 %endif
154
155 %if %{with smp} && %{with dist_kernel}
156 %files -n kernel%{_alt_kernel}-smp-misc-cap_over
157 %defattr(644,root,root,755)
158 /lib/modules/%{_kernel_ver}smp/misc/*
159 %endif
160 %endif
This page took 0.141813 seconds and 3 git commands to generate.