Subject: | Time-HiRes 1.92 fails tests under Cygwin Perl 5.8.8 |
Time-HiRes 1.92 fails tests under Cygwin Perl 5.8.8.
Let me know if I can be of any further assistance.
Show quoted text
> perl Makefile.PL
Configuring Time::HiRes...
No syscall()...
Looking for gettimeofday()... found.
Looking for setitimer()... found.
Looking for getitimer()... found.
You have interval timers (both setitimer and getitimer).
Looking for ualarm()... found.
Looking for usleep()... found.
Looking for nanosleep()... testing... found.
You can mix subsecond sleeps with signals, if you want to.
(It's still not portable, though.)
Looking for clock_gettime()... found.
Looking for clock_getres()... found.
Looking for clock_nanosleep()... NOT found.
Looking for clock()... found.
Trying struct stat st_atimespec.tv_nsec...NOT found.
Trying struct stat st_atimensec...NOT found.
Trying struct stat st_atime_n...NOT found.
Trying struct stat st_atim.tv_nsec...found.
Trying struct stat st_uatime...NOT found.
You seem to have stat subsecond timestamps.
(Your struct stat has them, but the filesystems must help.)
Looking for <w32api/windows.h>... found.
Checking if your kit is complete...
Looks good
Writing Makefile for Time::HiRes
Now you may issue 'make'. Do not forget also 'make test'.
Show quoted text> make
cp HiRes.pm blib/lib/Time/HiRes.pm
/usr/bin/perl.exe /usr/lib/perl5/5.8/ExtUtils/xsubpp -typemap
/usr/lib/perl5/5.8/ExtUtils/typemap -typemap typemap HiRes.xs >
HiRes.xsc && mv HiRes.xsc HiRes.c
gcc -c -DPERL_USE_SAFE_PUTENV -fno-strict-aliasing -pipe
-Wdeclaration-after-statement -DUSEIMPORTLIB -O3 -pipe -funit-at-a-time
-mtune=pentium4m -march=pentium4 -mfpmath=sse -mieee-fp -mmmx -msse
-msse2 -DVERSION=\"1.92\" -DXS_VERSION=\"1.92\"
"-I/usr/lib/perl5/5.8/cygwin/CORE" -DTIME_HIRES_NANOSLEEP
-DTIME_HIRES_CLOCK_GETTIME -DTIME_HIRES_CLOCK_GETRES -DTIME_HIRES_CLOCK
-DTIME_HIRES_STAT=4 -DHAS_W32API_WINDOWS_H -DATLEASTFIVEOHOHFIVE HiRes.c
Running Mkbootstrap for Time::HiRes ()
chmod 644 HiRes.bs
rm -f blib/arch/auto/Time/HiRes/HiRes.dll
/usr/bin/ld2 -s -L/usr/local/lib HiRes.o -o
blib/arch/auto/Time/HiRes/HiRes.dll \
/usr/lib/perl5/5.8/cygwin/CORE/libperl.dll.a \
gcc -shared -o HiRes.dll -Wl,--out-implib=libHiRes.dll.a
-Wl,--export-all-symbols -Wl,--enable-auto-import -Wl,--stack,8388608
-Wl,--enable-auto-image-base \
-s -L/usr/local/lib HiRes.o /usr/lib/perl5/5.8/cygwin/CORE/libperl.dll.a
Creating library file: libHiRes.dll.a
mv HiRes.dll libHiRes.dll.a blib/arch/auto/Time/HiRes/
chmod 755 blib/arch/auto/Time/HiRes/HiRes.dll
cp HiRes.bs blib/arch/auto/Time/HiRes/HiRes.bs
chmod 644 blib/arch/auto/Time/HiRes/HiRes.bs
Show quoted text> make test
/usr/bin/perl.exe "-MExtUtils::Command::MM" "-e" "test_harness(0,
'blib/lib', 'blib/arch')" t/*.t
t/HiRes....FAILED tests 36, 38
Failed 2/38 tests, 94.74% okay
Failed Test Stat Wstat Total Fail List of Failed
-------------------------------------------------------------------------------
t/HiRes.t 38 2 36 38
Failed 1/1 test scripts. 2/38 subtests failed.
Files=1, Tests=38, 20 wallclock secs ( 7.94 cusr + 0.09 csys = 8.03 CPU)
Failed 1/1 test programs. 2/38 subtests failed.
make: *** [test_dynamic] Error 255
Show quoted text> perl -Mblib t/HiRes.t
1..38
ok 1
# have_gettimeofday = 1
# have_usleep = 1
# have_nanosleep = 1
# have_ualarm = 1
# have_clock_gettime = 1
# have_clock_getres = 1
# have_clock_nanosleep = 0
# have_clock = 1
# have_hires_stat = 4
# I am the main process 10020, starting the timer process...
# I am the timer process 40804, sleeping for 90 seconds...
# The timer process 40804 launched, continuing testing...
ok 2
ok 3
ok 4
ok 5
ok 6
ok 7
ok 8
ok 9
ok 10
ok 11
ok 12
# tick = 1, one = 1160761415, two = 1160761415, three = 1160761415
ok 13
# tick = 3, one = 1160761415, two = 1160761415, three = 1160761415
ok 14
# s = 49.8277690410614, n = 100, s/n = 0.498277690410614
# time...1160761415.49885
ok 15
# sleep...0.508947
ok 16
# Tick! 4 0.315851
# Select returned! 4 0.316673
# 0.894442333333333
# Tick! 3 0.610689
# Select returned! 3 0.610863
# 0.796379
# Tick! 2 0.911695
# Select returned! 2 0.911875
# 0.696041666666667
# Tick! 1 1.211571
# Select returned! 1 1.211756
# 0.596081333333333
# Tick! 0 1.512531
# Select returned! 0 1.51271
# 0.495763333333333
ok 17 # 0
ok 18 # Skip: no virtual interval timers
ok 19 # Skip: no virtual interval timers
ok 20 # 1.50029015541077 went by while sleeping 1.5, ratio 1.00017066666667.
ok 21 # 1.51196908950806 went by while sleeping 1.5, ratio 1.00796133333333.
ok 22
ok 23
ok 24
ok 25
ok 26
ok 27
ok 28
# N = 1024, t1 = 1160761421.08629, t0 = 1160761421.0861, dt =
0.000190973281860352
# N = 2048, t1 = 1160761421.08683, t0 = 1160761421.08645, dt =
0.000372171401977539
# N = 4096, t1 = 1160761421.08792, t0 = 1160761421.08696, dt =
0.000964164733886719
# N = 8192, t1 = 1160761421.08967, t0 = 1160761421.08809, dt =
0.00158596038818359
# N = 16384, t1 = 1160761421.09279, t0 = 1160761421.08982, dt =
0.0029759407043457
# N = 32768, t1 = 1160761421.09917, t0 = 1160761421.09292, dt =
0.00624394416809082
# N = 65536, t1 = 1160761421.11125, t0 = 1160761421.09933, dt =
0.0119240283966064
# Alarm 1 - 1160761421.12743
# Alarm 2 - 1160761421.15483
ok 29
# CLOCK_REALTIME: try = 1
# t1 = 1160761422.78813, t0 = 1160761421.28713
# dt = 1.50100016593933, rt = 0.000666777292887444
ok 30
ok 31 # tr = 0.001
# No clock_nanosleep
ok 32 # skipped
# clock = 0.49
# clock = 0.49 0.67
# clock = 0.49 0.67 0.861
# clock = 0.49 0.67 0.861 1.041
ok 33
# t0 = 1160761423.35881
# ualarm(100000)
# t1 = 1160761423.48822
# dt = 0.129417181015015
ok 34
# t0 = 1160761423.5085
# ualarm(1100000)
# t1 = 1160761424.70077
# dt = 1.19227981567383
ok 35
# t0 = 1160761424.7625
# ualarm(2200000)
# t1 = 1160761426.95408
# dt = 2.19158601760864
not ok 36
# ualarm(2200000) close enough
# t0 = 1160761426.95463
# ualarm(4300000)
# t1 = 1160761431.2604
# dt = 4.30577516555786
ok 37
# 1160761431.48073 1160761431.48073 1160761431.8012 1160761431.48073
1160761432.13168 1160761431.48073 1160761432.47218 1160761431.48073
1160761432.80267 1160761431.48073
not ok 38
# I am the main process 10020, terminating the timer process 40804
# before it terminates me in 70 seconds (testing took 19 seconds).
# kill TERM 40804 = 1
# All done.
Show quoted text> perl -V
Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
Platform:
osname=cygwin, osvers=1.5.21(0.15642),
archname=cygwin-thread-multi-64int
uname='cygwin_nt-5.0 pn100-02-2-054p 1.5.21(0.15642) 2006-07-30
14:21 i686 cygwin '
config_args='-de -Duse64bitint -Dusethreads -Uusemymalloc
-DPERL_DONT_CREATE_GVSV -Dno_mathoms -Dnoextensions=attrs -A
define:optimize=-O3 -pipe -funit-at-a-time -mtune=pentium4m
-march=pentium4 -mfpmath=sse -mieee-fp -mmmx -msse -msse2 -A
define:ld=/usr/bin/ld2'
hint=recommended, useposix=true, d_sigaction=define
usethreads=define use5005threads=undef useithreads=define
usemultiplicity=define
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=define use64bitall=undef uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='gcc', ccflags ='-DPERL_USE_SAFE_PUTENV -fno-strict-aliasing
-pipe -Wdeclaration-after-statement',
optimize='-O3 -pipe -funit-at-a-time -mtune=pentium4m
-march=pentium4 -mfpmath=sse -mieee-fp -mmmx -msse -msse2',
cppflags='-DPERL_USE_SAFE_PUTENV -fno-strict-aliasing -pipe
-Wdeclaration-after-statement'
ccversion='', gccversion='3.4.4 (cygming special) (gdc 0.12, using
dmd 0.125)', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=12345678
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long long', ivsize=8, nvtype='double', nvsize=8,
Off_t='off_t', lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='/usr/bin/ld2', ldflags =' -s -L/usr/local/lib'
libpth=/usr/local/lib /usr/lib /lib
libs=-lgdbm -ldb -ldl -lcrypt -lgdbm_compat
perllibs=-ldl -lcrypt -lgdbm_compat
libc=/usr/lib/libc.a, so=dll, useshrplib=true, libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' -s'
cccdlflags=' ', lddlflags=' -s -L/usr/local/lib'
Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY PERL_IMPLICIT_CONTEXT
PERL_USE_SAFE_PUTENV USE_64_BIT_INT USE_ITHREADS
USE_LARGE_FILES USE_PERLIO USE_REENTRANT_API
Locally applied patches:
MAINT28213
28854
Built under cygwin
Compiled at Oct 12 2006 13:55:58
%ENV:
PERLIO="perlio"
CYGWIN="server ntsec"
@INC:
/usr/lib/perl5/5.8/cygwin
/usr/lib/perl5/5.8
.
# EOF