svn commit: r328612 - head/lib/libc/stdlib
Warner Losh
imp at bsdimp.com
Fri Feb 2 04:09:57 UTC 2018
On Thu, Feb 1, 2018 at 8:34 PM, Steve Wills <swills at freebsd.org> wrote:
> This, somehow, seems to have broken the mips64 build:
>
> https://ci.freebsd.org/job/FreeBSD-head-mips64-build/216/consoleFull
>
> The previous rev works.
>
This breaks devd, of all things, with
/usr/obj/usr/src/mips.mips64/tmp/usr/lib/libgcc.a(comparedf2.o): In
function `__gedf2':
/usr/src/contrib/compiler-rt/lib/builtins/comparedf2.c:96: multiple
definition of `__gedf2'
/usr/obj/usr/src/mips.mips64/tmp/usr/lib/libc.a(gedf2.o):/usr/src/lib/libc/softfloat/gedf2.c:18:
first defined here
/usr/obj/usr/src/mips.mips64/tmp/usr/lib/libgcc.a(comparedf2.o): In
function `__eqdf2':
/usr/src/contrib/compiler-rt/lib/builtins/comparedf2.c:126: multiple
definition of `__eqdf2'
/usr/obj/usr/src/mips.mips64/tmp/usr/lib/libc.a(eqdf2.o):/usr/src/lib/libc/softfloat/eqdf2.c:18:
first defined here
/usr/obj/usr/src/mips.mips64/tmp/usr/lib/libgcc.a(comparedf2.o): In
function `__ltdf2':
/usr/src/contrib/compiler-rt/lib/builtins/comparedf2.c:131: multiple
definition of `__ltdf2'
/usr/obj/usr/src/mips.mips64/tmp/usr/lib/libc.a(ltdf2.o):/usr/src/lib/libc/softfloat/ltdf2.c:18:
first defined here
/usr/obj/usr/src/mips.mips64/tmp/usr/lib/libgcc.a(comparedf2.o): In
function `__nedf2':
/usr/src/contrib/compiler-rt/lib/builtins/comparedf2.c:136: multiple
definition of `__nedf2'
/usr/obj/usr/src/mips.mips64/tmp/usr/lib/libc.a(nedf2.o):/usr/src/lib/libc/softfloat/nedf2.c:18:
first defined here
/usr/obj/usr/src/mips.mips64/tmp/usr/lib/libgcc.a(comparedf2.o): In
function `__gtdf2':
/usr/src/contrib/compiler-rt/lib/builtins/comparedf2.c:141: multiple
definition of `__gtdf2'
/usr/obj/usr/src/mips.mips64/tmp/usr/lib/libc.a(gtdf2.o):/usr/src/lib/libc/softfloat/gtdf2.c:18:
first defined here
undefined.... devd doesn't even use strtodl.
(looks like the code to associate make output with the right commands is
broken, since I had to dig for it.
Warner
> Steve
>
>
> On 01/30/2018 22:05, Warner Losh wrote:
>
>> Author: imp
>> Date: Wed Jan 31 03:05:14 2018
>> New Revision: 328612
>> URL: https://svnweb.freebsd.org/changeset/base/328612
>>
>> Log:
>> Move strtold wrapper from strtol.c to its own strtold.c. This code
>> was written by theraven@ (David Chisnall) entirely, there's no
>> original Berkeley code left here so just copy his copyright over.
>>
>> Added:
>> head/lib/libc/stdlib/strtold.c (contents, props changed)
>> Modified:
>> head/lib/libc/stdlib/Makefile.inc
>> head/lib/libc/stdlib/strtol.c
>>
>> Modified: head/lib/libc/stdlib/Makefile.inc
>> ============================================================
>> ==================
>> --- head/lib/libc/stdlib/Makefile.inc Wed Jan 31 01:04:36 2018
>> (r328611)
>> +++ head/lib/libc/stdlib/Makefile.inc Wed Jan 31 03:05:14 2018
>> (r328612)
>> @@ -15,7 +15,7 @@ MISRCS+=C99_Exit.c a64l.c abort.c abs.c atexit.c atof.
>> radixsort.c rand.c \
>> random.c reallocarray.c reallocf.c realpath.c remque.c \
>> set_constraint_handler_s.c strfmon.c strtoimax.c \
>> - strtol.c strtoll.c strtoq.c strtoul.c strtonum.c strtoull.c \
>> + strtol.c strtold.c strtoll.c strtoq.c strtoul.c strtonum.c
>> strtoull.c \
>> strtoumax.c strtouq.c system.c tdelete.c tfind.c tsearch.c
>> twalk.c
>> # Work around an issue on case-insensitive file systems.
>>
>> Modified: head/lib/libc/stdlib/strtol.c
>> ============================================================
>> ==================
>> --- head/lib/libc/stdlib/strtol.c Wed Jan 31 01:04:36 2018
>> (r328611)
>> +++ head/lib/libc/stdlib/strtol.c Wed Jan 31 03:05:14 2018
>> (r328612)
>> @@ -46,7 +46,6 @@ __FBSDID("$FreeBSD$");
>> #include <stdlib.h>
>> #include "xlocale_private.h"
>> -
>> /*
>> * Convert a string to a long integer.
>> *
>> @@ -152,9 +151,4 @@ long
>> strtol(const char * __restrict nptr, char ** __restrict endptr, int
>> base)
>> {
>> return strtol_l(nptr, endptr, base, __get_locale());
>> -}
>> -long double
>> -strtold(const char * __restrict nptr, char ** __restrict endptr)
>> -{
>> - return strtold_l(nptr, endptr, __get_locale());
>> }
>>
>> Added: head/lib/libc/stdlib/strtold.c
>> ============================================================
>> ==================
>> --- /dev/null 00:00:00 1970 (empty, because file is newly added)
>> +++ head/lib/libc/stdlib/strtold.c Wed Jan 31 03:05:14 2018
>> (r328612)
>> @@ -0,0 +1,45 @@
>> +/*-
>> + * SPDX-License-Identifier: BSD-3-Clause
>> + *
>> + * Copyright (c) 2011 The FreeBSD Foundation
>> + * All rights reserved.
>> + * Portions of this software were developed by David Chisnall
>> + * under sponsorship from the FreeBSD Foundation.
>> + *
>> + * Redistribution and use in source and binary forms, with or without
>> + * modification, are permitted provided that the following conditions
>> + * are met:
>> + * 1. Redistributions of source code must retain the above copyright
>> + * notice, this list of conditions and the following disclaimer.
>> + * 2. Redistributions in binary form must reproduce the above copyright
>> + * notice, this list of conditions and the following disclaimer in the
>> + * documentation and/or other materials provided with the
>> distribution.
>> + * 3. Neither the name of the University nor the names of its
>> contributors
>> + * may be used to endorse or promote products derived from this
>> software
>> + * without specific prior written permission.
>> + *
>> + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS''
>> AND
>> + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
>> + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
>> PURPOSE
>> + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE
>> LIABLE
>> + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
>> CONSEQUENTIAL
>> + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
>> GOODS
>> + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
>> + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
>> STRICT
>> + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
>> WAY
>> + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
>> + * SUCH DAMAGE.
>> + */
>> +
>> +#include <sys/cdefs.h>
>> +__FBSDID("$FreeBSD$");
>> +
>> +#include <stdlib.h>
>> +#include "xlocale_private.h"
>> +
>> +long double
>> +strtold(const char * __restrict nptr, char ** __restrict endptr)
>> +{
>> +
>> + return strtold_l(nptr, endptr, __get_locale());
>> +}
>> _______________________________________________
>> svn-src-head at freebsd.org mailing list
>> https://lists.freebsd.org/mailman/listinfo/svn-src-head
>> To unsubscribe, send any mail to "svn-src-head-unsubscribe at freebsd.org"
>>
>>
More information about the svn-src-head
mailing list