# -*- 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
set python_versions {27 34 35 36}
# this default version should stay synchronized with python_get_default_version
# in the python PortGroup
set python_default_version 27
maintainers {mcalhoun @MarcusCalhoun-Lopez} openmaintainer
description Python bindings for the dbus message bus system.
homepage https://www.freedesktop.org/wiki/Software/dbus/
if {${name} eq ${subport}} {
# set up dbus-python as a stub port that depends on the default dbus-pythonXY
depends_lib port:${name}${python_default_version}
xinstall -d ${destroot}${prefix}/share/doc/${name}
system "echo $name is a stub port > ${destroot}${prefix}/share/doc/${name}/README"
foreach python_version ${python_versions} {
set python_branch [string range ${python_version} 0 end-1].[string index ${python_version} end]
subport ${name}${python_version} {
master_sites https://dbus.freedesktop.org/releases/dbus-python/
checksums rmd160 05e7ac1d0f3dd49a097b126a04456cf2c8d5db7c \
sha256 e2f1d6871f74fba23652e51d10873e54f71adab0525833c19bad9e99b1b2f9cc
livecheck.url ${master_sites}?C=M&O=D
livecheck.regex ${name}-(\\d+(?:\\.\\d+)*)
distname ${name}-${version}
depends_build port:pkgconfig
path:bin/dbus-daemon:dbus \
path:lib/pkgconfig/glib-2.0.pc:glib2 \
port:python${python_version}
set python_prefix ${frameworks_dir}/Python.framework/Versions/${python_branch}
configure.pre_args-replace --prefix=${prefix} --prefix=${python_prefix}
--docdir=${prefix}/share/doc/${subport} \
set includedir_base ${python_prefix}/include/python${python_branch}
set python_config ${prefix}/bin/python${python_branch}-config
# determine any abiflags; works for Python 3+ only; will
# catch for Python 2.7 and we know there are no flags.
if {[catch {set abiflags [exec ${python_config} --abiflags]}]} {
configure.args-append --includedir=${includedir_base}${abiflags}
configure.pkg_config_path ${python_prefix}/lib/pkgconfig