split the inclusion of "EXTERN" data based on whether it was sapi,

score, rtems api, or posix api related.
This commit is contained in:
Joel Sherrill
1996-05-28 21:40:52 +00:00
parent c6fa38c006
commit c627b2a3a1
137 changed files with 559 additions and 333 deletions

View File

@@ -40,7 +40,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Condition_variables_Information; POSIX_EXTERN Objects_Information _POSIX_Condition_variables_Information;
/* /*
* _POSIX_Condition_variables_Manager_initialization * _POSIX_Condition_variables_Manager_initialization

View File

@@ -53,14 +53,15 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Interrupt_Handlers_Information; POSIX_EXTERN Objects_Information _POSIX_Interrupt_Handlers_Information;
/* /*
* The following is an array which is used to manage the set of * The following is an array which is used to manage the set of
* interrupt handlers installed on each vector. * interrupt handlers installed on each vector.
*/ */
EXTERN POSIX_Interrupt_Control _POSIX_Interrupt_Information[ ISR_NUMBER_OF_VECTORS ]; POSIX_EXTERN POSIX_Interrupt_Control
_POSIX_Interrupt_Information[ ISR_NUMBER_OF_VECTORS ];
/* /*
* _POSIX_Interrupt_Manager_initialization * _POSIX_Interrupt_Manager_initialization

View File

@@ -40,7 +40,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Keys_Information; POSIX_EXTERN Objects_Information _POSIX_Keys_Information;
/* /*
* _POSIX_Keys_Manager_initialization * _POSIX_Keys_Manager_initialization

View File

@@ -45,7 +45,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Message_queue_Information; POSIX_EXTERN Objects_Information _POSIX_Message_queue_Information;
/* /*
* _POSIX_Message_queue_Manager_initialization * _POSIX_Message_queue_Manager_initialization

View File

@@ -21,6 +21,9 @@
extern "C" { extern "C" {
#endif #endif
#include <rtems/score/coremutex.h>
#include <pthread.h>
/* /*
* Data Structure used to manage a POSIX mutex * Data Structure used to manage a POSIX mutex
*/ */
@@ -36,7 +39,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Mutex_Information; POSIX_EXTERN Objects_Information _POSIX_Mutex_Information;
/* /*
* _POSIX_Mutex_Manager_initialization * _POSIX_Mutex_Manager_initialization

View File

@@ -0,0 +1,34 @@
/*
* POSIX API Support
*
* NOTE:
*
* COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
* On-Line Applications Research Corporation (OAR).
* All rights assigned to U.S. Government, 1994.
*
* This material may be reproduced by or for the U.S. Government pursuant
* to the copyright license under the clause at DFARS 252.227-7013. This
* notice must appear in all copies of this file and its derivatives.
*
* $Id$
*/
#ifndef __POSIX_API_h
#define __POSIX_API_h
#include <rtems/config.h>
/*PAGE
*
* _POSIX_API_Initialize
*
* XXX
*/
void _POSIX_API_Initialize(
rtems_configuration_table *configuration_table
);
#endif
/* end of include file */

View File

@@ -35,15 +35,15 @@ typedef Thread_Control POSIX_Threads_Control;
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Threads_Information; POSIX_EXTERN Objects_Information _POSIX_Threads_Information;
/* /*
* These are used to manage the user initialization tasks. * These are used to manage the user initialization tasks.
*/ */
EXTERN posix_initialization_tasks_table POSIX_EXTERN posix_initialization_tasks_table
*_POSIX_Threads_User_initialization_tasks; *_POSIX_Threads_User_initialization_tasks;
EXTERN unsigned32 _POSIX_Threads_Number_of_initialization_tasks; POSIX_EXTERN unsigned32 _POSIX_Threads_Number_of_initialization_tasks;
/* /*

View File

@@ -41,7 +41,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Semaphore_Information; POSIX_EXTERN Objects_Information _POSIX_Semaphore_Information;
/* /*
* _POSIX_Semaphore_Manager_initialization * _POSIX_Semaphore_Manager_initialization

View File

@@ -40,7 +40,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Condition_variables_Information; POSIX_EXTERN Objects_Information _POSIX_Condition_variables_Information;
/* /*
* _POSIX_Condition_variables_Manager_initialization * _POSIX_Condition_variables_Manager_initialization

View File

@@ -53,14 +53,15 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Interrupt_Handlers_Information; POSIX_EXTERN Objects_Information _POSIX_Interrupt_Handlers_Information;
/* /*
* The following is an array which is used to manage the set of * The following is an array which is used to manage the set of
* interrupt handlers installed on each vector. * interrupt handlers installed on each vector.
*/ */
EXTERN POSIX_Interrupt_Control _POSIX_Interrupt_Information[ ISR_NUMBER_OF_VECTORS ]; POSIX_EXTERN POSIX_Interrupt_Control
_POSIX_Interrupt_Information[ ISR_NUMBER_OF_VECTORS ];
/* /*
* _POSIX_Interrupt_Manager_initialization * _POSIX_Interrupt_Manager_initialization

View File

@@ -40,7 +40,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Keys_Information; POSIX_EXTERN Objects_Information _POSIX_Keys_Information;
/* /*
* _POSIX_Keys_Manager_initialization * _POSIX_Keys_Manager_initialization

View File

@@ -45,7 +45,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Message_queue_Information; POSIX_EXTERN Objects_Information _POSIX_Message_queue_Information;
/* /*
* _POSIX_Message_queue_Manager_initialization * _POSIX_Message_queue_Manager_initialization

View File

@@ -21,6 +21,9 @@
extern "C" { extern "C" {
#endif #endif
#include <rtems/score/coremutex.h>
#include <pthread.h>
/* /*
* Data Structure used to manage a POSIX mutex * Data Structure used to manage a POSIX mutex
*/ */
@@ -36,7 +39,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Mutex_Information; POSIX_EXTERN Objects_Information _POSIX_Mutex_Information;
/* /*
* _POSIX_Mutex_Manager_initialization * _POSIX_Mutex_Manager_initialization

View File

@@ -0,0 +1,34 @@
/*
* POSIX API Support
*
* NOTE:
*
* COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
* On-Line Applications Research Corporation (OAR).
* All rights assigned to U.S. Government, 1994.
*
* This material may be reproduced by or for the U.S. Government pursuant
* to the copyright license under the clause at DFARS 252.227-7013. This
* notice must appear in all copies of this file and its derivatives.
*
* $Id$
*/
#ifndef __POSIX_API_h
#define __POSIX_API_h
#include <rtems/config.h>
/*PAGE
*
* _POSIX_API_Initialize
*
* XXX
*/
void _POSIX_API_Initialize(
rtems_configuration_table *configuration_table
);
#endif
/* end of include file */

View File

@@ -35,15 +35,15 @@ typedef Thread_Control POSIX_Threads_Control;
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Threads_Information; POSIX_EXTERN Objects_Information _POSIX_Threads_Information;
/* /*
* These are used to manage the user initialization tasks. * These are used to manage the user initialization tasks.
*/ */
EXTERN posix_initialization_tasks_table POSIX_EXTERN posix_initialization_tasks_table
*_POSIX_Threads_User_initialization_tasks; *_POSIX_Threads_User_initialization_tasks;
EXTERN unsigned32 _POSIX_Threads_Number_of_initialization_tasks; POSIX_EXTERN unsigned32 _POSIX_Threads_Number_of_initialization_tasks;
/* /*

View File

@@ -41,7 +41,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Semaphore_Information; POSIX_EXTERN Objects_Information _POSIX_Semaphore_Information;
/* /*
* _POSIX_Semaphore_Manager_initialization * _POSIX_Semaphore_Manager_initialization

View File

@@ -51,7 +51,7 @@ typedef struct {
* The following define the internal Dual Ported Memory information. * The following define the internal Dual Ported Memory information.
*/ */
EXTERN Objects_Information _Dual_ported_memory_Information; RTEMS_EXTERN Objects_Information _Dual_ported_memory_Information;
/* /*
* _Dual_ported_memory_Manager_initialization * _Dual_ported_memory_Manager_initialization

View File

@@ -159,7 +159,7 @@ void _Event_Timeout (
* executing thread are received properly. * executing thread are received properly.
*/ */
EXTERN volatile Event_Sync_states _Event_Sync_state; RTEMS_EXTERN volatile Event_Sync_states _Event_Sync_state;
#include <rtems/rtems/eventmp.h> #include <rtems/rtems/eventmp.h>
#ifndef __RTEMS_APPLICATION__ #ifndef __RTEMS_APPLICATION__

View File

