about summary refs log tree commit diff
path: root/time
diff options
context:
space:
mode:
Diffstat (limited to 'time')
-rw-r--r--time/localtime.c2
-rw-r--r--time/tzset.c5
2 files changed, 5 insertions, 2 deletions
diff --git a/time/localtime.c b/time/localtime.c
index 9dff89ce74..3800d8b5b0 100644
--- a/time/localtime.c
+++ b/time/localtime.c
@@ -40,13 +40,13 @@ __localtime_r (timer, tp)
   /* This lock is defined in tzset.c and locks all the data defined there
      and in tzfile.c; the internal functions do no locking themselves.
      This lock is only taken here and in `tzset'.  */
-  __libc_lock_define (extern, __tzset_lock);
   extern int __tzset_run, __use_tzfile;
   extern int __tz_compute __P ((time_t timer, struct tm *tp));
   extern int __tzfile_compute __P ((time_t timer,
 				    long int *leap_correct, int *leap_hit));
   long int leap_correction;
   int leap_extra_secs;
+  __libc_lock_define (extern, __tzset_lock);
 
   if (timer == NULL)
     {
diff --git a/time/tzset.c b/time/tzset.c
index a4fa8e358b..8323c7be6d 100644
--- a/time/tzset.c
+++ b/time/tzset.c
@@ -490,9 +490,12 @@ DEFUN(__tz_compute, (timer, tm),
 __libc_lock_define (, __tzset_lock)
 
 /* Reinterpret the TZ environment variable and set `tzname'.  */
+#undef tzset
 
-weak_symbol (tzset)
 void
+#ifdef weak_function
+weak_function
+#endif
 tzset (void)
 {
   __libc_lock_lock (__tzset_lock);