Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%global qt_module qtdeclarative
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
Summary: Qt5 - QtDeclarative component
Rex Dieter 6a6ead6
Name:    qt5-%{qt_module}
Rex Dieter 6a6ead6
Version: 5.0.2
Rex Dieter a4128f9
Release: 4%{?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 6a6ead6
Source0: http://releases.qt-project.org/qt5/%{version}%{?pre:-%{pre}}/submodules/%{qt_module}-opensource-src-%{version}.tar.xz
Rex Dieter 6a6ead6
Rex Dieter a4128f9
# qt5-qtjsbackend supports only ix86, x86_64 and arm , and so do we here
Rex Dieter a4128f9
ExclusiveArch: %{ix86} x86_64 %{arm}
Rex Dieter a4128f9
Rex Dieter 6a6ead6
BuildRequires: qt5-qtbase-devel >= %{version}
Rex Dieter 6a6ead6
BuildRequires: qt5-qtjsbackend-devel >= %{version}
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%{?_qt5_version:Requires: qt5-qtbase%{?_isa} >= %{_qt5_version}}
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%description
Rex Dieter 6a6ead6
%{summary}
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%package devel
Rex Dieter 6a6ead6
Summary: Development files for %{name}
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 6a6ead6
Rex Dieter 6a6ead6
%prep
Rex Dieter 6a6ead6
%setup -q -n %{qt_module}-opensource-src-%{version}%{?pre:-%{pre}}
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%build
Rex Dieter 6a6ead6
%{_qt5_qmake}
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
make %{?_smp_mflags}
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
%install
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
make install INSTALL_ROOT=%{buildroot}
Rex Dieter 6a6ead6
Rex Dieter 6a6ead6
# put non-conflicting binaries with -qt5 postfix in %{_bindir}
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 6a6ead6
    qmlplugindump|qmlprofiler)
Rex Dieter 6a6ead6
      mv $i ../../../bin/${i}-qt5
Rex Dieter 6a6ead6
      ln -s ../../../bin/${i}-qt5 .
Rex Dieter 6a6ead6
      ln -s ../../../bin/${i}-qt5 $i
Rex Dieter 6a6ead6
      ;;
Rex Dieter 6a6ead6
   *)
Rex Dieter 6a6ead6
      mv $i ../../../bin/
Rex Dieter 6a6ead6
      ln -s ../../../bin/$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 6a6ead6
%doc LICENSE.GPL LICENSE.LGPL LGPL_EXCEPTION.txt
Rex Dieter 6a6ead6
%doc dist/changes*
Rex Dieter 6a6ead6
%{_qt5_libdir}/libQt5Qml.so.5*
Rex Dieter 6a6ead6
%{_qt5_libdir}/libQt5Quick.so.5*
Rex Dieter 6a6ead6
%{_qt5_libdir}/libQt5QuickParticles.so.5*
Rex Dieter 6a6ead6
%{_qt5_libdir}/libQt5QuickTest.so.5*
Rex Dieter 6a6ead6
%{_qt5_plugindir}/accessible/libqtaccessiblequick.so
Rex Dieter 6a6ead6
%{_qt5_plugindir}/qmltooling/
Rex Dieter 6a6ead6
%{_qt5_archdatadir}/qml/
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
Rex Dieter 6a6ead6
%{_qt5_libdir}/libQt5Quick*.prl
Rex Dieter 6a6ead6
%{_qt5_libdir}/cmake/Qt5*/
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 6a6ead6
Rex Dieter 6a6ead6
%changelog
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