Move automatic dependencies code out of perl code.
authorJelmer Vernooij <jelmer@samba.org>
Mon, 25 Feb 2008 17:05:47 +0000 (18:05 +0100)
committerJelmer Vernooij <jelmer@samba.org>
Fri, 29 Feb 2008 14:39:44 +0000 (15:39 +0100)
source/Makefile
source/build/smb_build/makefile.pm
source/rules.mk

index 1fddfefce3b3fcb444165d5c1f3734a022a445ad..97518ebcb695ea71f16b726b74c6d227a949e105 100644 (file)
@@ -19,11 +19,39 @@ BNLD_FLAGS = $(LDFLAGS) $(SYS_LDFLAGS)
 HOSTCC_FLAGS = -D_SAMBA_HOSTCC_ $(CFLAGS)
 HOSTLD_FLAGS = $(LDFLAGS) $(SYS_LDFLAGS)
 
-default: all
+.DEFAULT_GOAL := all
+
+ifneq ($(automatic_deps),yes)
+ALL_PREDEP = proto
+.NOTPARALLEL:
+endif
 
 include rules.mk
 include data.mk
 
+DEP_FILES = $(patsubst %.ho,%.hd,$(patsubst %.o,%.d,$(ALL_OBJS))) \
+                  include/includes.d
+
+ifeq ($(automatic_deps),yes)
+ifneq ($(MAKECMDGOALS),clean)
+ifneq ($(MAKECMDGOALS),distclean)
+ifneq ($(MAKECMDGOALS),realdistclean)
+ifneq ($(SKIP_DEP_FILES),yes)
+-include $(DEP_FILES)
+endif
+endif
+endif
+endif
+
+ifneq ($(SKIP_DEP_FILES),yes)
+clean::
+       @echo Removing dependency files
+       @find . -name '*.d' -o -name '*.hd' | xargs rm -f
+endif
+else
+include $(srcdir)/static_deps.mk
+endif
+
 DEFAULT_HEADERS = $(srcdir)/lib/util/dlinklist.h \
                  $(srcdir)/version.h
 
index c5cc3d3e8cfaced247b890c3e52a2b5975eca3a3..26f986eacf9c6f85e3f411217a6c8c2f12e92e49 100644 (file)
@@ -30,11 +30,6 @@ sub new($$$)
        $self->output("################################################\n");
        $self->output("\n");
 
-       if (!$self->{automatic_deps}) {
-               $self->output("ALL_PREDEP = proto\n");
-               $self->output(".NOTPARALLEL:\n");
-       }
-
        return $self;
 }
 
@@ -78,23 +73,17 @@ sub _prepare_mk_files($)
                push (@tmp, $_);
        }
 
-       if ($self->{gnu_make}) {
-               $self->output("
+       $self->output("
 ifneq (\$(MAKECMDGOALS),clean)
 ifneq (\$(MAKECMDGOALS),distclean)
 ifneq (\$(MAKECMDGOALS),realdistclean)
 ");
-       }
-
        $self->output("MK_FILES = " . array2oneperline(\@tmp) . "\n");
-
-       if ($self->{gnu_make}) {
-               $self->output("
+       $self->output("
 endif
 endif
 endif
 ");
-       }
 }
 
 sub array2oneperline($)
@@ -369,28 +358,6 @@ sub write($$)
 
        $self->output($self->{mkfile});
 
-       if ($self->{automatic_deps}) {
-               $self->output("
-ifneq (\$(MAKECMDGOALS),clean)
-ifneq (\$(MAKECMDGOALS),distclean)
-ifneq (\$(MAKECMDGOALS),realdistclean)
-ifneq (\$(SKIP_DEP_FILES),yes)
--include \$(DEP_FILES)
-endif
-endif
-endif
-endif
-
-ifneq (\$(SKIP_DEP_FILES),yes)
-clean::
-       \@echo Removing dependency files
-       \@find . -name '*.d' -o -name '*.hd' | xargs rm -f
-endif
-");
-       } else {
-               $self->output("include \$(srcdir)/static_deps.mk\n");
-       }
-
        open(MAKEFILE,">$file") || die ("Can't open $file\n");
        print MAKEFILE $self->{output};
        close(MAKEFILE);
index d0be997d0cd3e1e99b5bbe12068335c9b2fbd7bb..5f91f8132e98cab1d9b22f3d22e8b3f8125747d1 100644 (file)
@@ -162,9 +162,6 @@ DOCBOOK_MANPAGE_URL = http://docbook.sourceforge.net/release/xsl/current/manpage
 .8.xml.8:
        $(XSLTPROC) -o $@ $(DOCBOOK_MANPAGE_URL) $<
 
-DEP_FILES = $(patsubst %.ho,%.hd,$(patsubst %.o,%.d,$(ALL_OBJS))) \
-                  include/includes.d
-
 dist:: idl_full manpages configure distclean 
 
 configure: