[libdispatch-dev] updated test results on Linux

Mark Heily mark at heily.com
Wed Jan 5 23:06:34 PST 2011


Hope everyone had a pleasant New Year holiday. I'm happy to report some
progress with the Linux port of libdispatch. I was able to build a recent
copy of the trunk and run the test suite without needing to apply a single
patch to my working copy. There were no compiler warnings during the build
process. I used the most recent version of libpthread_workqueue installed in
/usr/local. My test system is an Intel Core2 Duo running a 64-bit version of
Ubuntu 11.04.

See below for the complete output. There are still some quirks and test
failures, but for the most part it looks good.

Regards,

 - Mark

$ CC=clang LD=llvm-ld-2.8 CFLAGS="-I/usr/local/include" \
  LDADD="-L/usr/local/lib" ./configure && make && make check
checking for gcc... clang
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether clang accepts -g... yes
checking for clang option to accept ISO C89... none needed
checking how to run the C preprocessor... clang -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for System.framework/PrivateHeaders... no
checking for gcc... (cached) clang
checking whether we are using the GNU C compiler... (cached) yes
checking whether clang accepts -g... (cached) yes
checking for clang option to accept ISO C89... (cached) none needed
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for a sed that does not truncate output... /bin/sed
checking for fgrep... /bin/grep -F
checking for ld used by clang... llvm-ld-2.8
checking if the linker (llvm-ld-2.8) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for llvm-ld-2.8 option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from clang object... ok
checking for dlfcn.h... yes
checking whether we are using the GNU C++ compiler... (cached) yes
checking whether g++ accepts -g... (cached) yes
checking how to run the C++ preprocessor... g++ -E
checking for objdir... .libs
checking if clang supports -fno-rtti -fno-exceptions... yes
checking for clang option to produce PIC... -fPIC -DPIC
checking if clang PIC flag -fPIC -DPIC works... yes
checking if clang static flag -static works... yes
checking if clang supports -c -o file.o... yes
checking if clang supports -c -o file.o... (cached) yes
checking whether the clang linker (llvm-ld-2.8 -m elf_x86_64) supports
shared libraries... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... unsupported
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... no
checking whether to build shared libraries... no
checking whether to build static libraries... yes
checking for ld used by g++... llvm-ld-2.8 -m elf_x86_64
checking if the linker (llvm-ld-2.8 -m elf_x86_64) is GNU ld... no
checking whether the g++ linker (llvm-ld-2.8 -m elf_x86_64) supports shared
libraries... yes
checking for g++ option to produce PIC... -fPIC -DPIC
checking if g++ PIC flag -fPIC -DPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (llvm-ld-2.8 -m elf_x86_64) supports shared
libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... unsupported
checking for mig... no
checking for leaks... no
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking dependency style of clang... gcc3
checking dependency style of g++... gcc3
checking for gcc atomic builtins... yes
checking for library containing clock_gettime... -lrt
checking for library containing pthread_create... none required
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking sys/event.h usability... no
checking sys/event.h presence... no
checking for sys/event.h... no
checking for KQUEUE... yes
checking for ANSI C header files... (cached) yes
checking TargetConditionals.h usability... no
checking TargetConditionals.h presence... no
checking for TargetConditionals.h... no
checking pthread_machdep.h usability... no
checking pthread_machdep.h presence... no
checking for pthread_machdep.h... no
checking pthread_np.h usability... no
checking pthread_np.h presence... no
checking for pthread_np.h... no
checking malloc/malloc.h usability... no
checking malloc/malloc.h presence... no
checking for malloc/malloc.h... no
checking libkern/OSCrossEndian.h usability... no
checking libkern/OSCrossEndian.h presence... no
checking for libkern/OSCrossEndian.h... no
checking libkern/OSAtomic.h usability... no
checking libkern/OSAtomic.h presence... no
checking for libkern/OSAtomic.h... no
checking sys/sysctl.h usability... yes
checking sys/sysctl.h presence... yes
checking for sys/sysctl.h... yes
checking CoreServices/CoreServices.h usability... no
checking CoreServices/CoreServices.h presence... no
checking for CoreServices/CoreServices.h... no
checking mach/mach.h usability... no
checking mach/mach.h presence... no
checking for mach/mach.h... no
checking pthread_workqueue.h usability... yes
checking pthread_workqueue.h presence... yes
checking for pthread_workqueue.h... yes
checking for pthread_workqueue_init_np in -lpthread_workqueue... yes
checking whether CLOCK_UPTIME is declared... no
checking whether CLOCK_MONOTONIC is declared... yes
checking whether CLOCK_REALTIME is declared... yes
checking whether EVFILT_LIO is declared... no
checking whether EVFILT_SESSION is declared... no
checking whether NOTE_NONE is declared... no
checking whether NOTE_REAP is declared... no
checking whether NOTE_REVOKE is declared... no
checking whether NOTE_SIGNAL is declared... no
checking whether FD_COPY is declared... no
checking whether SIGEMT is declared... no
checking whether VQ_UPDATE is declared... no
checking whether VQ_VERYLOWDISK is declared... no
checking whether program_invocation_short_name is declared... yes
checking for pthread_key_init_np... no
checking for pthread_main_np... no
checking for mach_absolute_time... no
checking for malloc_create_zone... no
checking for sysconf... yes
checking for getprogname... no
checking for getexecname... no
checking for vasprintf... yes
checking for asprintf... yes
checking for arc4random... no
checking for fgetln... no
checking whether POSIX_SPAWN_START_SUSPENDED is declared... no
checking for sem_init... yes
checking what semaphore type to use... POSIX semaphores
checking for sys/cdefs.h... yes
checking for __attribute__((visibility("hidden")))... yes
checking for __private_extern__... yes
checking for C Blocks support... -fblocks
checking whether additional libraries are required for the Blocks runtime...
-lBlocksRuntime
checking for C++ Blocks support... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating dispatch/Makefile
config.status: creating man/Makefile
config.status: creating src/Makefile
config.status: creating testing/Makefile
config.status: creating config/config.h
config.status: config/config.h is unchanged
config.status: executing libtool commands
config.status: executing depfiles commands
Making all in dispatch
make[1]: Entering directory `/home/mheily/proj/libdispatch/trunk/dispatch'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/mheily/proj/libdispatch/trunk/dispatch'
Making all in man
make[1]: Entering directory `/home/mheily/proj/libdispatch/trunk/man'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/mheily/proj/libdispatch/trunk/man'
Making all in src
make[1]: Entering directory `/home/mheily/proj/libdispatch/trunk/src'
make  all-am
make[2]: Entering directory `/home/mheily/proj/libdispatch/trunk/src'
/bin/bash ../libtool  --tag=CC   --mode=compile clang -DHAVE_CONFIG_H -I.
-I../config -I.. -I..    -Wall  -fblocks -I/usr/local/include/kqueue
-I/usr/local/include -MT libdispatch_la-apply.lo -MD -MP -MF
.deps/libdispatch_la-apply.Tpo -c -o libdispatch_la-apply.lo `test -f
'apply.c' || echo './'`apply.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../config -I.. -I.. -Wall
-fblocks -I/usr/local/include/kqueue -I/usr/local/include -MT
libdispatch_la-apply.lo -MD -MP -MF .deps/libdispatch_la-apply.Tpo -c
apply.c -o libdispatch_la-apply.o
mv -f .deps/libdispatch_la-apply.Tpo .deps/libdispatch_la-apply.Plo
/bin/bash ../libtool  --tag=CC   --mode=compile clang -DHAVE_CONFIG_H -I.
-I../config -I.. -I..    -Wall  -fblocks -I/usr/local/include/kqueue
-I/usr/local/include -MT libdispatch_la-benchmark.lo -MD -MP -MF
.deps/libdispatch_la-benchmark.Tpo -c -o libdispatch_la-benchmark.lo `test
-f 'benchmark.c' || echo './'`benchmark.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../config -I.. -I.. -Wall
-fblocks -I/usr/local/include/kqueue -I/usr/local/include -MT
libdispatch_la-benchmark.lo -MD -MP -MF .deps/libdispatch_la-benchmark.Tpo
-c benchmark.c -o libdispatch_la-benchmark.o
mv -f .deps/libdispatch_la-benchmark.Tpo .deps/libdispatch_la-benchmark.Plo
/bin/bash ../libtool  --tag=CC   --mode=compile clang -DHAVE_CONFIG_H -I.
-I../config -I.. -I..    -Wall  -fblocks -I/usr/local/include/kqueue
-I/usr/local/include -MT libdispatch_la-object.lo -MD -MP -MF
.deps/libdispatch_la-object.Tpo -c -o libdispatch_la-object.lo `test -f
'object.c' || echo './'`object.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../config -I.. -I.. -Wall
-fblocks -I/usr/local/include/kqueue -I/usr/local/include -MT
libdispatch_la-object.lo -MD -MP -MF .deps/libdispatch_la-object.Tpo -c
object.c -o libdispatch_la-object.o
mv -f .deps/libdispatch_la-object.Tpo .deps/libdispatch_la-object.Plo
/bin/bash ../libtool  --tag=CC   --mode=compile clang -DHAVE_CONFIG_H -I.
-I../config -I.. -I..    -Wall  -fblocks -I/usr/local/include/kqueue
-I/usr/local/include -MT libdispatch_la-once.lo -MD -MP -MF
.deps/libdispatch_la-once.Tpo -c -o libdispatch_la-once.lo `test -f 'once.c'
|| echo './'`once.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../config -I.. -I.. -Wall
-fblocks -I/usr/local/include/kqueue -I/usr/local/include -MT
libdispatch_la-once.lo -MD -MP -MF .deps/libdispatch_la-once.Tpo -c once.c
-o libdispatch_la-once.o
mv -f .deps/libdispatch_la-once.Tpo .deps/libdispatch_la-once.Plo
/bin/bash ../libtool  --tag=CC   --mode=compile clang -DHAVE_CONFIG_H -I.
-I../config -I.. -I..    -Wall  -fblocks -I/usr/local/include/kqueue
-I/usr/local/include -MT libdispatch_la-queue.lo -MD -MP -MF
.deps/libdispatch_la-queue.Tpo -c -o libdispatch_la-queue.lo `test -f
'queue.c' || echo './'`queue.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../config -I.. -I.. -Wall
-fblocks -I/usr/local/include/kqueue -I/usr/local/include -MT
libdispatch_la-queue.lo -MD -MP -MF .deps/libdispatch_la-queue.Tpo -c
queue.c -o libdispatch_la-queue.o
mv -f .deps/libdispatch_la-queue.Tpo .deps/libdispatch_la-queue.Plo
/bin/bash ../libtool  --tag=CC   --mode=compile clang -DHAVE_CONFIG_H -I.
-I../config -I.. -I..    -Wall  -fblocks -I/usr/local/include/kqueue
-I/usr/local/include -MT libdispatch_la-queue_kevent.lo -MD -MP -MF
.deps/libdispatch_la-queue_kevent.Tpo -c -o libdispatch_la-queue_kevent.lo
`test -f 'queue_kevent.c' || echo './'`queue_kevent.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../config -I.. -I.. -Wall
-fblocks -I/usr/local/include/kqueue -I/usr/local/include -MT
libdispatch_la-queue_kevent.lo -MD -MP -MF
.deps/libdispatch_la-queue_kevent.Tpo -c queue_kevent.c -o
libdispatch_la-queue_kevent.o
mv -f .deps/libdispatch_la-queue_kevent.Tpo
.deps/libdispatch_la-queue_kevent.Plo
/bin/bash ../libtool  --tag=CC   --mode=compile clang -DHAVE_CONFIG_H -I.
-I../config -I.. -I..    -Wall  -fblocks -I/usr/local/include/kqueue
-I/usr/local/include -MT libdispatch_la-semaphore.lo -MD -MP -MF
.deps/libdispatch_la-semaphore.Tpo -c -o libdispatch_la-semaphore.lo `test
-f 'semaphore.c' || echo './'`semaphore.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../config -I.. -I.. -Wall
-fblocks -I/usr/local/include/kqueue -I/usr/local/include -MT
libdispatch_la-semaphore.lo -MD -MP -MF .deps/libdispatch_la-semaphore.Tpo
-c semaphore.c -o libdispatch_la-semaphore.o
mv -f .deps/libdispatch_la-semaphore.Tpo .deps/libdispatch_la-semaphore.Plo
/bin/bash ../libtool  --tag=CC   --mode=compile clang -DHAVE_CONFIG_H -I.
-I../config -I.. -I..    -Wall  -fblocks -I/usr/local/include/kqueue
-I/usr/local/include -MT libdispatch_la-source.lo -MD -MP -MF
.deps/libdispatch_la-source.Tpo -c -o libdispatch_la-source.lo `test -f
'source.c' || echo './'`source.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../config -I.. -I.. -Wall
-fblocks -I/usr/local/include/kqueue -I/usr/local/include -MT
libdispatch_la-source.lo -MD -MP -MF .deps/libdispatch_la-source.Tpo -c
source.c -o libdispatch_la-source.o
mv -f .deps/libdispatch_la-source.Tpo .deps/libdispatch_la-source.Plo
/bin/bash ../libtool  --tag=CC   --mode=compile clang -DHAVE_CONFIG_H -I.
-I../config -I.. -I..    -Wall  -fblocks -I/usr/local/include/kqueue
-I/usr/local/include -MT libdispatch_la-source_kevent.lo -MD -MP -MF
.deps/libdispatch_la-source_kevent.Tpo -c -o libdispatch_la-source_kevent.lo
`test -f 'source_kevent.c' || echo './'`source_kevent.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../config -I.. -I.. -Wall
-fblocks -I/usr/local/include/kqueue -I/usr/local/include -MT
libdispatch_la-source_kevent.lo -MD -MP -MF
.deps/libdispatch_la-source_kevent.Tpo -c source_kevent.c -o
libdispatch_la-source_kevent.o
mv -f .deps/libdispatch_la-source_kevent.Tpo
.deps/libdispatch_la-source_kevent.Plo
/bin/bash ../libtool  --tag=CC   --mode=compile clang -DHAVE_CONFIG_H -I.
-I../config -I.. -I..    -Wall  -fblocks -I/usr/local/include/kqueue
-I/usr/local/include -MT libdispatch_la-time.lo -MD -MP -MF
.deps/libdispatch_la-time.Tpo -c -o libdispatch_la-time.lo `test -f 'time.c'
|| echo './'`time.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../config -I.. -I.. -Wall
-fblocks -I/usr/local/include/kqueue -I/usr/local/include -MT
libdispatch_la-time.lo -MD -MP -MF .deps/libdispatch_la-time.Tpo -c time.c
-o libdispatch_la-time.o
mv -f .deps/libdispatch_la-time.Tpo .deps/libdispatch_la-time.Plo
/bin/bash ../libtool  --tag=CC   --mode=compile clang -DHAVE_CONFIG_H -I.
-I../config -I.. -I..     -I/usr/local/include -MT mach.lo -MD -MP -MF
.deps/mach.Tpo -c -o mach.lo `test -f 'shims/mach.c' || echo './'`shims/mach.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../config -I.. -I..
-I/usr/local/include -MT mach.lo -MD -MP -MF .deps/mach.Tpo -c shims/mach.c
-o mach.o
mv -f .deps/mach.Tpo .deps/mach.Plo
/bin/bash ../libtool  --tag=CC   --mode=compile clang -DHAVE_CONFIG_H -I.
-I../config -I.. -I..     -I/usr/local/include -MT time.lo -MD -MP -MF
.deps/time.Tpo -c -o time.lo `test -f 'shims/time.c' || echo './'`shims/time.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../config -I.. -I..
-I/usr/local/include -MT time.lo -MD -MP -MF .deps/time.Tpo -c shims/time.c
-o time.o
mv -f .deps/time.Tpo .deps/time.Plo
/bin/bash ../libtool  --tag=CC   --mode=compile clang -DHAVE_CONFIG_H -I.
-I../config -I.. -I..     -I/usr/local/include -MT tsd.lo -MD -MP -MF
.deps/tsd.Tpo -c -o tsd.lo `test -f 'shims/tsd.c' || echo './'`shims/tsd.c
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../config -I.. -I..
-I/usr/local/include -MT tsd.lo -MD -MP -MF .deps/tsd.Tpo -c shims/tsd.c -o
tsd.o
mv -f .deps/tsd.Tpo .deps/tsd.Plo
/bin/bash ../libtool --tag=CC   --mode=link clang  -I/usr/local/include   -o
libshims.la  mach.lo time.lo tsd.lo  -lrt  -lBlocksRuntime
libtool: link: rm -fr  .libs/libshims.a .libs/libshims.la
libtool: link: ar cru .libs/libshims.a  mach.o time.o tsd.o
libtool: link: ranlib .libs/libshims.a
libtool: link: ( cd ".libs" && rm -f "libshims.la" && ln -s "../libshims.la"
"libshims.la" )
/bin/bash ../libtool --tag=CC   --mode=link clang -Wall  -fblocks
-I/usr/local/include/kqueue   -I/usr/local/include   -o libdispatch.la
-rpath /usr/local/lib libdispatch_la-apply.lo libdispatch_la-benchmark.lo
libdispatch_la-object.lo libdispatch_la-once.lo libdispatch_la-queue.lo
libdispatch_la-queue_kevent.lo libdispatch_la-semaphore.lo
libdispatch_la-source.lo libdispatch_la-source_kevent.lo
libdispatch_la-time.lo   libshims.la -L/usr/local/lib -lpthread -lrt
-lkqueue   -lpthread_workqueue -lrt  -lBlocksRuntime
libtool: link: rm -fr  .libs/libdispatch.a .libs/libdispatch.la
.libs/libdispatch.lai
libtool: link: (cd .libs/libdispatch.lax/libshims.a && ar x
"/home/mheily/proj/libdispatch/trunk/src/./.libs/libshims.a")
libtool: link: ar cru .libs/libdispatch.a  libdispatch_la-apply.o
libdispatch_la-benchmark.o libdispatch_la-object.o libdispatch_la-once.o
libdispatch_la-queue.o libdispatch_la-queue_kevent.o
libdispatch_la-semaphore.o libdispatch_la-source.o
libdispatch_la-source_kevent.o libdispatch_la-time.o
.libs/libdispatch.lax/libshims.a/mach.o
.libs/libdispatch.lax/libshims.a/time.o .libs/libdispatch.lax/libshims.a/tsd.o
libtool: link: ranlib .libs/libdispatch.a
libtool: link: rm -fr .libs/libdispatch.lax
libtool: link: ( cd ".libs" && rm -f "libdispatch.la" && ln -s
"../libdispatch.la" "libdispatch.la" )
make[2]: Leaving directory `/home/mheily/proj/libdispatch/trunk/src'
make[1]: Leaving directory `/home/mheily/proj/libdispatch/trunk/src'
Making all in testing
make[1]: Entering directory `/home/mheily/proj/libdispatch/trunk/testing'
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
dispatch_api dispatch_api.o libtest.la ../src/libdispatch.la -lrt
-lBlocksRuntime
libtool: link: clang -Wall -fblocks -o dispatch_api dispatch_api.o
./.libs/libtest.a ../src/.libs/libdispatch.a -L/usr/local/lib
/usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue -lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang -std=c99 -Wall  -fblocks
 -o dispatch_c99 dispatch_c99-dispatch_c99.o libtest.la
../src/libdispatch.la -lrt  -lBlocksRuntime
libtool: link: clang -std=c99 -Wall -fblocks -o dispatch_c99
dispatch_c99-dispatch_c99.o  ./.libs/libtest.a ../src/.libs/libdispatch.a
-L/usr/local/lib /usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue
-lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
dispatch_cascade dispatch_cascade.o libtest.la ../src/libdispatch.la -lrt
-lBlocksRuntime
libtool: link: clang -Wall -fblocks -o dispatch_cascade dispatch_cascade.o
./.libs/libtest.a ../src/.libs/libdispatch.a -L/usr/local/lib
/usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue -lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
dispatch_debug dispatch_debug.o libtest.la ../src/libdispatch.la -lrt
-lBlocksRuntime
libtool: link: clang -Wall -fblocks -o dispatch_debug dispatch_debug.o
./.libs/libtest.a ../src/.libs/libdispatch.a -L/usr/local/lib
/usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue -lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
dispatch_priority dispatch_priority.o libtest.la ../src/libdispatch.la -lrt
 -lBlocksRuntime
libtool: link: clang -Wall -fblocks -o dispatch_priority dispatch_priority.o
 ./.libs/libtest.a ../src/.libs/libdispatch.a -L/usr/local/lib
/usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue -lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang -DUSE_SET_TARGET_QUEUE=1
-Wall  -fblocks   -o dispatch_priority2
dispatch_priority2-dispatch_priority.o libtest.la ../src/libdispatch.la -lrt
 -lBlocksRuntime
libtool: link: clang -DUSE_SET_TARGET_QUEUE=1 -Wall -fblocks -o
dispatch_priority2 dispatch_priority2-dispatch_priority.o  ./.libs/libtest.a
../src/.libs/libdispatch.a -L/usr/local/lib /usr/local/lib/libkqueue.so
-lpthread -lpthread_workqueue -lrt -lBlocksRuntime
clang -DHAVE_CONFIG_H -I. -I../config -I.. -I..    -Wall  -fblocks -MT
dispatch_starfish.o -MD -MP -MF .deps/dispatch_starfish.Tpo -c -o
dispatch_starfish.o dispatch_starfish.c
mv -f .deps/dispatch_starfish.Tpo .deps/dispatch_starfish.Po
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
dispatch_starfish dispatch_starfish.o libtest.la ../src/libdispatch.la -lrt
 -lBlocksRuntime
libtool: link: clang -Wall -fblocks -o dispatch_starfish dispatch_starfish.o
 ./.libs/libtest.a ../src/.libs/libdispatch.a -L/usr/local/lib
/usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue -lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
queue_finalizer queue_finalizer.o libtest.la ../src/libdispatch.la -lrt
-lBlocksRuntime
libtool: link: clang -Wall -fblocks -o queue_finalizer queue_finalizer.o
./.libs/libtest.a ../src/.libs/libdispatch.a -L/usr/local/lib
/usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue -lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
dispatch_after dispatch_after.o libtest.la ../src/libdispatch.la -lrt
-lBlocksRuntime
libtool: link: clang -Wall -fblocks -o dispatch_after dispatch_after.o
./.libs/libtest.a ../src/.libs/libdispatch.a -L/usr/local/lib
/usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue -lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
dispatch_apply dispatch_apply.o libtest.la ../src/libdispatch.la -lrt
-lBlocksRuntime
libtool: link: clang -Wall -fblocks -o dispatch_apply dispatch_apply.o
./.libs/libtest.a ../src/.libs/libdispatch.a -L/usr/local/lib
/usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue -lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
dispatch_drift dispatch_drift.o libtest.la ../src/libdispatch.la -lrt
-lBlocksRuntime
libtool: link: clang -Wall -fblocks -o dispatch_drift dispatch_drift.o
./.libs/libtest.a ../src/.libs/libdispatch.a -L/usr/local/lib
/usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue -lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
dispatch_group dispatch_group.o libtest.la ../src/libdispatch.la -lrt
-lBlocksRuntime
libtool: link: clang -Wall -fblocks -o dispatch_group dispatch_group.o
./.libs/libtest.a ../src/.libs/libdispatch.a -L/usr/local/lib
/usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue -lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
dispatch_pingpong dispatch_pingpong.o libtest.la ../src/libdispatch.la -lrt
 -lBlocksRuntime
libtool: link: clang -Wall -fblocks -o dispatch_pingpong dispatch_pingpong.o
 ./.libs/libtest.a ../src/.libs/libdispatch.a -L/usr/local/lib
/usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue -lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
dispatch_read dispatch_read.o libtest.la ../src/libdispatch.la -lrt
-lBlocksRuntime
libtool: link: clang -Wall -fblocks -o dispatch_read dispatch_read.o
./.libs/libtest.a ../src/.libs/libdispatch.a -L/usr/local/lib
/usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue -lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
dispatch_readsync dispatch_readsync.o libtest.la ../src/libdispatch.la -lrt
 -lBlocksRuntime
libtool: link: clang -Wall -fblocks -o dispatch_readsync dispatch_readsync.o
 ./.libs/libtest.a ../src/.libs/libdispatch.a -L/usr/local/lib
/usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue -lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
dispatch_sema dispatch_sema.o libtest.la ../src/libdispatch.la -lrt
-lBlocksRuntime
libtool: link: clang -Wall -fblocks -o dispatch_sema dispatch_sema.o
./.libs/libtest.a ../src/.libs/libdispatch.a -L/usr/local/lib
/usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue -lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
dispatch_timer_bit31 dispatch_timer_bit31.o libtest.la ../src/libdispatch.la
-lrt  -lBlocksRuntime
libtool: link: clang -Wall -fblocks -o dispatch_timer_bit31
dispatch_timer_bit31.o  ./.libs/libtest.a ../src/.libs/libdispatch.a
-L/usr/local/lib /usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue
-lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
dispatch_timer_bit63 dispatch_timer_bit63.o libtest.la ../src/libdispatch.la
-lrt  -lBlocksRuntime
libtool: link: clang -Wall -fblocks -o dispatch_timer_bit63
dispatch_timer_bit63.o  ./.libs/libtest.a ../src/.libs/libdispatch.a
-L/usr/local/lib /usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue
-lrt -lBlocksRuntime
/bin/bash ../libtool --tag=CC   --mode=link clang  -Wall  -fblocks   -o
summarize summarize.o libtest.la ../src/libdispatch.la -lrt  -lBlocksRuntime
libtool: link: clang -Wall -fblocks -o summarize summarize.o
./.libs/libtest.a ../src/.libs/libdispatch.a -L/usr/local/lib
/usr/local/lib/libkqueue.so -lpthread -lpthread_workqueue -lrt -lBlocksRuntime
make[1]: Leaving directory `/home/mheily/proj/libdispatch/trunk/testing'
make[1]: Entering directory `/home/mheily/proj/libdispatch/trunk'
make[1]: Nothing to be done for `all-am'.
make[1]: Leaving directory `/home/mheily/proj/libdispatch/trunk'
Making check in dispatch
make[1]: Entering directory `/home/mheily/proj/libdispatch/trunk/dispatch'
make[1]: Nothing to be done for `check'.
make[1]: Leaving directory `/home/mheily/proj/libdispatch/trunk/dispatch'
Making check in man
make[1]: Entering directory `/home/mheily/proj/libdispatch/trunk/man'
make[1]: Nothing to be done for `check'.
make[1]: Leaving directory `/home/mheily/proj/libdispatch/trunk/man'
Making check in src
make[1]: Entering directory `/home/mheily/proj/libdispatch/trunk/src'
make  check-am
make[2]: Entering directory `/home/mheily/proj/libdispatch/trunk/src'
make[2]: Nothing to be done for `check-am'.
make[2]: Leaving directory `/home/mheily/proj/libdispatch/trunk/src'
make[1]: Leaving directory `/home/mheily/proj/libdispatch/trunk/src'
Making check in testing
make[1]: Entering directory `/home/mheily/proj/libdispatch/trunk/testing'
make  check-TESTS
make[2]: Entering directory `/home/mheily/proj/libdispatch/trunk/testing'

