]> TLD Linux GIT Repositories - packages/bacula.git/blobdiff - bacula.spec
- missing patch
[packages/bacula.git] / bacula.spec
index 1c5444adb99e5244e3a9851b7d43eef25c0cc7a9..cffb6ea7e4631a10cc8146f43a7dd5b82912c569 100644 (file)
@@ -1,28 +1,35 @@
-# TODO:
+## TODO:
+#      - fix libtoolize
+#      - update desktop files, think about su-wrappers for console (with .desktop files)
 #      - fix log file permissions
 #
 # Conditional build:
-%bcond_without bat                     # bat Qt4 GUI
+%bcond_without qt                      # BAT / qt-console Qt5 GUI
 %bcond_without mysql                   # use MySQL
 %bcond_without pgsql                   # use PostgreSQL
 %bcond_without sqlite3                 # use SQLite3
-%bcond_without nagios          # build nagios plugin
+%bcond_without nagios                  # build nagios plugin
+%bcond_with    s3                      # Amazon S3 cloud backend
 %bcond_with    sqlite3_sync_off        # makes SQLite3 backend much faster, but less reliable
 
 %if %{without sqlite3}
 %undefine       with_sqlite3_sync_off
 %endif
 
-%define        qtver   4.6.2
+# Bacula requires this specific, custom version
+%define                libs3_version   20200523
+
 Summary:       Bacula - The Network Backup Solution
 Summary(pl.UTF-8):     Bacula - rozwiązanie do wykonywania kopii zapasowych po sieci
 Name:          bacula
-Version:       9.2.1
+Version:       13.0.3
 Release:       1
 License:       AGPL v3
 Group:         Networking/Utilities
 Source0:       http://downloads.sourceforge.net/bacula/%{name}-%{version}.tar.gz
-# Source0-md5: a0f825a3f083f8f586278f36d12eb5c0
+# Source0-md5: e686d4f1864c8c3e5c4ccb48a50db9a7
+Source1:       https://www.bacula.org/downloads/libs3-%{libs3_version}.tar.gz
+# Source1-md5: ca97bc4133a21981139181ec8571f202
 Source10:      %{name}-dir.init
 Source11:      %{name}-fd.init
 Source12:      %{name}-sd.init
@@ -36,31 +43,37 @@ Patch2:             %{name}-conf.patch
 Patch3:                %{name}-desktop.patch
 Patch4:                make_catalog_backup-setup-home.patch
 Patch5:                %{name}-libtool.patch
+Patch6:                %{name}-no_lockmgr.patch
+Patch7:                x32.patch
+Patch8:                libs3-curl.patch
 URL:           http://www.bacula.org/
 BuildRequires: acl-devel
-BuildRequires: autoconf
+BuildRequires: autoconf >= 2.61
 BuildRequires: automake
-BuildRequires: gettext-devel
+%{?with_s3:BuildRequires:      curl-devel}
+BuildRequires: gettext-tools
 BuildRequires: libcap-devel
 BuildRequires: libtool >= 2:2.2
 BuildRequires: libwrap-devel
+%{?with_s3:BuildRequires:      libxml2-devel}
 BuildRequires: ncurses-devel
 BuildRequires: openssl-devel
 BuildRequires: pkgconfig
-BuildRequires: python-devel
-BuildRequires: python-modules
-%if %{with bat}
-BuildRequires: QtCore-devel
-BuildRequires: QtGui-devel
-BuildRequires: qt4-build >= %{qtver}
-BuildRequires: qt4-qmake >= %{qtver}
+BuildRequires: python3
+BuildRequires: python3-modules
+%if %{with qt}
+BuildRequires: Qt5Core-devel
+BuildRequires: Qt5Gui-devel
+BuildRequires: Qt5Widgets-devel
+BuildRequires: qt5-build
+BuildRequires: qt5-qmake
 %endif
 %{?with_mysql:BuildRequires:   mysql-devel}
 %{?with_pgsql:BuildRequires:   postgresql-devel}
 BuildRequires: readline-devel
 BuildRequires: rpm >= 4.4.9-56
 BuildRequires: rpm-pythonprov
