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