mirror of
				https://github.com/nyanmisaka/ffmpeg-rockchip.git
				synced 2025-10-31 12:36:41 +08:00 
			
		
		
		
	Merge remote-tracking branch 'qatar/master'
* qatar/master: Work around broken floating point limits on some systems. Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
		
							
								
								
									
										35
									
								
								compat/float/float.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								compat/float/float.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,35 @@ | |||||||
|  | /* | ||||||
|  |  * Work around broken floating point limits on some systems. | ||||||
|  |  * | ||||||
|  |  * 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 | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | #include_next <float.h> | ||||||
|  |  | ||||||
|  | #ifdef FLT_MAX | ||||||
|  | #undef  FLT_MAX | ||||||
|  | #define FLT_MAX 3.40282346638528859812e+38F | ||||||
|  |  | ||||||
|  | #undef  FLT_MIN | ||||||
|  | #define FLT_MIN 1.17549435082228750797e-38F | ||||||
|  |  | ||||||
|  | #undef  DBL_MAX | ||||||
|  | #define DBL_MAX ((double)1.79769313486231570815e+308L) | ||||||
|  |  | ||||||
|  | #undef  DBL_MIN | ||||||
|  | #define DBL_MIN ((double)2.22507385850720138309e-308L) | ||||||
|  | #endif | ||||||
							
								
								
									
										22
									
								
								compat/float/limits.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								compat/float/limits.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,22 @@ | |||||||
|  | /* | ||||||
|  |  * Work around broken floating point limits on some systems. | ||||||
|  |  * | ||||||
|  |  * 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 | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | #include_next <limits.h> | ||||||
|  | #include <float.h> | ||||||
							
								
								
									
										14
									
								
								configure
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										14
									
								
								configure
									
									
									
									
										vendored
									
									
								
							| @@ -1114,6 +1114,16 @@ check_builtin(){ | |||||||
|     check_code ld "$headers" "$builtin" "cc" "$@" && enable "$name" |     check_code ld "$headers" "$builtin" "cc" "$@" && enable "$name" | ||||||
| } | } | ||||||
|  |  | ||||||
|  | check_compile_assert(){ | ||||||
|  |     log check_compile_assert "$@" | ||||||
|  |     name=$1 | ||||||
|  |     headers=$2 | ||||||
|  |     condition=$3 | ||||||
|  |     shift 3 | ||||||
|  |     disable "$name" | ||||||
|  |     check_code cc "$headers" "char c[2 * !!($condition) - 1]" "$@" && enable "$name" | ||||||
|  | } | ||||||
|  |  | ||||||
| require(){ | require(){ | ||||||
|     name="$1" |     name="$1" | ||||||
|     header="$2" |     header="$2" | ||||||
| @@ -1574,6 +1584,7 @@ HAVE_LIST=" | |||||||
|     fast_clz |     fast_clz | ||||||
|     fast_cmov |     fast_cmov | ||||||
|     fcntl |     fcntl | ||||||
|  |     flt_lim | ||||||
|     fork |     fork | ||||||
|     getaddrinfo |     getaddrinfo | ||||||
|     gethrtime |     gethrtime | ||||||
| @@ -4000,6 +4011,9 @@ if enabled_all ccc libc_glibc; then | |||||||
|     add_ldflags -Wl,-z,now  # calls to libots crash without this |     add_ldflags -Wl,-z,now  # calls to libots crash without this | ||||||
| fi | fi | ||||||
|  |  | ||||||
|  | check_compile_assert flt_lim "float.h limits.h" "DBL_MAX == (double)DBL_MAX" || | ||||||
|  |     add_cppflags '-I\$(SRC_PATH)/compat/float' | ||||||
|  |  | ||||||
| esc(){ | esc(){ | ||||||
|     echo "$*" | sed 's/%/%25/g;s/:/%3a/g' |     echo "$*" | sed 's/%/%25/g;s/:/%3a/g' | ||||||
| } | } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Michael Niedermayer
					Michael Niedermayer