Mercurial > mplayer.hg
annotate configure @ 289:dbe4a779b891
vga<->vgagl swapped
author | arpi_esp |
---|---|
date | Thu, 05 Apr 2001 20:03:26 +0000 |
parents | abc78352e35e |
children | 639dec99c0fd |
rev | line source |
---|---|
1 | 1 #!/bin/sh |
2 | |
3 # | |
4 # MPlayer configurator. (C) 2000 Pontscho/fresh!mindworkz | |
5 # pontscho@makacs.poliod.hu | |
6 # | |
4 | 7 # Changes in reversed order: |
1 | 8 # |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
9 # 2001/03/24 by Mike Graffam: |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
10 # - added autodetect code for XF86VidMode, along with explicit --enable-vm |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
11 # |
196 | 12 # 2001/03/22 by Bivanbi: |
13 # - new option: --cc (to specify C compiler path+name) | |
14 # | |
15 # 2001/03/08 by LGB: | |
59 | 16 # - DGA detection-o-matic :) |
17 # - '--disable-dga' option to force disabling DGA vo driver compiling into mplayer | |
18 # - line about '--enable-dga' is added to the help message | |
19 # | |
196 | 20 # 2001/02/26 by A'rpi: |
11 | 21 # - added DGA option: --enable-dga |
22 # - no notify if --with-win32libdir used [Tibcu] | |
23 # | |
196 | 24 # 2001/02/25 by LGB: |
4 | 25 # - TMPDIR or TEMPDIR variable is honored during tests for temporary files |
26 # - ChangeLog inside configure was reversed ;-) | |
1 | 27 # |
28 # some changes by A'rpi/ESP-team: | |
4 | 29 # - added 'athlon' target for the new athlongcc [Ian Kumlien] |
30 # - applied _win32libdir=-L patch by Magnus Pfeffer | |
1 | 31 # |
32 # some changes by LGB: | |
33 # - Ehhh, AMD K6-2 returns with cpuid 5 ;-) Changing back Arpi's last change :) | |
34 # More info: AMD K6-2 reports with family 5, duron with 6, so I attached | |
35 # much finer CPU type detection based on Linux kernel's one :) | |
36 # (k5: 5, model<6, k6: 5, model>=6, k7: 6, model=any) | |
37 # - On some exit point (error) temporary files were not deleted. Fixed. | |
38 # - $TMP and $TMP2 are renamed to $TMPC and $TMPO ;-) | |
39 # - Some useless { ... } are removed | |
40 # | |
41 # some changes by A'rpi/ESP-team: | |
11 | 42 # - the --with-win32libdir patch by Aaron Hope applied |
4 | 43 # - some english bugfix again :) |
44 # - cpu type selection changed: | |
45 # ( k7->k6->k5-> ) || (i686->pentiumpro-> ) pentium-> i486 -> i386 -> error! | |
46 # - cpu type for AMD/family=5 changed k6->k5 | |
47 # | |
48 # some changes by LGB (Gábor Lénárt): | |
49 # - SOME gcc may support 'k7', so I added tests for ALL CPU type optimization | |
50 # switches with the ability to find out the best optimization for your CPU. | |
51 # - Help moved to the begining to avoid tests if user only wants help. | |
52 # - A one lined help to indicate detailed help for users | |
53 # - Fixed /tmp race (PIDs can be predicted, I added random numbers as well) | |
54 # | |
55 # some changes by A'rpi/ESP-team: | |
56 # - some english bugfix :) | |
57 # - removed _??exists flags, _?? is enough... | |
58 # - creating only config.mak files instead of whole Makefiles | |
1 | 59 # |
60 # -- | |
61 | |
62 | |
63 # LGB: Help moved here. | |
64 | |
65 if [ "$1" = "--help" -o "$1" = "-help" -o "$1" = "-h" ]; then | |
66 cat << EOF | |
67 | |
68 usage: $0 [options] | |
69 | |
70 params: | |
196 | 71 --cc use this C compiler to build MPlayer [gcc] |
1 | 72 --enable-mmx build with mmx support [autodetect] |
73 --enable-3dnow build with 3dnow! support [autodetect] | |
74 --enable-sse build with sse support [autodetect] | |
75 --enable-gl build with OpenGL render support [autodetect] | |
59 | 76 --enable-dga build with DGA support [autodetect] |
287 | 77 --enable-svga build with SVGAlib support [autodetect] |
1 | 78 --enable-sdl build with SDL render support [def.: disabled!] |
79 --enable-mga build with mga_vid support [autodetect, if /dev/mga_vid | |
80 is available] | |
81 --enable-xmga build with mga_vid X Window support [autodetect, | |
82 if both /dev/mga_vid and x11 are available] | |
83 --enable-xv build with Xv render support for X 4.x [autodetect] | |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
84 --enable-vm build with XF86VidMode support for x11 driver |
1 | 85 --enable-x11 build with X11 render support [autodetect] |
225 | 86 --enable-fbdev build with FBDev render support [_not_ autodetected] |
1 | 87 --enable-mlib build with MLIB support ( only Solaris ) |
88 | |
89 --enable-termcap use termcap database for key codes | |
90 --enable-xmmp use XMMP audio drivers | |
91 --enable-lirc enable LIRC (remote control) support | |
92 | |
93 --with-x11libdir=DIR X library files are in DIR | |
94 --with-win32libdir=DIR windows codec files | |
95 | |
96 --size-x=SIZE default screen width | |
97 --size-y=SIZE default screen height | |
98 EOF | |
99 exit 0 | |
100 fi | |
101 | |
102 # LGB: Some inital help | |
103 | |
104 echo "You can get detailed help on configure with: $0 --help" | |
105 echo "Please wait while ./configure discovers your software and hardware environment!" | |
106 | |
107 # LGB: temporary files | |
108 | |
4 | 109 TMPC="mplayer-conf-${RANDOM}-$$-${RANDOM}.c" |
110 TMPO="mplayer-conf-${RANDOM}-$$-${RANDOM}.o" | |
1 | 111 |
4 | 112 if [ ! -z $TMPDIR ]; then |
113 TMPC="${TMPDIR}/${TMPC}" | |
114 TMPO="${TMPDIR}/${TMPO}" | |
115 elif [ ! -z $TEMPDIR ]; then | |
116 TMPC="${TEMPDIR}/${TMPC}" | |
117 TMPO="${TEMPDIR}/${TMPO}" | |
118 else | |
119 TMPC="/tmp/${TMPC}" | |
120 TMPO="/tmp/${TMPO}" | |
121 fi | |
1 | 122 |
123 # --- | |
124 | |
125 # config files | |
126 CCONF='config.h' | |
127 MCONF='config.mak' | |
128 | |
196 | 129 # --- Check for C compiler: |
130 | |
131 _cc=gcc | |
132 | |
133 for ac_option | |
134 do | |
135 case "$ac_option" in | |
136 --cc=*) | |
137 _cc=`echo $ac_option | cut -d '=' -f 2` | |
138 ;; | |
139 esac | |
140 done | |
141 | |
1 | 142 # --- |
143 | |
144 TAB=`echo -n -e "\t"` | |
145 pname=`cat /proc/cpuinfo | grep 'model name' | cut -d ':' -f 2` | |
146 pparam=`cat /proc/cpuinfo | grep 'features' | cut -d ':' -f 2` | |
147 if [ -z "$pparam" ]; then | |
148 pparam=`cat /proc/cpuinfo | grep 'flags' | cut -d ':' -f 2` | |
149 fi | |
150 pvendor=`cat /proc/cpuinfo | grep 'vendor_id' | cut -d ':' -f 2 | cut -d ' ' -f 2` | |
151 pfamily=`cat /proc/cpuinfo | grep 'cpu family' | cut -d ':' -f 2 | cut -d ' ' -f 2` | |
152 pmodel=`cat /proc/cpuinfo | grep "model$TAB" | cut -d ':' -f 2 | cut -d ' ' -f 2` | |
153 pstepping=`cat /proc/cpuinfo | grep 'stepping' | cut -d ':' -f 2 | cut -d ' ' -f 2` | |
154 | |
155 _mmx=no | |
156 _3dnow=no | |
157 _mtrr=no | |
158 _sse=no | |
159 _mga=no | |
160 _gl=no | |
161 _sdl=no | |
162 _xv=no | |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
163 _vm=no |
1 | 164 _x11=no |
165 _3dfx=no | |
166 _syncfb=no | |
167 _mlib=no | |
168 _mpg123=no | |
169 _xmga=no | |
11 | 170 _dga=no |
233
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
171 _dga2=no |
287 | 172 _svga=no |
225 | 173 _fbdev=no |
1 | 174 _lirc=no |
175 | |
176 _x=1 | |
177 _y=1 | |
178 | |
179 _gllib= | |
180 _sdllib= | |
181 _x11lib= | |
182 _xvlib= | |
183 _xlibdir= | |
184 | |
185 for i in `echo $pparam`; do | |
186 | |
187 case "$i" in | |
188 3dnow) | |
189 _3dnow=yes | |
190 _mpg123=yes | |
191 ;; | |
192 mmx) | |
193 _mmx=yes | |
194 ;; | |
195 mtrr) | |
196 _mtrr=yes | |
197 ;; | |
198 k6_mtrr) | |
199 _mtrr=yes | |
200 ;; | |
201 xmm) | |
202 _sse=yes | |
203 ;; | |
204 sse) | |
205 _sse=yes | |
206 ;; | |
207 kni) | |
208 _sse=yes | |
209 ;; | |
210 esac | |
211 | |
212 done | |
213 | |
214 if [ -e /usr/X11R6 ]; then | |
215 _x11libdir=-L/usr/X11R6/lib | |
216 else | |
217 if [ -e /usr/X11 ]; then | |
218 _x11libdir=-L/usr/X11/lib | |
219 fi | |
220 fi | |
221 | |
222 _win32libdirnotify=no | |
223 if [ -e /usr/lib/win32 ]; then | |
224 _win32libdir=/usr/lib/win32 | |
225 else | |
226 if [ -e /usr/local/lib/win32 ]; then | |
227 _win32libdir=/usr/local/lib/win32 | |
228 else | |
229 # This is our default: | |
230 _win32libdir=/usr/lib/win32 | |
231 _win32libdirnotify=yes | |
232 fi | |
233 fi | |
234 | |
235 | |
236 if [ -e /dev/mga_vid ]; then | |
237 _mga=yes | |
238 _syncfb=yes | |
239 fi | |
240 | |
241 proc=pentium | |
242 | |
243 case "$pvendor" in | |
244 AuthenticAMD) | |
245 case "$pfamily" in | |
246 3) | |
247 proc=i386 | |
248 ;; | |
249 4) | |
250 proc=i486 | |
251 ;; | |
252 5) | |
253 if [ $pmodel -ge 6 ]; then # LGB: models are: K5/SSA5 K5 K5 K5 ? ? K6 K6 K6-2 K6-3 | |
254 proc=k6 | |
255 else | |
256 proc=k5 | |
257 fi | |
258 ;; | |
259 6|7) # LGB: Though it seems Athlon CPUs returns with "6" | |
260 proc=k7 | |
261 ;; | |
262 *) | |
263 proc=pentium | |
264 ;; | |
265 esac | |
266 ;; | |
267 GenuineIntel) | |
268 case "$pfamily" in | |
269 3) | |
270 proc=i386 | |
271 ;; | |
272 4) | |
273 proc=i486 | |
274 ;; | |
275 5) | |
276 proc=pentium | |
277 ;; | |
278 6) | |
279 proc=i686 | |
280 ;; | |
281 *) | |
282 proc=pentium | |
283 ;; | |
284 esac | |
285 ;; | |
286 unknown) # added by Gabucino - upon Tibcu's request | |
287 case "$pfamily" in | |
288 3) | |
289 proc=i386 | |
290 ;; | |
291 4) | |
292 proc=i486 | |
293 ;; | |
294 *) | |
295 proc=pentium | |
296 ;; | |
297 esac | |
298 ;; | |
299 *) | |
300 proc=pentium | |
301 ;; | |
302 esac | |
303 | |
304 # --- | |
305 | |
306 cat > $TMPC << EOF | |
307 int main( void ) { return 0; } | |
308 EOF | |
309 | |
310 # check that gcc supports our cpu, if not, fallback to pentium | |
311 # LGB: check -mcpu and -march swithing step by step with enabling | |
312 # to fall back till 386. | |
313 | |
314 #echo -n "Checking your GCC CPU optimalization abilities: " | |
315 if [ "$proc" = "k7" ]; then | |
316 # echo -n "trying k7 " | |
196 | 317 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=athlon |
1 | 318 fi |
319 if [ "$proc" = "athlon" ]; then | |
320 # echo -n "trying athlon " | |
196 | 321 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=k6 |
1 | 322 fi |
323 if [ "$proc" = "k6" ]; then | |
324 # echo -n "trying k6 " | |
196 | 325 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=k5 |
1 | 326 fi |
327 if [ "$proc" = "k5" ]; then | |
328 # echo -n "trying k5 " | |
196 | 329 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=pentium |
1 | 330 fi |
331 if [ "$proc" = "i686" ]; then | |
332 # echo -n "trying i686 " | |
196 | 333 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=pentiumpro |
1 | 334 fi |
335 if [ "$proc" = "pentiumpro" ]; then | |
336 # echo -n "trying pentiumpro " | |
196 | 337 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=pentium |
1 | 338 fi |
339 if [ "$proc" = "pentium" ]; then | |
340 # echo -n "trying pentium " | |
196 | 341 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=i486 |
1 | 342 fi |
343 if [ "$proc" = "i486" ]; then | |
344 # echo -n "trying i486 " | |
196 | 345 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=i386 |
1 | 346 fi |
347 if [ "$proc" = "i386" ]; then | |
348 # echo -n "trying i386 " | |
196 | 349 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=error |
1 | 350 fi |
351 if [ "$proc" = "error" ]; then | |
352 echo | |
353 echo "Your gcc does not support even \"i386\" for '-march' and '-mcpu'." >&2 | |
354 rm -f $TMPC $TMPO | |
355 exit | |
356 fi | |
357 #echo "DONE (${proc})." | |
358 | |
359 | |
360 # check GL & X11 & Xext & Xv & SDL & termcap libs | |
361 | |
196 | 362 $_cc $TMPC -o $TMPO $_x11libdir/ -lGL &> /dev/null && _gl=yes |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
363 $_cc $TMPC -o $TMPO $_x11libdir/ -lXxf86vm &> /dev/null && _vm=yes |
289 | 364 $_cc $TMPC -o $TMPO -lvgagl -lvga &> /dev/null && _svga=yes |
196 | 365 $_cc $TMPC -o $TMPO $_x11libdir -lX11 -lXext &> /dev/null && _x11=yes |
366 $_cc $TMPC -o $TMPO $_x11libdir -lXv &> /dev/null && _xv=yes | |
367 $_cc $TMPC -o $TMPO $_x11libdir -L/usr/local/lib/ -lpthread &> /dev/null || \ | |
1 | 368 { echo "Lib pthread not found."; rm -f $TMPC $TMPO ; exit 1; } |
369 | |
370 # SDL disabled by default (0.11pre22-) because of the compilation problems | |
371 # this is very buggy & experimental code, use it only if you really need it!! | |
372 _have_sdl=no | |
196 | 373 $_cc $TMPC -o $TMPO $_x11libdir -L/usr/local/lib/ -lSDL -lpthread &> /dev/null && _have_sdl=yes |
1 | 374 |
375 _termcap=no | |
196 | 376 $_cc $TMPC -o $TMPO -ltermcap &> /dev/null && _termcap=yes |
1 | 377 |
378 _binutils=no | |
379 as libac3/downmix/downmix_i386.S -o $TMPO &> /dev/null && _binutils=yes | |
380 | |
59 | 381 # LGB: Check DGA |
382 | |
383 cat > $TMPC << EOF | |
384 #include <stdio.h> | |
385 #include <X11/Xlib.h> | |
386 #include <X11/extensions/xf86dga.h> | |
387 int main (void) { return 0;} | |
388 EOF | |
389 | |
390 _dga=no | |
196 | 391 $_cc $TMPC -o $TMPO -L/usr/X11R6/lib -L/usr/X11/lib -lX11 -lXext -lXxf86dga -lXxf86vm &> /dev/null && _dga=yes |
59 | 392 # Note: the -lXxf86vm library is the VideoMode extension and though it's |
393 # not needed for DGA, AFAIK every distribution packages together with DGA | |
394 # stuffs named 'X extensions' or something similar. This check can be usefull | |
395 # for further mplayer versions to set resolution by mplayer itself. | |
396 # If you run into problems, remove '-lXxf86vm'. | |
397 | |
398 # --- | |
399 | |
233
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
400 # Check if DGA is 2.0 or greater |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
401 cat > $TMPC << EOF |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
402 #include <stdio.h> |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
403 #include <X11/Xlib.h> |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
404 #include <X11/extensions/xf86dga.h> |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
405 int main (void) { XDGAMode mode; XDGADevice device; return 0;} |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
406 EOF |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
407 |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
408 _dga2=no |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
409 $_cc $TMPC -o $TMPO -L/usr/X11R6/lib -L/usr/X11/lib -lX11 -lXext -lXxf86dga -lXxf86vm &> /dev/null && _dga2=yes |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
410 |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
411 |
1 | 412 cat > $TMPC << EOF |
413 #include <GL/gl.h> | |
414 int main( void ) { return 0; } | |
415 EOF | |
416 | |
196 | 417 $_cc $TMPC -o $TMPO $_x11libdir/ -lGL &> /dev/null || \ |
1 | 418 { _gl=no; echo "GL includes not found!";} |
419 | |
420 rm -f $TMPC $TMPO | |
421 | |
422 | |
423 if [ $_x11 = 'yes' ]; then | |
424 if [ $_mga = 'yes' ]; then | |
425 _xmga=yes | |
426 fi | |
427 fi | |
428 | |
429 # --- | |
430 | |
431 # check for the parameters. | |
432 | |
433 for ac_option | |
434 do | |
435 case "$ac_option" in | |
436 --enable-sse) | |
437 _sse=yes | |
438 ;; | |
439 --enable-3dnow) | |
440 _3dnow=yes | |
441 ;; | |
442 --enable-mmx) | |
443 _mmx=yes | |
444 ;; | |
72 | 445 --enable-mtrr) |
446 _mtrr=yes | |
447 ;; | |
1 | 448 --enable-gl) |
449 _gl=yes | |
450 ;; | |
451 --enable-sdl) | |
452 _sdl=yes | |
453 ;; | |
454 --enable-mga) | |
455 _mga=yes | |
456 ;; | |
457 --enable-xmga) | |
458 _xmga=yes | |
459 ;; | |
287 | 460 --enable-svga) |
461 _svga=yes | |
462 ;; | |
11 | 463 --enable-dga) |
464 _dga=yes | |
233
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
465 ;; |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
466 --enable-dga2) |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
467 _dga2=yes |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
468 ;; |
1 | 469 --enable-xv) |
470 _xv=yes | |
471 ;; | |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
472 --enable-vm) |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
473 _vm=yes |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
474 ;; |
1 | 475 --enable-x11) |
476 _x11=yes | |
477 ;; | |
478 --enable-3dfx) | |
479 _3dfx=yes | |
480 ;; | |
481 --enable-syncfb) | |
482 _syncfb=yes | |
483 ;; | |
225 | 484 --enable-fbdev) |
485 _fbdev=yes | |
486 ;; | |
1 | 487 --enable-mlib) |
488 _mlib=yes | |
489 ;; | |
490 --enable-termcap) | |
491 _termcap=yes | |
492 ;; | |
493 --enable-xmmp) | |
494 _xmmp=yes | |
495 ;; | |
496 --enable-lirc) | |
497 _lirc=yes | |
498 ;; | |
499 --disable-sse) | |
500 _sse=no | |
501 ;; | |
502 --disable-3dnow) | |
503 _3dnow=no | |
504 ;; | |
505 --disable-mmx) | |
506 _mmx=no | |
507 ;; | |
72 | 508 --disable-mtrr) |
509 _mtrr=no | |
510 ;; | |
1 | 511 --disable-gl) |
512 _gl=no | |
513 ;; | |
514 --disable-sdl) | |
515 _sdl=no | |
516 ;; | |
517 --disable-mga) | |
518 _mga=no | |
519 ;; | |
520 --disable-xmga) | |
521 _xmga=no | |
522 ;; | |
523 --disable-xv) | |
524 _xv=no | |
525 ;; | |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
526 --disable-vm) |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
527 _vm=no |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
528 ;; |
1 | 529 --disable-x11) |
530 _x11=no | |
531 ;; | |
532 --disable-mlib) | |
533 _mlib=no | |
534 ;; | |
287 | 535 --disable-svga) |
536 _svga=no | |
537 ;; | |
59 | 538 --disable-dga) |
539 _dga=no | |
540 ;; | |
233
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
541 --disable-dga2) |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
542 _dga2=no |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
543 ;; |
225 | 544 --disable-fbdev) |
545 _fbdev=no | |
546 ;; | |
1 | 547 --disable-termcap) |
548 _termcap=no | |
549 ;; | |
550 --with-x11libdir=*) | |
551 _x11libdir=-L`echo $ac_option | cut -d '=' -f 2` | |
552 ;; | |
553 --with-win32libdir=*) | |
554 _win32libdir=`echo $ac_option | cut -d '=' -f 2` | |
11 | 555 _win32libdirnotify=no |
1 | 556 ;; |
557 --size-x=*) | |
558 _x=`echo $ac_option | cut -d '=' -f 2` | |
559 ;; | |
560 --size-y=*) | |
561 _y=`echo $ac_option | cut -d '=' -f 2` | |
562 ;; | |
196 | 563 --cc=*) |
564 ;; | |
1 | 565 esac |
566 done | |
567 | |
568 # to screen. | |
196 | 569 echo "Using C compiler: $_cc" |
1 | 570 echo "Checking for cpu vendor ... $pvendor ( $pfamily:$pmodel:$pstepping )" |
571 echo "Checking for cpu type ... $pname" | |
572 echo "Optimizing to ... $proc" | |
573 echo "Checking for mmx support ... $_mmx" | |
574 echo "Checking for 3dnow support ... $_3dnow" | |
575 echo "Checking for sse support ... $_sse" | |
576 echo "Checking for mtrr support ... $_mtrr" | |
577 echo "Screen size ... ${_x}x${_y}" | |
578 echo "Checking for X11 libs ... $_x11libdir" | |
579 echo "Checking mga_vid device ... $_mga" | |
580 echo "Checking for xmga ... $_xmga" | |
581 echo "Checking for SDL ... $_sdl" | |
582 echo "Checking for OpenGL ... $_gl" | |
583 echo "Checking for Xv ... $_xv" | |
584 echo "Checking for X11 ... $_x11" | |
59 | 585 echo "Checking for DGA ... $_dga" |
233
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
586 echo "Checking for DGA 2.0 .. $_dga2" |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
587 echo "Checking for Xf86VM ... $_vm" |
287 | 588 echo "Checking for SVGAlib ... $_svga" |
225 | 589 echo "Checking for FBDev ... $_fbdev" |
1 | 590 # write conf files. |
591 | |
592 if [ $_gl = yes ]; then | |
593 _gllib='-lGL' | |
594 fi | |
595 | |
596 if [ $_x11 = yes ]; then | |
597 _x11lib='-lX11 -lXext' | |
598 fi | |
599 | |
600 if [ $_xv = yes ]; then | |
601 _xvlib='-lXv' | |
602 fi | |
603 | |
604 if [ $_sdl = yes ]; then | |
605 _sdllib='-lSDL -lpthread' | |
606 fi | |
607 | |
14 | 608 if [ $_dga = yes ]; then |
609 _dgalib='-lXxf86dga' | |
610 fi | |
611 | |
287 | 612 if [ $_svga = yes ]; then |
289 | 613 _svgalib='-lvgagl -lvga' |
287 | 614 fi |
615 | |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
616 if [ $_vm = yes ]; then |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
617 _vmlib='-lXxf86vm' |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
618 fi |
14 | 619 |
1 | 620 if [ "$_termcap" = "yes" ]; then |
621 _termcap='#define USE_TERMCAP' | |
622 _libtermcap='-ltermcap' | |
623 else | |
624 _termcap='#undef USE_TERMCAP' | |
625 _libtermcap='' | |
626 fi | |
627 | |
628 if [ "$_xmmp" = "yes" ]; then | |
629 _xmmpaudio='#define USE_XMMP_AUDIO' | |
630 _xmmplibs='-Llibxmm -lxmm' | |
631 else | |
632 _xmmpaudio='#undef USE_XMMP_AUDIO' | |
633 fi | |
634 | |
635 if [ "$_lirc" = "yes" ]; then | |
636 _lircdefs='#define HAVE_LIRC' | |
637 _lirclibs='-llirc_client' | |
638 else | |
639 _lircdefs='#undef HAVE_LIRC' | |
640 _lirclibs='' | |
641 fi | |
642 | |
643 | |
644 echo | |
645 echo "Creating $MCONF" | |
646 cat > $MCONF << EOF | |
647 | |
648 # -------- Generated by ./configure ----------- | |
649 | |
650 AR=ar | |
196 | 651 CC=$_cc |
1 | 652 # OPTFLAGS=-O4 -march=$proc -mcpu=$proc -pipe -fomit-frame-pointer -ffast-math |
653 OPTFLAGS=-O4 -march=$proc -mcpu=$proc -pipe -ffast-math | |
14 | 654 # LIBS=-L/usr/lib -L/usr/local/lib $_x11libdir $_gllib $_sdllib $_dgalib $_x11lib $_xvlib |
287 | 655 X_LIBS=$_x11libdir $_gllib $_sdllib $_dgalib $_x11lib $_xvlib $_vmlib $_svgalib |
1 | 656 TERMCAP_LIB=$_libtermcap |
657 XMM_LIBS = $_xmmplibs | |
658 LIRC_LIBS = $_lirclibs | |
659 WIN32_PATH=-DWIN32_PATH=\"$_win32libdir\" | |
660 | |
661 EOF | |
662 # echo 'CFLAGS=$(OPTFLAGS) -Wall -DMPG12PLAY' >> config.mak | |
663 | |
664 echo "Creating $CCONF" | |
665 | |
666 if [ "$_mmx" = "yes" ]; then | |
667 _mmx='#define HAVE_MMX' | |
668 else | |
669 _mmx='#undef HAVE_MMX' | |
670 fi | |
671 | |
672 if [ $_3dnow = yes ]; then | |
673 _3dnowm='#define HAVE_3DNOW' | |
674 else | |
675 _3dnowm='#undef HAVE_3DNOW' | |
676 fi | |
677 | |
678 if [ $_sse = yes ]; then | |
679 _ssem='#define HAVE_SSE' | |
680 else | |
681 _ssem='#undef HAVE_SSE' | |
682 fi | |
683 | |
684 # --- | |
685 | |
686 _vosrc='' | |
687 | |
688 if [ $_mlib = yes ]; then | |
689 _mlib='#define HAVE_MLIB' | |
690 _vosrc=$_vosrc' yuv2rgb_mlib.c' | |
691 else | |
692 _mlib='#undef HAVE_MLIB' | |
693 fi | |
694 | |
695 # --- | |
696 | |
697 if [ $_gl = yes ]; then | |
698 _gl='#define HAVE_GL' | |
699 _vosrc=$_vosrc' vo_gl.c' | |
700 else | |
701 _gl='#undef HAVE_GL' | |
702 fi | |
703 | |
704 if [ $_sdl = yes ]; then | |
705 _sdldef='#define HAVE_SDL' | |
706 _vosrc=$_vosrc' vo_sdl.c' | |
707 else | |
708 _sdldef='#undef HAVE_SDL' | |
709 fi | |
710 | |
711 if [ $_x11 = yes ]; then | |
712 _x11='#define HAVE_X11' | |
713 _vosrc=$_vosrc' vo_x11.c' | |
714 else | |
715 _x11='#undef HAVE_X11' | |
716 fi | |
717 | |
718 if [ $_xv = yes ]; then | |
719 _xv='#define HAVE_XV' | |
720 _vosrc=$_vosrc' vo_xv.c' | |
721 else | |
722 _xv='#undef HAVE_XV' | |
723 fi | |
724 | |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
725 if [ $_vm = yes ]; then |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
726 _vm='#define HAVE_XF86VM' |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
727 else |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
728 _vm='#undef HAVE_XF86VM' |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
729 fi |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
730 |
1 | 731 # --- |
732 | |
733 if [ $_mga = yes ]; then | |
734 _mga='#define HAVE_MGA' | |
735 _vosrc=$_vosrc' vo_mga.c' | |
736 else | |
737 _mga='#undef HAVE_MGA' | |
738 fi | |
739 if [ $_xmga = yes ]; then | |
740 _vosrc=$_vosrc' vo_xmga.c' | |
741 fi | |
742 | |
743 if [ $_syncfb = yes ]; then | |
744 _syncfb='#define HAVE_SYNCFB' | |
745 _vosrc=$_vosrc' vo_syncfb.c' | |
746 else | |
747 _syncfb='#undef HAVE_SYNCFB' | |
748 fi | |
749 | |
750 if [ $_3dfx = yes ]; then | |
751 _3dfx='#define HAVE_3DFX' | |
752 _vosrc=$_vosrc' vo_3dfx.c' | |
753 else | |
754 _3dfx='#undef HAVE_3DFX' | |
755 fi | |
756 | |
287 | 757 if [ $_svga = yes ]; then |
758 _svga='#define HAVE_SVGALIB' | |
759 _vosrc=$_vosrc' vo_svga.c' | |
760 else | |
761 _svga='#undef HAVE_SVGALIB' | |
762 fi | |
763 | |
11 | 764 if [ $_dga = yes ]; then |
765 _dga='#define HAVE_DGA' | |
38 | 766 _vosrc=$_vosrc' vo_dga.c vo_fsdga.c' |
11 | 767 else |
768 _dga='#undef HAVE_DGA' | |
769 fi | |
770 | |
233
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
771 if [ $_dga2 = yes ]; then |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
772 _dga2='#define HAVE_DGA2' |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
773 _vosrc=$_vosrc' vo_dga.c vo_fsdga.c' |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
774 else |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
775 _dga2='#undef HAVE_DGA2' |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
776 fi |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
777 |
225 | 778 if [ $_fbdev = yes ]; then |
779 _fbdev='#define HAVE_FBDEV' | |
780 _vosrc=$_vosrc' vo_fbdev.c' | |
781 else | |
782 _fbdev='#undef HAVE_FBDEV' | |
783 fi | |
784 | |
1 | 785 if [ $_mpg123 = yes ]; then |
786 _mpg123='#define DEFAULT_MPG123' | |
787 else | |
788 _mpg123='#undef DEFAULT_MPG123' | |
789 fi | |
790 | |
791 cat > $CCONF << EOF | |
792 | |
793 /* -------- Generated by ./configure ----------- */ | |
794 | |
795 /* Define this to enable avg. byte/sec-based AVI sync method by default: | |
796 (use -bps or -nobps commandline option for run-time method selection) */ | |
797 #undef AVI_SYNC_BPS | |
798 | |
799 /* Undefine this if you want soundcard-only timing by default: | |
800 You can still change this with the -alsa or -noalsa command-line option! | |
801 (This function was originally impemented to solve ALSA driver's big | |
802 buffer problems, but it seems to be useful for every soundcard drivers) */ | |
803 #define ALSA_TIMER | |
804 | |
805 /* Undefine this if your soundcard driver has no working select(). | |
806 If you have kernel Oops, player hangups, or just no audio, you should | |
807 try to recompile MPlayer with this option disabled! */ | |
808 #define HAVE_AUDIO_SELECT | |
809 | |
810 /* You have a choice for MP3 decoding: mp3lib(mpg123) or Win32(l3codeca.acm) | |
811 #define this if you prefer mpg123 (with 3Dnow! support) than l3codeca.acm | |
812 (with mmx/sse optimizations) | |
813 You can still change it runtime using -afm 1 (mpg123) or -afm 4 (l3codeca)*/ | |
814 $_mpg123 | |
815 | |
816 /* XMMP support: (test code) */ | |
817 $_xmmpaudio | |
818 #define LIBDIR "/usr/local/lib" | |
819 #define PLUGINDIR LIBDIR "/xmmp/Plugins" | |
820 #define XMMP_AUDIO_DRIVER PLUGINDIR "/Sound/oss.so" | |
821 | |
822 /* LIRC (remote control, see www.lirc.org) support: */ | |
823 $_lircdefs | |
824 | |
41 | 825 /* Define this to enable MPEG 1/2 image postprocessing (requires FAST cpu!) */ |
826 #define MPEG12_POSTPROC | |
827 | |
1 | 828 /* Define if your processor stores words with the most significant |
829 byte first (like Motorola and SPARC, unlike Intel and VAX). */ | |
830 /* #define WORDS_BIGENDIAN */ | |
831 | |
832 #define ARCH_X86 | |
833 | |
834 ///////////////////////////////////////////////////////////////////////////// | |
835 // | |
836 // NOTE: Instead of modifying these here, use the --enable/--disable options | |
837 // of the ./configure script! See ./configure --help for details. | |
838 // | |
839 ///////////////////////////////////////////////////////////////////////////// | |
840 | |
841 /* termcap flag for getch2.c */ | |
842 $_termcap | |
843 | |
844 /* Extension defines */ | |
845 $_mlib // available only on solaris | |
846 $_3dnowm // only define if you have 3DNOW (AMD k6-2, AMD Athlon, iDT WinChip, etc.) | |
847 $_mmx // only define if you have MMX | |
848 $_ssem // only define if you have SSE (Intel Pentium III or Celeron II) | |
849 | |
850 /* libvo options */ | |
851 #define SCREEN_SIZE_X $_x | |
852 #define SCREEN_SIZE_Y $_y | |
853 $_x11 | |
854 $_xv | |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
855 $_vm |
1 | 856 $_gl |
11 | 857 $_dga |
233
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
858 $_dga2 |
1 | 859 $_sdldef |
860 $_3dfx | |
861 $_mga | |
862 $_syncfb | |
225 | 863 $_fbdev |
287 | 864 $_svga |
1 | 865 |
23 | 866 #if defined(HAVE_GL)||defined(HAVE_X11)||defined(HAVE_XV) |
1 | 867 #define X11_FULLSCREEN |
868 #endif | |
869 | |
870 EOF | |
871 | |
872 echo "Creating libvo/config.mak" | |
873 | |
874 _voobj=`echo $_vosrc | sed -e 's/\.c/\.o/g'` | |
875 | |
876 cat > libvo/config.mak << EOF | |
877 | |
878 include ../config.mak | |
879 | |
880 OPTIONAL_SRCS=$_vosrc | |
881 OPTIONAL_OBJS=$_voobj | |
882 | |
883 EOF | |
884 | |
885 echo "Creating libac3/config.mak" | |
886 | |
887 if [ $_sse = yes ]; then | |
888 _downmixc='downmix/downmix_kni.S' | |
889 _downmixo='downmix/downmix_kni.o' | |
890 else | |
891 if [ $_binutils = yes ]; then | |
892 _downmixc='downmix/downmix_i386.S' | |
893 _downmixo='downmix/downmix_i386.o' | |
894 else | |
895 _downmixc='downmix/downmix.c' | |
896 _downmixo='downmix/downmix.o' | |
897 cat << EOF | |
898 | |
899 !!! Warning! fallback to slow downmix.c due the old binutils. | |
900 !!! Upgrade for better audio decoding performance. | |
901 | |
902 EOF | |
903 fi | |
904 fi | |
905 | |
906 cat > libac3/config.mak << EOF | |
907 | |
908 include ../config.mak | |
909 | |
910 OPTIONAL_SRCS = $_downmixc | |
911 OPTIONAL_OBJS = $_downmixo | |
912 | |
913 EOF | |
914 | |
915 echo "Creating mp3lib/config.mak" | |
916 | |
917 if [ $_3dnow = yes ]; then | |
918 _3dnowobjectsrcs='dct36_3dnow.s dct64_3dnow.s decode_3dnow.s' | |
919 _3dnowobjectobjs='dct36_3dnow.o dct64_3dnow.o decode_3dnow.o' | |
920 else | |
921 _3dnowobjectsrcs= | |
922 _3dnowobjectobjs= | |
923 fi | |
924 | |
925 cat > mp3lib/config.mak << EOF | |
926 | |
927 include ../config.mak | |
928 | |
929 OPTIONAL_SRCS = $_3dnowobjectsrcs | |
930 OPTIONAL_OBJS = $_3dnowobjectobjs | |
931 | |
932 EOF | |
933 | |
934 cat << EOF | |
935 | |
936 Config files successfully generated by ./configure ! | |
937 Please check config.h and config.mak files, tune CPU | |
938 and optimization flags if you don't like these defaults. | |
939 You can compile the program with 'make dep;make' and | |
940 install with 'make install'. Good luck! | |
941 | |
942 EOF | |
943 | |
944 if [ $_mtrr = yes ]; then | |
945 echo "Please check mtrr settings at /proc/mtrr (see DOCS/MTRR)" | |
946 echo | |
947 fi | |
948 | |
949 if [ $_sdl = no ]; then | |
950 if [ $_have_sdl = yes ]; then | |
951 echo "You have libSDL installed, but SDL support is disabled by default." | |
952 echo "If you want to compile MPlayer with SDL support, re-run ./configure" | |
953 echo "with --enable-sdl. But it's very buggy & experimental code, use it" | |
954 echo "only if you really need it! And it works(?) *ONLY* with SDL v1.1.7 !" | |
955 echo "(SDL driver is NOT supported, so do NOT report bugs relating to SDL!)" | |
956 echo | |
957 fi | |
958 fi | |
959 | |
960 if [ $_win32libdirnotify = yes ]; then | |
961 echo "Missing WIN32 codecs dir at $_win32libdir !" | |
962 echo "Make it and copy DLL files to there! (You can get them from your windows" | |
963 echo "directory or download ftp://thot.banki.hu/esp-team/linux/MPlayer/w32codec.zip" | |
964 else | |
965 echo "Ok, Win32 codecs directory at $_win32libdir already exists." | |
966 fi | |
967 |