Re: Configure severely broken on IRIX

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]<

 



IRIX is a BSD UNIX, so it's sh is ksh88. 6.0 and up are compliant with SVR4, UNIX95, and POSIX as of 1999. Autoconf generated configure scripts have no problem working under these conditions, so if you're going to have a hand-coded configure it must be more resilient.

Also, MIPSpro is THE compiler on IRIX. Apps that do compile under GCC on IRIX tend to run much slower, and are harder to debug since ProDev expects MIPSpro to be present.

I've attached the output of your configure, do what you want, but if one mainstream but slightly old commercial UNIX is having issues, there will be other platforms that have issues as well.

   -Matt

The Wanderer wrote:
On 05/06/2009 04:13 PM, Matthew Saunier wrote:

Hi everyone, mplayer doesn't even try to compile on IRIX. I haven't
dug into the code yet, but I have fixed your configure. It is not, as
the slashbang indicates, a legal sh script. Under bash it mostly
works, but it assumes GCC for everything and is incapable of
detecting the architecture of SGI machines. I've added MIPSpro
compiler support to it and cleaned up some bad assumptions and
linux-isms, patch attached.

Patches should be sent to mplayer-dev-eng, following the rules in
DOCS/tech/patches.txt.

Also, MPlayer's configure script does not (or should not) require bash;
it does, however, require POSIX. Any POSIX-compliant /bin/sh should be
able to run it just fine.

@@ -1327,7 +1327,7 @@
 # Determine our OS name and CPU architecture
 if test -z "$_target" ; then
   # OS name
-  system_name=$(uname -s 2>&1)
+  system_name=`uname -s 2>&1`

The specification at

http://www.opengroup.org/onlinepubs/9699919799/utilities/sh.html

