Re: Buildworld broken with WITHOUT_DYNAMICROOT=yes in src.conf

From: Dimitry Andric <dim_at_FreeBSD.org>
Date: Mon, 25 Nov 2013 13:36:15 +0100
On 25 Nov 2013, at 08:51, Konstantin Belousov <kostikbel_at_gmail.com> wrote:
> On Sun, Nov 24, 2013 at 11:48:54PM -0500, Glen Barber wrote:
...
>> Index: Makefile
>> ===================================================================
>> --- Makefile      (revision 258538)
>> +++ Makefile      (working copy)
>> _at__at_ -42,6 +42,9 _at__at_
>> 
>> DPADD=	${LIBTERMCAP} ${LIBCRYPT}
>> LDADD=	-ltermcap -lcrypt
>> +.if ${MK_ICONV} != "no" && ${MK_DYNAMICROOT} != "yes"
>> +LDADD+=    -lc_nonshared
>> +.endif
>> 
>> LINKS=	${BINDIR}/csh ${BINDIR}/tcsh
>> 
> 
> No, this is wrong.  As is, static linking is broken and the hack above
> only fixes one case.
> 
> What is needed is inclusion of the lib/libc_nonshared object files into
> static libc.a.  I am not sure how to express this in our build system.

Hi Kostik,

You can add the additional object files to ${STATICOBJS}.  These will
only be built for the static and profiled libraries.  See for example
gnu/lib/libgcc/Makefile or lib/libc++/Makefile.

-Dimitry


Received on Mon Nov 25 2013 - 11:36:46 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:44 UTC