From 5d9eaeecb451dc85479c1905d41a0b41c6d8b1d0 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Wed, 1 Aug 2012 11:39:08 -0700 Subject: Move Linuxism out of sysdeps/arm/dl-machine.h. --- ports/ChangeLog.arm | 4 ++++ ports/sysdeps/arm/dl-machine.h | 8 ++++---- ports/sysdeps/unix/sysv/linux/arm/dl-machine.h | 28 ++++++++++++++++++++++++++ 3 files changed, 36 insertions(+), 4 deletions(-) create mode 100644 ports/sysdeps/unix/sysv/linux/arm/dl-machine.h diff --git a/ports/ChangeLog.arm b/ports/ChangeLog.arm index 2b109db332..bbf9c68127 100644 --- a/ports/ChangeLog.arm +++ b/ports/ChangeLog.arm @@ -1,5 +1,9 @@ 2012-08-01 Roland McGrath + * sysdeps/arm/dl-machine.h (CLEAR_CACHE): Don't define it. + Instead, #error if it's not defined. + * sysdeps/unix/sysv/linux/arm/dl-machine.h: New file. + [BZ #14138] * sysdeps/unix/sysv/linux/arm/getrlimit.c: File removed. diff --git a/ports/sysdeps/arm/dl-machine.h b/ports/sysdeps/arm/dl-machine.h index 8d905e8ad9..442fc3ddcd 100644 --- a/ports/sysdeps/arm/dl-machine.h +++ b/ports/sysdeps/arm/dl-machine.h @@ -1,6 +1,5 @@ /* Machine-dependent ELF dynamic relocation inline functions. ARM version. - Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005, - 2006, 2009, 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 1995-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 @@ -27,8 +26,9 @@ #include #include -#define CLEAR_CACHE(BEG,END) \ - INTERNAL_SYSCALL_ARM (cacheflush, , 3, (BEG), (END), 0) +#ifndef CLEAR_CACHE +# error CLEAR_CACHE definition required to handle TEXTREL +#endif /* Return nonzero iff ELF header is compatible with the running host. */ static inline int __attribute__ ((unused)) diff --git a/ports/sysdeps/unix/sysv/linux/arm/dl-machine.h b/ports/sysdeps/unix/sysv/linux/arm/dl-machine.h new file mode 100644 index 0000000000..7c96cb754f --- /dev/null +++ b/ports/sysdeps/unix/sysv/linux/arm/dl-machine.h @@ -0,0 +1,28 @@ +/* Machine-dependent ELF dynamic relocation inline functions. ARM/Linux version + Copyright (C) 1995-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 dl_machine_h + +/* This definition is Linux-specific. */ +#define CLEAR_CACHE(BEG,END) \ + INTERNAL_SYSCALL_ARM (cacheflush, , 3, (BEG), (END), 0) + +/* The rest is just machine-specific. */ +#include + +#endif -- cgit 1.4.1