build-metal-shaders.sh (845B)
1 #!/bin/bash 2 3 set -x 4 set -e 5 cd `dirname "$0"` 6 7 generate_shaders() 8 { 9 fileplatform=$1 10 compileplatform=$2 11 sdkplatform=$3 12 minversion=$4 13 xcrun -sdk $sdkplatform metal -c -std=$compileplatform-metal1.1 -m$sdkplatform-version-min=$minversion -Wall -O3 -o ./sdl.air ./SDL_shaders_metal.metal || exit $? 14 xcrun -sdk $sdkplatform metal-ar rc sdl.metalar sdl.air || exit $? 15 xcrun -sdk $sdkplatform metallib -o sdl.metallib sdl.metalar || exit $? 16 xxd -i sdl.metallib | perl -w -p -e 's/\Aunsigned /const unsigned /;' >./SDL_shaders_metal_$fileplatform.h 17 rm -f sdl.air sdl.metalar sdl.metallib 18 } 19 20 generate_shaders osx osx macosx 10.11 21 generate_shaders ios ios iphoneos 8.0 22 generate_shaders iphonesimulator ios iphonesimulator 8.0 23 generate_shaders tvos ios appletvos 9.0 24 generate_shaders tvsimulator ios appletvsimulator 9.0