==================================================
[TEST] Dispatch (Public) API
[PID] 22489
==================================================

	Actual: 0x60e930
	Expected: 0x60e930
[PASS] dispatch_get_main_queue
PASS: dispatch_api

==================================================
[TEST] Dispatch C99
[PID] 22494
==================================================

	Actual: 0x60e930
	Expected: 0x60e930
[PASS] dispatch_get_main_queue
PASS: dispatch_c99

==================================================
[TEST] Dispatch Cascade
[PID] 22499
==================================================

maxcount = 4589

                   *
                   *
                   *
                   *
                   *
                   **
                   **
                   **
                   **
                   **
                   **
                   **
                   **
                   **
                   **
                   **
                   ****
                   **** *
                   **** *
PASS: dispatch_cascade

==================================================
[TEST] Dispatch Debug
[PID] 22505
==================================================

PASS: dispatch_debug

==================================================
[TEST] Dispatch Priority
[PID] 22508
==================================================

LOW: 0

DEFAULT: 64
****************************************
HIGH: 128
********************************************************************************
	Actual: 192
	Expected: 192
[PASS] blocks completed
	Actual: 0
	Expected: <128
[PASS] high priority precedence
PASS: dispatch_priority

==================================================
[TEST] Dispatch Priority (Set Target Queue)
[PID] 22523
==================================================

	Actual: 0x24a0010
	Expected: 0x24a0010
