mirror of
https://github.com/jeremysrand/md2teach.git
synced 2024-12-26 21:32:12 +00:00
Initial Commit
This commit is contained in:
commit
ad2a57f4d4
452
md2teach.xcodeproj/project.pbxproj
Normal file
452
md2teach.xcodeproj/project.pbxproj
Normal file
@ -0,0 +1,452 @@
|
|||||||
|
// !$*UTF8*$!
|
||||||
|
{
|
||||||
|
archiveVersion = 1;
|
||||||
|
classes = {
|
||||||
|
};
|
||||||
|
objectVersion = 50;
|
||||||
|
objects = {
|
||||||
|
|
||||||
|
/* Begin PBXBuildFile section */
|
||||||
|
9D6532ED2626240800105D50 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 9D6532EC2626240800105D50 /* main.c */; };
|
||||||
|
9D6532EF2626240800105D50 /* Makefile in Sources */ = {isa = PBXBuildFile; fileRef = 9D6532EE2626240800105D50 /* Makefile */; };
|
||||||
|
9D6532F22626240800105D50 /* head.mk in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D6532F12626240800105D50 /* head.mk */; };
|
||||||
|
9D6532F42626240800105D50 /* orca-asm in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D6532F32626240800105D50 /* orca-asm */; };
|
||||||
|
9D6532F62626240800105D50 /* orca-cc in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D6532F52626240800105D50 /* orca-cc */; };
|
||||||
|
9D6532F82626240800105D50 /* orca-rez in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D6532F72626240800105D50 /* orca-rez */; };
|
||||||
|
9D6532FA2626240800105D50 /* tail.mk in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D6532F92626240800105D50 /* tail.mk */; };
|
||||||
|
9D6532FD2626240800105D50 /* md2teach.xcscheme in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D6532FC2626240800105D50 /* md2teach.xcscheme */; };
|
||||||
|
/* End PBXBuildFile section */
|
||||||
|
|
||||||
|
/* Begin PBXCopyFilesBuildPhase section */
|
||||||
|
9D6532E82626240800105D50 /* CopyFiles */ = {
|
||||||
|
isa = PBXCopyFilesBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
dstPath = /usr/share/man/man1/;
|
||||||
|
dstSubfolderSpec = 0;
|
||||||
|
files = (
|
||||||
|
9D6532F62626240800105D50 /* orca-cc in CopyFiles */,
|
||||||
|
9D6532F22626240800105D50 /* head.mk in CopyFiles */,
|
||||||
|
9D6532F42626240800105D50 /* orca-asm in CopyFiles */,
|
||||||
|
9D6532FD2626240800105D50 /* md2teach.xcscheme in CopyFiles */,
|
||||||
|
9D6532F82626240800105D50 /* orca-rez in CopyFiles */,
|
||||||
|
9D6532FA2626240800105D50 /* tail.mk in CopyFiles */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 1;
|
||||||
|
};
|
||||||
|
/* End PBXCopyFilesBuildPhase section */
|
||||||
|
|
||||||
|
/* Begin PBXFileReference section */
|
||||||
|
9D6532E42626240800105D50 /* md2teach */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = md2teach; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
|
9D6532EA2626240800105D50 /* doNotBuild */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = doNotBuild; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
|
9D6532EC2626240800105D50 /* main.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = "<group>"; };
|
||||||
|
9D6532EE2626240800105D50 /* Makefile */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
|
||||||
|
9D6532F12626240800105D50 /* head.mk */ = {isa = PBXFileReference; lastKnownFileType = text; path = head.mk; sourceTree = "<group>"; };
|
||||||
|
9D6532F32626240800105D50 /* orca-asm */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "orca-asm"; sourceTree = "<group>"; };
|
||||||
|
9D6532F52626240800105D50 /* orca-cc */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "orca-cc"; sourceTree = "<group>"; };
|
||||||
|
9D6532F72626240800105D50 /* orca-rez */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "orca-rez"; sourceTree = "<group>"; };
|
||||||
|
9D6532F92626240800105D50 /* tail.mk */ = {isa = PBXFileReference; lastKnownFileType = text; path = tail.mk; sourceTree = "<group>"; };
|
||||||
|
9D6532FC2626240800105D50 /* md2teach.xcscheme */ = {isa = PBXFileReference; lastKnownFileType = text.xml; name = md2teach.xcscheme; path = ../../md2teach.xcodeproj/xcshareddata/xcschemes/md2teach.xcscheme; sourceTree = "<group>"; };
|
||||||
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
|
/* Begin PBXFrameworksBuildPhase section */
|
||||||
|
9D6532E72626240800105D50 /* Frameworks */ = {
|
||||||
|
isa = PBXFrameworksBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
|
/* End PBXFrameworksBuildPhase section */
|
||||||
|
|
||||||
|
/* Begin PBXGroup section */
|
||||||
|
9D6532DD2626240800105D50 = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
9D6532EB2626240800105D50 /* md2teach */,
|
||||||
|
9D6532E52626240800105D50 /* Products */,
|
||||||
|
);
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
9D6532E52626240800105D50 /* Products */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
9D6532E42626240800105D50 /* md2teach */,
|
||||||
|
9D6532EA2626240800105D50 /* doNotBuild */,
|
||||||
|
);
|
||||||
|
name = Products;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
9D6532EB2626240800105D50 /* md2teach */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
9D6532EC2626240800105D50 /* main.c */,
|
||||||
|
9D6532EE2626240800105D50 /* Makefile */,
|
||||||
|
9D6532F02626240800105D50 /* make */,
|
||||||
|
9D6532FB2626240800105D50 /* Supporting Files */,
|
||||||
|
);
|
||||||
|
path = md2teach;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
9D6532F02626240800105D50 /* make */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
9D6532F12626240800105D50 /* head.mk */,
|
||||||
|
9D6532F32626240800105D50 /* orca-asm */,
|
||||||
|
9D6532F52626240800105D50 /* orca-cc */,
|
||||||
|
9D6532F72626240800105D50 /* orca-rez */,
|
||||||
|
9D6532F92626240800105D50 /* tail.mk */,
|
||||||
|
);
|
||||||
|
path = make;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
9D6532FB2626240800105D50 /* Supporting Files */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
9D6532FC2626240800105D50 /* md2teach.xcscheme */,
|
||||||
|
);
|
||||||
|
path = "Supporting Files";
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
/* End PBXGroup section */
|
||||||
|
|
||||||
|
/* Begin PBXLegacyTarget section */
|
||||||
|
9D6532E22626240800105D50 /* md2teach */ = {
|
||||||
|
isa = PBXLegacyTarget;
|
||||||
|
buildArgumentsString = "-C md2teach $(ACTION)";
|
||||||
|
buildConfigurationList = 9D6533002626240800105D50 /* Build configuration list for PBXLegacyTarget "md2teach" */;
|
||||||
|
buildPhases = (
|
||||||
|
);
|
||||||
|
buildToolPath = /usr/bin/make;
|
||||||
|
dependencies = (
|
||||||
|
);
|
||||||
|
name = md2teach;
|
||||||
|
passBuildSettingsInEnvironment = 1;
|
||||||
|
productName = md2teach;
|
||||||
|
};
|
||||||
|
/* End PBXLegacyTarget section */
|
||||||
|
|
||||||
|
/* Begin PBXNativeTarget section */
|
||||||
|
9D6532E32626240800105D50 /* Binary */ = {
|
||||||
|
isa = PBXNativeTarget;
|
||||||
|
buildConfigurationList = 9D6533032626240800105D50 /* Build configuration list for PBXNativeTarget "Binary" */;
|
||||||
|
buildPhases = (
|
||||||
|
);
|
||||||
|
buildRules = (
|
||||||
|
);
|
||||||
|
dependencies = (
|
||||||
|
);
|
||||||
|
name = Binary;
|
||||||
|
productName = Binary;
|
||||||
|
productReference = 9D6532E42626240800105D50 /* md2teach */;
|
||||||
|
productType = "com.apple.product-type.tool";
|
||||||
|
};
|
||||||
|
9D6532E92626240800105D50 /* doNotBuild */ = {
|
||||||
|
isa = PBXNativeTarget;
|
||||||
|
buildConfigurationList = 9D6533062626240800105D50 /* Build configuration list for PBXNativeTarget "doNotBuild" */;
|
||||||
|
buildPhases = (
|
||||||
|
9D6532E62626240800105D50 /* Sources */,
|
||||||
|
9D6532E72626240800105D50 /* Frameworks */,
|
||||||
|
9D6532E82626240800105D50 /* CopyFiles */,
|
||||||
|
);
|
||||||
|
buildRules = (
|
||||||
|
);
|
||||||
|
dependencies = (
|
||||||
|
);
|
||||||
|
name = doNotBuild;
|
||||||
|
productName = doNotBuild;
|
||||||
|
productReference = 9D6532EA2626240800105D50 /* doNotBuild */;
|
||||||
|
productType = "com.apple.product-type.tool";
|
||||||
|
};
|
||||||
|
/* End PBXNativeTarget section */
|
||||||
|
|
||||||
|
/* Begin PBXProject section */
|
||||||
|
9D6532DE2626240800105D50 /* Project object */ = {
|
||||||
|
isa = PBXProject;
|
||||||
|
attributes = {
|
||||||
|
LastUpgradeCheck = 1240;
|
||||||
|
TargetAttributes = {
|
||||||
|
9D6532E22626240800105D50 = {
|
||||||
|
CreatedOnToolsVersion = 12.4;
|
||||||
|
};
|
||||||
|
9D6532E32626240800105D50 = {
|
||||||
|
CreatedOnToolsVersion = 12.4;
|
||||||
|
};
|
||||||
|
9D6532E92626240800105D50 = {
|
||||||
|
CreatedOnToolsVersion = 12.4;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
buildConfigurationList = 9D6532E12626240800105D50 /* Build configuration list for PBXProject "md2teach" */;
|
||||||
|
compatibilityVersion = "Xcode 9.3";
|
||||||
|
developmentRegion = en;
|
||||||
|
hasScannedForEncodings = 0;
|
||||||
|
knownRegions = (
|
||||||
|
en,
|
||||||
|
Base,
|
||||||
|
);
|
||||||
|
mainGroup = 9D6532DD2626240800105D50;
|
||||||
|
productRefGroup = 9D6532E52626240800105D50 /* Products */;
|
||||||
|
projectDirPath = "";
|
||||||
|
projectRoot = "";
|
||||||
|
targets = (
|
||||||
|
9D6532E22626240800105D50 /* md2teach */,
|
||||||
|
9D6532E32626240800105D50 /* Binary */,
|
||||||
|
9D6532E92626240800105D50 /* doNotBuild */,
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/* End PBXProject section */
|
||||||
|
|
||||||
|
/* Begin PBXSourcesBuildPhase section */
|
||||||
|
9D6532E62626240800105D50 /* Sources */ = {
|
||||||
|
isa = PBXSourcesBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
9D6532EF2626240800105D50 /* Makefile in Sources */,
|
||||||
|
9D6532ED2626240800105D50 /* main.c in Sources */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
|
/* End PBXSourcesBuildPhase section */
|
||||||
|
|
||||||
|
/* Begin XCBuildConfiguration section */
|
||||||
|
9D6532FE2626240800105D50 /* Debug */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
|
CLANG_ANALYZER_NONNULL = YES;
|
||||||
|
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
|
||||||
|
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
|
||||||
|
CLANG_CXX_LIBRARY = "libc++";
|
||||||
|
CLANG_ENABLE_MODULES = YES;
|
||||||
|
CLANG_ENABLE_OBJC_ARC = YES;
|
||||||
|
CLANG_ENABLE_OBJC_WEAK = YES;
|
||||||
|
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||||
|
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||||
|
CLANG_WARN_COMMA = YES;
|
||||||
|
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||||
|
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||||
|
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||||
|
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
|
||||||
|
CLANG_WARN_EMPTY_BODY = YES;
|
||||||
|
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||||
|
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||||
|
CLANG_WARN_INT_CONVERSION = YES;
|
||||||
|
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||||
|
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||||
|
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||||
|
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||||
|
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||||
|
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||||
|
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||||
|
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||||
|
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||||
|
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||||
|
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||||
|
COPY_PHASE_STRIP = NO;
|
||||||
|
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||||
|
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||||
|
ENABLE_TESTABILITY = YES;
|
||||||
|
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||||
|
GCC_DYNAMIC_NO_PIC = NO;
|
||||||
|
GCC_NO_COMMON_BLOCKS = YES;
|
||||||
|
GCC_OPTIMIZATION_LEVEL = 0;
|
||||||
|
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||||
|
"DEBUG=1",
|
||||||
|
"$(inherited)",
|
||||||
|
);
|
||||||
|
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||||
|
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||||
|
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||||
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
|
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||||
|
MTL_FAST_MATH = YES;
|
||||||
|
ONLY_ACTIVE_ARCH = YES;
|
||||||
|
};
|
||||||
|
name = Debug;
|
||||||
|
};
|
||||||
|
9D6532FF2626240800105D50 /* Release */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
|
CLANG_ANALYZER_NONNULL = YES;
|
||||||
|
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
|
||||||
|
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
|
||||||
|
CLANG_CXX_LIBRARY = "libc++";
|
||||||
|
CLANG_ENABLE_MODULES = YES;
|
||||||
|
CLANG_ENABLE_OBJC_ARC = YES;
|
||||||
|
CLANG_ENABLE_OBJC_WEAK = YES;
|
||||||
|
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||||
|
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||||
|
CLANG_WARN_COMMA = YES;
|
||||||
|
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||||
|
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||||
|
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||||
|
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
|
||||||
|
CLANG_WARN_EMPTY_BODY = YES;
|
||||||
|
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||||
|
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||||
|
CLANG_WARN_INT_CONVERSION = YES;
|
||||||
|
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||||
|
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||||
|
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||||
|
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||||
|
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||||
|
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||||
|
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||||
|
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||||
|
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||||
|
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||||
|
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||||
|
COPY_PHASE_STRIP = NO;
|
||||||
|
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||||
|
ENABLE_NS_ASSERTIONS = NO;
|
||||||
|
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||||
|
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||||
|
GCC_NO_COMMON_BLOCKS = YES;
|
||||||
|
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||||
|
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||||
|
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||||
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
|
MTL_ENABLE_DEBUG_INFO = NO;
|
||||||
|
MTL_FAST_MATH = YES;
|
||||||
|
};
|
||||||
|
name = Release;
|
||||||
|
};
|
||||||
|
9D6533012626240800105D50 /* Debug */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
CODE_SIGN_STYLE = Automatic;
|
||||||
|
DEBUGGING_SYMBOLS = YES;
|
||||||
|
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||||
|
DEVELOPMENT_TEAM = VD9FGCW36C;
|
||||||
|
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
|
||||||
|
GCC_OPTIMIZATION_LEVEL = 0;
|
||||||
|
OTHER_CFLAGS = "";
|
||||||
|
OTHER_LDFLAGS = "";
|
||||||
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
|
};
|
||||||
|
name = Debug;
|
||||||
|
};
|
||||||
|
9D6533022626240800105D50 /* Release */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
CODE_SIGN_STYLE = Automatic;
|
||||||
|
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||||
|
DEVELOPMENT_TEAM = VD9FGCW36C;
|
||||||
|
OTHER_CFLAGS = "";
|
||||||
|
OTHER_LDFLAGS = "";
|
||||||
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
|
};
|
||||||
|
name = Release;
|
||||||
|
};
|
||||||
|
9D6533042626240800105D50 /* Debug */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
CODE_SIGN_STYLE = Automatic;
|
||||||
|
DEVELOPMENT_TEAM = VD9FGCW36C;
|
||||||
|
ENABLE_HARDENED_RUNTIME = YES;
|
||||||
|
PRODUCT_NAME = md2teach;
|
||||||
|
};
|
||||||
|
name = Debug;
|
||||||
|
};
|
||||||
|
9D6533052626240800105D50 /* Release */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
CODE_SIGN_STYLE = Automatic;
|
||||||
|
DEVELOPMENT_TEAM = VD9FGCW36C;
|
||||||
|
ENABLE_HARDENED_RUNTIME = YES;
|
||||||
|
PRODUCT_NAME = md2teach;
|
||||||
|
};
|
||||||
|
name = Release;
|
||||||
|
};
|
||||||
|
9D6533072626240800105D50 /* Debug */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
CODE_SIGN_STYLE = Automatic;
|
||||||
|
DEVELOPMENT_TEAM = VD9FGCW36C;
|
||||||
|
ENABLE_HARDENED_RUNTIME = YES;
|
||||||
|
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||||
|
"inline(X,Y)=\"\"\n",
|
||||||
|
"extended=double\n",
|
||||||
|
"pascal=\"\"",
|
||||||
|
);
|
||||||
|
HEADER_SEARCH_PATHS = (
|
||||||
|
"$TEMP_ROOT/md2teach.build/$CONFIGURATION/md2teach.build/DerivedSources\n",
|
||||||
|
"$GOLDEN_GATE/Libraries/ORCACDefs\n",
|
||||||
|
"~/Library/GoldenGate/Libraries/ORCACDefs\n",
|
||||||
|
"/Library/GoldenGate/Libraries/ORCACDefs\n",
|
||||||
|
"~/GoldenGate/Libraries/ORCACDefs",
|
||||||
|
);
|
||||||
|
PRODUCT_NAME = doNotBuild;
|
||||||
|
};
|
||||||
|
name = Debug;
|
||||||
|
};
|
||||||
|
9D6533082626240800105D50 /* Release */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
CODE_SIGN_STYLE = Automatic;
|
||||||
|
DEVELOPMENT_TEAM = VD9FGCW36C;
|
||||||
|
ENABLE_HARDENED_RUNTIME = YES;
|
||||||
|
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||||
|
"inline(X,Y)=\"\"\n",
|
||||||
|
"extended=double\n",
|
||||||
|
"pascal=\"\"",
|
||||||
|
);
|
||||||
|
HEADER_SEARCH_PATHS = (
|
||||||
|
"$TEMP_ROOT/md2teach.build/$CONFIGURATION/md2teach.build/DerivedSources\n",
|
||||||
|
"$GOLDEN_GATE/Libraries/ORCACDefs\n",
|
||||||
|
"~/Library/GoldenGate/Libraries/ORCACDefs\n",
|
||||||
|
"/Library/GoldenGate/Libraries/ORCACDefs\n",
|
||||||
|
"~/GoldenGate/Libraries/ORCACDefs",
|
||||||
|
);
|
||||||
|
PRODUCT_NAME = doNotBuild;
|
||||||
|
};
|
||||||
|
name = Release;
|
||||||
|
};
|
||||||
|
/* End XCBuildConfiguration section */
|
||||||
|
|
||||||
|
/* Begin XCConfigurationList section */
|
||||||
|
9D6532E12626240800105D50 /* Build configuration list for PBXProject "md2teach" */ = {
|
||||||
|
isa = XCConfigurationList;
|
||||||
|
buildConfigurations = (
|
||||||
|
9D6532FE2626240800105D50 /* Debug */,
|
||||||
|
9D6532FF2626240800105D50 /* Release */,
|
||||||
|
);
|
||||||
|
defaultConfigurationIsVisible = 0;
|
||||||
|
defaultConfigurationName = Release;
|
||||||
|
};
|
||||||
|
9D6533002626240800105D50 /* Build configuration list for PBXLegacyTarget "md2teach" */ = {
|
||||||
|
isa = XCConfigurationList;
|
||||||
|
buildConfigurations = (
|
||||||
|
9D6533012626240800105D50 /* Debug */,
|
||||||
|
9D6533022626240800105D50 /* Release */,
|
||||||
|
);
|
||||||
|
defaultConfigurationIsVisible = 0;
|
||||||
|
defaultConfigurationName = Release;
|
||||||
|
};
|
||||||
|
9D6533032626240800105D50 /* Build configuration list for PBXNativeTarget "Binary" */ = {
|
||||||
|
isa = XCConfigurationList;
|
||||||
|
buildConfigurations = (
|
||||||
|
9D6533042626240800105D50 /* Debug */,
|
||||||
|
9D6533052626240800105D50 /* Release */,
|
||||||
|
);
|
||||||
|
defaultConfigurationIsVisible = 0;
|
||||||
|
defaultConfigurationName = Release;
|
||||||
|
};
|
||||||
|
9D6533062626240800105D50 /* Build configuration list for PBXNativeTarget "doNotBuild" */ = {
|
||||||
|
isa = XCConfigurationList;
|
||||||
|
buildConfigurations = (
|
||||||
|
9D6533072626240800105D50 /* Debug */,
|
||||||
|
9D6533082626240800105D50 /* Release */,
|
||||||
|
);
|
||||||
|
defaultConfigurationIsVisible = 0;
|
||||||
|
defaultConfigurationName = Release;
|
||||||
|
};
|
||||||
|
/* End XCConfigurationList section */
|
||||||
|
};
|
||||||
|
rootObject = 9D6532DE2626240800105D50 /* Project object */;
|
||||||
|
}
|
7
md2teach.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
7
md2teach.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<Workspace
|
||||||
|
version = "1.0">
|
||||||
|
<FileRef
|
||||||
|
location = "self:">
|
||||||
|
</FileRef>
|
||||||
|
</Workspace>
|
@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>IDEDidComputeMac32BitWarning</key>
|
||||||
|
<true/>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
90
md2teach.xcodeproj/xcshareddata/xcschemes/md2teach.xcscheme
Normal file
90
md2teach.xcodeproj/xcshareddata/xcschemes/md2teach.xcscheme
Normal file
@ -0,0 +1,90 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<Scheme
|
||||||
|
LastUpgradeVersion = "0830"
|
||||||
|
version = "1.3">
|
||||||
|
<BuildAction
|
||||||
|
parallelizeBuildables = "YES"
|
||||||
|
buildImplicitDependencies = "YES">
|
||||||
|
<BuildActionEntries>
|
||||||
|
<BuildActionEntry
|
||||||
|
buildForTesting = "YES"
|
||||||
|
buildForRunning = "YES"
|
||||||
|
buildForProfiling = "YES"
|
||||||
|
buildForArchiving = "YES"
|
||||||
|
buildForAnalyzing = "YES">
|
||||||
|
<BuildableReference
|
||||||
|
BuildableIdentifier = "primary"
|
||||||
|
BlueprintIdentifier = "9D0B917C1F526C2D004D7E0B"
|
||||||
|
BuildableName = "md2teach"
|
||||||
|
BlueprintName = "md2teach"
|
||||||
|
ReferencedContainer = "container:md2teach.xcodeproj">
|
||||||
|
</BuildableReference>
|
||||||
|
</BuildActionEntry>
|
||||||
|
</BuildActionEntries>
|
||||||
|
</BuildAction>
|
||||||
|
<TestAction
|
||||||
|
buildConfiguration = "Debug"
|
||||||
|
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||||
|
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||||
|
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||||
|
<Testables>
|
||||||
|
</Testables>
|
||||||
|
<AdditionalOptions>
|
||||||
|
</AdditionalOptions>
|
||||||
|
</TestAction>
|
||||||
|
<LaunchAction
|
||||||
|
buildConfiguration = "Debug"
|
||||||
|
selectedDebuggerIdentifier = ""
|
||||||
|
selectedLauncherIdentifier = "Xcode.IDEFoundation.Launcher.PosixSpawn"
|
||||||
|
launchStyle = "0"
|
||||||
|
useCustomWorkingDirectory = "NO"
|
||||||
|
ignoresPersistentStateOnLaunch = "NO"
|
||||||
|
debugDocumentVersioning = "YES"
|
||||||
|
debugServiceExtension = "internal"
|
||||||
|
allowLocationSimulation = "YES">
|
||||||
|
<PathRunnable
|
||||||
|
runnableDebuggingMode = "0"
|
||||||
|
FilePath = "/usr/local/bin/orca">
|
||||||
|
</PathRunnable>
|
||||||
|
<MacroExpansion>
|
||||||
|
<BuildableReference
|
||||||
|
BuildableIdentifier = "primary"
|
||||||
|
BlueprintIdentifier = "9D0B917C1F526C2D004D7E0B"
|
||||||
|
BuildableName = "md2teach"
|
||||||
|
BlueprintName = "md2teach"
|
||||||
|
ReferencedContainer = "container:md2teach.xcodeproj">
|
||||||
|
</BuildableReference>
|
||||||
|
</MacroExpansion>
|
||||||
|
<CommandLineArguments>
|
||||||
|
<CommandLineArgument
|
||||||
|
argument = "$TARGET_BUILD_DIR/md2teach"
|
||||||
|
isEnabled = "YES">
|
||||||
|
</CommandLineArgument>
|
||||||
|
</CommandLineArguments>
|
||||||
|
<AdditionalOptions>
|
||||||
|
</AdditionalOptions>
|
||||||
|
</LaunchAction>
|
||||||
|
<ProfileAction
|
||||||
|
buildConfiguration = "Release"
|
||||||
|
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||||
|
savedToolIdentifier = ""
|
||||||
|
useCustomWorkingDirectory = "NO"
|
||||||
|
debugDocumentVersioning = "YES">
|
||||||
|
<MacroExpansion>
|
||||||
|
<BuildableReference
|
||||||
|
BuildableIdentifier = "primary"
|
||||||
|
BlueprintIdentifier = "9D0B917C1F526C2D004D7E0B"
|
||||||
|
BuildableName = "md2teach"
|
||||||
|
BlueprintName = "md2teach"
|
||||||
|
ReferencedContainer = "container:md2teach.xcodeproj">
|
||||||
|
</BuildableReference>
|
||||||
|
</MacroExpansion>
|
||||||
|
</ProfileAction>
|
||||||
|
<AnalyzeAction
|
||||||
|
buildConfiguration = "Debug">
|
||||||
|
</AnalyzeAction>
|
||||||
|
<ArchiveAction
|
||||||
|
buildConfiguration = "Release"
|
||||||
|
revealArchiveInOrganizer = "YES">
|
||||||
|
</ArchiveAction>
|
||||||
|
</Scheme>
|
@ -0,0 +1,24 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>SchemeUserState</key>
|
||||||
|
<dict>
|
||||||
|
<key>Binary.xcscheme_^#shared#^_</key>
|
||||||
|
<dict>
|
||||||
|
<key>orderHint</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
</dict>
|
||||||
|
<key>doNotBuild.xcscheme_^#shared#^_</key>
|
||||||
|
<dict>
|
||||||
|
<key>orderHint</key>
|
||||||
|
<integer>2</integer>
|
||||||
|
</dict>
|
||||||
|
<key>md2teach.xcscheme_^#shared#^_</key>
|
||||||
|
<dict>
|
||||||
|
<key>orderHint</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
</dict>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
178
md2teach/Makefile
Normal file
178
md2teach/Makefile
Normal file
@ -0,0 +1,178 @@
|
|||||||
|
#
|
||||||
|
# Makefile
|
||||||
|
# Apple //GS Build Engine for ORCA and Merlin
|
||||||
|
#
|
||||||
|
|
||||||
|
include make/head.mk
|
||||||
|
|
||||||
|
# Customize this file to control what kind of project you are working on,
|
||||||
|
# where to find files, etc.
|
||||||
|
|
||||||
|
# The name of your system or binary file to build goes here:
|
||||||
|
PGM=md2teach
|
||||||
|
|
||||||
|
# Set the target type you would like to build. The options are:
|
||||||
|
# shell - A shell command for ORCA, GNO or other GS shell
|
||||||
|
# desktop - A full desktop application
|
||||||
|
# cda - A classic desk accessory
|
||||||
|
# cdev - A control panel device
|
||||||
|
# nba - A HyperStudio new button action
|
||||||
|
# nda - A new desk accessory
|
||||||
|
# xcmd - A HyperCard XCMD or XCFN
|
||||||
|
#
|
||||||
|
TARGETTYPE=shell
|
||||||
|
# TARGETTYPE=desktop
|
||||||
|
# TARGETTYPE=cda
|
||||||
|
# TARGETTYPE=cdev
|
||||||
|
# TARGETTYPE=nba
|
||||||
|
# TARGETTYPE=nda
|
||||||
|
# TARGETTYPE=xcmd
|
||||||
|
|
||||||
|
# Uncomment one of the following lines to force a particular GS emulator.
|
||||||
|
# By default, specific paths are tested for these emulators in the below
|
||||||
|
# order and the first found is what will be used. You can overrride that
|
||||||
|
# here:
|
||||||
|
#
|
||||||
|
# EMULATOR=gsplus
|
||||||
|
# EMULATOR=mame
|
||||||
|
# EMULATOR=gsport
|
||||||
|
|
||||||
|
# By default, the build provides a single boot environment to test with.
|
||||||
|
# You can put other .2mg files into the make directory and override this
|
||||||
|
# variable to change what boot disk you want to use when you launch the
|
||||||
|
# emulator. The disk image you specify must be found in the make directory:
|
||||||
|
#
|
||||||
|
# BOOTIMAGE=system601.2mg
|
||||||
|
|
||||||
|
# Add any other directories where you are putting C or assembly source
|
||||||
|
# files to this list:
|
||||||
|
# SRCDIRS+=
|
||||||
|
|
||||||
|
# If you put your main entry point for your project in a file called main.c
|
||||||
|
# Then you don't need to change this value. If you want to call your entry
|
||||||
|
# point something other than main.c, set this variable to point to this file.
|
||||||
|
ROOTCFILE=main.c
|
||||||
|
|
||||||
|
# Add any arguments you want passed to the C compiler to this variable:
|
||||||
|
CFLAGS+=
|
||||||
|
|
||||||
|
# Add any arguments you want passed to the resource compiler to this variable:
|
||||||
|
REZFLAGS+=
|
||||||
|
|
||||||
|
# Uncomment the following line if you have installed rlint as found here:
|
||||||
|
# https://github.com/ksherlock/rlint/releases
|
||||||
|
# Assuming that it is in the path that ORCA searches (the Utilities directory is
|
||||||
|
# probably a good choice), you can just leave the value unchanged. If you have
|
||||||
|
# put the rlint somewhere weird, you can set this to the correct path
|
||||||
|
# RLINT_PATH=rlint
|
||||||
|
|
||||||
|
# Add any arguments you want passed to the macro generator to this variable:
|
||||||
|
MACGENFLAGS+=
|
||||||
|
|
||||||
|
# Add any other macro libraries to include in this variable:
|
||||||
|
MACGENMACROS+=
|
||||||
|
|
||||||
|
# Add any arguments you want passed to the assembler to this variable:
|
||||||
|
ASMFLAGS+=
|
||||||
|
|
||||||
|
# Add any arguments you want passed to the linker to this variable:
|
||||||
|
LDFLAGS+=
|
||||||
|
|
||||||
|
# Uncomment the following line if you want to build against the GNO libraries
|
||||||
|
# export ORCA=$(ORCA_BINDIR)/gno
|
||||||
|
|
||||||
|
# If you want to copy one or more files or directories to the distribution disk
|
||||||
|
# image, add the root directory to this variable. Any directories under
|
||||||
|
# the source directory which don't exist in the target disk image will be
|
||||||
|
# created. All files will be copied from the source to the target using
|
||||||
|
# the same path from the source.
|
||||||
|
#
|
||||||
|
# For example, if you set COPYDIRS to dir and in your project you have
|
||||||
|
# the following files:
|
||||||
|
# dir/Icons/myIconFile
|
||||||
|
# dir/newDir/anotherFile
|
||||||
|
# Then, during the copy phase, myIconFile will be copied into the Icons
|
||||||
|
# folder and a folder newDir will be created and anotherFile will be copied
|
||||||
|
# into there.
|
||||||
|
COPYDIRS=
|
||||||
|
|
||||||
|
# If you want to copy one or more files or directories to the boot disk
|
||||||
|
# image, add the root directory to this variable. Any directories under
|
||||||
|
# the source directory which don't exist in the boot disk image will be
|
||||||
|
# created. All files will be copied from the source to the target using
|
||||||
|
# the same path from the source.
|
||||||
|
#
|
||||||
|
# For example, if you set COPYBOOTDIRS to dir and in your project you have
|
||||||
|
# the following files:
|
||||||
|
# dir/System/mySystemFile
|
||||||
|
# dir/newDir/anotherFile
|
||||||
|
# Then, during the copy phase, mySystemFile will be copied into the System
|
||||||
|
# folder and a folder newDir will be created and anotherFile will be copied
|
||||||
|
# into there.
|
||||||
|
COPYBOOTDIRS=
|
||||||
|
|
||||||
|
# By default, the build expects that you have GSplus in the path:
|
||||||
|
# /Applications/GSplus.app/Contents/MacOS/gsplus
|
||||||
|
# If you have it in a different location, specify that here.
|
||||||
|
# GSPLUS=/Applications/GSplus.app/Contents/MacOS/gsplus
|
||||||
|
|
||||||
|
# By default, the build uses no arguments with GSplus. If you would like to
|
||||||
|
# use different arguments, specify that here.
|
||||||
|
# GSPLUSARGS=
|
||||||
|
|
||||||
|
# By default, the build expects that you have GSport in the path:
|
||||||
|
# /Applications/GSport/GSport.app/Contents/MacOS/GSport
|
||||||
|
# If you have it in a different location, specify that here.
|
||||||
|
# GSPORT=/Applications/GSport/GSport.app/Contents/MacOS/GSport
|
||||||
|
|
||||||
|
# By default, the build uses no arguments with GSport. If you would like to
|
||||||
|
# use different arguments, specify that here.
|
||||||
|
# GSPORTARGS=
|
||||||
|
|
||||||
|
# By default, the build expects that you have Ample/mame in the path:
|
||||||
|
# /Applications/Ample.app/Contents/MacOS/mame64
|
||||||
|
# If you have it in a different location, specify that here.
|
||||||
|
# MAME=/Applications/Ample.app/Contents/MacOS/mame64
|
||||||
|
|
||||||
|
# By default, the build expects that you have the mame ROMs/libs in the path:
|
||||||
|
# $(HOME)/Library/Application Support/Ample
|
||||||
|
# If you have it in a different location, specify that here.
|
||||||
|
# MAMELIB=$(HOME)/Library/Application Support/Ample
|
||||||
|
|
||||||
|
# By default, the build uses these arguments with mame:
|
||||||
|
# apple2gs -skip_gameinfo -mouse -window -resolution 1408x1056 -ramsize 4M -sl7 cffa202
|
||||||
|
# If you would like to use different arguments, specify that here.
|
||||||
|
# MAMEARGS=apple2gs -skip_gameinfo -mouse -window -resolution 1408x1056 -ramsize 4M -sl7 cffa202
|
||||||
|
|
||||||
|
# For a desktop application, it can operate in 640x200 or 320x200
|
||||||
|
# resolution. This setting is used to define which horizontal
|
||||||
|
# resolution you want to use for a desktop application. Other
|
||||||
|
# target types ignore this value.
|
||||||
|
# DESKTOP_RES_MODE=640
|
||||||
|
|
||||||
|
# For a desktop application, it can support opening and printing
|
||||||
|
# files based on paths sent to it by the message center. This
|
||||||
|
# option controls if that is or is not supported in the
|
||||||
|
# application (note: only the C desktop template supports message
|
||||||
|
# center today)
|
||||||
|
# MESSAGE_CENTER=0
|
||||||
|
|
||||||
|
# Add any rules you want to execute before any compiles or assembly
|
||||||
|
# commands are called here, if any. You can generate .c, .s or .h
|
||||||
|
# files for example. You can generate data files. Whatever you
|
||||||
|
# might need. You should generate these files in the $(GENDIR)
|
||||||
|
# directory or within a subdirectory under $(GENDIR) which you create
|
||||||
|
# yourself.
|
||||||
|
#
|
||||||
|
# All of your commands associated with a rule _must_ start with a tab
|
||||||
|
# character. Xcode makes it a bit tough to type a tab character by
|
||||||
|
# default. Press option-tab within Xcode to insert a tab character.
|
||||||
|
gen:
|
||||||
|
|
||||||
|
# For any files you generated in the gen target above, you should
|
||||||
|
# add rules in genclean to remove those generated files when you
|
||||||
|
# clean your build.
|
||||||
|
genclean:
|
||||||
|
|
||||||
|
# Do not change anything else below here...
|
||||||
|
include make/tail.mk
|
18
md2teach/main.c
Normal file
18
md2teach/main.c
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
/*
|
||||||
|
* main.c
|
||||||
|
* md2teach
|
||||||
|
*
|
||||||
|
* Created by Jeremy Rand on 2021-04-13.
|
||||||
|
* Copyright (c) 2021 ___ORGANIZATIONNAME___. All rights reserved.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
printf("Hello, world!\n");
|
||||||
|
return 0;
|
||||||
|
}
|
125
md2teach/make/head.mk
Normal file
125
md2teach/make/head.mk
Normal file
@ -0,0 +1,125 @@
|
|||||||
|
#
|
||||||
|
# head.mk
|
||||||
|
#
|
||||||
|
|
||||||
|
ORCA_HOME := $(HOME)/orca
|
||||||
|
|
||||||
|
ORCA_BINDIR = /usr/local/bin
|
||||||
|
|
||||||
|
export ORCA=$(ORCA_BINDIR)/orca
|
||||||
|
|
||||||
|
TARGETTYPE=shell
|
||||||
|
|
||||||
|
ASSEMBLER=orcam
|
||||||
|
|
||||||
|
MERLIN_DIR=/usr/local
|
||||||
|
export MERLIN_BIN=$(MERLIN_DIR)/bin/Merlin32
|
||||||
|
export MERLIN_LIB=$(MERLIN_DIR)/lib/Merlin
|
||||||
|
MERLIN_ASM=make/merlin-asm
|
||||||
|
|
||||||
|
SRCDIRS=.
|
||||||
|
|
||||||
|
# Check for Xcode build variables for the locations of build outputs and fall back
|
||||||
|
# to the current directory if not set.
|
||||||
|
ifeq ($(OBJECT_FILE_DIR),)
|
||||||
|
OBJDIR=.
|
||||||
|
else
|
||||||
|
export OBJECT_FILE_DIR
|
||||||
|
OBJDIR=$(OBJECT_FILE_DIR)
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(DERIVED_SOURCES_DIR),)
|
||||||
|
GENDIR=.
|
||||||
|
else
|
||||||
|
export DERIVED_SOURCES_DIR
|
||||||
|
GENDIR=$(DERIVED_SOURCES_DIR)
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(TARGET_BUILD_DIR),)
|
||||||
|
TARGETDIR=.
|
||||||
|
else
|
||||||
|
export TARGET_BUILD_DIR
|
||||||
|
TARGETDIR=$(TARGET_BUILD_DIR)
|
||||||
|
endif
|
||||||
|
|
||||||
|
COMPILE=make/orca-cc
|
||||||
|
CFLAGS= -P -I
|
||||||
|
ROOTCFILE=main.c
|
||||||
|
DEFINES=
|
||||||
|
INCLUDE_PATHS=
|
||||||
|
|
||||||
|
REZ=make/orca-rez
|
||||||
|
REZFLAGS=
|
||||||
|
|
||||||
|
MACGEN=make/orca-macgen
|
||||||
|
MACGENFLAGS=-P
|
||||||
|
MACGENMACROS=13/ORCAInclude/m=
|
||||||
|
|
||||||
|
ASSEMBLE=make/orca-asm
|
||||||
|
ASMFLAGS=-P
|
||||||
|
|
||||||
|
LINK=$(ORCA) link
|
||||||
|
LDFLAGS=-P
|
||||||
|
|
||||||
|
CHTYP=$(ORCA) chtyp
|
||||||
|
|
||||||
|
RM=rm -f
|
||||||
|
CP=cp
|
||||||
|
MV=mv
|
||||||
|
MKDIR=mkdir -p
|
||||||
|
|
||||||
|
DESKTOP_RES_MODE=640
|
||||||
|
MESSAGE_CENTER=0
|
||||||
|
|
||||||
|
GSPLUS=/Applications/GSplus.app/Contents/MacOS/gsplus
|
||||||
|
GSPLUSARGS=
|
||||||
|
GSPORT=/Applications/GSport/GSport.app/Contents/MacOS/GSport
|
||||||
|
GSPORTARGS=
|
||||||
|
MAME=/Applications/Ample.app/Contents/MacOS/mame64
|
||||||
|
MAMELIB=$(HOME)/Library/Application Support/Ample
|
||||||
|
MAMEARGS=apple2gs -skip_gameinfo -mouse -window -resolution 1408x1056 -ramsize 4M -sl7 cffa202
|
||||||
|
|
||||||
|
export GSPLUS
|
||||||
|
export GSPLUSARGS
|
||||||
|
export GSPORT
|
||||||
|
export GSPORTARGS
|
||||||
|
export MAME
|
||||||
|
export MAMELIB
|
||||||
|
export MAMEARGS
|
||||||
|
|
||||||
|
ifneq (,$(wildcard $GSPLUS))
|
||||||
|
EMULATOR=gsplus
|
||||||
|
else ifneq (,$(wildcard $MAME))
|
||||||
|
EMULATOR=mame
|
||||||
|
else ifneq (,$(wildcard $GSPORT))
|
||||||
|
EMULATOR=gsport
|
||||||
|
else
|
||||||
|
EMULATOR=gsplus
|
||||||
|
endif
|
||||||
|
|
||||||
|
export EMULATOR
|
||||||
|
|
||||||
|
BOOTIMAGE=system601.2mg
|
||||||
|
export BOOTIMAGE
|
||||||
|
|
||||||
|
COPYDIRS=
|
||||||
|
export COPYDIRS
|
||||||
|
COPYBOOTDIRS=
|
||||||
|
export COPYBOOTDIRS
|
||||||
|
|
||||||
|
XCODE_PATH=/Applications/Xcode.app
|
||||||
|
XCODE_INFO=$(XCODE_PATH)/Contents/Info.plist
|
||||||
|
|
||||||
|
ORCAM_PLUGIN_PATH=$(HOME)/Library/Developer/Xcode/Plug-ins/OrcaM.ideplugin
|
||||||
|
ORCAM_PLUGIN_INFO=$(ORCAM_PLUGIN_PATH)/Contents/Info.plist
|
||||||
|
|
||||||
|
XCODE_PLUGIN_COMPATIBILITY=DVTPlugInCompatibilityUUID
|
||||||
|
|
||||||
|
|
||||||
|
.PHONY: all gen genclean
|
||||||
|
|
||||||
|
all:
|
||||||
|
$(MKDIR) $(OBJDIR) $(GENDIR) $(TARGETDIR)
|
||||||
|
@make gen
|
||||||
|
@make build
|
||||||
|
|
102
md2teach/make/orca-asm
Executable file
102
md2teach/make/orca-asm
Executable file
@ -0,0 +1,102 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
TMPFILE=/tmp/orca-macgen.$$
|
||||||
|
ERROUTPUT=/tmp/orca-asm-errs.$$
|
||||||
|
|
||||||
|
FILENAME="$1"
|
||||||
|
shift
|
||||||
|
|
||||||
|
DESTBASENAME="$1"
|
||||||
|
shift
|
||||||
|
|
||||||
|
if echo $FILENAME | grep -v '\.s$' > /dev/null
|
||||||
|
then
|
||||||
|
echo Expected second argument to be a *.s file but got $FILENAME
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
SRCBASENAME=`echo $FILENAME | sed 's/\.s$//'`
|
||||||
|
SRCMACROSNAME="${SRCBASENAME}.macros"
|
||||||
|
SRCROOTNAME="${SRCBASENAME}.ROOT"
|
||||||
|
SRCOBJNAME="${SRCBASENAME}.a"
|
||||||
|
|
||||||
|
DESTMACROSNAME="${DESTBASENAME}.macros"
|
||||||
|
DESTDEPSNAME="${DESTBASENAME}.macros.d"
|
||||||
|
DESTROOTNAME="${DESTBASENAME}.ROOT"
|
||||||
|
DESTOBJNAME="${DESTBASENAME}.a"
|
||||||
|
|
||||||
|
$ORCA --trace-gsos macgen $MACGENFLAGS "$FILENAME" "$SRCMACROSNAME" $MACGENMACROS < /dev/null 2> $TMPFILE
|
||||||
|
RESULT=$?
|
||||||
|
|
||||||
|
sed '/^[A-Za-z][A-Za-z]*(.*)$/d' $TMPFILE >&2
|
||||||
|
|
||||||
|
if [ "$RESULT" -ne 0 ]
|
||||||
|
then
|
||||||
|
rm -f "$TMPFILE"
|
||||||
|
rm -f "$SRCMACROSNAME"
|
||||||
|
exit $RESULT
|
||||||
|
fi
|
||||||
|
|
||||||
|
DEPS=`awk '
|
||||||
|
/^FastFileLoad/ {
|
||||||
|
sub(/^FastFileLoad\(/, "");
|
||||||
|
sub(/\)$/, "");
|
||||||
|
print}' $TMPFILE | sort -u | while read FILE
|
||||||
|
do
|
||||||
|
if [ -f "$FILE" ]
|
||||||
|
then
|
||||||
|
echo $FILE
|
||||||
|
fi
|
||||||
|
done | tr '\012' ' '`
|
||||||
|
|
||||||
|
rm -f $TMPFILE
|
||||||
|
|
||||||
|
DIRNAME=`dirname $FILENAME`
|
||||||
|
BASENAME=`basename $FILENAME .s`
|
||||||
|
|
||||||
|
pushd "$DIRNAME" > /dev/null
|
||||||
|
$ORCA assemble $* keep="${BASENAME}" "${BASENAME}.s" 2> $ERROUTPUT
|
||||||
|
RESULT=$?
|
||||||
|
popd > /dev/null
|
||||||
|
|
||||||
|
if [ -s $ERROUTPUT ]
|
||||||
|
then
|
||||||
|
RESULT=1
|
||||||
|
awk '
|
||||||
|
{
|
||||||
|
print $0
|
||||||
|
}
|
||||||
|
|
||||||
|
/^Error /{
|
||||||
|
$1=""
|
||||||
|
$2=""
|
||||||
|
LINENO=$3
|
||||||
|
$3=""
|
||||||
|
printf("%s/%s:%d:0: error: %s\n", PWD, FILE, LINENO, $0)
|
||||||
|
}
|
||||||
|
' "PWD=`pwd`" "FILE=${BASENAME}.s" $ERROUTPUT
|
||||||
|
fi
|
||||||
|
rm -f $ERROUTPUT
|
||||||
|
|
||||||
|
if [ "$RESULT" -ne 0 ]
|
||||||
|
then
|
||||||
|
rm -f "$SRCROOTNAME"
|
||||||
|
rm -f "$SRCMACROSNAME"
|
||||||
|
rm -f "$SRCOBJNAME"
|
||||||
|
rm -f "$DESTROOTNAME"
|
||||||
|
rm -f "$DESTMACROSNAME"
|
||||||
|
rm -f "$DESTOBJNAME"
|
||||||
|
rm -f "$DESTDEPSNAME"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir -p `dirname "$DESTROOTNAME"`
|
||||||
|
mv -f "$SRCROOTNAME" "$DESTROOTNAME" 2> /dev/null
|
||||||
|
mv -f "$SRCMACROSNAME" "$DESTMACROSNAME" 2> /dev/null
|
||||||
|
mv -f "$SRCOBJNAME" "$DESTOBJNAME" 2> /dev/null
|
||||||
|
|
||||||
|
cat > $DESTDEPSNAME << EOF
|
||||||
|
$DESTROOTNAME: $DEPS
|
||||||
|
EOF
|
||||||
|
|
||||||
|
exit 0
|
95
md2teach/make/orca-cc
Executable file
95
md2teach/make/orca-cc
Executable file
@ -0,0 +1,95 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
STDOUTPUT=/tmp/orca-cc-std.$$
|
||||||
|
ERROUTPUT=/tmp/orca-cc-errs.$$
|
||||||
|
|
||||||
|
FILENAME="$1"
|
||||||
|
shift
|
||||||
|
|
||||||
|
DESTBASENAME="$1"
|
||||||
|
shift
|
||||||
|
|
||||||
|
if echo $FILENAME | grep -v '\.c$' > /dev/null
|
||||||
|
then
|
||||||
|
echo Expected first argument to be a *.c file but got $FILENAME
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
CCARGS=""
|
||||||
|
COMPILEARGS=""
|
||||||
|
for ARG in $*
|
||||||
|
do
|
||||||
|
if echo $ARG | grep '^-[id]' > /dev/null
|
||||||
|
then
|
||||||
|
CCARGS="$CCARGS cc=$ARG"
|
||||||
|
else
|
||||||
|
COMPILEARGS="$COMPILEARGS $ARG"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
SRCBASENAME=`echo "$FILENAME" | sed 's/\.c$//'`
|
||||||
|
SRCOBJNAME="${SRCBASENAME}.a"
|
||||||
|
SRCROOTNAME="${SRCBASENAME}.root"
|
||||||
|
|
||||||
|
DESTDEPSNAME="${DESTBASENAME}.d"
|
||||||
|
DESTOBJNAME="${DESTBASENAME}.a"
|
||||||
|
DESTROOTNAME="${DESTBASENAME}.root"
|
||||||
|
|
||||||
|
$ORCA --trace-gsos compile $COMPILEARGS "$FILENAME" keep="${SRCBASENAME}" $CCARGS > $STDOUTPUT 2> $ERROUTPUT
|
||||||
|
RESULT=$?
|
||||||
|
|
||||||
|
awk '
|
||||||
|
{
|
||||||
|
print $0
|
||||||
|
}
|
||||||
|
|
||||||
|
$1 ~ /^[0-9][0-9]*$/ {
|
||||||
|
LINENO=$1
|
||||||
|
}
|
||||||
|
|
||||||
|
/^ *\^/ {
|
||||||
|
sub(/^ *\^/, "", $0)
|
||||||
|
printf("%s/%s:%d:0: error: %s\n", PWD, FILE, LINENO, $0)
|
||||||
|
}
|
||||||
|
' "PWD=`pwd`" "FILE=$FILENAME" $STDOUTPUT
|
||||||
|
|
||||||
|
|
||||||
|
sed '/^[A-Za-z][A-Za-z]*(.*)$/d' $ERROUTPUT >&2
|
||||||
|
|
||||||
|
if [ "$RESULT" -ne 0 ]
|
||||||
|
then
|
||||||
|
rm -f $ERROUTPUT
|
||||||
|
rm -f $STDOUTPUT
|
||||||
|
rm -f $SRCOBJNAME
|
||||||
|
rm -f $SRCROOTNAME
|
||||||
|
exit $RESULT
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir -p `dirname "$DESTOBJNAME"`
|
||||||
|
mv -f "$SRCOBJNAME" "$DESTOBJNAME" 2> /dev/null
|
||||||
|
mv -f "$SRCROOTNAME" "$DESTROOTNAME" 2> /dev/null
|
||||||
|
|
||||||
|
DEPS=`awk '
|
||||||
|
/^FastFileLoad/ {
|
||||||
|
sub(/^FastFileLoad\(/, "");
|
||||||
|
sub(/\)$/, "");
|
||||||
|
print}' $ERROUTPUT | sort -u | while read FILE
|
||||||
|
do
|
||||||
|
if [ -f "$FILE" ]
|
||||||
|
then
|
||||||
|
echo $FILE
|
||||||
|
fi
|
||||||
|
done | tr '\012' ' '`
|
||||||
|
|
||||||
|
rm -f $ERROUTPUT
|
||||||
|
rm -f $STDOUTPUT
|
||||||
|
|
||||||
|
# We add a dependency for both the .o and the .root file. If this is the
|
||||||
|
# main.c file being compiled, we need the dependency on the .root file.
|
||||||
|
cat > $DESTDEPSNAME << EOF
|
||||||
|
$DESTOBJNAME: $DEPS
|
||||||
|
|
||||||
|
$DESTROOTNAME: $DEPS
|
||||||
|
EOF
|
||||||
|
|
||||||
|
exit 0
|
68
md2teach/make/orca-rez
Executable file
68
md2teach/make/orca-rez
Executable file
@ -0,0 +1,68 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
ERROUTPUT=/tmp/orca-rez-err.$$
|
||||||
|
|
||||||
|
FILENAME="$1"
|
||||||
|
shift
|
||||||
|
|
||||||
|
DESTBASENAME="$1"
|
||||||
|
shift
|
||||||
|
|
||||||
|
if echo $FILENAME | grep -v '\.rez$' > /dev/null
|
||||||
|
then
|
||||||
|
echo Expected first argument to be a *.rez file but got $FILENAME
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
SRCBASENAME=`echo $FILENAME | sed 's/\.rez$//'`
|
||||||
|
SRCOBJNAME="${SRCBASENAME}.r"
|
||||||
|
|
||||||
|
DESTDEPSNAME="${DESTBASENAME}.rez.d"
|
||||||
|
DESTOBJNAME="${DESTBASENAME}.r"
|
||||||
|
|
||||||
|
$ORCA --trace-gsos compile "$@" keep="${SRCOBJNAME}" "$FILENAME" 2> $ERROUTPUT
|
||||||
|
RESULT=$?
|
||||||
|
|
||||||
|
awk '
|
||||||
|
/^[A-Za-z][A-Za-z]*\(.*\)$/ {
|
||||||
|
next
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
print
|
||||||
|
}
|
||||||
|
|
||||||
|
/^File [^ ]*; Line [0-9][0-9]*;/ {
|
||||||
|
sub(/;/,"",$4)
|
||||||
|
LINENO=$4
|
||||||
|
sub(/^File [^ ]*; Line [0-9][0-9]*/, "", $0)
|
||||||
|
printf("%s/%s:%d:0: error: %s\n", PWD, FILE, LINENO, $0)
|
||||||
|
}
|
||||||
|
' "PWD=`pwd`" "FILE=$FILENAME" $ERROUTPUT >&2
|
||||||
|
|
||||||
|
if [ "$RESULT" -ne 0 ]
|
||||||
|
then
|
||||||
|
rm -f $ERROUTPUT
|
||||||
|
rm -f $SRCOBJNAME
|
||||||
|
exit $RESULT
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir -p `dirname "$DESTOBJNAME"`
|
||||||
|
mv -f "$SRCOBJNAME" "$DESTOBJNAME" 2> /dev/null
|
||||||
|
|
||||||
|
DEPS=`awk '
|
||||||
|
/^FastFileLoad/ {
|
||||||
|
sub(/^FastFileLoad\(/, "");
|
||||||
|
sub(/\)$/, "");
|
||||||
|
print}' $ERROUTPUT | sort -u | while read FILE
|
||||||
|
do
|
||||||
|
if [ -f "$FILE" ]
|
||||||
|
then
|
||||||
|
echo $FILE
|
||||||
|
fi
|
||||||
|
done`
|
||||||
|
|
||||||
|
echo $DESTOBJNAME: $DEPS > $DESTDEPSNAME
|
||||||
|
rm -f $ERROUTPUT
|
||||||
|
|
||||||
|
exit 0
|
230
md2teach/make/tail.mk
Normal file
230
md2teach/make/tail.mk
Normal file
@ -0,0 +1,230 @@
|
|||||||
|
#
|
||||||
|
# tail.mk
|
||||||
|
#
|
||||||
|
|
||||||
|
export PATH := $(PATH):$(ORCA_BIN)
|
||||||
|
|
||||||
|
CWD=$(shell pwd)
|
||||||
|
|
||||||
|
DISKIMAGE=$(TARGETDIR)/$(PGM).2mg
|
||||||
|
ARCHIVE=$(TARGETDIR)/$(PGM).shk
|
||||||
|
DESTBOOTIMAGE=$(TARGETDIR)/$(BOOTIMAGE)
|
||||||
|
BUILDTARGET=$(DISKIMAGE)
|
||||||
|
EXECTARGET=executeGUI
|
||||||
|
BOOTCOPYPATH=
|
||||||
|
AUXTYPE=
|
||||||
|
CFLAGS+=-i$(GENDIR)
|
||||||
|
|
||||||
|
vpath $(GENDIR)
|
||||||
|
|
||||||
|
ifeq ($(TARGETTYPE),shell)
|
||||||
|
FILETYPE=exe
|
||||||
|
EXECTARGET=executeShell
|
||||||
|
BUILDTARGET=$(TARGETDIR)/$(PGM)
|
||||||
|
else ifeq ($(TARGETTYPE),desktop)
|
||||||
|
FILETYPE=s16
|
||||||
|
ifeq ($(MESSAGE_CENTER),1)
|
||||||
|
AUXTYPE=-a 0x0000db07
|
||||||
|
else
|
||||||
|
AUXTYPE=-a 0x0000db03
|
||||||
|
endif
|
||||||
|
CFLAGS+=-dMESSAGE_CENTER=$(MESSAGE_CENTER)
|
||||||
|
REZFLAGS+=rez='-d DESKTOP_RES_MODE=$(DESKTOP_RES_MODE)'
|
||||||
|
REZFLAGS+=rez='-d MESSAGE_CENTER=$(MESSAGE_CENTER)'
|
||||||
|
else ifeq ($(TARGETTYPE),cda)
|
||||||
|
FILETYPE=cda
|
||||||
|
BOOTCOPYPATH=System/Desk.Accs
|
||||||
|
else ifeq ($(TARGETTYPE),cdev)
|
||||||
|
BINTARGET=$(TARGETDIR)/$(PGM).bin
|
||||||
|
FILETYPE=199
|
||||||
|
BOOTCOPYPATH=System/CDevs
|
||||||
|
REZFLAGS+=rez='-d BINTARGET="$(BINTARGET)"'
|
||||||
|
else ifeq ($(TARGETTYPE),nba)
|
||||||
|
FILETYPE=exe
|
||||||
|
BUILDTARGET=$(TARGETDIR)/$(PGM)
|
||||||
|
else ifeq ($(TARGETTYPE),nda)
|
||||||
|
FILETYPE=nda
|
||||||
|
BOOTCOPYPATH=System/Desk.Accs
|
||||||
|
else ifeq ($(TARGETTYPE),xcmd)
|
||||||
|
FILETYPE=exe
|
||||||
|
BUILDTARGET=$(TARGETDIR)/$(PGM)
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
ASM_SRCS=$(patsubst $(GENDIR)/%, %, $(patsubst ./%, %, $(wildcard $(addsuffix /*.s, $(SRCDIRS)))))
|
||||||
|
|
||||||
|
ifeq ($(ASSEMBLER),orcam)
|
||||||
|
ASM_MACROS=$(patsubst %.s, $(OBJDIR)/%.macros, $(ASM_SRCS))
|
||||||
|
ASM_DEPS=$(patsubst %.s, $(OBJDIR)/%.macros.d, $(ASM_SRCS))
|
||||||
|
ASM_ROOTS=$(patsubst %.s, $(OBJDIR)/%.ROOT, $(ASM_SRCS))
|
||||||
|
ASM_OBJS=$(patsubst %.s, $(OBJDIR)/%.a, $(ASM_SRCS))
|
||||||
|
|
||||||
|
ifeq ($(wildcard $(ROOTCFILE)),)
|
||||||
|
ROOTCFILE=
|
||||||
|
endif
|
||||||
|
|
||||||
|
C_ROOTS=$(patsubst %.c, $(OBJDIR)/%.root, $(ROOTCFILE))
|
||||||
|
C_SRCS+=$(filter-out $(ROOTCFILE), $(patsubst $(GENDIR)/%, %, $(patsubst ./%, %, $(wildcard $(addsuffix /*.c, $(SRCDIRS))))))
|
||||||
|
C_OBJS=$(patsubst %.c, $(OBJDIR)/%.a, $(C_SRCS))
|
||||||
|
C_DEPS=$(patsubst %.c, $(OBJDIR)/%.d, $(ROOTCFILE)) $(patsubst %.c, $(OBJDIR)/%.d, $(C_SRCS))
|
||||||
|
endif
|
||||||
|
|
||||||
|
REZ_SRCS=$(patsubst $(GENDIR)/%, %, $(patsubst ./%, %, $(wildcard $(addsuffix /*.rez, $(SRCDIRS)))))
|
||||||
|
REZ_DEPS=$(patsubst %.rez, $(OBJDIR)/%.rez.d, $(REZ_SRCS))
|
||||||
|
REZ_OBJS=$(patsubst %.rez, $(OBJDIR)/%.r, $(REZ_SRCS))
|
||||||
|
|
||||||
|
ifneq ($(firstword $(REZ_SRCS)), $(lastword $(REZ_SRCS)))
|
||||||
|
$(error Only a single resource file supported, found $(REZ_SRCS))
|
||||||
|
endif
|
||||||
|
|
||||||
|
BUILD_OBJS=$(C_ROOTS) $(C_OBJS) $(ASM_ROOTS)
|
||||||
|
ifeq ($(BINTARGET),)
|
||||||
|
BUILD_OBJS+=$(REZ_OBJS)
|
||||||
|
endif
|
||||||
|
BUILD_OBJS_NOSUFFIX=$(C_ROOTS:.root=) $(C_OBJS:.a=) $(ASM_ROOTS:.ROOT=)
|
||||||
|
|
||||||
|
ALL_OBJS=$(C_ROOTS:.root=.a) $(C_OBJS) $(ASM_OBJS) $(REZ_OBJS)
|
||||||
|
ALL_ROOTS=$(C_ROOTS) $(C_OBJS:.a=.root) $(ASM_ROOTS)
|
||||||
|
ALL_DEPS=$(C_DEPS) $(ASM_DEPS) $(REZ_DEPS)
|
||||||
|
|
||||||
|
EXECCMD=
|
||||||
|
|
||||||
|
.PHONY: build execute executeShell executeGUI clean xcodefix
|
||||||
|
|
||||||
|
.PRECIOUS: $(ASM_MACROS)
|
||||||
|
|
||||||
|
build: $(BUILDTARGET)
|
||||||
|
|
||||||
|
gen: xcodefix
|
||||||
|
|
||||||
|
xcodefix:
|
||||||
|
[ "`uname`" = Darwin ] && defaults write "$(ORCAM_PLUGIN_INFO)" $(XCODE_PLUGIN_COMPATIBILITY)s -array `defaults read "$(XCODE_INFO)" $(XCODE_PLUGIN_COMPATIBILITY)` || true
|
||||||
|
|
||||||
|
clean: genclean
|
||||||
|
$(RM) "$(TARGETDIR)/$(PGM)" $(BINTARGET)
|
||||||
|
$(RM) $(ALL_OBJS)
|
||||||
|
$(RM) $(ALL_ROOTS)
|
||||||
|
$(RM) $(ALL_DEPS)
|
||||||
|
$(RM) $(ASM_MACROS)
|
||||||
|
$(RM) "$(DISKIMAGE)"
|
||||||
|
$(RM) "$(DESTBOOTIMAGE)"
|
||||||
|
$(RM) "$(ARCHIVE)"
|
||||||
|
|
||||||
|
createPackage:
|
||||||
|
pkg/createPackage
|
||||||
|
|
||||||
|
cleanMacCruft:
|
||||||
|
rm -rf pkg
|
||||||
|
|
||||||
|
|
||||||
|
ifeq ($(BINTARGET),)
|
||||||
|
ifeq ($(ASSEMBLER),orcam)
|
||||||
|
|
||||||
|
# This is a standard ORCA build where we generate the resources if any and
|
||||||
|
# then link the binary over that same file creating the resource fork first
|
||||||
|
# and the data fork second.
|
||||||
|
$(TARGETDIR)/$(PGM): $(BUILD_OBJS)
|
||||||
|
$(MKDIR) $(TARGETDIR)
|
||||||
|
ifneq ($(REZ_OBJS),)
|
||||||
|
$(RM) $(TARGETDIR)/$(PGM)
|
||||||
|
$(CP) $(REZ_OBJS) $(TARGETDIR)/$(PGM)
|
||||||
|
endif
|
||||||
|
cd $(OBJDIR); $(LINK) $(LDFLAGS) $(patsubst $(OBJDIR)/%, %, $(BUILD_OBJS_NOSUFFIX)) keep="$(abspath $(TARGETDIR)/$(PGM))"
|
||||||
|
$(CHTYP) -t $(FILETYPE) $(AUXTYPE) $(TARGETDIR)/$(PGM)
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(ASSEMBLER),merlin)
|
||||||
|
# This is a standard Merlin build where we generate the resources if any and
|
||||||
|
# then link the binary over that same file creating the resource fork first
|
||||||
|
# and the data fork second.
|
||||||
|
|
||||||
|
$(TARGETDIR)/$(PGM): $(BUILD_OBJS) $(ASM_SRCS)
|
||||||
|
$(MKDIR) $(TARGETDIR)
|
||||||
|
$(RM) $(TARGETDIR)/$(PGM)
|
||||||
|
$(MERLIN_ASM) linkscript.s $(PGM) $(TARGETDIR)/$(PGM)
|
||||||
|
ifneq ($(REZ_OBJS),)
|
||||||
|
$(CP) $(REZ_OBJS)/..namedfork/rsrc $(TARGETDIR)/$(PGM)/..namedfork/rsrc
|
||||||
|
endif
|
||||||
|
$(CHTYP) -t $(FILETYPE) $(AUXTYPE) $(TARGETDIR)/$(PGM)
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
ifeq ($(ASSEMBLER),orcam)
|
||||||
|
# This is a special build for CDevs under ORCA where we build the binary into
|
||||||
|
# a $(PGM).bin file and then build the resources into the $(PGM) target. The
|
||||||
|
# resource compile will read the $(PGM).bin binary and load it into the
|
||||||
|
# resources also.
|
||||||
|
$(BINTARGET): $(BUILD_OBJS)
|
||||||
|
cd $(OBJDIR); $(LINK) $(LDFLAGS) $(patsubst $(OBJDIR)/%, %, $(BUILD_OBJS_NOSUFFIX)) keep="$(abspath $(BINTARGET))"
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(ASSEMBLER),merlin)
|
||||||
|
# This is a special build for CDevs under Merlin where we build the binary into
|
||||||
|
# a $(PGM).bin file and then build the resources into the $(PGM) target. The
|
||||||
|
# resource compile will read the $(PGM).bin binary and load it into the
|
||||||
|
# resources # also.
|
||||||
|
$(BINTARGET): $(BUILD_OBJS) $(ASM_SRCS)
|
||||||
|
$(MERLIN_ASM) linkscript.s $(PGM) $(BINTARGET)
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
$(REZ_OBJS): $(BINTARGET)
|
||||||
|
|
||||||
|
$(TARGETDIR)/$(PGM): $(REZ_OBJS)
|
||||||
|
$(MKDIR) $(TARGETDIR)
|
||||||
|
$(RM) $(TARGETDIR)/$(PGM)
|
||||||
|
$(CP) $(REZ_OBJS) $(TARGETDIR)/$(PGM)
|
||||||
|
$(CHTYP) -t $(FILETYPE) $(AUXTYPE) $(TARGETDIR)/$(PGM)
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
$(DISKIMAGE): $(TARGETDIR)/$(PGM) make/empty.2mg make/$(BOOTIMAGE)
|
||||||
|
make/createDiskImage "$(DISKIMAGE)" $(DESTBOOTIMAGE) "$(TARGETDIR)/$(PGM)" $(BOOTCOPYPATH)
|
||||||
|
|
||||||
|
execute: $(EXECTARGET)
|
||||||
|
|
||||||
|
executeGUI: all
|
||||||
|
make/launchEmulator "$(DISKIMAGE)" "$(DESTBOOTIMAGE)"
|
||||||
|
|
||||||
|
executeShell: all
|
||||||
|
$(ORCA) $(TARGETDIR)/$(PGM)
|
||||||
|
|
||||||
|
$(OBJDIR)/%.a: %.c
|
||||||
|
$(COMPILE) $< $(@:.a=) $(CFLAGS) --noroot
|
||||||
|
|
||||||
|
$(OBJDIR)/%.a: $(GENDIR)/%.c
|
||||||
|
$(COMPILE) $< $(@:.a=) $(CFLAGS) --noroot
|
||||||
|
|
||||||
|
$(OBJDIR)/%.root: %.c
|
||||||
|
$(COMPILE) $< $(@:.root=) $(CFLAGS)
|
||||||
|
|
||||||
|
$(OBJDIR)/%.root: $(GENDIR)/%.c
|
||||||
|
$(COMPILE) $< $(@:.root=) $(CFLAGS)
|
||||||
|
|
||||||
|
$(OBJDIR)/%.ROOT: %.s
|
||||||
|
MACGENFLAGS="$(MACGENFLAGS)" MACGENMACROS="$(MACGENMACROS)" $(ASSEMBLE) $< $(@:.ROOT=) $(ASMFLAGS)
|
||||||
|
|
||||||
|
$(OBJDIR)/%.ROOT: $(GENDIR)/%.s
|
||||||
|
MACGENFLAGS="$(MACGENFLAGS)" MACGENMACROS="$(MACGENMACROS)" $(ASSEMBLE) $< $(@:.ROOT=) $(ASMFLAGS)
|
||||||
|
|
||||||
|
$(OBJDIR)/%.r: %.rez
|
||||||
|
$(REZ) $< $(@:.r=) $(REZFLAGS)
|
||||||
|
ifneq ($(RLINT_PATH),)
|
||||||
|
$(ORCA) $(RLINT_PATH) $@
|
||||||
|
endif
|
||||||
|
|
||||||
|
$(OBJDIR)/%.r: $(GENDIR)/%.rez
|
||||||
|
$(REZ) $< $(@:.r=) $(REZFLAGS)
|
||||||
|
ifneq ($(RLINT_PATH),)
|
||||||
|
$(ORCA) $(RLINT_PATH) $@
|
||||||
|
endif
|
||||||
|
|
||||||
|
$(OBJS): Makefile
|
||||||
|
|
||||||
|
# Include the C and rez dependencies which were generated from the last build
|
||||||
|
# so we recompile correctly on .h file changes.
|
||||||
|
-include $(ALL_DEPS)
|
Loading…
Reference in New Issue
Block a user