File petitboot.spec of Package petitboot
#
# spec file for package petitboot (Version 1.0rc2)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
Name: petitboot
Version: 1.0rc2
Release: 5
Url: http://ozlabs.org/~jk/projects/petitboot/
Summary: Petitboot is a graphical bootloader for the PlayStation 3
License: GPL v2 only
BuildRequires: busybox kexec-tools libjpeg-devel libpng-devel libtwin0-devel ncurses-devel pkg-config ps3-utils
BuildRequires: dtc kernel-ps3 lilo powerpc-utils
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source0: %{name}.tar.bz2
Source1: gen-initrd.sh
Source2: extract_from_elf.c
Patch0: petitboot-handle-new-udev.patch
Patch1: petitboot-no-default-root-cmdline-parameter.patch
Patch2: petitboot-multiple-font-sizes.patch
Patch3: petitboot.mount-all-needed-blockdevs.patch
Patch4: petitboot-reorder-devices.patch
Group: System/Boot
ExclusiveArch: ppc
%description
Petitboot is a graphical bootloader for the PlayStation 3. It's based
on the existing kboot project, plus the twin windowing system for the
GUI.
Authors:
--------
jeremy kerr <jk@ozlabs.org>
%prep
%setup -n petitboot
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
#patch4 is broken
#%patch4 -p1
%build -n petitboot
./bootstrap
./configure
# make petitboot
make %{?jobs:-j%jobs} libdir=%{_libdir}
gcc -Wall -Os -s -o extract_from_elf %{S:2}
# make initrd
bash -x %{S:1} %{_lib} initrd-tmp
# make otheros.bld
/lib/lilo/scripts/make_zimage_ps3.sh \
--objdir /lib/lilo \
--vmlinux /boot/vmlinux-ps3 \
--initrd ramdisk.image.gz \
--output otheros.bld
# otheros.bld max size check
FILESIZE=$(stat -c %s `pwd`/otheros.bld)
MAXSIZE=$(( 0x3FFE00 ))
echo "otheros.bld filesize:$FILESIZE max size:$MAXSIZE size left:$(( $MAXSIZE - $FILESIZE )) "
test $FILESIZE -lt $MAXSIZE
%install
make DESTDIR=$RPM_BUILD_ROOT install sysconfdir=/etc libdir=%{_libdir}
mkdir $RPM_BUILD_ROOT/usr/share/ps3
cp otheros.bld $RPM_BUILD_ROOT/usr/share/ps3
rm $RPM_BUILD_ROOT/%{_libdir}/libpetitboot.a
%post
/sbin/ldconfig
%postun
/sbin/ldconfig
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
%dir /usr/share/petitboot
%dir /usr/share/petitboot/artwork
/usr/share/petitboot/artwork/*
%config /etc/udev/rules.d/99-petitboot.rules
/etc/udhcpc.user
/usr/sbin/petitboot*
%{_libdir}/libpetitboot*
%dir /usr/share/ps3
/usr/share/ps3/otheros.bld
%changelog
* Thu Dec 04 2008 sassmann@suse.de
- fixed petitboot 64bit-portability-issue petitboot-kexec.c:201, 203
* Tue Dec 02 2008 sassmann@suse.de
- add libgcc_s.so.1 for pthreads to work properly
- openvt needs -c switch to specify VT number to open
- add patch to mount all necessary partitions (bnc#450431)
petitboot.mount-all-needed-blockdevs.patch
* Mon Dec 01 2008 ro@suse.de
- reduce ExclusiveArch to ppc
(no ppc64 since there is no kernel-ps3 there)
* Tue Sep 30 2008 sassmann@suse.de
- added BuildRequires for ncurses-devel
* Mon Sep 01 2008 sassmann@suse.de
- switch to Geoff Levands branch which is a rework of petitboot
* Rename the original graphical petitboot application to petitboot-gui
* Conver the build to use autotools
* Rewrite or update the path related petitboot library functions.
* Cleanup kboot parser
* Cleanup native parser
* Cleanup yaboot parser
* fixes various focus behavior related bugs
- fix gen-initrd.sh library issues
* Thu Aug 07 2008 ro@suse.de
- add exclusivearch to specfile
* Thu Jul 03 2008 sassmann@suse.de
- fix gen-initrd.sh script because udev changed. udevsettle and
udevtrigger got replaced by udevadm
- add patch petitboot.new-udev-uses-udevadm.patch to replace
udevtrigger in devices.c as well
* Tue Jun 24 2008 olh@suse.de
- fix ifarch string for ppc64 (fate#304103)
- pass correct libdir to helper script
* Thu Mar 20 2008 sassmann@suse.de
- corrected kernel path in yaboot
- add ps3-utils to buildrequires
- adjusted paths in gen-initrd.sh
* Mon Mar 10 2008 olh@suse.de
- the /boot/vmlinux symlink changed to /boot/vmlinux-ps3
* Thu Jan 31 2008 sassmann@suse.de
- initial release of petitboot 0.2