summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2012-12-03 11:35:43 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2012-12-05 18:07:05 +0100
commitf9340ed7f43b81e172ebefebbb9fbd558080d1a3 (patch)
treea5ccd69f10430edd1a8bb4361594c509fdbfb08c
parentrtems: Add signal post switch extension on the fly (diff)
downloadrtems-f9340ed7f43b81e172ebefebbb9fbd558080d1a3.tar.bz2
posix: Add and use <rtems/posix/psignalimpl.h>
This file contains the parts of <rtems/posix/psignal.h> that are only necessary for the POSIX API implementation.
-rw-r--r--cpukit/posix/Makefile.am1
-rw-r--r--cpukit/posix/include/rtems/posix/psignal.h92
-rw-r--r--cpukit/posix/include/rtems/posix/psignalimpl.h113
-rw-r--r--cpukit/posix/preinstall.am4
-rw-r--r--cpukit/posix/src/alarm.c2
-rw-r--r--cpukit/posix/src/kill.c2
-rw-r--r--cpukit/posix/src/kill_r.c2
-rw-r--r--cpukit/posix/src/killinfo.c2
-rw-r--r--cpukit/posix/src/pause.c8
-rw-r--r--cpukit/posix/src/psignal.c2
-rw-r--r--cpukit/posix/src/psignalchecksignal.c2
-rw-r--r--cpukit/posix/src/psignalclearprocesssignals.c2
-rw-r--r--cpukit/posix/src/psignalclearsignals.c2
-rw-r--r--cpukit/posix/src/psignalsetprocesssignals.c2
-rw-r--r--cpukit/posix/src/psignalunblockthread.c2
-rw-r--r--cpukit/posix/src/pthread.c2
-rw-r--r--cpukit/posix/src/pthreadinitthreads.c1
-rw-r--r--cpukit/posix/src/pthreadkill.c2
-rw-r--r--cpukit/posix/src/pthreadsigmask.c2
-rw-r--r--cpukit/posix/src/ptimer.c1
-rw-r--r--cpukit/posix/src/sigaction.c2
-rw-r--r--cpukit/posix/src/sigpending.c2
-rw-r--r--cpukit/posix/src/sigqueue.c2
-rw-r--r--cpukit/posix/src/sigsuspend.c7
-rw-r--r--cpukit/posix/src/sigtimedwait.c2
-rw-r--r--cpukit/posix/src/sigwait.c6
-rw-r--r--cpukit/posix/src/sigwaitinfo.c6
-rw-r--r--cpukit/posix/src/timercreate.c2
-rw-r--r--cpukit/posix/src/ualarm.c2
-rw-r--r--cpukit/sapi/include/confdefs.h1
-rw-r--r--testsuites/psxtests/psxsignal05/init.c4
31 files changed, 148 insertions, 134 deletions
diff --git a/cpukit/posix/Makefile.am b/cpukit/posix/Makefile.am
index 5f1c00fa60..78ea3f5443 100644
--- a/cpukit/posix/Makefile.am
+++ b/cpukit/posix/Makefile.am
@@ -34,6 +34,7 @@ include_rtems_posix_HEADERS += include/rtems/posix/mutex.h
include_rtems_posix_HEADERS += include/rtems/posix/posixapi.h
include_rtems_posix_HEADERS += include/rtems/posix/priority.h
include_rtems_posix_HEADERS += include/rtems/posix/psignal.h
+include_rtems_posix_HEADERS += include/rtems/posix/psignalimpl.h
include_rtems_posix_HEADERS += include/rtems/posix/pthread.h
include_rtems_posix_HEADERS += include/rtems/posix/ptimer.h
include_rtems_posix_HEADERS += include/rtems/posix/semaphore.h
diff --git a/cpukit/posix/include/rtems/posix/psignal.h b/cpukit/posix/include/rtems/posix/psignal.h
index c630c1fd5f..604b98982c 100644
--- a/cpukit/posix/include/rtems/posix/psignal.h
+++ b/cpukit/posix/include/rtems/posix/psignal.h
@@ -16,44 +16,9 @@
#ifndef _RTEMS_POSIX_PSIGNAL_H
#define _RTEMS_POSIX_PSIGNAL_H
-#include <rtems/posix/pthread.h>
-#include <rtems/posix/sigset.h>
+#include <sys/signal.h>
-#define _States_Is_interruptible_signal( _states ) \
- ( ((_states) & \
- (STATES_WAITING_FOR_SIGNAL|STATES_INTERRUPTIBLE_BY_SIGNAL)) == \
- (STATES_WAITING_FOR_SIGNAL|STATES_INTERRUPTIBLE_BY_SIGNAL))
-
-#define SIGACTION_TERMINATE \
- { 0, SIGNAL_ALL_MASK, {_POSIX_signals_Abnormal_termination_handler} }
-#define SIGACTION_IGNORE \
- { 0, SIGNAL_ALL_MASK, {SIG_IGN} }
-#define SIGACTION_STOP \
- { 0, SIGNAL_ALL_MASK, {_POSIX_signals_Stop_handler} }
-#define SIGACTION_CONTINUE \
- { 0, SIGNAL_ALL_MASK, {_POSIX_signals_Continue_handler} }
-
-#define SIG_ARRAY_MAX (SIGRTMAX + 1)
-
-/*
- * Variables
- */
-
-extern sigset_t _POSIX_signals_Pending;
-
-extern const struct sigaction _POSIX_signals_Default_vectors[ SIG_ARRAY_MAX ];
-
-extern struct sigaction _POSIX_signals_Vectors[ SIG_ARRAY_MAX ];
-
-extern Watchdog_Control _POSIX_signals_Alarm_timer;
-
-extern Watchdog_Control _POSIX_signals_Ualarm_timer;
-
-extern Thread_queue_Control _POSIX_signals_Wait_queue;
-
-extern Chain_Control _POSIX_signals_Inactive_siginfo;
-
-extern Chain_Control _POSIX_signals_Siginfo[ SIG_ARRAY_MAX ];
+#include <rtems/score/chain.h>
/*
* POSIX internal siginfo structure
@@ -64,58 +29,5 @@ typedef struct {
siginfo_t Info;
} POSIX_signals_Siginfo_node;
-/*
- * Internal routines
- */
-
-void _POSIX_signals_Manager_Initialization(void);
-
-void _POSIX_signals_Post_switch_extension(
- Thread_Control *the_thread
-);
-
-bool _POSIX_signals_Unblock_thread(
- Thread_Control *the_thread,
- int signo,
- siginfo_t *info
-);
-
-bool _POSIX_signals_Check_signal(
- POSIX_API_Control *api,
- int signo,
- bool is_global
-);
-
-bool _POSIX_signals_Clear_signals(
- POSIX_API_Control *api,
- int signo,
- siginfo_t *info,
- bool is_global,
- bool check_blocked
-);
-
-int killinfo(
- pid_t pid,
- int sig,
- const union sigval *value
-);
-
-void _POSIX_signals_Set_process_signals(
- sigset_t mask
-);
-
-void _POSIX_signals_Clear_process_signals(
- int signo
-);
-
-/*
- * Default signal handlers
- */
-
-#define _POSIX_signals_Stop_handler NULL
-#define _POSIX_signals_Continue_handler NULL
-
-void _POSIX_signals_Abnormal_termination_handler( int signo );
-
#endif
/* end of file */
diff --git a/cpukit/posix/include/rtems/posix/psignalimpl.h b/cpukit/posix/include/rtems/posix/psignalimpl.h
new file mode 100644
index 0000000000..e61fe3f74b
--- /dev/null
+++ b/cpukit/posix/include/rtems/posix/psignalimpl.h
@@ -0,0 +1,113 @@
+/**
+ * @file rtems/posix/psignal.h
+ *
+ * This include file defines internal information about POSIX signals.
+ */
+
+/*
+ * COPYRIGHT (c) 1989-2011.
+ * On-Line Applications Research Corporation (OAR).
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ */
+
+#ifndef _RTEMS_POSIX_PSIGNALIMPL_H
+#define _RTEMS_POSIX_PSIGNALIMPL_H
+
+#include <rtems/posix/psignal.h>
+#include <rtems/posix/pthread.h>
+#include <rtems/posix/sigset.h>
+
+#define _States_Is_interruptible_signal( _states ) \
+ ( ((_states) & \
+ (STATES_WAITING_FOR_SIGNAL|STATES_INTERRUPTIBLE_BY_SIGNAL)) == \
+ (STATES_WAITING_FOR_SIGNAL|STATES_INTERRUPTIBLE_BY_SIGNAL))
+
+#define SIGACTION_TERMINATE \
+ { 0, SIGNAL_ALL_MASK, {_POSIX_signals_Abnormal_termination_handler} }
+#define SIGACTION_IGNORE \
+ { 0, SIGNAL_ALL_MASK, {SIG_IGN} }
+#define SIGACTION_STOP \
+ { 0, SIGNAL_ALL_MASK, {_POSIX_signals_Stop_handler} }
+#define SIGACTION_CONTINUE \
+ { 0, SIGNAL_ALL_MASK, {_POSIX_signals_Continue_handler} }
+
+#define SIG_ARRAY_MAX (SIGRTMAX + 1)
+
+/*
+ * Variables
+ */
+
+extern sigset_t _POSIX_signals_Pending;
+
+extern const struct sigaction _POSIX_signals_Default_vectors[ SIG_ARRAY_MAX ];
+
+extern struct sigaction _POSIX_signals_Vectors[ SIG_ARRAY_MAX ];
+
+extern Watchdog_Control _POSIX_signals_Alarm_timer;
+
+extern Watchdog_Control _POSIX_signals_Ualarm_timer;
+
+extern Thread_queue_Control _POSIX_signals_Wait_queue;
+
+extern Chain_Control _POSIX_signals_Inactive_siginfo;
+
+extern Chain_Control _POSIX_signals_Siginfo[ SIG_ARRAY_MAX ];
+
+/*
+ * Internal routines
+ */
+
+void _POSIX_signals_Manager_Initialization(void);
+
+void _POSIX_signals_Post_switch_extension(
+ Thread_Control *the_thread
+);
+
+bool _POSIX_signals_Unblock_thread(
+ Thread_Control *the_thread,
+ int signo,
+ siginfo_t *info
+);
+
+bool _POSIX_signals_Check_signal(
+ POSIX_API_Control *api,
+ int signo,
+ bool is_global
+);
+
+bool _POSIX_signals_Clear_signals(
+ POSIX_API_Control *api,
+ int signo,
+ siginfo_t *info,
+ bool is_global,
+ bool check_blocked
+);
+
+int killinfo(
+ pid_t pid,
+ int sig,
+ const union sigval *value
+);
+
+void _POSIX_signals_Set_process_signals(
+ sigset_t mask
+);
+
+void _POSIX_signals_Clear_process_signals(
+ int signo
+);
+
+/*
+ * Default signal handlers
+ */
+
+#define _POSIX_signals_Stop_handler NULL
+#define _POSIX_signals_Continue_handler NULL
+
+void _POSIX_signals_Abnormal_termination_handler( int signo );
+
+#endif
+/* end of file */
diff --git a/cpukit/posix/preinstall.am b/cpukit/posix/preinstall.am
index 119790b17e..a9f6ebbffa 100644
--- a/cpukit/posix/preinstall.am
+++ b/cpukit/posix/preinstall.am
@@ -80,6 +80,10 @@ $(PROJECT_INCLUDE)/rtems/posix/psignal.h: include/rtems/posix/psignal.h $(PROJEC
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/posix/psignal.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/posix/psignal.h
+$(PROJECT_INCLUDE)/rtems/posix/psignalimpl.h: include/rtems/posix/psignalimpl.h $(PROJECT_INCLUDE)/rtems/posix/$(dirstamp)
+ $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/posix/psignalimpl.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/posix/psignalimpl.h
+
$(PROJECT_INCLUDE)/rtems/posix/pthread.h: include/rtems/posix/pthread.h $(PROJECT_INCLUDE)/rtems/posix/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/posix/pthread.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/posix/pthread.h
diff --git a/cpukit/posix/src/alarm.c b/cpukit/posix/src/alarm.c
index 32652b1719..b3c902cbab 100644
--- a/cpukit/posix/src/alarm.c
+++ b/cpukit/posix/src/alarm.c
@@ -18,7 +18,7 @@
#include <rtems/system.h>
#include <rtems/posix/pthread.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
/*
* _POSIX_signals_Alarm_TSR
diff --git a/cpukit/posix/src/kill.c b/cpukit/posix/src/kill.c
index b042e30136..ee59fe4b84 100644
--- a/cpukit/posix/src/kill.c
+++ b/cpukit/posix/src/kill.c
@@ -18,7 +18,7 @@
#include <rtems/system.h>
#include <rtems/posix/pthread.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
int kill(
pid_t pid,
diff --git a/cpukit/posix/src/kill_r.c b/cpukit/posix/src/kill_r.c
index f2e7c20552..301c0603cf 100644
--- a/cpukit/posix/src/kill_r.c
+++ b/cpukit/posix/src/kill_r.c
@@ -18,7 +18,7 @@
#include <rtems/system.h>
#include <rtems/posix/pthread.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
#if defined(RTEMS_NEWLIB)
diff --git a/cpukit/posix/src/killinfo.c b/cpukit/posix/src/killinfo.c
index c8b4565e14..59329ee49e 100644
--- a/cpukit/posix/src/killinfo.c
+++ b/cpukit/posix/src/killinfo.c
@@ -19,7 +19,7 @@
#include <rtems/system.h>
#include <rtems/posix/pthread.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
#include <rtems/seterr.h>
#include <rtems/score/isr.h>
diff --git a/cpukit/posix/src/pause.c b/cpukit/posix/src/pause.c
index 10fa8b5e4f..3a307d6e93 100644
--- a/cpukit/posix/src/pause.c
+++ b/cpukit/posix/src/pause.c
@@ -13,13 +13,9 @@
#include "config.h"
#endif
-#include <pthread.h>
+#include <stddef.h>
#include <signal.h>
-#include <errno.h>
-
-#include <rtems/system.h>
-#include <rtems/posix/pthread.h>
-#include <rtems/posix/psignal.h>
+#include <unistd.h>
/*
* 3.4.2 Suspend Process Execution, P1003.1b-1993, p. 81
diff --git a/cpukit/posix/src/psignal.c b/cpukit/posix/src/psignal.c
index 6d63b29272..aa76d0dcc7 100644
--- a/cpukit/posix/src/psignal.c
+++ b/cpukit/posix/src/psignal.c
@@ -28,7 +28,7 @@
#include <rtems/score/wkspace.h>
#include <rtems/seterr.h>
#include <rtems/posix/threadsup.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
#include <rtems/posix/pthread.h>
#include <rtems/posix/time.h>
#include <stdio.h>
diff --git a/cpukit/posix/src/psignalchecksignal.c b/cpukit/posix/src/psignalchecksignal.c
index 46c0c857ff..171d7c8121 100644
--- a/cpukit/posix/src/psignalchecksignal.c
+++ b/cpukit/posix/src/psignalchecksignal.c
@@ -26,7 +26,7 @@
#include <rtems/score/wkspace.h>
#include <rtems/seterr.h>
#include <rtems/posix/threadsup.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
#include <rtems/posix/pthread.h>
#include <rtems/posix/time.h>
#include <stdio.h>
diff --git a/cpukit/posix/src/psignalclearprocesssignals.c b/cpukit/posix/src/psignalclearprocesssignals.c
index 491f1fad71..3c3cdf4e68 100644
--- a/cpukit/posix/src/psignalclearprocesssignals.c
+++ b/cpukit/posix/src/psignalclearprocesssignals.c
@@ -22,7 +22,7 @@
#include <rtems/score/wkspace.h>
#include <rtems/seterr.h>
#include <rtems/posix/threadsup.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
#include <rtems/posix/pthread.h>
#include <rtems/posix/time.h>
#include <stdio.h>
diff --git a/cpukit/posix/src/psignalclearsignals.c b/cpukit/posix/src/psignalclearsignals.c
index 01f23990d7..390bcd1579 100644
--- a/cpukit/posix/src/psignalclearsignals.c
+++ b/cpukit/posix/src/psignalclearsignals.c
@@ -22,7 +22,7 @@
#include <rtems/score/wkspace.h>
#include <rtems/seterr.h>
#include <rtems/posix/threadsup.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
#include <rtems/posix/pthread.h>
#include <rtems/posix/time.h>
#include <stdio.h>
diff --git a/cpukit/posix/src/psignalsetprocesssignals.c b/cpukit/posix/src/psignalsetprocesssignals.c
index a6fa6ef45e..22609bf2af 100644
--- a/cpukit/posix/src/psignalsetprocesssignals.c
+++ b/cpukit/posix/src/psignalsetprocesssignals.c
@@ -22,7 +22,7 @@
#include <rtems/score/wkspace.h>
#include <rtems/seterr.h>
#include <rtems/posix/threadsup.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
#include <rtems/posix/pthread.h>
#include <rtems/posix/time.h>
#include <stdio.h>
diff --git a/cpukit/posix/src/psignalunblockthread.c b/cpukit/posix/src/psignalunblockthread.c
index 025ce96fab..5dc6ef587b 100644
--- a/cpukit/posix/src/psignalunblockthread.c
+++ b/cpukit/posix/src/psignalunblockthread.c
@@ -22,7 +22,7 @@
#include <rtems/score/wkspace.h>
#include <rtems/seterr.h>
#include <rtems/posix/threadsup.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
#include <rtems/posix/pthread.h>
#include <rtems/posix/time.h>
#include <stdio.h>
diff --git a/cpukit/posix/src/pthread.c b/cpukit/posix/src/pthread.c
index e6f928941d..8923aebbb2 100644
--- a/cpukit/posix/src/pthread.c
+++ b/cpukit/posix/src/pthread.c
@@ -25,7 +25,7 @@
#include <rtems/posix/cancel.h>
#include <rtems/posix/pthread.h>
#include <rtems/posix/priority.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
#include <rtems/posix/config.h>
#include <rtems/posix/key.h>
#include <rtems/posix/time.h>
diff --git a/cpukit/posix/src/pthreadinitthreads.c b/cpukit/posix/src/pthreadinitthreads.c
index 06b859b4fc..b2c850fda2 100644
--- a/cpukit/posix/src/pthreadinitthreads.c
+++ b/cpukit/posix/src/pthreadinitthreads.c
@@ -24,7 +24,6 @@
#include <rtems/posix/cancel.h>
#include <rtems/posix/pthread.h>
#include <rtems/posix/priority.h>
-#include <rtems/posix/psignal.h>
#include <rtems/posix/config.h>
#include <rtems/posix/key.h>
#include <rtems/posix/time.h>
diff --git a/cpukit/posix/src/pthreadkill.c b/cpukit/posix/src/pthreadkill.c
index ede2d99191..0caaa2a22f 100644
--- a/cpukit/posix/src/pthreadkill.c
+++ b/cpukit/posix/src/pthreadkill.c
@@ -19,7 +19,7 @@
#include <rtems/system.h>
#include <rtems/posix/pthread.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
#include <rtems/score/isr.h>
#include <rtems/seterr.h>
diff --git a/cpukit/posix/src/pthreadsigmask.c b/cpukit/posix/src/pthreadsigmask.c
index 90b174e45b..b424daba78 100644
--- a/cpukit/posix/src/pthreadsigmask.c
+++ b/cpukit/posix/src/pthreadsigmask.c
@@ -21,7 +21,7 @@
#include <rtems/system.h>
#include <rtems/posix/pthread.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
#include <rtems/seterr.h>
int pthread_sigmask(
diff --git a/cpukit/posix/src/ptimer.c b/cpukit/posix/src/ptimer.c
index 178ec5e191..2e3526730a 100644
--- a/cpukit/posix/src/ptimer.c
+++ b/cpukit/posix/src/ptimer.c
@@ -32,7 +32,6 @@
#include <rtems/rtems/types.h>
#include <rtems/rtems/timer.h>
#include <rtems/rtems/clock.h>
-#include <rtems/posix/psignal.h>
#include <rtems/score/wkspace.h>
#include <pthread.h>
#include <stdio.h>
diff --git a/cpukit/posix/src/sigaction.c b/cpukit/posix/src/sigaction.c
index f3729807d2..9fb04a042d 100644
--- a/cpukit/posix/src/sigaction.c
+++ b/cpukit/posix/src/sigaction.c
@@ -19,7 +19,7 @@
#include <rtems/system.h>
#include <rtems/posix/pthread.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
#include <rtems/seterr.h>
#include <rtems/score/isr.h>
diff --git a/cpukit/posix/src/sigpending.c b/cpukit/posix/src/sigpending.c
index 58e41d3b44..9145c988e4 100644
--- a/cpukit/posix/src/sigpending.c
+++ b/cpukit/posix/src/sigpending.c
@@ -18,7 +18,7 @@
#include <rtems/system.h>
#include <rtems/posix/pthread.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
#include <rtems/seterr.h>
int sigpending(
diff --git a/cpukit/posix/src/sigqueue.c b/cpukit/posix/src/sigqueue.c
index 0b26eacb67..b1f6cee67e 100644
--- a/cpukit/posix/src/sigqueue.c
+++ b/cpukit/posix/src/sigqueue.c
@@ -18,7 +18,7 @@
#include <rtems/system.h>
#include <rtems/posix/pthread.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
int sigqueue(
pid_t pid,
diff --git a/cpukit/posix/src/sigsuspend.c b/cpukit/posix/src/sigsuspend.c
index 6ef961e25c..f84d11f119 100644
--- a/cpukit/posix/src/sigsuspend.c
+++ b/cpukit/posix/src/sigsuspend.c
@@ -13,13 +13,11 @@
#include "config.h"
#endif
+#include <stddef.h>
#include <assert.h>
#include <signal.h>
#include <errno.h>
-#include <rtems/system.h>
-#include <rtems/posix/pthread.h>
-#include <rtems/posix/psignal.h>
#include <rtems/seterr.h>
int sigsuspend(
@@ -29,9 +27,6 @@ int sigsuspend(
sigset_t saved_signals_blocked;
sigset_t current_unblocked_signals;
int status;
- POSIX_API_Control *api;
-
- api = _Thread_Executing->API_Extensions[ THREAD_API_POSIX ];
/*
* We use SIG_BLOCK and not SIG_SETMASK because there may be
diff --git a/cpukit/posix/src/sigtimedwait.c b/cpukit/posix/src/sigtimedwait.c
index fc8cc9cac6..1f23356056 100644
--- a/cpukit/posix/src/sigtimedwait.c
+++ b/cpukit/posix/src/sigtimedwait.c
@@ -19,7 +19,7 @@
#include <rtems/system.h>
#include <rtems/posix/pthread.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
#include <rtems/seterr.h>
#include <rtems/posix/time.h>
#include <rtems/score/isr.h>
diff --git a/cpukit/posix/src/sigwait.c b/cpukit/posix/src/sigwait.c
index 5a73e85933..cfb733034b 100644
--- a/cpukit/posix/src/sigwait.c
+++ b/cpukit/posix/src/sigwait.c
@@ -15,14 +15,10 @@
#include "config.h"
#endif
-#include <pthread.h>
+#include <stddef.h>
#include <signal.h>
#include <errno.h>
-#include <rtems/system.h>
-#include <rtems/posix/pthread.h>
-#include <rtems/posix/psignal.h>
-
int sigwait(
const sigset_t *set,
int *sig
diff --git a/cpukit/posix/src/sigwaitinfo.c b/cpukit/posix/src/sigwaitinfo.c
index e90125e0cf..0b2045bcad 100644
--- a/cpukit/posix/src/sigwaitinfo.c
+++ b/cpukit/posix/src/sigwaitinfo.c
@@ -15,12 +15,8 @@
#include "config.h"
#endif
+#include <stddef.h>
#include <signal.h>
-#include <errno.h>
-
-#include <rtems/system.h>
-#include <rtems/posix/pthread.h>
-#include <rtems/posix/psignal.h>
int sigwaitinfo(
const sigset_t *set,
diff --git a/cpukit/posix/src/timercreate.c b/cpukit/posix/src/timercreate.c
index 86981eafd0..6dfa75b9c8 100644
--- a/cpukit/posix/src/timercreate.c
+++ b/cpukit/posix/src/timercreate.c
@@ -20,7 +20,7 @@
#include <rtems/system.h>
#include <rtems/seterr.h>
#include <rtems/score/thread.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/sigset.h>
#include <rtems/posix/time.h>
#include <rtems/posix/timer.h>
diff --git a/cpukit/posix/src/ualarm.c b/cpukit/posix/src/ualarm.c
index 0e13908a22..2a2f975d67 100644
--- a/cpukit/posix/src/ualarm.c
+++ b/cpukit/posix/src/ualarm.c
@@ -18,7 +18,7 @@
#include <rtems/system.h>
#include <rtems/posix/pthread.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
#include <rtems/posix/time.h>
/*
diff --git a/cpukit/sapi/include/confdefs.h b/cpukit/sapi/include/confdefs.h
index cddfccb80b..3939cf1e34 100644
--- a/cpukit/sapi/include/confdefs.h
+++ b/cpukit/sapi/include/confdefs.h
@@ -1651,6 +1651,7 @@ rtems_fs_init_functions_t rtems_fs_init_helper =
#include <rtems/posix/mutex.h>
#include <rtems/posix/key.h>
#include <rtems/posix/psignal.h>
+ #include <rtems/posix/pthread.h>
#include <rtems/posix/rwlock.h>
#include <rtems/posix/semaphore.h>
#include <rtems/posix/spinlock.h>
diff --git a/testsuites/psxtests/psxsignal05/init.c b/testsuites/psxtests/psxsignal05/init.c
index 1556a94118..04c78793f2 100644
--- a/testsuites/psxtests/psxsignal05/init.c
+++ b/testsuites/psxtests/psxsignal05/init.c
@@ -11,6 +11,8 @@
#include "config.h"
#endif
+#define __RTEMS_VIOLATE_KERNEL_VISIBILITY__
+
#define TEST_NAME "05"
#define TEST_STRING "User Signals"
#define SIGNAL_ONE SIGUSR1
@@ -20,7 +22,7 @@
#include <signal.h>
#include <errno.h>
#include <errno.h>
-#include <rtems/posix/psignal.h>
+#include <rtems/posix/psignalimpl.h>
/* forward declarations to avoid warnings */
void *POSIX_Init(void *argument);