blob: 1ead940811c8e7bbf6154f48ae753199cb466df5 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
#!/bin/sh
# Convert an OpenCL source file into a C source file containing the
# OpenCL source as a C string. Also adds a #line directive so that
# compiler messages are useful.
input="$1"
output="$2"
name=$(basename "$input" | sed 's/.cl$//')
cat >$output <<EOF
// Generated from $input
const char *ff_opencl_source_$name =
"#line 1 \"$input\"\n"
EOF
# Convert \ to \\ and " to \", then add " to the start and end of the line.
cat "$input" | sed 's/\\/\\\\/g;s/\"/\\\"/g;s/^/\"/;s/$/\\n\"/' >>$output
echo ";" >>$output
|