cmdtable.c

来自「开放源码的编译器open watcom 1.6.0版的源代码」· C语言 代码 · 共 539 行 · 第 1/2 页

C
539
字号
#ifdef _PHARLAP
    "PHARlap",      &ProcPharLap,       MK_PHAR_LAP, 0,
#endif
#ifdef _NOVELL
    "NOVell",       &ProcNovell,        MK_NOVELL, 0,
#endif
#ifdef _QNXLOAD
    "QNX",          &ProcQNX,           MK_QNX, 0,
#endif
#ifdef _ELF
    "ELF",          &ProcELF,           MK_ELF, 0,
#endif
    NULL
};

extern  parse_entry    Languages[] = {
    "JApanese",     &ProcJapanese,      MK_ALL, 0,
    "CHinese",      &ProcChinese,       MK_ALL, 0,
    "KOrean",       &ProcKorean,        MK_ALL, 0,
    NULL
};

extern parse_entry      EndLinkOpt[] = {
    "ENDLink",      &ProcEndLink,       MK_ALL, 0,
};

extern parse_entry  RunOptions[] = {
#ifdef _PHARLAP
        "MINReal",      &ProcMinReal,   MK_PHAR_FLAT, 0,
        "MAXReal",      &ProcMaxReal,   MK_PHAR_FLAT, 0,
        "REALBreak",    &ProcRealBreak, MK_PHAR_FLAT, CF_HAVE_REALBREAK,
        "CALLBufs",     &ProcCallBufs,  MK_PHAR_FLAT, 0,
        "MINIBuf",      &ProcMiniBuf,   MK_PHAR_FLAT, 0,
        "MAXIBuf",      &ProcMaxiBuf,   MK_PHAR_FLAT, 0,
        "NISTack",      &ProcNIStack,   MK_PHAR_FLAT, 0,
        "ISTKsize",     &ProcIStkSize,  MK_PHAR_FLAT, 0,
        "UNPRIVileged", &ProcUnpriv,    MK_PHAR_FLAT, 0,
        "PRIVileged",   &ProcPriv,      MK_PHAR_FLAT, 0,
/* WARNING: do not document the following directive -- for internal use only */
        "FLAGs",        &ProcFlags,     MK_PHAR_FLAT, 0,
#endif
#ifdef _OS2
        "NATive",       &ProcRunNative, MK_PE, 0,
        "WINdows",      &ProcRunWindows,MK_PE, 0,
        "CONsole",      &ProcRunConsole,MK_PE, 0,
        "POSix",        &ProcRunPosix,  MK_PE, 0,
        "OS2",          &ProcRunOS2,    MK_PE, 0,
        "DOSstyle",     &ProcRunDosstyle,MK_PE, 0,
#endif
#ifdef _ELF
        "ABIver",       &ProcELFRNumber,MK_ELF, 0,
        "SVR4",         &ProcELFRSVR4,  MK_ELF, 0,
        "NETbsd",       &ProcELFRNetBSD,MK_ELF, 0,
        "LINux",        &ProcELFRLinux, MK_ELF, 0,
        "FREebsd",      &ProcELFRFBSD,  MK_ELF, 0,
        "SOLaris",      &ProcELFRSolrs, MK_ELF, 0,
#endif
        NULL };

#ifdef _QNXLOAD
/* parse tables used in CMDQNX.C */

extern parse_entry QNXSegModel[] = {
        "EXECUTEOnly",  &ProcQNXExecuteonly,    MK_QNX, 0,
        "EXECUTERead",  &ProcQNXExecuteread,    MK_QNX, 0,
        "READOnly",     &ProcQNXReadOnly,       MK_QNX, 0,
        "READWrite",    &ProcQNXReadWrite,      MK_QNX, 0,
        NULL };

extern parse_entry QNXSegDesc[] = {
        "Class",        &ProcQNXClass,          MK_QNX, 0,
        NULL };

extern parse_entry QNXFormats[] = {
        "FLat",         &ProcQNXFlat,           MK_QNX_FLAT, 0,
        NULL };
#endif

#ifdef _PHARLAP
/* parse tables used in CMDPHAR.C */

extern parse_entry  PharModels[] = {
        "EXTended",     &ProcPharFlat,      MK_PHAR_FLAT, 0,
        "REX",          &ProcRex,           MK_PHAR_REX, 0,
        "SEGmented",    &ProcPharSegmented, MK_PHAR_MULTISEG, 0,
        NULL };
#endif

#ifdef _NOVELL
/* parse tables used in CMDNOV.C */

