[arch-commits] Commit in klibc/trunk (PKGBUILD klibc-fix-i686-signals.patch)

Thomas Bächler thomas at archlinux.org
Wed Oct 21 22:21:10 UTC 2009


    Date: Wednesday, October 21, 2009 @ 18:21:09
  Author: thomas
Revision: 56456

Fix build on i686 by removing dumb signal workarounds

Added:
  klibc/trunk/klibc-fix-i686-signals.patch
Modified:
  klibc/trunk/PKGBUILD

------------------------------+
 PKGBUILD                     |    8 ++
 klibc-fix-i686-signals.patch |  112 +++++++++++++++++++++++++++++++++++++++++
 2 files changed, 118 insertions(+), 2 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2009-10-21 22:18:05 UTC (rev 56455)
+++ PKGBUILD	2009-10-21 22:21:09 UTC (rev 56456)
@@ -26,14 +26,16 @@
         klibc-x86_64-fix-io.h.patch
         klibc-fix-2.6.28-includes.patch
         kinit-fix-init-cmdline.patch
-        klibc-fix-nfs-defines.patch)
+        klibc-fix-nfs-defines.patch
+        klibc-fix-i686-signals.patch)
 md5sums=('b5527be46f24779884557b11888c8075'
          'c263a7c3fd290fcc84a4e230d456d022'
          'ff5b113024256de31af59c2f1a966516'
          'fcee75cfaa65638b07f9cc4a7719fa29'
          '85e39751debc304119eb481d6bc26d59'
          '4f84554155f090f944966f52b07ed5ab'
-         '0ddd04ece840f1f635933c91fef94406')
+         '0ddd04ece840f1f635933c91fef94406'
+         '63353c93b78f9dd6cb2340abfbcaaf81')
                   
 build()
 {
@@ -54,6 +56,8 @@
   patch -p1 -i ../kinit-fix-init-cmdline.patch || return 1
   # fix compilation due to missing nfs defines in the kernel
   patch -p1 -i ../klibc-fix-nfs-defines.patch || return 1
+  # remove stupid workaround for i686 build
+  patch -p1 -i ../klibc-fix-i686-signals.patch || return 1
   
   make EXTRA_KLIBCFLAGS='' || return 1
 }

Added: klibc-fix-i686-signals.patch
===================================================================
--- klibc-fix-i686-signals.patch	                        (rev 0)
+++ klibc-fix-i686-signals.patch	2009-10-21 22:21:09 UTC (rev 56456)
@@ -0,0 +1,112 @@
+diff -Nur klibc-1.5.15.orig/usr/include/arch/i386/klibc/archsignal.h klibc-1.5.15/usr/include/arch/i386/klibc/archsignal.h
+--- klibc-1.5.15.orig/usr/include/arch/i386/klibc/archsignal.h	2009-01-04 20:28:03.000000000 +0100
++++ klibc-1.5.15/usr/include/arch/i386/klibc/archsignal.h	2009-10-22 00:19:11.407826539 +0200
+@@ -8,107 +8,6 @@
+ #ifndef _KLIBC_ARCHSIGNAL_H
+ #define _KLIBC_ARCHSIGNAL_H
+ 
+-/* The in-kernel headers for i386 still have libc5
+-   crap in them.  Reconsider using <asm/signal.h>
+-   when/if it gets cleaned up; for now, duplicate
+-   the definitions here. */
+-
+-#define _NSIG           64
+-#define _NSIG_BPW       32
+-#define _NSIG_WORDS     (_NSIG / _NSIG_BPW)
+-
+-typedef struct {
+-	unsigned long sig[_NSIG_WORDS];
+-} sigset_t;
+-
+-#define SIGHUP           1
+-#define SIGINT           2
+-#define SIGQUIT          3
+-#define SIGILL           4
+-#define SIGTRAP          5
+-#define SIGABRT          6
+-#define SIGIOT           6
+-#define SIGBUS           7
+-#define SIGFPE           8
+-#define SIGKILL          9
+-#define SIGUSR1         10
+-#define SIGSEGV         11
+-#define SIGUSR2         12
+-#define SIGPIPE         13
+-#define SIGALRM         14
+-#define SIGTERM         15
+-#define SIGSTKFLT       16
+-#define SIGCHLD         17
+-#define SIGCONT         18
+-#define SIGSTOP         19
+-#define SIGTSTP         20
+-#define SIGTTIN         21
+-#define SIGTTOU         22
+-#define SIGURG          23
+-#define SIGXCPU         24
+-#define SIGXFSZ         25
+-#define SIGVTALRM       26
+-#define SIGPROF         27
+-#define SIGWINCH        28
+-#define SIGIO           29
+-#define SIGPOLL         SIGIO
+-#define SIGPWR          30
+-#define SIGSYS          31
+-#define SIGUNUSED       31
+-
+-#define SIGRTMIN        32
+-#define SIGRTMAX        (_NSIG-1)
+-
+-/*
+- * SA_FLAGS values:
+- *
+- * SA_ONSTACK indicates that a registered stack_t will be used.
+- * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
+- * SA_RESTART flag to get restarting signals (which were the default long ago)
+- * SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
+- * SA_RESETHAND clears the handler when the signal is delivered.
+- * SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies.
+- * SA_NODEFER prevents the current signal from being masked in the handler.
+- *
+- * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single
+- * Unix names RESETHAND and NODEFER respectively.
+- */
+-#define SA_NOCLDSTOP	0x00000001u
+-#define SA_NOCLDWAIT	0x00000002u
+-#define SA_SIGINFO	0x00000004u
+-#define SA_ONSTACK	0x08000000u
+-#define SA_RESTART	0x10000000u
+-#define SA_NODEFER	0x40000000u
+-#define SA_RESETHAND	0x80000000u
+-
+-#define SA_NOMASK	SA_NODEFER
+-#define SA_ONESHOT	SA_RESETHAND
+-#define SA_INTERRUPT	0x20000000	/* dummy -- ignored */
+-
+-#define SA_RESTORER	0x04000000
+-
+-/*
+- * sigaltstack controls
+- */
+-#define SS_ONSTACK	1
+-#define SS_DISABLE	2
+-
+-#define MINSIGSTKSZ	2048
+-#define SIGSTKSZ	8192
+-
+-#include <asm-generic/signal.h>
+-
+-/* This uses gcc anonymous union support... */
+-struct siginfo;
+-
+-struct sigaction {
+-	union {
+-		__sighandler_t sa_handler;
+-		void (*sa_sigaction)(int, struct siginfo *, void *);
+-	};
+-	unsigned long	sa_flags;
+-	__sigrestore_t 	sa_restorer;
+-	sigset_t	sa_mask;
+-};
++#include <asm/signal.h>
+ 
+ #endif




More information about the arch-commits mailing list