lib: Improving error reporting in raw channel.
[barry.git] / rpm / barry.spec
blobd998a749ef344f1da9d40680e1e72cf5d2f99453
1 %dump
3 # always build with GUI
4 %define with_gui 1
6 # Fedora 9 doesn't support opensync 0.22
7 %if 0%{?fc9}
8 %define with_opensync 0
9 %else
10 %define with_opensync 1
11 %endif
13 # Fedora 12 has the desktop packages installed for our build system
14 %if 0%{?fc12} || 0%{?fc13} || 0%{?fc14}
15 %define with_desktop 1
16 %else
17 %define with_desktop 0
18 %endif
20 %if 0%{?fc12} || 0%{?fc13} || 0%{?fc14}
21 %define use_69_rules 1
22 %else
23 %define use_69_rules 0
24 %endif
27 Summary: BlackBerry(tm) Desktop for Linux
28 Name: barry
29 Version: 0.18.0
30 Release: 0
31 Group: Applications/Productivity
32 License: GPLv2+
33 Source: %{name}-%{version}.tar.bz2
34 URL: http://www.netdirect.ca/software/packages/barry
35 Vendor: Net Direct Inc.
36 BuildRoot: %{_tmppath}/%{name}-%{release}-%{version}-root
38 %if 0%{?suse_version}
39 BuildRequires: libusb, gcc-c++, pkgconfig, boost-devel, fuse-devel, zlib-devel
40 %else
41 BuildRequires: libusb-devel, gcc-c++, pkgconfig, boost-devel, fuse-devel, zlib-devel
42 %endif
44 %if %{with_gui}
45 BuildRequires: desktop-file-utils
46 %endif
48 # desktop tree
49 %if %{with_desktop}
50 BuildRequires: wxGTK-devel
51 %endif
53 %define barryroot %{_builddir}/%{name}-%{version}
55 %description
56 Barry is a desktop toolset for managing your BlackBerry(tm) device. (BlackBerry
57 is a registered trademark of Research in Motion Limited.)
60 %package -n libbarry0
61 Summary: BlackBerry(tm) Desktop for Linux - libbarry libraries
62 Group: Development/Libraries
63 Requires: libusb boost
65 %description -n libbarry0
66 Barry is a desktop toolset for managing your BlackBerry(tm) device. (BlackBerry
67 is a registered trademark of Research in Motion Limited.)
69 This package contains the library files, license agreement, README file,
70 and most other assorted documentation common to all sub-packages. You most
71 likely want to also install barry-util and barry-gui.
74 %package -n libbarry-devel
75 Summary: BlackBerry(tm) Desktop for Linux - libbarry libraries
76 Group: Development/Libraries
77 %if 0%{?suse_version}
78 Requires: libbarry0 libusb boost-devel
79 %else
80 Requires: libbarry0 libusb-devel boost-devel
81 %endif
83 %description -n libbarry-devel
84 Barry is a desktop toolset for managing your BlackBerry(tm) device. (BlackBerry
85 is a registered trademark of Research in Motion Limited.)
87 This package contains the development library files for Barry, libbarry.
90 %package util
91 Summary: BlackBerry(tm) Desktop for Linux - bcharge, btool, breset, bio and others
92 Group: Applications/Productivity
93 Requires: libbarry0 fuse
94 Conflicts: barry-bcharge
96 %description util
97 Barry is a desktop toolset for managing your BlackBerry(tm) device. (BlackBerry
98 is a registered trademark of Research in Motion Limited.)
100 This package contains the commandline tools bcharge, btool, breset, bio and
101 others which will enable you to charge your device with a proper 500mA
102 and be able to access the data on the device in many ways.
105 %if %{with_gui}
106 %package gui
107 Summary: BlackBerry(tm) Desktop for Linux - bcharge, btool, breset and others
108 Group: Applications/Productivity
109 %if 0%{?suse_version}
110 Requires: libbarry0 gtkmm2 libglademm libtar
111 BuildRequires: gtkmm2-devel libglademm-devel libtar-devel
112 %else
113 Requires: libbarry0 gtkmm24 libglademm24 libtar
114 BuildRequires: gtkmm24-devel libglademm24-devel libtar-devel
115 %endif
117 %description gui
118 Barry is a desktop toolset for managing your BlackBerry(tm) device. (BlackBerry
119 is a registered trademark of Research in Motion Limited.)
121 This package contains the GUI applications built on top of libbarry.
122 %endif
125 %if %{with_opensync}
126 %package opensync
127 Summary: BlackBerry(tm) Desktop for Linux - opensync plugin
128 Group: Applications/Productivity
129 Requires: libbarry0, libopensync >= 0.22
130 BuildRequires: libopensync-devel
132 %description opensync
133 Barry is a desktop toolset for managing your BlackBerry(tm) device. (BlackBerry
134 is a registered trademark of Research in Motion Limited.)
136 This package contains the opensync plugin.
137 %endif
139 # desktop tree
140 %if %{with_desktop}
141 %package desktop
142 Summary: BlackBerry(tm) Desktop Panel GUI for Linux
143 Group: Applications/Productivity
144 Requires: libbarry0, libopensync >= 0.22
145 BuildRequires: wxGTK-devel
147 %description desktop
148 Barry is a desktop toolset for managing your BlackBerry(tm) device. (BlackBerry
149 is a registered trademark of Research in Motion Limited.)
151 This package contains the desktop panel GUI.
152 %endif
154 %prep
155 %setup -q
157 %build
158 # main tree
159 %{configure} --enable-boost --enable-nls --with-zlib
160 %{__make} %{?_smp_mflags}
162 # gui tree
163 %if %{with_gui}
164 cd gui/
165 %{configure} PKG_CONFIG_PATH="..:$PKG_CONFIG_PATH" CXXFLAGS="-I../.." LDFLAGS="-L../../src" --enable-nls
166 %{__make} %{?_smp_mflags}
167 cd ../
168 %endif
170 # opensync tree
171 %if %{with_opensync}
172 cd opensync-plugin/
173 %{configure} PKG_CONFIG_PATH="..:$PKG_CONFIG_PATH" CXXFLAGS="-I../.." LDFLAGS="-L../../src" --enable-nls
174 %{__make} %{?_smp_mflags}
175 cd ../
176 %endif
178 # desktop tree
179 %if %{with_desktop}
180 cd desktop/
181 %{configure} PKG_CONFIG_PATH="..:$PKG_CONFIG_PATH" CXXFLAGS="-I../.." LDFLAGS="-L../../src" --enable-nls
182 %{__make} %{?_smp_mflags}
183 cd ../
184 %endif
186 %install
187 # main tree
188 %{__make} DESTDIR=%{buildroot} install
189 # delete some test-only programs
190 %{__rm} -f %{buildroot}%{_bindir}/bdptest
191 %{__rm} -f %{buildroot}%{_bindir}/bjvmdebug
192 # proceed as usual...
193 %{__mkdir_p} %{buildroot}%{_sysconfdir}/udev/rules.d
194 %{__cp} udev/10-blackberry.rules %{buildroot}%{_sysconfdir}/udev/rules.d/
195 %if %{use_69_rules}
196 %{__cp} udev/69-blackberry.rules %{buildroot}%{_sysconfdir}/udev/rules.d/
197 %else
198 %{__cp} udev/99-blackberry-perms.rules %{buildroot}%{_sysconfdir}/udev/rules.d/
199 %endif
200 %{__mkdir_p} %{buildroot}%{_sysconfdir}/modprobe.d
201 %{__cp} modprobe/blacklist-berry_charge.conf %{buildroot}%{_sysconfdir}/modprobe.d/
202 %{__mkdir_p} %{buildroot}%{_sysconfdir}/ppp/peers
203 %{__cp} ppp/barry-rogers %{buildroot}%{_sysconfdir}/ppp/peers/
204 %{__cp} ppp/barry-minimal %{buildroot}%{_sysconfdir}/ppp/peers/
205 %{__cp} ppp/barry-verizon %{buildroot}%{_sysconfdir}/ppp/peers/
206 %{__cp} ppp/barry-sprint %{buildroot}%{_sysconfdir}/ppp/peers/
207 %{__cp} ppp/barry-telus %{buildroot}%{_sysconfdir}/ppp/peers/
208 %{__cp} ppp/barry-o2ireland %{buildroot}%{_sysconfdir}/ppp/peers/
209 %{__cp} ppp/barry-tmobileus %{buildroot}%{_sysconfdir}/ppp/peers/
210 %{__cp} ppp/barry-att_cingular %{buildroot}%{_sysconfdir}/ppp/peers/
211 %{__cp} ppp/barry-chinamobile %{buildroot}%{_sysconfdir}/ppp/peers/
212 %{__cp} ppp/barry-kpn %{buildroot}%{_sysconfdir}/ppp/peers/
213 %{__cp} ppp/barry-orange-spain %{buildroot}%{_sysconfdir}/ppp/peers/
214 %{__cp} ppp/barry-optus-au %{buildroot}%{_sysconfdir}/ppp/peers/
215 %{__cp} ppp/barry-vodafone-au %{buildroot}%{_sysconfdir}/ppp/peers/
216 %{__mkdir_p} %{buildroot}%{_sysconfdir}/chatscripts
217 %{__cp} ppp/barry-rogers.chat %{buildroot}%{_sysconfdir}/chatscripts/
218 %{__cp} ppp/barry-minimal.chat %{buildroot}%{_sysconfdir}/chatscripts/
219 %{__cp} ppp/barry-verizon.chat %{buildroot}%{_sysconfdir}/chatscripts/
220 %{__cp} ppp/barry-sprint.chat %{buildroot}%{_sysconfdir}/chatscripts/
221 %{__cp} ppp/barry-telus.chat %{buildroot}%{_sysconfdir}/chatscripts/
222 %{__cp} ppp/barry-o2ireland.chat %{buildroot}%{_sysconfdir}/chatscripts/
223 %{__cp} ppp/barry-tmobileus.chat %{buildroot}%{_sysconfdir}/chatscripts/
224 %{__cp} ppp/barry-att_cingular.chat %{buildroot}%{_sysconfdir}/chatscripts/
225 %{__cp} ppp/barry-chinamobile.chat %{buildroot}%{_sysconfdir}/chatscripts/
226 %{__cp} ppp/barry-kpn.chat %{buildroot}%{_sysconfdir}/chatscripts/
227 %{__cp} ppp/barry-orange-spain.chat %{buildroot}%{_sysconfdir}/chatscripts/
228 %{__cp} ppp/barry-optus-au.chat %{buildroot}%{_sysconfdir}/chatscripts/
229 %{__cp} ppp/barry-vodafone-au.chat %{buildroot}%{_sysconfdir}/chatscripts/
230 # Install hal fdi config
231 %{__mkdir_p} %{buildroot}%{_datadir}/hal/fdi/information/10freedesktop
232 %{__mkdir_p} %{buildroot}%{_datadir}/hal/fdi/policy/10osvendor
233 %{__cp} hal/fdi/information/10freedesktop/10-blackberry.fdi %{buildroot}%{_datadir}/hal/fdi/information/10freedesktop
234 %{__cp} hal/fdi/policy/10osvendor/19-blackberry-acl.fdi %{buildroot}%{_datadir}/hal/fdi/policy/10osvendor
235 # Install hal support script
236 %{__mkdir_p} %{buildroot}%{_bindir}
237 %{__cp} hal/hal-blackberry %{buildroot}%{_bindir}
238 # Install bash completion scripts
239 %{__mkdir_p} %{buildroot}%{_sysconfdir}/bash_completion.d
240 %{__cp} bash/bjavaloader %{buildroot}%{_sysconfdir}/bash_completion.d
241 %{__cp} bash/btool %{buildroot}%{_sysconfdir}/bash_completion.d
243 # gui tree
244 %if %{with_gui}
245 cd gui/
246 %{__make} DESTDIR=%{buildroot} install
247 # Install barry logo icon
248 cd ../
249 %{__mkdir_p} %{buildroot}%{_datadir}/pixmaps
250 %{__cp} logo/barry_logo_icon.png %{buildroot}%{_datadir}/pixmaps
251 desktop-file-install --vendor netdirect \
252 --dir %{buildroot}%{_datadir}/applications \
253 menu/barrybackup.desktop
254 %endif
256 # opensync tree
257 %if %{with_opensync}
258 cd opensync-plugin/
259 %{__make} DESTDIR=%{buildroot} install
260 cd ../
261 %endif
263 # desktop tree
264 %if %{with_desktop}
265 cd desktop/
266 %{__make} DESTDIR=%{buildroot} install
267 cd ../
268 %{__cp} logo/barry_logo_icon.png %{buildroot}%{_datadir}/pixmaps/barry_desktop_icon.png
269 desktop-file-install --vendor netdirect \
270 --dir %{buildroot}%{_datadir}/applications \
271 menu/barrydesktop.desktop
272 %endif
274 %files -n libbarry0
275 %defattr(-,root,root)
276 %attr(-,root,root) %{_libdir}/*.so*
277 %doc AUTHORS ChangeLog COPYING NEWS README
279 %files -n libbarry-devel
280 %defattr(-,root,root)
281 %attr(0644,root,root) %{_includedir}/barry/*
282 %attr(0644,root,root) %{_libdir}/*.a
283 %attr(0755,root,root) %{_libdir}/*.la
284 %attr(0644,root,root) %{_libdir}/pkgconfig/*.pc
285 %doc COPYING TODO doc/* examples/*.cc
287 %files util
288 %defattr(-,root,root)
289 %attr(0755,root,root) %{_sbindir}/bcharge
290 %attr(0755,root,root) %{_sbindir}/breset
291 %attr(0755,root,root) %{_sbindir}/pppob
292 %attr(0755,root,root) %{_bindir}/btool
293 %attr(0755,root,root) %{_bindir}/bio
294 %attr(0755,root,root) %{_bindir}/btardump
295 %attr(0755,root,root) %{_bindir}/bfuse
296 %attr(0755,root,root) %{_bindir}/bjavaloader
297 %attr(0755,root,root) %{_bindir}/balxparse
298 %attr(0755,root,root) %{_bindir}/bjdwp
299 %attr(0755,root,root) %{_bindir}/brawchannel
300 %attr(0755,root,root) %{_bindir}/bs11nread
301 %attr(0755,root,root) %{_bindir}/bidentify
302 %attr(0755,root,root) %{_bindir}/brecsum
303 %attr(0755,root,root) %{_bindir}/upldif
304 %attr(0755,root,root) %{_bindir}/bktrans
305 %attr(0755,root,root) %{_bindir}/btranslate
306 %attr(0755,root,root) %{_bindir}/brimtrans
307 %attr(0755,root,root) %{_bindir}/hal-blackberry
308 %attr(0644,root,root) %{_mandir}/man1/btool*
309 %attr(0644,root,root) %{_mandir}/man1/bio*
310 %attr(0644,root,root) %{_mandir}/man1/btardump*
311 %attr(0644,root,root) %{_mandir}/man1/bfuse*
312 %attr(0644,root,root) %{_mandir}/man1/bjavaloader*
313 %attr(0644,root,root) %{_mandir}/man1/balxparse*
314 %attr(0644,root,root) %{_mandir}/man1/bjdwp*
315 %attr(0644,root,root) %{_mandir}/man1/brawchannel*
316 %attr(0644,root,root) %{_mandir}/man1/bs11nread*
317 %attr(0644,root,root) %{_mandir}/man1/bidentify*
318 %attr(0644,root,root) %{_mandir}/man1/bcharge*
319 %attr(0644,root,root) %{_mandir}/man1/pppob*
320 %attr(0644,root,root) %{_mandir}/man1/brecsum*
321 %attr(0644,root,root) %{_mandir}/man1/breset*
322 %attr(0644,root,root) %{_mandir}/man1/upldif*
323 %attr(0644,root,root) %{_datadir}/locale/*
324 %attr(0644,root,root) %{_datadir}/hal/fdi/information/10freedesktop/10-blackberry.fdi
325 %attr(0644,root,root) %{_datadir}/hal/fdi/policy/10osvendor/19-blackberry-acl.fdi
326 %attr(0644,root,root) %config %{_sysconfdir}/udev/rules.d/*
327 %attr(0644,root,root) %config %{_sysconfdir}/modprobe.d/blacklist-berry_charge.conf
328 %attr(0644,root,root) %config %{_sysconfdir}/ppp/peers/barry-rogers
329 %attr(0644,root,root) %config %{_sysconfdir}/ppp/peers/barry-minimal
330 %attr(0644,root,root) %config %{_sysconfdir}/ppp/peers/barry-verizon
331 %attr(0644,root,root) %config %{_sysconfdir}/ppp/peers/barry-sprint
332 %attr(0644,root,root) %config %{_sysconfdir}/ppp/peers/barry-telus
333 %attr(0644,root,root) %config %{_sysconfdir}/ppp/peers/barry-o2ireland
334 %attr(0644,root,root) %config %{_sysconfdir}/ppp/peers/barry-tmobileus
335 %attr(0644,root,root) %config %{_sysconfdir}/ppp/peers/barry-att_cingular
336 %attr(0644,root,root) %config %{_sysconfdir}/ppp/peers/barry-chinamobile
337 %attr(0644,root,root) %config %{_sysconfdir}/ppp/peers/barry-kpn
338 %attr(0644,root,root) %config %{_sysconfdir}/ppp/peers/barry-orange-spain
339 %attr(0644,root,root) %config %{_sysconfdir}/ppp/peers/barry-optus-au
340 %attr(0644,root,root) %config %{_sysconfdir}/ppp/peers/barry-vodafone-au
341 %attr(0640,root,root) %config %{_sysconfdir}/chatscripts/barry-rogers.chat
342 %attr(0640,root,root) %config %{_sysconfdir}/chatscripts/barry-minimal.chat
343 %attr(0640,root,root) %config %{_sysconfdir}/chatscripts/barry-verizon.chat
344 %attr(0640,root,root) %config %{_sysconfdir}/chatscripts/barry-sprint.chat
345 %attr(0640,root,root) %config %{_sysconfdir}/chatscripts/barry-telus.chat
346 %attr(0640,root,root) %config %{_sysconfdir}/chatscripts/barry-o2ireland.chat
347 %attr(0640,root,root) %config %{_sysconfdir}/chatscripts/barry-tmobileus.chat
348 %attr(0640,root,root) %config %{_sysconfdir}/chatscripts/barry-att_cingular.chat
349 %attr(0640,root,root) %config %{_sysconfdir}/chatscripts/barry-chinamobile.chat
350 %attr(0640,root,root) %config %{_sysconfdir}/chatscripts/barry-kpn.chat
351 %attr(0640,root,root) %config %{_sysconfdir}/chatscripts/barry-orange-spain.chat
352 %attr(0640,root,root) %config %{_sysconfdir}/chatscripts/barry-optus-au.chat
353 %attr(0640,root,root) %config %{_sysconfdir}/chatscripts/barry-vodafone-au.chat
354 %attr(0640,root,root) %config %{_sysconfdir}/bash_completion.d/bjavaloader
355 %attr(0640,root,root) %config %{_sysconfdir}/bash_completion.d/btool
356 %doc COPYING
357 %doc zsh
358 %doc ppp/README
360 %if %{with_gui}
361 %files gui
362 %defattr(-,root,root)
363 %attr(0755,root,root) %{_bindir}/barrybackup
364 %attr(0644,root,root) %{_datadir}/barry/glade/*.glade
365 %attr(0644,root,root) %{_datadir}/pixmaps/barry_logo_icon.png
366 %attr(0644,root,root) %{_datadir}/applications/*barrybackup.desktop
367 %attr(0644,root,root) %{_mandir}/man1/barrybackup*
368 %doc COPYING
369 %endif
371 %if %{with_opensync}
372 %files opensync
373 %defattr(-,root,root)
374 %attr(0755,root,root) %{_libdir}/opensync/plugins/*
375 %attr(0644,root,root) %{_datadir}/opensync/defaults/*
376 %doc COPYING
377 %endif
379 # desktop tree
380 %if %{with_desktop}
381 %files desktop
382 %defattr(-,root,root)
383 %attr(0755,root,root) %{_bindir}/barrydesktop
384 %attr(0755,root,root) %{_bindir}/bsyncjail
385 %attr(0755,root,root) %{_bindir}/bsynccl
386 %attr(0644,root,root) %{_datadir}/barry/desktop/0.22/*
387 %attr(0644,root,root) %{_datadir}/barry/desktop/0.40/*
388 %attr(0644,root,root) %{_datadir}/barry/desktop/images/*.png
389 %attr(0644,root,root) %{_datadir}/pixmaps/barry_desktop_icon.png
390 %attr(0644,root,root) %{_datadir}/applications/*barrydesktop.desktop
391 %attr(0644,root,root) %{_mandir}/man1/barrydesktop*
392 %doc COPYING
393 %endif
395 %clean
396 [ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot}
397 [ "%{barryroot}" != "/" ] && %{__rm} -rf %{barryroot}
399 %post -n libbarry0
400 /sbin/ldconfig
402 %postun -n libbarry0
403 /sbin/ldconfig
405 %changelog
406 * Thu Feb 10 2011 Chris Frey <cdfrey@foursquare.net> 0.18.0-0
407 - version bump
409 * Fri May 28 2010 Chris Frey <cdfrey@foursquare.net> 0.17.0-0
410 - version bump
411 - added NLS support
412 - cleaned up conditionals
413 - added Fedora 13 support
414 - added new ppp chat scripts for Orange Spain, Optus and Vodafone AU
415 - added copy of barry-sprint as barry-telus
416 - added brawchannel, btardump, bio, and balxparse
417 - added desktop support
418 - cleaned up desktop variables
420 * Sat Sep 29 2009 Chris Frey <cdfrey@foursquare.net> 0.16-0
421 - version bump
422 - added new ppp chat script for KPN Nederland
423 - using new udev rules set
424 - added bjdwp and manpage, and removed some test-only programs
425 - added bash and zsh completion scripts
426 - added .desktop file and icon for barrybackup
428 * Fri Apr 10 2009 Chris Frey <cdfrey@foursquare.net> 0.15-0
429 - version bump
430 - added HAL FDI scripts
431 - added bjavaloader and bfuse
432 - updated for udev directory reorganization in Barry source tree
433 - added zlib-devel to BuildRequires list
434 - added brimtrans
436 * Wed Sep 24 2008 Chris Frey <cdfrey@foursquare.net> 0.14-0
437 - version bump
438 - added new ppp chat script for T-Mobile US
439 - renamed libbarry to libbarry0
441 * Thu May 29 2008 Chris Frey <cdfrey@foursquare.net> 0.13-1
442 - version bump
443 - added brecsum
444 - added ppp options and chat scripts
445 - added manpages for pppob, brecsum, breset, upldif, barrybackup
446 - spec file now assumes gui and opensync, with conditional checks depending on host
448 * Fri Dec 07 2007 Chris Frey <cdfrey@foursquare.net> 0.12-1
449 - version bump
451 * Fri Nov 30 2007 Chris Frey <cdfrey@foursquare.net> 0.11-1
452 - version bump
454 * Fri Nov 30 2007 Chris Frey <cdfrey@foursquare.net> 0.10-1
455 - version bump
456 - removed ktrans and translate from rpm package
457 - added bidentify
459 * Thu Aug 09 2007 Chris Frey <cdfrey@foursquare.net> 0.9-1
460 - version bump
462 * Fri Aug 03 2007 Chris Frey <cdfrey@foursquare.net> 0.8-1
463 - version bump
464 - changed tarball to bz2
466 * Tue May 01 2007 Chris Frey <cdfrey@foursquare.net> 0.7-2
467 - added pppob to utils
469 * Thu Mar 08 2007 Chris Frey <cdfrey@foursquare.net> 0.7-1
470 - removed barry base package that only contained docs, and put docs in libbarry*
471 - changed barrybackup reference to barry-gui
472 - removed the patch step, as version 0.7 shouldn't need it
473 - added license file to each package
475 * Sun Mar 04 2007 Troy Engel <tengel@users.sourceforge.net> 0.6-1
476 - initial build
477 - adding udev and console perms patch for raw 0.6