From 7141b4254fb4c6c61b779a3becd1e285bca5495d Mon Sep 17 00:00:00 2001 From: "Jay Freeman (saurik)" Date: Wed, 26 Oct 2011 14:23:08 +0000 Subject: [PATCH] Remove gratuitous linking from gssc (for Substrate). --- gssc.mm | 13 +++++++------ makefile | 10 +++++++++- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/gssc.mm b/gssc.mm index 4932174..434431a 100644 --- a/gssc.mm +++ b/gssc.mm @@ -2,6 +2,7 @@ #import #include #include +#include static CFArrayRef (*$GSSystemCopyCapability)(CFStringRef); static CFArrayRef (*$GSSystemGetCapability)(CFStringRef); @@ -17,12 +18,15 @@ void OnGSCapabilityChanged( } int main(int argc, char *argv[]) { - NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + dlopen("/System/Library/Frameworks/Foundation.framework/Foundation", RTLD_GLOBAL | RTLD_LAZY); + dlopen("/System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices", RTLD_GLOBAL | RTLD_LAZY); + + NSAutoreleasePool *pool = [[objc_getClass("NSAutoreleasePool") alloc] init]; NSString *name = nil; if (argc == 2) - name = [NSString stringWithUTF8String:argv[0]]; + name = [objc_getClass("NSString") stringWithUTF8String:argv[0]]; else if (argc > 2) { fprintf(stderr, "usage: %s [capability]\n", argv[0]); exit(1); @@ -60,10 +64,7 @@ int main(int argc, char *argv[]) { CFRunLoopRun(); } - NSLog(@"%@", capability); - - /*for (NSString *value in capability) - printf("%s\n", [value UTF8String]);*/ + printf("%s\n", capability == nil ? "(null)" : [[capability description] UTF8String]); [pool release]; diff --git a/makefile b/makefile index 1695a75..6b39041 100644 --- a/makefile +++ b/makefile @@ -7,8 +7,16 @@ clean: .PHONY: all clean package +cfversion := -framework CoreFoundation +gssc := -framework CoreFoundation +sbdidlaunch := -framework CoreFoundation -framework SpringBoardServices +uicache := -framework Foundation +uiduid := -framework Foundation -framework UIKit +uiopen := -framework Foundation -framework UIKit +uishoot := -framework CoreFoundation -framework Foundation -framework UIKit + %: %.mm - $${PKG_TARG}-g++ -Wall -Werror -o $@ $< -framework CoreFoundation -framework Foundation -framework UIKit -framework GraphicsServices -F"$${PKG_ROOT}"/System/Library/PrivateFrameworks -lobjc -framework SpringBoardServices + $${PKG_TARG}-g++ -Wall -Werror -o $@ $< $($@) -F"$${PKG_ROOT}"/System/Library/PrivateFrameworks -lobjc ldid -S $@ %: %.c -- 2.45.2