Witam.

        OK. Oto moja propozycja (nie uwzględnia ostatnich zmian qboosha).
Diff w załączniku, a dodatkowo kilka słów komentarza:

QDIR=%{_libdir}/qt4
a więc wszystkie narzędziówki lądują w QDIR/bin i wszystko gra.

Pliki desktop i ikony dostały prefiks qt4- (brak konfliktu z Qt3)

Dodatkowo symlinki w %{_bindir} z prefiksem j.w. (zresztą zgodnie z nazwą 
pakietu) - oprócz klikania możemy wywołać z palca.

Ze względu na to, że częstą metodą dojścia do qplatformdefs.h z qmake jest 
konstrukcja QDIR + mkspecs + default mamy odpowiedniego symlinka.
Podobnie sprawa ma się z doc, a więc j.w.

Sprawa jest oczywiście otwarta. 
Jeśli są inne propozycje zgodnego "współżycia" dwóch Qt - to proszę 
bardzo :-). Jeśli nie to zabieram się za czyszczenie TODO i można dać 
całkowity release.

-- 
Pozdrawiam,
Karol Krenski
--- qt4.spec.old	2006-02-18 20:48:44.000000000 +0100
+++ qt4.spec	2006-02-19 01:00:56.000000000 +0100
@@ -42,15 +42,15 @@
 Summary(pt_BR):	Estrutura para rodar aplicaçőes GUI Qt
 Name:		qt4
 Version:	4.1.0
-Release:	1.9
+Release:	1.95
 License:	GPL/QPL
 Group:		X11/Libraries
 Source0:	ftp://ftp.trolltech.com/qt/source/qt-x11-opensource-src-%{version}.tar.gz
 # Source0-md5:	0e3982a54f56b6420d3062b20524410a
-Source2:	qtconfig.desktop
-Source3:	designer.desktop
-Source4:	assistant.desktop
-Source5:	linguist.desktop
+Source2:	%{name}-qtconfig.desktop
+Source3:	%{name}-designer.desktop
+Source4:	%{name}-assistant.desktop
+Source5:	%{name}-linguist.desktop
 Patch0:		%{name}-tools.patch
 Patch1:		%{name}-alpha.patch
 Patch2:		%{name}-buildsystem.patch
@@ -103,6 +103,8 @@
 
 %define		specflags	-fno-strict-aliasing
 
+%define		_qtdir		%{_libdir}/qt4
+
 %description
 Qt is a complete C++ application development framework, which includes
 a class library and tools for multiplatform development and
@@ -724,7 +726,6 @@
 Summary:	Qt makefile generator
 Summary(pl):	Generator plików makefile dla aplikacji Qt
 Group:		X11/Development/Tools
-Obsoletes:	qmake
 
 %description qmake
 A powerful makefile generator. It can create makefiles on any platform
@@ -738,7 +739,6 @@
 Summary:	Qt widgets configuration tool
 Summary(pl):	Narzędzie do konfigurowania widgetów Qt
 Group:		X11/Applications
-Obsoletes:	qtconfig
 
 %description qtconfig
 A tool for configuring look and behavior of Qt widgets.
@@ -871,13 +871,13 @@
 COMMONOPT=" \
 	-DQT_CLEAN_NAMESPACE \
 	-verbose \
-	-prefix %{_prefix} \
+	-prefix %{_qtdir} \
+	-bindir %{_qtdir}/bin \
 	-docdir %{_docdir}/%{name}-doc \
 	-headerdir %{_includedir}/qt4 \
 	-libdir %{_libdir} \
 	-L%{_libdir} \
-	-bindir %{_bindir} \
-	-plugindir %{_libdir}/qt4/plugins \
+	-plugindir %{_qtdir}/plugins \
 	-datadir %{_datadir}/qt4 \
 	-translationdir %{_datadir}/locale/ \
 	-sysconfdir %{_sysconfdir}/qt4 \
@@ -970,39 +970,52 @@
 %endif
 
 # kill -L/inside/builddir from *.la and *.pc (bug #77152)
