TERMUX_PKG_VERSION=5.10.0
TERMUX_PKG_HOMEPAGE=https://www.qt.io
TERMUX_PKG_MAINTAINER="Vishal Biswas @vishalbiswas"
TERMUX_PKG_SRCURL="http://download.qt.io/official_releases/qt/${TERMUX_PKG_VERSION%.*}/$TERMUX_PKG_VERSION/single/qt-everywhere-src-$TERMUX_PKG_VERSION.tar.xz"
TERMUX_PKG_SHA256=936d4cf5d577298f4f9fdb220e85b008ae321554a5fcd38072dc327a7296230e
TERMUX_PKG_DEPENDS="libsqlite, libjpeg-turbo, libpng, pcre2, openssl, libandroid-support, freetype, harfbuzz, libwebp, postgresql, mariadb, fontconfig, libopus, libevent, jsoncpp, libprotobuf"
TERMUX_PKG_BUILD_IN_SRC=true
TERMUX_PKG_EXTRA_MAKE_ARGS=" -s"

termux_step_pre_configure () {
	#if [ $TERMUX_ARCH_BITS = 32 ]; then
	#	CPPFLAGS+=" -DTERMUX_EXPOSE_FILE_OFFSET64=1"
	#fi
	LDFLAGS+=" -llog -lpcre2-16 -lpng16 -ljpeg -lsqlite3 -lssl -lfreetype -lharfbuzz -lz -lfontconfig -lwebp -lpq -lmariadb"
	CPPFLAGS+=" -I$TERMUX_PKG_SRCDIR/include -I$TERMUX_PREFIX/include/freetype2 -I$TERMUX_PREFIX/include/fontconfig -I$TERMUX_PREFIX/include/mysql -I$TERMUX_PKG_BUILDER_DIR"
	#CFLAGS+=" $CPPFLAGS"
	#CXXFLAGS+=" $CPPFLAGS"
	sed -e "s|@TERMUX_HOST_PLATFORM@|$TERMUX_HOST_PLATFORM|g" \
		-e "s|@CFLAGS@|$CPPFLAGS $CFLAGS|" \
		-e "s|@CXXFLAGS@|$CPPFLAGS $CXXFLAGS|" \
		-e "s|@LDFLAGS@|$LDFLAGS|" $TERMUX_PKG_BUILDER_DIR/mkspec.diff | patch -p1
}

termux_step_configure () {
	export PKG_CONFIG_SYSROOT_DIR="/"

	$TERMUX_PKG_SRCDIR/configure \
		-confirm-license \
		-optimize-size \
		-optimized-tools \
		-opensource \
		-pkg-config \
		-system-sqlite \
		-system-zlib \
		-system-libjpeg \
		-system-libpng \
		-system-pcre \
		-system-freetype \
		-system-harfbuzz \
		-qpa vnc \
		-opengl es2\
		-opengles3 \
		-no-eglfs \
		-syslog \
		-no-assimp \
		-no-cups \
		-no-icu \
		-no-glib \
		-no-dbus \
		-no-fontconfig \
		-force-asserts \
		-system-webp \
		-system-opus \
		-no-pulseaudio \
		-openssl-runtime \
		-nomake examples \
		-prefix $TERMUX_PREFIX \
		-xplatform linux-termux-clang \
		-nomake tests \
		-plugindir "$TERMUX_PREFIX/libexec/Qt"

	make -j $TERMUX_MAKE_PROCESSES -C "$TERMUX_PKG_BUILDDIR" qmake_all || true

	for _makefile in `find "$TERMUX_PKG_BUILDDIR" -type f -name Makefile`; do
		sed -i "s| -lrt||g" "$_makefile"
	done
}

termux_step_post_massage () {
	# cross compilation only builds tools usable on build machine (i.e. cross tools)
	# manually make tools to be used by the host machine
	for tool in src/tools/{moc,qlalr,uic,rcc} qmake; do
		cd "$TERMUX_PKG_SRCDIR"/qtbase/$tool
		make clean $TERMUX_PKG_EXTRA_MAKE_ARGS
		$TERMUX_PREFIX/bin/qmake
		make -j $TERMUX_MAKE_PROCESSES $TERMUX_PKG_EXTRA_MAKE_ARGS
		#make -j $TERMUX_MAKE_PROCESSES $TERMUX_PKG_EXTRA_MAKE_ARGS CC=$CC CXX=$CXX LINK=$CXX AR="$AR cqs" STRIP=$STRIP \
		#	QMAKESPEC=$TERMUX_PKG_SRCDIR/qtbase/mkspecs/linux-termux-clang \
		#	QMAKE_LFLAGS=$TERMUX_PREFIX/lib/libc++_shared.so \
		#	LIBS="$TERMUX_PREFIX/lib/libc++_shared.so $TERMUX_PKG_BUILDDIR/qtbase/lib/libQt5Core.so $LDFLAGS"
	done

	cp "$TERMUX_PKG_BUILDDIR"/qtbase/bin/{moc,qlalr,uic,rcc,qmake} "$TERMUX_PKG_MASSAGEDIR/$TERMUX_PREFIX"/bin/
}