[MPlayer-dev-eng] Adapt config.h's generation with some ffmpeg's commits

Etienne Buira etienne.buira at free.fr
Sat Dec 30 23:12:28 EET 2017


Adapt config.h's generation with some ffmpeg's commits

ffmpeg's related commits:
  e0d56f097f42bcdbe6c3b2f57df62a4da63f2094 - CONFIG_LINUX_PERF
  5de85c1029881970dc69e529dc48e277f3b5336c - HAVE_LOCAL_ALIGNED
  c708b5403346255ea5adc776645616cc7c61f078 - HAVE_MACH_MACH_TIME_H & HAVE_MACH_ABSOLUTE_TIME
  8f86e6623811f7713d5e72c13797e20fffb3df62 - HAVE_SIMD_ALIGN_64
  b7a3d1f249c9da9f21d10ea9137e304961da02ba - HAVE_AVX512
  1f4c62e84e586c52282a58ff878022a79feac4d1 - HAVE_DIRENT_H
  465becbc4f1fd6dc7973fb69a2d46e8c8580e719 - HAVE_ACCESS
  d65b9114f35c1afe2a7061f0a1ec957d33ba02b5 - HAVE_LSTAT
  6e073dd127f09f203bd21d40a1eb423afd183e7a - HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC
  534a2231f69638c3fdd998853ba4158ed79322a8 - HAVE_FCNTL

Regards

-------------- next part --------------
Index: configure
===================================================================
--- configure	(revision 38010)
+++ configure	(working copy)
@@ -177,6 +177,17 @@
   compile_check $TMPC $@
 }
 
+statement_check_3headers() {
+  cat > $TMPC << EOF
+#include <$1>
+#include <$2>
+#include <$3>
+int main(void) { $4; return 0; }
+EOF
+  shift 4
+  compile_check $TMPC $@
+}
+
 yasm_check() {
   echo >> "$TMPLOG"
   cat "$TMPS" >> "$TMPLOG"
@@ -573,6 +584,7 @@
   --enable-sse42            enable SSE4.2 [autodetect]
   --enable-avx              enable AVX [autodetect]
   --enable-avx2             enable AVX2 [autodetect]
+  --enable-avx512           enable AVX512 [autodetect]
   --enable-xop              enable XOP [autodetect]
   --enable-fma3             enable FMA3 [autodetect]
   --enable-fma4             enable FMA4 [autodetect]
@@ -632,6 +644,7 @@
 _sse4_2=auto
 _avx=auto
 _avx2=auto
+_avx512f=auto
 _xop=auto
 _fma3=auto
 _fma4=auto
@@ -870,6 +883,7 @@
 def_priority="#undef CONFIG_PRIORITY"
 def_pthread_cache="#undef PTHREAD_CACHE"
 def_simd_align_32='#define HAVE_SIMD_ALIGN_32 0'
+def_simd_align_64='#define HAVE_SIMD_ALIGN_64 0'
 shmem=no
 
 option_value(){
@@ -1420,6 +1434,8 @@
   --disable-avx) _avx=no;;
   --enable-avx2) _avx2=yes;;
   --disable-avx2) _avx2=no;;
+  --enable-avx512) _avx512f=yes;;
+  --disable-avx512) _avx512f=no;;
   --enable-xop) _xop=yes;;
   --disable-xop) _xop=no;;
   --enable-fma3) _fma3=yes;;
@@ -2031,6 +2047,7 @@
   extcheck $_sse4_2   'sse4_2'   'pcmpgtq %%xmm0, %%xmm0'
   extcheck $_avx      'avx'      'vpabsw %%xmm0, %%xmm0'
   extcheck $_avx2     'avx2'     'vextracti128 $0, %%ymm0, %%xmm0'
+  extcheck $_avx512f  'avx512'   'vmovdqa32 %%zmm0, %%zmm1{k1}{z}'
   extcheck $_xop      'xop'      'vpmacsdd %%xmm0, %%xmm1, %%xmm2, %%xmm3'
   extcheck $_fma3     'fma3'     'vfmadd132ps %%ymm0, %%ymm1, %%ymm2'
   extcheck $_fma4     'fma4'     'vfmaddps %%ymm0, %%ymm1, %%ymm2, %%ymm3'
@@ -2056,6 +2073,7 @@
 def_fast_64bit='#define HAVE_FAST_64BIT 0'
 def_fast_unaligned='#define HAVE_FAST_UNALIGNED 0'
 def_av_fast_unaligned='#define AV_HAVE_FAST_UNALIGNED 0'
