# $Id: Portfile 97298 2012-09-03 02:11:44Z ryandesign@macports.org $

PortSystem 1.0
PortGroup muniversal 1.0

name		mpg123
version		1.14.4
categories	audio
maintainers	gmx.at:astifter openmaintainer
license		GPL-2 LGPL-2.1

description	fast mp3 player for linux and unix systems
long_description	\
	Mpg123 is a fast, free and portable MPEG audio player for Unix. It \
	supports MPEG 1.0/2.0 layers 1, 2 and 3. For full CD quality \
	playback (44 kHz, 16 bit, stereo) a Pentium, SPARCstation10, DEC \
	Alpha or similar CPU is required. Mono and/or reduced quality \
	playback (22 kHz or 11 kHz) is even possible on 486 CPUs. \
	\
	This version uses EsounD on a pure Darwin install and CoreAudio \
	on Mac OS X.

homepage	http://www.mpg123.de/
platforms	darwin
master_sites	sourceforge:project/mpg123/mpg123/${version} \
		${homepage}download/
use_bzip2	yes

checksums           rmd160  ae3f6673fa5574614c5641be437edfb290dbdb91 \
                    sha256  9ca189f24eb4ec6b5046b64d72c3c8439fd9ea300ce1b8b91a05cd6a9d3e5c12

depends_lib	port:libtool

patchfiles	patch-configure.diff

platform macosx {
    configure.args-append --with-audio=coreaudio
}

# For i386 we'd like to use --with-cpu=sse but this fails with:
# ld: illegal text-relocation to intwinbase in .libs/tabinit_mmx.o from _INT123_make_decode_tables_mmx_asm in .libs/tabinit_mmx.o for architecture i386
# see also http://sourceforge.net/tracker/index.php?func=detail&aid=3504701&group_id=135704&atid=733194

if {[variant_isset universal]} {
    set merger_configure_args(x86_64) --with-cpu=x86-64
    set merger_configure_args(i386) --with-cpu=i586
    set merger_configure_args(ppc) --with-cpu=altivec
    set merger_configure_args(ppc64) --with-cpu=altivec
} else {
    switch -- ${configure.build_arch} {
        x86_64 { configure.args-append --with-cpu=x86-64 }
        i386 { configure.args-append --with-cpu=i586 }
        ppc -
        ppc64 { configure.args-append --with-cpu=altivec }
    }
}
