From ead782086a3416022b058ad8ffe82b2660f21e46 Mon Sep 17 00:00:00 2001 From: Daniel Reinhold Date: Sun, 17 Nov 2002 05:04:08 +0000 Subject: [PATCH] the beginnings of signal support in libroot git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1977 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kernel/Jamfile | 10 +++--- src/kernel/libroot/posix/Jamfile | 13 +++---- src/kernel/libroot/posix/signal/Jamfile | 14 ++++++++ src/kernel/libroot/posix/signal/strsignal.c | 39 +++++++++++++++++++++ 4 files changed, 66 insertions(+), 10 deletions(-) create mode 100644 src/kernel/libroot/posix/signal/Jamfile create mode 100644 src/kernel/libroot/posix/signal/strsignal.c diff --git a/src/kernel/Jamfile b/src/kernel/Jamfile index 24c381dd07..84e9184244 100644 --- a/src/kernel/Jamfile +++ b/src/kernel/Jamfile @@ -34,13 +34,14 @@ KernelLd kernel : kernel_os_arch_$(OBOS_ARCH).o - kernel_posix_main.o kernel_posix_locale.o + kernel_posix_main.o + kernel_posix_signal.o kernel_posix_stdio.o kernel_posix_stdlib.o kernel_posix_sys.o - kernel_posix_unistd.o kernel_posix_time.o + kernel_posix_unistd.o posix_string.o : $(SUBDIR)/core/arch/$(OBOS_ARCH)/kernel.ld @@ -66,13 +67,14 @@ KernelLd kernel.so : kernel_os_arch_$(OBOS_ARCH).o - kernel_posix_main.o kernel_posix_locale.o + kernel_posix_main.o + kernel_posix_signal.o kernel_posix_stdio.o kernel_posix_stdlib.o kernel_posix_sys.o - kernel_posix_unistd.o kernel_posix_time.o + kernel_posix_unistd.o posix_string.o : $(SUBDIR)/core/arch/$(OBOS_ARCH)/kernel.ld diff --git a/src/kernel/libroot/posix/Jamfile b/src/kernel/libroot/posix/Jamfile index 849c8121a8..2d88482ea9 100644 --- a/src/kernel/libroot/posix/Jamfile +++ b/src/kernel/libroot/posix/Jamfile @@ -19,12 +19,13 @@ MergeObjectFromObjects kernel_posix_main.o : <$(SOURCE_GRIST)>utime.o ; -SubInclude OBOS_TOP src kernel libroot posix malloc ; SubInclude OBOS_TOP src kernel libroot posix locale ; -SubInclude OBOS_TOP src kernel libroot posix stdio ; -SubInclude OBOS_TOP src kernel libroot posix string ; -SubInclude OBOS_TOP src kernel libroot posix stdlib ; -SubInclude OBOS_TOP src kernel libroot posix unistd ; -SubInclude OBOS_TOP src kernel libroot posix sys ; +SubInclude OBOS_TOP src kernel libroot posix malloc ; SubInclude OBOS_TOP src kernel libroot posix math ; +SubInclude OBOS_TOP src kernel libroot posix signal ; +SubInclude OBOS_TOP src kernel libroot posix stdio ; +SubInclude OBOS_TOP src kernel libroot posix stdlib ; +SubInclude OBOS_TOP src kernel libroot posix string ; +SubInclude OBOS_TOP src kernel libroot posix sys ; SubInclude OBOS_TOP src kernel libroot posix time ; +SubInclude OBOS_TOP src kernel libroot posix unistd ; \ No newline at end of file diff --git a/src/kernel/libroot/posix/signal/Jamfile b/src/kernel/libroot/posix/signal/Jamfile new file mode 100644 index 0000000000..e7958beca0 --- /dev/null +++ b/src/kernel/libroot/posix/signal/Jamfile @@ -0,0 +1,14 @@ +SubDir OBOS_TOP src kernel libroot posix signal ; + +KernelMergeObject posix_signal.o : + <$(SOURCE_GRIST)>strsignal.c + : + -fPIC -DPIC + ; + +MergeObjectFromObjects kernel_posix_signal.o : + <$(SOURCE_GRIST)>strsignal.o + : + -fPIC -DPIC + ; + diff --git a/src/kernel/libroot/posix/signal/strsignal.c b/src/kernel/libroot/posix/signal/strsignal.c new file mode 100644 index 0000000000..c2e06890cd --- /dev/null +++ b/src/kernel/libroot/posix/signal/strsignal.c @@ -0,0 +1,39 @@ +#include +#include +#include + +/* + * Copyright (c) 2002, OpenBeOS Project. All rights reserved. + * Distributed under the terms of the OpenBeOS license. + * + * + * strsignal.c: + * implements the signal function strsignal() + * + * + * Author(s): + * Daniel Reinhold (danielre@users.sf.net) + * + */ + + +const char * +strsignal(int sig) +{ + const char *s = NULL; + + if (sig < 0 || sig > MAX_SIGNO) + return "Bogus signal number"; + + if (sig < NSIG) + s = sys_siglist[sig]; + + if (s) + return s; + else { + static char buf[40]; + sprintf(buf, "Unknown Signal %d", sig); + return (const char *) buf; + } +} +