2 # - fix mimelnk installation
5 %bcond_without packages3D # do not build packages3D
6 %bcond_without tests # unit tests
12 Summary: KiCad - is a GPL'd suite of programs for EDA
13 Summary(pl.UTF-8): KiCad - zestaw programów na licencji GPL zaliczany do kategorii EDA
19 Group: X11/Applications
20 Source0: https://gitlab.com/kicad/code/kicad/-/archive/%{version}/%{name}-%{version}.tar.bz2
21 # Source0-md5: b459188bcc2cc7096f4682e94eb1e5dc
22 Source1: https://gitlab.com/kicad/services/kicad-doc/-/archive/%{version}/%{name}-doc-%{version}.tar.bz2
23 # Source1-md5: 905f814d112f6da0e108368926a53283
24 Source3: https://gitlab.com/kicad/libraries/kicad-symbols/-/archive/%{version}/%{name}-symbols-%{version}.tar.bz2
25 # Source3-md5: 3962af58c2493350f758465bd9064c0d
26 Source4: https://gitlab.com/kicad/libraries/kicad-footprints/-/archive/%{version}/%{name}-footprints-%{version}.tar.bz2
27 # Source4-md5: 3d386334c33a2276257abae63ded3856
28 Source5: https://gitlab.com/kicad/libraries/kicad-packages3D/-/archive/%{version}/%{name}-packages3D-%{version}.tar.bz2
29 # Source5-md5: e2aaef632be4475da024bff33b823043
30 Source6: https://gitlab.com/kicad/libraries/kicad-templates/-/archive/%{version}/%{name}-templates-%{version}.tar.bz2
31 # Source6-md5: 71e752f3a5a035f4ddf719498c8daaef
32 URL: http://www.kicad.org/
33 BuildRequires: EGL-devel
34 BuildRequires: GLM >= 0.9.9.4
35 BuildRequires: OpenCASCADE-devel >= 7.3.0
36 BuildRequires: appstream-glib
37 BuildRequires: asciidoc
38 BuildRequires: boost-devel
39 BuildRequires: cairo-devel >= 1.12
40 BuildRequires: cmake >= 2.6.4
41 BuildRequires: curl-devel
42 BuildRequires: dblatex
43 BuildRequires: desktop-file-utils
44 BuildRequires: doxygen
45 BuildRequires: gtk+3-devel
46 BuildRequires: ngspice-devel
47 BuildRequires: openssl-devel
48 BuildRequires: perl-Unicode-LineBreak
49 BuildRequires: po4a >= 0.51
50 BuildRequires: python3-wxPython-devel
51 BuildRequires: rpmbuild(macros) >= 1.600
52 BuildRequires: ruby-asciidoctor
53 BuildRequires: sed >= 4.0
55 BuildRequires: wxGTK3-unicode-devel >= 3.2.2
56 BuildRequires: wxGTK3-unicode-gl-devel >= 3.2.2
57 BuildRequires: wxWidgets-devel >= 3.0.0
58 BuildRequires: zlib-devel
59 Obsoletes: kicad-doc-hu < 1:4.0.6-1
60 Obsoletes: kicad-doc-nl < 1:5.1.0-1
61 Obsoletes: kicad-doc-pt < 1:4.0.6-1
62 Obsoletes: kicad-doc-zh_CN < 1:4.0.6-1
63 Obsoletes: kicad-library < 1:7.0.7
64 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
67 KiCad consists of a project manager and four main programs:
68 - kicad - the project manager.
69 - eeschema - the schematic editor.
70 - cvpcb - the footprint selector for components used in the circuit
72 - pcbnew - the PCB layout program.
73 - gerbview - the Gerber (photoplotter documents) viewer.
75 %description -l pl.UTF-8
76 KiCad składa się z menadżera projektów oraz czterech głównych
78 - kicad - menadżer projektów.
79 - eeschema - edytor schematów.
80 - cvpcb - narzędzie do wybierania elementów używanych przy
81 projektowaniu płytek drukowanych.
82 - pcbnew - program do projektowania płytek drukowanych.
83 - gerbview - przeglądarka plików Gerber (dokumentów dla fotoplotera).
86 Summary: Packages3D for kicad
87 Summary(pl.UTF-8): Trójwymiarowe modele obudów dla kicad
88 Requires: kicad >= 1:5.0.0
91 %description packages3D
94 %description packages3D -l pl.UTF-8
95 Trójwymiarowe modele obudów dla kicad.
98 Summary: Documentation for kicad
99 Summary(fr.UTF-8): Documentations pour kicad en anglais
105 Documentation and tutorials for kicad in English
108 Summary: Documentation for Kicad in Catalan
110 Requires: %{name}-doc = %{epoch}:%{version}-%{release}
114 Documentation and tutorials for Kicad in Catalan.
117 Summary: Documentation for Kicad in German
118 Summary(fr.UTF-8): Documentations pour kicad en allemand
120 Requires: %{name}-doc = %{epoch}:%{version}-%{release}
124 Documentation and tutorials for Kicad in German.
127 Summary: Documentation for Kicad in Spanish
128 Summary(fr.UTF-8): Documentations pour kicad en espagnol
130 Requires: %{name}-doc = %{epoch}:%{version}-%{release}
134 Documentation and tutorials for Kicad in Spanish.
137 Summary: Documentation for Kicad in French
138 Summary(fr.UTF-8): Documentations pour kicad en français
140 Requires: %{name}-doc = %{epoch}:%{version}-%{release}
144 Documentation and tutorials for Kicad in French.
147 Summary: Documentation for Kicad in Indonesian
149 Requires: %{name}-doc = %{epoch}:%{version}-%{release}
153 Documentation and tutorials for Kicad in Indonesian.
156 Summary: Documentation for Kicad in Italian
157 Summary(fr.UTF-8): Documentations pour kicad en italien
159 Requires: %{name}-doc = %{epoch}:%{version}-%{release}
163 Documentation and tutorials for Kicad in Italian.
166 Summary: Documentation for Kicad in Japanese
167 Summary(fr.UTF-8): Documentations pour kicad en japonais
169 Requires: %{name}-doc = %{epoch}:%{version}-%{release}
173 Documentation and tutorials for Kicad in Japanese.
176 Summary: Documentation for Kicad in Polish
177 Summary(fr.UTF-8): Documentations pour kicad en polonais
179 Requires: %{name}-doc = %{epoch}:%{version}-%{release}
183 Documentation and tutorials for Kicad in Polish.
186 Summary: Documentation for Kicad in Russian
187 Summary(fr.UTF-8): Documentations pour kicad en russe
189 Requires: %{name}-doc = %{epoch}:%{version}-%{release}
193 Documentation and tutorials for Kicad in Russian.
196 Summary: Documentation for Kicad in Chinese
197 Summary(fr.UTF-8): Documentations pour kicad en chinois
199 Requires: %{name}-doc = %{epoch}:%{version}-%{release}
203 Documentation and tutorials for Kicad in Chinese.
206 %setup -q -a 1 -a 3 -a 4 %{?with_packages3D:-a 5} -a 6
209 %{__sed} -i -e '/test_coroutine.cpp/d' qa/unittests/common/CMakeLists.txt
222 build_library %{name}-symbols-%{version}
223 build_library %{name}-footprints-%{version}
224 build_library %{name}-templates-%{version}
225 %if %{with packages3D}
226 build_library %{name}-packages3D-%{version}
230 mkdir -p %{name}-doc-%{version}/build
231 cd %{name}-doc-%{version}/build
240 # Use bundled GLEW because GLEW compiled with EGL support is required
241 # See thirdparty/glew/README.md
243 -DKICAD_BUILD_VERSION="%{version}-%{release}" \
244 -DKICAD_BUILD_I18N=ON \
245 -DKICAD_I18N_UNIX_STRICT_PATH=ON \
246 -DwxWidgets_CONFIG_EXECUTABLE=%{_bindir}/wx-gtk3-unicode-config \
249 -DKICAD_USE_BUNDLED_GLEW=ON \
250 -DKICAD_SCRIPTING=ON \
251 -DKICAD_SCRIPTING_PYTHON3=ON \
252 -DKICAD_SCRIPTING_MODULES=ON \
253 -DKICAD_SCRIPTING_WXPYTHON=OFF \
254 -DKICAD_SCRIPTING_WXPYTHON_PHOENIX=ON \
255 %{cmake_on_off tests KICAD_BUILD_QA_TESTS}
260 %{__make} test ARGS=--output-on-failure
264 rm -rf $RPM_BUILD_ROOT
267 %{__make} -C $1/build install \
268 DESTDIR=$RPM_BUILD_ROOT
272 %{__make} -C build install \
273 DESTDIR=$RPM_BUILD_ROOT
276 install_library %{name}-symbols-%{version}
277 install_library %{name}-footprints-%{version}
278 install_library %{name}-templates-%{version}
279 %if %{with packages3D}
280 install_library %{name}-packages3D-%{version}
284 %{__make} -C %{name}-doc-%{version}/build install \
285 DESTDIR=$RPM_BUILD_ROOT
287 %{__mv} $RPM_BUILD_ROOT%{_localedir}/{no,nb}
293 %update_mime_database
294 %update_desktop_database_post
295 %update_icon_cache hicolor
299 %update_mime_database
300 %update_desktop_database_postun
301 %update_icon_cache hicolor
304 rm -rf $RPM_BUILD_ROOT
306 %files -f %{name}.lang
307 %defattr(644,root,root,755)
308 %doc AUTHORS.txt README.md
309 %attr(755,root,root) %{_bindir}/bitmap2component
310 %attr(755,root,root) %{_bindir}/_cvpcb.kiface
311 %attr(755,root,root) %{_bindir}/dxf2idf
312 %attr(755,root,root) %{_bindir}/eeschema
313 %attr(755,root,root) %{_bindir}/_eeschema.kiface
314 %attr(755,root,root) %{_bindir}/gerbview
315 %attr(755,root,root) %{_bindir}/_gerbview.kiface
316 %attr(755,root,root) %{_bindir}/idf2vrml
317 %attr(755,root,root) %{_bindir}/idfcyl
318 %attr(755,root,root) %{_bindir}/idfrect
319 %attr(755,root,root) %{_bindir}/kicad
320 %attr(755,root,root) %{_bindir}/kicad-cli
321 %attr(755,root,root) %{_bindir}/_kipython.kiface
322 %attr(755,root,root) %{_bindir}/pcb_calculator
323 %attr(755,root,root) %{_bindir}/_pcb_calculator.kiface
324 %attr(755,root,root) %{_bindir}/pcbnew
325 %attr(755,root,root) %{_bindir}/_pcbnew.kiface
326 %attr(755,root,root) %{_bindir}/pl_editor
327 %attr(755,root,root) %{_bindir}/_pl_editor.kiface
328 %attr(755,root,root) %{_libdir}/libkicad_3dsg.so.*.*.*
329 %ghost %{_libdir}/libkicad_3dsg.so
330 %dir %{_libdir}/%{name}
331 %dir %{_libdir}/%{name}/plugins
332 %dir %{_libdir}/%{name}/plugins/3d
333 %attr(755,root,root) %{_libdir}/%{name}/plugins/3d/*.so
334 #python - to subpackage?
335 %attr(755,root,root) %{py3_sitedir}/_pcbnew.so
336 %{py3_sitedir}/pcbnew.py
337 %dir %{_datadir}/%{name}
338 %{_datadir}/%{name}/demos
339 %{_datadir}/%{name}/footprints
340 %{_datadir}/%{name}/plugins
341 %{_datadir}/%{name}/resources
342 %{_datadir}/%{name}/schemas
343 %{_datadir}/%{name}/scripting
344 %{_datadir}/%{name}/symbols
345 %{_datadir}/%{name}/template
346 %{_iconsdir}/hicolor/*x*/*/*.png
347 %{_iconsdir}/hicolor/scalable/*/*.svg
348 %{_datadir}/mime/packages/kicad-*.xml
349 %{_metainfodir}/org.kicad.kicad.metainfo.xml
350 %{_desktopdir}/org.kicad.eeschema.desktop
351 %{_desktopdir}/org.kicad.kicad.desktop
352 %{_desktopdir}/org.kicad.bitmap2component.desktop
353 %{_desktopdir}/org.kicad.gerbview.desktop
354 %{_desktopdir}/org.kicad.pcbcalculator.desktop
355 %{_desktopdir}/org.kicad.pcbnew.desktop
356 #%{_datadir}/mimelnk/application/x-kicad-pcb.desktop
357 #%{_datadir}/mimelnk/application/x-kicad-project.desktop
358 #%{_datadir}/mimelnk/application/x-kicad-schematic.desktop
360 %dir %{_docdir}/%{name}
362 %if %{with packages3D}
364 %defattr(644,root,root,755)
365 %{_datadir}/%{name}/3dmodels
369 %defattr(644,root,root,755)
370 %dir %{_docdir}/%{name}
371 %dir %{_docdir}/%{name}/help
372 %{_docdir}/%{name}/help/en
375 %defattr(644,root,root,755)
376 %lang(ca) %{_docdir}/%{name}/help/ca
379 %defattr(644,root,root,755)
380 %lang(de) %{_docdir}/%{name}/help/de
383 %defattr(644,root,root,755)
384 %lang(es) %{_docdir}/%{name}/help/es
387 %defattr(644,root,root,755)
388 %lang(fr) %{_docdir}/%{name}/help/fr
391 %defattr(644,root,root,755)
392 %lang(id) %{_docdir}/%{name}/help/id
395 %defattr(644,root,root,755)
396 %lang(it) %{_docdir}/%{name}/help/it
399 %defattr(644,root,root,755)
400 %lang(ja) %{_docdir}/%{name}/help/ja
403 %defattr(644,root,root,755)
404 %lang(pl) %{_docdir}/%{name}/help/pl
407 %defattr(644,root,root,755)
408 %lang(ru) %{_docdir}/%{name}/help/ru
411 %defattr(644,root,root,755)
412 %lang(zh) %{_docdir}/%{name}/help/zh