at master 1.5 kB view raw
1# shellcheck shell=bash 2 3# Build using 'swift-build'. 4swiftpmBuildPhase() { 5 runHook preBuild 6 7 local buildCores=1 8 if [ "${enableParallelBuilding-1}" ]; then 9 buildCores="$NIX_BUILD_CORES" 10 fi 11 12 local flagsArray=( 13 -j "$buildCores" 14 -c "${swiftpmBuildConfig-release}" 15 ) 16 concatTo flagsArray swiftpmFlags swiftpmFlagsArray 17 18 echoCmd 'build flags' "${flagsArray[@]}" 19 TERM=dumb swift-build "${flagsArray[@]}" 20 21 runHook postBuild 22} 23 24if [ -z "${dontUseSwiftpmBuild-}" ] && [ -z "${buildPhase-}" ]; then 25 buildPhase=swiftpmBuildPhase 26fi 27 28# Check using 'swift-test'. 29swiftpmCheckPhase() { 30 runHook preCheck 31 32 local buildCores=1 33 if [ "${enableParallelBuilding-1}" ]; then 34 buildCores="$NIX_BUILD_CORES" 35 fi 36 37 local flagsArray=( 38 -j "$buildCores" 39 -c "${swiftpmBuildConfig-release}" 40 ) 41 concatTo flagsArray swiftpmFlags swiftpmFlagsArray 42 43 echoCmd 'check flags' "${flagsArray[@]}" 44 TERM=dumb swift-test "${flagsArray[@]}" 45 46 runHook postCheck 47} 48 49if [ -z "${dontUseSwiftpmCheck-}" ] && [ -z "${checkPhase-}" ]; then 50 checkPhase=swiftpmCheckPhase 51fi 52 53# Helper used to find the binary output path. 54# Useful for performing the installPhase of swiftpm packages. 55swiftpmBinPath() { 56 local flagsArray=( 57 -c "${swiftpmBuildConfig-release}" 58 ) 59 concatTo flagsArray swiftpmFlags swiftpmFlagsArray 60 61 swift-build --show-bin-path "${flagsArray[@]}" 62}