r7766: Treat NOPROTO as boolean.
authorJelmer Vernooij <jelmer@samba.org>
Sun, 19 Jun 2005 23:05:43 +0000 (23:05 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:18:33 +0000 (13:18 -0500)
Don't consider ALL_OBJS as a standard subsystem.
(This used to be commit 6b9a12249f152e9c4635d4f6c7f3a1b885c78ec6)

source4/build/smb_build/config_mk.pm
source4/build/smb_build/output.pm

index 2df5df94f2951d39a027fc33c5efb781420346c9..12d62437e39860118d9f9da7bb1bfc58c2d9ad65 100644 (file)
@@ -12,7 +12,7 @@ use smb_build::input;
 use strict;
 
 my %attribute_types = (
-       "NOPROTO" => "string",
+       "NOPROTO" => "bool",
        "REQUIRED_SUBSYSTEMS" => "list",
        "OUTPUT_TYPE" => "string",
        "INIT_OBJ_FILES" => "list",
index f156f7945be30d9517a960efbe12c2f494ac97fb..b863d7e8dcd88af44cc3cb2bac9a11b1a4608b8b 100644 (file)
@@ -66,15 +66,23 @@ sub create_output($)
        my $depend = shift;
        my $part;
 
-       $depend->{PROTO}{OUTPUT_TYPE} = "OBJLIST";
-       $depend->{PROTO}{TYPE} = "PROTO";
-       $depend->{PROTO}{NAME} = "PROTO";
-
-       $depend->{ALL_OBJS}{OUTPUT_TYPE} = "OBJLIST";
-       $depend->{ALL_OBJS}{TYPE} = "";
-       $depend->{ALL_OBJS}{NAME} = "ALL_OBJS";
+       $depend->{PROTO} = {
+               OUTPUT_TYPE => "OBJLIST",
+               TYPE => "PROTO",
+               NAME => "PROTO",
+               OBJ_LIST => []
+       };
+
+       $depend->{ALL_OBJS} = {
+               OUTPUT_TYPE => "OBJLIST",
+               TYPE => "",
+               NAME => "ALL_OBJS",
+               OBJ_LIST => []
+       };
 
        foreach $part (values %{$depend}) {
+               next if $part->{NAME} eq "PROTO";
+               next if $part->{NAME} eq "ALL_OBJS";
                next if not defined($part->{OUTPUT_TYPE});
 
                generate_binary($part) if $part->{OUTPUT_TYPE} eq "BINARY";
@@ -87,8 +95,11 @@ sub create_output($)
                push(@{$part->{OBJ_LIST}}, @{$part->{ADD_OBJ_FILES}}) if defined($part->{ADD_OBJ_FILES});
                push(@{$part->{OBJ_LIST}}, @{$part->{OBJ_FILES}}) if defined($part->{OBJ_FILES});
 
-               push(@{$depend->{ALL_OBJS}{OBJ_LIST}}, @{$part->{OBJ_LIST}}) if (defined(@{$part->{OBJ_LIST}}));
-               push(@{$depend->{PROTO}{OBJ_LIST}}, @{$part->{OBJ_LIST}}) if ((not defined ($part->{NOPROTO}) or $part->{NOPROTO} eq "NO") and defined(@{$part->{OBJ_LIST}}));
+               push(@{$depend->{ALL_OBJS}->{OBJ_LIST}}, @{$part->{OBJ_LIST}}) if (defined(@{$part->{OBJ_LIST}}));
+               
+               if ((not defined ($part->{NOPROTO})) or ($part->{NOPROTO} eq "NO")) {
+                       push(@{$depend->{PROTO}->{OBJ_LIST}}, @{$part->{OBJ_LIST}}) if (defined(@{$part->{OBJ_LIST}}));
+               }
        }
 
        foreach $part (values %{$depend}) {