+def_local_aligned='#define HAVE_LOCAL_ALIGNED 0'
 def_local_aligned_8='#define HAVE_LOCAL_ALIGNED_8 0'
 def_local_aligned_16='#define HAVE_LOCAL_ALIGNED_16 0'
 def_local_aligned_32='#define HAVE_LOCAL_ALIGNED_32 0'
@@ -2068,6 +2086,7 @@
   subarch='x86_32'
   def_fast_unaligned='#define HAVE_FAST_UNALIGNED 1'
   def_av_fast_unaligned='#define AV_HAVE_FAST_UNALIGNED 1'
+  def_local_aligned='#define HAVE_LOCAL_ALIGNED 1'
   def_local_aligned_8='#define HAVE_LOCAL_ALIGNED_8 1'
   def_local_aligned_16='#define HAVE_LOCAL_ALIGNED_16 1'
   def_local_aligned_32='#define HAVE_LOCAL_ALIGNED_32 1'
@@ -2323,6 +2342,7 @@
     subarch='x86_64'
     def_fast_unaligned='#define HAVE_FAST_UNALIGNED 1'
     def_av_fast_unaligned='#define AV_HAVE_FAST_UNALIGNED 1'
+    def_local_aligned='#define HAVE_LOCAL_ALIGNED 1'
     def_local_aligned_8='#define HAVE_LOCAL_ALIGNED_8 1'
     def_local_aligned_16='#define HAVE_LOCAL_ALIGNED_16 1'
     def_local_aligned_32='#define HAVE_LOCAL_ALIGNED_32 1'
@@ -2493,6 +2513,7 @@
     def_vsx='#define HAVE_VSX 0'
     def_fast_unaligned='#define HAVE_FAST_UNALIGNED 1'
     def_av_fast_unaligned='#define AV_HAVE_FAST_UNALIGNED 1'
+    def_local_aligned='#define HAVE_LOCAL_ALIGNED 1'
     def_local_aligned_8='#define HAVE_LOCAL_ALIGNED_8 1'
     def_local_aligned_16='#define HAVE_LOCAL_ALIGNED_16 1'
     def_local_aligned_32='#define HAVE_LOCAL_ALIGNED_32 1'
@@ -2769,6 +2790,9 @@
 fi
 
 test "$_avx" != no && def_simd_align_32='#define HAVE_SIMD_ALIGN_32 1'
+def_avx512='#define HAVE_AVX512 0'
+test "$_avx512f" == yes &&
+  { def_simd_align_64='#define HAVE_SIMD_ALIGN_64 1'; def_avx512='#define HAVE_AVX512 1'; }
 
 # endian testing
 echocheck "byte order"
@@ -3300,6 +3324,7 @@
 test "$_sse4_2"    = yes && cpuexts="SSE42 $cpuexts"
 test "$_avx"       = yes && cpuexts="AVX $cpuexts"
 test "$_avx2"      = yes && cpuexts="AVX2 $cpuexts"
+test "$_avx512"    = yes && cpuexts="AVX512 $cpuexts"
 test "$_xop"       = yes && cpuexts="XOP $cpuexts"
 test "$_fma3"      = yes && cpuexts="FMA3 $cpuexts"
 test "$_fma4"      = yes && cpuexts="FMA4 $cpuexts"
@@ -4518,7 +4543,64 @@
 fi
 echores "$_smb"
 
+echocheck "mach/mach_time.h"
+_mach_mach_time_h=no
+def_mach_mach_time_h='#define HAVE_MACH_MACH_TIME_H 0'
+header_check 'mach/mach_time.h' &&
+  { _mach_mach_time_h=yes; def_mach_mach_time_h='#define HAVE_MACH_MACH_TIME_H 1'; }
+echores "$_mach_mach_time_h"
 
