[57360] users/toby/objcports
toby at macports.org
toby at macports.org
Wed Sep 9 23:42:40 PDT 2009
Revision: 57360
http://trac.macports.org/changeset/57360
Author: toby at macports.org
Date: 2009-09-09 23:42:40 -0700 (Wed, 09 Sep 2009)
Log Message:
-----------
more to C
Modified Paths:
--------------
users/toby/objcports/MPArrayAdditions.h
users/toby/objcports/MPPort.m
users/toby/objcports/MPStringAdditions.h
users/toby/objcports/internal.h
users/toby/objcports/objcports.xcodeproj/project.pbxproj
users/toby/objcports/port.m
Added Paths:
-----------
users/toby/objcports/MPArrayAdditions.c
users/toby/objcports/MPDictionaryAdditions.c
users/toby/objcports/MPStringAdditions.c
Removed Paths:
-------------
users/toby/objcports/MPArrayAdditions.m
users/toby/objcports/MPDictionaryAdditions.m
users/toby/objcports/MPStringAdditions.m
Copied: users/toby/objcports/MPArrayAdditions.c (from rev 57358, users/toby/objcports/MPArrayAdditions.m)
===================================================================
--- users/toby/objcports/MPArrayAdditions.c (rev 0)
+++ users/toby/objcports/MPArrayAdditions.c 2009-09-10 06:42:40 UTC (rev 57360)
@@ -0,0 +1,22 @@
+#include <CoreFoundation/CoreFoundation.h>
+#include <tcl.h>
+
+#include "MPArrayAdditions.h"
+#include "MPStringAdditions.h"
+
+CFArrayRef
+CFArrayCreateWithTclObjects(CFAllocatorRef allocator, Tcl_Obj * const *objects, CFIndex count)
+{
+ CFIndex i;
+ CFStringRef array[count];
+ CFArrayRef result;
+
+ for (i = 0; i < count; i++) {
+ array[i] = CFStringCreateWithTclObject(allocator, objects[i]);
+ }
+ result = CFArrayCreate(allocator, (const void **)array, count, &kCFTypeArrayCallBacks);
+ for (i = 0; i < count; i++) {
+ CFRelease(array[i]);
+ }
+ return result;
+}
Modified: users/toby/objcports/MPArrayAdditions.h
===================================================================
--- users/toby/objcports/MPArrayAdditions.h 2009-09-10 06:36:46 UTC (rev 57359)
+++ users/toby/objcports/MPArrayAdditions.h 2009-09-10 06:42:40 UTC (rev 57360)
@@ -1,7 +1 @@
-CFArrayRef CFArrayCreateWithTclObjects(CFAllocatorRef allocator, Tcl_Obj **objects, CFIndex count);
-
-#ifdef __OBJC__
- at interface NSArray (MPArrayAdditions)
-- (id)initWithTclObjects:(Tcl_Obj * const *)objects count:(int)count;
- at end
-#endif
+CFArrayRef CFArrayCreateWithTclObjects(CFAllocatorRef allocator, Tcl_Obj * const *objects, CFIndex count);
Deleted: users/toby/objcports/MPArrayAdditions.m
===================================================================
--- users/toby/objcports/MPArrayAdditions.m 2009-09-10 06:36:46 UTC (rev 57359)
+++ users/toby/objcports/MPArrayAdditions.m 2009-09-10 06:42:40 UTC (rev 57360)
@@ -1,41 +0,0 @@
-#include <Foundation/Foundation.h>
-#include <tcl.h>
-
-#include "MPArrayAdditions.h"
-#include "MPStringAdditions.h"
-
-CFArrayRef
-CFArrayCreateWithTclObjects(CFAllocatorRef allocator, Tcl_Obj **objects, CFIndex count)
-{
- CFIndex i;
- CFStringRef array[count];
- CFArrayRef result;
-
- for (i = 0; i < count; i++) {
- array[i] = CFStringCreateWithTclObject(allocator, objects[i]);
- }
- result = CFArrayCreate(allocator, (const void **)array, count, &kCFTypeArrayCallBacks);
- for (i = 0; i < count; i++) {
- CFRelease(array[i]);
- }
- return result;
-}
-
- at implementation NSArray (MPArrayAdditions)
-
-- (id)initWithTclObjects:(Tcl_Obj * const *)objects count:(int)count
-{
- int i;
- NSString *array[count];
- NSArray *result;
- for (i = 0; i < count; i++) {
- array[i] = [[NSString alloc] initWithTclObject:objects[i]];
- }
- result = [self initWithObjects:array count:count];
- for (i = 0; i < count; i++) {
- [array[i] release];
- }
- return result;
-}
-
- at end
Copied: users/toby/objcports/MPDictionaryAdditions.c (from rev 57358, users/toby/objcports/MPDictionaryAdditions.m)
===================================================================
--- users/toby/objcports/MPDictionaryAdditions.c (rev 0)
+++ users/toby/objcports/MPDictionaryAdditions.c 2009-09-10 06:42:40 UTC (rev 57360)
@@ -0,0 +1,31 @@
+#include <CoreFoundation/CoreFoundation.h>
+#include <tcl.h>
+
+#include "MPDictionaryAdditions.h"
+#include "MPStringAdditions.h"
+
+CFDictionaryRef
+CFDictionaryCreateWithTclObjects(CFAllocatorRef allocator, Tcl_Obj **objects, CFIndex count)
+{
+ CFIndex count2, i;
+ CFDictionaryRef result;
+
+ if ((count % 2) != 0) {
+ return nil;
+ }
+
+ count2 = count / 2;
+
+ const void *keys[count2];
+ const void *values[count2];
+ for (i = 0; i < count2; i++) {
+ keys[i] = CFStringCreateWithTclObject(allocator, objects[i * 2]);
+ values[i] = CFStringCreateWithTclObject(allocator, objects[i * 2 + 1]);
+ }
+ result = CFDictionaryCreate(allocator, keys, values, count2, &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks);
+ for (i = 0; i < count2; i++) {
+ CFRelease(keys[i]);
+ CFRelease(values[i]);
+ }
+ return result;
+}
Deleted: users/toby/objcports/MPDictionaryAdditions.m
===================================================================
--- users/toby/objcports/MPDictionaryAdditions.m 2009-09-10 06:36:46 UTC (rev 57359)
+++ users/toby/objcports/MPDictionaryAdditions.m 2009-09-10 06:42:40 UTC (rev 57360)
@@ -1,31 +0,0 @@
-#include <Foundation/Foundation.h>
-#include <tcl.h>
-
-#include "MPDictionaryAdditions.h"
-#include "MPStringAdditions.h"
-
-CFDictionaryRef
-CFDictionaryCreateWithTclObjects(CFAllocatorRef allocator, Tcl_Obj **objects, CFIndex count)
-{
- CFIndex count2, i;
- CFDictionaryRef result;
-
- if ((count % 2) != 0) {
- return nil;
- }
-
- count2 = count / 2;
-
- const void *keys[count2];
- const void *values[count2];
- for (i = 0; i < count2; i++) {
- keys[i] = CFStringCreateWithTclObject(allocator, objects[i * 2]);
- values[i] = CFStringCreateWithTclObject(allocator, objects[i * 2 + 1]);
- }
- result = CFDictionaryCreate(allocator, keys, values, count2, &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks);
- for (i = 0; i < count2; i++) {
- CFRelease(keys[i]);
- CFRelease(values[i]);
- }
- return result;
-}
Modified: users/toby/objcports/MPPort.m
===================================================================
--- users/toby/objcports/MPPort.m 2009-09-10 06:36:46 UTC (rev 57359)
+++ users/toby/objcports/MPPort.m 2009-09-10 06:42:40 UTC (rev 57360)
@@ -285,7 +285,7 @@
} else {
ret = [NSString stringWithUTF8String:""];
}
- ret = [[[NSString alloc] initWithTclObject:Tcl_SubstObj(_interp, Tcl_NewStringObj([ret UTF8String], -1), TCL_SUBST_VARIABLES)] autorelease];
+ ret = [(NSString *)CFStringCreateWithTclObject(NULL, Tcl_SubstObj(_interp, Tcl_NewStringObj([ret UTF8String], -1), TCL_SUBST_VARIABLES)) autorelease];
} else {
NSLog(@"WARNING: unknown variable %@", name);
}
@@ -449,7 +449,7 @@
NSUInteger count = [args count];
NSString *name;
NSMutableDictionary *props;
- int i;
+ NSUInteger i;
// variant name [a b c d] {}
if (count < 2 || count % 2) {
@@ -486,9 +486,9 @@
static int
command_trampoline(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[])
{
- NSArray *args = [[NSArray alloc] initWithTclObjects:objv count:objc];
- [(MPPort *)clientData performCommand:[args objectAtIndex:0] arguments:[args subarrayWithRange:NSMakeRange(1, [args count] - 1)]];
- [args release];
+ CFArrayRef args = CFArrayCreateWithTclObjects(NULL, objv, objc);
+ [(MPPort *)clientData performCommand:[(NSArray *)args objectAtIndex:0] arguments:[(NSArray *)args subarrayWithRange:NSMakeRange(1, [(NSArray *)args count] - 1)]];
+ CFRelease(args);
return TCL_OK;
}
@@ -507,7 +507,9 @@
static char *
variable_read(ClientData clientData, Tcl_Interp *interp, const char *name1, const char *name2, int flags)
{
- NSString *var = [(MPPort *)clientData variable:[NSString stringWithUTF8String:name1]];
+ NSString *var;
+
+ var = [(MPPort *)clientData variable:[NSString stringWithUTF8String:name1]];
assert(var != nil);
Tcl_SetVar2(interp, name1, name2, [var UTF8String], 0);
return NULL;
@@ -517,9 +519,18 @@
static int
_nslog(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[])
{
- NSArray *args = [[NSArray alloc] initWithTclObjects:++objv count:--objc];
- NSLog(@"%@", [args componentsJoinedByString:@" "]);
- [args release];
+ CFArrayRef args;
+ CFStringRef str;
+
+ args = CFArrayCreateWithTclObjects(NULL, ++objv, --objc);
+ if (args) {
+ str = CFStringCreateByCombiningStrings(NULL, args, CFSTR(" "));
+ if (str) {
+ CFShow(str);
+ CFRelease(str);
+ }
+ CFRelease(args);
+ }
return TCL_OK;
}
Copied: users/toby/objcports/MPStringAdditions.c (from rev 57358, users/toby/objcports/MPStringAdditions.m)
===================================================================
--- users/toby/objcports/MPStringAdditions.c (rev 0)
+++ users/toby/objcports/MPStringAdditions.c 2009-09-10 06:42:40 UTC (rev 57360)
@@ -0,0 +1,10 @@
+#include <CoreFoundation/CoreFoundation.h>
+#include <tcl.h>
+
+#include "MPStringAdditions.h"
+
+CFStringRef
+CFStringCreateWithTclObject(CFAllocatorRef allocator, Tcl_Obj *object)
+{
+ return CFStringCreateWithCString(allocator, Tcl_GetString(object), kCFStringEncodingUTF8);
+}
Modified: users/toby/objcports/MPStringAdditions.h
===================================================================
--- users/toby/objcports/MPStringAdditions.h 2009-09-10 06:36:46 UTC (rev 57359)
+++ users/toby/objcports/MPStringAdditions.h 2009-09-10 06:42:40 UTC (rev 57360)
@@ -1,7 +1 @@
CFStringRef CFStringCreateWithTclObject(CFAllocatorRef allocator, Tcl_Obj *object);
-
-#ifdef __OBJC__
- at interface NSString (MPStringAdditions)
-- (id)initWithTclObject:(Tcl_Obj *)object;
- at end
-#endif
Deleted: users/toby/objcports/MPStringAdditions.m
===================================================================
--- users/toby/objcports/MPStringAdditions.m 2009-09-10 06:36:46 UTC (rev 57359)
+++ users/toby/objcports/MPStringAdditions.m 2009-09-10 06:42:40 UTC (rev 57360)
@@ -1,19 +0,0 @@
-#include <Foundation/Foundation.h>
-#include <tcl.h>
-
-#include "MPStringAdditions.h"
-
-CFStringRef
-CFStringCreateWithTclObject(CFAllocatorRef allocator, Tcl_Obj *object)
-{
- return CFStringCreateWithCString(allocator, Tcl_GetString(object), kCFStringEncodingUTF8);
-}
-
- at implementation NSString (MPStringAdditions)
-
-- (id)initWithTclObject:(Tcl_Obj *)object
-{
- return [self initWithUTF8String:Tcl_GetString(object)];
-}
-
- at end
Modified: users/toby/objcports/internal.h
===================================================================
--- users/toby/objcports/internal.h 2009-09-10 06:36:46 UTC (rev 57359)
+++ users/toby/objcports/internal.h 2009-09-10 06:42:40 UTC (rev 57360)
@@ -1 +1 @@
-char *strdup_cf(CFStringRef str);
\ No newline at end of file
+char *strdup_cf(CFStringRef str);
Modified: users/toby/objcports/objcports.xcodeproj/project.pbxproj
===================================================================
--- users/toby/objcports/objcports.xcodeproj/project.pbxproj 2009-09-10 06:36:46 UTC (rev 57359)
+++ users/toby/objcports/objcports.xcodeproj/project.pbxproj 2009-09-10 06:42:40 UTC (rev 57360)
@@ -11,11 +11,11 @@
DA13887B101AED7000F73A82 /* MPConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = DA13887A101AED7000F73A82 /* MPConfig.m */; };
DA7AF1BC1058D1E200CF2187 /* internal.c in Sources */ = {isa = PBXBuildFile; fileRef = DA7AF1BB1058D1E200CF2187 /* internal.c */; };
DA96BED00F7C9C2500362779 /* MPIndex.c in Sources */ = {isa = PBXBuildFile; fileRef = DA96BECF0F7C9C2500362779 /* MPIndex.c */; };
- DA96BF4C0F7CA1A700362779 /* MPDictionaryAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = DA96BF4B0F7CA1A700362779 /* MPDictionaryAdditions.m */; };
+ DA96BF4C0F7CA1A700362779 /* MPDictionaryAdditions.c in Sources */ = {isa = PBXBuildFile; fileRef = DA96BF4B0F7CA1A700362779 /* MPDictionaryAdditions.c */; };
DAD371710F0280EF0064AFF4 /* port.m in Sources */ = {isa = PBXBuildFile; fileRef = DAD371680F0280EF0064AFF4 /* port.m */; };
- DAD371720F0280EF0064AFF4 /* MPArrayAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = DAD3716A0F0280EF0064AFF4 /* MPArrayAdditions.m */; };
+ DAD371720F0280EF0064AFF4 /* MPArrayAdditions.c in Sources */ = {isa = PBXBuildFile; fileRef = DAD3716A0F0280EF0064AFF4 /* MPArrayAdditions.c */; };
DAD371740F0280EF0064AFF4 /* MPPort.m in Sources */ = {isa = PBXBuildFile; fileRef = DAD3716E0F0280EF0064AFF4 /* MPPort.m */; };
- DAD371750F0280EF0064AFF4 /* MPStringAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = DAD371700F0280EF0064AFF4 /* MPStringAdditions.m */; };
+ DAD371750F0280EF0064AFF4 /* MPStringAdditions.c in Sources */ = {isa = PBXBuildFile; fileRef = DAD371700F0280EF0064AFF4 /* MPStringAdditions.c */; };
DAD371950F0281940064AFF4 /* libtcl.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = DAD371940F0281940064AFF4 /* libtcl.dylib */; };
/* End PBXBuildFile section */
@@ -41,14 +41,14 @@
DA96BECE0F7C9C2500362779 /* MPIndex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPIndex.h; sourceTree = "<group>"; };
DA96BECF0F7C9C2500362779 /* MPIndex.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = MPIndex.c; sourceTree = "<group>"; };
DA96BF4A0F7CA1A700362779 /* MPDictionaryAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPDictionaryAdditions.h; sourceTree = "<group>"; };
- DA96BF4B0F7CA1A700362779 /* MPDictionaryAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPDictionaryAdditions.m; sourceTree = "<group>"; };
+ DA96BF4B0F7CA1A700362779 /* MPDictionaryAdditions.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = MPDictionaryAdditions.c; sourceTree = "<group>"; };
DAD371680F0280EF0064AFF4 /* port.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = port.m; sourceTree = "<group>"; };
DAD371690F0280EF0064AFF4 /* MPArrayAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPArrayAdditions.h; sourceTree = "<group>"; };
- DAD3716A0F0280EF0064AFF4 /* MPArrayAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPArrayAdditions.m; sourceTree = "<group>"; };
+ DAD3716A0F0280EF0064AFF4 /* MPArrayAdditions.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = MPArrayAdditions.c; sourceTree = "<group>"; };
DAD3716D0F0280EF0064AFF4 /* MPPort.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPPort.h; sourceTree = "<group>"; };
DAD3716E0F0280EF0064AFF4 /* MPPort.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPPort.m; sourceTree = "<group>"; };
DAD3716F0F0280EF0064AFF4 /* MPStringAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPStringAdditions.h; sourceTree = "<group>"; };
- DAD371700F0280EF0064AFF4 /* MPStringAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPStringAdditions.m; sourceTree = "<group>"; };
+ DAD371700F0280EF0064AFF4 /* MPStringAdditions.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = MPStringAdditions.c; sourceTree = "<group>"; };
DAD371940F0281940064AFF4 /* libtcl.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libtcl.dylib; path = /usr/lib/libtcl.dylib; sourceTree = "<absolute>"; };
FD1CD53B1018F5AD0071534F /* variables.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = variables.plist; sourceTree = "<group>"; };
/* End PBXFileReference section */
@@ -82,15 +82,15 @@
children = (
DAD371680F0280EF0064AFF4 /* port.m */,
DAD371690F0280EF0064AFF4 /* MPArrayAdditions.h */,
- DAD3716A0F0280EF0064AFF4 /* MPArrayAdditions.m */,
+ DAD3716A0F0280EF0064AFF4 /* MPArrayAdditions.c */,
DA96BF4A0F7CA1A700362779 /* MPDictionaryAdditions.h */,
- DA96BF4B0F7CA1A700362779 /* MPDictionaryAdditions.m */,
+ DA96BF4B0F7CA1A700362779 /* MPDictionaryAdditions.c */,
DA96BECE0F7C9C2500362779 /* MPIndex.h */,
DA96BECF0F7C9C2500362779 /* MPIndex.c */,
DAD3716D0F0280EF0064AFF4 /* MPPort.h */,
DAD3716E0F0280EF0064AFF4 /* MPPort.m */,
DAD3716F0F0280EF0064AFF4 /* MPStringAdditions.h */,
- DAD371700F0280EF0064AFF4 /* MPStringAdditions.m */,
+ DAD371700F0280EF0064AFF4 /* MPStringAdditions.c */,
DA138879101AED7000F73A82 /* MPConfig.h */,
DA13887A101AED7000F73A82 /* MPConfig.m */,
DA7AF1BA1058D1E200CF2187 /* internal.h */,
@@ -168,11 +168,11 @@
buildActionMask = 2147483647;
files = (
DAD371710F0280EF0064AFF4 /* port.m in Sources */,
- DAD371720F0280EF0064AFF4 /* MPArrayAdditions.m in Sources */,
- DAD371750F0280EF0064AFF4 /* MPStringAdditions.m in Sources */,
+ DAD371720F0280EF0064AFF4 /* MPArrayAdditions.c in Sources */,
+ DAD371750F0280EF0064AFF4 /* MPStringAdditions.c in Sources */,
DA96BED00F7C9C2500362779 /* MPIndex.c in Sources */,
DAD371740F0280EF0064AFF4 /* MPPort.m in Sources */,
- DA96BF4C0F7CA1A700362779 /* MPDictionaryAdditions.m in Sources */,
+ DA96BF4C0F7CA1A700362779 /* MPDictionaryAdditions.c in Sources */,
DA13887B101AED7000F73A82 /* MPConfig.m in Sources */,
DA7AF1BC1058D1E200CF2187 /* internal.c in Sources */,
);
@@ -202,7 +202,18 @@
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
GCC_C_LANGUAGE_STANDARD = c99;
+ GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES;
+ GCC_WARN_ABOUT_MISSING_NEWLINE = YES;
+ GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_MISSING_PARENTHESES = YES;
+ GCC_WARN_SIGN_COMPARE = YES;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES;
+ GCC_WARN_UNKNOWN_PRAGMAS = YES;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_LABEL = YES;
+ GCC_WARN_UNUSED_VALUE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
PREBINDING = NO;
};
Modified: users/toby/objcports/port.m
===================================================================
--- users/toby/objcports/port.m 2009-09-10 06:36:46 UTC (rev 57359)
+++ users/toby/objcports/port.m 2009-09-10 06:42:40 UTC (rev 57360)
@@ -14,13 +14,15 @@
exit(1);
NSLog(@"%@", [MPConfig sharedConfig]);
-
+
+#if 0
CFStringRef filename = CFStringCreateWithCString(NULL, argv[1], kCFStringEncodingUTF8);
CFDictionaryRef index = MPCopyPortIndex(filename);
CFShow(index);
CFRelease(index);
CFRelease(filename);
return 0;
+#endif
while (--argc) {
MPPort *port = [[MPPort alloc] initWithPath:[NSString stringWithUTF8String:*++argv] options:nil];
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20090909/cd42eb84/attachment-0001.html>
More information about the macports-changes
mailing list