# # TODO: # - build system recheck (most make -C are to be changed) # - redo subpackages (qt-core,qt-xml,qt-network,qt-opengl, etc.) # - bconds for IBM db2, oracle and tds sql drivers # - fix install # - remove obsolete patches %define _noautostrip '.*_debug\.so*' # Conditional build: %bcond_with nas # enable NAS audio support %bcond_with nvidia # prelink Qt/KDE and depend on NVIDIA binaries %bcond_without static_libs # don't build static libraries %bcond_without cups # disable CUPS support %bcond_without mysql # don't build MySQL plugin %bcond_without odbc # don't build unixODBC plugin %bcond_without pgsql # don't build PostgreSQL plugin %bcond_without designer # don't build designer (it takes long) %bcond_without sqlite3 # don't build SQLite3 plugin %bcond_without sqlite # don't build SQLite2 plugin %bcond_without ibase # build ibase (InterBase/Firebird) plugin %bcond_without pch # enable pch in qmake %bcond_with dont_enable # a bcond for missing features %undefine with_dont_enable %ifnarch %{ix86} %{x8664} sparc sparcv9 alpha ppc %undefine with_ibase %endif %define _withsql 1 %{!?with_sqlite3:%{!?with_sqlite:%{!?with_ibase:%{!?with_mysql:%{!?with_pgsql:%{!?with_odbc:%undefine _withsql}}}}}} %define _snap 050513 %define _ver 4.0.0 %define _packager djurban %define _name qt Summary: The Qt GUI application framework Summary(es): Biblioteca para ejecutar aplicaciones GUI Qt Summary(pl): Biblioteka Qt do tworzenia GUI Summary(pt_BR): Estrutura para rodar aplicaçőes GUI Qt Name: qt4 Version: %{_ver} Release: 1.%{_snap}.0.1 Epoch: 6 License: GPL/QPL Group: X11/Libraries Source0: http://ep09.pld-linux.org/~%{_packager}/kde/%{_name}-copy-%{_snap}.tar.bz2 #Source0: ftp://ftp.trolltech.com/qt/source/%{_name}-x11-opensource-%{version}-b1.tar.bz2 #Source0: http://wftp.tu-chemnitz.de/pub/Qt/source//%{_name}-x11-opensource-%{version}-b1.tar.bz2 # Source0-md5: 4e7432f9bf5f3333429b490e33568573 #Source1: http://ep09.pld-linux.org/~%{_packager}/kde/%{_name}-copy-patches-040531.tar.bz2 #Source1-md5 2e38e44b6ef26bfb8a7f3b6900ee53c0 Source2: %{_name}config.desktop Source3: designer.desktop Source4: assistant.desktop Source5: linguist.desktop Patch0: %{name}-tools.patch %if %{with dont_enable} Patch1: %{_name}-FHS.patch Patch3: %{_name}-disable_tutorials.patch %endif Patch2: %{name}-buildsystem.patch Patch4: %{name}-locale.patch Patch8: %{name}-antialias.patch #Patch9: %{name}-hotfixes.patch URL: http://www.trolltech.com/products/qt/ Icon: qt.xpm %{?with_ibase:BuildRequires: Firebird-devel} %{?with_sqlite3:BuildRequires: sqlite3-devel} BuildRequires: OpenGL-devel %{?with_nvidia:BuildRequires: XFree86-driver-nvidia-devel < 1.0.4620} # incompatible with bison BuildRequires: byacc %{?with_cups:BuildRequires: cups-devel} BuildRequires: flex BuildRequires: freetype-devel >= 2.0.0 %{?with_pch:BuildRequires: gcc >= 5:3.4.0} BuildRequires: libjpeg-devel BuildRequires: libmng-devel >= 1.0.0 BuildRequires: libpng-devel >= 1.0.8 BuildRequires: libstdc++-devel BuildRequires: libungif-devel %{?with_mysql:BuildRequires: mysql-devel} %{?with_nas:BuildRequires: nas-devel} BuildRequires: perl-base %{?with_pgsql:BuildRequires: postgresql-backend-devel} %{?with_pgsql:BuildRequires: postgresql-devel} # uncomment this in rel. 1 - no time to upgrade rpm #BuildRequires: rpmbuild(macros) >= 1.213 BuildRequires: sed >= 4.0 %{?with_odbc:BuildRequires: unixODBC-devel} %{?with_sqlite:BuildRequires: sqlite-devel} BuildRequires: xcursor-devel BuildRequires: xft-devel BuildRequires: xrender-devel BuildRequires: zlib-devel Requires: OpenGL Conflicts: kdelibs <= 8:3.2-0.030602.1 Obsoletes: qt-extensions Obsoletes: qt-utils BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define _noautoreqdep libGL.so.1 libGLU.so.1 # %description Qt is a complete C++ application development framework, which includes a class library and tools for multiplatform development and internationalization. Using Qt, a single source code tree can build applications that run natively on different platforms (Windows, Unix/Linux, Mac OS X, embedded Linux). Qt has a rich set of standard widgets, and lets you write custom controls. It encapsulates four different platform-specific APIs, and the APIs for file-handling, networking, process-handling, threading, database access, etc. Qt now also has Motif migration oraz Netscape LiveConnect plugin. This package contains the shared, multi-threaded, linux version of the Qt library, the style plugins and translation files for Qt. %description -l es Contiene las bibliotecas compartidas necesarias para ejecutar aplicaciones Qt, bien como los archivos README. %description -l pl Qt oferuje kompletny system do tworzenia i rozwijania aplikacji w języku C++, w którego skład wchodzi biblioteka z klasami oraz wieloplatformowymi narzędziami do rozwijania i tłumaczenia aplikacji. Z pomocą Qt jeden kod źródłowy może być natywnie uruchamiany na różnych platformach (Windows, Unix/Linux, Mac OS X). Qt ma bogaty zbiór standardowych elementów interfejsu graficznego, ale pozwala również na pisanie własnych elementów. Łączy w sposób niewidoczny dla programisty interfejsy programowania różnych systemów, tworząc w ten sposób jeden interfejs dla obsługi plików, sieci, procesów, wątków, baz danych itp. Umożliwia także łatwe przenoszenie na Qt aplikacji korzystających z Motif oraz pisanie wtyczek z wykorzystaniem Netscape LiveConnect. Ten pakiet zawiera współdzieloną, wielowątkową, linuksową wersję biblioteki Qt, wtyczki ze stylami oraz pliki tłumaczeń Qt. %description -l pt_BR Contém as bibliotecas compartilhadas necessárias para rodar aplicaçőes Qt, bem como os arquivos README. %package devel Summary: Development files for the Qt GUI toolkit Summary(es): Archivos de inclusión necesaria para compilar aplicaciones Qt Summary(pl): Pliki nagłówkowe, przykłady i dokumentacja do biblioteki Summary(pt_BR): Arquivos de inclusăo necessária para compilar aplicaçőes Qt Group: X11/Development/Libraries Requires: OpenGL-devel Requires: freetype-devel Requires: libjpeg-devel Requires: libmng-devel Requires: libpng-devel Requires: libstdc++-devel Requires: %{_name} = %{epoch}:%{version}-%{release} Conflicts: qt2-devel %description devel This package contains the Qt development tools: the metaobjects compiler (moc) and the user interface compiler (uic); Qt include files, pkgconfig helpers and tools for preserving compatibility between versions of Qt. %description devel -l pl Ten pakiet zawiera narzędzia programistyczne Qt: kompilator metaobiektów (moc), kompilator interfejsu użytkownika (uic); pliki nagłówkowe, wsparcie dla pkgconfig oraz narzędzia ułatwiające zachowanie kompatybilności niezależnie od wersji Qt. %package static Summary: Qt static library Summary(pl): Biblioteka statyczna Qt Group: X11/Development/Libraries Requires: %{_name}-devel = %{epoch}:%{version}-%{release} %description static Qt is a complete C++ application development framework, which includes a class library and tools for multiplatform development and internationalization. Using Qt, a single source code tree can build applications that run natively on different platforms (Windows, Unix/Linux, Mac OS X, embedded Linux). Qt has a rich set of standard widgets, and lets you write custom controls. It encapsulates four different platform-specific APIs, and the APIs for file-handling, networking, process-handling, threading, database access, etc. Qt now also has Motif migration oraz Netscape LiveConnect plugin. This package contains the static, multi-threaded, linux version of the Qt library. %description static -l pl Qt oferuje kompletny system do tworzenia i rozwijania aplikacji w języku C++, w którego skład wchodzi biblioteka z klasami oraz wieloplatformowymi narzędziami do rozwijania i tłumaczenia aplikacji. Z pomocą Qt jeden kod źródłowy może być natywnie uruchamiany na różnych platformach (Windows, Unix/Linux, Mac OS X). Qt ma bogaty zbiór standardowych elementów interfejsu graficznego, ale pozwala również na pisanie własnych elementów. Łączy w sposób niewidoczny dla programisty interfejsy programowania różnych systemów, tworząc w ten sposób jeden interfejs dla obsługi plików, sieci, procesów, wątków, baz danych itp. Umożliwia także łatwe przenoszenie na Qt aplikacji korzystających z Motif oraz pisanie wtyczek z wykorzystaniem Netscape LiveConnect. Ten pakiet zawiera statyczną, wielowątkową, linuksową wersję biblioteki Qt. %package doc Summary: Qt Documentation in HTML format Summary(pl): Dokumentacja Qt w formacie HTML Group: X11/Development/Libraries Obsoletes: qt-doc-html %description doc Qt documentation in HTML format. %description doc -l pl Dokumentacja qt w formacie HTML. %package man Summary: Qt man pages Summary(pl): Qt - strony man Group: X11/Development/Libraries Obsoletes: qt-doc-man %description man Qt documentation in man pages format. %description man -l pl Dokumentacja qt w formacie stron man. %package examples Summary: Example programs bundled with Qt Summary(pl): Ćwiczenia i przykłady do Qt Summary(pt_BR): Programas exemplo desenvolvidos com o Qt Group: X11/Development/Libraries Requires: %{_name}-devel = %{epoch}:%{version}-%{release} %description examples Example programs bundled with Qt version. %description examples -l pl Ćwiczenia/przykłady dołączone do Qt. %description examples -l pt_BR Programas exemplo para o Qt versăo. # # %package plugin-ibase Summary: Database plugin for InterBase/Firebird Qt support Summary(pl): Wtyczka InterBase/Firebird do Qt Summary(pt_BR): Plugin de suporte a InterBase/Firebird para Qt Group: X11/Libraries Requires: %{_name} = %{epoch}:%{version}-%{release} Provides: %{_name}-plugin-sql = %{epoch}:%{version}-%{release} %description plugin-ibase This package contains a multi-thread enabled plugin for accessing Interbase/Firebird database via the QSql classes. %description plugin-ibase -l pl Ten pakiet zawiera wielowątkową wersję wtyczki do Qt umożliwiającej korzystanie z baz danych Interbase/Firebird poprzez klasy QSql. %description plugin-ibase -l pt_BR Plugin de suporte a InterBase/Firebird para Qt. %package plugin-mysql Summary: Database plugin for MySQL Qt support Summary(pl): Wtyczka MySQL do Qt Summary(pt_BR): Plugin de suporte a MySQL para Qt Group: X11/Libraries Requires: %{_name} = %{epoch}:%{version}-%{release} Provides: %{_name}-plugin-sql = %{epoch}:%{version}-%{release} Obsoletes: qt-plugins-mysql %description plugin-mysql This package contains a multi-thread enabled plugin for accessing MySQL database via the QSql classes. %description plugin-mysql -l pl Ten pakiet zawiera wielowątkową wersję wtyczki do Qt umożliwiającej korzystanie z baz danych MySQL poprzez klasy QSql. %description plugin-mysql -l pt_BR Plugin de suporte a MySQL para Qt. %package plugin-odbc Summary: Database plugin for ODBC Qt support Summary(pl): Wtyczka ODBC do Qt Summary(pt_BR): Plugin de suporte a ODBC para Qt Group: X11/Libraries Requires: %{_name} = %{epoch}:%{version}-%{release} Provides: %{_name}-plugin-sql = %{epoch}:%{version}-%{release} Obsoletes: qt-plugins-odbc %description plugin-odbc This package contains a multi-thread enabled plugin for accessing unixODBC services via the QSql classes. %description plugin-odbc -l pl Ten pakiet zawiera wielowątkową wersję wtyczki do Qt umożliwiającej korzystanie z usług unixODBC poprzez klasy QSql. %description plugin-odbc -l pt_BR Plugin de suporte a ODBC para Qt. %package plugin-psql Summary: Database plugin for PostgreSQL Qt support Summary(pl): Wtyczka PostgreSQL do Qt Summary(pt_BR): Plugin de suporte a PostgreSQL para Qt Group: X11/Libraries Requires: %{_name} = %{epoch}:%{version}-%{release} Provides: %{_name}-plugin-sql = %{epoch}:%{version}-%{release} Obsoletes: qt-plugins-psql %description plugin-psql This package contains a multi-thread enabled plugin for accessing PostgreSQL database via the QSql classes. %description plugin-psql -l pl Ten pakiet zawiera wielowątkową wersję wtyczki do Qt umożliwiającej korzystanie z baz danych PostgreSQL poprzez klasy QSql. %description plugin-psql -l es Plugin de suporte a PostgreSQL para Qt. %package plugin-sqlite Summary: Database plugin for SQLite Qt support Summary(pl): Wtyczka SQLite do Qt Summary(pt_BR): Plugin de suporte a SQLite para Qt Group: X11/Libraries Requires: %{_name} = %{epoch}:%{version}-%{release} Provides: %{_name}-plugin-sql = %{epoch}:%{version}-%{release} %description plugin-sqlite This package contains a multi-thread enabled plugin for using the SQLite library (which allows to acces virtually any SQL database) via the QSql classes. %description plugin-sqlite -l pl Ten pakiet zawiera wielowątkową wersję wtyczki do Qt umożliwiającej korzystanie z baz danych PostgreSQL poprzez klasy QSql. %description plugin-sqlite -l pt_BR Plugin de suporte a SQLite para Qt. # %package linguist Summary: Translation helper for Qt Summary(pl): Aplikacja ułatwiająca tłumaczenie aplikacji oparty o Qt Group: X11/Development/Tools Conflicts: %{_name}-devel < 6:3.3.2-3 %description linguist This program provides an interface that shortens and helps systematize the process of translating GUIs. Qt Linguist takes all of the text of a UI that will be shown to the user, and presents it to a human translator in a simple window. When one UI text is translated, the program automatically progresses to the next, until they are all completed. %description linguist -l pl Ten program oferuje interfejs znacznie przyśpieszający proces tłumaczenia interfejsu użytkownika. Zbiera wszystkie teksty przeznaczone do tłumaczenia i przedstawia w łatwym w obsłudze oknie. Gdy jeden z nich jest już przetłumaczony, automatycznie przechodzi do następnego, aż wszystkie będą przetłumaczone. %package assistant Summary: Qt documentation browser Summary(pl): Przeglądarka dokumentacji Qt Group: X11/Development/Tools Requires: %{_name}-doc Conflicts: %{_name}-devel < 6:3.3.2-3 %description assistant Qt Assistant is a tool for browsing on-line documentation with indexing, bookmarks and full-text search. %description assistant -l pl Qt Assistant to narzędzie do przeglądania dokumentacji z możliwością indeksowania, dodawania zakładek i pełnotekstowego wyszukiwania. %package -n qmake Summary: Qt makefile generator Summary(pl): Generator plików makefile dla aplikacji Qt Group: X11/Development/Tools Conflicts: %{_name}-devel < 6:3.3.2-3 %description -n qmake A powerful makefile generator. It can create makefiles on any platform from a simple .pro definitions file. %description -n qmake -l pl Rozbudowany generator plików makefile. Potrafi tworzyć pliki makefile na każdej platformi na podstawie łatwego w przygotowaniu pliku .pro. %package -n qtconfig Summary: Qt widgets configuration tool Summary(pl): Narzędzie do konfigurowania widgetów Qt Group: X11/Applications Requires: %{_name} = %{epoch}:%{version}-%{release} %description -n qtconfig A tool for configuring look and behavior of Qt widgets. %description -n qtconfig -l pl Narzędie do konfiguracji wyglądu i zachowania widgetów Qt. %package designer Summary: IDE used for GUI designing with Qt library Summary(pl): IDE służące do projektowania GUI za pomocą biblioteki Qt Group: X11/Applications Requires: %{_name}-designer-libs = %{epoch}:%{version}-%{release} %description designer An advanced tool used for GUI designing with Qt library. %description designer -l pl Zaawansowane narzędzie służące do projektowania interfejsu graficznego za pomocą biblioteki Qt. %package designer-libs Summary: Libraries IDE used for GUI designing with Qt library Summary(pl): Biblioteki do IDE służącego do projektowania GUI za pomocą biblioteki Qt Group: X11/Applications Requires: %{_name} >= %{epoch}:%{version}-%{release} %description designer-libs Libraries used by the Qt GUI Designer. %description designer-libs -l pl Biblioteki wykorzystywane przez narzędzie projektowania interfejsu graficznego - Qt Designer. # NEW PACKAGES (More informative descriptions are in TODO) %package -n QtCore Summary: Core classes used by other modules Group: X11/Development/Libraries %description -n QtCore Core classes used by other modules. %package -n Qt3Support Summary: Graphical User Interface components Group: X11/Development/Libraries Requires: QtCore >= %{epoch}:%{version}-%{release} %description -n Qt3Support Graphical User Interface components. %package -n QtGui Summary: Graphical User Interface components Group: X11/Development/Libraries Requires: QtCore >= %{epoch}:%{version}-%{release} %description -n QtGui Graphical User Interface components. %package -n QtNetwork Summary: Classes for network programming Group: X11/Development/Libraries Requires: QtCore >= %{epoch}:%{version}-%{release} %description -n QtNetwork Classes for network programming. %package -n QtSql Summary: Classes for database integration using SQL Group: X11/Development/Libraries Requires: QtCore >= %{epoch}:%{version}-%{release} %description -n QtSql Classes for database integration using SQL. %package -n QtOpenGL Summary: OpenGL support classes Group: X11/Development/Libraries Requires: QtCore >= %{epoch}:%{version}-%{release} %description -n QtOpenGL OpenGL support classes. %package -n QtXml Summary: Classes for handling XML Group: X11/Development/Libraries Requires: QtCore >= %{epoch}:%{version}-%{release} %description -n QtXml Classes for handling XML. %package -n QtCore-devel Summary: Core classes used by other modules Group: X11/Development/Libraries Requires: QtCore >= %{epoch}:%{version}-%{release} %description -n QtCore-devel Core classes used by other modules. %package -n QtGui-devel Summary: Graphical User Interface components Group: X11/Development/Libraries Requires: QtCore-devel >= %{epoch}:%{version}-%{release} %description -n QtGui-devel Graphical User Interface components. %package -n QtNetwork-devel Summary: Classes for network programming Group: X11/Development/Libraries Requires: QtCore-devel >= %{epoch}:%{version}-%{release} %description -n QtNetwork-devel Classes for network programming. %package -n QtSql-devel Summary: Classes for database integration using SQL Group: X11/Development/Libraries Requires: QtCore-devel >= %{epoch}:%{version}-%{release} %description -n QtSql-devel Classes for database integration using SQL. %package -n QtOpenGL-devel Summary: OpenGL support classes Group: X11/Development/Libraries Requires: QtCore-devel >= %{epoch}:%{version}-%{release} %description -n QtOpenGL-devel OpenGL support classes. %package -n QtXml-devel Summary: Classes for handling XML Group: X11/Development/Libraries Requires: QtCore-devel >= %{epoch}:%{version}-%{release} %description -n QtXml-devel Classes for handling XML. %package -n Qt3Support-devel Summary: Graphical User Interface components Group: X11/Development/Libraries Requires: QtCore-devel >= %{epoch}:%{version}-%{release} %description -n Qt3Support-devel Graphical User Interface components. %package -n QtSql-plugin-ibase Summary: QtSql ibase plugin Group: X11/Development/Libraries Requires: QtSql >= %{epoch}:%{version}-%{release} %description -n QtSql-plugin-ibase QtSql ibase plugin. %package -n QtSql-plugin-mysql Summary: QtSql mysql plugin Group: X11/Development/Libraries Requires: QtSql >= %{epoch}:%{version}-%{release} %description -n QtSql-plugin-mysql QtSql mysql plugin. %package -n QtSql-plugin-odbc Summary: QtSql odbc plugin Group: X11/Development/Libraries Requires: QtSql >= %{epoch}:%{version}-%{release} %description -n QtSql-plugin-odbc QtSql odbc plugin. %package -n QtSql-plugin-pgsql Summary: QtSql pgsql plugin Group: X11/Development/Libraries Requires: QtSql >= %{epoch}:%{version}-%{release} %description -n QtSql-plugin-pgsql QtSql pgsql plugin. %package -n QtSql-plugin-sqlite Summary: QtSql sqlite plugin Group: X11/Development/Libraries Requires: QtSql >= %{epoch}:%{version}-%{release} %description -n QtSql-plugin-sqlite QtSql sqlite plugin. %package -n QtSql-plugin-sqlite3 Summary: QtSql sqlite3 plugin Group: X11/Development/Libraries Requires: QtSql >= %{epoch}:%{version}-%{release} %description -n QtSql-plugin-sqlite3 QtSql sqlite2 plugin. %package -n qvfb Summary: Qt Virtual framebuffer to run Qt/Embedded applications in XWindow Group: X11/Development/Libraries %description -n qvfb Qt Virtual framebuffer to run Qt/Embedded applications in XWindow. %package buildtools Summary: Build tools for Qt4 Group: X11/Development/Libraries Requires: QtCore >= %{epoch}:%{version}-%{release} Requires: QtXml >= %{epoch}:%{version}-%{release} %description buildtools This package includes the Qt resource compiler (rcc), meta objects compiler (moc), user interface compiler (uic) and qt3to4 include names converter. %package demos Summary: Demos of new qt4 features Group: X11/Development/Libraries Requires: QtCore >= %{epoch}:%{version}-%{release} Requires: QtXml >= %{epoch}:%{version}-%{release} %description demos Demos are spiders that fly. %prep #setup -q -n %{_name}-copy-%{_snap} %setup -q -n %{_name}-copy %patch0 -p1 %if %{with dont_enable} %patch1 -p1 %patch3 -p1 %endif %patch2 -p1 -b .niedakh %patch4 -p1 -b .niedakh #patch7 -p1 -b .niedakh %patch8 -p1 -b .niedakh #patch9 -p1 #cat >> patches/DISABLED < $plik.1 mv $plik.1 $plik echo >> $plik echo -e "QMAKE_CFLAGS_RELEASE\t=\t%{rpmcflags}" >> $plik echo -e "QMAKE_CXXFLAGS_RELEASE\t=\t%{rpmcflags}" >> $plik echo -e "QMAKE_CFLAGS_DEBUG\t=\t%{debugcflags}" >> $plik echo -e "QMAKE_CXXFLAGS_DEBUG\t=\t%{debugcflags}" >> $plik %build export QTDIR=`/bin/pwd` export YACC='byacc -d' export PATH=$QTDIR/bin:$PATH if test -n "$LD_LIBRARY_PATH"; then export LD_LIBRARY_PATH=$QTDIR/%{_lib}:$LD_LIBRARY_PATH else export 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}" #%{__make} -f Makefile.cvs ################################## # DEFAULT OPTIONS FOR ALL BUILDS # ################################## DEFAULTOPT=" \ -DQT_CLEAN_NAMESPACE \ -DQT_COMPAT \ -verbose \ -prefix %{_prefix} \ -libdir %{_libdir} \ -headerdir %{_includedir}/qt4 \ -datadir %{_datadir}/qt4 \ -docdir %{_docdir}/%{name}-doc \ -sysconfdir %{_sysconfdir}/qt \ -translationdir %{_datadir}/locale/ \ -fast \ -%{!?with_pch:no-}pch \ -qt-gif \ -system-libjpeg \ -system-libpng \ -system-zlib \ -no-exceptions \ -I%{_includedir}/postgresql/server \ -I%{_includedir}/mysql \ %{!?with_cups:-no-cups} \ %{?with_nas:-system-nas-sound} \ %{?with_nvidia:-dlopen-opengl} \ %{?with_pch:-pch} \ %{?debug:-debug} \ -xcursor" ################################## # STATIC MULTI-THREAD # ################################## %if %{with static_libs} STATICOPT=" \ %{?with_mysql:-qt-sql-mysql} \ %{?with_odbc:-qt-sql-odbc} \ %{?with_pgsql:-qt-sql-psql} \ %{?with_sqlite3:-qt-sql-sqlite} \ %{?with_sqlite:-qt-sql-sqlite2} \ %{?with_ibase:-qt-sql-ibase} \ -static" ./configure \ $DEFAULTOPT \ $STATICOPT \ <<_EOF_ yes _EOF_ # Do not build tutorial and examples. Provide them as sources. %{__make} sub-qmake sub-src # This will not remove previously compiled libraries. %{__make} clean %endif ################################## # SHARED MULTI-THREAD # ################################## SHAREDOPT=" \ %{?with_mysql:-plugin-sql-mysql} \ %{?with_odbc:-plugin-sql-odbc} \ %{?with_pgsql:-plugin-sql-psql} \ %{?with_sqlite3:-plugin-sql-sqlite} \ %{?with_sqlite:-plugin-sql-sqlite2} \ %{?with_ibase:-plugin-sql-ibase}" ./configure \ $DEFAULTOPT \ $SHAREDOPT \ -plugindir %{_libdir}/qt4/plugins \ <<_EOF_ yes _EOF_ %if 0 %if %{with dont_enable} %if %{without designer} grep -v designer tools/tools.pro > tools/tools.pro.1 mv tools/tools.pro{.1,} %{__make} -C tools/designer/uic \ UIC="LD_PRELOAD=$QTDIR/%{_lib}/libqt-mt.so.3 $QTDIR/bin/uic -L $QTDIR/plugins" %endif %endif # Do not build tutorial and examples. Provide them as sources. %{__make} sub-src-all-ordered cd tools/qtconfig $QTDIR/bin/uic previewwidgetbase.ui -o ui_previewwidgetbase.h cd - %{__make} sub-tools-all-ordered sub-demos-all-ordered %endif %if %{with dont_enable} %if %{with designer} cd tools/designer/designer lrelease designer_de.ts lrelease designer_fr.ts %endif cd $QTDIR/tools/assistant lrelease assistant_de.ts lrelease assistant_fr.ts cd $QTDIR/tools/linguist/linguist lrelease linguist_de.ts lrelease linguist_fr.ts cd $QTDIR %endif %install rm -rf $RPM_BUILD_ROOT export QTDIR=`/bin/pwd` %{__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} # # # # # # desktop dir and pixmaps # # # install %{SOURCE2} $RPM_BUILD_ROOT%{_desktopdir} install %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir} install tools/qtconfig/images/appicon.png \ $RPM_BUILD_ROOT%{_pixmapsdir}/qtconfig.png install tools/linguist/linguist/images/appicon.png \ $RPM_BUILD_ROOT%{_pixmapsdir}/linguist.png install tools/assistant/images/appicon.png \ $RPM_BUILD_ROOT%{_pixmapsdir}/assistant.png %if %{with designer} install tools/designer/src/designer/images/designer.png \ $RPM_BUILD_ROOT%{_pixmapsdir}/designer.png %endif # # # # # # static # # # %if %{with static_libs} install %{_lib}/libqt*.a $RPM_BUILD_ROOT%{_libdir} %endif # # # # # # designer # # # %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 # # # # # # manpages # # # 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 # # # # # # translations # # # %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 install translations/qt_de.qm $RPM_BUILD_ROOT%{_datadir}/locale/de/LC_MESSAGES/qt.qm install translations/qt_fr.qm $RPM_BUILD_ROOT%{_datadir}/locale/fr/LC_MESSAGES/qt.qm install translations/qt_ru.qm $RPM_BUILD_ROOT%{_datadir}/locale/ru/LC_MESSAGES/qt.qm install translations/qt_iw.qm $RPM_BUILD_ROOT%{_datadir}/locale/he/LC_MESSAGES/qt.qm install translations/qt_cs.qm $RPM_BUILD_ROOT%{_datadir}/locale/cs/LC_MESSAGES/qt.qm install translations/qt_sk.qm $RPM_BUILD_ROOT%{_datadir}/locale/sk/LC_MESSAGES/qt.qm %if %{with designer} install tools/designer/designer/designer_de.qm $RPM_BUILD_ROOT%{_datadir}/locale/de/LC_MESSAGES/designer.qm install tools/designer/designer/designer_fr.qm $RPM_BUILD_ROOT%{_datadir}/locale/fr/LC_MESSAGES/designer.qm %endif install tools/assistant/assistant_de.qm $RPM_BUILD_ROOT%{_datadir}/locale/de/LC_MESSAGES/assistant.qm install tools/assistant/assistant_fr.qm $RPM_BUILD_ROOT%{_datadir}/locale/fr/LC_MESSAGES/assistant.qm install tools/linguist/linguist/linguist_de.qm $RPM_BUILD_ROOT%{_datadir}/locale/de/LC_MESSAGES/linguist.qm install tools/linguist/linguist/linguist_fr.qm $RPM_BUILD_ROOT%{_datadir}/locale/fr/LC_MESSAGES/linguist.qm %endif # # # # # # copying examples # # # 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` do rm -rf "$i"; done cd $RPM_BUILD_ROOT%{_examplesdir}/%{name} for i in `find ./ -name Makefile`; do %{__sed} -i -e "s,$RPM_BUILD_DIR,/usr,g" $i %{__sed} -i -e "s,examples,src/examples/qt4/examples,g" $i 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} %clean rm -rf $RPM_BUILD_ROOT %post -n QtCore /sbin/ldconfig cat << EOF ******************************************************* * * * NOTE: * * With qt 4.0.0 the single threaded version was * * removed. * * * ******************************************************* EOF %postun -n QtCore -p /sbin/ldconfig %post designer-libs -p /sbin/ldconfig %postun designer-libs -p /sbin/ldconfig %files buildtools %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 %{_datadir}/qt4/q3porting.xml %files -n qvfb %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/qvfb %files assistant %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/assistant %attr(755,root,root) %{_libdir}/libQtAssistantClient*.so* #%lang(de) %{_datadir}/locale/de/LC_MESSAGES/assistant.qm #%lang(fr) %{_datadir}/locale/fr/LC_MESSAGES/assistant.qm %{_desktopdir}/assistant.desktop %{_pixmapsdir}/assistant.png %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 #%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* %{_datadir}/qt4/phrasebooks %{_desktopdir}/linguist.desktop %{_pixmapsdir}/linguist.png %files -n qmake %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/qmake %{_datadir}/qt4/mkspecs %files -n Qt3Support %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/uic3 %attr(755,root,root) %{_libdir}/libQt3Support*.so.* %files -n Qt3Support-devel %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libQt3Support*.so %{_libdir}/libQt3Support*.la %{_includedir}/qt4/Qt3Support %{_pkgconfigdir}/Qt3Support*.pc %files -n QtCore %defattr(644,root,root,755) %dir %{_sysconfdir}/qt %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/qt/qt.conf %{_libdir}/libQtCore*.so.* %dir %{_libdir}/qt4/plugins %dir %{_libdir}/qt4/plugins/codecs %dir %{_libdir}/qt4/plugins/imageformats %dir %{_libdir}/qt4/plugins/sqldrivers %dir %{_libdir}/qt4/plugins/crypto %dir %{_libdir}/qt4/plugins/network %dir %{_datadir}/qt4 %files -n QtCore-devel %defattr(644,root,root,755) %dir %{_includedir}/qt4 %{_libdir}/libQtCore*.so %{_libdir}/libQtCore*.la %{_includedir}/qt4/QtCore %{_pkgconfigdir}/QtCore*.pc %files -n QtXml %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libQtXml*.so.* %files -n QtXml-devel %defattr(644,root,root,755) %{_libdir}/libQtXml*.so %{_libdir}/libQtXml*.la %{_includedir}/qt4/QtXml %{_pkgconfigdir}/QtXml*.pc %files -n QtNetwork %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libQtNetwork*.so.* %files -n QtNetwork-devel %defattr(644,root,root,755) %{_libdir}/libQtNetwork*.la %{_libdir}/libQtNetwork*.so %{_includedir}/qt4/QtNetwork %{_pkgconfigdir}/QtNetwork*.pc %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 %if %{with mysql} %files -n QtSql-plugin-mysql %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/qt4/plugins/sqldrivers/libqsqlmysql*.so %endif %if %{with pgsql} %files -n QtSql-plugin-pgsql %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/qt4/plugins/sqldrivers/libqsqlpsql*.so %endif %if %{with sqlite} %files -n QtSql-plugin-sqlite %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/qt4/plugins/sqldrivers/libqsqlite2*.so %endif %if %{with sqlite3} %files -n QtSql-plugin-sqlite3 %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/qt4/plugins/sqldrivers/libqsqlite*.so %endif %if %{with ibase} %files -n QtSql-plugin-ibase %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/qt4/plugins/sqldrivers/libqsqlibase*.so %endif %if %{with odbc} %files -n QtSql-plugin-odbc %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/qt4/plugins/sqldrivers/libqsqlodbc*.so %endif %files -n QtSql %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libQtSql*.so.* %files -n QtSql-devel %defattr(644,root,root,755) %{_libdir}/libQtSql*.so %{_libdir}/libQtSql*.la %{_includedir}/qt4/QtSql %{_pkgconfigdir}/QtSql*.pc %files -n QtOpenGL %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libQtOpenGL*.so.* %files -n QtOpenGL-devel %defattr(644,root,root,755) %{_libdir}/libQtOpenGL*.so %{_libdir}/libQtOpenGL*.la %{_includedir}/qt4/QtOpenGL %{_pkgconfigdir}/QtOpenGL*.pc %files -n QtGui %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libQtGui*.so.* %{_libdir}/qt4/plugins/codecs/* %{_libdir}/qt4/plugins/imageformats/* %files -n QtGui-devel %defattr(644,root,root,755) %{_libdir}/libQtGui*.so %{_libdir}/libQtGui*.la %{_includedir}/qt4/QtGui %{_pkgconfigdir}/QtGui*.pc %files examples %defattr(644,root,root,755) %{_examplesdir}/qt4 %files doc %defattr(644,root,root,755) %{_docdir}/%{name}-doc %files -n qtconfig %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/qtconfig %{_desktopdir}/qtconfig.desktop %{_pixmapsdir}/qtconfig.png %if %{with designer} %files designer-libs %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libQtDesigner*.so.*.*.* %files designer %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/designer #%dir %{_libdir}/%{name}/plugins-?t/designer #%lang(de) %{_datadir}/locale/de/LC_MESSAGES/designer.qm #%lang(fr) %{_datadir}/locale/fr/LC_MESSAGES/designer.qm %{_desktopdir}/designer.desktop %{_pixmapsdir}/designer.png %endif