Added Rob's dependency generation script

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@223 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Björn Stenberg 2002-04-25 08:06:38 +00:00
parent 8c0a6010bb
commit 6365574ea0

View file

@ -19,53 +19,64 @@
TARGET = rockboxui TARGET = rockboxui
FIRMWAREDIR=../firmware FIRMWAREDIR = ../firmware
DRIVERS=$(FIRMWAREDIR)/drivers DRIVERS = $(FIRMWAREDIR)/drivers
CC = gcc CC = gcc
RM = rm RM = rm -f
DEBUG = -g
CFLAGS = -g DEFINES = -DHAVE_CONFIG_H -DGETTIMEOFDAY_TWO_ARGS -DSIMULATOR -DHAVE_LCD_BITMAP
CPPFLAGS = -DHAVE_CONFIG_H -DGETTIMEOFDAY_TWO_ARGS -DSIMULATOR -DHAVE_LCD_BITMAP -I$(FIRMWAREDIR)
LDFLAGS = -lX11 -lm -lXt -lXmu -lnsl LDFLAGS = -lX11 -lm -lXt -lXmu -lnsl
UNAME := $(shell uname) UNAME := $(shell uname)
ifeq ($(UNAME),Linux) ifeq ($(UNAME),Linux)
INCLUDES = -I/usr/X11R6/include -I$(DRIVERS) INCLUDES = -I/usr/X11R6/include -I$(DRIVERS) -I$(FIRMWAREDIR)
LIBDIRS = -L/usr/X11R6/lib LIBDIRS = -L/usr/X11R6/lib
else else
INCLUDES = INCLUDES = -I$(FIRMWAREDIR)
LIBDIRS = LIBDIRS =
endif endif
OBJS= screenhack.o uibasic.o resources.o visual.o lcd.o lcd-x11.o button-x11.o chartables.o tetris.o CFLAGS = $(DEBUG) $(DEFINES) $(INCLUDES)
SRCS = $(OBJS:%.o=%.c) #SRCS = $(wildcard *.c)
HDRS = $(OBJS:%.o=%.h)
SRCS = screenhack.c uibasic.c resources.c visual.c lcd.c lcd-x11.c \
button-x11.c chartables.c tetris.c
OBJS := $(SRCS:c=o)
all: $(TARGET) all: $(TARGET)
clean: clean:
$(RM) -f $(OBJS) *~ core $(TARGET) $(CLIENTS) $(RM) $(OBJS) *~ core $(TARGET) $(CLIENTS)
$(RM) -r $(DEPS)
distclean: clean distclean: clean
$(RM) config.cache $(RM) config.cache
lcd.o: $(DRIVERS)/lcd.c lcd.o: $(DRIVERS)/lcd.c
$(CC) $(CPPFLAGS) $(INCLUDES) $(CFLAGS) -c $< -o $@ $(CC) $(CFLAGS) -c $< -o $@
chartables.o: $(FIRMWAREDIR)/chartables.c chartables.o: $(FIRMWAREDIR)/chartables.c
$(CC) $(CPPFLAGS) $(INCLUDES) $(CFLAGS) -c $< -o $@ $(CC) $(CFLAGS) -c $< -o $@
.c.o: .c.o:
$(CC) $(CPPFLAGS) $(INCLUDES) $(CFLAGS) -c $< $(CC) $(CFLAGS) -c $<
$(TARGET): $(OBJS) $(TARGET): $(OBJS)
$(CC) -o $(TARGET) $(LIBDIRS) $(LDFLAGS) $(OBJS) $(CC) -o $(TARGET) $(LIBDIRS) $(LDFLAGS) $(OBJS)
DEPS:=.deps
lcd-x11.o: lcd-x11.c screenhack.h config.h resources.h visual.h lcd-x11.h $(DEPS)/%.d: %.c
resources.o: resources.c utils.h resources.h @$(SHELL) -c 'if [ ! -d $(DEPS) ]; then \
screenhack.o: screenhack.c xmu.h screenhack.h config.h resources.h \ echo Creating the dependency directory: $(DEPS); \
visual.h version.h vroot.h mkdir $(DEPS); fi'
uibasic.o: uibasic.c screenhack.h config.h resources.h visual.h version.h @echo "Updating Dependencies for $<"
visual.o: visual.c utils.h resources.h visual.h @$(SHELL) -ec '$(CC) -MM $(CFLAGS) $< \
|sed '\''s/\($*\)\.o[ :]*/\1.o $(<:%.c=%.d) : /g'\'' > $@; \
[ -s $@ ] || rm -f $@'
-include $(SRCS:%.c=$(DEPS)/%.d)