X-Git-Url: https://git.saurik.com/cycript.git/blobdiff_plain/cb7b4fadaaa220075603c9c63860e22ff7ebcac1..0abb2a2f9d5b1c7fbe7a43619bab5291d7e55f87:/build.mk?ds=sidebyside diff --git a/build.mk b/build.mk index d415459..72f9988 100644 --- a/build.mk +++ b/build.mk @@ -54,6 +54,7 @@ framework := $(foreach os,ios osx,$(foreach file,$(framework),Cycript.$(os)/Cycr links := links += Cycript.lib/cynject +links += Cycript.lib/libcycript.cy links += Cycript.lib/libsubstrate.dylib links += Cycript.lib/cycript0.9 @@ -92,11 +93,12 @@ $(deb): Cycript.lib/cycript-apl Cycript.lib/libcycript.dylib Cycript.lib/libcycr mkdir -p package/DEBIAN sed -e 's/#/$(version)/' control.in >package/DEBIAN/control mkdir -p package/usr/{bin,lib} - cp -a modules package/usr/lib/cycript0.9 - $(lipo) -extract armv6 -output package/usr/bin/cycript Cycript.lib/cycript-apl + cp -a cycript0.9 package/usr/lib/cycript0.9 + $(lipo) -extract armv6 -extract arm64 -output package/usr/bin/cycript Cycript.lib/cycript-apl $(lipo) -extract armv6 -extract arm64 -output package/usr/lib/libcycript.dylib Cycript.lib/libcycript.dylib ln -s libcycript.dylib package/usr/lib/libcycript.0.dylib cp -a libcycript.cy package/usr/lib/libcycript.cy + cp -a Cycript.lib/libcycript.jar package/usr/lib/libcycript.jar cp -a Cycript.lib/libcycript.db package/usr/lib/libcycript.db sqlite3 package/usr/lib/libcycript.db "delete from cache where system & $$(($$(cat build.ios-arm{v6,64}/Makefile | sed -e '/^CY_SYSTEM = \([0-9]*\)$$/{s//\1/;p;};d;' | tr $$'\n' '|') 0)) == 0; vacuum full;" ./dpkg-deb.sh -Zlzma -b package $@ @@ -114,7 +116,7 @@ library := libffi libuv # http://osdir.com/ml/help-make-gnu/2012-04/msg00008.html define build_lar -Cycript.lib/$(1).a: $(1).$(2)/.libs/$(1).a +$(1).a: $(1).$(2)/.libs/$(1).a endef define build_any @@ -170,7 +172,7 @@ build.ios-$(1)/.libs/cycript: build-ios-$(1) @ endef -$(foreach arch,armv6,$(eval $(call build_arm,$(arch)))) +$(foreach arch,armv6 arm64,$(eval $(call build_arm,$(arch)))) define build_arm $(call build_lib,ios,$(1)) @@ -198,13 +200,14 @@ endef $(foreach arch,armeabi,$(eval $(call build_and,$(arch)))) -clean: $(clean) - rm -rf cycript Cycript.lib libcycript*.o - -$(patsubst %,Cycript.lib/%.a,$(library)): +clean += $(patsubst %,%.a,$(library)) +$(patsubst %,%.a,$(library)): @mkdir -p $(dir $@) $(lipo) -create -output $@ $^ +clean: $(clean) + rm -rf cycript Cycript.lib libcycript*.o + Cycript.lib/libcycript.dylib: build.osx-i386/.libs/libcycript.dylib build.osx-x86_64/.libs/libcycript.dylib build.ios-armv6/.libs/libcycript.dylib build.ios-arm64/.libs/libcycript.dylib @mkdir -p $(dir $@) $(lipo) -create -output $@ $^ @@ -232,7 +235,7 @@ Cycript.lib/cycript-pie: build.and-armeabi/cycript-pie install_name_tool -change /System/Library/{,Private}Frameworks/JavaScriptCore.framework/JavaScriptCore $@ codesign -s $(codesign) --entitlement cycript-$(word 2,$(subst ., ,$(subst -, ,$*))).xml $@ -Cycript.lib/cycript-apl: build.osx-i386/.libs/cycript_ build.osx-x86_64/.libs/cycript_ build.ios-armv6/.libs/cycript_ +Cycript.lib/cycript-apl: build.osx-i386/.libs/cycript_ build.osx-x86_64/.libs/cycript_ build.ios-armv6/.libs/cycript_ build.ios-arm64/.libs/cycript_ @mkdir -p $(dir $@) $(lipo) -create -output $@ $^ @@ -253,7 +256,7 @@ Cycript.lib/libcycript-sim.dylib: build.sim-i386/.libs/libcycript.dylib build.si $(lipo) -create -output $@ $^ codesign -s $(codesign) $@ -libcycript-%.o: build.%/.libs/libcycript.a $(patsubst %,Cycript.lib/%.a,$(library)) xcode.map +libcycript-%.o: build.%/.libs/libcycript.a $(patsubst %,%.a,$(library)) xcode.map @mkdir -p $(dir $@) ld -r -arch $$($(lipo) -detailed_info $< | sed -e '/^Non-fat file: / ! d; s/.*: //') -o $@ -all_load -exported_symbols_list xcode.map -x $(filter %.a,$^) @@ -277,8 +280,7 @@ Cycript.lib/libcycript.cy: Cycript.lib/libcycript.db: $(db) @mkdir -p $(dir $@) - ./libcycript.sh 0 $@ - ./libcycript.py $@ $^ + ./libcycript.py 0 $@ $(dir $(abspath $(lastword $(MAKEFILE_LIST)))) $^