extern  parse_entry     NovModels[] = {
    "NLM",      &ProcNLM,                    MK_NOVELL, 0,    /* 0 */
    "LAN",      &ProcLAN,                    MK_NOVELL, 0,    /* 1 */
    "DSK",      &ProcDSK,                    MK_NOVELL, 0,    /* 2 */
    "NAM",      &ProcNAM,                    MK_NOVELL, 0,    /* 3 */
    "0",        &ProcNLM,                    MK_NOVELL, 0,    /* 0 again */
    "1",        &ProcLAN,                    MK_NOVELL, 0,    /* etc */
    "2",        &ProcDSK,                    MK_NOVELL, 0,
    "3",        &ProcNAM,                    MK_NOVELL, 0,
    "4",        &ProcModuleType4,            MK_NOVELL, 0,
    "5",        &ProcModuleType5,            MK_NOVELL, 0,
    "6",        &ProcModuleType6,            MK_NOVELL, 0,
    "7",        &ProcModuleType7,            MK_NOVELL, 0,
    "8",        &ProcModuleType8,            MK_NOVELL, 0,
    "9",        &ProcModuleType9,            MK_NOVELL, 0,
#if 0
    /* NLM types 10 through 12 are currently reserved */
    "10",        &ProcModuleType10,            MK_NOVELL, 0,
    "11",        &ProcModuleType11,            MK_NOVELL, 0,
    "12",        &ProcModuleType12,            MK_NOVELL, 0,
#endif
    NULL
};

extern parse_entry      NovDBIOptions[] = {
    "ONLyexports",   &ProcNovDBIExports,        MK_NOVELL, 0,
    "REFerenced",    &ProcNovDBIReferenced,     MK_NOVELL, 0,
    NULL
};
#endif

/* parse tables used in CMDDOS.C */

extern  parse_entry     Sections[] = {
    "Section",      &ProcSection,       MK_OVERLAYS, 0,
    "AUTOSection",  &ProcAutoSection,   MK_OVERLAYS, 0,
    "End",          &ProcEnd,           MK_OVERLAYS, 0,
    NULL
};

extern  parse_entry     SectOptions[] = {
    "INto",     &ProcInto,          MK_OVERLAYS, 0,
    NULL
};

extern  parse_entry     DosOptions[] = {
    "COM",      &ProcCom,           MK_COM, 0,
    NULL
};

#ifdef _OS2
/* parse tables used in CMDOS2.C */

extern parse_entry  SubFormats[] = {
        "DLl",          &ProcOS2DLL,        MK_OS2 | MK_PE, 0,
        "FLat",         &ProcLX,            MK_OS2_LX, 0,
        "LE",           &ProcLE,            MK_OS2_LE, 0,
        "LX",           &ProcLX,            MK_OS2_LX, 0,
        "NT",           &ProcPE,            MK_PE, 0,
        "PE",           &ProcPE,            MK_PE, 0,
        "VXD",          &ProcVXD,           MK_WIN_VXD, 0,
        NULL };

extern parse_entry OS2FormatKeywords[] = {
        "PM",           &ProcPM,                MK_ONLY_OS2, 0,
        "PMCompatible", &ProcPMCompatible,      MK_ONLY_OS2, 0,
        "FULLscreen",   &ProcPMFullscreen,      MK_ONLY_OS2, 0,
        "PHYSdevice",   &ProcPhysDevice,        MK_OS2_LE | MK_OS2_LX, 0,
        "VIRTdevice",   &ProcVirtDevice,        MK_OS2_LE | MK_OS2_LX, 0,
        NULL };

extern parse_entry WindowsFormatKeywords[] = {
        "MEMory",       &ProcMemory,            MK_WINDOWS, 0,
        "FOnt",         &ProcFont,              MK_WINDOWS, 0,
        NULL };

extern parse_entry NTFormatKeywords[] = {
        "TNT",          &ProcTNT,               MK_PE, 0,
        NULL };

extern parse_entry VXDFormatKeywords[] = {
        "DYNamic",      &ProcDynamicDriver,     MK_WIN_VXD, 0,
        "STATic",       &ProcStaticDriver,      MK_WIN_VXD, 0,
        NULL };

extern parse_entry Init_Keywords[] = {
        "INITGlobal",   &ProcInitGlobal,        MK_OS2|MK_PE, 0,
        "INITInstance", &ProcInitInstance,      MK_OS2|MK_PE, 0,
        "INITThread",   &ProcInitThread,        MK_PE, 0,
        NULL};

extern parse_entry Term_Keywords[] = {
        "TERMGlobal",   &ProcTermGlobal,        MK_OS2_LE | MK_OS2_LX | MK_PE, 0,
        "TERMInstance", &ProcTermInstance,      MK_OS2_LE | MK_OS2_LX | MK_PE, 0,
        "TERMThread",   &ProcTermThread,        MK_PE, 0,
        NULL};

extern parse_entry Exp_Keywords[] = {
        "RESident",     &ProcExpResident,       MK_OS2, 0,
        "PRIVATE",      &ProcPrivate,           MK_OS2|MK_PE, 0,
        NULL };

