]> git.pld-linux.org Git - packages/kicad.git/blob - kicad.spec
- release 3 (by relup.sh)
[packages/kicad.git] / kicad.spec
1 # TODO:
2 # - fix mimelnk installation
3 #
4 %define ver     2013.06.11
5 %define verlong 20130611
6 Summary:        KiCad - is a GPL'd suite of programs for EDA
7 Summary(pl.UTF-8):      KiCad - zestaw programów na licencji GPL zaliczany do kategorii EDA
8 Name:           kicad
9 Version:        %{verlong}
10 Release:        3
11 License:        GPL v2+
12 Group:          X11/Applications
13 # Source files created from upstream's bazaar repository
14 # bzr export -r 4021 kicad-2013.06.11
15 # bzr export -r 263 kicad-libraries-2013.06.11
16 # bzr export -r 464 kicad-doc-2013.06.11
17 Source0:        %{name}-%{ver}.tar.bz2
18 # Source0-md5:  82ed9a23b9ef332621210eafd08101c2
19 Source1:        %{name}-doc-%{ver}.tar.bz2
20 # Source1-md5:  2ef38e351202f80f700a4ae96f898336
21 Source2:        %{name}-libraries-%{ver}.tar.bz2
22 # Source2-md5:  5b35e2f2e022fa4be6a03021a6c04493
23 Source4:        %{name}-2010.05.09.x-kicad-pcbnew.desktop
24 Source5:        pcbnew.desktop
25 Source6:        %{name}-icons.tar.bz2
26 # Source6-md5:  51459cb884444df60e55c95d50564be7
27 Source7:        Epcos-MKT-1.0.tar.bz2
28 # Source7-md5:  4dba5eca85fcec9bba491c1815963f80
29
30 # Additional librairies from Walter Lain
31 # http://smisioto.no-ip.org/elettronica/kicad/kicad-en.htm
32 # kicad-walter-libraries is manually built by downloading all available files
33 Source8:        %{name}-walter-libraries-%{ver}.tar.bz2
34 # Source8-md5:  9eba6363258b9efb552222b24b4630f2
35 Patch0:         %{name}-build.patch
36 URL:            http://www.kicad-pcb.org/
37 BuildRequires:  boost-devel
38 BuildRequires:  cmake >= 2.6.4
39 BuildRequires:  rpmbuild(macros) >= 1.600
40 BuildRequires:  sed >= 4.0
41 BuildRequires:  which
42 BuildRequires:  wxGTK2-unicode-gl-devel >= 3.0.0
43 BuildRequires:  wxWidgets-devel >= 3.0.0
44 BuildRequires:  zlib-devel
45 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
46
47 %description
48 KiCad consists of a project manager and four main programs:
49 - kicad - the project manager.
50 - eeschema - the schematic editor.
51 - cvpcb - the footprint selector for components used in the circuit
52   design.
53 - pcbnew - the PCB layout program.
54 - gerbview - the Gerber (photoplotter documents) viewer.
55
56 %description -l pl.UTF-8
57 KiCad składa się z menadżera projektów oraz czterech głównych
58 programów:
59 - kicad - menadżer projektów.
60 - eeschema - edytor schematów.
61 - cvpcb - narzędzie do wybierania elementów używanych przy
62   projektowaniu płytek drukowanych.
63 - pcbnew - program do projektowania płytek drukowanych.
64 - gerbview - przeglądarka plików Gerber (dokumentów dla fotoplotera).
65
66 %package doc
67 Summary:        Documentation for kicad
68 Summary(fr.UTF-8):      Documentations pour kicad en anglais
69 License:        GPL v2+
70 Group:          Documentation
71 %if "%{_rpmversion}" >= "5"
72 BuildArch:      noarch
73 %endif
74
75 %description doc
76 Documentation and tutorials for kicad in English
77
78 %package doc-de
79 Summary:        Documentation for Kicad in German
80 Summary(fr.UTF-8):      Documentations pour kicad en allemand
81 Group:          Documentation
82 Requires:       %{name}-doc = %{version}-%{release}
83 %if "%{_rpmversion}" >= "5"
84 BuildArch:      noarch
85 %endif
86
87 %description doc-de
88 Documentation and tutorials for Kicad in German
89
90 %package doc-es
91 Summary:        Documentation for Kicad in Spanish
92 Summary(fr.UTF-8):      Documentations pour kicad en espagnol
93 Group:          Documentation
94 Requires:       %{name}-doc = %{version}-%{release}
95 %if "%{_rpmversion}" >= "5"
96 BuildArch:      noarch
97 %endif
98
99 %description doc-es
100 Documentation and tutorials for Kicad in Spanish
101
102 %package doc-fr
103 Summary:        Documentation for Kicad in French
104 Summary(fr.UTF-8):      Documentations pour kicad en français
105 Group:          Documentation
106 Requires:       %{name}-doc = %{version}-%{release}
107 %if "%{_rpmversion}" >= "5"
108 BuildArch:      noarch
109 %endif
110
111 %description doc-fr
112 Documentation and tutorials for Kicad in French
113
114 %package doc-hu
115 Summary:        Documentation for Kicad in Hungarian
116 Summary(fr.UTF-8):      Documentations pour kicad en hongrois
117 Group:          Documentation
118 Requires:       %{name}-doc = %{version}-%{release}
119 %if "%{_rpmversion}" >= "5"
120 BuildArch:      noarch
121 %endif
122
123 %description doc-hu
124 Documentation and tutorials for Kicad in Hungarian
125
126 %package doc-it
127 Summary:        Documentation for Kicad in Italian
128 Summary(fr.UTF-8):      Documentations pour kicad en italien
129 Group:          Documentation
130 Requires:       %{name}-doc = %{version}-%{release}
131 %if "%{_rpmversion}" >= "5"
132 BuildArch:      noarch
133 %endif
134
135 %description doc-it
136 Documentation and tutorials for Kicad in Italian
137
138 %package doc-ja
139 Summary:        Documentation for Kicad in Japanese
140 Summary(fr.UTF-8):      Documentations pour kicad en japonais
141 Group:          Documentation
142 Requires:       %{name}-doc = %{version}-%{release}
143 %if "%{_rpmversion}" >= "5"
144 BuildArch:      noarch
145 %endif
146
147 %description doc-ja
148 Documentation and tutorials for Kicad in Japanese
149
150 %package doc-pl
151 Summary:        Documentation for Kicad in Polish
152 Summary(fr.UTF-8):      Documentations pour kicad en polonais
153 Group:          Documentation
154 Requires:       %{name}-doc = %{version}-%{release}
155 %if "%{_rpmversion}" >= "5"
156 BuildArch:      noarch
157 %endif
158
159 %description doc-pl
160 Documentation and tutorials for Kicad in Polish
161
162 %package doc-pt
163 Summary:        Documentation for Kicad in Portuguese
164 Summary(fr.UTF-8):      Documentations pour kicad en portugais
165 Group:          Documentation
166 Requires:       %{name}-doc = %{version}-%{release}
167 %if "%{_rpmversion}" >= "5"
168 BuildArch:      noarch
169 %endif
170
171 %description doc-pt
172 Documentation and tutorials for Kicad in Portuguese
173
174 %package doc-ru
175 Summary:        Documentation for Kicad in Russian
176 Summary(fr.UTF-8):      Documentations pour kicad en russe
177 Group:          Documentation
178 Requires:       %{name}-doc = %{version}-%{release}
179 %if "%{_rpmversion}" >= "5"
180 BuildArch:      noarch
181 %endif
182
183 %description doc-ru
184 Documentation and tutorials for Kicad in Russian
185
186 %package doc-zh_CN
187 Summary:        Documentation for Kicad in Chinese
188 Summary(fr.UTF-8):      Documentations pour kicad en chinois
189 Group:          Documentation
190 Requires:       %{name}-doc = %{version}-%{release}
191 %if "%{_rpmversion}" >= "5"
192 BuildArch:      noarch
193 %endif
194
195 %description doc-zh_CN
196 Documentation and tutorials for Kicad in Chinese
197
198 %prep
199 %setup -q -n %{name}-%{ver} -a 1 -a 2 -a 6 -a 7 -a 8
200 %patch0 -p1
201
202 #kicad-doc.noarch: W: file-not-utf8 %{_docdir}/kicad/AUTHORS.txt
203 iconv -f iso8859-1 -t utf-8 AUTHORS.txt > AUTHORS.conv && mv -f AUTHORS.conv AUTHORS.txt
204
205 %if "%{_lib}" != "lib"
206         %{__sed} -i -e "s@lib/@%{_lib}/@g" CMakeLists.txt
207 %endif
208
209 %build
210 # Add Epcos library
211 cd Epcos-MKT-1.0
212 cp -pR library ../%{name}-libraries-%{version}/
213 cp -pR modules ../%{name}-libraries-%{version}/
214 cd ..
215
216 # Add Walter libraries
217 cd %{name}-walter-libraries-%{ver}
218 cp -pR library ../%{name}-libraries-%{ver}/
219 cp -pR modules ../%{name}-libraries-%{ver}/
220 cd ..
221
222 #
223 # Symbols libraries
224 #
225 cd %{name}-libraries-%{ver}
226 install -d build
227 cd build
228 %cmake \
229         -DKICAD_STABLE_VERSION=ON \
230         ..
231
232 %{__make} \
233         VERBOSE=1
234 cd ../..
235
236 #
237 # Core components
238 #
239 install -d build
240 cd build
241 %cmake \
242         -DKICAD_STABLE_VERSION=ON \
243         -DwxWidgets_USE_STATIC=OFF \
244         -DwxWidgets_CONFIG_EXECUTABLE="%{_bindir}/wx-gtk2-unicode-config" \
245         -DKICAD_MINIZIP=ON \
246         -DKICAD_GOST=ON \
247         ..
248
249 %{__make}
250
251 %install
252 rm -rf $RPM_BUILD_ROOT
253
254 %{__make} -C build install \
255         KICAD_INTERNAT=$RPM_BUILD_ROOT%{_localedir} \
256         KICAD_PLUGINS=$RPM_BUILD_ROOT%{_libdir}/%{name}/plugins \
257         KICAD_DATA=$RPM_BUILD_ROOT%{_datadir}/%{name} \
258         KICAD_DOCS=$RPM_BUILD_ROOT%{_datadir}/%{name}/help \
259         DESTDIR=$RPM_BUILD_ROOT \
260         PREFIX=$RPM_BUILD_ROOT%{_prefix}
261
262 %{__make} -C %{name}-libraries-%{ver}/build install \
263         KICAD_INTERNAT=$RPM_BUILD_ROOT%{_localedir} \
264         KICAD_PLUGINS=$RPM_BUILD_ROOT%{_libdir}/%{name}/plugins \
265         KICAD_DATA=$RPM_BUILD_ROOT%{_datadir}/%{name} \
266         KICAD_DOCS=$RPM_BUILD_ROOT%{_datadir}/%{name}/help \
267         DESTDIR=$RPM_BUILD_ROOT \
268         PREFIX=$RPM_BUILD_ROOT%{_prefix}
269
270 # install localization
271 cd %{name}-doc-%{ver}/internat
272 for dir in bg ca cs de es fr hu it ko nl pl pt ru sl sv zh_CN; do
273         install -m 644 -D ${dir}/%{name}.mo $RPM_BUILD_ROOT%{_localedir}/${dir}/LC_MESSAGES/%{name}.mo
274 done
275 cd ../..
276
277 # install template
278 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/template
279 cp -p template/%{name}.pro $RPM_BUILD_ROOT%{_datadir}/%{name}/template
280
281 # install new mime type
282 install -pm 644 %{SOURCE4} $RPM_BUILD_ROOT%{_datadir}/mimelnk/application/x-%{name}-pcbnew.desktop
283
284 mv $RPM_BUILD_ROOT%{_datadir}/mimelnk/application/*.desktop \
285         $RPM_BUILD_ROOT%{_desktopdir}
286
287 # install mimetype and application icons
288 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/32x32/mimetypes/application-x-kicad-eeschema.png \
289         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/mimetypes/application-x-kicad-eeschema.png
290 install -D -p %{name}-icons/resources/linux/mime/icons/hicolor/32x32/apps/eeschema.png \
291         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps/eeschema.png
292 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/24x24/mimetypes/application-x-kicad-eeschema.png \
293         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/24x24/mimetypes/application-x-kicad-eeschema.png
294 install -D -p %{name}-icons/resources/linux/mime/icons/hicolor/24x24/apps/eeschema.png \
295         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/24x24/apps/eeschema.png
296 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/22x22/mimetypes/application-x-kicad-eeschema.png \
297         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/22x22/mimetypes/application-x-kicad-eeschema.png
298 install -D -p %{name}-icons/resources/linux/mime/icons/hicolor/22x22/apps/eeschema.png \
299         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/22x22/apps/eeschema.png
300 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/16x16/mimetypes/application-x-kicad-eeschema.png \
301         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/mimetypes/application-x-kicad-eeschema.png
302 install -D -p %{name}-icons/resources/linux/mime/icons/hicolor/16x16/apps/eeschema.png \
303         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/eeschema.png
304 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/32x32/mimetypes/application-x-kicad-pcbnew.png \
305         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/mimetypes/application-x-kicad-pcbnew.png
306 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/32x32/apps/pcbnew.png \
307         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps/pcbnew.png
308 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/24x24/mimetypes/application-x-kicad-pcbnew.png \
309         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/24x24/mimetypes/application-x-kicad-pcbnew.png
310 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/24x24/apps/pcbnew.png \
311         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/24x24/apps/pcbnew.png
312 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/22x22/mimetypes/application-x-kicad-pcbnew.png \
313         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/22x22/mimetypes/application-x-kicad-pcbnew.png
314 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/22x22/apps/pcbnew.png \
315         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/22x22/apps/pcbnew.png
316 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/16x16/mimetypes/application-x-kicad-pcbnew.png \
317         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/mimetypes/application-x-kicad-pcbnew.png
318 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/16x16/apps/pcbnew.png \
319         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/pcbnew.png
320
321 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/32x32/apps/kicad.png \
322         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps/kicad.png
323 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/24x24/apps/kicad.png \
324         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/24x24/apps/kicad.png
325 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/22x22/apps/kicad.png \
326         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/22x22/apps/kicad.png
327 install -pm 644 %{name}-icons/resources/linux/mime/icons/hicolor/16x16/apps/kicad.png \
328         $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/kicad.png
329
330 # Preparing for documentation pull-ups
331 %{__rm} -f  %{name}-doc-%{ver}/doc/help/CMakeLists.txt
332 %{__rm} -f  %{name}-doc-%{ver}/doc/help/makefile
333 %{__rm} -f  %{name}-doc-%{ver}/doc/tutorials/CMakeLists.txt
334
335 %{__cp} -pr %{name}-doc-%{ver}/doc/* $RPM_BUILD_ROOT%{_docdir}/%{name}
336 %{__cp} -pr AUTHORS.txt CHANGELOG* $RPM_BUILD_ROOT%{_docdir}/%{name}
337
338 %find_lang %{name}
339
340 %post
341 %update_mime_database
342 %update_desktop_database_post
343 %update_icon_cache hicolor
344
345 %postun
346 %update_mime_database
347 %update_desktop_database_postun
348 %update_icon_cache hicolor
349
350 %clean
351 rm -rf $RPM_BUILD_ROOT
352
353 %files -f %{name}.lang
354 %defattr(644,root,root,755)
355 %doc AUTHORS.txt CHANGELOG.txt Documentation
356 %attr(755,root,root) %{_bindir}/bitmap2component
357 %attr(755,root,root) %{_bindir}/cvpcb
358 %attr(755,root,root) %{_bindir}/eeschema
359 %attr(755,root,root) %{_bindir}/freeroute.jnlp
360 %attr(755,root,root) %{_bindir}/gerbview
361 %attr(755,root,root) %{_bindir}/kicad
362 %attr(755,root,root) %{_bindir}/pcb_calculator
363 %attr(755,root,root) %{_bindir}/pcbnew
364 %dir %{_libdir}/%{name}
365 %dir %{_libdir}/%{name}/plugins
366 %{_libdir}/%{name}/plugins/netlist_form_pads-pcb.xsl
367 %{_datadir}/%{name}
368 %{_desktopdir}/eeschema.desktop
369 %{_desktopdir}/%{name}.desktop
370 %{_iconsdir}/hicolor/*x*/*/*.png
371 %{_iconsdir}/hicolor/scalable/*/*.svg
372 %{_datadir}/mime/packages/kicad.xml
373 %{_desktopdir}/x-kicad-pcbnew.desktop
374 %{_desktopdir}/x-kicad-project.desktop
375 %{_desktopdir}/x-kicad-schematic.desktop
376
377 %dir %{_docdir}/%{name}
378 %{_docdir}/%{name}/*.txt
379
380 %files doc
381 %defattr(644,root,root,755)
382 %dir %{_docdir}/%{name}
383 %{_docdir}/%{name}/contrib
384 %dir %{_docdir}/%{name}/help
385 %{_docdir}/%{name}/help/en
386 %{_docdir}/%{name}/help/file_formats
387 %dir %{_docdir}/%{name}/tutorials
388 %{_docdir}/%{name}/tutorials/en
389 %{_docdir}/%{name}/scripts
390
391 %files doc-de
392 %defattr(644,root,root,755)
393 %lang(de) %{_docdir}/%{name}/help/de
394 %lang(de) %{_docdir}/%{name}/tutorials/de
395
396 %files doc-es
397 %defattr(644,root,root,755)
398 %lang(es) %{_docdir}/%{name}/help/es
399 %lang(es) %{_docdir}/%{name}/tutorials/es
400
401 %files doc-fr
402 %defattr(644,root,root,755)
403 %lang(fr) %{_docdir}/%{name}/help/fr
404 %lang(fr) %{_docdir}/%{name}/tutorials/fr
405
406 %files doc-hu
407 %defattr(644,root,root,755)
408 %lang(hu) %{_docdir}/%{name}/tutorials/hu
409
410 %files doc-it
411 %defattr(644,root,root,755)
412 %lang(it) %{_docdir}/%{name}/help/it
413 %lang(it) %{_docdir}/%{name}/tutorials/it
414
415 %files doc-ja
416 %defattr(644,root,root,755)
417 %lang(ja) %{_docdir}/%{name}/help/ja
418 %lang(ja) %{_docdir}/%{name}/tutorials/ja
419
420 %files doc-pl
421 %defattr(644,root,root,755)
422 %lang(pl) %{_docdir}/%{name}/help/pl
423 %lang(pl) %{_docdir}/%{name}/tutorials/pl
424
425 %files doc-pt
426 %defattr(644,root,root,755)
427 %lang(pt) %{_docdir}/%{name}/help/pt
428
429 %files doc-ru
430 %defattr(644,root,root,755)
431 %lang(ru) %{_docdir}/%{name}/help/ru
432 %lang(ru) %{_docdir}/%{name}/tutorials/ru
433
434 %files doc-zh_CN
435 %defattr(644,root,root,755)
436 %lang(zh_CN) %{_docdir}/%{name}/tutorials/zh_CN
This page took 0.060732 seconds and 4 git commands to generate.