Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%global qt_module qtdeclarative
Rex Dieter 0588dca
Rex Dieter 0588dca
# define to build docs, need to undef this for bootstrapping
Rex Dieter 0588dca
# where qt5-qttools builds are not yet available
Rex Dieter b0c1989
# only primary archs (for now), allow secondary to bootstrap
Rex Dieter b25d357
%if ! 0%{?bootstrap}
Rex Dieter b0c1989
%ifarch %{arm} %{ix86} x86_64
Rex Dieter 346c1b5
%define docs 1
Rex Dieter b0c1989
%endif
Rex Dieter 10bdff4
%endif
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
Summary: Qt5 - QtDeclarative component
Rex Dieter 6a6ead6
Name:    qt5-%{qt_module}
b5cb112
Version: 5.4.1
b5cb112
Release: 1%{?dist}
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
# See LICENSE.GPL LICENSE.LGPL LGPL_EXCEPTION.txt, for details
Rex Dieter 6a6ead6
License: LGPLv2 with exceptions or GPLv3 with exceptions
Rex Dieter 6a6ead6
Url: http://qt-project.org/
Rex Dieter 0588dca
%if 0%{?pre:1}
Rex Dieter 68adae0
Source0: http://download.qt-project.org/development_releases/qt/5.4/%{version}-%{pre}/submodules/%{qt_module}-opensource-src-%{version}-%{pre}.tar.xz
Rex Dieter 0588dca
%else
Rex Dieter 68adae0
Source0: http://download.qt-project.org/official_releases/qt/5.4/%{version}/submodules/%{qt_module}-opensource-src-%{version}.tar.xz
Rex Dieter 0588dca
%endif
Rex Dieter 0588dca
Rex Dieter 68adae0
# FIXME?  now bases on whether qtbase supports sse2 (or not)
Rex Dieter 82f00b7
# support no_sse2 CONFIG (fedora i686 builds cannot assume -march=pentium4 -msse2 -mfpmath=sse flags, or the JIT that needs them)
Rex Dieter 82f00b7
# https://codereview.qt-project.org/#change,73710
Rex Dieter 82f00b7
Patch1: qtdeclarative-opensource-src-5.2.0-no_sse2.patch
Rex Dieter 4bc3db1
Rex Dieter 0588dca
Obsoletes: qt5-qtjsbackend < 5.2.0
Rex Dieter a4128f9
Rex Dieter 6a6ead6
BuildRequires: qt5-qtbase-devel >= %{version}
Rex Dieter b25d357
%if ! 0%{?bootstrap}
Rex Dieter acdb980
BuildRequires: pkgconfig(Qt5XmlPatterns)
Rex Dieter b25d357
%endif
Rex Dieter 9575813
BuildRequires: python
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%{?_qt5_version:Requires: qt5-qtbase%{?_isa} >= %{_qt5_version}}
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%description
Rex Dieter 68adae0
%{summary}.
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%package devel
Rex Dieter 6a6ead6
Summary: Development files for %{name}
Rex Dieter 0588dca
Obsoletes: qt5-qtjsbackend-devel < 5.2.0
Rex Dieter 6a6ead6
Requires: %{name}%{?_isa} = %{version}-%{release}
Rex Dieter 6a6ead6
Requires: qt5-qtbase-devel%{?_isa}
Rex Dieter 6a6ead6
%description devel
Rex Dieter 6a6ead6
%{summary}.
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%package static
Rex Dieter 6a6ead6
Summary: Static library files for %{name}
Rex Dieter 6a6ead6
Requires: %{name}-devel%{?_isa} = %{version}-%{release}
Rex Dieter 6a6ead6
%description static
Rex Dieter 6a6ead6
%{summary}.
Rex Dieter 6a6ead6
Rex Dieter 0588dca
%if 0%{?docs}
Rex Dieter 0588dca
%package doc
Rex Dieter 0588dca
Summary: API documentation for %{name}
Rex Dieter 68adae0
License: GFDL
Rex Dieter 0588dca
Requires: %{name} = %{version}-%{release}
Rex Dieter 0588dca
# for qhelpgenerator
Rex Dieter 0588dca
BuildRequires: qt5-qttools-devel
Rex Dieter 0588dca
BuildArch: noarch
Rex Dieter 0588dca
%description doc
Rex Dieter 0588dca
%{summary}.
Rex Dieter 0588dca
%endif
Rex Dieter 0588dca
Rex Dieter d0f5156
%package examples
Rex Dieter d0f5156
Summary: Programming examples for %{name}
Rex Dieter d0f5156
Requires: %{name}%{?_isa} = %{version}-%{release}
Rex Dieter d0f5156
%description examples
Rex Dieter d0f5156
%{summary}.
Rex Dieter d0f5156
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%prep
Rex Dieter 6a6ead6
%setup -q -n %{qt_module}-opensource-src-%{version}%{?pre:-%{pre}}
Rex Dieter 6a6ead6
Rex Dieter 68adae0
#patch1 -p1 -b .no_sse2
Rex Dieter 4bc3db1
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%build
Rex Dieter 4041a1e
mkdir -p %{_target_platform}
Rex Dieter 4041a1e
pushd %{_target_platform}
Rex Dieter 1cc0755
%{qmake_qt5} ..
Rex Dieter 4041a1e
popd
Rex Dieter 4041a1e
Rex Dieter 4041a1e
make %{?_smp_mflags} -C %{_target_platform}
Rex Dieter 6a6ead6
Rex Dieter 68adae0
#ifarch %{ix86}
Rex Dieter 68adae0
%if 0
Rex Dieter 82f00b7
# build libQt5Qml with no_sse2
Rex Dieter 82f00b7
mkdir -p %{_target_platform}-no_sse2
Rex Dieter 82f00b7
pushd    %{_target_platform}-no_sse2
Rex Dieter 82f00b7
%{_qt5_qmake} -config no_sse2 ..
Rex Dieter 82f00b7
make sub-src-clean
Rex Dieter 82f00b7
make %{?_smp_mflags} -C src/qml
Rex Dieter 82f00b7
popd
Rex Dieter 0588dca
%endif
Rex Dieter 6a6ead6
Rex Dieter 2126bdc
%if 0%{?docs}
Rex Dieter 2126bdc
make %{?_smp_mflags} docs -C %{_target_platform}
Rex Dieter 2126bdc
%endif
Rex Dieter 2126bdc
Rex Dieter 6a6ead6
Rex Dieter 0588dca
%install
Rex Dieter 4041a1e
make install INSTALL_ROOT=%{buildroot} -C %{_target_platform}
Rex Dieter 4041a1e
Rex Dieter a89841c
#ifarch %{ix86}
Rex Dieter a89841c
%if 0
Rex Dieter 4041a1e
mkdir -p %{buildroot}%{_qt5_libdir}/sse2
Rex Dieter 4041a1e
mv %{buildroot}%{_qt5_libdir}/libQt5Qml.so.5* %{buildroot}%{_qt5_libdir}/sse2/
Rex Dieter 82f00b7
make install INSTALL_ROOT=%{buildroot} -C %{_target_platform}-no_sse2/src/qml
Rex Dieter 4041a1e
%endif
Rex Dieter 6a6ead6
Rex Dieter 0588dca
%if 0%{?docs}
Rex Dieter 4041a1e
make install_docs INSTALL_ROOT=%{buildroot} -C %{_target_platform}
Rex Dieter 0588dca
%endif
Rex Dieter 0588dca
Rex Dieter 0588dca
# hardlink files to %{_bindir}, add -qt5 postfix to not conflict
Rex Dieter 6a6ead6
mkdir %{buildroot}%{_bindir}
Rex Dieter 6a6ead6
pushd %{buildroot}%{_qt5_bindir}
Rex Dieter 6a6ead6
for i in * ; do
Rex Dieter 6a6ead6
  case "${i}" in
