]> git.pld-linux.org Git - packages/qt5-qtlocation.git/blob - qt5-qtlocation.spec
more BRs; package serialnmea plugin; rel 2
[packages/qt5-qtlocation.git] / qt5-qtlocation.spec
1 # maybe TODO:
2 # plugins/position/simulator (BR: Qt5Simulator)
3 #
4 # Conditional build:
5 %bcond_with     bootstrap       # disable features to able to build without installed qt5
6 # -- build targets
7 %bcond_without  doc     # Documentation
8 %bcond_without  qm      # QM translations
9
10 %if %{with bootstrap}
11 %undefine       with_doc
12 %undefine       with_qm
13 %endif
14
15 %define         qtbase_ver              %{version}
16 %define         qtdeclarative_ver       %{version}
17 %define         qttools_ver             5.8
18 %define         orgname         qtlocation
19 Summary:        The Qt5 Location library
20 Summary(pl.UTF-8):      Biblioteka Qt5 Location
21 Name:           qt5-%{orgname}
22 Version:        5.12.2
23 Release:        2
24 License:        LGPL v2.1 with Digia Qt LGPL Exception v1.1 or GPL v3.0
25 Group:          Libraries
26 Source0:        http://download.qt.io/official_releases/qt/5.12/%{version}/submodules/%{orgname}-everywhere-src-%{version}.tar.xz
27 # Source0-md5:  cd4b62e31d33c7f0d68bec523af828b8
28 Source1:        http://download.qt.io/official_releases/qt/5.12/%{version}/submodules/qttranslations-everywhere-src-%{version}.tar.xz
29 # Source1-md5:  298e993499be31ab95162b61456a4b25
30 URL:            http://www.qt.io/
31 BuildRequires:  GConf2-devel >= 2.0
32 BuildRequires:  Qt5Concurrent-devel >= %{qtbase_ver}
33 BuildRequires:  Qt5Core-devel >= %{qtbase_ver}
34 BuildRequires:  Qt5DBus-devel >= %{qtbase_ver}
35 BuildRequires:  Qt5Gui-devel >= %{qtbase_ver}
36 BuildRequires:  Qt5Network-devel >= %{qtbase_ver}
37 BuildRequires:  Qt5Qml-devel >= %{qtdeclarative_ver}
38 BuildRequires:  Qt5Quick-devel >= %{qtdeclarative_ver}
39 BuildRequires:  Qt5SerialPort-devel >= %{qtdeclarative_ver}
40 BuildRequires:  Qt5Sql-devel >= %{qtdeclarative_ver}
41 BuildRequires:  gypsy-devel
42 BuildRequires:  pkgconfig
43 %if %{with doc}
44 BuildRequires:  qt5-assistant >= %{qttools_ver}
45 %endif
46 BuildRequires:  qt5-build >= %{qtbase_ver}
47 %{?with_qm:BuildRequires:       qt5-linguist >= %{qttools_ver}}
48 BuildRequires:  qt5-qmake >= %{qtbase_ver}
49 BuildRequires:  rpmbuild(macros) >= 1.654
50 BuildRequires:  tar >= 1:1.22
51 BuildRequires:  xz
52 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
53
54 %define         specflags       -fno-strict-aliasing
55 %define         qt5dir          %{_libdir}/qt5
56
57 %description
58 Qt is a cross-platform application and UI framework. Using Qt, you can
59 write web-enabled applications once and deploy them across desktop,
60 mobile and embedded systems without rewriting the source code.
61
62 This package contains Qt5 Location and Positioning libraries.
63
64 %description -l pl.UTF-8
65 Qt to wieloplatformowy szkielet aplikacji i interfejsów użytkownika.
66 Przy użyciu Qt można pisać aplikacje powiązane z WWW i wdrażać je w
67 systemach biurkowych, przenośnych i wbudowanych bez przepisywania kodu
68 źródłowego.
69
70 Ten pakiet zawiera biblioteki Qt5 Location i Positioning.
71
72 %package -n Qt5Location
73 Summary:        The Qt5 Location library
74 Summary(pl.UTF-8):      Biblioteka Qt5 Location
75 Group:          Libraries
76 Requires:       Qt5Core >= %{qtbase_ver}
77 Requires:       Qt5Gui >= %{qtbase_ver}
78 Requires:       Qt5Positioning = %{version}-%{release}
79 Requires:       Qt5Quick >= %{qtdeclarative_ver}
80 Obsoletes:      qt5-qtlocation
81
82 %description -n Qt5Location
83 Qt5 Location library provides mapping, navigation and place search via
84 QML and C++ interfaces.
85
86 %description -n Qt5Location -l pl.UTF-8
87 Biblioteka Qt5 Location udostępnia mapy, nawigowanie oraz wyszukiwanie
88 miejsc poprzez interfejsy QML i C++.
89
90 %package -n Qt5Location-devel
91 Summary:        Qt5 Location library - development files
92 Summary(pl.UTF-8):      Biblioteka Qt5 Location - pliki programistyczne
93 Group:          Development/Libraries
94 Requires:       Qt5Core-devel >= %{qtbase_ver}
95 Requires:       Qt5Gui-devel >= %{qtbase_ver}
96 Requires:       Qt5Location = %{version}-%{release}
97 Requires:       Qt5Positioning-devel = %{version}-%{release}
98 Requires:       Qt5Quick-devel >= %{qtdeclarative_ver}
99 Obsoletes:      qt5-qtlocation-devel
100
101 %description -n Qt5Location-devel
102 Qt5 Location library - development files.
103
104 %description -n Qt5Location-devel -l pl.UTF-8
105 Biblioteka Qt5 Location - pliki programistyczne.
106
107 %package -n Qt5Positioning
108 Summary:        The Qt5 Positioning library
109 Summary(pl.UTF-8):      Biblioteka Qt5 Positioning
110 Group:          Libraries
111 Requires:       Qt5Core >= %{qtbase_ver}
112 # for plugins
113 Requires:       Qt5Network >= %{qtbase_ver}
114 Requires:       Qt5Qml >= %{qtdeclarative_ver}
115 Requires:       Qt5Quick >= %{qtdeclarative_ver}
116 Obsoletes:      qt5-qtlocation
117
118 %description -n Qt5Positioning
119 Qt5 Positioning library provides positioning information via QML and
120 C++ interfaces.
121
122 %description -n Qt5Positioning -l pl.UTF-8
123 Biblioteka Qt5 Positioning udostępnia informacje o położeniu poprzez
124 interfejsy QML i C++.
125
126 %package -n Qt5Positioning-devel
127 Summary:        Qt5 Positioning library - development files
128 Summary(pl.UTF-8):      Biblioteka Qt5 Positioning - pliki programistyczne
129 Group:          Development/Libraries
130 Requires:       Qt5Core-devel >= %{qtbase_ver}
131 Requires:       Qt5Positioning = %{version}-%{release}
132 Obsoletes:      qt5-qtlocation-devel
133
134 %description -n Qt5Positioning-devel
135 Qt5 Positioning library - development files.
136
137 %description -n Qt5Positioning-devel -l pl.UTF-8
138 Biblioteka Qt5 Positioning - pliki programistyczne.
139
140 %package doc
141 Summary:        Qt5 Location and Positioning documentation in HTML format
142 Summary(pl.UTF-8):      Dokumentacja do bibliotek Qt5 Location i Positioning w formacie HTML
143 Group:          Documentation
144 Requires:       qt5-doc-common >= %{qtbase_ver}
145 %if "%{_rpmversion}" >= "5"
146 BuildArch:      noarch
147 %endif
148
149 %description doc
150 Qt5 Location and Positioning documentation in HTML format.
151
152 %description doc -l pl.UTF-8
153 Dokumentacja do bibliotek Qt5 Location i Positioning w formacie HTML.
154
155 %package doc-qch
156 Summary:        Qt5 Location and Positioning documentation in QCH format
157 Summary(pl.UTF-8):      Dokumentacja do bibliotek Qt5 Location i Positioning w formacie QCH
158 Group:          Documentation
159 Requires:       qt5-doc-common >= %{qtbase_ver}
160 %if "%{_rpmversion}" >= "5"
161 BuildArch:      noarch
162 %endif
163
164 %description doc-qch
165 Qt5 Location and Positioning documentation in QCH format.
166
167 %description doc-qch -l pl.UTF-8
168 Dokumentacja do bibliotek Qt5 Location i Positioning w formacie QCH.
169
170 %package examples
171 Summary:        Qt5 Location and Positioning examples
172 Summary(pl.UTF-8):      Przykłady do bibliotek Qt5 Location i Positioning
173 Group:          X11/Development/Libraries
174 %if "%{_rpmversion}" >= "5"
175 BuildArch:      noarch
176 %endif
177
178 %description examples
179 Qt5 Location and Positioning examples.
180
181 %description examples -l pl.UTF-8
182 Przykłady do bibliotek Qt5 Location i Positioning.
183
184 %prep
185 %setup -q -n %{orgname}-everywhere-src-%{version} %{?with_qm:-a1}
186
187 %build
188 qmake-qt5
189 %{__make}
190 %{?with_doc:%{__make} docs}
191
192 %if %{with qm}
193 cd qttranslations-everywhere-src-%{version}
194 qmake-qt5
195 %{__make}
196 cd ..
197 %endif
198
199 %install
200 rm -rf $RPM_BUILD_ROOT
201 %{__make} install \
202         INSTALL_ROOT=$RPM_BUILD_ROOT
203
204 %if %{with doc}
205 %{__make} install_docs \
206         INSTALL_ROOT=$RPM_BUILD_ROOT
207 %endif
208
209 %if %{with qm}
210 %{__make} -C qttranslations-everywhere-src-%{version} install \
211         INSTALL_ROOT=$RPM_BUILD_ROOT
212 # keep only qtlocation
213 %{__rm} $RPM_BUILD_ROOT%{_datadir}/qt5/translations/{assistant,designer,linguist,qt,qtbase,qtconnectivity,qtdeclarative,qtmultimedia,qtquickcontrols,qtquickcontrols2,qtserialport,qtscript,qtwebengine,qtwebsockets,qtxmlpatterns}_*.qm
214 %endif
215
216 # kill unnecessary -L%{_libdir} from *.la, *.prl, *.pc
217 %{__sed} -i -e "s,-L%{_libdir} \?,,g" \
218         $RPM_BUILD_ROOT%{_libdir}/*.{la,prl} \
219         $RPM_BUILD_ROOT%{_pkgconfigdir}/*.pc
220
221 # useless symlinks
222 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libQt5*.so.5.??
223 # actually drop *.la, follow policy of not packaging them when *.pc exist
224 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libQt5*.la
225
226 # Prepare some files list
227 ifecho() {
228         r="$RPM_BUILD_ROOT$2"
229         if [ -d "$r" ]; then
230                 echo "%%dir $2" >> $1.files
231         elif [ -x "$r" ] ; then
232                 echo "%%attr(755,root,root) $2" >> $1.files
233         elif [ -f "$r" ]; then
234                 echo "$2" >> $1.files
235         else
236                 echo "Error generation $1 files list!"
237                 echo "$r: no such file or directory!"
238                 return 1
239         fi
240 }
241 ifecho_tree() {
242         ifecho $1 $2
243         for f in `find $RPM_BUILD_ROOT$2 -printf "%%P "`; do
244                 ifecho $1 $2/$f
245         done
246 }
247
248 echo "%defattr(644,root,root,755)" > examples.files
249 ifecho_tree examples %{_examplesdir}/qt5/location
250 ifecho_tree examples %{_examplesdir}/qt5/positioning
251
252 # find_lang --with-qm supports only PLD qt3/qt4 specific %{_datadir}/locale/*/LC_MESSAGES layout
253 find_qt5_qm()
254 {
255         name="$1"
256         find $RPM_BUILD_ROOT%{_datadir}/qt5/translations -name "${name}_*.qm" | \
257                 sed -e "s:^$RPM_BUILD_ROOT::" \
258                     -e 's:\(.*/'$name'_\)\([a-z][a-z][a-z]\?\)\(_[A-Z][A-Z]\)\?\(\.qm\)$:%lang(\2\3) \1\2\3\4:'
259 }
260
261 echo '%defattr(644,root,root,755)' > qtlocation.lang
262 %if %{with qm}
263 find_qt5_qm qtlocation >> qtlocation.lang
264 %endif
265
266 %clean
267 rm -rf $RPM_BUILD_ROOT
268
269 %post   -n Qt5Location -p /sbin/ldconfig
270 %postun -n Qt5Location -p /sbin/ldconfig
271
272 %post   -n Qt5Positioning -p /sbin/ldconfig
273 %postun -n Qt5Positioning -p /sbin/ldconfig
274
275 %files -n Qt5Location -f qtlocation.lang
276 %defattr(644,root,root,755)
277 %attr(755,root,root) %{_libdir}/libQt5Location.so.*.*.*
278 %attr(755,root,root) %ghost %{_libdir}/libQt5Location.so.5
279 %dir %{qt5dir}/plugins/geoservices
280 %attr(755,root,root) %{qt5dir}/plugins/geoservices/libqtgeoservices_esri.so
281 %attr(755,root,root) %{qt5dir}/plugins/geoservices/libqtgeoservices_itemsoverlay.so
282 %attr(755,root,root) %{qt5dir}/plugins/geoservices/libqtgeoservices_mapbox.so
283 %attr(755,root,root) %{qt5dir}/plugins/geoservices/libqtgeoservices_mapboxgl.so
284 %attr(755,root,root) %{qt5dir}/plugins/geoservices/libqtgeoservices_nokia.so
285 %attr(755,root,root) %{qt5dir}/plugins/geoservices/libqtgeoservices_osm.so
286 %dir %{qt5dir}/qml/QtLocation
287 %attr(755,root,root) %{qt5dir}/qml/QtLocation/libdeclarative_location.so
288 %{qt5dir}/qml/QtLocation/plugins.qmltypes
289 %{qt5dir}/qml/QtLocation/qmldir
290 %dir  %{_libdir}/qt5/qml/Qt/labs/location
291 %attr(755,root,root) %{_libdir}/qt5/qml/Qt/labs/location/liblocationlabsplugin.so
292 %{_libdir}/qt5/qml/Qt/labs/location/plugins.qmltypes
293 %{_libdir}/qt5/qml/Qt/labs/location/qmldir
294
295 %files -n Qt5Location-devel
296 %defattr(644,root,root,755)
297 %attr(755,root,root) %{_libdir}/libQt5Location.so
298 %{_libdir}/libQt5Location.prl
299 %{_includedir}/qt5/QtLocation
300 %{_pkgconfigdir}/Qt5Location.pc
301 %{_libdir}/cmake/Qt5Location
302 %{qt5dir}/mkspecs/modules/qt_lib_location.pri
303 %{qt5dir}/mkspecs/modules/qt_lib_location_private.pri
304
305 %files -n Qt5Positioning
306 %defattr(644,root,root,755)
307 %attr(755,root,root) %{_libdir}/libQt5Positioning.so.*.*.*
308 %attr(755,root,root) %ghost %{_libdir}/libQt5Positioning.so.5
309 %attr(755,root,root) %{_libdir}/libQt5PositioningQuick.so.*.*.*
310 %attr(755,root,root) %ghost %{_libdir}/libQt5PositioningQuick.so.5
311 %dir %{qt5dir}/plugins/position
312 %attr(755,root,root) %{qt5dir}/plugins/position/libqtposition_geoclue.so
313 %attr(755,root,root) %{qt5dir}/plugins/position/libqtposition_geoclue2.so
314 %attr(755,root,root) %{qt5dir}/plugins/position/libqtposition_gypsy.so
315 %attr(755,root,root) %{qt5dir}/plugins/position/libqtposition_positionpoll.so
316 %attr(755,root,root) %{qt5dir}/plugins/position/libqtposition_serialnmea.so
317 %dir %{qt5dir}/qml/QtPositioning
318 %attr(755,root,root) %{qt5dir}/qml/QtPositioning/libdeclarative_positioning.so
319 %{qt5dir}/qml/QtPositioning/plugins.qmltypes
320 %{qt5dir}/qml/QtPositioning/qmldir
321
322 %files -n Qt5Positioning-devel
323 %defattr(644,root,root,755)
324 %attr(755,root,root) %{_libdir}/libQt5Positioning.so
325 %attr(755,root,root) %{_libdir}/libQt5PositioningQuick.so
326 %{_libdir}/libQt5Positioning.prl
327 %{_libdir}/libQt5PositioningQuick.prl
328 %{_includedir}/qt5/QtPositioning
329 %{_includedir}/qt5/QtPositioningQuick
330 %{_pkgconfigdir}/Qt5Positioning.pc
331 %{_pkgconfigdir}/Qt5PositioningQuick.pc
332 %{_libdir}/cmake/Qt5Positioning
333 %{_libdir}/cmake/Qt5PositioningQuick
334 %{qt5dir}/mkspecs/modules/qt_lib_positioning.pri
335 %{qt5dir}/mkspecs/modules/qt_lib_positioning_private.pri
336 %{qt5dir}/mkspecs/modules/qt_lib_positioningquick.pri
337 %{qt5dir}/mkspecs/modules/qt_lib_positioningquick_private.pri
338
339 %if %{with doc}
340 %files doc
341 %defattr(644,root,root,755)
342 %{_docdir}/qt5-doc/qtlocation
343 %{_docdir}/qt5-doc/qtpositioning
344
345 %files doc-qch
346 %defattr(644,root,root,755)
347 %{_docdir}/qt5-doc/qtlocation.qch
348 %{_docdir}/qt5-doc/qtpositioning.qch
349 %endif
350
351 %files examples -f examples.files
352 %defattr(644,root,root,755)
353 # XXX: dir shared with qt5-qtbase-examples
354 %dir %{_examplesdir}/qt5
This page took 0.075934 seconds and 3 git commands to generate.