Move object files lists to makefile rather than smb_build.
[kai/samba-autobuild/.git] / source4 / build / smb_build / input.pm
index 948f2657b4cb7a9bca621d42646ac78b8696c6aa..99498366754a3970120761848e85d724a66978a0 100644 (file)
@@ -91,6 +91,9 @@ sub check_module($$$)
        }
 
        if (not defined($mod->{OUTPUT_TYPE})) {
+               if (not defined($INPUT->{$mod->{SUBSYSTEM}}->{TYPE})) {
+                       die("Invalid type for subsystem $mod->{SUBSYSTEM}");
+               }
                if ($INPUT->{$mod->{SUBSYSTEM}}->{TYPE} eq "EXT_LIB") {
                        $mod->{OUTPUT_TYPE} = undef;
                } else {
@@ -107,7 +110,7 @@ sub check_module($$$)
        } 
        if (grep(/MERGED_OBJ/, @{$mod->{OUTPUT_TYPE}})) {
                push (@{$INPUT->{$mod->{SUBSYSTEM}}{INIT_FUNCTIONS}}, $mod->{INIT_FUNCTION}) if defined($mod->{INIT_FUNCTION});
-               unshift (@{$INPUT->{$mod->{SUBSYSTEM}}{PRIVATE_DEPENDENCIES}}, $mod->{NAME});
+               push (@{$INPUT->{$mod->{SUBSYSTEM}}{PRIVATE_DEPENDENCIES}}, $mod->{NAME});
        }
 }
 
@@ -151,7 +154,6 @@ sub check_python($$$)
                $dirname .= "/" unless $dirname =~ /\/$/;
                $dirname = "" if $dirname eq "./";
 
-               $python->{OBJ_FILES} = ["$dirname$basename\_wrap.o"];
                $python->{LIBRARY_REALNAME} = "_$basename.\$(SHLIBEXT)";
                $python->{PYTHON_FILES} = ["$dirname$basename.py"];
                push (@{$python->{CFLAGS}}, "\$(CFLAG_NO_UNUSED_MACROS)");
@@ -189,7 +191,6 @@ sub add_implicit($$)
        $INPUT->{$n} = {
                TYPE => "MAKE_RULE",
                NAME => $n,
-               TARGET => "",
                OUTPUT_TYPE => undef,
                LIBS => ["\$(".uc($n)."_LIBS)"],
                LDFLAGS => ["\$(".uc($n)."_LDFLAGS)"],
@@ -249,7 +250,7 @@ sub check($$$$$)
 
        foreach my $part (values %$INPUT) {
                $part->{LINK_FLAGS} = [];
-               $part->{FULL_OBJ_LIST} = ["\$($part->{NAME}_OBJ_LIST)"];
+               $part->{FULL_OBJ_LIST} = ["\$($part->{NAME}_OBJ_FILES)"];
 
                if ($part->{TYPE} eq "SUBSYSTEM") { 
                        check_subsystem($INPUT, $part, $subsys_ot);