blob: 0c4da0bc9688c99c8c1436602718b6662a3ca67e [file] [log] [blame]
Thibault Wittemberg1f9ce462017-07-05 17:33:36 -04001#!/bin/bash
2EXPECTED_VERSION="SwiftGen v4.2.1 (Stencil v0.9.0, StencilSwiftKit v1.0.2, SwiftGenKit v1.1.0)"
3
4# Here execute the various SwiftGen commands you need
5run_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..."
12 swiftgen storyboards "$SRCDIR" -p "$TPLDIR/storyboards.stencil" --output "$OUTDIR/Storyboards.swift"
13 swiftgen images "$SRCDIR/Resources/Images.xcassets" -p "$TPLDIR/images.stencil" --output "$OUTDIR/Images.swift"
14 swiftgen strings "$SRCDIR/Resources/en.lproj/Localizable.strings" -p "$TPLDIR/strings.stencil" --output "$OUTDIR/Strings.swift"
15}
16
17
18
19# Main script to check if SwiftGen is installed, check the version, and run it only if version matches
20if 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
28else
29 echo "warning: SwiftGen not installed, download it from https://github.com/SwiftGen/SwiftGen"
30fi