SPECS: qt4.spec - Release 0.rc1.0.2 - build patch - cleanups and ...

pascalek pascalek at pld-linux.org
Thu Jun 23 04:26:17 CEST 2005


Author: pascalek                     Date: Thu Jun 23 02:26:17 2005 GMT
Module: SPECS                         Tag: HEAD
---- Log message:
- Release 0.rc1.0.2
- build patch 
- cleanups and new TODOs
- now it builds and should work

---- Files affected:
SPECS:
   qt4.spec (1.23 -> 1.24) 

---- Diffs:

================================================================
Index: SPECS/qt4.spec
diff -u SPECS/qt4.spec:1.23 SPECS/qt4.spec:1.24
--- SPECS/qt4.spec:1.23	Thu Jun 16 21:21:03 2005
+++ SPECS/qt4.spec	Thu Jun 23 04:26:11 2005
@@ -1,7 +1,9 @@
 # $Revision$, $Date$
 #
 # TODO:
-#		- better descriptions
+#	- better descriptions
+#	- more cleanups
+#	- better solution for *.prl files
 #
 # Conditional build:
 %bcond_with	nas		# enable NAS audio support
@@ -37,7 +39,7 @@
 Name:		qt4
 Version:	%{_ver}
 #Release:	1.%{_snap}.0.1
-Release:	0.rc1.0.1
+Release:	0.rc1.0.2
 License:	GPL/QPL
 Group:		X11/Libraries
 #Source0:	http://ep09.pld-linux.org/~%{_packager}/kde/qt-copy-%{_snap}.tar.bz2
@@ -59,6 +61,7 @@
 Patch2:		%{name}-buildsystem.patch
 Patch4:		%{name}-locale.patch
 Patch8:		%{name}-antialias.patch
+Patch9:		%{name}rc1-build.patch
 URL:		http://www.trolltech.com/products/qt/
 Icon:		qt.xpm
 %{?with_ibase:BuildRequires:	Firebird-devel}
@@ -518,6 +521,7 @@
 %patch2 -p1 -b .niedakh
 %patch4 -p1 -b .niedakh
 %patch8 -p1 -b .niedakh
+%patch9 -p1
 
 #cat >> patches/DISABLED <<EOF
 #0005
@@ -553,25 +557,25 @@
 echo -e "QMAKE_CXXFLAGS_DEBUG\t=\t%{debugcflags}" >> $plik
 
 %build
-export QTDIR=`/bin/pwd`
-export YACC='byacc -d'
-export PATH=$QTDIR/bin:$PATH
+QTDIR=`/bin/pwd`
+
 if test -n "$LD_LIBRARY_PATH"; then
-export LD_LIBRARY_PATH=$QTDIR/%{_lib}:$LD_LIBRARY_PATH
+    LD_LIBRARY_PATH=$QTDIR/%{_lib}:$LD_LIBRARY_PATH
 else
-export LD_LIBRARY_PATH=$QTDIR/lib
+    LD_LIBRARY_PATH=$QTDIR/lib
 fi
 
-export QMAKESPEC=$QTDIR/mkspecs/linux-g++
-
 if [ "%{_lib}" != "lib" ] ; then
 	ln -s lib "%{_lib}"
 fi
 
 # pass OPTFLAGS to build qmake itself with optimization
-export OPTFLAGS="%{rpmcflags}"
+OPTFLAGS="%{rpmcflags}"
+PATH=$QTDIR/bin:$PATH
+QMAKESPEC=$QTDIR/mkspecs/linux-g++
+YACC='byacc -d'
 
