copy-plugins.sh 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #!/bin/sh -e
  2. # copy-plugins.sh
  3. # Loop
  4. #
  5. # Copyright © 2019 LoopKit Authors. All rights reserved.
  6. shopt -s nullglob
  7. # Copy device plugins
  8. function copy_plugins {
  9. echo "Looking for plugins in $1"
  10. for f in "$1"/*.loopplugin; do
  11. plugin=$(basename "$f")
  12. echo Copying plugin: $plugin to frameworks directory in app
  13. plugin_path="$(readlink -f "$f" || echo "$f")"
  14. plugin_as_framework_path="${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}/${plugin%.*}.framework"
  15. rsync -va --exclude=Frameworks "$plugin_path/." "${plugin_as_framework_path}"
  16. # Rename .plugin to .framework
  17. if [ "$EXPANDED_CODE_SIGN_IDENTITY" != "-" ] && [ "$EXPANDED_CODE_SIGN_IDENTITY" != "" ]; then
  18. export CODESIGN_ALLOCATE=${DT_TOOLCHAIN_DIR}/usr/bin/codesign_allocate
  19. echo "Signing ${plugin} with ${EXPANDED_CODE_SIGN_IDENTITY_NAME}"
  20. /usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} --timestamp=none --preserve-metadata=identifier,entitlements,flags "$plugin_as_framework_path"
  21. else
  22. echo "Skipping signing, no identity set"
  23. fi
  24. for framework_path in "${f}"/Frameworks/*.framework; do
  25. framework=$(basename "$framework_path")
  26. echo "Copying plugin's framework $framework_path to ${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}/."
  27. cp -avf "$framework_path" "${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}/."
  28. plugin_path="$(readlink -f "$f" || echo "$f")"
  29. if [ "$EXPANDED_CODE_SIGN_IDENTITY" != "-" ] && [ "$EXPANDED_CODE_SIGN_IDENTITY" != "" ]; then
  30. echo "Signing $framework for $plugin with $EXPANDED_CODE_SIGN_IDENTITY_NAME"
  31. /usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} --timestamp=none --preserve-metadata=identifier,entitlements,flags "${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}/${framework}"
  32. fi
  33. done
  34. done
  35. }
  36. copy_plugins "$BUILT_PRODUCTS_DIR"