Initial code release
[external/syslinux.git] / extlinux / Makefile
1 ## -----------------------------------------------------------------------
2 ##
3 ##   Copyright 2001-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 ## Linux vfat, ext2/ext3/ext4 and btrfs installer
15 ##
16
17 topdir = ..
18 include $(topdir)/MCONFIG
19
20 OPTFLAGS = -g -Os
21 INCLUDES = -I. -I.. -I../libinstaller
22 CFLAGS   = $(GCCWARN) -Wno-sign-compare -D_FILE_OFFSET_BITS=64 \
23            $(OPTFLAGS) $(INCLUDES)
24 LDFLAGS  = # -s
25
26 SRCS     = main.c \
27            ../libinstaller/syslxmod.c \
28            ../libinstaller/syslxopt.c \
29            ../libinstaller/syslxcom.c \
30            ../libinstaller/setadv.c \
31            ../libinstaller/advio.c \
32            ../libinstaller/bootsect_bin.c \
33            ../libinstaller/ldlinux_bin.c
34 OBJS     = $(patsubst %.c,%.o,$(notdir $(SRCS)))
35
36 .SUFFIXES: .c .o .i .s .S
37
38 VPATH = .:../libinstaller
39
40 all: installer
41
42 tidy dist:
43         -rm -f *.o *.i *.s *.a .*.d *.tmp
44
45 clean: tidy
46         -rm -f extlinux
47
48 spotless: clean
49         -rm -f *~
50
51 installer: extlinux
52
53 extlinux: $(OBJS)
54         $(CC) $(LDFLAGS) -o $@ $^
55
56 %.o: %.c
57         $(CC) $(UMAKEDEPS) $(CFLAGS) -c -o $@ $<
58 %.i: %.c
59         $(CC) $(UMAKEDEPS) $(CFLAGS) -E -o $@ $<
60 %.s: %.c
61         $(CC) $(UMAKEDEPS) $(CFLAGS) -S -o $@ $<
62
63 -include .*.d *.tmp