summaryrefslogtreecommitdiff
path: root/macosx/plugins/DFCdrom
diff options
context:
space:
mode:
authorSND\MaddTheSane_cp <SND\MaddTheSane_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2013-07-04 03:07:44 +0000
committerSND\MaddTheSane_cp <SND\MaddTheSane_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2013-07-04 03:07:44 +0000
commitdd7da2fae96b9ba6bdbc28f7b26469373801f21e (patch)
tree9faf6aa7f2fa2900dcabc3d88d11e87285693e9b /macosx/plugins/DFCdrom
parenta012af37d7bd3a972d2b3fbb7ed09bc8662e91eb (diff)
Make the plug-ins use ARC in 64-bit mode.
Change how the preprocessor macros are managed on OS X. Set the name of the product to the target name. git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@85795 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'macosx/plugins/DFCdrom')
-rw-r--r--macosx/plugins/DFCdrom/ARCBridge.h36
-rw-r--r--macosx/plugins/DFCdrom/DFCdrom.xcodeproj/project.pbxproj32
-rwxr-xr-xmacosx/plugins/DFCdrom/macsrc/PluginConfigController.m35
3 files changed, 75 insertions, 28 deletions
diff --git a/macosx/plugins/DFCdrom/ARCBridge.h b/macosx/plugins/DFCdrom/ARCBridge.h
new file mode 100644
index 00000000..ea274b84
--- /dev/null
+++ b/macosx/plugins/DFCdrom/ARCBridge.h
@@ -0,0 +1,36 @@
+//
+// ARCBridge.h
+// PPMacho
+//
+// Created by C.W. Betts on 12/23/12.
+//
+//
+
+#ifndef PPMacho_ARCBridge_h
+#define PPMacho_ARCBridge_h
+
+#if __has_feature(objc_arc)
+
+#define SUPERDEALLOC
+#define RELEASEOBJ(obj)
+#define RETAINOBJ(obj) obj
+#define RETAINOBJNORETURN(obj)
+#define AUTORELEASEOBJ(obj) obj
+#define AUTORELEASEOBJNORETURN(obj)
+#define BRIDGE(toType, obj) (__bridge toType)(obj)
+#define __arcweak __weak
+
+#else
+
+#define SUPERDEALLOC [super dealloc]
+#define RELEASEOBJ(obj) [obj release]
+#define RETAINOBJ(obj) [obj retain]
+#define RETAINOBJNORETURN(obj) [obj retain]
+#define AUTORELEASEOBJ(obj) [obj autorelease]
+#define AUTORELEASEOBJNORETURN(obj) [obj autorelease]
+#define BRIDGE(toType, obj) (toType)obj
+#define __arcweak
+
+#endif
+
+#endif
diff --git a/macosx/plugins/DFCdrom/DFCdrom.xcodeproj/project.pbxproj b/macosx/plugins/DFCdrom/DFCdrom.xcodeproj/project.pbxproj
index cc325298..8a48676b 100644
--- a/macosx/plugins/DFCdrom/DFCdrom.xcodeproj/project.pbxproj
+++ b/macosx/plugins/DFCdrom/DFCdrom.xcodeproj/project.pbxproj
@@ -10,6 +10,7 @@
28586CC614651E870082B8EC /* DFCdromPluginConfig.xib in Resources */ = {isa = PBXBuildFile; fileRef = 28586CC414651E870082B8EC /* DFCdromPluginConfig.xib */; };
2BD707180555997500CB5D9B /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2BD707170555997500CB5D9B /* IOKit.framework */; };
552E4CBA1474737A00FB231F /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 552E4CBC1474737A00FB231F /* Localizable.strings */; };
+ 5586006E1785137C00CB3D85 /* ARCBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = 5586006D1785137C00CB3D85 /* ARCBridge.h */; };
713DB2E811F113C30001BDD4 /* cdr.c in Sources */ = {isa = PBXBuildFile; fileRef = 713DB2E311F113C30001BDD4 /* cdr.c */; };
713DB2E911F113C30001BDD4 /* cdr.h in Headers */ = {isa = PBXBuildFile; fileRef = 713DB2E411F113C30001BDD4 /* cdr.h */; };
713DB2EB11F113C30001BDD4 /* util.c in Sources */ = {isa = PBXBuildFile; fileRef = 713DB2E611F113C30001BDD4 /* util.c */; };
@@ -30,6 +31,7 @@
28586CC514651E870082B8EC /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/DFCdromPluginConfig.xib; sourceTree = "<group>"; };
2BD707170555997500CB5D9B /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = /System/Library/Frameworks/IOKit.framework; sourceTree = "<absolute>"; };
552E4CBB1474737A00FB231F /* English */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/Localizable.strings; sourceTree = "<group>"; };
+ 5586006D1785137C00CB3D85 /* ARCBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ARCBridge.h; sourceTree = "<group>"; };
713DB2E311F113C30001BDD4 /* cdr.c */ = {isa = PBXFileReference; fileEncoding = 0; lastKnownFileType = sourcecode.c.c; lineEnding = 2; name = cdr.c; path = ../../../plugins/dfcdrom/cdr.c; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.c; };
713DB2E411F113C30001BDD4 /* cdr.h */ = {isa = PBXFileReference; fileEncoding = 0; lastKnownFileType = sourcecode.c.h; name = cdr.h; path = ../../../plugins/dfcdrom/cdr.h; sourceTree = SOURCE_ROOT; };
713DB2E611F113C30001BDD4 /* util.c */ = {isa = PBXFileReference; fileEncoding = 0; lastKnownFileType = sourcecode.c.c; lineEnding = 0; name = util.c; path = ../../../plugins/dfcdrom/util.c; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.c; };
@@ -123,6 +125,7 @@
71F3C32111F3CCEF007B9F12 /* macsrc */ = {
isa = PBXGroup;
children = (
+ 5586006D1785137C00CB3D85 /* ARCBridge.h */,
71F3C32411F3CD0B007B9F12 /* cdr-macosx.c */,
71F3C32511F3CD0B007B9F12 /* cfg.c */,
71F3C32611F3CD0B007B9F12 /* PluginConfigController.h */,
@@ -140,6 +143,7 @@
files = (
713DB2E911F113C30001BDD4 /* cdr.h in Headers */,
71F3C32A11F3CD0B007B9F12 /* PluginConfigController.h in Headers */,
+ 5586006E1785137C00CB3D85 /* ARCBridge.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -271,24 +275,23 @@
7107359A0FDEED75004AD098 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ "CLANG_ENABLE_OBJC_ARC[arch=x86_64]" = YES;
COMBINE_HIDPI_IMAGES = YES;
COPY_PHASE_STRIP = NO;
GCC_DYNAMIC_NO_PIC = NO;
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
- GCC_PRECOMPILE_PREFIX_HEADER = NO;
GCC_PREPROCESSOR_DEFINITIONS = (
"PCSXRPLUG=DFCdrom",
- "_MACOSX=1",
+ "$(inherited)",
);
GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
GCC_WARN_UNKNOWN_PRAGMAS = NO;
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(USER_LIBRARY_DIR)/Playstation Emulator Plugins";
OTHER_LDFLAGS = "";
- PRODUCT_NAME = DFCdrom;
+ PRODUCT_NAME = "$(TARGET_NAME)";
SECTORDER_FLAGS = "";
- SYMROOT = ../../build;
WRAPPER_EXTENSION = psxplugin;
};
name = Debug;
@@ -296,24 +299,23 @@
7107359B0FDEED75004AD098 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ "CLANG_ENABLE_OBJC_ARC[arch=x86_64]" = YES;
COMBINE_HIDPI_IMAGES = YES;
COPY_PHASE_STRIP = YES;
GCC_DYNAMIC_NO_PIC = NO;
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
GCC_OPTIMIZATION_LEVEL = s;
- GCC_PRECOMPILE_PREFIX_HEADER = NO;
GCC_PREPROCESSOR_DEFINITIONS = (
"PCSXRPLUG=DFCdrom",
- "_MACOSX=1",
+ "$(inherited)",
);
GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
GCC_WARN_UNKNOWN_PRAGMAS = NO;
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(USER_LIBRARY_DIR)/Playstation Emulator Plugins";
OTHER_LDFLAGS = "";
- PRODUCT_NAME = DFCdrom;
+ PRODUCT_NAME = "$(TARGET_NAME)";
SECTORDER_FLAGS = "";
- SYMROOT = ../../build;
WRAPPER_EXTENSION = psxplugin;
};
name = Release;
@@ -327,8 +329,12 @@
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ DEBUG_PREPROCESSOR_DEFINITIONS = "DEBUG=1";
GCC_OPTIMIZATION_LEVEL = 0;
- GCC_PREPROCESSOR_DEFINITIONS = "_MACOSX=1";
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "_MACOSX=1",
+ "$(DEBUG_PREPROCESSOR_DEFINITIONS)",
+ );
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
@@ -342,7 +348,6 @@
ONLY_ACTIVE_ARCH = YES;
SDKROOT = macosx;
STRIP_INSTALLED_PRODUCT = NO;
- SYMROOT = ../../build;
VALID_ARCHS = "i386 x86_64";
};
name = Debug;
@@ -356,8 +361,12 @@
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ DEBUG_PREPROCESSOR_DEFINITIONS = "";
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
- GCC_PREPROCESSOR_DEFINITIONS = "_MACOSX=1";
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "_MACOSX=1",
+ "$(DEBUG_PREPROCESSOR_DEFINITIONS)",
+ );
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
@@ -369,7 +378,6 @@
);
MACOSX_DEPLOYMENT_TARGET = 10.6;
SDKROOT = macosx;
- SYMROOT = ../../build;
VALID_ARCHS = "i386 x86_64";
};
name = Release;
diff --git a/macosx/plugins/DFCdrom/macsrc/PluginConfigController.m b/macosx/plugins/DFCdrom/macsrc/PluginConfigController.m
index 5e79fe63..801a47f2 100755
--- a/macosx/plugins/DFCdrom/macsrc/PluginConfigController.m
+++ b/macosx/plugins/DFCdrom/macsrc/PluginConfigController.m
@@ -21,6 +21,7 @@
#import "PluginConfigController.h"
#include "cdr.h"
+#import "ARCBridge.h"
#define APP_ID @"net.pcsxr.DFCdrom"
#define PrefsKey APP_ID @" Settings"
@@ -37,10 +38,12 @@ void AboutDlgProc()
NSString *path = [bundle pathForResource:@"Credits" ofType:@"rtf"];
NSAttributedString *credits;
if (path) {
- credits = [[[NSAttributedString alloc] initWithPath: path
- documentAttributes:NULL] autorelease];
+ credits = [[NSAttributedString alloc] initWithPath: path
+ documentAttributes:NULL];
+ AUTORELEASEOBJNORETURN(credits);
+
} else {
- credits = [[[NSAttributedString alloc] initWithString:@""] autorelease];
+ credits = AUTORELEASEOBJ([[NSAttributedString alloc] initWithString:@""]);
}
// Get Application Icon
@@ -79,9 +82,9 @@ void ReadConfig()
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults registerDefaults:[NSDictionary dictionaryWithObjectsAndKeys:
[NSDictionary dictionaryWithObjectsAndKeys:
- [NSNumber numberWithBool:YES], @"Threaded",
- [NSNumber numberWithInt:64], @"Cache Size",
- [NSNumber numberWithInt:0], @"Speed",
+ @YES, @"Threaded",
+ @64, @"Cache Size",
+ @0, @"Speed",
nil], PrefsKey, nil]];
keyValues = [defaults dictionaryForKey:PrefsKey];
@@ -104,17 +107,17 @@ void ReadConfig()
NSMutableDictionary *writeDic = [NSMutableDictionary dictionaryWithDictionary:keyValues];
- [writeDic setObject:[NSNumber numberWithBool:[Cached intValue]] forKey:@"Threaded"];
- [writeDic setObject:[NSNumber numberWithInt:[CacheSize intValue]] forKey:@"Cache Size"];
+ [writeDic setObject:@((BOOL)[Cached intValue]) forKey:@"Threaded"];
+ [writeDic setObject:@([CacheSize intValue]) forKey:@"Cache Size"];
switch ([CdSpeed indexOfSelectedItem]) {
- case 1: [writeDic setObject:[NSNumber numberWithInt:1] forKey:@"Speed"]; break;
- case 2: [writeDic setObject:[NSNumber numberWithInt:2] forKey:@"Speed"]; break;
- case 3: [writeDic setObject:[NSNumber numberWithInt:4] forKey:@"Speed"]; break;
- case 4: [writeDic setObject:[NSNumber numberWithInt:8] forKey:@"Speed"]; break;
- case 5: [writeDic setObject:[NSNumber numberWithInt:16] forKey:@"Speed"]; break;
- case 6: [writeDic setObject:[NSNumber numberWithInt:32] forKey:@"Speed"]; break;
- default: [writeDic setObject:[NSNumber numberWithInt:0] forKey:@"Speed"]; break;
+ case 1: [writeDic setObject:@1 forKey:@"Speed"]; break;
+ case 2: [writeDic setObject:@2 forKey:@"Speed"]; break;
+ case 3: [writeDic setObject:@4 forKey:@"Speed"]; break;
+ case 4: [writeDic setObject:@8 forKey:@"Speed"]; break;
+ case 5: [writeDic setObject:@16 forKey:@"Speed"]; break;
+ case 6: [writeDic setObject:@32 forKey:@"Speed"]; break;
+ default: [writeDic setObject:@0 forKey:@"Speed"]; break;
}
// write to defaults
@@ -134,7 +137,7 @@ void ReadConfig()
ReadConfig();
// load from preferences
- [keyValues release];
+ RELEASEOBJ(keyValues);
keyValues = [[defaults dictionaryForKey:PrefsKey] mutableCopy];
[Cached setIntValue:[[keyValues objectForKey:@"Threaded"] intValue]];