uboot-tools/uboot-tools.spec
2013-06-14 09:43:10 -05:00

445 lines
14 KiB
RPMSpec

#global candidate
Name: uboot-tools
Version: 2013.04
Release: 5%{?candidate:.%{candidate}}%{?dist}
Summary: U-Boot utilities
Group: Development/Tools
License: GPLv2+
URL: http://www.denx.de/wiki/U-Boot
Source0: ftp://ftp.denx.de/pub/u-boot/u-boot-%{version}%{?candidate:-%{candidate}}.tar.bz2
Source1: uEnv.txt.beagle
Source2: uEnv.txt.beaglebone
Source3: uEnv.txt.beagle_xm
Source4: uEnv.txt.panda
Source5: uEnv.txt.panda_a4
Source6: uEnv.txt.panda_es
Source7: uEnv.txt.uevm
Patch1: u-boot-fat.patch
Patch2: uboot-omap-fit.patch
Patch3: mlo-ext.patch
Patch4: exynos-ext.patch
# Beagle Bone Black support
Patch10: 0001-beaglebone-default-to-beaglebone-black-for-unknown-E.patch
Patch11: 0002-am335x-mux-don-t-hang-on-unknown-EEPROMs-assume-Beag.patch
Patch12: 0003-beaglebone-HACK-always-return-1-for-is_bone_lt.patch
Patch13: 0004-beaglebone-HACK-raise-USB-current-limit.patch
Patch14: 0005-beaglebone-use-kloadaddr-to-avoid-copying-the-kernel.patch
Patch15: 0006-beaglebone-try-to-load-uEnv-uImage-from-eMMC-first.patch
Patch16: 0007-beaglebone-Don-t-trigger-uboot-variable-lenght-limit.patch
Patch17: 0008-beaglebone-HACK-change-mmc-order-to-avoid-u-boot-cra.patch
Patch18: 0009-beaglebone-update-bootpart-variable-after-mmc-scan.patch
Patch19: 0010-am335x_evm-enable-gpio-command.patch
Patch20: 0011-am335x_evm-HACK-to-turn-on-BeagleBone-LEDs.patch
Patch21: 0012-Fix-for-screen-rolling-when-video-played-back-in-bro.patch
Patch22: 0013-beaglebone-enable-CONFIG_SUPPORT_RAW_INITRD-option.patch
Patch23: 0014-mmc-Add-RSTN-enable-for-emmc.patch
Patch30: uboot-wandboard-quad.patch
Requires: dtc
# build the tool for manipulation with environment only on arm
%ifarch %{arm}
%global with_env 1
%endif
%description
This package contains a few U-Boot utilities - mkimage for creating boot images
and fw_printenv/fw_setenv for manipulating the boot environment variables.
%ifarch %{arm}
%package -n uboot-beagle
Summary: u-boot bootloader binaries for beagleboard
Requires: uboot-tools
%description -n uboot-beagle
u-boot bootloader binaries for beagleboard
%package -n uboot-beaglebone
Summary: u-boot bootloader binaries for beaglebone
Requires: uboot-tools
%description -n uboot-beaglebone
u-boot bootloader binaries for beaglebone
%package -n uboot-highbank
Summary: u-boot bootloader binaries for calxeda highbank
Requires: uboot-tools
BuildArch: noarch
%description -n uboot-highbank
u-boot bootloader binaries for calxeda highbank
%package -n uboot-panda
Summary: u-boot bootloader binaries for pandaboard
Requires: uboot-tools
%description -n uboot-panda
u-boot bootloader binaries for pandaboard
%package -n uboot-origen
Summary: u-boot bootloader binaries for origenboard
Requires: uboot-tools
%description -n uboot-origen
u-boot bootloader binaries for origenboard
%package -n uboot-smdkv310
Summary: u-boot bootloader binaries for smdk310 board
Requires: uboot-tools
%description -n uboot-smdkv310
u-boot bootloader binaries for smdk310 board
%package -n uboot-uevm
Summary: u-boot bootloader binaries for uevm, omap5 pandaboard
Requires: uboot-tools
%description -n uboot-uevm
u-boot bootloader binaries for uevm, omap5 pandaboard
%package -n uboot-wandboard_dl
Summary: u-boot bootloader binaries for Wandboard i.MX6 Dual Lite
Requires: uboot-tools
%description -n uboot-wandboard_dl
u-boot bootloader binaries for Wandboard i.MX6 Dual Lite
%package -n uboot-wandboard_quad
Summary: u-boot bootloader binaries for Wandboard i.MX6 Quad
Requires: uboot-tools
%description -n uboot-wandboard_quad
u-boot bootloader binaries for Wandboard i.MX6 Quad
%package -n uboot-wandboard_solo
Summary: u-boot bootloader binaries for Wandboard i.MX6 Solo
Requires: uboot-tools
%description -n uboot-wandboard_solo
u-boot bootloader binaries for Wandboard i.MX6 Solo
%package -n uboot-vexpress
Summary: u-boot bootloader binaries for vexpress
Requires: uboot-tools
BuildArch: noarch
%description -n uboot-vexpress
u-boot bootloader binaries for vexpress
%endif
%prep
%setup -q -n u-boot-%{version}%{?candidate:-%{candidate}}
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
# Beagle Bone Black support
%patch10 -p1
%patch11 -p1
%patch12 -p1
%patch13 -p1
%patch14 -p1
%patch15 -p1
%patch16 -p1
%patch17 -p1
%patch18 -p1
%patch19 -p1
%patch20 -p1
%patch21 -p1
%patch22 -p1
%patch23 -p1
%patch30 -p1
mkdir builds
%build
%ifarch %{arm}
make CROSS_COMPILE="" am335x_evm_config
make HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE=""
cp -p MLO builds/MLO.beaglebone
cp -p u-boot.img builds/u-boot.img.beaglebone
cp -p u-boot.bin builds/u-boot.bin.beaglebone
make distclean
make CROSS_COMPILE="" ca9x4_ct_vxp_config
make HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE=""
cp -p u-boot.bin builds/u-boot.bin.vexpress
make distclean
make CROSS_COMPILE="" omap3_beagle_config
make HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE=""
cp -p MLO builds/MLO.beagle
cp -p u-boot.img builds/u-boot.img.beagle
cp -p u-boot.bin builds/u-boot.bin.beagle
make distclean
make CROSS_COMPILE="" highbank_config
make HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE=""
cp -p u-boot.bin builds/u-boot.bin.highbank
make distclean
make CROSS_COMPILE="" omap4_panda_config
make HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE=""
cp -p MLO builds/MLO.panda
cp -p u-boot.img builds/u-boot.img.panda
cp -p u-boot.bin builds/u-boot.bin.panda
make distclean
make CROSS_COMPILE="" origen_config
make HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE=""
cp -p spl/origen-spl.bin builds/origen-spl.bin.origen
cp -p u-boot.bin builds/u-boot.bin.origen
make distclean
make CROSS_COMPILE="" smdkv310_config
make HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE=""
cp -p spl/smdkv310-spl.bin builds/smdkv310-spl.bin.smdkv310
cp -p u-boot.bin builds/u-boot.bin.smdkv310
make distclean
make CROSS_COMPILE="" wandboard_dl_config
make HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE=""
cp -p u-boot.imx builds/u-boot.imx.dl
make distclean
make CROSS_COMPILE="" wandboard_quad_config
make HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE=""
cp -p u-boot.imx builds/u-boot.imx.quad
make distclean
make CROSS_COMPILE="" wandboard_solo_config
make HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE=""
cp -p u-boot.imx builds/u-boot.imx.solo
make distclean
make CROSS_COMPILE="" omap5_uevm_config
make HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE=""
cp -p MLO builds/MLO.uevm
cp -p u-boot.img builds/u-boot.img.uevm
cp -p u-boot.bin builds/u-boot.bin.uevm
make distclean
%endif
make tools HOSTCC="gcc $RPM_OPT_FLAGS" HOSTSTRIP=/bin/true CROSS_COMPILE=""
%if 0%{?with_env}
make CROSS_COMPILE="" sheevaplug_config
make env HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE=""
%endif
%install
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{_bindir}
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
%ifarch %{arm}
mkdir -p $RPM_BUILD_ROOT%{_datadir}/uboot-panda/
mkdir -p $RPM_BUILD_ROOT%{_datadir}/uboot-beagle/
mkdir -p $RPM_BUILD_ROOT%{_datadir}/uboot-beaglebone/
mkdir -p $RPM_BUILD_ROOT%{_datadir}/uboot-highbank/
mkdir -p $RPM_BUILD_ROOT%{_datadir}/uboot-origen/
mkdir -p $RPM_BUILD_ROOT%{_datadir}/uboot-smdkv310/
mkdir -p $RPM_BUILD_ROOT%{_datadir}/uboot-imx6dl/
mkdir -p $RPM_BUILD_ROOT%{_datadir}/uboot-imx6quad/
mkdir -p $RPM_BUILD_ROOT%{_datadir}/uboot-imx6solo/
mkdir -p $RPM_BUILD_ROOT%{_datadir}/uboot-uevm/
mkdir -p $RPM_BUILD_ROOT%{_datadir}/uboot-vexpress/
for board in beaglebone beagle panda uevm
do
install -p -m 0644 builds/u-boot.bin.$(echo $board) $RPM_BUILD_ROOT%{_datadir}/uboot-$(echo $board)/u-boot.bin
install -p -m 0644 builds/u-boot.img.$(echo $board) $RPM_BUILD_ROOT%{_datadir}/uboot-$(echo $board)/u-boot.img
install -p -m 0644 builds/MLO.$(echo $board) $RPM_BUILD_ROOT%{_datadir}/uboot-$(echo $board)/MLO
done
install -p -m 0644 builds/u-boot.bin.highbank $RPM_BUILD_ROOT%{_datadir}/uboot-highbank/u-boot.bin
install -p -m 0644 builds/origen-spl.bin.origen $RPM_BUILD_ROOT%{_datadir}/uboot-origen/origen-spl.bin
install -p -m 0644 builds/u-boot.bin.origen $RPM_BUILD_ROOT%{_datadir}/uboot-origen/u-boot.bin
install -p -m 0644 builds/smdkv310-spl.bin.smdkv310 $RPM_BUILD_ROOT%{_datadir}/uboot-smdkv310/smdkv310-spl.bin
install -p -m 0644 builds/u-boot.bin.smdkv310 $RPM_BUILD_ROOT%{_datadir}/uboot-smdkv310/u-boot.bin
install -p -m 0644 builds/u-boot.imx.dl $RPM_BUILD_ROOT%{_datadir}/uboot-imx6dl/u-boot.bin
install -p -m 0644 builds/u-boot.imx.quad $RPM_BUILD_ROOT%{_datadir}/uboot-imx6quad/u-boot.bin
install -p -m 0644 builds/u-boot.imx.solo $RPM_BUILD_ROOT%{_datadir}/uboot-imx6solo/u-boot.bin
install -p -m 0644 builds/u-boot.bin.vexpress $RPM_BUILD_ROOT%{_datadir}/uboot-vexpress/u-boot.bin
install -p -m 0644 %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/uboot-beagle/uEnv.txt.beagle
install -p -m 0644 %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/uboot-beaglebone/uEnv.txt.beaglebone
install -p -m 0644 %{SOURCE3} $RPM_BUILD_ROOT%{_datadir}/uboot-beagle/uEnv.txt.beagle_xm
install -p -m 0644 %{SOURCE4} $RPM_BUILD_ROOT%{_datadir}/uboot-panda/uEnv.txt.panda
install -p -m 0644 %{SOURCE5} $RPM_BUILD_ROOT%{_datadir}/uboot-panda/uEnv.txt.panda_a4
install -p -m 0644 %{SOURCE6} $RPM_BUILD_ROOT%{_datadir}/uboot-panda/uEnv.txt.panda_es
install -p -m 0644 %{SOURCE7} $RPM_BUILD_ROOT%{_datadir}/uboot-uevm/uEnv.txt.uevm
%endif
install -p -m 0755 tools/mkimage $RPM_BUILD_ROOT%{_bindir}
install -p -m 0644 doc/mkimage.1 $RPM_BUILD_ROOT%{_mandir}/man1
%if 0%{?with_env}
install -p -m 0755 tools/env/fw_printenv $RPM_BUILD_ROOT%{_bindir}
( cd $RPM_BUILD_ROOT%{_bindir}; ln -sf fw_printenv fw_setenv )
install -p -m 0644 tools/env/fw_env.config $RPM_BUILD_ROOT%{_sysconfdir}
%endif
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
%doc COPYING README doc/README.imximage doc/README.kwbimage doc/uImage.FIT
%{_bindir}/mkimage
%{_mandir}/man1/mkimage.1*
%if 0%{?with_env}
%{_bindir}/fw_printenv
%{_bindir}/fw_setenv
%config(noreplace) %{_sysconfdir}/fw_env.config
%endif
%ifarch %{arm}
%files -n uboot-beaglebone
%defattr(-,root,root,-)
%{_datadir}/uboot-beaglebone/
%files -n uboot-beagle
%defattr(-,root,root,-)
%{_datadir}/uboot-beagle/
%files -n uboot-highbank
%defattr(-,root,root,-)
%{_datadir}/uboot-highbank/
%files -n uboot-panda
%defattr(-,root,root,-)
%{_datadir}/uboot-panda/
%files -n uboot-origen
%defattr(-,root,root,-)
%{_datadir}/uboot-origen/
%files -n uboot-smdkv310
%defattr(-,root,root,-)
%{_datadir}/uboot-smdkv310/
%files -n uboot-wandboard_dl
%defattr(-,root,root,-)
%{_datadir}/uboot-imx6dl/
%files -n uboot-wandboard_quad
%defattr(-,root,root,-)
%{_datadir}/uboot-imx6quad/
%files -n uboot-wandboard_solo
%defattr(-,root,root,-)
%{_datadir}/uboot-imx6solo/
%files -n uboot-uevm
%defattr(-,root,root,-)
%{_datadir}/uboot-uevm/
%files -n uboot-vexpress
%defattr(-,root,root,-)
%{_datadir}/uboot-vexpress/
%endif
%changelog
* Wed Jun 05 2013 Dennis Gilmore <dennis@ausil.us> - 2013.04-5
- add patches to support ext filesystems in exynos and omap SPL's
- drop bringing in arm-boot-config on arm systems
- build a highbank u-boot (intention is to use in qemu)
- add wandboard quad u-boot
* Wed May 22 2013 Dennis Gilmore <dennis@ausil.us> - 2013.04-4
- build vexpress image
- add uEnv.txt files for various supported omap systems
* Sat May 18 2013 Dennis Gilmore <dennis@ausil.us> - 2013.04-3
- add uevm, the omap5 based pandaboard
- Require arm-boot-config on arm arches
* Mon May 13 2013 Peter Robinson <pbrobinson@fedoraproject.org> 2013.04-2
- Add patches for initial support for the Beagle Bone Black
* Sun Apr 21 2013 Peter Robinson <pbrobinson@fedoraproject.org> 2013.04-1
- Update to 2013.04 release
- Build i.MX6 Wandboard Dual Lite and Solo Boards
* Sun Mar 31 2013 Dennis Gilmore <dennis@ausil.us> - 2013.04-0.1.rc1
- update to 2013.04-rc2
* Fri Mar 01 2013 Dennis Gilmore <dennis@ausil.us> - 2013.01.01-1
- update to 2013.01.01 for bug#907139
* Thu Jan 24 2013 Dennis Gilmore <dennis@ausil.us> - 2013.01-1
- update to 2013.01 release
* Wed Oct 17 2012 Dennis Gilmore <dennis@ausil.us> - 2012.10-1
- update to final 2012.10 release
* Thu Oct 11 2012 Mauro Carvalho Chehab <mchehab@redhat.com>
- Also generate uboot for SMDK310
* Tue Oct 09 2012 Dennis Gilmore <dennis@ausil.us> - 2012.10-0.1.rc3
- update to 2010.10 rc3
* Fri Aug 24 2012 Dennis Gilmore <dennis@ausil.us> - 2012.01-1
- update to 2012.07 release
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2012.07-0.2.rc1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Thu Jul 12 2012 Dennis Gilmore <dennis@ausil.us> - 2012.07-0.1.rc1
- update to rc1 of 2012.07 release
* Sat Jul 07 2012 Dennis Gilmore <dennis@ausil.us> - 2012.04.01-4
- still build the beagleboard image
* Sat Jul 07 2012 Dennis Gilmore <dennis@ausil.us> - 2012.04.01-3
- build beaglebone uboot images
* Mon Jun 25 2012 Dennis Gilmore <dennis@ausil.us> - 2012.04.01-2
- add patch so the MLO detects fat16 partitions correctly
* Mon May 07 2012 Dennis Gilmore <dennis@ausil.us> - 2012.04.01-1
- update to 2012.04.01 release
- http://lists.denx.de/pipermail/u-boot/2012-April/123011.html
* Tue Apr 24 2012 Dennis Gilmore <dennis@ausil.us> - 2012.04-1
- update to final 2012.04 release
* Thu Apr 19 2012 Dennis Gilmore <dennis@ausil.us> - 2012.04-0.1.rc3
- update to 2012.04-rc3
- build uboot binaries for beagle, panda and origen boards
* Thu Mar 08 2012 Dennis Gilmore <dennis@ausil.us> - 2011.12-1
- update to 2011.12 release
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2011.03-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Thu Apr 14 2011 Dan Horák <dan[at]danny.cz> - 2011.03-1
- updated to to 2011.03
- build the tool for manipulation with environment only on arm
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2010.03-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Thu May 27 2010 Dan Horák <dan[at]danny.cz> 2010.03-1
- updated to to 2010.03
- applied review feedback - added docs and expanded description
- pass proper CFLAGS to the compiler
* Sat Nov 14 2009 Dan Horák <dan[at]danny.cz> 2009.08-1
- initial Fedora version