(which I understand to be part of POSIX; correct me if I'm wrong) uses
the $(subshell) syntax in at least one of its examples, and does not use
the `subshell` syntax at all. This change, and those like it, are
unlikely to be accepted; indeed I'm fairly sure I've seen commits which
changed it in the other direction.

configure is also not supposed to assume GCC - I remember reading that
people have compiled successfully with e.g. ICC, at the very least. I'm
somewhat skeptical that the sole compiler-related change which I see in
your patch will be accepted as is, but there's pretty good odds that
something with the same goal may go in if you propose it.


Detected operating system: $(uname -s 2>&1)-UNKNOWN
Detected host architecture: UNKNOWN
Checking for host cc ... gcc 
Checking for cross compilation ... yes 
The architecture of your CPU (UNKNOWN) is not supported by this configure script
It seems nobody has ported MPlayer to your OS or CPU type yet.

Error: unsupported architecture UNKNOWN

Check "configure.log" if you do not understand why it failed.
Detected operating system: IRIX
Detected host architecture: mips
7.4.4m 
Checking for host cc ... c99 
Checking for cross compilation ... no 
MIPSpro C compiler detected, optimization flags left undefined.
Checking for byte order ... big-endian 
Checking for extern symbol prefix ... Symbols from /tmp/mplayer-conf-11508-139678: [Index] Value Size Type Bind Other Shndx Name [2] | 0| 4|OBJT |GLOB |DEFAULT |5 | 
Checking for assembler support of -pipe option ... yes 
Checking for compiler support of named assembler arguments ... yes 
Checking for .align is a power of two ... no 
Checking for -lposix ... no 
Checking for -lm ... yes 
Checking for langinfo ... yes 
Checking for language ... messages: en - man pages: en - documentation: en 
Checking for enable sighandler ... yes 
Checking for runtime cpudetection ... no 
Checking for restrict keyword ... restrict 
Checking for __builtin_expect ... no 
Checking for kstat ... no 
Checking for posix4 ... no 
Checking for llrint ... yes 
Checking for lrint ... yes 
Checking for lrintf ... yes 
Checking for round ... yes 
Checking for roundf ... yes 
Checking for truncf ... yes 
Checking for mkstemp ... yes 
Checking for nanosleep ... yes 
Checking for socklib ... yes 
Checking for arpa/inet.h ... yes 
Checking for inet_pton() ... yes 
Checking for inet_aton() ... yes 
Checking for socklen_t ... yes 
Checking for closesocket() ... no 
Checking for network ... yes 
Checking for inet6 ... yes 
Checking for gethostbyname2 ... no 
Checking for inttypes.h (required) ... yes 
Checking for int_fastXY_t in inttypes.h ... yes 
Checking for malloc.h ... yes 
Checking for memalign() ... yes 
Checking for posix_memalign() ... no 
Checking for alloca.h ... yes 
Checking for fastmemcpy ... yes 
Checking for mman.h ... yes 
Checking for dynamic loader ... yes 
Checking for dynamic a/v plugins support ... no 
Checking for pthread ... yes (using -lpthread)
Checking for w32threads ... no (using pthread instead)
Checking for rpath ... no 
Checking for iconv ... yes 
Checking for soundcard.h ... no 
Checking for sys/dvdio.h ... no 
Checking for sys/cdio.h ... no 
Checking for linux/cdrom.h ... no 
Checking for dvd.h ... no 
Checking for termcap ... no 
Checking for termios ... yes (using sys/termios.h)
Checking for shm ... yes 
Checking for strsep() ... no 
Checking for vsscanf() ... yes 
Checking for swab() ... yes 
Checking for POSIX select() ... yes 
Checking for audio select() ... yes 
Checking for gettimeofday() ... yes 
Checking for glob() ... yes 
Checking for setenv() ... no 
Checking for sys/sysinfo.h ... yes 
Checking for pkg-config ... yes 
Checking for Samba support (libsmbclient) ... no 
Checking for tdfxfb ... no 
Checking for s3fb ... no 
Checking for wii ... no 
Checking for tdfxvid ... no 
Checking for xvr100 ... no 
Checking for tga ... yes 
Checking for md5sum support ... yes 
Checking for yuv4mpeg support ... yes 
Checking for bl ... no 
Checking for DirectFB ... no 
Checking for X11 headers presence ... yes 
Checking for X11 ... yes 
Checking for Xss screensaver extensions ... no 
Checking for DPMS ... yes (using Xdpms 4)
Checking for Xv ... no 
Checking for XvMC ... no 
Checking for VDPAU ... no 
Checking for Xinerama ... no 
Checking for Xxf86vm ... no 
Checking for XF86keysym ... yes 
Checking for DGA ... no 
Checking for 3dfx ... no 
Checking for OpenGL ... yes 
Checking for VIDIX ... no 
Checking for /dev/mga_vid ... no 
Checking for xmga ... no 
Checking for GGI ... no 
Checking for GGI extension: libggiwmh ... no 
Checking for AA ... yes 
Checking for CACA ... no 
Checking for SVGAlib ... no 
Checking for FBDev ... no 
Checking for DVB ... no 
Checking for DVB HEAD ... no 
Checking for PNG support ... yes 
Checking for MNG support ... no 
Checking for JPEG support ... yes 
Checking for PNM support ... yes 
Checking for GIF support ... yes 
Checking for broken giflib workaround ... disabled 
Checking for VESA support ... no 
Checking for SDL ... yes (using sdl-config)
Checking for DXR2 ... no 
Checking for DXR3/H+ ... no 
Checking for IVTV TV-Out (pre linux-2.6.24) ... no 
Checking for V4L2 MPEG Decoder ... no 
Checking for OSS Audio ... no 
Checking for aRts ... no 
Checking for EsounD ... yes 
Checking for esd_get_latency() ... yes 
Checking for NAS ... no 
Checking for pulse ... no 
Checking for JACK ... no 
Checking for OpenAL ... yes 
Checking for ALSA audio ... no 
Checking for Sun audio ... no 
Checking for SGI audio ... yes 
Checking for VCD support ... no (not supported on this OS)
Checking for dvdread ... no 
Checking for internal libdvdcss ... no 
Checking for cdparanoia ... no 
Checking for libcdio ... no 
Checking for bitmap font support ... yes 
Checking for freetype >= 2.0.9 ... yes 
Checking for fontconfig ... yes 
Checking for SSA/ASS support ... yes 
Checking for fribidi with charsets ... no 
Checking for ENCA ... no 
Checking for zlib ... yes 
Checking for bzlib ... yes 
Checking for RTC ... no 
Checking for liblzo2 support ... no 
Checking for mad support ... yes 
Checking for Twolame ... no 
Checking for Toolame ... no 
Checking for OggVorbis support ... yes (internal Tremor)
Checking for libspeex (version >= 1.1 required) ... no 
Checking for OggTheora support ... yes 
Checking for internal mp3lib support ... yes 
Checking for liba52 support ... yes (internal)
Checking for internal libmpeg2 support ... yes 
Checking for libdca support ... no 
Checking for libmpcdec (musepack, version >= 1.2.1 required) ... no 
Checking for FAAC support ... no (in libavcodec: no)
Checking for FAAD2 support ... yes (internal floating-point)
Checking for LADSPA plugin support ... no 
Checking for libbs2b audio filter support ... no 
Checking for Win32 codecs ... no 
Checking for XAnim codecs ... yes (using /usr/local/lib/codecs)
Checking for RealPlayer codecs ... no (dynamic loader support needed)
Checking for QuickTime codecs ... auto 
Checking for Nemesi Streaming Media libraries ... no 
Checking for LIVE555 Streaming Media libraries ... no 
Checking for FFmpeg libavutil ... yes (static)
Checking for FFmpeg libavcodec ... yes (static)
Checking for FFmpeg libavformat ... yes (static)
Checking for FFmpeg libpostproc ... yes (static)
Checking for FFmpeg libswscale ... yes (static)
Checking for libamr narrowband ... no 
Checking for libamr wideband ... no 
Checking for libdv-0.9.5+ ... no 
Checking for Xvid ... no 
Checking for Xvid two pass plugin ... no 
Checking for x264 ... yes (in libavcodec: yes)
Checking for libdirac ... no 
Checking for libschroedinger ... no 
Checking for libnut ... no 
Checking for zr ... no 
Checking for libmp3lame ... yes (in libavcodec: yes)
Checking for mencoder ... yes 
Checking for UnRAR executable ... yes 
Checking for TV interface ... yes 
Checking for DirectShow TV interface ... no 
Checking for Video 4 Linux TV interface ... no 
Checking for Video 4 Linux 2 TV interface ... no 
Checking for TV teletext interface ... no 
Checking for Radio interface ... no 
Checking for Capture for Radio interface ... no 
Checking for Video 4 Linux 2 Radio interface ... no 
Checking for Video 4 Linux Radio interface ... no 
Checking for Video 4 Linux 2 MPEG PVR interface ... no 
Checking for ftp ... yes 
Checking for vstream client ... no 
Checking for OSD menu ... no 
Checking for Subtitles sorting ... yes 
Checking for XMMS inputplugin support ... no 
Checking for GUI ... no
Checking for automatic gdb attach ... no 
Checking for compiler support for noexecstack ... no 
Checking for joystick ... no 
Checking for lirc ... no 
Checking for lircc ... no 
Checking for DVD support (libdvdnav) ... no 
Creating config.mak
Creating config.h

Config files successfully generated by ./configure  !

  Install prefix: /usr/local
  Data directory: /usr/local/share/mplayer
  Config direct.: /usr/local/etc/mplayer

  Byte order: big-endian
  Optimizing for: 

  Languages:
    Messages/GUI: en
    Manual pages: en

  Enabled optional drivers:
    Input: ftp tv network 
    Codecs: x264 libavcodec(internal) xanim faad2(internal) libmpeg2(internal) liba52(internal) mp3lib(internal) libtheora tremor(internal) libmad gif 
    Audio output: sgi openal esd sdl mpegpes(file) 
    Video output: sdl gif89a pnm jpeg png mpegpes(file) aa opengl x11 xover yuv4mpeg md5sum tga 

  Disabled optional drivers:
    Input: dvdnav vstream pvr radio tv-teletext tv-v4l2 tv-v4l1 tv-dshow live555 nemesi cddb cdda libdvdcss(internal) dvdread vcd dvb smb 
    Codecs: libschroedinger libdirac xvid libdv libamr_wb libamr_nb qtx real win32 faac musepack libdca speex toolame twolame liblzo 
    Audio output: sun alsa jack pulse nas arts oss v4l2 ivtv dxr2 
    Video output: zr zr2 v4l2 ivtv dxr3 dxr2 vesa fbdev svga caca ggi xmga mga xvidix winvidix cvidix 3dfx dga vdpau xvmc xv dfbmga directfb bl xvr100 tdfx_vid wii s3fb tdfxfb 

'config.h' and 'config.mak' contain your configuration options.
Note: If you alter theses files (for instance CFLAGS) MPlayer may no longer
      compile *** DO NOT REPORT BUGS if you tweak these files ***

'make' will now compile MPlayer and 'make install' will install it.
Note: On non-Linux systems you might need to use 'gmake' instead of 'make'.

NOTE: Win32 codec DLLs are not supported on your CPU (mips) or your
operating system (IRIX). You may encounter a few files that cannot
be played due to missing open source video/audio codec support.

Check configure.log if you wonder why an autodetection failed (make sure
development headers/packages are installed).

NOTE: The --enable-* parameters unconditionally force options on, completely
skipping autodetection. This behavior is unlike what you may be used to from
autoconf-based configure scripts that can decide to override you. This greater
level of control comes at a price. You may have to provide the correct compiler
and linker flags yourself.
If you used one of these options (except --enable-gui and similar ones that
turn on internal features) and experience a compilation or linking failure,
make sure you have passed the necessary compiler/linker flags to configure.

If you suspect a bug, please read DOCS/HTML/en/bugreports.html.


MPlayer compilation will use the CPPFLAGS/CFLAGS/LDFLAGS/YASMFLAGS set by you,
but:

    *** ***  DO NOT REPORT BUGS IF IT DOES NOT COMPILE/WORK!  *** ***

It is strongly recommended to let MPlayer choose the correct CFLAGS!
To do so, execute 'CFLAGS= ./configure <options>'

_______________________________________________
MPlayer-users mailing list
MPlayer-users@xxxxxxxxxxxx
https://lists.mplayerhq.hu/mailman/listinfo/mplayer-users

[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux