Merge branch 'v4-0-trivial' into v4-0-gmake3
authorJelmer Vernooij <jelmer@samba.org>
Mon, 18 Feb 2008 21:25:19 +0000 (22:25 +0100)
committerJelmer Vernooij <jelmer@samba.org>
Mon, 18 Feb 2008 21:25:19 +0000 (22:25 +0100)
Conflicts:

source/build/smb_build/input.pm
source/build/smb_build/main.pl
source/build/smb_build/makefile.pm
(This used to be commit bc11e3ef1c34923f5b13571926617a840ad554fe)

1  2 
source4/build/smb_build/config_mk.pm
source4/build/smb_build/input.pm
source4/build/smb_build/main.pl
source4/build/smb_build/makefile.pm
source4/rules.mk

Simple merge
Simple merge
Simple merge
index 072e3c0c4bdef22b2fbeda1642d7ae75ebb6a620,d11e761ce14f6094423c3e62677b72796674d545..5fd9f359ee3fbdfdbe96bb32e7f8511fd968e73c
@@@ -198,14 -219,27 +185,14 @@@ sub SharedLibrary($$
  {
        my ($self,$ctx) = @_;
  
-       $self->output("SHARED_LIBS += $ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}\n") if (defined($ctx->{SO_VERSION}));
 -      push (@{$self->{shared_libs}}, $ctx->{RESULT_SHARED_LIBRARY}) if (defined($ctx->{SO_VERSION}));
++      $self->output("SHARED_LIBS += $ctx->{RESULT_SHARED_LIBRARY}\n") if (defined($ctx->{SO_VERSION}));
  
        $self->_prepare_list($ctx, "DEPEND_LIST");
        $self->_prepare_list($ctx, "LINK_FLAGS");
  
 -      my $soarg = "";
 -      my $lns = "";
 -      if ($self->{config}->{SONAMEFLAG} ne "#" and defined($ctx->{LIBRARY_SONAME})) {
 -              $soarg = "$self->{config}->{SONAMEFLAG}$ctx->{LIBRARY_SONAME}";
 -              if ($ctx->{LIBRARY_REALNAME} ne $ctx->{LIBRARY_SONAME}) {
 -                      $lns .= "\n\t\@test \$($ctx->{NAME}_VERSION) = \$($ctx->{NAME}_SOVERSION) || ln -fs $ctx->{LIBRARY_REALNAME} $ctx->{SHAREDDIR}/$ctx->{LIBRARY_SONAME}";
 -              }
 -      }
 -
 -      if (defined($ctx->{LIBRARY_SONAME})) {
 -              $lns .= "\n\t\@ln -fs $ctx->{LIBRARY_REALNAME} $ctx->{SHAREDDIR}/$ctx->{LIBRARY_DEBUGNAME}";
 -      }
 -
        $self->output(<< "__EOD__"
 -#
 +
- $ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}: \$($ctx->{NAME}_DEPEND_LIST) \$($ctx->{NAME}_OBJ_LIST)
+ $ctx->{RESULT_SHARED_LIBRARY}: \$($ctx->{NAME}_DEPEND_LIST) \$($ctx->{NAME}_FULL_OBJ_LIST)
        \@echo Linking \$\@
        \@mkdir -p $ctx->{SHAREDDIR}
        \@\$(SHLD) \$(SHLD_FLAGS) \$(INTERN_LDFLAGS) -o \$\@ \$(INSTALL_LINK_FLAGS) \\
@@@ -247,24 -275,21 +233,34 @@@ sub StaticLibraryPrimitives($$
  
        return unless (defined($ctx->{OBJ_FILES}));
  
-       $self->_prepare_list($ctx, "OBJ_LIST");
+       push (@{$self->{static_libs}}, $ctx->{RESULT_STATIC_LIBRARY}) if ($ctx->{TYPE} eq "LIBRARY");
+       $self->output("$ctx->{NAME}_OUTPUT = $ctx->{OUTPUT}\n");
+       $self->_prepare_list($ctx, "FULL_OBJ_LIST");
 +}
  
 +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");
 +}
 +
 +sub StaticLibrary($$)
 +{
 +      my ($self,$ctx) = @_;
+       $self->output(<< "__EOD__"
+ #
+ $ctx->{RESULT_STATIC_LIBRARY}: \$($ctx->{NAME}_FULL_OBJ_LIST)
+       \@echo Linking \$@
+       \@rm -f \$@
+       \@mkdir -p $ctx->{STATICDIR}
+       \@\$(STLD) \$(STLD_FLAGS) \$@ \$($ctx->{NAME}_FULL_OBJ_LIST)
  
 -__EOD__
 -);
 +      return unless (defined($ctx->{OBJ_FILES}));
 +
 +      $self->output("STATIC_LIBS += $ctx->{TARGET_STATIC_LIBRARY}\n") if ($ctx->{TYPE} eq "LIBRARY");
 +      $self->output("$ctx->{NAME}_OUTPUT = $ctx->{OUTPUT}\n");
 +      $self->output("$ctx->{TARGET_STATIC_LIBRARY}: \$($ctx->{NAME}_OBJ_LIST)\n");
  }
  
  sub Header($$)
@@@ -286,16 -305,18 +282,16 @@@ sub Binary($$
  {
        my ($self,$ctx) = @_;
  
 -      my $extradir = "";
 -
        unless (defined($ctx->{INSTALLDIR})) {
        } elsif ($ctx->{INSTALLDIR} eq "SBINDIR") {
-               $self->output("SBIN_PROGS += bin/$ctx->{BINARY}\n");
 -              push (@{$self->{sbin_progs}}, $ctx->{RESULT_BINARY});
++              $self->output("SBIN_PROGS += $ctx->{RESULT_BINARY}\n");
        } elsif ($ctx->{INSTALLDIR} eq "BINDIR") {
-               $self->output("BIN_PROGS += bin/$ctx->{BINARY}\n");
 -              push (@{$self->{bin_progs}}, $ctx->{RESULT_BINARY});
++              $self->output("BIN_PROGS += $ctx->{RESULT_BINARY}\n");
        }
  
-       $self->output("binaries:: bin/$ctx->{BINARY}\n");
+       $self->output("binaries:: $ctx->{TARGET_BINARY}\n");
  
-       $self->_prepare_list($ctx, "OBJ_LIST");
+       $self->_prepare_list($ctx, "FULL_OBJ_LIST");
        $self->_prepare_list($ctx, "DEPEND_LIST");
        $self->_prepare_list($ctx, "LINK_FLAGS");
  
Simple merge