about summary refs log tree commit diff
path: root/posix
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2004-12-10 00:41:30 +0000
committerUlrich Drepper <drepper@redhat.com>2004-12-10 00:41:30 +0000
commitbf7c04cd5f4b3a7d3e3155b0035396e7f1037a13 (patch)
treefca029f46efa5faba09dbbb5035ba8efa53878f7 /posix
parent708bfb9a90fca1ecf14668e7455d747d7e8b152c (diff)
downloadglibc-bf7c04cd5f4b3a7d3e3155b0035396e7f1037a13.tar.gz
glibc-bf7c04cd5f4b3a7d3e3155b0035396e7f1037a13.tar.xz
glibc-bf7c04cd5f4b3a7d3e3155b0035396e7f1037a13.zip
Update.
2004-12-01  Jakub Jelinek  <jakub@redhat.com>

	* posix/tst-regex.c: Use defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
	conditionals instead of defined _POSIX_CPUTIME.
	(main): If _POSIX_CPUTIME == 0, call sysconf to see if CPUTIME
	option is available.
	* posix/tst-regex.c2: Use defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
	conditionals instead of defined _POSIX_CPUTIME.
	(do_test): If _POSIX_CPUTIME == 0, call sysconf to see if CPUTIME
	option is available.
	* sysdeps/posix/sysconf.c (__sysconf): If _POSIX_CPUTIME resp.
	_POSIX_THREAD_CPUTIME is defined to 0, return -1 for the corresponding
	_SC_ argument.
Diffstat (limited to 'posix')
-rw-r--r--posix/tst-regex.c25
-rw-r--r--posix/tst-regex2.c17
2 files changed, 26 insertions, 16 deletions
diff --git a/posix/tst-regex.c b/posix/tst-regex.c
index 53960a3d9a..6a71e1239a 100644
--- a/posix/tst-regex.c
+++ b/posix/tst-regex.c
@@ -37,7 +37,7 @@
 #include <regex.h>
 
 
-#ifdef _POSIX_CPUTIME
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
 static clockid_t cl;
 static int use_clock;
 #endif
@@ -118,9 +118,14 @@ main (int argc, char *argv[])
   if (inlen != 0)
     error (EXIT_FAILURE, errno, "cannot convert buffer");
 
-#ifdef _POSIX_CPUTIME
-  /* See whether we can use the CPU clock.  */
-  use_clock = clock_getcpuclockid (0, &cl) == 0;
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
+# if _POSIX_CPUTIME == 0
+  if (sysconf (_SC_CPUTIME) < 0)
+    use_clock = 0;
+  else
+# endif
+    /* See whether we can use the CPU clock.  */
+    use_clock = clock_getcpuclockid (0, &cl) == 0;
 #endif
 
 #ifdef DEBUG
@@ -202,7 +207,7 @@ static int
 run_test (const char *expr, const char *mem, size_t memlen, int icase,
 	  int expected)
 {
-#ifdef _POSIX_CPUTIME
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
   struct timespec start;
   struct timespec finish;
 #endif
@@ -211,7 +216,7 @@ run_test (const char *expr, const char *mem, size_t memlen, int icase,
   size_t offset;
   int cnt;
 
-#ifdef _POSIX_CPUTIME
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
   if (use_clock && !timing)
     use_clock = clock_gettime (cl, &start) == 0;
 #endif
@@ -260,7 +265,7 @@ run_test (const char *expr, const char *mem, size_t memlen, int icase,
 
   regfree (&re);
 
-#ifdef _POSIX_CPUTIME
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
   if (use_clock && !timing)
     {
       use_clock = clock_gettime (cl, &finish) == 0;
@@ -345,7 +350,7 @@ static int
 run_test_backwards (const char *expr, const char *mem, size_t memlen,
 		    int icase, int expected)
 {
-#ifdef _POSIX_CPUTIME
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
   struct timespec start;
   struct timespec finish;
 #endif
@@ -354,7 +359,7 @@ run_test_backwards (const char *expr, const char *mem, size_t memlen,
   size_t offset;
   int cnt;
 
-#ifdef _POSIX_CPUTIME
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
   if (use_clock && !timing)
     use_clock = clock_gettime (cl, &start) == 0;
 #endif
@@ -406,7 +411,7 @@ run_test_backwards (const char *expr, const char *mem, size_t memlen,
 
   regfree (&re);
 
-#ifdef _POSIX_CPUTIME
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
   if (use_clock && !timing)
     {
       use_clock = clock_gettime (cl, &finish) == 0;
diff --git a/posix/tst-regex2.c b/posix/tst-regex2.c
index a107f73ba4..0d82c2acdd 100644
--- a/posix/tst-regex2.c
+++ b/posix/tst-regex2.c
@@ -8,7 +8,7 @@
 #include <time.h>
 #include <unistd.h>
 
-#ifdef _POSIX_CPUTIME
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
 static clockid_t cl;
 static int use_clock;
 #endif
@@ -16,9 +16,14 @@ static int use_clock;
 static int
 do_test (void)
 {
-#ifdef _POSIX_CPUTIME
-  /* See whether we can use the CPU clock.  */
-  use_clock = clock_getcpuclockid (0, &cl) == 0;
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
+# if _POSIX_CPUTIME == 0
+  if (sysconf (_SC_CPUTIME) < 0)
+    use_clock = 0;
+  else
+# endif
+    /* See whether we can use the CPU clock.  */
+    use_clock = clock_getcpuclockid (0, &cl) == 0;
 #endif
 
   static const char *pat[] = {
@@ -112,7 +117,7 @@ do_test (void)
 	      rpbuf.no_sub = 1;
 	  }
 
-#ifdef _POSIX_CPUTIME
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
       struct timespec start, stop;
       if (use_clock)
 	use_clock = clock_gettime (cl, &start) == 0;
@@ -211,7 +216,7 @@ do_test (void)
 	    }
 	}
 
-#ifdef _POSIX_CPUTIME
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
       if (use_clock)
 	use_clock = clock_gettime (cl, &stop) == 0;
       if (use_clock)