]> git.pld-linux.org Git - packages/kicad.git/blob - kicad.spec
- unconditional noarch subpackages
[packages/kicad.git] / kicad.spec
1 # TODO:
2 # - fix mimelnk installation
3 #
4 # Conditional build:
5 %bcond_without  packages3D      #do not build packages3D
6
7 Summary:        KiCad - is a GPL'd suite of programs for EDA
8 Summary(pl.UTF-8):      KiCad - zestaw programów na licencji GPL zaliczany do kategorii EDA
9 Name:           kicad
10 Version:        5.1.9
11 Release:        1
12 Epoch:          1
13 License:        GPL v2+
14 Group:          X11/Applications
15 Source0:        https://gitlab.com/kicad/code/kicad/-/archive/%{version}/%{name}-%{version}.tar.gz
16 # Source0-md5:  b2c2f141b1a6342977b1192702b8d26d
17 Source1:        https://gitlab.com/kicad/services/kicad-doc/-/archive/%{version}/%{name}-doc-%{version}.tar.gz
18 # Source1-md5:  a33f909d55443a0fa313544f8a5d91e8
19 Source2:        https://gitlab.com/kicad/code/kicad-i18n/-/archive/%{version}/%{name}-i18n-%{version}.tar.gz
20 # Source2-md5:  4fceb1f3080b7db7d66d40d1a61551df
21 Source3:        https://gitlab.com/kicad/libraries/kicad-symbols/-/archive/%{version}/%{name}-symbols-%{version}.tar.bz2
22 # Source3-md5:  62537b0b9d3492c01aa59ec09d599f58
23 Source4:        https://gitlab.com/kicad/libraries/kicad-footprints/-/archive/%{version}/%{name}-footprints-%{version}.tar.bz2
24 # Source4-md5:  ce648b6deb4cea3e2003e43bb07c1477
25 Source5:        https://gitlab.com/kicad/libraries/kicad-packages3D/-/archive/%{version}/%{name}-packages3D-%{version}.tar.bz2
26 # Source5-md5:  ef42e74c7c92303d8853b830a196df3b
27 Source6:        https://gitlab.com/kicad/libraries/kicad-templates/-/archive/%{version}/%{name}-templates-%{version}.tar.bz2
28 # Source6-md5:  8fa78fabd2d121712875446e0bd05af4
29 Patch0:         nostrip.patch
30 URL:            http://www.kicad-pcb.org/
31 BuildRequires:  GLM >= 0.9.9.4
32 BuildRequires:  OCE-devel
33 BuildRequires:  appstream-glib
34 BuildRequires:  asciidoc
35 BuildRequires:  boost-devel
36 BuildRequires:  cmake >= 2.6.4
37 BuildRequires:  curl-devel
38 BuildRequires:  dblatex
39 BuildRequires:  desktop-file-utils
40 BuildRequires:  doxygen
41 BuildRequires:  glew-devel
42 BuildRequires:  ngspice-devel
43 BuildRequires:  openssl-devel
44 BuildRequires:  perl-Unicode-LineBreak
45 BuildRequires:  po4a >= 0.51
46 BuildRequires:  python-wxPython-devel
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-nl < 1:5.1.0-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 BuildArch:      noarch
83 Requires:       kicad >= 1:5.0.0
84
85 %description library
86 Symbols, footprints and templates for kicad.
87
88 %description -l pl.UTF-8
89 Symbole, obudowy i wzorce dla kicad.
90
91 %package packages3D
92 Summary:        Packages3D for kicad
93 Summary(pl.UTF-8):      Trójwymiarowe modele obudów dla kicad
94 BuildArch:      noarch
95 Requires:       kicad >= 1:5.0.0
96
97 %description packages3D
98 Packages3D for kicad
99
100 %description -l pl.UTF-8
101 Trójwymiarowe modele obudów dla kicad.
102
103 %package doc
104 Summary:        Documentation for kicad
105 Summary(fr.UTF-8):      Documentations pour kicad en anglais
106 License:        GPL v2+
107 Group:          Documentation
108 BuildArch:      noarch
109
110 %description doc
111 Documentation and tutorials for kicad in English
112
113 %package doc-ca
114 Summary:        Documentation for Kicad in Catalan
115 Group:          Documentation
116 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
117 BuildArch:      noarch
118
119 %description doc-ca
120 Documentation and tutorials for Kicad in Catalan.
121
122 %package doc-de
123 Summary:        Documentation for Kicad in German
124 Summary(fr.UTF-8):      Documentations pour kicad en allemand
125 Group:          Documentation
126 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
127 BuildArch:      noarch
128
129 %description doc-de
130 Documentation and tutorials for Kicad in German.
131
132 %package doc-es
133 Summary:        Documentation for Kicad in Spanish
134 Summary(fr.UTF-8):      Documentations pour kicad en espagnol
135 Group:          Documentation
136 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
137 BuildArch:      noarch
138
139 %description doc-es
140 Documentation and tutorials for Kicad in Spanish.
141
142 %package doc-fr
143 Summary:        Documentation for Kicad in French
144 Summary(fr.UTF-8):      Documentations pour kicad en français
145 Group:          Documentation
146 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
147 BuildArch:      noarch
148
149 %description doc-fr
150 Documentation and tutorials for Kicad in French.
151
152 %package doc-id
153 Summary:        Documentation for Kicad in Indonesian
154 Group:          Documentation
155 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
156 BuildArch:      noarch
157
158 %description doc-id
159 Documentation and tutorials for Kicad in Indonesian.
160
161 %package doc-it
162 Summary:        Documentation for Kicad in Italian
163 Summary(fr.UTF-8):      Documentations pour kicad en italien
164 Group:          Documentation
165 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
166 BuildArch:      noarch
167
168 %description doc-it
169 Documentation and tutorials for Kicad in Italian.
170
171 %package doc-ja
172 Summary:        Documentation for Kicad in Japanese
173 Summary(fr.UTF-8):      Documentations pour kicad en japonais
174 Group:          Documentation
175 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
176 BuildArch:      noarch
177
178 %description doc-ja
179 Documentation and tutorials for Kicad in Japanese.
180
181 %package doc-pl
182 Summary:        Documentation for Kicad in Polish
183 Summary(fr.UTF-8):      Documentations pour kicad en polonais
184 Group:          Documentation
185 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
186 BuildArch:      noarch
187
188 %description doc-pl
189 Documentation and tutorials for Kicad in Polish.
190
191 %package doc-ru
192 Summary:        Documentation for Kicad in Russian
193 Summary(fr.UTF-8):      Documentations pour kicad en russe
194 Group:          Documentation
195 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
196 BuildArch:      noarch
197
198 %description doc-ru
199 Documentation and tutorials for Kicad in Russian.
200
201 %package doc-zh
202 Summary:        Documentation for Kicad in Chinese
203 Summary(fr.UTF-8):      Documentations pour kicad en chinois
204 Group:          Documentation
205 Requires:       %{name}-doc = %{epoch}:%{version}-%{release}
206 BuildArch:      noarch
207
208 %description doc-zh
209 Documentation and tutorials for Kicad in Chinese.
210
211 %prep
212 %setup -q -a 1 -a 2 -a 3 -a 4 %{?with_packages3D:-a 5} -a 6
213 %patch0 -p1
214
215 %build
216
217 build_library() {
218   mkdir "$1/build"
219   cd "$1/build"
220   %cmake ..
221   %{__make} VERBOSE=1
222   cd ../..
223 }
224 # Symbols libraries
225 build_library %{name}-symbols-%{version}
226 build_library %{name}-footprints-%{version}
227 build_library %{name}-templates-%{version}
228 %if %{with packages3D}
229 build_library %{name}-packages3D-%{version}
230 %endif
231
232 # Documentation
233 mkdir %{name}-doc-%{version}/build
234 cd %{name}-doc-%{version}/build
235 %cmake .. \
236         -DBUILD_FORMATS=html
237 %{__make} VERBOSE=1
238 cd ../..
239
240 # Translations
241 mkdir %{name}-i18n-%{version}/build
242 cd %{name}-i18n-%{version}/build
243 %cmake .. \
244         -DKICAD_I18N_UNIX_STRICT_PATH=ON
245 %{__make} VERBOSE=1
246 cd ../..
247
248 # Core components
249 mkdir build
250 cd build
251 %cmake .. \
252         -DKICAD_SKIP_BOOST=ON \
253         -DKICAD_BUILD_VERSION="%{version}-%{release}" \
254         -DwxWidgets_CONFIG_EXECUTABLE=%{_bindir}/wx-gtk2-unicode-config \
255         -DKICAD_SCRIPTING=ON -DKICAD_SCRIPTING_MODULES=ON -DKICAD_SCRIPTING_WXPYTHON=ON
256
257 %{__make} VERBOSE=1
258
259 %install
260 rm -rf $RPM_BUILD_ROOT
261
262 install_library() {
263   %{__make} -C $1/build install \
264         DESTDIR=$RPM_BUILD_ROOT
265 }
266
267 # KiCAD itself
268 %{__make} -C build install \
269         DESTDIR=$RPM_BUILD_ROOT
270
271 # Symbols libraries
272 install_library %{name}-symbols-%{version}
273 install_library %{name}-footprints-%{version}
274 install_library %{name}-templates-%{version}
275 %if %{with packages3D}
276 install_library %{name}-packages3D-%{version}
277 %else
278 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/modules/packages3d
279 %endif
280
281 # Documentation
282 %{__make} -C %{name}-doc-%{version}/build install \
283         DESTDIR=$RPM_BUILD_ROOT
284
285 # Translations
286 %{__make} -C %{name}-i18n-%{version}/build install \
287         DESTDIR=$RPM_BUILD_ROOT
288
289 %find_lang %{name}
290
291 %post
292 /sbin/ldconfig
293 %update_mime_database
294 %update_desktop_database_post
295 %update_icon_cache hicolor
296
297 %postun
298 /sbin/ldconfig
299 %update_mime_database
300 %update_desktop_database_postun
301 %update_icon_cache hicolor
302
303 %clean
304 rm -rf $RPM_BUILD_ROOT
305
306 %files -f %{name}.lang
307 %defattr(644,root,root,755)
308 %doc AUTHORS.txt Documentation
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}/kicad2step
321 %attr(755,root,root) %{_bindir}/pcb_calculator
322 %attr(755,root,root) %{_bindir}/_pcb_calculator.kiface
323 %attr(755,root,root) %{_bindir}/pcbnew
324 %attr(755,root,root) %{_bindir}/_pcbnew.kiface
325 %attr(755,root,root) %{_bindir}/pl_editor
326 %attr(755,root,root) %{_bindir}/_pl_editor.kiface
327 %attr(755,root,root) %{_libdir}/libkicad_3dsg.so.*.*.*
328 %ghost %{_libdir}/libkicad_3dsg.so
329 %dir %{_libdir}/%{name}
330 %dir %{_libdir}/%{name}/plugins
331 %dir %{_libdir}/%{name}/plugins/3d
332 %attr(755,root,root) %{_libdir}/%{name}/plugins/3d/*.so
333 #python - to subpackage?
334 %attr(755,root,root) %{_libdir}/python2.7/site-packages/_pcbnew.so
335 %{_libdir}/python2.7/site-packages/pcbnew.py
336 %dir %{_datadir}/%{name}
337 %{_datadir}/%{name}/demos
338 %{_datadir}/%{name}/plugins
339 %{_datadir}/%{name}/scripting
340 %dir %{_datadir}/%{name}/library
341 %dir %{_datadir}/%{name}/modules
342 %dir %{_datadir}/%{name}/modules/packages3d
343 %dir %{_datadir}/%{name}/template
344 %{_iconsdir}/hicolor/*x*/*/*.png
345 %{_iconsdir}/hicolor/scalable/*/*.svg
346 %{_datadir}/mime/packages/kicad-*.xml
347 %{_datadir}/appdata/kicad.appdata.xml
348 %{_desktopdir}/eeschema.desktop
349 %{_desktopdir}/%{name}.desktop
350 %{_desktopdir}/bitmap2component.desktop
351 %{_desktopdir}/gerbview.desktop
352 %{_desktopdir}/pcbcalculator.desktop
353 %{_desktopdir}/pcbnew.desktop
354 #%{_datadir}/mimelnk/application/x-kicad-pcb.desktop
355 #%{_datadir}/mimelnk/application/x-kicad-project.desktop
356 #%{_datadir}/mimelnk/application/x-kicad-schematic.desktop
357
358 %dir %{_docdir}/%{name}
359
360 %files library
361 %defattr(644,root,root,755)
362 %{_datadir}/%{name}/library/*
363 %{_datadir}/%{name}/modules/*.pretty
364 %{_datadir}/%{name}/template/*
365
366 %if %{with packages3D}
367 %files packages3D
368 %defattr(644,root,root,755)
369 %{_datadir}/%{name}/modules/packages3d/*
370 %endif
371
372 %files doc
373 %defattr(644,root,root,755)
374 %dir %{_docdir}/%{name}
375 %dir %{_docdir}/%{name}/help
376 %{_docdir}/%{name}/help/en
377 %{_docdir}/%{name}/scripts
378
379 %files doc-ca
380 %defattr(644,root,root,755)
381 %lang(ca) %{_docdir}/%{name}/help/ca
382
383 %files doc-de
384 %defattr(644,root,root,755)
385 %lang(de) %{_docdir}/%{name}/help/de
386
387 %files doc-es
388 %defattr(644,root,root,755)
389 %lang(es) %{_docdir}/%{name}/help/es
390
391 %files doc-fr
392 %defattr(644,root,root,755)
393 %lang(fr) %{_docdir}/%{name}/help/fr
394
395 %files doc-id
396 %defattr(644,root,root,755)
397 %lang(id) %{_docdir}/%{name}/help/id
398
399 %files doc-it
400 %defattr(644,root,root,755)
401 %lang(it) %{_docdir}/%{name}/help/it
402
403 %files doc-ja
404 %defattr(644,root,root,755)
405 %lang(ja) %{_docdir}/%{name}/help/ja
406
407 %files doc-pl
408 %defattr(644,root,root,755)
409 %lang(pl) %{_docdir}/%{name}/help/pl
410
411 %files doc-ru
412 %defattr(644,root,root,755)
413 %lang(ru) %{_docdir}/%{name}/help/ru
414
415 %files doc-zh
416 %defattr(644,root,root,755)
417 %lang(zh) %{_docdir}/%{name}/help/zh
This page took 0.111297 seconds and 3 git commands to generate.