From 12512c0b71978a06821af951259f7144160351de Mon Sep 17 00:00:00 2001 From: Chanho Park Date: Fri, 10 Jan 2014 10:48:52 +0900 Subject: [PATCH] packaging: Adding .spec file for u-boot project Change-Id: I5dd90f728a9f0f951afda5634f2509cbb3eccc95 Signed-off-by: Chanho Park Signed-off-by: Jacek Pielaszkiewicz Signed-off-by: Przemyslaw Marczak Signed-off-by: Maciej Wereski --- .gbs.conf | 3 ++ .gitignore | 1 + packaging/u-boot.spec | 112 ++++++++++++++++++++++++++++++++++++++++++++++ packaging/u_boot.manifest | 5 +++ 4 files changed, 121 insertions(+) create mode 100644 .gbs.conf create mode 100644 packaging/u-boot.spec create mode 100644 packaging/u_boot.manifest diff --git a/.gbs.conf b/.gbs.conf new file mode 100644 index 0000000..2290232 --- /dev/null +++ b/.gbs.conf @@ -0,0 +1,3 @@ +[general] +upstream_branch = upstream +upstream_tag = v${upstreamversion} diff --git a/.gitignore b/.gitignore index 33abbd3..750a1a8 100644 --- a/.gitignore +++ b/.gitignore @@ -39,6 +39,7 @@ # # git files that we don't want to ignore even it they are dot-files # +!.gbs.conf !.gitignore !.mailmap diff --git a/packaging/u-boot.spec b/packaging/u-boot.spec new file mode 100644 index 0000000..871c167 --- /dev/null +++ b/packaging/u-boot.spec @@ -0,0 +1,112 @@ +Name: u-boot +Version: 2014.04 +Release: 1%{?dist} +Summary: Das U-Boot - Tizen bootloader +Group: System/Kernel +License: GPL-2.0+ +ExclusiveArch: %{arm} +URL: https://review.tizen.org/git/?p=kernel/u-boot.git +Source0: %{name}-%{version}.tar.bz2 +Source1001: u_boot.manifest + +BuildRequires: gcc >= 4.8 +BuildRequires: flex +BuildRequires: bison + +%description +u-boot - Tizen bootloader for Embedded boards based on ARM processor + +#TODO: Describe rpm package information depending on board +%package -n u-boot-pkg +Summary: A bootloader for Embedded system +Group: System/Kernel + +%description -n u-boot-pkg +A boot loader for embedded systems. +Das U-Boot is a cross-platform bootloader for embedded systems, +used as the default boot loader by several board vendors. It is +intended to be easy to port and to debug, and runs on many +supported architectures, including PPC, ARM, MIPS, x86, m68k, NIOS, +and Microblaze. + +%package -n u-boot-tools +Summary: Companion tools for Das U-Boot bootloader +Group: System/Kernel + +%description -n u-boot-tools +This package includes the mkimage program, which allows generation of U-Boot +images in various formats, and the fw_printenv and fw_setenv programs to read +and modify U-Boot's environment. + +%ifarch %{arm} +%global use_mmc_storage 1 +%endif + +%prep +%setup -q + +%build +cp %{SOURCE1001} . + +CONFIG=trats2_config + +make mrproper + +# Build dtc +make HOSTCC="gcc $RPM_OPT_FLAGS" -C tools/dtc + +# Set configuration +make $CONFIG + +# Build tools +make HOSTCC="gcc $RPM_OPT_FLAGS" HOSTSTRIP=/bin/true tools + +%if 1%{?use_mmc_storage} +make HOSTCC="gcc $RPM_OPT_FLAGS" CONFIG_ENV_IS_IN_MMC=y env +%else +make HOSTCC="gcc $RPM_OPT_FLAGS" env +%endif + +# Build u-boot +export PATH="$PATH:tools:tools/dtc/" +make EXTRAVERSION=`echo %{vcs} | sed 's/.*u-boot.*#\(.\{9\}\).*/-g\1-TIZEN.org/'` +# Sign u-boot-dtb.bin - output is: u-boot-mmc.bin +chmod 755 tools/mkimage_signed.sh +mkimage_signed.sh u-boot-dtb.bin $CONFIG + +# Generate params.bin +cp `find . -name "env_common.o"` copy_env_common.o +objcopy -O binary --only-section=.rodata.default_environment `find . -name "copy_env_common.o"` +tr '\0' '\n' < copy_env_common.o > default_envs.txt +mkenvimage -s 4096 -o params.bin default_envs.txt +rm copy_env_common.o default_envs.txt + +%install +rm -rf %{buildroot} + +# Tools installation +mkdir -p %{buildroot}%{_bindir} +install -p -m 0755 tools/mkimage %{buildroot}%{_bindir} +install -p -m 0755 tools/env/fw_printenv %{buildroot}%{_bindir} +( cd %{buildroot}%{_bindir}; ln -sf fw_printenv fw_setenv ) + +# u-boot installation +mkdir -p %{buildroot}/var/tmp/u-boot +install -d %{buildroot}/var/tmp/u-boot +install -m 755 u-boot.bin %{buildroot}/var/tmp/u-boot +install -m 755 u-boot-mmc.bin %{buildroot}/var/tmp/u-boot +install -m 755 params.bin %{buildroot}/var/tmp/u-boot + +%clean + +%files +%manifest u_boot.manifest +%defattr(-,root,root,-) +/var/tmp/u-boot + +%files -n u-boot-tools +%manifest u_boot.manifest +%defattr(-,root,root,-) +%{_bindir}/mkimage +%{_bindir}/fw_printenv +%{_bindir}/fw_setenv diff --git a/packaging/u_boot.manifest b/packaging/u_boot.manifest new file mode 100644 index 0000000..017d22d --- /dev/null +++ b/packaging/u_boot.manifest @@ -0,0 +1,5 @@ + + + + + -- 2.7.4