extern parse_entry SegDesc[] = {
        "Class",        &ProcOS2Class,          MK_OS2|MK_PE|MK_WIN_VXD, 0,
        "TYpe",         &ProcSegType,           MK_OS2|MK_PE|MK_WIN_VXD, 0,
        NULL };

extern parse_entry SegTypeDesc[] = {
        "CODE",         &ProcSegCode,           MK_OS2|MK_PE|MK_WIN_VXD, 0,
        "DATA",         &ProcSegData,           MK_OS2|MK_PE|MK_WIN_VXD, 0,
        NULL };

extern parse_entry SegModel[] = {
        "PReload",      &ProcPreload,           MK_OS2|MK_WIN_VXD, 0,
        "LOadoncall",   &ProcLoadoncall,        MK_OS2|MK_WIN_VXD, 0,
        "Iopl",         &ProcIopl,              MK_ONLY_OS2|MK_WIN_VXD, 0,
        "NOIopl",       &ProcNoIopl,            MK_ONLY_OS2|MK_WIN_VXD, 0,
        "EXECUTEOnly",  &ProcExecuteonly,       MK_OS2, 0,
        "EXECUTERead",  &ProcExecuteread,       MK_OS2, 0,
        "SHared",       &ProcShared,            MK_OS2|MK_PE|MK_WIN_VXD, 0,
        "NONShared",    &ProcNonShared,         MK_OS2|MK_PE|MK_WIN_VXD, 0,
        "READOnly",     &ProcReadOnly,          MK_OS2, 0,
        "READWrite",    &ProcReadWrite,         MK_OS2, 0,
        "CONforming",   &ProcConforming,        MK_ONLY_OS2|MK_WIN_VXD, 0,
        "NONConforming",&ProcNonConforming,     MK_ONLY_OS2|MK_WIN_VXD, 0,
        "MOVeable",     &ProcMovable,           MK_OS2_16BIT, 0,
        "FIXed",        &ProcFixed,             MK_WINDOWS, 0,
        "DIScardable",  &ProcDiscardable,       MK_WINDOWS|MK_WIN_VXD, 0,
        "NONDiscardable",&ProcNonDiscardable,   MK_WIN_VXD, 0,
        "INValid",      &ProcInvalid,           MK_OS2_LE|MK_OS2_LX, 0,
        "RESident",     &ProcPermanent,         MK_OS2_LE|MK_OS2_LX|MK_WIN_VXD, 0,
        "CONTiguous",   &ProcContiguous,        MK_OS2_LE|MK_OS2_LX, 0,
        "DYNamic",      &ProcOS2Dynamic,        MK_OS2_LE|MK_OS2_LX, 0,
        "NONPERManent", &ProcNonPermanent,      MK_OS2_LE|MK_OS2_LX, 0,
        "PERManent",    &ProcPermanent,         MK_OS2_LE|MK_OS2_LX, 0,
        "PAGEable",     &ProcPageable,          MK_PE, 0,
        "NONPageable",  &ProcNonPageable,       MK_PE, 0,
        NULL };

extern parse_entry CommitKeywords[] = {
        "STack",        &ProcCommitStack,       MK_PE, 0,
        "Heap",         &ProcCommitHeap,        MK_PE, 0,
        NULL };
#endif

#ifdef _ELF
extern parse_entry ELFFormatKeywords[] = {
        "DLl",          &ProcELFDLL,            MK_ELF, 0,
        NULL };
#endif

extern parse_entry OrderOpts[] = {
        "CLName",       &ProcOrdClass,          MK_ALL, 0,
        NULL };

extern parse_entry OrderClassOpts[] = {
        "SEGAddr",      &ProcOrdSegAdr,         MK_ALL, 0,
        "OFFset",       &ProcOrdOfsAdr,         MK_ALL, 0,
        "COpy",         &ProcOrdCopy,           MK_ALL, 0,
        "NOEmit",       &ProcOrdNoEmit,         MK_ALL, 0,
        "SEGMent",      &ProcOrdSeg,            MK_ALL, 0,
        NULL };

extern parse_entry OrderSegOpts[] = {
        "SEGAddr",      &ProcOrdSegSegAdr,      MK_ALL, 0,
        "OFFset",       &ProcOrdSegOfsAdr,      MK_ALL, 0,
        "NOEmit",       &ProcOrdSegNoEmit,      MK_ALL, 0,
        NULL };

extern parse_entry OutputOpts[] = {
        "RAW",          &ProcOutputRaw,         MK_ALL, 0,
        "HEX",          &ProcOutputHex,         MK_ALL, 0,
        "OFFset",       &ProcOutputOfs,         MK_ALL, 0,
        "HSHIFT",       &ProcOutputHshift,      MK_ALL, 0,
        "STartrec",     &ProcOutputStart,       MK_ALL, 0,
        NULL };

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?