Thibault Wittemberg | 1f9ce46 | 2017-07-05 17:33:36 -0400 | [diff] [blame] | 1 | #!/bin/bash |
Kateryna Kostiuk | f23abd3 | 2017-08-15 17:28:15 -0400 | [diff] [blame^] | 2 | EXPECTED_VERSION="SwiftGen v5.1.1 (Stencil v0.9.0, StencilSwiftKit v2.1.0, SwiftGenKit v2.1.0)" |
Thibault Wittemberg | 1f9ce46 | 2017-07-05 17:33:36 -0400 | [diff] [blame] | 3 | |
| 4 | # Here execute the various SwiftGen commands you need |
| 5 | run_swiftgen() { |
| 6 | if [ ! "$PROJECT_DIR" -o ! $"PROJECT_NAME" ]; then echo "Some variables are not set. Please run from an Xcode build phase"; exit 1; fi |
| 7 | SRCDIR="$PROJECT_DIR/$PROJECT_NAME" |
| 8 | OUTDIR="$SRCDIR/Constants/Generated" |
| 9 | TPLDIR=$(dirname $0) |
| 10 | |
| 11 | echo "SwiftGen: Generating files..." |
Kateryna Kostiuk | f23abd3 | 2017-08-15 17:28:15 -0400 | [diff] [blame^] | 12 | swiftgen storyboards "$SRCDIR" -t swift3 --output "$OUTDIR/Storyboards.swift" |
| 13 | swiftgen xcassets "$SRCDIR/Resources/Images.xcassets" -t swift3 --output "$OUTDIR/Images.swift" |
| 14 | swiftgen strings -t structured-swift3 "$SRCDIR/Resources/en.lproj/Localizable.strings" --output "$OUTDIR/Strings.swift" |
Thibault Wittemberg | 1f9ce46 | 2017-07-05 17:33:36 -0400 | [diff] [blame] | 15 | } |
| 16 | |
| 17 | |
| 18 | |
| 19 | # Main script to check if SwiftGen is installed, check the version, and run it only if version matches |
| 20 | if which swiftgen >/dev/null; then |
| 21 | CURRENT_VERSION=`swiftgen --version` |
| 22 | if [ "$CURRENT_VERSION" != "$EXPECTED_VERSION" ]; then |
| 23 | echo "error: SwiftGen version mismatch (expected ${EXPECTED_VERSION%% \(*\)}, got ${CURRENT_VERSION%% \(*\)})" |
| 24 | exit 1 |
| 25 | fi |
| 26 | |
| 27 | run_swiftgen |
| 28 | else |
| 29 | echo "warning: SwiftGen not installed, download it from https://github.com/SwiftGen/SwiftGen" |
| 30 | fi |