# Template file for 'python-PyQt4'
pkgname=python-PyQt4
version=4.11.4
revision=1
wrksrc="PyQt-x11-gpl-${version}"
hostmakedepends="pkg-config"
makedepends="python-devel python3.4-devel python-sip-devel python3.4-sip-devel
 qt-devel dbus-devel python-dbus-devel MesaLib-devel phonon-devel"
depends="python-sip"
pycompile_module="PyQt4"
short_desc="Python2 bindings for the Qt4 toolkit"
_short_desc="${short_desc/Python2/Python3.4}"
maintainer="Alessio Sergi <al3hex@gmail.com>"
homepage="http://www.riverbankcomputing.co.uk/software/pyqt/intro"
license="GPL-2, GPL-3"
distfiles="${SOURCEFORGE_SITE}/pyqt/PyQt-x11-gpl-${version}.tar.gz"
checksum=fc1fe77495432ba3b0d74ff5cb164d375a97f5dddb728256330f615a7cdcf407

_do_pyqt4_build() {
	local pyver=${1:-2.7} tools=

	if [ "$pyver" != "2.7" ]; then
		tools="--no-tools"
	fi

	python${pyver} configure-ng.py --confirm-license --assume-shared $tools \
		CC="${CC}" CFLAGS="${CFLAGS}" CXX="${CXX}" CXXFLAGS="${CXXFLAGS}" \
		LINK="${CXX}" LINK_SHLIB="${CXX}" LFLAGS="${LDFLAGS}" STRIP=""
	make ${makejobs}
}
pre_build() {
	mkdir -p pyqt4
	mv * pyqt4 || true
	cp -a pyqt4 pyqt4-3.4
	rm -rf ${wrksrc}/pyqt4/pyuic/uic/port_v3
	rm -rf ${wrksrc}/pyqt4-3.4/pyuic/uic/port_v2
}
do_build() {
	# build python-pyqt4
	cd ${wrksrc}/pyqt4
	_do_pyqt4_build

	# build python3.4-pyqt4
	cd ${wrksrc}/pyqt4-3.4
	_do_pyqt4_build 3.4
}
do_install() {
	# install python{,3.4}-pyqt4
	make -C pyqt4 DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} install
	make -C pyqt4-3.4 DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} install

	cd ${wrksrc}/pyqt4
	# install python3-pyuic4 wrapper
	sed -i 's,python2.7,python3.4,g' pyuic4
	vbin pyuic4 python3-pyuic4
	# install doc
	vmkdir usr/share/doc/${pkgname}
	vcopy "doc/html examples" usr/share/doc/${pkgname}
}

python-PyQt4-devel-tools_package() {
	short_desc+=" - development tools"
	pkg_install() {
		vmove usr/bin/pylupdate4
		vmove usr/bin/pyrcc4
	}
}
python-PyQt4-devel_package() {
	depends="python-sip-devel python3.4-sip-devel
	 python-PyQt4-${version}_${revision} python3.4-PyQt4-${version}_${revision}"
	short_desc+=" - development files"
	pkg_install() {
		vmove usr/share/sip
	}
}
python-PyQt4-dbus_package() {
	depends="${sourcepkg}-${version}_${revision} python-dbus"
	short_desc+=" - dbus support"
	pkg_install() {
		vmove usr/lib/python2.7/site-packages/dbus/mainloop/qt.so
	}
}
python-PyQt4-phonon_package() {
	depends="${sourcepkg}-${version}_${revision}"
	short_desc+=" - phonon bindings"
	pkg_install() {
		vmove usr/lib/python2.7/site-packages/PyQt4/phonon.so
	}
}
python-PyQt4-doc_package() {
	noarch=yes
	short_desc+=" - documentation files"
	pkg_install() {
		vmove usr/share/doc
	}
}
python3.4-PyQt4_package() {
	depends="python3.4-sip"
	pycompile_version="3.4"
	pycompile_module="PyQt4"
	short_desc="${_short_desc}"
	pkg_install() {
		vmove usr/bin/python3-pyuic4
		vmove usr/lib/python3.4
	}
}
python3.4-PyQt4-dbus_package() {
	depends="python3.4-PyQt4-${version}_${revision} python3.4-dbus"
	short_desc="${_short_desc} - dbus support"
	pkg_install() {
		vmove usr/lib/python3.4/site-packages/dbus/mainloop/qt.so
	}
}
python3.4-PyQt4-phonon_package() {
	depends="python3.4-PyQt4-${version}_${revision}"
	short_desc="${_short_desc} - phonon bindings"
	pkg_install() {
		vmove usr/lib/python3.4/site-packages/PyQt4/phonon.so
	}
}
