Ticket #438: configure.log

File configure.log, 146.7 KB (added by mslama@…, 21 years ago)

configure.log

Line 
1============ Checking for cc version ============
2Result is: not found
3##########################################
4
5============ Checking for gcc version ============
6Result is: 3.4.3, ok
7##########################################
8
9============ Checking for host cc ============
10Result is: gcc
11##########################################
12
13============ Checking for cross compilation ============
14
15int main() { return 0; }
16
17gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
18
19ldd /tmp/mplayer-conf-6219-19072.o
20 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
21 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
22
23Result is: no
24##########################################
25
26============ Checking for CPU vendor ============
27Result is: AuthenticAMD (15:39:1)
28##########################################
29
30============ Checking for CPU type ============
31Result is: AMD Opteron(tm) Processor 152
32##########################################
33
34============ Checking for GCC & CPU optimization abilities ============
35
36int main(void) { return 0; }
37
38gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -march=k8 -mtune=k8
39
40ldd /tmp/mplayer-conf-6219-19072.o
41 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
42 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
43
44Result is: k8
45##########################################
46
47============ Checking for kernel support of mmx ============
48
49#include <signal.h>
50void catch() { exit(1); }
51int main(void){
52 signal(SIGILL, catch);
53 __asm__ __volatile__ ("emms":::"memory");return(0);
54}
55
56gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
57
58ldd /tmp/mplayer-conf-6219-19072.o
59 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
60 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
61
62Result is: yes
63##########################################
64
65============ Checking for kernel support of mmx2 ============
66
67#include <signal.h>
68void catch() { exit(1); }
69int main(void){
70 signal(SIGILL, catch);
71 __asm__ __volatile__ ("sfence":::"memory");return(0);
72}
73
74gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
75
76ldd /tmp/mplayer-conf-6219-19072.o
77 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
78 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
79
80Result is: yes
81##########################################
82
83============ Checking for kernel support of 3dnow ============
84
85#include <signal.h>
86void catch() { exit(1); }
87int main(void){
88 signal(SIGILL, catch);
89 __asm__ __volatile__ ("femms":::"memory");return(0);
90}
91
92gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
93
94ldd /tmp/mplayer-conf-6219-19072.o
95 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
96 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
97
98Result is: yes
99##########################################
100
101============ Checking for kernel support of 3dnowex ============
102
103#include <signal.h>
104void catch() { exit(1); }
105int main(void){
106 signal(SIGILL, catch);
107 __asm__ __volatile__ ("pswapd %%mm0, %%mm0":::"memory");return(0);
108}
109
110gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
111
112ldd /tmp/mplayer-conf-6219-19072.o
113 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
114 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
115
116Result is: yes
117##########################################
118
119============ Checking for kernel support of sse ============
120
121#include <signal.h>
122void catch() { exit(1); }
123int main(void){
124 signal(SIGILL, catch);
125 __asm__ __volatile__ ("xorps %%xmm0, %%xmm0":::"memory");return(0);
126}
127
128gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
129
130ldd /tmp/mplayer-conf-6219-19072.o
131 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
132 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
133
134Result is: yes
135##########################################
136
137============ Checking for kernel support of sse2 ============
138
139#include <signal.h>
140void catch() { exit(1); }
141int main(void){
142 signal(SIGILL, catch);
143 __asm__ __volatile__ ("xorpd %%xmm0, %%xmm0":::"memory");return(0);
144}
145
146gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
147
148ldd /tmp/mplayer-conf-6219-19072.o
149 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
150 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
151
152Result is: yes
153##########################################
154
155============ Checking for mtrr support ============
156Result is: yes
157##########################################
158
159============ Checking for assembler support of -pipe option ============
160
161int main(void) { return 0; }
162
163gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -pipe
164
165ldd /tmp/mplayer-conf-6219-19072.o
166 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
167 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
168
169Result is: yes
170##########################################
171
172============ Checking for assembler (as 2.16.1) ============
173Result is: ok
174##########################################
175
176============ Checking for Linux kernel version ============
177Result is: 2.6.9-5.EL, ok
178##########################################
179
180============ Checking for mplayer binary name ============
181Result is: mplayer
182##########################################
183
184============ Checking for awk ============
185./configure: line 2305: mawk: command not found
186
187Result is: gawk
188##########################################
189
190============ Checking for extra headers ============
191Result is: none
192##########################################
193
194============ Checking for extra libs ============
195Result is: none
196##########################################
197
198============ Checking for -lposix ============
199
200int main(void) { return 0; }
201
202gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lposix
203/usr/local/bin/ld: cannot find -lposix
204collect2: ld returned 1 exit status
205
206ldd /tmp/mplayer-conf-6219-19072.o
207ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
208
209Result is: no
210##########################################
211
212============ Checking for -lm ============
213
214int main(void) { return 0; }
215
216gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lm
217
218ldd /tmp/mplayer-conf-6219-19072.o
219 libm.so.6 => /lib64/tls/libm.so.6 (0x00000037c0900000)
220 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
221 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
222
223Result is: yes
224##########################################
225
226============ Checking for i18n ============
227
228#include <libintl.h>
229int main(void) { gettext("test"); return 0; }
230
231gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
232
233ldd /tmp/mplayer-conf-6219-19072.o
234 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
235 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
236
237Result is: yes
238##########################################
239
240============ Checking for langinfo ============
241
242#include <langinfo.h>
243int main(void) { nl_langinfo(CODESET); return 0; }
244
245gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
246
247ldd /tmp/mplayer-conf-6219-19072.o
248 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
249 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
250
251Result is: yes
252##########################################
253
254============ Checking for language ============
255Result is: using en (man pages: en)
256##########################################
257
258============ Checking for enable sighandler ============
259Result is: yes
260##########################################
261
262============ Checking for runtime cpudetection ============
263Result is: no
264##########################################
265
266============ Checking for restrict keyword ============
267
268void foo(char * restrict p); int main(){}
269
270gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
271/tmp/mplayer-conf-21330-19072.c:1: error: syntax error before "p"
272
273ldd /tmp/mplayer-conf-6219-19072.o
274ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
275
276
277void foo(char * __restrict p); int main(){}
278
279gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
280
281ldd /tmp/mplayer-conf-6219-19072.o
282 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
283 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
284
285Result is: __restrict
286##########################################
287
288============ Checking for __builtin_expect ============
289
290int foo (int a) {
291 a = __builtin_expect (a, 10);
292 return a == 10 ? 0 : 1;
293}
294int main() { return foo(10) && foo(0); }
295
296gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
297
298ldd /tmp/mplayer-conf-6219-19072.o
299 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
300 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
301
302Result is: yes
303##########################################
304
305============ Checking for kstat ============
306
307#include <kstat.h>
308int main(void) { (void) kstat_open(); (void) kstat_close(0); return 0; }
309
310gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lkstat
311/tmp/mplayer-conf-21330-19072.c:1:19: kstat.h: No such file or directory
312
313ldd /tmp/mplayer-conf-6219-19072.o
314ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
315
316Result is: no
317##########################################
318
319============ Checking for posix4 ============
320
321#include <time.h>
322int main(void) { (void) nanosleep(0, 0); return 0; }
323
324gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lposix4
325/usr/local/bin/ld: cannot find -lposix4
326collect2: ld returned 1 exit status
327
328ldd /tmp/mplayer-conf-6219-19072.o
329ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
330
331Result is: no
332##########################################
333
334============ Checking for lrintf ============
335
336#include <math.h>
337int main(void) { long (*foo)(float); foo = lrintf; (void)(*foo)(0.0); return 0; }
338
339gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -D_GNU_SOURCE -lm
340
341ldd /tmp/mplayer-conf-6219-19072.o
342 libm.so.6 => /lib64/tls/libm.so.6 (0x00000037c0900000)
343 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
344 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
345
346Result is: yes
347##########################################
348
349============ Checking for round ============
350
351#include <math.h>
352int main(void) { (void) round(0.0); return 0; }
353
354gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lm
355
356ldd /tmp/mplayer-conf-6219-19072.o
357 libm.so.6 => /lib64/tls/libm.so.6 (0x00000037c0900000)
358 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
359 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
360
361Result is: yes
362##########################################
363
364============ Checking for nanosleep ============
365
366#include <time.h>
367int main(void) { (void) nanosleep(0, 0); return 0; }
368
369gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
370
371ldd /tmp/mplayer-conf-6219-19072.o
372 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
373 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
374
375Result is: yes
376##########################################
377
378============ Checking for socklib ============
379
380#include <netdb.h>
381#include <sys/socket.h>
382int main(void) { (void) gethostbyname(0); (void) socket(AF_INET, SOCK_STREAM, 0); return 0; }
383
384gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lsocket -lbind
385/usr/local/bin/ld: cannot find -lsocket
386collect2: ld returned 1 exit status
387
388ldd /tmp/mplayer-conf-6219-19072.o
389ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
390
391
392#include <netdb.h>
393#include <sys/socket.h>
394int main(void) { (void) gethostbyname(0); (void) socket(AF_INET, SOCK_STREAM, 0); return 0; }
395
396gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lsocket -ldnet
397/usr/local/bin/ld: cannot find -lsocket
398collect2: ld returned 1 exit status
399
400ldd /tmp/mplayer-conf-6219-19072.o
401ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
402
403
404#include <netdb.h>
405#include <sys/socket.h>
406int main(void) { (void) gethostbyname(0); (void) socket(AF_INET, SOCK_STREAM, 0); return 0; }
407
408gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lsocket -lnsl
409/usr/local/bin/ld: cannot find -lsocket
410collect2: ld returned 1 exit status
411
412ldd /tmp/mplayer-conf-6219-19072.o
413ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
414
415
416#include <netdb.h>
417#include <sys/socket.h>
418int main(void) { (void) gethostbyname(0); (void) socket(AF_INET, SOCK_STREAM, 0); return 0; }
419
420gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lnsl
421
422ldd /tmp/mplayer-conf-6219-19072.o
423 libnsl.so.1 => /lib64/libnsl.so.1 (0x00000037c7c00000)
424 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
425 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
426
427
428#include <winsock2.h>
429int main(void) { (void) gethostbyname(0); return 0; }
430
431gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lws2_32
432/tmp/mplayer-conf-21330-19072.c:1:22: winsock2.h: No such file or directory
433
434ldd /tmp/mplayer-conf-6219-19072.o
435ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
436
437Result is: yes (using -lnsl)
438##########################################
439
440============ Checking for inet_pton() ============
441
442#include <sys/types.h>
443#include <sys/socket.h>
444#include <arpa/inet.h>
445int main(void) { (void) inet_pton(0, 0, 0); return 0; }
446
447gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lnsl
448
449ldd /tmp/mplayer-conf-6219-19072.o
450 libnsl.so.1 => /lib64/libnsl.so.1 (0x00000037c7c00000)
451 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
452 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
453
454Result is: yes (using -lnsl)
455##########################################
456
457============ Checking for inttypes.h (required) ============
458
459#include <inttypes.h>
460int main(void) { return 0; }
461
462gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
463
464ldd /tmp/mplayer-conf-6219-19072.o
465 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
466 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
467
468Result is: yes
469##########################################
470
471============ Checking for int_fastXY_t in inttypes.h ============
472
473#include <inttypes.h>
474int main(void) {
475volatile int_fast16_t v= 0;
476return v; }
477
478gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
479
480ldd /tmp/mplayer-conf-6219-19072.o
481 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
482 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
483
484Result is: yes
485##########################################
486
487============ Checking for word size ============
488
489#include <stdio.h>
490#include <sys/types.h>
491int main(void) { printf("%d\n", sizeof(size_t)*8); return 0; }
492
493gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
494
495ldd /tmp/mplayer-conf-6219-19072.o
496 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
497 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
498
499Result is: 64
500##########################################
501
502============ Checking for stddef.h ============
503
504#include <stddef.h>
505int main(void) { return 0; }
506
507gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
508
509ldd /tmp/mplayer-conf-6219-19072.o
510 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
511 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
512
513Result is: yes
514##########################################
515
516============ Checking for malloc.h ============
517
518#include <malloc.h>
519int main(void) { (void) malloc(0); return 0; }
520
521gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
522
523ldd /tmp/mplayer-conf-6219-19072.o
524 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
525 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
526
527Result is: yes
528##########################################
529
530============ Checking for memalign() ============
531
532#include <malloc.h>
533int main (void) { (void) memalign(64, sizeof(char)); return 0; }
534
535gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
536
537ldd /tmp/mplayer-conf-6219-19072.o
538 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
539 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
540
541Result is: yes
542##########################################
543
544============ Checking for alloca.h ============
545
546#include <alloca.h>
547int main(void) { (void) alloca(0); return 0; }
548
549gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
550
551ldd /tmp/mplayer-conf-6219-19072.o
552 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
553 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
554
555
556#include <alloca.h>
557int main(void) { (void) alloca(0); return 0; }
558
559gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
560
561ldd /tmp/mplayer-conf-6219-19072.o
562 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
563 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
564
565Result is: yes
566##########################################
567
568============ Checking for mman.h ============
569
570#include <sys/types.h>
571#include <sys/mman.h>
572int main(void) { (void) mmap(0, 0, 0, 0, 0, 0); return 0; }
573
574gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
575
576ldd /tmp/mplayer-conf-6219-19072.o
577 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
578 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
579
580Result is: yes
581##########################################
582
583
584#include <sys/types.h>
585#include <sys/mman.h>
586int main(void) { void *p = MAP_FAILED; return 0; }
587
588gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
589
590ldd /tmp/mplayer-conf-6219-19072.o
591 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
592 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
593
594============ Checking for dynamic loader ============
595
596#include <dlfcn.h>
597int main(void) { dlopen(0, 0); dlclose(0); dlsym(0, 0); return 0; }
598
599gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
600/tmp/ccGxEfGR.o: In function `main':
601mplayer-conf-21330-19072.c:(.text+0xf): undefined reference to `dlopen'
602mplayer-conf-21330-19072.c:(.text+0x19): undefined reference to `dlclose'
603mplayer-conf-21330-19072.c:(.text+0x28): undefined reference to `dlsym'
604collect2: ld returned 1 exit status
605
606ldd /tmp/mplayer-conf-6219-19072.o
607ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
608
609
610#include <dlfcn.h>
611int main(void) { dlopen(0, 0); dlclose(0); dlsym(0, 0); return 0; }
612
613gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -ldl
614
615ldd /tmp/mplayer-conf-6219-19072.o
616 libdl.so.2 => /lib64/libdl.so.2 (0x00000037c0b00000)
617 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
618 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
619
620Result is: yes
621##########################################
622
623============ Checking for dynamic a/v plugins support ============
624Result is: no
625##########################################
626
627============ Checking for pthread ============
628
629#include <pthread.h>
630void* func(void *arg) { return arg; }
631int main(void) { pthread_t tid; return pthread_create (&tid, 0, func, 0) == 0 ? 0 : 1; }
632
633gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lpthreadGC2
634/usr/local/bin/ld: cannot find -lpthreadGC2
635collect2: ld returned 1 exit status
636
637ldd /tmp/mplayer-conf-6219-19072.o
638ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
639
640
641#include <pthread.h>
642void* func(void *arg) { return arg; }
643int main(void) { pthread_t tid; return pthread_create (&tid, 0, func, 0) == 0 ? 0 : 1; }
644
645gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
646/tmp/ccK7diS4.o: In function `main':
647mplayer-conf-21330-19072.c:(.text+0x2a): undefined reference to `pthread_create'
648collect2: ld returned 1 exit status
649
650ldd /tmp/mplayer-conf-6219-19072.o
651ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
652
653
654#include <pthread.h>
655void* func(void *arg) { return arg; }
656int main(void) { pthread_t tid; return pthread_create (&tid, 0, func, 0) == 0 ? 0 : 1; }
657
658gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lpthread
659
660ldd /tmp/mplayer-conf-6219-19072.o
661 libpthread.so.0 => /lib64/tls/libpthread.so.0 (0x00000037c1300000)
662 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
663 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
664
665Result is: yes (using -lpthread)
666##########################################
667
668============ Checking for iconv ============
669
670#include <stdio.h>
671#include <unistd.h>
672#include <iconv.h>
673#define INBUFSIZE 1024
674#define OUTBUFSIZE 4096
675
676char inbuffer[INBUFSIZE];
677char outbuffer[OUTBUFSIZE];
678
679int main(void) {
680 size_t numread;
681 iconv_t icdsc;
682 char *tocode="UTF-8";
683 char *fromcode="cp1250";
684 if ((icdsc = iconv_open (tocode, fromcode)) != (iconv_t)(-1)) {
685 while ((numread = read (0, inbuffer, INBUFSIZE))) {
686 char *iptr=inbuffer;
687 char *optr=outbuffer;
688 size_t inleft=numread;
689 size_t outleft=OUTBUFSIZE;
690 if (iconv(icdsc, (const char **)&iptr, &inleft, &optr, &outleft)
691 != (size_t)(-1)) {
692 write (1, outbuffer, OUTBUFSIZE - outleft);
693 }
694 }
695 if (iconv_close(icdsc) == -1)
696 ;
697 }
698}
699
700gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lm
701/tmp/mplayer-conf-21330-19072.c: In function `main':
702/tmp/mplayer-conf-21330-19072.c:21: warning: passing arg 2 of `iconv' from incompatible pointer type
703
704ldd /tmp/mplayer-conf-6219-19072.o
705 libm.so.6 => /lib64/tls/libm.so.6 (0x00000037c0900000)
706 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
707 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
708
709Result is: yes
710##########################################
711
712============ Checking for sys/soundcard.h ============
713
714#include <sys/soundcard.h>
715int main(void) { return 0; }
716
717gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
718
719ldd /tmp/mplayer-conf-6219-19072.o
720 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
721 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
722
723Result is: yes
724##########################################
725
726============ Checking for sys/dvdio.h ============
727
728#include <unistd.h>
729#include <sys/dvdio.h>
730int main(void) { return 0; }
731
732gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
733/tmp/mplayer-conf-21330-19072.c:2:23: sys/dvdio.h: No such file or directory
734
735ldd /tmp/mplayer-conf-6219-19072.o
736ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
737
738Result is: no
739##########################################
740
741============ Checking for sys/cdio.h ============
742
743#include <unistd.h>
744#include <sys/cdio.h>
745int main(void) { return 0; }
746
747gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
748/tmp/mplayer-conf-21330-19072.c:2:22: sys/cdio.h: No such file or directory
749
750ldd /tmp/mplayer-conf-6219-19072.o
751ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
752
753Result is: no
754##########################################
755
756============ Checking for linux/cdrom.h ============
757
758#include <sys/types.h>
759#include <linux/cdrom.h>
760int main(void) { return 0; }
761
762gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
763
764ldd /tmp/mplayer-conf-6219-19072.o
765 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
766 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
767
768Result is: yes
769##########################################
770
771============ Checking for dvd.h ============
772
773#include <dvd.h>
774int main(void) { return 0; }
775
776gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
777/tmp/mplayer-conf-21330-19072.c:1:17: dvd.h: No such file or directory
778
779ldd /tmp/mplayer-conf-6219-19072.o
780ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
781
782Result is: no
783##########################################
784
785============ Checking for BSDI dvd.h ============
786
787#include <dvd.h>
788int main(void) { return 0; }
789
790gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
791/tmp/mplayer-conf-21330-19072.c:1:17: dvd.h: No such file or directory
792
793ldd /tmp/mplayer-conf-6219-19072.o
794ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
795
796Result is: no
797##########################################
798
799============ Checking for HPUX SCSI header ============
800
801#include <sys/scsi.h>
802int main(void) { return 0; }
803
804gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
805/tmp/mplayer-conf-21330-19072.c:1:22: sys/scsi.h: No such file or directory
806
807ldd /tmp/mplayer-conf-6219-19072.o
808ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
809
810Result is: no
811##########################################
812
813============ Checking for userspace SCSI headers (Solaris) ============
814
815# include <unistd.h>
816# include <stropts.h>
817# include <sys/scsi/scsi_types.h>
818# include <sys/scsi/impl/uscsi.h>
819int main(void) { return 0; }
820
821gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
822/tmp/mplayer-conf-21330-19072.c:3:36: sys/scsi/scsi_types.h: No such file or directory
823/tmp/mplayer-conf-21330-19072.c:4:36: sys/scsi/impl/uscsi.h: No such file or directory
824
825ldd /tmp/mplayer-conf-6219-19072.o
826ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
827
828Result is: no
829##########################################
830
831============ Checking for termcap ============
832
833int main(void) { tgetent(); return 0; }
834
835gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lncurses
836
837ldd /tmp/mplayer-conf-6219-19072.o
838 libncurses.so.5 => /usr/lib64/libncurses.so.5 (0x00000037c7e00000)
839 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
840 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
841
842Result is: yes (using -lncurses)
843##########################################
844
845============ Checking for termios ============
846
847#include <sys/termios.h>
848int main(void) { return 0; }
849
850gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
851
852ldd /tmp/mplayer-conf-6219-19072.o
853 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
854 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
855
856Result is: yes (using sys/termios.h)
857##########################################
858
859============ Checking for shm ============
860
861#include <sys/types.h>
862#include <sys/shm.h>
863int main(void) { shmget(0, 0, 0); shmat(0, 0, 0); shmctl(0, 0, 0); return 0; }
864
865gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
866
867ldd /tmp/mplayer-conf-6219-19072.o
868 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
869 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
870
871Result is: yes
872##########################################
873
874============ Checking for linux devfs ============
875Result is: no
876##########################################
877
878============ Checking for scandir() ============
879
880int main (void) { scandir("", 0, 0, 0); alphasort(0, 0); return 0; }
881
882gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
883
884ldd /tmp/mplayer-conf-6219-19072.o
885 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
886 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
887
888Result is: yes
889##########################################
890
891============ Checking for strsep() ============
892
893#include <string.h>
894int main (void) { char *s = "Hello, world!"; (void) strsep(&s, ","); return 0; }
895
896gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
897
898ldd /tmp/mplayer-conf-6219-19072.o
899 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
900 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
901
902Result is: yes
903##########################################
904
905============ Checking for strlcpy() ============
906
907#include <string.h>
908int main (void) { char *s = "Hello, world!", t[20]; (void) strlcpy(t, s, sizeof( t )); return 0; }
909
910gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
911/tmp/ccESe24P.o: In function `main':
912mplayer-conf-21330-19072.c:(.text+0x23): undefined reference to `strlcpy'
913collect2: ld returned 1 exit status
914
915ldd /tmp/mplayer-conf-6219-19072.o
916ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
917
918Result is: no
919##########################################
920
921============ Checking for strlcat() ============
922
923#include <string.h>
924int main (void) { char *s = "Hello, world!", t[20]; (void) strlcat(t, s, sizeof( t )); return 0; }
925
926gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
927/tmp/ccyC7tIU.o: In function `main':
928mplayer-conf-21330-19072.c:(.text+0x23): undefined reference to `strlcat'
929collect2: ld returned 1 exit status
930
931ldd /tmp/mplayer-conf-6219-19072.o
932ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
933
934Result is: no
935##########################################
936
937============ Checking for fseeko() ============
938
939#include <stdio.h>
940int main (void) { int i; i = fseeko(stdin, 0, 0); return 0; }
941
942gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
943
944ldd /tmp/mplayer-conf-6219-19072.o
945 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
946 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
947
948Result is: yes
949##########################################
950
951============ Checking for localtime_r() ============
952
953#include <time.h>
954int main( void ) { localtime_r(NULL, NULL); }
955
956gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
957
958ldd /tmp/mplayer-conf-6219-19072.o
959 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
960 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
961
962Result is: yes
963##########################################
964
965============ Checking for vsscanf() ============
966
967#include <stdarg.h>
968int main(void) { vsscanf(0, 0, 0); return 0; }
969
970gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
971
972ldd /tmp/mplayer-conf-6219-19072.o
973 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
974 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
975
976Result is: yes
977##########################################
978
979============ Checking for swab() ============
980
981#include <unistd.h>
982int main(void) { swab(0, 0, 0); return 0; }
983
984gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
985
986ldd /tmp/mplayer-conf-6219-19072.o
987 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
988 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
989
990Result is: yes
991##########################################
992
993============ Checking for posix select() ============
994
995#include <stdio.h>
996#include <stdlib.h>
997#include <sys/types.h>
998#include <string.h>
999#include <sys/time.h>
1000#include <unistd.h>
1001int main(void) {int nfds = 1; fd_set readfds; struct timeval timeout; select(nfds,&readfds,NULL,NULL,&timeout); return 0; }
1002
1003gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1004
1005ldd /tmp/mplayer-conf-6219-19072.o
1006 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
1007 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
1008
1009Result is: yes
1010##########################################
1011
1012============ Checking for gettimeofday() ============
1013
1014#include <stdio.h>
1015#include <sys/time.h>
1016int main(void) {struct timeval tv_start; gettimeofday(&tv_start, NULL); return 0; }
1017
1018gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1019
1020ldd /tmp/mplayer-conf-6219-19072.o
1021 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
1022 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
1023
1024Result is: yes
1025##########################################
1026
1027============ Checking for glob() ============
1028
1029#include <stdio.h>
1030#include <glob.h>
1031int main(void) { glob_t gg; glob("filename",0,NULL,&gg); return 0; }
1032
1033gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1034
1035ldd /tmp/mplayer-conf-6219-19072.o
1036 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
1037 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
1038
1039Result is: yes
1040##########################################
1041
1042============ Checking for setenv() ============
1043
1044#include <stdlib.h>
1045int main (void){ setenv("","",0); return 0; }
1046
1047gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1048
1049ldd /tmp/mplayer-conf-6219-19072.o
1050 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
1051 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
1052
1053Result is: yes
1054##########################################
1055
1056============ Checking for sys/sysinfo.h ============
1057
1058#include <sys/sysinfo.h>
1059int main(void) {
1060 struct sysinfo s_info;
1061 sysinfo(&s_info);
1062 return 0;
1063}
1064
1065gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1066
1067ldd /tmp/mplayer-conf-6219-19072.o
1068 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
1069 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
1070
1071Result is: yes
1072##########################################
1073
1074============ Checking for Mac OS X APIs ============
1075Result is: auto
1076##########################################
1077
1078============ Checking for Mac OS X Finder Support ============
1079Result is: no
1080##########################################
1081
1082============ Checking for Mac OS X Bundle file locations ============
1083Result is: no
1084##########################################
1085
1086============ Checking for Samba support (libsmbclient) ============
1087
1088#include <libsmbclient.h>
1089int main(void) { smbc_opendir("smb://"); return 0; }
1090
1091gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lsmbclient
1092
1093ldd /tmp/mplayer-conf-6219-19072.o
1094 libsmbclient.so.0 => /usr/lib64/libsmbclient.so.0 (0x0000002a9556c000)
1095 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
1096 libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00000037c4600000)
1097 libnsl.so.1 => /lib64/libnsl.so.1 (0x00000037c7c00000)
1098 libdl.so.2 => /lib64/libdl.so.2 (0x00000037c0b00000)
1099 libgssapi_krb5.so.2 => /usr/lib64/libgssapi_krb5.so.2 (0x00000037c5e00000)
1100 libkrb5.so.3 => /usr/lib64/libkrb5.so.3 (0x00000037c4e00000)
1101 libk5crypto.so.3 => /usr/lib64/libk5crypto.so.3 (0x00000037c4c00000)
1102 libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00000037c4400000)
1103 libresolv.so.2 => /lib64/libresolv.so.2 (0x00000037c2b00000)
1104 libldap-2.2.so.7 => /usr/lib64/libldap-2.2.so.7 (0x00000037c8000000)
1105 liblber-2.2.so.7 => /usr/lib64/liblber-2.2.so.7 (0x00000037c7e00000)
1106 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
1107 libsasl2.so.2 => /usr/lib64/libsasl2.so.2 (0x00000037c7900000)
1108 libssl.so.4 => /lib64/libssl.so.4 (0x00000037c6000000)
1109 libcrypto.so.4 => /lib64/libcrypto.so.4 (0x00000037c6500000)
1110 libz.so.1 => /usr/lib64/libz.so.1 (0x00000037c1100000)
1111
1112Result is: yes
1113##########################################
1114
1115============ Checking for 3dfx ============
1116Result is: no
1117##########################################
1118
1119============ Checking for tdfxfb ============
1120Result is: no
1121##########################################
1122
1123============ Checking for tdfxvid ============
1124Result is: no
1125##########################################
1126
1127============ Checking for tga ============
1128Result is: yes
1129##########################################
1130
1131============ Checking for DirectFB headers presence ============
1132Result is: not found
1133##########################################
1134
1135============ Checking for DirectFB ============
1136Result is: no
1137##########################################
1138
1139============ Checking for X11 headers presence ============
1140Result is: not found (check if the dev(el) packages are installed)
1141##########################################
1142
1143============ Checking for X11 ============
1144Result is: no (check if the dev(el) packages are installed)
1145##########################################
1146
1147============ Checking for DPMS ============
1148Result is: no
1149##########################################
1150
1151============ Checking for Xv ============
1152Result is: no
1153##########################################
1154
1155============ Checking for XvMC ============
1156Result is: no
1157##########################################
1158
1159============ Checking for Xinerama ============
1160Result is: no
1161##########################################
1162
1163============ Checking for Xxf86vm ============
1164Result is: auto
1165##########################################
1166
1167============ Checking for XF86keysym ============
1168Result is: no
1169##########################################
1170
1171============ Checking for DGA ============
1172Result is: no
1173##########################################
1174
1175============ Checking for OpenGL ============
1176Result is: no
1177##########################################
1178
1179============ Checking for /dev/mga_vid ============
1180Result is: no
1181##########################################
1182
1183============ Checking for xmga ============
1184Result is: no
1185##########################################
1186
1187============ Checking for GGI ============
1188
1189#include <ggi/ggi.h>
1190int main(void) { return 0; }
1191
1192gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lggi
1193/tmp/mplayer-conf-21330-19072.c:1:21: ggi/ggi.h: No such file or directory
1194
1195ldd /tmp/mplayer-conf-6219-19072.o
1196ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1197
1198Result is: no
1199##########################################
1200
1201============ Checking for GGI extension: libggiwmh ============
1202
1203#include <ggi/ggi.h>
1204#include <ggi/wmh.h>
1205int main(void) { return 0; }
1206
1207gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lggi -lggiwmh
1208/tmp/mplayer-conf-21330-19072.c:1:21: ggi/ggi.h: No such file or directory
1209/tmp/mplayer-conf-21330-19072.c:2:21: ggi/wmh.h: No such file or directory
1210
1211ldd /tmp/mplayer-conf-6219-19072.o
1212ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1213
1214Result is: no
1215##########################################
1216
1217============ Checking for AA ============
1218
1219#include <aalib.h>
1220extern struct aa_hardware_params aa_defparams;
1221extern struct aa_renderparams aa_defrenderparams;
1222int main(void) {
1223aa_context *c;
1224aa_renderparams *p;
1225(void) aa_init(0, 0, 0);
1226c = aa_autoinit(&aa_defparams);
1227p = aa_getrenderparams();
1228aa_autoinitkbd(c,0);
1229return 0; }
1230
1231gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -laa
1232/tmp/mplayer-conf-21330-19072.c:1:19: aalib.h: No such file or directory
1233/tmp/mplayer-conf-21330-19072.c: In function `main':
1234/tmp/mplayer-conf-21330-19072.c:5: error: `aa_context' undeclared (first use in this function)
1235/tmp/mplayer-conf-21330-19072.c:5: error: (Each undeclared identifier is reported only once
1236/tmp/mplayer-conf-21330-19072.c:5: error: for each function it appears in.)
1237/tmp/mplayer-conf-21330-19072.c:5: error: `c' undeclared (first use in this function)
1238/tmp/mplayer-conf-21330-19072.c:6: error: `aa_renderparams' undeclared (first use in this function)
1239/tmp/mplayer-conf-21330-19072.c:6: error: `p' undeclared (first use in this function)
1240
1241ldd /tmp/mplayer-conf-6219-19072.o
1242ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1243
1244
1245#include <aalib.h>
1246extern struct aa_hardware_params aa_defparams;
1247extern struct aa_renderparams aa_defrenderparams;
1248int main(void) {
1249aa_context *c;
1250aa_renderparams *p;
1251(void) aa_init(0, 0, 0);
1252c = aa_autoinit(&aa_defparams);
1253p = aa_getrenderparams();
1254aa_autoinitkbd(c,0);
1255return 0; }
1256
1257gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -laa
1258/tmp/mplayer-conf-21330-19072.c:1:19: aalib.h: No such file or directory
1259/tmp/mplayer-conf-21330-19072.c: In function `main':
1260/tmp/mplayer-conf-21330-19072.c:5: error: `aa_context' undeclared (first use in this function)
1261/tmp/mplayer-conf-21330-19072.c:5: error: (Each undeclared identifier is reported only once
1262/tmp/mplayer-conf-21330-19072.c:5: error: for each function it appears in.)
1263/tmp/mplayer-conf-21330-19072.c:5: error: `c' undeclared (first use in this function)
1264/tmp/mplayer-conf-21330-19072.c:6: error: `aa_renderparams' undeclared (first use in this function)
1265/tmp/mplayer-conf-21330-19072.c:6: error: `p' undeclared (first use in this function)
1266
1267ldd /tmp/mplayer-conf-6219-19072.o
1268ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1269
1270Result is: no
1271##########################################
1272
1273============ Checking for CACA ============
1274./configure: line 4029: caca-config: command not found
1275Result is: no
1276##########################################
1277
1278============ Checking for SVGAlib ============
1279
1280#include <vga.h>
1281int main(void) { return 0; }
1282
1283gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lvga -lm
1284/tmp/mplayer-conf-21330-19072.c:1:17: vga.h: No such file or directory
1285
1286ldd /tmp/mplayer-conf-6219-19072.o
1287ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1288
1289Result is: no
1290##########################################
1291
1292============ Checking for FBDev ============
1293Result is: no
1294##########################################
1295
1296============ Checking for DVB ============
1297
1298#include <sys/poll.h>
1299#include <sys/ioctl.h>
1300#include <stdio.h>
1301#include <time.h>
1302#include <unistd.h>
1303
1304#include <ost/dmx.h>
1305#include <ost/frontend.h>
1306#include <ost/sec.h>
1307#include <ost/video.h>
1308#include <ost/audio.h>
1309int main(void) {return 0;}
1310
1311gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1312/tmp/mplayer-conf-21330-19072.c:7:21: ost/dmx.h: No such file or directory
1313/tmp/mplayer-conf-21330-19072.c:8:26: ost/frontend.h: No such file or directory
1314/tmp/mplayer-conf-21330-19072.c:9:21: ost/sec.h: No such file or directory
1315/tmp/mplayer-conf-21330-19072.c:10:23: ost/video.h: No such file or directory
1316/tmp/mplayer-conf-21330-19072.c:11:23: ost/audio.h: No such file or directory
1317
1318ldd /tmp/mplayer-conf-6219-19072.o
1319ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1320
1321
1322#include <sys/poll.h>
1323#include <sys/ioctl.h>
1324#include <stdio.h>
1325#include <time.h>
1326#include <unistd.h>
1327
1328#include <ost/dmx.h>
1329#include <ost/frontend.h>
1330#include <ost/sec.h>
1331#include <ost/video.h>
1332#include <ost/audio.h>
1333int main(void) {return 0;}
1334
1335gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1336/tmp/mplayer-conf-21330-19072.c:7:21: ost/dmx.h: No such file or directory
1337/tmp/mplayer-conf-21330-19072.c:8:26: ost/frontend.h: No such file or directory
1338/tmp/mplayer-conf-21330-19072.c:9:21: ost/sec.h: No such file or directory
1339/tmp/mplayer-conf-21330-19072.c:10:23: ost/video.h: No such file or directory
1340/tmp/mplayer-conf-21330-19072.c:11:23: ost/audio.h: No such file or directory
1341
1342ldd /tmp/mplayer-conf-6219-19072.o
1343ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1344
1345
1346#include <sys/poll.h>
1347#include <sys/ioctl.h>
1348#include <stdio.h>
1349#include <time.h>
1350#include <unistd.h>
1351
1352#include <ost/dmx.h>
1353#include <ost/frontend.h>
1354#include <ost/sec.h>
1355#include <ost/video.h>
1356#include <ost/audio.h>
1357int main(void) {return 0;}
1358
1359gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -I/usr/src/DVB/ost/include
1360/tmp/mplayer-conf-21330-19072.c:7:21: ost/dmx.h: No such file or directory
1361/tmp/mplayer-conf-21330-19072.c:8:26: ost/frontend.h: No such file or directory
1362/tmp/mplayer-conf-21330-19072.c:9:21: ost/sec.h: No such file or directory
1363/tmp/mplayer-conf-21330-19072.c:10:23: ost/video.h: No such file or directory
1364/tmp/mplayer-conf-21330-19072.c:11:23: ost/audio.h: No such file or directory
1365
1366ldd /tmp/mplayer-conf-6219-19072.o
1367ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1368
1369Result is: no (specify path to DVB/ost/include with --with-dvbincdir=DIR)
1370##########################################
1371
1372============ Checking for DVB HEAD ============
1373
1374#include <sys/poll.h>
1375#include <sys/ioctl.h>
1376#include <stdio.h>
1377#include <time.h>
1378#include <unistd.h>
1379
1380#include <linux/dvb/dmx.h>
1381#include <linux/dvb/frontend.h>
1382#include <linux/dvb/video.h>
1383#include <linux/dvb/audio.h>
1384int main(void) {return 0;}
1385
1386gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1387/tmp/mplayer-conf-21330-19072.c:7:27: linux/dvb/dmx.h: No such file or directory
1388/tmp/mplayer-conf-21330-19072.c:8:32: linux/dvb/frontend.h: No such file or directory
1389/tmp/mplayer-conf-21330-19072.c:9:29: linux/dvb/video.h: No such file or directory
1390/tmp/mplayer-conf-21330-19072.c:10:29: linux/dvb/audio.h: No such file or directory
1391
1392ldd /tmp/mplayer-conf-6219-19072.o
1393ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1394
1395
1396#include <sys/poll.h>
1397#include <sys/ioctl.h>
1398#include <stdio.h>
1399#include <time.h>
1400#include <unistd.h>
1401
1402#include <linux/dvb/dmx.h>
1403#include <linux/dvb/frontend.h>
1404#include <linux/dvb/video.h>
1405#include <linux/dvb/audio.h>
1406int main(void) {return 0;}
1407
1408gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1409/tmp/mplayer-conf-21330-19072.c:7:27: linux/dvb/dmx.h: No such file or directory
1410/tmp/mplayer-conf-21330-19072.c:8:32: linux/dvb/frontend.h: No such file or directory
1411/tmp/mplayer-conf-21330-19072.c:9:29: linux/dvb/video.h: No such file or directory
1412/tmp/mplayer-conf-21330-19072.c:10:29: linux/dvb/audio.h: No such file or directory
1413
1414ldd /tmp/mplayer-conf-6219-19072.o
1415ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1416
1417
1418#include <sys/poll.h>
1419#include <sys/ioctl.h>
1420#include <stdio.h>
1421#include <time.h>
1422#include <unistd.h>
1423
1424#include <linux/dvb/dmx.h>
1425#include <linux/dvb/frontend.h>
1426#include <linux/dvb/video.h>
1427#include <linux/dvb/audio.h>
1428int main(void) {return 0;}
1429
1430gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -I/usr/src/DVB/include
1431/tmp/mplayer-conf-21330-19072.c:7:27: linux/dvb/dmx.h: No such file or directory
1432/tmp/mplayer-conf-21330-19072.c:8:32: linux/dvb/frontend.h: No such file or directory
1433/tmp/mplayer-conf-21330-19072.c:9:29: linux/dvb/video.h: No such file or directory
1434/tmp/mplayer-conf-21330-19072.c:10:29: linux/dvb/audio.h: No such file or directory
1435
1436ldd /tmp/mplayer-conf-6219-19072.o
1437ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1438
1439Result is: no (specify path to DVB/include (HEAD Version) with --with-dvbincdir=DIR)
1440##########################################
1441
1442============ Checking for PNG support ============
1443
1444#include <png.h>
1445#include <string.h>
1446int main(void) {
1447 printf("png.h : %s\n", PNG_LIBPNG_VER_STRING);
1448 printf("libpng: %s\n", png_libpng_ver);
1449 return (strcmp(PNG_LIBPNG_VER_STRING, png_libpng_ver));
1450}
1451
1452gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lpng -lz -lm
1453/tmp/mplayer-conf-21330-19072.c:1:17: png.h: No such file or directory
1454/tmp/mplayer-conf-21330-19072.c: In function `main':
1455/tmp/mplayer-conf-21330-19072.c:4: error: `PNG_LIBPNG_VER_STRING' undeclared (first use in this function)
1456/tmp/mplayer-conf-21330-19072.c:4: error: (Each undeclared identifier is reported only once
1457/tmp/mplayer-conf-21330-19072.c:4: error: for each function it appears in.)
1458/tmp/mplayer-conf-21330-19072.c:5: error: `png_libpng_ver' undeclared (first use in this function)
1459
1460ldd /tmp/mplayer-conf-6219-19072.o
1461ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1462
1463Result is: no
1464##########################################
1465
1466============ Checking for JPEG support ============
1467
1468#include <stdio.h>
1469#include <stdlib.h>
1470#include <setjmp.h>
1471#include <string.h>
1472#include <jpeglib.h>
1473int main(void) {
1474 return 0;
1475}
1476
1477gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -ljpeg -lm
1478/tmp/mplayer-conf-21330-19072.c:5:21: jpeglib.h: No such file or directory
1479
1480ldd /tmp/mplayer-conf-6219-19072.o
1481ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1482
1483Result is: no
1484##########################################
1485
1486============ Checking for PNM support ============
1487Result is: yes
1488##########################################
1489
1490============ Checking for md5sum support ============
1491Result is: yes
1492##########################################
1493
1494============ Checking for GIF support ============
1495
1496#include <gif_lib.h>
1497int main(void) {
1498 return 0;
1499}
1500
1501gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lungif
1502/tmp/mplayer-conf-21330-19072.c:1:21: gif_lib.h: No such file or directory
1503
1504ldd /tmp/mplayer-conf-6219-19072.o
1505ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1506
1507
1508#include <gif_lib.h>
1509int main(void) {
1510 return 0;
1511}
1512
1513gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lungif
1514/tmp/mplayer-conf-21330-19072.c:1:21: gif_lib.h: No such file or directory
1515
1516ldd /tmp/mplayer-conf-6219-19072.o
1517ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1518
1519
1520#include <gif_lib.h>
1521int main(void) {
1522 return 0;
1523}
1524
1525gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lgif
1526/tmp/mplayer-conf-21330-19072.c:1:21: gif_lib.h: No such file or directory
1527
1528ldd /tmp/mplayer-conf-6219-19072.o
1529ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1530
1531
1532#include <gif_lib.h>
1533int main(void) {
1534 return 0;
1535}
1536
1537gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lgif
1538/tmp/mplayer-conf-21330-19072.c:1:21: gif_lib.h: No such file or directory
1539
1540ldd /tmp/mplayer-conf-6219-19072.o
1541ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1542
1543Result is: no
1544##########################################
1545
1546============ Checking for VESA support ============
1547
1548#include <vbe.h>
1549int main(void) { vbeVersion(); return 0; }
1550
1551gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lvbe -llrmi
1552/tmp/mplayer-conf-21330-19072.c:1:17: vbe.h: No such file or directory
1553
1554ldd /tmp/mplayer-conf-6219-19072.o
1555ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1556
1557Result is: no
1558##########################################
1559
1560============ Checking for SDL ============
1561./configure: line 4400: sdl-config: command not found
1562./configure: line 4402: sdl11-config: command not found
1563Result is: no
1564##########################################
1565
1566============ Checking for Windows waveout ============
1567
1568#include <windows.h>
1569#include <mmsystem.h>
1570int main(void) { return 0; }
1571
1572gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lwinmm
1573/tmp/mplayer-conf-21330-19072.c:1:21: windows.h: No such file or directory
1574/tmp/mplayer-conf-21330-19072.c:2:22: mmsystem.h: No such file or directory
1575
1576ldd /tmp/mplayer-conf-6219-19072.o
1577ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1578
1579Result is: no
1580##########################################
1581
1582============ Checking for Directx ============
1583
1584#include <windows.h>
1585#include <ddraw.h>
1586#include <dsound.h>
1587int main(void) { return 0; }
1588
1589gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lgdi32
1590/tmp/mplayer-conf-21330-19072.c:1:21: windows.h: No such file or directory
1591/tmp/mplayer-conf-21330-19072.c:2:19: ddraw.h: No such file or directory
1592/tmp/mplayer-conf-21330-19072.c:3:20: dsound.h: No such file or directory
1593
1594ldd /tmp/mplayer-conf-6219-19072.o
1595ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1596
1597Result is: no
1598##########################################
1599
1600============ Checking for NAS ============
1601
1602#include <audio/audiolib.h>
1603int main(void) { return 0; }
1604
1605gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -laudio -lXt -lm
1606/tmp/mplayer-conf-21330-19072.c:1:28: audio/audiolib.h: No such file or directory
1607
1608ldd /tmp/mplayer-conf-6219-19072.o
1609ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1610
1611Result is: no
1612##########################################
1613
1614============ Checking for DXR2 ============
1615
1616#include <dxr2ioctl.h>
1617int main(void) { return 0; }
1618
1619gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1620/tmp/mplayer-conf-21330-19072.c:1:23: dxr2ioctl.h: No such file or directory
1621
1622ldd /tmp/mplayer-conf-6219-19072.o
1623ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1624
1625
1626#include <dxr2ioctl.h>
1627int main(void) { return 0; }
1628
1629gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -I/usr/local/include/dxr2
1630/tmp/mplayer-conf-21330-19072.c:1:23: dxr2ioctl.h: No such file or directory
1631
1632ldd /tmp/mplayer-conf-6219-19072.o
1633ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1634
1635
1636#include <dxr2ioctl.h>
1637int main(void) { return 0; }
1638
1639gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -I/usr/include/dxr2
1640/tmp/mplayer-conf-21330-19072.c:1:23: dxr2ioctl.h: No such file or directory
1641
1642ldd /tmp/mplayer-conf-6219-19072.o
1643ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1644
1645Result is: no
1646##########################################
1647
1648============ Checking for DXR3/H+ ============
1649
1650#include <linux/em8300.h>
1651int main(void) { return 0; }
1652
1653gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1654/tmp/mplayer-conf-21330-19072.c:1:26: linux/em8300.h: No such file or directory
1655
1656ldd /tmp/mplayer-conf-6219-19072.o
1657ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1658
1659Result is: no
1660##########################################
1661
1662============ Checking for libmp1e ============
1663Result is: no
1664##########################################
1665
1666============ Checking for libfame ============
1667Result is: no
1668##########################################
1669
1670============ Checking for OSS Audio ============
1671
1672#include <sys/ioctl.h>
1673#include <sys/soundcard.h>
1674int main(void) { int arg = SNDCTL_DSP_SETFRAGMENT; return 0; }
1675
1676gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1677
1678ldd /tmp/mplayer-conf-6219-19072.o
1679 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
1680 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
1681
1682
1683#include <sys/ioctl.h>
1684#include <sys/soundcard.h>
1685#ifdef OPEN_SOUND_SYSTEM
1686int main(void) { return 0; }
1687#else
1688#error Not the real thing
1689#endif
1690
1691gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1692
1693ldd /tmp/mplayer-conf-6219-19072.o
1694 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
1695 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
1696
1697Result is: yes
1698##########################################
1699
1700============ Checking for aRts ============
1701./configure: line 4671: artsc-config: command not found
1702Result is: no
1703##########################################
1704
1705============ Checking for EsounD ============
1706./configure: line 4697: esd-config: command not found
1707Result is: no
1708##########################################
1709
1710============ Checking for Polyp ============
1711Result is: no
1712##########################################
1713
1714============ Checking for JACK ============
1715
1716#include <jack/jack.h>
1717int main(void) { jack_client_new("test"); return 0; }
1718
1719gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -ljack
1720/tmp/mplayer-conf-21330-19072.c:1:23: jack/jack.h: No such file or directory
1721
1722ldd /tmp/mplayer-conf-6219-19072.o
1723ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1724
1725
1726#include <jack/jack.h>
1727int main(void) { jack_client_new("test"); return 0; }
1728
1729gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1730/tmp/mplayer-conf-21330-19072.c:1:23: jack/jack.h: No such file or directory
1731
1732ldd /tmp/mplayer-conf-6219-19072.o
1733ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1734
1735Result is: no
1736##########################################
1737
1738============ Checking for ALSA audio ============
1739
1740#include <sys/asoundlib.h>
1741#if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 5))
1742#error "alsa version != 0.5.x"
1743#endif
1744int main(void) { return 0; }
1745
1746gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lasound -ldl -lpthread
1747/tmp/mplayer-conf-21330-19072.c:1:27: sys/asoundlib.h: No such file or directory
1748/tmp/mplayer-conf-21330-19072.c:3:2: #error "alsa version != 0.5.x"
1749
1750ldd /tmp/mplayer-conf-6219-19072.o
1751ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1752
1753
1754#include <sys/asoundlib.h>
1755#if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
1756#error "alsa version != 0.9.x"
1757#endif
1758int main(void) { return 0; }
1759
1760gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lasound -ldl -lpthread
1761/tmp/mplayer-conf-21330-19072.c:1:27: sys/asoundlib.h: No such file or directory
1762/tmp/mplayer-conf-21330-19072.c:3:2: #error "alsa version != 0.9.x"
1763
1764ldd /tmp/mplayer-conf-6219-19072.o
1765ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1766
1767
1768#include <alsa/asoundlib.h>
1769#if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
1770#error "alsa version != 0.9.x"
1771#endif
1772int main(void) { return 0; }
1773
1774gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lasound -ldl -lpthread
1775/tmp/mplayer-conf-21330-19072.c:1:28: alsa/asoundlib.h: No such file or directory
1776/tmp/mplayer-conf-21330-19072.c:3:2: #error "alsa version != 0.9.x"
1777
1778ldd /tmp/mplayer-conf-6219-19072.o
1779ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1780
1781
1782#include <sys/asoundlib.h>
1783#if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
1784#error "alsa version != 1.0.x"
1785#endif
1786int main(void) { return 0; }
1787
1788gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lasound -ldl -lpthread
1789/tmp/mplayer-conf-21330-19072.c:1:27: sys/asoundlib.h: No such file or directory
1790/tmp/mplayer-conf-21330-19072.c:3:2: #error "alsa version != 1.0.x"
1791
1792ldd /tmp/mplayer-conf-6219-19072.o
1793ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1794
1795
1796#include <alsa/asoundlib.h>
1797#if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
1798#error "alsa version != 1.0.x"
1799#endif
1800int main(void) { return 0; }
1801
1802gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lasound -ldl -lpthread
1803/tmp/mplayer-conf-21330-19072.c:1:28: alsa/asoundlib.h: No such file or directory
1804/tmp/mplayer-conf-21330-19072.c:3:2: #error "alsa version != 1.0.x"
1805
1806ldd /tmp/mplayer-conf-6219-19072.o
1807ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1808
1809Result is: no
1810##########################################
1811
1812============ Checking for Sun audio ============
1813
1814#include <sys/types.h>
1815#include <sys/audioio.h>
1816int main(void) { audio_info_t info; AUDIO_INITINFO(&info); return 0; }
1817
1818gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1819/tmp/mplayer-conf-21330-19072.c:2:25: sys/audioio.h: No such file or directory
1820/tmp/mplayer-conf-21330-19072.c: In function `main':
1821/tmp/mplayer-conf-21330-19072.c:3: error: `audio_info_t' undeclared (first use in this function)
1822/tmp/mplayer-conf-21330-19072.c:3: error: (Each undeclared identifier is reported only once
1823/tmp/mplayer-conf-21330-19072.c:3: error: for each function it appears in.)
1824/tmp/mplayer-conf-21330-19072.c:3: error: syntax error before "info"
1825/tmp/mplayer-conf-21330-19072.c:3: error: `info' undeclared (first use in this function)
1826
1827ldd /tmp/mplayer-conf-6219-19072.o
1828ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1829
1830Result is: no
1831##########################################
1832
1833============ Checking for Sun mediaLib ============
1834
1835#include <mlib.h>
1836int main(void) { mlib_VideoColorYUV2ABGR420(0,0,0,0,0,0,0,0,0); return 0; }
1837
1838gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -I/opt/SUNWmlib/include -L/opt/SUNWmlib/lib -lmlib
1839/tmp/mplayer-conf-21330-19072.c:1:18: mlib.h: No such file or directory
1840
1841ldd /tmp/mplayer-conf-6219-19072.o
1842ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1843
1844Result is: no
1845##########################################
1846
1847============ Checking for SGI audio ============
1848
1849#include <dmedia/audio.h>
1850int main(void) { return 0; }
1851
1852gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
1853/tmp/mplayer-conf-21330-19072.c:1:26: dmedia/audio.h: No such file or directory
1854
1855ldd /tmp/mplayer-conf-6219-19072.o
1856ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1857
1858Result is: no
1859##########################################
1860
1861============ Checking for VCD support ============
1862Result is: ok
1863##########################################
1864
1865============ Checking for DVD support (libmpdvdkit) ============
1866Result is: yes
1867##########################################
1868
1869============ Checking for DVD support (libdvdread) ============
1870Result is: disabled by libmpdvdkit2
1871##########################################
1872
1873============ Checking for cdparanoia ============
1874
1875#include <cdda_interface.h>
1876#include <cdda_paranoia.h>
1877// This need a better test. How ?
1878int main(void) { return 1; }
1879
1880gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lcdda_interface -lcdda_paranoia -lm
1881/tmp/mplayer-conf-21330-19072.c:1:28: cdda_interface.h: No such file or directory
1882/tmp/mplayer-conf-21330-19072.c:2:27: cdda_paranoia.h: No such file or directory
1883
1884ldd /tmp/mplayer-conf-6219-19072.o
1885ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1886
1887
1888#include <cdda_interface.h>
1889#include <cdda_paranoia.h>
1890// This need a better test. How ?
1891int main(void) { return 1; }
1892
1893gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -I/usr/include/cdda -lcdda_interface -lcdda_paranoia -lm
1894/tmp/mplayer-conf-21330-19072.c:1:28: cdda_interface.h: No such file or directory
1895/tmp/mplayer-conf-21330-19072.c:2:27: cdda_paranoia.h: No such file or directory
1896
1897ldd /tmp/mplayer-conf-6219-19072.o
1898ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1899
1900
1901#include <cdda_interface.h>
1902#include <cdda_paranoia.h>
1903// This need a better test. How ?
1904int main(void) { return 1; }
1905
1906gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -I/usr/local/include/cdda -lcdda_interface -lcdda_paranoia -lm
1907/tmp/mplayer-conf-21330-19072.c:1:28: cdda_interface.h: No such file or directory
1908/tmp/mplayer-conf-21330-19072.c:2:27: cdda_paranoia.h: No such file or directory
1909
1910ldd /tmp/mplayer-conf-6219-19072.o
1911ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1912
1913Result is: no
1914##########################################
1915
1916============ Checking for libcdio ============
1917Result is: no
1918##########################################
1919
1920============ Checking for freetype >= 2.0.9 ============
1921
1922#include <stdio.h>
1923#include <ft2build.h>
1924#include FT_FREETYPE_H
1925#if ((FREETYPE_MAJOR < 2) || ((FREETYPE_MINOR == 0) && (FREETYPE_PATCH < 9)))
1926#error "Need FreeType 2.0.9 or newer"
1927#endif
1928int main()
1929{
1930 FT_Library library;
1931 FT_Int major=-1,minor=-1,patch=-1;
1932 int err=FT_Init_FreeType(&library);
1933 if(err){
1934 printf("Couldn't initialize freetype2 lib, err code: %d\n",err);
1935 exit(err);
1936 }
1937 FT_Library_Version(library,&major,&minor,&patch); // in v2.1.0+ only :(((
1938 printf("freetype2 header version: %d.%d.%d library version: %d.%d.%d\n",
1939 FREETYPE_MAJOR,FREETYPE_MINOR,FREETYPE_PATCH,
1940 (int)major,(int)minor,(int)patch );
1941 if(major!=FREETYPE_MAJOR || minor!=FREETYPE_MINOR){
1942 printf("Library and header version mismatch! Fix it in your distribution!\n");
1943 exit(1);
1944 }
1945 return 0;
1946}
1947
1948gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -I/usr/local/include/freetype2 -I/usr/local/include -L/usr/local/lib -Wl,--rpath -Wl,/usr/local/lib -lfreetype -lz
1949
1950ldd /tmp/mplayer-conf-6219-19072.o
1951 libfreetype.so.6 => /usr/local/lib/libfreetype.so.6 (0x0000002a95557000)
1952 libz.so.1 => /usr/lib64/libz.so.1 (0x00000037c1100000)
1953 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
1954 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
1955
1956freetype2 header version: 2.1.10 library version: 2.1.10
1957Result is: yes
1958##########################################
1959
1960============ Checking for fontconfig ============
1961
1962#include <stdio.h>
1963#include <fontconfig/fontconfig.h>
1964int main()
1965{
1966 int err = FcInit();
1967 if(err == FcFalse){
1968 printf("Couldn't initialize fontconfig lib\n");
1969 exit(err);
1970 }
1971 return 0;
1972
1973}
1974
1975gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lfontconfig
1976/tmp/mplayer-conf-21330-19072.c:2:35: fontconfig/fontconfig.h: No such file or directory
1977/tmp/mplayer-conf-21330-19072.c: In function `main':
1978/tmp/mplayer-conf-21330-19072.c:6: error: `FcFalse' undeclared (first use in this function)
1979/tmp/mplayer-conf-21330-19072.c:6: error: (Each undeclared identifier is reported only once
1980/tmp/mplayer-conf-21330-19072.c:6: error: for each function it appears in.)
1981
1982ldd /tmp/mplayer-conf-6219-19072.o
1983ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
1984
1985
1986#include <stdio.h>
1987#include <fontconfig/fontconfig.h>
1988int main()
1989{
1990 int err = FcInit();
1991 if(err == FcFalse){
1992 printf("Couldn't initialize fontconfig lib\n");
1993 exit(err);
1994 }
1995 return 0;
1996
1997}
1998
1999gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
2000/tmp/mplayer-conf-21330-19072.c:2:35: fontconfig/fontconfig.h: No such file or directory
2001/tmp/mplayer-conf-21330-19072.c: In function `main':
2002/tmp/mplayer-conf-21330-19072.c:6: error: `FcFalse' undeclared (first use in this function)
2003/tmp/mplayer-conf-21330-19072.c:6: error: (Each undeclared identifier is reported only once
2004/tmp/mplayer-conf-21330-19072.c:6: error: for each function it appears in.)
2005
2006ldd /tmp/mplayer-conf-6219-19072.o
2007ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
2008
2009Result is: no
2010##########################################
2011
2012============ Checking for fribidi with charsets ============
2013Result is: no
2014##########################################
2015
2016============ Checking for ENCA ============
2017
2018#include <enca.h>
2019int main()
2020{
2021 const char **langs;
2022 size_t langcnt;
2023 langs = enca_get_languages(&langcnt);
2024 return 0;
2025}
2026
2027gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lenca -lm
2028/tmp/mplayer-conf-21330-19072.c:1:18: enca.h: No such file or directory
2029/tmp/mplayer-conf-21330-19072.c: In function `main':
2030/tmp/mplayer-conf-21330-19072.c:5: error: `size_t' undeclared (first use in this function)
2031/tmp/mplayer-conf-21330-19072.c:5: error: (Each undeclared identifier is reported only once
2032/tmp/mplayer-conf-21330-19072.c:5: error: for each function it appears in.)
2033/tmp/mplayer-conf-21330-19072.c:5: error: syntax error before "langcnt"
2034/tmp/mplayer-conf-21330-19072.c:6: error: `langcnt' undeclared (first use in this function)
2035/tmp/mplayer-conf-21330-19072.c:6: warning: assignment makes pointer from integer without a cast
2036
2037ldd /tmp/mplayer-conf-6219-19072.o
2038ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
2039
2040Result is: no
2041##########################################
2042
2043============ Checking for zlib ============
2044
2045#include <zlib.h>
2046int main(void) { (void) inflate(0, Z_NO_FLUSH); return 0; }
2047
2048gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lz
2049
2050ldd /tmp/mplayer-conf-6219-19072.o
2051 libz.so.1 => /usr/lib64/libz.so.1 (0x00000037c1100000)
2052 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
2053 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
2054
2055Result is: yes
2056##########################################
2057
2058============ Checking for RTC ============
2059
2060#include <sys/ioctl.h>
2061#ifdef __linux__
2062#include <linux/rtc.h>
2063#else
2064#include <rtc.h>
2065#define RTC_PIE_ON RTCIO_PIE_ON
2066#endif
2067int main(void) { return RTC_PIE_ON; }
2068
2069gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
2070
2071ldd /tmp/mplayer-conf-6219-19072.o
2072 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
2073 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
2074
2075Result is: yes
2076##########################################
2077
2078============ Checking for external liblzo support ============
2079
2080#include <lzo1x.h>
2081int main(void) { lzo_init();return 0; }
2082
2083gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -llzo
2084/tmp/mplayer-conf-21330-19072.c:1:19: lzo1x.h: No such file or directory
2085
2086ldd /tmp/mplayer-conf-6219-19072.o
2087ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
2088
2089Result is: no
2090##########################################
2091
2092============ Checking for mad support ============
2093
2094#include <mad.h>
2095int main(void) { return 0; }
2096
2097gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lmad
2098/tmp/mplayer-conf-21330-19072.c:1:17: mad.h: No such file or directory
2099
2100ldd /tmp/mplayer-conf-6219-19072.o
2101ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
2102
2103Result is: no
2104##########################################
2105
2106============ Checking for Toolame ============
2107
2108#include <toolame.h>
2109int main(void) { toolame_init(); return 0; }
2110
2111gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -ltoolame -lm
2112/tmp/mplayer-conf-21330-19072.c:1:21: toolame.h: No such file or directory
2113
2114ldd /tmp/mplayer-conf-6219-19072.o
2115ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
2116
2117Result is: no
2118##########################################
2119
2120============ Checking for Twolame ============
2121
2122#include <twolame.h>
2123int main(void) { twolame_init(); return 0; }
2124
2125gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -ltwolame -lm
2126/tmp/mplayer-conf-21330-19072.c:1:21: twolame.h: No such file or directory
2127
2128ldd /tmp/mplayer-conf-6219-19072.o
2129ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
2130
2131Result is: no
2132##########################################
2133
2134============ Checking for OggVorbis support ============
2135Result is: yes (internal Tremor)
2136##########################################
2137
2138============ Checking for libspeex (version >= 1.1 required) ============
2139
2140#include <speex/speex.h>
2141int main(void) {
2142 SpeexBits bits;
2143 void *dec;
2144 speex_decode_int(dec, &bits, dec);
2145}
2146
2147gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lspeex -lm
2148/tmp/mplayer-conf-21330-19072.c:1:25: speex/speex.h: No such file or directory
2149/tmp/mplayer-conf-21330-19072.c: In function `main':
2150/tmp/mplayer-conf-21330-19072.c:3: error: `SpeexBits' undeclared (first use in this function)
2151/tmp/mplayer-conf-21330-19072.c:3: error: (Each undeclared identifier is reported only once
2152/tmp/mplayer-conf-21330-19072.c:3: error: for each function it appears in.)
2153/tmp/mplayer-conf-21330-19072.c:3: error: syntax error before "bits"
2154/tmp/mplayer-conf-21330-19072.c:5: error: `bits' undeclared (first use in this function)
2155
2156ldd /tmp/mplayer-conf-6219-19072.o
2157ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
2158
2159Result is: no
2160##########################################
2161
2162============ Checking for OggTheora support ============
2163
2164#include <theora/theora.h>
2165#include <string.h>
2166int main(void)
2167{
2168 /* theora is in flux, make sure that all interface routines and
2169 * datatypes exist and work the way we expect it, so we don't break
2170 * mplayer */
2171 ogg_packet op;
2172 theora_comment tc;
2173 theora_info inf;
2174 theora_state st;
2175 yuv_buffer yuv;
2176 int r;
2177 double t;
2178
2179 theora_info_init (&inf);
2180 theora_comment_init (&tc);
2181
2182 return 0;
2183
2184 /* we don't want to execute this kind of nonsense; just for making sure
2185 * that compilation works... */
2186 memset(&op, 0, sizeof(op));
2187 r = theora_decode_header (&inf, &tc, &op);
2188 r = theora_decode_init (&st, &inf);
2189 t = theora_granule_time (&st, op.granulepos);
2190 r = theora_decode_packetin (&st, &op);
2191 r = theora_decode_YUVout (&st, &yuv);
2192 theora_clear (&st);
2193
2194 return 0;
2195}
2196
2197gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
2198/tmp/mplayer-conf-21330-19072.c:1:27: theora/theora.h: No such file or directory
2199/tmp/mplayer-conf-21330-19072.c: In function `main':
2200/tmp/mplayer-conf-21330-19072.c:8: error: `ogg_packet' undeclared (first use in this function)
2201/tmp/mplayer-conf-21330-19072.c:8: error: (Each undeclared identifier is reported only once
2202/tmp/mplayer-conf-21330-19072.c:8: error: for each function it appears in.)
2203/tmp/mplayer-conf-21330-19072.c:8: error: syntax error before "op"
2204/tmp/mplayer-conf-21330-19072.c:9: error: `theora_comment' undeclared (first use in this function)
2205/tmp/mplayer-conf-21330-19072.c:10: error: `theora_info' undeclared (first use in this function)
2206/tmp/mplayer-conf-21330-19072.c:11: error: `theora_state' undeclared (first use in this function)
2207/tmp/mplayer-conf-21330-19072.c:12: error: `yuv_buffer' undeclared (first use in this function)
2208/tmp/mplayer-conf-21330-19072.c:16: error: `inf' undeclared (first use in this function)
2209/tmp/mplayer-conf-21330-19072.c:17: error: `tc' undeclared (first use in this function)
2210/tmp/mplayer-conf-21330-19072.c:23: error: `op' undeclared (first use in this function)
2211/tmp/mplayer-conf-21330-19072.c:25: error: `st' undeclared (first use in this function)
2212/tmp/mplayer-conf-21330-19072.c:28: error: `yuv' undeclared (first use in this function)
2213
2214ldd /tmp/mplayer-conf-6219-19072.o
2215ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
2216
2217
2218#include <theora/theora.h>
2219#include <string.h>
2220int main(void)
2221{
2222 /* theora is in flux, make sure that all interface routines and
2223 * datatypes exist and work the way we expect it, so we don't break
2224 * mplayer */
2225 ogg_packet op;
2226 theora_comment tc;
2227 theora_info inf;
2228 theora_state st;
2229 yuv_buffer yuv;
2230 int r;
2231 double t;
2232
2233 theora_info_init (&inf);
2234 theora_comment_init (&tc);
2235
2236 return 0;
2237
2238 /* we don't want to execute this kind of nonsense; just for making sure
2239 * that compilation works... */
2240 memset(&op, 0, sizeof(op));
2241 r = theora_decode_header (&inf, &tc, &op);
2242 r = theora_decode_init (&st, &inf);
2243 t = theora_granule_time (&st, op.granulepos);
2244 r = theora_decode_packetin (&st, &op);
2245 r = theora_decode_YUVout (&st, &yuv);
2246 theora_clear (&st);
2247
2248 return 0;
2249}
2250
2251gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -ltheora
2252/tmp/mplayer-conf-21330-19072.c:1:27: theora/theora.h: No such file or directory
2253/tmp/mplayer-conf-21330-19072.c: In function `main':
2254/tmp/mplayer-conf-21330-19072.c:8: error: `ogg_packet' undeclared (first use in this function)
2255/tmp/mplayer-conf-21330-19072.c:8: error: (Each undeclared identifier is reported only once
2256/tmp/mplayer-conf-21330-19072.c:8: error: for each function it appears in.)
2257/tmp/mplayer-conf-21330-19072.c:8: error: syntax error before "op"
2258/tmp/mplayer-conf-21330-19072.c:9: error: `theora_comment' undeclared (first use in this function)
2259/tmp/mplayer-conf-21330-19072.c:10: error: `theora_info' undeclared (first use in this function)
2260/tmp/mplayer-conf-21330-19072.c:11: error: `theora_state' undeclared (first use in this function)
2261/tmp/mplayer-conf-21330-19072.c:12: error: `yuv_buffer' undeclared (first use in this function)
2262/tmp/mplayer-conf-21330-19072.c:16: error: `inf' undeclared (first use in this function)
2263/tmp/mplayer-conf-21330-19072.c:17: error: `tc' undeclared (first use in this function)
2264/tmp/mplayer-conf-21330-19072.c:23: error: `op' undeclared (first use in this function)
2265/tmp/mplayer-conf-21330-19072.c:25: error: `st' undeclared (first use in this function)
2266/tmp/mplayer-conf-21330-19072.c:28: error: `yuv' undeclared (first use in this function)
2267
2268ldd /tmp/mplayer-conf-6219-19072.o
2269ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
2270
2271
2272#include <theora/theora.h>
2273#include <string.h>
2274int main(void)
2275{
2276 /* theora is in flux, make sure that all interface routines and
2277 * datatypes exist and work the way we expect it, so we don't break
2278 * mplayer */
2279 ogg_packet op;
2280 theora_comment tc;
2281 theora_info inf;
2282 theora_state st;
2283 yuv_buffer yuv;
2284 int r;
2285 double t;
2286
2287 theora_info_init (&inf);
2288 theora_comment_init (&tc);
2289
2290 return 0;
2291
2292 /* we don't want to execute this kind of nonsense; just for making sure
2293 * that compilation works... */
2294 memset(&op, 0, sizeof(op));
2295 r = theora_decode_header (&inf, &tc, &op);
2296 r = theora_decode_init (&st, &inf);
2297 t = theora_granule_time (&st, op.granulepos);
2298 r = theora_decode_packetin (&st, &op);
2299 r = theora_decode_YUVout (&st, &yuv);
2300 theora_clear (&st);
2301
2302 return 0;
2303}
2304
2305gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -I. tremor/bitwise.c
2306/tmp/mplayer-conf-21330-19072.c:1:27: theora/theora.h: No such file or directory
2307/tmp/mplayer-conf-21330-19072.c: In function `main':
2308/tmp/mplayer-conf-21330-19072.c:8: error: `ogg_packet' undeclared (first use in this function)
2309/tmp/mplayer-conf-21330-19072.c:8: error: (Each undeclared identifier is reported only once
2310/tmp/mplayer-conf-21330-19072.c:8: error: for each function it appears in.)
2311/tmp/mplayer-conf-21330-19072.c:8: error: syntax error before "op"
2312/tmp/mplayer-conf-21330-19072.c:9: error: `theora_comment' undeclared (first use in this function)
2313/tmp/mplayer-conf-21330-19072.c:10: error: `theora_info' undeclared (first use in this function)
2314/tmp/mplayer-conf-21330-19072.c:11: error: `theora_state' undeclared (first use in this function)
2315/tmp/mplayer-conf-21330-19072.c:12: error: `yuv_buffer' undeclared (first use in this function)
2316/tmp/mplayer-conf-21330-19072.c:16: error: `inf' undeclared (first use in this function)
2317/tmp/mplayer-conf-21330-19072.c:17: error: `tc' undeclared (first use in this function)
2318/tmp/mplayer-conf-21330-19072.c:23: error: `op' undeclared (first use in this function)
2319/tmp/mplayer-conf-21330-19072.c:25: error: `st' undeclared (first use in this function)
2320/tmp/mplayer-conf-21330-19072.c:28: error: `yuv' undeclared (first use in this function)
2321
2322ldd /tmp/mplayer-conf-6219-19072.o
2323ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
2324
2325
2326#include <theora/theora.h>
2327#include <string.h>
2328int main(void)
2329{
2330 /* theora is in flux, make sure that all interface routines and
2331 * datatypes exist and work the way we expect it, so we don't break
2332 * mplayer */
2333 ogg_packet op;
2334 theora_comment tc;
2335 theora_info inf;
2336 theora_state st;
2337 yuv_buffer yuv;
2338 int r;
2339 double t;
2340
2341 theora_info_init (&inf);
2342 theora_comment_init (&tc);
2343
2344 return 0;
2345
2346 /* we don't want to execute this kind of nonsense; just for making sure
2347 * that compilation works... */
2348 memset(&op, 0, sizeof(op));
2349 r = theora_decode_header (&inf, &tc, &op);
2350 r = theora_decode_init (&st, &inf);
2351 t = theora_granule_time (&st, op.granulepos);
2352 r = theora_decode_packetin (&st, &op);
2353 r = theora_decode_YUVout (&st, &yuv);
2354 theora_clear (&st);
2355
2356 return 0;
2357}
2358
2359gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -I. tremor/bitwise.c -ltheora
2360/tmp/mplayer-conf-21330-19072.c:1:27: theora/theora.h: No such file or directory
2361/tmp/mplayer-conf-21330-19072.c: In function `main':
2362/tmp/mplayer-conf-21330-19072.c:8: error: `ogg_packet' undeclared (first use in this function)
2363/tmp/mplayer-conf-21330-19072.c:8: error: (Each undeclared identifier is reported only once
2364/tmp/mplayer-conf-21330-19072.c:8: error: for each function it appears in.)
2365/tmp/mplayer-conf-21330-19072.c:8: error: syntax error before "op"
2366/tmp/mplayer-conf-21330-19072.c:9: error: `theora_comment' undeclared (first use in this function)
2367/tmp/mplayer-conf-21330-19072.c:10: error: `theora_info' undeclared (first use in this function)
2368/tmp/mplayer-conf-21330-19072.c:11: error: `theora_state' undeclared (first use in this function)
2369/tmp/mplayer-conf-21330-19072.c:12: error: `yuv_buffer' undeclared (first use in this function)
2370/tmp/mplayer-conf-21330-19072.c:16: error: `inf' undeclared (first use in this function)
2371/tmp/mplayer-conf-21330-19072.c:17: error: `tc' undeclared (first use in this function)
2372/tmp/mplayer-conf-21330-19072.c:23: error: `op' undeclared (first use in this function)
2373/tmp/mplayer-conf-21330-19072.c:25: error: `st' undeclared (first use in this function)
2374/tmp/mplayer-conf-21330-19072.c:28: error: `yuv' undeclared (first use in this function)
2375
2376ldd /tmp/mplayer-conf-6219-19072.o
2377ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
2378
2379Result is: no
2380##########################################
2381
2382============ Checking for mp3lib support ============
2383Result is: yes
2384##########################################
2385
2386============ Checking for liba52 support ============
2387Result is: yes
2388##########################################
2389
2390============ Checking for libdts support ============
2391
2392#include <inttypes.h>
2393#include <dts.h>
2394int main(void) { dts_init (0); return 0; }
2395
2396gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -ldts -lm
2397/tmp/mplayer-conf-21330-19072.c:2:17: dts.h: No such file or directory
2398
2399ldd /tmp/mplayer-conf-6219-19072.o
2400ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
2401
2402Result is: no
2403##########################################
2404
2405============ Checking for libmpeg2 support ============
2406Result is: yes
2407##########################################
2408
2409============ Checking for libmpcdec (musepack, version >= 1.2.1 required) ============
2410
2411#include <mpcdec/mpcdec.h>
2412int main(void) {
2413 mpc_streaminfo info;
2414 mpc_decoder decoder;
2415 mpc_decoder_set_streaminfo(&decoder, &info);
2416 mpc_decoder_decode_frame(&decoder, NULL, 0, NULL);
2417}
2418
2419gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lmpcdec -lm
2420/tmp/mplayer-conf-21330-19072.c:1:27: mpcdec/mpcdec.h: No such file or directory
2421/tmp/mplayer-conf-21330-19072.c: In function `main':
2422/tmp/mplayer-conf-21330-19072.c:3: error: `mpc_streaminfo' undeclared (first use in this function)
2423/tmp/mplayer-conf-21330-19072.c:3: error: (Each undeclared identifier is reported only once
2424/tmp/mplayer-conf-21330-19072.c:3: error: for each function it appears in.)
2425/tmp/mplayer-conf-21330-19072.c:3: error: syntax error before "info"
2426/tmp/mplayer-conf-21330-19072.c:4: error: `mpc_decoder' undeclared (first use in this function)
2427/tmp/mplayer-conf-21330-19072.c:5: error: `decoder' undeclared (first use in this function)
2428/tmp/mplayer-conf-21330-19072.c:5: error: `info' undeclared (first use in this function)
2429/tmp/mplayer-conf-21330-19072.c:6: error: `NULL' undeclared (first use in this function)
2430
2431ldd /tmp/mplayer-conf-6219-19072.o
2432ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
2433
2434Result is: no
2435##########################################
2436
2437============ Checking for Matroska support ============
2438Result is: yes
2439##########################################
2440
2441============ Checking for FAAC (AAC encoder) support ============
2442
2443#include <inttypes.h>
2444#include <faac.h>
2445int main(void) { unsigned long x, y; faacEncOpen(48000, 2, &x, &y); return 0; }
2446
2447gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -c -O4 -lfaac -lm
2448/tmp/mplayer-conf-21330-19072.c:2:18: faac.h: No such file or directory
2449
2450ldd /tmp/mplayer-conf-6219-19072.o
2451ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
2452
2453
2454#include <inttypes.h>
2455#include <faac.h>
2456int main(void) { unsigned long x, y; faacEncOpen(48000, 2, &x, &y); return 0; }
2457
2458gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -c -O4 -lfaac -lmp4v2 -lstdc++ -lm
2459/tmp/mplayer-conf-21330-19072.c:2:18: faac.h: No such file or directory
2460
2461ldd /tmp/mplayer-conf-6219-19072.o
2462ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
2463
2464Result is: no
2465##########################################
2466
2467============ Checking for internal FAAD2 (AAC) support ============
2468
2469/*
2470** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
2471** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
2472**
2473** This program is free software; you can redistribute it and/or modify
2474** it under the terms of the GNU General Public License as published by
2475** the Free Software Foundation; either version 2 of the License, or
2476** (at your option) any later version.
2477**
2478** This program is distributed in the hope that it will be useful,
2479** but WITHOUT ANY WARRANTY; without even the implied warranty of
2480** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2481** GNU General Public License for more details.
2482**
2483** You should have received a copy of the GNU General Public License
2484** along with this program; if not, write to the Free Software
2485** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
2486**
2487** Any non-GPL usage of this software or parts of this software is strictly
2488** forbidden.
2489**
2490** Commercial non-GPL licensing of this software is possible.
2491** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
2492**
2493** $Id: cfft.c,v 1.27 2004/06/30 12:45:55 menno Exp $
2494**/
2495
2496/*
2497 * Algorithmically based on Fortran-77 FFTPACK
2498 * by Paul N. Swarztrauber(Version 4, 1985).
2499 *
2500 * Does even sized fft only
2501 */
2502
2503/* isign is +1 for backward and -1 for forward transforms */
2504
2505#include "common.h"
2506#include "structs.h"
2507
2508#include <stdlib.h>
2509
2510#include "cfft.h"
2511#include "cfft_tab.h"
2512
2513
2514/* static function declarations */
2515#ifdef USE_SSE
2516static void passf2pos_sse(const uint16_t l1, const complex_t *cc,
2517 complex_t *ch, const complex_t *wa);
2518static void passf2pos_sse_ido(const uint16_t ido, const uint16_t l1, const complex_t *cc,
2519 complex_t *ch, const complex_t *wa);
2520static void passf4pos_sse_ido(const uint16_t ido, const uint16_t l1, const complex_t *cc, complex_t *ch,
2521 const complex_t *wa1, const complex_t *wa2, const complex_t *wa3);
2522#endif
2523static void passf2pos(const uint16_t ido, const uint16_t l1, const complex_t *cc,
2524 complex_t *ch, const complex_t *wa);
2525static void passf2neg(const uint16_t ido, const uint16_t l1, const complex_t *cc,
2526 complex_t *ch, const complex_t *wa);
2527static void passf3(const uint16_t ido, const uint16_t l1, const complex_t *cc,
2528 complex_t *ch, const complex_t *wa1, const complex_t *wa2, const int8_t isign);
2529static void passf4pos(const uint16_t ido, const uint16_t l1, const complex_t *cc, complex_t *ch,
2530 const complex_t *wa1, const complex_t *wa2, const complex_t *wa3);
2531static void passf4neg(const uint16_t ido, const uint16_t l1, const complex_t *cc, complex_t *ch,
2532 const complex_t *wa1, const complex_t *wa2, const complex_t *wa3);
2533static void passf5(const uint16_t ido, const uint16_t l1, const complex_t *cc, complex_t *ch,
2534 const complex_t *wa1, const complex_t *wa2, const complex_t *wa3,
2535 const complex_t *wa4, const int8_t isign);
2536INLINE void cfftf1(uint16_t n, complex_t *c, complex_t *ch,
2537 const uint16_t *ifac, const complex_t *wa, const int8_t isign);
2538static void cffti1(uint16_t n, complex_t *wa, uint16_t *ifac);
2539
2540
2541/*----------------------------------------------------------------------
2542 passf2, passf3, passf4, passf5. Complex FFT passes fwd and bwd.
2543 ----------------------------------------------------------------------*/
2544
2545#if 0 //def USE_SSE
2546static void passf2pos_sse(const uint16_t l1, const complex_t *cc,
2547 complex_t *ch, const complex_t *wa)
2548{
2549 uint16_t k, ah, ac;
2550
2551 for (k = 0; k < l1; k++)
2552 {
2553 ah = 2*k;
2554 ac = 4*k;
2555
2556 RE(ch[ah]) = RE(cc[ac]) + RE(cc[ac+1]);
2557 IM(ch[ah]) = IM(cc[ac]) + IM(cc[ac+1]);
2558
2559 RE(ch[ah+l1]) = RE(cc[ac]) - RE(cc[ac+1]);
2560 IM(ch[ah+l1]) = IM(cc[ac]) - IM(cc[ac+1]);
2561 }
2562}
2563
2564static void passf2pos_sse_ido(const uint16_t ido, const uint16_t l1, const complex_t *cc,
2565 complex_t *ch, const complex_t *wa)
2566{
2567 uint16_t i, k, ah, ac;
2568
2569 for (k = 0; k < l1; k++)
2570 {
2571 ah = k*ido;
2572 ac = 2*k*ido;
2573
2574 for (i = 0; i < ido; i+=4)
2575 {
2576 __m128 m1, m2, m3, m4, m5, m6, m7, m8, m9, m10, m11, m12, m13, m14;
2577 __m128 m15, m16, m17, m18, m19, m20, m21, m22, m23, m24;
2578 __m128 w1, w2, w3, w4;
2579
2580 m1 = _mm_load_ps(&RE(cc[ac+i]));
2581 m2 = _mm_load_ps(&RE(cc[ac+ido+i]));
2582 m5 = _mm_load_ps(&RE(cc[ac+i+2]));
2583 m6 = _mm_load_ps(&RE(cc[ac+ido+i+2]));
2584 w1 = _mm_load_ps(&RE(wa[i]));
2585 w3 = _mm_load_ps(&RE(wa[i+2]));
2586
2587 m3 = _mm_add_ps(m1, m2);
2588 m15 = _mm_add_ps(m5, m6);
2589
2590 m4 = _mm_sub_ps(m1, m2);
2591 m16 = _mm_sub_ps(m5, m6);
2592
2593 _mm_store_ps(&RE(ch[ah+i]), m3);
2594 _mm_store_ps(&RE(ch[ah+i+2]), m15);
2595
2596
2597 w2 = _mm_shuffle_ps(w1, w1, _MM_SHUFFLE(2, 3, 0, 1));
2598 w4 = _mm_shuffle_ps(w3, w3, _MM_SHUFFLE(2, 3, 0, 1));
2599
2600 m7 = _mm_mul_ps(m4, w1);
2601 m17 = _mm_mul_ps(m16, w3);
2602 m8 = _mm_mul_ps(m4, w2);
2603 m18 = _mm_mul_ps(m16, w4);
2604
2605 m9 = _mm_shuffle_ps(m7, m8, _MM_SHUFFLE(2, 0, 2, 0));
2606 m19 = _mm_shuffle_ps(m17, m18, _MM_SHUFFLE(2, 0, 2, 0));
2607 m10 = _mm_shuffle_ps(m7, m8, _MM_SHUFFLE(3, 1, 3, 1));
2608 m20 = _mm_shuffle_ps(m17, m18, _MM_SHUFFLE(3, 1, 3, 1));
2609
2610 m11 = _mm_add_ps(m9, m10);
2611 m21 = _mm_add_ps(m19, m20);
2612 m12 = _mm_sub_ps(m9, m10);
2613 m22 = _mm_sub_ps(m19, m20);
2614
2615 m13 = _mm_shuffle_ps(m11, m11, _MM_SHUFFLE(0, 0, 3, 2));
2616 m23 = _mm_shuffle_ps(m21, m21, _MM_SHUFFLE(0, 0, 3, 2));
2617
2618 m14 = _mm_unpacklo_ps(m12, m13);
2619 m24 = _mm_unpacklo_ps(m22, m23);
2620
2621 _mm_store_ps(&RE(ch[ah+i+l1*ido]), m14);
2622 _mm_store_ps(&RE(ch[ah+i+2+l1*ido]), m24);
2623 }
2624 }
2625}
2626#endif
2627
2628static void passf2pos(const uint16_t ido, const uint16_t l1, const complex_t *cc,
2629 complex_t *ch, const complex_t *wa)
2630{
2631 uint16_t i, k, ah, ac;
2632
2633 if (ido == 1)
2634 {
2635 for (k = 0; k < l1; k++)
2636 {
2637 ah = 2*k;
2638 ac = 4*k;
2639
2640 RE(ch[ah]) = RE(cc[ac]) + RE(cc[ac+1]);
2641 RE(ch[ah+l1]) = RE(cc[ac]) - RE(cc[ac+1]);
2642 IM(ch[ah]) = IM(cc[ac]) + IM(cc[ac+1]);
2643 IM(ch[ah+l1]) = IM(cc[ac]) - IM(cc[ac+1]);
2644 }
2645 } else {
2646 for (k = 0; k < l1; k++)
2647 {
2648 ah = k*ido;
2649 ac = 2*k*ido;
2650
2651 for (i = 0; i < ido; i++)
2652 {
2653 complex_t t2;
2654
2655 RE(ch[ah+i]) = RE(cc[ac+i]) + RE(cc[ac+i+ido]);
2656 RE(t2) = RE(cc[ac+i]) - RE(cc[ac+i+ido]);
2657
2658 IM(ch[ah+i]) = IM(cc[ac+i]) + IM(cc[ac+i+ido]);
2659 IM(t2) = IM(cc[ac+i]) - IM(cc[ac+i+ido]);
2660
2661#if 1
2662 ComplexMult(&IM(ch[ah+i+l1*ido]), &RE(ch[ah+i+l1*ido]),
2663 IM(t2), RE(t2), RE(wa[i]), IM(wa[i]));
2664#else
2665 ComplexMult(&RE(ch[ah+i+l1*ido]), &IM(ch[ah+i+l1*ido]),
2666 RE(t2), IM(t2), RE(wa[i]), IM(wa[i]));
2667#endif
2668 }
2669 }
2670 }
2671}
2672
2673static void passf2neg(const uint16_t ido, const uint16_t l1, const complex_t *cc,
2674 complex_t *ch, const complex_t *wa)
2675{
2676 uint16_t i, k, ah, ac;
2677
2678 if (ido == 1)
2679 {
2680 for (k = 0; k < l1; k++)
2681 {
2682 ah = 2*k;
2683 ac = 4*k;
2684
2685 RE(ch[ah]) = RE(cc[ac]) + RE(cc[ac+1]);
2686 RE(ch[ah+l1]) = RE(cc[ac]) - RE(cc[ac+1]);
2687 IM(ch[ah]) = IM(cc[ac]) + IM(cc[ac+1]);
2688 IM(ch[ah+l1]) = IM(cc[ac]) - IM(cc[ac+1]);
2689 }
2690 } else {
2691 for (k = 0; k < l1; k++)
2692 {
2693 ah = k*ido;
2694 ac = 2*k*ido;
2695
2696 for (i = 0; i < ido; i++)
2697 {
2698 complex_t t2;
2699
2700 RE(ch[ah+i]) = RE(cc[ac+i]) + RE(cc[ac+i+ido]);
2701 RE(t2) = RE(cc[ac+i]) - RE(cc[ac+i+ido]);
2702
2703 IM(ch[ah+i]) = IM(cc[ac+i]) + IM(cc[ac+i+ido]);
2704 IM(t2) = IM(cc[ac+i]) - IM(cc[ac+i+ido]);
2705
2706#if 1
2707 ComplexMult(&RE(ch[ah+i+l1*ido]), &IM(ch[ah+i+l1*ido]),
2708 RE(t2), IM(t2), RE(wa[i]), IM(wa[i]));
2709#else
2710 ComplexMult(&IM(ch[ah+i+l1*ido]), &RE(ch[ah+i+l1*ido]),
2711 IM(t2), RE(t2), RE(wa[i]), IM(wa[i]));
2712#endif
2713 }
2714 }
2715 }
2716}
2717
2718
2719static void passf3(const uint16_t ido, const uint16_t l1, const complex_t *cc,
2720 complex_t *ch, const complex_t *wa1, const complex_t *wa2,
2721 const int8_t isign)
2722{
2723 static real_t taur = FRAC_CONST(-0.5);
2724 static real_t taui = FRAC_CONST(0.866025403784439);
2725 uint16_t i, k, ac, ah;
2726 complex_t c2, c3, d2, d3, t2;
2727
2728 if (ido == 1)
2729 {
2730 if (isign == 1)
2731 {
2732 for (k = 0; k < l1; k++)
2733 {
2734 ac = 3*k+1;
2735 ah = k;
2736
2737 RE(t2) = RE(cc[ac]) + RE(cc[ac+1]);
2738 IM(t2) = IM(cc[ac]) + IM(cc[ac+1]);
2739 RE(c2) = RE(cc[ac-1]) + MUL_F(RE(t2),taur);
2740 IM(c2) = IM(cc[ac-1]) + MUL_F(IM(t2),taur);
2741
2742 RE(ch[ah]) = RE(cc[ac-1]) + RE(t2);
2743 IM(ch[ah]) = IM(cc[ac-1]) + IM(t2);
2744
2745 RE(c3) = MUL_F((RE(cc[ac]) - RE(cc[ac+1])), taui);
2746 IM(c3) = MUL_F((IM(cc[ac]) - IM(cc[ac+1])), taui);
2747
2748 RE(ch[ah+l1]) = RE(c2) - IM(c3);
2749 IM(ch[ah+l1]) = IM(c2) + RE(c3);
2750 RE(ch[ah+2*l1]) = RE(c2) + IM(c3);
2751 IM(ch[ah+2*l1]) = IM(c2) - RE(c3);
2752 }
2753 } else {
2754 for (k = 0; k < l1; k++)
2755 {
2756 ac = 3*k+1;
2757 ah = k;
2758
2759 RE(t2) = RE(cc[ac]) + RE(cc[ac+1]);
2760 IM(t2) = IM(cc[ac]) + IM(cc[ac+1]);
2761 RE(c2) = RE(cc[ac-1]) + MUL_F(RE(t2),taur);
2762 IM(c2) = IM(cc[ac-1]) + MUL_F(IM(t2),taur);
2763
2764 RE(ch[ah]) = RE(cc[ac-1]) + RE(t2);
2765 IM(ch[ah]) = IM(cc[ac-1]) + IM(t2);
2766
2767 RE(c3) = MUL_F((RE(cc[ac]) - RE(cc[ac+1])), taui);
2768 IM(c3) = MUL_F((IM(cc[ac]) - IM(cc[ac+1])), taui);
2769
2770 RE(ch[ah+l1]) = RE(c2) + IM(c3);
2771 IM(ch[ah+l1]) = IM(c2) - RE(c3);
2772 RE(ch[ah+2*l1]) = RE(c2) - IM(c3);
2773 IM(ch[ah+2*l1]) = IM(c2) + RE(c3);
2774 }
2775 }
2776 } else {
2777 if (isign == 1)
2778 {
2779 for (k = 0; k < l1; k++)
2780 {
2781 for (i = 0; i < ido; i++)
2782 {
2783 ac = i + (3*k+1)*ido;
2784 ah = i + k * ido;
2785
2786 RE(t2) = RE(cc[ac]) + RE(cc[ac+ido]);
2787 RE(c2) = RE(cc[ac-ido]) + MUL_F(RE(t2),taur);
2788 IM(t2) = IM(cc[ac]) + IM(cc[ac+ido]);
2789 IM(c2) = IM(cc[ac-ido]) + MUL_F(IM(t2),taur);
2790
2791 RE(ch[ah]) = RE(cc[ac-ido]) + RE(t2);
2792 IM(ch[ah]) = IM(cc[ac-ido]) + IM(t2);
2793
2794 RE(c3) = MUL_F((RE(cc[ac]) - RE(cc[ac+ido])), taui);
2795 IM(c3) = MUL_F((IM(cc[ac]) - IM(cc[ac+ido])), taui);
2796
2797 RE(d2) = RE(c2) - IM(c3);
2798 IM(d3) = IM(c2) - RE(c3);
2799 RE(d3) = RE(c2) + IM(c3);
2800 IM(d2) = IM(c2) + RE(c3);
2801
2802#if 1
2803 ComplexMult(&IM(ch[ah+l1*ido]), &RE(ch[ah+l1*ido]),
2804 IM(d2), RE(d2), RE(wa1[i]), IM(wa1[i]));
2805 ComplexMult(&IM(ch[ah+2*l1*ido]), &RE(ch[ah+2*l1*ido]),
2806 IM(d3), RE(d3), RE(wa2[i]), IM(wa2[i]));
2807#else
2808 ComplexMult(&RE(ch[ah+l1*ido]), &IM(ch[ah+l1*ido]),
2809 RE(d2), IM(d2), RE(wa1[i]), IM(wa1[i]));
2810 ComplexMult(&RE(ch[ah+2*l1*ido]), &IM(ch[ah+2*l1*ido]),
2811 RE(d3), IM(d3), RE(wa2[i]), IM(wa2[i]));
2812#endif
2813 }
2814 }
2815 } else {
2816 for (k = 0; k < l1; k++)
2817 {
2818 for (i = 0; i < ido; i++)
2819 {
2820 ac = i + (3*k+1)*ido;
2821 ah = i + k * ido;
2822
2823 RE(t2) = RE(cc[ac]) + RE(cc[ac+ido]);
2824 RE(c2) = RE(cc[ac-ido]) + MUL_F(RE(t2),taur);
2825 IM(t2) = IM(cc[ac]) + IM(cc[ac+ido]);
2826 IM(c2) = IM(cc[ac-ido]) + MUL_F(IM(t2),taur);
2827
2828 RE(ch[ah]) = RE(cc[ac-ido]) + RE(t2);
2829 IM(ch[ah]) = IM(cc[ac-ido]) + IM(t2);
2830
2831 RE(c3) = MUL_F((RE(cc[ac]) - RE(cc[ac+ido])), taui);
2832 IM(c3) = MUL_F((IM(cc[ac]) - IM(cc[ac+ido])), taui);
2833
2834 RE(d2) = RE(c2) + IM(c3);
2835 IM(d3) = IM(c2) + RE(c3);
2836 RE(d3) = RE(c2) - IM(c3);
2837 IM(d2) = IM(c2) - RE(c3);
2838
2839#if 1
2840 ComplexMult(&RE(ch[ah+l1*ido]), &IM(ch[ah+l1*ido]),
2841 RE(d2), IM(d2), RE(wa1[i]), IM(wa1[i]));
2842 ComplexMult(&RE(ch[ah+2*l1*ido]), &IM(ch[ah+2*l1*ido]),
2843 RE(d3), IM(d3), RE(wa2[i]), IM(wa2[i]));
2844#else
2845 ComplexMult(&IM(ch[ah+l1*ido]), &RE(ch[ah+l1*ido]),
2846 IM(d2), RE(d2), RE(wa1[i]), IM(wa1[i]));
2847 ComplexMult(&IM(ch[ah+2*l1*ido]), &RE(ch[ah+2*l1*ido]),
2848 IM(d3), RE(d3), RE(wa2[i]), IM(wa2[i]));
2849#endif
2850 }
2851 }
2852 }
2853 }
2854}
2855
2856#ifdef USE_SSE
2857ALIGN static const int32_t negate[4] = { 0x0, 0x0, 0x0, 0x80000000 };
2858
2859__declspec(naked) static void passf4pos_sse(const uint16_t l1, const complex_t *cc,
2860 complex_t *ch, const complex_t *wa1, const complex_t *wa2,
2861 const complex_t *wa3)
2862{
2863 __asm {
2864 push ebx
2865 mov ebx, esp
2866 and esp, -16
2867 push edi
2868 push esi
2869 sub esp, 8
2870 movzx edi, WORD PTR [ebx+8]
2871
2872 movaps xmm1, XMMWORD PTR negate
2873
2874 test edi, edi
2875 jle l1_is_zero
2876
2877 lea esi, DWORD PTR [edi+edi]
2878 add esi, esi
2879 sub esi, edi
2880 add esi, esi
2881 add esi, esi
2882 add esi, esi
2883 mov eax, DWORD PTR [ebx+16]
2884 add esi, eax
2885 lea ecx, DWORD PTR [edi+edi]
2886 add ecx, ecx
2887 add ecx, ecx
2888 add ecx, ecx
2889 add ecx, eax
2890 lea edx, DWORD PTR [edi+edi]
2891 add edx, edx
2892 add edx, edx
2893 add edx, eax
2894 xor eax, eax
2895 mov DWORD PTR [esp], ebp
2896 mov ebp, DWORD PTR [ebx+12]
2897
2898fftloop:
2899 lea edi, DWORD PTR [eax+eax]
2900 add edi, edi
2901 movaps xmm2, XMMWORD PTR [ebp+edi*8]
2902 movaps xmm0, XMMWORD PTR [ebp+edi*8+16]
2903 movaps xmm7, XMMWORD PTR [ebp+edi*8+32]
2904 movaps xmm5, XMMWORD PTR [ebp+edi*8+48]
2905 movaps xmm6, xmm2
2906 addps xmm6, xmm0
2907 movaps xmm4, xmm1
2908 xorps xmm4, xmm7
2909 movaps xmm3, xmm1
2910 xorps xmm3, xmm5
2911 xorps xmm2, xmm1
2912 xorps xmm0, xmm1
2913 addps xmm7, xmm5
2914 subps xmm2, xmm0
2915 movaps xmm0, xmm6
2916 shufps xmm0, xmm7, 68
2917 subps xmm4, xmm3
2918 shufps xmm6, xmm7, 238
2919 movaps xmm5, xmm2
2920 shufps xmm5, xmm4, 68
2921 movaps xmm3, xmm0
2922 addps xmm3, xmm6
2923 shufps xmm2, xmm4, 187
2924 subps xmm0, xmm6
2925 movaps xmm4, xmm5
2926 addps xmm4, xmm2
2927 mov edi, DWORD PTR [ebx+16]
2928 movaps XMMWORD PTR [edi+eax*8], xmm3
2929 subps xmm5, xmm2
2930 movaps XMMWORD PTR [edx+eax*8], xmm4
2931 movaps XMMWORD PTR [ecx+eax*8], xmm0
2932 movaps XMMWORD PTR [esi+eax*8], xmm5
2933 add eax, 2
2934 movzx eax, ax
2935 movzx edi, WORD PTR [ebx+8]
2936 cmp eax, edi
2937 jl fftloop
2938
2939 mov ebp, DWORD PTR [esp]
2940
2941l1_is_zero:
2942
2943 add esp, 8
2944 pop esi
2945 pop edi
2946 mov esp, ebx
2947 pop ebx
2948 ret
2949 }
2950}
2951#endif
2952
2953#if 0
2954static void passf4pos_sse_ido(const uint16_t ido, const uint16_t l1, const complex_t *cc,
2955 complex_t *ch, const complex_t *wa1, const complex_t *wa2,
2956 const complex_t *wa3)
2957{
2958 uint16_t i, k, ac, ah;
2959
2960 for (k = 0; k < l1; k++)
2961 {
2962 ac = 4*k*ido;
2963 ah = k*ido;
2964
2965 for (i = 0; i < ido; i+=2)
2966 {
2967 __m128 m1, m2, m3, m4, m5, m6, m7, m8, m9, m10, m11, m12, m13, m14, m15, m16;
2968 __m128 n1, n2, n3, n4, n5, n6, n7, n8, n9, m17, m18, m19, m20, m21, m22, m23;
2969 __m128 w1, w2, w3, w4, w5, w6, m24, m25, m26, m27, m28, m29, m30;
2970 __m128 neg1 = _mm_set_ps(-1.0, 1.0, -1.0, 1.0);
2971
2972 m1 = _mm_load_ps(&RE(cc[ac+i]));
2973 m2 = _mm_load_ps(&RE(cc[ac+i+2*ido]));
2974 m3 = _mm_add_ps(m1, m2);
2975 m4 = _mm_sub_ps(m1, m2);
2976
2977 n1 = _mm_load_ps(&RE(cc[ac+i+ido]));
2978 n2 = _mm_load_ps(&RE(cc[ac+i+3*ido]));
2979 n3 = _mm_add_ps(n1, n2);
2980
2981 n4 = _mm_mul_ps(neg1, n1);
2982 n5 = _mm_mul_ps(neg1, n2);
2983 n6 = _mm_sub_ps(n4, n5);
2984
2985 m5 = _mm_add_ps(m3, n3);
2986
2987 n7 = _mm_shuffle_ps(n6, n6, _MM_SHUFFLE(2, 3, 0, 1));
2988 n8 = _mm_add_ps(m4, n7);
2989
2990 m6 = _mm_sub_ps(m3, n3);
2991 n9 = _mm_sub_ps(m4, n7);
2992
2993 _mm_store_ps(&RE(ch[ah+i]), m5);
2994
2995#if 0
2996 static INLINE void ComplexMult(real_t *y1, real_t *y2,
2997 real_t x1, real_t x2, real_t c1, real_t c2)
2998 {
2999 *y1 = MUL_F(x1, c1) + MUL_F(x2, c2);
3000 *y2 = MUL_F(x2, c1) - MUL_F(x1, c2);
3001 }
3002
3003 m7.0 = RE(c2)*RE(wa1[i])
3004 m7.1 = IM(c2)*IM(wa1[i])
3005 m7.2 = RE(c6)*RE(wa1[i+1])
3006 m7.3 = IM(c6)*IM(wa1[i+1])
3007
3008 m8.0 = RE(c2)*IM(wa1[i])
3009 m8.1 = IM(c2)*RE(wa1[i])
3010 m8.2 = RE(c6)*IM(wa1[i+1])
3011 m8.3 = IM(c6)*RE(wa1[i+1])
3012
3013 RE(0) = m7.0 - m7.1
3014 IM(0) = m8.0 + m8.1
3015 RE(1) = m7.2 - m7.3
3016 IM(1) = m8.2 + m8.3
3017
3018 ////
3019 RE(0) = RE(c2)*RE(wa1[i]) - IM(c2)*IM(wa1[i])
3020 IM(0) = RE(c2)*IM(wa1[i]) + IM(c2)*RE(wa1[i])
3021 RE(1) = RE(c6)*RE(wa1[i+1]) - IM(c6)*IM(wa1[i+1])
3022 IM(1) = RE(c6)*IM(wa1[i+1]) + IM(c6)*RE(wa1[i+1])
3023#endif
3024
3025 w1 = _mm_load_ps(&RE(wa1[i]));
3026 w3 = _mm_load_ps(&RE(wa2[i]));
3027 w5 = _mm_load_ps(&RE(wa3[i]));
3028
3029 w2 = _mm_shuffle_ps(w1, w1, _MM_SHUFFLE(2, 3, 0, 1));
3030 w4 = _mm_shuffle_ps(w3, w3, _MM_SHUFFLE(2, 3, 0, 1));
3031 w6 = _mm_shuffle_ps(w5, w5, _MM_SHUFFLE(2, 3, 0, 1));
3032
3033 m7 = _mm_mul_ps(n8, w1);
3034 m15 = _mm_mul_ps(m6, w3);
3035 m23 = _mm_mul_ps(n9, w5);
3036 m8 = _mm_mul_ps(n8, w2);
3037 m16 = _mm_mul_ps(m6, w4);
3038 m24 = _mm_mul_ps(n9, w6);
3039
3040 m9 = _mm_shuffle_ps(m7, m8, _MM_SHUFFLE(2, 0, 2, 0));
3041 m17 = _mm_shuffle_ps(m15, m16, _MM_SHUFFLE(2, 0, 2, 0));
3042 m25 = _mm_shuffle_ps(m23, m24, _MM_SHUFFLE(2, 0, 2, 0));
3043 m10 = _mm_shuffle_ps(m7, m8, _MM_SHUFFLE(3, 1, 3, 1));
3044 m18 = _mm_shuffle_ps(m15, m16, _MM_SHUFFLE(3, 1, 3, 1));
3045 m26 = _mm_shuffle_ps(m23, m24, _MM_SHUFFLE(3, 1, 3, 1));
3046
3047 m11 = _mm_add_ps(m9, m10);
3048 m19 = _mm_add_ps(m17, m18);
3049 m27 = _mm_add_ps(m25, m26);
3050 m12 = _mm_sub_ps(m9, m10);
3051 m20 = _mm_sub_ps(m17, m18);
3052 m28 = _mm_sub_ps(m25, m26);
3053
3054 m13 = _mm_shuffle_ps(m11, m11, _MM_SHUFFLE(0, 0, 3, 2));
3055 m21 = _mm_shuffle_ps(m19, m19, _MM_SHUFFLE(0, 0, 3, 2));
3056 m29 = _mm_shuffle_ps(m27, m27, _MM_SHUFFLE(0, 0, 3, 2));
3057 m14 = _mm_unpacklo_ps(m12, m13);
3058 m22 = _mm_unpacklo_ps(m20, m21);
3059 m30 = _mm_unpacklo_ps(m28, m29);
3060
3061 _mm_store_ps(&RE(ch[ah+i+l1*ido]), m14);
3062 _mm_store_ps(&RE(ch[ah+i+2*l1*ido]), m22);
3063 _mm_store_ps(&RE(ch[ah+i+3*l1*ido]), m30);
3064 }
3065 }
3066}
3067#endif
3068
3069static void passf4pos(const uint16_t ido, const uint16_t l1, const complex_t *cc,
3070 complex_t *ch, const complex_t *wa1, const complex_t *wa2,
3071 const complex_t *wa3)
3072{
3073 uint16_t i, k, ac, ah;
3074
3075 if (ido == 1)
3076 {
3077 for (k = 0; k < l1; k++)
3078 {
3079 complex_t t1, t2, t3, t4;
3080
3081 ac = 4*k;
3082 ah = k;
3083
3084 RE(t2) = RE(cc[ac]) + RE(cc[ac+2]);
3085 RE(t1) = RE(cc[ac]) - RE(cc[ac+2]);
3086 IM(t2) = IM(cc[ac]) + IM(cc[ac+2]);
3087 IM(t1) = IM(cc[ac]) - IM(cc[ac+2]);
3088 RE(t3) = RE(cc[ac+1]) + RE(cc[ac+3]);
3089 IM(t4) = RE(cc[ac+1]) - RE(cc[ac+3]);
3090 IM(t3) = IM(cc[ac+3]) + IM(cc[ac+1]);
3091 RE(t4) = IM(cc[ac+3]) - IM(cc[ac+1]);
3092
3093 RE(ch[ah]) = RE(t2) + RE(t3);
3094 RE(ch[ah+2*l1]) = RE(t2) - RE(t3);
3095
3096 IM(ch[ah]) = IM(t2) + IM(t3);
3097 IM(ch[ah+2*l1]) = IM(t2) - IM(t3);
3098
3099 RE(ch[ah+l1]) = RE(t1) + RE(t4);
3100 RE(ch[ah+3*l1]) = RE(t1) - RE(t4);
3101
3102 IM(ch[ah+l1]) = IM(t1) + IM(t4);
3103 IM(ch[ah+3*l1]) = IM(t1) - IM(t4);
3104 }
3105 } else {
3106 for (k = 0; k < l1; k++)
3107 {
3108 ac = 4*k*ido;
3109 ah = k*ido;
3110
3111 for (i = 0; i < ido; i++)
3112 {
3113 complex_t c2, c3, c4, t1, t2, t3, t4;
3114
3115 RE(t2) = RE(cc[ac+i]) + RE(cc[ac+i+2*ido]);
3116 RE(t1) = RE(cc[ac+i]) - RE(cc[ac+i+2*ido]);
3117 IM(t2) = IM(cc[ac+i]) + IM(cc[ac+i+2*ido]);
3118 IM(t1) = IM(cc[ac+i]) - IM(cc[ac+i+2*ido]);
3119 RE(t3) = RE(cc[ac+i+ido]) + RE(cc[ac+i+3*ido]);
3120 IM(t4) = RE(cc[ac+i+ido]) - RE(cc[ac+i+3*ido]);
3121 IM(t3) = IM(cc[ac+i+3*ido]) + IM(cc[ac+i+ido]);
3122 RE(t4) = IM(cc[ac+i+3*ido]) - IM(cc[ac+i+ido]);
3123
3124 RE(c2) = RE(t1) + RE(t4);
3125 RE(c4) = RE(t1) - RE(t4);
3126
3127 IM(c2) = IM(t1) + IM(t4);
3128 IM(c4) = IM(t1) - IM(t4);
3129
3130 RE(ch[ah+i]) = RE(t2) + RE(t3);
3131 RE(c3) = RE(t2) - RE(t3);
3132
3133 IM(ch[ah+i]) = IM(t2) + IM(t3);
3134 IM(c3) = IM(t2) - IM(t3);
3135
3136#if 1
3137 ComplexMult(&IM(ch[ah+i+l1*ido]), &RE(ch[ah+i+l1*ido]),
3138 IM(c2), RE(c2), RE(wa1[i]), IM(wa1[i]));
3139 ComplexMult(&IM(ch[ah+i+2*l1*ido]), &RE(ch[ah+i+2*l1*ido]),
3140 IM(c3), RE(c3), RE(wa2[i]), IM(wa2[i]));
3141 ComplexMult(&IM(ch[ah+i+3*l1*ido]), &RE(ch[ah+i+3*l1*ido]),
3142 IM(c4), RE(c4), RE(wa3[i]), IM(wa3[i]));
3143#else
3144 ComplexMult(&RE(ch[ah+i+l1*ido]), &IM(ch[ah+i+l1*ido]),
3145 RE(c2), IM(c2), RE(wa1[i]), IM(wa1[i]));
3146 ComplexMult(&RE(ch[ah+i+2*l1*ido]), &IM(ch[ah+i+2*l1*ido]),
3147 RE(c3), IM(c3), RE(wa2[i]), IM(wa2[i]));
3148 ComplexMult(&RE(ch[ah+i+3*l1*ido]), &IM(ch[ah+i+3*l1*ido]),
3149 RE(c4), IM(c4), RE(wa3[i]), IM(wa3[i]));
3150#endif
3151 }
3152 }
3153 }
3154}
3155
3156static void passf4neg(const uint16_t ido, const uint16_t l1, const complex_t *cc,
3157 complex_t *ch, const complex_t *wa1, const complex_t *wa2,
3158 const complex_t *wa3)
3159{
3160 uint16_t i, k, ac, ah;
3161
3162 if (ido == 1)
3163 {
3164 for (k = 0; k < l1; k++)
3165 {
3166 complex_t t1, t2, t3, t4;
3167
3168 ac = 4*k;
3169 ah = k;
3170
3171 RE(t2) = RE(cc[ac]) + RE(cc[ac+2]);
3172 RE(t1) = RE(cc[ac]) - RE(cc[ac+2]);
3173 IM(t2) = IM(cc[ac]) + IM(cc[ac+2]);
3174 IM(t1) = IM(cc[ac]) - IM(cc[ac+2]);
3175 RE(t3) = RE(cc[ac+1]) + RE(cc[ac+3]);
3176 IM(t4) = RE(cc[ac+1]) - RE(cc[ac+3]);
3177 IM(t3) = IM(cc[ac+3]) + IM(cc[ac+1]);
3178 RE(t4) = IM(cc[ac+3]) - IM(cc[ac+1]);
3179
3180 RE(ch[ah]) = RE(t2) + RE(t3);
3181 RE(ch[ah+2*l1]) = RE(t2) - RE(t3);
3182
3183 IM(ch[ah]) = IM(t2) + IM(t3);
3184 IM(ch[ah+2*l1]) = IM(t2) - IM(t3);
3185
3186 RE(ch[ah+l1]) = RE(t1) - RE(t4);
3187 RE(ch[ah+3*l1]) = RE(t1) + RE(t4);
3188
3189 IM(ch[ah+l1]) = IM(t1) - IM(t4);
3190 IM(ch[ah+3*l1]) = IM(t1) + IM(t4);
3191 }
3192 } else {
3193 for (k = 0; k < l1; k++)
3194 {
3195 ac = 4*k*ido;
3196 ah = k*ido;
3197
3198 for (i = 0; i < ido; i++)
3199 {
3200 complex_t c2, c3, c4, t1, t2, t3, t4;
3201
3202 RE(t2) = RE(cc[ac+i]) + RE(cc[ac+i+2*ido]);
3203 RE(t1) = RE(cc[ac+i]) - RE(cc[ac+i+2*ido]);
3204 IM(t2) = IM(cc[ac+i]) + IM(cc[ac+i+2*ido]);
3205 IM(t1) = IM(cc[ac+i]) - IM(cc[ac+i+2*ido]);
3206 RE(t3) = RE(cc[ac+i+ido]) + RE(cc[ac+i+3*ido]);
3207 IM(t4) = RE(cc[ac+i+ido]) - RE(cc[ac+i+3*ido]);
3208 IM(t3) = IM(cc[ac+i+3*ido]) + IM(cc[ac+i+ido]);
3209 RE(t4) = IM(cc[ac+i+3*ido]) - IM(cc[ac+i+ido]);
3210
3211 RE(c2) = RE(t1) - RE(t4);
3212 RE(c4) = RE(t1) + RE(t4);
3213
3214 IM(c2) = IM(t1) - IM(t4);
3215 IM(c4) = IM(t1) + IM(t4);
3216
3217 RE(ch[ah+i]) = RE(t2) + RE(t3);
3218 RE(c3) = RE(t2) - RE(t3);
3219
3220 IM(ch[ah+i]) = IM(t2) + IM(t3);
3221 IM(c3) = IM(t2) - IM(t3);
3222
3223#if 1
3224 ComplexMult(&RE(ch[ah+i+l1*ido]), &IM(ch[ah+i+l1*ido]),
3225 RE(c2), IM(c2), RE(wa1[i]), IM(wa1[i]));
3226 ComplexMult(&RE(ch[ah+i+2*l1*ido]), &IM(ch[ah+i+2*l1*ido]),
3227 RE(c3), IM(c3), RE(wa2[i]), IM(wa2[i]));
3228 ComplexMult(&RE(ch[ah+i+3*l1*ido]), &IM(ch[ah+i+3*l1*ido]),
3229 RE(c4), IM(c4), RE(wa3[i]), IM(wa3[i]));
3230#else
3231 ComplexMult(&IM(ch[ah+i+l1*ido]), &RE(ch[ah+i+l1*ido]),
3232 IM(c2), RE(c2), RE(wa1[i]), IM(wa1[i]));
3233 ComplexMult(&IM(ch[ah+i+2*l1*ido]), &RE(ch[ah+i+2*l1*ido]),
3234 IM(c3), RE(c3), RE(wa2[i]), IM(wa2[i]));
3235 ComplexMult(&IM(ch[ah+i+3*l1*ido]), &RE(ch[ah+i+3*l1*ido]),
3236 IM(c4), RE(c4), RE(wa3[i]), IM(wa3[i]));
3237#endif
3238 }
3239 }
3240 }
3241}
3242
3243static void passf5(const uint16_t ido, const uint16_t l1, const complex_t *cc,
3244 complex_t *ch, const complex_t *wa1, const complex_t *wa2, const complex_t *wa3,
3245 const complex_t *wa4, const int8_t isign)
3246{
3247 static real_t tr11 = FRAC_CONST(0.309016994374947);
3248 static real_t ti11 = FRAC_CONST(0.951056516295154);
3249 static real_t tr12 = FRAC_CONST(-0.809016994374947);
3250 static real_t ti12 = FRAC_CONST(0.587785252292473);
3251 uint16_t i, k, ac, ah;
3252 complex_t c2, c3, c4, c5, d3, d4, d5, d2, t2, t3, t4, t5;
3253
3254 if (ido == 1)
3255 {
3256 if (isign == 1)
3257 {
3258 for (k = 0; k < l1; k++)
3259 {
3260 ac = 5*k + 1;
3261 ah = k;
3262
3263 RE(t2) = RE(cc[ac]) + RE(cc[ac+3]);
3264 IM(t2) = IM(cc[ac]) + IM(cc[ac+3]);
3265 RE(t3) = RE(cc[ac+1]) + RE(cc[ac+2]);
3266 IM(t3) = IM(cc[ac+1]) + IM(cc[ac+2]);
3267 RE(t4) = RE(cc[ac+1]) - RE(cc[ac+2]);
3268 IM(t4) = IM(cc[ac+1]) - IM(cc[ac+2]);
3269 RE(t5) = RE(cc[ac]) - RE(cc[ac+3]);
3270 IM(t5) = IM(cc[ac]) - IM(cc[ac+3]);
3271
3272 RE(ch[ah]) = RE(cc[ac-1]) + RE(t2) + RE(t3);
3273 IM(ch[ah]) = IM(cc[ac-1]) + IM(t2) + IM(t3);
3274
3275 RE(c2) = RE(cc[ac-1]) + MUL_F(RE(t2),tr11) + MUL_F(RE(t3),tr12);
3276 IM(c2) = IM(cc[ac-1]) + MUL_F(IM(t2),tr11) + MUL_F(IM(t3),tr12);
3277 RE(c3) = RE(cc[ac-1]) + MUL_F(RE(t2),tr12) + MUL_F(RE(t3),tr11);
3278 IM(c3) = IM(cc[ac-1]) + MUL_F(IM(t2),tr12) + MUL_F(IM(t3),tr11);
3279
3280 ComplexMult(&RE(c5), &RE(c4),
3281 ti11, ti12, RE(t5), RE(t4));
3282 ComplexMult(&IM(c5), &IM(c4),
3283 ti11, ti12, IM(t5), IM(t4));
3284
3285 RE(ch[ah+l1]) = RE(c2) - IM(c5);
3286 IM(ch[ah+l1]) = IM(c2) + RE(c5);
3287 RE(ch[ah+2*l1]) = RE(c3) - IM(c4);
3288 IM(ch[ah+2*l1]) = IM(c3) + RE(c4);
3289 RE(ch[ah+3*l1]) = RE(c3) + IM(c4);
3290 IM(ch[ah+3*l1]) = IM(c3) - RE(c4);
3291 RE(ch[ah+4*l1]) = RE(c2) + IM(c5);
3292 IM(ch[ah+4*l1]) = IM(c2) - RE(c5);
3293 }
3294 } else {
3295 for (k = 0; k < l1; k++)
3296 {
3297 ac = 5*k + 1;
3298 ah = k;
3299
3300 RE(t2) = RE(cc[ac]) + RE(cc[ac+3]);
3301 IM(t2) = IM(cc[ac]) + IM(cc[ac+3]);
3302 RE(t3) = RE(cc[ac+1]) + RE(cc[ac+2]);
3303 IM(t3) = IM(cc[ac+1]) + IM(cc[ac+2]);
3304 RE(t4) = RE(cc[ac+1]) - RE(cc[ac+2]);
3305 IM(t4) = IM(cc[ac+1]) - IM(cc[ac+2]);
3306 RE(t5) = RE(cc[ac]) - RE(cc[ac+3]);
3307 IM(t5) = IM(cc[ac]) - IM(cc[ac+3]);
3308
3309 RE(ch[ah]) = RE(cc[ac-1]) + RE(t2) + RE(t3);
3310 IM(ch[ah]) = IM(cc[ac-1]) + IM(t2) + IM(t3);
3311
3312 RE(c2) = RE(cc[ac-1]) + MUL_F(RE(t2),tr11) + MUL_F(RE(t3),tr12);
3313 IM(c2) = IM(cc[ac-1]) + MUL_F(IM(t2),tr11) + MUL_F(IM(t3),tr12);
3314 RE(c3) = RE(cc[ac-1]) + MUL_F(RE(t2),tr12) + MUL_F(RE(t3),tr11);
3315 IM(c3) = IM(cc[ac-1]) + MUL_F(IM(t2),tr12) + MUL_F(IM(t3),tr11);
3316
3317 ComplexMult(&RE(c4), &RE(c5),
3318 ti12, ti11, RE(t5), RE(t4));
3319 ComplexMult(&IM(c4), &IM(c5),
3320 ti12, ti12, IM(t5), IM(t4));
3321
3322 RE(ch[ah+l1]) = RE(c2) + IM(c5);
3323 IM(ch[ah+l1]) = IM(c2) - RE(c5);
3324 RE(ch[ah+2*l1]) = RE(c3) + IM(c4);
3325 IM(ch[ah+2*l1]) = IM(c3) - RE(c4);
3326 RE(ch[ah+3*l1]) = RE(c3) - IM(c4);
3327 IM(ch[ah+3*l1]) = IM(c3) + RE(c4);
3328 RE(ch[ah+4*l1]) = RE(c2) - IM(c5);
3329 IM(ch[ah+4*l1]) = IM(c2) + RE(c5);
3330 }
3331 }
3332 } else {
3333 if (isign == 1)
3334 {
3335 for (k = 0; k < l1; k++)
3336 {
3337 for (i = 0; i < ido; i++)
3338 {
3339 ac = i + (k*5 + 1) * ido;
3340 ah = i + k * ido;
3341
3342 RE(t2) = RE(cc[ac]) + RE(cc[ac+3*ido]);
3343 IM(t2) = IM(cc[ac]) + IM(cc[ac+3*ido]);
3344 RE(t3) = RE(cc[ac+ido]) + RE(cc[ac+2*ido]);
3345 IM(t3) = IM(cc[ac+ido]) + IM(cc[ac+2*ido]);
3346 RE(t4) = RE(cc[ac+ido]) - RE(cc[ac+2*ido]);
3347 IM(t4) = IM(cc[ac+ido]) - IM(cc[ac+2*ido]);
3348 RE(t5) = RE(cc[ac]) - RE(cc[ac+3*ido]);
3349 IM(t5) = IM(cc[ac]) - IM(cc[ac+3*ido]);
3350
3351 RE(ch[ah]) = RE(cc[ac-ido]) + RE(t2) + RE(t3);
3352 IM(ch[ah]) = IM(cc[ac-ido]) + IM(t2) + IM(t3);
3353
3354 RE(c2) = RE(cc[ac-ido]) + MUL_F(RE(t2),tr11) + MUL_F(RE(t3),tr12);
3355 IM(c2) = IM(cc[ac-ido]) + MUL_F(IM(t2),tr11) + MUL_F(IM(t3),tr12);
3356 RE(c3) = RE(cc[ac-ido]) + MUL_F(RE(t2),tr12) + MUL_F(RE(t3),tr11);
3357 IM(c3) = IM(cc[ac-ido]) + MUL_F(IM(t2),tr12) + MUL_F(IM(t3),tr11);
3358
3359 ComplexMult(&RE(c5), &RE(c4),
3360 ti11, ti12, RE(t5), RE(t4));
3361 ComplexMult(&IM(c5), &IM(c4),
3362 ti11, ti12, IM(t5), IM(t4));
3363
3364 IM(d2) = IM(c2) + RE(c5);
3365 IM(d3) = IM(c3) + RE(c4);
3366 RE(d4) = RE(c3) + IM(c4);
3367 RE(d5) = RE(c2) + IM(c5);
3368 RE(d2) = RE(c2) - IM(c5);
3369 IM(d5) = IM(c2) - RE(c5);
3370 RE(d3) = RE(c3) - IM(c4);
3371 IM(d4) = IM(c3) - RE(c4);
3372
3373#if 1
3374 ComplexMult(&IM(ch[ah+l1*ido]), &RE(ch[ah+l1*ido]),
3375 IM(d2), RE(d2), RE(wa1[i]), IM(wa1[i]));
3376 ComplexMult(&IM(ch[ah+2*l1*ido]), &RE(ch[ah+2*l1*ido]),
3377 IM(d3), RE(d3), RE(wa2[i]), IM(wa2[i]));
3378 ComplexMult(&IM(ch[ah+3*l1*ido]), &RE(ch[ah+3*l1*ido]),
3379 IM(d4), RE(d4), RE(wa3[i]), IM(wa3[i]));
3380 ComplexMult(&IM(ch[ah+4*l1*ido]), &RE(ch[ah+4*l1*ido]),
3381 IM(d5), RE(d5), RE(wa4[i]), IM(wa4[i]));
3382#else
3383 ComplexMult(&RE(ch[ah+l1*ido]), &IM(ch[ah+l1*ido]),
3384 RE(d2), IM(d2), RE(wa1[i]), IM(wa1[i]));
3385 ComplexMult(&RE(ch[ah+2*l1*ido]), &IM(ch[ah+2*l1*ido]),
3386 RE(d3), IM(d3), RE(wa2[i]), IM(wa2[i]));
3387 ComplexMult(&RE(ch[ah+3*l1*ido]), &IM(ch[ah+3*l1*ido]),
3388 RE(d4), IM(d4), RE(wa3[i]), IM(wa3[i]));
3389 ComplexMult(&RE(ch[ah+4*l1*ido]), &IM(ch[ah+4*l1*ido]),
3390 RE(d5), IM(d5), RE(wa4[i]), IM(wa4[i]));
3391#endif
3392 }
3393 }
3394 } else {
3395 for (k = 0; k < l1; k++)
3396 {
3397 for (i = 0; i < ido; i++)
3398 {
3399 ac = i + (k*5 + 1) * ido;
3400 ah = i + k * ido;
3401
3402 RE(t2) = RE(cc[ac]) + RE(cc[ac+3*ido]);
3403 IM(t2) = IM(cc[ac]) + IM(cc[ac+3*ido]);
3404 RE(t3) = RE(cc[ac+ido]) + RE(cc[ac+2*ido]);
3405 IM(t3) = IM(cc[ac+ido]) + IM(cc[ac+2*ido]);
3406 RE(t4) = RE(cc[ac+ido]) - RE(cc[ac+2*ido]);
3407 IM(t4) = IM(cc[ac+ido]) - IM(cc[ac+2*ido]);
3408 RE(t5) = RE(cc[ac]) - RE(cc[ac+3*ido]);
3409 IM(t5) = IM(cc[ac]) - IM(cc[ac+3*ido]);
3410
3411 RE(ch[ah]) = RE(cc[ac-ido]) + RE(t2) + RE(t3);
3412 IM(ch[ah]) = IM(cc[ac-ido]) + IM(t2) + IM(t3);
3413
3414 RE(c2) = RE(cc[ac-ido]) + MUL_F(RE(t2),tr11) + MUL_F(RE(t3),tr12);
3415 IM(c2) = IM(cc[ac-ido]) + MUL_F(IM(t2),tr11) + MUL_F(IM(t3),tr12);
3416 RE(c3) = RE(cc[ac-ido]) + MUL_F(RE(t2),tr12) + MUL_F(RE(t3),tr11);
3417 IM(c3) = IM(cc[ac-ido]) + MUL_F(IM(t2),tr12) + MUL_F(IM(t3),tr11);
3418
3419 ComplexMult(&RE(c4), &RE(c5),
3420 ti12, ti11, RE(t5), RE(t4));
3421 ComplexMult(&IM(c4), &IM(c5),
3422 ti12, ti12, IM(t5), IM(t4));
3423
3424 IM(d2) = IM(c2) - RE(c5);
3425 IM(d3) = IM(c3) - RE(c4);
3426 RE(d4) = RE(c3) - IM(c4);
3427 RE(d5) = RE(c2) - IM(c5);
3428 RE(d2) = RE(c2) + IM(c5);
3429 IM(d5) = IM(c2) + RE(c5);
3430 RE(d3) = RE(c3) + IM(c4);
3431 IM(d4) = IM(c3) + RE(c4);
3432
3433#if 1
3434 ComplexMult(&RE(ch[ah+l1*ido]), &IM(ch[ah+l1*ido]),
3435 RE(d2), IM(d2), RE(wa1[i]), IM(wa1[i]));
3436 ComplexMult(&RE(ch[ah+2*l1*ido]), &IM(ch[ah+2*l1*ido]),
3437 RE(d3), IM(d3), RE(wa2[i]), IM(wa2[i]));
3438 ComplexMult(&RE(ch[ah+3*l1*ido]), &IM(ch[ah+3*l1*ido]),
3439 RE(d4), IM(d4), RE(wa3[i]), IM(wa3[i]));
3440 ComplexMult(&RE(ch[ah+4*l1*ido]), &IM(ch[ah+4*l1*ido]),
3441 RE(d5), IM(d5), RE(wa4[i]), IM(wa4[i]));
3442#else
3443 ComplexMult(&IM(ch[ah+l1*ido]), &RE(ch[ah+l1*ido]),
3444 IM(d2), RE(d2), RE(wa1[i]), IM(wa1[i]));
3445 ComplexMult(&IM(ch[ah+2*l1*ido]), &RE(ch[ah+2*l1*ido]),
3446 IM(d3), RE(d3), RE(wa2[i]), IM(wa2[i]));
3447 ComplexMult(&IM(ch[ah+3*l1*ido]), &RE(ch[ah+3*l1*ido]),
3448 IM(d4), RE(d4), RE(wa3[i]), IM(wa3[i]));
3449 ComplexMult(&IM(ch[ah+4*l1*ido]), &RE(ch[ah+4*l1*ido]),
3450 IM(d5), RE(d5), RE(wa4[i]), IM(wa4[i]));
3451#endif
3452 }
3453 }
3454 }
3455 }
3456}
3457
3458
3459/*----------------------------------------------------------------------
3460 cfftf1, cfftf, cfftb, cffti1, cffti. Complex FFTs.
3461 ----------------------------------------------------------------------*/
3462
3463#ifdef USE_SSE
3464
3465#define CONV(A,B,C) ( (A<<2) | ((B & 0x1)<<1) | ((C==1)&0x1) )
3466
3467static INLINE void cfftf1pos_sse(uint16_t n, complex_t *c, complex_t *ch,
3468 const uint16_t *ifac, const complex_t *wa,
3469 const int8_t isign)
3470{
3471 uint16_t i;
3472 uint16_t k1, l1, l2;
3473 uint16_t na, nf, ip, iw, ix2, ix3, ix4, ido, idl1;
3474
3475 nf = ifac[1];
3476 na = 0;
3477 l1 = 1;
3478 iw = 0;
3479
3480 for (k1 = 2; k1 <= nf+1; k1++)
3481 {
3482 ip = ifac[k1];
3483 l2 = ip*l1;
3484 ido = n / l2;
3485 idl1 = ido*l1;
3486
3487 ix2 = iw + ido;
3488 ix3 = ix2 + ido;
3489 ix4 = ix3 + ido;
3490
3491 switch (CONV(ip,na,ido))
3492 {
3493 case CONV(4,0,0):
3494 //passf4pos_sse_ido((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)c, ch, &wa[iw], &wa[ix2], &wa[ix3]);
3495 passf4pos((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)c, ch, &wa[iw], &wa[ix2], &wa[ix3]);
3496 break;
3497 case CONV(4,0,1):
3498 passf4pos_sse((const uint16_t)l1, (const complex_t*)c, ch, &wa[iw], &wa[ix2], &wa[ix3]);
3499 break;
3500 case CONV(4,1,0):
3501 passf4pos((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)ch, c, &wa[iw], &wa[ix2], &wa[ix3]);
3502 //passf4pos_sse_ido((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)ch, c, &wa[iw], &wa[ix2], &wa[ix3]);
3503 break;
3504 case CONV(4,1,1):
3505 passf4pos_sse((const uint16_t)l1, (const complex_t*)ch, c, &wa[iw], &wa[ix2], &wa[ix3]);
3506 break;
3507 case CONV(2,0,0):
3508 passf2pos((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)c, ch, &wa[iw]);
3509 //passf2pos_sse_ido((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)c, ch, &wa[iw]);
3510 break;
3511 case CONV(2,0,1):
3512 passf2pos((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)c, ch, &wa[iw]);
3513 //passf2pos_sse((const uint16_t)l1, (const complex_t*)c, ch, &wa[iw]);
3514 break;
3515 case CONV(2,1,0):
3516 passf2pos((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)ch, c, &wa[iw]);
3517 //passf2pos_sse_ido((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)ch, c, &wa[iw]);
3518 break;
3519 case CONV(2,1,1):
3520 passf2pos((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)ch, c, &wa[iw]);
3521 //passf2pos_sse((const uint16_t)l1, (const complex_t*)ch, c, &wa[iw]);
3522 break;
3523 case CONV(3,0,0):
3524 case CONV(3,0,1):
3525 passf3((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)c, ch, &wa[iw], &wa[ix2], isign);
3526 break;
3527 case CONV(3,1,0):
3528 case CONV(3,1,1):
3529 passf3((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)ch, c, &wa[iw], &wa[ix2], isign);
3530 break;
3531 case CONV(5,0,0):
3532 case CONV(5,0,1):
3533 passf5((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)c, ch, &wa[iw], &wa[ix2], &wa[ix3], &wa[ix4], isign);
3534 break;
3535 case CONV(5,1,0):
3536 case CONV(5,1,1):
3537 passf5((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)ch, c, &wa[iw], &wa[ix2], &wa[ix3], &wa[ix4], isign);
3538 break;
3539 }
3540
3541 na = 1 - na;
3542
3543 l1 = l2;
3544 iw += (ip-1) * ido;
3545 }
3546
3547 if (na == 0)
3548 return;
3549
3550 for (i = 0; i < n; i++)
3551 {
3552 RE(c[i]) = RE(ch[i]);
3553 IM(c[i]) = IM(ch[i]);
3554 }
3555}
3556#endif
3557
3558static INLINE void cfftf1pos(uint16_t n, complex_t *c, complex_t *ch,
3559 const uint16_t *ifac, const complex_t *wa,
3560 const int8_t isign)
3561{
3562 uint16_t i;
3563 uint16_t k1, l1, l2;
3564 uint16_t na, nf, ip, iw, ix2, ix3, ix4, ido, idl1;
3565
3566 nf = ifac[1];
3567 na = 0;
3568 l1 = 1;
3569 iw = 0;
3570
3571 for (k1 = 2; k1 <= nf+1; k1++)
3572 {
3573 ip = ifac[k1];
3574 l2 = ip*l1;
3575 ido = n / l2;
3576 idl1 = ido*l1;
3577
3578 switch (ip)
3579 {
3580 case 4:
3581 ix2 = iw + ido;
3582 ix3 = ix2 + ido;
3583
3584 if (na == 0)
3585 passf4pos((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)c, ch, &wa[iw], &wa[ix2], &wa[ix3]);
3586 else
3587 passf4pos((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)ch, c, &wa[iw], &wa[ix2], &wa[ix3]);
3588
3589 na = 1 - na;
3590 break;
3591 case 2:
3592 if (na == 0)
3593 passf2pos((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)c, ch, &wa[iw]);
3594 else
3595 passf2pos((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)ch, c, &wa[iw]);
3596
3597 na = 1 - na;
3598 break;
3599 case 3:
3600 ix2 = iw + ido;
3601
3602 if (na == 0)
3603 passf3((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)c, ch, &wa[iw], &wa[ix2], isign);
3604 else
3605 passf3((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)ch, c, &wa[iw], &wa[ix2], isign);
3606
3607 na = 1 - na;
3608 break;
3609 case 5:
3610 ix2 = iw + ido;
3611 ix3 = ix2 + ido;
3612 ix4 = ix3 + ido;
3613
3614 if (na == 0)
3615 passf5((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)c, ch, &wa[iw], &wa[ix2], &wa[ix3], &wa[ix4], isign);
3616 else
3617 passf5((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)ch, c, &wa[iw], &wa[ix2], &wa[ix3], &wa[ix4], isign);
3618
3619 na = 1 - na;
3620 break;
3621 }
3622
3623 l1 = l2;
3624 iw += (ip-1) * ido;
3625 }
3626
3627 if (na == 0)
3628 return;
3629
3630 for (i = 0; i < n; i++)
3631 {
3632 RE(c[i]) = RE(ch[i]);
3633 IM(c[i]) = IM(ch[i]);
3634 }
3635}
3636
3637static INLINE void cfftf1neg(uint16_t n, complex_t *c, complex_t *ch,
3638 const uint16_t *ifac, const complex_t *wa,
3639 const int8_t isign)
3640{
3641 uint16_t i;
3642 uint16_t k1, l1, l2;
3643 uint16_t na, nf, ip, iw, ix2, ix3, ix4, ido, idl1;
3644
3645 nf = ifac[1];
3646 na = 0;
3647 l1 = 1;
3648 iw = 0;
3649
3650 for (k1 = 2; k1 <= nf+1; k1++)
3651 {
3652 ip = ifac[k1];
3653 l2 = ip*l1;
3654 ido = n / l2;
3655 idl1 = ido*l1;
3656
3657 switch (ip)
3658 {
3659 case 4:
3660 ix2 = iw + ido;
3661 ix3 = ix2 + ido;
3662
3663 if (na == 0)
3664 passf4neg((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)c, ch, &wa[iw], &wa[ix2], &wa[ix3]);
3665 else
3666 passf4neg((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)ch, c, &wa[iw], &wa[ix2], &wa[ix3]);
3667
3668 na = 1 - na;
3669 break;
3670 case 2:
3671 if (na == 0)
3672 passf2neg((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)c, ch, &wa[iw]);
3673 else
3674 passf2neg((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)ch, c, &wa[iw]);
3675
3676 na = 1 - na;
3677 break;
3678 case 3:
3679 ix2 = iw + ido;
3680
3681 if (na == 0)
3682 passf3((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)c, ch, &wa[iw], &wa[ix2], isign);
3683 else
3684 passf3((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)ch, c, &wa[iw], &wa[ix2], isign);
3685
3686 na = 1 - na;
3687 break;
3688 case 5:
3689 ix2 = iw + ido;
3690 ix3 = ix2 + ido;
3691 ix4 = ix3 + ido;
3692
3693 if (na == 0)
3694 passf5((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)c, ch, &wa[iw], &wa[ix2], &wa[ix3], &wa[ix4], isign);
3695 else
3696 passf5((const uint16_t)ido, (const uint16_t)l1, (const complex_t*)ch, c, &wa[iw], &wa[ix2], &wa[ix3], &wa[ix4], isign);
3697
3698 na = 1 - na;
3699 break;
3700 }
3701
3702 l1 = l2;
3703 iw += (ip-1) * ido;
3704 }
3705
3706 if (na == 0)
3707 return;
3708
3709 for (i = 0; i < n; i++)
3710 {
3711 RE(c[i]) = RE(ch[i]);
3712 IM(c[i]) = IM(ch[i]);
3713 }
3714}
3715
3716void cfftf(cfft_info *cfft, complex_t *c)
3717{
3718 cfftf1neg(cfft->n, c, cfft->work, (const uint16_t*)cfft->ifac, (const complex_t*)cfft->tab, -1);
3719}
3720
3721void cfftb(cfft_info *cfft, complex_t *c)
3722{
3723 cfftf1pos(cfft->n, c, cfft->work, (const uint16_t*)cfft->ifac, (const complex_t*)cfft->tab, +1);
3724}
3725
3726#ifdef USE_SSE
3727void cfftb_sse(cfft_info *cfft, complex_t *c)
3728{
3729 cfftf1pos_sse(cfft->n, c, cfft->work, (const uint16_t*)cfft->ifac, (const complex_t*)cfft->tab, +1);
3730}
3731#endif
3732
3733static void cffti1(uint16_t n, complex_t *wa, uint16_t *ifac)
3734{
3735 static uint16_t ntryh[4] = {3, 4, 2, 5};
3736#ifndef FIXED_POINT
3737 real_t arg, argh, argld, fi;
3738 uint16_t ido, ipm;
3739 uint16_t i1, k1, l1, l2;
3740 uint16_t ld, ii, ip;
3741#endif
3742 uint16_t ntry = 0, i, j;
3743 uint16_t ib;
3744 uint16_t nf, nl, nq, nr;
3745
3746 nl = n;
3747 nf = 0;
3748 j = 0;
3749
3750startloop:
3751 j++;
3752
3753 if (j <= 4)
3754 ntry = ntryh[j-1];
3755 else
3756 ntry += 2;
3757
3758 do
3759 {
3760 nq = nl / ntry;
3761 nr = nl - ntry*nq;
3762
3763 if (nr != 0)
3764 goto startloop;
3765
3766 nf++;
3767 ifac[nf+1] = ntry;
3768 nl = nq;
3769
3770 if (ntry == 2 && nf != 1)
3771 {
3772 for (i = 2; i <= nf; i++)
3773 {
3774 ib = nf - i + 2;
3775 ifac[ib+1] = ifac[ib];
3776 }
3777 ifac[2] = 2;
3778 }
3779 } while (nl != 1);
3780
3781 ifac[0] = n;
3782 ifac[1] = nf;
3783
3784#ifndef FIXED_POINT
3785 argh = (real_t)2.0*(real_t)M_PI / (real_t)n;
3786 i = 0;
3787 l1 = 1;
3788
3789 for (k1 = 1; k1 <= nf; k1++)
3790 {
3791 ip = ifac[k1+1];
3792 ld = 0;
3793 l2 = l1*ip;
3794 ido = n / l2;
3795 ipm = ip - 1;
3796
3797 for (j = 0; j < ipm; j++)
3798 {
3799 i1 = i;
3800 RE(wa[i]) = 1.0;
3801 IM(wa[i]) = 0.0;
3802 ld += l1;
3803 fi = 0;
3804 argld = ld*argh;
3805
3806 for (ii = 0; ii < ido; ii++)
3807 {
3808 i++;
3809 fi++;
3810 arg = fi * argld;
3811 RE(wa[i]) = (real_t)cos(arg);
3812#if 1
3813 IM(wa[i]) = (real_t)sin(arg);
3814#else
3815 IM(wa[i]) = (real_t)-sin(arg);
3816#endif
3817 }
3818
3819 if (ip > 5)
3820 {
3821 RE(wa[i1]) = RE(wa[i]);
3822 IM(wa[i1]) = IM(wa[i]);
3823 }
3824 }
3825 l1 = l2;
3826 }
3827#endif
3828}
3829
3830cfft_info *cffti(uint16_t n)
3831{
3832 cfft_info *cfft = (cfft_info*)faad_malloc(sizeof(cfft_info));
3833
3834 cfft->n = n;
3835 cfft->work = (complex_t*)faad_malloc(n*sizeof(complex_t));
3836
3837#ifndef FIXED_POINT
3838 cfft->tab = (complex_t*)faad_malloc(n*sizeof(complex_t));
3839
3840 cffti1(n, cfft->tab, cfft->ifac);
3841#else
3842 cffti1(n, NULL, cfft->ifac);
3843
3844 switch (n)
3845 {
3846 case 64: cfft->tab = (complex_t*)cfft_tab_64; break;
3847 case 512: cfft->tab = (complex_t*)cfft_tab_512; break;
3848#ifdef LD_DEC
3849 case 256: cfft->tab = (complex_t*)cfft_tab_256; break;
3850#endif
3851
3852#ifdef ALLOW_SMALL_FRAMELENGTH
3853 case 60: cfft->tab = (complex_t*)cfft_tab_60; break;
3854 case 480: cfft->tab = (complex_t*)cfft_tab_480; break;
3855#ifdef LD_DEC
3856 case 240: cfft->tab = (complex_t*)cfft_tab_240; break;
3857#endif
3858#endif
3859 }
3860#endif
3861
3862 return cfft;
3863}
3864
3865void cfftu(cfft_info *cfft)
3866{
3867 if (cfft->work) faad_free(cfft->work);
3868#ifndef FIXED_POINT
3869 if (cfft->tab) faad_free(cfft->tab);
3870#endif
3871
3872 if (cfft) faad_free(cfft);
3873}
3874
3875
3876gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -c -O4 -march=k8 -mtune=k8 -pipe -ffast-math -fomit-frame-pointer -D_GNU_SOURCE -I/home.local/mslama/programs/mplayer-cvs-1/main/libfaad2
3877
3878ldd /tmp/mplayer-conf-6219-19072.o
3879ldd: warning: you do not have execution permission for `/tmp/mplayer-conf-6219-19072.o'
3880 not a dynamic executable
3881
3882Result is: yes
3883##########################################
3884
3885============ Checking for external FAAD2 (AAC) support ============
3886Result is: no
3887##########################################
3888
3889============ Checking for LADSPA plugin support ============
3890
3891#include <stdio.h>
3892#include <ladspa.h>
3893int main(void) {
3894const LADSPA_Descriptor *ld = NULL;
3895return 0;
3896}
3897
3898gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
3899/tmp/mplayer-conf-21330-19072.c:2:20: ladspa.h: No such file or directory
3900/tmp/mplayer-conf-21330-19072.c: In function `main':
3901/tmp/mplayer-conf-21330-19072.c:4: error: syntax error before '*' token
3902
3903ldd /tmp/mplayer-conf-6219-19072.o
3904ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
3905
3906Result is: no
3907##########################################
3908
3909============ Checking for Win32 codec DLL support ============
3910Result is: no
3911##########################################
3912
3913============ Checking for DirectShow ============
3914Result is: no
3915##########################################
3916
3917============ Checking for XAnim DLL ============
3918Result is: no (no suitable directory found - see DOCS/HTML/en/codecs.html)
3919##########################################
3920
3921============ Checking for RealPlayer DLL ============
3922Result is: no (no suitable directory found - see DOCS/HTML/en/codecs.html)
3923##########################################
3924
3925============ Checking for LIVE555 Streaming Media libraries ============
3926
3927#include <liveMedia.hh>
3928#if (LIVEMEDIA_LIBRARY_VERSION_INT < 1090195200)
3929#error Please upgrade to version 2004.07.19 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
3930#endif
3931int main(void) {}
3932
3933gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-2997-19072.cpp -I/liveMedia/include -I/UsageEnvironment/include -I/groupsock/include -lstdc++
3934/tmp/mplayer-conf-2997-19072.cpp:1:24: liveMedia.hh: No such file or directory
3935/tmp/mplayer-conf-2997-19072.cpp:3:2: #error Please upgrade to version 2004.07.19 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
3936
3937ldd /tmp/mplayer-conf-6219-19072.o
3938ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
3939
3940
3941#include <liveMedia.hh>
3942#if (LIVEMEDIA_LIBRARY_VERSION_INT < 1090195200)
3943#error Please upgrade to version 2004.07.19 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
3944#endif
3945int main(void) {}
3946
3947gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-2997-19072.cpp -I/usr/local/lib/live/liveMedia/include -I/usr/local/lib/live/UsageEnvironment/include -I/usr/local/lib/live/groupsock/include -lstdc++
3948/tmp/mplayer-conf-2997-19072.cpp:1:24: liveMedia.hh: No such file or directory
3949/tmp/mplayer-conf-2997-19072.cpp:3:2: #error Please upgrade to version 2004.07.19 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
3950
3951ldd /tmp/mplayer-conf-6219-19072.o
3952ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
3953
3954
3955#include <liveMedia.hh>
3956#if (LIVEMEDIA_LIBRARY_VERSION_INT < 1090195200)
3957#error Please upgrade to version 2004.07.19 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
3958#endif
3959int main(void) {}
3960
3961gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-2997-19072.cpp -I/usr/lib/live/liveMedia/include -I/usr/lib/live/UsageEnvironment/include -I/usr/lib/live/groupsock/include -lstdc++
3962/tmp/mplayer-conf-2997-19072.cpp:1:24: liveMedia.hh: No such file or directory
3963/tmp/mplayer-conf-2997-19072.cpp:3:2: #error Please upgrade to version 2004.07.19 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
3964
3965ldd /tmp/mplayer-conf-6219-19072.o
3966ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
3967
3968
3969#include <liveMedia.hh>
3970#if (LIVEMEDIA_LIBRARY_VERSION_INT < 1090195200)
3971#error Please upgrade to version 2004.07.19 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
3972#endif
3973int main(void) {}
3974
3975gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-2997-19072.cpp -I/usr/local/live/liveMedia/include -I/usr/local/live/UsageEnvironment/include -I/usr/local/live/groupsock/include -lstdc++
3976/tmp/mplayer-conf-2997-19072.cpp:1:24: liveMedia.hh: No such file or directory
3977/tmp/mplayer-conf-2997-19072.cpp:3:2: #error Please upgrade to version 2004.07.19 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
3978
3979ldd /tmp/mplayer-conf-6219-19072.o
3980ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
3981
3982
3983#include <liveMedia.hh>
3984#if (LIVEMEDIA_LIBRARY_VERSION_INT < 1090195200)
3985#error Please upgrade to version 2004.07.19 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
3986#endif
3987int main(void) {}
3988
3989gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-2997-19072.cpp -I/usr/local/lib/live/liveMedia/include -I/usr/local/lib/live/UsageEnvironment/include -I/usr/local/lib/live/groupsock/include -lstdc++
3990/tmp/mplayer-conf-2997-19072.cpp:1:24: liveMedia.hh: No such file or directory
3991/tmp/mplayer-conf-2997-19072.cpp:3:2: #error Please upgrade to version 2004.07.19 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
3992
3993ldd /tmp/mplayer-conf-6219-19072.o
3994ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
3995
3996
3997#include <liveMedia.hh>
3998#if (LIVEMEDIA_LIBRARY_VERSION_INT < 1090195200)
3999#error Please upgrade to version 2004.07.19 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
4000#endif
4001int main(void) {}
4002
4003gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-2997-19072.cpp -I/usr/include/liveMedia -I/usr/include/UsageEnvironment -I/usr/include/groupsock -lstdc++
4004/tmp/mplayer-conf-2997-19072.cpp:1:24: liveMedia.hh: No such file or directory
4005/tmp/mplayer-conf-2997-19072.cpp:3:2: #error Please upgrade to version 2004.07.19 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
4006
4007ldd /tmp/mplayer-conf-6219-19072.o
4008ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
4009
4010Result is: no
4011##########################################
4012
4013============ Checking for FFmpeg libavutil (static) ============
4014Result is: yes
4015##########################################
4016
4017============ Checking for FFmpeg libavcodec (static) ============
4018
4019#include "libavcodec/avcodec.h"
4020#if LIBAVCODEC_BUILD >= 3211265
4021#error We need libavutil!
4022#endif
4023int main(void) { return 0; }
4024
4025gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -I. -I./libavutil
4026/tmp/mplayer-conf-21330-19072.c:3:2: #error We need libavutil!
4027
4028ldd /tmp/mplayer-conf-6219-19072.o
4029ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
4030
4031Result is: yes
4032##########################################
4033
4034============ Checking for FFmpeg libavformat (static) ============
4035Result is: yes
4036##########################################
4037
4038============ Checking for amr narrowband ============
4039Result is: no
4040##########################################
4041
4042============ Checking for amr narrowband, fixed point ============
4043Result is: no
4044##########################################
4045
4046============ Checking for amr wideband ============
4047Result is: no
4048##########################################
4049
4050============ Checking for libdv-0.9.5+ ============
4051
4052#include <libdv/dv.h>
4053int main(void) { dv_encoder_t* enc=dv_encoder_new(1,1,1); return 0; }
4054
4055gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -ldv -lm
4056/tmp/mplayer-conf-21330-19072.c:1:22: libdv/dv.h: No such file or directory
4057/tmp/mplayer-conf-21330-19072.c: In function `main':
4058/tmp/mplayer-conf-21330-19072.c:2: error: `dv_encoder_t' undeclared (first use in this function)
4059/tmp/mplayer-conf-21330-19072.c:2: error: (Each undeclared identifier is reported only once
4060/tmp/mplayer-conf-21330-19072.c:2: error: for each function it appears in.)
4061/tmp/mplayer-conf-21330-19072.c:2: error: `enc' undeclared (first use in this function)
4062
4063ldd /tmp/mplayer-conf-6219-19072.o
4064ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
4065
4066Result is: no
4067##########################################
4068
4069============ Checking for zr ============
4070Result is: no
4071##########################################
4072
4073============ Checking for bl ============
4074Result is: no
4075##########################################
4076
4077============ Checking for XviD ============
4078
4079#include <xvid.h>
4080int main(void) { xvid_init(0, 0, 0, 0); return 0; }
4081
4082gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lxvidcore -lm
4083/tmp/mplayer-conf-21330-19072.c:1:18: xvid.h: No such file or directory
4084
4085ldd /tmp/mplayer-conf-6219-19072.o
4086ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
4087
4088
4089#include <xvid.h>
4090int main(void) { xvid_global(0, 0, 0, 0); return 0; }
4091
4092gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lxvidcore -lm
4093/tmp/mplayer-conf-21330-19072.c:1:18: xvid.h: No such file or directory
4094
4095ldd /tmp/mplayer-conf-6219-19072.o
4096ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
4097
4098Result is: no
4099##########################################
4100
4101============ Checking for x264 ============
4102
4103#include <inttypes.h>
4104#include <x264.h>
4105#if X264_BUILD < 43
4106#error We do not support old versions of x264. Get the latest from SVN.
4107#endif
4108int main(void) { x264_encoder_open((void*)0); return 0; }
4109
4110gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lx264 -lpthread -lm
4111/tmp/mplayer-conf-21330-19072.c:2:18: x264.h: No such file or directory
4112/tmp/mplayer-conf-21330-19072.c:4:2: #error We do not support old versions of x264. Get the latest from SVN.
4113
4114ldd /tmp/mplayer-conf-6219-19072.o
4115ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
4116
4117Result is: no
4118##########################################
4119
4120============ Checking for DivX4linux/DivX5linux/OpenDivX decore ============
4121
4122#include <decore.h>
4123int main(void) { (void) decore(0, 0, 0, 0); return DEC_OPT_FRAME_311; }
4124
4125gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lm -ldivxdecore
4126/tmp/mplayer-conf-21330-19072.c:1:20: decore.h: No such file or directory
4127/tmp/mplayer-conf-21330-19072.c: In function `main':
4128/tmp/mplayer-conf-21330-19072.c:2: error: `DEC_OPT_FRAME_311' undeclared (first use in this function)
4129/tmp/mplayer-conf-21330-19072.c:2: error: (Each undeclared identifier is reported only once
4130/tmp/mplayer-conf-21330-19072.c:2: error: for each function it appears in.)
4131
4132ldd /tmp/mplayer-conf-6219-19072.o
4133ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
4134
4135
4136#include <decore.h>
4137int main(void) { (void) decore(0, 0, 0, 0); return DEC_OPT_INIT; }
4138
4139gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lm -ldivxdecore
4140/tmp/mplayer-conf-21330-19072.c:1:20: decore.h: No such file or directory
4141/tmp/mplayer-conf-21330-19072.c: In function `main':
4142/tmp/mplayer-conf-21330-19072.c:2: error: `DEC_OPT_INIT' undeclared (first use in this function)
4143/tmp/mplayer-conf-21330-19072.c:2: error: (Each undeclared identifier is reported only once
4144/tmp/mplayer-conf-21330-19072.c:2: error: for each function it appears in.)
4145
4146ldd /tmp/mplayer-conf-6219-19072.o
4147ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
4148
4149Result is: no
4150##########################################
4151
4152============ Checking for libmp3lame (for mencoder) ============
4153
4154#include <lame/lame.h>
4155int main(void) { lame_version_t lv; (void) lame_init(); get_lame_version_numerical(&lv); printf("%d%d\n",lv.major,lv.minor); return 0; }
4156
4157gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lmp3lame -lm
4158
4159ldd /tmp/mplayer-conf-6219-19072.o
4160 libmp3lame.so.0 => /usr/local/lib/libmp3lame.so.0 (0x0000002a9556c000)
4161 libm.so.6 => /lib64/tls/libm.so.6 (0x00000037c0900000)
4162 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
4163 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
4164
4165396
4166
4167#include <lame/lame.h>
4168int main(void) { int p = STANDARD_FAST; return 0; }
4169
4170gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lmp3lame -lm
4171
4172ldd /tmp/mplayer-conf-6219-19072.o
4173 libmp3lame.so.0 => /usr/local/lib/libmp3lame.so.0 (0x0000002a9556c000)
4174 libm.so.6 => /lib64/tls/libm.so.6 (0x00000037c0900000)
4175 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
4176 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
4177
4178
4179#include <lame/lame.h>
4180int main(void) { int p = MEDIUM_FAST; return 0; }
4181
4182gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lmp3lame -lm
4183
4184ldd /tmp/mplayer-conf-6219-19072.o
4185 libmp3lame.so.0 => /usr/local/lib/libmp3lame.so.0 (0x0000002a9556c000)
4186 libm.so.6 => /lib64/tls/libm.so.6 (0x00000037c0900000)
4187 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
4188 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
4189
4190Result is: yes
4191##########################################
4192
4193============ Checking for DivX4linux encore (for mencoder) ============
4194
4195#include <encore2.h>
4196int main(void) { (void) encore(0, 0, 0, 0); return 0; }
4197
4198gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -ldivxencore -lm
4199/tmp/mplayer-conf-21330-19072.c:1:21: encore2.h: No such file or directory
4200
4201ldd /tmp/mplayer-conf-6219-19072.o
4202ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
4203
4204Result is: no
4205##########################################
4206
4207============ Checking for mencoder ============
4208Result is: yes
4209##########################################
4210
4211============ Checking for fastmemcpy ============
4212Result is: yes
4213##########################################
4214
4215============ Checking for UniquE RAR File Library ============
4216Result is: yes
4217##########################################
4218
4219============ Checking for TV interface ============
4220Result is: yes
4221##########################################
4222
4223============ Checking for EDL support ============
4224Result is: yes
4225##########################################
4226
4227============ Checking for *BSD BrookTree 848 TV interface ============
4228
4229#include <sys/types.h>
4230#if defined(__NetBSD__)
4231#include <dev/ic/bt8xx.h>
4232#else
4233#include <machine/ioctl_bt848.h>
4234#endif
4235int main(void) { return 0; }
4236
4237gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
4238/tmp/mplayer-conf-21330-19072.c:5:33: machine/ioctl_bt848.h: No such file or directory
4239
4240ldd /tmp/mplayer-conf-6219-19072.o
4241ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
4242
4243Result is: no
4244##########################################
4245
4246============ Checking for Video 4 Linux TV interface ============
4247
4248#include <stdlib.h>
4249#include <linux/videodev.h>
4250int main(void) { return 0; }
4251
4252gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
4253
4254ldd /tmp/mplayer-conf-6219-19072.o
4255 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
4256 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
4257
4258Result is: yes
4259##########################################
4260
4261============ Checking for Video 4 Linux 2 TV interface ============
4262
4263#include <stdlib.h>
4264#include <linux/types.h>
4265#include <linux/videodev2.h>
4266int main(void) { return 0; }
4267
4268gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
4269/tmp/mplayer-conf-21330-19072.c:3:29: linux/videodev2.h: No such file or directory
4270
4271ldd /tmp/mplayer-conf-6219-19072.o
4272ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
4273
4274Result is: no
4275##########################################
4276
4277============ Checking for audio select() ============
4278Result is: yes
4279##########################################
4280
4281============ Checking for network ============
4282Result is: yes
4283##########################################
4284
4285============ Checking for ftp ============
4286Result is: yes
4287##########################################
4288
4289============ Checking for vstream client ============
4290
4291#include <vstream-client.h>
4292void vstream_error(const char *format, ... ) {}
4293int main(void) { vstream_start(); return 0; }
4294
4295gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -lvstream-client
4296/tmp/mplayer-conf-21330-19072.c:1:28: vstream-client.h: No such file or directory
4297
4298ldd /tmp/mplayer-conf-6219-19072.o
4299ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
4300
4301Result is: no
4302##########################################
4303
4304============ Checking for byte order ============
4305
4306short ascii_name[] = { (('M'<<8)|'P'),(('l'<<8)|'a'),(('y'<<8)|'e'),(('r'<<8)|'B'),
4307 (('i'<<8)|'g'),(('E'<<8)|'n'),(('d'<<8)|'i'),(('a'<<8)|'n'),0};
4308int main(){
4309 char* s = (char*)ascii_name;
4310 return 0;
4311}
4312
4313gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
4314
4315ldd /tmp/mplayer-conf-6219-19072.o
4316 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
4317 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
4318
4319Result is: little-endian
4320##########################################
4321
4322============ Checking for OSD menu ============
4323Result is: no
4324##########################################
4325
4326============ Checking for QTX codecs ============
4327Result is: no
4328##########################################
4329
4330============ Checking for Subtitles sorting ============
4331Result is: yes
4332##########################################
4333
4334============ Checking for XMMS inputplugin support ============
4335Result is: no
4336##########################################
4337
4338============ Checking for inet6 ============
4339
4340#include <sys/types.h>
4341#include <sys/socket.h>
4342int main(void) { socket(AF_INET6, SOCK_STREAM, AF_INET6); }
4343
4344gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
4345
4346ldd /tmp/mplayer-conf-6219-19072.o
4347 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
4348 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
4349
4350Result is: yes
4351##########################################
4352
4353============ Checking for gethostbyname2 ============
4354
4355#include <sys/types.h>
4356#include <sys/socket.h>
4357#include <netdb.h>
4358int main(void) { gethostbyname2("", AF_INET); }
4359
4360gcc -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
4361
4362ldd /tmp/mplayer-conf-6219-19072.o
4363 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
4364 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
4365
4366Result is: yes
4367##########################################
4368
4369============ Checking for GUI ============
4370============ Checking for automatic gdb attach ============
4371Result is: no
4372##########################################
4373
4374============ Checking for compiler support for -fno-PIC ============
4375
4376int main(void) { return 0; }
4377
4378gcc -O4 -march=k8 -mtune=k8 -pipe -ffast-math -fomit-frame-pointer -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -fno-PIC
4379
4380ldd /tmp/mplayer-conf-6219-19072.o
4381 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
4382 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
4383
4384Result is: yes
4385##########################################
4386
4387============ Checking for compiler support for noexecstack ============
4388
4389int main(void) { return 0; }
4390
4391gcc -fno-PIC -O4 -march=k8 -mtune=k8 -pipe -ffast-math -fomit-frame-pointer -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -Wl,-z,noexecstack
4392
4393ldd /tmp/mplayer-conf-6219-19072.o
4394 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
4395 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
4396
4397Result is: yes
4398##########################################
4399
4400============ Checking for ftello() ============
4401
4402#include <stdio.h>
4403#include <sys/types.h>
4404int main (void) { ftello(stdin); return 0; }
4405
4406gcc -fno-PIC -O4 -march=k8 -mtune=k8 -pipe -ffast-math -fomit-frame-pointer -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Wl,-z,noexecstack -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c
4407
4408ldd /tmp/mplayer-conf-6219-19072.o
4409 libc.so.6 => /lib64/tls/libc.so.6 (0x00000037c0600000)
4410 /lib64/ld-linux-x86-64.so.2 (0x00000037bf900000)
4411
4412Result is: yes
4413##########################################
4414
4415============ Checking for VIDIX ============
4416Result is: yes
4417##########################################
4418
4419============ Checking for joystick ============
4420Result is: no
4421##########################################
4422
4423============ Checking for lirc ============
4424Result is: no
4425##########################################
4426
4427============ Checking for lircc ============
4428
4429#include <lirc/lircc.h>
4430int main(void) { return 0; }
4431
4432gcc -fno-PIC -O4 -march=k8 -mtune=k8 -pipe -ffast-math -fomit-frame-pointer -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Wl,-z,noexecstack -o /tmp/mplayer-conf-6219-19072.o /tmp/mplayer-conf-21330-19072.c -llircc
4433/tmp/mplayer-conf-21330-19072.c:1:24: lirc/lircc.h: No such file or directory
4434
4435ldd /tmp/mplayer-conf-6219-19072.o
4436ldd: /tmp/mplayer-conf-6219-19072.o: No such file or directory
4437
4438Result is: no
4439##########################################
4440