From 2a979d3a148057b7220aa4a173258cfec69f0ad1 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Tue, 14 Feb 2012 00:13:47 +0000 Subject: [PATCH] Split architecture-specific parts of sys/inotify.h into bits/inotify.h. --- ChangeLog | 11 +++ sysdeps/unix/sysv/linux/Makefile | 2 +- sysdeps/unix/sysv/linux/bits/inotify.h | 29 ++++++++ sysdeps/unix/sysv/linux/sparc/bits/inotify.h | 29 ++++++++ sysdeps/unix/sysv/linux/sparc/sys/inotify.h | 104 --------------------------- sysdeps/unix/sysv/linux/sys/inotify.h | 13 +--- 6 files changed, 73 insertions(+), 115 deletions(-) create mode 100644 sysdeps/unix/sysv/linux/bits/inotify.h create mode 100644 sysdeps/unix/sysv/linux/sparc/bits/inotify.h delete mode 100644 sysdeps/unix/sysv/linux/sparc/sys/inotify.h diff --git a/ChangeLog b/ChangeLog index 7339898..f7101a6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,16 @@ 2012-02-13 Joseph Myers + * sysdeps/unix/sysv/linux/bits/inotify.h: New file. + * sysdeps/unix/sysv/linux/sparc/bits/inotify.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/sys/inotify.h: Remove. + * sysdeps/unix/sysv/linux/sys/inotify.h: Get flags from + . + (IN_CLOEXEC, IN_NONBLOCK): Don't define here. + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + bits/inotify.h. + +2012-02-13 Joseph Myers + * sysdeps/unix/sysv/linux/bits/eventfd.h: New file. * sysdeps/unix/sysv/linux/sparc/bits/eventfd.h: Likewise. * sysdeps/unix/sysv/linux/sparc/sys/eventfd.h: Remove. diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile index 7da5502..2a457a6 100644 --- a/sysdeps/unix/sysv/linux/Makefile +++ b/sysdeps/unix/sysv/linux/Makefile @@ -32,7 +32,7 @@ sysdep_headers += sys/mount.h sys/acct.h sys/sysctl.h \ scsi/sg.h scsi/scsi.h scsi/scsi_ioctl.h sys/pci.h \ sys/ultrasound.h sys/raw.h sys/personality.h sys/epoll.h \ bits/a.out.h sys/inotify.h sys/signalfd.h sys/eventfd.h \ - sys/timerfd.h sys/fanotify.h bits/eventfd.h + sys/timerfd.h sys/fanotify.h bits/eventfd.h bits/inotify.h install-others += $(inst_includedir)/bits/syscall.h diff --git a/sysdeps/unix/sysv/linux/bits/inotify.h b/sysdeps/unix/sysv/linux/bits/inotify.h new file mode 100644 index 0000000..291f008 --- /dev/null +++ b/sysdeps/unix/sysv/linux/bits/inotify.h @@ -0,0 +1,29 @@ +/* Copyright (C) 2005-2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SYS_INOTIFY_H +# error "Never use directly; include instead." +#endif + +/* Flags for the parameter of inotify_init1. */ +enum + { + IN_CLOEXEC = 02000000, +#define IN_CLOEXEC IN_CLOEXEC + IN_NONBLOCK = 00004000 +#define IN_NONBLOCK IN_NONBLOCK + }; diff --git a/sysdeps/unix/sysv/linux/sparc/bits/inotify.h b/sysdeps/unix/sysv/linux/sparc/bits/inotify.h new file mode 100644 index 0000000..ca62d89 --- /dev/null +++ b/sysdeps/unix/sysv/linux/sparc/bits/inotify.h @@ -0,0 +1,29 @@ +/* Copyright (C) 2005-2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SYS_INOTIFY_H +# error "Never use directly; include instead." +#endif + +/* Flags for the parameter of inotify_init1. */ +enum + { + IN_CLOEXEC = 0x400000, +#define IN_CLOEXEC IN_CLOEXEC + IN_NONBLOCK = 0x004000 +#define IN_NONBLOCK IN_NONBLOCK + }; diff --git a/sysdeps/unix/sysv/linux/sparc/sys/inotify.h b/sysdeps/unix/sysv/linux/sparc/sys/inotify.h deleted file mode 100644 index 5d0e56f..0000000 --- a/sysdeps/unix/sysv/linux/sparc/sys/inotify.h +++ /dev/null @@ -1,104 +0,0 @@ -/* Copyright (C) 2005, 2006, 2008 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef _SYS_INOTIFY_H -#define _SYS_INOTIFY_H 1 - -#include - - -/* Flags for the parameter of inotify_init1. */ -enum - { - IN_CLOEXEC = 0x400000, -#define IN_CLOEXEC IN_CLOEXEC - IN_NONBLOCK = 0x4000 -#define IN_NONBLOCK IN_NONBLOCK - }; - - -/* Structure describing an inotify event. */ -struct inotify_event -{ - int wd; /* Watch descriptor. */ - uint32_t mask; /* Watch mask. */ - uint32_t cookie; /* Cookie to synchronize two events. */ - uint32_t len; /* Length (including NULs) of name. */ - char name __flexarr; /* Name. */ -}; - - -/* Supported events suitable for MASK parameter of INOTIFY_ADD_WATCH. */ -#define IN_ACCESS 0x00000001 /* File was accessed. */ -#define IN_MODIFY 0x00000002 /* File was modified. */ -#define IN_ATTRIB 0x00000004 /* Metadata changed. */ -#define IN_CLOSE_WRITE 0x00000008 /* Writtable file was closed. */ -#define IN_CLOSE_NOWRITE 0x00000010 /* Unwrittable file closed. */ -#define IN_CLOSE (IN_CLOSE_WRITE | IN_CLOSE_NOWRITE) /* Close. */ -#define IN_OPEN 0x00000020 /* File was opened. */ -#define IN_MOVED_FROM 0x00000040 /* File was moved from X. */ -#define IN_MOVED_TO 0x00000080 /* File was moved to Y. */ -#define IN_MOVE (IN_MOVED_FROM | IN_MOVED_TO) /* Moves. */ -#define IN_CREATE 0x00000100 /* Subfile was created. */ -#define IN_DELETE 0x00000200 /* Subfile was deleted. */ -#define IN_DELETE_SELF 0x00000400 /* Self was deleted. */ -#define IN_MOVE_SELF 0x00000800 /* Self was moved. */ - -/* Events sent by the kernel. */ -#define IN_UNMOUNT 0x00002000 /* Backing fs was unmounted. */ -#define IN_Q_OVERFLOW 0x00004000 /* Event queued overflowed. */ -#define IN_IGNORED 0x00008000 /* File was ignored. */ - -/* Helper events. */ -#define IN_CLOSE (IN_CLOSE_WRITE | IN_CLOSE_NOWRITE) /* Close. */ -#define IN_MOVE (IN_MOVED_FROM | IN_MOVED_TO) /* Moves. */ - -/* Special flags. */ -#define IN_ONLYDIR 0x01000000 /* Only watch the path if it is a - directory. */ -#define IN_DONT_FOLLOW 0x02000000 /* Do not follow a sym link. */ -#define IN_MASK_ADD 0x20000000 /* Add to the mask of an already - existing watch. */ -#define IN_ISDIR 0x40000000 /* Event occurred against dir. */ -#define IN_ONESHOT 0x80000000 /* Only send event once. */ - -/* All events which a program can wait on. */ -#define IN_ALL_EVENTS (IN_ACCESS | IN_MODIFY | IN_ATTRIB | IN_CLOSE_WRITE \ - | IN_CLOSE_NOWRITE | IN_OPEN | IN_MOVED_FROM \ - | IN_MOVED_TO | IN_CREATE | IN_DELETE \ - | IN_DELETE_SELF | IN_MOVE_SELF) - - -__BEGIN_DECLS - -/* Create and initialize inotify instance. */ -extern int inotify_init (void) __THROW; - -/* Create and initialize inotify instance. */ -extern int inotify_init1 (int __flags) __THROW; - -/* Add watch of object NAME to inotify instance FD. Notify about - events specified by MASK. */ -extern int inotify_add_watch (int __fd, const char *__name, uint32_t __mask) - __THROW; - -/* Remove the watch specified by WD from the inotify instance FD. */ -extern int inotify_rm_watch (int __fd, uint32_t __wd) __THROW; - -__END_DECLS - -#endif /* sys/inotify.h */ diff --git a/sysdeps/unix/sysv/linux/sys/inotify.h b/sysdeps/unix/sysv/linux/sys/inotify.h index 8276376..a1d74d6 100644 --- a/sysdeps/unix/sysv/linux/sys/inotify.h +++ b/sysdeps/unix/sysv/linux/sys/inotify.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2005, 2006, 2008, 2009, 2010 Free Software Foundation, Inc. +/* Copyright (C) 2005-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -20,15 +20,8 @@ #include - -/* Flags for the parameter of inotify_init1. */ -enum - { - IN_CLOEXEC = 02000000, -#define IN_CLOEXEC IN_CLOEXEC - IN_NONBLOCK = 04000 -#define IN_NONBLOCK IN_NONBLOCK - }; +/* Get the platform-dependent flags. */ +#include /* Structure describing an inotify event. */ -- 2.7.4