Mercurial > mplayer.hg
annotate configure @ 819:291de1f95724
Fixed cpu model detection with non-bash bourne shell
author | eyck |
---|---|
date | Thu, 17 May 2001 09:36:36 +0000 |
parents | 9bc104531aec |
children | 67fe2eebe542 |
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 # |
492 | 9 # 2001/04/16 by LGB |
10 # - added libcss stuffs | |
11 # | |
463 | 12 # 2001/04/15 by Pontscho |
13 # - added --disable-select option | |
14 # - added X11DIR variable in config.mak and fix syncfb Makefile -L/usr/X11/lib bug | |
15 # | |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
16 # 2001/03/24 by Mike Graffam: |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
17 # - 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
|
18 # |
196 | 19 # 2001/03/22 by Bivanbi: |
20 # - new option: --cc (to specify C compiler path+name) | |
21 # | |
22 # 2001/03/08 by LGB: | |
492 | 23 # - DGA detect-o-matic :) |
59 | 24 # - '--disable-dga' option to force disabling DGA vo driver compiling into mplayer |
25 # - line about '--enable-dga' is added to the help message | |
26 # | |
196 | 27 # 2001/02/26 by A'rpi: |
11 | 28 # - added DGA option: --enable-dga |
29 # - no notify if --with-win32libdir used [Tibcu] | |
30 # | |
196 | 31 # 2001/02/25 by LGB: |
4 | 32 # - TMPDIR or TEMPDIR variable is honored during tests for temporary files |
33 # - ChangeLog inside configure was reversed ;-) | |
1 | 34 # |
35 # some changes by A'rpi/ESP-team: | |
4 | 36 # - added 'athlon' target for the new athlongcc [Ian Kumlien] |
37 # - applied _win32libdir=-L patch by Magnus Pfeffer | |
1 | 38 # |
39 # some changes by LGB: | |
40 # - Ehhh, AMD K6-2 returns with cpuid 5 ;-) Changing back Arpi's last change :) | |
41 # More info: AMD K6-2 reports with family 5, duron with 6, so I attached | |
42 # much finer CPU type detection based on Linux kernel's one :) | |
43 # (k5: 5, model<6, k6: 5, model>=6, k7: 6, model=any) | |
44 # - On some exit point (error) temporary files were not deleted. Fixed. | |
45 # - $TMP and $TMP2 are renamed to $TMPC and $TMPO ;-) | |
46 # - Some useless { ... } are removed | |
47 # | |
48 # some changes by A'rpi/ESP-team: | |
11 | 49 # - the --with-win32libdir patch by Aaron Hope applied |
4 | 50 # - some english bugfix again :) |
51 # - cpu type selection changed: | |
52 # ( k7->k6->k5-> ) || (i686->pentiumpro-> ) pentium-> i486 -> i386 -> error! | |
53 # - cpu type for AMD/family=5 changed k6->k5 | |
54 # | |
55 # some changes by LGB (Gábor Lénárt): | |
56 # - SOME gcc may support 'k7', so I added tests for ALL CPU type optimization | |
57 # switches with the ability to find out the best optimization for your CPU. | |
58 # - Help moved to the begining to avoid tests if user only wants help. | |
59 # - A one lined help to indicate detailed help for users | |
60 # - Fixed /tmp race (PIDs can be predicted, I added random numbers as well) | |
61 # | |
62 # some changes by A'rpi/ESP-team: | |
63 # - some english bugfix :) | |
64 # - removed _??exists flags, _?? is enough... | |
65 # - creating only config.mak files instead of whole Makefiles | |
1 | 66 # |
67 # -- | |
68 | |
69 | |
70 # LGB: Help moved here. | |
71 | |
72 if [ "$1" = "--help" -o "$1" = "-help" -o "$1" = "-h" ]; then | |
73 cat << EOF | |
74 | |
75 usage: $0 [options] | |
76 | |
77 params: | |
196 | 78 --cc use this C compiler to build MPlayer [gcc] |
717 | 79 --enable-debug[=1-3] compile debugging information into mplayer [disable] |
80 --enable-profile compile profiling information into mplayer [disable] | |
1 | 81 --enable-mmx build with mmx support [autodetect] |
350 | 82 --enable-mmx2 build with mmx2 support (PIII, Athlon) [autodetect] |
1 | 83 --enable-3dnow build with 3dnow! support [autodetect] |
734 | 84 --enable-3dnowex build with 3dnow-dsp! support (K7) [autodetect] |
1 | 85 --enable-sse build with sse support [autodetect] |
86 --enable-gl build with OpenGL render support [autodetect] | |
59 | 87 --enable-dga build with DGA support [autodetect] |
287 | 88 --enable-svga build with SVGAlib support [autodetect] |
548
c5c2d4e41a4a
added sdl versiondetect and removed sdl warning (it's autodetect now)
atmosfear
parents:
525
diff
changeset
|
89 --enable-sdl build with SDL render support [autodetect] |
1 | 90 --enable-mga build with mga_vid support [autodetect, if /dev/mga_vid |
91 is available] | |
92 --enable-xmga build with mga_vid X Window support [autodetect, | |
93 if both /dev/mga_vid and x11 are available] | |
94 --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
|
95 --enable-vm build with XF86VidMode support for x11 driver |
1 | 96 --enable-x11 build with X11 render support [autodetect] |
225 | 97 --enable-fbdev build with FBDev render support [_not_ autodetected] |
1 | 98 --enable-mlib build with MLIB support ( only Solaris ) |
99 | |
100 --enable-termcap use termcap database for key codes | |
101 --enable-xmmp use XMMP audio drivers | |
448
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
102 --enable-lirc enable LIRC (remote control) support |
1 | 103 |
463 | 104 --disable-select disable audio select() support ( for example required this |
105 option ALSA or Vortex2 driver ) | |
106 | |
627
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
107 --disable-dshow disable DirectShow support (if you don't have |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
108 C++ compiler&libs, or you've found dshow codecs |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
109 slower than old VfW ones) |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
110 |
642 | 111 --disable-fastmemcpy disable 3dnow/sse/mmx optimized memcpy() |
112 | |
1 | 113 --with-x11libdir=DIR X library files are in DIR |
114 --with-win32libdir=DIR windows codec files | |
492 | 115 --with-csslibdir=DIR directory contains libcss.so shared library |
116 --with-cssincdir=DIR directory contains libcss header file (css.h) | |
661 | 117 (--with-css* only needed, if libCSS autodetect fails) |
1 | 118 |
119 --size-x=SIZE default screen width | |
120 --size-y=SIZE default screen height | |
121 EOF | |
122 exit 0 | |
123 fi | |
124 | |
125 # LGB: Some inital help | |
126 | |
127 echo "You can get detailed help on configure with: $0 --help" | |
128 echo "Please wait while ./configure discovers your software and hardware environment!" | |
129 | |
130 # LGB: temporary files | |
131 | |
4 | 132 TMPC="mplayer-conf-${RANDOM}-$$-${RANDOM}.c" |
133 TMPO="mplayer-conf-${RANDOM}-$$-${RANDOM}.o" | |
1 | 134 |
4 | 135 if [ ! -z $TMPDIR ]; then |
136 TMPC="${TMPDIR}/${TMPC}" | |
137 TMPO="${TMPDIR}/${TMPO}" | |
138 elif [ ! -z $TEMPDIR ]; then | |
139 TMPC="${TEMPDIR}/${TMPC}" | |
140 TMPO="${TEMPDIR}/${TMPO}" | |
141 else | |
142 TMPC="/tmp/${TMPC}" | |
143 TMPO="/tmp/${TMPO}" | |
144 fi | |
1 | 145 |
146 # --- | |
147 | |
148 # config files | |
149 CCONF='config.h' | |
150 MCONF='config.mak' | |
151 | |
196 | 152 # --- Check for C compiler: |
153 | |
154 _cc=gcc | |
448
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
155 _x11=auto |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
156 |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
157 _x11libdir= |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
158 if [ -e /usr/X11R6 ]; then |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
159 _x11libdir=-L/usr/X11R6/lib |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
160 else |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
161 if [ -e /usr/X11 ]; then |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
162 _x11libdir=-L/usr/X11/lib |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
163 fi |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
164 fi |
196 | 165 |
166 for ac_option | |
167 do | |
168 case "$ac_option" in | |
169 --cc=*) | |
170 _cc=`echo $ac_option | cut -d '=' -f 2` | |
171 ;; | |
448
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
172 --with-x11libdir=*) |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
173 _x11libdir=-L`echo $ac_option | cut -d '=' -f 2` |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
174 ;; |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
175 --enable-x11) |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
176 _x11=yes |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
177 ;; |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
178 --disable-x11) |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
179 _x11=no |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
180 ;; |
196 | 181 esac |
182 done | |
183 | |
1 | 184 # --- |
185 | |
186 pname=`cat /proc/cpuinfo | grep 'model name' | cut -d ':' -f 2` | |
187 pparam=`cat /proc/cpuinfo | grep 'features' | cut -d ':' -f 2` | |
188 if [ -z "$pparam" ]; then | |
189 pparam=`cat /proc/cpuinfo | grep 'flags' | cut -d ':' -f 2` | |
190 fi | |
191 pvendor=`cat /proc/cpuinfo | grep 'vendor_id' | cut -d ':' -f 2 | cut -d ' ' -f 2` | |
192 pfamily=`cat /proc/cpuinfo | grep 'cpu family' | cut -d ':' -f 2 | cut -d ' ' -f 2` | |
819 | 193 pmodel=`cat /proc/cpuinfo |grep -v 'model name'| grep "model" | cut -d ':' -f 2 | cut -d ' ' -f 2` |
1 | 194 pstepping=`cat /proc/cpuinfo | grep 'stepping' | cut -d ':' -f 2 | cut -d ' ' -f 2` |
195 | |
196 _mmx=no | |
350 | 197 _mmx2=no |
1 | 198 _3dnow=no |
734 | 199 _3dnowex=no |
1 | 200 _mtrr=no |
201 _sse=no | |
525 | 202 |
1 | 203 _mga=no |
204 _gl=no | |
205 _sdl=no | |
206 _xv=no | |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
207 _vm=no |
525 | 208 _xdpms=no |
1 | 209 _3dfx=no |
210 _syncfb=no | |
211 _mlib=no | |
212 _mpg123=no | |
213 _xmga=no | |
11 | 214 _dga=no |
233
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
215 _dga2=no |
287 | 216 _svga=no |
448
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
217 _fbdev=yes |
1 | 218 _lirc=no |
525 | 219 _css=no |
627
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
220 _dshow=yes |
642 | 221 _fastmemcpy=yes |
1 | 222 |
223 _x=1 | |
224 _y=1 | |
225 | |
226 _gllib= | |
227 _sdllib= | |
448
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
228 _xvlib= |
440
d19a3da6ac13
Pontscho's mixer, select, and hell-a-lot-of-stuff patch ;)
gabucino
parents:
417
diff
changeset
|
229 _x11lib= |
1 | 230 |
463 | 231 _select='#define HAVE_AUDIO_SELECT' |
232 | |
723 | 233 _gui=no; |
234 | |
1 | 235 for i in `echo $pparam`; do |
236 | |
237 case "$i" in | |
238 3dnow) | |
239 _3dnow=yes | |
240 _mpg123=yes | |
241 ;; | |
734 | 242 3dnowext) |
243 _3dnow=yes | |
244 _3dnowex=yes | |
245 _mpg123=yes | |
246 ;; | |
1 | 247 mmx) |
248 _mmx=yes | |
249 ;; | |
350 | 250 mmxext) |
251 _mmx2=yes | |
252 ;; | |
1 | 253 mtrr) |
254 _mtrr=yes | |
255 ;; | |
256 k6_mtrr) | |
257 _mtrr=yes | |
258 ;; | |
259 xmm) | |
260 _sse=yes | |
356 | 261 _mmx2=yes |
1 | 262 ;; |
263 sse) | |
264 _sse=yes | |
356 | 265 _mmx2=yes |
1 | 266 ;; |
267 kni) | |
268 _sse=yes | |
356 | 269 _mmx2=yes |
1 | 270 ;; |
271 esac | |
272 | |
273 done | |
274 | |
275 | |
276 _win32libdirnotify=no | |
277 if [ -e /usr/lib/win32 ]; then | |
278 _win32libdir=/usr/lib/win32 | |
279 else | |
280 if [ -e /usr/local/lib/win32 ]; then | |
281 _win32libdir=/usr/local/lib/win32 | |
282 else | |
283 # This is our default: | |
284 _win32libdir=/usr/lib/win32 | |
285 _win32libdirnotify=yes | |
286 fi | |
287 fi | |
288 | |
289 | |
290 if [ -e /dev/mga_vid ]; then | |
291 _mga=yes | |
292 _syncfb=yes | |
293 fi | |
294 | |
295 proc=pentium | |
296 | |
297 case "$pvendor" in | |
298 AuthenticAMD) | |
299 case "$pfamily" in | |
300 3) | |
301 proc=i386 | |
302 ;; | |
303 4) | |
304 proc=i486 | |
305 ;; | |
306 5) | |
307 if [ $pmodel -ge 6 ]; then # LGB: models are: K5/SSA5 K5 K5 K5 ? ? K6 K6 K6-2 K6-3 | |
308 proc=k6 | |
309 else | |
310 proc=k5 | |
311 fi | |
312 ;; | |
313 6|7) # LGB: Though it seems Athlon CPUs returns with "6" | |
314 proc=k7 | |
315 ;; | |
316 *) | |
317 proc=pentium | |
318 ;; | |
319 esac | |
320 ;; | |
321 GenuineIntel) | |
322 case "$pfamily" in | |
323 3) | |
324 proc=i386 | |
325 ;; | |
326 4) | |
327 proc=i486 | |
328 ;; | |
329 5) | |
330 proc=pentium | |
331 ;; | |
332 6) | |
333 proc=i686 | |
334 ;; | |
335 *) | |
336 proc=pentium | |
337 ;; | |
338 esac | |
339 ;; | |
340 unknown) # added by Gabucino - upon Tibcu's request | |
341 case "$pfamily" in | |
342 3) | |
343 proc=i386 | |
344 ;; | |
345 4) | |
346 proc=i486 | |
347 ;; | |
348 *) | |
349 proc=pentium | |
350 ;; | |
351 esac | |
352 ;; | |
353 *) | |
354 proc=pentium | |
355 ;; | |
356 esac | |
357 | |
358 # --- | |
359 | |
360 cat > $TMPC << EOF | |
361 int main( void ) { return 0; } | |
362 EOF | |
363 | |
364 # check that gcc supports our cpu, if not, fallback to pentium | |
365 # LGB: check -mcpu and -march swithing step by step with enabling | |
366 # to fall back till 386. | |
367 | |
368 #echo -n "Checking your GCC CPU optimalization abilities: " | |
369 if [ "$proc" = "k7" ]; then | |
370 # echo -n "trying k7 " | |
196 | 371 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=athlon |
1 | 372 fi |
373 if [ "$proc" = "athlon" ]; then | |
374 # echo -n "trying athlon " | |
196 | 375 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=k6 |
1 | 376 fi |
377 if [ "$proc" = "k6" ]; then | |
378 # echo -n "trying k6 " | |
196 | 379 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=k5 |
1 | 380 fi |
381 if [ "$proc" = "k5" ]; then | |
382 # echo -n "trying k5 " | |
196 | 383 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=pentium |
1 | 384 fi |
385 if [ "$proc" = "i686" ]; then | |
386 # echo -n "trying i686 " | |
196 | 387 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=pentiumpro |
1 | 388 fi |
389 if [ "$proc" = "pentiumpro" ]; then | |
390 # echo -n "trying pentiumpro " | |
196 | 391 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=pentium |
1 | 392 fi |
393 if [ "$proc" = "pentium" ]; then | |
394 # echo -n "trying pentium " | |
196 | 395 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=i486 |
1 | 396 fi |
397 if [ "$proc" = "i486" ]; then | |
398 # echo -n "trying i486 " | |
196 | 399 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=i386 |
1 | 400 fi |
401 if [ "$proc" = "i386" ]; then | |
402 # echo -n "trying i386 " | |
196 | 403 $_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc &> /dev/null || proc=error |
1 | 404 fi |
405 if [ "$proc" = "error" ]; then | |
406 echo | |
407 echo "Your gcc does not support even \"i386\" for '-march' and '-mcpu'." >&2 | |
408 rm -f $TMPC $TMPO | |
409 exit | |
410 fi | |
411 #echo "DONE (${proc})." | |
412 | |
413 | |
448
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
414 $_cc $TMPC -o $TMPO -lvgagl -lvga &> /dev/null && _svga=yes |
1 | 415 |
448
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
416 $_cc $TMPC -o $TMPO -lpthread &> /dev/null || \ |
1 | 417 { echo "Lib pthread not found."; rm -f $TMPC $TMPO ; exit 1; } |
418 | |
548
c5c2d4e41a4a
added sdl versiondetect and removed sdl warning (it's autodetect now)
atmosfear
parents:
525
diff
changeset
|
419 # Atmosfear: added SDL versioncheck and autodetect; removed warnings. |
c5c2d4e41a4a
added sdl versiondetect and removed sdl warning (it's autodetect now)
atmosfear
parents:
525
diff
changeset
|
420 _sdl=no |
558
30d9f61e9c0b
fixed sdl detection (showed outdated even if not detected)
atmosfear
parents:
548
diff
changeset
|
421 if $_cc $TMPC -o $TMPO -L/usr/lib/ -L/usr/local/lib/ -lSDL -lpthread &> /dev/null ; then |
30d9f61e9c0b
fixed sdl detection (showed outdated even if not detected)
atmosfear
parents:
548
diff
changeset
|
422 if test `sdl-config --version | sed s/[=[:punct:]=]//g` -gt 116 ; then |
704 | 423 if test `sdl-config --version | sed s/[=[:punct:]=]//g` -lt 121 ; then |
424 _sdlbuggy='#define BUGGY_SDL' | |
425 else | |
426 _sdlbuggy='#undef BUGGY_SDL' | |
427 fi | |
558
30d9f61e9c0b
fixed sdl detection (showed outdated even if not detected)
atmosfear
parents:
548
diff
changeset
|
428 _sdl=yes |
30d9f61e9c0b
fixed sdl detection (showed outdated even if not detected)
atmosfear
parents:
548
diff
changeset
|
429 else |
30d9f61e9c0b
fixed sdl detection (showed outdated even if not detected)
atmosfear
parents:
548
diff
changeset
|
430 _sdl=outdated |
30d9f61e9c0b
fixed sdl detection (showed outdated even if not detected)
atmosfear
parents:
548
diff
changeset
|
431 fi |
30d9f61e9c0b
fixed sdl detection (showed outdated even if not detected)
atmosfear
parents:
548
diff
changeset
|
432 fi |
1 | 433 |
661 | 434 # Atmosfear: added libcss autodetect |
435 _css=no | |
436 if test -e "/usr/local/lib/libcss.so" ; then | |
437 _csslibdir="/usr/local/lib/" | |
438 if test -e "/usr/local/include/css.h" ; then | |
439 _cssincdir="/usr/local/include" | |
440 _css=yes | |
710 | 441 fi |
442 else | |
443 if test -e "/usr/lib/libcss.so" ; then | |
444 _csslibdir="/usr/lib/" | |
661 | 445 if test -e "/usr/include/css.h" ; then |
446 _cssincdir="/usr/include/" | |
447 _css=yes | |
448 fi | |
710 | 449 fi |
661 | 450 fi |
451 | |
1 | 452 _termcap=no |
196 | 453 $_cc $TMPC -o $TMPO -ltermcap &> /dev/null && _termcap=yes |
1 | 454 |
525 | 455 _png=no |
660
29c9635aa144
Changed vo png to use -lz which is needed on some systems.
atmosfear
parents:
642
diff
changeset
|
456 $_cc $TMPC -o $TMPO -lpng -lz&> /dev/null && _png=yes |
525 | 457 |
1 | 458 _binutils=no |
459 as libac3/downmix/downmix_i386.S -o $TMPO &> /dev/null && _binutils=yes | |
460 | |
448
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
461 # ----------- Check X11 and related libs (GL, Xxf86vm, Xv, DGA) -------------- |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
462 |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
463 if [ $_x11 = auto ]; then |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
464 _x11=no |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
465 $_cc $TMPC -o $TMPO $_x11libdir -lX11 -lXext &> /dev/null && _x11=yes |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
466 fi |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
467 |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
468 if [ $_x11 = yes ]; then |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
469 |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
470 $_cc $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lXdpms &> /dev/null && _xdpms=yes |
525 | 471 $_cc $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lXv &> /dev/null && _xv=yes |
590 | 472 $_cc $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lXxf86vm &> /dev/null && _vm=yes |
448
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
473 |
525 | 474 $_cc $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lGL &> /dev/null && _gl=yes |
448
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
475 |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
476 cat > $TMPC << EOF |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
477 #include <GL/gl.h> |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
478 int main( void ) { return 0; } |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
479 EOF |
525 | 480 $_cc $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lGL &> /dev/null || \ |
448
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
481 { _gl=no; echo "GL includes not found!";} |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
482 |
59 | 483 cat > $TMPC << EOF |
484 #include <stdio.h> | |
485 #include <X11/Xlib.h> | |
486 #include <X11/extensions/xf86dga.h> | |
487 int main (void) { return 0;} | |
488 EOF | |
489 | |
196 | 490 $_cc $TMPC -o $TMPO -L/usr/X11R6/lib -L/usr/X11/lib -lX11 -lXext -lXxf86dga -lXxf86vm &> /dev/null && _dga=yes |
59 | 491 # Note: the -lXxf86vm library is the VideoMode extension and though it's |
492 # not needed for DGA, AFAIK every distribution packages together with DGA | |
493 # stuffs named 'X extensions' or something similar. This check can be usefull | |
494 # for further mplayer versions to set resolution by mplayer itself. | |
495 # If you run into problems, remove '-lXxf86vm'. | |
496 | |
233
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
497 # 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
|
498 cat > $TMPC << EOF |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
499 #include <stdio.h> |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
500 #include <X11/Xlib.h> |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
501 #include <X11/extensions/xf86dga.h> |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
502 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
|
503 EOF |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
504 |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
505 _dga2=no |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
506 $_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
|
507 |
448
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
508 fi |
1 | 509 |
510 rm -f $TMPC $TMPO | |
511 | |
512 # --- | |
513 | |
514 # check for the parameters. | |
515 | |
516 for ac_option | |
517 do | |
518 case "$ac_option" in | |
717 | 519 --enable-profile) |
520 _profile='-p' | |
521 ;; | |
711
d73d1b2a565a
Added --enable-debug[=1-3] to compile debugging info into mplayer (specifies -gn switch).
atmosfear
parents:
710
diff
changeset
|
522 --enable-debug) |
d73d1b2a565a
Added --enable-debug[=1-3] to compile debugging info into mplayer (specifies -gn switch).
atmosfear
parents:
710
diff
changeset
|
523 _debug='-g' |
d73d1b2a565a
Added --enable-debug[=1-3] to compile debugging info into mplayer (specifies -gn switch).
atmosfear
parents:
710
diff
changeset
|
524 ;; |
d73d1b2a565a
Added --enable-debug[=1-3] to compile debugging info into mplayer (specifies -gn switch).
atmosfear
parents:
710
diff
changeset
|
525 --enable-debug=*) |
d73d1b2a565a
Added --enable-debug[=1-3] to compile debugging info into mplayer (specifies -gn switch).
atmosfear
parents:
710
diff
changeset
|
526 _debug=`echo -n '-g'; echo $ac_option | cut -d '=' -f 2` |
d73d1b2a565a
Added --enable-debug[=1-3] to compile debugging info into mplayer (specifies -gn switch).
atmosfear
parents:
710
diff
changeset
|
527 ;; |
492 | 528 --enable-css) |
529 _css=yes | |
530 ;; | |
525 | 531 --enable-png) |
532 _png=yes | |
533 ;; | |
1 | 534 --enable-sse) |
535 _sse=yes | |
536 ;; | |
537 --enable-3dnow) | |
538 _3dnow=yes | |
539 ;; | |
734 | 540 --enable-3dnowex) |
541 _3dnow=yes | |
542 _3dnowex=yes | |
543 ;; | |
1 | 544 --enable-mmx) |
545 _mmx=yes | |
546 ;; | |
350 | 547 --enable-mmx2) |
548 _mmx2=yes | |
549 ;; | |
72 | 550 --enable-mtrr) |
551 _mtrr=yes | |
552 ;; | |
1 | 553 --enable-gl) |
554 _gl=yes | |
555 ;; | |
556 --enable-sdl) | |
557 _sdl=yes | |
558 ;; | |
559 --enable-mga) | |
560 _mga=yes | |
561 ;; | |
562 --enable-xmga) | |
563 _xmga=yes | |
564 ;; | |
287 | 565 --enable-svga) |
566 _svga=yes | |
567 ;; | |
11 | 568 --enable-dga) |
569 _dga=yes | |
233
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
570 ;; |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
571 --enable-dga2) |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
572 _dga2=yes |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
573 ;; |
1 | 574 --enable-xv) |
575 _xv=yes | |
576 ;; | |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
577 --enable-vm) |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
578 _vm=yes |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
579 ;; |
1 | 580 --enable-3dfx) |
581 _3dfx=yes | |
582 ;; | |
583 --enable-syncfb) | |
584 _syncfb=yes | |
585 ;; | |
225 | 586 --enable-fbdev) |
587 _fbdev=yes | |
588 ;; | |
1 | 589 --enable-mlib) |
590 _mlib=yes | |
591 ;; | |
592 --enable-termcap) | |
593 _termcap=yes | |
594 ;; | |
595 --enable-xmmp) | |
596 _xmmp=yes | |
597 ;; | |
598 --enable-lirc) | |
599 _lirc=yes | |
600 ;; | |
463 | 601 --enable-select) |
602 _select='#define HAVE_AUDIO_SELECT' | |
603 ;; | |
723 | 604 --enable-gui) |
605 _gui=yes | |
606 ;; | |
492 | 607 --disable-css) |
608 _css=no | |
609 ;; | |
525 | 610 --disable-png) |
611 _png=no | |
612 ;; | |
1 | 613 --disable-sse) |
614 _sse=no | |
615 ;; | |
616 --disable-3dnow) | |
617 _3dnow=no | |
734 | 618 _3dnowex=no |
619 ;; | |
620 --disable-3dnowex) | |
621 _3dnowex=no | |
1 | 622 ;; |
623 --disable-mmx) | |
624 _mmx=no | |
350 | 625 _mmx2=no |
1 | 626 ;; |
696 | 627 --disable-mmx2) |
628 _mmx2=no | |
629 ;; | |
72 | 630 --disable-mtrr) |
631 _mtrr=no | |
632 ;; | |
1 | 633 --disable-gl) |
634 _gl=no | |
635 ;; | |
636 --disable-sdl) | |
637 _sdl=no | |
638 ;; | |
639 --disable-mga) | |
640 _mga=no | |
641 ;; | |
642 --disable-xmga) | |
643 _xmga=no | |
644 ;; | |
645 --disable-xv) | |
646 _xv=no | |
647 ;; | |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
648 --disable-vm) |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
649 _vm=no |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
650 ;; |
1 | 651 --disable-mlib) |
652 _mlib=no | |
653 ;; | |
287 | 654 --disable-svga) |
655 _svga=no | |
656 ;; | |
59 | 657 --disable-dga) |
658 _dga=no | |
659 ;; | |
233
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
660 --disable-dga2) |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
661 _dga2=no |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
662 ;; |
225 | 663 --disable-fbdev) |
664 _fbdev=no | |
665 ;; | |
1 | 666 --disable-termcap) |
667 _termcap=no | |
668 ;; | |
463 | 669 --disable-select) |
670 _select='#undef HAVE_AUDIO_SELECT' | |
671 ;; | |
627
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
672 --disable-dshow) |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
673 _dshow=no |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
674 ;; |
642 | 675 --disable-fastmemcpy) |
676 _fastmemcpy=no | |
677 ;; | |
723 | 678 --disable-gui) |
679 _gui=no | |
680 ;; | |
1 | 681 --with-win32libdir=*) |
682 _win32libdir=`echo $ac_option | cut -d '=' -f 2` | |
11 | 683 _win32libdirnotify=no |
1 | 684 ;; |
492 | 685 --with-csslibdir=*) |
686 _csslibdir=`echo $ac_option | cut -d '=' -f 2` | |
687 _css='yes'; | |
688 ;; | |
689 --with-cssincdir=*) | |
690 _cssincdir=`echo $ac_option | cut -d '=' -f 2` | |
691 _css='yes'; | |
692 ;; | |
1 | 693 --size-x=*) |
694 _x=`echo $ac_option | cut -d '=' -f 2` | |
695 ;; | |
696 --size-y=*) | |
697 _y=`echo $ac_option | cut -d '=' -f 2` | |
698 ;; | |
448
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
699 --with-x11libdir=*) |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
700 ;; |
196 | 701 --cc=*) |
702 ;; | |
1 | 703 esac |
704 done | |
705 | |
448
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
706 if [ $_x11 = 'yes' ]; then |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
707 if [ $_mga = 'yes' ]; then |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
708 _xmga=yes |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
709 fi |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
710 fi |
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
440
diff
changeset
|
711 |
1 | 712 # to screen. |
196 | 713 echo "Using C compiler: $_cc" |
1 | 714 echo "Checking for cpu vendor ... $pvendor ( $pfamily:$pmodel:$pstepping )" |
715 echo "Checking for cpu type ... $pname" | |
716 echo "Optimizing to ... $proc" | |
717 echo "Checking for mmx support ... $_mmx" | |
350 | 718 echo "Checking for mmx2 support ... $_mmx2" |
1 | 719 echo "Checking for 3dnow support ... $_3dnow" |
734 | 720 echo "Checking for 3dnowex support ... $_3dnowex" |
1 | 721 echo "Checking for sse support ... $_sse" |
722 echo "Checking for mtrr support ... $_mtrr" | |
723 echo "Screen size ... ${_x}x${_y}" | |
724 echo "Checking for X11 libs ... $_x11libdir" | |
725 echo "Checking mga_vid device ... $_mga" | |
726 echo "Checking for xmga ... $_xmga" | |
727 echo "Checking for SDL ... $_sdl" | |
728 echo "Checking for OpenGL ... $_gl" | |
729 echo "Checking for Xv ... $_xv" | |
730 echo "Checking for X11 ... $_x11" | |
59 | 731 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
|
732 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
|
733 echo "Checking for Xf86VM ... $_vm" |
287 | 734 echo "Checking for SVGAlib ... $_svga" |
225 | 735 echo "Checking for FBDev ... $_fbdev" |
492 | 736 echo "Checking for DeCSS support ... $_css" |
525 | 737 echo "Checking for PNG support ... $_png" |
627
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
738 echo "Checking for DirectShow ... $_dshow" |
642 | 739 echo "Checking for fastmemcpy ... $_fastmemcpy" |
1 | 740 # write conf files. |
741 | |
742 if [ $_gl = yes ]; then | |
743 _gllib='-lGL' | |
744 fi | |
745 | |
492 | 746 if [ $_css = yes ]; then |
747 if [ ! -z $_csslibdir ]; then | |
748 _csslib="-L${_csslibdir} -lcss" | |
749 else | |
750 _csslib='-lcss' | |
751 fi | |
752 _css='#define HAVE_LIBCSS' | |
753 if [ ! -z $_cssincdir ]; then | |
754 _cssinc="-I${_cssincdir}" | |
755 else | |
756 _cssinc="" | |
757 fi | |
758 else | |
759 _css='#undef HAVE_LIBCSS' | |
760 _csslib='' | |
761 _cssinc='' | |
762 fi | |
763 | |
627
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
764 if [ $_dshow = yes ]; then |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
765 _dshowlib='-Lloader/DirectShow -lDS_Filter -lstdc++' |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
766 _dshowdep='loader/DirectShow/libDS_Filter.a' |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
767 _dshow='#define USE_DIRECTSHOW' |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
768 else |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
769 _dshowlib='' |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
770 _dshowdep='' |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
771 _dshow='#undef USE_DIRECTSHOW' |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
772 fi |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
773 |
642 | 774 if [ $_fastmemcpy = yes ]; then |
775 _fastmemcpy='#define USE_FASTMEMCPY' | |
776 else | |
777 _fastmemcpy='#undef USE_FASTMEMCPY' | |
778 fi | |
779 | |
1 | 780 if [ $_x11 = yes ]; then |
330 | 781 if [ $_xdpms = yes ]; then |
782 _x11lib='-lX11 -lXext -lXdpms' | |
783 else | |
784 _x11lib='-lX11 -lXext' | |
785 fi | |
1 | 786 fi |
787 | |
788 if [ $_xv = yes ]; then | |
789 _xvlib='-lXv' | |
790 fi | |
791 | |
792 if [ $_sdl = yes ]; then | |
793 _sdllib='-lSDL -lpthread' | |
794 fi | |
795 | |
14 | 796 if [ $_dga = yes ]; then |
797 _dgalib='-lXxf86dga' | |
798 fi | |
799 | |
287 | 800 if [ $_svga = yes ]; then |
289 | 801 _svgalib='-lvgagl -lvga' |
287 | 802 fi |
803 | |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
804 if [ $_vm = yes ]; then |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
805 _vmlib='-lXxf86vm' |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
806 fi |
14 | 807 |
1 | 808 if [ "$_termcap" = "yes" ]; then |
809 _termcap='#define USE_TERMCAP' | |
810 _libtermcap='-ltermcap' | |
811 else | |
812 _termcap='#undef USE_TERMCAP' | |
813 _libtermcap='' | |
814 fi | |
815 | |
816 if [ "$_xmmp" = "yes" ]; then | |
817 _xmmpaudio='#define USE_XMMP_AUDIO' | |
818 _xmmplibs='-Llibxmm -lxmm' | |
819 else | |
820 _xmmpaudio='#undef USE_XMMP_AUDIO' | |
821 fi | |
822 | |
823 if [ "$_lirc" = "yes" ]; then | |
824 _lircdefs='#define HAVE_LIRC' | |
825 _lirclibs='-llirc_client' | |
826 else | |
827 _lircdefs='#undef HAVE_LIRC' | |
828 _lirclibs='' | |
829 fi | |
830 | |
525 | 831 if [ $_png = yes ]; then |
660
29c9635aa144
Changed vo png to use -lz which is needed on some systems.
atmosfear
parents:
642
diff
changeset
|
832 _libpng='-lpng -lz' |
525 | 833 fi |
1 | 834 |
697 | 835 # Checking for CFLAGS |
717 | 836 if [ "$_profile" != "" ] || [ "$_debug" != "" ]; then |
837 CFLAGS="-O2 -march=$proc -mcpu=$proc $_debug $_profile" | |
838 else | |
839 if test -z "$CFLAGS"; then | |
840 CFLAGS="-O4 -march=$proc -mcpu=$proc -pipe -ffast-math -fomit-frame-pointer" | |
697 | 841 fi |
717 | 842 fi |
1 | 843 echo |
844 echo "Creating $MCONF" | |
845 cat > $MCONF << EOF | |
846 | |
847 # -------- Generated by ./configure ----------- | |
848 | |
849 AR=ar | |
196 | 850 CC=$_cc |
518 | 851 X11DIR=$_x11libdir |
717 | 852 # OPTFLAGS=-O4 $_profile $_debug -march=$proc -mcpu=$proc -pipe -fomit-frame-pointer -ffast-math |
697 | 853 OPTFLAGS=$CFLAGS |
14 | 854 # LIBS=-L/usr/lib -L/usr/local/lib $_x11libdir $_gllib $_sdllib $_dgalib $_x11lib $_xvlib |
525 | 855 X_LIBS=$_x11libdir $_gllib $_sdllib $_dgalib $_x11lib $_xvlib $_vmlib $_svgalib $_libpng |
1 | 856 TERMCAP_LIB=$_libtermcap |
857 XMM_LIBS = $_xmmplibs | |
858 LIRC_LIBS = $_lirclibs | |
492 | 859 CSS_LIB = $_csslib |
860 CSS_INC = $_cssinc | |
1 | 861 WIN32_PATH=-DWIN32_PATH=\"$_win32libdir\" |
627
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
862 DS_DEP = $_dshowdep |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
863 DS_LIB = $_dshowlib |
1 | 864 |
865 EOF | |
866 # echo 'CFLAGS=$(OPTFLAGS) -Wall -DMPG12PLAY' >> config.mak | |
867 | |
868 echo "Creating $CCONF" | |
869 | |
870 if [ "$_mmx" = "yes" ]; then | |
871 _mmx='#define HAVE_MMX' | |
872 else | |
873 _mmx='#undef HAVE_MMX' | |
874 fi | |
875 | |
350 | 876 if [ "$_mmx2" = "yes" ]; then |
877 _mmx2='#define HAVE_MMX2' | |
878 else | |
879 _mmx2='#undef HAVE_MMX2' | |
880 fi | |
881 | |
1 | 882 if [ $_3dnow = yes ]; then |
883 _3dnowm='#define HAVE_3DNOW' | |
884 else | |
885 _3dnowm='#undef HAVE_3DNOW' | |
886 fi | |
887 | |
734 | 888 if [ $_3dnowex = yes ]; then |
889 _3dnowexm='#define HAVE_3DNOWEX' | |
890 else | |
891 _3dnowexm='#undef HAVE_3DNOWEX' | |
892 fi | |
893 | |
1 | 894 if [ $_sse = yes ]; then |
895 _ssem='#define HAVE_SSE' | |
896 else | |
897 _ssem='#undef HAVE_SSE' | |
898 fi | |
899 | |
900 # --- | |
901 | |
902 _vosrc='' | |
903 | |
525 | 904 if [ $_png = yes ]; then |
905 _png='#define HAVE_PNG' | |
906 _vosrc=$_vosrc' vo_png.c' | |
907 else | |
908 _png='#undef HAVE_PNG' | |
909 fi | |
910 | |
911 | |
1 | 912 if [ $_mlib = yes ]; then |
913 _mlib='#define HAVE_MLIB' | |
914 _vosrc=$_vosrc' yuv2rgb_mlib.c' | |
915 else | |
916 _mlib='#undef HAVE_MLIB' | |
917 fi | |
918 | |
919 # --- | |
920 | |
921 if [ $_gl = yes ]; then | |
922 _gl='#define HAVE_GL' | |
923 _vosrc=$_vosrc' vo_gl.c' | |
924 else | |
925 _gl='#undef HAVE_GL' | |
926 fi | |
927 | |
928 if [ $_sdl = yes ]; then | |
929 _sdldef='#define HAVE_SDL' | |
930 _vosrc=$_vosrc' vo_sdl.c' | |
931 else | |
932 _sdldef='#undef HAVE_SDL' | |
933 fi | |
934 | |
935 if [ $_x11 = yes ]; then | |
936 _x11='#define HAVE_X11' | |
937 _vosrc=$_vosrc' vo_x11.c' | |
938 else | |
939 _x11='#undef HAVE_X11' | |
940 fi | |
941 | |
942 if [ $_xv = yes ]; then | |
943 _xv='#define HAVE_XV' | |
944 _vosrc=$_vosrc' vo_xv.c' | |
945 else | |
946 _xv='#undef HAVE_XV' | |
947 fi | |
948 | |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
949 if [ $_vm = yes ]; then |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
950 _vm='#define HAVE_XF86VM' |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
951 else |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
952 _vm='#undef HAVE_XF86VM' |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
953 fi |
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
954 |
1 | 955 # --- |
956 | |
957 if [ $_mga = yes ]; then | |
958 _mga='#define HAVE_MGA' | |
959 _vosrc=$_vosrc' vo_mga.c' | |
960 else | |
961 _mga='#undef HAVE_MGA' | |
962 fi | |
963 if [ $_xmga = yes ]; then | |
964 _vosrc=$_vosrc' vo_xmga.c' | |
965 fi | |
966 | |
967 if [ $_syncfb = yes ]; then | |
968 _syncfb='#define HAVE_SYNCFB' | |
969 _vosrc=$_vosrc' vo_syncfb.c' | |
970 else | |
971 _syncfb='#undef HAVE_SYNCFB' | |
972 fi | |
973 | |
974 if [ $_3dfx = yes ]; then | |
975 _3dfx='#define HAVE_3DFX' | |
976 _vosrc=$_vosrc' vo_3dfx.c' | |
977 else | |
978 _3dfx='#undef HAVE_3DFX' | |
979 fi | |
980 | |
287 | 981 if [ $_svga = yes ]; then |
982 _svga='#define HAVE_SVGALIB' | |
983 _vosrc=$_vosrc' vo_svga.c' | |
984 else | |
985 _svga='#undef HAVE_SVGALIB' | |
986 fi | |
987 | |
11 | 988 if [ $_dga = yes ]; then |
989 _dga='#define HAVE_DGA' | |
38 | 990 _vosrc=$_vosrc' vo_dga.c vo_fsdga.c' |
11 | 991 else |
992 _dga='#undef HAVE_DGA' | |
993 fi | |
994 | |
233
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
995 if [ $_dga2 = yes ]; then |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
996 _dga2='#define HAVE_DGA2' |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
997 _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
|
998 else |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
999 _dga2='#undef HAVE_DGA2' |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
1000 fi |
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
1001 |
225 | 1002 if [ $_fbdev = yes ]; then |
1003 _fbdev='#define HAVE_FBDEV' | |
1004 _vosrc=$_vosrc' vo_fbdev.c' | |
1005 else | |
1006 _fbdev='#undef HAVE_FBDEV' | |
1007 fi | |
1008 | |
1 | 1009 if [ $_mpg123 = yes ]; then |
1010 _mpg123='#define DEFAULT_MPG123' | |
1011 else | |
1012 _mpg123='#undef DEFAULT_MPG123' | |
1013 fi | |
1014 | |
723 | 1015 if [ $_gui = yes ]; then |
1016 _gui='#define HAVE_GUI' | |
1017 else | |
1018 _gui='#undef HAVE_GUI' | |
1019 fi | |
1020 | |
1 | 1021 cat > $CCONF << EOF |
1022 | |
1023 /* -------- Generated by ./configure ----------- */ | |
1024 | |
1025 /* Define this to enable avg. byte/sec-based AVI sync method by default: | |
1026 (use -bps or -nobps commandline option for run-time method selection) */ | |
1027 #undef AVI_SYNC_BPS | |
1028 | |
1029 /* Undefine this if you want soundcard-only timing by default: | |
1030 You can still change this with the -alsa or -noalsa command-line option! | |
1031 (This function was originally impemented to solve ALSA driver's big | |
1032 buffer problems, but it seems to be useful for every soundcard drivers) */ | |
1033 #define ALSA_TIMER | |
1034 | |
732
e14114170e01
applied 'fakemono' patch by Bryan Chan scorpio@acm.org
arpi_esp
parents:
723
diff
changeset
|
1035 /* Undefine this if you don't want to select mono audio (left or right) |
e14114170e01
applied 'fakemono' patch by Bryan Chan scorpio@acm.org
arpi_esp
parents:
723
diff
changeset
|
1036 with a stereo MPEG layer 2/3 audio stream. The command-line option |
e14114170e01
applied 'fakemono' patch by Bryan Chan scorpio@acm.org
arpi_esp
parents:
723
diff
changeset
|
1037 -stereo has three possible values (0 for stereo, 1 for left-only, 2 for |
e14114170e01
applied 'fakemono' patch by Bryan Chan scorpio@acm.org
arpi_esp
parents:
723
diff
changeset
|
1038 right-only), with 0 being the default. |
e14114170e01
applied 'fakemono' patch by Bryan Chan scorpio@acm.org
arpi_esp
parents:
723
diff
changeset
|
1039 */ |
e14114170e01
applied 'fakemono' patch by Bryan Chan scorpio@acm.org
arpi_esp
parents:
723
diff
changeset
|
1040 #define USE_FAKE_MONO |
e14114170e01
applied 'fakemono' patch by Bryan Chan scorpio@acm.org
arpi_esp
parents:
723
diff
changeset
|
1041 |
1 | 1042 /* Undefine this if your soundcard driver has no working select(). |
1043 If you have kernel Oops, player hangups, or just no audio, you should | |
1044 try to recompile MPlayer with this option disabled! */ | |
463 | 1045 $_select |
1 | 1046 |
1047 /* You have a choice for MP3 decoding: mp3lib(mpg123) or Win32(l3codeca.acm) | |
1048 #define this if you prefer mpg123 (with 3Dnow! support) than l3codeca.acm | |
1049 (with mmx/sse optimizations) | |
1050 You can still change it runtime using -afm 1 (mpg123) or -afm 4 (l3codeca)*/ | |
1051 $_mpg123 | |
1052 | |
1053 /* XMMP support: (test code) */ | |
1054 $_xmmpaudio | |
1055 #define LIBDIR "/usr/local/lib" | |
1056 #define PLUGINDIR LIBDIR "/xmmp/Plugins" | |
1057 #define XMMP_AUDIO_DRIVER PLUGINDIR "/Sound/oss.so" | |
1058 | |
755 | 1059 /* set up max. outburst. use 65536 for ALSA 0.5, for others 16384 is enough */ |
1060 #define MAX_OUTBURST 65536 | |
1061 | |
586 | 1062 /* set up audio OUTBURST. Do not change this! */ |
1063 #ifdef USE_XMMP_AUDIO | |
1064 #define OUTBURST 4096 | |
1065 #else | |
1066 //#define OUTBURST 1024 | |
1067 #define OUTBURST 512 | |
1068 #endif | |
1069 | |
1 | 1070 /* LIRC (remote control, see www.lirc.org) support: */ |
1071 $_lircdefs | |
1072 | |
492 | 1073 /* DeCSS support using libcss */ |
1074 $_css | |
1075 | |
41 | 1076 /* Define this to enable MPEG 1/2 image postprocessing (requires FAST cpu!) */ |
1077 #define MPEG12_POSTPROC | |
1078 | |
627
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
1079 /* DirectShow support */ |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
1080 $_dshow |
f03f9ae6303a
DShow support selection is now by ./configure --disable-dshow
arpi_esp
parents:
590
diff
changeset
|
1081 |
642 | 1082 /* Use 3dnow/mmxext/sse/mmx optimized fast memcpy() [maybe buggy... signal 4]*/ |
1083 $_fastmemcpy | |
1084 | |
723 | 1085 /* gui support, please do not edit this option */ |
1086 $_gui | |
1087 | |
1 | 1088 /* Define if your processor stores words with the most significant |
1089 byte first (like Motorola and SPARC, unlike Intel and VAX). */ | |
1090 /* #define WORDS_BIGENDIAN */ | |
1091 | |
1092 #define ARCH_X86 | |
1093 | |
1094 ///////////////////////////////////////////////////////////////////////////// | |
1095 // | |
1096 // NOTE: Instead of modifying these here, use the --enable/--disable options | |
1097 // of the ./configure script! See ./configure --help for details. | |
1098 // | |
1099 ///////////////////////////////////////////////////////////////////////////// | |
1100 | |
1101 /* termcap flag for getch2.c */ | |
1102 $_termcap | |
525 | 1103 $_png |
1 | 1104 |
1105 /* Extension defines */ | |
1106 $_mlib // available only on solaris | |
1107 $_3dnowm // only define if you have 3DNOW (AMD k6-2, AMD Athlon, iDT WinChip, etc.) | |
734 | 1108 $_3dnowexm // only define if you have 3DNOWEX (AMD Athlon, etc.) |
1 | 1109 $_mmx // only define if you have MMX |
350 | 1110 $_mmx2 // only define if you have MMX2 |
1 | 1111 $_ssem // only define if you have SSE (Intel Pentium III or Celeron II) |
1112 | |
1113 /* libvo options */ | |
1114 #define SCREEN_SIZE_X $_x | |
1115 #define SCREEN_SIZE_Y $_y | |
1116 $_x11 | |
1117 $_xv | |
209
26d2d4d3331a
Addes autodetection of XF86VidMode to configure, and adds a description of
mgraffam
parents:
196
diff
changeset
|
1118 $_vm |
1 | 1119 $_gl |
11 | 1120 $_dga |
233
f62ccacbe1e5
Changes to configure to autodetect DGA 2.0 functionality, and to only use
mgraffam
parents:
225
diff
changeset
|
1121 $_dga2 |
1 | 1122 $_sdldef |
704 | 1123 /* defined for SDLlib with keyrepeat bugs (before 1.2.1) */ |
1124 $_sdlbuggy | |
1 | 1125 $_3dfx |
1126 $_mga | |
1127 $_syncfb | |
225 | 1128 $_fbdev |
287 | 1129 $_svga |
1 | 1130 |
23 | 1131 #if defined(HAVE_GL)||defined(HAVE_X11)||defined(HAVE_XV) |
1 | 1132 #define X11_FULLSCREEN |
1133 #endif | |
1134 | |
1135 EOF | |
1136 | |
1137 echo "Creating libvo/config.mak" | |
1138 | |
1139 _voobj=`echo $_vosrc | sed -e 's/\.c/\.o/g'` | |
1140 | |
1141 cat > libvo/config.mak << EOF | |
1142 | |
1143 include ../config.mak | |
1144 | |
1145 OPTIONAL_SRCS=$_vosrc | |
1146 OPTIONAL_OBJS=$_voobj | |
1147 | |
1148 EOF | |
1149 | |
1150 echo "Creating libac3/config.mak" | |
1151 | |
1152 if [ $_sse = yes ]; then | |
1153 _downmixc='downmix/downmix_kni.S' | |
1154 _downmixo='downmix/downmix_kni.o' | |
1155 else | |
1156 if [ $_binutils = yes ]; then | |
1157 _downmixc='downmix/downmix_i386.S' | |
1158 _downmixo='downmix/downmix_i386.o' | |
1159 else | |
1160 _downmixc='downmix/downmix.c' | |
1161 _downmixo='downmix/downmix.o' | |
1162 cat << EOF | |
1163 | |
1164 !!! Warning! fallback to slow downmix.c due the old binutils. | |
1165 !!! Upgrade for better audio decoding performance. | |
1166 | |
1167 EOF | |
1168 fi | |
1169 fi | |
1170 | |
1171 cat > libac3/config.mak << EOF | |
1172 | |
1173 include ../config.mak | |
1174 | |
1175 OPTIONAL_SRCS = $_downmixc | |
1176 OPTIONAL_OBJS = $_downmixo | |
1177 | |
1178 EOF | |
1179 | |
1180 echo "Creating mp3lib/config.mak" | |
1181 | |
734 | 1182 if [ $_3dnowex = yes ]; then |
787 | 1183 _mp3libobjectsrcs='dct36_k7.s dct64_k7.s decode_k7.s dct36_3dnow.s dct64_3dnow.s decode_3dnow.s' |
1184 _mp3libobjectobjs='dct36_k7.o dct64_k7.o decode_k7.o dct36_3dnow.o dct64_3dnow.o decode_3dnow.o' | |
734 | 1185 else |
1 | 1186 if [ $_3dnow = yes ]; then |
787 | 1187 _mp3libobjectsrcs='dct36_3dnow.s dct64_3dnow.s decode_3dnow.s' |
1188 _mp3libobjectobjs='dct36_3dnow.o dct64_3dnow.o decode_3dnow.o' | |
1 | 1189 else |
787 | 1190 if [ $_sse = yes ]; then |
1191 _mp3libobjectsrcs='decode_sse.s' | |
1192 _mp3libobjectobjs='decode_sse.o' | |
1193 else | |
1194 _mp3libobjectsrcs= | |
1195 _mp3libobjectobjs= | |
1196 fi | |
1 | 1197 fi |
734 | 1198 fi |
1 | 1199 |
1200 cat > mp3lib/config.mak << EOF | |
1201 | |
1202 include ../config.mak | |
1203 | |
787 | 1204 OPTIONAL_SRCS = $_mp3libobjectsrcs |
1205 OPTIONAL_OBJS = $_mp3libobjectobjs | |
1 | 1206 |
1207 EOF | |
1208 | |
1209 cat << EOF | |
1210 | |
1211 Config files successfully generated by ./configure ! | |
1212 Please check config.h and config.mak files, tune CPU | |
1213 and optimization flags if you don't like these defaults. | |
1214 You can compile the program with 'make dep;make' and | |
1215 install with 'make install'. Good luck! | |
1216 | |
1217 EOF | |
1218 | |
1219 if [ $_mtrr = yes ]; then | |
1220 echo "Please check mtrr settings at /proc/mtrr (see DOCS/MTRR)" | |
1221 echo | |
1222 fi | |
1223 | |
548
c5c2d4e41a4a
added sdl versiondetect and removed sdl warning (it's autodetect now)
atmosfear
parents:
525
diff
changeset
|
1224 if [ $_sdl = outdated ]; then |
c5c2d4e41a4a
added sdl versiondetect and removed sdl warning (it's autodetect now)
atmosfear
parents:
525
diff
changeset
|
1225 echo "You have libSDL installed, but your version is outdated (earlier then" |
c5c2d4e41a4a
added sdl versiondetect and removed sdl warning (it's autodetect now)
atmosfear
parents:
525
diff
changeset
|
1226 echo "v.1.1.7), SDL support has been disabled please update, if you want to" |
c5c2d4e41a4a
added sdl versiondetect and removed sdl warning (it's autodetect now)
atmosfear
parents:
525
diff
changeset
|
1227 echo "use it (libSDL v1.1.8 and v1.2.0 are tested and known to work, recent" |
c5c2d4e41a4a
added sdl versiondetect and removed sdl warning (it's autodetect now)
atmosfear
parents:
525
diff
changeset
|
1228 echo "versions are available from http://www.libsdl.org/)." |
c5c2d4e41a4a
added sdl versiondetect and removed sdl warning (it's autodetect now)
atmosfear
parents:
525
diff
changeset
|
1229 echo "After updating you need to re-run ./configure and recompile to enable SDL." |
1 | 1230 echo |
1231 fi | |
1232 | |
1233 if [ $_win32libdirnotify = yes ]; then | |
1234 echo "Missing WIN32 codecs dir at $_win32libdir !" | |
1235 echo "Make it and copy DLL files to there! (You can get them from your windows" | |
1236 echo "directory or download ftp://thot.banki.hu/esp-team/linux/MPlayer/w32codec.zip" | |
1237 else | |
1238 echo "Ok, Win32 codecs directory at $_win32libdir already exists." | |
1239 fi | |
1240 |