-BuildRequires: rpmbuild(macros) >= 1.268
+BuildRequires: rpmbuild(macros) >= 1.644
 BuildRequires: sed >= 4.0
 %{?with_sqlite3:BuildRequires: sqlite3-devel}
 BuildRequires: which
@@ -71,6 +84,9 @@ BuildRoot:    %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 %define                _localstatedir  /var/lib/%{name}
 %define                nagiosplugindir %{_libdir}/nagios/plugins
 
+# db packages contain duplicates
+%define                _duplicate_files_terminate_build        0
+
 # from 'the worst' to 'the best'
 %define        databases %{?with_sqlite3:sqlite3} %{?with_mysql:mysql} %{?with_pgsql:postgresql}
 
@@ -148,7 +164,7 @@ Summary(pl.UTF-8):  Usługi Bacula Director i Catalog
 Group:         Networking/Utilities
 Requires(post):        sed >= 4.0
 Requires:      %{name}-common = %{version}-%{release}
-Requires:      bacula(db) = %{version}-%{release}
+Requires:      bacula-db = %{version}-%{release}
 Obsoletes:     bacula-updatedb
 
 %description dir
@@ -200,49 +216,42 @@ Bacula Console to program umożliwiający administratorowi lub
 użytkownikowi komunikowanie się z programem Bacula Director. To jest
 interfejs czysto tekstowy.
 
-%package console-wx
-Summary:       Bacula wxWidgets Console
-Summary(pl.UTF-8):     Konsola Baculi oparta na wxWidgets
+%package console-qt
+Summary:       bat – The Bacula Administration Tool
+Summary(pl.UTF-8):     bat – narzędzie administratora Baculi
 Group:         Networking/Utilities
 Requires(post):        sed >= 4.0
 Requires:      %{name}-common = %{version}-%{release}
+Requires:      Qt5Core
 
-%description console-wx
+%description console-qt
 Bacula - It comes by night and sucks the vital essence from your
 computers.
 
-Bacula Console is the program that allows the administrator or user to
-communicate with the Bacula Director. This is the wxWidgets GUI
-interface.
+bat is short for Bacula Administration Tool. It is a GUI form of
+bconsole, but with many additional features.
 
-%description console-wx -l pl.UTF-8
+%description console-qt -l pl.UTF-8
 Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
 
-Bacula Console to program umożliwiający administratorowi lub
-użytkownikowi komunikowanie się z programem Bacula Director. To jest
-interfejs graficzny oparty na wxWidgets.
+bat, czyli Bacula Administration Tool, jest graficznym odpowiednikiem
+bconsole, z wieloma dodatkowymi funkcjami.
 
-%package console-qt4
-Summary:       Bacula Qt4 Console
-Summary(pl.UTF-8):     Konsola Baculi oparta na Qt4
+%package tray-monitor
+Summary:       Bacula Tray Monitor
 Group:         Networking/Utilities
 Requires(post):        sed >= 4.0
 Requires:      %{name}-common = %{version}-%{release}
-Requires:      QtCore >= %{qtver}
 
-%description console-qt4
+%description tray-monitor
 Bacula - It comes by night and sucks the vital essence from your
 computers.
 
-Bacula Console is the program that allows the administrator or user to
-communicate with the Bacula Director. This is the Qt4 GUI interface.
-
-%description console-qt4 -l pl.UTF-8
-Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
-
-Bacula Console to program umożliwiający administratorowi lub
-użytkownikowi komunikowanie się z programem Bacula Director. To jest
-interfejs graficzny oparty na Qt4.
+The Monitor program is typically an icon in the system tray. However,
+once the icon is expanded into a full window, the administrator or
+user can obtain status information about the Director or the backup
+status on the local workstation or any other Bacula daemon that is
+configured.
 
 %package fd
 Summary:       Bacula File services (Client)
@@ -285,6 +294,7 @@ Summary(pl.UTF-8):  Usługi Bacula Storage
 Group:         Networking/Utilities
 Requires(post):        sed >= 4.0
 Requires:      %{name}-common = %{version}-%{release}
+Suggests:      mtx
 Conflicts:     dvd+rw-tools <= 5.21.4.10.8-1
 
 %description sd
