]>
git.saurik.com Git - cycript.git/blob - libffi.sh
1d13f9b58c6e2fff82914f20dc6b282f54f52a56
   3 # Cycript - Optimizing JavaScript Compiler/Runtime 
   4 # Copyright (C) 2009-2013  Jay Freeman (saurik) 
   6 # GNU General Public License, Version 3 {{{ 
   8 # Cycript is free software: you can redistribute it and/or modify 
   9 # it under the terms of the GNU General Public License as published 
  10 # by the Free Software Foundation, either version 3 of the License, 
  11 # or (at your option) any later version. 
  13 # Cycript is distributed in the hope that it will be useful, but 
  14 # WITHOUT ANY WARRANTY; without even the implied warranty of 
  15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
  16 # GNU General Public License for more details. 
  18 # You should have received a copy of the GNU General Public License 
  19 # along with Cycript.  If not, see <http://www.gnu.org/licenses/>. 
  33     rm -rf "libffi.${arch}" 
  34     if ! isysroot
=$(xcodebuild -sdk "${sdk}" -version Path); then 
  39     mkdir "libffi.${arch}" 
  42     flags
+=(-isysroot "${isysroot}") 
  43     flags
+=(-m${os}-version-min="${min}") 
  44     flags
+=(-no-integrated-as) 
  45     flags
+=(-fno-stack-protector) 
  49     CC
="clang -arch ${arch}" CFLAGS
="${flags[*]}" CPPFLAGS
="${flags[*]}" ..
/libffi
/configure 
--host="${host}" 
  54 arch armv6 arm
-apple-darwin10 iphoneos iphoneos 
2.0 
  55 arch armv7 arm
-apple-darwin10 iphoneos iphoneos 
2.0 
  56 arch armv7s arm
-apple-darwin10 iphoneos iphoneos 
2.0 
  57 arch arm64 aarch64
-apple-darwin11 iphoneos iphoneos 
2.0 
  59 arch i386 i386
-apple-darwin10 iphonesimulator ios
-simulator 4.0 
  60 arch x86_64 x86_64
-apple-darwin11 iphonesimulator ios
-simulator 4.0 
  63 for arch 
in "${archs[@]}"; do 
  64     libffi
+=(libffi.
"${arch}"/.libs
/libffi.a
) 
  67 lipo 
-create -output libffi.a 
"${libffi[@]}"