In the latest version of the python*-r1 eclasses, there is a function defined, _python_check_dead_variables, which causes the configuration of package to fail if a deprecated variable is defined in the ebuild. Basically, this function, which ensures QA and compliance with the latest eclass forces ebuilds to break if they (often harmlessly) define a deprecated variable. It is the intention of this bug bring this to the attention of package maintainers so that we can identify all ebuilds that are now broken as a result of the update to the eclass. Reproducible: Always
=net-misc/spice-gtk-0.21 bug #533814 =x11-misc/mozo-1.8.0 bug #533836
Let's make it a tracker.
All of the variables mentioned in the function below cause this issue. For reference: _python_check_dead_variables() { local v for v in PYTHON_DEPEND PYTHON_USE_WITH{,_OR,_OPT} {RESTRICT,SUPPORT}_PYTHON_ABIS do if [[ ${!v} ]]; then die "${v} is invalid for python-r1 suite, please take a look @ https://wiki.gentoo.org/wiki/Project:Python/Python.eclass_conversion#Ebuild_head" fi done for v in PYTHON_{CPPFLAGS,CFLAGS,CXXFLAGS,LDFLAGS} do if [[ ${!v} ]]; then die "${v} is invalid for python-r1 suite, please take a look @ https://wiki.gentoo.org/wiki/Project:Python/Python.eclass_conversion#PYTHON_CFLAGS" fi done for v in PYTHON_TESTS_RESTRICTED_ABIS PYTHON_EXPORT_PHASE_FUNCTIONS \ PYTHON_VERSIONED_{SCRIPTS,EXECUTABLES} PYTHON_NONVERSIONED_EXECUTABLES \ PYTHON_TEST_VERBOSITY do if [[ ${!v} ]]; then die "${v} is invalid for python-r1 suite" fi done for v in DISTUTILS_USE_SEPARATE_SOURCE_DIRECTORIES DISTUTILS_SETUP_FILES \ DISTUTILS_GLOBAL_OPTIONS DISTUTILS_SRC_TEST PYTHON_MODNAME do if [[ ${!v} ]]; then die "${v} is invalid for distutils-r1, please take a look @ https://wiki.gentoo.org/wiki/Project:Python/Python.eclass_conversion#${v}" fi done if [[ ${DISTUTILS_DISABLE_TEST_DEPENDENCY} ]]; then die "${v} is invalid for distutils-r1, please take a look @ https://wiki.gentoo.org/wiki/Project:Python/Python.eclass_conversion#DISTUTILS_SRC_TEST" fi }
Here's a list of ebuilds I found using grep; I'll start fixing them. ./app-admin/denyhosts/denyhosts-2.6-r9.ebuild:PYTHON_MODNAME="${MY_PN}" ./app-admin/denyhosts/denyhosts-2.6-r10.ebuild:PYTHON_MODNAME="${MY_PN}" ./app-admin/setools/setools-3.3.8-r5.ebuild: # Make PYTHON_LDFLAGS replaceable during running `make`. ./app-admin/setools/setools-3.3.8-r5.ebuild: sed -e "/^AM_LDFLAGS =/s/@PYTHON_LDFLAGS@/\$(PYTHON_LDFLAGS)/" -i ${dir}/Makefile.am || die "sed failed" ./app-admin/setools/setools-3.3.8-r5.ebuild: SWIG_PYTHON_CPPFLAGS="-I${PYTHON_INCLUDEDIR}" \ ./app-admin/setools/setools-3.3.8-r5.ebuild: PYTHON_LDFLAGS="${PYTHON_LIBS}" \ ./app-backup/backintime/backintime-1.0.24-r2.ebuild:RDEPEND="${PYTHON_DEPEND} ./app-backup/backintime/backintime-1.0.36-r1.ebuild:RDEPEND="${PYTHON_DEPEND} ./app-backup/obnam/obnam-1.7.4.ebuild:PYTHON_MODNAME="${PN}lib" ./app-backup/obnam/obnam-1.8-r1.ebuild:PYTHON_MODNAME="${PN}lib" ./app-i18n/ibus-anthy/ibus-anthy-1.5.4.ebuild:PYTHON_DEPEND="2:2.5" ./app-office/libreoffice/libreoffice-9999-r2.ebuild: export PYTHON_CFLAGS=$(python_get_CFLAGS) ./app-office/libreoffice/libreoffice-4.2.6.3.ebuild: export PYTHON_CFLAGS=$(python_get_CFLAGS) ./app-office/libreoffice/libreoffice-4.2.9999.ebuild: export PYTHON_CFLAGS=$(python_get_CFLAGS) ./app-office/libreoffice/libreoffice-4.3.4.1.ebuild: export PYTHON_CFLAGS=$(python_get_CFLAGS) ./app-office/libreoffice/libreoffice-4.3.9999.ebuild: export PYTHON_CFLAGS=$(python_get_CFLAGS) ./dev-tcltk/snack/snack-2.2.10-r6.ebuild:#PYTHON_MODNAME="tkSnack.py" ./dev-util/buildbot-slave/buildbot-slave-0.8.9-r1.ebuild:PYTHON_MODNAME="buildslave" ./dev-util/buildbot-slave/buildbot-slave-9999.ebuild:PYTHON_MODNAME="buildslave" ./dev-util/buildbot-slave/buildbot-slave-0.8.10.ebuild:PYTHON_MODNAME="buildslave" ./dev-vcs/bzr-fastimport/bzr-fastimport-0.13.0.ebuild:PYTHON_MODNAME="bzrlib/plugins/fastimport" ./dev-vcs/qbzr/qbzr-0.23.1.ebuild:PYTHON_MODNAME="bzrlib/plugins/qbzr" ./dev-vcs/subversion/subversion-1.8.11.ebuild: export ac_cv_python_link="$(tc-getCC) "'$(PYTHON_CFLAGS) -bundle -undefined dynamic_lookup $(PYTHON_LIBS)' ./dev-vcs/subversion/subversion-1.8.11.ebuild: export ac_cv_python_libs='$(PYTHON_CFLAGS) -bundle -undefined dynamic_lookup $(PYTHON_LIBS)' ./mail-filter/pypolicyd-spf/pypolicyd-spf-1.1.2.ebuild:PYTHON_MODNAME="policydspfsupp.py policydspfuser.py" ./net-analyzer/carl/carl-0.9-r1.ebuild:PYTHON_MODNAME="Accounts.py Sessions.py" ./net-misc/hotot/hotot-0.9.8.14_p20130514.ebuild:PYTHON_DEPEND="gtk? 2" ./net-misc/hotot/hotot-9999.ebuild:PYTHON_DEPEND="gtk? 2" ./net-misc/hotot/hotot-0.9.8.14.ebuild:PYTHON_DEPEND="gtk? 2" ./net-misc/rabbitmq-server/rabbitmq-server-3.1.4.ebuild:PYTHON_DEPEND="2" ./net-misc/rabbitmq-server/rabbitmq-server-3.2.3.ebuild:PYTHON_DEPEND="2" ./net-misc/rabbitmq-server/rabbitmq-server-3.2.4.ebuild:PYTHON_DEPEND="2" ./net-misc/rabbitmq-server/rabbitmq-server-3.3.4.ebuild:PYTHON_DEPEND="2" ./sci-chemistry/azara/azara-2.8-r5.ebuild: python_export PYTHON_CFLAGS PYTHON_LIBS ./sci-chemistry/azara/azara-2.8-r5.ebuild: PYTHON_INCLUDE_DIR="${PYTHON_CFLAGS}" \ ./sci-libs/getdata/getdata-0.8.5.ebuild: PYTHON_CPPFLAGS="-I${EPREFIX}$(python_get_includedir)" \ ./sci-libs/getdata/getdata-0.8.5.ebuild: PYTHON_CPPFLAGS="-I${EPREFIX}$(python_get_includedir)" \ ./sci-libs/mmtk/mmtk-2.7.9.ebuild:PYTHON_MODNAME="${MY_PN}" ./x11-misc/mate-menu-editor/mate-menu-editor-1.6.0.ebuild:SUPPORT_PYTHON_ABIS="1" ./dev-libs/Ice/Ice-3.5.1.ebuild:# SUPPORT_PYTHON_ABIS=1 otherwise we can't get pyc/pyo anymore the sane way. ./dev-libs/btparser/btparser-0.24.ebuild: export PYTHON_CFLAGS=$(python-config --includes) ./dev-libs/btparser/btparser-0.25.ebuild: export PYTHON_CFLAGS=$(python-config --includes) ./dev-libs/libdnet/libdnet-1.12.ebuild:PYTHON_DEPEND="python? 2" ./dev-libs/libhid/libhid-0.2.16-r4.ebuild: use python && export PYTHON_LDFLAGS=$(${EPYTHON}-config --ldflags) ./dev-python/adodb-py/adodb-py-2.20-r1.ebuild:PYTHON_USE_WITH='sqlite?' ./dev-python/bsddb3/bsddb3-5.3.0-r1.ebuild:PYTHON_CFLAGS=("2.* + -fno-strict-aliasing") ./dev-python/bsddb3/bsddb3-6.0.0.ebuild:PYTHON_CFLAGS=("2.* + -fno-strict-aliasing") ./dev-python/django-auth-ldap/django-auth-ldap-1.1.4-r1.ebuild:PYTHON_MODNAME="django_auth_ldap" ./dev-python/enable/enable-4.3.0.ebuild:DISTUTILS_SRC_TEST="nosetests" ./dev-python/imdbpy/imdbpy-4.9-r1.ebuild:DISTUTILS_GLOBAL_OPTIONS=("*-jython --without-cutils") ./dev-python/imdbpy/imdbpy-5.0.ebuild:DISTUTILS_GLOBAL_OPTIONS=("*-jython --without-cutils") ./dev-python/kid/kid-0.9.6-r1.ebuild:RESTRICT_PYTHON_ABIS="3.*" ./dev-python/mocker/mocker-1.1.1-r1.ebuild:PYTHON_MODNAME="mocker.py" ./dev-python/natgrid/natgrid-0.2.1-r1.ebuild:PYTHON_MODNAME="mpl_toolkits/natgrid" ./dev-python/natgrid/natgrid-0.2.1-r2.ebuild:PYTHON_MODNAME="mpl_toolkits/natgrid" ./dev-python/python-augeas/python-augeas-0.4.1.ebuild:PYTHON_MODNAME="augeas.py" ./dev-python/python-augeas/python-augeas-0.4.2_pre131218.ebuild:PYTHON_MODNAME="augeas.py" ./dev-python/python-twitter/python-twitter-1.0.ebuild:PYTHON_MODNAME="twitter.py" ./dev-python/rdflib/rdflib-3.2.3-r1.ebuild:PYTHON_USE_WITH="sqlite?" ./dev-python/rootpy/rootpy-0.7.1.ebuild:PYTHON_USE_WITH="readline" ./dev-python/subvertpy/subvertpy-0.9.1.ebuild:PYTHON_CFLAGS=("2.* + -fno-strict-aliasing") ./dev-python/twisted-core/twisted-core-12.3.0-r1.ebuild:PYTHON_CFLAGS=("2.* + -fno-strict-aliasing") ./dev-python/webhelpers/webhelpers-1.3-r1.ebuild:#DISTUTILS_SRC_TEST="nosetests"
I've made the checks non-fatal for now. Better have developer fix those properly rather than hurriedly remove them.
I fixed up the ebuilds in my list above, with the exception of net-misc/rabbitmq-server; this ebuild requires some deeper attention to the *DEPEND variables.
All ebuilds in the tree should be fixed now.