### this file is sourced not run
PKGVER=4.8.5
PKGBUILD=1
PKGARCH=i686

# source: BLFS 7.5
TARBALL=qt-everywhere-opensource-src-$PKGVER.tar.gz
MD5SUM=1864987bdbb2f58f8ae8b350dfdbe133 
SRC_URL=http://download.qt.io/archive/qt/4.8/$PKGVER/$TARBALL
BUNDLE=

SLACKREQ='libX11 alsa-lib mesa dbus glib libjpeg-turbo libpng libtiff openssl \
sqlite3 cups gtk2 gst-plugins-base'
SLACKDESC="qt4: qt $PKGVER (Qt GUI framework)  
qt4:  
qt4: Qt is a cross-platform application framework that is widely used for 
qt4: developing application software with a graphical user interface (GUI) (in 
qt4: which cases Qt is classified as a widget toolkit), and also used for 
qt4: developing non-GUI programs such as command-line tools and consoles for 
qt4: servers. One of the major users of Qt is KDE.  
qt4: 
qt4: 
qt4: 
qt4: This package installs in /opt/qt4-$PKGVER with symlnk to /opt/qt4
"

### default pkg_download
### default pkg_prepare
### package - collect libs only
pkg_package() {
	export QT4DIR=./opt/qt4 # must be relative !!!
	#rm -r  $QT4DIR/plugins
	mkdir -p $QT4DIR/bin $QT4DIR/include/QtCore $QT4DIS/include/Qt &&
	mv -v tmp/*-32 $QT4DIR/bin &&
	mv -v tmp/32-qt-qconfig.h $QT4DIR/include/QtCore/qconfig-32.h &&
	mv -v tmp/32-qtcore-qconfig.h $QT4DIR/include/QtCore/qconfig-32.h
}

### build
pkg_build() {
	cd /tmp/qt*
	export QT4DIR=/opt/qt4 QT4LINK=/opt/qt4 # BLFS has it QT4DIR=/opt/qt-4.8.5
	
	# BLFS 7.5 patch
	sed -i -e "/#if/d" -e "/#error/d" -e "/#endif/d" \
		config.tests/unix/libmng/libmng.cpp &&

	# CBLFS patch
	for file in $(grep -lr "X11R6" *)
	do
		sed -i "s@/usr/X11R6@${XORG_PREFIX}@g" $file
	done
	export QMAKESPEC=linux-g++-32
	mkdir -pv /opt/qt-$PKGVER &&
	ln -v -sfvn qt-$PKGVER /opt/qt4 &&	

	./configure -prefix $QT4DIR  \
			-libdir $QT4DIR/$LIBDIR \
			-plugindir $QT4DIR/$LIBDIR/plugins \
			-headerdir $QT4DIR/include \
			-datadir $QT4DIR/$LIBDIR \
			-translationdir $QT4DIR/share/translations \
			-docdir $QT4DIR/share/doc/qt \
			-demosdir $QT4DIR/share/demos \
			-examplesdir $QT4DIR/share/examples \
			-reduce-relocations \
			-no-separate-debug-info \
			-sysconfdir /etc/xdg \
            -confirm-license     \
            -opensource          \
            -release             \
            -dbus-linked         \
            -openssl-linked      \
            -plugin-sql-sqlite   \
            -no-phonon           \
            -no-phonon-backend   \
            -no-nis              \
            -no-openvg           \
            -nomake demos        \
            -nomake examples     \
            -no-icu              \
            -no-webkit           \
            -no-exceptions       \
            -optimized-qmake     &&

	make $MAKEFLAGS &&
	make install &&
	sed -i -e 's|-lwebcore||g; s|-ljscore||g;' $QT4DIR/$LIBDIR/*.la && # stupid qt
	# ln -svfn $QT4DIR $QT4LINK # for us, QT4DIR and QT4LINK is the same 
	
	for file in `basename -a -s .prl $QT4DIR/$LIBDIR/lib*.prl`; do
		sed -r -e '/^QMAKE_PRL_BUILD_DIR/d'    \
			-e 's/(QMAKE_PRL_LIBS =).*/\1/' \
			-i $QT4DIR/$LIBDIR/${file}.prl
		perl -pi -e "s, -L$PWD/?\S+,,g" $QT4DIR/$LIBDIR/pkgconfig/${file##lib}.pc
	done &&
	
	unset file &&
	rm -rf /include &&	
	
<< "UNUSED_STUFF_DISABLED"
	install -v -Dm644 src/gui/dialogs/images/qtlogo-64.png \
					  /usr/share/pixmaps/qt4logo.png       &&
	install -v -Dm644 tools/assistant/tools/assistant/images/assistant-128.png \
					  /usr/share/pixmaps/assistant-qt4.png &&
	install -v -Dm644 tools/designer/src/designer/images/designer.png \
					  /usr/share/pixmaps/designer-qt4.png  &&
	install -v -Dm644 tools/linguist/linguist/images/icons/linguist-128-32.png \
					  /usr/share/pixmaps/linguist-qt4.png  &&
	install -v -Dm644 tools/qdbus/qdbusviewer/images/qdbusviewer-128.png \
					  /usr/share/pixmaps/qdbusviewer-qt4.png &&
	install -dm755 /usr/share/applications &&
	
	# desktop files
	install -m644 /tmp/pkg/assistant-qt4.desktop /usr/share/applications &&
	install -m644 /tmp/pkg/designer-qt4.desktop /usr/share/applications &&
	install -m644 /tmp/pkg/linguist-qt4.desktop /usr/share/applications &&
	install -m644 /tmp/pkg/qdbusviewer-qt4.desktop /usr/share/applications &&
	install -m644 /tmp/pkg/qtconfig-qt4.desktop /usr/share/applications &&
	
	# profile
	mkdir -p /etc/profile.d
	cat > /etc/profile.d/qt4.sh << EOF &&
QT4DIR=$QT4LINK
export QT4DIR
EOF
	chmod +x /etc/profile.d/qt4.sh &&
UNUSED_STUFF_DISABLED

	pkg_build_slackdesc &&
	
	# multilib
	mv -v /opt/qt4/bin/qmake /tmp/qmake-32 &&
	mv -v /opt/qt4/bin/uic   /tmp/uic-32   &&
	mv -v /opt/qt4/bin/uic3  /tmp/uic3-32  &&
	mv -v /opt/qt4/bin/moc   /tmp/moc-32   &&
	mv -v /opt/qt4/include/Qt/qconfig.h      /tmp/32-qt-qconfig.h &&
	mv -v /opt/qt4/include/QtCore/qconfig.h  /tmp/32-qtcore-qconfig.h
}


