Cocoa Port:

- Add an XCode 4 project with a Mac OS X v10.7 build target.
- Update build settings for XCode projects: Disable symbol strip, enable dead code strip, enable prebinding.
- Include OpenGL gl.h header to fix compiling with Mac OS X v10.7.

libfat:
- Don't define strnlen() on Mac OS X v10.7.
This commit is contained in:
rogerman 2012-02-09 21:33:57 +00:00
parent 062f54806c
commit 8fd633a0c9
9 changed files with 2718 additions and 15 deletions

View File

@ -2114,6 +2114,7 @@
isa = XCBuildConfiguration;
buildSettings = {
GCC_DYNAMIC_NO_PIC = NO;
GCC_INLINES_ARE_PRIVATE_EXTERN = NO;
GCC_PREPROCESSOR_DEFINITIONS = GDB_STUB;
};
name = Debug;
@ -2123,7 +2124,6 @@
buildSettings = {
GCC_PREPROCESSOR_DEFINITIONS = GDB_STUB;
SKIP_INSTALL = NO;
STRIP_INSTALLED_PRODUCT = YES;
};
name = Release;
};
@ -2152,7 +2152,6 @@
);
GCC_VERSION = 4.0;
SDKROOT = macosx10.4;
STRIP_INSTALLED_PRODUCT = YES;
VALID_ARCHS = "i386 ppc ppc7400 ppc970";
};
name = Release;
@ -2179,7 +2178,6 @@
);
SDKROOT = macosx10.6;
SKIP_INSTALL = NO;
STRIP_INSTALLED_PRODUCT = YES;
};
name = Release;
};
@ -2195,7 +2193,6 @@
C01FCF4C08A954540054247B /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
STRIP_INSTALLED_PRODUCT = YES;
};
name = Release;
};
@ -2229,7 +2226,6 @@
IBC_STRIP_NIBS = NO;
INFOPLIST_FILE = "Info (Legacy Debug).plist";
ONLY_ACTIVE_ARCH = YES;
PREBINDING = NO;
PRODUCT_NAME = "DeSmuME (Debug)";
SDKROOT = macosx10.5;
SKIP_INSTALL = YES;
@ -2247,6 +2243,7 @@
ppc,
ppc64,
);
COPY_PHASE_STRIP = NO;
GCC_ALTIVEC_EXTENSIONS = YES;
GCC_AUTO_VECTORIZATION = YES;
GCC_DYNAMIC_NO_PIC = YES;
@ -2272,9 +2269,9 @@
GCC_WARN_UNUSED_VARIABLE = YES;
INFOPLIST_FILE = "Info (Legacy).plist";
ONLY_ACTIVE_ARCH = NO;
PREBINDING = NO;
PRODUCT_NAME = DeSmuME;
SDKROOT = macosx10.5;
STRIP_INSTALLED_PRODUCT = NO;
VALIDATE_PRODUCT = YES;
};
name = Release;

View File

@ -1841,7 +1841,7 @@
i386,
x86_64,
);
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_INLINES_ARE_PRIVATE_EXTERN = NO;
SDKROOT = macosx10.6;
VALID_ARCHS = "i386 x86_64";
};
@ -1854,10 +1854,8 @@
i386,
x86_64,
);
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
SDKROOT = macosx10.6;
SKIP_INSTALL = NO;
STRIP_INSTALLED_PRODUCT = YES;
VALID_ARCHS = "i386 x86_64";
};
name = Release;
@ -1865,14 +1863,14 @@
C01FCF4B08A954540054247B /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
GCC_INLINES_ARE_PRIVATE_EXTERN = NO;
SKIP_INSTALL = NO;
};
name = Debug;
};
C01FCF4C08A954540054247B /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
SKIP_INSTALL = NO;
STRIP_INSTALLED_PRODUCT = YES;
};
name = Release;
};
@ -1887,6 +1885,7 @@
ppc64,
);
COPY_PHASE_STRIP = NO;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = dwarf;
GCC_ALTIVEC_EXTENSIONS = YES;
GCC_DYNAMIC_NO_PIC = NO;
@ -1914,7 +1913,6 @@
IBC_FLATTEN_NIBS = NO;
INFOPLIST_FILE = "Info (Debug).plist";
ONLY_ACTIVE_ARCH = YES;
PREBINDING = NO;
PRODUCT_NAME = "DeSmuME (Debug)";
SDKROOT = macosx10.5;
SKIP_INSTALL = YES;
@ -1932,6 +1930,8 @@
ppc,
ppc64,
);
COPY_PHASE_STRIP = NO;
DEAD_CODE_STRIPPING = YES;
ENABLE_OPENMP_SUPPORT = NO;
GCC_ALTIVEC_EXTENSIONS = YES;
GCC_AUTO_VECTORIZATION = YES;
@ -1962,10 +1962,9 @@
GCC_WARN_SIGN_COMPARE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
INFOPLIST_FILE = Info.plist;
LLVM_LTO = NO;
PREBINDING = NO;
PRODUCT_NAME = DeSmuME;
SDKROOT = macosx10.5;
STRIP_INSTALLED_PRODUCT = NO;
VALIDATE_PRODUCT = YES;
};
name = Release;

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
version = "1.0">
<FileRef
location = "self:DeSmuME (XCode 4).xcodeproj">
</FileRef>
</Workspace>

