# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4 PortSystem 1.0 PortGroup github 1.0 PortGroup legacysupport 1.1 PortGroup waf 1.0 # strndup legacysupport.newest_darwin_requires_legacy 10 name xmms2 github.setup xmms2 xmms2-devel 0.9.4 github.tarball_from releases revision 0 categories audio # Mostly LGPL, some plugins and clients are GPL license LGPL-2.1+ GPL-2+ GPL-2 maintainers nomaintainer use_xz yes description CrossPlatform Music Multiplexer System long_description Next generation audio player of XMMS distname ${name}-${version} checksums rmd160 85f140f983aea9462af64f3fccdcfcbd32cbc958 \ sha256 100a35d2467006fe1828988043a9202e804ed8b0e94326addf32bb27645cb42a \ size 1741996 depends_build-append path:bin/pkg-config:pkgconfig set ffmpeg_ver 6 depends_lib-append port:faad2 \ port:ffmpeg${ffmpeg_ver} \ port:fftw-3-single \ port:flac \ port:fluidsynth \ path:lib/pkgconfig/glib-2.0.pc:glib2 \ port:libcdio-paranoia \ port:libdiscid \ port:libmad \ port:libmms \ port:libmodplug \ port:libmpcdec \ port:libsamplerate \ port:libshout2 \ port:libsndfile \ port:libvorbis \ port:libxml2 \ port:mpg123 \ port:opusfile \ path:lib/libspeex.dylib:speex \ port:wavpack waf.python_branch 3.12 configure.pkg_config_path \ ${prefix}/libexec/ffmpeg${ffmpeg_ver}/lib/pkgconfig configure.args-append --conf-prefix=${prefix} post-patch { fs-traverse f ${worksrcpath}/waftools { if {[string match *.py ${f}]} { reinplace -q "s|/usr/bin/env python$|${prefix}/bin/${waf.python_branch}|" ${f} } } } # error: incompatible function pointer types passing # 'void (DNSServiceRef, DNSServiceFlags, uint32_t, DNSServiceErrorType, # const char *, const char *, uint16_t, uint16_t, const char *, void *)' # to parameter of type 'DNSServiceResolveReply' if {[string match *clang* ${configure.compiler}]} { configure.cflags-append -Wno-error=incompatible-function-pointer-types } # Xcode gcc fails to build this at least due to pragmas inside functions. # Rather use a newer compiler than carry a patch indefinitely. # This does not hurt, since a newer gcc is strictly required # anyway due to several dependencies, beginning from python312. compiler.blacklist-append *gcc-4.0 *gcc-4.2 options optionals options disabled_plugins default disabled_plugins {jack pulse} # not supported configure.post_args-delete --nocache variant pulse description {Pulseaudio support} { depends_lib-append port:pulseaudio disabled_plugins-delete pulse } variant jack description {Jack audio support} { depends_lib-append port:jack disabled_plugins-delete jack } variant cpp description {C++ development support} { PortGroup boost 1.0 configure.args-append \ --boost-includes [boost::include_dir] \ --boost-libs [boost::lib_dir] optionals-append xmmsclient++ xmmsclient++-glib } variant mdns description {MDNS backend support using avahi} { depends_lib-append port:avahi optionals-append mdns } variant perl description {Perl development support} { depends_lib-append port:perl5.34 port:p5.34-pod-parser configure.args-append --with-perl-binary ${prefix}/bin/perl5.34 configure.env-append PODSELECT=${prefix}/bin/podselect-5.34 optionals-append perl } variant ruby description {Ruby development support} { depends_lib-append port:ruby33 configure.args-append --with-ruby-binary ${prefix}/bin/ruby3.3 optionals-append ruby } variant python description {Support for Python 3.12} { depends_lib-append port:py312-cython optionals-append python configure.python ${prefix}/bin/python3.12 configure.env-append CYTHON=${prefix}/bin/cython-3.12 } pre-configure { configure.args-append \ --with-optionals=[join ${optionals} ,] \ --without-plugins=[join ${disabled_plugins} ,] } default_variants +python