[59822] users/toby/objcports/MPConfig.m
toby at macports.org
toby at macports.org
Fri Oct 23 00:06:09 PDT 2009
Revision: 59822
http://trac.macports.org/changeset/59822
Author: toby at macports.org
Date: 2009-10-23 00:06:06 -0700 (Fri, 23 Oct 2009)
Log Message:
-----------
simplify
Modified Paths:
--------------
users/toby/objcports/MPConfig.m
Modified: users/toby/objcports/MPConfig.m
===================================================================
--- users/toby/objcports/MPConfig.m 2009-10-23 06:53:53 UTC (rev 59821)
+++ users/toby/objcports/MPConfig.m 2009-10-23 07:06:06 UTC (rev 59822)
@@ -2,54 +2,36 @@
#include <tcl.h>
#include "MPConfig.h"
-#include "internal.h"
-static void
-load_autoconf(NSMutableDictionary *config)
-{
- Tcl_Interp *interp;
- int rc;
- CFStringRef tmp;
-
- interp = Tcl_CreateInterp();
- rc = Tcl_EvalFile(interp, "/Library/Tcl/macports1.0/macports_autoconf.tcl");
- if (rc == 0) {
- tmp = CFStringCreateWithCString(NULL, Tcl_GetVar(interp, "macports::autoconf::macports_conf_path", 0), kCFStringEncodingUTF8);
- if (tmp) {
- [config setObject:(NSString *)tmp forKey:@"macports_conf_path"];
- CFRelease(tmp);
- }
-
- tmp = CFStringCreateWithCString(NULL, Tcl_GetVar(interp, "macports::autoconf::macports_user_dir", 0), kCFStringEncodingUTF8);
- if (tmp) {
- [config setObject:(NSString *)tmp forKey:@"macports_user_dir"];
- CFRelease(tmp);
- }
- }
- Tcl_DeleteInterp(interp);
-}
-
NSDictionary *
MPCopyConfig()
{
+ Tcl_Interp *interp;
NSAutoreleasePool *pool;
NSMutableDictionary *config;
NSMutableArray *configFiles;
char *s;
- config = [[NSMutableDictionary alloc] initWithCapacity:0];
-
pool = [NSAutoreleasePool new];
-
- load_autoconf(config);
configFiles = [NSMutableArray arrayWithCapacity:3];
- [configFiles addObject:[[[config objectForKey:@"macports_conf_path"] stringByAppendingPathComponent:@"macports.conf"] stringByStandardizingPath]];
- [configFiles addObject:[[[config objectForKey:@"macports_user_dir"] stringByAppendingPathComponent:@"macports.conf"] stringByStandardizingPath]];
+
+ interp = Tcl_CreateInterp();
+ if (interp && Tcl_EvalFile(interp, "/Library/Tcl/macports1.0/macports_autoconf.tcl") == TCL_OK) {
+ NSString *tmp;
+ tmp = [NSString stringWithUTF8String:Tcl_GetVar(interp, "macports::autoconf::macports_conf_path", 0)];
+ [configFiles addObject:[[tmp stringByAppendingPathComponent:@"macports.conf"] stringByStandardizingPath]];
+ tmp = [NSString stringWithUTF8String:Tcl_GetVar(interp, "macports::autoconf::macports_user_dir", 0)];
+ [configFiles addObject:[[tmp stringByAppendingPathComponent:@"macports.conf"] stringByStandardizingPath]];
+ }
+ Tcl_DeleteInterp(interp);
+
if ((s = getenv("PORTSRC"))) {
[configFiles addObject:[[NSString stringWithUTF8String:s] stringByStandardizingPath]];
}
+ config = [[NSMutableDictionary alloc] initWithCapacity:0];
+
for (NSString *configFile in configFiles) {
NSString *file = [NSString stringWithContentsOfFile:configFile encoding:NSUTF8StringEncoding error:NULL];
[file enumerateLinesUsingBlock:^(NSString *line, BOOL *stop) {
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20091023/eca31c26/attachment-0001.html>
More information about the macports-changes
mailing list