summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Bursa <james@netsurf-browser.org>2003-05-31 18:40:46 +0000
committerJames Bursa <james@netsurf-browser.org>2003-05-31 18:40:46 +0000
commit1e202c8f2af09b7a9d717885ebbe205aad5e153a (patch)
tree9146db80140277c83206537373f34826876534c5
parentdc9e7e9cdcff8006f71d7ef0c796e2637248f05f (diff)
downloadnetsurf-1e202c8f2af09b7a9d717885ebbe205aad5e153a.tar.gz
netsurf-1e202c8f2af09b7a9d717885ebbe205aad5e153a.tar.bz2
[project @ 2003-05-31 18:40:46 by bursa]
New makefile with proper dependency handling. svn path=/import/netsurf/; revision=136
-rw-r--r--makefile111
1 files changed, 45 insertions, 66 deletions
diff --git a/makefile b/makefile
index d8a9d8189..f626313ee 100644
--- a/makefile
+++ b/makefile
@@ -1,79 +1,58 @@
-# $Id: makefile,v 1.20 2003/05/23 11:08:17 bursa Exp $
+# $Id: makefile,v 1.21 2003/05/31 18:40:46 bursa Exp $
-all: !NetSurf/!RunImage,ff8
-clean:
- -rm */arm-riscos-aof/* css/parser.c css/parser.h css/scanner.c css/scanner.h
-
-setup: render/arm-riscos-aof riscos/arm-riscos-aof desktop/arm-riscos-aof \
- content/arm-riscos-aof utils/arm-riscos-aof css/arm-riscos-aof
-%/arm-riscos-aof:
- -mkdir $@
-
-FLAGS = -Wall -W -Wundef -Wpointer-arith -Wbad-function-cast -Wcast-qual \
- -Wcast-align -Wwrite-strings -Wconversion -Wstrict-prototypes -Wmissing-prototypes \
- -Wmissing-declarations -Wredundant-decls -Wnested-externs -Winline \
- -I.. -I/usr/local/riscoslibs/include \
- -Dfd_set=long -mpoke-function-name -DNETSURF_DUMP
CC = riscos-gcc
-OBJECTS = \
- content/arm-riscos-aof/cache.o content/arm-riscos-aof/content.o \
- content/arm-riscos-aof/fetch.o content/arm-riscos-aof/fetchcache.o \
- desktop/arm-riscos-aof/browser.o desktop/arm-riscos-aof/netsurf.o \
- render/arm-riscos-aof/box.o \
- render/arm-riscos-aof/html.o \
- render/arm-riscos-aof/layout.o render/arm-riscos-aof/textplain.o \
- riscos/arm-riscos-aof/font.o riscos/arm-riscos-aof/gui.o \
- riscos/arm-riscos-aof/theme.o riscos/arm-riscos-aof/jpeg.o \
- riscos/arm-riscos-aof/filetype.o utils/arm-riscos-aof/utils.o \
- riscos/arm-riscos-aof/png.o \
- css/arm-riscos-aof/css.o css/arm-riscos-aof/css_enum.o \
- css/arm-riscos-aof/parser.o css/arm-riscos-aof/scanner.o \
- css/arm-riscos-aof/ruleset.o
-HEADERS = \
- content/cache.h content/content.h content/fetch.h content/fetchcache.h \
- desktop/browser.h desktop/gui.h desktop/netsurf.h render/box.h \
- render/html.h render/layout.h \
- riscos/font.h riscos/gui.h riscos/theme.h utils/log.h \
- utils/utils.h render/textplain.h \
- css/css.h css/css_enum.h css/parser.h css/scanner.h \
- riscos/png.h
-LIBS = \
- /usr/local/riscoslibs/libxml2/libxml2.ro \
- /usr/local/riscoslibs/OSLib/OSLib32.ro \
- /usr/local/riscoslibs/curl/libcurl.ro \
- /usr/local/riscoslibs/libpng/libpng.ro \
- /usr/local/riscoslibs/zlib/libz.ro
-
-!NetSurf/!RunImage,ff8: $(OBJECTS)
- $(CC) $(FLAGS) -o !NetSurf/!RunImage,ff8 $(OBJECTS) $(LIBS)
-
-render/arm-riscos-aof/%.o: render/%.c $(HEADERS)
- $(CC) $(FLAGS) -o $@ -c $<
-
-riscos/arm-riscos-aof/%.o: riscos/%.c $(HEADERS)
- $(CC) $(FLAGS) -o $@ -c $<
-
-desktop/arm-riscos-aof/%.o: desktop/%.c $(HEADERS)
- $(CC) $(FLAGS) -o $@ -c $<
-
-content/arm-riscos-aof/%.o: content/%.c $(HEADERS)
- $(CC) $(FLAGS) -o $@ -c $<
+OBJECTS = cache.o content.o fetch.o fetchcache.o \
+ css.o css_enum.o parser.o ruleset.o scanner.o \
+ browser.o netsurf.o \
+ box.o html.o layout.o textplain.o \
+ filetype.o font.o gui.o jpeg.o png.o theme.o \
+ utils.o
+VPATH = content:css:desktop:render:riscos:utils
+WARNFLAGS = -W -Wall -Wundef -Wpointer-arith -Wbad-function-cast -Wcast-qual \
+ -Wcast-align -Wwrite-strings -Wconversion -Wstrict-prototypes \
+ -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls \
+ -Wnested-externs -Winline -Wno-unused-parameter
+CFLAGS = $(WARNFLAGS) -I.. -I/usr/local/riscoslibs/include \
+ -Dfd_set=long -mpoke-function-name
+LDFLAGS = \
+ /usr/local/riscoslibs/libxml2/libxml2.ro \
+ /usr/local/riscoslibs/OSLib/OSLib32.ro \
+ /usr/local/riscoslibs/curl/libcurl.ro \
+ /usr/local/riscoslibs/libpng/libpng.ro \
+ /usr/local/riscoslibs/zlib/libz.ro
+
+OBJDIR = $(shell $(CC) -dumpmachine)
+SOURCES=$(OBJECTS:.o=.c)
+OBJS=$(OBJECTS:%.o=$(OBJDIR)/%.o)
+
+# targets
+!NetSurf/!RunImage,ff8 : $(OBJS)
+ $(CC) -o $@ $(LDFLAGS) $^
+netsurf.zip: !NetSurf/!RunImage,ff8
+ rm netsurf.zip; riscos-zip -9vr, netsurf.zip !NetSurf
-utils/arm-riscos-aof/%.o: utils/%.c $(HEADERS)
- $(CC) $(FLAGS) -o $@ -c $<
+# pattern rule for c source
+$(OBJDIR)/%.o : %.c
+ $(CC) -o $@ -c $(CFLAGS) $(CFLAGS) $<
+# special cases
css/css_enum.c css/css_enum.h: css/css_enums css/makeenum
cd ..; /usr/bin/perl netsurf/css/makeenum netsurf/css/css_enum < netsurf/css/css_enums
-
css/parser.c: css/parser.y
-cd css; lemon parser.y
-
css/scanner.c css/scanner.h: css/scanner.l
cd css; flex scanner.l
+$(OBJDIR) :
+ -mkdir $(OBJDIR)
-css/arm-riscos-aof/%.o: css/%.c $(HEADERS)
- $(CC) $(FLAGS) -o $@ -c $<
+# generate dependencies
+depend : $(SOURCES)
+ $(CC) -MM -MG $(CFLAGS) $^ | sed 's|.*\.o:|$(OBJDIR)/& $(OBJDIR)|g' > $@
-netsurf.zip: !NetSurf/!RunImage,ff8
- rm netsurf.zip; riscos-zip -9vr, netsurf.zip !NetSurf
+# remove generated files
+clean :
+ -rm $(OBJDIR)/* depend css/css_enum.c css/css_enum.h \
+ css/parser.c css/parser.h css/scanner.c css/scanner.h
+
+include depend