[perl #22141] patch for Time::HiRes to get rid of -lrt on linux
[p5sagit/p5-mst-13.2.git] / ext / Time / HiRes / Changes
1 Revision history for Perl extension Time::HiRes.
2
3 1.47
4         - do not use -lrt in Linux (from March Lehmann)
5                 - unnecessary (nanosleep is in libc anyway)
6                 - harmful (-lrt slows down execution)
7                 - incompatible (with many distributions' pthreads)
8
9 1.46
10         - do not create files in blib directories under core
11           (perl change #19160, from rgs)
12         - detypo s/VTLARM/VTARLM/ (perl change #19328, from mjd)
13
14 1.45
15         - guarantee that $xdefine in HiRes.t is always defined
16           (perl change #19109, from IlyaZ)
17         - a cleaner way to detect PERL_CORE (perl change #19111,
18           from IlyaZ)
19
20 1.44
21         - add hints/irix.pl to turn off overly POSIX flags that
22           cause hide struct timespec to be hidden (and compilation
23           to fail) (bleadperl change #19085)
24         - documentation tweaks
25
26 1.43
27         - add c:/temp to the list of temp directories to probe
28           so that cygwin (and win*?) builds are happy.  This was
29           needed at least in my cygwin 1.3.20/w2k setup.
30
31 1.42
32         - modernize the constants code (from Nicholas Clark)
33
34 1.41
35         - At some point the ability to figure our the correct incdir
36           for EXTERN.h (either a core perl build, or an installed perl)
37           had broken (which lead into all test compiles failing with
38           a core perl build, but thanks to the robustness of Makefile.PL
39           nothing of this was visible).  The brokenness seemed to be
40           caused by $ENV{PERL_CORE} not being on for core builds?
41           Now stole a trick from the Encode that sets $ENV{PERL_CORE}
42           right, and both styles of build should work again.
43
44 1.40
45         - Nicholas Clark noticed that the my_catdir() emulation function
46           was broken (which means that we didn't really work for Perls
47           5.002 and 5.003)
48         - inspired by fixing the above made the whole Makefile.PL -w
49           and strict clean
50         - tightened up the Makefile.PL output, less whitespace
51
52 1.39
53         - fix from Craig Berry for better building in VMS with PERL_CORE
54
55 1.38
56         - no functional changes
57         - move lib/Time/HiRes.pm as Hires.pm
58         - libraries scanning was slightly broken (always scanned
59           for a library even when $Config{libs} already had it)
60
61 1.37
62         - Ray Zimmerman ran into a race condition in Mac OS X.
63           A 0.01-second alarm fired before the test expected.
64           The test first slept indefinitely (blocking for signals)
65           and only after that tested for the signal having been sent.
66           Since the signal had already been sent, the test #12 never
67           completed.  The solution: test first, then block.
68         - default to being silent on all probing attempts, set the
69           environment variable VERBOSE to a true value to see the
70           details (the probing command and the possible errors)
71
72 1.36
73         - do not clear MAN3PODS in Makefile.PL (Radoslaw Zielinski)
74         - INSTALLDIRS => 'perl' missing which means that Time::HiRes
75           cannot be upgraded from CPAN to override the 5.8.0 version
76           (Guido A. Ostkamp)
77         - Time::HiRes 1.35 could not be dropped as-is to bleadperl
78           because the include directories did not adjust themselves
79           if $ENV{PERL_CORE} (Hugo van der Sanden)
80         - add documentation about the restart of select() under alarm()
81
82 1.35
83         - small documentation tweaks
84
85
86 1.34
87         - better VMS operation (Craig Berry)
88
89 1.33
90         - our time machine is accelerating: now works with Perl 5.004_01
91           (tried with 5.003_07 and 5.002 but I get segmentation faults
92            from running the Makefile.PL with those in Tru64 4.0D)
93
94 1.32
95         - backward compatibility (pre-5.6.0) tweaks:
96           - no XSLoader in 5.00503, use DynaLoader instead
97           - no SvPV_nolen, either
98           - no PerlProc_pause(), either
99           - now tested with 5.00404 and 5.00503
100           - Makefile.PL requires 5.00404 (no more 5.002)
101         - use nanosleep instead of usleep, if it is available (Wilson Snyder)
102           (this means that one can mix subsecond sleeps with alarms)
103         - because of nanosleep we probe for -lrt and -lposix4
104         - the existence of getitimer/nanosleep/setitimer/ualarm/usleep
105           is available by exportable constants Time::HiRes::d_func
106           (since older Perl do not have them in %Config, and even
107            5.8.0 does not probe for nanosleep)
108
109 1.31
110         - backward compatibility (pre-5.6.1) tweaks:
111           - define NV if no NVTYPE
112           - define IVdf if needed (note: the Devel::PPPort
113             in 5.8.0 does not try hard hard enough since
114             the IVSIZE might not be defined)
115           - define NVgf if needed
116           - grab the typemap from 5.8.0 for the NV stuff
117 1.30
118
119         - release 1.29_02 as 1.30
120
121 1.29_02
122
123         - fix a silly unclosed comment typo in HiRes.xs
124         - document and export REALTIME_REALPROF (Solaris)
125
126 1.29_01
127
128         - only getitimer(ITIMER_REAL) available in Cygwin and Win32
129           (need to patch this also in Perl 5.[89])
130         - remove CVS revision log from HiRes.xs
131
132 1.29_00
133
134         The following numbered patches refer to the Perl 5.7 changes,
135         you can browse them at http://public.activestate.com/cgi-bin/perlbrowse
136
137         - 17558: Add #!./perl to the .t
138         - 17201: linux + usemorebits fix, from Rafael Garcia-Suarez
139         - 16198: political correctness, from Simon Cozens
140         - 15857: doc tweaks, from Jarkko Hietaniemi
141         - 15593: optimization in .xs, from Paul Green
142         - 14892: pod fixes, from Robin Barker
143         - 14100: VOS fixes, from Paul Green
144         - 13422: XS segfault, from Marc Lehmann
145         - 13378: whether select() gets restarted on signals, depends
146         - 13354: timing constraints, again, from Andy Dougherty
147         - 13278: can't do subecond alarms with ualarm;
148                  break out early if alarms do not seem to be working
149         - 13266: test relaxation (cygwin gets lower hires
150                  times than lores ones)
151         - 12846: protect against high load, from Jarkko Hietaniemi
152         - 12837: HiRes.t VMS tweak, from Craig A. Berry
153         - 12797: HiRes.t VMS tweak, from Charles Lane
154         - 12769: HiRes.t VMS tweak, from Craig A. Berry
155         - 12744: gcc vs MS 64-bit constant syntax, from Nick Ing-Simmons
156         - 12722: VMS ualarm for VMS without ualarm, from Charles Lane
157         - 12692: alarm() ain't gonna work if ualarm() ain't,
158                  from Gurusamy Sarathy
159         - 12680: minor VMS tweak, from Charles Lane
160         - 12617: don't try to print ints as IVs, from Jarkko Hietaniemi
161         - 12609: croak on negative time, from Jarkko Hietaniemi
162         - 12595: Cygwin rounds up for time(), from Jarkko Hietaniemi
163         - 12594: MacOS Classic timeofday, from Chris Nandor 
164         - 12473: allow for more than one second for sleep() and usleep()
165         - 12458: test tuning, relax timing constraints,
166                  from Jarkko Hietaniemi
167         - 12449: make sleep() and usleep() to return the number
168                  of seconds and microseconds actually slept (analogously
169                  with the builtin sleep()), also make usleep() croak if
170                  asked for more than 1_000_000 useconds, from Jarkko Hietaniemi
171         - 12366: Time::HiRes for VMS pre-7.0, from Charles Lane
172         - 12199: do not use ftime on Win32, from Gurusamy Sarathy
173         - 12196: use ftime() on Win32, from Artur Bergman
174         - 12184: fix Time::HiRes gettimeofday() on Win32, from Gurusamy Sarathy
175         - 12105: use GetSystemTime() on Win32, from Artur Bergman
176         - 12060: explain the 1e9 seconds problem, from Jarkko Hietaniemi
177         - 11901: UNICOS sloppy division, from Jarkko Hietaniemi
178         - 11797: problem in HiRes.t, from John P. Linderman
179         - 11414: prototype from Time::HiRes::sleep(), from Abhijit Menon-Sen
180         - 11409: Time::HiRes qw(sleep) failed, from Abhijit Menon-Sen
181         - 11270: dynix/ptx 4.5.2 hints fix, from Peter Prymmer 
182         - 11032: VAX VMS s/div/lib\$ediv/ fix, from Peter Prymmer
183         - 11011: VAX VMS s/qdiv/div/ fix, from Peter Prymmer
184         - 10953: SCO OpenServer 5.0.5 requires an explicit -lc for usleep(),
185                  from Jonathan Stowe
186         - 10942: MPE/IX test tweaks, from Mark Bixby
187         - 10784: unnecessary pod2man calls, from Andy Dougherty 
188         - 10354: ext/ + -Wall, from Doug MacEachern
189         - 10320: fix the BOOT section to call myU2time correctly
190         - 10317: correct casting for AIX< from H. Merijn Brand
191         - 10119: document that the core time() may be rounding, not truncating
192         - 10118: test fix, from John Peacock
193         -  9988: long =item, from Robin Barker
194         -  9714: correct test output
195         -  9708: test also the scalar aspect of getitimer()
196         -  9705: Add interval timers (setitimer, getitimer)
197         -  9692: do not require at least 5.005 using XS
198                  
199         The following changes were made on top of the changes
200         made for Time::HiRes during the Perl 5.7 development
201         cycle that culminated in the release of Perl 5.8.0. 
202
203         - add "require 5.005" to the Makefile.PL
204         - remove the REVISION section (CVS log) from HiRes.pm
205         - add jhi's copyright alongside Douglas'
206         - move HiRes.pm to lib/Time/
207         - move HiRes.t to t/
208         - modify HiRes.t to use $ENV{PERL_CORE}
209         - modify the original Time::HiRes version 1.20 Makefile.PL
210           to work both with Perl 5.8.0 and the new code with pre-5.8.0
211           Perls (tried with 5.6.1)
212         - tiny tweaks and updates in README and TODO
213         - bump the VERSION to 1.29
214
215 1.20  Wed Feb 24 21:30 1999
216         - make our usleep and ualarm substitutes into hrt_usleep 
217           and hrt_ualarm. This helps static links of Perl with other
218           packages that also have usleep, etc. From
219           Ilya Zakharevich <ilya@math.ohio-state.edu>
220         - add C API stuff. From Joshua Pritikin
221           <joshua.pritikin@db.com>
222         - VMS Makefile.PL fun.  From pvhp@forte.com (Peter Prymmer)
223         - hopefully correct "-lc" fix for SCO.
224         - add PPD stuff
225
226 1.19  Tue Sep 29 22:30 1998
227         - put VMS gettimeofday() in. Patch is from Sebastian Bazley
228           <seb@stian.demon.co.uk>
229         - change GIMME_V to GIMME to help people with older versions of
230           Perl.
231         - fix Win32 version of gettimeofday(). It didn't affect anything,
232           but it confuses people reading the code when the return value
233           is backwards (0 is success).
234         - fix Makefile.PL (more) so that detection of gettimeofday is
235           more correct.
236
237 1.18  Mon Jul 6 22:40 1998
238         - add usleep() for Win32.
239         - fix Makefile.PL to fix reported HP/UX feature where unresolved
240           externals still cause an executable to be generated (though no
241           x bit set). Thanks to David Kozinn for report and explanation.
242           Problems with the fix are mine :)
243
244 1.17  Wed Jul 1 20:10 1998
245         - fix setitimer calls so microseconds is not more than 1000000.
246           Hp/UX 9 doesn't like that. Provided by Roland B Robert, PhD.
247         - make Win32. We only get gettimeofday (the select hack doesn't
248           seem to work on my Win95 system).
249         - fix test 4 on 01test.t. add test to see if time() and 
250           Time::HiRes::time() are close.
251
252 1.16  Wed Nov 12 21:05 1997
253         - add missing EXTEND in new gettimeofday scalar code.
254
255 1.15  Mon Nov 10 21:30 1997
256         - HiRes.pm: update pod. Provided by Gisle Aas.
257         - HiRes.xs: if gettimeofday() called in scalar context, do
258           something more useful than before. Provided by Gisle Aas.
259         - README: tell of xsubpp '-nolinenumber' woes. thanks to
260           Edward Henigin <ed@texas.net> for pointing out the problem.
261
262 1.14  Wed Nov 5 9:40 1997
263         - Makefile.PL: look for setitimer
264         - HiRes.xs: if missing ualarm, but we have setitimer, make up
265           our own setitimer. These were provided by Gisle Aas.
266
267 1.13  Tue Nov 4 23:30 1997
268         - Makefile.PL: fix autodetect mechanism to do try linking in addition
269           to just compiling; should fix Linux build problem. Fix was provided
270           by Gisle Aas.
271
272 1.12  Sun Oct 12 12:00:00 1997
273         - Makefile.PL: set XSOPT to '-nolinenumbers' to work around xsubpp bug;
274           you may need to comment this back out if you have an older xsubpp.
275         - HiRes.xs: set PROTOTYPES: DISABLE
276
277 1.11  Fri Sep 05 16:00:00 1997
278         - Makefile.PL:
279           Had some line commented out that shouldn't have been (testing
280           remnants)
281         - README:
282           Previous version was corrupted.
283
284 1.10  Thu May 22 20:20:00 1997
285         - HiRes.xs, HiRes.pm, t/*:
286               - only compile what we have OS support for (or can 
287                 fake with select())
288               - only test what we compiled 
289               - gross improvement to the test suite
290               - fix EXPORT_FAIL. 
291           This work was all done by Roderick Schertler
292           <roderick@argon.org>. If you run Linux or
293           one of the other ualarm-less platoforms, and you like this 
294           module, let Roderick know; without him, it still wouldn't 
295           be working on those boxes...
296         - Makefile.PL: figure out what routines the OS has and
297           only build what we need. These bits were written by Jarkko 
298           Hietaniemi <jhi@iki.fi>. Again, gratitude is due...
299
300 1.02  Mon Dec 30 08:00:00 1996
301         - HiRes.pm: update documentation to say what to do when missing
302           ualarm() and friends.
303         - README: update to warn that ualarm() and friends need to exist
304
305 1.01  Fri Oct 17 08:00:00 1996
306         - Makefile.PL: make XSPROTOARGS => '-noprototyopes'
307         - HiRes.pm: put blank line between __END__ and =head1 so that 
308           pod2man works.
309
310 1.00  Tue Sep 03 13:00:00 1996
311         - original version; created by h2xs 1.16