Skip to content

Commit 056511b

Browse files
author
Rick Pasetto
authored
Adds carthage.sh to Loop (#335)
(see Carthage/Carthage#3019 for details)
1 parent d0aeeab commit 056511b

File tree

2 files changed

+20
-1
lines changed

2 files changed

+20
-1
lines changed

Loop.xcodeproj/project.pbxproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3129,7 +3129,7 @@
31293129
);
31303130
runOnlyForDeploymentPostprocessing = 0;
31313131
shellPath = /bin/sh;
3132-
shellScript = "if [ -f $PROJECT_DIR/.gitmodules ]; then\n echo \"Skipping checkout due to presence of .gitmodules file\"\n if [ $ACTION = \"install\" ]; then\n echo \"You're installing: Make sure to keep all submodules up-to-date and run carthage build after changes.\"\n fi\nelse\n echo \"Bootstrapping carthage dependencies\"\n unset LLVM_TARGET_TRIPLE_SUFFIX\n if ! cmp -s Cartfile.Resolved Carthage/Cartfile.resolved; then\n time /usr/local/bin/carthage bootstrap --project-directory \"$SRCROOT\" --cache-builds\n cp Cartfile.resolved Carthage\n else\n echo \"Carthage: not bootstrapping\"\n fi\nfi\n";
3132+
shellScript = "if [ -f $PROJECT_DIR/.gitmodules ]; then\n echo \"Skipping checkout due to presence of .gitmodules file\"\n if [ $ACTION = \"install\" ]; then\n echo \"You're installing: Make sure to keep all submodules up-to-date and run carthage build after changes.\"\n fi\nelse\n echo \"Bootstrapping Carthage dependencies...\"\n unset LLVM_TARGET_TRIPLE_SUFFIX\n\n if ! cmp -s Cartfile.Resolved Carthage/Cartfile.resolved; then\n time ./Scripts/carthage.sh bootstrap --project-directory \"$SRCROOT\" --platform ios --cache-builds --verbose || exit 1\n cp Cartfile.resolved Carthage\n else\n echo \"Carthage: not bootstrapping\"\n fi\nfi\n";
31333133
showEnvVarsInLog = 0;
31343134
};
31353135
432CF88220D8BCD90066B889 /* Homebrew & Carthage Setup */ = {

Scripts/carthage.sh

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
#!/usr/bin/env bash
2+
#
3+
# This script exists due to an issue with Carthage. The script comes from https://github.com/Carthage/Carthage/issues/3019#issuecomment-665136323
4+
5+
# carthage.sh
6+
# Usage example: ./carthage.sh build --platform iOS
7+
8+
set -euo pipefail
9+
10+
xcconfig=$(mktemp /tmp/static.xcconfig.XXXXXX)
11+
trap 'rm -f "$xcconfig"' INT TERM HUP EXIT
12+
13+
# For Xcode 12 make sure EXCLUDED_ARCHS is set to arm architectures otherwise
14+
# the build will fail on lipo due to duplicate architectures.
15+
echo 'EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_simulator__NATIVE_ARCH_64_BIT_x86_64__XCODE_1200 = arm64 arm64e armv7 armv7s armv6 armv8' >> $xcconfig
16+
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
17+
18+
export XCODE_XCCONFIG_FILE="$xcconfig"
19+
carthage "$@"

0 commit comments

Comments
 (0)