packaging: Fix wrong package Summary
[platform/kernel/linux-tizen-modules.git] / packaging / linux-tizen-modules.spec
1 %define KMOD_PATH /lib/modules
2 %define KMOD_PATH_TM1 /boot/kernel/mod_tizen_tm1/lib/modules
3
4 %ifarch aarch64
5 %define buildarch arm64
6 %endif
7 %ifarch %{arm}
8 %define buildarch arm
9 %endif
10 %ifarch riscv64
11 %define buildarch riscv
12 %endif
13
14 Name:           linux-tizen-modules
15 Version:        7.5.0
16 Release:        0
17 License:        GPL-2.0+
18 Source0:        %{name}-%{version}.tar.xz
19 Source1:        %{name}.manifest
20 Summary:        Tizen-specific kernel modules
21 Group:          System/Kernel
22 ExclusiveArch:  %{arm} aarch64 riscv64
23 BuildRequires:  kmod
24 BuildRequires:  linux-tizen-modules-source
25 %ifarch aarch64
26 BuildRequires:  kernel-devel-exynos9110-tw3
27 BuildRequires:  %{buildarch}-rpi4-linux-kernel-devel
28 BuildRequires:  %{buildarch}-rpi4-rt-linux-kernel-devel
29 %endif
30 %ifarch %{arm}
31 BuildRequires:  kernel-devel-3.10-sc7730
32 BuildRequires:  %{buildarch}-rpi4-linux-kernel-devel
33 BuildRequires:  %{buildarch}-rpi4-rt-linux-kernel-devel
34 %endif
35 %ifarch riscv64
36 BuildRequires: riscv-qemu-linux-kernel-devel
37 BuildRequires: riscv-visionfive2-linux-kernel-devel
38 %endif
39 %description
40
41 %ifarch %{arm} aarch64
42 %package        rpi4
43 Summary:        Tizen modules for RaspberryPI 4
44 AutoReqProv:    no
45 Requires:       %{buildarch}-rpi4-linux-kernel-modules
46 Requires(post): bash
47 Requires(post): coreutils
48 Requires(post): findutils
49 Requires(post): kmod-compat
50 Provides:       stability-monitor-kernel-module
51 %description    rpi4
52
53 %package        rpi4-rt
54 Summary:        Tizen modules for RaspberryPI 4 RT (real-time)
55 AutoReqProv:    no
56 Requires:       %{buildarch}-rpi4-rt-linux-kernel-modules
57 Requires(post): bash
58 Requires(post): coreutils
59 Requires(post): findutils
60 Requires(post): kmod-compat
61 Provides:       stability-monitor-kernel-module
62 %description    rpi4-rt
63 %endif
64
65 %ifarch aarch64
66 %package        tw3
67 Summary:        Tizen modules for TW3
68 AutoReqProv:    no
69 Provides:       stability-monitor-kernel-module
70 %description    tw3
71 %endif
72
73 %ifarch %{arm}
74 %package        tm1
75 Summary:        Tizen modules for TM1
76 Requires:       linux-3.10-sc7730_tizen_tm1
77 AutoReqProv:    no
78 Requires(post): bash
79 Requires(post): coreutils
80 Requires(post): findutils
81 Requires(post): kmod-compat
82 %description    tm1
83 %endif
84
85 %ifarch riscv64
86 %package        rv64qemu
87 Summary:        Tizen modules for RISCV QEMU
88 Requires:       %{buildarch}-qemu-linux-kernel-modules
89 AutoReqProv:    no
90 Requires(post): bash
91 Requires(post): coreutils
92 Requires(post): findutils
93 Requires(post): kmod-compat
94 %description    rv64qemu
95
96 %package        visionfive2
97 Summary:        Tizen modules for VisionFive2
98 Requires:       %{buildarch}-visionfive2-linux-kernel-modules
99 AutoReqProv:    no
100 Requires(post): bash
101 Requires(post): coreutils
102 Requires(post): findutils
103 Requires(post): kmod-compat
104 %description    visionfive2
105 %endif
106
107 %prep
108 %setup -q
109 cp %{SOURCE1} ./%{name}.manifest
110 cp -a /usr/src/linux-tizen-modules-source ./kernel
111
112 %build
113 # Force not to build with sanitizers because this is kernel
114 %{?asan:/usr/bin/gcc-unforce-options}
115 %{?ubsan:/usr/bin/gcc-unforce-options}
116
117 export BUILD_logger=m
118 # Default buffer sizes to compile in. [kB]
119 export LOGGER_MAIN_BUFFER_SIZE=256
120 export LOGGER_EVENTS_BUFFER_SIZE=256
121 export LOGGER_RADIO_BUFFER_SIZE=256
122 export LOGGER_SYSTEM_BUFFER_SIZE=256
123
124 export BUILD_proc_tsm=m
125 export BUILD_kdbus=m
126 export BUILD_zlogger=m
127
128 %ifarch %{arm} aarch64
129 make -C kernel clean KERNELDIR=/boot/kernel/devel/kernel-devel-%{buildarch}-rpi4
130 make -C kernel KERNELDIR=/boot/kernel/devel/kernel-devel-%{buildarch}-rpi4
131 make -C kernel modules_install KERNELDIR=/boot/kernel/devel/kernel-devel-%{buildarch}-rpi4 INSTALL_MOD_STRIP=1
132
133 make -C kernel clean KERNELDIR=/boot/kernel/devel/kernel-devel-%{buildarch}-rpi4-rt
134 make -C kernel KERNELDIR=/boot/kernel/devel/kernel-devel-%{buildarch}-rpi4-rt
135 make -C kernel modules_install KERNELDIR=/boot/kernel/devel/kernel-devel-%{buildarch}-rpi4-rt INSTALL_MOD_STRIP=1
136 %endif
137
138 export BUILD_kdbus=n
139
140 %ifarch aarch64
141 make -C kernel clean KERNELDIR=/boot/kernel/devel/kernel-devel-tw3
142 make -C kernel KERNELDIR=/boot/kernel/devel/kernel-devel-tw3
143 make -C kernel modules_install KERNELDIR=/boot/kernel/devel/kernel-devel-tw3 INSTALL_MOD_STRIP=1
144 %endif
145
146 export BUILD_proc_tsm=n
147
148 %ifarch %{arm}
149 make -C kernel clean KERNELDIR=/boot/kernel/devel/kernel-devel-tizen_tm1
150 make -C kernel KERNELDIR=/boot/kernel/devel/kernel-devel-tizen_tm1
151 make -C kernel modules_install KERNELDIR=/boot/kernel/devel/kernel-devel-tizen_tm1 INSTALL_MOD_STRIP=1
152 %endif
153
154 %ifarch riscv64
155 make -C kernel clean KERNELDIR=/boot/kernel/devel/kernel-devel-riscv-qemu
156 make -C kernel KERNELDIR=/boot/kernel/devel/kernel-devel-riscv-qemu
157 make -C kernel modules_install KERNELDIR=/boot/kernel/devel/kernel-devel-riscv-qemu INSTALL_MOD_STRIP=1
158
159 make -C kernel clean KERNELDIR=/boot/kernel/devel/kernel-devel-riscv-visionfive2
160 make -C kernel KERNELDIR=/boot/kernel/devel/kernel-devel-riscv-visionfive2
161 make -C kernel modules_install KERNELDIR=/boot/kernel/devel/kernel-devel-riscv-visionfive2 INSTALL_MOD_STRIP=1
162 %endif
163
164 %install
165 mkdir -p %{buildroot}/%{KMOD_PATH}
166
167 pushd lib/modules
168 find -name "*.ko" -exec cp -a --parents {} %{buildroot}/%{KMOD_PATH}/ \;
169 popd
170
171 %ifarch %{arm} aarch64
172 # module load config
173 mkdir -p %{buildroot}/%{KMOD_PATH}/modprobe.d
174 install -m 644 conf/tizen-modprobe-rpi4.conf %{buildroot}/%{KMOD_PATH}/modprobe.d
175
176 mkdir -p %{buildroot}/%{KMOD_PATH}/modules-load.d
177 install -m 644 conf/tizen-modules-rpi4.conf %{buildroot}/%{KMOD_PATH}/modules-load.d
178 %endif
179
180 %ifarch aarch64
181 mkdir -p %{buildroot}/aarch64/modules
182 mv %{buildroot}/%{KMOD_PATH}/4.9.59 %{buildroot}/aarch64/modules/
183
184 mkdir -p %{buildroot}/aarch64/modules/modprobe.d
185 install -m 644 conf/tizen-modprobe-tw3.conf %{buildroot}/aarch64/modules/modprobe.d
186
187 mkdir -p %{buildroot}/aarch64/modules/modules-load.d
188 install -m 644 conf/tizen-modules-tw3.conf %{buildroot}/aarch64/modules/modules-load.d
189 %endif
190
191 %ifarch %{arm}
192 mkdir -p %{buildroot}/%{KMOD_PATH_TM1}/modules-load.d
193 install -m 644 conf/tizen-modules-tm1.conf %{buildroot}/%{KMOD_PATH_TM1}/modules-load.d
194 mv -v %{buildroot}/%{KMOD_PATH}/*3.10* %{buildroot}/%{KMOD_PATH_TM1}
195 %endif
196
197 %clean
198 rm -rf %{buildroot}
199 rm -rf %{_builddir}/%{name}-%{version}/lib
200
201 %ifarch %{arm} aarch64
202 %post rpi4
203 RELEASEVERSION=$(basename $(dirname `find /lib/modules -name extra | head -1`))
204 /sbin/depmod -a $RELEASEVERSION
205
206 %post rpi4-rt
207 RELEASEVERSION=$(basename $(dirname `find /lib/modules -name extra | head -1`))
208 /sbin/depmod -a $RELEASEVERSION
209 %endif
210
211 %ifarch %{arm}
212 %post tm1
213 KMOD_PATH_TM1=%{KMOD_PATH_TM1}
214 KMOD_BASEPATH=${KMOD_PATH_TM1%%%{KMOD_PATH}}
215 RELEASEVERSION=$(basename $(dirname `find $KMOD_PATH_TM1 -name extra | head -1`))
216 /sbin/depmod -b ${KMOD_BASEPATH} -a $RELEASEVERSION
217 %endif
218
219 %ifarch %{arm} aarch64
220 %files rpi4
221 %manifest %{name}.manifest
222 %license COPYING
223 %ifarch aarch64
224 %{KMOD_PATH}/*rpi4-v8/extra/proc-tsm.ko
225 %{KMOD_PATH}/*rpi4-v8/extra/kdbus/kdbus.ko
226 %{KMOD_PATH}/*rpi4-v8/extra/logger.ko
227 %{KMOD_PATH}/*rpi4-v8/extra/zlogger/zlogger.ko
228 %else
229 %{KMOD_PATH}/*rpi4-v7l/extra/proc-tsm.ko
230 %{KMOD_PATH}/*rpi4-v7l/extra/kdbus/kdbus.ko
231 %{KMOD_PATH}/*rpi4-v7l/extra/logger.ko
232 %{KMOD_PATH}/*rpi4-v7l/extra/zlogger/zlogger.ko
233 %endif
234 %{KMOD_PATH}/modprobe.d/tizen-modprobe-rpi4.conf
235 %{KMOD_PATH}/modules-load.d/tizen-modules-rpi4.conf
236
237 %files rpi4-rt
238 %manifest %{name}.manifest
239 %license COPYING
240 %ifarch aarch64
241 %{KMOD_PATH}/*rpi4-rt-v8/extra/proc-tsm.ko
242 %{KMOD_PATH}/*rpi4-rt-v8/extra/kdbus/kdbus.ko
243 %{KMOD_PATH}/*rpi4-rt-v8/extra/logger.ko
244 %{KMOD_PATH}/*rpi4-rt-v8/extra/zlogger/zlogger.ko
245 %else
246 %{KMOD_PATH}/*rpi4-rt-v7l/extra/proc-tsm.ko
247 %{KMOD_PATH}/*rpi4-rt-v7l/extra/kdbus/kdbus.ko
248 %{KMOD_PATH}/*rpi4-rt-v7l/extra/logger.ko
249 %{KMOD_PATH}/*rpi4-rt-v7l/extra/zlogger/zlogger.ko
250 %endif
251 %{KMOD_PATH}/modprobe.d/tizen-modprobe-rpi4.conf
252 %{KMOD_PATH}/modules-load.d/tizen-modules-rpi4.conf
253 %endif
254
255 %ifarch aarch64
256 %files tw3
257 %manifest %{name}.manifest
258 %license COPYING
259 /aarch64/modules/4.9.59/extra/proc-tsm.ko
260 /aarch64/modules/4.9.59/extra/logger.ko
261 /aarch64/modules/4.9.59/extra/zlogger/zlogger.ko
262 /aarch64/modules/modprobe.d/tizen-modprobe-tw3.conf
263 /aarch64/modules/modules-load.d/tizen-modules-tw3.conf
264 %endif
265
266 %ifarch %{arm}
267 %files tm1
268 %manifest %{name}.manifest
269 %license COPYING
270 %{KMOD_PATH_TM1}/*3.10*/extra/logger.ko
271 %{KMOD_PATH_TM1}/*3.10*/extra/zlogger/zlogger.ko
272 %{KMOD_PATH_TM1}/modules-load.d/tizen-modules-tm1.conf
273 %endif
274
275 %ifarch riscv64
276 %files rv64qemu
277 %manifest %{name}.manifest
278 %license COPYING
279 %{KMOD_PATH}/*-riscv-qemu/extra/logger.ko
280 %{KMOD_PATH}/*-riscv-qemu/extra/zlogger/zlogger.ko
281
282 %files visionfive2
283 %manifest %{name}.manifest
284 %license COPYING
285 %{KMOD_PATH}/*-riscv-visionfive2/extra/logger.ko
286 %{KMOD_PATH}/*-riscv-visionfive2/extra/zlogger/zlogger.ko
287 %endif