37 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/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.
 | |
| 
 | |
| # This file is part of FFmpeg.
 | |
| #
 | |
| # FFmpeg is free software; you can redistribute it and/or
 | |
| # modify it under the terms of the GNU Lesser General Public
 | |
| # License as published by the Free Software Foundation; either
 | |
| # version 2.1 of the License, or (at your option) any later version.
 | |
| #
 | |
| # FFmpeg is distributed in the hope that it will be useful,
 | |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 | |
| # See the GNU Lesser General Public License for more details.
 | |
| #
 | |
| # You should have received a copy of the GNU Lesser General Public License
 | |
| # along with FFmpeg; if not, write to the Free Software Foundation, Inc.,
 | |
| # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 | |
| 
 | |
| 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
 |