@@ -315,8 +325,8 @@ Summary(pl.UTF-8):  Sterownik bazy PostgreSQL dla Baculi
 Group:         Networking/Utilities
 Requires(post):        /sbin/ldconfig
 Requires:      %{name}-common = %{version}-%{release}
-Provides:      bacula(db) = %{version}-%{release}
-Obsoletes:     bacula(db)
+Provides:      bacula-db = %{version}-%{release}
+Obsoletes:     bacula-db
 
 %description db-postgresql
 PostgreSQL database driver for Bacula.
@@ -330,8 +340,8 @@ Summary(pl.UTF-8):  Sterownik bazy MySQL dla Baculi
 Group:         Networking/Utilities
 Requires(post):        /sbin/ldconfig
 Requires:      %{name}-common = %{version}-%{release}
-Provides:      bacula(db) = %{version}-%{release}
-Obsoletes:     bacula(db)
+Provides:      bacula-db = %{version}-%{release}
+Obsoletes:     bacula-db
 
 %description db-mysql
 MySQL database driver for Bacula.
@@ -345,8 +355,8 @@ Summary(pl.UTF-8):  Sterownik bazy SQLite dla Baculi
 Group:         Networking/Utilities
 Requires(post):        /sbin/ldconfig
 Requires:      %{name}-common = %{version}-%{release}
-Provides:      bacula(db) = %{version}-%{release}
-Obsoletes:     bacula(db)
+Provides:      bacula-db = %{version}-%{release}
+Obsoletes:     bacula-db
 
 %description db-sqlite3
 SQLite database driver for Bacula.
@@ -362,17 +372,26 @@ Requires: nagios-common
 %description -n nagios-plugin-check_bacula
 Nagios plugin to check bacula.
 
-# provided by various db libraries as a symlink
 %define        _noautoreq      libbaccats-%{version}.so
+# provided by various db libraries as a symlink
 
 %prep
-%setup -q
+%setup -q -a 1
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
+%patch6 -p1
+%ifarch x32
+%patch7 -p1
+%endif
+%if %{with s3}
+cd libs3-%{libs3_version}
+%patch8 -p1
+cd ..
+%endif
 
 sed -i -e 's#bindir=.*#bindir=%{_bindir}#g' \
        src/cats/create_* src/cats/delete_* src/cats/drop_* \
