X-Git-Url: https://git.saurik.com/cycript.git/blobdiff_plain/3615a2f7f3a1a066c6c7e3ef66724a9398c238c2..fb486b846b9e31c15344c3bd6314b8fdd54aad0b:/libffi.sh diff --git a/libffi.sh b/libffi.sh index ab4f50e..fa01534 100755 --- a/libffi.sh +++ b/libffi.sh @@ -38,21 +38,30 @@ function arch() { archs+=("${arch}") mkdir "libffi.${arch}" - flags="-isysroot ${isysroot} -m${os}-version-min=${min}" + flags=() + flags+=(-isysroot "${isysroot}") + flags+=(-m${os}-version-min="${min}") + flags+=(-no-integrated-as) + flags+=(-fno-stack-protector) + flags+=(-O3 -g3) + + if [[ ${arch} == arm* && ${arch} != arm64 ]]; then + flags+=(-mthumb) + fi cd "libffi.${arch}" - CC="clang -arch ${arch}" CFLAGS="-no-integrated-as ${flags}" CPPFLAGS="${flags}" ../libffi/configure --host="${host}" + CC="clang -arch ${arch}" CFLAGS="${flags[*]}" CPPFLAGS="${flags[*]} $*" ../libffi/configure --host="${host}" make cd .. } -arch armv6 arm-apple-darwin10 iphoneos iphoneos 2.0 +arch armv6 arm-apple-darwin10 iphoneos iphoneos 2.0 -mllvm -arm-reserve-r9 arch armv7 arm-apple-darwin10 iphoneos iphoneos 2.0 arch armv7s arm-apple-darwin10 iphoneos iphoneos 2.0 -arch arm64 aarch64-apple-darwin10 iphoneos iphoneos 2.0 +arch arm64 aarch64-apple-darwin11 iphoneos iphoneos 2.0 arch i386 i386-apple-darwin10 iphonesimulator ios-simulator 4.0 -arch x86_64 x86_64-apple-darwin10 iphonesimulator ios-simulator 4.0 +arch x86_64 x86_64-apple-darwin11 iphonesimulator ios-simulator 4.0 libffi=() for arch in "${archs[@]}"; do