]> git.tuebingen.mpg.de Git - paraslash.git/blobdiff - Makefile.in
.gitignore: Ignore the objects directory.
[paraslash.git] / Makefile.in
index 9556cff22fd2352d5c5cd98af57d2a6cff4052db..d71c0c9a2c8b34cd7cb4750b1d6f213970ce8789 100644 (file)
@@ -89,9 +89,6 @@ all: $(BINARIES) $(man_pages)
 man: $(man_pages)
 tarball: $(tarball)
 
-Makefile.deps: $(wildcard *.c *.h) $(cmdline_generated)
-       gcc -MM -MG -I$(cmdline_dir) @faad_cppflags@ @mad_cppflags@ @oggvorbis_cppflags@ *.c > $@
--include Makefile.deps
 -include $(ggo_dir)/makefile
 
 %_command_list.c: %.cmd
@@ -145,12 +142,19 @@ $(object_dir)/aac_common.o: aac_common.c | $(object_dir)
 $(object_dir)/aac_afh.o: aac_afh.c | $(object_dir)
        $(CC) -c -o $@ $(CPPFLAGS) $(DEBUG_CPPFLAGS) @faad_cppflags@ $<
 
-$(object_dir)/%.cmdline.o: $(cmdline_dir)/%.cmdline.c | $(object_dir)
+$(object_dir)/%.cmdline.o: $(cmdline_dir)/%.cmdline.c $(cmdline_dir)/%.cmdline.h | $(object_dir)
        $(CC) -c $(CPPFLAGS) -o $@ $<
 
 $(object_dir)/%.o: %.c | $(object_dir)
        $(CC) -c -o $@ $(CPPFLAGS) $(DEBUG_CPPFLAGS) $<
 
+# We depend on the *.cmdline.[ch] files as these must be present for depend.sh
+# to work. The first dependency is explititly given as it is used by $<.
+$(object_dir)/%.cmdline.d: %.cmdline.c $(cmdline_generated) | $(object_dir)
+       ./depend.sh $(object_dir) $(CPPFLAGS) $< > $@
+$(object_dir)/%.d: %.c $(cmdline_generated) | $(object_dir)
+       ./depend.sh  $(object_dir) $(CPPFLAGS) $< > $@
+
 recv_objs := $(addprefix $(object_dir)/, @recv_objs@)
 filter_objs := $(addprefix $(object_dir)/, @filter_objs@)
 client_objs := $(addprefix $(object_dir)/, @client_objs@)
@@ -162,6 +166,11 @@ server_objs := $(addprefix $(object_dir)/, @server_objs@)
 write_objs := $(addprefix $(object_dir)/, @write_objs@)
 afh_objs := $(addprefix $(object_dir)/, @afh_objs@)
 
+all_objs := $(recv_objs) $(filter_objs) $(client_objs) $(gui_objs) \
+       $(audiod_objs ) $(audioc_objs) $(fade_objs) $(server_objs) \
+       $(write_objs) $(afh_objs)
+-include $(all_objs:.o=.d)
+
 para_recv: $(recv_objs)
        $(CC) $(LDFLAGS) $(recv_objs) -o $@ @recv_ldflags@
 
@@ -193,19 +202,22 @@ para_afh: $(afh_objs)
        $(CC) $(LDFLAGS) -o $@ $(afh_objs) @afh_ldflags@
 
 clean:
-       rm -f $(BINARIES)
-       rm -f *_command_list.*
+       rm -f $(BINARIES) $(object_dir)/*.o
+
+clean2: clean
        rm -rf man $(object_dir)
-distclean: clean
+       rm -f *_command_list.*
+
+distclean: clean2
        rm -f Makefile autoscan.log config.status config.log && \
-       rm -rf cmdline autom4te.cache aclocal.m4
+       rm -rf autom4te.cache aclocal.m4
        rm -f GPATH GRTAGS GSYMS GTAGS
 
 maintainer-clean: distclean
        rm -f $(ggo_generated) *.tar.bz2 \
                config.h configure \
                config.h.in skencil/*.pdf skencil/*.ps
-       rm -rf web_sync
+       rm -rf web_sync $(cmdline_dir)
 
 install: all man
        mkdir -p $(BINDIR) $(MANDIR)