diff options
author | James Peach <jpeach@samba.org> | 2007-04-02 17:23:23 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 14:49:43 -0500 |
commit | 2e588454fe160b39bd8134a2fb9cbac4fba39e2a (patch) | |
tree | fc300e089a498bb16fc8d3d28e9554c4ff7c23dd /source4/build | |
parent | 051e4b25cf2bfedfca9355e43eacede966dbf257 (diff) | |
download | samba-2e588454fe160b39bd8134a2fb9cbac4fba39e2a.tar.gz samba-2e588454fe160b39bd8134a2fb9cbac4fba39e2a.tar.bz2 samba-2e588454fe160b39bd8134a2fb9cbac4fba39e2a.zip |
r22035: Introduce HOSTLD which is needed to link the asn1 compiler when cross
compiling.
(This used to be commit 976343821b99b04725c9fddee42dbcd0261c2d51)
Diffstat (limited to 'source4/build')
-rw-r--r-- | source4/build/m4/check_ld.m4 | 13 | ||||
-rw-r--r-- | source4/build/smb_build/makefile.pm | 17 |
2 files changed, 29 insertions, 1 deletions
diff --git a/source4/build/m4/check_ld.m4 b/source4/build/m4/check_ld.m4 index f7202b63eb..60b59bd653 100644 --- a/source4/build/m4/check_ld.m4 +++ b/source4/build/m4/check_ld.m4 @@ -36,6 +36,17 @@ SHLIBEXT="so" SONAMEFLAG="" PICFLAG="" +# allow for --with-hostld=gcc +AC_ARG_WITH(hostld,[ --with-hostld=linker choose host linker], +[HOSTLD=$withval], +[ +if test z"$cross_compiling" = "yes"; then + HOSTLD='$(HOSTCC)' +else + HOSTLD='$(LD)' +fi +]) + AC_MSG_CHECKING([ability to build shared libraries]) # and these are for particular systems @@ -144,6 +155,8 @@ AC_MSG_RESULT([$LD]) AC_MSG_CHECKING([LDFLAGS]) AC_MSG_RESULT([$LDFLAGS]) +AC_SUBST(HOSTLD) + AC_MSG_CHECKING([STLD]) AC_MSG_RESULT([$STLD]) AC_MSG_CHECKING([STLD_FLAGS]) diff --git a/source4/build/smb_build/makefile.pm b/source4/build/smb_build/makefile.pm index 43391d8775..926d83f0f7 100644 --- a/source4/build/smb_build/makefile.pm +++ b/source4/build/smb_build/makefile.pm @@ -141,6 +141,9 @@ INSTALL_LINK_FLAGS=$extra_link_flags LD=$self->{config}->{LD} LDFLAGS=$self->{config}->{LDFLAGS} -L$libdir +HOSTLD=$self->{config}->{HOSTLD} +# It's possible that we ought to have HOSTLD_LDFLAGS as well + STLD=$self->{config}->{STLD} STLD_FLAGS=$self->{config}->{STLD_FLAGS} @@ -387,11 +390,23 @@ sub Binary($$) $self->output(<< "__EOD__" $installdir/$ctx->{BINARY}: \$($ctx->{TYPE}_$ctx->{NAME}_DEPEND_LIST) \$($ctx->{TYPE}_$ctx->{NAME}_FULL_OBJ_LIST) \@echo Linking \$\@ +__EOD__ + ); + + if ($ctx->{"USE_HOSTCC"} =~ m/yes/i) { + $self->output(<< "__EOD__" + \@\$(HOSTLD) \$(LDFLAGS) -o \$\@ \$(INSTALL_LINK_FLAGS) \\ + \$\($ctx->{TYPE}_$ctx->{NAME}_LINK_FLAGS) +__EOD__ + ); + } else { + $self->output(<< "__EOD__" \@\$(LD) \$(LDFLAGS) -o \$\@ \$(INSTALL_LINK_FLAGS) \\ \$\($ctx->{TYPE}_$ctx->{NAME}_LINK_FLAGS) __EOD__ -); + ); + } } sub Manpage($$) |