summaryrefslogtreecommitdiff
path: root/contrib/binutils/libiberty/clock.c
diff options
context:
space:
mode:
authorDavid E. O'Brien <obrien@FreeBSD.org>2000-05-12 23:15:20 +0000
committerDavid E. O'Brien <obrien@FreeBSD.org>2000-05-12 23:15:20 +0000
commit78ce21c1dfcbe7807f37679871930161a4431ea9 (patch)
tree9d4ce42d357c391a11d77254b770908c02ecf672 /contrib/binutils/libiberty/clock.c
parent4a6dfd6c0adbe41f5abde95c957a415f8b6eb3dd (diff)
Notes
Diffstat (limited to 'contrib/binutils/libiberty/clock.c')
-rw-r--r--contrib/binutils/libiberty/clock.c24
1 files changed, 21 insertions, 3 deletions
diff --git a/contrib/binutils/libiberty/clock.c b/contrib/binutils/libiberty/clock.c
index b60de1657a45..db2509c17f27 100644
--- a/contrib/binutils/libiberty/clock.c
+++ b/contrib/binutils/libiberty/clock.c
@@ -1,5 +1,5 @@
/* ANSI-compatible clock function.
- Copyright (C) 1994, 1995 Free Software Foundation, Inc.
+ Copyright (C) 1994, 1995, 1999 Free Software Foundation, Inc.
This file is part of the libiberty library. This library is free
software; you can redistribute it and/or modify it under the
@@ -22,18 +22,36 @@ the resulting executable to be covered by the GNU General Public License.
This exception does not however invalidate any other reasons why
the executable file might be covered by the GNU General Public License. */
+#include "config.h"
+
#ifdef HAVE_GETRUSAGE
#include <sys/time.h>
#include <sys/resource.h>
#endif
#ifdef HAVE_TIMES
-#ifndef NO_SYS_PARAM_H
+#ifdef HAVE_SYS_PARAM_H
#include <sys/param.h>
#endif
#include <sys/times.h>
#endif
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
+#ifdef _SC_CLK_TCK
+#define GNU_HZ sysconf(_SC_CLK_TCK)
+#else
+#ifdef HZ
+#define GNU_HZ HZ
+#else
+#ifdef CLOCKS_PER_SEC
+#define GNU_HZ CLOCKS_PER_SEC
+#endif
+#endif
+#endif
+
/* FIXME: should be able to declare as clock_t. */
long
@@ -50,7 +68,7 @@ clock ()
struct tms tms;
times (&tms);
- return (tms.tms_utime + tms.tms_stime) * (1000000 / HZ);
+ return (tms.tms_utime + tms.tms_stime) * (1000000 / GNU_HZ);
#else
#ifdef VMS
struct