|
5 | 5 |
|
6 | 6 | BUILD_DIR=$(PWD)/TNSWidgets/build |
7 | 7 | rm -rf $BUILD_DIR |
| 8 | +arch=$(uname -m) |
8 | 9 |
|
9 | 10 | echo "Build for iphonesimulator" |
10 | 11 | xcodebuild \ |
@@ -47,43 +48,52 @@ xcodebuild \ |
47 | 48 | BUILD_LIBRARY_FOR_DISTRIBUTION=YES \ |
48 | 49 | -quiet |
49 | 50 |
|
50 | | -# Only available with Xcode >= 15.2 |
51 | | -echo "Build for visionOS Simulator" |
52 | | -xcodebuild \ |
53 | | - -project TNSWidgets/TNSWidgets.xcodeproj \ |
54 | | - -scheme TNSWidgets \ |
55 | | - -configuration Release \ |
56 | | - -destination "generic/platform=visionOS Simulator" \ |
57 | | - clean build \ |
58 | | - BUILD_DIR=$BUILD_DIR \ |
59 | | - SKIP_INSTALL=NO \ |
60 | | - BUILD_LIBRARY_FOR_DISTRIBUTION=YES \ |
61 | | - -quiet |
| 51 | +if [ "$arch" = "arm64" ]; then |
| 52 | + # Only available with Xcode >= 15.2 |
| 53 | + echo "Build for visionOS Simulator" |
| 54 | + xcodebuild \ |
| 55 | + -project TNSWidgets/TNSWidgets.xcodeproj \ |
| 56 | + -scheme TNSWidgets \ |
| 57 | + -configuration Release \ |
| 58 | + -destination "generic/platform=visionOS Simulator" \ |
| 59 | + clean build \ |
| 60 | + BUILD_DIR=$BUILD_DIR \ |
| 61 | + SKIP_INSTALL=NO \ |
| 62 | + BUILD_LIBRARY_FOR_DISTRIBUTION=YES \ |
| 63 | + -quiet |
62 | 64 |
|
63 | | -echo "Build for visionOS" |
64 | | -xcodebuild \ |
65 | | - -project TNSWidgets/TNSWidgets.xcodeproj \ |
66 | | - -scheme TNSWidgets \ |
67 | | - -configuration Release \ |
68 | | - -destination "generic/platform=visionOS" \ |
69 | | - clean build \ |
70 | | - BUILD_DIR=$BUILD_DIR \ |
71 | | - SKIP_INSTALL=NO \ |
72 | | - BUILD_LIBRARY_FOR_DISTRIBUTION=YES \ |
73 | | - -quiet |
| 65 | + echo "Build for visionOS" |
| 66 | + xcodebuild \ |
| 67 | + -project TNSWidgets/TNSWidgets.xcodeproj \ |
| 68 | + -scheme TNSWidgets \ |
| 69 | + -configuration Release \ |
| 70 | + -destination "generic/platform=visionOS" \ |
| 71 | + clean build \ |
| 72 | + BUILD_DIR=$BUILD_DIR \ |
| 73 | + SKIP_INSTALL=NO \ |
| 74 | + BUILD_LIBRARY_FOR_DISTRIBUTION=YES \ |
| 75 | + -quiet |
| 76 | +fi |
74 | 77 |
|
75 | 78 | echo "Creating XCFramework" |
76 | 79 | BASE=$BUILD_DIR/Release |
77 | | -xcodebuild \ |
78 | | - -create-xcframework \ |
| 80 | + |
| 81 | +extra_frameworks="" |
| 82 | + |
| 83 | +# Check hardware arch (works even if running under Rosetta) |
| 84 | +if [ "$arch" = "arm64" ]; then |
| 85 | + extra_frameworks="\ |
| 86 | + -framework $BASE-xrsimulator/TNSWidgets.framework \ |
| 87 | + -debug-symbols $BASE-xrsimulator/TNSWidgets.framework.dSYM \ |
| 88 | + -framework $BASE-xros/TNSWidgets.framework \ |
| 89 | + -debug-symbols $BASE-xros/TNSWidgets.framework.dSYM" |
| 90 | +fi |
| 91 | +xcodebuild -create-xcframework \ |
79 | 92 | -framework $BASE-iphoneos/TNSWidgets.framework \ |
80 | 93 | -debug-symbols $BASE-iphoneos/TNSWidgets.framework.dSYM \ |
81 | 94 | -framework $BASE-iphonesimulator/TNSWidgets.framework \ |
82 | 95 | -debug-symbols $BASE-iphonesimulator/TNSWidgets.framework.dSYM \ |
83 | 96 | -framework $BASE-maccatalyst/TNSWidgets.framework \ |
84 | 97 | -debug-symbols $BASE-maccatalyst/TNSWidgets.framework.dSYM \ |
85 | | - -framework $BASE-xrsimulator/TNSWidgets.framework \ |
86 | | - -debug-symbols $BASE-xrsimulator/TNSWidgets.framework.dSYM \ |
87 | | - -framework $BASE-xros/TNSWidgets.framework \ |
88 | | - -debug-symbols $BASE-xros/TNSWidgets.framework.dSYM \ |
| 98 | + $extra_frameworks \ |
89 | 99 | -output $BUILD_DIR/TNSWidgets.xcframework |
0 commit comments