Rex Dieter 454ed2f
    # qt4 conflicts
Rex Dieter 6a6ead6
    qmlplugindump|qmlprofiler)
Rex Dieter 0588dca
      ln -v  ${i} %{buildroot}%{_bindir}/${i}-qt5
Rex Dieter 0588dca
      ln -sv ${i} ${i}-qt5
Rex Dieter 6a6ead6
      ;;
Rex Dieter 454ed2f
    # qtchooser stuff
Rex Dieter 454ed2f
    qml|qmlbundle|qmlmin|qmlscene)
Rex Dieter 454ed2f
      ln -v  ${i} %{buildroot}%{_bindir}/${i}
Rex Dieter 454ed2f
      ln -v  ${i} %{buildroot}%{_bindir}/${i}-qt5
Rex Dieter 454ed2f
      ln -sv ${i} ${i}-qt5
Rex Dieter c6c586f
      ;;
Rex Dieter 0588dca
    *)
Rex Dieter 0588dca
      ln -v  ${i} %{buildroot}%{_bindir}/${i}
Rex Dieter 6a6ead6
      ;;
Rex Dieter 6a6ead6
  esac
Rex Dieter 6a6ead6
done
Rex Dieter 6a6ead6
popd
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
## .prl/.la file love
Rex Dieter 6a6ead6
# nuke .prl reference(s) to %%buildroot, excessive (.la-like) libs
Rex Dieter 6a6ead6
pushd %{buildroot}%{_qt5_libdir}
Rex Dieter 6a6ead6
for prl_file in libQt5*.prl ; do
Rex Dieter 6a6ead6
  sed -i -e "/^QMAKE_PRL_BUILD_DIR/d" ${prl_file}
