37 строки
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			37 строки
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|   | #!/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 |