-#%{__make} -f Makefile.cvs
+export QTDIR YACC PATH LD_LIBRARY_PATH QMAKESPEC OPTFLAGS
 
 BuildLib() {
 # $1 - aditional params
@@ -585,12 +589,16 @@
 	-DQT_COMPAT \
 	-verbose \
 	-prefix %{_prefix} \
-	-libdir %{_libdir} \
-	-headerdir %{_includedir}/qt \
-	-datadir %{_datadir}/qt \
 	-docdir %{_docdir}/%{name}-doc \
-	-sysconfdir %{_sysconfdir}/qt \
+	-headerdir %{_includedir}/qt4 \
+	-libdir %{_libdir} \
+	-bindir %{_bindir} \
+	-plugindir %{_libdir}/qt4/plugins \
+	-datadir %{_datadir}/qt4 \
 	-translationdir %{_datadir}/locale/ \
+	-sysconfdir %{_sysconfdir}/qt4 \
+	-examplesdir %{_examplesdir}/qt4 \
+	-demosdir %{_examplesdir}/qt4-demos \
 	-fast \
 	-%{!?with_pch:no-}pch \
 	-qt-gif \
@@ -654,14 +662,24 @@
 	%{?with_ibase:-plugin-sql-ibase}"
 BuildLib $OPT
 
+%{__make} \
+	sub-tools-all-ordered \
+	sub-demos-all-ordered \
+	sub-examples-all-ordered
 
-# regenerate missing file
-cd tools/qtconfig
-$QTDIR/bin/uic previewwidgetbase.ui -o ui_previewwidgetbase.h
-cd -
-
-# build shared tools and demos
-%{__make} sub-tools-all-ordered sub-demos-all-ordered
+#
+# TODO: 
+#	Check for "with" conditions befor build
+# OR
+#	Find out why and fix the reason of building only mysql sqldriver
+#	(it is not installed either)
+#
+for dir in src/plugins/sqldrivers/{ibase,odbc,psql,sqlite,sqlite2}
+do
+	cd $dir
+	%{__make}
+	cd -
+done
 
 %if %{with dont_enable}
 %if %{with designer}
@@ -680,32 +698,19 @@
 
 %install
 rm -rf $RPM_BUILD_ROOT
+QTDIR=`/bin/pwd`
 
-export QTDIR=`/bin/pwd`
+export QTDIR
 
 %{__make} install \
 	INSTALL_ROOT=$RPM_BUILD_ROOT
 
 install -d \
-	$RPM_BUILD_ROOT%{_sysconfdir}/qt \
-	$RPM_BUILD_ROOT%{_libdir}/qt4/plugins/{crypto,network} \
-	$RPM_BUILD_ROOT%{_examplesdir}/%{name}/lib \
-	$RPM_BUILD_ROOT%{_mandir}/man{1,3} \
-	$RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}}
-
-install bin/findtr \
-	tools/qvfb/qvfb \
-	$RPM_BUILD_ROOT%{_bindir}
-
-mv -f $RPM_BUILD_ROOT{%{_prefix}/qt.conf,%{_sysconfdir}/qt}
-
-# we fix qmakespecs. from now QMAKE_INCDIR_QT becomes %{_includedir}/qt4
-perl -pi -e "
-	s|(QMAKE_INCDIR_QT\\s*=\\s*\\\$\\(QTDIR\\)/include)|\$1/qt4|
-	" $RPM_BUILD_ROOT/%{_datadir}/qt4/mkspecs/linux-g++/qmake.conf
-
-#tools/{msg2qm/msg2qm,mergetr/mergetr}
-#	$RPM_BUILD_ROOT%{_bindir}
+	$RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}} \
+	$RPM_BUILD_ROOT%{_libdir}/qt4/plugins/{crypto,network}
+	
+install plugins/sqldrivers/* $RPM_BUILD_ROOT%{_libdir}/qt4/plugins/sqldrivers
+install bin/findtr tools/qvfb/qvfb $RPM_BUILD_ROOT%{_bindir}
 
 install %{SOURCE2} $RPM_BUILD_ROOT%{_desktopdir}
 install %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir}
@@ -716,12 +721,12 @@
 install tools/linguist/linguist/images/appicon.png \
 	$RPM_BUILD_ROOT%{_pixmapsdir}/linguist.png
 
-install tools/assistant/images/appicon.png \
+install tools/assistant/images/assistant.png \
 	$RPM_BUILD_ROOT%{_pixmapsdir}/assistant.png
 
 %if %{with designer}
 install tools/designer/src/designer/images/designer.png \
-$RPM_BUILD_ROOT%{_pixmapsdir}/designer.png
+	$RPM_BUILD_ROOT%{_pixmapsdir}/designer.png
 %endif
 
 %if %{with static_libs}
@@ -731,15 +736,8 @@
 %if %{with designer}
 install %{SOURCE3} $RPM_BUILD_ROOT%{_desktopdir}/designer.desktop
 install %{SOURCE5} $RPM_BUILD_ROOT%{_desktopdir}
-install bin/uic $RPM_BUILD_ROOT%{_bindir}
 %endif
 
-install tools/linguist/{qm2ts,lrelease,lupdate}/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
-
-# not yet available
-#install doc/man/man1/*.1	$RPM_BUILD_ROOT%{_mandir}/man1
-#install doc/man/man3/*.3qt	$RPM_BUILD_ROOT%{_mandir}/man3
-
 %if %{with dont_enable}
 install -d $RPM_BUILD_ROOT%{_datadir}/locale/{ar,de,fr,ru,he,cs,sk}/LC_MESSAGES
 install translations/qt_ar.qm $RPM_BUILD_ROOT%{_datadir}/locale/ar/LC_MESSAGES/qt.qm
@@ -762,42 +760,46 @@
 install tools/linguist/linguist/linguist_fr.qm $RPM_BUILD_ROOT%{_datadir}/locale/fr/LC_MESSAGES/linguist.qm
 %endif
 
-cp -dpR examples $RPM_BUILD_ROOT%{_examplesdir}/%{name}
-mv $RPM_BUILD_ROOT{%{_libdir}/*.prl,%{_examplesdir}/%{name}/lib}
-
-for i in `find $RPM_BUILD_ROOT -name \*.svn`
+cd $RPM_BUILD_ROOT%{_includedir}/qt4/Qt
+for f in ../Qt{3Support,Core,Gui,Network,OpenGL,Sql,Xml}/*
 do
-	rm -rf "$i";
+	if [ ! -d $f ]; then
+		ln -sf $f `basename $f`
+	fi
 done
+ln -sf ../../QtCore/arch/qatomic.h arch/qatomic.h
+cd -
 
-cd $RPM_BUILD_ROOT%{_examplesdir}/%{name}
-for i in `find ./ -name Makefile`;
+# Prepare some files list
+echo "%defattr(644,root,root,755)" > examples.files
+DIR=$RPM_BUILD_ROOT%{_examplesdir}/qt4
+echo "%%dir %%{_examplesdir}/qt4" >> examples.files
+for f in `find $DIR -printf "%%P "`
 do
-
-%{__sed} -i -e "s,$RPM_BUILD_DIR,%{_prefix},g" $i
-%{__sed} -i -e "s,examples,src/examples/qt4/examples,g" $i
-
+	echo $f
+	if [ -d "$DIR/$f" ]; then
+		echo "%%dir %%{_examplesdir}/qt4/$f" >> examples.files
+	elif [ -x "$DIR/$f" ] ; then
+		echo "%%attr(755,root,root) %%{_examplesdir}/qt4/$f" >> examples.files
+	else
+		echo "%%{_examplesdir}/qt4/$f" >> examples.files
+	fi
 done
-cd -
 
-# we will be only packaging modularized qt no need to package the same headers twice
-rm -rf $RPM_BUILD_ROOT%{_includedir}/qt4/Qt
-
-#cd $RPM_BUILD_ROOT%{_includedir}/Qt
-#rm -rf *.h
-#mkdir arch
-#for i in `find \`find ../  -maxdepth 1 -type d | egrep -v -w 'Qt|./'\` -name \*.h|cut -c 4-`;
-#do
-#y=`echo $i|cut -d '/' -f2-`;
-#ln -s $y ../$i;
-#done
-#cd -
-
-install demos/arthur/{affine/affine,deform/deform,gradients/gradients,pathstroke/pathstroke} \
-	demos/{downloadwidget/downloadwidget,interview/interview,mainwindow/mainwindow} \
-	demos/{textedit/textedit,sqlbrowser/sqlbrowser,spreadsheet/spreadsheet,scrollarea/scrollarea} \
-	demos/{plasmatable/plasmatable,pimelim/pimelim} \
-	$RPM_BUILD_ROOT%{_bindir}
+echo "%defattr(644,root,root,755)" > demos.files
+DIR=$RPM_BUILD_ROOT%{_examplesdir}/qt4-demos
+echo "%%dir %%{_examplesdir}/qt4-demos" >> demos.files
+echo "%%attr(755,root,root) %%{_bindir}/qtdemo" >> demos.files
+for f in `find $DIR -printf "%%P "`
+do
+	if [ -d "$DIR/$f" ]; then
+		echo "%%dir %%{_examplesdir}/qt4-demos/$f" >> demos.files
+	elif [ -x "$DIR/$f" ] ; then
+		echo "%%attr(755,root,root) %%{_examplesdir}/qt4-demos/$f" >> demos.files
+	else
+		echo "%%{_examplesdir}/qt4-demos/$f" >> demos.files
+	fi
+done
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -842,8 +844,7 @@
 
 %files -n QtCore
 %defattr(644,root,root,755)
-%dir %{_sysconfdir}/qt
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/qt/qt.conf
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) 
 %attr(755,root,root) %{_libdir}/libQtCore*.so.*
 %dir %{_libdir}/qt4/plugins
 %dir %{_libdir}/qt4/plugins/codecs
@@ -858,6 +859,7 @@
 %dir %{_includedir}/qt4
 %attr(755,root,root) %{_libdir}/libQtCore*.so
 %{_libdir}/libQtCore*.la
+%{_libdir}/libQtCore*.prl
 %{_includedir}/qt4/QtCore
 %{_pkgconfigdir}/QtCore*.pc
 
@@ -871,6 +873,7 @@
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libQtGui*.so
 %{_libdir}/libQtGui*.la
+%{_libdir}/libQtGui*.prl
 %{_includedir}/qt4/QtGui
 %{_pkgconfigdir}/QtGui*.pc
 
@@ -880,8 +883,9 @@
 
 %files -n QtNetwork-devel
 %defattr(644,root,root,755)
-%{_libdir}/libQtNetwork*.la
 %attr(755,root,root) %{_libdir}/libQtNetwork*.so
+%{_libdir}/libQtNetwork*.la
+%{_libdir}/libQtNetwork*.prl
 %{_includedir}/qt4/QtNetwork
 %{_pkgconfigdir}/QtNetwork*.pc
 
@@ -893,6 +897,7 @@
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libQtOpenGL*.so
 %{_libdir}/libQtOpenGL*.la
+%{_libdir}/libQtOpenGL*.prl
 %{_includedir}/qt4/QtOpenGL
 %{_pkgconfigdir}/QtOpenGL*.pc
 
@@ -904,6 +909,7 @@
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libQtSql*.so
 %{_libdir}/libQtSql*.la
+%{_libdir}/libQtSql*.prl
 %{_includedir}/qt4/QtSql
 %{_pkgconfigdir}/QtSql*.pc
 
@@ -951,6 +957,7 @@
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libQtXml*.so
 %{_libdir}/libQtXml*.la
+%{_libdir}/libQtXml*.prl
 %{_includedir}/qt4/QtXml
 %{_pkgconfigdir}/QtXml*.pc
 
@@ -963,6 +970,7 @@
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libQt3Support*.so
 %{_libdir}/libQt3Support*.la
+%{_libdir}/libQt3Support*.prl
 %{_includedir}/qt4/Qt3Support
 %{_pkgconfigdir}/Qt3Support*.pc
 
@@ -987,6 +995,7 @@
 %files designer-libs
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libQtDesigner*.so.*.*.*
+%attr(755,root,root) %{_libdir}/qt4/plugins/designer/*.so
 
 %files designer
 %defattr(644,root,root,755)
@@ -1007,9 +1016,9 @@
 %attr(755,root,root) %{_bindir}/qm2ts
 #%lang(de) %{_datadir}/locale/de/LC_MESSAGES/linguist.qm
 #%lang(fr) %{_datadir}/locale/fr/LC_MESSAGES/linguist.qm
-%{_mandir}/man1/qm2ts.1*
-%{_mandir}/man1/lupdate*.1*
-%{_mandir}/man1/lrelease*.1*
+#%{_mandir}/man1/qm2ts.1*
+#%{_mandir}/man1/lupdate*.1*
+#%{_mandir}/man1/lrelease*.1*
 %{_datadir}/qt4/phrasebooks
 %{_desktopdir}/linguist.desktop
 %{_pixmapsdir}/linguist.png
@@ -1029,29 +1038,12 @@
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/qvfb
 
-%files demos
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/affine
-%attr(755,root,root) %{_bindir}/deform
-%attr(755,root,root) %{_bindir}/downloadwidget
-%attr(755,root,root) %{_bindir}/gradients
-%attr(755,root,root) %{_bindir}/interview
-%attr(755,root,root) %{_bindir}/mainwindow
-%attr(755,root,root) %{_bindir}/pathstroke
-%attr(755,root,root) %{_bindir}/pimelim
-%attr(755,root,root) %{_bindir}/plasmatable
-%attr(755,root,root) %{_bindir}/scrollarea
-%attr(755,root,root) %{_bindir}/spreadsheet
-%attr(755,root,root) %{_bindir}/sqlbrowser
-%attr(755,root,root) %{_bindir}/textedit
-
 %files doc
 %defattr(644,root,root,755)
 %{_docdir}/%{name}-doc
 
-%files examples
-%defattr(644,root,root,755)
-%{_examplesdir}/qt4
+%files demos -f demos.files
+%files examples -f examples.files
 
 %define date	%(echo `LC_ALL="C" date +"%a %b %d %Y"`)
 %changelog
@@ -1059,6 +1051,12 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.24  2005/06/23 02:26:11  pascalek
+- Release 0.rc1.0.2
+- build patch
+- cleanups and new TODOs
+- now it builds and should work
+
 Revision 1.23  2005/06/16 19:21:03  pluto
 - updated to 4.0.0rc1, release 0.1.
 
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/SPECS/qt4.spec?r1=1.23&r2=1.24&f=u




More information about the pld-cvs-commit mailing list