📄 usrextra.c
字号:
/* usrExtra.c - optionally included modules *//* Copyright 1992-1998 Wind River Systems, Inc. *//*modification history--------------------01y,10mar99,drm changed WINDMP to VXFUSION to reflect new product name01x,11feb99,sn corrected logic that defines INCLUDE_CPLUS_STRING01w,26jan99,jco merged from graphics2_0 branch01v,29may98,bjl added INCLUDE_CODETEST.02g,01sep98,drm adding conditional include of usrWindMP.c02f,08jul98,cym removed undef of ANSI_MATH for SIMNT.02e,03jun98,sn cleanup up mod history. added new C++ configuration options splitting between basic, Standard Template Library, string class, complex class and iostreams. distinguished INCLUDE_CPLUS_IOSTREAMS (everything needed by iostream.o) from INCLUDE_CPLUS_IOSTREAMS_FULL. removed INCLUDE_CPLUS_HEAP and INCLUDE_CPLUS_BOOCH since they are no-ops.02d,13may98,dbt removed optional modules included by WDB since the scalable agent has be redesigned.02c,13jan98,dbt adding conditional include of usrBreakpoint.c02b,18dec97,cth added conditional include of usrWindview.c02a,19nov97,hdn added support for TFFS.01u,03dec96,tpr removed the reference to __cmpsf2 for the I960 familly.01t,01nov96,hdn added support for PCMCIA.01s,23jul96,hdn added support for ATA driver.01r,23jun95,tpr added #ifdef INCLUDE_WDB01q,20jun95,srh make iostreams separately configurable.01p,14jun95,srh normalized names of C++ init files.01o,13jun95,srh added triggers for optional C++ products.01n,20may95,jcf added WDB.01m,29mar95,kdl added INCLUDE_GCC_FP; added reference to __fixunssfsi(); made MC68060 use same gcc support as MC68040.01l,22aug94,dzb added INCLUDE_NETWORK conditional (SPR #1147).01k,06nov94,tmk added MC68LC040 support01j,16jun94,tpr Added MC68060 cpu support.01i,25oct93,hdn added support for floppy and IDE device.01h,25mar94,jmm changed C++ to check for either full or min, not both01g,08apr94,kdl changed aio_show() reference to aioShow().01f,28jan94,dvs changed INCLUDE_POSIX_MEM_MAN to INCLUDE_POSIX_MEM01e,02dec93,dvs added POSIX A-I/O show configuration01d,22nov93,dvs added INCLUDE_POSIX_SCHED, INCLUDE_POSIX_MMAN, and INCLUDE_POSIX_FTRUNCATE01c,23aug93,srh Added INCLUDE_CPLUS_MIN to the conditions for making sysCplusEnable TRUE.01b,30oct92,smb forced include of libfpg.a for 96001a,18sep92,jcf written.*//*DESCRIPTIONThis file is used to include extra modules necessary to satisfy the desiredconfiguration specified by configAll.h and config.h. This file is includedby usrConfig.c.SEE ALSO: usrDepend.cNOMANUAL*/#ifndef __INCusrExtrac#define __INCusrExtrac /* * Extra modules to be included in VxWorks. These modules are * not referred in the VxWorks code, so they will not be * automatically linked in unless they are defined here explicitly. * */extern VOIDFUNCPTR __cmpsf2();VOIDFUNCPTR usrExtraModules [] = { usrInit, /* provided in case of null array */#if CPU_FAMILY==MIPS#ifdef INCLUDE_RPC (VOIDFUNCPTR) xdr_float,#endif#endif /* CPU_FAMILY==MIPS */#if CPU_FAMILY==MC680X0 && !(CPU==MC68040) && !(CPU==MC68060)#ifdef INCLUDE_GCC_FP (VOIDFUNCPTR) gccMathInit, (VOIDFUNCPTR) gccUssInit, (VOIDFUNCPTR) __fixunssfsi,#endif#endif /* CPU_FAMILY==MC680X0 && !(CPU==MC68040) && !(CPU==MC68060 */#if (CPU==MC68040) || (CPU==MC68060)#ifdef INCLUDE_GCC_FP (VOIDFUNCPTR) gccUss040Init, (VOIDFUNCPTR) __fixunssfsi,#endif#endif /* (CPU==MC68040) || (CPU==MC68060) */#ifdef INCLUDE_NETWORK#ifdef INCLUDE_NET_SHOW netShowInit,#endif#endif /* INCLUDE_NETWORK */#ifdef INCLUDE_TASK_VARS (VOIDFUNCPTR) taskVarInit,#endif#ifdef INCLUDE_LOADER (VOIDFUNCPTR) loadModule,#endif#ifdef INCLUDE_UNLOADER (VOIDFUNCPTR) unld,#endif#ifdef INCLUDE_POSIX_TIMERS (VOIDFUNCPTR) nanosleep, (VOIDFUNCPTR) clock_gettime,#endif#ifdef INCLUDE_POSIX_SCHED (VOIDFUNCPTR) sched_setparam,#endif#ifdef INCLUDE_POSIX_MEM (VOIDFUNCPTR) mlockall,#endif#ifdef INCLUDE_POSIX_FTRUNC (VOIDFUNCPTR) ftruncate,#endif#if defined(INCLUDE_POSIX_AIO) && defined(INCLUDE_SHOW_ROUTINES) (VOIDFUNCPTR) aioShow,#endif /* defined(INCLUDE_POSIX_AIO) && defined(INCLUDE_SHOW_ROUTINES */#ifdef INCLUDE_NETWORK#ifdef INCLUDE_TFTP_CLIENT (VOIDFUNCPTR) tftpCopy,#endif#endif /* INCLUDE_NETWORK */ };#ifdef INCLUDE_ANSI_ASSERT#include "../../src/config/assertInit.c"#endif#ifdef INCLUDE_ANSI_CTYPE#include "../../src/config/ctypeInit.c"#endif#ifdef INCLUDE_ANSI_LOCALE#include "../../src/config/localeInit.c"#endif#ifdef INCLUDE_ANSI_MATH#include "../../src/config/mathInit.c"#endif#ifdef INCLUDE_ANSI_STDIO#include "../../src/config/stdioInit.c"#endif#ifdef INCLUDE_ANSI_STDLIB#include "../../src/config/stdlibInit.c"#endif#ifdef INCLUDE_ANSI_STRING#include "../../src/config/stringInit.c"#endif#ifdef INCLUDE_ANSI_TIME#include "../../src/config/timeInit.c"#endif#ifdef INCLUDE_ANSI_5_0#include "../../src/config/ansi_5_0.c"#endif#ifdef INCLUDE_FD#include "../../src/config/usrFd.c"#endif#ifdef INCLUDE_IDE#include "../../src/config/usrIde.c"#endif#ifdef INCLUDE_ATA#include "../../src/config/usrAta.c"#endif#ifdef INCLUDE_PCMCIA#include "../../src/config/usrPcmcia.c"#endif#ifdef INCLUDE_TFFS#include "../../src/config/usrTffs.c"#endif#ifdef INCLUDE_NET_SYM_TBL#include "../../src/config/usrLoadSym.c"#endif /* INCLUDE_NET_SYM_TBL */#if defined(INCLUDE_MMU_BASIC) || defined(INCLUDE_MMU_FULL)#include "../../src/config/usrMmuInit.c"#endif /* defined(INCLUDE_MMU_BASIC) || defined(INCLUDE_MMU_FULL) */#ifdef INCLUDE_NETWORK#include "../../src/config/usrNetwork.c"#endif#ifdef INCLUDE_STARTUP_SCRIPT#include "../../src/config/usrScript.c"#endif /* INCLUDE_STARTUP_SCRIPT */#ifdef INCLUDE_SCSI#include "../../src/config/usrScsi.c"#endif#ifdef INCLUDE_SM_OBJ#include "../../src/config/usrSmObj.c"#endif#ifdef INCLUDE_VXFUSION#include "../../src/config/usrVxFusion.c"#endif#ifdef INCLUDE_WDB#include "../../src/config/usrWdb.c"#endif#ifdef INCLUDE_UGL#include "../../src/config/usrUgl.c"#endif#ifdef INCLUDE_JAVA#include "../../src/config/usrJava.c"#endif#ifdef INCLUDE_HTML#include "../../src/config/usrHtml.c"#endif#ifdef INCLUDE_ADABOOL sysAdaEnable = TRUE; /* TRUE = enable Ada support options */#elseBOOL sysAdaEnable = FALSE;#endif#ifdef INCLUDE_CODETEST#include "../../src/config/CodeTEST.c"#endif/* C++ configuration */#if defined (INCLUDE_CPLUS_STL)#ifndef INCLUDE_CPLUS#define INCLUDE_CPLUS#endif /* INCLUDE_CPLUS */#include "../../src/config/cplusStl.c"#endif#if defined (INCLUDE_CPLUS_COMPLEX_IO)#ifndef INCLUDE_CPLUS#define INCLUDE_CPLUS#endif /* INCLUDE_CPLUS */#ifndef INCLUDE_CPLUS_COMPLEX#define INCLUDE_CPLUS_COMPLEX#endif /* INCLUDE_CPLUS_COMPLEX */#include "../../src/config/cplusComplexIo.c"#endif#if defined (INCLUDE_CPLUS_COMPLEX)#ifndef INCLUDE_CPLUS#define INCLUDE_CPLUS#endif /* INCLUDE_CPLUS */#include "../../src/config/cplusComplex.c"#endif#if defined (INCLUDE_CPLUS_STRING_IO)#ifndef INCLUDE_CPLUS#define INCLUDE_CPLUS#endif /* INCLUDE_CPLUS */#ifndef INCLUDE_CPLUS_STRING#define INCLUDE_CPLUS_STRING#endif /* INCLUDE_CPLUS_STRING */#include "../../src/config/cplusStringIo.c"#endif#if defined (INCLUDE_CPLUS_STRING)#ifndef INCLUDE_CPLUS#define INCLUDE_CPLUS#endif /* INCLUDE_CPLUS */#include "../../src/config/cplusString.c"#endif#if defined (INCLUDE_CPLUS_IOSTREAMS_TEST)#ifndef INCLUDE_CPLUS#define INCLUDE_CPLUS#endif /* INCLUDE_CPLUS */#include "../../src/config/cplusIosTest.c"#endif#if defined (INCLUDE_CPLUS_IOSTREAMS)||defined(INCLUDE_CPLUS_IOSTREAMS_FULL)#ifndef INCLUDE_CPLUS#define INCLUDE_CPLUS#endif /* INCLUDE_CPLUS */#include "../../src/config/cplusIos.c"#endif/* WFC configuration */#if defined (INCLUDE_CPLUS_VXW)#ifndef INCLUDE_CPLUS#define INCLUDE_CPLUS#endif /* INCLUDE_CPLUS */#include "../../src/config/cplusVxw.c"#endif#if defined (INCLUDE_CPLUS_TOOLS)#ifndef INCLUDE_CPLUS#define INCLUDE_CPLUS#endif /* INCLUDE_CPLUS */#include "../../src/config/cplusTools.c"#endif/* END WFC configuration */#if defined (INCLUDE_CPLUS) || defined (INCLUDE_CPLUS_MIN)BOOL sysCplusEnable = TRUE; /* TRUE = enable C++ support */#elseBOOL sysCplusEnable = FALSE;#endif/* END C++ configuration */#if (defined(INCLUDE_WDB_BP) && defined (INCLUDE_WDB)) || \ defined (INCLUDE_DEBUG) || defined(INCLUDE_SHELL)#include "../../src/config/usrBreakpoint.c"#endif#if defined (INCLUDE_WINDVIEW)#include "../../src/config/usrWindview.c"#endif#ifdef INCLUDE_DELETE_5_0/********************************************************************************* delete - delete a file (obsolete routine)** This routine is provided for binary compatibility with VxWorks 5.0* and earlier versions which define this function. This interface* has been removed from VxWorks because "delete" is a reserved word* in C++.** Source code which uses delete() may be recompiled using a special* macro in ioLib.h which will translate delete() calls into remove()* calls. To enable the macro, define __DELETE_FUNC as TRUE in ioLib.h.** If code is recompiled in this way, it is not necessary to include* the delete() routine defined here.** RETURNS: OK, or ERROR.** SEE ALSO: remove(), unlink(), ioLib.h** NOMANUAL*/STATUS delete ( const char *filename /* filename to delete */ ) { return (remove (filename)); }#endif /* INCLUDE_DELETE_5_0 */#if (defined(INCLUDE_FD) || defined(INCLUDE_IDE) || \ defined(INCLUDE_ATA) || defined(INCLUDE_PCMCIA) || \ defined(INCLUDE_TFFS))/******************************************************************************** devSplit - split the device name from a full path name** This routine returns the device name from a valid UNIX-style path name* by copying until two slashes ("/") are detected. The device name is* copied into <devName>.** RETURNS: N/A** NOMANUAL*/void devSplit ( FAST char *fullFileName, /* full file name being parsed */ FAST char *devName /* result device name */ ) { FAST int nChars = 0; if (fullFileName != NULL) { char *p0 = fullFileName; char *p1 = devName; while ((nChars < 2) && (*p0 != EOS)) { if (*p0 == '/') nChars++; *p1++ = *p0++; } *p1 = EOS; } else { (void) strcpy (devName, ""); } }#endif /* (defined (INCLUDE_FD) || (IDE) || (ATA) || (PCMCIA) || (TFFS)) */#endif /* __INCusrExtrac */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -