@@ -2,51 +2,64 @@ rm -rf .build
2
2
mkdir .build
3
3
4
4
products=(RxSwift RxRelay RxCocoa RxTest RxBlocking)
5
+ BUILD_PATH=` realpath .build`
5
6
6
7
for product in ${products[@]} ; do
7
8
PROJECT_NAME=" $product "
8
9
9
10
# Generate iOS framework
10
- xcodebuild -workspace Rx.xcworkspace -configuration Release -archivePath " .build /${PROJECT_NAME} -iphoneos.xcarchive" -destination " generic/platform=iOS" SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES -scheme $PROJECT_NAME archive
11
+ xcodebuild -workspace Rx.xcworkspace -configuration Release -archivePath " ${BUILD_PATH} /${PROJECT_NAME} -iphoneos.xcarchive" -destination " generic/platform=iOS" SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES -scheme $PROJECT_NAME archive
11
12
12
13
# Generate iOS Simulator framework
13
- xcodebuild -workspace Rx.xcworkspace -configuration Release -archivePath " .build /${PROJECT_NAME} -iossimulator.xcarchive" -destination " generic/platform=iOS Simulator" SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES -scheme $PROJECT_NAME archive
14
+ xcodebuild -workspace Rx.xcworkspace -configuration Release -archivePath " ${BUILD_PATH} /${PROJECT_NAME} -iossimulator.xcarchive" -destination " generic/platform=iOS Simulator" SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES -scheme $PROJECT_NAME archive
14
15
15
16
# Generate macOS framework
16
- xcodebuild -workspace Rx.xcworkspace -configuration Release -archivePath " .build /${PROJECT_NAME} -macosx.xcarchive" -destination " generic/platform=macOS,name=Any Mac" SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES -scheme $PROJECT_NAME archive
17
+ xcodebuild -workspace Rx.xcworkspace -configuration Release -archivePath " ${BUILD_PATH} /${PROJECT_NAME} -macosx.xcarchive" -destination " generic/platform=macOS,name=Any Mac" SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES -scheme $PROJECT_NAME archive
17
18
18
19
# Generate tvOS framework
19
- xcodebuild -workspace Rx.xcworkspace -configuration Release -archivePath " .build /${PROJECT_NAME} -appletvos.xcarchive" -destination " generic/platform=tvOS" SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES -scheme $PROJECT_NAME archive
20
+ xcodebuild -workspace Rx.xcworkspace -configuration Release -archivePath " ${BUILD_PATH} /${PROJECT_NAME} -appletvos.xcarchive" -destination " generic/platform=tvOS" SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES -scheme $PROJECT_NAME archive
20
21
21
22
# Generate tvOS Simulator framework
22
- xcodebuild -workspace Rx.xcworkspace -configuration Release -archivePath " .build /${PROJECT_NAME} -appletvsimulator.xcarchive" -destination " generic/platform=tvOS Simulator" SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES -scheme $PROJECT_NAME archive
23
+ xcodebuild -workspace Rx.xcworkspace -configuration Release -archivePath " ${BUILD_PATH} /${PROJECT_NAME} -appletvsimulator.xcarchive" -destination " generic/platform=tvOS Simulator" SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES -scheme $PROJECT_NAME archive
23
24
24
25
# RxTest doesn't work on watchOS
25
26
if [[ " $product " != " RxTest" ]]; then
26
27
# Generate watchOS framework
27
- xcodebuild -workspace Rx.xcworkspace -configuration Release -archivePath " .build /${PROJECT_NAME} -watchos.xcarchive" -destination " generic/platform=watchOS" SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES -scheme $PROJECT_NAME archive
28
+ xcodebuild -workspace Rx.xcworkspace -configuration Release -archivePath " ${BUILD_PATH} /${PROJECT_NAME} -watchos.xcarchive" -destination " generic/platform=watchOS" SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES -scheme $PROJECT_NAME archive
28
29
29
30
# Generate watchOS Simulator framework
30
- xcodebuild -workspace Rx.xcworkspace -configuration Release -archivePath " .build /${PROJECT_NAME} -watchsimulator.xcarchive" -destination " generic/platform=watchOS Simulator" SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES -scheme $PROJECT_NAME archive
31
+ xcodebuild -workspace Rx.xcworkspace -configuration Release -archivePath " ${BUILD_PATH} /${PROJECT_NAME} -watchsimulator.xcarchive" -destination " generic/platform=watchOS Simulator" SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES -scheme $PROJECT_NAME archive
31
32
32
33
# Generate XCFramework
33
34
xcodebuild -create-xcframework \
34
- -framework " .build/${PROJECT_NAME} -iphoneos.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
35
- -framework " .build/${PROJECT_NAME} -iossimulator.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
36
- -framework " .build/${PROJECT_NAME} -macosx.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
37
- -framework " .build/${PROJECT_NAME} -watchos.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
38
- -framework " .build/${PROJECT_NAME} -watchsimulator.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
39
- -framework " .build/${PROJECT_NAME} -appletvos.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
40
- -framework " .build/${PROJECT_NAME} -appletvsimulator.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
35
+ -framework " ${BUILD_PATH} /${PROJECT_NAME} -iphoneos.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
36
+ -debug-symbols " ${BUILD_PATH} /${PROJECT_NAME} -iphoneos.xcarchive/dSYMs/${PROJECT_NAME} .framework.dSYM" \
37
+ -framework " ${BUILD_PATH} /${PROJECT_NAME} -iossimulator.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
38
+ -debug-symbols " ${BUILD_PATH} /${PROJECT_NAME} -iossimulator.xcarchive/dSYMs/${PROJECT_NAME} .framework.dSYM" \
39
+ -framework " ${BUILD_PATH} /${PROJECT_NAME} -macosx.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
40
+ -debug-symbols " ${BUILD_PATH} /${PROJECT_NAME} -macosx.xcarchive/dSYMs/${PROJECT_NAME} .framework.dSYM" \
41
+ -framework " ${BUILD_PATH} /${PROJECT_NAME} -watchos.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
42
+ -debug-symbols " ${BUILD_PATH} /${PROJECT_NAME} -watchos.xcarchive/dSYMs/${PROJECT_NAME} .framework.dSYM" \
43
+ -framework " ${BUILD_PATH} /${PROJECT_NAME} -watchsimulator.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
44
+ -debug-symbols " ${BUILD_PATH} /${PROJECT_NAME} -watchsimulator.xcarchive/dSYMs/${PROJECT_NAME} .framework.dSYM" \
45
+ -framework " ${BUILD_PATH} /${PROJECT_NAME} -appletvos.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
46
+ -debug-symbols " ${BUILD_PATH} /${PROJECT_NAME} -appletvos.xcarchive/dSYMs/${PROJECT_NAME} .framework.dSYM" \
47
+ -framework " ${BUILD_PATH} /${PROJECT_NAME} -appletvsimulator.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
48
+ -debug-symbols " ${BUILD_PATH} /${PROJECT_NAME} -appletvsimulator.xcarchive/dSYMs/${PROJECT_NAME} .framework.dSYM" \
41
49
-output " ./${PROJECT_NAME} .xcframework"
42
50
else
43
51
# Generate XCFramework
44
52
xcodebuild -create-xcframework \
45
- -framework " .build/${PROJECT_NAME} -iphoneos.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
46
- -framework " .build/${PROJECT_NAME} -iossimulator.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
47
- -framework " .build/${PROJECT_NAME} -macosx.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
48
- -framework " .build/${PROJECT_NAME} -appletvos.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
49
- -framework " .build/${PROJECT_NAME} -appletvsimulator.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
53
+ -framework " ${BUILD_PATH} /${PROJECT_NAME} -iphoneos.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
54
+ -debug-symbols " ${BUILD_PATH} /${PROJECT_NAME} -iphoneos.xcarchive/dSYMs/${PROJECT_NAME} .framework.dSYM" \
55
+ -framework " ${BUILD_PATH} /${PROJECT_NAME} -iossimulator.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
56
+ -debug-symbols " ${BUILD_PATH} /${PROJECT_NAME} -iossimulator.xcarchive/dSYMs/${PROJECT_NAME} .framework.dSYM" \
57
+ -framework " ${BUILD_PATH} /${PROJECT_NAME} -macosx.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
58
+ -debug-symbols " ${BUILD_PATH} /${PROJECT_NAME} -macosx.xcarchive/dSYMs/${PROJECT_NAME} .framework.dSYM" \
59
+ -framework " ${BUILD_PATH} /${PROJECT_NAME} -appletvos.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
60
+ -debug-symbols " ${BUILD_PATH} /${PROJECT_NAME} -appletvos.xcarchive/dSYMs/${PROJECT_NAME} .framework.dSYM" \
61
+ -framework " ${BUILD_PATH} /${PROJECT_NAME} -appletvsimulator.xcarchive/Products/Library/Frameworks/${PROJECT_NAME} .framework" \
62
+ -debug-symbols " ${BUILD_PATH} /${PROJECT_NAME} -appletvsimulator.xcarchive/dSYMs/${PROJECT_NAME} .framework.dSYM" \
50
63
-output " ./${PROJECT_NAME} .xcframework"
51
64
fi
52
65
0 commit comments