summaryrefslogtreecommitdiff
path: root/sdk_hdrs/CompilerMapping.h
diff options
context:
space:
mode:
authorAsh Wolf <ninji@wuffs.org>2023-01-15 21:50:41 +0000
committerAsh Wolf <ninji@wuffs.org>2023-01-15 21:50:41 +0000
commita231f5dbb93c60da240a027f2afd8a4797069541 (patch)
treea6bc68fdc2f1a1fa0000e5cd63a5189f170c226b /sdk_hdrs/CompilerMapping.h
parent35d488e972a9dd75ce3867c000405f128b79c615 (diff)
downloadMWCC-a231f5dbb93c60da240a027f2afd8a4797069541.tar.gz
MWCC-a231f5dbb93c60da240a027f2afd8a4797069541.zip
more cleanup
Diffstat (limited to '')
-rwxr-xr-xsdk_hdrs/CompilerMapping.h139
1 files changed, 138 insertions, 1 deletions
diff --git a/sdk_hdrs/CompilerMapping.h b/sdk_hdrs/CompilerMapping.h
index c929a74..8337613 100755
--- a/sdk_hdrs/CompilerMapping.h
+++ b/sdk_hdrs/CompilerMapping.h
@@ -1 +1,138 @@
-/* * CompilerMapping.h - File Type & Extension => Compiler Mapping for Metrowerks CodeWarrior� * * Copyright � 1995 Metrowerks, Inc. All rights reserved. * */ #ifndef __COMPILERMAPPING_H__ #define __COMPILERMAPPING_H__ #ifdef __MWERKS__ # pragma once #endif #ifndef __CWPLUGINS_H__ #include "CWPlugins.h" #endif #ifdef __MWERKS__ #pragma options align=mac68k #endif #ifdef _MSC_VER #pragma pack(push,2) #endif #ifdef __cplusplus extern "C" { #endif #ifdef __cplusplus const CWDataType Lang_C_CPP = CWFOURCHAR('c','+','+',' '); const CWDataType Lang_Pascal = CWFOURCHAR('p','a','s','c'); const CWDataType Lang_Rez = CWFOURCHAR('r','e','z',' '); const CWDataType Lang_Java = CWFOURCHAR('j','a','v','a'); const CWDataType Lang_MISC = CWFOURCHAR('\?','\?','\?','\?'); #else #define Lang_C_CPP CWFOURCHAR('c','+','+',' ') #define Lang_Pascal CWFOURCHAR('p','a','s','c') #define Lang_Rez CWFOURCHAR('r','e','z',' ') #define Lang_Java CWFOURCHAR('j','a','v','a') #define Lang_MISC CWFOURCHAR('\?','\?','\?','\?') #endif /* Compiler flags, as used in member dropinflags of struct DropInFlags returned by compilers */ enum { kGeneratescode = 1L << 31, /* this compiler generates code */ kGeneratesrsrcs = 1L << 30, /* this compiler generates resources */ kCanpreprocess = 1L << 29, /* this compiler can accept a Preprocess request */ kCanprecompile = 1L << 28, /* this compiler can accept a Precompile request */ kIspascal = 1L << 27, /* this is the pascal compiler */ kCanimport = 1L << 26, /* this compiler needs the "Import Weak" popup */ kCandisassemble = 1L << 25, /* this compiler can disassemble */ kPersistent = 1L << 24, /* keep the compiler resident except on context switches*/ kCompAllowDupFileNames = 1L << 23, /* allow multiple project files with the same name */ kCompMultiTargAware = 1L << 22, /* the compiler can be used with multiple targets */ kIsMPAware = 1L << 21, /* the compiler can be run in an MP thread */ kCompUsesTargetStorage = 1L << 20, /* the compiler keeps storage per target */ kCompEmitsOwnBrSymbols = 1L << 19, /* browser info includes compiler-specific symbols */ kCompAlwaysReload = 1L << 18, /* always reload the compiler before request */ kCompRequiresProjectBuildStartedMsg = 1L << 17, /* Compiler listens for project build started messages */ kCompRequiresTargetBuildStartedMsg = 1L << 16, /* Compiler listens for target build started messages */ kCompRequiresSubProjectBuildStartedMsg = 1L << 15, /* Compiler listens for Sub project build started messages */ kCompRequiresFileListBuildStartedMsg = 1L << 14, /* Compiler listens for filelist build started messages */ kCompReentrant = 1L << 13, /* Compiler can use re-entrant DropIn and is re-entry safe */ kCompSavesDbgPreprocess = 1 << 12, /* Compiler will save preprocessed files for debugging needs */ kCompRequiresTargetCompileStartedMsg = 1 << 11 /* Compiler listens for target compile started/ended messages */ /* remaining flags are reserved for future use and should be zero-initialized */ }; /* Compiler mapping flags, used in CompilerMapping.flags & CWExtensionMapping.flags */ typedef unsigned long CompilerMappingFlags; enum { kPrecompile = 1L << 31, /* should this file type be Precompiled? */ kLaunchable = 1L << 30, /* can this file type be double-clicked on? */ kRsrcfile = 1L << 29, /* does this file type contain resources for linking? */ kIgnored = 1L << 28 /* should files of this type be ignored during Make? */ /* remaining flags are reserved for future use and should be zero-initialized */ }; /* Format of data in 'EMap' resource, or as returned by a compiler's */ /* GetExtensionMapping entry point */ typedef struct CWExtensionMapping { CWDataType type; /* MacOS file type, e.g. 'TEXT' or 0 */ char extension[32]; /* file extension, e.g. .c/.cp/.pch or "" */ CompilerMappingFlags flags; /* see above */ } CWExtensionMapping; #define kCurrentCWExtMapListVersion 1 #define kCurrentCWExtMapListResourceVersion 1 typedef struct CWExtMapList { short version; short nMappings; CWExtensionMapping* mappings; } CWExtMapList; /* Format of data returned by GetTargetList entry point */ #define kCurrentCWTargetListVersion 1 #define kCurrentCWTargetListResourceVersion 1 typedef struct CWTypeList { short count; CWDataType items[1]; } CW_CPUList, CW_OSList; typedef struct CWTargetList { short version; short cpuCount; CWDataType* cpus; short osCount; CWDataType* oss; } CWTargetList; typedef struct CWTargetListResource { short version; CW_CPUList cpus; CW_OSList oss; } CWTargetListResource; #ifdef __cplusplus } #endif #ifdef _MSC_VER #pragma pack(pop,2) #endif #ifdef __MWERKS__ #pragma options align=reset #endif #endif /* __COMPILERMAPPING_H__ */ \ No newline at end of file
+/*
+ * CompilerMapping.h - File Type & Extension => Compiler Mapping for Metrowerks CodeWarrior�
+ *
+ * Copyright � 1995 Metrowerks, Inc. All rights reserved.
+ *
+ */
+
+#ifndef __COMPILERMAPPING_H__
+#define __COMPILERMAPPING_H__
+
+#ifdef __MWERKS__
+# pragma once
+#endif
+
+#ifndef __CWPLUGINS_H__
+#include "CWPlugins.h"
+#endif
+
+#ifdef __MWERKS__
+#pragma options align=mac68k
+#endif
+
+#ifdef _MSC_VER
+#pragma pack(push,2)
+#endif
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+#ifdef __cplusplus
+ const CWDataType Lang_C_CPP = CWFOURCHAR('c','+','+',' ');
+ const CWDataType Lang_Pascal = CWFOURCHAR('p','a','s','c');
+ const CWDataType Lang_Rez = CWFOURCHAR('r','e','z',' ');
+ const CWDataType Lang_Java = CWFOURCHAR('j','a','v','a');
+ const CWDataType Lang_MISC = CWFOURCHAR('\?','\?','\?','\?');
+#else
+ #define Lang_C_CPP CWFOURCHAR('c','+','+',' ')
+ #define Lang_Pascal CWFOURCHAR('p','a','s','c')
+ #define Lang_Rez CWFOURCHAR('r','e','z',' ')
+ #define Lang_Java CWFOURCHAR('j','a','v','a')
+ #define Lang_MISC CWFOURCHAR('\?','\?','\?','\?')
+#endif
+
+/* Compiler flags, as used in member dropinflags of struct DropInFlags returned by compilers */
+enum
+{
+ kGeneratescode = 1L << 31, /* this compiler generates code */
+ kGeneratesrsrcs = 1L << 30, /* this compiler generates resources */
+ kCanpreprocess = 1L << 29, /* this compiler can accept a Preprocess request */
+ kCanprecompile = 1L << 28, /* this compiler can accept a Precompile request */
+ kIspascal = 1L << 27, /* this is the pascal compiler */
+ kCanimport = 1L << 26, /* this compiler needs the "Import Weak" popup */
+ kCandisassemble = 1L << 25, /* this compiler can disassemble */
+ kPersistent = 1L << 24, /* keep the compiler resident except on context switches*/
+ kCompAllowDupFileNames = 1L << 23, /* allow multiple project files with the same name */
+ kCompMultiTargAware = 1L << 22, /* the compiler can be used with multiple targets */
+ kIsMPAware = 1L << 21, /* the compiler can be run in an MP thread */
+ kCompUsesTargetStorage = 1L << 20, /* the compiler keeps storage per target */
+ kCompEmitsOwnBrSymbols = 1L << 19, /* browser info includes compiler-specific symbols */
+ kCompAlwaysReload = 1L << 18, /* always reload the compiler before request */
+ kCompRequiresProjectBuildStartedMsg = 1L << 17, /* Compiler listens for project build started messages */
+ kCompRequiresTargetBuildStartedMsg = 1L << 16, /* Compiler listens for target build started messages */
+ kCompRequiresSubProjectBuildStartedMsg = 1L << 15, /* Compiler listens for Sub project build started messages */
+ kCompRequiresFileListBuildStartedMsg = 1L << 14, /* Compiler listens for filelist build started messages */
+ kCompReentrant = 1L << 13, /* Compiler can use re-entrant DropIn and is re-entry safe */
+ kCompSavesDbgPreprocess = 1 << 12, /* Compiler will save preprocessed files for debugging needs */
+ kCompRequiresTargetCompileStartedMsg = 1 << 11 /* Compiler listens for target compile started/ended messages */
+ /* remaining flags are reserved for future use and should be zero-initialized */
+};
+
+/* Compiler mapping flags, used in CompilerMapping.flags & CWExtensionMapping.flags */
+typedef unsigned long CompilerMappingFlags;
+enum
+{
+ kPrecompile = 1L << 31, /* should this file type be Precompiled? */
+ kLaunchable = 1L << 30, /* can this file type be double-clicked on? */
+ kRsrcfile = 1L << 29, /* does this file type contain resources for linking? */
+ kIgnored = 1L << 28 /* should files of this type be ignored during Make? */
+ /* remaining flags are reserved for future use and should be zero-initialized */
+};
+
+/* Format of data in 'EMap' resource, or as returned by a compiler's */
+/* GetExtensionMapping entry point */
+
+typedef struct CWExtensionMapping {
+ CWDataType type; /* MacOS file type, e.g. 'TEXT' or 0 */
+ char extension[32]; /* file extension, e.g. .c/.cp/.pch or "" */
+ CompilerMappingFlags flags; /* see above */
+} CWExtensionMapping;
+
+#define kCurrentCWExtMapListVersion 1
+#define kCurrentCWExtMapListResourceVersion 1
+
+typedef struct CWExtMapList {
+ short version;
+ short nMappings;
+ CWExtensionMapping* mappings;
+} CWExtMapList;
+
+/* Format of data returned by GetTargetList entry point */
+
+#define kCurrentCWTargetListVersion 1
+#define kCurrentCWTargetListResourceVersion 1
+
+typedef struct CWTypeList {
+ short count;
+ CWDataType items[1];
+} CW_CPUList, CW_OSList;
+
+typedef struct CWTargetList {
+ short version;
+ short cpuCount;
+ CWDataType* cpus;
+ short osCount;
+ CWDataType* oss;
+} CWTargetList;
+
+typedef struct CWTargetListResource {
+ short version;
+ CW_CPUList cpus;
+ CW_OSList oss;
+} CWTargetListResource;
+
+
+#ifdef __cplusplus
+ }
+#endif
+
+#ifdef _MSC_VER
+#pragma pack(pop,2)
+#endif
+
+#ifdef __MWERKS__
+#pragma options align=reset
+#endif
+
+#endif /* __COMPILERMAPPING_H__ */