diff options
author | H. Peter Anvin <hpa@zytor.com> | 2007-01-31 11:01:29 -0800 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2007-01-31 11:01:29 -0800 |
commit | e28c72aaef6fc061e932ac1dd9be83fe62f1394d (patch) | |
tree | cf1e6f571f1679e502a6818a5c3a2d2eae9f4255 | |
parent | b975c239110ad83691c6c5084a6f588e0ecffe32 (diff) | |
parent | aa4b75f7257966f14940848366fa16087debe820 (diff) | |
download | syslinux-e28c72aaef6fc061e932ac1dd9be83fe62f1394d.tar.gz |
Merge with git+ssh://master.kernel.org/pub/scm/boot/syslinux/syslinux.git#syslinux-3.3x
-rw-r--r-- | Makefile | 7 | ||||
-rw-r--r-- | Makefile.private | 6 | ||||
-rw-r--r-- | NEWS | 2 | ||||
-rw-r--r-- | TODO | 19 | ||||
-rw-r--r-- | com32/lib/MCONFIG | 2 | ||||
-rw-r--r-- | config.inc | 4 | ||||
-rw-r--r-- | memdisk/Makefile | 26 | ||||
-rw-r--r-- | memdisk/version.h | 4 | ||||
-rw-r--r-- | sample/Makefile | 6 | ||||
-rw-r--r-- | syslinux.spec.in | 14 |
10 files changed, 49 insertions, 41 deletions
@@ -38,7 +38,7 @@ PERL = perl VERSION = $(shell cat version) -.c.o: +%.o: %.c $(CC) $(INCLUDE) $(CFLAGS) -c $< # @@ -196,9 +196,8 @@ libsyslinux.a: bootsect_bin.o ldlinux_bin.o mbr_bin.o syslxmod.o $(LIB_SO): bootsect_bin.o ldlinux_bin.o syslxmod.o $(CC) $(LDFLAGS) -shared -Wl,-soname,$(LIB_SONAME) -o $@ $^ -gethostip.o: gethostip.c - gethostip: gethostip.o + $(CC) $(LDFLAGS) -o $@ $^ mkdiskimage: mkdiskimage.in mbr.bin bin2hex.pl $(PERL) bin2hex.pl < mbr.bin | cat mkdiskimage.in - > $@ @@ -264,4 +263,4 @@ klibc: -include Makefile.private # Include dependencies file --include .depend +include .depend diff --git a/Makefile.private b/Makefile.private index ddbf75b0..63a3bbdf 100644 --- a/Makefile.private +++ b/Makefile.private @@ -1,6 +1,6 @@ ## -*- makefile -*- ------------------------------------------------------ ## -## Copyright 2000-2006 H. Peter Anvin - All Rights Reserved +## Copyright 2000-2007 H. Peter Anvin - All Rights Reserved ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by @@ -20,7 +20,7 @@ PRIVATE = Makefile.private .depend */.depend GIT_DIR ?= .git -ABS_GIT_DIR := $(shell cd '$(GIT_DIR)' && pwd) +ABS_GIT_DIR := $(shell cd '$(GIT_DIR)' 2>/dev/null && pwd) -include release/Makefile.secret @@ -43,7 +43,7 @@ official: release: test -d release rm -f '$(GIT_DIR)'/refs/tags/syslinux-$(VERSION) - cg-tag syslinux-$(VERSION) + cg-tag -f syslinux-$(VERSION) -rm -rf release/syslinux-$(VERSION) -rm -f release/syslinux-$(VERSION).* cd release && env GIT_DIR='$(ABS_GIT_DIR)' cg-export -r syslinux-$(VERSION) syslinux-$(VERSION) @@ -22,6 +22,8 @@ Changes in 3.35: To install ldlinux.sys in a subdirectory, pass the -d directory option to the SYSLINUX installer. + + This work was sponsored by slax.org (thanks, Tomas!) * New API call: read disk. * Invoke ONERROR on initrd load failure. @@ -1,6 +1,6 @@ *** To do in the short term: -- PXELINUX: Figure out localboot/idle problems +- PXELINUX: Figure out localboot/idle problems. - PXELINUX: Support changing the default server and boot file prefix? @@ -10,6 +10,10 @@ - Library support for all the comboot system calls. +- Deal with non-512-byte sectors (if I can get media which does...) + +- Add support for getting the hardware address on Infinibad. + *** Future projects: @@ -17,15 +21,14 @@ - Cleaned up documentation, with a real man page. -- Subdirectory support in SYSLINUX. - - Support files that span multiple input media (SYSLINUX) -> Seems to be getting less important; floppies are dying? -- Clean up the handling of sections +- Clean up the handling of sections. + +- API call to get directory listing. + +- COM32-based CLI. -- Add "localboot" support to SYSLINUX (using the ISOLINUX feature - set.) - OBSOLETE: chain.c32 is probably better. +- Rewrite the filesystems to run in protected mode C code. -- API call to get directory listing diff --git a/com32/lib/MCONFIG b/com32/lib/MCONFIG index b542196e..39b62db1 100644 --- a/com32/lib/MCONFIG +++ b/com32/lib/MCONFIG @@ -12,7 +12,7 @@ OBJCOPY = objcopy # zlib and libpng configuration flags LIBFLAGS = -DDYNAMIC_CRC_TABLE -DPNG_NO_CONSOLE_IO \ - -FPNG_NO_WRITE_SUPPORTED \ + -DPNG_NO_WRITE_SUPPORTED \ -DPNG_NO_MNG_FEATURES \ -DPNG_NO_READ_tIME -DPNG_NO_WRITE_tIME @@ -1,6 +1,6 @@ ;; ----------------------------------------------------------------------- ;; -;; Copyright 2002-2005 H. Peter Anvin - All Rights Reserved +;; Copyright 2002-2007 H. Peter Anvin - All Rights Reserved ;; ;; This program is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by @@ -38,6 +38,6 @@ BAUD_DIVISOR equ 115200 ; Serial port parameter ; %define version_str VERSION ; Must be 4 characters long! %define date DATE_STR ; Defined from the Makefile -%define year '2005' +%define year '2007' %endif ; _CONFIG_INC diff --git a/memdisk/Makefile b/memdisk/Makefile index f628ff24..1eebe637 100644 --- a/memdisk/Makefile +++ b/memdisk/Makefile @@ -1,6 +1,6 @@ ## ----------------------------------------------------------------------- ## -## Copyright 2001-2004 H. Peter Anvin - All Rights Reserved +## Copyright 2001-2007 H. Peter Anvin - All Rights Reserved ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by @@ -19,11 +19,12 @@ M32 := $(call gcc_ok,-m32,) ALIGN := $(call gcc_ok,-falign-functions=0 -falign-jumps=0 -falign-loops=0,-malign-functions=0 -malign-jumps=0 -malign-loops=0) FREE := $(call gcc_ok,-ffreestanding,) -CC = gcc $(M32) $(FREE) -CFLAGS = -g -W -Wall -Wno-sign-compare \ +CC = gcc +CFLAGS = $(M32) $(FREE) -g -W -Wall -Wno-sign-compare \ -Os -fomit-frame-pointer -march=i386 $(ALIGN) \ -DVERSION='"$(VERSION)"' -DDATE='"$(DATE)"' -LDFLAGS = -g +SFLAGS = $(M32) -march=i386 -D__ASSEMBLY__ +LDFLAGS = $(M32) -g INCLUDE = -I../com32/include LD = ld -m elf_i386 NASM = nasm -O99 @@ -38,7 +39,7 @@ OBJS32 = start32.o setup.o msetup.o e820func.o conio.o memcpy.o memset.o \ unzip.o memdisk.o CSRC = setup.c msetup.c e820func.c conio.c unzip.c -SSRC = +SSRC = start32.S memcpy.S memset.S NASMSRC = memdisk.asm memdisk16.asm all: memdisk e820test @@ -57,10 +58,13 @@ spotless: clean $(NASM) $(NFLAGS) -f elf -l $*.lst -o $@ $< %.o: %.s - $(CC) -x assembler -c -o $@ $< + $(CC) $(SFLAGS) -c -o $@ $< + +%.o: %.S + $(CC) $(INCLUDE) $(SFLAGS) -c -o $@ $< %.o16: %.s16 - $(CC) -x assembler -c -o $@ $< + $(CC) $(SFLAGS) -x assembler -c -o $@ $< %.o: %.c $(CC) $(INCLUDE) $(CFLAGS) -c -o $@ $< @@ -69,10 +73,10 @@ spotless: clean echo '.code16gcc' | cat - $< > $@ %.s: %.S - $(CC) $(INCLUDE) $(CFLAGS) -D__ASSEMBLY__ -E -o $@ $< + $(CC) $(INCLUDE) $(SFLAGS) -E -o $@ $< %.s16: %.S16 - $(CC) $(INCLUDE) $(CFLAGS) -D__ASSEMBLY__ -E -o $@ $< + $(CC) $(INCLUDE) $(SFLAGS) -x assembler-with-cpp -E -o $@ $< %.s: %.c $(CC) $(INCLUDE) $(CFLAGS) -S -o $@ $< @@ -106,8 +110,8 @@ memdisk.o: memdisk.bin .depend: rm -f .depend - for csrc in *.c ; do $(CC) $(INCLUDE) -MM $$csrc | sed -e 's/\.o/\.s/' >> .depend ; done - for ssrc in $(SSRC) ; do $(CC) $(INCLUDE) -x c -traditional -MM $$ssrc | sed -e 's/\.S16\.o/\.o16/' >> .depend ; done + for csrc in *.c ; do $(CC) $(INCLUDE) $(CFLAGS) -MM $$csrc >> .depend ; done + for ssrc in *.S ; do $(CC) $(INCLUDE) $(SFLAGS) -MM $$ssrc >> .depend ; done for nsrc in $(NASMSRC) ; do $(NASM) -DDEPEND $(NINCLUDE) -o `echo $$nsrc | sed -e 's/\.asm/\.bin/'` -M $$nsrc >> .depend ; done depend: diff --git a/memdisk/version.h b/memdisk/version.h index 9d457388..ceca7961 100644 --- a/memdisk/version.h +++ b/memdisk/version.h @@ -1,6 +1,6 @@ /* ----------------------------------------------------------------------- * * - * Copyright 2002 H. Peter Anvin - All Rights Reserved + * Copyright 2002-2007 H. Peter Anvin - All Rights Reserved * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -20,6 +20,6 @@ #define MEMDISK_VERSION_H #define FIRSTYEAR "2001" -#define COPYYEAR "2005" +#define COPYYEAR "2007" #endif diff --git a/sample/Makefile b/sample/Makefile index b92f820b..e24ab5be 100644 --- a/sample/Makefile +++ b/sample/Makefile @@ -19,13 +19,13 @@ gcc_ok = $(shell if gcc $(1) -c -x c /dev/null -o /dev/null 2>/dev/null; \ M32 := $(call gcc_ok,-m32,) $(call gcc_ok,-ffreestanding,) -CC = gcc $(M32) +CC = gcc LD = ld -m elf_i386 AR = ar NASM = nasm RANLIB = ranlib -CFLAGS = -W -Wall -march=i386 -Os -fomit-frame-pointer -I../com32/include -SFLAGS = -march=i386 +CFLAGS = $(M32) -W -Wall -march=i386 -Os -fomit-frame-pointer -I../com32/include +SFLAGS = $(M32) -march=i386 LDFLAGS = -s OBJCOPY = objcopy PPMTOLSS16 = ../ppmtolss16 diff --git a/syslinux.spec.in b/syslinux.spec.in index d635d4f9..115a6f20 100644 --- a/syslinux.spec.in +++ b/syslinux.spec.in @@ -15,10 +15,10 @@ BuildPrereq: nasm >= 0.98.38, perl Autoreq: 0 %ifarch x86_64 Requires: mtools, libc.so.6()(64bit) -%define mflag +%define my_cc gcc %else Requires: mtools, libc.so.6 -%define mflag -m32 +%define my_cc gcc -m32 %endif # NOTE: extlinux belongs in /sbin, not in /usr/sbin, since it is typically @@ -63,9 +63,9 @@ booting in the /tftpboot directory. %setup -q -n syslinux-%{VERSION} %build -make CC='gcc %{mflag}' clean -make CC='gcc %{mflag}' installer -make CC='gcc %{mflag}' -C sample tidy +make CC='%{my_cc}' clean +make CC='%{my_cc}' installer +make CC='%{my_cc}' -C sample tidy %install rm -rf %{buildroot} @@ -74,10 +74,10 @@ mkdir -p %{buildroot}%{_sbindir} mkdir -p %{buildroot}%{_datadir}/syslinux mkdir -p %{buildroot}%{_includedir} mkdir -p %{buildroot}/boot %{buildroot}/tftpboot/pxelinux.cfg -make CC='gcc %{mflag}' install-all \ +make CC='%{my_cc}' install-all \ INSTALLROOT=%{buildroot} BINDIR=%{_bindir} SBINDIR=%{_sbindir} \ LIBDIR=%{_datadir} INCDIR=%{_includedir} -make CC='gcc %{mflag}' -C sample tidy +make CC='%{my_cc}' -C sample tidy cp mkdiskimage sys2ansi.pl keytab-lilo.pl %{buildroot}%{_datadir}/syslinux cp %{buildroot}%{_datadir}/syslinux/*.c32 %{buildroot}/boot cp %{buildroot}%{_datadir}/syslinux/memdisk %{buildroot}/boot |