+echocheck "mach_absolute_time()"
+_mach_absolute_time=no
+def_mach_absolute_time='#define HAVE_MACH_ABSOLUTE_TIME 0'
+cat > "$TMPC" << EOF
+$def_have_mach_mach_time_h
+#if HAVE_MACH_MACH_TIME_H
+#include <mach/mach_time.h>
+#endif
+int main(void) { mach_absolute_time(); return 0; }
+EOF
+compile_check "$TMPC" &&
+  { _mach_absolute_time=yes; def_mach_absolute_time='#define HAVE_MACH_ABSOLUTE_TIME 1'; }
+echores "$_mach_absolute_time"
+
+echocheck "dirent.h"
+_dirent_h=no
+def_dirent_h='#define HAVE_DIRENT_H 0'
+header_check 'dirent.h' &&
+  { _dirent_h=yes; def_dirent_h='#define HAVE_DIRENT_H 1'; }
+echores "$_dirent_h"
+
+echocheck "access()"
+_access=no
+def_access='#define HAVE_ACCESS 0'
+statement_check 'unistd.h' 'access("", 0)' &&
+  { _access=yes; def_access='#define HAVE_ACCESS 1'; }
+echores "$_access"
+
+echocheck "lstat()"
+_lstat=no
+def_lstat='#define HAVE_LSTAT 0'
+statement_check_3headers 'sys/types.h' 'sys/stat.h' 'unistd.h' 'lstat("", NULL)' &&
+  { _lstat=yes; def_lstat='#define HAVE_LSTAT 1'; }
+echores "$_lstat"
+
+echocheck "struct stat.st_mtim.tv_nsec"
+_struct_stat_st_mtim_tv_nsec=no
+def_struct_stat_st_mtim_tv_nsec='#define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0'
+statement_check 'sys/stat.h' 'struct stat ss; ss.st_mtim.tv_nsec = 0;' &&
+  { _struct_stat_st_mtim_tv_nsec=yes; def_struct_stat_st_mtim_tv_nsec='#define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1'; }
+echores "$_struct_stat_st_mtim_tv_nsec"
+
+echocheck "fcntl()"
+_fcntl=no
+def_fcntl='#define HAVE_FCNTL 0'
+statement_check_broken 'unistd.h' 'fcntl.h' 'fcntl(0, 0)' &&
+  { _fcntl=yes; def_fcntl='#define HAVE_FCNTL 1'; }
+echores "$_fcntl"
+
+
+
 #########
 # VIDEO #
 #########
@@ -8948,10 +9030,12 @@
 /* system headers */
 $def_alloca_h
 $def_altivec_h
+$def_dirent_h
 $def_malloc_h
 $def_mman_h
 $def_mman_has_map_failed
 $def_soundcard_h
+$def_struct_stat_st_mtim_tv_nsec
 $def_sys_soundcard_h
 $def_sys_sysinfo_h
 $def_sys_videoio_h
@@ -8963,13 +9047,16 @@
 
 
 /* system functions */
+$def_access
 $def_gethostbyname2
 $def_gettimeofday
 $def_clock_gettime
+$def_fcntl
 $def_glob
 $def_gmtime_r
 $def_langinfo
 $def_localtime_r
+$def_lstat
 $def_map_memalign
 $def_memalign
 $def_nanosleep
@@ -9032,6 +9119,7 @@
 $(ff_config_enable "$cpuexts_all" "$cpuexts" "#" "HAVE")
 $(ff_config_enable "$cpuexts_all" "$cpuexts_external" "#" "HAVE" "_EXTERNAL")
 $(ff_config_enable "$cpuexts_all" "$cpuexts" "#" "HAVE" "_INLINE")
+$def_avx512
 
 
 /* Blu-ray/DVD/VCD/CD */
@@ -9290,9 +9378,11 @@
 $def_fast_unaligned
 $def_gnu_as
 $def_ibm_asm
+$def_local_aligned
 $def_local_aligned_8
 $def_local_aligned_16
 $def_local_aligned_32
+$def_mach_mach_time_h
 $def_os2threads
 $def_pic
 $def_pthreads
@@ -9336,6 +9426,7 @@
 $def_log10f
 $def_lrint
 $def_lrintf
+$def_mach_absolute_time
 $def_mkstemp
 $def_mmap
 $def_posix_memalign
@@ -9394,6 +9485,7 @@
 #define HAVE_ISATTY 0
 #define HAVE_LDBRX 0
 #define HAVE_LIBC_MSVCRT 0
+#define CONFIG_LINUX_PERF 0
 #define HAVE_MACH_MACH_TIME_H 0
 #define HAVE_MAPVIEWOFFILE 0
 #define HAVE_MIPSDSP 0
@@ -9405,6 +9497,7 @@
 #define HAVE_SECTION_DATA_REL_RO 0
 #define HAVE_SIMD_ALIGN_16 1
 $def_simd_align_32
+$def_simd_align_64
 #define HAVE_STRERROR_R 0
 #define HAVE_STRPTIME 0
 #define HAVE_STRUCT_POLLFD 0


More information about the MPlayer-dev-eng mailing list