diff options
-rw-r--r-- | source4/build/smb_build/input.pm | 1 | ||||
-rw-r--r-- | source4/build/smb_build/main.pl | 3 | ||||
-rw-r--r-- | source4/build/smb_build/makefile.pm | 4 | ||||
-rw-r--r-- | source4/heimdal_build/config.mk | 13 |
4 files changed, 16 insertions, 5 deletions
diff --git a/source4/build/smb_build/input.pm b/source4/build/smb_build/input.pm index a8dd573744..8c9a6efacc 100644 --- a/source4/build/smb_build/input.pm +++ b/source4/build/smb_build/input.pm @@ -257,6 +257,7 @@ sub check($$$$$) foreach my $part (values %$INPUT) { $part->{LINK_FLAGS} = []; + $part->{FULL_OBJ_LIST} = ["\$($part->{NAME}_OBJ_LIST)"]; if ($part->{TYPE} eq "SUBSYSTEM") { check_subsystem($INPUT, $part, $subsys_ot); diff --git a/source4/build/smb_build/main.pl b/source4/build/smb_build/main.pl index c6031e23e6..924f94762c 100644 --- a/source4/build/smb_build/main.pl +++ b/source4/build/smb_build/main.pl @@ -69,6 +69,9 @@ foreach my $key (values %$OUTPUT) { $mkenv->PythonFiles($key) if defined($key->{PYTHON_FILES}); $mkenv->Manpage($key) if defined($key->{MANPAGE}); $mkenv->Header($key) if defined($key->{PUBLIC_HEADERS}); + if ($key->{TYPE} eq "MODULE" and defined($key->{INIT_FUNCTION})) { + $mkenv->output("$key->{SUBSYSTEM}_INIT_FUNCTIONS += \"$key->{INIT_FUNCTION},\"\n"); + } } foreach my $key (values %$OUTPUT) { diff --git a/source4/build/smb_build/makefile.pm b/source4/build/smb_build/makefile.pm index 23caec083f..a6dfc2dee3 100644 --- a/source4/build/smb_build/makefile.pm +++ b/source4/build/smb_build/makefile.pm @@ -152,7 +152,7 @@ sub SharedModule($$) $self->output(<< "__EOD__" -$ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}: \$($ctx->{NAME}_DEPEND_LIST) \$($ctx->{NAME}_OBJ_LIST) +$ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}: \$($ctx->{NAME}_DEPEND_LIST) \$($ctx->{NAME}_FULL_OBJ_LIST) \@echo Linking \$\@ \@mkdir -p \$(\@D) \@\$(MDLD) \$(LDFLAGS) \$(MDLD_FLAGS) \$(INTERN_LDFLAGS) -o \$\@ \$(INSTALL_LINK_FLAGS) \\ @@ -243,7 +243,7 @@ sub StaticLibraryPrimitives($$) sub InitFunctions($$) { my ($self, $ctx) = @_; - $self->output("\$($ctx->{NAME}_OBJ_LIST): CFLAGS+=-DSTATIC_$ctx->{NAME}_MODULES=\"\$($ctx->{NAME}_INIT_FUNCTIONS)$ctx->{INIT_FUNCTION_SENTINEL}\"\n"); + $self->output("\$($ctx->{NAME}_OBJ_LIST): CFLAGS+=-DSTATIC_$ctx->{NAME}_MODULES=\"\\\"\$($ctx->{NAME}_INIT_FUNCTIONS)$ctx->{INIT_FUNCTION_SENTINEL}\\\"\"\n"); } sub StaticLibrary($$) diff --git a/source4/heimdal_build/config.mk b/source4/heimdal_build/config.mk index a0620c7923..45bfd8e81f 100644 --- a/source4/heimdal_build/config.mk +++ b/source4/heimdal_build/config.mk @@ -440,6 +440,14 @@ PRIVATE_DEPENDENCIES = HEIMDAL_ROKEN ####################### ####################### +# Start SUBSYSTEM HEIMDAL_ASN1_COMPILE_LEX +[SUBSYSTEM::HEIMDAL_ASN1_COMPILE_LEX] +CFLAGS = -Iheimdal_build -Iheimdal/lib/asn1 -Iheimdal/lib/roken -Ilib/socket_wrapper +OBJ_FILES = ../heimdal/lib/asn1/lex.ho +# End SUBSYSTEM HEIMDAL_ASN1_COMPILE_LEX +####################### + +####################### # Start BINARY asn1_compile [BINARY::asn1_compile] CFLAGS = -Iheimdal_build -Iheimdal/lib/roken @@ -466,9 +474,8 @@ OBJ_FILES = \ ../heimdal/lib/asn1/symbol.ho \ ../heimdal/lib/vers/print_version.ho \ ../lib/socket_wrapper/socket_wrapper.ho \ - replace.ho \ - ../heimdal/lib/asn1/lex.ho -PRIVATE_DEPENDENCIES = HEIMDAL_ROKEN_GETPROGNAME_H EXT_SOCKET EXT_NSL + replace.ho +PRIVATE_DEPENDENCIES = HEIMDAL_ASN1_COMPILE_LEX HEIMDAL_ROKEN_GETPROGNAME_H EXT_SOCKET EXT_NSL # End BINARY asn1_compile ####################### |