diff options
author | Jeff Johnston <jjohnstn@redhat.com> | 2002-06-01 00:18:59 +0400 |
---|---|---|
committer | Jeff Johnston <jjohnstn@redhat.com> | 2002-06-01 00:18:59 +0400 |
commit | ea55e3f7f3a213d4e3b5bdf966eecaf0aa1b7112 (patch) | |
tree | 5688b01e763ee509bc9e0dc1c8b43eb2dfa55261 /newlib/libc/sys/linux/machine/i386 | |
parent | 89d7acf37a914c31834776879591c3301fb36c9b (diff) |
2002-05-31 Jeff Johnston <jjohnstn@redhat.com>
* libc/sys/linux/Makefile.am: Add sig.c and sigaction.c. Also
make siglist.inc dependent on sig.c instead of signal.c.
* libc/sys/linux/Makefile.in: Regenerated.
* libc/sys/linux/sig.c: Rename from signal.c and change code to
use NSIG instead of _NSIG.
* libc/sys/linux/sigaction.c: New file.
* libc/sys/linux/signal.c: Changed to be linux signal() function
so as to override regular newlib default signal.c.
* libc/sys/linux/linuxthreads/config.h: Add __ASSUME_REALTIME_SIGNALS
definition.
* libc/sys/linux/linuxthreads/testrtsig.h: New file.
* libc/sys/linux/machine/i386/Makefile.am: Remove sigset.c.
* libc/sys/linux/machine/i386/Makefile.in: Regenerated.
* libc/sys/linux/machine/i386/sigset.c: Moved to linux main directory.
* libc/sys/linux/sigset.c: Moved from machine/i386 directory.
* libc/sys/linux/sys/signal.h: Redefine NSIG to _NSIG and override
default linux sigset_t typedef by defining it equal to __sigset_t.
* libc/unix/sigset.c: Add check so code isn't compiled on systems
with a sigset_t that isn't implemented with a single int.
Diffstat (limited to 'newlib/libc/sys/linux/machine/i386')
-rw-r--r-- | newlib/libc/sys/linux/machine/i386/Makefile.am | 2 | ||||
-rw-r--r-- | newlib/libc/sys/linux/machine/i386/Makefile.in | 7 | ||||
-rw-r--r-- | newlib/libc/sys/linux/machine/i386/sigset.c | 97 |
3 files changed, 4 insertions, 102 deletions
diff --git a/newlib/libc/sys/linux/machine/i386/Makefile.am b/newlib/libc/sys/linux/machine/i386/Makefile.am index dbf819cca..596ff3e71 100644 --- a/newlib/libc/sys/linux/machine/i386/Makefile.am +++ b/newlib/libc/sys/linux/machine/i386/Makefile.am @@ -4,7 +4,7 @@ AUTOMAKE_OPTIONS = cygnus INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) -LIB_SOURCES = setjmp.S sigaction.c sigset.c +LIB_SOURCES = setjmp.S sigaction.c liblinuxi386_la_LDFLAGS = -Xcompiler -nostdlib diff --git a/newlib/libc/sys/linux/machine/i386/Makefile.in b/newlib/libc/sys/linux/machine/i386/Makefile.in index cfbb3ccf6..c5dd46939 100644 --- a/newlib/libc/sys/linux/machine/i386/Makefile.in +++ b/newlib/libc/sys/linux/machine/i386/Makefile.in @@ -92,7 +92,7 @@ AUTOMAKE_OPTIONS = cygnus INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) -LIB_SOURCES = setjmp.S sigaction.c sigset.c +LIB_SOURCES = setjmp.S sigaction.c liblinuxi386_la_LDFLAGS = -Xcompiler -nostdlib @@ -116,12 +116,11 @@ DEFS = @DEFS@ -I. -I$(srcdir) CPPFLAGS = @CPPFLAGS@ LIBS = @LIBS@ lib_a_LIBADD = -@USE_LIBTOOL_FALSE@lib_a_OBJECTS = setjmp.o sigaction.o sigset.o +@USE_LIBTOOL_FALSE@lib_a_OBJECTS = setjmp.o sigaction.o LTLIBRARIES = $(noinst_LTLIBRARIES) liblinuxi386_la_LIBADD = -@USE_LIBTOOL_TRUE@liblinuxi386_la_OBJECTS = setjmp.lo sigaction.lo \ -@USE_LIBTOOL_TRUE@sigset.lo +@USE_LIBTOOL_TRUE@liblinuxi386_la_OBJECTS = setjmp.lo sigaction.lo CFLAGS = @CFLAGS@ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) diff --git a/newlib/libc/sys/linux/machine/i386/sigset.c b/newlib/libc/sys/linux/machine/i386/sigset.c deleted file mode 100644 index 4a53fda8a..000000000 --- a/newlib/libc/sys/linux/machine/i386/sigset.c +++ /dev/null @@ -1,97 +0,0 @@ -/* sigset.c - signal set manipulation functions */ - -/* Copyright 2002, Red Hat Inc. */ - -/* Note: these are currently grouped together in one file so that - it will override the default version in the libc/unix - directory which has grouped all functions in one file. */ - -/* sigaddset function */ - -#include <signal.h> -#include <bits/sigset.h> -#include <errno.h> -#include <string.h> - -int -sigaddset (sigset_t *set, const int signo) -{ - int index, mask; - __sigset_t *st = (__sigset_t *)set; - - if (signo > NSIG) - { - errno = EINVAL; - return -1; - } - - index = (signo - 1) / 32; - mask = 1 << ((signo - 1) % 32); - - st->__val[index] |= mask; - return 0; -} - -/* sigdelset function */ - -int -sigdelset (sigset_t *set, const int signo) -{ - int index, mask; - __sigset_t *st = (__sigset_t *)set; - - if (signo > NSIG) - { - errno = EINVAL; - return -1; - } - - index = (signo - 1) / 32; - mask = 1 << ((signo - 1) % 32); - - st->__val[index] &= ~mask; - return 0; -} - -/* sigemptyset function */ - -int -sigemptyset (sigset_t *set) -{ - int size = NSIG / 8; - __sigset_t *st = (__sigset_t *)set; - memset (st->__val, 0, size); - return 0; -} - -/* sigfillset function */ - -int -sigfillset (sigset_t *set) -{ - int size = NSIG / 8; - __sigset_t *st = (__sigset_t *)set; - memset (st->__val, 0xff, size); - return 0; -} - -/* sigismember function */ - -int -sigismember (const sigset_t *set, int signo) -{ - int index, mask; - __sigset_t *st = (__sigset_t *)set; - - if (signo > NSIG) - { - errno = EINVAL; - return -1; - } - - index = (signo - 1) / 32; - mask = 1 << ((signo - 1) % 32); - - return (st->__val[index] & mask) != 0; -} - |