summaryrefslogtreecommitdiff
path: root/dist/Time-HiRes
Commit message (Collapse)AuthorAgeFilesLines
* Add missing ccflags on VMS to dist/Time-HiRes/Makefile.PLCraig A. Berry2023-05-161-1/+1
| | | | | | | | | | | The absence of these flags has never previously caused a problem for running the probes, but on OpenVMS x86, warnings about long symbols cause the probes to fail, probably because those symbols are not getting optimized out as early in the new compiler. This in turn causes the build to fail due to defining a homegrown clockid_t which conflicts with the system version. So add the flags that specify symbol handling (as well as everything else being used to build Perl).
* Time::HiRes: allow not checking atime between stat and lstatTony Cook2023-03-082-1/+8
| | | | | | | | | | | On a system with some sort of filesystem monitor such as a virus scanner the atime of the file can be modified by that monitor causing the test to fail. Testers can set PERL_FILE_ATIME_CHANGES to a true value to avoid comparing atime between the stat() and lstat() calls. Fixes #19321
* dist/Time-HiRes - silence ppport warningYves Orton2023-02-262-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | Silences the following warning: In file included from HiRes.xs:23: ./ppport.h:14832:1: warning: unused function 'DPPP_my_ck_warner' [-Wunused-function] DPPP_(my_ck_warner)(pTHX_ U32 err, const char *pat, ...) ^ ./ppport.h:11568:21: note: expanded from macro 'DPPP_' #define DPPP_(name) DPPP_CAT2(DPPP_NAMESPACE, name) ^ ./ppport.h:11567:24: note: expanded from macro 'DPPP_CAT2' #define DPPP_CAT2(x,y) CAT2(x,y) ^ ../../config.h:1387:19: note: expanded from macro 'CAT2' #define CAT2(a,b) PeRl_CaTiFy(a,b) ^ ../../config.h:1385:27: note: expanded from macro 'PeRl_CaTiFy' #define PeRl_CaTiFy(a, b) a ## b ^ <scratch space>:34:1: note: expanded from here DPPP_my_ck_warner ^ 1 warning generated.
* Use ppport.h when building dist/ modules in coreLeon Timmermans2023-02-223-6/+2
| | | | By always including `ppport.h`, this simplifies both XS code and tooling around it.
* Time::HiRes: Fix compiler warningKarl Williamson2022-10-301-2/+0
| | | | A variable was declared twice; remove the redundant one
* Time::HiRes: Changes updatesTony Cook2022-10-241-0/+7
|
* Time::HiRes: make sure PERL_DARWIN is defined on darwinTony Cook2022-10-241-0/+5
| | | | | | | The darwin hints file ensures this is set, but Apple appears to have removed it for the system perl. This prevented the emulation code for darwin from being compiled.
* Time::Hires: fix probing on the darwin system perlTony Cook2022-10-242-3/+12
| | | | | | | | The system compiler on recent-ish darwin doesn't appear to find the system perl headers when the CORE directory is supplied with -I, they need the directory to be specified by -iwithsysroot. Logic adapted from ExtUtils::MakeMaker.
* Time-HiRes: use GIMME_V instead of the deprecated GIMMEDagfinn Ilmari Mannsåker2022-09-063-4/+5
| | | | | GIMME_V has been around since 5.003_96. It was already used in some places, this just makes it consistent.
* Update Time-HiRes.xs to conform to ppport.h 3.68 recommendationsTodd Rinaldo2022-04-182-5/+6
|
* dist/Time-HiRes/t/stat.t: Provide descriptions for all testsJames E Keenan2022-01-043-25/+30
| | | | | | Convert 'print' to 'Test::More::note' in stat.t and t/Watchdog.pm. Require Test More 0.84 to get 'note' function per feedback from Tony Cook in https://github.com/Perl/perl5/pull/19322.
* bump $Time::HiRes::VERSIONTony Cook2021-08-171-1/+1
| | | | for the Makefile.PL change
* Time-HiRes: handle $Config{d_various} correctlyTony Cook2021-08-101-4/+16
| | | | | | | | | | | The Time::HiRes Makefile.PL checks %Config for a variety of symbols to attempt to probe for them without having to perform its own compilation/run to probe for them. This is useful for cross compilation, since the Time::HiRes probes don't appear to handle probing on a remote system as the Configure probes do. A few of these probes didn't set the appropriate -DTIME_HIRES_XXX symbol on the compilation command-line, fix that.
* Haiku BFS does not store atime and always return current timeThibault Duponchelle2021-07-132-10/+17
|
* Restore build with some mingw.org compilers using mingw runtimes >= 3.21Steve Hay2021-01-261-2/+3
| | | | | | | | | | | | | | | | | | | | | | | MinGW runtime version 3.21 added a definition of mkstemp(), so requires a fix similar to f33b2f5852 for MinGW-w64's runtime 4.0 onwards. Based on a patch by Dan Collins on GH#15446. This commit also tweaks 43b3b04375, having discovered that mingw runtime 3.22 also contains a definition of timespec. For me, this fixes the build with my mingw.org 5.3.0 compiler using any of the mingw runtimes 3.21, 3.22.4 or 5.0 without breaking older versions such as 4.9.3 with the 3.20 runtime (or even with the withdrawn 4.0.3 runtime, which had __MINGW32_MAJOR/MINOR_VERSION set to 3.20 whilst adding new a __MINGW_MAJOR/MINOR_VERSION set to 4.0). However, 6.3.0 and 7.3.0 have other issues when compiling win32sck.c, while 8.2.0 and 9.2.0 have other issues again when compiling win32.c. See GH#18510 for more details. Also, C++ mode builds with some MinGW/MinGW-w64 compilers are still broken, as documented in 8a217c9aa7. See GH#16459 for more details.
* Bump $Time::HiRes::VERSION for commit 43b3b04375Steve Hay2021-01-251-1/+1
|
* Restore build with mingw.org compilers using mingw runtimes < 5.0Steve Hay2021-01-251-2/+5
| | | | | | | | | | | | | | | | | | The Time::HiRes build was broken by 1d96b9c90e and requires a fix similar to daacfc6568 for mingw runtimes < 5.0. A definition of timespec was added in mingwrt-5.0. The compilers from mingw-w64 (which can be singled out by their definition of __MINGW64_VERSION_MAJOR) were not affected since they all have timespec defined anyway. For me, this fixes the build with my mingw.org compilers from 3.4.5 to 4.8.1 inclusive. These are using runtimes 3.15.2 to 4.0.3 (which actually reports itself as 3.20.0!) inclusive. Note that builds with mingw.org compilers using mingwrt >= 5.0 are still broken due to a different problem involving mkstemp(), as documented in 8a217c9aa7. See GH#15446 for more details.
* Revert "Fix Time::HiRes compile probe on VMS"Craig A. Berry2021-01-031-1/+1
| | | | | | | | | | | | | | | | | | | | This reverts commit 9eebd4ca7bb8610f51a27d96c12e9b1676958d55. It turns out that probing for the existence of functions also only generates informational messages (and thus a successful exit status) when the function is missing, e.g.: ret = clock_nanosleep(CLOCK_REALTIME, 0, &ts1, &ts2); ..........^ %CC-I-IMPLICITFUNC, In this statement, the identifier "clock_nanosleep" is implicitly declared as a function. at line number 13 in file D0:[craig.blead.dist.Time-HiRes]try.c;1 And we aren't linking in Time::HiRes's probes on VMS since making that work both in and out of core in a general way is no small feat. So we go back to requiring no compiler messages in the test compiles.
* Fix Time::HiRes compile probe on VMSCraig A. Berry2020-12-241-1/+1
| | | | | | | | | | | The probe was checking the severity bits of the compiler exit status and requiring the value to be 1, which is what they are for SS$_NORMAL. But actually any true (odd) value is considered successful. So, for example, if the compile succeeds but emits "informational messages" that do not rise to the level of warnings or errors, the severity bits have a value of 3, not 1. The probe should not fail (and end up halting the build) in this case, so allow any successful value.
* HiRes.xs: Remove unused macro defnsKarl Williamson2020-12-062-8/+1
|
* add gitignore exclusions for files in gitGraham Knop2020-11-231-0/+1
| | | | | | | | There are a number of files excluded using gitignore rules that are included in the repository. This can lead to confusion if something other than git tries to read the ignore files. Add rules to the gitignore files so that these files won't be ignored.
* dragonfly bsd timestamps are only microsecond precisionTony Cook2020-11-051-0/+5
| | | | based on testing
* dragonfly BSD's default filesystem is mounted noatime by defaultTony Cook2020-11-051-0/+1
|
* Time-HiRes uses PERL compare macroNicolas R2020-08-101-1/+1
|
* Time-HiRes: update Changes and promote github URLsNicolas R2020-08-102-3/+17
|
* Time-HiRes: Remove obsolete vms codeKarl Williamson2020-07-301-187/+8
| | | | | | This code became irrelevant in 1996. See https://github.com/Perl/perl5/pull/17658#pullrequestreview-377796612
* Time-HiRes: Use core version compareKarl Williamson2020-07-172-7/+1
| | | | This had its own copy of some macros that are now in core.
* Fix a bunch of repeated-word typosDagfinn Ilmari Mannsåker2020-05-221-2/+2
| | | | | Mostly in comments and docs, but some in diagnostic messages and one case of 'or die die'.
* bump $Time::HiRes::VERSIONTony Cook2019-09-231-1/+1
|
* Time::HiRes: fix compilation with Visual C++ 2013 and olderTomasz Konojacki2019-09-231-0/+8
| | | | | | | 1d96b9c90e199a42267d0142b9d623350a183412 broke it. It turns out that Visual C++ 2013 and older don't have the timespec structure. [perl #134447]
* bump $Time::HiRes::VERSIONTony Cook2019-09-091-1/+1
|
* Time::HiRes: implement clock_gettime() and clock_getres() for win32Tomasz Konojacki2019-09-092-5/+101
| | | | | | | To make the implementation easier, the guts of gettimeofday() were moved to a separate function named GetSystemTimePreciseAsFileTime(). [perl #134398]
* bump $Time::HiRes::VERSIONTony Cook2019-08-151-1/+1
|
* Time::HiRes: remove workaround for an ancient Devel::PPPort bugTomasz Konojacki2019-08-151-7/+0
| | | | | | It was fixed in Devel::PPPort 3.13_02. [perl #134288]
* Time::HiRes: remove the remains of MacOS classic supportTomasz Konojacki2019-08-151-41/+0
| | | | | | Perl dropped MacOS classic support ages ago. [perl #134288]
* Time::HiRes: remove code for perls older than 5.6Tomasz Konojacki2019-08-152-68/+6
| | | | | | | Both Makefile.PL and HiRes.pm contain "use 5.006", so it was dead code anyway. [perl #134288]
* Time::HiRes: normalize indentationTomasz Konojacki2019-08-1516-1781/+1790
| | | | | | | | | | | The indendation style now (roughly) matches what was specified in the style guide in perlhack. This commit doesn't contain any functional changes. If you're seeing it in "git blame" output, try using -w switch, it will hide whitespace-only changes. [perl #134288]
* refer Time::HiRes RT queue to perl coreGraham Knop2019-05-311-0/+12
|
* [PATCH] Remove vestiges of mpeix support (removed in 5.17.x)Richard Leach2019-05-301-3/+0
|
* Time::HiRes: Remove trailing blanksKarl Williamson2019-05-251-2/+2
|
* Time::HiRes: Add L<> to pod linksKarl Williamson2019-05-251-11/+16
|
* Update Time-HiRes Changes for 1.9760Nicolas R2019-02-181-0/+57
| | | | | | | | | | | | | | | 1.9760 is now released to CPAN to match its status in blead. This commit is synchronizing the Changelog, by reintroducing some history which were lost during previous reverts. Any new change since cf8375d should now go to the next release 1.9761. A '{{NEXT}}' entry was added to the Changes for tracking these changes. Note that a Dual-Life git repository is now available for Time-HiRes. Upstream-URL: https://github.com/Dual-Life/Time-HiRes
* Avoid compiler warning showing up on darwin.James E Keenan2018-09-251-0/+3
| | | | For example, in http://perl5.test-smoke.org/report/69659
* time::HiRes: don't truncate nanosec utimeDavid Mitchell2018-08-082-3/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When passed a floating point atime/mtime value, T::HR::utime() was converting it into two longs: secs and nsec. But the nanosec value was calculated using a final NV to long cast, which truncates any fractional part rather than rounding to nearest. Use a 0.5 addition to force rounding. This was manifesting as a test in lib/File/Copy.t failing to preserve the same mtime after a couple of round trips with utime() and stat(). In particular, the test was attempting to set an mtime to the literal floating-point value 1000000000.12345 This value can't be represented exactly as an NV, so was actually (under -Dquadmath) 1000000000.1234499999999999999999999568211720247320 which was (using truncation) being converted into the two sec/nsec longs: 1000000000, 123449999 After this commit, it instead correctly gets converted to 1000000000, 123450000
* Time-HiRes/t/itimer.t: avoid race condition.David Mitchell2018-08-071-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | This test script sets a repeating interval timer going, and after 4 'ticks' (SIGVTALRM), disables the timer (by setting it to zero). The main loop which does CPU burning, does a getitmer() every now and again, and when the value is zero, assumes the signal handler has disabled the timer, and so finishes. The trouble was that it was checking the 'time left', which can reach zero because the interval timer has counted down to zero, and the signal handler is about to be called, but the interval hasn't been reset back to 0.4s yet. i.e. the code doesn't distinguish between "timer disabled" and "timer just reached zero". In that scenario, the cleanup code in the test script disables the SIGVTALRM handler while the timer is still active, and so the process gets killed if another signal is raised. This commit changes the test to check the second value returned by getitmer() for being zero rather than the first - the second being the repeat interval, whichb is always 0.4 until the timer is disabled.
* Bump Time::HiRes $VERSION since its XS was changed in the previous commitSteve Hay2018-07-271-1/+1
|
* remove distros from needing ppport.h in coreDaniel Dragan2018-07-262-1/+4
| | | | | | | | | | | | | | | | These changes are towards a goal of removing mkppport one day as part of a optimization for parallel building (less deps needed before XS extensions are built). This is a follow-on patch to the dummy ppport.h trick in Perl #128438 ticket that had issues. -for Time::HiRes the DEFINE() in Makefile.PL can't be be in sub init() because that sub isn't called on windows -SLU has not needed ppport.h in core since commit 5e99e069f5 aka 1.47 import from cpan -Cwd used to be a no ppport.h since 3.25, in 3.30_02 the code (Cwd.xs) was deleted/broken under commit 9bc94e3dae, or changes file "Remove more special logic required for core perl.". Put back the Cwd.xs code and remove Cwd from the ppport.h list
* (perl #133030) make utime() available only if we have both fd and name settingTony Cook2018-04-261-1/+1
|
* Bump Time-HiRes to 1.9759 to revert changes from 1.9754..1.9758 on CPANTodd Rinaldo2018-03-232-1/+6
| | | | | Tag Porting/Maintainers.pl so it is clear that a release to CPAN is outstanding.
* Revert "Upgrade Time::HiRes from version 1.9753 to 1.9757"Todd Rinaldo2018-03-236-313/+123
| | | | | | | This reverts commit 13813507385079199d99d90776780dcd653f6919. On recommendation of the Author, we are reverting these changes for now in order to stabilize blead.