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
openSUSE Build Service is sponsored by