mirror of
https://git.busybox.net/buildroot.git
synced 2024-11-23 13:33:28 +08:00
package/uclibc: add custom bits/poll.h for xtensa
Definitions of POLLWRNORM, POLLWRBAND and POLLREMOVE in xtensa linux kernel are non-standard. Provide bits/poll.h with correct values for these constants for uclibc-ng. This fixes the following strace build errors: In file included from xlat/pollflags.h:4:0, from poll.c:34: ./static_assert.h:40:24: error: static assertion failed: "POLLWRBAND != 0x0100" # define static_assert _Static_assert ^ xlat/pollflags.h:75:1: note: in expansion of macro ‘static_assert’ static_assert((POLLWRBAND) == (0x0100), "POLLWRBAND != 0x0100"); ^~~~~~~~~~~~~ ./static_assert.h:40:24: error: static assertion failed: "POLLREMOVE != 0x0800" # define static_assert _Static_assert ^ xlat/pollflags.h:117:1: note: in expansion of macro ‘static_assert’ static_assert((POLLREMOVE) == (0x0800), "POLLREMOVE != 0x0800"); ^~~~~~~~~~~~~ Fixes: http://autobuild.buildroot.net/results/5a0112b7a2c81fa5253c9adc93efe415256cd811 Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> Reviewed-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
parent
2517fa73ed
commit
95f11fb25d
93
package/uclibc/0002-xtensa-add-custom-bits-poll.h.patch
Normal file
93
package/uclibc/0002-xtensa-add-custom-bits-poll.h.patch
Normal file
@ -0,0 +1,93 @@
|
||||
From 0cae9700a4a421dc22c80d205fbae4d01fdd1356 Mon Sep 17 00:00:00 2001
|
||||
From: Max Filippov <jcmvbkbc@gmail.com>
|
||||
Date: Wed, 12 Dec 2018 06:58:01 -0800
|
||||
Subject: [PATCH] xtensa: add custom bits/poll.h
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Definitions of POLLWRNORM, POLLWRBAND and POLLREMOVE in xtensa linux
|
||||
kernel are non-standard. Provide bits/poll.h with correct values for
|
||||
these constants.
|
||||
|
||||
This fixes the following strace build errors:
|
||||
|
||||
In file included from xlat/pollflags.h:4:0,
|
||||
from poll.c:34:
|
||||
./static_assert.h:40:24: error: static assertion failed: "POLLWRBAND != 0x0100"
|
||||
# define static_assert _Static_assert
|
||||
^
|
||||
xlat/pollflags.h:75:1: note: in expansion of macro ‘static_assert’
|
||||
static_assert((POLLWRBAND) == (0x0100), "POLLWRBAND != 0x0100");
|
||||
^~~~~~~~~~~~~
|
||||
./static_assert.h:40:24: error: static assertion failed: "POLLREMOVE != 0x0800"
|
||||
# define static_assert _Static_assert
|
||||
^
|
||||
xlat/pollflags.h:117:1: note: in expansion of macro ‘static_assert’
|
||||
static_assert((POLLREMOVE) == (0x0800), "POLLREMOVE != 0x0800");
|
||||
^~~~~~~~~~~~~
|
||||
|
||||
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
|
||||
---
|
||||
libc/sysdeps/linux/xtensa/bits/poll.h | 49 +++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 49 insertions(+)
|
||||
create mode 100644 libc/sysdeps/linux/xtensa/bits/poll.h
|
||||
|
||||
diff --git a/libc/sysdeps/linux/xtensa/bits/poll.h b/libc/sysdeps/linux/xtensa/bits/poll.h
|
||||
new file mode 100644
|
||||
index 000000000000..4588cc326006
|
||||
--- /dev/null
|
||||
+++ b/libc/sysdeps/linux/xtensa/bits/poll.h
|
||||
@@ -0,0 +1,49 @@
|
||||
+/* Copyright (C) 1997, 2001, 2006 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
|
||||
+ <http://www.gnu.org/licenses/>. */
|
||||
+
|
||||
+#ifndef _SYS_POLL_H
|
||||
+# error "Never use <bits/poll.h> directly; include <sys/poll.h> instead."
|
||||
+#endif
|
||||
+
|
||||
+/* Event types that can be polled for. These bits may be set in `events'
|
||||
+ to indicate the interesting event types; they will appear in `revents'
|
||||
+ to indicate the status of the file descriptor. */
|
||||
+#define POLLIN 0x001 /* There is data to read. */
|
||||
+#define POLLPRI 0x002 /* There is urgent data to read. */
|
||||
+#define POLLOUT 0x004 /* Writing now will not block. */
|
||||
+
|
||||
+#ifdef __USE_XOPEN
|
||||
+/* These values are defined in XPG4.2. */
|
||||
+# define POLLRDNORM 0x040 /* Normal data may be read. */
|
||||
+# define POLLRDBAND 0x080 /* Priority data may be read. */
|
||||
+# define POLLWRNORM POLLOUT /* Writing now will not block. */
|
||||
+# define POLLWRBAND 0x100 /* Priority data may be written. */
|
||||
+#endif
|
||||
+
|
||||
+#ifdef __USE_GNU
|
||||
+/* These are extensions for Linux. */
|
||||
+# define POLLMSG 0x400
|
||||
+# define POLLREMOVE 0x800
|
||||
+# define POLLRDHUP 0x2000
|
||||
+#endif
|
||||
+
|
||||
+/* Event types always implicitly polled for. These bits need not be set in
|
||||
+ `events', but they will appear in `revents' to indicate the status of
|
||||
+ the file descriptor. */
|
||||
+#define POLLERR 0x008 /* Error condition. */
|
||||
+#define POLLHUP 0x010 /* Hung up. */
|
||||
+#define POLLNVAL 0x020 /* Invalid polling request. */
|
||||
--
|
||||
2.11.0
|
||||
|
Loading…
Reference in New Issue
Block a user