[PASS] q[i]
	Actual: 0x24a03f0
	Expected: 0x24a03f0
[PASS] q[i]
	Actual: 0x24a04f0
	Expected: 0x24a04f0
[PASS] q[i]
LOW: 55
***********************************
DEFAULT: 68
*******************************************
HIGH: 69
********************************************
	Actual: 192
	Expected: 192
[PASS] blocks completed
	Actual: 55
	Expected: <69
[PASS] high priority precedence
PASS: dispatch_priority2

==================================================
[TEST] Dispatch Starfish
[PID] 22563
==================================================

lap: 10
count: 1000
delta: 253154404 ns
math: 126.450751 ns / lap
	Actual: 126
	Expected: <1000
[PASS] Latency
lap: 9
count: 1000
delta: 244419153 ns
math: 122.087489 ns / lap
	Actual: 122
	Expected: <1000
[PASS] Latency
lap: 8
count: 1000
delta: 242866543 ns
math: 121.311960 ns / lap
	Actual: 121
	Expected: <1000
[PASS] Latency
lap: 7
count: 1000
delta: 230088962 ns
math: 114.929551 ns / lap
	Actual: 114
	Expected: <1000
[PASS] Latency
lap: 6
count: 1000
delta: 227835408 ns
math: 113.803900 ns / lap
	Actual: 113
	Expected: <1000
