From 91e21d25187d24bdd48875fb2544ec195ca2104a Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Mon, 19 Mar 2018 19:23:33 +0100 Subject: hppa: fix runtime issues Sync clone()/vfork() with GNU C Library. Allow CFI and fix strsignal() / tcsetattr(). --- libc/sysdeps/linux/hppa/bits/ioctls.h | 35 ++++++++++++++++++++++ .../sysdeps/linux/hppa/bits/uClibc_arch_features.h | 2 +- 2 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 libc/sysdeps/linux/hppa/bits/ioctls.h (limited to 'libc/sysdeps/linux/hppa/bits') diff --git a/libc/sysdeps/linux/hppa/bits/ioctls.h b/libc/sysdeps/linux/hppa/bits/ioctls.h new file mode 100644 index 000000000..99ecb0ff1 --- /dev/null +++ b/libc/sysdeps/linux/hppa/bits/ioctls.h @@ -0,0 +1,35 @@ +/* Copyright (C) 1996-2018 Free Software Foundation, Inc. + + 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_IOCTL_H +# error "Never use directly; include instead." +#endif + +/* Use the definitions from the kernel header files. */ +#include + +/* Oh well, this is necessary since the kernel data structure is + different from the user-level version. */ +#undef TCGETS +#undef TCSETS +#undef TCSETSW +#undef TCSETSF +#define TCGETS _IOR ('T', 16, char[36]) +#define TCSETS _IOW ('T', 17, char[36]) +#define TCSETSW _IOW ('T', 18, char[36]) +#define TCSETSF _IOW ('T', 19, char[36]) + +#include diff --git a/libc/sysdeps/linux/hppa/bits/uClibc_arch_features.h b/libc/sysdeps/linux/hppa/bits/uClibc_arch_features.h index 19fa05109..1c096bd17 100644 --- a/libc/sysdeps/linux/hppa/bits/uClibc_arch_features.h +++ b/libc/sysdeps/linux/hppa/bits/uClibc_arch_features.h @@ -30,7 +30,7 @@ #undef __UCLIBC_HAVE_ASM_WEAKEXT_DIRECTIVE__ /* define if target supports CFI pseudo ops */ -#undef __UCLIBC_HAVE_ASM_CFI_DIRECTIVES__ +#define __UCLIBC_HAVE_ASM_CFI_DIRECTIVES__ /* define if target supports IEEE signed zero floats */ #define __UCLIBC_HAVE_SIGNED_ZERO__ -- cgit v1.2.3