@@ -382,20 +401,28 @@ sed -i -e 's/@basename@/--hostname--/' src/*/*.conf.in
 
 %build
 cd autoconf
-%{__aclocal} -I bacula-macros -I gettext-macros
-%{__libtoolize}
-mv autoconf/* .
-rmdir autoconf
+%{__aclocal} -I bacula-macros -I gettext-macros -I libtool
+## $BUILD_DIR not seen by libtoolize, export it
+#BUILD_DIR=.. %%{__libtoolize}
 cd ..
 %{__autoconf} --prepend-include=$(pwd)/autoconf autoconf/configure.in > configure
 
+%if %{with s3}
+cd libs3-%{libs3_version}
+CFLAGS="%{rpmcflags} -Wno-stringop-overflow" make VERBOSE=1 build/lib/libs3.a
+ln -s ../inc build/include
+cd ..
+%endif
+
 CPPFLAGS="-I/usr/include/ncurses -I%{_includedir}/readline"
+CXXFLAGS="%{rpmcxxflags} -Wno-narrowing"
+CFLAGS="%{rpmcflags} -Wno-narrowing"
 
-WXCONFIG=%{_bindir}/wx-gtk2-unicode-config \
-QMAKE=%{_bindir}/qt4-qmake \
+BUILD_DIR=$(pwd) \
+QMAKE=%{_bindir}/qmake-qt5 \
 %configure \
        --with-scriptdir=%{_libexecdir}/%{name} \
-       %{?with_bat:--enable-bat} \
+       %{?with_qt:--enable-bat} \
        --disable-conio \
        --enable-smartalloc \
        --with-readline \
@@ -407,12 +434,13 @@ QMAKE=%{_bindir}/qt4-qmake \
        --with-logdir=/var/log/bacula \
        --with-pid-dir=/var/run \
        --with-subsys-dir=/var/lock/subsys \
-       --with-systemd=/lib/systemd/system \
        --enable-batch-insert \
        %{?with_pgsql:--with-postgresql} \
        %{?with_mysql:--with-mysql} \
        %{?with_sqlite3:--with-sqlite3} \
        %{?with_sqlite3_sync_off:--enable-extra-sqlite3-init="pragma synchronous=0;"} \
+       %{!?with_s3:--without-s3} \
+       %{?with_s3:--with-s3=$PWD/libs3-%{libs3_version}/build} \
        --with-dir-password="#FAKE-dir-password#" \
        --with-fd-password="#FAKE-fd-password#" \
        --with-sd-password="#FAKE-sd-password#" \
@@ -421,15 +449,19 @@ QMAKE=%{_bindir}/qt4-qmake \
        --with-mon-sd-password="#FAKE-mon-sd-password#" \
        --with-openssl
 
-%if %{with bat}
+%if %{with qt}
 cd src/qt-console
-qmake-qt4 bat.pro
+qmake-qt5 bat.pro
 cd ../..
 %endif
 
-%{__make} 2>&1 | tee log
+%{__make} \
+       %{?with_s3:S3_LIBS="$PWD/libs3-%{libs3_version}/build/lib/libs3.a $(pkg-config --libs libcurl libxml-2.0)"} \
+       2>&1 | tee log
 # check for build errors
 grep "Error in" log && exit 1
+# without this build fails with RPM_EC=1 on rpm.org RPM
+echo "OK"
 
 %if %{with nagios}
 # nagios plugin
@@ -438,20 +470,29 @@ grep "Error in" log && exit 1
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,logrotate.d,pam.d,sysconfig}
-install -d $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_mandir},%{_bindir},/var/log/bacula}
+install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,logrotate.d,pam.d,sysconfig} \
+               $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir}} \
+               $RPM_BUILD_ROOT{%{_mandir},%{_bindir},/var/log{,/archive}/bacula}
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
+%{__make} -C src/stored install-aligned \
+       DESTDIR=$RPM_BUILD_ROOT
+
+%if %{with s3}
+%{__make} -C src/stored install-cloud \
+       DESTDIR=$RPM_BUILD_ROOT
+%endif
+
 # create copies of make_catalog_backup for specific databases; zeore default one (will be ghost)
 for database in %{databases}; do
        sed -e "s#default_db_type=.*#default_db_type=${database}#g" \
-               $RPM_BUILD_ROOT%{_libdir}/%{name}/make_catalog_backup \
-               > $RPM_BUILD_ROOT%{_libdir}/%{name}/make_${database}_catalog_backup
-               chmod 755 $RPM_BUILD_ROOT%{_libdir}/%{name}/make_${database}_catalog_backup
+               $RPM_BUILD_ROOT%{_libexecdir}/%{name}/make_catalog_backup \
+               > $RPM_BUILD_ROOT%{_libexecdir}/%{name}/make_${database}_catalog_backup
+               chmod 755 $RPM_BUILD_ROOT%{_libexecdir}/%{name}/make_${database}_catalog_backup
 done
-:> $RPM_BUILD_ROOT%{_libdir}/%{name}/make_catalog_backup
+:> $RPM_BUILD_ROOT%{_libexecdir}/%{name}/make_catalog_backup
 
 # we use db dependant (at compile time) shell script only
 rm $RPM_BUILD_ROOT%{_libexecdir}/%{name}/make_catalog_backup.pl
@@ -468,7 +509,7 @@ cp -a %{SOURCE14} $RPM_BUILD_ROOT/etc/sysconfig/bacula-dir
 cp -a %{SOURCE15} $RPM_BUILD_ROOT/etc/sysconfig/bacula-fd
 cp -a %{SOURCE16} $RPM_BUILD_ROOT/etc/sysconfig/bacula-sd
 
-%if %{with bat}
+%if %{with qt}
 # qmake somewhy does not always create install_bins target. install our own the bin
 rm -f $RPM_BUILD_ROOT%{_sbindir}/bat
 libtool --silent --mode=install install src/qt-console/bat $RPM_BUILD_ROOT%{_bindir}
@@ -478,6 +519,12 @@ cp -a scripts/bat.desktop $RPM_BUILD_ROOT%{_desktopdir}
 
 touch $RPM_BUILD_ROOT/var/log/bacula/log
 
+# install the updatedb scripts for older versions that last full release
+# 2.0 -> 3.0 : 10_to_11
+# 5.0 -> 5.2 : 12_to_14
+install -p updatedb/update_*_tables_10_to_11 $RPM_BUILD_ROOT%{_libexecdir}/%{name}
+install -p updatedb/update_*_tables_11_to_12 $RPM_BUILD_ROOT%{_libexecdir}/%{name}
+
 # place for site passwords
 touch $RPM_BUILD_ROOT%{_sysconfdir}/{dir-password,fd-password,sd-password}
 touch $RPM_BUILD_ROOT%{_sysconfdir}/{mon-dir-password,mon-fd-password,mon-sd-password}
@@ -486,7 +533,6 @@ mv $RPM_BUILD_ROOT%{_libexecdir}/%{name}/mtx-changer.conf $RPM_BUILD_ROOT%{_sysc
 
 # some file changes
 rm -f $RPM_BUILD_ROOT%{_libexecdir}/%{name}/{gconsole,startmysql,stopmysql,bacula,bconsole,fd}
-touch $RPM_BUILD_ROOT%{_sysconfdir}/.pw.sed
 
 rm $RPM_BUILD_ROOT%{_docdir}/bacula/ChangeLog
 rm $RPM_BUILD_ROOT%{_docdir}/bacula/INSTALL
@@ -507,7 +553,11 @@ mv $RPM_BUILD_ROOT%{_sbindir}/{,bacula-}dbcheck
 mv $RPM_BUILD_ROOT%{_mandir}/man8/{,bacula-}dbcheck.8.gz
 
 # no -devel files packaged, so this is also useless
-rm $RPM_BUILD_ROOT%{_libdir}/libbac{,cfg,find,sql}.{so,la}
+rm $RPM_BUILD_ROOT%{_libdir}/libbac{,cfg,find,sql,cats,sd}.{so,la}
+rm $RPM_BUILD_ROOT%{_libdir}/bacula-sd-*-driver.so
+%{?with_mysql:rm $RPM_BUILD_ROOT%{_libdir}/libbaccats-mysql.{la,so}}
+%{?with_pgsql:rm $RPM_BUILD_ROOT%{_libdir}/libbaccats-postgresql.{la,so}}
+%{?with_sqlite3:rm $RPM_BUILD_ROOT%{_libdir}/libbaccats-sqlite3.{la,so}}
 
 %if %{with nagios}
 install -d $RPM_BUILD_ROOT%{nagiosplugindir}
@@ -604,13 +654,13 @@ fi
 %post console
 %update_configs
 
-%post console-wx
-%update_configs
-
 %triggerpostun common -- %{name}-common < 5.0.1-2
 find %{_sysconfdir}/bat.conf* -perm /007 -print0 2>/dev/null | xargs -0 -r chmod 600 || :
 
-%post console-qt4
+%post console-qt
+%update_configs
+
+%post tray-monitor
 %update_configs
 
 %define db_post() \
@@ -647,11 +697,11 @@ ln -sf libbaccats-%{1}-%{version}.so %{_libdir}/libbaccats-%{version}.so || : \
 # do not remove bsmtp from files. Fix build if it is not installed.
 %attr(755,root,root) %{_sbindir}/bsmtp
 %attr(755,root,root) %{_sbindir}/btraceback
-%attr(755,root,root) %{_libdir}/libbac-9*.so
-%attr(755,root,root) %{_libdir}/libbaccfg-9*.so
-%attr(755,root,root) %{_libdir}/libbacfind-9*.so
-%attr(755,root,root) %{_libdir}/libbacsd-9*.so
-%attr(755,root,root) %{_libdir}/libbacsql-9*.so
+%attr(755,root,root) %{_libdir}/libbac-13*.so
+%attr(755,root,root) %{_libdir}/libbaccfg-13*.so
+%attr(755,root,root) %{_libdir}/libbacsd-13*.so
+%attr(755,root,root) %{_libdir}/libbacfind-13*.so
+%attr(755,root,root) %{_libdir}/libbacsql-13*.so
 %{_mandir}/man8/bacula.8*
 %{_mandir}/man1/bsmtp.1*
 %{_mandir}/man8/btraceback.8*
@@ -659,17 +709,16 @@ ln -sf libbaccats-%{1}-%{version}.so %{_libdir}/libbaccats-%{version}.so || : \
 %{_libexecdir}/%{name}/btraceback.dbx
 %{_libexecdir}/%{name}/btraceback.gdb
 %{_libexecdir}/%{name}/bacula_config
-%attr(755,root,root) %{_libexecdir}/%{name}/baculabackupreport
 %attr(770,root,bacula) %dir %{_localstatedir}
 %attr(750,bacula,logs) %dir /var/log/bacula
 %attr(640,bacula,logs) %ghost /var/log/bacula/log
+%attr(750,bacula,logs) %dir /var/log/archive/bacula
 
 %files dir
 %defattr(644,root,root,755)
 %doc ChangeLog ReleaseNotes LICENSE
 #%doc examples %{name}-docs-%{version}/manual/{*.pdf,bacula}
 %attr(640,root,bacula) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-dir.conf
-%ghost %{_sysconfdir}/.pw.sed
 %attr(640,root,root) %config(noreplace) /etc/logrotate.d/bacula-dir
 %attr(754,root,root) /etc/rc.d/init.d/bacula-dir
 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-dir
@@ -685,6 +734,7 @@ ln -sf libbaccats-%{1}-%{version}.so %{_libdir}/libbaccats-%{version}.so || : \
 %{_libexecdir}/%{name}/query.sql
 %attr(755,root,root) %{_libexecdir}/%{name}/delete_catalog_backup
 
+%if %{with pgsql}
 %files db-postgresql
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libexecdir}/%{name}/create_postgresql_database
@@ -694,9 +744,9 @@ ln -sf libbaccats-%{1}-%{version}.so %{_libdir}/libbaccats-%{version}.so || : \
 %attr(755,root,root) %{_libexecdir}/%{name}/make_postgresql_tables
 %attr(755,root,root) %{_libexecdir}/%{name}/update_postgresql_*
 %attr(755,root,root) %{_libexecdir}/%{name}/make_postgresql_catalog_backup
-%attr(755,root,root) %{_libdir}/libbaccats-postgresql-9*.so
+%attr(755,root,root) %{_libdir}/libbaccats-postgresql-13*.so
 
-%ghost %attr(755,root,root) %{_libdir}/libbaccats-9*.so
+%ghost %attr(755,root,root) %{_libdir}/libbaccats-13*.so
 %ghost %{_libexecdir}/%{name}/create_bacula_database
 %ghost %{_libexecdir}/%{name}/drop_bacula_tables
 %ghost %{_libexecdir}/%{name}/drop_bacula_database
@@ -704,7 +754,9 @@ ln -sf libbaccats-%{1}-%{version}.so %{_libdir}/libbaccats-%{version}.so || : \
 %ghost %{_libexecdir}/%{name}/make_bacula_tables
 %ghost %{_libexecdir}/%{name}/update_bacula_tables
 %ghost %{_libexecdir}/%{name}/make_catalog_backup
+%endif
 
+%if %{with mysql}
 %files db-mysql
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libexecdir}/%{name}/create_mysql_database
@@ -714,9 +766,9 @@ ln -sf libbaccats-%{1}-%{version}.so %{_libdir}/libbaccats-%{version}.so || : \
 %attr(755,root,root) %{_libexecdir}/%{name}/make_mysql_tables
 %attr(755,root,root) %{_libexecdir}/%{name}/update_mysql_*
 %attr(755,root,root) %{_libexecdir}/%{name}/make_mysql_catalog_backup
-%attr(755,root,root) %{_libdir}/libbaccats-mysql-9*.so
+%attr(755,root,root) %{_libdir}/libbaccats-mysql-13*.so
 
-%ghost %attr(755,root,root) %{_libdir}/libbaccats-9*.so
+%ghost %attr(755,root,root) %{_libdir}/libbaccats-13*.so
 %ghost %{_libexecdir}/%{name}/create_bacula_database
 %ghost %{_libexecdir}/%{name}/drop_bacula_tables
 %ghost %{_libexecdir}/%{name}/drop_bacula_database
@@ -724,7 +776,9 @@ ln -sf libbaccats-%{1}-%{version}.so %{_libdir}/libbaccats-%{version}.so || : \
 %ghost %{_libexecdir}/%{name}/make_bacula_tables
 %ghost %{_libexecdir}/%{name}/update_bacula_tables
 %ghost %{_libexecdir}/%{name}/make_catalog_backup
+%endif
 
+%if %{with sqlite3}
 %files db-sqlite3
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libexecdir}/%{name}/create_sqlite3_database
@@ -734,9 +788,9 @@ ln -sf libbaccats-%{1}-%{version}.so %{_libdir}/libbaccats-%{version}.so || : \
 %attr(755,root,root) %{_libexecdir}/%{name}/make_sqlite3_tables
 %attr(755,root,root) %{_libexecdir}/%{name}/update_sqlite3_*
 %attr(755,root,root) %{_libexecdir}/%{name}/make_sqlite3_catalog_backup
-%attr(755,root,root) %{_libdir}/libbaccats-sqlite3-9*.so
+%attr(755,root,root) %{_libdir}/libbaccats-sqlite3-13*.so
 
-%ghost %attr(755,root,root) %{_libdir}/libbaccats-9*.so
+%ghost %attr(755,root,root) %{_libdir}/libbaccats-13*.so
 %ghost %{_libexecdir}/%{name}/create_bacula_database
 %ghost %{_libexecdir}/%{name}/drop_bacula_tables
 %ghost %{_libexecdir}/%{name}/drop_bacula_database
@@ -744,6 +798,7 @@ ln -sf libbaccats-%{1}-%{version}.so %{_libdir}/libbaccats-%{version}.so || : \
 %ghost %{_libexecdir}/%{name}/make_bacula_tables
 %ghost %{_libexecdir}/%{name}/update_bacula_tables
 %ghost %{_libexecdir}/%{name}/make_catalog_backup
+%endif
 
 %files fd
 %defattr(644,root,root,755)
@@ -770,9 +825,17 @@ ln -sf libbaccats-%{1}-%{version}.so %{_libdir}/libbaccats-%{version}.so || : \
 %attr(755,root,root) %{_sbindir}/bscan
 %attr(755,root,root) %{_sbindir}/bsdjson
 %attr(755,root,root) %{_sbindir}/btape
-%attr(755,root,root) %{_libexecdir}/%{name}/mtx-changer
+%attr(755,root,root) %{_libexecdir}/%{name}/baculabackupreport
+%attr(755,root,root) %{_libexecdir}/%{name}/bacula-tray-monitor.desktop
 %attr(755,root,root) %{_libexecdir}/%{name}/disk-changer
+%attr(755,root,root) %{_libexecdir}/%{name}/isworm
+%attr(755,root,root) %{_libexecdir}/%{name}/mtx-changer
 %attr(755,root,root) %{_libexecdir}/%{name}/tapealert
+%attr(755,root,root) %{_libdir}/bacula-sd-aligned-driver-13.*.so
+%if %{with s3}
+%attr(755,root,root) %{_libdir}/bacula-sd-cloud-driver-13.*.so
+%endif
+
 %{_mandir}/man8/bacula-sd.8*
 %{_mandir}/man8/bcopy.8*
 %{_mandir}/man8/bextract.8*
@@ -788,8 +851,8 @@ ln -sf libbaccats-%{1}-%{version}.so %{_libdir}/libbaccats-%{version}.so || : \
 %attr(755,root,root) %{_sbindir}/bbconsjson
 %{_mandir}/man8/bconsole.8*
 
-%if %{with bat}
-%files console-qt4
+%if %{with qt}
+%files console-qt
 %defattr(644,root,root,755)
 %doc LICENSE
 %{_pixmapsdir}/%{name}.png