packaging: install boot.scr.uimg for QEMU
[platform/kernel/u-boot.git] / packaging / u-boot-qemu-riscv64.spec
1 Name: u-boot-qemu-riscv64
2 Version: 2022.10
3 Release: 0
4 Summary: Das U-Boot - Tizen bootloader
5 Group: System/Kernel
6 License: GPL-2.0+
7 ExclusiveArch: riscv64
8 URL: https://source.denx.de/u-boot/u-boot.git
9 Source0: u-boot-%{version}.tar.bz2
10 Source1001: u_boot_qemu_riscv64.manifest
11
12 BuildRequires: gcc >= 6.0
13 BuildRequires: bc
14 BuildRequires: flex
15 BuildRequires: bison
16 BuildRequires: pkgconfig(openssl3)
17 BuildRequires: opensbi
18 BuildRequires: python3-devel
19 BuildRequires: swig
20 BuildRequires: python3-setuptools
21 BuildRequires: u-boot-tools
22
23 %description
24 Tizen bootloader for QEMU emulating RISC-V
25
26 %prep
27 %setup -q -n u-boot-%{version}
28
29 %build
30 %{?asan:/usr/bin/gcc-unforce-options}
31 cp %{SOURCE1001} .
32
33 for c in riscv64 riscv64_smode; do
34         CONFIG=qemu-${c}_defconfig
35
36         # Set configuration
37         make O=./build/${c} $CONFIG
38
39         make O=./build/${c} %{?_smp_mflags} HOSTCC="gcc $RPM_OPT_FLAGS" \
40                 DTC=/usr/bin/dtc \
41                 OPENSBI=/platform/generic/firmware/fw_dynamic.bin \
42                 EXTRAVERSION=`echo %{vcs} | sed 's/.*u-boot.*#\(.\{9\}\).*/-g\1-TIZEN.org/'` \
43                 u-boot.bin
44 done
45
46 ## Generate uboot.env
47 ./scripts/get_default_envs.sh build/riscv64 > default_envs.txt
48 ./build/riscv64/tools/mkenvimage -s 16384 -o uboot.env default_envs.txt
49 rm default_envs.txt
50
51 # Build boot.scr
52 mkimage -A riscv -T script -C none -n "Tizen QEMU RISC-V Script" -d ./tizen/bootscript/tizen-boot-vf2.scr ./boot.scr.uimg
53
54 %install
55 rm -rf %{buildroot}
56
57 # u-boot installation
58 install -m 644 -D uboot.env %{buildroot}/boot/uboot.env
59 install -m 644 -D boot.scr.uimg %{buildroot}/boot/boot.scr.uimg
60 install -m 644 -D build/riscv64/u-boot %{buildroot}/%{_libdir}/u-boot/qemu-riscv64/uboot.elf
61 install -m 644 -D build/riscv64/u-boot.bin %{buildroot}/%{_libdir}/u-boot/qemu-riscv64/u-boot.bin
62 install -m 644 -D build/riscv64_smode/u-boot %{buildroot}/%{_libdir}/u-boot/qemu-riscv64_smode/uboot.elf
63 install -m 644 -D build/riscv64_smode/u-boot.bin %{buildroot}/%{_libdir}/u-boot/qemu-riscv64_smode/u-boot.bin
64
65 %clean
66
67 %files
68 %manifest u_boot_qemu_riscv64.manifest
69 %defattr(-,root,root,-)
70 /boot/uboot.env
71 /boot/boot.scr.uimg
72 %{_libdir}/u-boot/qemu-riscv64/u-boot.bin
73 %{_libdir}/u-boot/qemu-riscv64/uboot.elf
74 %{_libdir}/u-boot/qemu-riscv64_smode/u-boot.bin
75 %{_libdir}/u-boot/qemu-riscv64_smode/uboot.elf