# $Id$

PortSystem 1.0
PortGroup           github 1.0

github.setup        cmus cmus 2.6.0 v
revision            1
categories          audio
maintainers         g5pw openmaintainer
license             GPL-2+
description         ncurses based music player
long_description    cmus is a small and fast text mode music player for Linux \
                    and many other UNIX like operating systems.
homepage            https://cmus.github.io/
platforms           darwin

checksums           rmd160  90c3867ef87f7831a6cfdd942b420541291c5f8c \
                    sha256  4c751b55594d098fc9768dfd40c15ac6e7f061ebf02276c8f3e0ef7200383839

depends_build       path:bin/pkg-config:pkgconfig
depends_lib         port:libao \
                    port:libmad \
                    port:libogg \
                    port:libvorbis \
                    port:libiconv \
                    port:ncurses

universal_variant   no
build.args          V=2

# ccache: invalid option -- L
configure.ccache    no

configure.pre_args
configure.args      prefix=${prefix} CONFIG_FLAC=n CONFIG_MIKMOD=n \
                    CONFIG_MODPLUG=n CONFIG_MPC=n CONFIG_FFMPEG=n \
                    CONFIG_AAC=n CONFIG_MP4=n CONFIG_MAD=y CONFIG_VORBIS=y \
                    CONFIG_WAVPACK=n CONFIG_OPUS=n CONFIG_CUE=n \
                    CONFIG_CDIO=n CONFIG_CDDB=n CONFIG_DISCID=n \
                    CONFIG_AO=y CONFIG_PULSE=n CONFIG_OSS=n \
                    CONFIG_JACK=n CONFIG_SAMPLERATE=n \
                    HOSTCC="${configure.cc}" \
                    HOST_CFLAGS="${configure.cflags}" \
                    HOST_LDFLAGS="${configure.ldflags}"

post-configure {
    reinplace -W ${worksrcpath} "s|-R${prefix}/lib|-rpath ${prefix}/lib|g" config.mk
}

default_variants +aac +cdio +cue +ffmpeg +flac +mad +mikmod +mpc +vorbis +wav +wavpack

variant aac  description {Support aac files}   {
    depends_lib-append    port:faad2 path:lib/libmp4v2.dylib:mp4v2
    configure.args-delete CONFIG_AAC=n CONFIG_MP4=n
    configure.args-append CONFIG_AAC=y CONFIG_MP4=y
}

variant flac  description {Support flac files} {
    depends_lib-append    port:flac
    configure.args-delete CONFIG_FLAC=n
    configure.args-append CONFIG_FLAC=y
}

variant mikmod  description {Support mod files} {
    depends_lib-append    port:libmikmod
    configure.args-delete CONFIG_MIKMOD=n
    configure.args-append CONFIG_MIKMOD=y
}

variant mpc  description {Support musepack files} {
    depends_lib-append    port:libmpcdec
    configure.args-delete CONFIG_MPC=n
    configure.args-append CONFIG_MPC=y
}

variant wavpack  description {Support WavPack files} {
    depends_lib-append    port:wavpack
    configure.args-delete CONFIG_WAVPACK=n
    configure.args-append CONFIG_WAVPACK=y
}

variant opus  description {Support Opus files} {
    depends_lib-append    port:opusfile
    configure.args-delete CONFIG_OPUS=n
    configure.args-append CONFIG_OPUS=y
}

variant ffmpeg  description {Support ffmpeg} {
    depends_lib-append    port:ffmpeg
    configure.args-delete CONFIG_FFMPEG=n
    configure.args-append CONFIG_FFMPEG=y
}

variant cdda  description {Support audio CD playback} {
    depends_lib-append    port:libcdio \
                          port:libcdio-paranoia \
              port:libcddb \
              port:libdiscid
    configure.args-delete CONFIG_CDIO=n CONFIG_CDDB=n CONFIG_DISCID=n
    configure.args-append CONFIG_CDIO=y CONFIG_CDDB=y CONFIG_DISCID=y
}

variant cue  description {Support CUE sheets} {
    depends_lib-append    port:libcue
    configure.args-delete CONFIG_CUE=n
    configure.args-append CONFIG_CUE=y
}

variant pulseaudio  description {Support native PulseAudio output} {
    depends_lib-append    port:pulseaudio
    configure.args-delete CONFIG_PULSE=n
    configure.args-append CONFIG_PULSE=y
}

variant jack  description {Support native JACK output} {
    depends_lib-append    port:jack
    configure.args-delete CONFIG_JACK=n CONFIG_SAMPLERATE=n
    configure.args-append CONFIG_JACK=y CONFIG_SAMPLERATE=y
}