[PASS] Latency
lap: 5
count: 1000
delta: 229035669 ns
math: 114.403431 ns / lap
	Actual: 114
	Expected: <1000
[PASS] Latency
lap: 4
count: 1000
delta: 241895838 ns
math: 120.827092 ns / lap
	Actual: 120
	Expected: <1000
[PASS] Latency
lap: 3
count: 1000
delta: 236407153 ns
math: 118.085491 ns / lap
	Actual: 118
	Expected: <1000
[PASS] Latency
lap: 2
count: 1000
delta: 243509736 ns
math: 121.633235 ns / lap
	Actual: 121
	Expected: <1000
[PASS] Latency
lap: 1
count: 1000
delta: 304179905 ns
math: 151.938014 ns / lap
	Actual: 151
	Expected: <1000
[PASS] Latency
PASS: dispatch_starfish

==================================================
[TEST] Dispatch Queue Finalizer
[PID] 22571
==================================================

	Actual: 0x169c010
	Expected: 0x169c010
[PASS] dispatch_queue_new
	Actual: 0x408682dccb5c13d
	Expected: 0x408682dccb5c13d
[PASS] finalizer ran
PASS: queue_finalizer

==================================================
[TEST] Dispatch After
[PID] 22577
==================================================

	Actual: 0
	Expected: <2500714199
