]> git.pld-linux.org Git - packages/kicad.git/blame - kicad.spec
- use system glew
[packages/kicad.git] / kicad.spec
CommitLineData
74131d84
AM
1# TODO:
2# - fix mimelnk installation
3#
b76338ad 4# Conditional build:
d8fd94ea 5%bcond_without packages3D # do not build packages3D
1de26e2a 6%bcond_without tests # unit tests
b76338ad 7
6910bb76
JR
8%ifarch %{ix86}
9%undefine with_tests
10%endif
11
4b5aca64 12Summary: KiCad - is a GPL'd suite of programs for EDA
34a5277b 13Summary(pl.UTF-8): KiCad - zestaw programów na licencji GPL zaliczany do kategorii EDA
4b5aca64 14Name: kicad
d8fd94ea 15Version: 7.0.7
da408722 16Release: 1
14ef21aa 17Epoch: 1
22291059 18License: GPL v2+
34a5277b 19Group: X11/Applications
d8fd94ea
JR
20Source0: https://gitlab.com/kicad/code/kicad/-/archive/%{version}/%{name}-%{version}.tar.bz2
21# Source0-md5: 24a74335b414fd326caa057f659611cd
22Source1: https://gitlab.com/kicad/services/kicad-doc/-/archive/%{version}/%{name}-doc-%{version}.tar.bz2
23# Source1-md5: 46663e145076127743c21a9503c74cae
1e16fbc7 24Source3: https://gitlab.com/kicad/libraries/kicad-symbols/-/archive/%{version}/%{name}-symbols-%{version}.tar.bz2
d8fd94ea 25# Source3-md5: 7cdf8677c33d182fcceca4a368dfae84
1e16fbc7 26Source4: https://gitlab.com/kicad/libraries/kicad-footprints/-/archive/%{version}/%{name}-footprints-%{version}.tar.bz2
d8fd94ea 27# Source4-md5: 6892e24da695bdf82d97c4a46c2382a5
1e16fbc7 28Source5: https://gitlab.com/kicad/libraries/kicad-packages3D/-/archive/%{version}/%{name}-packages3D-%{version}.tar.bz2
d8fd94ea 29# Source5-md5: f2bd1e8cd3c2c067b629a5b516b456ae
1e16fbc7 30Source6: https://gitlab.com/kicad/libraries/kicad-templates/-/archive/%{version}/%{name}-templates-%{version}.tar.bz2
d8fd94ea 31# Source6-md5: 1c597abf18b943172988277ebe1f1203
050daee7 32URL: http://www.kicad.org/
84732aaf 33BuildRequires: GLM >= 0.9.9.4
d8fd94ea 34BuildRequires: OpenCASCADE-devel >= 7.3.0
c4549a7b
JR
35BuildRequires: appstream-glib
36BuildRequires: asciidoc
254fbc44 37BuildRequires: boost-devel
8f50c340 38BuildRequires: cairo-devel >= 1.12
b3e6c3ec 39BuildRequires: cmake >= 2.6.4
c4549a7b
JR
40BuildRequires: curl-devel
41BuildRequires: dblatex
42BuildRequires: desktop-file-utils
43BuildRequires: doxygen
44BuildRequires: glew-devel
8f50c340 45BuildRequires: gtk+3-devel
26c94a74 46BuildRequires: ngspice-devel
c4549a7b
JR
47BuildRequires: openssl-devel
48BuildRequires: perl-Unicode-LineBreak
49BuildRequires: po4a >= 0.51
d8fd94ea 50BuildRequires: python3-wxPython-devel
22291059 51BuildRequires: rpmbuild(macros) >= 1.600
d8fd94ea 52BuildRequires: ruby-asciidoctor
34a5277b 53BuildRequires: sed >= 4.0
254fbc44 54BuildRequires: which
8f50c340
JR
55BuildRequires: wxGTK3-unicode-devel >= 3.2.2
56BuildRequires: wxGTK3-unicode-gl-devel >= 3.2.2
7e103374 57BuildRequires: wxWidgets-devel >= 3.0.0
b3e6c3ec 58BuildRequires: zlib-devel
14ef21aa 59Obsoletes: kicad-doc-hu < 1:4.0.6-1
ce396805 60Obsoletes: kicad-doc-nl < 1:5.1.0-1
14ef21aa
JR
61Obsoletes: kicad-doc-pt < 1:4.0.6-1
62Obsoletes: kicad-doc-zh_CN < 1:4.0.6-1
d8fd94ea 63Obsoletes: kicad-library < 1:7.0.7
4b5aca64 64BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
65
66%description
67KiCad 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
71 design.
72- pcbnew - the PCB layout program.
73- gerbview - the Gerber (photoplotter documents) viewer.
74
75%description -l pl.UTF-8
22291059 76KiCad składa się z menadżera projektów oraz czterech głównych
4b5aca64 77programów:
78- kicad - menadżer projektów.
79- eeschema - edytor schematów.
34a5277b
JB
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).
4b5aca64 84
26c94a74
BS
85%package packages3D
86Summary: Packages3D for kicad
87Summary(pl.UTF-8): Trójwymiarowe modele obudów dla kicad
26c94a74 88Requires: kicad >= 1:5.0.0
d8fd94ea 89BuildArch: noarch
26c94a74
BS
90
91%description packages3D
92Packages3D for kicad
93
1de26e2a 94%description packages3D -l pl.UTF-8
26c94a74
BS
95Trójwymiarowe modele obudów dla kicad.
96
88bfc3ad
ER
97%package doc
98Summary: Documentation for kicad
99Summary(fr.UTF-8): Documentations pour kicad en anglais
100License: GPL v2+
101Group: Documentation
88bfc3ad 102BuildArch: noarch
88bfc3ad
ER
103
104%description doc
105Documentation and tutorials for kicad in English
106
c4549a7b 107%package doc-ca
0af3e185 108Summary: Documentation for Kicad in Catalan
c4549a7b 109Group: Documentation
d2529fc6 110Requires: %{name}-doc = %{epoch}:%{version}-%{release}
c4549a7b 111BuildArch: noarch
c4549a7b
JR
112
113%description doc-ca
0af3e185 114Documentation and tutorials for Kicad in Catalan.
c4549a7b 115
88bfc3ad
ER
116%package doc-de
117Summary: Documentation for Kicad in German
118Summary(fr.UTF-8): Documentations pour kicad en allemand
119Group: Documentation
d2529fc6 120Requires: %{name}-doc = %{epoch}:%{version}-%{release}
88bfc3ad 121BuildArch: noarch
88bfc3ad
ER
122
123%description doc-de
0af3e185 124Documentation and tutorials for Kicad in German.
88bfc3ad
ER
125
126%package doc-es
127Summary: Documentation for Kicad in Spanish
128Summary(fr.UTF-8): Documentations pour kicad en espagnol
129Group: Documentation
d2529fc6 130Requires: %{name}-doc = %{epoch}:%{version}-%{release}
88bfc3ad 131BuildArch: noarch
88bfc3ad
ER
132
133%description doc-es
0af3e185 134Documentation and tutorials for Kicad in Spanish.
88bfc3ad
ER
135
136%package doc-fr
137Summary: Documentation for Kicad in French
138Summary(fr.UTF-8): Documentations pour kicad en français
139Group: Documentation
d2529fc6 140Requires: %{name}-doc = %{epoch}:%{version}-%{release}
88bfc3ad 141BuildArch: noarch
88bfc3ad
ER
142
143%description doc-fr
0af3e185 144Documentation and tutorials for Kicad in French.
88bfc3ad 145
c4549a7b 146%package doc-id
0af3e185 147Summary: Documentation for Kicad in Indonesian
88bfc3ad 148Group: Documentation
d2529fc6 149Requires: %{name}-doc = %{epoch}:%{version}-%{release}
88bfc3ad 150BuildArch: noarch
88bfc3ad 151
c4549a7b 152%description doc-id
0af3e185 153Documentation and tutorials for Kicad in Indonesian.
88bfc3ad
ER
154
155%package doc-it
156Summary: Documentation for Kicad in Italian
157Summary(fr.UTF-8): Documentations pour kicad en italien
158Group: Documentation
d2529fc6 159Requires: %{name}-doc = %{epoch}:%{version}-%{release}
88bfc3ad 160BuildArch: noarch
88bfc3ad
ER
161
162%description doc-it
0af3e185 163Documentation and tutorials for Kicad in Italian.
88bfc3ad
ER
164
165%package doc-ja
166Summary: Documentation for Kicad in Japanese
167Summary(fr.UTF-8): Documentations pour kicad en japonais
168Group: Documentation
d2529fc6 169Requires: %{name}-doc = %{epoch}:%{version}-%{release}
88bfc3ad 170BuildArch: noarch
88bfc3ad
ER
171
172%description doc-ja
0af3e185 173Documentation and tutorials for Kicad in Japanese.
88bfc3ad 174
c4549a7b
JR
175%package doc-pl
176Summary: Documentation for Kicad in Polish
177Summary(fr.UTF-8): Documentations pour kicad en polonais
88bfc3ad 178Group: Documentation
d2529fc6 179Requires: %{name}-doc = %{epoch}:%{version}-%{release}
88bfc3ad 180BuildArch: noarch
88bfc3ad 181
c4549a7b 182%description doc-pl
0af3e185 183Documentation and tutorials for Kicad in Polish.
88bfc3ad
ER
184
185%package doc-ru
186Summary: Documentation for Kicad in Russian
187Summary(fr.UTF-8): Documentations pour kicad en russe
188Group: Documentation
d2529fc6 189Requires: %{name}-doc = %{epoch}:%{version}-%{release}
88bfc3ad 190BuildArch: noarch
88bfc3ad
ER
191
192%description doc-ru
0af3e185 193Documentation and tutorials for Kicad in Russian.
88bfc3ad 194
26c94a74
BS
195%package doc-zh
196Summary: Documentation for Kicad in Chinese
197Summary(fr.UTF-8): Documentations pour kicad en chinois
198Group: Documentation
199Requires: %{name}-doc = %{epoch}:%{version}-%{release}
26c94a74 200BuildArch: noarch
26c94a74
BS
201
202%description doc-zh
203Documentation and tutorials for Kicad in Chinese.
204
4b5aca64 205%prep
d8fd94ea 206%setup -q -a 1 -a 3 -a 4 %{?with_packages3D:-a 5} -a 6
c7773671 207
93c5b63a
JR
208%ifarch x32
209%{__sed} -i -e '/test_coroutine.cpp/d' qa/unittests/common/CMakeLists.txt
210%endif
211
4b5aca64 212%build
26c94a74
BS
213
214build_library() {
d8fd94ea 215 mkdir -p "$1/build"
26c94a74
BS
216 cd "$1/build"
217 %cmake ..
218 %{__make} VERBOSE=1
219 cd ../..
220}
c4549a7b 221# Symbols libraries
26c94a74
BS
222build_library %{name}-symbols-%{version}
223build_library %{name}-footprints-%{version}
224build_library %{name}-templates-%{version}
b76338ad 225%if %{with packages3D}
26c94a74 226build_library %{name}-packages3D-%{version}
b76338ad 227%endif
74131d84 228
c4549a7b 229# Documentation
d8fd94ea 230mkdir -p %{name}-doc-%{version}/build
ed1b91c8
JR
231cd %{name}-doc-%{version}/build
232%cmake .. \
233 -DBUILD_FORMATS=html
1046b699 234%{__make} VERBOSE=1
ed1b91c8 235cd ../..
7e103374 236
7e103374 237# Core components
d8fd94ea 238mkdir -p build
ed1b91c8
JR
239cd build
240%cmake .. \
c4549a7b 241 -DKICAD_BUILD_VERSION="%{version}-%{release}" \
d8fd94ea
JR
242 -DKICAD_BUILD_I18N=ON \
243 -DKICAD_I18N_UNIX_STRICT_PATH=ON \
244 -DwxWidgets_CONFIG_EXECUTABLE=%{_bindir}/wx-gtk3-unicode-config \
245 -DKICAD_USE_OCC=ON \
246 -DKICAD_USE_EGL=ON \
6910bb76 247 -DKICAD_USE_BUNDLED_GLEW=OFF \
1de26e2a 248 -DKICAD_SCRIPTING=ON \
d8fd94ea 249 -DKICAD_SCRIPTING_PYTHON3=ON \
1de26e2a 250 -DKICAD_SCRIPTING_MODULES=ON \
d8fd94ea
JR
251 -DKICAD_SCRIPTING_WXPYTHON=OFF \
252 -DKICAD_SCRIPTING_WXPYTHON_PHOENIX=ON \
1de26e2a 253 %{cmake_on_off tests KICAD_BUILD_QA_TESTS}
c4549a7b
JR
254
255%{__make} VERBOSE=1
4b5aca64 256
1de26e2a
BS
257%if %{with tests}
258%{__make} test ARGS=--output-on-failure
259%endif
260
4b5aca64 261%install
262rm -rf $RPM_BUILD_ROOT
263
26c94a74
BS
264install_library() {
265 %{__make} -C $1/build install \
266 DESTDIR=$RPM_BUILD_ROOT
267}
268
c4549a7b 269# KiCAD itself
ed1b91c8 270%{__make} -C build install \
c4549a7b
JR
271 DESTDIR=$RPM_BUILD_ROOT
272
273# Symbols libraries
26c94a74
BS
274install_library %{name}-symbols-%{version}
275install_library %{name}-footprints-%{version}
276install_library %{name}-templates-%{version}
b76338ad 277%if %{with packages3D}
26c94a74 278install_library %{name}-packages3D-%{version}
b76338ad
BS
279%else
280install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/modules/packages3d
281%endif
ed1b91c8
JR
282
283# Documentation
284%{__make} -C %{name}-doc-%{version}/build install \
285 DESTDIR=$RPM_BUILD_ROOT
286
74131d84
AM
287%find_lang %{name}
288
289%post
26c94a74 290/sbin/ldconfig
74131d84
AM
291%update_mime_database
292%update_desktop_database_post
293%update_icon_cache hicolor
2a9578af 294
74131d84 295%postun
26c94a74 296/sbin/ldconfig
74131d84
AM
297%update_mime_database
298%update_desktop_database_postun
299%update_icon_cache hicolor
7a3fb9b5 300
4b5aca64 301%clean
302rm -rf $RPM_BUILD_ROOT
303
74131d84 304%files -f %{name}.lang
4b5aca64 305%defattr(644,root,root,755)
d8fd94ea 306%doc AUTHORS.txt README.md
74131d84 307%attr(755,root,root) %{_bindir}/bitmap2component
c4549a7b
JR
308%attr(755,root,root) %{_bindir}/_cvpcb.kiface
309%attr(755,root,root) %{_bindir}/dxf2idf
2d418e55 310%attr(755,root,root) %{_bindir}/eeschema
c4549a7b 311%attr(755,root,root) %{_bindir}/_eeschema.kiface
2d418e55 312%attr(755,root,root) %{_bindir}/gerbview
c4549a7b
JR
313%attr(755,root,root) %{_bindir}/_gerbview.kiface
314%attr(755,root,root) %{_bindir}/idf2vrml
315%attr(755,root,root) %{_bindir}/idfcyl
316%attr(755,root,root) %{_bindir}/idfrect
74131d84 317%attr(755,root,root) %{_bindir}/kicad
d8fd94ea
JR
318%attr(755,root,root) %{_bindir}/kicad-cli
319%attr(755,root,root) %{_bindir}/_kipython.kiface
74131d84 320%attr(755,root,root) %{_bindir}/pcb_calculator
c4549a7b 321%attr(755,root,root) %{_bindir}/_pcb_calculator.kiface
74131d84 322%attr(755,root,root) %{_bindir}/pcbnew
c4549a7b
JR
323%attr(755,root,root) %{_bindir}/_pcbnew.kiface
324%attr(755,root,root) %{_bindir}/pl_editor
325%attr(755,root,root) %{_bindir}/_pl_editor.kiface
26c94a74
BS
326%attr(755,root,root) %{_libdir}/libkicad_3dsg.so.*.*.*
327%ghost %{_libdir}/libkicad_3dsg.so
7a3fb9b5
ŁK
328%dir %{_libdir}/%{name}
329%dir %{_libdir}/%{name}/plugins
26c94a74
BS
330%dir %{_libdir}/%{name}/plugins/3d
331%attr(755,root,root) %{_libdir}/%{name}/plugins/3d/*.so
332#python - to subpackage?
d8fd94ea
JR
333%attr(755,root,root) %{py3_sitedir}/_pcbnew.so
334%{py3_sitedir}/pcbnew.py
26c94a74
BS
335%dir %{_datadir}/%{name}
336%{_datadir}/%{name}/demos
d8fd94ea 337%{_datadir}/%{name}/footprints
d8fd94ea
JR
338%{_datadir}/%{name}/plugins
339%{_datadir}/%{name}/resources
340%{_datadir}/%{name}/schemas
341%{_datadir}/%{name}/scripting
342%{_datadir}/%{name}/symbols
343%{_datadir}/%{name}/template
74131d84
AM
344%{_iconsdir}/hicolor/*x*/*/*.png
345%{_iconsdir}/hicolor/scalable/*/*.svg
26c94a74 346%{_datadir}/mime/packages/kicad-*.xml
d8fd94ea
JR
347%{_metainfodir}/org.kicad.kicad.metainfo.xml
348%{_desktopdir}/org.kicad.eeschema.desktop
349%{_desktopdir}/org.kicad.kicad.desktop
350%{_desktopdir}/org.kicad.bitmap2component.desktop
351%{_desktopdir}/org.kicad.gerbview.desktop
352%{_desktopdir}/org.kicad.pcbcalculator.desktop
353%{_desktopdir}/org.kicad.pcbnew.desktop
c4549a7b
JR
354#%{_datadir}/mimelnk/application/x-kicad-pcb.desktop
355#%{_datadir}/mimelnk/application/x-kicad-project.desktop
356#%{_datadir}/mimelnk/application/x-kicad-schematic.desktop
88bfc3ad
ER
357
358%dir %{_docdir}/%{name}
26c94a74 359
b76338ad 360%if %{with packages3D}
26c94a74
BS
361%files packages3D
362%defattr(644,root,root,755)
93c5b63a 363%{_datadir}/%{name}/3dmodels
b76338ad 364%endif
88bfc3ad
ER
365
366%files doc
367%defattr(644,root,root,755)
368%dir %{_docdir}/%{name}
88bfc3ad
ER
369%dir %{_docdir}/%{name}/help
370%{_docdir}/%{name}/help/en
88bfc3ad 371
c4549a7b
JR
372%files doc-ca
373%defattr(644,root,root,755)
374%lang(ca) %{_docdir}/%{name}/help/ca
375
88bfc3ad
ER
376%files doc-de
377%defattr(644,root,root,755)
378%lang(de) %{_docdir}/%{name}/help/de
88bfc3ad
ER
379
380%files doc-es
381%defattr(644,root,root,755)
382%lang(es) %{_docdir}/%{name}/help/es
88bfc3ad
ER
383
384%files doc-fr
385%defattr(644,root,root,755)
386%lang(fr) %{_docdir}/%{name}/help/fr
88bfc3ad 387
c4549a7b 388%files doc-id
88bfc3ad 389%defattr(644,root,root,755)
c4549a7b 390%lang(id) %{_docdir}/%{name}/help/id
88bfc3ad
ER
391
392%files doc-it
393%defattr(644,root,root,755)
394%lang(it) %{_docdir}/%{name}/help/it
88bfc3ad
ER
395
396%files doc-ja
397%defattr(644,root,root,755)
398%lang(ja) %{_docdir}/%{name}/help/ja
88bfc3ad 399
c4549a7b 400%files doc-pl
88bfc3ad 401%defattr(644,root,root,755)
c4549a7b 402%lang(pl) %{_docdir}/%{name}/help/pl
88bfc3ad
ER
403
404%files doc-ru
405%defattr(644,root,root,755)
406%lang(ru) %{_docdir}/%{name}/help/ru
26c94a74
BS
407
408%files doc-zh
409%defattr(644,root,root,755)
410%lang(zh) %{_docdir}/%{name}/help/zh
This page took 0.251361 seconds and 4 git commands to generate.