process_shader.sh
1 #!/bin/sh 2 3 set -o errexit 4 5 if [ -z "$1" -o -z "$2" ]; then 6 echo "Usage: $0 <in.glsl> <out.glsl.cpp>" 7 exit 1 8 fi 9 10 INFILE="$1" 11 OUTFILE="$2" 12 13 OUTDIR=$(dirname -- "$OUTFILE") 14 if [ ! -e "$OUTDIR" ]; then 15 mkdir -p "$OUTDIR" 16 fi 17 18 VARNAME=$(basename -- "$INFILE") 19 VARNAME=${VARNAME%.*} 20 21 echo "extern char const *$VARNAME;" > "$OUTFILE" 22 echo "char const *$VARNAME = R\"shader(" >> "$OUTFILE" 23 cat "$INFILE" >> "$OUTFILE" 24 echo ')shader";' >> "$OUTFILE"