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

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

	if [ "$pyver" != "2.7" ]; then
		pysufx="m"
		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="" \
		INCDIR="${XBPS_CROSS_BASE}/usr/include/python${pyver}${pysufx}"
	make ${makejobs}
}

post_extract() {
	cp -a ${wrksrc} /tmp/python3.4-PyQt4-build
	mv /tmp/python3.4-PyQt4-build ${wrksrc}
}

pre_build() {
	rm -rf pyuic/uic/port_v3
	cd ${wrksrc}/python3.4-PyQt4-build
	rm -rf pyuic/uic/port_v2
}

do_build() {
	# build python-pyqt4
	cd ${wrksrc}
	_do_pyqt4_build

	# build python3.4-pyqt4
	cd ${wrksrc}/python3.4-PyQt4-build
	_do_pyqt4_build 3.4
}

do_install() {
	# install python-pyqt4
	make DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} install

	# install python3.4-pyqt4
	cd ${wrksrc}/python3.4-PyQt4-build
	make DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} install

	# install doc
	vmkdir usr/share/doc/${pkgname}
	vcopy "doc/html examples" usr/share/doc/${pkgname}
}

post_install() {
	# install python3-pyuic4 wrapper
	sed -i 's,python2.7,python3.4,g' pyuic4
	vbin pyuic4 python3-pyuic4
}

python-PyQt4-devel-tools_package() {
	replaces="python-PyQt4<4.11.1_2"
	depends="${sourcepkg}>=${version}_${revision}"
	short_desc+=" - development tools"
	pkg_install() {
		vmove usr/bin/pylupdate4
		vmove usr/bin/pyrcc4
	}
}

python-PyQt4-devel_package() {
	replaces="python-PyQt4<4.11.1_2"
	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-phonon_package() {
	depends="${sourcepkg}>=${version}_${revision}"
	short_desc+=" - Python2 bindings for Phonon"
	pkg_install() {
		vmove usr/lib/python2.7/site-packages/PyQt4/phonon.so
	}
}

python-PyQt4-doc_package() {
	noarch=yes
	replaces="python-PyQt4<4.11.1_2"
	short_desc+=" - documentation files"
	pkg_install() {
		vmove usr/share/doc
	}
}

python3.4-PyQt4_package() {
	replaces="python3.4-PyQt4<4.11.1_2"
	depends="python3.4-sip python3.4-dbus"
	short_desc="${short_desc/Python2/Python3.4}"
	pkg_install() {
		vmove usr/bin/python3-pyuic4
		vmove usr/lib/python3.4
	}
}

python3.4-PyQt4-phonon_package() {
	depends="python3.4-PyQt4>=${version}_${revision}"
	short_desc+=" - Python3.4 bindings for Phonon"
	pkg_install() {
		vmove usr/lib/python3.4/site-packages/PyQt4/phonon.so
	}
}