[PASS] can't finish faster than 5.5s
	Actual: 0
	Expected: <-1500713421
[FAIL] must finish faster than  6.5s (dispatch_after.c:54)
	dispatch_after.c:54
	Actual: 0
	Expected: <1500193540
[PASS] can't finish faster than 1.5s
	Actual: 0
	Expected: <-500193186
[FAIL] must finish faster than  2.5s (dispatch_after.c:62)
	dispatch_after.c:62
	Actual: 0
	Expected: <12619
[PASS] can't finish faster than 0s
	Actual: 0
	Expected: <499987633
[PASS] must finish faster than .5s
PASS: dispatch_after

==================================================
[TEST] Dispatch Apply
[PID] 22586
==================================================

	Actual: 0x60f6b0
	Expected: 0x60f6b0
[PASS] dispatch_get_concurrent_queue
	Actual: 32
	Expected: 32
[PASS] count
PASS: dispatch_apply

==================================================
[TEST] Timer drift test
[PID] 22592
==================================================

	Actual: 0xe57010
	Expected: 0xe57010
[PASS] DISPATCH_SOURCE_TYPE_TIMER
  20: jitter 0.000000, drift 0.000000
  21: jitter 1.900662, drift 1.900662
  22: jitter 1.900660, drift -0.000002
  23: jitter 1.900664, drift 0.000004
  24: jitter 1.900660, drift -0.000004
  25: jitter 1.900664, drift 0.000004
  26: jitter 1.900662, drift -0.000002
  27: jitter 1.900662, drift -0.000000
  28: jitter 1.900663, drift 0.000001
  29: jitter 1.900666, drift 0.000003
  30: jitter 1.900664, drift -0.000002
  50: jitter -0.000251, drift -1.900915
  51: jitter 1.900664, drift 1.900915
  52: jitter 1.900662, drift -0.000002
  53: jitter 1.900665, drift 0.000003
  54: jitter 1.900662, drift -0.000003
  55: jitter 1.900664, drift 0.000002
  56: jitter 1.900666, drift 0.000002
  57: jitter 1.900663, drift -0.000003
  58: jitter 1.900667, drift 0.000004
  59: jitter 1.900665, drift -0.000002
  60: jitter 1.900663, drift -0.000002
  80: jitter -0.000496, drift -1.901159
  81: jitter 1.900664, drift 1.901160
  82: jitter 1.900662, drift -0.000002
  83: jitter 1.900661, drift -0.000001
  84: jitter 1.900639, drift -0.000022
  85: jitter 1.900662, drift 0.000023
  86: jitter 1.900585, drift -0.000077
  87: jitter 1.900666, drift 0.000081
  88: jitter 1.900663, drift -0.000003
  89: jitter 1.900664, drift 0.000001
  90: jitter 1.900664, drift 0.000000
 110: jitter -0.000741, drift -1.901405
 111: jitter 1.900660, drift 1.901401
 112: jitter 1.900659, drift -0.000001
 113: jitter 1.900663, drift 0.000004
 114: jitter 1.900660, drift -0.000003
 115: jitter 1.900663, drift 0.000003
 116: jitter 1.900667, drift 0.000004
 117: jitter 1.900664, drift -0.000003
 118: jitter 1.900664, drift 0.000000
 119: jitter 1.900661, drift -0.000003
 120: jitter 1.900662, drift 0.000001
 140: jitter -0.000992, drift -1.901654
 141: jitter 1.900663, drift 1.901655
 142: jitter 1.900663, drift -0.000000
 143: jitter 1.900662, drift -0.000001
 144: jitter 1.900658, drift -0.000004
 145: jitter 1.900662, drift 0.000004
 146: jitter 1.900662, drift 0.000000
 147: jitter 1.900663, drift 0.000001
 148: jitter 1.900664, drift 0.000001
 149: jitter 1.900663, drift -0.000001
 150: jitter 1.900663, drift 0.000000
 170: jitter -0.001235, drift -1.901898
 171: jitter 1.900663, drift 1.901898
 172: jitter 1.900664, drift 0.000001
 173: jitter 1.900661, drift -0.000003
 174: jitter 1.900662, drift 0.000001
 175: jitter 1.900663, drift 0.000001
 176: jitter 1.900662, drift -0.000001
 177: jitter 1.900664, drift 0.000002
 178: jitter 1.900662, drift -0.000002
 179: jitter 1.900663, drift 0.000001
 180: jitter 1.900663, drift 0.000000
 200: jitter -0.001487, drift -1.902150
 201: jitter 1.900665, drift 1.902152
 202: jitter 1.900662, drift -0.000003
 203: jitter 1.900662, drift 0.000000
 204: jitter 1.900664, drift 0.000002
 205: jitter 1.900664, drift 0.000000
 206: jitter 1.900657, drift -0.000007
 207: jitter 1.900648, drift -0.000009
 208: jitter 1.900655, drift 0.000007
 209: jitter 1.900665, drift 0.000010
 210: jitter 1.900635, drift -0.000030
 230: jitter -0.001727, drift -1.902362
 231: jitter 1.900666, drift 1.902393
 232: jitter 1.900663, drift -0.000003
 233: jitter 1.900650, drift -0.000013
 234: jitter 1.900629, drift -0.000021
 235: jitter 1.900577, drift -0.000052
 236: jitter 1.900650, drift 0.000073
 237: jitter 1.900657, drift 0.000007
 238: jitter 1.900632, drift -0.000025
 239: jitter 1.900628, drift -0.000004
 240: jitter 1.900623, drift -0.000005
 260: jitter -0.001974, drift -1.902597
	Actual: 0.584784
	Expected: <0.000100