View File

@ -0,0 +1,84 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D1107260486CEB800E47090"
BuildableName = "DeSmuME.app"
BlueprintName = "DeSmuME (v10.5 Leopard)"
ReferencedContainer = "container:DeSmuME (XCode 4).xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Debug">
<Testables>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D1107260486CEB800E47090"
BuildableName = "DeSmuME.app"
BlueprintName = "DeSmuME (v10.5 Leopard)"
ReferencedContainer = "container:DeSmuME (XCode 4).xcodeproj">
</BuildableReference>
</MacroExpansion>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Debug"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D1107260486CEB800E47090"
BuildableName = "DeSmuME.app"
BlueprintName = "DeSmuME (v10.5 Leopard)"
ReferencedContainer = "container:DeSmuME (XCode 4).xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Release"
debugDocumentVersioning = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D1107260486CEB800E47090"
BuildableName = "DeSmuME.app"
BlueprintName = "DeSmuME (v10.5 Leopard)"
ReferencedContainer = "container:DeSmuME (XCode 4).xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -0,0 +1,84 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "AB711EBD1481C35F009011C8"
BuildableName = "DeSmuME.app"
BlueprintName = "DeSmuME (v10.6 Snow Leopard)"
ReferencedContainer = "container:DeSmuME (XCode 4).xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Debug">
<Testables>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "AB711EBD1481C35F009011C8"
BuildableName = "DeSmuME.app"
BlueprintName = "DeSmuME (v10.6 Snow Leopard)"
ReferencedContainer = "container:DeSmuME (XCode 4).xcodeproj">
</BuildableReference>
</MacroExpansion>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Debug"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "AB711EBD1481C35F009011C8"
BuildableName = "DeSmuME.app"
BlueprintName = "DeSmuME (v10.6 Snow Leopard)"
ReferencedContainer = "container:DeSmuME (XCode 4).xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Release"
debugDocumentVersioning = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "AB711EBD1481C35F009011C8"
BuildableName = "DeSmuME.app"
BlueprintName = "DeSmuME (v10.6 Snow Leopard)"
ReferencedContainer = "container:DeSmuME (XCode 4).xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -0,0 +1,84 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "ABB7153F14E386740027FE88"
BuildableName = "DeSmuME.app"
BlueprintName = "DeSmuME (v10.7 Lion)"
ReferencedContainer = "container:DeSmuME (XCode 4).xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Debug">
<Testables>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "ABB7153F14E386740027FE88"
BuildableName = "DeSmuME.app"
BlueprintName = "DeSmuME (v10.7 Lion)"
ReferencedContainer = "container:DeSmuME (XCode 4).xcodeproj">
</BuildableReference>
</MacroExpansion>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Debug"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "ABB7153F14E386740027FE88"
BuildableName = "DeSmuME.app"
BlueprintName = "DeSmuME (v10.7 Lion)"
ReferencedContainer = "container:DeSmuME (XCode 4).xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Release"
debugDocumentVersioning = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "ABB7153F14E386740027FE88"
BuildableName = "DeSmuME.app"
BlueprintName = "DeSmuME (v10.7 Lion)"
ReferencedContainer = "container:DeSmuME (XCode 4).xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -25,6 +25,7 @@
#import "cocoa_util.h"
#include <OpenGL/OpenGL.h>
#include <OpenGL/gl.h>
#undef BOOL

View File

@ -42,7 +42,10 @@
#include "filetime.h"
#ifdef __APPLE__
//apple doesn't provide strnlen. how unkind
#include <AvailabilityMacros.h>
#ifndef MAC_OS_X_VERSION_10_7
// In Mac OS X, strnlen() is unsupported prior to v10.7, so define it here.
static size_t strnlen(const char *s, size_t n)
{
const char *p = (const char *)memchr(s, 0, n);
@ -50,6 +53,8 @@ static size_t strnlen(const char *s, size_t n)
}
#endif
#endif // __APPLE__
// Directory entry codes
#define DIR_ENTRY_LAST 0x00
#define DIR_ENTRY_FREE 0xE5