PICFLAG=$self->{config}->{PICFLAG}
HOSTCC=$self->{config}->{HOSTCC}
-LD=$self->{config}->{LD}
-LDFLAGS=$self->{config}->{LDFLAGS} -L\$(builddir)/bin
LOCAL_LINK_FLAGS=$devld_local
INSTALL_LINK_FLAGS=$devld_install
+LD=$self->{config}->{LD}
+LDFLAGS=$self->{config}->{LDFLAGS} -L\$(builddir)/bin
+
STLD=$self->{config}->{AR}
STLD_FLAGS=-rc -L\$(builddir)/bin
{
my ($self,$ctx) = @_;
+ my $installdir;
+
+ if ($self->{duplicate_build}) {
+ $installdir = "bin/install";
+ } else {
+ $installdir = "bin";
+ }
+
push (@{$self->{shared_libs}}, "bin/$ctx->{LIBRARY_REALNAME}");
push (@{$self->{shared_modules}}, "bin/$ctx->{LIBRARY_REALNAME}");
push(@{$self->{proto_objs}}, "\$($ctx->{TYPE}_$ctx->{NAME}_OBJ_LIST\)");
}
- $self->output(<< "__EOD__"
+ if ($self->{duplicate_build}) {
+ $self->output(<< "__EOD__"
#
bin/$ctx->{LIBRARY_REALNAME}: \$($ctx->{TYPE}_$ctx->{NAME}_DEPEND_LIST) \$($ctx->{TYPE}_$ctx->{NAME}_OBJ_LIST)
\@echo Linking \$\@
- \@\$(SHLD) \$(SHLD_FLAGS) -o \$\@ \\
+ \@\$(SHLD) \$(SHLD_FLAGS) -o \$\@ \$(LOCAL_LINK_FLAGS) \\
\$($ctx->{TYPE}_$ctx->{NAME}_LINK_FLAGS) \\
\$($ctx->{TYPE}_$ctx->{NAME}_LINK_LIST)
__EOD__
);
- if (defined($ctx->{LIBRARY_SONAME})) {
- $self->output(<< "__EOD__"
+ if (defined($ctx->{LIBRARY_SONAME})) {
+ $self->output(<< "__EOD__"
# Symlink $ctx->{LIBRARY_SONAME}
bin/$ctx->{LIBRARY_SONAME}: bin/$ctx->{LIBRARY_REALNAME}
\@echo Symlink \$\@
\@echo Symlink \$\@
\@ln -sf $ctx->{LIBRARY_SONAME} \$\@
+__EOD__
+);
+ }
+ }
+
+ $self->output(<< "__EOD__"
+#
+
+$installdir/$ctx->{LIBRARY_REALNAME}: \$($ctx->{TYPE}_$ctx->{NAME}_DEPEND_LIST) \$($ctx->{TYPE}_$ctx->{NAME}_OBJ_LIST)
+ \@echo Linking \$\@
+ \@\$(SHLD) \$(SHLD_FLAGS) -o \$\@ \$(INSTALL_LINK_FLAGS) \\
+ \$($ctx->{TYPE}_$ctx->{NAME}_LINK_FLAGS) \\
+ \$($ctx->{TYPE}_$ctx->{NAME}_LINK_LIST)
+
+__EOD__
+);
+ if (defined($ctx->{LIBRARY_SONAME})) {
+ $self->output(<< "__EOD__"
+# Symlink $ctx->{LIBRARY_SONAME}
+$installdir/$ctx->{LIBRARY_SONAME}: $installdir/$ctx->{LIBRARY_REALNAME}
+ \@echo Symlink \$\@
+ \@ln -sf $ctx->{LIBRARY_REALNAME} \$\@
+# Symlink $ctx->{LIBRARY_NAME}
+$installdir/$ctx->{LIBRARY_NAME}: $installdir/$ctx->{LIBRARY_SONAME}
+ \@echo Symlink \$\@
+ \@ln -sf $ctx->{LIBRARY_SONAME} \$\@
+
__EOD__
);
}