r7307: Add phony rules for OUTPUT_TYPE OBJLIST, e.g. it is now possible
authorJelmer Vernooij <jelmer@samba.org>
Sun, 5 Jun 2005 13:52:11 +0000 (13:52 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:17:40 +0000 (13:17 -0500)
to do things like:

make SUBSYSTEM_NDR_RAW
(This used to be commit 2765b5a78d726ed3df177c92bc3f5efefcc78a9d)

source4/build/smb_build/makefile.pm
source4/build/smb_build/output.pm

index c024e1de53ebf0f2aea8a1e9a8685c99f9ab83cf..71067709d3e23cfc39ae5a3426760201fc78d040 100644 (file)
@@ -87,7 +87,7 @@ sub _prepare_compiler_linker($)
 
        $output = << '__EOD__';
 CC=@CC@
-CC_FLAGS=-Iinclude -I. -I$(srcdir)/include -I$(srcdir) -D_SAMBA_BUILD_ -DHAVE_CONFIG_H -Ilib @CFLAGS@ @CPPFLAGS@
+CFLAGS=-Iinclude -I. -I$(srcdir)/include -I$(srcdir) -D_SAMBA_BUILD_ -DHAVE_CONFIG_H -Ilib @CFLAGS@ @CPPFLAGS@
 
 LD=@CC@
 LD_FLAGS=@LDFLAGS@ @CFLAGS@ -Lbin
@@ -194,7 +194,7 @@ bin/.dummy:
 
 dynconfig.o: dynconfig.c Makefile
        @echo Compiling $*.c
-       @$(CC) $(CC_FLAGS) @PICFLAG@ $(PATH_FLAGS) -c $< -o $@
+       @$(CC) $(CFLAGS) @PICFLAG@ $(PATH_FLAGS) -c $< -o $@
 @BROKEN_CC@    -mv `echo $@ | sed 's%^.*/%%g'` $@
 
 __EOD__
@@ -233,7 +233,7 @@ sub _prepare_std_CC_rule($$$$$)
 # Start $comment
 .$src.$dst:
        \@echo $message \$\*.$src
-       \@\$(CC) \$(TARGET_CFLAGS) \$(CC_FLAGS) $flags -c \$< -o \$\@
+       \@\$(CC) \$(TARGET_CFLAGS) \$(CFLAGS) $flags -c \$< -o \$\@
 \@BROKEN_CC\@  -mv `echo \$\@ | sed 's%^.*/%%g'` \$\@
 #End $comment
 ###################################
@@ -405,6 +405,12 @@ $output .= add_target_flags($ctx, "library_" . $ctx->{NAME});
        return $output;
 }
 
+sub _prepare_objlist_rule($)
+{
+       my $t = shift;
+       return "$t->{TYPE}_$t->{NAME}: \$($t->{TYPE}_$t->{NAME}_OBJS)\n";
+}
+
 ###########################################################
 # This function creates a make rule for linking a library
 #
@@ -632,7 +638,7 @@ showlayout:
 
 showflags:
        @echo "Samba will be compiled with flags:"
-       @echo "  CC_FLAGS = $(CC_FLAGS)"
+       @echo "  CFLAGS = $(CFLAGS)"
        @echo "  LD_FLAGS = $(LD_FLAGS)"
        @echo "  STLD_FLAGS = $(STLD_FLAGS)"
        @echo "  SHLD_FLAGS = $(SHLD_FLAGS)"
@@ -752,6 +758,7 @@ sub _prepare_rule_lists($)
 
        foreach my $key (values %{$depend}) {
                next if not defined $key->{OUTPUT_TYPE};
+               ($output .= _prepare_objlist_rule($key)) if $key->{OUTPUT_TYPE} eq "OBJLIST";
                ($output .= _prepare_static_library_rule($key)) if $key->{OUTPUT_TYPE} eq "STATIC_LIBRARY";
                ($output .= _prepare_shared_library_rule($key)) if $key->{OUTPUT_TYPE} eq "SHARED_LIBRARY";
                ($output .= _prepare_binary_rule($key)) if $key->{OUTPUT_TYPE} eq "BINARY";
index 6972817ca9f0aa93fc8e9b0f9f3b793c5b9e521c..398cb31ee979390d4e5ff100ae545cf6d100aee3 100644 (file)
@@ -14,7 +14,8 @@ sub generate_objlist($)
 {
        my $subsys = shift;
 
-       $subsys->{TARGET} = $subsys->{OUTPUT} = "\$($subsys->{TYPE}_$subsys->{NAME}_OBJS)";
+       $subsys->{TARGET} = "$subsys->{TYPE}_$subsys->{NAME}";
+       $subsys->{OUTPUT} = "\$($subsys->{TYPE}_$subsys->{NAME}_OBJS)";
 }
 
 sub generate_shared_library($)