-%{__sed} -i -e "s,-L$PWD/lib,,g" lib/*.{la,pc,prl}
+%{__sed} -i -e "s,-L%{_builddir}/lib,,g" lib/*.{la,pc,prl}
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT%{_pkgconfigdir}
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_pkgconfigdir}}
 
 %{__make} install \
 	INSTALL_ROOT=$RPM_BUILD_ROOT
 
 install -d \
 	$RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}} \
-	$RPM_BUILD_ROOT%{_libdir}/qt4/plugins/{crypto,network}
+	$RPM_BUILD_ROOT%{_qtdir}/plugins/{crypto,network}
+
+install plugins/sqldrivers/* $RPM_BUILD_ROOT%{_qtdir}/plugins/sqldrivers
 
-install plugins/sqldrivers/* $RPM_BUILD_ROOT%{_libdir}/qt4/plugins/sqldrivers
-install bin/findtr tools/qvfb/qvfb $RPM_BUILD_ROOT%{_bindir}
+# install tools
+install bin/findtr $RPM_BUILD_ROOT%{_qtdir}/bin
+install tools/qvfb/qvfb $RPM_BUILD_ROOT%{_bindir}
+
+cd $RPM_BUILD_ROOT%{_bindir}
+ln -sf ../%{_lib}/qt4/bin/assistant qt4-assistant
+ln -sf ../%{_lib}/qt4/bin/linguist qt4-linguist
+ln -sf ../%{_lib}/qt4/bin/qmake qt4-qmake
+ln -sf ../%{_lib}/qt4/bin/qtconfig qt4-qtconfig
+%if %{with designer}
+ln -sf ../%{_lib}/qt4/bin/designer qt4-designer
+%endif
+cd -
 
 install %{SOURCE2} $RPM_BUILD_ROOT%{_desktopdir}
 install %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir}
 install %{SOURCE5} $RPM_BUILD_ROOT%{_desktopdir}
 
 install tools/qtconfig/images/appicon.png \
-	$RPM_BUILD_ROOT%{_pixmapsdir}/qtconfig.png
+	$RPM_BUILD_ROOT%{_pixmapsdir}/qt4-qtconfig.png
 
 install tools/linguist/linguist/images/appicon.png \
-	$RPM_BUILD_ROOT%{_pixmapsdir}/linguist.png
+	$RPM_BUILD_ROOT%{_pixmapsdir}/qt4-linguist.png
 
 install tools/assistant/images/assistant.png \
-	$RPM_BUILD_ROOT%{_pixmapsdir}/assistant.png
+	$RPM_BUILD_ROOT%{_pixmapsdir}/qt4-assistant.png
 
 %if %{with designer}
 install %{SOURCE3} $RPM_BUILD_ROOT%{_desktopdir}
 install tools/designer/src/designer/images/designer.png \
-	$RPM_BUILD_ROOT%{_pixmapsdir}/designer.png
+	$RPM_BUILD_ROOT%{_pixmapsdir}/qt4-designer.png
 %endif
 
 %if %{with static_libs}
@@ -1040,6 +1053,10 @@
 ln -sf ../../QtCore/arch/qatomic.h arch/qatomic.h
 cd -
 
+# Ship doc & qmake stuff
+ln -s ../../..%{_docdir}/%{name}-doc $RPM_BUILD_ROOT%{_qtdir}/doc
+ln -s ../../..%{_datadir}/qt4/mkspecs $RPM_BUILD_ROOT%{_qtdir}/mkspecs
+
 mv $RPM_BUILD_ROOT%{_libdir}/*.pc $RPM_BUILD_ROOT%{_pkgconfigdir}
 for f in $RPM_BUILD_ROOT%{_pkgconfigdir}/*.pc; do
 	HAVEDEBUG=`echo $f | grep _debug | wc -l`
@@ -1117,8 +1134,8 @@
 
 echo "%defattr(644,root,root,755)" > demos.files
 ifecho demos "%{_examplesdir}/qt4-demos"
-ifecho demos "%{_bindir}/qtdemo"
-ifecho demos "%{_libdir}/qt4/plugins/arthurplugin/libarthurplugin.so"
+ifecho demos "%{_qtdir}/bin/qtdemo"
+ifecho demos "%{_qtdir}/plugins/arthurplugin/libarthurplugin.so"
 for f in `find $RPM_BUILD_ROOT%{_examplesdir}/qt4-demos -printf "%%P "`
 do
 	ifecho demos %{_examplesdir}/qt4-demos/$f
@@ -1174,14 +1191,15 @@
 %files -n QtCore
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libQtCore.so.*.*
-%dir %{_libdir}/qt4
-%dir %{_libdir}/qt4/plugins
-%dir %{_libdir}/qt4/plugins/accessible
-%dir %{_libdir}/qt4/plugins/codecs
-%dir %{_libdir}/qt4/plugins/crypto
-%dir %{_libdir}/qt4/plugins/imageformats
-%dir %{_libdir}/qt4/plugins/network
-%dir %{_libdir}/qt4/plugins/sqldrivers
+%dir %{_qtdir}
+%dir %{_qtdir}/bin
+%dir %{_qtdir}/plugins
+%dir %{_qtdir}/plugins/accessible
+%dir %{_qtdir}/plugins/codecs
+%dir %{_qtdir}/plugins/crypto
+%dir %{_qtdir}/plugins/imageformats
+%dir %{_qtdir}/plugins/network
+%dir %{_qtdir}/plugins/sqldrivers
 %dir %{_datadir}/qt4
 %lang(ar) %{_datadir}/locale/ar/LC_MESSAGES/qt.qm
 %lang(cs) %{_datadir}/locale/cs/LC_MESSAGES/qt.qm
@@ -1193,9 +1211,9 @@
 %files -n QtGui
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libQtGui.so.*.*
-%{_libdir}/qt4/plugins/accessible/*
-%{_libdir}/qt4/plugins/codecs/*
-%{_libdir}/qt4/plugins/imageformats/*
+%{_qtdir}/plugins/accessible/*
+%{_qtdir}/plugins/codecs/*
+%{_qtdir}/plugins/imageformats/*
 
 %files -n QtNetwork
 %defattr(644,root,root,755)
@@ -1212,38 +1230,38 @@
 %if %{with mysql}
 %files -n QtSql-mysql
 %defattr(644,root,root,755)
-%attr(755,root,root)  %{_libdir}/qt4/plugins/sqldrivers/libqsqlmysql*.so
+%attr(755,root,root)  %{_qtdir}/plugins/sqldrivers/libqsqlmysql*.so
 %endif
 
 %if %{with pgsql}
 %files -n QtSql-pgsql
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/qt4/plugins/sqldrivers/libqsqlpsql*.so
+%attr(755,root,root) %{_qtdir}/plugins/sqldrivers/libqsqlpsql*.so
 %endif
 
 %if %{with sqlite}
 %files -n QtSql-sqlite
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/qt4/plugins/sqldrivers/libqsqlite2*.so
+%attr(755,root,root) %{_qtdir}/plugins/sqldrivers/libqsqlite2*.so
 %endif
 
 %if %{with sqlite3}
 %files -n QtSql-sqlite3
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/qt4/plugins/sqldrivers/libqsqlite*.so
-%exclude %{_libdir}/qt4/plugins/sqldrivers/libqsqlite2*.so
+%attr(755,root,root) %{_qtdir}/plugins/sqldrivers/libqsqlite*.so
+%exclude %{_qtdir}/plugins/sqldrivers/libqsqlite2*.so
 %endif
 
 %if %{with ibase}
 %files -n QtSql-ibase
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/qt4/plugins/sqldrivers/libqsqlibase*.so
+%attr(755,root,root) %{_qtdir}/plugins/sqldrivers/libqsqlibase*.so
 %endif
 
 %if %{with odbc}
 %files -n QtSql-odbc
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/qt4/plugins/sqldrivers/libqsqlodbc*.so
+%attr(755,root,root) %{_qtdir}/plugins/sqldrivers/libqsqlodbc*.so
 %endif
 
 %files -n QtSvg
@@ -1260,7 +1278,7 @@
 
 %files -n Qt3Support
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/uic3
+%attr(755,root,root) %{_qtdir}/bin/uic3
 %attr(755,root,root) %{_libdir}/libQt3Support.so.*.*
 
 %files -n QtAssistant
@@ -1269,54 +1287,60 @@
 
 %files assistant
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/assistant
+%attr(755,root,root) %{_bindir}/qt4-assistant
+%attr(755,root,root) %{_qtdir}/bin/assistant
 %lang(de) %{_datadir}/locale/de/LC_MESSAGES/assistant.qm
-%{_desktopdir}/assistant.desktop
-%{_pixmapsdir}/assistant.png
+%{_desktopdir}/qt4-assistant.desktop
+%{_pixmapsdir}/qt4-assistant.png
 
 %files build
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/rcc
-%attr(755,root,root) %{_bindir}/moc
-%attr(755,root,root) %{_bindir}/qt3to4
-%attr(755,root,root) %{_bindir}/uic
+%attr(755,root,root) %{_qtdir}/bin/rcc
+%attr(755,root,root) %{_qtdir}/bin/moc
+%attr(755,root,root) %{_qtdir}/bin/qt3to4
+%attr(755,root,root) %{_qtdir}/bin/uic
 %{_datadir}/qt4/q3porting.xml
 
 %if %{with designer}
 %files designer
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/designer
-%{_desktopdir}/designer.desktop
-%{_pixmapsdir}/designer.png
+%attr(755,root,root) %{_bindir}/qt4-designer
+%attr(755,root,root) %{_qtdir}/bin/designer
+%{_desktopdir}/qt4-designer.desktop
+%{_pixmapsdir}/qt4-designer.png
 
 %files designer-libs
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libQtDesigner*.so.*.*
-%dir %{_libdir}/qt4/plugins/designer
-%attr(755,root,root) %{_libdir}/qt4/plugins/designer/*.so
+%dir %{_qtdir}/plugins/designer
+%attr(755,root,root) %{_qtdir}/plugins/designer/*.so
 %endif
 
 %files linguist
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/linguist
-%attr(755,root,root) %{_bindir}/findtr
-%attr(755,root,root) %{_bindir}/lrelease
-%attr(755,root,root) %{_bindir}/lupdate
-%attr(755,root,root) %{_bindir}/qm2ts
+%attr(755,root,root) %{_bindir}/qt4-linguist
+%attr(755,root,root) %{_qtdir}/bin/findtr
+%attr(755,root,root) %{_qtdir}/bin/linguist
+%attr(755,root,root) %{_qtdir}/bin/lrelease
+%attr(755,root,root) %{_qtdir}/bin/lupdate
+%attr(755,root,root) %{_qtdir}/bin/qm2ts
 %{_datadir}/qt4/phrasebooks
-%{_desktopdir}/linguist.desktop
-%{_pixmapsdir}/linguist.png
+%{_desktopdir}/qt4-linguist.desktop
+%{_pixmapsdir}/qt4-linguist.png
 
 %files qmake
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/qmake
+%attr(755,root,root) %{_bindir}/qt4-qmake
+%attr(755,root,root) %{_qtdir}/bin/qmake
 %{_datadir}/qt4/mkspecs
+%dir %{_qtdir}/mkspecs
 
 %files qtconfig
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/qtconfig
-%{_desktopdir}/qtconfig.desktop
-%{_pixmapsdir}/qtconfig.png
+%attr(755,root,root) %{_bindir}/qt4-qtconfig
+%attr(755,root,root) %{_qtdir}/bin/qtconfig
+%{_desktopdir}/qt4-qtconfig.desktop
+%{_pixmapsdir}/qt4-qtconfig.png
 
 %files -n qvfb
 %defattr(644,root,root,755)
@@ -1325,6 +1349,7 @@
 %files doc
 %defattr(644,root,root,755)
 %{_docdir}/%{name}-doc
+%dir %{_qtdir}/doc
 
 %files -n QtCore-devel -f QtCore-devel.files
 %files -n QtDesigner-devel -f QtDesigner-devel.files
_______________________________________________
pld-devel-pl mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-devel-pl

Odpowiedź listem elektroniczym