1## ----------------------------------------------------------------------- 2## 3## Copyright 1998-2008 H. Peter Anvin - All Rights Reserved 4## 5## This program is free software; you can redistribute it and/or modify 6## it under the terms of the GNU General Public License as published by 7## the Free Software Foundation, Inc., 53 Temple Place Ste 330, 8## Boston MA 02111-1307, USA; either version 2 of the License, or 9## (at your option) any later version; incorporated herein by reference. 10## 11## ----------------------------------------------------------------------- 12 13# 14# SYSLINUX utilities 15# 16 17VPATH = $(SRC) 18include $(MAKEDIR)/syslinux.mk 19 20CFLAGS = $(GCCWARN) -Os -fomit-frame-pointer -D_FILE_OFFSET_BITS=64 -I$(SRC) 21LDFLAGS = -O2 22 23C_TARGETS = isohybrid gethostip memdiskfind 24SCRIPT_TARGETS = mkdiskimage 25SCRIPT_TARGETS += isohybrid.pl # about to be obsoleted 26ASIS = $(addprefix $(SRC)/,keytab-lilo lss16toppm md5pass \ 27 ppmtolss16 sha1pass syslinux2ansi pxelinux-options) 28 29TARGETS = $(C_TARGETS) $(SCRIPT_TARGETS) 30 31ISOHDPFX = $(addprefix $(OBJ)/,../mbr/isohdpfx.bin ../mbr/isohdpfx_f.bin \ 32 ../mbr/isohdpfx_c.bin \ 33 ../mbr/isohdppx.bin ../mbr/isohdppx_f.bin ../mbr/isohdppx_c.bin) 34 35all: $(TARGETS) 36 37%.o: %.c 38 $(CC) $(UMAKEDEPS) $(CFLAGS) -c -o $@ $< 39 40mkdiskimage: mkdiskimage.in ../mbr/mbr.bin bin2hex.pl 41 $(PERL) $(SRC)/bin2hex.pl < $(OBJ)/../mbr/mbr.bin | cat $(SRC)/mkdiskimage.in - > $@ 42 chmod a+x $@ 43 44# Works on anything with a Perl interpreter... 45isohybrid.pl: isohybrid.in $(ISOHDPFX) bin2hex.pl 46 cp -f $(SRC)/isohybrid.in $@ 47 for f in $(ISOHDPFX) ; do $(PERL) $(SRC)/bin2hex.pl < $$f >> $@ ; done 48 chmod a+x $@ 49 50isohdpfx.c: $(ISOHDPFX) isohdpfxarray.pl 51 $(PERL) $(SRC)/isohdpfxarray.pl $(ISOHDPFX) > $@ 52 53isohybrid: isohybrid.o isohdpfx.o 54 $(CC) $(LDFLAGS) -o $@ $^ -luuid 55 56gethostip: gethostip.o 57 $(CC) $(LDFLAGS) -o $@ $^ 58 59memdiskfind: memdiskfind.o 60 $(CC) $(LDFLAGS) -o $@ $^ 61 62tidy dist: 63 rm -f *.o .*.d isohdpfx.c 64 65clean: tidy 66 rm -f $(TARGETS) 67 68spotless: clean 69 70installer: all 71 72install: installer 73 mkdir -m 755 -p $(INSTALLROOT)$(BINDIR) 74 install -m 755 $(TARGETS) $(ASIS) $(INSTALLROOT)$(BINDIR) 75 76strip: 77 $(STRIP) $(C_TARGETS) 78 79-include .*.d 80