Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src Do as POSIX says, define the timespec structure in <signal.h>



details:   https://anonhg.NetBSD.org/src/rev/56c9a6af7502
branches:  trunk
changeset: 339627:56c9a6af7502
user:      kamil <kamil%NetBSD.org@localhost>
date:      Fri Jul 31 12:51:32 2015 +0000

description:
Do as POSIX says, define the timespec structure in <signal.h>

Extract struct timespec from <sys/time.h> and put into a separate header.

This solution is minimally invasive.

diffstat:

 distrib/sets/lists/comp/mi |   3 +-
 include/signal.h           |   4 +-
 sys/sys/Makefile           |   4 +-
 sys/sys/time.h             |  10 +-------
 sys/sys/timespec.h         |  52 ++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 60 insertions(+), 13 deletions(-)

diffs (133 lines):

diff -r fdcc730813a7 -r 56c9a6af7502 distrib/sets/lists/comp/mi
--- a/distrib/sets/lists/comp/mi        Fri Jul 31 10:16:36 2015 +0000
+++ b/distrib/sets/lists/comp/mi        Fri Jul 31 12:51:32 2015 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: mi,v 1.1974 2015/07/29 00:12:27 christos Exp $
+#      $NetBSD: mi,v 1.1975 2015/07/31 12:51:32 kamil Exp $
 #
 # Note: don't delete entries from here - mark them as "obsolete" instead.
 #
@@ -3317,6 +3317,7 @@
 ./usr/include/sys/timeb.h                      comp-c-include
 ./usr/include/sys/timepps.h                    comp-c-include
 ./usr/include/sys/times.h                      comp-c-include
+./usr/include/sys/timespec.h                   comp-c-include
 ./usr/include/sys/timex.h                      comp-c-include
 ./usr/include/sys/tls.h                                comp-c-include
 ./usr/include/sys/tprintf.h                    comp-obsolete           obsolete
diff -r fdcc730813a7 -r 56c9a6af7502 include/signal.h
--- a/include/signal.h  Fri Jul 31 10:16:36 2015 +0000
+++ b/include/signal.h  Fri Jul 31 12:51:32 2015 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: signal.h,v 1.54 2010/08/27 08:40:38 christos Exp $     */
+/*     $NetBSD: signal.h,v 1.55 2015/07/31 12:51:32 kamil Exp $        */
 
 /*-
  * Copyright (c) 1991, 1993
@@ -183,7 +183,7 @@
 void   psiginfo(const siginfo_t *, const char *);
 
 #ifndef __LIBC12_SOURCE__
-struct timespec;
+#include <sys/timespec.h>
 int    sigtimedwait(const sigset_t * __restrict,
     siginfo_t * __restrict, const struct timespec * __restrict)
     __RENAME(__sigtimedwait50);
diff -r fdcc730813a7 -r 56c9a6af7502 sys/sys/Makefile
--- a/sys/sys/Makefile  Fri Jul 31 10:16:36 2015 +0000
+++ b/sys/sys/Makefile  Fri Jul 31 12:51:32 2015 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: Makefile,v 1.155 2015/07/29 00:10:25 christos Exp $
+#      $NetBSD: Makefile,v 1.156 2015/07/31 12:51:32 kamil Exp $
 
 .include <bsd.own.mk>
 
@@ -39,7 +39,7 @@
        socketvar.h sockio.h spawn.h specificdata.h stat.h \
        statvfs.h syscall.h syscallargs.h sysctl.h stdarg.h stdbool.h \
        stdint.h swap.h syncobj.h syslimits.h syslog.h \
-       tape.h termios.h time.h timeb.h timepps.h times.h \
+       tape.h termios.h time.h timeb.h timepps.h times.h timespec.h \
        timex.h tls.h trace.h tree.h tty.h ttychars.h ttycom.h \
        ttydefaults.h ttydev.h types.h \
        ucontext.h ucred.h uio.h un.h unistd.h unpcb.h user.h utsname.h uuid.h \
diff -r fdcc730813a7 -r 56c9a6af7502 sys/sys/time.h
--- a/sys/sys/time.h    Fri Jul 31 10:16:36 2015 +0000
+++ b/sys/sys/time.h    Fri Jul 31 12:51:32 2015 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: time.h,v 1.69 2015/05/19 23:35:11 riastradh Exp $      */
+/*     $NetBSD: time.h,v 1.70 2015/07/31 12:51:32 kamil Exp $  */
 
 /*
  * Copyright (c) 1982, 1986, 1993
@@ -46,13 +46,7 @@
        suseconds_t     tv_usec;        /* and microseconds */
 };
 
-/*
- * Structure defined by POSIX.1b to be like a timeval.
- */
-struct timespec {
-       time_t  tv_sec;         /* seconds */
-       long    tv_nsec;        /* and nanoseconds */
-};
+#include <sys/timespec.h>
 
 #if defined(_NETBSD_SOURCE)
 #define        TIMEVAL_TO_TIMESPEC(tv, ts) do {                                \
diff -r fdcc730813a7 -r 56c9a6af7502 sys/sys/timespec.h
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/sys/timespec.h        Fri Jul 31 12:51:32 2015 +0000
@@ -0,0 +1,52 @@
+/*     $NetBSD: timespec.h,v 1.1 2015/07/31 12:51:32 kamil Exp $       */
+
+/*
+ * Copyright (c) 1982, 1986, 1993
+ *     The Regents of the University of California.  All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ *     @(#)time.h      8.5 (Berkeley) 5/4/95
+ *
+ * Extracted by Kamil Rytarowski from:
+ * NetBSD: src/sys/sys/time.h,v 1.69 2015/05/19 23:35:11 riastradh Exp
+ */
+
+#ifndef _SYS_TIMESPEC_H_
+#define        _SYS_TIMESPEC_H_
+
+#include <sys/ansi.h>
+
+#ifdef _BSD_TIME_T_
+typedef        _BSD_TIME_T_    time_t;
+#undef _BSD_TIME_T_
+#endif
+
+struct timespec {
+       time_t  tv_sec;         /* seconds */
+       long    tv_nsec;        /* and nanoseconds */
+};
+
+#endif /* !_SYS_TIMESPEC_H_ */



Home | Main Index | Thread Index | Old Index