2 # plugins/position/simulator (BR: Qt5Simulator)
5 %bcond_with bootstrap # disable features to able to build without installed qt5
7 %bcond_without doc # Documentation
8 %bcond_without qm # QM translations
15 %define qtbase_ver %{version}
16 %define qtdeclarative_ver %{version}
17 %define qtserialport_ver %{version}
18 %define qttools_ver 5.9
19 %define orgname qtlocation
20 Summary: The Qt5 Location library
21 Summary(pl.UTF-8): Biblioteka Qt5 Location
25 License: LGPL v3 or GPL v2+ or commercial
27 Source0: https://download.qt.io/official_releases/qt/5.15/%{version}/submodules/%{orgname}-everywhere-src-%{version}.tar.xz
28 # Source0-md5: 5f1a8380518e949ba5949a0fcbaa191a
29 Source1: https://download.qt.io/official_releases/qt/5.15/%{version}/submodules/qttranslations-everywhere-src-%{version}.tar.xz
30 # Source1-md5: 9b66cdb64402e8fd9e843f8a7120abb1
31 URL: https://www.qt.io/
32 BuildRequires: GConf2-devel >= 2.0
33 BuildRequires: Qt5Concurrent-devel >= %{qtbase_ver}
34 BuildRequires: Qt5Core-devel >= %{qtbase_ver}
35 BuildRequires: Qt5DBus-devel >= %{qtbase_ver}
36 BuildRequires: Qt5Gui-devel >= %{qtbase_ver}
37 BuildRequires: Qt5Network-devel >= %{qtbase_ver}
38 BuildRequires: Qt5Qml-devel >= %{qtdeclarative_ver}
39 BuildRequires: Qt5Quick-devel >= %{qtdeclarative_ver}
40 BuildRequires: Qt5SerialPort-devel >= %{qtserialport_ver}
41 BuildRequires: Qt5Sql-devel >= %{qtdeclarative_ver}
42 BuildRequires: gypsy-devel
43 BuildRequires: pkgconfig
45 BuildRequires: qt5-assistant >= %{qttools_ver}
47 BuildRequires: qt5-build >= %{qtbase_ver}
48 %{?with_qm:BuildRequires: qt5-linguist >= %{qttools_ver}}
49 BuildRequires: qt5-qmake >= %{qtbase_ver}
50 BuildRequires: rpm-build >= 4.6
51 BuildRequires: rpmbuild(macros) >= 1.752
52 BuildRequires: tar >= 1:1.22
54 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
56 %define specflags -fno-strict-aliasing
57 %define qt5dir %{_libdir}/qt5
60 Qt is a cross-platform application and UI framework. Using Qt, you can
61 write web-enabled applications once and deploy them across desktop,
62 mobile and embedded systems without rewriting the source code.
64 This package contains Qt5 Location and Positioning libraries.
66 %description -l pl.UTF-8
67 Qt to wieloplatformowy szkielet aplikacji i interfejsów użytkownika.
68 Przy użyciu Qt można pisać aplikacje powiązane z WWW i wdrażać je w
69 systemach biurkowych, przenośnych i wbudowanych bez przepisywania kodu
72 Ten pakiet zawiera biblioteki Qt5 Location i Positioning.
74 %package -n Qt5Location
75 Summary: The Qt5 Location library
76 Summary(pl.UTF-8): Biblioteka Qt5 Location
78 Requires: Qt5Core >= %{qtbase_ver}
79 Requires: Qt5Gui >= %{qtbase_ver}
80 Requires: Qt5Positioning = %{version}-%{release}
81 Requires: Qt5Quick >= %{qtdeclarative_ver}
82 Obsoletes: qt5-qtlocation < 5.3.0
84 %description -n Qt5Location
85 Qt5 Location library provides mapping, navigation and place search via
86 QML and C++ interfaces.
88 %description -n Qt5Location -l pl.UTF-8
89 Biblioteka Qt5 Location udostępnia mapy, nawigowanie oraz wyszukiwanie
90 miejsc poprzez interfejsy QML i C++.
92 %package -n Qt5Location-devel
93 Summary: Qt5 Location library - development files
94 Summary(pl.UTF-8): Biblioteka Qt5 Location - pliki programistyczne
95 Group: Development/Libraries
96 Requires: Qt5Core-devel >= %{qtbase_ver}
97 Requires: Qt5Gui-devel >= %{qtbase_ver}
98 Requires: Qt5Location = %{version}-%{release}
99 Requires: Qt5Network-devel >= %{qtbase_ver}
100 Requires: Qt5Positioning-devel = %{version}-%{release}
101 Requires: Qt5Qml-devel >= %{qtdeclarative_ver}
102 Requires: Qt5Quick-devel >= %{qtdeclarative_ver}
103 Obsoletes: qt5-qtlocation-devel < 5.3.0
105 %description -n Qt5Location-devel
106 Qt5 Location library - development files.
108 %description -n Qt5Location-devel -l pl.UTF-8
109 Biblioteka Qt5 Location - pliki programistyczne.
111 %package -n Qt5Positioning
112 Summary: The Qt5 Positioning library
113 Summary(pl.UTF-8): Biblioteka Qt5 Positioning
115 Requires: Qt5Core >= %{qtbase_ver}
116 Requires: Qt5Network >= %{qtbase_ver}
117 Requires: Qt5Qml >= %{qtdeclarative_ver}
118 Requires: Qt5Quick >= %{qtdeclarative_ver}
120 Requires: Qt5DBus >= %{qtbase_ver}
121 Requires: Qt5SerialPort >= %{qtserialport_ver}
122 Obsoletes: qt5-qtlocation < 5.3.0
124 %description -n Qt5Positioning
125 Qt5 Positioning library provides positioning information via QML and
128 %description -n Qt5Positioning -l pl.UTF-8
129 Biblioteka Qt5 Positioning udostępnia informacje o położeniu poprzez
130 interfejsy QML i C++.
132 %package -n Qt5Positioning-devel
133 Summary: Qt5 Positioning library - development files
134 Summary(pl.UTF-8): Biblioteka Qt5 Positioning - pliki programistyczne
135 Group: Development/Libraries
136 Requires: Qt5Core-devel >= %{qtbase_ver}
137 Requires: Qt5Network-devel >= %{qtbase_ver}
138 Requires: Qt5Positioning = %{version}-%{release}
139 Requires: Qt5Qml-devel >= %{qtdeclarative_ver}
140 Requires: Qt5Quick-devel >= %{qtdeclarative_ver}
141 Obsoletes: qt5-qtlocation-devel < 5.3.0
143 %description -n Qt5Positioning-devel
144 Qt5 Positioning library - development files.
146 %description -n Qt5Positioning-devel -l pl.UTF-8
147 Biblioteka Qt5 Positioning - pliki programistyczne.
150 Summary: Qt5 Location and Positioning documentation in HTML format
151 Summary(pl.UTF-8): Dokumentacja do bibliotek Qt5 Location i Positioning w formacie HTML
153 Requires: qt5-doc-common >= %{qtbase_ver}
157 Qt5 Location and Positioning documentation in HTML format.
159 %description doc -l pl.UTF-8
160 Dokumentacja do bibliotek Qt5 Location i Positioning w formacie HTML.
163 Summary: Qt5 Location and Positioning documentation in QCH format
164 Summary(pl.UTF-8): Dokumentacja do bibliotek Qt5 Location i Positioning w formacie QCH
166 Requires: qt5-doc-common >= %{qtbase_ver}
170 Qt5 Location and Positioning documentation in QCH format.
172 %description doc-qch -l pl.UTF-8
173 Dokumentacja do bibliotek Qt5 Location i Positioning w formacie QCH.
176 Summary: Qt5 Location and Positioning examples
177 Summary(pl.UTF-8): Przykłady do bibliotek Qt5 Location i Positioning
178 Group: X11/Development/Libraries
181 %description examples
182 Qt5 Location and Positioning examples.
184 %description examples -l pl.UTF-8
185 Przykłady do bibliotek Qt5 Location i Positioning.
188 %setup -q -n %{orgname}-everywhere-src-%{version} %{?with_qm:-a1}
193 %{?with_doc:%{__make} docs}
196 cd qttranslations-everywhere-src-%{version}
203 rm -rf $RPM_BUILD_ROOT
206 INSTALL_ROOT=$RPM_BUILD_ROOT
209 %{__make} install_docs \
210 INSTALL_ROOT=$RPM_BUILD_ROOT
214 %{__make} -C qttranslations-everywhere-src-%{version} install \
215 INSTALL_ROOT=$RPM_BUILD_ROOT
216 # keep only qtlocation
217 %{__rm} $RPM_BUILD_ROOT%{_datadir}/qt5/translations/{assistant,designer,linguist,qt,qtbase,qtconnectivity,qtdeclarative,qtmultimedia,qtquickcontrols,qtquickcontrols2,qtserialport,qtscript,qtwebengine,qtwebsockets,qtxmlpatterns}_*.qm
220 # kill unnecessary -L%{_libdir} from *.la, *.prl, *.pc
221 %{__sed} -i -e "s,-L%{_libdir} \?,,g" \
222 $RPM_BUILD_ROOT%{_libdir}/*.{la,prl} \
223 $RPM_BUILD_ROOT%{_pkgconfigdir}/*.pc
226 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libQt5*.so.5.??
227 # actually drop *.la, follow policy of not packaging them when *.pc exist
228 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libQt5*.la
230 # Prepare some files list
232 r="$RPM_BUILD_ROOT$2"
234 echo "%%dir $2" >> $1.files
235 elif [ -x "$r" ] ; then
236 echo "%%attr(755,root,root) $2" >> $1.files
237 elif [ -f "$r" ]; then
238 echo "$2" >> $1.files
240 echo "Error generation $1 files list!"
241 echo "$r: no such file or directory!"
247 for f in `find $RPM_BUILD_ROOT$2 -printf "%%P "`; do
252 echo "%defattr(644,root,root,755)" > examples.files
253 ifecho_tree examples %{_examplesdir}/qt5/location
254 ifecho_tree examples %{_examplesdir}/qt5/positioning
256 # find_lang --with-qm supports only PLD qt3/qt4 specific %{_datadir}/locale/*/LC_MESSAGES layout
260 find $RPM_BUILD_ROOT%{_datadir}/qt5/translations -name "${name}_*.qm" | \
261 sed -e "s:^$RPM_BUILD_ROOT::" \
262 -e 's:\(.*/'$name'_\)\([a-z][a-z][a-z]\?\)\(_[A-Z][A-Z]\)\?\(\.qm\)$:%lang(\2\3) \1\2\3\4:'
265 echo '%defattr(644,root,root,755)' > qtlocation.lang
267 find_qt5_qm qtlocation >> qtlocation.lang
271 rm -rf $RPM_BUILD_ROOT
273 %post -n Qt5Location -p /sbin/ldconfig
274 %postun -n Qt5Location -p /sbin/ldconfig
276 %post -n Qt5Positioning -p /sbin/ldconfig
277 %postun -n Qt5Positioning -p /sbin/ldconfig
279 %files -n Qt5Location -f qtlocation.lang
280 %defattr(644,root,root,755)
281 # R: Core Gui Qml QmlModels Positioning PositioningQuick Quick
282 %attr(755,root,root) %{_libdir}/libQt5Location.so.*.*.*
283 %attr(755,root,root) %ghost %{_libdir}/libQt5Location.so.5
284 %dir %{qt5dir}/plugins/geoservices
285 # R: Core Location Network Positioning
286 %attr(755,root,root) %{qt5dir}/plugins/geoservices/libqtgeoservices_esri.so
287 # R: Core Location Positioning Quick
288 %attr(755,root,root) %{qt5dir}/plugins/geoservices/libqtgeoservices_itemsoverlay.so
289 # R: Core Location Network Positioning
290 %attr(755,root,root) %{qt5dir}/plugins/geoservices/libqtgeoservices_mapbox.so
291 # R: Core Gui Location Network Positioning Qml Quick Sql
292 %attr(755,root,root) %{qt5dir}/plugins/geoservices/libqtgeoservices_mapboxgl.so
293 # R: Core Gui Location Network Positioning
294 %attr(755,root,root) %{qt5dir}/plugins/geoservices/libqtgeoservices_nokia.so
295 # R: Core Gui Location Network Positioning
296 %attr(755,root,root) %{qt5dir}/plugins/geoservices/libqtgeoservices_osm.so
297 %dir %{qt5dir}/qml/QtLocation
298 # R: Core Location Positioning Qml Quick
299 %attr(755,root,root) %{qt5dir}/qml/QtLocation/libdeclarative_location.so
300 %{qt5dir}/qml/QtLocation/plugins.qmltypes
301 %{qt5dir}/qml/QtLocation/qmldir
302 %dir %{_libdir}/qt5/qml/Qt/labs/location
303 # R: Core Location Positioning Qml
304 %attr(755,root,root) %{_libdir}/qt5/qml/Qt/labs/location/liblocationlabsplugin.so
305 %{_libdir}/qt5/qml/Qt/labs/location/plugins.qmltypes
306 %{_libdir}/qt5/qml/Qt/labs/location/qmldir
308 %files -n Qt5Location-devel
309 %defattr(644,root,root,755)
310 %attr(755,root,root) %{_libdir}/libQt5Location.so
311 %{_libdir}/libQt5Location.prl
312 %{_includedir}/qt5/QtLocation
313 %{_pkgconfigdir}/Qt5Location.pc
314 %{_libdir}/cmake/Qt5Location
315 %{qt5dir}/mkspecs/modules/qt_lib_location.pri
316 %{qt5dir}/mkspecs/modules/qt_lib_location_private.pri
318 %files -n Qt5Positioning
319 %defattr(644,root,root,755)
321 %attr(755,root,root) %{_libdir}/libQt5Positioning.so.*.*.*
322 %attr(755,root,root) %ghost %{_libdir}/libQt5Positioning.so.5
323 # R: Core Network Qml Quick
324 %attr(755,root,root) %{_libdir}/libQt5PositioningQuick.so.*.*.*
325 %attr(755,root,root) %ghost %{_libdir}/libQt5PositioningQuick.so.5
326 %dir %{qt5dir}/plugins/position
327 # R: Core DBus Positioning
328 %attr(755,root,root) %{qt5dir}/plugins/position/libqtposition_geoclue.so
329 # R: Core DBus Positioning
330 %attr(755,root,root) %{qt5dir}/plugins/position/libqtposition_geoclue2.so
331 # R: Core Positioning, GConf2, gypsy
332 %attr(755,root,root) %{qt5dir}/plugins/position/libqtposition_gypsy.so
333 # R: Core Positioning
334 %attr(755,root,root) %{qt5dir}/plugins/position/libqtposition_positionpoll.so
335 # R: Core Positioning SerialPort
336 %attr(755,root,root) %{qt5dir}/plugins/position/libqtposition_serialnmea.so
337 %dir %{qt5dir}/qml/QtPositioning
338 # R: Core Positioning PositioningQuick Qml Quick
339 %attr(755,root,root) %{qt5dir}/qml/QtPositioning/libdeclarative_positioning.so
340 %{qt5dir}/qml/QtPositioning/plugins.qmltypes
341 %{qt5dir}/qml/QtPositioning/qmldir
343 %files -n Qt5Positioning-devel
344 %defattr(644,root,root,755)
345 %attr(755,root,root) %{_libdir}/libQt5Positioning.so
346 %attr(755,root,root) %{_libdir}/libQt5PositioningQuick.so
347 %{_libdir}/libQt5Positioning.prl
348 %{_libdir}/libQt5PositioningQuick.prl
349 %{_includedir}/qt5/QtPositioning
350 %{_includedir}/qt5/QtPositioningQuick
351 %{_pkgconfigdir}/Qt5Positioning.pc
352 %{_pkgconfigdir}/Qt5PositioningQuick.pc
353 %{_libdir}/cmake/Qt5Positioning
354 %{_libdir}/cmake/Qt5PositioningQuick
355 %{qt5dir}/mkspecs/modules/qt_lib_positioning.pri
356 %{qt5dir}/mkspecs/modules/qt_lib_positioning_private.pri
357 %{qt5dir}/mkspecs/modules/qt_lib_positioningquick.pri
358 %{qt5dir}/mkspecs/modules/qt_lib_positioningquick_private.pri
362 %defattr(644,root,root,755)
363 %{_docdir}/qt5-doc/qtlocation
364 %{_docdir}/qt5-doc/qtpositioning
367 %defattr(644,root,root,755)
368 %{_docdir}/qt5-doc/qtlocation.qch
369 %{_docdir}/qt5-doc/qtpositioning.qch
372 %files examples -f examples.files
373 %defattr(644,root,root,755)
374 # XXX: dir shared with qt5-qtbase-examples
375 %dir %{_examplesdir}/qt5