[FAIL] average jitter (dispatch_drift.c:87)
	dispatch_drift.c:87
	Actual: 0.000008
	Expected: <0.000100
[PASS] average drift
PASS: dispatch_drift

==================================================
[TEST] Dispatch Group
[PID] 22607
==================================================

	Actual: 0x2332010
	Expected: 0x2332010
[PASS] dispatch_group_async
	Actual: 0x2332010
	Expected: 0x2332010
[PASS] dispatch_group_async
sleeping...
sleeping...
sleeping...
	Actual: 0
	Expected: 0
[PASS] dispatch_group_wait
done.
done.
done.
	Actual: 0
	Expected: 0
[PASS] dispatch_group_wait
	Actual: 0x2332010
	Expected: 0x2332010
[PASS] dispatch_group_async
	Actual: 0x60f930
	Expected: 0x60f930
[PASS] Notification Received
PASS: dispatch_group

==================================================
[TEST] Dispatch Ping Pong
[PID] 22614
==================================================

	Actual: 0xb9d010
	Expected: 0xb9d010
[PASS] dispatch_queue_create(ping)
	Actual: 0xb9d0c0
	Expected: 0xb9d0c0
[PASS] dispatch_queue_create(pong)
	Actual: 0xb9d170
	Expected: 0xb9d170
