Guest User

Untitled

a guest
Dec 8th, 2016
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.04 KB | None | 0 0
  1. APP_PATH="${TARGET_BUILD_DIR}/${WRAPPER_NAME}"
  2.  
  3. # This script loops through the frameworks embedded in the application and
  4. # removes unused architectures.
  5. find "$APP_PATH" -name '*.framework' -type d | while read -r FRAMEWORK
  6. do
  7. FRAMEWORK_EXECUTABLE_NAME=$(defaults read "$FRAMEWORK/Info.plist" CFBundleExecutable)
  8. FRAMEWORK_EXECUTABLE_PATH="$FRAMEWORK/$FRAMEWORK_EXECUTABLE_NAME"
  9. echo "Executable is $FRAMEWORK_EXECUTABLE_PATH"
  10.  
  11. EXTRACTED_ARCHS=()
  12.  
  13. for ARCH in $ARCHS
  14. do
  15. echo "Extracting $ARCH from $FRAMEWORK_EXECUTABLE_NAME"
  16. lipo -extract "$ARCH" "$FRAMEWORK_EXECUTABLE_PATH" -o "$FRAMEWORK_EXECUTABLE_PATH-$ARCH"
  17. EXTRACTED_ARCHS+=("$FRAMEWORK_EXECUTABLE_PATH-$ARCH")
  18. done
  19.  
  20. echo "Merging extracted architectures: ${ARCHS}"
  21. lipo -o "$FRAMEWORK_EXECUTABLE_PATH-merged" -create "${EXTRACTED_ARCHS[@]}"
  22. rm "${EXTRACTED_ARCHS[@]}"
  23.  
  24. echo "Replacing original executable with thinned version"
  25. rm "$FRAMEWORK_EXECUTABLE_PATH"
  26. mv "$FRAMEWORK_EXECUTABLE_PATH-merged" "$FRAMEWORK_EXECUTABLE_PATH"
  27.  
  28. done
Add Comment
Please, Sign In to add comment