Module Name: src
Committed By: kamil
Date: Fri Jul 31 12:51:32 UTC 2015
Modified Files:
src/distrib/sets/lists/comp: mi
src/include: signal.h
src/sys/sys: Makefile time.h
Added Files:
src/sys/sys: timespec.h
Log Message:
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.
To generate a diff of this commit:
cvs rdiff -u -r1.1974 -r1.1975 src/distrib/sets/lists/comp/mi
cvs rdiff -u -r1.54 -r1.55 src/include/signal.h
cvs rdiff -u -r1.155 -r1.156 src/sys/sys/Makefile
cvs rdiff -u -r1.69 -r1.70 src/sys/sys/time.h
cvs rdiff -u -r0 -r1.1 src/sys/sys/timespec.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/distrib/sets/lists/comp/mi
diff -u src/distrib/sets/lists/comp/mi:1.1974 src/distrib/sets/lists/comp/mi:1.1975
--- src/distrib/sets/lists/comp/mi:1.1974 Wed Jul 29 00:12:27 2015
+++ src/distrib/sets/lists/comp/mi Fri Jul 31 12:51:32 2015
@@ -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
Index: src/include/signal.h
diff -u src/include/signal.h:1.54 src/include/signal.h:1.55
--- src/include/signal.h:1.54 Fri Aug 27 08:40:38 2010
+++ src/include/signal.h Fri Jul 31 12:51:32 2015
@@ -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 @@ int sigwaitinfo(const sigset_t * __restr
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);
Index: src/sys/sys/Makefile
diff -u src/sys/sys/Makefile:1.155 src/sys/sys/Makefile:1.156
--- src/sys/sys/Makefile:1.155 Wed Jul 29 00:10:25 2015
+++ src/sys/sys/Makefile Fri Jul 31 12:51:32 2015
@@ -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 @@ INCS= acct.h agpio.h aio.h ansi.h aout_m
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 \
Index: src/sys/sys/time.h
diff -u src/sys/sys/time.h:1.69 src/sys/sys/time.h:1.70
--- src/sys/sys/time.h:1.69 Tue May 19 23:35:11 2015
+++ src/sys/sys/time.h Fri Jul 31 12:51:32 2015
@@ -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 @@ struct timeval {
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 { \
Added files:
Index: src/sys/sys/timespec.h
diff -u /dev/null src/sys/sys/timespec.h:1.1
--- /dev/null Fri Jul 31 12:51:33 2015
+++ src/sys/sys/timespec.h Fri Jul 31 12:51:32 2015
@@ -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_ */