661727edb0bed952c92db190df5b43f85e95e675
[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 %install
52 rm -rf %{buildroot}
53
54 # u-boot installation
55 install -m 644 -D uboot.env %{buildroot}/boot/uboot.env
56 install -m 644 -D build/riscv64/u-boot %{buildroot}/%{_libdir}/u-boot/qemu-riscv64/uboot.elf
57 install -m 644 -D build/riscv64/u-boot.bin %{buildroot}/%{_libdir}/u-boot/qemu-riscv64/u-boot.bin
58 install -m 644 -D build/riscv64_smode/u-boot %{buildroot}/%{_libdir}/u-boot/qemu-riscv64_smode/uboot.elf
59 install -m 644 -D build/riscv64_smode/u-boot.bin %{buildroot}/%{_libdir}/u-boot/qemu-riscv64_smode/u-boot.bin
60
61 %clean
62
63 %files
64 %manifest u_boot_qemu_riscv64.manifest
65 %defattr(-,root,root,-)
66 /boot/uboot.env
67 %{_libdir}/u-boot/qemu-riscv64/u-boot.bin
68 %{_libdir}/u-boot/qemu-riscv64/uboot.elf
69 %{_libdir}/u-boot/qemu-riscv64_smode/u-boot.bin
70 %{_libdir}/u-boot/qemu-riscv64_smode/uboot.elf