[PASS] dispatch_group_create
	Actual: 1000000
	Expected: 1000000
[PASS] count
PASS: dispatch_pingpong

==================================================
[TEST] Dispatch Source Read
[PID] 22620
==================================================

	Actual: 0x60e950
	Expected: 0x60e950
[PASS] dispatch_get_main_queue
	Actual: 0xbed010
	Expected: 0xbed010
[PASS] DISPATCH_SOURCE_TYPE_READ
bytes available: 1
bytes read: 512000
/bin/bash: line 5: 22620 Terminated              ${dir}$tst
FAIL: dispatch_read

==================================================
[TEST] Dispatch Reader/Writer Queues
[PID] 22631
==================================================

PASS: dispatch_readsync

==================================================
[TEST] Dispatch Semaphore
[PID] 22637
==================================================

	Actual: 10000
	Expected: 10000
[PASS] count
PASS: dispatch_sema

==================================================
[TEST] Dispatch Source Timer, bit 31
[PID] 22643
==================================================

	Actual: 0x60e920
	Expected: 0x60e920
[PASS] dispatch_get_main_queue
	Actual: 0xe47010
	Expected: 0xe47010
[PASS] DISPATCH_SOURCE_TYPE_TIMER
	Actual: 5
	Expected: <4
[FAIL] elapsed time < 4s (dispatch_timer_bit31.c:66)
	dispatch_timer_bit31.c:66
	Actual: 1
	Expected: <5
[PASS] elapsed time > 2s
PASS: dispatch_timer_bit31

==================================================
[TEST] Dispatch Source Timer, bit 63
[PID] 22650
==================================================

0
PASS: dispatch_timer_bit63
===========================================
1 of 18 tests failed
Please report to libdispatch at macosforge.org
===========================================


More information about the libdispatch-dev mailing list