@@ -68,7 +68,7 @@ typedef struct {
* manage this class of objects. * manage this class of objects.
*/ */
EXTERN Objects_Information _Message_queue_Information; RTEMS_EXTERN Objects_Information _Message_queue_Information;
/* /*
* _Message_queue_Manager_initialization * _Message_queue_Manager_initialization

View File

@@ -55,7 +55,7 @@ typedef struct {
* manage this class of objects. * manage this class of objects.
*/ */
EXTERN Objects_Information _Partition_Information; RTEMS_EXTERN Objects_Information _Partition_Information;
/* /*
* _Partition_Manager_initialization * _Partition_Manager_initialization

View File

@@ -67,7 +67,7 @@ typedef struct {
Thread_Control *owner; Thread_Control *owner;
} Rate_monotonic_Control; } Rate_monotonic_Control;
EXTERN Objects_Information _Rate_monotonic_Information; RTEMS_EXTERN Objects_Information _Rate_monotonic_Information;
/* /*
* _Rate_monotonic_Manager_initialization * _Rate_monotonic_Manager_initialization

View File

@@ -59,7 +59,7 @@ typedef struct {
* manage this class of objects. * manage this class of objects.
*/ */
EXTERN Objects_Information _Region_Information; RTEMS_EXTERN Objects_Information _Region_Information;
/* /*
* _Region_Manager_initialization * _Region_Manager_initialization

View File

@@ -58,7 +58,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _Semaphore_Information; RTEMS_EXTERN Objects_Information _Semaphore_Information;
/* /*
* _Semaphore_Manager_initialization * _Semaphore_Manager_initialization

View File

@@ -60,7 +60,7 @@ typedef enum {
extern rtems_status_code _Status_Object_name_errors_to_status[]; extern rtems_status_code _Status_Object_name_errors_to_status[];
#ifdef INIT #ifdef RTEMS_API_INIT
rtems_status_code _Status_Object_name_errors_to_status[] = { rtems_status_code _Status_Object_name_errors_to_status[] = {
RTEMS_SUCCESSFUL, /* OBJECTS_SUCCESSFUL */ RTEMS_SUCCESSFUL, /* OBJECTS_SUCCESSFUL */
RTEMS_INVALID_NAME, /* OBJECTS_INVALID_NAME */ RTEMS_INVALID_NAME, /* OBJECTS_INVALID_NAME */

View File

@@ -164,14 +164,15 @@ typedef struct {
* manage this class of objects. * manage this class of objects.
*/ */
EXTERN Objects_Information _RTEMS_tasks_Information; RTEMS_EXTERN Objects_Information _RTEMS_tasks_Information;
/* /*
* These are used to manage the user initialization tasks. * These are used to manage the user initialization tasks.
*/ */
EXTERN rtems_initialization_tasks_table *_RTEMS_tasks_User_initialization_tasks; RTEMS_EXTERN rtems_initialization_tasks_table
EXTERN unsigned32 _RTEMS_tasks_Number_of_initialization_tasks; *_RTEMS_tasks_User_initialization_tasks;
RTEMS_EXTERN unsigned32 _RTEMS_tasks_Number_of_initialization_tasks;
/* /*
* _RTEMS_tasks_Manager_initialization * _RTEMS_tasks_Manager_initialization

View File

@@ -64,7 +64,7 @@ typedef rtems_timer_service_routine ( *rtems_timer_service_routine_entry )(
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _Timer_Information; RTEMS_EXTERN Objects_Information _Timer_Information;
/* /*
* The following records define the control block used to manage * The following records define the control block used to manage

View File

@@ -51,7 +51,7 @@ typedef struct {
* The following define the internal Dual Ported Memory information. * The following define the internal Dual Ported Memory information.
*/ */
EXTERN Objects_Information _Dual_ported_memory_Information; RTEMS_EXTERN Objects_Information _Dual_ported_memory_Information;
/* /*
* _Dual_ported_memory_Manager_initialization * _Dual_ported_memory_Manager_initialization

View File

@@ -159,7 +159,7 @@ void _Event_Timeout (
* executing thread are received properly. * executing thread are received properly.
*/ */
EXTERN volatile Event_Sync_states _Event_Sync_state; RTEMS_EXTERN volatile Event_Sync_states _Event_Sync_state;
#include <rtems/rtems/eventmp.h> #include <rtems/rtems/eventmp.h>
#ifndef __RTEMS_APPLICATION__ #ifndef __RTEMS_APPLICATION__

View File

@@ -68,7 +68,7 @@ typedef struct {
* manage this class of objects. * manage this class of objects.
*/ */
EXTERN Objects_Information _Message_queue_Information; RTEMS_EXTERN Objects_Information _Message_queue_Information;
/* /*
* _Message_queue_Manager_initialization * _Message_queue_Manager_initialization

View File

@@ -55,7 +55,7 @@ typedef struct {
* manage this class of objects. * manage this class of objects.
*/ */
EXTERN Objects_Information _Partition_Information; RTEMS_EXTERN Objects_Information _Partition_Information;
/* /*
* _Partition_Manager_initialization * _Partition_Manager_initialization

View File

@@ -67,7 +67,7 @@ typedef struct {
Thread_Control *owner; Thread_Control *owner;
} Rate_monotonic_Control; } Rate_monotonic_Control;
EXTERN Objects_Information _Rate_monotonic_Information; RTEMS_EXTERN Objects_Information _Rate_monotonic_Information;
/* /*
* _Rate_monotonic_Manager_initialization * _Rate_monotonic_Manager_initialization

View File

@@ -59,7 +59,7 @@ typedef struct {
* manage this class of objects. * manage this class of objects.
*/ */
EXTERN Objects_Information _Region_Information; RTEMS_EXTERN Objects_Information _Region_Information;
/* /*
* _Region_Manager_initialization * _Region_Manager_initialization

View File

@@ -58,7 +58,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _Semaphore_Information; RTEMS_EXTERN Objects_Information _Semaphore_Information;
/* /*
* _Semaphore_Manager_initialization * _Semaphore_Manager_initialization

View File

@@ -60,7 +60,7 @@ typedef enum {
extern rtems_status_code _Status_Object_name_errors_to_status[]; extern rtems_status_code _Status_Object_name_errors_to_status[];
#ifdef INIT #ifdef RTEMS_API_INIT
rtems_status_code _Status_Object_name_errors_to_status[] = { rtems_status_code _Status_Object_name_errors_to_status[] = {
RTEMS_SUCCESSFUL, /* OBJECTS_SUCCESSFUL */ RTEMS_SUCCESSFUL, /* OBJECTS_SUCCESSFUL */
RTEMS_INVALID_NAME, /* OBJECTS_INVALID_NAME */ RTEMS_INVALID_NAME, /* OBJECTS_INVALID_NAME */

View File

@@ -164,14 +164,15 @@ typedef struct {
* manage this class of objects. * manage this class of objects.
*/ */
EXTERN Objects_Information _RTEMS_tasks_Information; RTEMS_EXTERN Objects_Information _RTEMS_tasks_Information;
/* /*
* These are used to manage the user initialization tasks. * These are used to manage the user initialization tasks.
*/ */
EXTERN rtems_initialization_tasks_table *_RTEMS_tasks_User_initialization_tasks; RTEMS_EXTERN rtems_initialization_tasks_table
EXTERN unsigned32 _RTEMS_tasks_Number_of_initialization_tasks; *_RTEMS_tasks_User_initialization_tasks;
RTEMS_EXTERN unsigned32 _RTEMS_tasks_Number_of_initialization_tasks;
/* /*
* _RTEMS_tasks_Manager_initialization * _RTEMS_tasks_Manager_initialization

View File

@@ -64,7 +64,7 @@ typedef rtems_timer_service_routine ( *rtems_timer_service_routine_entry )(
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _Timer_Information; RTEMS_EXTERN Objects_Information _Timer_Information;
/* /*
* The following records define the control block used to manage * The following records define the control block used to manage

View File

@@ -84,7 +84,7 @@ typedef struct {
rtems_extensions_table *User_extension_table; rtems_extensions_table *User_extension_table;
rtems_multiprocessing_table *User_multiprocessing_table; rtems_multiprocessing_table *User_multiprocessing_table;
rtems_api_configuration_table *RTEMS_api_configuration; rtems_api_configuration_table *RTEMS_api_configuration;
posix_api_configuration_table *Posix_api_configuration; posix_api_configuration_table *POSIX_api_configuration;
} rtems_configuration_table; } rtems_configuration_table;
/* /*
@@ -92,8 +92,8 @@ typedef struct {
* the user. They are not used in RTEMS itself. * the user. They are not used in RTEMS itself.
*/ */
EXTERN rtems_configuration_table *_Configuration_Table; SAPI_EXTERN rtems_configuration_table *_Configuration_Table;
EXTERN rtems_multiprocessing_table *_Configuration_MP_table; SAPI_EXTERN rtems_multiprocessing_table *_Configuration_MP_table;
#ifdef __cplusplus #ifdef __cplusplus
} }

View File

@@ -54,7 +54,7 @@ typedef User_extensions_Table rtems_extensions_table;
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _Extension_Information; SAPI_EXTERN Objects_Information _Extension_Information;
/* /*
* The following records define the control block used to manage * The following records define the control block used to manage

View File

@@ -86,10 +86,10 @@ typedef struct {
* Address Table and Device Name Table. * Address Table and Device Name Table.
*/ */
EXTERN unsigned32 _IO_Number_of_drivers; SAPI_EXTERN unsigned32 _IO_Number_of_drivers;
EXTERN rtems_driver_address_table *_IO_Driver_address_table; SAPI_EXTERN rtems_driver_address_table *_IO_Driver_address_table;
EXTERN unsigned32 _IO_Number_of_devices; SAPI_EXTERN unsigned32 _IO_Number_of_devices;
EXTERN rtems_driver_name_t *_IO_Driver_name_table; SAPI_EXTERN rtems_driver_name_t *_IO_Driver_name_table;
/* /*
* _IO_Manager_initialization * _IO_Manager_initialization

View File

@@ -84,7 +84,7 @@ typedef struct {
rtems_extensions_table *User_extension_table; rtems_extensions_table *User_extension_table;
rtems_multiprocessing_table *User_multiprocessing_table; rtems_multiprocessing_table *User_multiprocessing_table;
rtems_api_configuration_table *RTEMS_api_configuration; rtems_api_configuration_table *RTEMS_api_configuration;
posix_api_configuration_table *Posix_api_configuration; posix_api_configuration_table *POSIX_api_configuration;
} rtems_configuration_table; } rtems_configuration_table;
/* /*
@@ -92,8 +92,8 @@ typedef struct {
* the user. They are not used in RTEMS itself. * the user. They are not used in RTEMS itself.
*/ */
EXTERN rtems_configuration_table *_Configuration_Table; SAPI_EXTERN rtems_configuration_table *_Configuration_Table;
EXTERN rtems_multiprocessing_table *_Configuration_MP_table; SAPI_EXTERN rtems_multiprocessing_table *_Configuration_MP_table;
#ifdef __cplusplus #ifdef __cplusplus
} }

