cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: libcurl and Mac OS X

From: Daniel Johnson <daniel_at_daniel-johnson.org>
Date: Mon, 29 Jan 2007 13:49:08 -0500

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Jan 29, 2007, at 5:05 AM, Daniel Stenberg wrote:

> On Sun, 28 Jan 2007, Daniel Johnson wrote:
>
>> I maintain curl packages for Fink <http://www.finkproject.org/>, a
>> Mac OS X package manager and recently started submitting
>> autobuilds since there weren't any for OS X.
>
> Awesome! We really need more platforms covered in the autobuilds.
>
>> I've noticed a couple of things during my builds. One is that
>> tests 518 and 537 always fail, and apparently always have failed
>> on OS X. It's probably due to the need to use select instead of
>> poll. Perhaps those tests should be disabled on OS X?
>
> I agree with Yang Tse that disabling these might not be the best
> idea, at least not until we understand the reasons for these
> failures properly.
>
> I guess we can adjust the "check" conditions for lib518 and lib537
> to deny the test cases to run on this platform.

This is sensible. I just add them to DISABLED for my packages so the
build doesn't fail.

>
>> I've also noticed that when curl is built with --enable-hidden-
>> symbols, the tests won't build since they need curlx_tvnow and
>> curlx_tvdiff, which are hidden because they're not CURL_EXTERN.
>
> Aaah. You're right, they need to be built/used separately since the
> curlx_* functions are not part of the libcurl API... I'll make sure
> the affected test executables get a suitable dependency so that
> they build and link with lib/timeval.c. I commited my fix just now.

Looks like you missed some. This is from 7.16.1:

gcc -DHAVE_CONFIG_H -I../../include/curl -I../../lib -I../../lib -
I/sw/lib/system-openssl/include/openssl -I/sw/lib/system-openssl/
include -I/sw/include -DLIB527 -g -O2 -fvisibility=hidden -c -o
lib527-lib526.o `test -f 'lib526.c' || echo './'`lib526.c
gcc -DHAVE_CONFIG_H -I../../include/curl -I../../lib -I../../lib -
I/sw/lib/system-openssl/include/openssl -I/sw/lib/system-openssl/
include -I/sw/include -DLIB527 -g -O2 -fvisibility=hidden -c -o
lib527-first.o `test -f 'first.c' || echo './'`first.c
/bin/sh ../../libtool --tag=CC --mode=link gcc -g -O2 -
fvisibility=hidden -L/sw/lib/system-openssl/lib -L/sw/lib -o lib527
lib527-lib526.o lib527-first.o ../../lib/libcurl.la -lssh2 -lssl -
lcrypto -lz
gcc -g -O2 -fvisibility=hidden -o .libs/lib527 lib527-lib526.o lib527-
first.o -L/sw/lib/system-openssl/lib -L/sw/lib ../../lib/.libs/
libcurl.dylib -lssh2 -lssl -lcrypto -lz
/usr/bin/ld: Undefined symbols:
_curlx_tvdiff
_curlx_tvnow
collect2: ld returned 1 exit status
make[2]: *** [lib527] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [test-full] Error 2

Thanks.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (Darwin)
Comment: http://homepage.mac.com/danielj7/publickey.txt

iD8DBQFFvkGk4sDFGYouOqARAqQYAJ4pZC4a0uaNzvP10ZZfpk7fmb1T6wCePKxX
gazJg1uYv9ri8SNz+m9Fx+w=
=GY/E
-----END PGP SIGNATURE-----
Received on 2007-01-29