pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: pkg/48334: graphics/gd uses "ceill()", silently succeeds on amd64-6.1_STABLE, undefined symbol on macppc-6.99.24



The following reply was made to PR pkg/48334; it has been noted by GNATS.

From: "John D. Baker" <jdbaker%mylinuxisp.com@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: pkg/48334: graphics/gd uses "ceill()", silently succeeds on
 amd64-6.1_STABLE, undefined symbol on macppc-6.99.24
Date: Wed, 23 Oct 2013 11:20:09 -0500 (CDT)

 On Wed, 23 Oct 2013, Makoto Fujiwara wrote:
 
 > It is not typographical error.
 > ceill is the name of long version of ceil, I believe.
 
 Right.  What I meant was that given the use of "ceil()" elsewhere in
 the same source file, perhaps the singular use of "ceill()" was accidental
 (bouncing "l" key)?  If their headers and libraries define/implement
 it, they may not have noticed.
 
 > http://mail-index.netbsd.org/tech-pkg/2013/09/25/msg012039.html
 > No Good -> N/macppc 5.1
 >            N/cobalt 5.1
 > (My memo tells also No Good)
 >            N/amd64 6.99.23 clang 3.2.
 >            N/amd64 6.99.23 clang 3.3.
 >
 > GOOD    -> N/amd64 6.1 (no problem)
 
 I just tried on N/i386-6.99.24 (gcc).  It also silently succeeds.
 Since -current <math.h> includes a prototype for "ceill()", the
 warnings don't appear in the build log.  That still leaves the lack
 of implementation:
 
    $ nm /lib/libm.so | grep ceil
    00014810 T ceil
    0000afc0 T ceilf
 
 On -current, in /usr/include/* and below, these are the only places
 where "ceill" is mentioned:
 
 $ find /usr/include -type f -exec grep ceill {} /dev/null \;
 /usr/include/g++/bits/c++config.h:/* Define to 1 if you have the `ceill' 
function. */
 /usr/include/g++/bits/c++config.h:/* Define to 1 if you have the `_ceill' 
function. */
 /usr/include/g++/bits/c++config.h:# define ceill _ceill
 /usr/include/g++/cmath:  { return __builtin_ceill(__x); }
 /usr/include/math.h:long double ceill(long double);
 
 So, one would need to be using C++ to get an implemntation of ceill()?
 
 On netbsd-6, <math.h> doesn't have a prototype for ceill();
 
 I can check on NetBSD/sparc for both netbsd-6 and 6.99.24, but it will
 take a few days...  (And sparc64, but that will require some setup time
 (and technically mac68k and mvme68k-6.99.24, but that will take a LONG
 time.))
 
 -- 
 |/"\ John D. Baker, KN5UKS               NetBSD     Darwin/MacOS X
 |\ / jdbaker[snail]mylinuxisp[flyspeck]com    OpenBSD            FreeBSD
 | X  No HTML/proprietary data in email.   BSD just sits there and works!
 |/ \ GPGkeyID:  D703 4A7E 479F 63F8 D3F4  BD99 9572 8F23 E4AD 1645
 


Home | Main Index | Thread Index | Old Index