]> git.pld-linux.org Git - packages/kicad.git/blob - kicad.spec
2e88e94bbfdd2020f6dc5e3316a4168f75f43533
[packages/kicad.git] / kicad.spec
1 # TODO:
2 # - fix mimelnk installation
3 #
4 Summary:        KiCad - is a GPL'd suite of programs for EDA
5 Summary(pl.UTF-8):      KiCad - zestaw programów na licencji GPL zaliczany do kategorii EDA
6 Name:           kicad
7 Version:        5.0.0
8 Release:        2
9 Epoch:          1
10 License:        GPL v2+
11 Group:          X11/Applications
12 Source0:        https://launchpad.net/kicad/5.0/%{version}/+download/%{name}-%{version}.tar.xz
13 # Source0-md5:  99a39910a3f7d8320b605bb9a9ff3af8
14 Source1:        https://github.com/KiCad/kicad-doc/archive/%{version}/%{name}-doc-%{version}.tar.gz
15 # Source1-md5:  0d6e78e1087a04c8e6385f76c0727bf7
16 Source2:        https://github.com/KiCad/kicad-i18n/archive/%{version}/%{name}-i18n-%{version}.tar.gz
17 # Source2-md5:  1e1503b89c575c80ff51583d40667c14
18 Source3:        https://github.com/KiCad/kicad-symbols/archive/%{version}/%{name}-symbols-%{version}.tar.gz
19 # Source3-md5:  03cb33312062571118a277bafd01c06d
20 Source4:        https://github.com/KiCad/kicad-footprints/archive/%{version}/%{name}-footprints-%{version}.tar.gz
21 # Source4-md5:  e8ce40c47b108280d7878f858899ab10
22 Source5:        https://github.com/KiCad/kicad-packages3D/archive/%{version}/%{name}-packages3D-%{version}.tar.gz
23 # Source5-md5:  aac66499bbbd9f21ad3e90af7ba854d2
24 Source6:        https://github.com/KiCad/kicad-templates/archive/%{version}/%{name}-templates-%{version}.tar.gz
25 # Source6-md5:  d8a5c09a33588a73eb8552c83bdb0381
26 Patch0:         nostrip.patch
27 # https://code.launchpad.net/~lkundrak/kicad/appstream-data/+merge/293391
28 Patch1:         lto.patch
29 Patch2:         python.patch
30 Patch3:         3d_plugindir.patch
31 URL:            http://www.kicad-pcb.org/
32 BuildRequires:  GLM
33 BuildRequires:  OCE-devel
34 BuildRequires:  appstream-glib
35 BuildRequires:  asciidoc
36 BuildRequires:  boost-devel
37 BuildRequires:  cmake >= 2.6.4
38 BuildRequires:  curl-devel
39 BuildRequires:  dblatex
40 BuildRequires:  desktop-file-utils
41 BuildRequires:  doxygen
42 BuildRequires:  glew-devel
43 BuildRequires:  ngspice-devel
44 BuildRequires:  openssl-devel
45 BuildRequires:  perl-Unicode-LineBreak
46 BuildRequires:  po4a >= 0.51
47 BuildRequires:  python-wxPython-devel
48 BuildRequires:  rpmbuild(macros) >= 1.600
49 BuildRequires:  sed >= 4.0
50 BuildRequires:  which
51 BuildRequires:  wxGTK2-unicode-devel >= 3.0.0
52 BuildRequires:  wxGTK2-unicode-gl-devel >= 3.0.0
53 BuildRequires:  wxWidgets-devel >= 3.0.0
54 BuildRequires:  zlib-devel
55 Obsoletes:      kicad-doc-hu < 1:4.0.6-1
56 Obsoletes:      kicad-doc-pt < 1:4.0.6-1
57 Obsoletes:      kicad-doc-zh_CN < 1:4.0.6-1
58 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
59
60 %description
61 KiCad consists of a project manager and four main programs:
62 - kicad - the project manager.
63 - eeschema - the schematic editor.
64 - cvpcb - the footprint selector for components used in the circuit
65   design.
66 - pcbnew - the PCB layout program.
67 - gerbview - the Gerber (photoplotter documents) viewer.
68
69 %description -l pl.UTF-8
70 KiCad składa się z menadżera projektów oraz czterech głównych
71 programów:
72 - kicad - menadżer projektów.
73 - eeschema - edytor schematów.
74 - cvpcb - narzędzie do wybierania elementów używanych przy
75   projektowaniu płytek drukowanych.
76 - pcbnew - program do projektowania płytek drukowanych.
77 - gerbview - przeglądarka plików Gerber (dokumentów dla fotoplotera).
78
79 %package library
80 Summary:        Symbols, footprints and templates for kicad
81 Summary(pl.UTF-8):      Symbole, obudowy i wzorce dla kicad
82 %if "%{_rpmversion}" >= "5"
83 BuildArch:      noarch
84 %endif
85 Requires:       kicad >= 1:5.0.0
86
87 %description library
88 Symbols, footprints and templates for kicad.
89
90 %description -l pl.UTF-8
91 Symbole, obudowy i wzorce dla kicad.
92
93 %package packages3D
94 Summary:        Packages3D for kicad
95 Summary(pl.UTF-8):      Trójwymiarowe modele obudów dla kicad
96 %if "%{_rpmversion}" >= "5"
97 BuildArch:      noarch
98 %endif
99 Requires:       kicad >= 1:5.0.0
100
101 %description packages3D
102 Packages3D for kicad
103
104 %description -l pl.UTF-8
105 Trójwymiarowe modele obudów dla kicad.
106
107 %package doc
108 Summary:        Documentation for kicad
109 Summary(fr.UTF-8):      Documentations pour kicad en anglais
110 License:        GPL v2+
111 Group:          Documentation
112 %if "%{_rpmversion}" >= "5"
113 BuildArch:      noarch
114 %endif
115
116 %description doc
117 Documentation and tutorials for kicad in English
118
119 %package doc-ca
120 Summary:        Documentation for Kicad in Catalan
121 Group:          Documentation
122 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
123 %if "%{_rpmversion}" >= "5"
124 BuildArch:      noarch
125 %endif
126
127 %description doc-ca
128 Documentation and tutorials for Kicad in Catalan.
129
130 %package doc-de
131 Summary:        Documentation for Kicad in German
132 Summary(fr.UTF-8):      Documentations pour kicad en allemand
133 Group:          Documentation
134 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
135 %if "%{_rpmversion}" >= "5"
136 BuildArch:      noarch
137 %endif
138
139 %description doc-de
140 Documentation and tutorials for Kicad in German.
141
142 %package doc-es
143 Summary:        Documentation for Kicad in Spanish
144 Summary(fr.UTF-8):      Documentations pour kicad en espagnol
145 Group:          Documentation
146 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
147 %if "%{_rpmversion}" >= "5"
148 BuildArch:      noarch
149 %endif
150
151 %description doc-es
152 Documentation and tutorials for Kicad in Spanish.
153
154 %package doc-fr
155 Summary:        Documentation for Kicad in French
156 Summary(fr.UTF-8):      Documentations pour kicad en français
157 Group:          Documentation
158 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
159 %if "%{_rpmversion}" >= "5"
160 BuildArch:      noarch
161 %endif
162
163 %description doc-fr
164 Documentation and tutorials for Kicad in French.
165
166 %package doc-id
167 Summary:        Documentation for Kicad in Indonesian
168 Group:          Documentation
169 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
170 %if "%{_rpmversion}" >= "5"
171 BuildArch:      noarch
172 %endif
173
174 %description doc-id
175 Documentation and tutorials for Kicad in Indonesian.
176
177 %package doc-it
178 Summary:        Documentation for Kicad in Italian
179 Summary(fr.UTF-8):      Documentations pour kicad en italien
180 Group:          Documentation
181 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
182 %if "%{_rpmversion}" >= "5"
183 BuildArch:      noarch
184 %endif
185
186 %description doc-it
187 Documentation and tutorials for Kicad in Italian.
188
189 %package doc-ja
190 Summary:        Documentation for Kicad in Japanese
191 Summary(fr.UTF-8):      Documentations pour kicad en japonais
192 Group:          Documentation
193 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
194 %if "%{_rpmversion}" >= "5"
195 BuildArch:      noarch
196 %endif
197
198 %description doc-ja
199 Documentation and tutorials for Kicad in Japanese.
200
201 %package doc-nl
202 Summary:        Documentation for Kicad in Dutch
203 Group:          Documentation
204 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
205 %if "%{_rpmversion}" >= "5"
206 BuildArch:      noarch
207 %endif
208
209 %description doc-nl
210 Documentation and tutorials for Kicad in Dutch.
211
212 %package doc-pl
213 Summary:        Documentation for Kicad in Polish
214 Summary(fr.UTF-8):      Documentations pour kicad en polonais
215 Group:          Documentation
216 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
217 %if "%{_rpmversion}" >= "5"
218 BuildArch:      noarch
219 %endif
220
221 %description doc-pl
222 Documentation and tutorials for Kicad in Polish.
223
224 %package doc-ru
225 Summary:        Documentation for Kicad in Russian
226 Summary(fr.UTF-8):      Documentations pour kicad en russe
227 Group:          Documentation
228 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
229 %if "%{_rpmversion}" >= "5"
230 BuildArch:      noarch
231 %endif
232
233 %description doc-ru
234 Documentation and tutorials for Kicad in Russian.
235
236 %package doc-zh
237 Summary:        Documentation for Kicad in Chinese
238 Summary(fr.UTF-8):      Documentations pour kicad en chinois
239 Group:          Documentation
240 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
241 %if "%{_rpmversion}" >= "5"
242 BuildArch:      noarch
243 %endif
244
245 %description doc-zh
246 Documentation and tutorials for Kicad in Chinese.
247
248 %prep
249 %setup -q -a 1 -a 2 -a 3 -a 4 -a 5 -a 6
250 %patch0 -p1
251 %patch1 -p1
252 %patch2 -p1
253 %patch3 -p1
254
255 %build
256
257 build_library() {
258   mkdir "$1/build"
259   cd "$1/build"
260   %cmake ..
261   %{__make} VERBOSE=1
262   cd ../..
263 }
264 # Symbols libraries
265 build_library %{name}-symbols-%{version}
266 build_library %{name}-footprints-%{version}
267 build_library %{name}-templates-%{version}
268 build_library %{name}-packages3D-%{version}
269
270 # Documentation
271 mkdir %{name}-doc-%{version}/build
272 cd %{name}-doc-%{version}/build
273 %cmake .. \
274         -DBUILD_FORMATS=html
275 %{__make} VERBOSE=1
276 cd ../..
277
278 # Translations
279 mkdir %{name}-i18n-%{version}/build
280 cd %{name}-i18n-%{version}/build
281 %cmake .. \
282         -DKICAD_I18N_UNIX_STRICT_PATH=ON
283 %{__make} VERBOSE=1
284 cd ../..
285
286 # Core components
287 mkdir build
288 cd build
289 %cmake .. \
290         -DKICAD_SKIP_BOOST=ON \
291         -DKICAD_BUILD_VERSION="%{version}-%{release}" \
292         -DwxWidgets_CONFIG_EXECUTABLE=%{_bindir}/wx-gtk2-unicode-config \
293         -DKICAD_SCRIPTING=ON -DKICAD_SCRIPTING_MODULES=ON -DKICAD_SCRIPTING_WXPYTHON=ON
294
295 %{__make} VERBOSE=1
296
297 %install
298 rm -rf $RPM_BUILD_ROOT
299
300 install_library() {
301   %{__make} -C $1/build install \
302         DESTDIR=$RPM_BUILD_ROOT
303 }
304
305 # KiCAD itself
306 %{__make} -C build install \
307         DESTDIR=$RPM_BUILD_ROOT
308
309 # Symbols libraries
310 install_library %{name}-symbols-%{version}
311 install_library %{name}-footprints-%{version}
312 install_library %{name}-templates-%{version}
313 install_library %{name}-packages3D-%{version}
314
315 # Documentation
316 %{__make} -C %{name}-doc-%{version}/build install \
317         DESTDIR=$RPM_BUILD_ROOT
318
319 # Translations
320 %{__make} -C %{name}-i18n-%{version}/build install \
321         DESTDIR=$RPM_BUILD_ROOT
322
323 %find_lang %{name}
324
325 %post
326 /sbin/ldconfig
327 %update_mime_database
328 %update_desktop_database_post
329 %update_icon_cache hicolor
330
331 %postun
332 /sbin/ldconfig
333 %update_mime_database
334 %update_desktop_database_postun
335 %update_icon_cache hicolor
336
337 %clean
338 rm -rf $RPM_BUILD_ROOT
339
340 %files -f %{name}.lang
341 %defattr(644,root,root,755)
342 %doc AUTHORS.txt Documentation
343 %attr(755,root,root) %{_bindir}/bitmap2component
344 %attr(755,root,root) %{_bindir}/_cvpcb.kiface
345 %attr(755,root,root) %{_bindir}/dxf2idf
346 %attr(755,root,root) %{_bindir}/eeschema
347 %attr(755,root,root) %{_bindir}/_eeschema.kiface
348 %attr(755,root,root) %{_bindir}/gerbview
349 %attr(755,root,root) %{_bindir}/_gerbview.kiface
350 %attr(755,root,root) %{_bindir}/idf2vrml
351 %attr(755,root,root) %{_bindir}/idfcyl
352 %attr(755,root,root) %{_bindir}/idfrect
353 %attr(755,root,root) %{_bindir}/kicad
354 %attr(755,root,root) %{_bindir}/kicad-ogltest
355 %attr(755,root,root) %{_bindir}/kicad2step
356 %attr(755,root,root) %{_bindir}/pcb_calculator
357 %attr(755,root,root) %{_bindir}/_pcb_calculator.kiface
358 %attr(755,root,root) %{_bindir}/pcbnew
359 %attr(755,root,root) %{_bindir}/_pcbnew.kiface
360 %attr(755,root,root) %{_bindir}/pl_editor
361 %attr(755,root,root) %{_bindir}/_pl_editor.kiface
362 %attr(755,root,root) %{_libdir}/libkicad_3dsg.so.*.*.*
363 %ghost %{_libdir}/libkicad_3dsg.so
364 %dir %{_libdir}/%{name}
365 %dir %{_libdir}/%{name}/plugins
366 %dir %{_libdir}/%{name}/plugins/3d
367 %attr(755,root,root) %{_libdir}/%{name}/plugins/3d/*.so
368 #python - to subpackage?
369 %attr(755,root,root) %{_libdir}/python2.7/site-packages/_pcbnew.so
370 %{_libdir}/python2.7/site-packages/pcbnew.py
371 %dir %{_datadir}/%{name}
372 %{_datadir}/%{name}/demos
373 %{_datadir}/%{name}/plugins
374 %{_datadir}/%{name}/scripting
375 %dir %{_datadir}/%{name}/library
376 %dir %{_datadir}/%{name}/modules
377 %dir %{_datadir}/%{name}/modules/packages3d
378 %dir %{_datadir}/%{name}/template
379 %{_iconsdir}/hicolor/*x*/*/*.png
380 %{_iconsdir}/hicolor/scalable/*/*.svg
381 %{_datadir}/mime/packages/kicad-*.xml
382 %{_datadir}/appdata/kicad.appdata.xml
383 %{_desktopdir}/eeschema.desktop
384 %{_desktopdir}/%{name}.desktop
385 %{_desktopdir}/bitmap2component.desktop
386 %{_desktopdir}/gerbview.desktop
387 %{_desktopdir}/pcbcalculator.desktop
388 %{_desktopdir}/pcbnew.desktop
389 #%{_datadir}/mimelnk/application/x-kicad-pcb.desktop
390 #%{_datadir}/mimelnk/application/x-kicad-project.desktop
391 #%{_datadir}/mimelnk/application/x-kicad-schematic.desktop
392
393 %dir %{_docdir}/%{name}
394
395 %files library
396 %defattr(644,root,root,755)
397 %{_datadir}/%{name}/library/*
398 %{_datadir}/%{name}/modules/*.pretty
399 %{_datadir}/%{name}/template/*
400
401 %files packages3D
402 %defattr(644,root,root,755)
403 %{_datadir}/%{name}/modules/packages3d/*
404
405 %files doc
406 %defattr(644,root,root,755)
407 %dir %{_docdir}/%{name}
408 %dir %{_docdir}/%{name}/help
409 %{_docdir}/%{name}/help/en
410 %{_docdir}/%{name}/scripts
411
412 %files doc-ca
413 %defattr(644,root,root,755)
414 %lang(ca) %{_docdir}/%{name}/help/ca
415
416 %files doc-de
417 %defattr(644,root,root,755)
418 %lang(de) %{_docdir}/%{name}/help/de
419
420 %files doc-es
421 %defattr(644,root,root,755)
422 %lang(es) %{_docdir}/%{name}/help/es
423
424 %files doc-fr
425 %defattr(644,root,root,755)
426 %lang(fr) %{_docdir}/%{name}/help/fr
427
428 %files doc-id
429 %defattr(644,root,root,755)
430 %lang(id) %{_docdir}/%{name}/help/id
431
432 %files doc-it
433 %defattr(644,root,root,755)
434 %lang(it) %{_docdir}/%{name}/help/it
435
436 %files doc-ja
437 %defattr(644,root,root,755)
438 %lang(ja) %{_docdir}/%{name}/help/ja
439
440 %files doc-nl
441 %defattr(644,root,root,755)
442 %lang(nl) %{_docdir}/%{name}/help/nl
443
444 %files doc-pl
445 %defattr(644,root,root,755)
446 %lang(pl) %{_docdir}/%{name}/help/pl
447
448 %files doc-ru
449 %defattr(644,root,root,755)
450 %lang(ru) %{_docdir}/%{name}/help/ru
451
452 %files doc-zh
453 %defattr(644,root,root,755)
454 %lang(zh) %{_docdir}/%{name}/help/zh
This page took 0.136749 seconds and 3 git commands to generate.