]> git.wh0rd.org - patches.git/blobdiff - uclibc-mips-revert-stat-sigaction.patch
more random patches. who knows.
[patches.git] / uclibc-mips-revert-stat-sigaction.patch
diff --git a/uclibc-mips-revert-stat-sigaction.patch b/uclibc-mips-revert-stat-sigaction.patch
new file mode 100644 (file)
index 0000000..bb2db49
--- /dev/null
@@ -0,0 +1,85 @@
+Index: libc/sysdeps/linux/mips/bits/sigaction.h
+===================================================================
+--- libc/sysdeps/linux/mips/bits/sigaction.h   (revision 11027)
++++ libc/sysdeps/linux/mips/bits/sigaction.h   (revision 11025)
+@@ -1,6 +1,5 @@
+ /* The proper definitions for Linux/MIPS's sigaction.
+-   Copyright (C) 1993, 1994, 1995, 1997, 1998, 1999, 2000, 2003
+-      Free Software Foundation, Inc.
++   Copyright (C) 1993,94,95,97,98,99,2000 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
+@@ -45,14 +44,6 @@
+ #endif
+     /* Additional set of signals to be blocked.  */
+     __sigset_t sa_mask;
+-
+-    /* The ABI says here are two unused ints following. */
+-    /* Restore handler.  */
+-    void (*sa_restorer) (void);
+-
+-#if _MIPS_SZPTR < 64
+-    int sa_resv[1];
+-#endif
+   };
+ /* Bits in `sa_flags'.  */
+Index: libc/sysdeps/linux/mips/bits/kernel_sigaction.h
+===================================================================
+--- libc/sysdeps/linux/mips/bits/kernel_sigaction.h    (revision 11027)
++++ /dev/null (revision 11025)
+@@ -1,40 +0,0 @@
+-/* This is the sigaction structure from the Linux 2.1.24 kernel.  */
+-
+-#include <sgidefs.h>
+-
+-#define HAVE_SA_RESTORER
+-
+-struct old_kernel_sigaction {
+-      unsigned int    sa_flags;
+-      __sighandler_t  k_sa_handler;
+-      unsigned long   sa_mask;
+-      unsigned int    __pad0[3]; /* reserved, keep size constant */
+-
+-      /* Abi says here follows reserved int[2] */
+-      void            (*sa_restorer)(void);
+-#if (_MIPS_SZPTR < 64)
+-      /*
+-       * For 32 bit code we have to pad struct sigaction to get
+-       * constant size for the ABI
+-       */
+-      int             pad1[1]; /* reserved */
+-#endif
+-};
+-
+-
+-#define _KERNEL_NSIG         128
+-#define _KERNEL_NSIG_BPW       _MIPS_SZLONG
+-#define _KERNEL_NSIG_WORDS     (_KERNEL_NSIG / _KERNEL_NSIG_BPW)
+-
+-typedef struct {
+-      unsigned long sig[_KERNEL_NSIG_WORDS];
+-} kernel_sigset_t;
+-
+-/* This is the sigaction structure from the Linux 2.1.68 kernel.  */
+-struct kernel_sigaction {
+-      unsigned int    sa_flags;
+-      __sighandler_t  k_sa_handler;
+-      kernel_sigset_t sa_mask;
+-      void            (*sa_restorer)(void);
+-      int             s_resv[1]; /* reserved */
+-};
+Index: libc/sysdeps/linux/mips/Makefile
+===================================================================
+--- libc/sysdeps/linux/mips/Makefile   (revision 11027)
++++ libc/sysdeps/linux/mips/Makefile   (revision 11025)
+@@ -28,7 +28,7 @@
+ SOBJS=$(patsubst %.S,%.o, $(SSRC))
+ CSRC=__longjmp.c  brk.c setjmp_aux.c mmap.c __syscall_error.c \
+-      cacheflush.c pread_write.c sysmips.c _test_and_set.c sigaction.c
++      cacheflush.c pread_write.c sysmips.c _test_and_set.c #sigaction.c
+ COBJS=$(patsubst %.c,%.o, $(CSRC))
+ OBJS=$(SOBJS) $(COBJS)