summaryrefslogtreecommitdiff
path: root/tools/make.inc
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2005-05-19 08:51:52 +0000
committerDaniel Stenberg <daniel@haxx.se>2005-05-19 08:51:52 +0000
commit1b9ea4e19cc42824e3b44f2bdfd1c149656eb8a8 (patch)
tree9414f8010eb9785dff27b660f7ebbcceb2fff079 /tools/make.inc
parent34232596e9b25bf69edb451a5f6d6366ac7912cf (diff)
downloadrockbox-1b9ea4e19cc42824e3b44f2bdfd1c149656eb8a8.tar.gz
rockbox-1b9ea4e19cc42824e3b44f2bdfd1c149656eb8a8.zip
Fixed bad dependency generation
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6490 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'tools/make.inc')
-rw-r--r--tools/make.inc18
1 files changed, 15 insertions, 3 deletions
diff --git a/tools/make.inc b/tools/make.inc
index ea9815b6d2..b5eae4430e 100644
--- a/tools/make.inc
+++ b/tools/make.inc
@@ -14,12 +14,24 @@ $(OBJDIR)/%.o: %.S
14 @echo "CC $<" 14 @echo "CC $<"
15 $(SILENT)$(CC) $(CFLAGS) -c $< -o $@ 15 $(SILENT)$(CC) $(CFLAGS) -c $< -o $@
16 16
17# the lame echo stuff down here is to prevent any compiler errors/warnings 17# The echo stuff last in the dep update shell magic is to prevent any compiler
18# to cause an error code to get returned and thus stop the build 18# errors/warnings to cause an error code to get returned and thus stop the
19# build
20#
21# This script checks for the presence of $(BUILDDIR)/lang.h and if it doesn't
22# alreay exist, it is created. This is because lots of files include this
23# *generated* file and if it doesn't exist when we generate the deps it is no
24# good. There's a -MG compiler option to cover for this case, but it doesn't
25# play nicely into this as it then adds a dependency to the lang.h file
26# without the proper path.
27#
19$(DEPFILE): $(SOURCES) 28$(DEPFILE): $(SOURCES)
20 $(SILENT)mkdir -p `dirname $(DEPFILE)` 29 $(SILENT)mkdir -p `dirname $(DEPFILE)`
21 $(SILENT)rm -f $(DEPFILE) 30 $(SILENT)rm -f $(DEPFILE)
22 $(SILENT)(for each in $(SOURCES) x; do \ 31 $(SILENT)(if test ! -f $(BUILDDIR)/lang.h; then \
32 touch $(BUILDDIR)/lang.h; \
33 fi; \
34 for each in $(SOURCES) x; do \
23 if test "x" != "$$each"; then \ 35 if test "x" != "$$each"; then \
24 obj=`echo $$each | sed -e 's/\.[cS]/.o/'`; \ 36 obj=`echo $$each | sed -e 's/\.[cS]/.o/'`; \
25 $(CC) -MM -MT "$(OBJDIR)/$$obj" $(CFLAGS) $$each >> $(DEPFILE) 2>/dev/null; \ 37 $(CC) -MM -MT "$(OBJDIR)/$$obj" $(CFLAGS) $$each >> $(DEPFILE) 2>/dev/null; \