diff options
author | H. Peter Anvin <hpa@zytor.com> | 2009-05-20 02:15:01 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2009-05-20 02:24:36 -0700 |
commit | 0d82b71304d596d80f3c4520f9dcf90048ca50b7 (patch) | |
tree | 75cc3186d38587e67a34836984004f3f3e3ddb7e /core/Makefile | |
parent | f1aa00224b23e2b4c71f204c1417c7b6e5ea8e51 (diff) | |
download | syslinux-0d82b71304d596d80f3c4520f9dcf90048ca50b7.tar.gz |
core: LZO compress the PM part of the core
Use LZO to compress the PM part of the core. LZO is not the best
compression algorithm, but it is very fast, and the decompressor is
only 447 bytes long. The LZO code is part of the LZO 2.03 library.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'core/Makefile')
-rw-r--r-- | core/Makefile | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/core/Makefile b/core/Makefile index e9aec68f..04994c06 100644 --- a/core/Makefile +++ b/core/Makefile @@ -23,7 +23,7 @@ topdir = .. include $(topdir)/MCONFIG.embedded -include $(topdir)/version.mk -OPTFLAGS = +OPTFLAGS = INCLUDES = -I./include -I$(com32)/include # This is very similar to cp437; technically it's for Norway and Denmark, @@ -41,19 +41,23 @@ BTARGET = kwdhash.gen \ NASMSRC := $(wildcard *.asm) NASMHDR := $(wildcard *.inc) CSRC := $(wildcard *.c) +SSRC := $(wildcard *.S lzo/*.S) CHDR := $(wildcard *.h) OTHERSRC := keywords -ALLSRC = $(NASMSRC) $(NASMHDR) $(CSRC) $(CHDR) $(OTHERSRC) +ALLSRC = $(NASMSRC) $(NASMHDR) $(CSRC) $(SSRC) $(CHDR) $(OTHERSRC) COBJ := $(patsubst %.c,%.o,$(CSRC)) +SOBJ := $(patsubst %.S,%.o,$(SSRC)) LIB = libcore.a LIBS = $(LIB) $(com32)/lib/libcom32.a $(LIBGCC) -LIBOBJS = $(COBJ) +LIBOBJS = $(COBJ) $(SOBJ) NASMDEBUG = -g -F stabs NASMOPT += $(NASMDEBUG) +PREPCORE = ../lzo/prepcore + # The DATE is set on the make command line when building binaries for # official release. Otherwise, substitute a hex string that is pretty much # guaranteed to be unique to be unique from build to build. @@ -71,14 +75,11 @@ kwdhash.gen: keywords genhash.pl .PRECIOUS: %.elf -# Standard rule for {isolinux,isolinux-debug}.bin -iso%.bin: iso%.elf checksumiso.pl - $(OBJCOPY) -O binary $< $@ - $(PERL) checksumiso.pl $@ +%.raw: %.elf + $(OBJCOPY) -O binary $< $(@:.bin=.raw) -# Standard rule for {ldlinux,pxelinux,extlinux}.bin -%.bin: %.elf - $(OBJCOPY) -O binary $< $@ +%.bin: %.raw $(PREPCORE) + $(PREPCORE) $< $@ %.o: %.asm kwdhash.gen ../version.gen ( $(NASM) -f elf $(NASMOPT) -M -DDEPEND $(NINCLUDE) \ @@ -129,6 +130,7 @@ netinstall: installer tidy dist: rm -f codepage.cp *.o *.elf *.a stupid.* patch.offset .depend .*.d rm -f *.lsr *.lst *.map *.sec + rm -f */*.o */*.lst */.*.d rm -f $(OBSOLETE) clean: tidy @@ -137,4 +139,4 @@ spotless: clean rm -f $(BTARGET) *.bin *_bin.c # Include dependencies file --include .*.d +-include .*.d */.*.d |