]> git.saurik.com Git - uikittools.git/blobdiff - makefile
Apple's newer LLVM backends generate garbage code.
[uikittools.git] / makefile
index 7ba5ac8a88e8618cbef8e652ae50b34f09d713d0..46abed4d15a62184ce2a08cceca8e5fa23020c96 100644 (file)
--- a/makefile
+++ b/makefile
@@ -1,4 +1,4 @@
-uikittools = uiduid uicache uiopen gssc sbdidlaunch sbreload cfversion iomfsetgamma libuicache.dylib
+uikittools = uiduid uicache uiopen gssc sbdidlaunch sbreload cfversion iomfsetgamma
 
 all: $(uikittools)
 
@@ -7,38 +7,35 @@ clean:
 
 .PHONY: all clean package
 
-cfversion := -framework CoreFoundation
-gssc := -framework CoreFoundation
-sbdidlaunch := -framework CoreFoundation -framework SpringBoardServices
-uicache := -framework Foundation -framework UIKit # XXX: UIKit -> MobileCoreServices
-uiduid := -framework Foundation -framework UIKit
-uiopen := -framework Foundation -framework UIKit
-uishoot := -framework CoreFoundation -framework Foundation -framework UIKit
-extrainst_ := -framework CoreFoundation -framework Foundation
+private := -F/System/Library/PrivateFrameworks
+
+flags := -Os -Werror
+flags += -framework CoreFoundation
+flags += -framework Foundation
+
+gssc := -lobjc
+iomfsetgamma := -I. $(private) -framework IOKit -framework IOMobileFramebuffer
+sbdidlaunch := $(private) -framework SpringBoardServices
+uicache := -framework UIKit # XXX: UIKit -> MobileCoreServices
+uiduid := -framework UIKit
+uiopen := -framework UIKit
+uishoot := -framework UIKit
 
 uicache: csstore.cpp
 extrainst_: csstore.cpp
 
-%.dylib: %.mm
-       $${PKG_TARG}-g++ -Wall -Werror -dynamiclib -o $@ $^ $($@) -F"$${PKG_ROOT}"/System/Library/PrivateFrameworks -lobjc -framework CoreFoundation -framework Foundation
-       ldid -S $@
-
 %: %.mm
-       $${PKG_TARG}-g++ -Wall -Werror -o $@ $^ $($@) -F"$${PKG_ROOT}"/System/Library/PrivateFrameworks -lobjc
+       sudo xcode-select --switch /Applications/Xcode-4.6.3.app
+       cycc -i2.0 -o$@ -- $^ $(flags) $($@)
        ldid -S$(wildcard $@.xml) $@
 
 %: %.c
-       $${PKG_TARG}-gcc -Wall -Werror -o $@ $< -framework CoreFoundation
-       ldid -S$(wildcard $@.xml) $@
-
-iomfsetgamma: iomfsetgamma.c
-       $${PKG_TARG}-gcc -Wall -Werror -o $@ $< -F"$${PKG_ROOT}"/System/Library/PrivateFrameworks -framework IOKit -framework IOMobileFramebuffer
+       sudo xcode-select --switch /Applications/Xcode-4.6.3.app
+       cycc -i2.0 -o$@ -- -x c $^ $(flags) $($@)
        ldid -S$(wildcard $@.xml) $@
 
 package: all extrainst_
-       rm -rf _
-       mkdir -p _/usr/lib
-       cp -a $(filter %.dylib,$(uikittools)) _/usr/lib
+       sudo rm -rf _
        mkdir -p _/usr/bin
        cp -a $(filter-out %.dylib,$(uikittools)) _/usr/bin
        mkdir -p _/DEBIAN
@@ -46,5 +43,7 @@ package: all extrainst_
        cp -a extrainst_ _/DEBIAN/
        mkdir -p debs
        ln -sf debs/uikittools_$$(./version.sh)_iphoneos-arm.deb uikittools.deb
+       sudo chown -R 0 _
+       sudo chgrp -R 0 _
        dpkg-deb -b _ uikittools.deb
        readlink uikittools.deb