2463
|
1 #! /bin/sh
|
2896
|
2 #
|
2943
|
3 # Original version (C) 2000 Pontscho/fresh!mindworkz
|
|
4 # pontscho@makacs.poliod.hu
|
2482
|
5 #
|
2943
|
6 # History / Contributors: check the cvs log !
|
1618
|
7 #
|
2943
|
8 # Cleanups all over the place (c) 2001 pl
|
1428
|
9 #
|
1258
|
10 #
|
2943
|
11 # Guidelines:
|
|
12 # If the option is named 'opt':
|
|
13 # _opt : should have a value in yes/no/auto
|
|
14 # _def_opt : '#define ... 1' or '#undef ...' that is: some C code
|
|
15 # _ld_opt : ' -L/path/dir -lopt ' that is: some GCC option
|
|
16 # _inc_opt : ' -I/path/dir/include '
|
849
|
17 #
|
2943
|
18 # GOTCHAS:
|
|
19 # - config files are currently:
|
2973
|
20 # config.h config.mak libvo/config.mak libao2/config.mak
|
|
21 # Gui/config.mak libvo2/config.mak
|
2947
|
22 # - removed dvbincdir/madincdir/cssincdir: add them to extraincdir
|
1
|
23 #
|
2943
|
24 #############################################################################
|
1
|
25
|
2943
|
26 # Prefer these macros to full length text !
|
|
27 # These macros only return an error code - NO display is done
|
2193
|
28 cc_check() {
|
2988
|
29 echo >> "$TMPLOG"
|
2943
|
30 cat "$TMPC" >> "$TMPLOG"
|
|
31 echo >> "$TMPLOG"
|
2988
|
32 echo "$_cc $_inc_extra $_ld_static $_ld_extra $TMPC -o $TMPO $@" >> "$TMPLOG"
|
3022
|
33 > "$TMPO"
|
2988
|
34 ( "$_cc" $_inc_extra $_ld_static $_ld_extra "$TMPC" -o "$TMPO" "$@" ) >> "$TMPLOG" 2>&1
|
|
35 TMP="$?"
|
|
36 echo >> "$TMPLOG"
|
|
37 echo "ldd $TMPO" >> "$TMPLOG"
|
|
38 ( ldd "$TMPO" ) >> "$TMPLOG" 2>&1
|
|
39 echo >> "$TMPLOG"
|
|
40 return "$TMP"
|
2190
|
41 }
|
|
42
|
2943
|
43 # Display error message, flushes tempfile, exit
|
2193
|
44 die () {
|
2943
|
45 echo
|
|
46 echo "Error: $@" >&2
|
|
47 echo >&2
|
|
48 rm -f "$TMPO" "$TMPC" "$TMPS" "$TMPCPP"
|
3161
|
49 echo "Check "$TMPLOG" if you do not understand why it failed."
|
2943
|
50 exit 1
|
2190
|
51 }
|
|
52
|
2943
|
53 # OS test booleans functions
|
3248
|
54 issystem() {
|
|
55 test "`echo $system_name | tr A-Z a-z`" = "`echo $1 | tr A-Z a-z`"
|
|
56 }
|
|
57 linux() { issystem "Linux" ; return "$?" ; }
|
|
58 sunos() { issystem "SunOS" ; return "$?" ; }
|
|
59 irix() { issystem "IRIX" ; return "$?" ; }
|
|
60 cygwin() { issystem "CYGWIN" ; return "$?" ; }
|
|
61 freebsd() { issystem "FreeBSD" ; return "$?" ; }
|
|
62 netbsd() { issystem "NetBSD" ; return "$?" ; }
|
|
63 bsdos() { issystem "BSD/OS" ; return "$?" ; }
|
|
64 openbsd() { issystem "OpenBSD" ; return "$?" ; }
|
2594
|
65 bsd() { freebsd || netbsd || bsdos || openbsd ; return "$?" ; }
|
3248
|
66 qnx() { issystem "QNX" ; return "$?" ; }
|
2190
|
67
|
2997
|
68 # arch test boolean functions
|
|
69 x86() {
|
|
70 case "$host_arch" in
|
|
71 i[3-9]86|x86*) return 0 ;;
|
|
72 *) return 1 ;;
|
|
73 esac
|
|
74 }
|
|
75
|
2943
|
76 # Use this before starting a check
|
|
77 echocheck() {
|
|
78 echo "============ Checking for $@ ============" >> "$TMPLOG"
|
|
79 echo "$_echo_n" "Checking for $@ ... $_echo_c"
|
|
80 }
|
|
81
|
|
82 # Use this to echo the results of a check
|
|
83 echores() {
|
2961
|
84 echo "Result is: $@" >> "$TMPLOG"
|
2943
|
85 echo "##########################################" >> "$TMPLOG"
|
|
86 echo "" >> "$TMPLOG"
|
|
87 echo "$@"
|
|
88 }
|
|
89 #############################################################################
|
1
|
90
|
1038
|
91 # Check how echo works in this /bin/sh
|
|
92 case `echo -n` in
|
2943
|
93 -n) _echo_n='' _echo_c='\c' ;; # SysV echo
|
|
94 *) _echo_n=-n _echo_c='' ;; # BSD echo
|
1038
|
95 esac
|
|
96
|
2435
|
97 LANGUAGES=`echo help_mp-??.h | sed "s/help_mp-\(..\).h/\1/g"`
|
1038
|
98
|
1384
|
99 for parm in "$@" ; do
|
2435
|
100 if test "$parm" = "--help" || test "$parm" = "-help" || test "$parm" = "-h" ; then
|
|
101 cat << EOF
|
|
102
|
2943
|
103 Usage: $0 [OPTIONS]...
|
1
|
104
|
2435
|
105 Configuration:
|
|
106 -h, --help display this help and exit
|
1
|
107
|
2435
|
108 Installation directories:
|
2190
|
109 --prefix=DIR use this prefix for installing mplayer [/usr/local]
|
|
110 --datadir=DIR use this prefix for installing machine independent
|
2943
|
111 data [/usr/local/share/mplayer]
|
2435
|
112
|
|
113 Optional features:
|
3079
|
114 --disable-mencoder disable mencoder [autodetect]
|
2435
|
115 --enable-largefiles enable support for files >2^32 bytes long [disable]
|
2945
|
116 --enable-termcap use termcap database for key codes [autodetect]
|
2947
|
117 --enable-lirc enable LIRC (remote control) support [autodetect]
|
2435
|
118 --enable-gui enable GUI [disable]
|
3242
|
119 --disable-tv disable TV Interface (tv/dvb grabbers) [enable]
|
3695
|
120 --disable-tv-v4l disable Video 4 Linux TV Interface support [autodetect]
|
2435
|
121 --disable-win32 disable Win32 DLL support [autodetect]
|
|
122 --disable-dshow disable DirectShow support (if no C++ compiler and
|
2943
|
123 libs are available or find the dshow codecs slower
|
2435
|
124 than the old VfW ones) [autodetect]
|
2657
|
125 --disable-xanim disable XAnim DLL support [autodetect]
|
2435
|
126 --enable-vorbis build with OggVorbis support [autodetect]
|
|
127 --disable-iconv do not use iconv(3) function [autodetect]
|
3015
|
128 --disable-rtc disable RTC (/dev/rtc) on Linux [autodetect]
|
3695
|
129 --disable-mp1e disable libmp1e support
|
|
130 (use this option if it does not compile) [enable]
|
|
131 --disable-streaming disable network streaming support
|
|
132 (support for: http/mms/rtp) [enable]
|
2435
|
133
|
|
134 Video:
|
2190
|
135 --enable-gl build with OpenGL render support [autodetect]
|
3206
|
136 --enable-dga[=n] build with DGA [n in {1, 2} ] support [autodetect]
|
2190
|
137 --enable-svga build with SVGAlib support [autodetect]
|
|
138 --enable-sdl build with SDL render support [autodetect]
|
|
139 --enable-aa build with AAlib render support [autodetect]
|
|
140 --enable-ggi build with GGI render support [autodetect]
|
3695
|
141 --enable-dxr3 build with DXR3/H+ render support [autodetect]
|
|
142 --enable-dvb build with support for output via DVB-Card [autodetect]
|
2943
|
143 --enable-mga build with mga_vid support
|
2435
|
144 (check for /dev/mga_vid) [autodetect]
|
|
145 --enable-xmga build with mga_vid X Window support
|
|
146 (check for X & /dev/mga_vid) [autodetect]
|
2190
|
147 --enable-xv build with Xv render support for X 4.x [autodetect]
|
3695
|
148 --enable-vm build with XF86VidMode support for X11 [autodetect]
|
|
149 --enable-xinerama build with Xinerama support for X11 [autodetect]
|
2190
|
150 --enable-x11 build with X11 render support [autodetect]
|
2435
|
151 --enable-fbdev build with FBDev render support [disable]
|
3083
|
152 --enable-mlib build with MLIB support (Solaris only) [autodetect]
|
2997
|
153 --enable-3dfx build with 3dfx support [disable]
|
|
154 --enable-tdfxfb build with tdfxfb support [disable]
|
3275
|
155 --enable-directfb build with DirectFB support [autodetect]
|
1
|
156
|
2435
|
157 Audio:
|
2190
|
158 --disable-ossaudio disable OSS sound support [autodetect]
|
|
159 --disable-alsa disable alsa sound support [autodetect]
|
|
160 --disable-sunaudio disable Sun sound support [autodetect]
|
2435
|
161 --disable-mad disable mad audio support [autodetect]
|
3015
|
162 --disable-select disable using select() on OSS audio device [enable]
|
642
|
163
|
2594
|
164 Miscellaneous options:
|
2458
|
165 --cc=COMPILER use this C compiler to build MPlayer [gcc]
|
2435
|
166 --target=PLATFORM target platform (i386-linux, arm-linux, etc)
|
2916
|
167 --enable-static build a statically linked binary. If more linking
|
|
168 options needed : --enable-static="-lslang -lncurses"
|
2435
|
169 --language=xx select a language [en]
|
|
170 (Available: $LANGUAGES)
|
|
171
|
|
172 Advanced options:
|
|
173 --enable-mmx build with mmx support [autodetect]
|
|
174 --enable-mmx2 build with mmx2 support (PIII, Athlon) [autodetect]
|
|
175 --enable-3dnow build with 3dnow! support [autodetect]
|
|
176 --enable-3dnowex build with 3dnow-dsp! support (K7) [autodetect]
|
|
177 --enable-sse build with sse support [autodetect]
|
|
178 --disable-fastmemcpy disable 3dnow/sse/mmx optimized memcpy() [enable]
|
|
179 --enable-debug[=1-3] compile debugging information into mplayer [disable]
|
|
180 --enable-profile compile profiling information into mplayer [disable]
|
|
181
|
2943
|
182 Hazardous options a.k.a. "DO NOT BUGREPORT ANYTHING !"
|
2435
|
183 --disable-gcc-checking disable gcc version checking
|
|
184
|
|
185 Use these options if autodetection fails:
|
2943
|
186 --with-extraincdir=DIR extra headers (png, dvb, mad, sdl, css, ...) in DIR
|
|
187 --with-extralibdir=DIR extra library files (png, SDL, ...) in DIR
|
|
188 --with-x11incdir=DIR X headers in DIR
|
2435
|
189 --with-x11libdir=DIR X library files in DIR
|
2988
|
190 --with-csslibdir=DIR libcss in DIR
|
|
191 --with-madlibdir=DIR libmad (libmad shared lib.) in DIR
|
2435
|
192 --with-win32libdir=DIR W*ndows DLL files in DIR
|
2657
|
193 --with-xanimlibdir=DIR XAnim DLL files in DIR
|
2700
|
194 --with-sdl-config=PATH path to sdl*-config (e.g.: /opt/bin/sdl-config)
|
|
195 --with-gtk-config=PATH path to gtk*-config (e.g.: /opt/bin/gtk-config)
|
|
196 --with-glib-config=PATH path to glib*-config (e.g.: /opt/bin/glib-config)
|
2435
|
197
|
1
|
198 EOF
|
2435
|
199 exit 0
|
|
200 fi
|
1384
|
201 done # for parm in ...
|
1
|
202
|
2943
|
203
|
|
204 # 1st pass checking for vital options
|
2435
|
205 _cc=gcc
|
|
206 test "$CC" && _cc="$CC"
|
1395
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
207 _as=auto
|
1424
|
208 for ac_option do
|
2943
|
209 case "$ac_option" in
|
1395
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
210 --target=*)
|
2943
|
211 _target=`echo $ac_option | cut -d '=' -f 2`
|
|
212 ;;
|
1395
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
213 --cc=*)
|
2943
|
214 _cc=`echo $ac_option | cut -d '=' -f 2`
|
|
215 ;;
|
1395
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
216 --as=*)
|
2943
|
217 _as=`echo $ac_option | cut -d '=' -f 2`
|
|
218 ;;
|
1395
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
219 --disable-gcc-checking)
|
2943
|
220 _skip_cc_check=yes
|
|
221 ;;
|
2988
|
222 --enable-static)
|
|
223 _ld_static='-static'
|
|
224 ;;
|
|
225 --disable-static)
|
|
226 _ld_static=''
|
|
227 ;;
|
|
228 --enable-static=*)
|
|
229 _ld_static="-static `echo $ac_option | cut -d '=' -f 2`"
|
|
230 ;;
|
2943
|
231 --with-extraincdir=*)
|
|
232 _inc_extra=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
|
|
233 ;;
|
1395
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
234 --with-extralibdir=*)
|
2943
|
235 _ld_extra=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
|
|
236 ;;
|
|
237 esac
|
1395
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
238 done
|
1309
|
239
|
1
|
240
|
1323
|
241 # Determine our OS name and CPU architecture
|
2171
|
242 if test -z "$_target" ; then
|
2943
|
243 # OS name
|
|
244 system_name=`( uname -s ) 2>&1`
|
|
245 case "$system_name" in
|
2973
|
246 Linux|FreeBSD|NetBSD|BSD/OS|OpenBSD|SunOS|QNX)
|
2943
|
247 ;;
|
|
248 IRIX*)
|
|
249 system_name=IRIX
|
|
250 ;;
|
|
251 [cC][yY][gG][wW][iI][nN]*)
|
|
252 system_name=CYGWIN
|
|
253 ;;
|
|
254 *)
|
|
255 system_name="$system_name-UNKNOWN"
|
|
256 ;;
|
|
257 esac
|
2594
|
258
|
|
259
|
2943
|
260 # host's CPU/instruction set
|
2594
|
261 host_arch=`( uname -p ) 2>&1`
|
1395
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
262 case "$host_arch" in
|
2594
|
263 i386|sparc|ppc|alpha|arm|mips)
|
2943
|
264 ;;
|
1335
|
265
|
2943
|
266 *) # uname -p on Linux returns 'unknown' for the processor type,
|
|
267 # OpenBSD returns 'Intel Pentium/MMX ("Genuine Intel" 586-class)'
|
1395
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
268
|
2943
|
269 # Maybe uname -m (machine hardware name) returns something we
|
|
270 # recognize.
|
1335
|
271
|
2943
|
272 case "`( uname -m ) 2>&1`" in
|
2973
|
273 i[3-9]86|x86*) host_arch=i386 ;;
|
|
274 ppc) host_arch=ppc ;;
|
|
275 alpha) host_arch=alpha ;;
|
|
276 sparc*) host_arch=sparc ;;
|
|
277 arm*) host_arch=arm ;;
|
|
278 *) host_arch=UNKNOWN ;;
|
2943
|
279 esac
|
|
280 ;;
|
|
281 esac
|
1395
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
282 else
|
2943
|
283 system_name=`echo $_target | cut -d '-' -f 2`
|
|
284 host_arch=`echo $_target | cut -d '-' -f 1`
|
1395
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
285 fi
|
1309
|
286
|
1412
|
287 echo "Detected operating system: $system_name"
|
|
288 echo "Detected host architecture: $host_arch"
|
|
289
|
1
|
290 # LGB: temporary files
|
2190
|
291 for I in "$TMPDIR" "$TEMPDIR" "/tmp" ; do
|
2943
|
292 test "$I" && break
|
2190
|
293 done
|
1
|
294
|
2983
|
295 TMPLOG="configure.log"
|
|
296 rm -f "$TMPLOG"
|
2943
|
297 TMPC="$I/mplayer-conf-$RANDOM-$$.c"
|
|
298 TMPCPP="$I/mplayer-conf-$RANDOM-$$.cpp"
|
|
299 TMPO="$I/mplayer-conf-$RANDOM-$$.o"
|
|
300 TMPS="$I/mplayer-conf-$RANDOM-$$.S"
|
1
|
301
|
|
302 # config files
|
196
|
303
|
2943
|
304 # FIXME: A lot of stuff is installed under /usr/local
|
|
305 # NK: But we should never use this stuff implicitly since we call compiler
|
|
306 # from /usr we should be sure that there no effects from other compilers
|
|
307 # (libraries) which might be installed into /usr/local. Let users use this
|
|
308 # stuff explicitly as command line argument. In other words: It would be
|
|
309 # resonable have or only /usr/include or only /usr/local/include.
|
|
310
|
|
311 if freebsd ; then
|
|
312 _ld_extra="$_ld_extra -L/usr/local/lib"
|
|
313 _inc_extra="$_inc_extra -I/usr/local/include"
|
448
|
314 fi
|
196
|
315
|
1038
|
316
|
1023
|
317 # Checking CC version...
|
2435
|
318 # gcc-3.0 merges optimizations coming from egcs, pgcc, agcc, ...
|
2171
|
319 if test "$_skip_cc_check" != yes ; then
|
2943
|
320 echocheck "$_cc version"
|
3089
|
321 # also check for name (the version checking is only for _gcc_ up for now)
|
|
322 # FIXME implement this in ver. check.
|
3159
|
323 cc_name=`$_cc -v 2>&1 | tail -1 | cut -d ' ' -f 1`
|
2943
|
324 cc_version=`$_cc -v 2>&1 | sed -n 's/^.*version \([aegcygnustp-]*[0-9.]*\).*$/\1/p'`
|
|
325 case $cc_version in
|
|
326 '')
|
|
327 cc_version="v. ?.??, bad"
|
|
328 cc_verc_fail=yes
|
|
329 ;;
|
1388
|
330 2.95.[2-9]|2.95.[2-9].[0-9]|3.[0-9]|3.[0-9].[0-9])
|
2943
|
331 cc_version="$cc_version, ok"
|
|
332 ;;
|
|
333 *)
|
|
334 cc_version="$cc_version, bad"
|
|
335 cc_verc_fail=yes
|
|
336 ;;
|
|
337 esac
|
|
338 echores "$cc_version"
|
|
339 if test "$cc_verc_fail" ; then
|
|
340 cat <<EOF
|
2908
|
341
|
|
342 *** Please downgrade/upgrade C compiler to gcc-2.95.x or gcc-3.x version! ***
|
|
343
|
2943
|
344 You are using a different compiler than ours. We do not have the time to make
|
|
345 sure everything works with compilers than the one we use. Use either use the
|
|
346 same compiler as ours, or use --disable-gcc-checking but DO *NOT* REPORT BUGS
|
|
347 unless you can reproduce them after recompiling with 2.95.x or 3.0.x version!
|
2908
|
348
|
2943
|
349 Note for gcc 2.96 users: some versions of this compiler are known to miscompile
|
|
350 mplayer and lame (which is used for mencoder). If you get compile errors,
|
|
351 first upgrade to the latest 2.96 release (but minimum 2.96-85) and try again.
|
|
352 If the problem still exists, try with gcc 3.0.x (or 2.95.x) *BEFORE* reporting
|
|
353 bugs!
|
|
354
|
|
355 GCC 2.96 IS NOT AND WILL NOT BE SUPPORTED BY US !
|
|
356
|
|
357 *** For details please read DOCS/gcc-2.96-3.0.html ***
|
2443
|
358
|
1766
|
359 EOF
|
2943
|
360 die "Bad gcc version"
|
|
361 fi
|
1012
|
362 else
|
2111
|
363 cat <<EOF
|
|
364
|
2908
|
365 ******************************************************************************
|
|
366
|
|
367 Hmm. You really want to compile MPlayer with an *UNSUPPORTED* C compiler?
|
|
368 Ok. You know. Do it. But did you already read DOCS/gcc-2.96-3.0.html ???
|
|
369
|
2943
|
370 DO NOT SEND BUGREPORTS OR COMPLAIN, it's *YOUR* compiler's fault!
|
2442
|
371 Get ready for mysterious crashes, no-picture bugs, strange noises... REALLY!
|
2943
|
372 Lame which is used by mencoder produces weird errors, too.
|
2442
|
373
|
2908
|
374 If you have any problem, then install GCC 2.95.x or 3.x version and try again.
|
|
375 If the problem _still_ exists, then read DOCS/bugreports.html !
|
|
376
|
2943
|
377 *** DO NOT SEND BUGREPORTS OR COMPLAIN it's *YOUR* compiler's fault! ***
|
|
378
|
2908
|
379 ******************************************************************************
|
2111
|
380
|
|
381 EOF
|
|
382
|
|
383 read _answer
|
|
384
|
988
|
385 fi
|
1
|
386 # ---
|
|
387
|
1272
|
388 # now that we know what compiler should be used for compilation, try to find
|
|
389 # out which assembler is used by the $_cc compiler
|
2171
|
390 if test "$_as" = auto ; then
|
1272
|
391 _as=`$_cc -print-prog-name=as`
|
2943
|
392 test -z "$_as" && _as=as
|
1038
|
393 fi
|
1
|
394
|
2943
|
395 # Try to find the available options for the current CPU
|
2997
|
396 if x86 ; then
|
2943
|
397 if test -r /proc/cpuinfo ; then
|
|
398 # linux with /proc mounted, extract cpu information from it
|
|
399 _cpuinfo="cat /proc/cpuinfo"
|
|
400 elif test -r /compat/linux/proc/cpuinfo ; then
|
|
401 # FreeBSD with linux emulation /proc mounted,
|
|
402 # extract cpu information from it
|
|
403 _cpuinfo="cat /compat/linux/proc/cpuinfo"
|
|
404 else
|
|
405 # all other OS try to extract cpu information from a small helper
|
|
406 # program TOOLS/cpuinfo instead
|
|
407 $_cc -o TOOLS/cpuinfo TOOLS/cpuinfo.c
|
|
408 _cpuinfo="TOOLS/cpuinfo"
|
|
409 fi
|
525
|
410
|
2943
|
411 pname=`$_cpuinfo | grep 'model name' | cut -d ':' -f 2 | head -1`
|
|
412 pvendor=`$_cpuinfo | grep 'vendor_id' | cut -d ':' -f 2 | cut -d ' ' -f 2 | head -1`
|
|
413 pfamily=`$_cpuinfo | grep 'cpu family' | cut -d ':' -f 2 | cut -d ' ' -f 2 | head -1`
|
|
414 pmodel=`$_cpuinfo | grep -v 'model name' | grep 'model' | cut -d ':' -f 2 | cut -d ' ' -f 2 | head -1`
|
|
415 pstepping=`$_cpuinfo | grep 'stepping' | cut -d ':' -f 2 | cut -d ' ' -f 2 | head -1`
|
1
|
416
|
2943
|
417 pparam=`$_cpuinfo | grep 'features' | cut -d ':' -f 2 | head -1`
|
|
418 if test -z "$pparam" ; then
|
|
419 pparam=`$_cpuinfo | grep 'flags' | cut -d ':' -f 2 | head -1`
|
|
420 fi
|
1
|
421
|
2943
|
422 _mmx=no
|
|
423 _3dnow=no
|
|
424 _3dnowex=no
|
|
425 _mmx2=no
|
|
426 _sse=no
|
|
427 _sse2=no
|
3520
|
428 _mtrr=no
|
1
|
429
|
2943
|
430 for i in $pparam ; do
|
|
431 case "$i" in
|
|
432 3dnow) _3dnow=yes ;;
|
|
433 3dnowext) _3dnow=yes _3dnowex=yes ;;
|
|
434 mmx) _mmx=yes ;;
|
|
435 mmxext) _mmx2=yes ;;
|
|
436 mtrr|k6_mtrr) _mtrr=yes ;;
|
|
437 xmm|sse|kni) _sse=yes _mmx2=yes ;;
|
|
438 esac
|
|
439 done
|
1
|
440
|
2943
|
441 echocheck "CPU vendor"
|
|
442 echores "$pvendor ($pfamily:$pmodel:$pstepping)"
|
|
443
|
|
444 echocheck "CPU type"
|
|
445 echores "$pname"
|
|
446
|
|
447 fi
|
1
|
448
|
|
449
|
2500
|
450
|
1309
|
451 case "$host_arch" in
|
2997
|
452 i[3-9]86|x86*)
|
2943
|
453 _def_arch="#define ARCH_X86 1"
|
|
454 _target_arch="TARGET_ARCH_X86 = yes"
|
|
455 _def_words_endian="#undef WORDS_BIGENDIAN"
|
|
456 iproc=586
|
|
457 proc=pentium
|
1
|
458
|
2943
|
459 case "$pvendor" in
|
|
460 AuthenticAMD)
|
|
461 case "$pfamily" in
|
|
462 3) proc=i386 iproc=386 ;;
|
|
463 4) proc=i486 iproc=486 ;;
|
|
464 5) proc=k5 iproc=586 # LGB: models are: K5/SSA5 K5 K5 K5 ? ? K6 K6 K6-2 K6-3
|
|
465 test "$pmodel" -ge 6 && proc=k6 ;;
|
|
466 6|7) proc=k7 iproc=686 ;;
|
|
467 *) proc=pentium iproc=586 ;;
|
1309
|
468 esac
|
2943
|
469 ;;
|
|
470 GenuineIntel)
|
|
471 case "$pfamily" in
|
|
472 3) proc=i386 iproc=386 ;;
|
|
473 4) proc=i486 iproc=486 ;;
|
|
474 5) proc=pentium iproc=586 ;;
|
|
475 6) proc=i686 iproc=686 ;;
|
|
476 *) proc=pentium iproc=586 ;;
|
|
477 esac
|
|
478 ;;
|
|
479 unknown)
|
|
480 case "$pfamily" in
|
|
481 3) proc=i386 iproc=386 ;;
|
|
482 4) proc=i486 iproc=486 ;;
|
|
483 *) proc=pentium iproc=586 ;;
|
|
484 esac
|
|
485 ;;
|
|
486 *)
|
|
487 proc=pentium iproc=586 ;;
|
|
488 esac
|
1309
|
489
|
|
490 # check that gcc supports our cpu, if not, fallback to pentium
|
|
491 # LGB: check -mcpu and -march swithing step by step with enabling
|
|
492 # to fall back till 386.
|
|
493
|
2943
|
494 echocheck "GCC & CPU optimization abilities"
|
|
495 cat > $TMPC << EOF
|
|
496 int main(void) { return 0; }
|
|
497 EOF
|
|
498
|
2171
|
499 if test "$proc" = "k7" ; then
|
2943
|
500 cc_check -march=$proc -mcpu=$proc || proc=athlon
|
1309
|
501 fi
|
2171
|
502 if test "$proc" = "athlon" ; then
|
2943
|
503 cc_check -march=$proc -mcpu=$proc || proc=pentiumpro
|
1309
|
504 fi
|
2171
|
505 if test "$proc" = "k6" ; then
|
2943
|
506 cc_check -march=$proc -mcpu=$proc || proc=k5
|
1309
|
507 fi
|
2171
|
508 if test "$proc" = "k5" ; then
|
2943
|
509 cc_check -march=$proc -mcpu=$proc || proc=pentium
|
1309
|
510 fi
|
2171
|
511 if test "$proc" = "i686" ; then
|
2943
|
512 cc_check -march=$proc -mcpu=$proc || proc=pentiumpro
|
1309
|
513 fi
|
2171
|
514 if test "$proc" = "pentiumpro" ; then
|
2943
|
515 cc_check -march=$proc -mcpu=$proc || proc=pentium
|
1309
|
516 fi
|
2171
|
517 if test "$proc" = "pentium" ; then
|
2943
|
518 cc_check -march=$proc -mcpu=$proc || proc=i486
|
1309
|
519 fi
|
2171
|
520 if test "$proc" = "i486" ; then
|
2943
|
521 cc_check -march=$proc -mcpu=$proc || proc=i386
|
1309
|
522 fi
|
2171
|
523 if test "$proc" = "i386" ; then
|
2943
|
524 cc_check -march=$proc -mcpu=$proc || proc=error
|
1309
|
525 fi
|
2171
|
526 if test "$proc" = "error" ; then
|
2943
|
527 die "Your $_cc does not support even \"i386\" for '-march' and '-mcpu'."
|
1309
|
528 fi
|
|
529
|
|
530 _march="-march=$proc"
|
|
531 _mcpu="-mcpu=$proc"
|
2890
|
532
|
|
533 ## Gabucino : --target takes effect here (hopefully...) by overwriting
|
2943
|
534 ## autodetected mcpu/march parameters
|
2890
|
535 if test "$_target" ; then
|
|
536 _march="-march=$host_arch"
|
|
537 _mcpu="-mcpu=$host_arch"
|
2943
|
538 proc="$_target"
|
2890
|
539 fi
|
|
540
|
2943
|
541 echores "$proc"
|
1309
|
542 ;;
|
|
543
|
2943
|
544 sparc)
|
|
545 _def_arch='#define ARCH_SPARC 1'
|
|
546 _target_arch='TARGET_ARCH_SPARC = yes'
|
|
547 _def_words_endian='#define WORDS_BIGENDIAN 1'
|
|
548 iproc='sparc'
|
|
549 proc='v8'
|
|
550 _march=''
|
1309
|
551 _mcpu="-mcpu=$proc"
|
|
552 ;;
|
|
553
|
2943
|
554 arm)
|
|
555 _def_arch="#define ARCH_ARM 1"
|
|
556 _target_arch='TARGET_ARCH_ARM = yes'
|
|
557 _def_words_endian='#undef WORDS_BIGENDIAN'
|
1395
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
558 iproc=arm
|
2943
|
559 proc=''
|
|
560 _march=''
|
|
561 _mcpu=''
|
1395
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
562 ;;
|
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
563
|
2943
|
564 ppc)
|
|
565 _def_arch='#define ARCH_PPC 1'
|
|
566 _target_arch='TARGET_ARCH_PPC = yes'
|
|
567 _def_words_endian='#define WORDS_BIGENDIAN 1'
|
|
568 iproc='ppc'
|
|
569 proc=''
|
|
570 _march=''
|
|
571 _mcpu=''
|
1739
|
572 ;;
|
1309
|
573
|
2943
|
574 alpha)
|
|
575 _def_arch='#define ARCH_ALPHA 1'
|
|
576 _target_arch='TARGET_ARCH_ALPHA = yes'
|
|
577 _def_words_endian='#undef WORDS_BIGENDIAN'
|
|
578 iproc='alpha'
|
|
579 proc=''
|
|
580 _march=''
|
|
581 _mcpu='-mcpu=ev56'
|
1908
|
582 ;;
|
1309
|
583
|
2943
|
584 mips)
|
|
585 _def_arch="#define ARCH_SGI_MIPS 1"
|
|
586 _target_arch="TARGET_ARCH_SGI_MIPS = yes"
|
|
587 _def_words_endian='#define WORDS_BIGENDIAN 1'
|
|
588 iproc='sgi-mips'
|
|
589 proc=''
|
|
590 _march=''
|
|
591 _mcpu=''
|
2450
|
592 ;;
|
|
593
|
2943
|
594 *)
|
1309
|
595 echo "The architecture of your CPU ($host_arch) is not supported by this configure script"
|
2190
|
596 echo "It seems noone has ported MPlayer to your OS or CPU type yet."
|
|
597 die "unsupported architecture $host_arch"
|
1309
|
598 ;;
|
1
|
599 esac
|
|
600
|
2943
|
601
|
|
602 echocheck "binutils"
|
|
603 _binutils=no
|
|
604 $_as libac3/downmix/downmix_i386.S -o $TMPO > /dev/null 2>&1 && _binutils=yes
|
|
605 echores "$_binutils"
|
|
606
|
1
|
607
|
2997
|
608 if x86 ; then
|
2943
|
609 extcheck() {
|
|
610 if test "$1" = yes ; then
|
|
611 echocheck "kernel support of $2"
|
|
612 cat > $TMPC <<EOF
|
|
613 int main(void){__asm__ __volatile__ ("$3":::"memory");return(0);}
|
|
614 EOF
|
2467
|
615
|
2943
|
616 if ( cc_check && $TMPO ) > /dev/null 2>&1 ; then
|
|
617 echores "yes"
|
|
618 return 0
|
|
619 else
|
|
620 echores "failed"
|
|
621 echo "It seems that your kernel does not correctly support $2."
|
|
622 echo "To use $2 extensions in MPlayer, you have to upgrade/recompile your kernel!"
|
|
623 return 1
|
|
624 fi
|
|
625 fi
|
|
626 return 1
|
|
627 }
|
1
|
628
|
3051
|
629 extcheck $_mmx "mmx" "emms" || _mmx=no
|
|
630 extcheck $_3dnow "3dnow" "femms" || _3dnow=no
|
|
631 extcheck $_3dnowex "3dnowex" "pswapd %%mm0, %%mm0" || _3dnowex=no
|
|
632 extcheck $_mmx2 "mmx2" "sfence" || _mmx2=no
|
|
633 extcheck $_sse "sse" "xorps %%xmm0, %%xmm0" || _sse=no
|
|
634 extcheck $_sse2 "sse2" "xorpd %%xmm0, %%xmm0" || _sse2=no
|
2943
|
635 echocheck "mtrr support"
|
|
636 echores "$_mtrr"
|
|
637
|
|
638 fi
|
|
639
|
1
|
640
|
2943
|
641 _prefix="/usr/local"
|
|
642
|
3206
|
643 # GOTCHA: the variables below defines the default behavior for autodetection
|
|
644 # and have - unless stated otherwise - at least 2 states : yes no
|
|
645 # If autodetection is available then the third state is: auto
|
2943
|
646 _libavcodec=auto
|
3127
|
647 _libavcodecso=no # changed default to no as it causes problems - atmos
|
3432
|
648 _mp1e=yes
|
3079
|
649 _mencoder=auto
|
2943
|
650 _x11=auto
|
3206
|
651 _dga=auto # 1 2 no auto
|
2943
|
652 _xv=auto
|
|
653 _sdl=auto
|
3276
|
654 _nas=auto
|
2943
|
655 _png=auto
|
|
656 _gl=auto
|
|
657 _ggi=auto
|
|
658 _aa=auto
|
|
659 _svga=auto
|
|
660 _fbdev=no
|
|
661 _dvb=auto
|
|
662 _dxr3=auto
|
|
663 _iconv=auto
|
3015
|
664 _rtc=auto
|
2943
|
665 _ossaudio=auto
|
|
666 _mad=auto
|
|
667 _vorbis=auto
|
|
668 _css=auto
|
|
669 _dvdread=auto
|
|
670 _xanim=auto
|
|
671 _xinerama=auto
|
|
672 _mga=auto
|
|
673 _xmga=auto
|
|
674 _vm=auto
|
|
675 _mlib=auto
|
|
676 _sgiaudio=auto
|
|
677 _sunaudio=auto
|
|
678 _alsa=auto
|
|
679 _fastmemcpy=yes
|
|
680 _win32=auto
|
3451
|
681 _dshow=yes
|
3206
|
682 _select=yes
|
3242
|
683 _tv=yes
|
|
684 _tv_v4l=auto
|
3690
|
685 _streaming=yes
|
2943
|
686 _divx4linux=auto
|
2947
|
687 _lirc=auto
|
2943
|
688 _gui=no
|
2945
|
689 _termcap=auto
|
3007
|
690 _termios=auto
|
2943
|
691 _3dfx=no
|
|
692 _tdfxfb=no
|
3275
|
693 _directfb=auto
|
2961
|
694 _largefiles=no
|
2947
|
695 _vo2=no
|
2943
|
696 _language=en
|
3004
|
697 _shm=auto
|
2943
|
698
|
|
699
|
|
700 for ac_option do
|
|
701 case "$ac_option" in
|
|
702 # Skip 1st pass
|
|
703 --target=*) ;;
|
|
704 --cc=*) ;;
|
|
705 --as=*) ;;
|
|
706 --disable-gcc-checking) ;;
|
2989
|
707 --enable-static*) ;;
|
2988
|
708 --disable-static*) ;;
|
2943
|
709 --with-extraincdir=*) ;;
|
|
710 --with-extralibdir=*) ;;
|
|
711
|
2988
|
712
|
2943
|
713 # Real 2nd pass
|
3079
|
714 --enable-mencoder) _mencoder=yes ;;
|
|
715 --disable-mencoder) _mencoder=no ;;
|
2943
|
716 --enable-x11) _x11=yes ;;
|
|
717 --disable-x11) _x11=no ;;
|
|
718 --enable-xv) _xv=yes ;;
|
|
719 --disable-xv) _xv=no ;;
|
|
720 --enable-sdl) _sdl=yes ;;
|
|
721 --disable-sdl) _sdl=no ;;
|
3276
|
722 --enable-nas) _nas=yes ;;
|
|
723 --disable-nas) _nas=no ;;
|
2943
|
724 --enable-png) _png=yes ;;
|
|
725 --disable-png) _png=no ;;
|
|
726 --enable-gl) _gl=yes ;;
|
|
727 --disable-gl) _gl=no ;;
|
|
728 --enable-ggi) _ggi=yes ;;
|
|
729 --disable-ggi) _ggi=no ;;
|
|
730 --enable-aa) _aa=yes ;;
|
|
731 --disable-aa) _aa=no ;;
|
|
732 --enable-svga) _svga=yes ;;
|
|
733 --disable-svga) _svga=no ;;
|
|
734 --enable-fbdev) _fbdev=yes ;;
|
|
735 --disable-fbdev) _fbdev=no ;;
|
|
736 --enable-dvb) _dvb=yes ;;
|
|
737 --disable-dvb) _dvb=no ;;
|
|
738 --enable-dxr3) _dxr3=yes ;;
|
|
739 --disable-dxr3) _dxr3=no ;;
|
|
740 --enable-iconv) _iconv=yes ;;
|
|
741 --disable-iconv) _iconv=no ;;
|
3015
|
742 --enable-rtc) _rtc=yes ;;
|
|
743 --disable-rtc) _rtc=no ;;
|
3432
|
744 --disable-mp1e) _mp1e=no ;;
|
2943
|
745 --enable-ossaudio) _ossaudio=yes ;;
|
|
746 --disable-ossaudio) _ossaudio=no ;;
|
|
747 --enable-mad) _mad=yes ;;
|
|
748 --disable-mad) _mad=no ;;
|
|
749 --enable-vorbis) _vorbis=yes ;;
|
|
750 --disable-vorbis) _vorbis=no ;;
|
|
751 --enable-css) _css=yes ;;
|
|
752 --disable-css) _css=no ;;
|
|
753 --enable-dvdread) _dvdread=yes ;;
|
|
754 --disable-dvdread) _dvdread=no ;;
|
|
755 --enable-xanim) _xanim=yes ;;
|
|
756 --disable-xanim) _xanim=no ;;
|
|
757 --enable-xinerama) _xinerama=yes ;;
|
|
758 --disable-xinerama) _xinerama=no ;;
|
|
759 --enable-mga) _mga=yes ;;
|
|
760 --disable-mga) _mga=no ;;
|
|
761 --enable-xmga) _xmga=yes ;;
|
|
762 --disable-xmga) _xmga=no ;;
|
|
763 --enable-vm) _vm=yes ;;
|
|
764 --disable-vm) _vm=no ;;
|
|
765 --enable-mlib) _mlib=yes ;;
|
|
766 --disable-mlib) _mlib=no ;;
|
|
767 --enable-sunaudio) _sunaudio=yes ;;
|
|
768 --disable-sunaudio) _sunaudio=no ;;
|
|
769 --enable-sgiaudio) _sgiaudio=yes ;;
|
|
770 --disable-sgiaudio) _sgiaudio=no ;;
|
|
771 --enable-alsa) _alsa=yes ;;
|
|
772 --disable-alsa) _alsa=no ;;
|
|
773 --enable-tv) _tv=yes ;;
|
|
774 --disable-tv) _tv=no ;;
|
3242
|
775 --enable-tv-v4l) _tv_v4l=yes ;;
|
|
776 --disable-tv-v4l) _tv_v4l=no ;;
|
2943
|
777 --enable-fastmemcpy) _fastmemcpy=yes ;;
|
|
778 --disable-fastmemcpy) _fastmemcpy=no ;;
|
|
779 --enable-streaming) _streaming=yes ;;
|
|
780 --disable-streaming) _streaming=no ;;
|
|
781 --enable-divx4linux) _divx4linux=yes ;;
|
|
782 --disable-divx4linux) _divx4linux=no ;;
|
|
783 --enable-lirc) _lirc=yes ;;
|
|
784 --disable-lirc) _lirc=no ;;
|
|
785 --enable-gui) _gui=yes ;;
|
|
786 --disable-gui) _gui=no ;;
|
|
787 --enable-termcap) _termcap=yes ;;
|
|
788 --disable-termcap) _termcap=no ;;
|
3007
|
789 --enable-termios) _termios=yes ;;
|
|
790 --disable-termios) _termios=no ;;
|
2943
|
791 --enable-3dfx) _3dfx=yes ;;
|
|
792 --disable-3dfx) _3dfx=no ;;
|
|
793 --enable-tdfxfb) _tdfxfb=yes ;;
|
|
794 --disable-tdfxfb) _tdfxfb=no ;;
|
3275
|
795 --enable-directfb) _directfb=yes ;;
|
|
796 --disable-directfb) _directfb=no ;;
|
2943
|
797 --enable-mtrr) _mtrr=yes ;;
|
|
798 --disable-mtrr) _mtrr=no ;;
|
2961
|
799 --enable-largefiles) _largefiles=yes ;;
|
2962
|
800 --disable-largefiles) _largefiles=no ;;
|
2947
|
801 --enable-vo2) _vo2=yes ;;
|
|
802 --disable-vo2) _vo2=no ;;
|
3004
|
803 --enable-shm) _shm=yes ;;
|
|
804 --disable-shm) _shm=no ;;
|
3206
|
805 --enable-select) _select=yes ;;
|
|
806 --disable-select) _select=no ;;
|
|
807
|
|
808 --enable-dga) _dga=auto ;; # as we don't know if it's 1 or 2
|
|
809 --enable-dga=*) _dga=`echo $ac_option | cut -d '=' -f 2` ;;
|
|
810 --disable-dga) _dga=no ;;
|
2943
|
811
|
|
812 --language=*)
|
|
813 LINGUAS=`echo $ac_option | cut -d '=' -f 2`
|
|
814 ;;
|
|
815
|
|
816 --with-win32libdir=*)
|
|
817 _win32libdir=`echo $ac_option | cut -d '=' -f 2`
|
|
818 _win32=yes
|
|
819 ;;
|
|
820 --with-xanimlibdir=*)
|
|
821 _xanimlibdir=`echo $ac_option | cut -d '=' -f 2`
|
|
822 _xanim=yes
|
|
823 ;;
|
|
824 --with-csslibdir=*)
|
|
825 _csslibdir=`echo $ac_option | cut -d '=' -f 2`
|
|
826 _css=yes
|
|
827 ;;
|
|
828 --with-mlibdir=*)
|
|
829 _mlibdir=`echo $ac_option | cut -d '=' -f 2`
|
|
830 _mlib=yes
|
|
831 ;;
|
|
832
|
|
833 --enable-profile)
|
|
834 _profile='-p'
|
|
835 ;;
|
|
836 --enable-debug)
|
|
837 _debug='-g'
|
|
838 ;;
|
|
839 --enable-debug=*)
|
|
840 _debug=`echo $_echo_n '-g'$_echo_c; echo $ac_option | cut -d '=' -f 2`
|
|
841 ;;
|
|
842
|
|
843 --enable-sse) _sse=yes ;;
|
|
844 --disable-sse) _sse=no ;;
|
|
845 --enable-mmx2) _mmx2=yes ;;
|
|
846 --disable-mmx2) _mmx2=no ;;
|
|
847 --enable-3dnow) _3dnow=yes ;;
|
|
848 --disable-3dnow) _3dnow=no _3dnowex=no ;;
|
|
849 --enable-3dnowex) _3dnow=yes _3dnowex=yes ;;
|
|
850 --disable-3dnowex) _3dnowex=no ;;
|
|
851 --enable-mmx) _mmx=yes ;;
|
|
852 --disable-mmx) # without mmx 3Dnow! and stuff is also not possible
|
|
853 _3dnow=no _3dnowex=no _mmx=no _mmx2=no ;;
|
|
854
|
|
855 --enable-win32) _win32=yes ;;
|
|
856 --disable-win32) _win32=no _dshow=no ;;
|
|
857 --enable-dshow) _win32=yes _dshow=yes ;;
|
|
858 --disable-dshow) _dshow=no ;;
|
|
859
|
|
860 --with-x11incdir=*)
|
|
861 _inc_x11=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
|
|
862 ;;
|
|
863 --with-x11libdir=*)
|
|
864 _ld_x11=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
|
|
865 ;;
|
|
866 --with-sdl-config=*)
|
|
867 _sdlconfig=`echo $ac_option | cut -d '=' -f 2`
|
|
868 ;;
|
|
869 --with-gtk-config=*)
|
|
870 _gtkconfig=`echo $ac_option | cut -d '=' -f 2`
|
|
871 ;;
|
|
872 --with-glib-config=*)
|
|
873 _glibconfig=`echo $ac_option | cut -d '=' -f 2`
|
|
874 ;;
|
|
875 --with-madlibdir=*)
|
|
876 _ld_mad=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
|
|
877 ;;
|
|
878
|
|
879 --prefix=*)
|
|
880 _prefix=`echo $ac_option | cut -d '=' -f 2`
|
|
881 ;;
|
|
882 --datadir=*)
|
|
883 _datadir=`echo $ac_option | cut -d '=' -f 2`
|
|
884 ;;
|
|
885
|
2947
|
886
|
2943
|
887 *)
|
|
888 echo "Unknown parameter: $ac_option"
|
|
889 ;;
|
|
890
|
|
891 esac
|
|
892 done
|
|
893
|
|
894 # Atmos: moved this here, to be correct, if --prefix is specified
|
|
895 test -z "$_datadir" && _datadir=$_prefix"/share/mplayer"
|
|
896
|
|
897
|
|
898
|
2997
|
899 if x86 ; then
|
2943
|
900 # Checking assembler (_as) compatibility...
|
|
901 # Added workaround for older as that reads from stdin by default - atmos
|
|
902 as_version=`echo '' | $_as -version 2>&1 | sed -n 's/^.*assembler \(version \)*\([0-9.]*\).*$/\2/p'`
|
|
903 echocheck "assembler ($_as $as_version)"
|
|
904
|
|
905 _pref_as_version='2.9.1'
|
|
906 echo 'nop' > $TMPS
|
|
907 if test "$_mmx" = yes ; then
|
|
908 echo 'emms' >> $TMPS
|
|
909 fi
|
|
910 if test "$_3dnow" = yes ; then
|
|
911 _pref_as_version='2.10.1'
|
|
912 echo 'femms' >> $TMPS
|
|
913 fi
|
|
914 if test "$_3dnowex" = yes ; then
|
|
915 _pref_as_version='2.10.1'
|
|
916 echo 'pswapd %mm0, %mm0' >> $TMPS
|
|
917 fi
|
|
918 if test "$_mmx2" = yes ; then
|
|
919 _pref_as_version='2.10.1'
|
|
920 echo 'movntq %mm0, (%eax)' >> $TMPS
|
|
921 fi
|
|
922 if test "$_sse" = yes ; then
|
|
923 _pref_as_version='2.10.1'
|
|
924 echo 'xorps %xmm0, %xmm0' >> $TMPS
|
|
925 fi
|
|
926 #if test "$_sse2" = yes ; then
|
|
927 # _pref_as_version='2.11'
|
|
928 # echo 'xorpd %xmm0, %xmm0' >> $TMPS
|
|
929 #fi
|
|
930 $_as $TMPS -o $TMPO > /dev/null 2>&1 || as_verc_fail=yes
|
|
931
|
|
932 if test "$as_verc_fail" != yes ; then
|
|
933 echores "ok"
|
|
934 else
|
|
935 echores "failed"
|
|
936 echo "Upgrade binutils to ${_pref_as_version} ..."
|
|
937 die "obsolete binutils version"
|
|
938 fi
|
|
939 fi
|
|
940
|
|
941 _def_mmx='#undef HAVE_MMX'
|
|
942 test "$_mmx" = yes && _def_mmx='#define HAVE_MMX 1'
|
|
943 _def_mmx2='#undef HAVE_MMX2'
|
|
944 test "$_mmx2" = yes && _def_mmx2='#define HAVE_MMX2 1'
|
|
945 _def_3dnow='#undef HAVE_3DNOW'
|
|
946 test "$_3dnow" = yes && _def_3dnow='#define HAVE_3DNOW 1'
|
|
947 _def_3dnowex='#undef HAVE_3DNOWEX'
|
|
948 test "$_3dnowex" = yes && _def_3dnowex='#define HAVE_3DNOWEX 1'
|
|
949 _def_sse='#undef HAVE_SSE'
|
|
950 test "$_sse" = yes && _def_sse='#define HAVE_SSE 1'
|
|
951
|
|
952
|
|
953 # Checking kernel version...
|
2997
|
954 if x86 && linux ; then
|
2943
|
955 _k_verc_problem=no
|
|
956 kernel_version=`uname -r 2>&1`
|
|
957 echocheck "$system_name kernel version"
|
|
958 case "$kernel_version" in
|
|
959 '') kernel_version="?.??"; _k_verc_fail=yes;;
|
|
960 [0-1].[0-9].[0-9]*|2.[0-3].[0-9]*)
|
|
961 _k_verc_problem=yes;;
|
|
962 esac
|
|
963 if test "$_k_verc_problem" = yes && test "$_sse" = yes ; then
|
|
964 _k_verc_fail=yes
|
|
965 fi
|
|
966 if test "$_k_verc_fail" ; then
|
|
967 echores "$kernel_version, fail"
|
|
968 echo "WARNING! If you want to run mplayer on this system, get prepared for problems!"
|
3127
|
969 echo "2.2.x has limited SSE support. Upgrade kernel or use --disable-sse if you"
|
|
970 echo "experience crashes. MPlayer tries to autodetect if your kernel correctly supports"
|
|
971 echo "SSE, but you have been warned! If you are using kernel older then 2.2.x you must"
|
|
972 echo "upgrade it to get SSE support!"
|
|
973 # die "old kernel for this cpu" # works fine on some 2.2.x so don't die (later check will test)
|
2943
|
974 else
|
|
975 echores "$kernel_version, ok"
|
|
976 fi
|
|
977 fi
|
|
978
|
|
979
|
|
980
|
|
981 ######################
|
|
982 # MAIN TESTS GO HERE #
|
|
983 ######################
|
|
984
|
|
985
|
3189
|
986 echocheck "extra headers"
|
|
987 if test "$_extraincdir" ; then
|
|
988 echores "$_extraincdir"
|
|
989 else
|
|
990 echores "none"
|
|
991 fi
|
|
992
|
|
993
|
|
994 echocheck "extra libs"
|
|
995 if test "$_extralibdir" ; then
|
|
996 echores "$_extralibdir"
|
|
997 else
|
|
998 echores "none"
|
|
999 fi
|
2943
|
1000
|
|
1001
|
|
1002 echocheck "kstat"
|
|
1003 cat > $TMPC << EOF
|
3029
|
1004 #include <kstat.h>
|
|
1005 int main(void) { (void) kstat_open(); (void) kstat_close(0); return 0; }
|
2943
|
1006 EOF
|
|
1007 _kstat=no
|
|
1008 cc_check -lkstat && _kstat=yes
|
|
1009 if test "$_kstat" = yes ; then
|
3065
|
1010 _ld_arch="-lkstat $_ld_arch"
|
2943
|
1011 fi
|
|
1012 if test "$_kstat" = yes ; then
|
|
1013 _def_kstat="#define HAVE_LIBKSTAT 1"
|
|
1014 else
|
|
1015 _def_kstat="#undef HAVE_LIBKSTAT"
|
|
1016 fi
|
|
1017 echores "$_kstat"
|
|
1018
|
|
1019
|
3029
|
1020 echocheck "posix4"
|
3028
3bcd9ad27b6d
added dynamic linking flags runtime detection (-rdynamic - also now MPlayer compiles and runs fine under QNX)
alex
diff
changeset
|
1021 # required for nanosleep on some systems
|
2948
|
1022 cat > $TMPC << EOF
|
3029
|
1023 #include <time.h>
|
|
1024 int main(void) { (void) nanosleep(0, 0); return 0; }
|
2948
|
1025 EOF
|
2943
|
1026 _posix4=no
|
|
1027 cc_check -lposix4 && _posix4=yes
|
|
1028 if test "$_posix4" = yes ; then
|
3065
|
1029 _ld_arch="-lposix4 $_ld_arch"
|
2943
|
1030 fi
|
|
1031 echores "$_posix4"
|
|
1032
|
|
1033
|
3089
|
1034 echocheck "nanosleep"
|
|
1035 # also check for nanosleep
|
|
1036 cat > $TMPC << EOF
|
|
1037 #include <time.h>
|
|
1038 int main(void) { (void) nanosleep(0, 0); return 0; }
|
|
1039 EOF
|
|
1040 _nanosleep=no
|
|
1041 cc_check $_ld_arch && _nanosleep=yes
|
|
1042 if test "$_nanosleep" = yes ; then
|
|
1043 _def_nanosleep='#define HAVE_NANOSLEEP 1'
|
|
1044 else
|
|
1045 _def_nanosleep='#undef HAVE_NANOSLEEP'
|
|
1046 fi
|
|
1047 echores "$_nanosleep"
|
|
1048
|
|
1049
|
2943
|
1050 echocheck "socklib"
|
|
1051 # for Solaris (socket stuff is in -lsocket, gethostbyname and friends in -lnsl):
|
|
1052 cat > $TMPC << EOF
|
3029
|
1053 #include <netdb.h>
|
|
1054 int main(void) { (void) gethostbyname(0); return 0; }
|
2943
|
1055 EOF
|
|
1056 cc_check $_ld_sock -lsocket && _ld_sock="$_ld_sock -lsocket"
|
|
1057 cc_check $_ld_sock -lnsl && _ld_sock="$_ld_sock -lnsl"
|
2945
|
1058 if test "$_ld_sock" ; then
|
3248
|
1059 echores "yes (using $_ld_sock)"
|
2945
|
1060 else
|
3248
|
1061 echores "no"
|
2945
|
1062 fi
|
2943
|
1063
|
|
1064
|
|
1065 echocheck "malloc.h"
|
|
1066 cat > $TMPC << EOF
|
|
1067 #include <malloc.h>
|
3029
|
1068 int main(void) { (void) malloc(0); return 0; }
|
2943
|
1069 EOF
|
|
1070 _malloc=no
|
|
1071 cc_check && _malloc=yes
|
|
1072 if test "$_malloc" = yes ; then
|
|
1073 _def_malloc='#define HAVE_MALLOC_H 1'
|
|
1074 else
|
|
1075 _def_malloc='#undef HAVE_MALLOC_H'
|
|
1076 fi
|
|
1077 # malloc.h emits a warning in FreeBSD
|
|
1078 freebsd && _def_malloc='#undef HAVE_MALLOC_H'
|
|
1079 echores "$_malloc"
|
|
1080
|
|
1081
|
|
1082 echocheck "memalign()"
|
|
1083 # XXX restrict to x86 ? extend to other CPUs/cacheline sizes ?
|
|
1084 cat > $TMPC << EOF
|
|
1085 #include <malloc.h>
|
3029
|
1086 int main (void) { (void) memalign(64, sizeof(char)); return 0; }
|
2943
|
1087 EOF
|
|
1088 _memalign=no
|
|
1089 cc_check && _memalign=yes
|
|
1090 if test "$_memalign" = yes ; then
|
|
1091 _def_memalign='#define HAVE_MEMALIGN 1'
|
|
1092 else
|
|
1093 _def_memalign='#undef HAVE_MEMALIGN'
|
|
1094 fi
|
|
1095 echores "$_memalign"
|
|
1096
|
|
1097
|
|
1098 echocheck "alloca.h"
|
|
1099 cat > $TMPC << EOF
|
|
1100 #include <alloca.h>
|
3029
|
1101 int main(void) { (void) alloca(0); return 0; }
|
2943
|
1102 EOF
|
|
1103 _alloca=no
|
|
1104 cc_check && _alloca=yes
|
|
1105 if cc_check ; then
|
|
1106 _def_alloca='#define HAVE_ALLOCA_H 1'
|
|
1107 else
|
|
1108 _def_alloca='#undef HAVE_ALLOCA_H'
|
|
1109 fi
|
|
1110 echores "$_alloca"
|
|
1111
|
|
1112
|
|
1113 echocheck "mman.h"
|
|
1114 cat > $TMPC << EOF
|
|
1115 #include <sys/types.h>
|
|
1116 #include <sys/mman.h>
|
3029
|
1117 int main(void) { (void) mmap(0, 0, 0, 0, 0, 0); return 0; }
|
2943
|
1118 EOF
|
|
1119 _mman=no
|
|
1120 cc_check && _mman=yes
|
|
1121 if test "$_mman" = yes ; then
|
|
1122 _def_mman='#define HAVE_SYS_MMAN_H 1'
|
|
1123 else
|
|
1124 _def_mman='#undef HAVE_SYS_MMAN_H'
|
|
1125 fi
|
|
1126 echores "$_mman"
|
|
1127
|
|
1128
|
2973
|
1129 echocheck "dynamic loader"
|
2943
|
1130 cat > $TMPC << EOF
|
|
1131 #include <dlfcn.h>
|
2973
|
1132 int main(void) { dlopen(0, 0); dlclose(0); dlsym(0, 0); return 0; }
|
2943
|
1133 EOF
|
|
1134 _dl=no
|
2973
|
1135 if cc_check ; then
|
|
1136 _dl=yes
|
|
1137 elif cc_check -ldl ; then
|
|
1138 _dl=yes
|
|
1139 _ld_dl='-ldl'
|
|
1140 fi
|
2943
|
1141 if test "$_dl" = yes ; then
|
|
1142 _def_dl='#define HAVE_LIBDL 1'
|
|
1143 else
|
|
1144 _def_dl='#undef HAVE_LIBDL'
|
|
1145 fi
|
|
1146 echores "$_dl"
|
|
1147
|
3004
|
1148
|
3061
|
1149 #echocheck "dynamic linking"
|
3065
|
1150 # FIXME !! make this dynamic detection to work and modify at the end (search _ld_dl_dynamic)
|
3028
3bcd9ad27b6d
added dynamic linking flags runtime detection (-rdynamic - also now MPlayer compiles and runs fine under QNX)
alex
diff
changeset
|
1151 # also gcc flags are different, but ld flags aren't (-Bdynamic/-Bstatic/-Bsymbolic)
|
3bcd9ad27b6d
added dynamic linking flags runtime detection (-rdynamic - also now MPlayer compiles and runs fine under QNX)
alex
diff
changeset
|
1152 #cat > $TMPC << EOF
|
3bcd9ad27b6d
added dynamic linking flags runtime detection (-rdynamic - also now MPlayer compiles and runs fine under QNX)
alex
diff
changeset
|
1153 #int main(void) { return 0; }
|
3bcd9ad27b6d
added dynamic linking flags runtime detection (-rdynamic - also now MPlayer compiles and runs fine under QNX)
alex
diff
changeset
|
1154 #EOF
|
3bcd9ad27b6d
added dynamic linking flags runtime detection (-rdynamic - also now MPlayer compiles and runs fine under QNX)
alex
diff
changeset
|
1155 #if cc_check -rdynamic ; then
|
3bcd9ad27b6d
added dynamic linking flags runtime detection (-rdynamic - also now MPlayer compiles and runs fine under QNX)
alex
diff
changeset
|
1156 # _ld_dl_dynamic='-rdynamic'
|
3bcd9ad27b6d
added dynamic linking flags runtime detection (-rdynamic - also now MPlayer compiles and runs fine under QNX)
alex
diff
changeset
|
1157 #elif cc_check -Bdynamic ; then
|
3bcd9ad27b6d
added dynamic linking flags runtime detection (-rdynamic - also now MPlayer compiles and runs fine under QNX)
alex
diff
changeset
|
1158 # _ld_dl_dynamic='-Bdynamic'
|
3bcd9ad27b6d
added dynamic linking flags runtime detection (-rdynamic - also now MPlayer compiles and runs fine under QNX)
alex
diff
changeset
|
1159 #elif cc_check ; then
|
3bcd9ad27b6d
added dynamic linking flags runtime detection (-rdynamic - also now MPlayer compiles and runs fine under QNX)
alex
diff
changeset
|
1160 # _ld_dl_dynamic=''
|
3bcd9ad27b6d
added dynamic linking flags runtime detection (-rdynamic - also now MPlayer compiles and runs fine under QNX)
alex
diff
changeset
|
1161 #fi
|
3061
|
1162 #echores "using $_ld_dl_dynamic"
|
3028
3bcd9ad27b6d
added dynamic linking flags runtime detection (-rdynamic - also now MPlayer compiles and runs fine under QNX)
alex
diff
changeset
|
1163
|
3bcd9ad27b6d
added dynamic linking flags runtime detection (-rdynamic - also now MPlayer compiles and runs fine under QNX)
alex
diff
changeset
|
1164
|
2973
|
1165 echocheck "pthread"
|
|
1166 cat > $TMPC << EOF
|
3001
|
1167 #include <pthread.h>
|
3506
|
1168 void* func(void *arg) { return arg; }
|
|
1169 int main(void) { pthread_t tid; return pthread_create (&tid, 0, func, 0) == 0 ? 0 : 1; }
|
2973
|
1170 EOF
|
3506
|
1171 if ( cc_check && $TMPO ) ; then # QNX
|
3010
|
1172 _ld_pthread=''
|
3506
|
1173 elif ( cc_check -lpthread && $TMPO ) ; then
|
2973
|
1174 _ld_pthread='-lpthread'
|
3506
|
1175 elif ( cc_check -pthread && $TMPO ) ; then
|
2973
|
1176 _ld_pthread='-pthread'
|
|
1177 else
|
3028
3bcd9ad27b6d
added dynamic linking flags runtime detection (-rdynamic - also now MPlayer compiles and runs fine under QNX)
alex
diff
changeset
|
1178 die "Lib pthread not found. (needed by windows and networking stuff)"
|
2973
|
1179 fi
|
3248
|
1180 echores "yes (using $_ld_pthread)"
|
2973
|
1181
|
|
1182
|
2943
|
1183 echocheck "sys/soundcard.h"
|
|
1184 cat > $TMPC << EOF
|
|
1185 #include <sys/soundcard.h>
|
|
1186 int main(void) { return 0; }
|
|
1187 EOF
|
|
1188 _sys_soundcard=no
|
|
1189 cc_check && _sys_soundcard=yes
|
|
1190 if test "$_sys_soundcard" = yes ; then
|
|
1191 _def_sys_soundcard='#define HAVE_SYS_SOUNDCARD_H 1'
|
|
1192 else
|
|
1193 _def_sys_soundcard='#undef HAVE_SYS_SOUNDCARD_H'
|
|
1194 fi
|
|
1195 echores "$_sys_soundcard"
|
|
1196
|
|
1197
|
|
1198 echocheck "termcap"
|
2948
|
1199 if test "$_termcap" = auto ; then
|
2943
|
1200 cat > $TMPC <<EOF
|
|
1201 int main(void) { return 0; }
|
|
1202 EOF
|
3161
|
1203 _termcap=no
|
2948
|
1204 cc_check -ltermcap && _termcap=yes
|
2943
|
1205 fi
|
|
1206 if test "$_termcap" = yes ; then
|
|
1207 _def_termcap='#define USE_TERMCAP 1'
|
|
1208 _ld_termcap='-ltermcap'
|
|
1209 else
|
|
1210 _def_termcap='#undef USE_TERMCAP'
|
|
1211 fi
|
|
1212 echores "$_termcap"
|
|
1213
|
|
1214
|
3007
|
1215 echocheck "termios"
|
|
1216 if test "$_termios" = auto ; then
|
|
1217 cat > $TMPC <<EOF
|
|
1218 #include <sys/termios.h>
|
|
1219 int main(void) { return 0; }
|
|
1220 EOF
|
3161
|
1221 _termios=no
|
3007
|
1222 cc_check && _termios=yes
|
3281
|
1223 _def_termios_h_name='sys/termios.h'
|
3007
|
1224 fi
|
3281
|
1225 # second test:
|
|
1226 if test "$_termios" = no ; then
|
|
1227 cat > $TMPC <<EOF
|
|
1228 #include <termios.h>
|
|
1229 int main(void) { return 0; }
|
|
1230 EOF
|
|
1231 _termios=no
|
|
1232 cc_check && _termios=yes
|
|
1233 _def_termios_h_name='termios.h'
|
|
1234 fi
|
|
1235
|
3007
|
1236 if test "$_termios" = yes ; then
|
3035
|
1237 _def_termios='#define HAVE_TERMIOS 1'
|
3281
|
1238 _def_termios_h='#undef HAVE_TERMIOS_H'
|
|
1239 _def_termios_sys_h='#undef HAVE_SYS_TERMIOS_H'
|
|
1240
|
|
1241 if test "$_def_termios_h_name" = 'sys/termios.h' ; then
|
|
1242 _def_termios_sys_h='#define HAVE_SYS_TERMIOS_H 1'
|
|
1243 elif test "$_def_termios_h_name" = 'termios.h' ; then
|
|
1244 _def_termios_h='#define HAVE_TERMIOS_H 1'
|
|
1245 fi
|
|
1246 else
|
3035
|
1247 _def_termios='#undef HAVE_TERMIOS'
|
3281
|
1248 _def_termios_h_name=''
|
3007
|
1249 fi
|
3281
|
1250 echores "$_termios (using: $_def_termios_h_name)"
|
3007
|
1251
|
|
1252
|
3004
|
1253 echocheck "shm"
|
3005
|
1254 if test "$_shm" = auto ; then
|
|
1255 cat > $TMPC << EOF
|
3007
|
1256 #include <sys/types.h>
|
3004
|
1257 #include <sys/shm.h>
|
|
1258 int main(void) { shmget(0, 0, 0); shmat(0, 0, 0); shmctl(0, 0, 0); return 0; }
|
|
1259 EOF
|
3161
|
1260 _shm=no
|
3005
|
1261 cc_check && _shm=yes
|
|
1262 fi
|
3004
|
1263 if test "$_shm" = yes ; then
|
|
1264 _def_shm='#define HAVE_SHM 1'
|
|
1265 else
|
|
1266 _def_shm='#undef HAVE_SHM'
|
|
1267 fi
|
|
1268 echores "$_shm"
|
|
1269
|
|
1270
|
2943
|
1271 echocheck "3dfx"
|
|
1272 if test "$_3dfx" = yes ; then
|
|
1273 _def_3dfx='#define HAVE_3DFX 1'
|
|
1274 _vosrc="$_vosrc vo_3dfx.c"
|
3161
|
1275 _vomodules="3dfx $_vomodules"
|
2943
|
1276 else
|
|
1277 _def_3dfx='#undef HAVE_3DFX'
|
|
1278 fi
|
|
1279 echores "$_3dfx"
|
|
1280
|
|
1281
|
|
1282 echocheck "tdfxfb"
|
|
1283 if test "$_tdfxfb" = yes ; then
|
|
1284 _def_tdfxfb='#define HAVE_TDFXFB 1'
|
|
1285 _vosrc="$_vosrc vo_tdfxfb.c"
|
3161
|
1286 _vomodules="tdfxfb $_vomodules"
|
2943
|
1287 else
|
|
1288 _def_tdfxfb='#undef HAVE_TDFXFB'
|
|
1289 fi
|
|
1290 echores "$_tdfxfb"
|
|
1291
|
|
1292
|
3275
|
1293 echocheck "DirectFB"
|
|
1294 if test "$_directfb" = auto ; then
|
|
1295 _directfb=no
|
|
1296 cat > $TMPC <<EOF
|
|
1297 #include <directfb.h>
|
|
1298 int main(void) { IDirectFB *foo; return 0; }
|
|
1299 EOF
|
|
1300 cc_check -ldirectfb && _directfb=yes
|
|
1301 fi
|
|
1302 if test "$_directfb" = yes ; then
|
|
1303 _def_directfb='#define HAVE_DIRECTFB 1'
|
|
1304 _vosrc="$_vosrc vo_directfb.c"
|
3337
|
1305 _vomodules="directfb $_vomodules"
|
3275
|
1306 _ld_directfb='-ldirectfb'
|
|
1307 else
|
|
1308 _def_directfb='#undef HAVE_DIRECTFB'
|
|
1309 fi
|
|
1310 echores "$_directfb"
|
|
1311
|
|
1312
|
2943
|
1313 # Checking for localization ...
|
|
1314 echocheck "language"
|
|
1315 test -z "$LINGUAS" && LINGUAS="en"
|
|
1316 if test -f "help_mp-${LINGUAS}.h" ; then
|
|
1317 echores "using ${LINGUAS}"
|
|
1318 else
|
|
1319 echores "${LINGUAS} not found, using en"
|
|
1320 LINGUAS="en"
|
|
1321 fi
|
|
1322 _mp_help="help_mp-${LINGUAS}.h"
|
|
1323 test -f help_mp-${LINGUAS}.h || die "help_mp-${LINGUAS}.h not found"
|
|
1324
|
|
1325
|
|
1326 echocheck "vsscanf()"
|
|
1327 cat > $TMPC << EOF
|
|
1328 #include <stdarg.h>
|
|
1329 int main(void) { vsscanf(); return 0; }
|
|
1330 EOF
|
|
1331 _vsscanf=no
|
|
1332 cc_check && _vsscanf=yes
|
|
1333 if test "$_vsscanf" = yes ; then
|
|
1334 _def_vsscanf='#define HAVE_VSSCANF 1'
|
|
1335 else
|
|
1336 _def_vsscanf='#undef HAVE_VSSCANF'
|
|
1337 fi
|
|
1338 echores "$_vsscanf"
|
|
1339
|
|
1340
|
|
1341 echocheck "X11 headers"
|
3506
|
1342 if test -z "$_inc_x11" ; then
|
2943
|
1343 for I in /usr/include /usr/X11R6/include /usr/X11/include /usr/openwin/include ; do
|
|
1344 if test -d "$I/X11" ; then
|
3506
|
1345 _inc_x11="-I$I"
|
3189
|
1346 echores "yes (found: $I)"
|
2943
|
1347 break
|
|
1348 fi
|
|
1349 done
|
3506
|
1350 if test -z "$_inc_x11" ; then
|
|
1351 _x11=no
|
|
1352 echores "not found"
|
|
1353 fi
|
|
1354 else
|
|
1355 echores "yes (use: $_inc_x11)"
|
2943
|
1356 fi
|
3506
|
1357 if test "$_inc_x11" = "-I/usr/include" ; then
|
|
1358 _inc_x11=""
|
2943
|
1359 fi
|
|
1360
|
|
1361
|
|
1362 echocheck "X11 libs"
|
3506
|
1363 if test -z "$_ld_x11" ; then
|
2943
|
1364 for I in /usr/X11R6/lib /usr/X11/lib /usr/lib32 /usr/openwin/lib ; do
|
|
1365 if test -d "$I" ; then
|
3506
|
1366 _ld_x11="-L$I"
|
3189
|
1367 echores "yes (found: $I)"
|
2943
|
1368 break;
|
|
1369 fi
|
|
1370 done
|
3506
|
1371 if test -z "$_ld_x11" ; then
|
|
1372 _x11=no
|
|
1373 echores "not found"
|
|
1374 fi
|
|
1375 else
|
|
1376 echores "yes (use: $_ld_x11)"
|
2943
|
1377 fi
|
3506
|
1378 _ld_x11="$_ld_x11 -lX11 -lXext $_ld_sock"
|
2943
|
1379
|
|
1380
|
2947
|
1381 #########
|
|
1382 # VIDEO #
|
|
1383 #########
|
|
1384
|
2943
|
1385 echocheck "X11"
|
2998
|
1386 if test "$_x11" = auto || test "$_x11" = yes ; then
|
2943
|
1387 cat > $TMPC <<EOF
|
2988
|
1388 #include <X11/Xlib.h>
|
|
1389 #include <X11/Xutil.h>
|
|
1390 int main(void) { (void) XCreateWindow(0,0,0,0,0,0,0,0,0,0,0,0); return 0; }
|
2943
|
1391 EOF
|
|
1392 _x11=no
|
2988
|
1393 cc_check $_inc_x11 $_ld_x11 && _x11=yes
|
2943
|
1394 fi
|
|
1395 if test "$_x11" = yes ; then
|
|
1396 _def_x11='#define HAVE_X11 1'
|
|
1397 _vosrc="$_vosrc vo_x11.c"
|
3161
|
1398 _vomodules="x11 $_vomodules"
|
2943
|
1399 else
|
|
1400 _def_x11='#undef HAVE_X11'
|
2998
|
1401 _inc_x11=''
|
|
1402 _ld_x11=''
|
2943
|
1403 fi
|
|
1404 echores "$_x11"
|
|
1405
|
|
1406
|
2945
|
1407 echocheck "DPMS"
|
2943
|
1408 _xdpms3=no
|
|
1409 if test "$_x11" = yes ; then
|
|
1410 cat > $TMPC <<EOF
|
|
1411 #include <X11/Xmd.h>
|
|
1412 #include <X11/Xlib.h>
|
|
1413 #include <X11/Xutil.h>
|
|
1414 #include <X11/Xatom.h>
|
|
1415 #include <X11/extensions/dpms.h>
|
3010
|
1416 int main(void) {
|
|
1417 (void) DPMSQueryExtension(0, 0, 0);
|
|
1418 }
|
2943
|
1419 EOF
|
2988
|
1420 cc_check $_inc_x11 $_ld_x11 -lXdpms && _xdpms3=yes
|
2943
|
1421 fi
|
|
1422 _xdpms4=no
|
|
1423 if test "$_x11" = yes ; then
|
|
1424 cat > $TMPC <<EOF
|
|
1425 #include <X11/Xlib.h>
|
|
1426 #include <X11/extensions/dpms.h>
|
|
1427 int main(void) {
|
|
1428 (void) DPMSQueryExtension(0, 0, 0);
|
|
1429 }
|
|
1430 EOF
|
2945
|
1431 cc_check $_inc_x11 $_ld_x11 && _xdpms4=yes
|
2943
|
1432 fi
|
|
1433
|
|
1434 if test "$_xdpms4" = yes ; then
|
|
1435 _def_xdpms='#define HAVE_XDPMS 1'
|
3248
|
1436 echores "yes (using Xdpms 4)"
|
2943
|
1437 elif test "$_xdpms3" = yes ; then
|
|
1438 _def_xdpms='#define HAVE_XDPMS 1'
|
3022
|
1439 _ld_x11="$_ld_x11 -lXdpms"
|
3248
|
1440 echores "yes (using Xdpms 3)"
|
2943
|
1441 else
|
|
1442 _def_xdpms='#undef HAVE_XDPMS'
|
|
1443 echores "no"
|
|
1444 fi
|
|
1445
|
|
1446
|
|
1447 echocheck "Xv"
|
3057
|
1448 if test "$_x11" = yes && test "$_xv" != no ; then
|
2943
|
1449 cat > $TMPC <<EOF
|
3029
|
1450 #include <X11/Xlib.h>
|
|
1451 #include <X11/extensions/Xvlib.h>
|
|
1452 int main(void) { (void) XvGetPortAttribute(0, 0, 0, 0); return 0; }
|
2943
|
1453 EOF
|
|
1454 _xv=no
|
2988
|
1455 cc_check $_inc_x11 $_ld_x11 -lXv && _xv=yes
|
2943
|
1456 else
|
|
1457 _xv=no
|
|
1458 fi
|
|
1459 if test "$_xv" = yes ; then
|
|
1460 _def_xv='#define HAVE_XV 1'
|
|
1461 _ld_xv='-lXv'
|
|
1462 _vosrc="$_vosrc vo_xv.c"
|
3161
|
1463 _vomodules="xv $_vomodules"
|
2943
|
1464 else
|
|
1465 _def_xv='#undef HAVE_XV'
|
|
1466 fi
|
|
1467 echores "$_xv"
|
|
1468
|
|
1469
|
|
1470 echocheck "Xinerama"
|
3057
|
1471 if test "$_x11" = yes && test "$_xinerama" != no ; then
|
2943
|
1472 cat > $TMPC <<EOF
|
3029
|
1473 #include <X11/Xlib.h>
|
|
1474 #include <X11/extensions/Xinerama.h>
|
|
1475 int main(void) { (void) XineramaIsActive(0); return 0; }
|
2943
|
1476 EOF
|
|
1477 _xinerama=no
|
2988
|
1478 cc_check $_inc_x11 $_ld_x11 -lXinerama && _xinerama=yes
|
2943
|
1479 else
|
|
1480 _xinerama=no
|
|
1481 fi
|
|
1482 if test "$_xinerama" = yes ; then
|
|
1483 _def_xinerama='#define HAVE_XINERAMA 1'
|
|
1484 _ld_xinerama='-lXinerama'
|
|
1485 else
|
|
1486 _def_xinerama='#undef HAVE_XINERAMA'
|
|
1487 fi
|
|
1488 echores "$_xinerama"
|
|
1489
|
|
1490
|
|
1491 # Note: the -lXxf86vm library is the VideoMode extension and though it's not
|
|
1492 # needed for DGA, AFAIK every distribution packages together with DGA stuffs
|
|
1493 # named 'X extensions' or something similar.
|
|
1494 # This check may be useful for future mplayer versions (to change resolution)
|
|
1495 # If you run into problems, remove '-lXxf86vm'.
|
|
1496 echocheck "Xxf86vm"
|
3057
|
1497 if test "$_x11" = yes && test "$_vm" != no ; then
|
2943
|
1498 cat > $TMPC <<EOF
|
3029
|
1499 #include <X11/Xlib.h>
|
|
1500 #include <X11/extensions/xf86vmode.h>
|
|
1501 int main(void) { (void) XF86VidModeQueryExtension(0, 0, 0); return 0; }
|
2943
|
1502 EOF
|
|
1503 _vm=no
|
2988
|
1504 cc_check $_inc_x11 $_ld_x11 -lXxf86vm && _vm=yes
|
2943
|
1505 else
|
|
1506 _vm=no
|
|
1507 fi
|
|
1508 if test "$_vm" = yes ; then
|
|
1509 _def_vm='#define HAVE_XF86VM 1'
|
|
1510 _ld_vm='-lXxf86vm'
|
|
1511 else
|
|
1512 _def_vm='#undef HAVE_XF86VM'
|
|
1513 fi
|
|
1514 echores "$_vm"
|
|
1515
|
|
1516
|
|
1517 echocheck "DGA"
|
3206
|
1518 # Version 2 is preferred to version 1 if available
|
|
1519 if test "$_dga" = auto ; then
|
2943
|
1520 cat > $TMPC << EOF
|
|
1521 #include <X11/Xlib.h>
|
|
1522 #include <X11/extensions/xf86dga.h>
|
3206
|
1523 int main (void) { (void) XF86DGASetViewPort(0, 0, 0, 0); return 0; }
|
2943
|
1524 EOF
|
|
1525 _dga=no
|
3206
|
1526 cc_check $_inc_x11 $_ld_x11 -lXxf86dga -lXxf86vm && _dga=1
|
|
1527
|
|
1528 cat > $TMPC << EOF
|
|
1529 #include <X11/Xlib.h>
|
|
1530 #include <X11/extensions/xf86dga.h>
|
|
1531 int main (void) { (void) XDGASetViewport(0, 0, 0, 0, 0); return 0; }
|
|
1532 EOF
|
|
1533 cc_check $_inc_x11 $_ld_x11 -lXxf86dga && _dga=2
|
2943
|
1534 fi
|
3206
|
1535
|
|
1536 _def_dga='#undef HAVE_DGA'
|
|
1537 _def_dga2='#undef HAVE_DGA2'
|
|
1538 if test "$_dga" = 1 ; then
|
2943
|
1539 _def_dga='#define HAVE_DGA 1'
|
3217
|
1540 _ld_dga='-lXxf86dga'
|
2943
|
1541 _vosrc="$_vosrc vo_dga.c"
|
3161
|
1542 _vomodules="dga $_vomodules"
|
3248
|
1543 echores "yes (using DGA 1.0)"
|
3206
|
1544 elif test "$_dga" = 2 ; then
|
3217
|
1545 _def_dga='#define HAVE_DGA 1'
|
3206
|
1546 _def_dga2='#define HAVE_DGA2 1'
|
|
1547 _ld_dga='-lXxf86dga'
|
|
1548 _vosrc="$_vosrc vo_dga.c"
|
|
1549 _vomodules="dga $_vomodules"
|
3248
|
1550 echores "yes (using DGA 2.0)"
|
3206
|
1551 elif test "$_dga" = no ; then
|
|
1552 echores "no"
|
2943
|
1553 else
|
3206
|
1554 die "DGA version must be 1 or 2"
|
2943
|
1555 fi
|
|
1556
|
|
1557
|
|
1558 echocheck "OpenGL"
|
3018
|
1559 #Note: this test is run even with --enable-gl since we autodetect $_ld_gl
|
|
1560 if test "$_x11" = yes && test "$_gl" != no ; then
|
2943
|
1561 cat > $TMPC << EOF
|
|
1562 #include <GL/gl.h>
|
|
1563 int main(void) { return 0; }
|
|
1564 EOF
|
|
1565 _gl=no
|
2988
|
1566 if cc_check $_inc_x11 $_ld_x11 -lGL -lm ; then
|
|
1567 _gl=yes
|
3356
|
1568 _ld_gl="-lGL"
|
2988
|
1569 elif cc_check $_inc_x11 $_ld_x11 -lGL -lm $_ld_pthread ; then
|
|
1570 _gl=yes
|
3356
|
1571 _ld_gl="-lGL $_ld_pthread"
|
2190
|
1572 fi
|
2998
|
1573 else
|
|
1574 _gl=no
|
2943
|
1575 fi
|
|
1576 if test "$_gl" = yes ; then
|
|
1577 _def_gl='#define HAVE_GL 1'
|
|
1578 _vosrc="$_vosrc vo_gl.c vo_gl2.c"
|
3161
|
1579 _vomodules="opengl $_vomodules"
|
2943
|
1580 else
|
|
1581 _def_gl='#undef HAVE_GL'
|
|
1582 fi
|
|
1583 echores "$_gl"
|
1515
|
1584
|
1
|
1585
|
2943
|
1586 echocheck "/dev/mga_vid"
|
|
1587 if test "$_mga" = auto ; then
|
|
1588 _mga=no
|
|
1589 test -c /dev/mga_vid && _mga=yes
|
|
1590 fi
|
|
1591 if test "$_mga" = yes ; then
|
|
1592 _def_mga='#define HAVE_MGA 1'
|
|
1593 _vosrc="$_vosrc vo_mga.c"
|
3161
|
1594 _vomodules="mga $_vomodules"
|
2464
|
1595 else
|
2943
|
1596 _def_mga='#undef HAVE_MGA'
|
2463
|
1597 fi
|
2943
|
1598 echores "$_mga"
|
525
|
1599
|
1826
|
1600
|
2943
|
1601 echocheck "syncfb"
|
|
1602 _syncfb=no
|
|
1603 test "$_mga" = yes && _syncfb=yes
|
|
1604 if test "$_syncfb" = yes ; then
|
|
1605 _def_syncfb='#define HAVE_SYNCFB 1'
|
|
1606 _vosrc="$_vosrc vo_syncfb.c"
|
|
1607 else
|
|
1608 _def_syncfb='#undef HAVE_SYNCFB'
|
|
1609 fi
|
|
1610 echores "$_syncfb"
|
|
1611
|
1133
|
1612
|
2943
|
1613 echocheck "xmga"
|
|
1614 if test "$_xmga" = auto ; then
|
|
1615 _xmga=no
|
|
1616 test "$_x11" = yes && test "$_mga" = yes && _xmga=yes
|
|
1617 fi
|
|
1618 if test "$_xmga" = yes ; then
|
|
1619 _def_xmga='#define HAVE_XMGA 1'
|
|
1620 _vosrc="$_vosrc vo_xmga.c"
|
3161
|
1621 _vomodules="xmga $_vomodules"
|
2943
|
1622 else
|
|
1623 _def_xmga='#undef HAVE_XMGA'
|
|
1624 fi
|
|
1625 echores "$_xmga"
|
1012
|
1626
|
1038
|
1627
|
2943
|
1628 echocheck "GGI"
|
|
1629 if test "$_ggi" = auto ; then
|
|
1630 cat > $TMPC << EOF
|
|
1631 #include <ggi/ggi.h>
|
|
1632 int main(void) { return 0; }
|
|
1633 EOF
|
|
1634 _ggi=no
|
3057
|
1635 cc_check -lggi && _ggi=yes
|
448
|
1636 fi
|
2943
|
1637 if test "$_ggi" = yes ; then
|
|
1638 _def_ggi='#define HAVE_GGI 1'
|
|
1639 _ld_ggi='-lggi'
|
|
1640 _vosrc="$_vosrc vo_ggi.c"
|
3161
|
1641 _vomodules="ggi $_vomodules"
|
1177
|
1642 else
|
2943
|
1643 _def_ggi='#undef HAVE_GGI'
|
1177
|
1644 fi
|
2943
|
1645 echores "$_ggi"
|
2151
|
1646
|
|
1647
|
2943
|
1648 echocheck "AA"
|
|
1649 if test "$_aa" = auto ; then
|
|
1650 cat > $TMPC << EOF
|
|
1651 #include <aalib.h>
|
3029
|
1652 int main(void) { (void) aa_init(0, 0, 0); return 0; }
|
448
|
1653 EOF
|
2943
|
1654 _aa=no
|
|
1655 cc_check -laa && _aa=yes
|
1177
|
1656 fi
|
2943
|
1657 if test "$_aa" = yes ; then
|
|
1658 _def_aa='#define HAVE_AA 1'
|
|
1659 _ld_aa='-laa'
|
|
1660 _vosrc="$_vosrc vo_aa.c"
|
3161
|
1661 _vomodules="aa $_vomodules"
|
2943
|
1662 else
|
|
1663 _def_aa='#undef HAVE_AA'
|
|
1664 fi
|
|
1665 echores "$_aa"
|
59
|
1666
|
1694
|
1667
|
2943
|
1668 echocheck "SVGAlib"
|
|
1669 if test "$_svga" = auto ; then
|
|
1670 cat > $TMPC << EOF
|
|
1671 #include <vga.h>
|
|
1672 #include <vgagl.h>
|
|
1673 int main(void) { return 0; }
|
1694
|
1674 EOF
|
2943
|
1675 _svga=no
|
|
1676 cc_check -lvgagl -lvga && _svga=yes
|
448
|
1677 fi
|
2943
|
1678 if test "$_svga" = yes ; then
|
|
1679 _def_svga='#define HAVE_SVGALIB 1'
|
|
1680 _ld_svga='-lvgagl -lvga'
|
|
1681 _vosrc="$_vosrc vo_svga.c"
|
3161
|
1682 _vomodules="svga $_vomodules"
|
2943
|
1683 else
|
|
1684 _def_svga='#undef HAVE_SVGALIB'
|
|
1685 fi
|
|
1686 echores "$_svga"
|
1596
|
1687
|
1680
|
1688
|
2943
|
1689 echocheck "FBDev"
|
|
1690 if test "$_fbdev" = auto ; then
|
|
1691 _fbdev=no
|
|
1692 linux && _fbdev=yes
|
|
1693 fi
|
|
1694 if test "$_fbdev" = yes ; then
|
|
1695 _def_fbdev='#define HAVE_FBDEV 1'
|
|
1696 _vosrc="$_vosrc vo_fbdev.c"
|
3161
|
1697 _vomodules="fbdev $_vomodules"
|
2943
|
1698 else
|
|
1699 _def_fbdev='#undef HAVE_FBDEV'
|
|
1700 fi
|
|
1701 echores "$_fbdev"
|
2774
|
1702
|
|
1703
|
2943
|
1704 echocheck "DVB"
|
|
1705 if test "$_dvb" != no ; then
|
|
1706 _dvb=no
|
|
1707 test -c /dev/ost/video && _dvb=yes
|
|
1708 fi
|
|
1709 if test "$_dvb" = yes ; then
|
|
1710 _def_dvb='#define HAVE_DVB 1'
|
3325
|
1711 _vomodules="mpegpes(dvb) $_vomodules"
|
2943
|
1712 else
|
|
1713 _def_dvb='#undef HAVE_DVB'
|
3325
|
1714 _vomodules="mpegpes(file) $_vomodules"
|
2943
|
1715 fi
|
|
1716 echores "$_dvb"
|
1309
|
1717
|
|
1718
|
2947
|
1719 echocheck "PNG support"
|
|
1720 if test "$_png" = auto ; then
|
|
1721 _png=no
|
|
1722 if irix ; then
|
|
1723 # Don't check for -lpng on irix since it has its own libpng
|
|
1724 # incompatible with the GNU libpng
|
|
1725 echores "disabled on irix (not GNU libpng)"
|
|
1726 else
|
2993
|
1727 cat > $TMPC << EOF
|
|
1728 #include <png.h>
|
|
1729 int main(void) { return 0; }
|
|
1730 EOF
|
2947
|
1731 cc_check -lpng -lz -lm && _png=yes
|
|
1732 echores yes
|
|
1733 fi
|
|
1734 else
|
|
1735 echores "$_png"
|
|
1736 fi
|
|
1737 if test "$_png" = yes ; then
|
|
1738 _def_png='#define HAVE_PNG 1'
|
|
1739 _ld_png='-lpng -lz'
|
|
1740 _vosrc="$_vosrc vo_png.c"
|
3161
|
1741 _vomodules="png $_vomodules"
|
2947
|
1742 else
|
|
1743 _def_png='#undef HAVE_PNG'
|
|
1744 fi
|
|
1745
|
|
1746
|
3189
|
1747 echocheck "VESA support"
|
|
1748 if x86 && linux ; then
|
|
1749 _vosrc="$_vosrc vo_vesa.c vesa_lvo.c"
|
|
1750 _vomodules="vesa $_vomodules"
|
3248
|
1751 echores "yes"
|
3189
|
1752 else
|
3360
|
1753 echores "no (not supported on this OS/architecture)"
|
3189
|
1754 fi
|
|
1755
|
|
1756
|
2947
|
1757 #################
|
|
1758 # VIDEO + AUDIO #
|
|
1759 #################
|
|
1760
|
|
1761
|
|
1762 echocheck "SDL"
|
|
1763 if test -z "$_sdlconfig" ; then
|
|
1764 if ( sdl-config --version ) >/dev/null 2>&1 ; then
|
|
1765 _sdlconfig="sdl-config"
|
|
1766 elif ( sdl11-config --version ) >/dev/null 2>&1 ; then
|
|
1767 _sdlconfig="sdl11-config"
|
|
1768 else
|
|
1769 _sdlconfig=false
|
|
1770 fi
|
|
1771 fi
|
|
1772 if test "$_sdl" = auto || test "$_sdl" = yes ; then
|
2948
|
1773 cat > $TMPC << EOF
|
|
1774 #include <SDL.h>
|
|
1775 int main(void) { return 0; }
|
|
1776 EOF
|
2947
|
1777 _sdl=no
|
|
1778 if "$_sdlconfig" --version >/dev/null 2>&1 ; then
|
|
1779 if cc_check `$_sdlconfig --cflags` `$_sdlconfig --libs` ; then
|
|
1780 _sdlversion=`$_sdlconfig --version | sed 's/[^0-9]//g'`
|
|
1781 if test "$_sdlversion" -gt 116 ; then
|
|
1782 if test "$_sdlversion" -lt 121 ; then
|
|
1783 _def_sdlbuggy='#define BUGGY_SDL'
|
|
1784 else
|
|
1785 _def_sdlbuggy='#undef BUGGY_SDL'
|
|
1786 fi
|
|
1787 _sdl=yes
|
|
1788 else
|
|
1789 _sdl=outdated
|
|
1790 fi
|
|
1791 fi
|
|
1792 fi
|
|
1793 fi
|
|
1794 if test "$_sdl" = yes ; then
|
|
1795 _def_sdl='#define HAVE_SDL 1'
|
|
1796 _ld_sdl=`$_sdlconfig --libs`
|
|
1797 _inc_sdl=`$_sdlconfig --cflags`
|
|
1798 _vosrc="$_vosrc vo_sdl.c"
|
3189
|
1799 _vomodules="sdl $_vomodules"
|
2947
|
1800 _aosrc="$_aosrc ao_sdl.c"
|
3161
|
1801 _aomodules="sdl $_aomodules"
|
2947
|
1802 else
|
|
1803 _def_sdl='#undef HAVE_SDL'
|
|
1804 fi
|
|
1805 echores "$_sdl (with $_sdlconfig)"
|
|
1806
|
3276
|
1807 echocheck "NAS"
|
|
1808 if test "$_nas" = auto || test "$_nas" = yes ; then
|
|
1809 cat > $TMPC << EOF
|
|
1810 #include <audio/audiolib.h>
|
|
1811 int main(void) { return 0; }
|
|
1812 EOF
|
|
1813 _nas=no
|
3506
|
1814 cc_check -laudio $_inc_x11 $_ld_x11 -lXt -lm && _nas=yes
|
3276
|
1815 fi
|
|
1816 if test "$_nas" = yes ; then
|
|
1817 _def_nas='#define HAVE_NAS 1'
|
3506
|
1818 _ld_nas="-laudio $_ld_x11 -lXt"
|
3276
|
1819 _aosrc="$_aosrc ao_nas.c"
|
|
1820 _aomodules="nas $_aomodules"
|
|
1821 else
|
|
1822 _def_nas='#undef HAVE_NAS'
|
|
1823 fi
|
|
1824 echores "$_nas"
|
3242
|
1825
|
3432
|
1826 if test "$_mmx" = no ; then
|
|
1827 _mp1e=no
|
|
1828 fi
|
|
1829 if test "$_mp1e" = yes ; then
|
|
1830 _def_mp1e='#define USE_MP1E'
|
|
1831 _ld_mp1e="-Llibmp1e -lmp1e"
|
|
1832 _dep_mp1e='libmp1e/libmp1e.a'
|
|
1833 else
|
|
1834 echocheck "libmp1e"
|
|
1835 _mp1e=no
|
|
1836 _def_mp1e='#undef USE_MP1E'
|
|
1837 _ld_mp1e=""
|
|
1838 _dep_mp1e=''
|
|
1839 echores "$_mp1e"
|
|
1840 fi
|
|
1841
|
2943
|
1842 echocheck "DXR3/H+"
|
|
1843 if test "$_dxr3" = auto ; then
|
|
1844 cat > $TMPC << EOF
|
3327
|
1845 #include <linux/em8300.h>
|
2943
|
1846 int main(void) { return 0; }
|
1309
|
1847 EOF
|
2943
|
1848 _dxr3=no
|
3327
|
1849 cc_check && _dxr3=yes
|
2943
|
1850 fi
|
|
1851 if test "$_dxr3" = yes ; then
|
|
1852 _def_dxr3='#define HAVE_DXR3 1'
|
|
1853 _vosrc="$_vosrc vo_dxr3.c"
|
|
1854 _aosrc="$_aosrc ao_dxr3.c"
|
3208
|
1855 _vomodules="dxr3 $_vomodules"
|
3161
|
1856 _aomodules="dxr3 $_aomodules"
|
2943
|
1857 else
|
|
1858 _def_dxr3='#undef HAVE_DXR3'
|
|
1859 fi
|
|
1860 echores "$_dxr3"
|
1309
|
1861
|
|
1862
|
2947
|
1863 #########
|
|
1864 # AUDIO #
|
|
1865 #########
|
|
1866
|
|
1867
|
2943
|
1868 echocheck "OSS Audio"
|
|
1869 if test "$_ossaudio" = auto ; then
|
|
1870 cat > $TMPC << EOF
|
|
1871 #include <sys/soundcard.h>
|
|
1872 int main(void) { int arg = SNDCTL_DSP_SETFRAGMENT; return 0; }
|
2482
|
1873 EOF
|
2943
|
1874 _ossaudio=no
|
|
1875 cc_check && _ossaudio=yes
|
|
1876 fi
|
|
1877 if test "$_ossaudio" = yes ; then
|
3161
|
1878 _def_ossaudio='#define USE_OSS_AUDIO 1'
|
|
1879 _aosrc="$_aosrc ao_oss.c"
|
|
1880 _aomodules="oss $_aomodules"
|
2943
|
1881 else
|
3161
|
1882 _def_ossaudio='#undef USE_OSS_AUDIO'
|
2943
|
1883 fi
|
|
1884 echores "$_ossaudio"
|
2905
|
1885
|
1057
|
1886
|
2943
|
1887 echocheck "ALSA audio"
|
|
1888 if test "$_alsa" = auto || test "$_alsa" = yes; then
|
|
1889 _alsa=no
|
2190
|
1890 cat > $TMPC << EOF
|
1004
|
1891 #include <sys/asoundlib.h>
|
2943
|
1892 int main(void) { return (!(SND_LIB_MAJOR==0 && SND_LIB_MINOR==5)); }
|
1004
|
1893 EOF
|
2973
|
1894 cc_check -lasound $_ld_dl $_ld_pthread && $TMPO && _alsaver='0.5.x'
|
1004
|
1895
|
2190
|
1896 cat > $TMPC << EOF
|
1004
|
1897 #include <sys/asoundlib.h>
|
2943
|
1898 int main(void) { return (!(SND_LIB_MAJOR==0 && SND_LIB_MINOR==9)); }
|
1004
|
1899 EOF
|
2973
|
1900 cc_check -lasound $_ld_dl $_ld_pthread && $TMPO && _alsaver='0.9.x'
|
2943
|
1901 if test "$_alsaver" ; then
|
|
1902 _alsa=yes
|
|
1903 echores "yes ($_alsaver)"
|
|
1904 else
|
|
1905 echores "no"
|
|
1906 fi
|
|
1907 else
|
|
1908 echores "no"
|
2190
|
1909 fi
|
2943
|
1910 _def_alsa5='#undef HAVE_ALSA5'
|
|
1911 _def_alsa9='#undef HAVE_ALSA9'
|
|
1912 if test "$_alsa" = yes ; then
|
|
1913 if test "$_alsaver" = '0.5.x' ; then
|
|
1914 _aosrc="$_aosrc ao_alsa5.c"
|
3161
|
1915 _aomodules="alsa5 $_aomodules"
|
2943
|
1916 _def_alsa5='#define HAVE_ALSA5 1'
|
|
1917 elif test "$_alsaver" = '0.9.x' ; then
|
|
1918 _aosrc="$_aosrc ao_alsa9.c"
|
3161
|
1919 _aomodules="alsa9 $_aomodules"
|
2943
|
1920 _def_alsa9='#define HAVE_ALSA9 1'
|
|
1921 fi
|
|
1922 _ld_alsa='-lasound'
|
|
1923 fi
|
1004
|
1924
|
|
1925
|
2943
|
1926 echocheck "Sun audio"
|
|
1927 if test "$_sunaudio" = auto ; then
|
|
1928 cat > $TMPC << EOF
|
|
1929 #include <sys/types.h>
|
|
1930 #include <sys/audioio.h>
|
3029
|
1931 int main(void) { audio_info_t info; AUDIO_INITINFO(&info); return 0; }
|
2943
|
1932 EOF
|
|
1933 _sunaudio=no
|
|
1934 cc_check && _sunaudio=yes
|
|
1935 fi
|
|
1936 if test "$_sunaudio" = yes ; then
|
|
1937 _def_sunaudio='#define USE_SUN_AUDIO 1'
|
|
1938 _aosrc="$_aosrc ao_sun.c"
|
3161
|
1939 _aomodules="sun $_aomodules"
|
2943
|
1940 else
|
|
1941 _def_sunaudio='#undef USE_SUN_AUDIO'
|
|
1942 fi
|
|
1943 echores "$_sunaudio"
|
|
1944
|
|
1945
|
|
1946 echocheck "Sun mediaLib"
|
|
1947 if test "$_mlib" = auto ; then
|
|
1948 _mlib=no
|
|
1949 test -z "$_mlibdir" && _mlibdir=/opt/SUNWmlib
|
|
1950 cat > $TMPC << EOF
|
|
1951 #include <mlib.h>
|
|
1952 int main(void) { mlib_VideoColorYUV2ABGR420(0,0,0,0,0,0,0,0,0); return 0; }
|
1029
|
1953 EOF
|
2943
|
1954 cc_check -I${_mlibdir}/include -L${_mlibdir}/lib -lmlib && _mlib=yes
|
|
1955 fi
|
|
1956 if test "$_mlib" = yes ; then
|
|
1957 _def_mlib='#define HAVE_MLIB 1'
|
|
1958 _inc_mlib=" -I${_mlibdir}/include "
|
3036
|
1959 _ld_mlib=" -L${_mlibdir}/lib -R${_mlibdir}/lib -lmlib "
|
2943
|
1960 else
|
|
1961 _def_mlib='#undef HAVE_MLIB'
|
|
1962 fi
|
|
1963 echores "$_mlib"
|
|
1964
|
|
1965
|
|
1966 echocheck "SGI Audio"
|
|
1967 if test "$_sgiaudio" = auto ; then
|
|
1968 # check for SGI audio
|
|
1969 cat > $TMPC << EOF
|
|
1970 #include <dmedia/audio.h>
|
|
1971 int main(void) { return 0; }
|
|
1972 EOF
|
|
1973 _sgiaudio=no
|
|
1974 cc_check && _sgiaudio=yes
|
|
1975 fi
|
|
1976 if test "$_sgiaudio" = "yes" ; then
|
|
1977 _def_sgiaudio='#define USE_SGI_AUDIO 1'
|
|
1978 _ld_sgiaudio='-laudio'
|
|
1979 _aosrc="$_aosrc ao_sgi.c"
|
3161
|
1980 _aomodules="sgi $_aomodules"
|
2943
|
1981 else
|
|
1982 _def_sgiaudio='#undef USE_SGI_AUDIO'
|
|
1983 fi
|
|
1984 echores "$_sgiaudio"
|
1029
|
1985
|
2463
|
1986
|
3170
|
1987 echocheck "VCD support"
|
|
1988 if linux || bsdos || freebsd || sunos ; then
|
|
1989 _inputmodules="vcd $_inputmodules"
|
3259
|
1990 _def_vcd='#define HAVE_VCD 1'
|
3170
|
1991 echores "ok"
|
|
1992 else
|
3259
|
1993 _def_vcd='#undef HAVE_VCD'
|
3170
|
1994 echores "not supported on this OS"
|
|
1995 fi
|
|
1996
|
|
1997
|
2961
|
1998 echocheck "DVD support"
|
2943
|
1999 if test "$_dvdread" = auto ; then
|
|
2000 cat > $TMPC << EOF
|
|
2001 #include <dvdread/dvd_reader.h>
|
|
2002 #include <dvdread/ifo_types.h>
|
|
2003 #include <dvdread/ifo_read.h>
|
|
2004 #include <dvdread/nav_read.h>
|
|
2005 int main(void) { return 0; }
|
|
2006 EOF
|
|
2007 _dvdread=no
|
3557
|
2008 if test "$_dl" = yes; then
|
|
2009 cc_check \
|
|
2010 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -ldvdread $_ld_dl && \
|
|
2011 _dvdread=yes
|
|
2012 fi
|
2943
|
2013 fi
|
|
2014 if test "$_css" = auto ; then
|
|
2015 cat > $TMPC <<EOF
|
|
2016 #include <css.h>
|
3029
|
2017 int main(void) { (void) CSSisEncrypted(0); return 0; }
|
2463
|
2018 EOF
|
2943
|
2019 _css=no
|
2961
|
2020 cc_check -lcss && _css=yes
|
2943
|
2021 fi
|
|
2022 # dvdread preferred to DeCSS
|
|
2023 if test "$_dvdread" = yes ; then
|
|
2024 _largefiles=yes
|
|
2025 _def_dvdread='#define USE_DVDREAD 1'
|
|
2026 _def_css='#undef HAVE_LIBCSS'
|
|
2027 _ld_css='-ldvdread'
|
3169
|
2028 _inputmodules="dvdread $_inputmodules"
|
2961
|
2029 echores "libdvdread"
|
2943
|
2030 elif test "$_css" = yes ; then
|
|
2031 _def_dvdread='#undef USE_DVDREAD'
|
|
2032 _def_css='#define HAVE_LIBCSS 1'
|
3520
|
2033 _ld_css='-lcss'
|
3065
|
2034 test "$_csslibdir" && _ld_css="-L${_csslibdir} $_ld_css"
|
3169
|
2035 _inputmodules="dvdcss $_inputmodules"
|
2961
|
2036 echores "libcss"
|
2943
|
2037 else
|
|
2038 _def_dvdread='#undef USE_DVDREAD'
|
|
2039 _def_css='#undef HAVE_LIBCSS'
|
2961
|
2040 echores "no"
|
2943
|
2041 fi
|
2463
|
2042
|
|
2043
|
2943
|
2044 echocheck "zlib"
|
2450
|
2045 cat > $TMPC << EOF
|
2943
|
2046 #include <zlib.h>
|
2983
|
2047 int main(void) { (void) inflate(0, Z_NO_FLUSH); return 0; }
|
2450
|
2048 EOF
|
2943
|
2049 _zlib=no
|
|
2050 cc_check -lz && _zlib=yes
|
|
2051 if test "$_zlib" = yes ; then
|
|
2052 _def_zlib='#define HAVE_ZLIB 1'
|
|
2053 _ld_zlib='-lz'
|
|
2054 else
|
|
2055 _def_zlib='#undef HAVE_ZLIB'
|
|
2056 fi
|
|
2057 echores "$_zlib"
|
2463
|
2058
|
1029
|
2059
|
3015
|
2060 echocheck "RTC"
|
|
2061 if linux ; then
|
|
2062 if test "$_rtc" = auto ; then
|
|
2063 cat > $TMPC << EOF
|
|
2064 #include <sys/ioctl.h>
|
|
2065 #include <linux/rtc.h>
|
|
2066 int main(void) { return RTC_IRQP_READ; }
|
|
2067 EOF
|
|
2068 _rtc=no
|
|
2069 cc_check && _rtc=yes
|
|
2070 fi
|
|
2071 echores "$_rtc"
|
|
2072 else
|
|
2073 _rtc=no
|
|
2074 echores "no (linux-specific)"
|
|
2075 fi
|
|
2076 if test "$_rtc" = yes ; then
|
|
2077 _def_rtc='#define HAVE_RTC 1'
|
|
2078 else
|
|
2079 _def_rtc='#undef HAVE_RTC'
|
|
2080 fi
|
|
2081
|
3018
|
2082
|
2943
|
2083 echocheck "mad support"
|
|
2084 if test "$_mad" = auto ; then
|
|
2085 _mad=no
|
|
2086 cat > $TMPC << EOF
|
2435
|
2087 #include <mad.h>
|
|
2088 int main(void) { return 0; }
|
|
2089 EOF
|
2988
|
2090 cc_check $_madlibdir -lmad && _mad=yes
|
2943
|
2091 fi
|
|
2092 if test "$_mad" = yes ; then
|
|
2093 _def_mad='#define USE_LIBMAD 1'
|
|
2094 _ld_mad='-lmad'
|
|
2095 else
|
|
2096 _def_mad='#undef USE_LIBMAD'
|
|
2097 fi
|
|
2098 echores "$_mad"
|
|
2099
|
|
2100
|
|
2101 echocheck "OggVorbis support"
|
|
2102 if test "$_vorbis" = auto ; then
|
|
2103 _vorbis=no
|
|
2104 cat > $TMPC << EOF
|
|
2105 #include <vorbis/codec.h>
|
|
2106 int main(void) { return 0; }
|
|
2107 EOF
|
2988
|
2108 cc_check -lvorbis -logg -lm && _vorbis=yes
|
2943
|
2109 fi
|
|
2110 if test "$_vorbis" = yes ; then
|
|
2111 _def_vorbis='#define HAVE_OGGVORBIS 1'
|
3356
|
2112 _ld_vorbis='-lvorbis -logg'
|
2943
|
2113 else
|
|
2114 _def_vorbis='#undef HAVE_OGGVORBIS'
|
|
2115 fi
|
|
2116 echores "$_vorbis"
|
|
2117
|
|
2118
|
|
2119 echocheck "Win32 DLL support"
|
|
2120 if test "$_win32" = auto ; then
|
|
2121 _win32=no
|
2997
|
2122 if x86 ; then
|
2943
|
2123 if test -z "$_win32libdir" ; then
|
|
2124 for I in /usr/local/lib/win32 /usr/lib/win32 ; do
|
|
2125 if test -d "$I" ; then
|
|
2126 _win32libdir="$I"
|
|
2127 break;
|
|
2128 fi;
|
|
2129 done
|
|
2130 fi
|
|
2131 test "$_win32libdir" && _win32=yes
|
|
2132 fi
|
|
2133 fi
|
|
2134 if test "$_win32" = yes ; then
|
|
2135 _def_win32='#define USE_WIN32DLL 1'
|
|
2136 _ld_win32='-Lloader -lloader'
|
|
2137 _dep_win32='loader/libloader.a'
|
3169
|
2138 _codecmodules="win32 $_codecmodules"
|
3189
|
2139 echores "$_win32 (found: $_win32libdir)"
|
2943
|
2140 else
|
|
2141 _def_win32='#undef USE_WIN32DLL'
|
3451
|
2142 _dshow=no
|
3189
|
2143 echores "$_win32"
|
2943
|
2144 fi
|
|
2145
|
|
2146 echocheck "DirectShow"
|
3451
|
2147
|
|
2148 if false ; then
|
|
2149
|
|
2150 if test "$_dshow" != no ; then
|
2943
|
2151 _dshow=no
|
|
2152 # check if compiler supports C++ and C++-libs are installed correctly
|
|
2153 cat > "$TMPCPP" << EOF
|
|
2154 #include <string>
|
|
2155 class myclass {
|
|
2156 private: int ret;
|
|
2157 public: int myreturn(void);
|
|
2158 };
|
|
2159 int myclass::myreturn(void) { ret = 0; return ret ; }
|
|
2160 int main(void) { myclass myobject; return myobject.myreturn(); }
|
|
2161 EOF
|
|
2162 echo "------------------------------------------------" >> "$TMPLOG"
|
|
2163 cat "$TMPCPP" >> "$TMPLOG"
|
|
2164 if ( "$_cc" "$TMPCPP" -o "$TMPO" && "$TMPO" ) >> "$TMPLOG" 2>&1 ; then
|
|
2165 _dshow=yes
|
|
2166 echores "yes (C++ is ok)"
|
|
2167 else
|
|
2168 echores "no"
|
|
2169 cat << EOF
|
|
2170
|
|
2171 Your C++ runtime environment is broken.
|
|
2172
|
|
2173 Hints: Does $_cc support C++ ? Have you a C++ compiler installed ?
|
|
2174 Are the C++ libraries correctly installed ?
|
|
2175 Check for libstdc++ and in (/etc/)ld.so.conf
|
|
2176
|
3161
|
2177 If you do not need DirectShow support, you can also use:
|
2943
|
2178 ./configure --disable-dshow <your-normal-configure-options>
|
|
2179 to disable building of the C++ based DirectShow code.
|
|
2180
|
|
2181 EOF
|
|
2182 die "$_cc's C++ is broken"
|
|
2183 fi
|
3451
|
2184 fi
|
|
2185
|
2943
|
2186 fi
|
3451
|
2187
|
|
2188 echores "$_dshow"
|
|
2189
|
2943
|
2190 if test "$_dshow" = yes ; then
|
|
2191 _def_dshow='#define USE_DIRECTSHOW 1'
|
3451
|
2192 _ld_dshow='-Lloader/dshow -lDS_Filter'
|
|
2193 _dep_dshow='loader/dshow/libDS_Filter.a'
|
3169
|
2194 _codecmodules="directshow $_codecmodules"
|
2943
|
2195 else
|
|
2196 _def_dshow='#undef USE_DIRECTSHOW'
|
|
2197 fi
|
2435
|
2198
|
|
2199
|
2943
|
2200 echocheck "XAnim DLL"
|
|
2201 if test "$_xanim" = auto ; then
|
|
2202 _xanim=no
|
2973
|
2203 if test "$_dl" = yes ; then
|
3241
71075e783b04
fixed xanim detection (also present on non-x86 too - look at xanim homepage) and added tv into _inputmodules
alex
diff
changeset
|
2204 if test -z "$_xanimlibdir" ; then
|
71075e783b04
fixed xanim detection (also present on non-x86 too - look at xanim homepage) and added tv into _inputmodules
alex
diff
changeset
|
2205 for I in /usr/local/lib/xanim/mods /usr/lib/xanim/mods /usr/lib/xanim ; do
|
2943
|
2206 if test -d "$I" ; then
|
|
2207 _xanimlibdir="$I"
|
|
2208 break;
|
|
2209 fi;
|
|
2210 done
|
|
2211 fi
|
3241
71075e783b04
fixed xanim detection (also present on non-x86 too - look at xanim homepage) and added tv into _inputmodules
alex
diff
changeset
|
2212 test "$_xanimlibdir" && _xanim=yes
|
3359
|
2213 if test "$_xanim" = yes ; then
|
3337
|
2214 echores "yes (found: $_xanimlibdir)"
|
|
2215 else
|
|
2216 echores "no suitable directory found"
|
|
2217 fi
|
2943
|
2218 else
|
2973
|
2219 echores "dl support needed"
|
2943
|
2220 fi
|
|
2221 else
|
|
2222 echores "$_xanim"
|
|
2223 fi
|
|
2224 if test "$_xanim" = yes ; then
|
|
2225 _def_xanim='#define USE_XANIM 1'
|
|
2226 _def_xanim_path="#define XACODEC_PATH \"$_xanimlibdir\""
|
3169
|
2227 _codecmodules="xanim $_codecmodules"
|
2943
|
2228 else
|
|
2229 _def_xanim='#undef USE_XANIM'
|
|
2230 _def_xanim_path='#undef XACODEC_PATH'
|
1395
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
2231 fi
|
a721a2b91d3d
Added StrongARM crosscompiling support by Maksim Krasnyanskiy <maxk at qualcomm.com> and fixed a --datadir bug in configure.
atmos4
diff
changeset
|
2232
|
2943
|
2233
|
|
2234 echocheck "iconv"
|
|
2235 if test "$_iconv" = auto ; then
|
|
2236 if freebsd ; then
|
|
2237 _iconv_tmp='#include <giconv.h>'
|
|
2238 else
|
|
2239 _iconv_tmp='#include <iconv.h>'
|
|
2240 fi
|
|
2241 cat > $TMPC << EOF
|
|
2242 #include <stdio.h>
|
|
2243 #include <unistd.h>
|
|
2244 $_iconv_tmp
|
|
2245 #define INBUFSIZE 1024
|
|
2246 #define OUTBUFSIZE 4096
|
|
2247
|
|
2248 char inbuffer[INBUFSIZE];
|
|
2249 char outbuffer[OUTBUFSIZE];
|
1038
|
2250
|
2943
|
2251 int main(void) {
|
|
2252 ssize_t numread;
|
|
2253 iconv_t icdsc;
|
|
2254 char *tocode="UTF-8";
|
|
2255 char *fromcode="cp1250";
|
|
2256 if ((icdsc = iconv_open (tocode, fromcode)) != (iconv_t)(-1)) {
|
|
2257 while ((numread = read (0, inbuffer, INBUFSIZE))) {
|
|
2258 char *iptr=inbuffer;
|
|
2259 char *optr=outbuffer;
|
|
2260 size_t inleft=numread;
|
|
2261 size_t outleft=OUTBUFSIZE;
|
|
2262 if (iconv(icdsc, (const char **)&iptr, &inleft, &optr, &outleft)
|
|
2263 != (size_t)(-1)) {
|
|
2264 write (1, outbuffer, OUTBUFSIZE - outleft);
|
|
2265 }
|
|
2266 }
|
|
2267 if (iconv_close(icdsc) == -1)
|
|
2268 ;
|
|
2269 }
|
|
2270 }
|
987
|
2271 EOF
|
2943
|
2272 _iconv=no
|
|
2273 if freebsd ; then
|
|
2274 cc_check -lm -lgiconv && _iconv=yes
|
|
2275 elif bsdos ; then
|
|
2276 cc_check -lm -liconv && _iconv=yes
|
|
2277 else
|
|
2278 cc_check -lm && _iconv=yes
|
|
2279 fi
|
987
|
2280 fi
|
2943
|
2281 if test "$_iconv" = yes ; then
|
|
2282 _def_iconv='#define USE_ICONV 1'
|
|
2283 freebsd && _ld_iconv='-lgiconv'
|
|
2284 bsdos && _ld_iconv='-liconv'
|
|
2285 else
|
|
2286 _def_iconv='#undef USE_ICONV'
|
|
2287 fi
|
|
2288 echores "$_iconv"
|
|
2289
|
1012
|
2290
|
2943
|
2291 echocheck "FFmpeg codec"
|
|
2292 if test "$_libavcodec" = auto ; then
|
3065
|
2293 # Note: static linking is preferred to dynamic linking
|
2943
|
2294 _libavcodec=no
|
|
2295 test -d libavcodec && test -f libavcodec/Makefile && _libavcodec=yes
|
|
2296 fi
|
2945
|
2297 if test "$_libavcodecso" = auto ; then
|
|
2298 _libavcodecso=no
|
2943
|
2299 cat > $TMPC << EOF
|
|
2300 #include <libffmpeg/avcodec.h>
|
|
2301 int main(void) { return 0; }
|
987
|
2302 EOF
|
2945
|
2303 cc_check -lffmpeg -lm && _libavcodecso=yes
|
2943
|
2304 fi
|
|
2305 _def_libavcodec='#undef USE_LIBAVCODEC'
|
2945
|
2306 _def_libavcodecso='#undef USE_LIBAVCODEC_SO'
|
2943
|
2307 _def_ffpostprocess='#undef FF_POSTPROCESS'
|
|
2308 if test "$_libavcodec" = yes ; then
|
|
2309 _def_libavcodec='#define USE_LIBAVCODEC 1'
|
|
2310 _ld_libavcodec='-Llibavcodec -lavcodec'
|
|
2311 _dep_libavcodec='libavcodec/libavcodec.a'
|
|
2312 _def_ffpostprocess='#define FF_POSTPROCESS 1'
|
3169
|
2313 _codecmodules="libavcodec $_codecmodules"
|
2943
|
2314 echores "static libavcodec"
|
2945
|
2315 elif test "$_libavcodecso" = yes ; then
|
|
2316 _def_libavcodecso='#define USE_LIBAVCODEC_SO 1'
|
2943
|
2317 _ld_libavcodec='-lffmpeg'
|
|
2318 _def_ffpostprocess='#define FF_POSTPROCESS 1'
|
3169
|
2319 _codecmodules="libavcodec.so $_codecmodules"
|
2943
|
2320 echores "dynamic libffmpeg.so"
|
|
2321 else
|
|
2322 echores "not found"
|
987
|
2323 fi
|
1012
|
2324
|
|
2325
|
2943
|
2326 # FIXME : variables don't have a "standard" name so check this one day
|
|
2327 if test "$_divx4linux" = auto ; then
|
|
2328 _divx4linux=no
|
|
2329 echocheck "Divx4linux decore"
|
|
2330 cat > $TMPC << EOF
|
|
2331 #include <decore.h>
|
3029
|
2332 int main(void) { (void) decore(0, 0, 0, 0); return DEC_OPT_FRAME_311; }
|
987
|
2333 EOF
|
2943
|
2334 _divx4linux_decore=no
|
|
2335 if cc_check -ldivxdecore -lm ; then
|
|
2336 _divx4linux_decore=yes
|
|
2337 else
|
|
2338 _divx4linux_decore='not found'
|
|
2339 fi
|
|
2340 echores "$_divx4linux_decore"
|
|
2341 test "$_divx4linux_decore" = yes && _divx4linux=yes
|
1023
|
2342 fi
|
2943
|
2343 _def_decore='#undef NEW_DECORE'
|
|
2344 _ld_decore='-Lopendivx -ldecore'
|
|
2345 if test "$_divx4linux_decore" = yes ; then
|
|
2346 _def_decore='#define NEW_DECORE 1'
|
|
2347 _ld_decore='-ldivxdecore opendivx/postprocess.o'
|
3169
|
2348 _codecmodules="divx4linux $_codecmodules"
|
3079
|
2349 fi
|
|
2350
|
|
2351
|
3430
|
2352 # mencoder requires those libs: libmp3lame and divx4linux encore
|
|
2353 if test "$_mencoder" != no ; then
|
|
2354 _mencoder=no
|
|
2355
|
|
2356 echocheck "libmp3lame (required for mencoder)"
|
|
2357 _mp3lame=no
|
3356
|
2358 cat > $TMPC <<EOF
|
|
2359 #include <lame/lame.h>
|
|
2360 int main(void) { (void) lame_init(); return 0; }
|
|
2361 EOF
|
|
2362 # Note: libmp3lame usually depends on vorbis
|
3430
|
2363 cc_check -lmp3lame $_ld_vorbis -lm && _mp3lame=yes
|
|
2364 if test "$_mp3lame" = yes ; then
|
3356
|
2365 _def_mp3lame='#define HAVE_MP3LAME 1'
|
|
2366 _ld_mp3lame="-lmp3lame $_ld_vorbis"
|
3430
|
2367 else
|
3356
|
2368 _def_mp3lame='#undef HAVE_MP3LAME'
|
3430
|
2369 fi
|
|
2370 echores "$_mp3lame"
|
|
2371
|
|
2372 echocheck "Divx4linux encore (required for mencoder)"
|
|
2373 _divx4linux_encore=no
|
3079
|
2374 cat > $TMPC <<EOF
|
|
2375 #include <encore2.h>
|
3356
|
2376 int main(void) { (void) encore(0, 0, 0, 0); return 0; }
|
3079
|
2377 EOF
|
3356
|
2378 if cc_check -ldivxencore -lm ; then
|
3430
|
2379 _divx4linux_encore=yes
|
|
2380 _def_encore='#define NEW_ENCORE 1'
|
3356
|
2381 _ld_encore='-ldivxencore'
|
3430
|
2382 else
|
|
2383 _def_encore='#undef NEW_ENCORE'
|
1057
|
2384 fi
|
3430
|
2385 echores "$_divx4linux_encore"
|
|
2386
|
|
2387 test "$_mp3lame" = yes && test "$_divx4linux_encore" = yes && _mencoder=yes
|
987
|
2388 fi
|
3430
|
2389
|
987
|
2390
|
2943
|
2391 echocheck "lirc"
|
2947
|
2392 if test "$_lirc" = auto ; then
|
|
2393 _lirc=no
|
3237
|
2394 if test -c /dev/lirc ; then
|
|
2395 cat > $TMPC <<EOF
|
|
2396 #include <lirc/lirc_client.h>
|
|
2397 int main(void) { return 0; }
|
|
2398 EOF
|
|
2399 cc_check -llirc_client && _lirc=yes
|
|
2400 fi
|
2947
|
2401 fi
|
2943
|
2402 if test "$_lirc" = yes ; then
|
|
2403 _def_lirc='#define HAVE_LIRC 1'
|
|
2404 _ld_lirc='-llirc_client'
|
1404
|
2405 else
|
2943
|
2406 _def_lirc='#undef HAVE_LIRC'
|
1404
|
2407 fi
|
2943
|
2408 echores "$_lirc"
|
|
2409
|
1404
|
2410
|
2943
|
2411 echocheck "fastmemcpy"
|
2973
|
2412 # fastmemcpy check is done earlier with tests of CPU & binutils features
|
2943
|
2413 if test "$_fastmemcpy" = yes ; then
|
|
2414 _def_fastmemcpy='#define USE_FASTMEMCPY 1'
|
|
2415 else
|
|
2416 _def_fastmemcpy='#undef USE_FASTMEMCPY'
|
1177
|
2417 fi
|
2943
|
2418 echores "$_fastmemcpy"
|
987
|
2419
|
2943
|
2420
|
|
2421 echocheck "TV interface"
|
|
2422 if test "$_tv" = yes ; then
|
|
2423 _def_tv='#define USE_TV 1'
|
3241
71075e783b04
fixed xanim detection (also present on non-x86 too - look at xanim homepage) and added tv into _inputmodules
alex
diff
changeset
|
2424 _inputmodules="tv $_inputmodules"
|
2943
|
2425 else
|
|
2426 _def_tv='#undef USE_TV'
|
448
|
2427 fi
|
2943
|
2428 echores "$_tv"
|
448
|
2429
|
3242
|
2430 echocheck "Video 4 Linux TV interface"
|
|
2431 if test "$_tv_v4l" = auto && test "$_tv" = yes && linux ; then
|
|
2432 _tv_v4l=no
|
|
2433 if test -c /dev/video0 ; then
|
|
2434 cat > $TMPC <<EOF
|
|
2435 #include <linux/videodev.h>
|
|
2436 int main(void) { return 0; }
|
|
2437 EOF
|
|
2438 cc_check && _tv_v4l=yes
|
|
2439 fi
|
|
2440 else
|
|
2441 _tv_v4l=no
|
|
2442 fi
|
|
2443 if test "$_tv_v4l" = yes ; then
|
|
2444 _def_tv_v4l='#define HAVE_TV_V4L 1'
|
|
2445 _inputmodules="tv-v4l $_inputmodules"
|
|
2446 else
|
|
2447 _def_tv_v4l='#undef HAVE_TV_V4L'
|
|
2448 fi
|
|
2449 echores "$_tv_v4l"
|
|
2450
|
2657
|
2451
|
3206
|
2452 echocheck "select"
|
|
2453 if test "$_select" = no ; then
|
|
2454 _def_select='#undef HAVE_AUDIO_SELECT'
|
|
2455 elif test "$_select" = yes ; then
|
|
2456 _def_select='#define HAVE_AUDIO_SELECT 1'
|
|
2457 fi
|
|
2458 echores "$_select"
|
|
2459
|
|
2460
|
2943
|
2461 echocheck "streaming"
|
|
2462 # FIXME streaming check
|
3689
|
2463 if test "$_streaming" != no ; then
|
2943
|
2464 _def_streaming='#define STREAMING 1'
|
3169
|
2465 _inputmodules="network $_inputmodules"
|
2896
|
2466 else
|
2943
|
2467 _def_streaming='#undef STREAMING'
|
2896
|
2468 fi
|
2943
|
2469 echores "$_streaming"
|
|
2470
|
|
2471
|
|
2472
|
|
2473 # --------------- GUI specific tests begin -------------------
|
|
2474 echocheck "GUI"
|
|
2475 echo "$_gui"
|
|
2476 if test "$_gui" = yes ; then
|
1740
|
2477
|
3196
|
2478 # Required libraries
|
|
2479 test "$_png" != yes && die "PNG support required for GUI compilation"
|
|
2480 test "$_x11" != yes && die "X11 support required for GUI compilation"
|
|
2481
|
2943
|
2482 echocheck "XShape extension"
|
|
2483 _xshape=no
|
|
2484 if test "$_x11" = yes ; then
|
|
2485 cat > $TMPC << EOF
|
|
2486 #include <X11/Xlib.h>
|
|
2487 #include <X11/Xproto.h>
|
|
2488 #include <X11/Xutil.h>
|
|
2489 #include <X11/extensions/shape.h>
|
|
2490 #include <stdlib.h>
|
1740
|
2491 int main(void) {
|
2943
|
2492 char *name = ":0.0";
|
|
2493 Display *wsDisplay;
|
|
2494 int exitvar = 0;
|
|
2495 int eventbase, errorbase;
|
|
2496 if (getenv("DISPLAY"))
|
|
2497 name=getenv("DISPLAY");
|
|
2498 wsDisplay=XOpenDisplay(name);
|
|
2499 if (!XShapeQueryExtension(wsDisplay,&eventbase,&errorbase))
|
|
2500 exitvar=1;
|
|
2501 XCloseDisplay(wsDisplay);
|
|
2502 return exitvar;
|
1740
|
2503 }
|
|
2504 EOF
|
2988
|
2505 cc_check $_inc_x11 $_ld_x11 && _xshape=yes
|
1740
|
2506 fi
|
2943
|
2507 if test "$_xshape" = yes ; then
|
|
2508 _def_xshape='#define HAVE_XSHAPE 1'
|
2700
|
2509 else
|
2943
|
2510 die "the GUI requires the X11 extension XShape (which was not found)"
|
2700
|
2511 fi
|
2943
|
2512 echores "$_xshape"
|
2594
|
2513
|
|
2514
|
2943
|
2515 # Check for GTK:
|
|
2516 echocheck "gtk version"
|
|
2517 if test -z "$_gtkconfig" ; then
|
|
2518 if ( gtk-config --version ) >/dev/null 2>&1 ; then
|
|
2519 _gtkconfig="gtk-config"
|
|
2520 elif ( gtk12-config --version ) >/dev/null 2>&1 ; then
|
|
2521 _gtkconfig="gtk12-config"
|
|
2522 else
|
|
2523 die "the GUI requires GTK (which was not found)"
|
|
2524 fi
|
2700
|
2525 fi
|
2943
|
2526 _gtk=`$_gtkconfig --version 2>&1`
|
|
2527 _inc_gtk=`$_gtkconfig --cflags 2>&1`
|
|
2528 _ld_gtk=`$_gtkconfig --libs 2>&1`
|
|
2529 echores "$_gtk (with $_gtkconfig)"
|
1694
|
2530
|
2943
|
2531 # Check for GLIB
|
|
2532 echocheck "glib version"
|
|
2533 if test -z "$_glibconfig" ; then
|
|
2534 if ( glib-config --version ) >/dev/null 2>&1 ; then
|
|
2535 _glibconfig="glib-config"
|
|
2536 elif ( glib12-config --version ) >/dev/null 2>&1 ; then
|
|
2537 _glibconfig="glib12-config"
|
|
2538 else
|
|
2539 die "the GUI requires GLIB (which was not found)"
|
|
2540 fi
|
|
2541 fi
|
|
2542 _glib=`$_glibconfig --version 2>&1`
|
|
2543 _inc_glib=`$_glibconfig --cflags 2>&1`
|
|
2544 _ld_glib=`$_glibconfig --libs 2>&1`
|
|
2545 echores "$_glib (with $_glibconfig)"
|
1694
|
2546
|
2943
|
2547 _def_gui='#define HAVE_NEW_GUI 1'
|
3422
|
2548 _ld_gui='$(GTKLIB) $(GLIBLIB)'
|
2943
|
2549
|
2983
|
2550 echo
|
|
2551 echo "Creating Gui/config.mak"
|
2973
|
2552 cat > Gui/config.mak << EOF
|
|
2553 # -------- Generated by configure -----------
|
2943
|
2554
|
|
2555 GTKINC = $_inc_gtk
|
|
2556 GTKLIBS = $_ld_gtk
|
|
2557 GLIBINC = $_inc_glib
|
|
2558 GLIBLIBS = $_ld_glib
|
1694
|
2559
|
|
2560 EOF
|
|
2561
|
2943
|
2562 else
|
|
2563 _def_gui='#undef HAVE_NEW_GUI'
|
1
|
2564 fi
|
2943
|
2565 # --------------- GUI specific tests end -------------------
|
2657
|
2566
|
1517
|
2567
|
1279
|
2568
|
2943
|
2569 #############################################################################
|
2905
|
2570
|
697
|
2571 # Checking for CFLAGS
|
2171
|
2572 if test "$_profile" || test "$_debug" ; then
|
2943
|
2573 CFLAGS="-W -Wall -O2 $_march $_mcpu $_debug $_profile"
|
|
2574 elif test -z "$CFLAGS" ; then
|
2997
|
2575 if test "$host_arch" != "mips" ; then
|
2943
|
2576 CFLAGS="-O4 $_march $_mcpu -pipe -ffast-math -fomit-frame-pointer"
|
|
2577 else
|
|
2578 CFLAGS="-O4 $_march $_mcpu -ffast-math -fomit-frame-pointer"
|
|
2579 fi
|
2239
|
2580 else
|
2943
|
2581 cat <<EOF
|
|
2582
|
|
2583 MPlayer compilation will use CFLAGS set by you, but:
|
|
2584 DO NOT BUGREPORT IF IT DOES NOT WORK
|
|
2585
|
|
2586 It is strongly recommended you let MPlayer choose the correct CFLAGS!
|
|
2587 To do so, execute 'CFLAGS= ./configure <options>'
|
|
2588
|
2239
|
2589 EOF
|
697
|
2590 fi
|
2190
|
2591
|
2943
|
2592 # Thread support
|
2190
|
2593 if linux ; then
|
|
2594 CFLAGS="$CFLAGS -D_REENTRANT"
|
|
2595 elif bsd ; then
|
2943
|
2596 # FIXME bsd needs this so maybe other OS'es
|
2190
|
2597 CFLAGS="$CFLAGS -D_THREAD_SAFE"
|
1182
|
2598 fi
|
|
2599
|
1428
|
2600 # 64 bit file offsets?
|
3327
|
2601 if test "$_largefiles" = yes || freebsd ; then
|
2190
|
2602 CFLAGS="$CFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
|
3327
|
2603 if test "$_dvdread" = yes ; then
|
2190
|
2604 # dvdread support requires this (for off64_t)
|
|
2605 CFLAGS="$CFLAGS -D_LARGEFILE64_SOURCE"
|
1596
|
2606 fi
|
1428
|
2607 fi
|
|
2608
|
2943
|
2609 # Determine OS dependent libs
|
2973
|
2610 if cygwin ; then
|
|
2611 _confcygwin='TARGET_CYGWIN = yes'
|
|
2612 _def_confwin32='#define WIN32'
|
2421
|
2613 else
|
2973
|
2614 _confcygwin="TARGET_CYGWIN = no"
|
1
|
2615 fi
|
|
2616
|
3065
|
2617 # Dynamic linking flags
|
|
2618 # (FIXME: 'echocheck "dynamic linking"' above and modify here accordingly)
|
|
2619 _ld_dl_dynamic=''
|
|
2620 bsd && _ld_dl_dynamic='-rdynamic'
|
|
2621 test "$_xanim" = yes && _ld_dl_dynamic='-rdynamic'
|
|
2622
|
|
2623 _ld_arch="$_ld_arch $_ld_pthread $_ld_dl $_ld_dl_dynamic"
|
2943
|
2624 bsdos && _ld_arch="$_ld_arch -ldvd"
|
1979
|
2625
|
2943
|
2626 _def_debug='#undef MP_DEBUG'
|
|
2627 test "$_debug" && _def_debug='#define MP_DEBUG 1'
|
287
|
2628
|
2943
|
2629 _def_linux='#undef TARGET_LINUX'
|
|
2630 linux && _def_linux='#define TARGET_LINUX 1'
|
11
|
2631
|
233
|
2632
|
2943
|
2633 #############################################################################
|
2973
|
2634 echo "Creating config.mak"
|
|
2635 cat > config.mak << EOF
|
|
2636 # -------- Generated by configure -----------
|
2727
|
2637
|
2943
|
2638 LANG = C
|
|
2639 TARGET_OS = $system_name
|
|
2640 prefix = $_prefix
|
|
2641 AR = ar
|
|
2642 CC = $_cc
|
|
2643 # OPTFLAGS = -O4 $_profile $_debug $_march $_mcpu -pipe -fomit-frame-pointer -ffast-math
|
|
2644 OPTFLAGS = $CFLAGS
|
|
2645 EXTRA_INC = $_inc_extra $_inc_gtk
|
|
2646 WIN32_PATH = -DWIN32_PATH=\\"$_win32libdir\\"
|
2821
|
2647
|
2943
|
2648 STREAMING = $_streaming
|
2896
|
2649
|
2947
|
2650 VO2 = $_vo2
|
|
2651
|
3161
|
2652 EXTRA_LIB = $_ld_extra
|
|
2653 Z_LIB = $_ld_static $_ld_zlib
|
3207
|
2654 HAVE_MLIB = $_mlib
|
3161
|
2655 STATIC_LIB = $_ld_static
|
|
2656
|
2943
|
2657 X11_INC = $_inc_x11
|
3161
|
2658 X11DIR = $_ld_x11
|
|
2659
|
|
2660 # video output
|
3337
|
2661 X_LIB = $_ld_x11 $_ld_gl $_ld_dga $_ld_xv $_ld_vm $_ld_xinerama $_ld_mad $_ld_sock
|
3161
|
2662 GGI_LIB = $_ld_ggi
|
|
2663 MLIB_LIB = $_ld_mlib
|
3207
|
2664 MLIB_INC = $_inc_mlib
|
3161
|
2665 PNG_LIB = $_ld_png
|
|
2666 SDL_LIB = $_ld_sdl
|
|
2667 SVGA_LIB = $_ld_svga
|
|
2668 AA_LIB = $_ld_aa
|
|
2669
|
|
2670 # audio output
|
|
2671 ALSA_LIB = $_ld_alsa
|
3276
|
2672 NAS_LIB = $_ld_nas
|
3161
|
2673 MAD_LIB = $_ld_mad
|
|
2674 VORBIS_LIB = $_ld_vorbis
|
|
2675 SGIAUDIO_LIB = $_ld_sgiaudio
|
|
2676
|
|
2677 # input
|
|
2678 TERMCAP_LIB = $_ld_termcap
|
|
2679 LIRC_LIB = $_ld_lirc
|
2943
|
2680 CSS_USE = $_css
|
3161
|
2681 CSS_LIB = $_ld_css
|
2943
|
2682 SDL_INC = $_inc_sdl
|
|
2683 W32_DEP = $_dep_win32
|
3161
|
2684 W32_LIB = $_ld_win32
|
2943
|
2685 DS_DEP = $_dep_dshow
|
3161
|
2686 DS_LIB = $_ld_dshow
|
2949
|
2687 AV_DEP = $_dep_libavcodec
|
3161
|
2688 AV_LIB = $_ld_libavcodec
|
3432
|
2689 MP1E_DEP = $_dep_mp1e
|
|
2690 MP1E_LIB = $_ld_mp1e
|
3161
|
2691 ARCH_LIB = $_ld_arch $_ld_iconv
|
|
2692 DIVX4LINUX = $_divx4linux
|
|
2693 DECORE_LIB = $_ld_decore
|
3079
|
2694 MENCODER = $_mencoder
|
3356
|
2695 ENCORE_LIB = $_ld_encore $_ld_mp3lame
|
3275
|
2696 DIRECTFB_LIB = $_ld_directfb
|
1258
|
2697
|
|
2698 # --- Some stuff for autoconfigure ----
|
1309
|
2699 $_target_arch
|
1436
|
2700 $_confcygwin
|
1258
|
2701 TARGET_CPU=$iproc
|
2943
|
2702 TARGET_MMX = $_mmx
|
|
2703 TARGET_MMX2 = $_mmx2
|
|
2704 TARGET_3DNOW = $_3dnow
|
|
2705 TARGET_3DNOWEX = $_3dnowex
|
|
2706 TARGET_SSE = $_sse
|
1258
|
2707
|
2943
|
2708 BINUTILS = $_binutils
|
1718
|
2709
|
1694
|
2710 # --- GUI stuff ---
|
2988
|
2711 GTKLIB = $_ld_static $_ld_gtk
|
|
2712 GLIBLIB = $_ld_static $_ld_glib
|
3422
|
2713 GTK_LIBS = $_ld_static $_ld_gui
|
2943
|
2714 GUI = $_gui
|
|
2715 DEBUG = -DDEBUG
|
1694
|
2716
|
1258
|
2717 EOF
|
1
|
2718
|
2943
|
2719 #############################################################################
|
2973
|
2720 echo "Creating config.h"
|
|
2721 cat > config.h << EOF
|
3430
|
2722 /* -------- This file has been automatically generated by configure ---------
|
|
2723 Note: Any changes in it will be lost when you run configure again. */
|
1
|
2724
|
2992
|
2725 /* define this to use simple idct with patched libavcodec */
|
|
2726 #define SIMPLE_IDCT 1
|
2991
|
2727
|
2943
|
2728 #define USE_OSD 1
|
|
2729 #define USE_SUB 1
|
1422
|
2730
|
3430
|
2731 /* Toggles debugging informations */
|
2943
|
2732 $_def_debug
|
1565
|
2733
|
3430
|
2734 /* Indicates is Ogle's libdvdread is available for DVD playback */
|
2943
|
2735 $_def_dvdread
|
1596
|
2736
|
1353
|
2737 /* Common data directory (for fonts, etc) */
|
|
2738 #define DATADIR "$_datadir"
|
|
2739
|
2525
|
2740 /* Define this to compile stream-caching support, it can be enabled via
|
|
2741 -cache <kilobytes> */
|
2943
|
2742 #define USE_STREAM_CACHE 1
|
2525
|
2743
|
1349
|
2744 /* Define for using new DivX4Linux library, instead of open-source OpenDivX */
|
|
2745 /* You have to change DECORE_LIBS in config.mak too! */
|
2943
|
2746 $_def_decore
|
3430
|
2747
|
|
2748 /* Indicates if Divx4linux encore is available
|
|
2749 Note: REQUIRED for mencoder */
|
2943
|
2750 $_def_encore
|
1349
|
2751
|
3430
|
2752 /* Indicates if libmp3lame is available
|
|
2753 Note: REQUIRED for mencoder */
|
3356
|
2754 $_def_mp3lame
|
|
2755
|
3432
|
2756 /* Define libmp1e */
|
|
2757 $_def_mp1e
|
|
2758
|
1
|
2759 /* Define this to enable avg. byte/sec-based AVI sync method by default:
|
1599
|
2760 (use -bps or -nobps commandline option for run-time method selection)
|
|
2761 -bps gives better sync for vbr mp3 audio, it is now default */
|
2943
|
2762 #define AVI_SYNC_BPS 1
|
1
|
2763
|
3161
|
2764 /* Undefine this if you do not want to select mono audio (left or right)
|
732
|
2765 with a stereo MPEG layer 2/3 audio stream. The command-line option
|
|
2766 -stereo has three possible values (0 for stereo, 1 for left-only, 2 for
|
|
2767 right-only), with 0 being the default.
|
|
2768 */
|
2943
|
2769 #define USE_FAKE_MONO 1
|
732
|
2770
|
1
|
2771 /* Undefine this if your soundcard driver has no working select().
|
|
2772 If you have kernel Oops, player hangups, or just no audio, you should
|
|
2773 try to recompile MPlayer with this option disabled! */
|
2943
|
2774 $_def_select
|
1
|
2775
|
2151
|
2776 /* define this to use iconv(3) function to codepage conversions */
|
2943
|
2777 $_def_iconv
|
1
|
2778
|
3015
|
2779 /* define this to use RTC (/dev/rtc) for video timers (LINUX only) */
|
|
2780 $_def_rtc
|
|
2781
|
755
|
2782 /* set up max. outburst. use 65536 for ALSA 0.5, for others 16384 is enough */
|
|
2783 #define MAX_OUTBURST 65536
|
|
2784
|
586
|
2785 /* set up audio OUTBURST. Do not change this! */
|
|
2786 #define OUTBURST 512
|
|
2787
|
1057
|
2788 /* Define this if your system has the header file for the OSS sound interface */
|
2943
|
2789 $_def_sys_soundcard
|
1057
|
2790
|
1309
|
2791 /* Define this if your system has the "malloc.h" header file */
|
2943
|
2792 $_def_malloc
|
1309
|
2793
|
2774
|
2794 /* memalign is mapped to malloc if unsupported */
|
2943
|
2795 $_def_memalign
|
2774
|
2796 #ifndef HAVE_MEMALIGN
|
|
2797 # define memalign(a,b) malloc(b)
|
|
2798 #endif
|
1678
|
2799
|
1309
|
2800 /* Define this if your system has the "alloca.h" header file */
|
2943
|
2801 $_def_alloca
|
1309
|
2802
|
|
2803 /* Define this if your system has the "sys/mman.h" header file */
|
2943
|
2804 $_def_mman
|
1309
|
2805
|
|
2806 /* Define this if you have the elf dynamic linker -ldl library */
|
2943
|
2807 $_def_dl
|
1057
|
2808
|
1261
|
2809 /* Define this if you have the kstat kernel statistics library */
|
2943
|
2810 $_def_kstat
|
1261
|
2811
|
2482
|
2812 /* Define this if you have zlib */
|
2943
|
2813 $_def_zlib
|
2482
|
2814
|
3004
|
2815 /* Define this if you have shm support */
|
|
2816 $_def_shm
|
|
2817
|
2905
|
2818 /* Define this if your system has vsscanf */
|
2943
|
2819 $_def_vsscanf
|
2905
|
2820
|
1
|
2821 /* LIRC (remote control, see www.lirc.org) support: */
|
2943
|
2822 $_def_lirc
|
1
|
2823
|
492
|
2824 /* DeCSS support using libcss */
|
2943
|
2825 $_def_css
|
492
|
2826
|
41
|
2827 /* Define this to enable MPEG 1/2 image postprocessing (requires FAST cpu!) */
|
2943
|
2828 #define MPEG12_POSTPROC 1
|
41
|
2829
|
2228
|
2830 /* Define this to enable image postprocessing in libavcodec (requires FAST cpu!) */
|
2943
|
2831 $_def_ffpostprocess
|
2228
|
2832
|
2943
|
2833 #define HAVE_ODIVX_POSTPROCESS 1
|
2184
|
2834
|
1517
|
2835 /* Win32 DLL support */
|
2943
|
2836 $_def_win32
|
1517
|
2837
|
627
|
2838 /* DirectShow support */
|
2943
|
2839 $_def_dshow
|
627
|
2840
|
1279
|
2841 /* ffmpeg's libavcodec support (requires libavcodec source) */
|
2943
|
2842 $_def_libavcodec
|
2945
|
2843 $_def_libavcodecso
|
2943
|
2844
|
1383
|
2845 /* use only decoders from libavcodec: */
|
2943
|
2846 #define CONFIG_DECODERS 1
|
3659
|
2847 #define CONFIG_ENCODERS 1
|
1279
|
2848
|
2657
|
2849 /* XAnim DLL support */
|
2943
|
2850 $_def_xanim
|
|
2851 $_def_xanim_path
|
2657
|
2852
|
642
|
2853 /* Use 3dnow/mmxext/sse/mmx optimized fast memcpy() [maybe buggy... signal 4]*/
|
2943
|
2854 $_def_fastmemcpy
|
642
|
2855
|
723
|
2856 /* gui support, please do not edit this option */
|
2943
|
2857 $_def_gui
|
1004
|
2858 #define PREFIX "$_prefix"
|
723
|
2859
|
1029
|
2860 /* Audio lib drivers */
|
2943
|
2861 $_def_ossaudio
|
|
2862 $_def_alsa5
|
|
2863 $_def_alsa9
|
|
2864 $_def_sunaudio
|
|
2865 $_def_sgiaudio
|
3276
|
2866 $_def_nas
|
|
2867
|
1008
|
2868
|
947
|
2869 /* Enable fast OSD/SUB renderer (looks ugly, but uses less CPU power) */
|
|
2870 #undef FAST_OSD
|
|
2871 #undef FAST_OSD_TABLE
|
|
2872
|
2821
|
2873 /* Enable TV Interface support */
|
2943
|
2874 $_def_tv
|
2821
|
2875
|
3242
|
2876 /* Enable Video 4 Linux TV interface support */
|
|
2877 $_def_tv_v4l
|
|
2878
|
1
|
2879 /* Define if your processor stores words with the most significant
|
|
2880 byte first (like Motorola and SPARC, unlike Intel and VAX). */
|
2943
|
2881 $_def_words_endian
|
1
|
2882
|
2943
|
2883 $_def_arch
|
1
|
2884
|
2943
|
2885 /* Define this for Cygwin build for win32 */
|
|
2886 $_def_confwin32
|
1441
|
2887
|
849
|
2888 /* Define this to any prefered value from 386 up to infinity with step 100 */
|
|
2889 #define __CPU__ $iproc
|
|
2890
|
2943
|
2891 $_def_linux
|
2242
|
2892
|
3259
|
2893 $_def_vcd
|
|
2894
|
1495
|
2895 #ifdef sun
|
|
2896 #define DEFAULT_CDROM_DEVICE "/vol/dev/aliases/cdrom0"
|
1608
|
2897 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
|
1495
|
2898 #else
|
|
2899 #define DEFAULT_CDROM_DEVICE "/dev/cdrom"
|
1608
|
2900 #define DEFAULT_DVD_DEVICE "/dev/dvd"
|
1495
|
2901 #endif
|
|
2902
|
1596
|
2903
|
849
|
2904 /*----------------------------------------------------------------------------
|
|
2905 **
|
|
2906 ** NOTE: Instead of modifying these definitions here, use the
|
|
2907 ** --enable/--disable options of the ./configure script!
|
|
2908 ** See ./configure --help for details.
|
|
2909 **
|
|
2910 *---------------------------------------------------------------------------*/
|
1
|
2911
|
3089
|
2912 /* nanosleep support */
|
|
2913 $_def_nanosleep
|
|
2914
|
1
|
2915 /* termcap flag for getch2.c */
|
2943
|
2916 $_def_termcap
|
1057
|
2917
|
3007
|
2918 /* termios flag for getch2.c */
|
|
2919 $_def_termios
|
3281
|
2920 $_def_termios_h
|
|
2921 $_def_termios_sys_h
|
3007
|
2922
|
1826
|
2923 /* enable PNG support */
|
2943
|
2924 $_def_png
|
1
|
2925
|
2421
|
2926 /* libmad support */
|
2943
|
2927 $_def_mad
|
2421
|
2928
|
1826
|
2929 /* enable OggVorbis support */
|
2943
|
2930 $_def_vorbis
|
1826
|
2931
|
2943
|
2932 $_def_streaming
|
1057
|
2933
|
1
|
2934 /* Extension defines */
|
2943
|
2935 $_def_3dnow // only define if you have 3DNOW (AMD k6-2, AMD Athlon, iDT WinChip, etc.)
|
|
2936 $_def_3dnowex // only define if you have 3DNOWEX (AMD Athlon, etc.)
|
|
2937 $_def_mmx // only define if you have MMX (newer x86 chips, not P54C/PPro)
|
|
2938 $_def_mmx2 // only define if you have MMX2 (Athlon/PIII/4/CelII)
|
|
2939 $_def_sse // only define if you have SSE (Intel Pentium III/4 or Celeron II)
|
1
|
2940
|
1438
|
2941 #ifdef HAVE_MMX
|
2943
|
2942 #define USE_MMX_IDCT 1
|
1438
|
2943 #endif
|
|
2944
|
2943
|
2945 $_def_mlib // Sun mediaLib, available only on solaris
|
1718
|
2946
|
1680
|
2947 /* libmpeg2 uses a different feature test macro for mediaLib */
|
|
2948 #ifdef HAVE_MLIB
|
2943
|
2949 #define LIBMPEG2_MLIB 1
|
1680
|
2950 #endif
|
|
2951
|
1
|
2952 /* libvo options */
|
2961
|
2953 #define SCREEN_SIZE_X 1
|
|
2954 #define SCREEN_SIZE_Y 1
|
2943
|
2955 $_def_x11
|
|
2956 $_def_xv
|
|
2957 $_def_vm
|
|
2958 $_def_xinerama
|
|
2959 $_def_gl
|
|
2960 $_def_dga
|
|
2961 $_def_dga2
|
|
2962 $_def_sdl
|
704
|
2963 /* defined for SDLlib with keyrepeat bugs (before 1.2.1) */
|
2943
|
2964 $_def_sdlbuggy
|
|
2965 $_def_ggi
|
|
2966 $_def_3dfx
|
|
2967 $_def_tdfxfb
|
3275
|
2968 $_def_directfb
|
2943
|
2969 $_def_mga
|
|
2970 $_def_xmga
|
|
2971 $_def_syncfb
|
|
2972 $_def_fbdev
|
|
2973 $_def_dxr3
|
|
2974 $_def_dvb
|
|
2975 $_def_svga
|
|
2976 $_def_xdpms
|
|
2977 $_def_aa
|
1
|
2978
|
1694
|
2979 /* used by GUI: */
|
2943
|
2980 $_def_xshape
|
1694
|
2981
|
2943
|
2982 #if defined(HAVE_GL) || defined(HAVE_X11) || defined(HAVE_XV)
|
|
2983 #define X11_FULLSCREEN 1
|
1
|
2984 #endif
|
|
2985
|
|
2986 EOF
|
|
2987
|
2943
|
2988 #############################################################################
|
1
|
2989
|
2973
|
2990 echo "Creating libvo/config.mak"
|
2943
|
2991 _voobj=`echo $_vosrc | sed -e 's/\.c/\.o/g'`
|
2973
|
2992 cat > libvo/config.mak << EOF
|
1
|
2993 include ../config.mak
|
2943
|
2994 OPTIONAL_SRCS = $_vosrc
|
|
2995 OPTIONAL_OBJS = $_voobj
|
1
|
2996 EOF
|
|
2997
|
2943
|
2998 #############################################################################
|
965
|
2999
|
2973
|
3000 echo "Creating libvo2/config.mak"
|
2947
|
3001 _vo2obj=`echo $_vo2src | sed -e 's/\.c/\.o/g'`
|
2973
|
3002 cat > libvo2/config.mak << EOF
|
2947
|
3003 include ../config.mak
|
|
3004 OPTIONAL_SRCS = $_vo2src
|
|
3005 OPTIONAL_OBJS = $_vo2obj
|
|
3006 EOF
|
|
3007
|
|
3008 #############################################################################
|
|
3009
|
2973
|
3010 echo "Creating libao2/config.mak"
|
2943
|
3011 _aoobj=`echo $_aosrc | sed -e 's/\.c/\.o/g'`
|
2973
|
3012 cat > libao2/config.mak << EOF
|
965
|
3013 include ../config.mak
|
2943
|
3014 OPTIONAL_SRCS = $_aosrc
|
|
3015 OPTIONAL_OBJS = $_aoobj
|
|
3016 EOF
|
965
|
3017
|
2943
|
3018 #############################################################################
|
965
|
3019
|
2943
|
3020 echo "Creating help_mp.h"
|
|
3021 cat > help_mp.h << EOF
|
|
3022 #include "$_mp_help"
|
965
|
3023 EOF
|
|
3024
|
2943
|
3025 #############################################################################
|
|
3026
|
3169
|
3027 #FIXME: add something like "Optimizing for: i686 mmx mmx2 sse"
|
1
|
3028 cat << EOF
|
|
3029
|
|
3030 Config files successfully generated by ./configure !
|
2943
|
3031
|
|
3032 Install prefix: $_prefix
|
|
3033 Data directory: $_datadir
|
3193
|
3034
|
|
3035 Enabled optional drivers:
|
|
3036 Input: $_inputmodules
|
|
3037 Codecs: $_codecmodules
|
|
3038 Audio output: $_aomodules
|
|
3039 Video output: $_vomodules
|
2190
|
3040
|
2943
|
3041 'config.h' and 'config.mak' contain your configuration options.
|
|
3042 Note: if you alter theses files (for instance CFLAGS) MPlayer may no longer
|
|
3043 compile *** DON'T BUGREPORT if you tweak these files ***
|
|
3044
|
|
3045 'make' will now compile MPlayer and 'make install' will install it.
|
2190
|
3046 Note: On non-Linux systems you might need to use 'gmake' instead of 'make'.
|
1
|
3047
|
|
3048 EOF
|
|
3049
|
1618
|
3050
|
2171
|
3051 if test "$_mtrr" = yes ; then
|
2943
|
3052 echo "Please check mtrr settings at /proc/mtrr (see DOCS/video.html#2.2.1.1)"
|
|
3053 echo
|
1
|
3054 fi
|
|
3055
|
2171
|
3056 if test "$_sdl" = "outdated" ; then
|
2190
|
3057 cat <<EOF
|
|
3058 You have an outdated version of libSDL installed (older than v1.1.7) and SDL
|
|
3059 support has therefore been disabled.
|
|
3060
|
|
3061 Please upgrade to a more recent version (version 1.1.8 and above are known to
|
|
3062 work). You may get this library from: http://www.libsdl.org
|
|
3063
|
|
3064 You need to re-run ./configure and recompile after updating SDL. If you are
|
|
3065 only interested in the libSDL audio drivers, then older version might work.
|
|
3066
|
|
3067 Use --enable-sdl to force usage of libSDL.
|
|
3068 EOF
|
1
|
3069 fi
|
|
3070
|
2997
|
3071 if x86 ; then
|
2425
|
3072 if test "$_win32" = no ; then
|
|
3073 if test "$_win32libdir" ; then
|
|
3074 cat <<EOF
|
2190
|
3075 Failed to find a WIN32 codecs dir at $_win32libdir!
|
|
3076 Create it and copy the DLL files there! (You can get them from your windows
|
|
3077 directory or download them from:
|
2225
|
3078 ftp://ftp.MPlayerHQ.hu/MPlayer/releases/w32codec.zip
|
2190
|
3079 EOF
|
2425
|
3080 fi
|
2190
|
3081 else
|
2943
|
3082 if test "$_win32libdir" ; then
|
3189
|
3083 # echo "Ok, found Win32 codecs directory at $_win32libdir."
|
|
3084 :
|
2427
|
3085 else
|
|
3086 cat <<EOF
|
2594
|
3087 Failed to find a WIN32 codecs dir!
|
2427
|
3088 Create it and copy the DLL files there! (You can get them from your windows
|
|
3089 directory or download them from:
|
|
3090 ftp://ftp.MPlayerHQ.hu/MPlayer/releases/w32codec.zip
|
|
3091 EOF
|
|
3092 fi
|
2190
|
3093 fi
|
1
|
3094 else
|
2943
|
3095 cat <<EOF
|
2190
|
3096 NOTE: WIN32 codec DLLs are not supported on your CPU ($host_arch).
|
|
3097 You may encounter a few AVI files that cannot be played due to missing
|
|
3098 opensource video/audio codec support.
|
|
3099 EOF
|
1
|
3100 fi
|
|
3101
|
3189
|
3102
|
2943
|
3103 cat <<EOF
|
|
3104
|
2973
|
3105 If you cannot understand why a test failed please check $TMPLOG.
|
|
3106 If you believe it is a bug in configure, please report it.
|
2943
|
3107
|
|
3108 EOF
|
|
3109
|
1021
|
3110 # Last move:
|
2190
|
3111 rm -f "$TMPO" "$TMPC" "$TMPS" "$TMPCPP"
|
1021
|
3112
|