Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYaakov Selkowitz <yselkowi@redhat.com>2011-05-04 15:26:22 +0400
committerYaakov Selkowitz <yselkowi@redhat.com>2011-05-04 15:26:22 +0400
commit307b0a5d4b1801305ad4da3eb8447376d1260709 (patch)
tree9245d694c6ea3334b27bc8460086fadb43227e95 /newlib/libc/signal
parentb27340db639b9639dd8dc7f328b78cb392ccc5ca (diff)
* libc/include/signal.h (psignal): Declare.
* libc/sys/linux/psignal.c: Move from here... * libc/signal/psignal.c: ... to here. Document. * libc/sys/linux/Makefile.am (GENERAL_SOURCES): Move psignal.c from here... * libc/signal/Makefile.am (LIB_SOURCES): ... to here. (CHEWOUT_FILES): Add psignal.def. * libc/sys/linux/Makefile.in: Regenerate. * libc/signal/Makefile.in: Ditto. * libc/signal/signal.tex: Add references to psignal.
Diffstat (limited to 'newlib/libc/signal')
-rw-r--r--newlib/libc/signal/Makefile.am4
-rw-r--r--newlib/libc/signal/Makefile.in15
-rw-r--r--newlib/libc/signal/psignal.c51
-rw-r--r--newlib/libc/signal/signal.tex4
4 files changed, 68 insertions, 6 deletions
diff --git a/newlib/libc/signal/Makefile.am b/newlib/libc/signal/Makefile.am
index f4f5d46c2..7a7e64cbd 100644
--- a/newlib/libc/signal/Makefile.am
+++ b/newlib/libc/signal/Makefile.am
@@ -4,7 +4,7 @@ AUTOMAKE_OPTIONS = cygnus
INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-LIB_SOURCES = raise.c signal.c
+LIB_SOURCES = psignal.c raise.c signal.c
libsignal_la_LDFLAGS = -Xcompiler -nostdlib
@@ -21,7 +21,7 @@ endif # USE_LIBTOOL
include $(srcdir)/../../Makefile.shared
-CHEWOUT_FILES = raise.def signal.def
+CHEWOUT_FILES = psignal.def raise.def signal.def
SUFFIXES = .def
diff --git a/newlib/libc/signal/Makefile.in b/newlib/libc/signal/Makefile.in
index bd3a8d57e..3581678ad 100644
--- a/newlib/libc/signal/Makefile.in
+++ b/newlib/libc/signal/Makefile.in
@@ -55,12 +55,13 @@ LIBRARIES = $(noinst_LIBRARIES)
ARFLAGS = cru
lib_a_AR = $(AR) $(ARFLAGS)
lib_a_LIBADD =
-am__objects_1 = lib_a-raise.$(OBJEXT) lib_a-signal.$(OBJEXT)
+am__objects_1 = lib_a-psignal.$(OBJEXT) lib_a-raise.$(OBJEXT) \
+ lib_a-signal.$(OBJEXT)
@USE_LIBTOOL_FALSE@am_lib_a_OBJECTS = $(am__objects_1)
lib_a_OBJECTS = $(am_lib_a_OBJECTS)
LTLIBRARIES = $(noinst_LTLIBRARIES)
libsignal_la_LIBADD =
-am__objects_2 = raise.lo signal.lo
+am__objects_2 = psignal.lo raise.lo signal.lo
@USE_LIBTOOL_TRUE@am_libsignal_la_OBJECTS = $(am__objects_2)
libsignal_la_OBJECTS = $(am_libsignal_la_OBJECTS)
libsignal_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
@@ -228,7 +229,7 @@ top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = cygnus
INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-LIB_SOURCES = raise.c signal.c
+LIB_SOURCES = psignal.c raise.c signal.c
libsignal_la_LDFLAGS = -Xcompiler -nostdlib
@USE_LIBTOOL_TRUE@noinst_LTLIBRARIES = libsignal.la
@USE_LIBTOOL_TRUE@libsignal_la_SOURCES = $(LIB_SOURCES)
@@ -237,7 +238,7 @@ libsignal_la_LDFLAGS = -Xcompiler -nostdlib
@USE_LIBTOOL_FALSE@noinst_LIBRARIES = lib.a
@USE_LIBTOOL_FALSE@lib_a_SOURCES = $(LIB_SOURCES)
@USE_LIBTOOL_FALSE@lib_a_CFLAGS = $(AM_CFLAGS)
-CHEWOUT_FILES = raise.def signal.def
+CHEWOUT_FILES = psignal.def raise.def signal.def
SUFFIXES = .def
CHEW = ../../doc/makedoc -f $(srcdir)/../../doc/doc.str
TARGETDOC = ../tmp.texi
@@ -310,6 +311,12 @@ distclean-compile:
.c.lo:
$(LTCOMPILE) -c -o $@ $<
+lib_a-psignal.o: psignal.c
+ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-psignal.o `test -f 'psignal.c' || echo '$(srcdir)/'`psignal.c
+
+lib_a-psignal.obj: psignal.c
+ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-psignal.obj `if test -f 'psignal.c'; then $(CYGPATH_W) 'psignal.c'; else $(CYGPATH_W) '$(srcdir)/psignal.c'; fi`
+
lib_a-raise.o: raise.c
$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-raise.o `test -f 'raise.c' || echo '$(srcdir)/'`raise.c
diff --git a/newlib/libc/signal/psignal.c b/newlib/libc/signal/psignal.c
new file mode 100644
index 000000000..4638518da
--- /dev/null
+++ b/newlib/libc/signal/psignal.c
@@ -0,0 +1,51 @@
+/* Copyright 2002, 2011 Red Hat Inc. */
+/*
+FUNCTION
+<<psignal>>---print a signal message on standard error
+
+INDEX
+ psignal
+
+ANSI_SYNOPSIS
+ #include <stdio.h>
+ void psignal(int <[signal]>, const char *<[prefix]>);
+
+TRAD_SYNOPSIS
+ #include <stdio.h>
+ void psignal(<[signal]>, <[prefix]>)
+ int <[signal]>;
+ const char *<[prefix]>;
+
+DESCRIPTION
+Use <<psignal>> to print (on standard error) a signal message
+corresponding to the value of the signal number <[signal]>.
+Unless you use <<NULL>> as the value of the argument <[prefix]>, the
+signal message will begin with the string at <[prefix]>, followed by a
+colon and a space (<<: >>). The remainder of the signal message is one
+of the strings described for <<strsignal>>.
+
+RETURNS
+<<psignal>> returns no result.
+
+PORTABILITY
+POSIX.1-2008 requires <<psignal>>, but the strings issued vary from one
+implementation to another.
+
+Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
+<<lseek>>, <<read>>, <<sbrk>>, <<write>>.
+*/
+
+#include <_ansi.h>
+#include <stdio.h>
+#include <string.h>
+
+_VOID
+_DEFUN(psignal, (sig, s),
+ int sig _AND
+ _CONST char *s)
+{
+ if (s != NULL && *s != '\0')
+ fprintf (stderr, "%s: %s\n", s, strsignal (sig));
+ else
+ fprintf (stderr, "%s\n", strsignal (sig));
+}
diff --git a/newlib/libc/signal/signal.tex b/newlib/libc/signal/signal.tex
index 08c15bed8..b36deb968 100644
--- a/newlib/libc/signal/signal.tex
+++ b/newlib/libc/signal/signal.tex
@@ -59,11 +59,15 @@ they may store a signal value. (Static storage is not otherwise
reliable from signal handlers.)
@menu
+* psignal:: Print a signal message to standard error
* raise:: Send a signal
* signal:: Specify handler subroutine for a signal
@end menu
@page
+@include signal/psignal.def
+
+@page
@include signal/raise.def
@page