r1036: Get module initialisation function correct when building shared
authorJelmer Vernooij <jelmer@samba.org>
Sat, 5 Jun 2004 19:46:27 +0000 (19:46 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 17:56:31 +0000 (12:56 -0500)
(This used to be commit 8238acef47b754f91645c51326451c7ca153d992)

source4/build/smb_build/smb_build_h.pl

index 7a829dd6843015af4bee8b4cc898c63e67146d97..59e96574bdbc462e75bf6eb0753bad9739b241cb 100644 (file)
@@ -32,6 +32,9 @@ sub _prepare_smb_build_h($)
                my $DEFINE = ();
                my $name = lc($NAME);
 
+               #
+               # Static modules
+               # 
                $DEFINE->{COMMENT} = "SUBSYSTEM $NAME INIT";
                $DEFINE->{KEY} = "static_init_$name";
                $DEFINE->{VAL} = "do { \\\n";
@@ -39,6 +42,23 @@ sub _prepare_smb_build_h($)
                        $DEFINE->{VAL} .= "\t\t$subkey\_init(); \\\n";
                }
                $DEFINE->{VAL} .= "\t} while(0)";
+               
+               push(@{$CTX->{OUTPUT}{SMB_BUILD_H}},$DEFINE);
+
+       }
+
+       #
+       # Shared modules
+       #
+       foreach my $key (sort keys %{$CTX->{INPUT}{MODULES}}) {
+               next if ($CTX->{INPUT}{MODULES}{$key}{BUILD} ne "SHARED");
+
+               my $name = $CTX->{INPUT}{MODULES}{$key}{NAME};
+               my $DEFINE = ();
+               
+               $DEFINE->{COMMENT} = "$name is built shared";
+               $DEFINE->{KEY} = "$name\_init";
+               $DEFINE->{VAL} = "init_module";
 
                push(@{$CTX->{OUTPUT}{SMB_BUILD_H}},$DEFINE);
        }