X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=lib%2Ftimespec.h;h=81b342300e62c10d1376a8f62a7874e32218d278;hb=1818209f5c4879522d69a09bedb0553543d6889e;hp=8188c208c036213f0dc1f6d95b67293e4a935593;hpb=e7921f54c622e3b32e525f345bc34308821e4ae0;p=debian%2Fgzip
diff --git a/lib/timespec.h b/lib/timespec.h
index 8188c20..81b3423 100644
--- a/lib/timespec.h
+++ b/lib/timespec.h
@@ -1,11 +1,12 @@
/* timespec -- System time interface
- Copyright (C) 2000, 2002, 2004, 2005 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2002, 2004-2005, 2007, 2009-2010 Free Software
+ Foundation, Inc.
- This program is free software; you can redistribute it and/or modify
+ This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -13,32 +14,12 @@
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software Foundation,
- Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
+ along with this program. If not, see . */
#if ! defined TIMESPEC_H
# define TIMESPEC_H
-# include
-# if TIME_WITH_SYS_TIME
-# include
-# include
-# else
-# if HAVE_SYS_TIME_H
-# include
-# else
-# include
-# endif
-# endif
-
-# if ! HAVE_STRUCT_TIMESPEC
-/* Some systems don't define this struct, e.g., AIX 4.1, Ultrix 4.3. */
-struct timespec
-{
- time_t tv_sec;
- long tv_nsec;
-};
-# endif
+# include
/* Return negative, zero, positive if A < B, A == B, A > B, respectively.
Assume the nanosecond components are in range, or close to it. */
@@ -46,16 +27,12 @@ static inline int
timespec_cmp (struct timespec a, struct timespec b)
{
return (a.tv_sec < b.tv_sec ? -1
- : a.tv_sec > b.tv_sec ? 1
- : a.tv_nsec - b.tv_nsec);
+ : a.tv_sec > b.tv_sec ? 1
+ : a.tv_nsec < b.tv_nsec ? -1
+ : a.tv_nsec > b.tv_nsec ? 1
+ : 0);
}
-# if ! HAVE_DECL_NANOSLEEP
-/* Don't specify a prototype here. Some systems (e.g., OSF) declare
- nanosleep with a conflicting one (const-less first parameter). */
-int nanosleep ();
-# endif
-
void gettime (struct timespec *);
int settime (struct timespec const *);