View File

@@ -54,7 +54,7 @@ typedef User_extensions_Table rtems_extensions_table;
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _Extension_Information; SAPI_EXTERN Objects_Information _Extension_Information;
/* /*
* The following records define the control block used to manage * The following records define the control block used to manage

View File

@@ -86,10 +86,10 @@ typedef struct {
* Address Table and Device Name Table. * Address Table and Device Name Table.
*/ */
EXTERN unsigned32 _IO_Number_of_drivers; SAPI_EXTERN unsigned32 _IO_Number_of_drivers;
EXTERN rtems_driver_address_table *_IO_Driver_address_table; SAPI_EXTERN rtems_driver_address_table *_IO_Driver_address_table;
EXTERN unsigned32 _IO_Number_of_devices; SAPI_EXTERN unsigned32 _IO_Number_of_devices;
EXTERN rtems_driver_name_t *_IO_Driver_name_table; SAPI_EXTERN rtems_driver_name_t *_IO_Driver_name_table;
/* /*
* _IO_Manager_initialization * _IO_Manager_initialization

View File

@@ -13,11 +13,12 @@
*/ */
/* /*
* INIT is defined so all of the data will be included in this * SCORE_INIT and SAPI_INIT are defined so all of the super core and
* file. * super API data will be included in this object file.
*/ */
#define INIT #define SAPI_INIT
#define SCORE_INIT
#include <rtems/system.h> #include <rtems/system.h>
#include <rtems/config.h> #include <rtems/config.h>
@@ -44,7 +45,11 @@
#include <rtems/directives.h> #include <rtems/directives.h>
#include <rtems/sptables.h> #include <rtems/sptables.h>
#include <rtems/rtems/rtemsapi.h> #include <rtems/rtems/rtemsapi.h>
#ifdef RTEMS_POSIX_API
#include <rtems/posix/posixapi.h>
#endif
/*PAGE /*PAGE
* *

View File

@@ -14,21 +14,27 @@
* $Id$ * $Id$
*/ */
#ifdef RTEMS_POSIX_API
#include <assert.h> #include <assert.h>
/*
* POSIX_API_INIT is defined so all of the POSIX API
* data will be included in this object file.
*/
#define POSIX_API_INIT
#include <rtems/system.h> #include <rtems/system.h>
#define INIT #include <sys/types.h>
#include <rtems/config.h>
#include <rtems/posix/cond.h> #include <rtems/posix/cond.h>
#include <rtems/posix/condmp.h>
#include <rtems/posix/config.h> #include <rtems/posix/config.h>
#include <rtems/posix/key.h> #include <rtems/posix/key.h>
#include <rtems/posix/mutex.h> #include <rtems/posix/mutex.h>
#include <rtems/posix/mutexmp.h>
#include <rtems/posix/priority.h> #include <rtems/posix/priority.h>
#include <rtems/posix/pthread.h> #include <rtems/posix/pthread.h>
#include <rtems/posix/pthreadmp.h>
#include <rtems/posix/time.h> #include <rtems/posix/time.h>
/*PAGE /*PAGE
@@ -48,20 +54,17 @@ void _POSIX_API_Initialize(
assert( api_configuration ); assert( api_configuration );
_RTEMS_tasks_Manager_initialization( _POSIX_Threads_Manager_initialization(
api_configuration->maximum_tasks api_configuration->maximum_threads,
#if 0
,
api_configuration->number_of_initialization_tasks, api_configuration->number_of_initialization_tasks,
api_configuration->User_initialization_tasks_table api_configuration->User_initialization_tasks_table
#endif
); );
_POSIX_Condition_variables_Manager_initialization( _POSIX_Condition_variables_Manager_initialization(
api_configuration->maximum_condition_variables api_configuration->maximum_condition_variables
); );
void _POSIX_Key_Manager_initialization( api_configuration->maximum_keys ); _POSIX_Key_Manager_initialization( api_configuration->maximum_keys );
_POSIX_Mutex_Manager_initialization( _POSIX_Mutex_Manager_initialization(
api_configuration->maximum_mutexes api_configuration->maximum_mutexes
@@ -69,4 +72,5 @@ void _POSIX_API_Initialize(
} }
#endif
/* end of file */ /* end of file */

View File

@@ -14,12 +14,17 @@
* $Id$ * $Id$
*/ */
/*
* RTEMS_API_INIT is defined so all of the RTEMS API
* data will be included in this object file.
*/
#define RTEMS_API_INIT
#include <rtems/system.h> #include <rtems/system.h>
#include <rtems/rtems/status.h> #include <rtems/rtems/status.h>
#include <rtems/rtems/rtemsapi.h> #include <rtems/rtems/rtemsapi.h>
#define INIT
#include <rtems/rtems/intr.h> #include <rtems/rtems/intr.h>
#include <rtems/rtems/clock.h> #include <rtems/rtems/clock.h>
#include <rtems/rtems/tasks.h> #include <rtems/rtems/tasks.h>

View File

