X-Git-Url: https://git.pld-linux.org/?p=packages%2Fqt-creator.git;a=blobdiff_plain;f=qt-creator.spec;h=4466a470b8374062f2fd4e651291ade1a27324fc;hp=57b1e4a860881cbea4e72b0ed5ebe25fde17eae6;hb=HEAD;hpb=0732447331f9d8c89b49eff52e4efd182b1e85d2 diff --git a/qt-creator.spec b/qt-creator.spec index 57b1e4a..4466a47 100644 --- a/qt-creator.spec +++ b/qt-creator.spec @@ -1,81 +1,98 @@ +# +# Conditional build: +%bcond_with qbs # package Qbs build tool +%bcond_without webengine # QtWebEngine based help viewer + +%ifnarch %{x8664} aarch64 +%undefine with_webengine +%endif + +%define qtver 6.4.3 + Summary: An IDE tailored to the needs of Qt developers -Summary(pl.UTF-8): IDE dostosowane do potrzeb developerow Qt +Summary(pl.UTF-8): IDE dostosowane do potrzeb programistów Qt Name: qt-creator -Version: 2.1.0 +Version: 12.0.2 Release: 1 Epoch: 1 License: LGPL v2.1 Group: X11/Development/Tools -Source0: http://get.qt.nokia.com/qtcreator/%{name}-%{version}-src.zip -# Source0-md5: a6e48b4347314fb2a92b77f40b4fc9a5 -Source1: %{name}.desktop -Patch0: %{name}-pluginpath64.patch -URL: http://www.qtsoftware.com/developer/qt-creator -BuildRequires: QtDBus-devel -BuildRequires: QtDeclarative-devel -BuildRequires: QtDesigner-devel -BuildRequires: QtGui-devel -BuildRequires: QtHelp-devel -BuildRequires: QtNetwork-devel -BuildRequires: QtScript-devel -BuildRequires: QtSql-sqlite3 -BuildRequires: QtSvg-devel -BuildRequires: QtWebKit-devel -BuildRequires: QtXml-devel -BuildRequires: qt4-build >= 4.7.0 -BuildRequires: qt4-linguist -BuildRequires: qt4-qmake >= 4.7.0 -BuildRequires: unzip +Source0: https://download.qt.io/official_releases/qtcreator/12.0/%{version}/%{name}-opensource-src-%{version}.tar.xz +# Source0-md5: 110a36302e3ca0c2fd00cee7c9764571 +URL: https://doc.qt.io/qtcreator/ +BuildRequires: Qt6Concurrent-devel >= %{qtver} +BuildRequires: Qt6Designer-devel >= %{qtver} +BuildRequires: Qt6Gui-devel >= %{qtver} +BuildRequires: Qt6Help-devel >= %{qtver} +BuildRequires: Qt6Network-devel >= %{qtver} +BuildRequires: Qt6PrintSupport-devel >= %{qtver} +BuildRequires: Qt6Qml-devel >= %{qtver} +BuildRequires: Qt6Qt5Compat-devel >= %{qtver} +BuildRequires: Qt6Quick-devel >= %{qtver} +BuildRequires: Qt6SerialPort-devel >= %{qtver} +BuildRequires: Qt6ShaderTools-devel >= %{qtver} +BuildRequires: Qt6Sql-devel >= %{qtver} +BuildRequires: Qt6Svg-devel >= %{qtver} +BuildRequires: Qt6UiTools-devel >= %{qtver} +%{?with_webengine:BuildRequires: Qt6WebEngine-devel >= %{qtver}} +BuildRequires: Qt6Widgets-devel >= %{qtver} +BuildRequires: Qt6Xml-devel >= %{qtver} +BuildRequires: clang-devel >= 6.0.0 +BuildRequires: cmake >= 3.16 +BuildRequires: gdb +BuildRequires: libstdc++-devel >= 6:7 +BuildRequires: llvm-devel >= 7.0.0 +BuildRequires: qt6-build >= %{qtver} +BuildRequires: qt6-linguist +BuildRequires: qt6-shadertools +BuildRequires: rpmbuild(macros) >= 1.742 +BuildRequires: tar >= 1:1.22 +BuildRequires: xz +BuildRequires: yaml-cpp-devel >= 0.8 Requires(post,postun): desktop-file-utils -%requires_eq QtCore -Requires: QtSql-sqlite3 +%requires_eq Qt6Core +Requires: Qt6Gui-platform-xcb +Requires: Qt6Sql-sqldriver-sqlite3 +Requires: hicolor-icon-theme +Requires: qt5-qtdeclarative # for xdg-open Suggests: xdg-utils BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +%define skip_post_check_so 'libClangsupport\.so.*' + %description -Qt Creator is a cross-platform integrated development environment (IDE) -tailored to the needs of Qt developers. +Qt Creator is a cross-platform integrated development environment +(IDE) tailored to the needs of Qt developers. %description -l pl.UTF-8 -Qt Creator to wieloplatformowe IDE dostosowane do potrzeb developerow Qt. +Qt Creator to wieloplatformowe IDE dostosowane do potrzeb programistów +Qt. %prep -%setup -q -n %{name}-%{version}-src +%setup -q -n %{name}-opensource-src-%{version} -%if "%{_lib}" == "lib64" -%patch0 -p1 -%endif +sed -i '1s,/usr/bin/env python,%{__python},' src/shared/qbs/src/3rdparty/python/lib/python3.9/site-packages/dmgbuild/__main__.py %build -export QTDIR=%{_libdir}/qt4 -# the qmakespec in qt4 is somewhat broken, need to look at this -#export QMAKESPEC=%{_datadir}/qt4/mkspecs/linux-g++/ +%cmake -B build \ + %{cmake_on_off qbs BUILD_QBS} \ + %{cmake_on_off webengine BUILD_HELPVIEWERBACKEND_QTWEBENGINE} -qmake-qt4 qtcreator.pro \ - QMAKE_CXX="%{__cxx}" \ - QMAKE_LINK="%{__cxx}" \ - QMAKE_CXXFLAGS_RELEASE="%{rpmcflags}" \ - QMAKE_RPATH= - -%{__make} +%{__make} -C build %install rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT%{_desktopdir} -export QTDIR=%{_libdir}/qt4 -%{__make} install \ - INSTALL_ROOT=$RPM_BUILD_ROOT%{_prefix} - -%if "%{_lib}" == "lib64" -mv -f $RPM_BUILD_ROOT{%{_prefix}/lib,%{_libdir}} -%endif +%{__make} -C build install \ + DESTDIR=$RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d echo "%{_libdir}/qtcreator" > $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/qtcreator.conf +cp -p share/applications/org.qt-project.qtcreator.desktop $RPM_BUILD_ROOT%{_desktopdir} -install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}/%{name}.desktop +rm -f $RPM_BUILD_ROOT%{_libdir}/qtcreator/*.prl %clean rm -rf $RPM_BUILD_ROOT @@ -83,25 +100,61 @@ rm -rf $RPM_BUILD_ROOT %post /sbin/ldconfig %update_desktop_database +%update_icon_cache hicolor %postun /sbin/ldconfig %update_desktop_database_postun +%update_icon_cache hicolor %files %defattr(644,root,root,755) +%if %{with qbs} +%attr(755,root,root) %{_bindir}/qbs +%attr(755,root,root) %{_bindir}/qbs-config +%attr(755,root,root) %{_bindir}/qbs-config-ui +%attr(755,root,root) %{_bindir}/qbs-create-project +%attr(755,root,root) %{_bindir}/qbs-setup-android +%attr(755,root,root) %{_bindir}/qbs-setup-qt +%attr(755,root,root) %{_bindir}/qbs-setup-toolchains +%endif %attr(755,root,root) %{_bindir}/qtcreator -%attr(755,root,root) %{_bindir}/qtcreator_process_stub %{_sysconfdir}/ld.so.conf.d/qtcreator.conf +%dir %{_libexecdir}/qtcreator +%attr(755,root,root) %{_libexecdir}/qtcreator/buildoutputparser +%attr(755,root,root) %{_libexecdir}/qtcreator/cpaster +%{?with_qbs:%attr(755,root,root) %{_libexecdir}/qtcreator/dmgbuild} +%attr(755,root,root) %{_libexecdir}/qtcreator/perf2text +%attr(755,root,root) %{_libexecdir}/qtcreator/perfparser +%attr(755,root,root) %{_libexecdir}/qtcreator/qtcreator_processlauncher +%{?with_qbs:%attr(755,root,root) %{_libexecdir}/qtcreator/qbs_processlauncher} +%attr(755,root,root) %{_libexecdir}/qtcreator/qml2puppet-%{version} +%attr(755,root,root) %{_libexecdir}/qtcreator/qtcreator_process_stub +%attr(755,root,root) %{_libexecdir}/qtcreator/qtc-askpass +%attr(755,root,root) %{_libexecdir}/qtcreator/qtpromaker +%attr(755,root,root) %{_libexecdir}/qtcreator/sdktool %dir %{_libdir}/qtcreator %attr(755,root,root) %{_libdir}/qtcreator/lib*.so.*.* -%attr(755,root,root) %{_libdir}/qtcreator/lib*.so -%attr(755,root,root) %ghost %{_libdir}/qtcreator/lib*.so.1 +%attr(755,root,root) %ghost %{_libdir}/qtcreator/lib*.so.12 %dir %{_libdir}/qtcreator/plugins -%dir %{_libdir}/qtcreator/plugins/Nokia -%{_libdir}/qtcreator/plugins/Nokia/*.pluginspec -%attr(755,root,root) %{_libdir}/qtcreator/plugins/Nokia/*.so +%attr(755,root,root) %{_libdir}/qtcreator/plugins/lib*.so +%if %{with qbs} +%dir %{_libdir}/qtcreator/plugins/qbs +%dir %{_libdir}/qtcreator/plugins/qbs/plugins +%attr(755,root,root) %{_libdir}/qtcreator/plugins/qbs/plugins/libclangcompilationdbgenerator.so +%attr(755,root,root) %{_libdir}/qtcreator/plugins/qbs/plugins/libiarewgenerator.so +%attr(755,root,root) %{_libdir}/qtcreator/plugins/qbs/plugins/libkeiluvgenerator.so +%attr(755,root,root) %{_libdir}/qtcreator/plugins/qbs/plugins/libmakefilegenerator.so +%attr(755,root,root) %{_libdir}/qtcreator/plugins/qbs/plugins/libqbs_cpp_scanner.so +%attr(755,root,root) %{_libdir}/qtcreator/plugins/qbs/plugins/libqbs_qt_scanner.so +%attr(755,root,root) %{_libdir}/qtcreator/plugins/qbs/plugins/libvisualstudiogenerator.so +%endif +%dir %{_libdir}/qtcreator/plugins/qmldesigner +%attr(755,root,root) %{_libdir}/qtcreator/plugins/qmldesigner/libassetexporterplugin.so +%attr(755,root,root) %{_libdir}/qtcreator/plugins/qmldesigner/libcomponentsplugin.so +%attr(755,root,root) %{_libdir}/qtcreator/plugins/qmldesigner/libqmlpreviewplugin.so +%attr(755,root,root) %{_libdir}/qtcreator/plugins/qmldesigner/libqtquickplugin.so %{_datadir}/qtcreator -%{_defaultdocdir}/qtcreator -%{_desktopdir}/qt-creator.desktop -%{_pixmapsdir}/qtcreator_logo*.png +%{_datadir}/metainfo/org.qt-project.qtcreator.appdata.xml +%{_desktopdir}/org.qt-project.qtcreator.desktop +%{_iconsdir}/hicolor/*x*/apps/QtProject-qtcreator.png