Despite using SleepToLock, I hate SleepToLock :(.
[cydget.git] / makefile
1 webcore := WebCore-514
2 jscore := JavaScriptCore-521
3
4 cycc = cycc -i2.0 -o$@ -- $(filter %.mm,$^) -Xarch_armv6 -marm -g0 -O2 -I. -F/System/Library/PrivateFrameworks
5
6 all: CydgetLoader.dylib WebCycriptLockScreen CydgetSettings
7
8 clean::
9         rm -f CydgetLoader.dylib CydgetSettings WebCycriptLockScreen
10
11 CydgetLoader.dylib: CydgetLoader.mm makefile
12         $(cycc) -dynamiclib -framework Foundation -framework UIKit -framework CydiaSubstrate
13
14 CydgetSettings: CydgetSettings.mm makefile
15         $(cycc) -dynamiclib -framework Foundation -framework UIKit -framework Preferences
16
17 WebCycriptLockScreen: LockScreen.mm yieldToSelector.mm makefile
18         $(cycc) -bundle -isystem sysroot/usr/include \
19             -I$(jscore) -iquote$(jscore)/{parser,runtime} \
20             -framework Foundation -framework UIKit \
21             -framework CydiaSubstrate -framework CFNetwork \
22             -framework JavaScriptCore -framework WebKit \
23             -framework TelephonyUI -framework SpringBoardUI \
24             -Xarch_armv6 -Lsysroot/usr/lib -Xarch_armv6 -lpcre \
25             -Xarch_arm64 -DUSE_ICU_REGEX -Xarch_arm64 -licucore \
26             -Wl,-U,__ZN3JSC7UString3Rep7destroyEv \
27             -Wl,-U,__ZN3JSC7UStringC1EPKc \
28             -Wl,-U,__ZN3JSC7UStringC1EPKti \
29             -Wl,-U,__ZNK3JSC7UString6substrEii \
30             -Wno-mismatched-tags -Wno-tautological-constant-out-of-range-compare
31         install_name_tool -change /System/Library/{,Private}Frameworks/JavaScriptCore.framework/JavaScriptCore $@
32         ldid -S $@
33
34 deb: all
35         rm -rf package
36         mkdir -p package/DEBIAN
37         mkdir -p package/Library/MobileSubstrate/DynamicLibraries
38         sed -e 's/%/$(shell cycc -V)/' control.in >package/DEBIAN/control
39         mkdir -p package/Library/PreferenceLoader/Preferences;
40         cp -a CydgetLoader.{dylib,plist} package/Library/MobileSubstrate/DynamicLibraries
41         mkdir -p package/System/Library/LockCydgets
42         cp -a Welcome.cydget package/System/Library/LockCydgets/Welcome.cydget
43         cp -a AwayView.cydget package/System/Library/LockCydgets/AwayView.cydget
44         cp -a PhotoExample.cydget package/System/Library/LockCydgets/PhotoExample.cydget
45         cp -a PhotoExamplePlus.cydget package/System/Library/LockCydgets/PhotoExamplePlus.cydget
46         mkdir -p package/System/Library/SpringBoardPlugins/WebCycriptLockScreen.bundle
47         cp -a Info.plist package/System/Library/SpringBoardPlugins/WebCycriptLockScreen.bundle
48         cp -a WebCycriptLockScreen package/System/Library/SpringBoardPlugins/WebCycriptLockScreen.bundle
49         mkdir -p package/Library/PreferenceLoader/Preferences
50         mkdir -p package/System/Library/PreferenceBundles
51         cp -a CydgetSettings.plist package/Library/PreferenceLoader/Preferences
52         cp -a CydgetSettings.bundle package/System/Library/PreferenceBundles/CydgetSettings.bundle
53         cp -a Icon-Small.png package/System/Library/PreferenceBundles/CydgetSettings.bundle/icon.png
54         cp -a SearchResultsCheckmarkClear.png CydgetSettings package/System/Library/PreferenceBundles/CydgetSettings.bundle
55         deb=$$(grep ^Package: package/DEBIAN/control | cut -d ' ' -f 2-)_$$(grep ^Version: package/DEBIAN/control | cut -d ' ' -f 2)_iphoneos-arm.deb; dpkg-deb -b package "$$deb"; ln -sfv "$$deb" cydget.deb