@@ -230,10 +230,10 @@ typedef struct {
/* variables */ /* variables */
EXTERN Context_Control_fp _CPU_Null_fp_context; SCORE_EXTERN Context_Control_fp _CPU_Null_fp_context;
EXTERN unsigned32 _CPU_Default_gr27; SCORE_EXTERN unsigned32 _CPU_Default_gr27;
EXTERN void *_CPU_Interrupt_stack_low; SCORE_EXTERN void *_CPU_Interrupt_stack_low;
EXTERN void *_CPU_Interrupt_stack_high; SCORE_EXTERN void *_CPU_Interrupt_stack_high;
#endif /* ! ASM */ #endif /* ! ASM */

View File

@@ -122,9 +122,9 @@ typedef struct {
/* variables */ /* variables */
EXTERN Context_Control_fp _CPU_Null_fp_context; SCORE_EXTERN Context_Control_fp _CPU_Null_fp_context;
EXTERN void *_CPU_Interrupt_stack_low; SCORE_EXTERN void *_CPU_Interrupt_stack_low;
EXTERN void *_CPU_Interrupt_stack_high; SCORE_EXTERN void *_CPU_Interrupt_stack_high;
/* constants */ /* constants */

View File

@@ -157,8 +157,8 @@ typedef struct {
/* variables */ /* variables */
EXTERN void *_CPU_Interrupt_stack_low; SCORE_EXTERN void *_CPU_Interrupt_stack_low;
EXTERN void *_CPU_Interrupt_stack_high; SCORE_EXTERN void *_CPU_Interrupt_stack_high;
/* constants */ /* constants */

View File

@@ -148,10 +148,10 @@ typedef struct {
/* variables */ /* variables */
EXTERN void *_CPU_Interrupt_stack_low; SCORE_EXTERN void *_CPU_Interrupt_stack_low;
EXTERN void *_CPU_Interrupt_stack_high; SCORE_EXTERN void *_CPU_Interrupt_stack_high;
/* points to jsr-exception-table in targets wo/ VBR register */ /* points to jsr-exception-table in targets wo/ VBR register */
extern char _VBR[]; extern char _VBR[];
/* constants */ /* constants */

View File

@@ -352,7 +352,7 @@ typedef struct {
* _CPU_Context_Initialize. * _CPU_Context_Initialize.
*/ */
EXTERN Context_Control_fp _CPU_Null_fp_context; SCORE_EXTERN Context_Control_fp _CPU_Null_fp_context;
/* /*
* On some CPUs, RTEMS supports a software managed interrupt stack. * On some CPUs, RTEMS supports a software managed interrupt stack.
@@ -367,8 +367,8 @@ EXTERN Context_Control_fp _CPU_Null_fp_context;
* CPU_HAS_SOFTWARE_INTERRUPT_STACK is defined as TRUE. * CPU_HAS_SOFTWARE_INTERRUPT_STACK is defined as TRUE.
*/ */
EXTERN void *_CPU_Interrupt_stack_low; SCORE_EXTERN void *_CPU_Interrupt_stack_low;
EXTERN void *_CPU_Interrupt_stack_high; SCORE_EXTERN void *_CPU_Interrupt_stack_high;
/* /*
* With some compilation systems, it is difficult if not impossible to * With some compilation systems, it is difficult if not impossible to
@@ -380,7 +380,7 @@ EXTERN void *_CPU_Interrupt_stack_high;
* sequence (if a dispatch is necessary). * sequence (if a dispatch is necessary).
*/ */
EXTERN void (*_CPU_Thread_dispatch_pointer)(); SCORE_EXTERN void (*_CPU_Thread_dispatch_pointer)();
/* /*
* Nothing prevents the porter from declaring more CPU specific variables. * Nothing prevents the porter from declaring more CPU specific variables.

View File

@@ -473,8 +473,8 @@ typedef struct {
* CPU_HAS_SOFTWARE_INTERRUPT_STACK is defined as TRUE. * CPU_HAS_SOFTWARE_INTERRUPT_STACK is defined as TRUE.
*/ */
EXTERN void *_CPU_Interrupt_stack_low; SCORE_EXTERN void *_CPU_Interrupt_stack_low;
EXTERN void *_CPU_Interrupt_stack_high; SCORE_EXTERN void *_CPU_Interrupt_stack_high;
/* /*
* With some compilation systems, it is difficult if not impossible to * With some compilation systems, it is difficult if not impossible to
@@ -492,7 +492,7 @@ EXTERN void *_CPU_Interrupt_stack_high;
* Nothing prevents the porter from declaring more CPU specific variables. * Nothing prevents the porter from declaring more CPU specific variables.
*/ */
EXTERN struct { SCORE_EXTERN struct {
unsigned32 *Nest_level; unsigned32 *Nest_level;
unsigned32 *Disable_level; unsigned32 *Disable_level;
void *Vector_table; void *Vector_table;

View File

@@ -514,7 +514,7 @@ typedef struct {
* context area during _CPU_Context_Initialize. * context area during _CPU_Context_Initialize.
*/ */
EXTERN Context_Control_fp _CPU_Null_fp_context CPU_STRUCTURE_ALIGNMENT; SCORE_EXTERN Context_Control_fp _CPU_Null_fp_context CPU_STRUCTURE_ALIGNMENT;
/* /*
* This stack is allocated by the Interrupt Manager and the switch * This stack is allocated by the Interrupt Manager and the switch
@@ -529,8 +529,8 @@ EXTERN Context_Control_fp _CPU_Null_fp_context CPU_STRUCTURE_ALIGNMENT;
* are required. * are required.
*/ */
EXTERN void *_CPU_Interrupt_stack_low; SCORE_EXTERN void *_CPU_Interrupt_stack_low;
EXTERN void *_CPU_Interrupt_stack_high; SCORE_EXTERN void *_CPU_Interrupt_stack_high;
#if defined(erc32) #if defined(erc32)
@@ -538,7 +538,7 @@ EXTERN void *_CPU_Interrupt_stack_high;
* ERC32 Specific Variables * ERC32 Specific Variables
*/ */
EXTERN unsigned32 _ERC32_MEC_Timer_Control_Mirror; SCORE_EXTERN unsigned32 _ERC32_MEC_Timer_Control_Mirror;
#endif #endif
@@ -585,7 +585,7 @@ extern const CPU_Trap_table_entry _CPU_Trap_slot_template;
#define SPARC_TRAP_TABLE_ALIGNMENT 4096 #define SPARC_TRAP_TABLE_ALIGNMENT 4096
EXTERN unsigned8 _CPU_Trap_Table_area[ 8192 ] SCORE_EXTERN unsigned8 _CPU_Trap_Table_area[ 8192 ]
__attribute__ ((aligned (SPARC_TRAP_TABLE_ALIGNMENT))); __attribute__ ((aligned (SPARC_TRAP_TABLE_ALIGNMENT)));

View File

@@ -491,7 +491,7 @@ typedef struct {
* _CPU_Context_Initialize. * _CPU_Context_Initialize.
*/ */
EXTERN Context_Control_fp _CPU_Null_fp_context; SCORE_EXTERN Context_Control_fp _CPU_Null_fp_context;
/* /*
* On some CPUs, RTEMS supports a software managed interrupt stack. * On some CPUs, RTEMS supports a software managed interrupt stack.
@@ -506,8 +506,8 @@ EXTERN Context_Control_fp _CPU_Null_fp_context;
* CPU_HAS_SOFTWARE_INTERRUPT_STACK is defined as TRUE. * CPU_HAS_SOFTWARE_INTERRUPT_STACK is defined as TRUE.
*/ */
EXTERN void *_CPU_Interrupt_stack_low; SCORE_EXTERN void *_CPU_Interrupt_stack_low;
EXTERN void *_CPU_Interrupt_stack_high; SCORE_EXTERN void *_CPU_Interrupt_stack_high;
/* /*
* With some compilation systems, it is difficult if not impossible to * With some compilation systems, it is difficult if not impossible to
@@ -519,7 +519,7 @@ EXTERN void *_CPU_Interrupt_stack_high;
* sequence (if a dispatch is necessary). * sequence (if a dispatch is necessary).
*/ */
EXTERN void (*_CPU_Thread_dispatch_pointer)(); SCORE_EXTERN void (*_CPU_Thread_dispatch_pointer)();
/* /*
* Nothing prevents the porter from declaring more CPU specific variables. * Nothing prevents the porter from declaring more CPU specific variables.

View File

@@ -43,7 +43,7 @@ typedef struct {
* This is the list of API extensions to the system initialization. * This is the list of API extensions to the system initialization.
*/ */
EXTERN Chain_Control _API_extensions_List; SCORE_EXTERN Chain_Control _API_extensions_List;
/* /*
* _API_extensions_Initialization * _API_extensions_Initialization

View File

@@ -40,8 +40,8 @@ extern "C" {
#if ( CPU_USE_GENERIC_BITFIELD_DATA == TRUE ) #if ( CPU_USE_GENERIC_BITFIELD_DATA == TRUE )
#ifndef INIT #ifndef SCORE_INIT
extern const unsigned char __log2table[256]; extern const unsigned char __log2table[256];
#else #else
const unsigned char __log2table[256] = { const unsigned char __log2table[256] = {
7, 7, 6, 6, 5, 5, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 7, 7, 6, 6, 5, 5, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4,

View File

@@ -35,7 +35,7 @@ extern "C" {
* currently executing thread and given to the heir thread. * currently executing thread and given to the heir thread.
*/ */
EXTERN boolean _Context_Switch_necessary; SCORE_EXTERN boolean _Context_Switch_necessary;
/* /*
* _Context_Initialize * _Context_Initialize

View File

@@ -21,7 +21,7 @@
extern "C" { extern "C" {
#endif #endif
#ifdef INIT #ifdef SCORE_INIT
const char _Copyright_Notice[] = const char _Copyright_Notice[] =
"COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.\n\ "COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.\n\

View File

@@ -40,7 +40,7 @@ typedef unsigned32 rtems_debug_control;
* This variable contains the current debug level. * This variable contains the current debug level.
*/ */
EXTERN rtems_debug_control _Debug_Level; SCORE_EXTERN rtems_debug_control _Debug_Level;
/* /*
* _Debug_Manager_initialization * _Debug_Manager_initialization

View File

@@ -70,7 +70,7 @@ typedef struct {
* When a fatal error occurs, the error information is stored here. * When a fatal error occurs, the error information is stored here.
*/ */
EXTERN Internal_errors_Information Internal_errors_What_happened; SCORE_EXTERN Internal_errors_Information Internal_errors_What_happened;
/* /*
* _Internal_error_Occurred * _Internal_error_Occurred

View File

@@ -68,21 +68,21 @@ typedef ISR_Handler ( *ISR_Handler_entry )(
* executing thread by an ISR handler. * executing thread by an ISR handler.
*/ */
EXTERN boolean _ISR_Signals_to_thread_executing; SCORE_EXTERN boolean _ISR_Signals_to_thread_executing;
/* /*
* The following contains the interrupt service routine nest level. * The following contains the interrupt service routine nest level.
* When this variable is zero, a thread is executing. * When this variable is zero, a thread is executing.
*/ */
EXTERN unsigned32 _ISR_Nest_level; SCORE_EXTERN unsigned32 _ISR_Nest_level;
/* /*
* The following declares the Vector Table. Application * The following declares the Vector Table. Application
* interrupt service routines are vectored by the ISR Handler via this table. * interrupt service routines are vectored by the ISR Handler via this table.
*/ */
EXTERN ISR_Handler_entry _ISR_Vector_table[ ISR_NUMBER_OF_VECTORS ]; SCORE_EXTERN ISR_Handler_entry _ISR_Vector_table[ ISR_NUMBER_OF_VECTORS ];
/* /*
* _ISR_Handler_initialization * _ISR_Handler_initialization

View File

@@ -127,33 +127,34 @@ typedef struct {
* This is the core semaphore which the MPCI Receive Server blocks on. * This is the core semaphore which the MPCI Receive Server blocks on.
*/ */
EXTERN CORE_semaphore_Control _MPCI_Semaphore; SCORE_EXTERN CORE_semaphore_Control _MPCI_Semaphore;
/* /*
* The following thread queue is used to maintain a list of tasks * The following thread queue is used to maintain a list of tasks
* which currently have outstanding remote requests. * which currently have outstanding remote requests.
*/ */
EXTERN Thread_queue_Control _MPCI_Remote_blocked_threads; SCORE_EXTERN Thread_queue_Control _MPCI_Remote_blocked_threads;
/* /*
* The following define the internal pointers to the user's * The following define the internal pointers to the user's
* configuration information. * configuration information.
*/ */
EXTERN MPCI_Control *_MPCI_table; SCORE_EXTERN MPCI_Control *_MPCI_table;
/* /*
* The following points to the MPCI Receive Server. * The following points to the MPCI Receive Server.
*/ */
EXTERN Thread_Control *_MPCI_Receive_server_tcb; SCORE_EXTERN Thread_Control *_MPCI_Receive_server_tcb;
/* /*
* The following table contains the process packet routines provided * The following table contains the process packet routines provided
* by each object that supports MP operations. * by each object that supports MP operations.
*/ */
EXTERN MPCI_Packet_processor _MPCI_Packet_processors[MP_PACKET_CLASSES_LAST+1]; SCORE_EXTERN MPCI_Packet_processor
_MPCI_Packet_processors[MP_PACKET_CLASSES_LAST+1];
/* /*
* _MPCI_Handler_initialization * _MPCI_Handler_initialization

View File

@@ -151,8 +151,8 @@ typedef struct {
* node number of the local node. * node number of the local node.
*/ */
EXTERN unsigned32 _Objects_Local_node; SCORE_EXTERN unsigned32 _Objects_Local_node;
EXTERN unsigned32 _Objects_Maximum_nodes; SCORE_EXTERN unsigned32 _Objects_Maximum_nodes;
/* /*
* The following is the list of information blocks for each object * The following is the list of information blocks for each object
@@ -160,7 +160,7 @@ EXTERN unsigned32 _Objects_Maximum_nodes;
* and obtain a pointer to the appropriate object control block. * and obtain a pointer to the appropriate object control block.
*/ */
EXTERN Objects_Information SCORE_EXTERN Objects_Information
*_Objects_Information_table[OBJECTS_CLASSES_LAST + 1]; *_Objects_Information_table[OBJECTS_CLASSES_LAST + 1];
/* /*

View File

@@ -137,8 +137,8 @@ void _Objects_MP_Is_remote (
* inactive global object control blocks. * inactive global object control blocks.
*/ */
EXTERN unsigned32 _Objects_MP_Maximum_global_objects; SCORE_EXTERN unsigned32 _Objects_MP_Maximum_global_objects;
EXTERN Chain_Control _Objects_MP_Inactive_global_objects; SCORE_EXTERN Chain_Control _Objects_MP_Inactive_global_objects;
#ifndef __RTEMS_APPLICATION__ #ifndef __RTEMS_APPLICATION__
#include <rtems/score/objectmp.inl> #include <rtems/score/objectmp.inl>

View File

@@ -58,8 +58,9 @@ typedef struct {
* threads are ready at that priority. * threads are ready at that priority.
*/ */
EXTERN volatile Priority_Bit_map_control _Priority_Major_bit_map; SCORE_EXTERN volatile Priority_Bit_map_control _Priority_Major_bit_map;
EXTERN Priority_Bit_map_control _Priority_Bit_map[16] CPU_STRUCTURE_ALIGNMENT; SCORE_EXTERN Priority_Bit_map_control
_Priority_Bit_map[16] CPU_STRUCTURE_ALIGNMENT;
/* /*
* The definition of the Priority_Bit_map_control type is CPU dependent. * The definition of the Priority_Bit_map_control type is CPU dependent.

View File

@@ -44,13 +44,13 @@ typedef enum {
* an multiprocessing system. * an multiprocessing system.
*/ */
EXTERN boolean _System_state_Is_multiprocessing; SCORE_EXTERN boolean _System_state_Is_multiprocessing;
/* /*
* The following variable contains the current system state. * The following variable contains the current system state.
*/ */
EXTERN System_state_Codes _System_state_Current; SCORE_EXTERN System_state_Codes _System_state_Current;
/* /*
* Make it possible for the application to get the system state information. * Make it possible for the application to get the system state information.

View File

@@ -36,16 +36,41 @@ extern "C" {
/* /*
* The following insures that all data is declared in the space * The following insures that all data is declared in the space
* of the Initialization Manager. It is referenced as "external" * of the initialization routine for either the Initialization Manager
* in every other file. * or the initialization file for the appropriate API. It is
* referenced as "external" in every other file.
*/ */
#ifdef INIT #ifdef SCORE_INIT
#undef EXTERN #undef SCORE_EXTERN
#define EXTERN #define SCORE_EXTERN
#else #else
#undef EXTERN #undef SCORE_EXTERN
#define EXTERN extern #define SCORE_EXTERN extern
#endif
#ifdef SAPI_INIT
#undef SAPI_EXTERN
#define SAPI_EXTERN
#else
#undef SAPI_EXTERN
#define SAPI_EXTERN extern
#endif
#ifdef RTEMS_API_INIT
#undef RTEMS_EXTERN
#define RTEMS_EXTERN
#else
#undef RTEMS_EXTERN
#define RTEMS_EXTERN extern
#endif
#ifdef POSIX_API_INIT
#undef POSIX_EXTERN
#define POSIX_EXTERN
#else
#undef POSIX_EXTERN
#define POSIX_EXTERN extern
#endif #endif
/* /*
@@ -118,7 +143,7 @@ extern const char _Copyright_Notice[]; /* RTEMS copyright string */
* The following defines the CPU dependent information table. * The following defines the CPU dependent information table.
*/ */
EXTERN rtems_cpu_table _CPU_Table; /* CPU dependent info */ SCORE_EXTERN rtems_cpu_table _CPU_Table; /* CPU dependent info */
/* /*
* XXX weird RTEMS stuff * XXX weird RTEMS stuff

View File

@@ -173,14 +173,14 @@ typedef struct {
* manage this class of objects. * manage this class of objects.
*/ */
EXTERN Objects_Information _Thread_Internal_information; SCORE_EXTERN Objects_Information _Thread_Internal_information;
/* /*
* The following define the thread control pointers used to access * The following define the thread control pointers used to access
* and manipulate the idle thread. * and manipulate the idle thread.
*/ */
EXTERN Thread_Control *_Thread_Idle; SCORE_EXTERN Thread_Control *_Thread_Idle;
/* /*
* The following context area contains the context of the "thread" * The following context area contains the context of the "thread"
@@ -190,7 +190,7 @@ EXTERN Thread_Control *_Thread_Idle;
* which initiated the system. * which initiated the system.
*/ */
EXTERN Context_Control _Thread_BSP_context; SCORE_EXTERN Context_Control _Thread_BSP_context;
/* /*
* The following declares the dispatch critical section nesting * The following declares the dispatch critical section nesting
@@ -198,7 +198,7 @@ EXTERN Context_Control _Thread_BSP_context;
* moments. * moments.
*/ */
EXTERN unsigned32 _Thread_Dispatch_disable_level; SCORE_EXTERN unsigned32 _Thread_Dispatch_disable_level;
/* /*
* The following holds how many user extensions are in the system. This * The following holds how many user extensions are in the system. This
@@ -206,28 +206,28 @@ EXTERN unsigned32 _Thread_Dispatch_disable_level;
* per thread. * per thread.
*/ */
EXTERN unsigned32 _Thread_Maximum_extensions; SCORE_EXTERN unsigned32 _Thread_Maximum_extensions;
/* /*
* The following data items are used to manage timeslicing. * The following data items are used to manage timeslicing.
*/ */
EXTERN unsigned32 _Thread_Ticks_remaining_in_timeslice; SCORE_EXTERN unsigned32 _Thread_Ticks_remaining_in_timeslice;
EXTERN unsigned32 _Thread_Ticks_per_timeslice; SCORE_EXTERN unsigned32 _Thread_Ticks_per_timeslice;
/* /*
* The following points to the array of FIFOs used to manage the * The following points to the array of FIFOs used to manage the
* set of ready threads. * set of ready threads.
*/ */
EXTERN Chain_Control *_Thread_Ready_chain; SCORE_EXTERN Chain_Control *_Thread_Ready_chain;
/* /*
* The following points to the thread which is currently executing. * The following points to the thread which is currently executing.
* This thread is implicitly manipulated by numerous directives. * This thread is implicitly manipulated by numerous directives.
*/ */
EXTERN Thread_Control *_Thread_Executing; SCORE_EXTERN Thread_Control *_Thread_Executing;
/* /*
* The following points to the highest priority ready thread * The following points to the highest priority ready thread
@@ -236,14 +236,14 @@ EXTERN Thread_Control *_Thread_Executing;
* dispatch occurs. * dispatch occurs.
*/ */
EXTERN Thread_Control *_Thread_Heir; SCORE_EXTERN Thread_Control *_Thread_Heir;
/* /*
* The following points to the thread whose floating point * The following points to the thread whose floating point
* context is currently loaded. * context is currently loaded.
*/ */
EXTERN Thread_Control *_Thread_Allocated_fp; SCORE_EXTERN Thread_Control *_Thread_Allocated_fp;
/* /*
* _Thread_Handler_initialization * _Thread_Handler_initialization

View File

@@ -68,14 +68,14 @@ Thread_Control *_Thread_MP_Find_proxy (
* blocking the multiprocessing receive thread. * blocking the multiprocessing receive thread.
*/ */
EXTERN Thread_Control *_Thread_MP_Receive; SCORE_EXTERN Thread_Control *_Thread_MP_Receive;
/* /*
* The following chains are used to manage proxies. * The following chains are used to manage proxies.
*/ */
EXTERN Chain_Control _Thread_MP_Active_proxies; SCORE_EXTERN Chain_Control _Thread_MP_Active_proxies;
EXTERN Chain_Control _Thread_MP_Inactive_proxies; SCORE_EXTERN Chain_Control _Thread_MP_Inactive_proxies;
#ifndef __RTEMS_APPLICATION__ #ifndef __RTEMS_APPLICATION__
#include <rtems/score/threadmp.inl> #include <rtems/score/threadmp.inl>

View File

@@ -52,7 +52,7 @@ typedef void ( *Thread_queue_Extract_callout )(
Thread_Control * Thread_Control *
); );
EXTERN Thread_queue_Extract_callout SCORE_EXTERN Thread_queue_Extract_callout
_Thread_queue_Extract_table[ OBJECTS_CLASSES_LAST + 1 ]; _Thread_queue_Extract_table[ OBJECTS_CLASSES_LAST + 1 ];
/* /*

View File

@@ -69,27 +69,27 @@ typedef struct { /* RTEID style time/date */
* The following contains the current time of day. * The following contains the current time of day.
*/ */
EXTERN TOD_Control _TOD_Current; SCORE_EXTERN TOD_Control _TOD_Current;
/* /*
* The following contains the number of seconds from 00:00:00 * The following contains the number of seconds from 00:00:00
* January 1, TOD_BASE_YEAR until the current time of day. * January 1, TOD_BASE_YEAR until the current time of day.
*/ */
EXTERN Watchdog_Interval _TOD_Seconds_since_epoch; SCORE_EXTERN Watchdog_Interval _TOD_Seconds_since_epoch;
/* /*
* The following contains the number of ticks since the * The following contains the number of ticks since the
* system was booted. * system was booted.
*/ */
EXTERN Watchdog_Interval _TOD_Ticks_since_boot; SCORE_EXTERN Watchdog_Interval _TOD_Ticks_since_boot;
/* /*
* The following contains the number of microseconds per tick. * The following contains the number of microseconds per tick.
*/ */
EXTERN unsigned32 _TOD_Microseconds_per_tick; SCORE_EXTERN unsigned32 _TOD_Microseconds_per_tick;
/* /*
* The following contains the number of clock ticks per second. * The following contains the number of clock ticks per second.
@@ -102,16 +102,16 @@ EXTERN unsigned32 _TOD_Microseconds_per_tick;
* can be a source of error in the current time of day. * can be a source of error in the current time of day.
*/ */
EXTERN unsigned32 _TOD_Ticks_per_second; SCORE_EXTERN unsigned32 _TOD_Ticks_per_second;
/* /*
* This is the control structure for the watchdog timer which * This is the control structure for the watchdog timer which
* fires to service the seconds chain. * fires to service the seconds chain.
*/ */
EXTERN Watchdog_Control _TOD_Seconds_watchdog; SCORE_EXTERN Watchdog_Control _TOD_Seconds_watchdog;
#ifdef INIT #ifdef SCORE_INIT
/* /*
* The following array contains the number of days in all months. * The following array contains the number of days in all months.

View File

@@ -100,13 +100,13 @@ typedef struct {
* configured by the application. * configured by the application.
*/ */
EXTERN User_extensions_Control _User_extensions_Initial; SCORE_EXTERN User_extensions_Control _User_extensions_Initial;
/* /*
* The following is used to manage the list of active extensions. * The following is used to manage the list of active extensions.
*/ */
EXTERN Chain_Control _User_extensions_List; SCORE_EXTERN Chain_Control _User_extensions_List;
/* /*
* _User_extensions_Thread_create * _User_extensions_Thread_create

View File

@@ -92,16 +92,16 @@ typedef struct {
* during an insert on a watchdog delta chain. * during an insert on a watchdog delta chain.
*/ */
EXTERN volatile unsigned32 _Watchdog_Sync_level; SCORE_EXTERN volatile unsigned32 _Watchdog_Sync_level;
EXTERN volatile unsigned32 _Watchdog_Sync_count; SCORE_EXTERN volatile unsigned32 _Watchdog_Sync_count;
/* /*
* The following defines the watchdog chains which are managed * The following defines the watchdog chains which are managed
* on ticks and second boundaries. * on ticks and second boundaries.
*/ */
EXTERN Chain_Control _Watchdog_Ticks_chain; SCORE_EXTERN Chain_Control _Watchdog_Ticks_chain;
EXTERN Chain_Control _Watchdog_Seconds_chain; SCORE_EXTERN Chain_Control _Watchdog_Seconds_chain;
/* /*
* _Watchdog_Handler_initialization * _Watchdog_Handler_initialization

View File

@@ -30,7 +30,7 @@ extern "C" {
* *
*/ */
EXTERN Heap_Control _Workspace_Area; /* executive heap header */ SCORE_EXTERN Heap_Control _Workspace_Area; /* executive heap header */
/* /*
* _Workspace_Handler_initialization * _Workspace_Handler_initialization

View File

@@ -40,7 +40,7 @@ typedef unsigned32 rtems_debug_control;
* This variable contains the current debug level. * This variable contains the current debug level.
*/ */
EXTERN rtems_debug_control _Debug_Level; SCORE_EXTERN rtems_debug_control _Debug_Level;
/* /*
* _Debug_Manager_initialization * _Debug_Manager_initialization

View File

@@ -43,7 +43,7 @@ typedef struct {
* This is the list of API extensions to the system initialization. * This is the list of API extensions to the system initialization.
*/ */
EXTERN Chain_Control _API_extensions_List; SCORE_EXTERN Chain_Control _API_extensions_List;
/* /*
* _API_extensions_Initialization * _API_extensions_Initialization

View File

@@ -40,8 +40,8 @@ extern "C" {
#if ( CPU_USE_GENERIC_BITFIELD_DATA == TRUE ) #if ( CPU_USE_GENERIC_BITFIELD_DATA == TRUE )
#ifndef INIT #ifndef SCORE_INIT
extern const unsigned char __log2table[256]; extern const unsigned char __log2table[256];
#else #else
const unsigned char __log2table[256] = { const unsigned char __log2table[256] = {
7, 7, 6, 6, 5, 5, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 7, 7, 6, 6, 5, 5, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4,

View File

@@ -35,7 +35,7 @@ extern "C" {
* currently executing thread and given to the heir thread. * currently executing thread and given to the heir thread.
*/ */
EXTERN boolean _Context_Switch_necessary; SCORE_EXTERN boolean _Context_Switch_necessary;
/* /*
* _Context_Initialize * _Context_Initialize

View File

@@ -21,7 +21,7 @@
extern "C" { extern "C" {
#endif #endif
#ifdef INIT #ifdef SCORE_INIT
const char _Copyright_Notice[] = const char _Copyright_Notice[] =
"COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.\n\ "COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.\n\

View File

@@ -70,7 +70,7 @@ typedef struct {
* When a fatal error occurs, the error information is stored here. * When a fatal error occurs, the error information is stored here.
*/ */
EXTERN Internal_errors_Information Internal_errors_What_happened; SCORE_EXTERN Internal_errors_Information Internal_errors_What_happened;
/* /*
* _Internal_error_Occurred * _Internal_error_Occurred

View File

@@ -68,21 +68,21 @@ typedef ISR_Handler ( *ISR_Handler_entry )(
* executing thread by an ISR handler. * executing thread by an ISR handler.
*/ */
EXTERN boolean _ISR_Signals_to_thread_executing; SCORE_EXTERN boolean _ISR_Signals_to_thread_executing;
/* /*
* The following contains the interrupt service routine nest level. * The following contains the interrupt service routine nest level.
* When this variable is zero, a thread is executing. * When this variable is zero, a thread is executing.
*/ */
EXTERN unsigned32 _ISR_Nest_level; SCORE_EXTERN unsigned32 _ISR_Nest_level;
/* /*
* The following declares the Vector Table. Application * The following declares the Vector Table. Application
* interrupt service routines are vectored by the ISR Handler via this table. * interrupt service routines are vectored by the ISR Handler via this table.
*/ */
EXTERN ISR_Handler_entry _ISR_Vector_table[ ISR_NUMBER_OF_VECTORS ]; SCORE_EXTERN ISR_Handler_entry _ISR_Vector_table[ ISR_NUMBER_OF_VECTORS ];
/* /*
* _ISR_Handler_initialization * _ISR_Handler_initialization

View File

@@ -127,33 +127,34 @@ typedef struct {
* This is the core semaphore which the MPCI Receive Server blocks on. * This is the core semaphore which the MPCI Receive Server blocks on.
*/ */
EXTERN CORE_semaphore_Control _MPCI_Semaphore; SCORE_EXTERN CORE_semaphore_Control _MPCI_Semaphore;
/* /*
* The following thread queue is used to maintain a list of tasks * The following thread queue is used to maintain a list of tasks
* which currently have outstanding remote requests. * which currently have outstanding remote requests.
*/ */
EXTERN Thread_queue_Control _MPCI_Remote_blocked_threads; SCORE_EXTERN Thread_queue_Control _MPCI_Remote_blocked_threads;
/* /*
* The following define the internal pointers to the user's * The following define the internal pointers to the user's
* configuration information. * configuration information.
*/ */
EXTERN MPCI_Control *_MPCI_table; SCORE_EXTERN MPCI_Control *_MPCI_table;
/* /*
* The following points to the MPCI Receive Server. * The following points to the MPCI Receive Server.
*/ */
EXTERN Thread_Control *_MPCI_Receive_server_tcb; SCORE_EXTERN Thread_Control *_MPCI_Receive_server_tcb;
/* /*
* The following table contains the process packet routines provided * The following table contains the process packet routines provided
* by each object that supports MP operations. * by each object that supports MP operations.
*/ */
EXTERN MPCI_Packet_processor _MPCI_Packet_processors[MP_PACKET_CLASSES_LAST+1]; SCORE_EXTERN MPCI_Packet_processor
_MPCI_Packet_processors[MP_PACKET_CLASSES_LAST+1];
/* /*
* _MPCI_Handler_initialization * _MPCI_Handler_initialization

View File

@@ -151,8 +151,8 @@ typedef struct {
* node number of the local node. * node number of the local node.
*/ */
EXTERN unsigned32 _Objects_Local_node; SCORE_EXTERN unsigned32 _Objects_Local_node;
EXTERN unsigned32 _Objects_Maximum_nodes; SCORE_EXTERN unsigned32 _Objects_Maximum_nodes;
/* /*
* The following is the list of information blocks for each object * The following is the list of information blocks for each object
@@ -160,7 +160,7 @@ EXTERN unsigned32 _Objects_Maximum_nodes;
* and obtain a pointer to the appropriate object control block. * and obtain a pointer to the appropriate object control block.
*/ */
EXTERN Objects_Information SCORE_EXTERN Objects_Information
*_Objects_Information_table[OBJECTS_CLASSES_LAST + 1]; *_Objects_Information_table[OBJECTS_CLASSES_LAST + 1];
/* /*

View File

@@ -137,8 +137,8 @@ void _Objects_MP_Is_remote (
* inactive global object control blocks. * inactive global object control blocks.
*/ */
EXTERN unsigned32 _Objects_MP_Maximum_global_objects; SCORE_EXTERN unsigned32 _Objects_MP_Maximum_global_objects;
EXTERN Chain_Control _Objects_MP_Inactive_global_objects; SCORE_EXTERN Chain_Control _Objects_MP_Inactive_global_objects;
#ifndef __RTEMS_APPLICATION__ #ifndef __RTEMS_APPLICATION__
#include <rtems/score/objectmp.inl> #include <rtems/score/objectmp.inl>

View File

@@ -58,8 +58,9 @@ typedef struct {
* threads are ready at that priority. * threads are ready at that priority.
*/ */
EXTERN volatile Priority_Bit_map_control _Priority_Major_bit_map; SCORE_EXTERN volatile Priority_Bit_map_control _Priority_Major_bit_map;
EXTERN Priority_Bit_map_control _Priority_Bit_map[16] CPU_STRUCTURE_ALIGNMENT; SCORE_EXTERN Priority_Bit_map_control
_Priority_Bit_map[16] CPU_STRUCTURE_ALIGNMENT;
/* /*
* The definition of the Priority_Bit_map_control type is CPU dependent. * The definition of the Priority_Bit_map_control type is CPU dependent.

View File

@@ -44,13 +44,13 @@ typedef enum {
* an multiprocessing system. * an multiprocessing system.
*/ */
EXTERN boolean _System_state_Is_multiprocessing; SCORE_EXTERN boolean _System_state_Is_multiprocessing;
/* /*
* The following variable contains the current system state. * The following variable contains the current system state.
*/ */
EXTERN System_state_Codes _System_state_Current; SCORE_EXTERN System_state_Codes _System_state_Current;
/* /*
* Make it possible for the application to get the system state information. * Make it possible for the application to get the system state information.

View File

@@ -173,14 +173,14 @@ typedef struct {
* manage this class of objects. * manage this class of objects.
*/ */
EXTERN Objects_Information _Thread_Internal_information; SCORE_EXTERN Objects_Information _Thread_Internal_information;
/* /*
* The following define the thread control pointers used to access * The following define the thread control pointers used to access
* and manipulate the idle thread. * and manipulate the idle thread.
*/ */
EXTERN Thread_Control *_Thread_Idle; SCORE_EXTERN Thread_Control *_Thread_Idle;
/* /*
* The following context area contains the context of the "thread" * The following context area contains the context of the "thread"
@@ -190,7 +190,7 @@ EXTERN Thread_Control *_Thread_Idle;
* which initiated the system. * which initiated the system.
*/ */
EXTERN Context_Control _Thread_BSP_context; SCORE_EXTERN Context_Control _Thread_BSP_context;
/* /*
* The following declares the dispatch critical section nesting * The following declares the dispatch critical section nesting
@@ -198,7 +198,7 @@ EXTERN Context_Control _Thread_BSP_context;
* moments. * moments.
*/ */
EXTERN unsigned32 _Thread_Dispatch_disable_level; SCORE_EXTERN unsigned32 _Thread_Dispatch_disable_level;
/* /*
* The following holds how many user extensions are in the system. This * The following holds how many user extensions are in the system. This
@@ -206,28 +206,28 @@ EXTERN unsigned32 _Thread_Dispatch_disable_level;
* per thread. * per thread.
*/ */
EXTERN unsigned32 _Thread_Maximum_extensions; SCORE_EXTERN unsigned32 _Thread_Maximum_extensions;
/* /*
* The following data items are used to manage timeslicing. * The following data items are used to manage timeslicing.
*/ */
EXTERN unsigned32 _Thread_Ticks_remaining_in_timeslice; SCORE_EXTERN unsigned32 _Thread_Ticks_remaining_in_timeslice;
EXTERN unsigned32 _Thread_Ticks_per_timeslice; SCORE_EXTERN unsigned32 _Thread_Ticks_per_timeslice;
/* /*
* The following points to the array of FIFOs used to manage the * The following points to the array of FIFOs used to manage the
* set of ready threads. * set of ready threads.
*/ */
EXTERN Chain_Control *_Thread_Ready_chain; SCORE_EXTERN Chain_Control *_Thread_Ready_chain;
/* /*
* The following points to the thread which is currently executing. * The following points to the thread which is currently executing.
* This thread is implicitly manipulated by numerous directives. * This thread is implicitly manipulated by numerous directives.
*/ */
EXTERN Thread_Control *_Thread_Executing; SCORE_EXTERN Thread_Control *_Thread_Executing;
/* /*
* The following points to the highest priority ready thread * The following points to the highest priority ready thread
@@ -236,14 +236,14 @@ EXTERN Thread_Control *_Thread_Executing;
* dispatch occurs. * dispatch occurs.
*/ */
EXTERN Thread_Control *_Thread_Heir; SCORE_EXTERN Thread_Control *_Thread_Heir;
/* /*
* The following points to the thread whose floating point * The following points to the thread whose floating point
* context is currently loaded. * context is currently loaded.
*/ */
EXTERN Thread_Control *_Thread_Allocated_fp; SCORE_EXTERN Thread_Control *_Thread_Allocated_fp;
/* /*
* _Thread_Handler_initialization * _Thread_Handler_initialization

View File

@@ -68,14 +68,14 @@ Thread_Control *_Thread_MP_Find_proxy (
* blocking the multiprocessing receive thread. * blocking the multiprocessing receive thread.
*/ */
EXTERN Thread_Control *_Thread_MP_Receive; SCORE_EXTERN Thread_Control *_Thread_MP_Receive;
/* /*
* The following chains are used to manage proxies. * The following chains are used to manage proxies.
*/ */
EXTERN Chain_Control _Thread_MP_Active_proxies; SCORE_EXTERN Chain_Control _Thread_MP_Active_proxies;
EXTERN Chain_Control _Thread_MP_Inactive_proxies; SCORE_EXTERN Chain_Control _Thread_MP_Inactive_proxies;
#ifndef __RTEMS_APPLICATION__ #ifndef __RTEMS_APPLICATION__
#include <rtems/score/threadmp.inl> #include <rtems/score/threadmp.inl>

View File

@@ -52,7 +52,7 @@ typedef void ( *Thread_queue_Extract_callout )(
Thread_Control * Thread_Control *
); );
EXTERN Thread_queue_Extract_callout SCORE_EXTERN Thread_queue_Extract_callout
_Thread_queue_Extract_table[ OBJECTS_CLASSES_LAST + 1 ]; _Thread_queue_Extract_table[ OBJECTS_CLASSES_LAST + 1 ];
/* /*

View File

@@ -69,27 +69,27 @@ typedef struct { /* RTEID style time/date */
* The following contains the current time of day. * The following contains the current time of day.
*/ */
EXTERN TOD_Control _TOD_Current; SCORE_EXTERN TOD_Control _TOD_Current;
/* /*
* The following contains the number of seconds from 00:00:00 * The following contains the number of seconds from 00:00:00
* January 1, TOD_BASE_YEAR until the current time of day. * January 1, TOD_BASE_YEAR until the current time of day.
*/ */
EXTERN Watchdog_Interval _TOD_Seconds_since_epoch; SCORE_EXTERN Watchdog_Interval _TOD_Seconds_since_epoch;
/* /*
* The following contains the number of ticks since the * The following contains the number of ticks since the
* system was booted. * system was booted.
*/ */
EXTERN Watchdog_Interval _TOD_Ticks_since_boot; SCORE_EXTERN Watchdog_Interval _TOD_Ticks_since_boot;
/* /*
* The following contains the number of microseconds per tick. * The following contains the number of microseconds per tick.
*/ */
EXTERN unsigned32 _TOD_Microseconds_per_tick; SCORE_EXTERN unsigned32 _TOD_Microseconds_per_tick;
/* /*
* The following contains the number of clock ticks per second. * The following contains the number of clock ticks per second.
@@ -102,16 +102,16 @@ EXTERN unsigned32 _TOD_Microseconds_per_tick;
* can be a source of error in the current time of day. * can be a source of error in the current time of day.
*/ */
EXTERN unsigned32 _TOD_Ticks_per_second; SCORE_EXTERN unsigned32 _TOD_Ticks_per_second;
/* /*
* This is the control structure for the watchdog timer which * This is the control structure for the watchdog timer which
* fires to service the seconds chain. * fires to service the seconds chain.
*/ */
EXTERN Watchdog_Control _TOD_Seconds_watchdog; SCORE_EXTERN Watchdog_Control _TOD_Seconds_watchdog;
#ifdef INIT #ifdef SCORE_INIT
/* /*
* The following array contains the number of days in all months. * The following array contains the number of days in all months.

View File

@@ -100,13 +100,13 @@ typedef struct {
* configured by the application. * configured by the application.
*/ */
EXTERN User_extensions_Control _User_extensions_Initial; SCORE_EXTERN User_extensions_Control _User_extensions_Initial;
/* /*
* The following is used to manage the list of active extensions. * The following is used to manage the list of active extensions.
*/ */
EXTERN Chain_Control _User_extensions_List; SCORE_EXTERN Chain_Control _User_extensions_List;
/* /*
* _User_extensions_Thread_create * _User_extensions_Thread_create

View File

@@ -92,16 +92,16 @@ typedef struct {
* during an insert on a watchdog delta chain. * during an insert on a watchdog delta chain.
*/ */
EXTERN volatile unsigned32 _Watchdog_Sync_level; SCORE_EXTERN volatile unsigned32 _Watchdog_Sync_level;
EXTERN volatile unsigned32 _Watchdog_Sync_count; SCORE_EXTERN volatile unsigned32 _Watchdog_Sync_count;
/* /*
* The following defines the watchdog chains which are managed * The following defines the watchdog chains which are managed
* on ticks and second boundaries. * on ticks and second boundaries.
*/ */
EXTERN Chain_Control _Watchdog_Ticks_chain; SCORE_EXTERN Chain_Control _Watchdog_Ticks_chain;
EXTERN Chain_Control _Watchdog_Seconds_chain; SCORE_EXTERN Chain_Control _Watchdog_Seconds_chain;
/* /*
* _Watchdog_Handler_initialization * _Watchdog_Handler_initialization

View File

@@ -30,7 +30,7 @@ extern "C" {
* *
*/ */
EXTERN Heap_Control _Workspace_Area; /* executive heap header */ SCORE_EXTERN Heap_Control _Workspace_Area; /* executive heap header */
/* /*
* _Workspace_Handler_initialization * _Workspace_Handler_initialization

View File

@@ -36,16 +36,41 @@ extern "C" {
/* /*
* The following insures that all data is declared in the space * The following insures that all data is declared in the space
* of the Initialization Manager. It is referenced as "external" * of the initialization routine for either the Initialization Manager
* in every other file. * or the initialization file for the appropriate API. It is
* referenced as "external" in every other file.
*/ */
#ifdef INIT #ifdef SCORE_INIT
#undef EXTERN #undef SCORE_EXTERN
#define EXTERN #define SCORE_EXTERN
#else #else
#undef EXTERN #undef SCORE_EXTERN
#define EXTERN extern #define SCORE_EXTERN extern
#endif
#ifdef SAPI_INIT
#undef SAPI_EXTERN
#define SAPI_EXTERN
#else
#undef SAPI_EXTERN
#define SAPI_EXTERN extern
#endif
#ifdef RTEMS_API_INIT
#undef RTEMS_EXTERN
#define RTEMS_EXTERN
#else
#undef RTEMS_EXTERN
#define RTEMS_EXTERN extern
#endif
#ifdef POSIX_API_INIT
#undef POSIX_EXTERN
#define POSIX_EXTERN
#else
#undef POSIX_EXTERN
#define POSIX_EXTERN extern
#endif #endif
/* /*
@@ -118,7 +143,7 @@ extern const char _Copyright_Notice[]; /* RTEMS copyright string */
* The following defines the CPU dependent information table. * The following defines the CPU dependent information table.
*/ */
EXTERN rtems_cpu_table _CPU_Table; /* CPU dependent info */ SCORE_EXTERN rtems_cpu_table _CPU_Table; /* CPU dependent info */
/* /*
* XXX weird RTEMS stuff * XXX weird RTEMS stuff

View File

@@ -40,7 +40,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Condition_variables_Information; POSIX_EXTERN Objects_Information _POSIX_Condition_variables_Information;
/* /*
* _POSIX_Condition_variables_Manager_initialization * _POSIX_Condition_variables_Manager_initialization

View File

@@ -53,14 +53,15 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Interrupt_Handlers_Information; POSIX_EXTERN Objects_Information _POSIX_Interrupt_Handlers_Information;
/* /*
* The following is an array which is used to manage the set of * The following is an array which is used to manage the set of
* interrupt handlers installed on each vector. * interrupt handlers installed on each vector.
*/ */
EXTERN POSIX_Interrupt_Control _POSIX_Interrupt_Information[ ISR_NUMBER_OF_VECTORS ]; POSIX_EXTERN POSIX_Interrupt_Control
_POSIX_Interrupt_Information[ ISR_NUMBER_OF_VECTORS ];
/* /*
* _POSIX_Interrupt_Manager_initialization * _POSIX_Interrupt_Manager_initialization

View File

@@ -40,7 +40,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Keys_Information; POSIX_EXTERN Objects_Information _POSIX_Keys_Information;
/* /*
* _POSIX_Keys_Manager_initialization * _POSIX_Keys_Manager_initialization

View File

@@ -45,7 +45,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Message_queue_Information; POSIX_EXTERN Objects_Information _POSIX_Message_queue_Information;
/* /*
* _POSIX_Message_queue_Manager_initialization * _POSIX_Message_queue_Manager_initialization

View File

@@ -21,6 +21,9 @@
extern "C" { extern "C" {
#endif #endif
#include <rtems/score/coremutex.h>
#include <pthread.h>
/* /*
* Data Structure used to manage a POSIX mutex * Data Structure used to manage a POSIX mutex
*/ */
@@ -36,7 +39,7 @@ typedef struct {
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Mutex_Information; POSIX_EXTERN Objects_Information _POSIX_Mutex_Information;
/* /*
* _POSIX_Mutex_Manager_initialization * _POSIX_Mutex_Manager_initialization

View File

@@ -0,0 +1,34 @@
/*
* POSIX API Support
*
* NOTE:
*
* COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
* On-Line Applications Research Corporation (OAR).
* All rights assigned to U.S. Government, 1994.
*
* This material may be reproduced by or for the U.S. Government pursuant
* to the copyright license under the clause at DFARS 252.227-7013. This
* notice must appear in all copies of this file and its derivatives.
*
* $Id$
*/
#ifndef __POSIX_API_h
#define __POSIX_API_h
#include <rtems/config.h>
/*PAGE
*
* _POSIX_API_Initialize
*
* XXX
*/
void _POSIX_API_Initialize(
rtems_configuration_table *configuration_table
);
#endif
/* end of include file */

View File

@@ -35,15 +35,15 @@ typedef Thread_Control POSIX_Threads_Control;
* this class of objects. * this class of objects.
*/ */
EXTERN Objects_Information _POSIX_Threads_Information; POSIX_EXTERN Objects_Information _POSIX_Threads_Information;
/* /*
* These are used to manage the user initialization tasks. * These are used to manage the user initialization tasks.
*/ */
EXTERN posix_initialization_tasks_table POSIX_EXTERN posix_initialization_tasks_table
*_POSIX_Threads_User_initialization_tasks; *_POSIX_Threads_User_initialization_tasks;
EXTERN unsigned32 _POSIX_Threads_Number_of_initialization_tasks; POSIX_EXTERN unsigned32 _POSIX_Threads_Number_of_initialization_tasks;
/* /*

Some files were not shown because too many files have changed in this diff Show More