%define name syslinux %define version 3.63 %define tftpbase /var/lib/tftpboot %define pxebase %{tftpbase}/X86PC/linux Summary: A bootloader for linux using floppies, CD Name: %{name} Version: %{version} Release: %mkrel 1 License: GPL Group: System/Kernel and hardware Source0: http://www.kernel.org/pub/linux/utils/boot/syslinux/%{name}-%{version}.tar.bz2 Source1: pxelinux-help.txt Source2: pxelinux-messages Source3: pxelinux-default Url: http://syslinux.zytor.com/ BuildRoot: %{_tmppath}/%{name}-buildroot/ BuildRequires: nasm >= 0.97, netpbm BuildRequires: libpng-source # (blino) from opensuse 3.63 Patch1: syslinux-3.63.diff Patch2: syslinux-3.20-date.patch ExclusiveArch: %{ix86} x86_64 Obsoletes: isolinux < %{version} Provides: isolinux = %{version} Conflicts: pxelinux <= 3.11-1mdk %description SYSLINUX is a boot loader for the Linux operating system which operates off an MS-DOS/Windows FAT filesystem. It is intended to simplify first-time installation of Linux, and for creation of rescue- and other special-purpose boot disks. %package -n pxelinux Summary: A PXE bootloader Group: System/Kernel and hardware Requires: syslinux %description -n pxelinux PXELINUX is a PXE bootloader. %package devel Summary: Development environment for SYSLINUX add-on modules Group: Development/Other Requires: tftp-server Requires: syslinux Conflicts: pxe < 1.4.2-8mdk Obsoletes: pxelinux-devel Provides: pxelinux-devel %description devel The SYSLINUX boot loader contains an API, called COM32, for writing sophisticated add-on modules. This package contains the libraries necessary to compile such modules. %prep %setup -q -n %{name}-%{version} %patch1 -p0 -b .gfxboot %patch2 -p1 -b .date # (blino) overwrite bundled libpng files with system one # we can't link directly with libpng.a since the com32 library # is build with a specific libc install %{_prefix}/src/libpng/*.h com32/include rm -rf com32/lib/libpng install -d com32/lib/libpng install %{_prefix}/src/libpng/*.c com32/lib/libpng %build chmod +x add_crc %make DATE="Mandriva Linux" mv isolinux.bin isolinux.bin.normal perl -pi -e 's,^(isolinux_dir.*)/isolinux,$1/x86_64/isolinux,' isolinux.asm %make DATE="Mandriva Linux" isolinux.bin mv isolinux.bin isolinux-x86_64.bin perl -pi -e 's,^(isolinux_dir.*)/x86_64/isolinux,$1/i586/isolinux,' isolinux.asm %make DATE="Mandriva Linux" isolinux.bin mv isolinux.bin isolinux-i586.bin mv isolinux.bin.normal isolinux.bin %clean rm -rf %{buildroot} %install rm -rf %{buildroot} %make install \ INSTALLROOT=%{buildroot} \ BINDIR=%{_bindir} \ SBINDIR=%{_sbindir} \ LIBDIR=%{_prefix}/lib \ MANDIR=%{_mandir} \ INCDIR=%{_includedir} mkdir -p %{buildroot}/%{_prefix}/lib/%{name}/menu cp -av menu/* %{buildroot}/%{_prefix}/lib/%{name}/menu/ cp gethostip sha1pass mkdiskimage syslinux2ansi.pl keytab-lilo.pl %{buildroot}/%{_prefix}/lib/syslinux install -d %{buildroot}%{pxebase}/pxelinux.cfg/ install -m 0644 %SOURCE1 %{buildroot}%{pxebase}/help.txt install -m 0644 %SOURCE2 %{buildroot}%{pxebase}/messages install -m 0644 %SOURCE3 %{buildroot}%{pxebase}/pxelinux.cfg/default perl -pi -e "s|VERSION|%version|g" %{buildroot}%{pxebase}/messages install -m 0644 pxelinux.0 %{buildroot}%{pxebase}/linux.0 install -m 0644 memdisk/memdisk %{buildroot}%{pxebase}/memdisk install -m 0644 isolinux-i586.bin %{buildroot}/%{_prefix}/lib/syslinux/ install -m 0644 isolinux-x86_64.bin %{buildroot}/%{_prefix}/lib/syslinux/ %files %defattr(-,root,root) %doc COPYING NEWS README README.gfxboot TODO doc/*.txt %{_bindir}/* %{_sbindir}/* %exclude %{_prefix}/lib/%{name}/com32 %exclude %{_prefix}/lib/%{name}/menu %{_prefix}/lib/%{name}/* %{_mandir}/man1/*.1* %files -n pxelinux %doc doc/pxelinux.txt %{pxebase}/*.0 %{pxebase}/memdisk %config(noreplace) %{pxebase}/messages %config(noreplace) %{pxebase}/help.txt %config(noreplace) %{pxebase}/pxelinux.cfg/default %files devel %defattr(-,root,root) %{_prefix}/lib/%{name}/com32 %{_prefix}/lib/%{name}/menu %changelog * Mon Aug 11 2008 Olivier Blin <oblin@mandriva.com> 3.63-1mdv2009.0 + Revision: 270715 - package README.gfxboot - fix doc installation - fix manpages installation - sys2ansi has been renamed syslinux2ansi - use updated gfxboot patch from opensuse - 3.63 * Wed Jun 18 2008 Thierry Vignaud <tvignaud@mandriva.com> 3.51-6mdv2009.0 + Revision: 225587 - rebuild * Wed Mar 05 2008 Oden Eriksson <oeriksson@mandriva.com> 3.51-5mdv2008.1 + Revision: 179591 - rebuild + Olivier Blin <oblin@mandriva.com> - restore BuildRoot + Thierry Vignaud <tvignaud@mandriva.com> - kill re-definition of %%buildroot on Pixel's request * Wed Aug 08 2007 Pixel <pixel@mandriva.com> 3.51-4mdv2008.0 + Revision: 60126 - move files from /usr/lib64/syslinux to /usr/lib/syslinux (since they really are no x86_64 files) * Tue Aug 07 2007 Anssi Hannula <anssi@mandriva.org> 3.51-3mdv2008.0 + Revision: 59569 - build on x86_64 as well * Wed Jul 18 2007 Erwan Velu <erwan@mandriva.org> 3.51-2mdv2008.0 + Revision: 53300 - Adding missing documentation * Wed Jul 11 2007 Olivier Blin <oblin@mandriva.com> 3.51-1mdv2008.0 + Revision: 51245 - overwrite bundled libpng files with system one (and drop patch trying to link with system one, it can't work since the com32 lib use a specific libc) - rediff gfxboot patch - 3.51 - drop vfat patch (merged upstream) * Mon Jan 29 2007 Olivier Blin <oblin@mandriva.com> 3.35-1mdv2007.0 + Revision: 114837 - 3.35 - rediff opensuse gfxboot patch * Fri Nov 17 2006 Olivier Blin <oblin@mandriva.com> 3.31-1mdv2007.1 + Revision: 85219 - rediff patch10 - update gfxboot (from OpenSuse package) - delete mime-type property - remove mime-type property - remove bzipped patches - bunzip patches - 3.31 - use system libpng not to be subject to png 1.2.8 bugs - Import syslinux * Thu Sep 21 2006 Olivier Blin <blino@mandriva.com> 3.20-3mdv2007.0 - Patch2: correctly pass DATE when running make in subdirs - remove extra backslash in DATE (#25966) * Mon Aug 28 2006 Warly <warly@mandriva.com> 3.20-2mdv2007.0 - also add a isolinux-x86_64 for x86_64 only CDs * Mon Aug 28 2006 Olivier Blin <blino@mandriva.com> 3.20-1mdv2007.0 - 3.20 - rediff Patch1 * Sat Aug 12 2006 Erwan Velu <erwan@seanodes.com> 3.11-7mdv2007.0 - Adding gethostip, sha1pass - Adding menu & libmenu to devel * Sun Aug 06 2006 Olivier Blin <blino@mandriva.com> 3.11-6mdv2007.0 - fix default pxelinux configuration installation * Fri Jul 14 2006 Warly <warly@mandriva.com> 3.11-5mdv2007.0 - revert isolinux.bin default dir - add an extra isolinux-i586.bin for dual arch CDs * Fri Jun 30 2006 Warly <warly@mandriva.com> 3.11-4mdk2007.0 - change boot dir from /isolinux to /i586/isolinux * Sat Jun 24 2006 Olivier Blin <oblin@mandriva.com> 3.11-3mdv2007.0 - reupload because of broken rpmctl that applies and (re)computes commands hours later, packages being merged meanwhile... * Fri Jun 23 2006 Olivier Blin <oblin@mandriva.com> 3.11-2mdv2007.0 - conflicts with previous pxelinux packages (thanks Pixel) * Fri Jun 23 2006 Olivier Blin <oblin@mandriva.com> 3.11-1mdv2007.0 - 3.11 - switch to Mandriva Linux - remove old 1.67 version (used for mkbootdisk only?) - drop ASM graphic patch, not maintained anymore (Patch1) - drop Patch4 (was a backport from 2.06) - rediff Patch0 - Patch1: GFX support and build fixes (CLK_TCK) (courtesy of openSUSE, thanks dudes!) - package mkdiskimage - merge back with pxelinux src package * Sat Jul 23 2005 Erwan Velu <velu@seanodes.com> 1.76-18mdk - Splitting pxelinux * Mon Feb 21 2005 Erwan Velu <velu@seanodes.com> 1.76-17mdk - Adding mkdiskimage * Wed Dec 15 2004 Erwan Velu <velu@seanodes.com> 1.76-16mdk - Add a devel package for the com32 library added in 2.12. - New pxelinux 2.13 - Removing patch5 * Thu Aug 19 2004 Erwan Velu <erwan@mandrakesoft.com> 1.76-15mdk - New pxelinux 2.11 * Thu Aug 05 2004 Olivier Blin <blino@mandrake.org> 1.76-14mdk - Patch6 for syslinux-1.76 (backport from syslinux-2.06-pre1) : Fix problem that would occationally cause a boot failure, depending on the length of the kernel * Sun Jun 20 2004 Erwan Velu <erwan@mandrakesoft.com> 1.76-13mdk - New pxelinux 2.10 - Fixing help.txt & messages - Removing patch4 * Thu May 06 2004 Erwan Velu <erwan@mandrakesoft.com> 1.76-12mdk - New pxelinux 2.09 - s/Mandrake Linux/Mandrakelinux/ - Switching from Os to O1 in memdisk