Add Carthage wrapper to circumvent issues with Xcode 12

Carthage is currently not working with Xcode 12. As a workaround a wrapper script has been proposed (see https://gist.github.com/skymobilebuilds/61f4a95bd62a3db36b52719aeab7e0d5). Until the issue is fixed and Carthage can built again with Xcode 12, the wrapper must be used instead of the direct `carthage` command.
This commit is contained in:
Danny Moesch 2020-09-19 15:30:29 +02:00 committed by Mingshen Sun
parent 293df9ea6e
commit cfd74c773d
4 changed files with 23 additions and 5 deletions

18
wcarthage Executable file
View file

@ -0,0 +1,18 @@
#!/bin/sh -e
echo "Applying Xcode 12 workaround ..."
xcconfig="/tmp/xc12-carthage.xcconfig"
echo 'EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_simulator__NATIVE_ARCH_64_BIT_x86_64__XCODE_1200__BUILD_12A7209 = arm64 arm64e armv7 armv7s armv6 armv8' > $xcconfig
echo 'EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_simulator__NATIVE_ARCH_64_BIT_x86_64__XCODE_1200 = $(EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_simulator__NATIVE_ARCH_64_BIT_x86_64__XCODE_1200__BUILD_$(XCODE_PRODUCT_BUILD_VERSION))' >> $xcconfig
echo 'EXCLUDED_ARCHS = $(inherited) $(EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_$(EFFECTIVE_PLATFORM_SUFFIX)__NATIVE_ARCH_64_BIT_$(NATIVE_ARCH_64_BIT)__XCODE_$(XCODE_VERSION_MAJOR))' >> $xcconfig
echo 'ONLY_ACTIVE_ARCH=NO' >> $xcconfig
echo 'VALID_ARCHS = $(inherited) x86_64' >> $xcconfig
export XCODE_XCCONFIG_FILE="$xcconfig"
echo "Workaround has been applied. xcconfig file can be found at '$XCODE_XCCONFIG_FILE'."
echo "Running Carthage ..."
carthage $@