]> git.sur5r.net Git - bacula/bacula/blob - bacula/platforms/mandrake/bacula.spec.in
0c9aff2be63531db41b0b92640bfeb99d799f0ed
[bacula/bacula] / bacula / platforms / mandrake / bacula.spec.in
1 # Bacula RPM spec file
2 # Copyright (C) 2000-2006 Kern Sibbald
3
4 # Platform Build Configuration
5
6 # basic defines for every build
7 %define _version @VERSION@
8 %define _release 1
9 %define depkgs_version 25Jun06
10 %define _rescuever 1.8.6
11 %define docs_version @VERSION@
12
13 # any patches for this release
14 # be sure to check the setup section for patch macros
15
16
17 #--------------------------------------------------------------------------
18 # it should not be necessary to change anything below here for a release
19 # except for patch macros in the setup section
20 #--------------------------------------------------------------------------
21
22 # third party packagers
23 %define _packager D. Scott Barninger <barninger@fairfieldcomputers.com>
24 %{?contrib_packager:%define _packager %{contrib_packager}}
25
26 Summary: Bacula - The Network Backup Solution
27 Name: bacula
28 Version: %{_version}
29 Release: %{_release}
30 Group: System Environment/Daemons
31 License: GPL v2
32 Source0: http://www.prdownloads.sourceforge.net/bacula/%{name}-%{version}.tar.gz
33 Source1: http://www.prdownloads.sourceforge.net/bacula/depkgs-%{depkgs_version}.tar.gz
34 Source2: Release_Notes-%{version}-%{release}.tar.gz
35 Source3: http://www.prdownloads.sourceforge.net/bacula/%{name}-docs-%{docs_version}.tar.gz
36 Source4: http://www.prdownloads.sourceforge.net/bacula/%{name}-rescue-%{_rescuever}.tar.gz
37 BuildRoot: %{_tmppath}/%{name}-root
38 URL: http://www.bacula.org/
39 Vendor: The Bacula Team
40 Packager: %{_packager}
41
42 # define the basic package description
43 %define blurb Bacula - It comes by night and sucks the vital essence from your computers.
44 %define blurb2 Bacula is a set of computer programs that permit you (or the system
45 %define blurb3 administrator) to manage backup, recovery, and verification of computer
46 %define blurb4 data across a network of computers of different kinds. In technical terms,
47 %define blurb5 it is a network client/server based backup program. Bacula is relatively
48 %define blurb6 easy to use and efficient, while offering many advanced storage management
49 %define blurb7 features that make it easy to find and recover lost or damaged files.
50 %define blurb8 Bacula source code has been released under the GPL version 2 license.
51
52 # directory locations
53 %define sqlite_bindir /usr/lib/bacula/sqlite
54 %define working_dir /var/bacula
55 %define _docsrc ../%{name}-docs-%{docs_version}
56 %define _rescuesrc ../%{name}-rescue-%{_rescuever}
57 %define depkgs ../depkgs
58
59 # NOTE these defines are used in some rather complex useradd and groupadd
60 # commands. If you change them examine the post scripts for consequences.
61 %define director_daemon_user bacula
62 %define storage_daemon_user bacula
63 %define file_daemon_user root
64 %define daemon_group bacula
65 # group that has write access to tape devices, usually disk on Linux
66 %define storage_daemon_group disk
67 %define user_file /etc/passwd
68 %define group_file /etc/group
69
70 # program locations
71 %define useradd /usr/sbin/useradd
72 %define groupadd /usr/sbin/groupadd
73 %define usermod /usr/sbin/usermod
74
75 # platform defines - set one below or define the build_xxx on the command line
76 # RedHat builds
77 %define rh7 0
78 %{?build_rh7:%define rh7 1}
79 %define rh8 0
80 %{?build_rh8:%define rh8 1}
81 %define rh9 0
82 %{?build_rh9:%define rh9 1}
83 # Fedora Core build
84 %define fc1 0
85 %{?build_fc1:%define fc1 1}
86 %define fc3 0
87 %{?build_fc3:%define fc3 1}
88 %define fc4 0
89 %{?build_fc4:%define fc4 1}
90 %define fc5 0
91 %{?build_fc5:%define fc5 1}
92 # Whitebox Enterprise build
93 %define wb3 0
94 %{?build_wb3:%define wb3 1}
95 # RedHat Enterprise builds
96 %define rhel3 0
97 %{?build_rhel3:%define rhel3 1}
98 %{?build_rhel3:%define wb3 1}
99 %define rhel4 0
100 %{?build_rhel4:%define rhel4 1}
101 %{?build_rhel4:%define fc3 1}
102 # CentOS build
103 %define centos3 0
104 %{?build_centos3:%define centos3 1}
105 %{?build_centos3:%define wb3 1}
106 %define centos4 0
107 %{?build_centos4:%define centos4 1}
108 %{?build_centos4:%define fc3 1}
109 # SuSE build
110 %define su9 0
111 %{?build_su9:%define su9 1}
112 %define su10 0
113 %{?build_su10:%define su10 1}
114 # Mandrake builds
115 %define mdk 0
116 %{?build_mdk:%define mdk 1}
117 %define mdv 0
118 %{?build_mdv:%define mdv 1}
119 %{?build_mdv:%define mdk 1}
120
121 # client only build
122 %define client_only 0
123 %{?build_client_only:%define client_only 1}
124
125 # test for a platform definition
126 %if ! %{rh7} && ! %{rh8} && ! %{rh9} && ! %{fc1} && ! %{fc3} && ! %{fc4} && ! %{fc5} && ! %{wb3} && ! %{su9} && ! %{su10} && ! %{mdk}
127 %{error: You must specify a platform. Please examine the spec file.}
128 exit 1
129 %endif
130
131 # database defines
132 # set for database support desired or define the build_xxx on the command line
133 %define mysql 0
134 %{?build_mysql:%define mysql 1}
135 # if using mysql 4.x define this and mysql above
136 # currently: Mandrake 10.1, SuSE 9.x & 10.0, RHEL4 and Fedora Core 4
137 %define mysql4 0
138 %{?build_mysql4:%define mysql4 1}
139 %{?build_mysql4:%define mysql 1}
140 # if using mysql 5.x define this and mysql above
141 # currently: SuSE 10.1 and Fedora Core 5
142 %define mysql5 0
143 %{?build_mysql5:%define mysql5 1}
144 %{?build_mysql5:%define mysql 1}
145 %define sqlite 0
146 %{?build_sqlite:%define sqlite 1}
147 %define postgresql 0
148 %{?build_postgresql:%define postgresql 1}
149
150 # test for a database definition
151 %if ! %{mysql} && ! %{sqlite} && ! %{postgresql} && ! %{client_only}
152 %{error: You must specify database support. Please examine the spec file.}
153 exit 1
154 %endif
155
156 %if %{mysql}
157 %define db_backend mysql
158 %endif
159 %if %{sqlite}
160 %define db_backend sqlite
161 %endif
162 %if %{postgresql}
163 %define db_backend postgresql
164 %endif
165
166 # 64 bit support
167 %define x86_64 0
168 %{?build_x86_64:%define x86_64 1}
169
170 # check what distribution we are
171 %if %{rh7} || %{rh8} || %{rh9} || %{rhel3} || %{rhel4}
172 %define _dist %(grep Red /etc/redhat-release)
173 %endif
174 %if %{fc1} || %{fc4} || %{fc5}
175 %define _dist %(grep Fedora /etc/redhat-release)
176 %endif
177 %if %{centos4} || %{centos3}
178 %define _dist %(grep CentOS /etc/redhat-release)
179 %endif
180 %if %{fc3} && ! %{rhel4} && ! %{centos4}
181 %define _dist %(grep Fedora /etc/redhat-release)
182 %endif
183 %if %{wb3} && ! %{rhel3} && ! %{centos3}
184 %define _dist %(grep White /etc/whitebox-release)
185 %endif
186 %if %{su9} || %{su10}
187 %define _dist %(grep -i SuSE /etc/SuSE-release)
188 %endif
189 %if %{mdk}
190 %define _dist %(grep Mand /etc/mandrake-release)
191 %endif
192 Distribution: %{_dist}
193
194 # Should we build gconsole, possible only if gnome >= 2.0 available
195 %if %{rh7}
196 %define gconsole 0
197 %else
198 %define gconsole 1
199 %endif
200 # specifically disallow gconsole if desired
201 %{?nobuild_gconsole:%define gconsole 0}
202
203 # Should we build wxconsole, only wxWidgets >=2.6 is supported
204 # currently only SuSE 10 and FC4/FC5
205 %define wxconsole 0
206 %{?build_wxconsole:%define wxconsole 1}
207
208 # should we turn on python support
209 %define python 0
210 %{?build_python:%define python 1}
211
212 # for client only build
213 %if %{client_only}
214 %define mysql 0
215 %define mysql4 0
216 %define mysql5 0
217 %define postgresql 0
218 %define sqlite 0
219 %define gconsole 0
220 %define wxconsole 0
221 %endif
222
223 %{expand: %%define gccver %(rpm -q gcc | cut -d - -f 2)}
224 %{expand: %%define gccrel %(rpm -q gcc | cut -d - -f 3)}
225
226 BuildRequires: gcc, gcc-c++, make, autoconf
227 BuildRequires: atk-devel, ncurses-devel, perl
228 BuildRequires: libstdc++-devel = %{gccver}-%{gccrel}, libxml2-devel, zlib-devel
229 BuildRequires: openssl-devel
230 %if %{python}
231 BuildRequires: python, python-devel
232 %{expand: %%define pyver %(python -c 'import sys;print(sys.version[0:3])')}
233 %endif
234 %if %{gconsole}
235 BuildRequires: pkgconfig, pango-devel
236 %endif
237 %if %{rh7}
238 BuildRequires: libtermcap-devel
239 BuildRequires: glibc-devel >= 2.2
240 %endif
241 %if %{su9}
242 BuildRequires: termcap
243 BuildRequires: glibc-devel >= 2.3
244 %endif
245 %if %{su9} && %{gconsole}
246 BuildRequires: libgnome >= 2.0
247 BuildRequires: gtk2-devel >= 2.0
248 BuildRequires: libgnomeui-devel >= 2.0
249 BuildRequires: ORBit2-devel
250 BuildRequires: libart_lgpl-devel >= 2.0
251 BuildRequires: libbonobo-devel >= 2.0
252 BuildRequires: libbonoboui-devel >= 2.0
253 BuildRequires: bonobo-activation-devel
254 BuildRequires: gconf2-devel
255 BuildRequires: linc-devel
256 BuildRequires: freetype2-devel
257 %endif
258 %if %{su10}
259 BuildRequires: termcap
260 BuildRequires: glibc-devel >= 2.3
261 %endif
262 %if %{su10} && %{gconsole}
263 BuildRequires: libgnome >= 2.12
264 BuildRequires: gtk2-devel >= 2.8
265 BuildRequires: libgnomeui-devel >= 2.12
266 BuildRequires: ORBit2-devel
267 BuildRequires: libart_lgpl-devel >= 2.3
268 BuildRequires: libbonobo-devel >= 2.10
269 BuildRequires: libbonoboui-devel >= 2.10
270 BuildRequires: bonobo-activation-devel
271 BuildRequires: gconf2-devel
272 BuildRequires: freetype2-devel
273 BuildRequires: cairo-devel
274 BuildRequires: fontconfig-devel >= 2.3
275 BuildRequires: gnome-vfs2-devel >= 2.12
276 BuildRequires: libpng-devel
277 %endif
278 %if %{mdk}
279 BuildRequires: libtermcap-devel
280 BuildRequires: libstdc++-static-devel
281 BuildRequires: glibc-static-devel
282 BuildRequires: glibc-devel >= 2.3
283 %endif
284 %if %{mdk} && !%{mdv} && %{gconsole}
285 BuildRequires: gtk2-devel >= 2.0
286 BuildRequires: libgnomeui2-devel >= 2.0
287 BuildRequires: libORBit2-devel
288 BuildRequires: libart_lgpl-devel >= 2.0
289 BuildRequires: libbonobo2_0-devel
290 BuildRequires: libbonoboui2_0-devel
291 BuildRequires: libbonobo-activation-devel
292 BuildRequires: libGConf2-devel
293 BuildRequires: freetype2-devel
294 %endif
295 %if %{mdv} && %{gconsole}
296 BuildRequires: gtk2-devel >= 2.8
297 BuildRequires: libgnomeui2-devel >= 2.10
298 BuildRequires: libORBit2-devel
299 BuildRequires: libart_lgpl-devel >= 2.3
300 BuildRequires: libbonobo2_0-devel
301 BuildRequires: libbonoboui2_0-devel
302 BuildRequires: libbonobo-activation-devel
303 BuildRequires: libGConf2-devel
304 BuildRequires: freetype2-devel
305 %endif
306 %if %{fc3}
307 BuildRequires: libtermcap-devel
308 BuildRequires: glibc-devel >= 2.3
309 %endif
310 %if %{fc3} && %{gconsole}
311 BuildRequires: gtk2-devel >= 2.4
312 BuildRequires: libgnomeui-devel >= 2.8
313 BuildRequires: ORBit2-devel
314 BuildRequires: libart_lgpl-devel >= 2.3
315 BuildRequires: libbonobo-devel >= 2.8
316 BuildRequires: libbonoboui-devel >= 2.8
317 BuildRequires: bonobo-activation-devel
318 BuildRequires: GConf2-devel
319 BuildRequires: freetype-devel
320 %endif
321 %if %{fc4}
322 BuildRequires: libtermcap-devel
323 BuildRequires: glibc-devel >= 2.3
324 %endif
325 %if %{fc4} && %{gconsole}
326 BuildRequires: gtk2-devel >= 2.6
327 BuildRequires: libgnomeui-devel >= 2.10
328 BuildRequires: ORBit2-devel
329 BuildRequires: libart_lgpl-devel >= 2.3
330 BuildRequires: libbonobo-devel >= 2.8
331 BuildRequires: libbonoboui-devel >= 2.8
332 BuildRequires: bonobo-activation-devel
333 BuildRequires: GConf2-devel
334 BuildRequires: freetype-devel
335 %endif
336 %if %{fc5}
337 BuildRequires: libtermcap-devel
338 BuildRequires: glibc-devel >= 2.4
339 %endif
340 %if %{fc5} && %{gconsole}
341 BuildRequires: gtk2-devel >= 2.8
342 BuildRequires: libgnomeui-devel >= 2.14
343 BuildRequires: ORBit2-devel
344 BuildRequires: libart_lgpl-devel >= 2.3
345 BuildRequires: libbonobo-devel >= 2.14
346 BuildRequires: libbonoboui-devel >= 2.14
347 BuildRequires: GConf2-devel
348 BuildRequires: freetype-devel
349 %endif
350 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{mdk} && ! %{fc3} && ! %{fc4} && ! %{fc5}
351 BuildRequires: libtermcap-devel
352 BuildRequires: glibc-devel >= 2.3
353 %endif
354 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{mdk} && ! %{fc3} && ! %{fc4} && ! %{fc5} && %{gconsole}
355 BuildRequires: gtk2-devel >= 2.0
356 BuildRequires: libgnomeui-devel >= 2.0
357 BuildRequires: ORBit2-devel
358 BuildRequires: libart_lgpl-devel >= 2.0
359 BuildRequires: libbonobo-devel >= 2.0
360 BuildRequires: libbonoboui-devel >= 2.0
361 BuildRequires: bonobo-activation-devel
362 BuildRequires: GConf2-devel
363 BuildRequires: linc-devel
364 BuildRequires: freetype-devel
365 %endif
366
367 %if %{mysql} && ! %{mysql4} && ! %{mysql5}
368 BuildRequires: mysql-devel >= 3.23
369 %endif
370
371 %if %{mysql} && %{mysql4}
372 BuildRequires: mysql-devel >= 4.0
373 %endif
374
375 %if %{mysql} && %{mysql5}
376 BuildRequires: mysql-devel >= 5.0
377 %endif
378
379 %if %{postgresql} && %{wb3}
380 BuildRequires: rh-postgresql-devel >= 7
381 %endif
382
383 %if %{postgresql} && ! %{wb3}
384 BuildRequires: postgresql-devel >= 7
385 %endif
386
387 %if %{wxconsole}
388 BuildRequires: wxGTK-devel >= 2.6
389 %endif
390
391 %description
392 %{blurb}
393
394 %{blurb2}
395 %{blurb3}
396 %{blurb4}
397 %{blurb5}
398 %{blurb6}
399 %{blurb7}
400 %{blurb8}
401
402 %if %{mysql}
403 %package mysql
404 %endif
405 %if %{sqlite}
406 %package sqlite
407 %endif
408 %if %{postgresql}
409 %package postgresql
410 %endif
411
412 Summary: Bacula - The Network Backup Solution
413 Group: System Environment/Daemons
414 Provides: bacula-dir, bacula-sd, bacula-fd, bacula-server
415 Conflicts: bacula-client
416 Obsoletes: bacula-rescue
417
418 %if %{su9} || %{su10}
419 Conflicts: bacula
420 %endif
421
422 Requires: ncurses, libstdc++, zlib, openssl, mtx
423
424 %if %{rh7}
425 Requires: glibc >= 2.2
426 Requires: libtermcap
427 %endif
428 %if %{su9} || %{su10}
429 Requires: glibc >= 2.3
430 Requires: termcap
431 %endif
432 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{fc5}
433 Requires: glibc >= 2.3
434 Requires: libtermcap
435 %endif
436 %if %{fc5}
437 Requires: glibc >= 2.4
438 Requires: libtermcap
439 %endif
440
441 %if %{mysql} && ! %{su9} && ! %{mdk} && ! %{mysql4} && ! %{mysql5}
442 Requires: mysql >= 3.23
443 Requires: mysql-server >= 3.23
444 %endif
445 %if %{mysql} && ! %{su9} && ! %{su10} && ! %{mdk} && %{mysql4}
446 Requires: mysql >= 4.0
447 Requires: mysql-server >= 4.0
448 %endif
449 %if %{mysql} && ! %{su9} && ! %{su10} && ! %{mdk} && %{mysql5}
450 Requires: mysql >= 5.0
451 Requires: mysql-server >= 5.0
452 %endif
453
454 %if %{mysql} && %{su9} && ! %{mysql4}
455 Requires: mysql >= 3.23
456 Requires: mysql-client >= 3.23
457 %endif
458 %if %{mysql} && %{su9} && %{mysql4}
459 Requires: mysql >= 4.0
460 Requires: mysql-client >= 4.0
461 %endif
462 %if %{mysql} && %{su10} && %{mysql4}
463 Requires: mysql >= 4.0
464 Requires: mysql-client >= 4.0
465 %endif
466 %if %{mysql} && %{su10} && %{mysql5}
467 Requires: mysql >= 5.0
468 Requires: mysql-client >= 5.0
469 %endif
470
471 %if %{mysql} && %{mdk} && ! %{mysql4}
472 Requires: mysql >= 3.23
473 Requires: mysql-client >= 3.23
474 %endif
475 %if %{mysql} && %{mdk} && %{mysql4}
476 Requires: mysql >= 4.0
477 Requires: mysql-client >= 4.0
478 %endif
479
480 %if %{postgresql} && %{wb3}
481 Requires: rh-postgresql >= 7
482 Requires: rh-postgresql-server >= 7
483 %endif
484 %if %{postgresql} && ! %{wb3}
485 Requires: postgresql >= 7
486 Requires: postgresql-server >= 7
487 %endif
488
489 %if %{mysql}
490 %description mysql
491 %endif
492 %if %{sqlite}
493 %description sqlite
494 %endif
495 %if %{postgresql}
496 %description postgresql
497 %endif
498
499 %if %{python}
500 Requires: python >= %{pyver}
501 %endif
502
503 %{blurb}
504
505 %{blurb2}
506 %{blurb3}
507 %{blurb4}
508 %{blurb5}
509 %{blurb6}
510 %{blurb7}
511 %{blurb8}
512
513 %if %{mysql}
514 This build requires MySQL to be installed separately as the catalog database.
515 %endif
516 %if %{postgresql}
517 This build requires PostgreSQL to be installed separately as the catalog database.
518 %endif
519 %if %{sqlite}
520 This build incorporates sqlite as the catalog database, statically compiled.
521 %endif
522 %if %{python}
523 This build includes python scripting support.
524 %endif
525
526 %if ! %{client_only}
527 %package mtx
528 Summary: Bacula - The Network Backup Solution
529 Group: System Environment/Daemons
530 Provides: mtx
531
532 %description mtx
533 This is Bacula's version of mtx tape utilities for Linux distributions that
534 do not provide their own mtx package
535 %endif
536
537 %package client
538 Summary: Bacula - The Network Backup Solution
539 Group: System Environment/Daemons
540 Provides: bacula-fd
541 Conflicts: bacula-mysql
542 Conflicts: bacula-sqlite
543 Conflicts: bacula-postgresql
544 Obsoletes: bacula-rescue
545
546 %if %{su9} || %{su10}
547 Provides: bacula
548 %endif
549
550 Requires: libstdc++, zlib, openssl
551
552 %if %{rh7}
553 Requires: glibc >= 2.2
554 Requires: libtermcap
555 %endif
556 %if %{su9} || %{su10}
557 Requires: glibc >= 2.3
558 Requires: termcap
559 %endif
560 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{fc5}
561 Requires: glibc >= 2.3
562 Requires: libtermcap
563 %endif
564 %if %{fc5}
565 Requires: glibc >= 2.4
566 Requires: libtermcap
567 %endif
568
569 %if %{python}
570 Requires: python >= %{pyver}
571 %endif
572
573 %description client
574 %{blurb}
575
576 %{blurb2}
577 %{blurb3}
578 %{blurb4}
579 %{blurb5}
580 %{blurb6}
581 %{blurb7}
582 %{blurb8}
583
584 This is the File daemon (Client) only package. It includes the command line 
585 console program.
586 %if %{python}
587 This build includes python scripting support.
588 %endif
589
590 %if ! %{client_only}
591 %package updatedb
592
593 Summary: Bacula - The Network Backup Solution
594 Group: System Environment/Daemons
595
596 %description updatedb
597 %{blurb}
598
599 %{blurb2}
600 %{blurb3}
601 %{blurb4}
602 %{blurb5}
603 %{blurb6}
604 %{blurb7}
605 %{blurb8}
606
607 This package installs scripts for updating older versions of the bacula
608 database.
609 %endif
610
611 %if %{gconsole}
612 %package gconsole
613 Summary: Bacula - The Network Backup Solution
614 Group: System Environment/Daemons
615 Requires: atk, libstdc++, zlib, pango, libxml2, bacula-fd, openssl
616 %endif
617
618 %if %{gconsole} && %{su9}
619 Requires: gtk2 >= 2.0
620 Requires: libgnome >= 2.0
621 Requires: libgnomeui >= 2.0
622 Requires: glibc >= 2.3
623 Requires: ORBit2
624 Requires: libart_lgpl >= 2.0
625 Requires: libbonobo >= 2.0
626 Requires: libbonoboui >= 2.0
627 Requires: bonobo-activation
628 Requires: gconf2
629 Requires: linc
630 Requires: freetype2
631 %endif
632 %if %{gconsole} && %{su10}
633 Requires: gtk2 >= 2.8
634 Requires: libgnome >= 2.12
635 Requires: libgnomeui >= 2.12
636 Requires: glibc >= 2.3
637 Requires: ORBit2
638 Requires: libart_lgpl >= 2.3
639 Requires: libbonobo >= 2.10
640 Requires: libbonoboui >= 2.10
641 Requires: bonobo-activation
642 Requires: gconf2
643 Requires: freetype2
644 Requires: cairo
645 Requires: fontconfig >= 2.3
646 Requires: gnome-vfs2 >= 2.12
647 Requires: libpng
648 %endif
649 %if %{gconsole} && %{mdk} && !%{mdv}
650 Requires: gtk2 >= 2.0
651 Requires: libgnomeui2
652 Requires: glibc >= 2.3
653 Requires: ORBit2
654 Requires: libart_lgpl >= 2.0
655 Requires: libbonobo >= 2.0
656 Requires: libbonoboui >= 2.0
657 Requires: GConf2
658 Requires: freetype2
659 %endif
660 %if %{gconsole} && %{mdv}
661 Requires: gtk2 >= 2.8
662 Requires: libgnomeui2
663 Requires: glibc >= 2.3
664 Requires: ORBit2
665 Requires: libart_lgpl >= 2.3
666 Requires: libbonobo >= 2.10
667 Requires: libbonoboui >= 2.10
668 Requires: GConf2
669 Requires: freetype2
670 %endif
671 %if %{gconsole} && %{fc3}  
672 Requires: gtk2 >= 2.4
673 Requires: libgnomeui >= 2.8
674 Requires: glibc >= 2.3
675 Requires: ORBit2
676 Requires: libart_lgpl >= 2.3
677 Requires: libbonobo >= 2.8
678 Requires: libbonoboui >= 2.8
679 Requires: bonobo-activation
680 Requires: GConf2
681 Requires: freetype
682 %endif
683 %if %{gconsole} && %{fc4}  
684 Requires: gtk2 >= 2.6
685 Requires: libgnomeui >= 2.10
686 Requires: glibc >= 2.3
687 Requires: ORBit2
688 Requires: libart_lgpl >= 2.3
689 Requires: libbonobo >= 2.8
690 Requires: libbonoboui >= 2.8
691 Requires: bonobo-activation
692 Requires: GConf2
693 Requires: freetype
694 %endif
695 %if %{gconsole} && %{fc5}  
696 Requires: gtk2 >= 2.8
697 Requires: libgnomeui >= 2.14
698 Requires: glibc >= 2.4
699 Requires: ORBit2
700 Requires: libart_lgpl >= 2.3
701 Requires: libbonobo >= 2.14
702 Requires: libbonoboui >= 2.14
703 Requires: GConf2
704 Requires: freetype
705 %endif
706 %if %{gconsole} && ! %{su9} && ! %{su10} && ! %{mdk} && ! %{fc3} && ! %{fc4} && ! %{fc5}
707 Requires: gtk2 >= 2.0
708 Requires: libgnomeui >= 2.0
709 Requires: glibc >= 2.3
710 Requires: ORBit2
711 Requires: libart_lgpl >= 2.0
712 Requires: libbonobo >= 2.0
713 Requires: libbonoboui >= 2.0
714 Requires: bonobo-activation
715 Requires: GConf2
716 Requires: linc
717 Requires: freetype
718 %endif
719 %if %{gconsole} && %{su9}
720 Requires: xsu
721 %endif
722 %if %{gconsole} && %{su10}
723 Requires: xsu
724 %endif
725 %if %{gconsole} && ! %{su9} && ! %{su10}
726 Requires: usermode
727 %endif
728
729 %if %{gconsole}
730 %description gconsole
731 %{blurb}
732
733 %{blurb2}
734 %{blurb3}
735 %{blurb4}
736 %{blurb5}
737 %{blurb6}
738 %{blurb7}
739 %{blurb8}
740
741 This is the Gnome Console package. It is an add-on to the client or
742 server packages.
743 %endif
744
745 %if %{wxconsole}
746 %package wxconsole
747 Summary: Bacula - The Network Backup Solution
748 Group: System Environment/Daemons
749 Requires: wxGTK >= 2.6, libstdc++, openssl
750 %endif
751
752 %if %{wxconsole} && %{su10}
753 Requires: gtk2 >= 2.8
754 %endif
755
756 %if %{wxconsole} && %{fc3}  
757 Requires: gtk2 >= 2.4
758 %endif
759
760 %if %{wxconsole} && %{fc4}  
761 Requires: gtk2 >= 2.6
762 %endif
763
764 %if %{wxconsole} && %{fc5}  
765 Requires: gtk2 >= 2.8
766 %endif
767
768 %if %{wxconsole}
769 %description wxconsole
770 %{blurb}
771
772 %{blurb2}
773 %{blurb3}
774 %{blurb4}
775 %{blurb5}
776 %{blurb6}
777 %{blurb7}
778 %{blurb8}
779
780 This is the WXWindows Console package. It is an add-on to the client or
781 server packages.
782 %endif
783
784 %prep
785
786 %setup
787 %setup -T -D -b 1
788 %setup -T -D -b 2
789 %setup -T -D -b 3
790 %setup -T -D -b 4
791
792 %build
793
794 %if %{su9} || %{su10}
795 export LDFLAGS="${LDFLAGS} -L/usr/lib/termcap"
796 %endif
797
798 cwd=${PWD}
799 cd %{depkgs}
800 %if %{sqlite}
801 make sqlite
802 %endif
803 %if ! %{client_only}
804 make mtx
805 %endif
806 cd ${cwd}
807
808 # patches for the bundled sqlite scripts
809
810 # patch the make_sqlite_tables script for installation bindir
811 patch src/cats/make_sqlite_tables.in src/cats/make_sqlite_tables.in.patch
812
813 # patch the create_sqlite_database script for installation bindir
814 patch src/cats/create_sqlite_database.in src/cats/create_sqlite_database.in.patch
815
816 # patch the make_catalog_backup script for installation bindir
817 patch src/cats/make_catalog_backup.in src/cats/make_catalog_backup.in.patch
818
819 # patch the update_sqlite_tables script for installation bindir
820 patch src/cats/update_sqlite_tables.in src/cats/update_sqlite_tables.in.patch
821
822 # patch the bacula-dir init script to remove sqlite service
823 %if %{sqlite} && %{su9}
824 patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
825 %endif
826 %if %{sqlite} && %{su10}
827 patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
828 %endif
829
830 # 64 bit lib location hacks
831 %if %{x86_64}
832 export LDFLAGS="${LDFLAGS} -L/usr/lib64"
833 %endif
834 %if %{mysql} && %{x86_64}
835 export LDFLAGS="${LDFLAGS} -L/usr/lib64/mysql"
836 %endif
837 # this MAY be necessary for python support - waiting for feedback to enable
838 #%if %{python} && %{x86_64}
839 #export LDFLAGS="${LDFLAGS} -L/usr/lib64/python%{pyver}"
840 #%endif
841
842 %configure \
843         --prefix=/usr \
844         --sbindir=/usr/sbin \
845         --sysconfdir=/etc/bacula \
846         --with-scriptdir=/etc/bacula \
847         --enable-smartalloc \
848         --enable-client-only \
849         %if %{mdk}
850         --disable-nls \
851         %endif
852         --enable-static-fd
853
854 make
855
856 %configure \
857         --prefix=/usr \
858         --sbindir=/usr/sbin \
859         --sysconfdir=/etc/bacula \
860         --with-scriptdir=/etc/bacula \
861         --enable-smartalloc \
862 %if %{gconsole}
863         --enable-gnome \
864 %endif
865 %if %{gconsole} && ! %{rh8}
866         --enable-tray-monitor \
867 %endif
868 %if %{mysql}
869         --with-mysql \
870 %endif
871 %if %{sqlite}
872         --with-sqlite=${cwd}/%{depkgs}/sqlite \
873 %endif
874 %if %{postgresql}
875         --with-postgresql \
876 %endif
877 %if %{wxconsole}
878         --enable-wx-console \
879 %endif
880 %if %{python}
881         --with-python \
882 %endif
883 %if %{client_only}
884         --enable-client-only \
885 %endif
886         --with-working-dir=%{working_dir} \
887         --with-pid-dir=/var/run \
888         --with-subsys-dir=/var/lock/subsys \
889         --with-dir-user=%{director_daemon_user} \
890         --with-dir-group=%{daemon_group} \
891         --with-sd-user=%{storage_daemon_user} \
892         --with-sd-group=%{storage_daemon_group} \
893         --with-fd-user=%{file_daemon_user} \
894         --with-fd-group=%{daemon_group} \
895         --with-dir-password="XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX" \
896         --with-fd-password="XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX" \
897         --with-sd-password="XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX" \
898         --with-mon-dir-password="XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX" \
899         --with-mon-fd-password="XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX" \
900         --with-mon-sd-password="XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX" \
901         --with-openssl
902
903 make
904
905 %install
906  
907 cwd=${PWD}
908 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
909 mkdir -p $RPM_BUILD_ROOT/etc/init.d
910 mkdir -p $RPM_BUILD_ROOT/etc/logrotate.d
911 mkdir -p $RPM_BUILD_ROOT/etc/log.d/conf/logfiles
912 mkdir -p $RPM_BUILD_ROOT/etc/log.d/conf/services
913 mkdir -p $RPM_BUILD_ROOT/etc/log.d/scripts/services
914 mkdir -p $RPM_BUILD_ROOT/etc/bacula/updatedb
915
916 %if %{gconsole} || %{wxconsole}
917 mkdir -p $RPM_BUILD_ROOT/usr/share/applications
918 mkdir -p $RPM_BUILD_ROOT/usr/share/pixmaps
919 %endif
920
921 %if %{gconsole} || %{wxconsole}
922 %define usermode_iftrick 1
923 %else
924 %define usermode_iftrick 0
925 %endif
926
927 %if %{usermode_iftrick} && ! %{su9} && ! %{su10}
928 mkdir -p $RPM_BUILD_ROOT/etc/pam.d
929 mkdir -p $RPM_BUILD_ROOT/etc/security/console.apps
930 mkdir -p $RPM_BUILD_ROOT/usr/bin
931 %endif
932
933 %if %{sqlite}
934 mkdir -p $RPM_BUILD_ROOT%{sqlite_bindir}
935 %endif
936
937 make \
938         prefix=$RPM_BUILD_ROOT/usr \
939         sbindir=$RPM_BUILD_ROOT/usr/sbin \
940         sysconfdir=$RPM_BUILD_ROOT/etc/bacula \
941         scriptdir=$RPM_BUILD_ROOT/etc/bacula \
942         working_dir=$RPM_BUILD_ROOT%{working_dir} \
943         install
944
945 %if ! %{client_only}
946 cd %{depkgs}
947 make \
948         prefix=$RPM_BUILD_ROOT/usr \
949         sbindir=$RPM_BUILD_ROOT/usr/sbin \
950         sysconfdir=$RPM_BUILD_ROOT/etc/bacula \
951         working_dir=$RPM_BUILD_ROOT%{working_dir} \
952         mandir=$RPM_BUILD_ROOT/usr/man \
953         mtx-install
954 cd ${cwd}
955 %endif
956
957 # fixme - make installs the mysql scripts for sqlite build
958 %if %{sqlite}
959 rm -f $RPM_BUILD_ROOT/etc/bacula/startmysql
960 rm -f $RPM_BUILD_ROOT/etc/bacula/stopmysql
961 rm -f $RPM_BUILD_ROOT/etc/bacula/grant_mysql_privileges
962 %endif
963
964 # fixme - make installs the mysql scripts for postgresql build
965 %if %{postgresql}
966 rm -f $RPM_BUILD_ROOT/etc/bacula/startmysql
967 rm -f $RPM_BUILD_ROOT/etc/bacula/stopmysql
968 %endif
969
970 # fixme - make installs gconsole script for build without gconsole
971 %if ! %{gconsole}
972 rm -f $RPM_BUILD_ROOT/etc/bacula/gconsole
973 %endif
974
975 rm -f $RPM_BUILD_ROOT/usr/sbin/static-bacula-fd
976
977 # install the init scripts
978 %if %{su9} || %{su10}
979 cp -p platforms/suse/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
980 cp -p platforms/suse/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
981 cp -p platforms/suse/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
982 %endif
983 %if %{mdk}
984 cp -p platforms/mandrake/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
985 cp -p platforms/mandrake/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
986 cp -p platforms/mandrake/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
987 %endif
988 %if ! %{su9} && ! %{su10} && ! %{mdk}
989 cp -p platforms/redhat/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
990 cp -p platforms/redhat/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
991 cp -p platforms/redhat/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
992 %endif
993 chmod 0754 $RPM_BUILD_ROOT/etc/init.d/*
994 %if %{client_only}
995 rm -f $RPM_BUILD_ROOT/etc/init.d/bacula-dir
996 rm -f $RPM_BUILD_ROOT/etc/init.d/bacula-sd
997 %endif
998
999 # install the menu stuff
1000 %if %{gconsole} && %{su9}
1001 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1002 cp -p scripts/bacula.desktop.gnome2.xsu $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1003 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1004 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1005 %endif
1006 %if %{gconsole} && %{su10}
1007 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1008 cp -p scripts/bacula.desktop.gnome2.xsu $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1009 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1010 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1011 %endif
1012 %if %{wxconsole} && %{su10}
1013 cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
1014 cp -p scripts/wxconsole.desktop.xsu $RPM_BUILD_ROOT/usr/share/applications/wxconsole.desktop
1015 %endif
1016 %if %{rh8} || %{rh9} || %{wb3} || %{fc1} || %{fc3} || %{fc4} || %{fc5} || %{mdk}
1017 %define iftrick 1
1018 %else
1019 %define iftrick 0
1020 %endif
1021 %if %{gconsole} && %{iftrick}
1022 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1023 cp -p scripts/bacula.desktop.gnome2.consolehelper $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1024 cp -p scripts/gnome-console.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/gnome-console
1025 cp -p scripts/gnome-console.pamd $RPM_BUILD_ROOT/etc/pam.d/gnome-console
1026 ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/gnome-console
1027 %endif
1028 %if %{gconsole} && ! %{rh8}
1029 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1030 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1031 %endif
1032 %if %{wxconsole} && %{iftrick}
1033 cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
1034 cp -p scripts/wxconsole.desktop.consolehelper $RPM_BUILD_ROOT/usr/share/applications/wxconsole.desktop
1035 cp -p scripts/wxconsole.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/wxconsole
1036 cp -p scripts/wxconsole.pamd $RPM_BUILD_ROOT/etc/pam.d/wxconsole
1037 ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/wxconsole
1038 %endif
1039
1040 # install sqlite
1041 %if %{sqlite}
1042 cp -p %{depkgs}/sqlite/sqlite $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite
1043 cp -p %{depkgs}/sqlite/sqlite.h $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite.h
1044 cp -p %{depkgs}/sqlite/libsqlite.a $RPM_BUILD_ROOT%{sqlite_bindir}/libsqlite.a
1045 %endif
1046
1047 # install the logrotate file
1048 cp -p scripts/logrotate $RPM_BUILD_ROOT/etc/logrotate.d/bacula
1049
1050 # install the updatedb scripts
1051 cp -p updatedb/* $RPM_BUILD_ROOT/etc/bacula/updatedb/
1052
1053 # install the logwatch scripts
1054 %if ! %{client_only}
1055 cp -p scripts/logwatch/bacula $RPM_BUILD_ROOT/etc/log.d/scripts/services/bacula
1056 cp -p scripts/logwatch/logfile.bacula.conf $RPM_BUILD_ROOT/etc/log.d/conf/logfiles/bacula.conf
1057 cp -p scripts/logwatch/services.bacula.conf $RPM_BUILD_ROOT/etc/log.d/conf/services/bacula.conf
1058 chmod 755 $RPM_BUILD_ROOT/etc/log.d/scripts/services/bacula
1059 chmod 644 $RPM_BUILD_ROOT/etc/log.d/conf/logfiles/bacula.conf
1060 chmod 644 $RPM_BUILD_ROOT/etc/log.d/conf/services/bacula.conf
1061 %endif
1062
1063 # install the rescue files
1064 mkdir $RPM_BUILD_ROOT/etc/bacula/rescue
1065 cp -p %{_rescuesrc}/Makefile* $RPM_BUILD_ROOT/etc/bacula/rescue/
1066 cp -p %{_rescuesrc}/README $RPM_BUILD_ROOT/etc/bacula/rescue/
1067 cp -p %{_rescuesrc}/configure $RPM_BUILD_ROOT/etc/bacula/rescue/
1068 cp -p %{_rescuesrc}/version.h $RPM_BUILD_ROOT/etc/bacula/rescue/
1069 cp -pr %{_rescuesrc}/linux $RPM_BUILD_ROOT/etc/bacula/rescue/
1070 cp -pr %{_rescuesrc}/autoconf $RPM_BUILD_ROOT/etc/bacula/rescue/
1071 touch $RPM_BUILD_ROOT/etc/bacula/rescue/linux/cdrom/rpm_release
1072 cp -p src/filed/static-bacula-fd $RPM_BUILD_ROOT/etc/bacula/rescue/linux/cdrom/bacula/bin/bacula-fd
1073 rm -f src/filed/static-bacula-fd
1074
1075 %if %{wxconsole}
1076 mv $RPM_BUILD_ROOT/usr/sbin/wx-console $RPM_BUILD_ROOT/usr/sbin/wxconsole
1077 mv $RPM_BUILD_ROOT/etc/bacula/wx-console.conf $RPM_BUILD_ROOT/etc/bacula/wxconsole.conf
1078 %endif
1079
1080 # now clean up permissions that are left broken by the install
1081 %if ! %{client_only}
1082 chmod o-r $RPM_BUILD_ROOT/etc/bacula/query.sql
1083 %endif
1084 chmod o-rwx $RPM_BUILD_ROOT/var/bacula
1085 %if %{gconsole} && ! %{rh8}
1086 chmod 755 $RPM_BUILD_ROOT/usr/sbin/bacula-tray-monitor
1087 chmod 644 $RPM_BUILD_ROOT/etc/bacula/tray-monitor.conf
1088 %endif
1089
1090 # fix me - building enable-client-only installs files not included in bacula-client package
1091 %if %{client_only}
1092 rm -f $RPM_BUILD_ROOT/etc/bacula/bacula
1093 rm -f $RPM_BUILD_ROOT/etc/bacula/bacula-ctl-dir
1094 rm -f $RPM_BUILD_ROOT/etc/bacula/bacula-ctl-sd
1095 rm -f $RPM_BUILD_ROOT/etc/bacula/disk-changer
1096 rm -f $RPM_BUILD_ROOT/etc/bacula/dvd-handler
1097 rm -f $RPM_BUILD_ROOT/etc/bacula/mtx-changer
1098 rm -f $RPM_BUILD_ROOT/etc/bacula/startmysql
1099 rm -f $RPM_BUILD_ROOT/etc/bacula/stopmysql
1100 rm -rf $RPM_BUILD_ROOT/etc/bacula/updatedb
1101 %endif
1102
1103 %clean
1104 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
1105
1106 %if %{mysql}
1107 # MySQL specific files
1108 %files mysql
1109 %defattr(-, root, root)
1110 %attr(-, root, %{daemon_group}) /etc/bacula/create_mysql_database
1111 %attr(-, root, %{daemon_group}) /etc/bacula/drop_mysql_database
1112 %attr(-, root, %{daemon_group}) /etc/bacula/make_mysql_tables
1113 %attr(-, root, %{daemon_group}) /etc/bacula/drop_mysql_tables
1114 %attr(-, root, %{daemon_group}) /etc/bacula/update_mysql_tables
1115 %attr(-, root, %{daemon_group}) /etc/bacula/grant_mysql_privileges
1116 %attr(-, root, %{daemon_group}) /etc/bacula/startmysql
1117 %attr(-, root, %{daemon_group}) /etc/bacula/stopmysql
1118 %endif
1119
1120 %if %{sqlite}
1121 %files sqlite
1122 %defattr(-,root,root)
1123 %attr(-, root, %{daemon_group}) /etc/bacula/create_sqlite_database
1124 %attr(-, root, %{daemon_group}) /etc/bacula/drop_sqlite_database
1125 %attr(-, root, %{daemon_group}) /etc/bacula/grant_sqlite_privileges
1126 %attr(-, root, %{daemon_group}) /etc/bacula/make_sqlite_tables
1127 %attr(-, root, %{daemon_group}) /etc/bacula/drop_sqlite_tables
1128 %attr(-, root, %{daemon_group}) /etc/bacula/update_sqlite_tables
1129 %{sqlite_bindir}/libsqlite.a
1130 %{sqlite_bindir}/sqlite.h
1131 %{sqlite_bindir}/sqlite
1132 %endif
1133
1134 %if %{postgresql}
1135 %files postgresql
1136 %defattr(-,root,root)
1137 %attr(-, root, %{daemon_group}) /etc/bacula/create_postgresql_database
1138 %attr(-, root, %{daemon_group}) /etc/bacula/drop_postgresql_database
1139 %attr(-, root, %{daemon_group}) /etc/bacula/make_postgresql_tables
1140 %attr(-, root, %{daemon_group}) /etc/bacula/drop_postgresql_tables
1141 %attr(-, root, %{daemon_group}) /etc/bacula/update_postgresql_tables
1142 %attr(-, root, %{daemon_group}) /etc/bacula/grant_postgresql_privileges
1143 %endif
1144
1145 # The rest is DB backend independent
1146 %if ! %{client_only}
1147 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1148 %attr(-, root, %{daemon_group}) /etc/bacula/bacula
1149 %attr(-, root, %{daemon_group}) /etc/bacula/bconsole
1150 %attr(-, root, %{daemon_group}) /etc/bacula/create_bacula_database
1151 %attr(-, root, %{daemon_group}) /etc/bacula/drop_bacula_database
1152 %attr(-, root, %{daemon_group}) /etc/bacula/grant_bacula_privileges
1153 %attr(-, root, %{daemon_group}) /etc/bacula/make_bacula_tables
1154 %attr(-, root, %{daemon_group}) /etc/bacula/drop_bacula_tables
1155 %attr(-, root, %{daemon_group}) /etc/bacula/update_bacula_tables
1156 %attr(-, root, %{daemon_group}) /etc/bacula/make_catalog_backup
1157 %attr(-, root, %{daemon_group}) /etc/bacula/delete_catalog_backup
1158 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.dbx
1159 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.gdb
1160 %attr(-, root, %{daemon_group}) /etc/bacula/rescue
1161 %attr(-, root, %{daemon_group}) /etc/bacula/disk-changer
1162 %attr(-, root, %{daemon_group}) /etc/bacula/bacula-ctl-dir
1163 %attr(-, root, %{daemon_group}) /etc/bacula/bacula-ctl-fd
1164 %attr(-, root, %{daemon_group}) /etc/bacula/bacula-ctl-sd
1165 %attr(-, root, %{daemon_group}) /etc/init.d/bacula-dir
1166 %attr(-, root, %{daemon_group}) /etc/init.d/bacula-fd
1167 %attr(-, root, %{storage_daemon_group}) /etc/bacula/dvd-handler
1168 %attr(-, root, %{storage_daemon_group}) /etc/init.d/bacula-sd
1169 %attr(-, root, %{storage_daemon_group}) /etc/bacula/mtx-changer
1170
1171 %doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo 
1172 %doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
1173
1174 /etc/logrotate.d/bacula
1175 /etc/log.d/scripts/services/bacula
1176 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-dir.conf
1177 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-fd.conf
1178 %attr(-, root, %{storage_daemon_group}) %config(noreplace) /etc/bacula/bacula-sd.conf
1179 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bconsole.conf
1180 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/log.d/conf/logfiles/bacula.conf
1181 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/log.d/conf/services/bacula.conf
1182 %attr(-, root, %{daemon_group}) /etc/bacula/query.sql
1183 %attr(-, root, %{daemon_group}) %dir %{working_dir}
1184
1185 /usr/sbin/bacula-dir
1186 /usr/sbin/bacula-fd
1187 /usr/sbin/bacula-sd
1188 /usr/sbin/bcopy
1189 /usr/sbin/bextract
1190 /usr/sbin/bls
1191 /usr/sbin/bscan
1192 /usr/sbin/btape
1193 /usr/sbin/btraceback
1194 /usr/sbin/bconsole
1195 /usr/sbin/dbcheck
1196 /usr/sbin/bsmtp
1197 /usr/sbin/bregex
1198 /usr/sbin/bwild
1199 %endif
1200
1201 %if %{mysql}
1202 %pre mysql
1203 # test for bacula database older than version 8
1204 # note: this ASSUMES no password has been set for bacula database
1205 DB_VER=`mysql 2>/dev/null bacula -e 'select * from Version;'|tail -n 1`
1206 %endif
1207
1208 %if %{sqlite}
1209 %pre sqlite
1210 # test for bacula database older than version 8
1211 if [ -s %{working_dir}/bacula.db ] && [ -s %{sqlite_bindir}/sqlite ];then
1212         DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite 2>/dev/null %{working_dir}/bacula.db | tail -n 1`
1213 %endif
1214
1215 %if %{postgresql}
1216 %pre postgresql
1217 DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
1218 %endif
1219
1220 if [ -n "$DB_VER" ] && [ "$DB_VER" -lt "8" ]; then
1221         echo "This bacula upgrade will update a bacula database from version 8 to 9."
1222         echo "You appear to be running database version $DB_VER. You must first update"
1223         echo "your database to version 8 and then install this upgrade. The alternative"
1224         echo "is to use /etc/bacula/drop_%{db_backend}_tables to delete all your your current"
1225         echo "catalog information, then do the upgrade. Information on updating a"
1226         echo "database older than version 8 can be found in the release notes."
1227         exit 1
1228 fi
1229
1230 %if %{sqlite}
1231 fi
1232 %endif
1233
1234 %if ! %{client_only}
1235 # check for and copy /etc/bacula/console.conf to bconsole.conf
1236 if [ -s /etc/bacula/console.conf ];then
1237         cp -p /etc/bacula/console.conf /etc/bacula/bconsole.conf
1238 fi
1239
1240 # create the daemon users and groups
1241 # first create the groups if they don't exist
1242 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1243 if [ -z "$HAVE_BACULA" ]; then
1244         %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1245         echo "The group %{daemon_group} has been added to %{group_file}."
1246         echo "See the manual chapter \"Running Bacula\" for details."
1247 fi
1248 HAVE_BACULA=`grep %{storage_daemon_group} %{group_file} 2>/dev/null`
1249 if [ -z "$HAVE_BACULA" ]; then
1250         %{groupadd} -r %{storage_daemon_group} > /dev/null 2>&1
1251         echo "The group %{storage_daemon_group} has been added to %{group_file}."
1252         echo "See the manual chapter \"Running Bacula\" for details."
1253 fi
1254 # now create the users if they do not exist
1255 # we do not use the -g option allowing the primary group to be set to system default
1256 # this will be a unique group on redhat type systems or the group users on some systems
1257 HAVE_BACULA=`grep %{storage_daemon_user} %{user_file} 2>/dev/null`
1258 if [ -z "$HAVE_BACULA" ]; then
1259         %{useradd} -r -c "Bacula" -d %{working_dir} -g %{storage_daemon_group} -M -s /sbin/nologin %{storage_daemon_user} > /dev/null 2>&1
1260         echo "The user %{storage_daemon_user} has been added to %{user_file}."
1261         echo "See the manual chapter \"Running Bacula\" for details."
1262 fi
1263 HAVE_BACULA=`grep %{director_daemon_user} %{user_file} 2>/dev/null`
1264 if [ -z "$HAVE_BACULA" ]; then
1265         %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{director_daemon_user} > /dev/null 2>&1
1266         echo "The user %{director_daemon_user} has been added to %{user_file}."
1267         echo "See the manual chapter \"Running Bacula\" for details."
1268 fi
1269 HAVE_BACULA=`grep %{file_daemon_user} %{user_file} 2>/dev/null`
1270 if [ -z "$HAVE_BACULA" ]; then
1271         %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{file_daemon_user} > /dev/null 2>&1
1272         echo "The user %{file_daemon_user} has been added to %{user_file}."
1273         echo "See the manual chapter \"Running Bacula\" for details."
1274 fi
1275 # now we add the supplementary groups, this is ok to call even if the users already exist
1276 # we only do this if the user is NOT root
1277 IS_ROOT=%{director_daemon_user}
1278 if [ "$IS_ROOT" != "root" ]; then
1279 %{usermod} -G %{daemon_group} %{director_daemon_user}
1280 fi
1281 IS_ROOT=%{storage_daemon_user}
1282 if [ "$IS_ROOT" != "root" ]; then
1283 %{usermod} -G %{daemon_group},%{storage_daemon_group} %{storage_daemon_user}
1284 fi
1285 IS_ROOT=%{file_daemon_user}
1286 if [ "$IS_ROOT" != "root" ]; then
1287 %{usermod} -G %{daemon_group} %{file_daemon_user}
1288 fi
1289 %endif
1290
1291 %if %{mysql}
1292 %post mysql
1293 %endif
1294 %if %{sqlite}
1295 %post sqlite
1296 %endif
1297 %if %{postgresql}
1298 %post postgresql
1299 %endif
1300
1301 %if ! %{client_only}
1302 # add our links
1303 if [ "$1" -ge 1 ] ; then
1304 /sbin/chkconfig --add bacula-dir
1305 /sbin/chkconfig --add bacula-fd
1306 /sbin/chkconfig --add bacula-sd
1307 fi
1308 %endif
1309
1310 %if %{mysql}
1311 # test for an existing database
1312 # note: this ASSUMES no password has been set for bacula database
1313 DB_VER=`mysql 2>/dev/null bacula -e 'select * from Version;'|tail -n 1`
1314
1315 # grant privileges and create tables if they do not exist
1316 if [ -z "$DB_VER" ]; then
1317         echo "Hmm, doesn't look like you have an existing database."
1318         echo "Granting privileges for MySQL user bacula..."
1319         /etc/bacula/grant_mysql_privileges
1320         echo "Creating MySQL bacula database..."
1321         /etc/bacula/create_mysql_database
1322         echo "Creating bacula tables..."
1323         /etc/bacula/make_mysql_tables
1324
1325 # check to see if we need to upgrade a 1.36 or lower database
1326 elif [ "$DB_VER" -lt "9" ]; then
1327         echo "This release requires an upgrade to your bacula database."
1328         echo "Backing up your current database..."
1329         mysqldump -f --opt bacula | bzip2 > %{working_dir}/bacula_backup.sql.bz2
1330         echo "Upgrading bacula database ..."
1331         /etc/bacula/update_mysql_tables
1332         echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
1333
1334 fi
1335 %endif
1336
1337 %if %{sqlite}
1338 # test for an existing database
1339 if [ -s %{working_dir}/bacula.db ]; then
1340         DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite 2>/dev/null %{working_dir}/bacula.db | tail -n 1`
1341         # check to see if we need to upgrade a 1.36 or lower database
1342         if [ "$DB_VER" -lt "9" ] && [ "$DB_VER" -ge "8" ]; then
1343                 echo "This release requires an upgrade to your bacula database."
1344                 echo "Backing up your current database..."
1345                 echo ".dump" | %{sqlite_bindir}/sqlite %{working_dir}/bacula.db | bzip2 > %{working_dir}/bacula_backup.sql.bz2
1346                 echo "Upgrading bacula database ..."
1347                 /etc/bacula/update_sqlite_tables
1348                 echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
1349         fi
1350 else
1351         # create the database and tables
1352         echo "Hmm, doesn't look like you have an existing database."
1353         echo "Creating SQLite database..."
1354         /etc/bacula/create_sqlite_database
1355         echo "Creating the SQLite tables..."
1356         /etc/bacula/make_sqlite_tables
1357 fi
1358 %endif
1359
1360 %if %{postgresql}
1361 # test for an existing database
1362 # note: this ASSUMES no password has been set for bacula database
1363 DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
1364
1365 # grant privileges and create tables if they do not exist
1366 if [ -z "$DB_VER" ]; then
1367         echo "Hmm, doesn't look like you have an existing database."
1368         echo "Creating PostgreSQL bacula database..."
1369         /etc/bacula/create_postgresql_database
1370         echo "Creating bacula tables..."
1371         /etc/bacula/make_postgresql_tables
1372         echo "Granting privileges for PostgreSQL user bacula..."
1373         /etc/bacula/grant_postgresql_privileges
1374
1375 # check to see if we need to upgrade a 1.36 or lower database
1376 elif [ "$DB_VER" -lt "9" ]; then
1377         echo "This release requires an upgrade to your bacula database."
1378         echo "Backing up your current database..."
1379         pg_dump bacula | bzip2 > %{working_dir}/bacula_backup.sql.bz2
1380         echo "Upgrading bacula database ..."
1381         /etc/bacula/update_postgresql_tables
1382         echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
1383         
1384 fi
1385 %endif
1386
1387 %if ! %{client_only}
1388 # generate passwords if needed
1389 if [ -d /etc/bacula ]; then
1390         cd /etc/bacula
1391         for file in *.conf; do
1392                 for string in XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX; do
1393                         need_password=`grep $string $file 2>/dev/null`
1394                         if [ -n "$need_password" ]; then
1395                                 pass=`openssl rand -base64 33`
1396                                 sed "s-$string-$pass-g" $file > $file.new
1397                                 cp -f $file.new $file; rm -f $file.new
1398                         fi
1399                 done
1400         done
1401 fi
1402 %endif
1403
1404 %if %{mysql}
1405 %preun mysql
1406 %endif
1407 %if %{sqlite}
1408 %preun sqlite
1409 %endif
1410 %if %{postgresql}
1411 %preun postgresql
1412 %endif
1413
1414 %if ! %{client_only}
1415 # delete our links
1416 if [ $1 = 0 ]; then
1417 /sbin/chkconfig --del bacula-dir
1418 /sbin/chkconfig --del bacula-fd
1419 /sbin/chkconfig --del bacula-sd
1420 fi
1421 %endif
1422
1423
1424 %if ! %{client_only}
1425 %files mtx
1426 %attr(-, root, %{storage_daemon_group}) /usr/sbin/loaderinfo
1427 %attr(-, root, %{storage_daemon_group}) /usr/sbin/mtx
1428 %attr(-, root, %{storage_daemon_group}) /usr/sbin/scsitape
1429 %attr(-, root, %{storage_daemon_group}) /usr/sbin/tapeinfo
1430 /usr/man/man1/*
1431 %endif
1432
1433
1434 %files client
1435 %defattr(-,root,root)
1436 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1437 %attr(-, root, %{daemon_group}) /etc/bacula/bconsole
1438 /etc/bacula/bacula-ctl-fd
1439 /etc/init.d/bacula-fd
1440 %attr(-, root, %{daemon_group}) /etc/bacula/rescue
1441
1442 %doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo 
1443 %doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
1444
1445 /etc/logrotate.d/bacula
1446
1447 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-fd.conf
1448 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bconsole.conf
1449 %attr(-, root, %{daemon_group}) %dir %{working_dir}
1450
1451 /usr/sbin/bacula-fd
1452 /usr/sbin/btraceback
1453 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.gdb
1454 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.dbx
1455 /usr/sbin/bconsole
1456
1457
1458 %pre client
1459 # create the daemon group and user
1460 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1461 if [ -z "$HAVE_BACULA" ]; then
1462         %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1463         echo "The group %{daemon_group} has been added to %{group_file}."
1464         echo "See the manual chapter \"Running Bacula\" for details."
1465 fi
1466 # we do not use the -g option allowing the primary group to be set to system default
1467 # this will be a unique group on redhat type systems or the group users on some systems
1468 HAVE_BACULA=`grep %{file_daemon_user} %{user_file} 2>/dev/null`
1469 if [ -z "$HAVE_BACULA" ]; then
1470         %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{file_daemon_user} > /dev/null 2>&1
1471         echo "The user %{file_daemon_user} has been added to %{user_file}."
1472         echo "See the manual chapter \"Running Bacula\" for details."
1473 fi
1474 # now we add the supplementary group, this is ok to call even if the user already exists
1475 # we only do this if the user is NOT root
1476 IS_ROOT=%{file_daemon_user}
1477 if [ "$IS_ROOT" != "root" ]; then
1478 %{usermod} -G %{daemon_group} %{file_daemon_user}
1479 fi
1480
1481 %post client
1482 # add our link
1483 if [ "$1" -ge 1 ] ; then
1484 /sbin/chkconfig --add bacula-fd
1485 fi
1486
1487 # generate passwords if needed
1488 if [ -d /etc/bacula ]; then
1489         cd /etc/bacula
1490         for file in *.conf; do
1491                 for string in XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX; do
1492                         need_password=`grep $string $file 2>/dev/null`
1493                         if [ -n "$need_password" ]; then
1494                                 pass=`openssl rand -base64 33`
1495                                 sed "s-$string-$pass-g" $file > $file.new
1496                                 cp -f $file.new $file; rm -f $file.new
1497                         fi
1498                 done
1499         done
1500 fi
1501
1502 %preun client
1503 # delete our link
1504 if [ $1 = 0 ]; then
1505 /sbin/chkconfig --del bacula-fd
1506 fi
1507
1508 %if ! %{client_only}
1509 %files updatedb
1510 %defattr(-,root,%{daemon_group})
1511 /etc/bacula/updatedb/*
1512
1513 %pre updatedb
1514 # create the daemon group
1515 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1516 if [ -z "$HAVE_BACULA" ]; then
1517         %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1518         echo "The group %{daemon_group} has been added to %{group_file}."
1519         echo "See the manual chapter \"Running Bacula\" for details."
1520 fi
1521
1522 %post updatedb
1523 echo "The database update scripts were installed to /etc/bacula/updatedb"
1524 %endif
1525
1526 %if %{gconsole}
1527 %files gconsole
1528 %defattr(-,root,root)
1529 /usr/sbin/gnome-console
1530 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1531 %attr(-, root, %{daemon_group}) /etc/bacula/gconsole
1532 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/gnome-console.conf
1533 /usr/share/pixmaps/bacula.png
1534 /usr/share/applications/bacula.desktop
1535 %endif
1536
1537 %if %{gconsole} && ! %{rh8}
1538 /usr/sbin/bacula-tray-monitor
1539 %config(noreplace) /etc/bacula/tray-monitor.conf
1540 /usr/share/pixmaps/bacula-tray-monitor.xpm
1541 /usr/share/applications/bacula-tray-monitor.desktop
1542 %endif
1543
1544 %if %{gconsole} && ! %{su9} && ! %{su10}
1545 # add the console helper files
1546 %config(noreplace,missingok) /etc/pam.d/gnome-console
1547 %config(noreplace,missingok) /etc/security/console.apps/gnome-console
1548 /usr/bin/gnome-console
1549 %endif
1550
1551 %if %{gconsole}
1552 %pre gconsole
1553 # create the daemon group
1554 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1555 if [ -z "$HAVE_BACULA" ]; then
1556         %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1557         echo "The group %{daemon_group} has been added to %{group_file}."
1558         echo "See the manual chapter \"Running Bacula\" for details."
1559 fi
1560
1561 %post gconsole
1562 # generate passwords if needed
1563 if [ -d /etc/bacula ]; then
1564         cd /etc/bacula
1565         for file in *.conf; do
1566                 for string in XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX; do
1567                         need_password=`grep $string $file 2>/dev/null`
1568                         if [ -n "$need_password" ]; then
1569                                 pass=`openssl rand -base64 33`
1570                                 sed "s-$string-$pass-g" $file > $file.new
1571                                 cp -f $file.new $file; rm -f $file.new
1572                         fi
1573                 done
1574         done
1575 fi
1576 %endif
1577
1578 %if %{wxconsole}
1579 %files wxconsole
1580 %defattr(-,root,root)
1581 /usr/sbin/wxconsole
1582 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1583 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/wxconsole.conf
1584 /usr/share/pixmaps/wxwin16x16.xpm
1585 /usr/share/applications/wxconsole.desktop
1586 %endif
1587
1588 %if %{wxconsole} && ! %{su9} && ! %{su10}
1589 # add the console helper files
1590 %config(noreplace,missingok) /etc/pam.d/wxconsole
1591 %config(noreplace,missingok) /etc/security/console.apps/wxconsole
1592 /usr/bin/wxconsole
1593 %endif
1594
1595 %if %{wxconsole}
1596 %pre wxconsole
1597 # create the daemon group
1598 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1599 if [ -z "$HAVE_BACULA" ]; then
1600         %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1601         echo "The group %{daemon_group} has been added to %{group_file}."
1602         echo "See the manual chapter \"Running Bacula\" for details."
1603 fi
1604
1605 %post wxconsole
1606 # generate passwords if needed
1607 if [ -d /etc/bacula ]; then
1608         cd /etc/bacula
1609         for file in *.conf; do
1610                 for string in XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX; do
1611                         need_password=`grep $string $file 2>/dev/null`
1612                         if [ -n "$need_password" ]; then
1613                                 pass=`openssl rand -base64 33`
1614                                 sed "s-$string-$pass-g" $file > $file.new
1615                                 cp -f $file.new $file; rm -f $file.new
1616                         fi
1617                 done
1618         done
1619 fi
1620 %endif
1621
1622 %changelog
1623 * Sat Aug 05 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1624 - bug 648 renable and update sqlite patches
1625 * Mon Jul 17 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1626 - move pango-devel BuildRequires into gconsole only build
1627 * Sat Jul 15 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1628 - add provides and conflicts for standard suse packages
1629 - add third party packager tag support
1630 - add build_client_only tag
1631 - remove bsmtp from client package
1632 - add bacula-ctl-fd to client package
1633 * Thu Jul 13 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1634 - fix directory creation when wxconsole and not gconsole
1635 * Tue Jul 04 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1636 - add check to buildrequires to make sure libstdc++ version matches gcc
1637 * Mon Jul 03 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1638 - add python build support
1639 - fix LDFLAGS declarations
1640 * Sun Jul 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1641 - add requires for standard compiler toolchain
1642 - move version and release tags up
1643 - move patches up
1644 - add docs_version tag
1645 * Sat Jul 01 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1646 - update rescuever to 1.8.6
1647 * Sun Jun 25 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1648 - update depkgs to 25Jun06
1649 - add mysql5 build tag
1650 * Mon Jun 12 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1651 - 1.38.10 bump rescue version
1652 * Sun Jun 03 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1653 - fix usermod statements
1654 - add fc5 target
1655 * Thu Apr 27 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1656 - add -g param back to useradd statements Bug 605
1657 * Mon Apr 17 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1658 - redundant code cleanup
1659 * Sun Apr 16 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1660 - add wxconsole package
1661 * Fri Apr 14 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1662 - 1.38.8 release
1663 - dependency update for Mandriva
1664 * Sun Apr 08 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1665 - 1.38.7 release
1666 - remove -n option from useradd scripts
1667 * Sun Apr 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1668 - 1.38.6 release
1669 - fix problem specifying more than one primary group for user bacula
1670 - add build switch to not build gconsole regardless of platform
1671 * Sun Jan 29 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1672 - add centos3 build tag
1673 - fix link error of static-fd on Mandrake with --disable-nls
1674 * Fri Jan 27 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1675 - add fc4 dependencies
1676 * Mon Jan 23 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1677 - add SuSE 10.0 build
1678 - remove specific permission in attrib macros
1679 * Sat Jan 21 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1680 - 1.38.5 release
1681 - fix usermode required on suse, suse doesn't have usermode (xsu instead)
1682 - refix compat for _dist on SLES9 which seems to have been removed
1683 - added note regarding Aleksandar's use of specific permissions in attrib macros
1684 - need to review and add specific fc4 build currently using fc3 Requires
1685 * Wed Dec 14 2005 Aleksandar Milivojevic <alex@milivojevic.org>
1686 - 1.38.2 release
1687 - Reorganize files and pre/post sections to remove repetitions
1688 - Always build separate mtx package
1689 - Fix file ownerships for /etc/bacula and Bacula's working dir
1690 * Wed Nov 23 2005 Aleksandar Milivojevic <alex@milivojevic.org>
1691 - Disable GNOME on RH7
1692 * Fri Nov 18 2005 Aleksandar Milivojevic <alex@milivojevic.org>
1693 - Red Hat and look alikes have mtx RPM, do not build/package our version
1694 * Sun Nov 13 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1695 - minor edit to _dist for SLES9 compatibility
1696 * Sat Nov 05 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1697 - 1.38.0 release
1698 - kern changed location of pdf files and html manual in docs package
1699 * Sun Oct 30 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1700 - 1.38.0 release
1701 - add docs (from prebuilt tarball) and rescue packages back in
1702 - remove dvd-freespace and dvd-writepart files, add dvd-handler
1703 - remove 3 of 4 sqlite script patches as not needed
1704 * Sun Jul 24 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1705 - changes for 1.38
1706 - remove docs and rescue sections (remove static fd)
1707 - add dvd-freespace and dvd-writepart files
1708 - update depkgs to 22Jun05
1709 - change database update to 8 to 9
1710 * Sun Jul 24 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1711 - minor cleanups before 1.38 changes
1712 - add popt and popt-devel build dependencies
1713 - add tetex and tetex-dvips dependencies for doc build
1714 - replace deprecated Copyright tag with License
1715 * Sat May 07 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1716 - move sqlite installation bindir to /usr/lib/bacula/sqlite and remove
1717 - conflict with sqlite packages. remove readline dependency.
1718 * Sun Apr 17 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1719 - release 1.36.3 update docs
1720 * Tue Apr 05 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1721 - add centos4 build tag
1722 - add x86_64 build tag
1723 * Sun Apr 03 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1724 - add rhel4 build tag
1725 - clean up for mysql4 which is now mdk-10.1, suse-9.2 and rhel4
1726 * Sun Mar 06 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1727 - add rhel3 build tag
1728 * Tue Mar 01 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1729 - fix tray-monitor.conf for noreplace
1730 * Mon Feb 28 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1731 - fix distribution check for Fedora and Whitebox
1732 * Sun Feb 06 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1733 - add logwatch script
1734 - add dvd scripts
1735 * Sat Jan 15 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1736 - add build for Fedora Core 3 (linc now included in ORDit2)
1737 - add mysql4 define for Mandrake 10.1
1738 * Fri Jan 14 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1739 - fix {group_file} variable in post scripts
1740 * Thu Dec 30 2004 D. Scott Barninger <barninger@fairfieldcomputers.com>
1741 - add distribution checking and custom Distribution tag
1742 * Thu Dec 09 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1743 - ASSIGNMENT OF COPYRIGHT
1744 - FOR VALUE RECEIVED, D. Scott Barninger hereby sells, transfers and 
1745 - assigns unto Kern Sibbald, his successors, assigns and personal representatives, 
1746 - all right, title and interest in and to the copyright in this software RPM
1747 - spec file. D. Scott Barninger warrants good title to said copyright, that it is 
1748 - free of all liens, encumbrances or any known claims against said copyright.
1749 * Sat Dec 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1750 - bug 183 fixes
1751 - thanks to Daniel Widyono
1752 - update description for rescue package to describe cdrom creation
1753 * Thu Nov 18 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1754 - update depkgs to 29Oct04
1755 * Fri Nov 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1756 - add cdrom rescue to bacula-rescue package
1757 * Sun Oct 31 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1758 - misc fixes from 1.36.0 suse feedback
1759 - fix situation where sqlite database exists but sqlite has been removed.
1760 * Fri Oct 22 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1761 - remove tray-monitor from RH8 build
1762 - fix permissions on tray-monitor files
1763 * Wed Oct 13 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1764 - add Mandrake support and tray-monitor, misc changes for 1.35.8/1.36.0,
1765 - change database update to 7 to 8 upgrade,
1766 - revert depkgs to 08Mar04 as there seems to be a bug in the sqlite
1767 - build in 30Jul04, add freetype dependancy to gnome package.
1768 * Sun Sep 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1769 - add documentation to console for groupadd
1770 * Sat Sep 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1771 - add support for running daemons as root.bacula
1772 - correct for change in location of floppy rescue files in 1.35.2
1773 - removed /etc/bacula/fd script from all packages as it has disappeared from 1.35.2
1774 - updated depgkgs to 30Jul04
1775 * Thu Jun 24 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1776 - really, really fix symlink creation for gconsole
1777 * Thu Jun 17 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1778 - fix symlink creation in gconsole post install
1779 * Sat Jun 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1780 - fixed error in gconsole post script
1781 * Fri Apr 30 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1782 - add check for gconsole symlink before trying to create it
1783 * Sun Apr 11 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1784 - fix some minor permissions issues on doc files that CVS won't let us fix
1785 * Sun Apr 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1786 - add pkgconfig to BuildRequires
1787 - clean up gnome1/2 menu entries for appropriate packages
1788 * Fri Apr 02 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1789 - tightened up doc distribution
1790 * Tue Mar 30 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1791 - added usermode (Redhat) and xsu (SuSE) support for gnome-console;
1792 - rpm's horrible bug that prevents nested conditional macros prevents me
1793 - from implementing these 2 separate approaches within the conditionals which
1794 - create the separate server packages.
1795 - the solution adopted is to remove the gnome-console files from the server packages
1796 - so bacula-gconsole is now an add on for both client and server packages.
1797 - this also now allows the server packages to be install on machines without
1798 - an X-server and we can still maintain a single spec file.
1799 - added tests to make sure we have defined platform and database macros.
1800 * Sat Mar 13 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1801 - corrected mysql prerequisites for suse
1802 * Mon Mar 1 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1803 - replaced all cp commands with cp -p
1804 - removed addition of a+x permissions on gnome-console
1805 - corrected permissions on init scripts
1806 * Sat Feb 28 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1807 - corrected creation of sqlite_bindir in install from !mysql to sqlite
1808 -
1809 - various cleanup patches from Michael K. Johnson:
1810 - corrected post install routines for nicer chkconfig
1811 - removed chmod changes in post routines and moved to install section
1812 - removed interactive nature of post routine for rescue package
1813 - added description of building rescue disks to the description of rescue package
1814 - added clean of build root to beginning of install
1815 - removed specifying attr in all file lists
1816 * Fri Feb 20 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1817 - added bconsole to client package
1818 - added gconsole package as add-on to client
1819 - removed spurious dependancies on updatedb package (!cut/paste)
1820 * Thu Feb 19 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1821 - added updatedb package
1822 * Thu Feb 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1823 - added postgresql package
1824 * Wed Feb 11 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1825 - corrected the if else logic in the dependancy sections
1826 - changes for 1.34 release
1827 - /etc/bacula/console is now /etc/bacula/bconsole
1828 - /etc/bacula/console.conf is now /etc/bacula/bconsole.conf
1829 - /usr/sbin/btraceback.gdb is now /etc/bacula/btraceback.gdb
1830 - /usr/sbin/smtp is now /usr/sbin/bsmtp
1831 - added new /etc/bacula/drop_mysql_database
1832 - added new /etc/bacula/drop_sqlite_database
1833 - added new /etc/bacula/grant_sqlite_privileges
1834 - added new generic bacula database scripts in /etc/bacula
1835 - added pre-install sections to check for database versions older than 6
1836 - added check for /etc/bacula/console.conf and copy to bconsole.conf
1837 * Sun Feb 08 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1838 - added /etc/bacula/update_sqlite_tables and /etc/bacula/update_mysql_tables for 1.34 release
1839 - added testing for existing databases before executing any of the database creation scripts
1840 - added defines working_dir and sqlite_bindir in place of hard coded paths
1841 * Sat Jan 31 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1842 - added build configuration for SuSE.
1843 - Thanks to Matt Vollmar <matt at panamschool.edu.sv> for his input
1844 * Sat Jan 24 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1845 - added patch for create_sqlite_database to fix the installed bindir
1846 - added execute of create_sqlite_database to post of sqlite package
1847 * Sat Jan 10 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1848 - added virtual package Provides bacula-dir, bacula-sd, bacula-fd
1849 - added bacula-fd as Requires for rescue package
1850 - added build tag for Fedora Core 1
1851 - cleaned up dependancies for all builds
1852 * Thu Jan 1 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1853 - removed rh_version from package names
1854 - added platform build configuration section to beginning of file
1855 * Tue Nov 25 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1856 - removed make_static_bacula script from rescue package install
1857 * Sun Nov 23 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1858 - Added define at top of file for depkgs version
1859 - Added rescue sub-package
1860 - Moved requires statements into proper sub-package locations
1861 * Mon Oct 27 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1862 - Corrected Requires for Gnome 1.4/2.0 builds
1863 * Fri Oct 24 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1864 - Added separate source declaration for depkgs
1865 - added patch for make_catalog_backup script
1866 * Mon May 11 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1867 - Misc changes to mysql/sqlite build and rh7/8 menu differences
1868 - Added rh_version to sub-package names
1869 - Added installed but missing file /etc/bacula/gconsole
1870 - rm'd /etc/bacula/grant_mysql_privileges on sqlite builds
1871 * Thu May 08 2003 Kern Sibbald <kern at sibbald.com>
1872 - Update spec for version 1.31 and combine client
1873 * Sun Mar 30 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1874 - Initial spec file