Rex Dieter 6a6ead6
  if [ -f "$(basename ${prl_file} .prl).so" ]; then
Rex Dieter 6a6ead6
    rm -fv "$(basename ${prl_file} .prl).la"
Rex Dieter 6a6ead6
    sed -i -e "/^QMAKE_PRL_LIBS/d" ${prl_file}
Rex Dieter 6a6ead6
  fi
Rex Dieter 6a6ead6
done
Rex Dieter 6a6ead6
popd
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%post -p /sbin/ldconfig
Rex Dieter 6a6ead6
%postun -p /sbin/ldconfig
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%files
Rex Dieter 68adae0
%doc LICENSE.GPL* LICENSE.LGPL* LGPL_EXCEPTION.txt
Rex Dieter 6a6ead6
%doc dist/changes*
Rex Dieter 6a6ead6
%{_qt5_libdir}/libQt5Qml.so.5*
Rex Dieter 68adae0
#ifarch %{ix86}
Rex Dieter 68adae0
%if 0
Rex Dieter 4041a1e
%{_qt5_libdir}/sse2/libQt5Qml.so.5*
Rex Dieter 4041a1e
%endif
Rex Dieter 6a6ead6
%{_qt5_libdir}/libQt5Quick.so.5*
cc16d90
%{_qt5_libdir}/libQt5QuickWidgets.so.5*
Rex Dieter 6a6ead6
%{_qt5_libdir}/libQt5QuickParticles.so.5*
Rex Dieter 6a6ead6
%{_qt5_libdir}/libQt5QuickTest.so.5*
Rex Dieter 6a6ead6
%{_qt5_plugindir}/qmltooling/
Rex Dieter 6a6ead6
%{_qt5_archdatadir}/qml/
0bfbc7d
%dir %{_qt5_libdir}/cmake/Qt5Qml/
Rex Dieter 68adae0
%{_qt5_libdir}/cmake/Qt5Qml/Qt5Qml_QTcpServerConnection.cmake
Rex Dieter 68adae0
%{_qt5_libdir}/cmake/Qt5Qml/Qt5Qml_QtQuick2Plugin.cmake
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%files devel
Rex Dieter 6a6ead6
%{_bindir}/qml*
Rex Dieter 6a6ead6
%{_qt5_bindir}/qml*
Rex Dieter 6a6ead6
%{_qt5_headerdir}/Qt*/
Rex Dieter 6a6ead6
%{_qt5_libdir}/libQt5Qml.so
Rex Dieter 6a6ead6
%{_qt5_libdir}/libQt5Qml.prl
Rex Dieter 6a6ead6
%{_qt5_libdir}/libQt5Quick*.so
cc16d90
%{_qt5_libdir}/libQt5QuickWidgets.so.5
Rex Dieter 6a6ead6
%{_qt5_libdir}/libQt5Quick*.prl
0bfbc7d
%dir %{_qt5_libdir}/cmake/Qt5Quick*/
Rex Dieter 68adae0
%{_qt5_libdir}/cmake/Qt5*/Qt5*Config*.cmake
Rex Dieter 6a6ead6
%{_qt5_libdir}/pkgconfig/Qt5*.pc
Rex Dieter 6a6ead6
%{_qt5_archdatadir}/mkspecs/modules/*.pri
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%files static
Rex Dieter 6a6ead6
%{_qt5_libdir}/libQt5QmlDevTools.*a
Rex Dieter 6a6ead6
%{_qt5_libdir}/libQt5QmlDevTools.prl
Rex Dieter 6a6ead6
Rex Dieter 0588dca
%if 0%{?docs}
Rex Dieter 0588dca
%files doc
Rex Dieter 0588dca
%{_qt5_docdir}/qtqml.qch
Rex Dieter 0588dca
%{_qt5_docdir}/qtqml/
Rex Dieter 0588dca
%{_qt5_docdir}/qtquick.qch
Rex Dieter 0588dca
%{_qt5_docdir}/qtquick/
Rex Dieter 0588dca
%endif
Rex Dieter 0588dca
Rex Dieter d896d1c
%if 0%{?_qt5_examplesdir:1}
Rex Dieter d0f5156
%files examples
Rex Dieter d0f5156
%{_qt5_examplesdir}/
Rex Dieter d896d1c
%endif
Rex Dieter d0f5156
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%changelog
b5cb112
* Tue Feb 24 2015 Jan Grulich <jgrulich@redhat.com> 5.4.1-1
b5cb112
- 5.4.1
b5cb112
Rex Dieter 1b2881d
* Mon Feb 16 2015 Rex Dieter <rdieter@fedoraproject.org> 5.4.0-3
Rex Dieter 1b2881d
- rebuild (gcc)
Rex Dieter 1b2881d
0bfbc7d
* Sat Feb 14 2015 Ville Skyttä <ville.skytta@iki.fi> - 5.4.0-2
0bfbc7d
- Fix cmake dir ownerhips
0bfbc7d
Rex Dieter 366fc16
* Wed Dec 10 2014 Rex Dieter <rdieter@fedoraproject.org> 5.4.0-1
Rex Dieter 366fc16
- 5.4.0 (final)
Rex Dieter 366fc16
Rex Dieter 8958914
* Fri Nov 28 2014 Rex Dieter <rdieter@fedoraproject.org> 5.4.0-0.3.rc
Rex Dieter 8958914
- 5.4.0-rc
Rex Dieter 8958914
Rex Dieter 1cc0755
* Mon Nov 03 2014 Rex Dieter <rdieter@fedoraproject.org> 5.4.0-0.2.beta
Rex Dieter 1cc0755
- use new %%qmake_qt5 macro
Rex Dieter 1cc0755
Rex Dieter 68adae0
* Sat Oct 18 2014 Rex Dieter <rdieter@fedoraproject.org> - 5.4.0-0.1.beta
Rex Dieter 68adae0
- 5.4.0-beta
Rex Dieter 68adae0
- %%ix84: drop sse2-optimized bits, need to rethink if/how to support it now
Rex Dieter 68adae0
Rex Dieter 665e367
* Tue Sep 16 2014 Rex Dieter <rdieter@fedoraproject.org> 5.3.2-1
Rex Dieter 665e367
- 5.3.2
Rex Dieter 665e367
Rex Dieter 454ed2f
* Tue Sep 16 2014 Rex Dieter <rdieter@fedoraproject.org> 5.3.1-3
Rex Dieter 454ed2f
- -qt5 wrappers for qml qmlbundle qmlmin qmlscene
Rex Dieter 454ed2f
203508e
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.3.1-2
203508e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
203508e
a652dcf
* Tue Jun 17 2014 Jan Grulich <jgrulich@redhat.com> - 5.3.1-1
a652dcf
- 5.3.1
a652dcf
6b7abb0
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.3.0-2
6b7abb0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
6b7abb0
cc16d90
* Wed May 21 2014 Jan Grulich <jgrulich@redhat.com> 5.3.0-1
cc16d90
- 5.3.0
cc16d90
Rex Dieter d3bcfc3
* Wed Feb 05 2014 Rex Dieter <rdieter@fedoraproject.org> 5.2.1-1
Rex Dieter d3bcfc3
- 5.2.1
Rex Dieter d3bcfc3
Rex Dieter 04b2503
* Sun Feb 02 2014 Marcin Juszkiewicz <mjuszkiewicz@redhat.com> 5.2.0-6
Rex Dieter 04b2503
- Add AArch64 support (RHBUG: 1040452, QTBUG-35528)
Rex Dieter 04b2503
Rex Dieter d896d1c
* Mon Jan 27 2014 Rex Dieter <rdieter@fedoraproject.org> 5.2.0-5
Rex Dieter d896d1c
- build -examples only if supported
Rex Dieter d896d1c
Rex Dieter d0f5156
* Sun Jan 26 2014 Rex Dieter <rdieter@fedoraproject.org> 5.2.0-4
Rex Dieter d0f5156
- -examples subpkg
Rex Dieter d0f5156
Rex Dieter 1ffbc09
* Tue Jan 14 2014 Rex Dieter <rdieter@fedoraproject.org> 5.2.0-3
Rex Dieter 1ffbc09
- epel7 bootstrapped
Rex Dieter 1ffbc09
Rex Dieter acdb980
* Mon Jan 06 2014 Rex Dieter <rdieter@fedoraproject.org> 5.2.0-2
Rex Dieter acdb980
- BR: qt5-qtxmlpatterns-devel (#1048558)
Rex Dieter acdb980
Rex Dieter e0be313
* Thu Dec 12 2013 Rex Dieter <rdieter@fedoraproject.org> 5.2.0-1
Rex Dieter e0be313
- 5.2.0
Rex Dieter e0be313
Rex Dieter 4041a1e
* Tue Dec 10 2013 Rex Dieter <rdieter@fedoraproject.org> - 5.2.0-0.12.rc1
Rex Dieter 4041a1e
- support out-of-src-tree builds
Rex Dieter 4041a1e
- %%ix86: install sse2/jit version to %%_qt5_libdir/sse2/
Rex Dieter 4041a1e
Rex Dieter 4bc3db1
* Thu Dec 05 2013 Rex Dieter <rdieter@fedoraproject.org> 5.2.0-0.11.rc1
Rex Dieter 4bc3db1
- %%ix86: cannot assume sse2 (and related support) or the JIT that requires it...  disable.
Rex Dieter 4bc3db1
Rex Dieter 2591c81
* Mon Dec 02 2013 Rex Dieter <rdieter@fedoraproject.org> 5.2.0-0.10.rc1
Rex Dieter 2591c81
- 5.2.0-rc1
Rex Dieter 2591c81
Rex Dieter b0c1989
* Mon Nov 25 2013 Rex Dieter <rdieter@fedoraproject.org> 5.2.0-0.5.beta1
Rex Dieter b0c1989
- enable -doc only on primary archs (allow secondary bootstrap)
Rex Dieter b0c1989
Rex Dieter 8043c35
* Sat Nov 09 2013 Rex Dieter <rdieter@fedoraproject.org> 5.2.0-0.4.beta1
Rex Dieter 8043c35
- rebuild (arm/qreal)
Rex Dieter 8043c35
Rex Dieter 346c1b5
* Thu Oct 24 2013 Rex Dieter <rdieter@fedoraproject.org> 5.2.0-0.3.beta1
Rex Dieter 346c1b5
- 5.2.0-beta1
Rex Dieter 346c1b5
Rex Dieter 409c810
* Wed Oct 16 2013 Rex Dieter <rdieter@fedoraproject.org> 5.2.0-0.2.alpha
Rex Dieter 409c810
- bootstrap ppc
Rex Dieter 409c810
Rex Dieter 0588dca
* Tue Oct 01 2013 Rex Dieter <rdieter@fedoraproject.org> 5.2.0-0.1.alpha
Rex Dieter 0588dca
- 5.2.0-alpha
Rex Dieter 0588dca
- Obsoletes: qt5-qtjsbackend
Rex Dieter 0588dca
- -doc subpkg
Rex Dieter 0588dca
Rex Dieter 166b729
* Wed Aug 28 2013 Rex Dieter <rdieter@fedoraproject.org> 5.1.1-1
Rex Dieter 166b729
- 5.1.1
Rex Dieter 166b729
Rex Dieter a4128f9
* Tue Aug 20 2013 Rex Dieter <rdieter@fedoraproject.org> 5.0.2-4
Rex Dieter a4128f9
- qt5-qtjsbackend only supports ix86, x86_64 and arm
Rex Dieter a4128f9
Rex Dieter 6a6ead6
* Tue May 14 2013 Rex Dieter <rdieter@fedoraproject.org> 5.0.2-3
Rex Dieter 6a6ead6
- fix qmlprofiler conflict with qt-creator
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
* Fri Apr 12 2013 Rex Dieter <rdieter@fedoraproject.org> 5.0.2-2
Rex Dieter 6a6ead6
- fix qmlplugindump conflict with qt4-devel
Rex Dieter 6a6ead6
- include license files, dist/changes*
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
* Thu Apr 11 2013 Rex Dieter <rdieter@fedoraproject.org> 5.0.2-1
Rex Dieter 6a6ead6
- 5.0.2
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
* Sat Feb 23 2013 Rex Dieter <rdieter@fedoraproject.org> 5.0.1-1
Rex Dieter 6a6ead6
- first try
Rex Dieter 6a6ead6