Skip to content

Commit

Permalink
fix: more secure xcframework manipulation
Browse files Browse the repository at this point in the history
  • Loading branch information
samuelOsborne committed Jan 30, 2025
1 parent e70f105 commit 46e332f
Showing 1 changed file with 27 additions and 62 deletions.
89 changes: 27 additions & 62 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -481,72 +481,37 @@ endef
define APPLE_RELEASE
rm -rf $(RELEASE)/$(APPLE)
mkdir -p $(RELEASE)/$(APPLE)
$(XCODEBUILD) -create-xcframework \
$$(find $(RUNTIME_FFI)/$(APPLE_BUILD) -type d -depth 2 | sed 's/^/-framework /' | tr '\n' ' ') \
-output $(RELEASE)/$(APPLE)/$(DOTLOTTIE_PLAYER_XCFRAMEWORK)
$(XCODEBUILD) -create-xcframework \
$$(find $(RUNTIME_FFI)/$(APPLE_BUILD) -type d -depth 2 | sed 's/^/-framework /' | tr '\n' ' ') \
-output $(RELEASE)/$(APPLE)/$(DOTLOTTIE_PLAYER_XCFRAMEWORK)
cp $(RUNTIME_FFI)/$(RUNTIME_FFI_UNIFFI_BINDINGS)/$(SWIFT)/$(DOTLOTTIE_PLAYER_SWIFT) $(RELEASE)/$(APPLE)/.
cd $(RELEASE)/$(APPLE) && \
cd $(DOTLOTTIE_PLAYER_XCFRAMEWORK) && \
cd ios-arm64 && \
cd DotLottiePlayer.framework && \
mkdir A && \
mkdir Resources && \
mv Info.plist Resources && \
mkdir Versions && \
mv Resources/A && \
mv Modules/A && \
mv DotLottiePlayer/A && \
mv Headers/A && \
mv A Versions && \
cd Versions && \
ln -s A Current && \
cd .. && \
ln -s Versions/Current/DotLottiePlayer DotLottiePlayer && \
ln -s Versions/Current/Headers/ Headers && \
ln -s Versions/Current/Modules/ Modules && \
ln -s Versions/Current/Resources/ Resources && \
cd ../.. && \
cd ios-arm64_x86_64-simulator && \
cd DotLottiePlayer.framework && \
mkdir A && \
mkdir Resources && \
mv Info.plist Resources && \
mkdir Versions && \
mv Resources/A && \
mv Modules/A && \
mv DotLottiePlayer/A && \
mv Headers/A && \
mv A Versions && \
cd Versions && \
ln -s A Current && \
cd .. && \
ln -s Versions/Current/DotLottiePlayer DotLottiePlayer && \
ln -s Versions/Current/Headers/ Headers && \
ln -s Versions/Current/Modules/ Modules && \
ln -s Versions/Current/Resources/ Resources && \
cd ../.. && \
cd macos-arm64_x86_64 && \
cd DotLottiePlayer.framework && \
mkdir A && \
mkdir Resources && \
mv Info.plist Resources && \
mkdir Versions && \
mv Resources/A && \
mv Modules/A && \
mv DotLottiePlayer/A && \
mv Headers/A && \
mv A Versions && \
cd Versions && \
ln -s A Current && \
cd .. && \
ln -s Versions/Current/DotLottiePlayer DotLottiePlayer && \
ln -s Versions/Current/Headers/ Headers && \
ln -s Versions/Current/Modules/ Modules && \
ln -s Versions/Current/Resources/ Resources

# Add framework structure for each architecture
for arch in ios-arm64 ios-arm64_x86_64-simulator macos-arm64_x86_64; do \
if [ -d "$(RELEASE)/$(APPLE)/$(DOTLOTTIE_PLAYER_XCFRAMEWORK)/$$arch/DotLottiePlayer.framework" ]; then \
cd "$(RELEASE)/$(APPLE)/$(DOTLOTTIE_PLAYER_XCFRAMEWORK)/$$arch/DotLottiePlayer.framework" && \
mkdir A && \
mkdir Resources && \
mv Info.plist Resources/ && \
mkdir Versions && \
mv Resources A/ && \
mv Modules A/ && \
mv DotLottiePlayer A/ && \
mv Headers A/ && \
mv A Versions/ && \
cd Versions && \
ln -s A Current && \
cd .. && \
ln -s Versions/Current/DotLottiePlayer DotLottiePlayer && \
ln -s Versions/Current/Headers Headers && \
ln -s Versions/Current/Modules Modules && \
ln -s Versions/Current/Resources Resources; \
fi \
done

cd $(RELEASE)/$(APPLE) && \
rm -f $(DOTLOTTIE_PLAYER).$(DARWIN).tar.gz && \
tar zcf $(DOTLOTTIE_PLAYER).$(DARWIN).tar.gz *

endef

define WASM_RELEASE
Expand Down

0 comments on commit 46e332f

Please sign in to comment.