mschiff     14/11/19 00:38:54

  Modified:             ChangeLog metadata.xml
  Added:                bareos-14.2.1.ebuild bareos-13.2.4.ebuild
  Removed:              bareos-13.2.2.ebuild bareos-13.2.3.ebuild
  Log:
  Bumped stable (13.2.4), added beta ebuild (14.2.1), removed old version.
  Fixes #528800.
  
  (Portage version: 2.2.14/cvs/Linux x86_64, signed Manifest commit with key 
0x296C6CCA35A64134)

Revision  Changes    Path
1.13                 app-backup/bareos/ChangeLog

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-backup/bareos/ChangeLog?rev=1.13&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-backup/bareos/ChangeLog?rev=1.13&content-type=text/plain
diff : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-backup/bareos/ChangeLog?r1=1.12&r2=1.13

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/app-backup/bareos/ChangeLog,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- ChangeLog   3 Nov 2014 11:05:51 -0000       1.12
+++ ChangeLog   19 Nov 2014 00:38:54 -0000      1.13
@@ -1,6 +1,15 @@
 # ChangeLog for app-backup/bareos
 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-backup/bareos/ChangeLog,v 1.12 
2014/11/03 11:05:51 titanofold Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-backup/bareos/ChangeLog,v 1.13 
2014/11/19 00:38:54 mschiff Exp $
+
+*bareos-14.2.1 (19 Nov 2014)
+*bareos-13.2.4 (19 Nov 2014)
+
+  19 Nov 2014; Marc Schiffbauer <[email protected]> -bareos-13.2.2.ebuild,
+  -bareos-13.2.3.ebuild, +bareos-13.2.4.ebuild, +bareos-14.2.1.ebuild,
+  metadata.xml:
+  Bumped stable (13.2.4), added beta ebuild (14.2.1), removed old version.
+  Fixes #528800.
 
   03 Nov 2014; Aaron W. Swenson <[email protected]>
   bareos-12.4.5-r1.ebuild, bareos-13.2.2.ebuild, bareos-13.2.3.ebuild,



1.3                  app-backup/bareos/metadata.xml

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-backup/bareos/metadata.xml?rev=1.3&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-backup/bareos/metadata.xml?rev=1.3&content-type=text/plain
diff : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-backup/bareos/metadata.xml?r1=1.2&r2=1.3

Index: metadata.xml
===================================================================
RCS file: /var/cvsroot/gentoo-x86/app-backup/bareos/metadata.xml,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- metadata.xml        16 Sep 2014 20:02:13 -0000      1.2
+++ metadata.xml        19 Nov 2014 00:38:54 -0000      1.3
@@ -6,13 +6,17 @@
                <name>Marc Schiffbauer</name>
        </maintainer>
        <use>
+               <flag name='cephfs'>Enable cephfs storage backend</flag>
                <flag name='clientonly'>Only install file-daemon (client)</flag>
                <flag name='director'>Install director</flag>
-               <flag name='storage-daemon'>Install storage daemon 
(bareos-sd)</flag>
-               <flag name='logwatch'>Install support files for logwatch</flag>
                <flag name='fastlz'>Enable support vor lz4, lz4hc and lzfast 
using dev-libs/bareos-fastlzlib</flag>
+               <flag name='glusterfs'>Enable glusterfs storage backend</flag>
+               <flag name='lmdb'>enable build of LMDB support for faster 
accurate backup</flag>
+               <flag name='logwatch'>Install support files for logwatch</flag>
                <flag name='ndmp'>Enable support for NDMP (Network Data 
Management Protocol)</flag>
-               <flag name='sql-pooling'>Enable SQL pooling support</flag>
+               <flag name='rados'>Enable rados storage backend</flag>
                <flag name='scsi-crypto'>Enable low level SCSI crypto 
support</flag>
+               <flag name='sql-pooling'>Enable SQL pooling support</flag>
+               <flag name='storage-daemon'>Install storage daemon 
(bareos-sd)</flag>
        </use>
 </pkgmetadata>



1.1                  app-backup/bareos/bareos-14.2.1.ebuild

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-backup/bareos/bareos-14.2.1.ebuild?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-backup/bareos/bareos-14.2.1.ebuild?rev=1.1&content-type=text/plain

Index: bareos-14.2.1.ebuild
===================================================================
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-backup/bareos/bareos-14.2.1.ebuild,v 1.1 
2014/11/19 00:38:54 mschiff Exp $

EAPI="5"

PYTHON_COMPAT=( python2_{6,7} )
PYTHON_REQ_USE="threads"

inherit eutils multilib python-single-r1 qt4-r2 user

DESCRIPTION="Featureful client/server network backup suite"
HOMEPAGE="http://www.bareos.org/";
SRC_URI="https://github.com/${PN}/${PN}/archive/Release/${PV}.tar.gz -> 
${P}.tar.gz"
RESTRICT="mirror"

LICENSE="AGPL-3"
SLOT="0"
KEYWORDS=""
IUSE="acl clientonly +director fastlz ipv6 logwatch mysql ndmp postgres python 
qt4
                readline scsi-crypto sql-pooling +sqlite3 ssl static 
+storage-daemon tcpd
                vim-syntax X cephfs glusterfs lmdb rados"

DEPEND="
        !app-backup/bacula
        cephfs? ( sys-cluster/ceph )
        rados? ( sys-cluster/ceph )
        glusterfs? ( sys-cluster/glusterfs )
        lmdb? ( dev-db/lmdb )
        dev-libs/gmp
        !clientonly? (
                postgres? ( virtual/postgresql[threads] )
                mysql? ( virtual/mysql )
                sqlite3? ( dev-db/sqlite:3 )
                director? ( virtual/mta )
        )
        qt4? (
                dev-qt/qtsvg:4
                x11-libs/qwt:5
        )
        fastlz? ( dev-libs/bareos-fastlzlib )
        logwatch? ( sys-apps/logwatch )
        tcpd? ( sys-apps/tcp-wrappers )
        readline? ( sys-libs/readline )
        static? (
                acl? ( virtual/acl[static-libs] )
                sys-libs/zlib[static-libs]
                dev-libs/lzo[static-libs]
                sys-libs/ncurses[static-libs]
                ssl? ( dev-libs/openssl[static-libs] )
        )
        !static? (
                acl? ( virtual/acl )
                dev-libs/lzo
                ssl? ( dev-libs/openssl )
                sys-libs/ncurses
                sys-libs/zlib
        )
        python? ( ${PYTHON_DEPS} )
        "
RDEPEND="${DEPEND}
        !clientonly? (
                storage-daemon? (
                        sys-block/mtx
                        app-arch/mt-st
                )
        )
        vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )"

REQUIRED_USE="static? ( clientonly )
        python? ( ${PYTHON_REQUIRED_USE} )"

S=${WORKDIR}/${PN}-Release-${PV}

pkg_setup() {
        use mysql && export mydbtypes+="mysql"
        use postgres && export mydbtypes+=" postgresql"
        use sqlite3 && export mydbtypes+=" sqlite3"

        # create the daemon group and user
        if [ -z "$(egetent group bareos 2>/dev/null)" ]; then
                enewgroup bareos
                einfo
                einfo "The group 'bareos' has been created. Any users you add 
to this"
                einfo "group have access to files created by the daemons."
                einfo
        fi

        if use clientonly && use static && use qt4; then
                ewarn
                ewarn "Building statically linked 'bat' is not supported. 
Ignorig 'qt4' useflag."
                ewarn
        fi

        if ! use clientonly; then
                if [ -z "$(egetent passwd bareos 2>/dev/null)" ]; then
                        enewuser bareos -1 -1 /var/lib/bareos 
bareos,disk,tape,cdrom,cdrw
                        einfo
                        einfo "The user 'bareos' has been created.  Please see 
the bareos manual"
                        einfo "for information about running bareos as a 
non-root user."
                        einfo
                fi
        fi

        use python && python-single-r1_pkg_setup
}

src_prepare() {
        # adjusts default configuration files for several binaries
        # to /etc/bareos/<config> instead of ./<config>
        pushd src >&/dev/null || die
        for f in console/console.c dird/dird.c filed/filed.c \
                stored/bcopy.c stored/bextract.c stored/bls.c \
                stored/bscan.c stored/btape.c stored/stored.c \
                qt-console/main.cpp; do
                sed -i -e 's|^\(#define CONFIG_FILE "\)|\1/etc/bareos/|g' 
"${f}" \
                        || die "sed on ${f} failed"
        done
        popd >&/dev/null || die

        # bug 466690 Use CXXFLAGS instead of CFLAGS
        sed -i -e 's/@CFLAGS@/@CXXFLAGS@/' autoconf/Make.common.in || die

        # stop build for errors in subdirs
        epatch "${FILESDIR}"/${PN}-12.4.5-Makefile.patch

        # bat needs to respect LDFLAGS
        epatch "${FILESDIR}"/${PN}-12.4.5-bat-ldflags.patch

        # do not strip binaries
        for d in filed console dird stored; do
                sed -i -e "s/strip /# strip /" src/$d/Makefile.in || die
        done
}

src_configure() {
        local myconf=''

        if use clientonly; then
                myconf="${myconf} \
                        $(use_enable clientonly client-only) \
                        $(use_enable !static libtool) \
                        $(use_enable static static-cons) \
                        $(use_enable static static-fd)"
        fi

        # do not build bat and traymonitor if 'static' clientonly
        if ! use clientonly || ! use static; then
                myconf="${myconf} \
                        $(use_enable qt4 bat) \
                        $(use_enable qt4 traymonitor)"
        fi

        myconf="${myconf} \
                $(use_with X x) \
                $(use_enable acl) \
                $(use_enable ipv6) \
                $(use_enable ndmp) \
                $(use_enable readline) \
                $(use_enable !readline conio) \
                $(use_enable scsi-crypto) \
                $(use_enable sql-pooling) \
                $(use_with fastlz) \
                $(use_with mysql) \
                $(use_with postgres postgresql) \
                $(use_with python) \
                $(use_with readline) \
                $(use_with sqlite3) \
                $(use sqlite3 || echo "--without-sqlite3") \
                $(use_with ssl openssl) \
                $(use_with tcpd tcp-wrappers) \
                $(use_enable lmdb) \
                $(use_with glusterfs) \
                $(use_with rados) \
                $(use_with cephfs) \
                "

        econf \
                --libdir=/usr/$(get_libdir) \
                --docdir=/usr/share/doc/${PF} \
                --htmldir=/usr/share/doc/${PF}/html \
                --with-pid-dir=/run/bareos \
                --sysconfdir=/etc/bareos \
                --with-subsys-dir=/run/lock/subsys \
                --with-working-dir=/var/lib/bareos \
                --with-logdir=/var/log/bareos \
                --with-scriptdir=/usr/libexec/bareos \
                --with-plugindir=/usr/$(get_libdir)/${PN}/plugin \
                --with-backenddir=/usr/$(get_libdir)/${PN}/backend \
                --with-dir-user=bareos \
                --with-dir-group=bareos \
                --with-sd-user=root \
                --with-sd-group=bareos \
                --with-fd-user=root \
                --with-fd-group=bareos \
                --with-sbin-perm=0755 \
                --with-systemd \
                --enable-smartalloc \
                --enable-dynamic-cats-backends \
                --enable-dynamic-storage-backends \
                --enable-batch-insert \
                --disable-afs \
                --host=${CHOST} \
                ${myconf}
        # correct configuration for QT based bat
        if use qt4 ; then
                pushd src/qt-console
                eqmake4
                popd
                pushd src/qt-tray-monitor
                eqmake4
                popd
        fi
}

src_compile() {
        # workaround for build failing with high -j values
        # if ndmp is enabled
        use ndmp && MAKEOPTS="$MAKEOPTS -j1"

        # Make build log verbose (bug #447806)
        emake NO_ECHO=""
}

src_install() {
        emake DESTDIR="${D}" install
        doicon scripts/bareos.png

        # install bat icon and desktop file when enabled
        # (for some reason ./configure doesn't pick this up)
        if use qt4 && ! use static ; then
                doicon src/images/bat.png
                domenu scripts/bat.desktop
        fi

        # remove some scripts we don't need at all
        rm -f 
"${D}"/usr/libexec/bareos/{bareos,bareos-ctl-dir,bareos-ctl-fd,bareos-ctl-sd,startmysql,stopmysql}
        rm -f "${D}"/usr/sbin/bareos

        # remove upstream init scripts
        rm -f "${D}"/etc/init.d/bareos-*

        # rename statically linked apps
        if use clientonly && use static ; then
                pushd "${D}"/usr/sbin || die
                mv static-bareos-fd bareos-fd || die
                mv static-bconsole bconsole || die
                popd || die
        fi

        # extra files which 'make install' doesn't cover
        if ! use clientonly; then
                # the logrotate configuration
                # (now unconditional wrt bug #258187)
                diropts -m0755
                insinto /etc/logrotate.d
                insopts -m0644
                newins "${S}"/scripts/logrotate bareos

                # the logwatch scripts
                if use logwatch; then
                        diropts -m0750
                        dodir /etc/log.d/scripts/services
                        dodir /etc/log.d/scripts/shared
                        dodir /etc/log.d/conf/logfiles
                        dodir /etc/log.d/conf/services
                        pushd "${S}"/scripts/logwatch >&/dev/null || die
                        emake DESTDIR="${D}" install
                        popd >&/dev/null || die
                fi
        fi

        rm -vf "${D}"/usr/share/man/man1/bareos-bwxconsole.1*
        if ! use qt4; then
                rm -vf "${D}"/usr/share/man/man1/bat.1*
        fi
        if use clientonly || ! use director; then
                rm -vf "${D}"/usr/share/man/man8/bareos-dir.8*
                rm -vf "${D}"/usr/share/man/man8/bareos-dbcheck.8*
                rm -vf "${D}"/usr/share/man/man1/bsmtp.1*
                rm -vf "${D}"/usr/share/man/man8/bwild.8*
                rm -vf "${D}"/usr/share/man/man8/bregex.8*
                rm -vf "${D}"/usr/share/man/man8/bpluginfo.8*
                rm -vf "${D}"/usr/libexec/bareos/create_*_database
                rm -vf "${D}"/usr/libexec/bareos/drop_*_database
                rm -vf "${D}"/usr/libexec/bareos/make_*_tables
                rm -vf "${D}"/usr/libexec/bareos/update_*_tables
                rm -vf "${D}"/usr/libexec/bareos/drop_*_tables
                rm -vf "${D}"/usr/libexec/bareos/grant_*_privileges
                rm -vf "${D}"/usr/libexec/bareos/*_catalog_backup
        fi
        if use clientonly || ! use storage-daemon; then
                rm -vf "${D}"/usr/share/man/man8/bareos-sd.8*
                rm -vf "${D}"/usr/share/man/man8/bcopy.8*
                rm -vf "${D}"/usr/share/man/man8/bextract.8*
                rm -vf "${D}"/usr/share/man/man8/bls.8*
                rm -vf "${D}"/usr/share/man/man8/bscan.8*
                rm -vf "${D}"/usr/share/man/man8/btape.8*
                rm -vf "${D}"/usr/libexec/bareos/disk-changer
                rm -vf "${D}"/usr/libexec/bareos/mtx-changer
                rm -vf "${D}"/usr/libexec/bareos/dvd-handler
                rm -vf "${D}"/etc/bareos/mtx-changer.conf
        fi
        if ! use scsi-crypto; then
                rm -vf "${D}"/usr/share/man/man8/bscrypto.8*
        fi
        if ! use qt4; then
                rm -vf "${D}"/usr/share/man/man1/bareos-tray-monitor.1*
        fi

        # documentation
        dodoc README.md
        use ndmp && dodoc README.NDMP
        use scsi-crypto && dodoc README.scsicrypto

        # vim-files
        if use vim-syntax; then
                insinto /usr/share/vim/vimfiles/syntax
                doins scripts/bareos.vim
                insinto /usr/share/vim/vimfiles/ftdetect
                newins scripts/filetype.vim bareos_ft.vim
        fi

        # setup init scripts
        myscripts="bareos-fd"
        if ! use clientonly; then
                if use director; then
                        myscripts="${myscripts} bareos-dir"
                fi
                if use storage-daemon; then
                        myscripts="${myscripts} bareos-sd"
                fi
        fi
        for script in ${myscripts}; do
                # copy over init script and config to a temporary location
                # so we can modify them as needed
                cp "${FILESDIR}/${script}".confd "${T}/${script}".confd || die 
"failed to copy ${script}.confd"
                cp "${FILESDIR}/${script}".initd "${T}/${script}".initd || die 
"failed to copy ${script}.initd"

                # now set the database dependency for the director init script
                case "${script}" in
                        bareos-dir)
                                sed -i -e "s:%databasetypes%:${mydbtypes}:" 
"${T}/${script}".confd || die
                                ;;
                        *)
                                ;;
                esac

                # install init script and config
                newinitd "${T}/${script}".initd "${script}"
                newconfd "${T}/${script}".confd "${script}"
        done

        # make sure the working directory exists
        diropts -m0750
        keepdir /var/lib/bareos

        # make sure bareos group can execute bareos libexec scripts
        fowners -R root:bareos /usr/libexec/bareos
}

pkg_postinst() {
        if use clientonly; then
                fowners root:bareos /var/lib/bareos
        else
                fowners bareos:bareos /var/lib/bareos
        fi

        if ! use clientonly && use director; then
                einfo
                einfo "If this is a new install, you must create the databases 
with:"
                if use postgres; then
                        einfo
                        einfo "For postgresql:"
                        einfo "  su postgres -c 
'/usr/libexec/bareos/create_bareos_database postgresql'"
                        einfo "  su postgres -c 
'/usr/libexec/bareos/make_bareos_tables postgresql'"
                        einfo "  su postgres -c 
'/usr/libexec/bareos/grant_bareos_privileges postgresql'"
                fi
                if use mysql; then
                        einfo
                        einfo "For mysql:"
                        einfo
                        einfo "  Make sure root has direct access to your mysql 
server. You may want to"
                        einfo "  create a /root/.my.cnf file with"
                        einfo "    [client]"
                        einfo "    user=root"
                        einfo "    password=YourPasswordForAccessingMysqlAsRoot"
                        einfo "  before running:"
                        einfo "  /usr/libexec/bareos/create_bareos_database 
mysql"
                        einfo "  /usr/libexec/bareos/make_bareos_tables mysql"
                        einfo "  /usr/libexec/bareos/grant_bareos_privileges 
mysql"
                fi
                einfo
        fi

        if use sqlite3; then
                einfo
                einfo "Be aware that Bareos does not officially support SQLite 
database."
                einfo "Best use it only for a client-only installation. See Bug 
#445540."
                einfo
                einfo "It is strongly recommended to use either postgresql or 
mysql as"
                einfo "catalog database backend."
                einfo
        fi

        einfo "Please note that 'bconsole' will always be installed. To compile 
'bat'"
        einfo "you have to enable 'USE=qt4'."
        einfo
}



1.1                  app-backup/bareos/bareos-13.2.4.ebuild

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-backup/bareos/bareos-13.2.4.ebuild?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-backup/bareos/bareos-13.2.4.ebuild?rev=1.1&content-type=text/plain

Index: bareos-13.2.4.ebuild
===================================================================
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-backup/bareos/bareos-13.2.4.ebuild,v 1.1 
2014/11/19 00:38:54 mschiff Exp $

EAPI="5"

PYTHON_COMPAT=( python2_{6,7} )
PYTHON_REQ_USE="threads"

inherit eutils multilib python-single-r1 qt4-r2 user

DESCRIPTION="Featureful client/server network backup suite"
HOMEPAGE="http://www.bareos.org/";
SRC_URI="https://github.com/${PN}/${PN}/archive/Release/${PV}.tar.gz -> 
${P}.tar.gz"
RESTRICT="mirror"

LICENSE="AGPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="acl clientonly +director fastlz ipv6 logwatch mysql ndmp postgres python 
qt4
                readline scsi-crypto sql-pooling +sqlite3 ssl static 
+storage-daemon tcpd
                vim-syntax X"

DEPEND="
        !app-backup/bacula
        dev-libs/gmp
        !clientonly? (
                postgres? ( virtual/postgresql[threads] )
                mysql? ( virtual/mysql )
                sqlite3? ( dev-db/sqlite:3 )
                director? ( virtual/mta )
        )
        qt4? (
                dev-qt/qtsvg:4
                x11-libs/qwt:5
        )
        fastlz? ( dev-libs/bareos-fastlzlib )
        logwatch? ( sys-apps/logwatch )
        tcpd? ( sys-apps/tcp-wrappers )
        readline? ( sys-libs/readline )
        static? (
                acl? ( virtual/acl[static-libs] )
                sys-libs/zlib[static-libs]
                dev-libs/lzo[static-libs]
                sys-libs/ncurses[static-libs]
                ssl? ( dev-libs/openssl[static-libs] )
        )
        !static? (
                acl? ( virtual/acl )
                dev-libs/lzo
                ssl? ( dev-libs/openssl )
                sys-libs/ncurses
                sys-libs/zlib
        )
        python? ( ${PYTHON_DEPS} )
        "
RDEPEND="${DEPEND}
        !clientonly? (
                storage-daemon? (
                        sys-block/mtx
                        app-arch/mt-st
                )
        )
        vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )"

REQUIRED_USE="static? ( clientonly )
        python? ( ${PYTHON_REQUIRED_USE} )"

S=${WORKDIR}/${PN}-Release-${PV}

pkg_setup() {
        use mysql && export mydbtypes+="mysql"
        use postgres && export mydbtypes+=" postgresql"
        use sqlite3 && export mydbtypes+=" sqlite3"

        # create the daemon group and user
        if [ -z "$(egetent group bareos 2>/dev/null)" ]; then
                enewgroup bareos
                einfo
                einfo "The group 'bareos' has been created. Any users you add 
to this"
                einfo "group have access to files created by the daemons."
                einfo
        fi

        if use clientonly && use static && use qt4; then
                ewarn
                ewarn "Building statically linked 'bat' is not supported. 
Ignorig 'qt4' useflag."
                ewarn
        fi

        if ! use clientonly; then
                if [ -z "$(egetent passwd bareos 2>/dev/null)" ]; then
                        enewuser bareos -1 -1 /var/lib/bareos 
bareos,disk,tape,cdrom,cdrw
                        einfo
                        einfo "The user 'bareos' has been created.  Please see 
the bareos manual"
                        einfo "for information about running bareos as a 
non-root user."
                        einfo
                fi
        fi

        use python && python-single-r1_pkg_setup
}

src_prepare() {
        # adjusts default configuration files for several binaries
        # to /etc/bareos/<config> instead of ./<config>
        pushd src >&/dev/null || die
        for f in console/console.c dird/dird.c filed/filed.c \
                stored/bcopy.c stored/bextract.c stored/bls.c \
                stored/bscan.c stored/btape.c stored/stored.c \
                qt-console/main.cpp; do
                sed -i -e 's|^\(#define CONFIG_FILE "\)|\1/etc/bareos/|g' 
"${f}" \
                        || die "sed on ${f} failed"
        done
        popd >&/dev/null || die

        # bug 466690 Use CXXFLAGS instead of CFLAGS
        sed -i -e 's/@CFLAGS@/@CXXFLAGS@/' autoconf/Make.common.in || die

        # stop build for errors in subdirs
        epatch "${FILESDIR}"/${PN}-12.4.5-Makefile.patch

        # bat needs to respect LDFLAGS
        epatch "${FILESDIR}"/${PN}-12.4.5-bat-ldflags.patch

        # do not strip binaries
        for d in filed console dird stored; do
                sed -i -e "s/strip /# strip /" src/$d/Makefile.in || die
        done
}

src_configure() {
        local myconf=''

        if use clientonly; then
                myconf="${myconf} \
                        $(use_enable clientonly client-only) \
                        $(use_enable !static libtool) \
                        $(use_enable static static-cons) \
                        $(use_enable static static-fd)"
        fi

        # do not build bat and traymonitor if 'static' clientonly
        if ! use clientonly || ! use static; then
                myconf="${myconf} \
                        $(use_enable qt4 bat) \
                        $(use_enable qt4 traymonitor)"
        fi

        myconf="${myconf} \
                $(use_with X x) \
                $(use_enable acl) \
                $(use_enable ipv6) \
                $(use_enable ndmp) \
                $(use_enable readline) \
                $(use_enable !readline conio) \
                $(use_enable scsi-crypto) \
                $(use_enable sql-pooling) \
                $(use_with fastlz) \
                $(use_with mysql) \
                $(use_with postgres postgresql) \
                $(use_with python) \
                $(use_with readline) \
                $(use_with sqlite3) \
                $(use sqlite3 || echo "--without-sqlite3") \
                $(use_with ssl openssl) \
                $(use_with tcpd tcp-wrappers) \
                "

        econf \
                --libdir=/usr/$(get_libdir) \
                --docdir=/usr/share/doc/${PF} \
                --htmldir=/usr/share/doc/${PF}/html \
                --with-pid-dir=/run/bareos \
                --sysconfdir=/etc/bareos \
                --with-subsys-dir=/run/lock/subsys \
                --with-working-dir=/var/lib/bareos \
                --with-logdir=/var/log/bareos \
                --with-scriptdir=/usr/libexec/bareos \
                --with-plugindir=/usr/$(get_libdir)/${PN}/plugin \
                --with-dir-user=bareos \
                --with-dir-group=bareos \
                --with-sd-user=root \
                --with-sd-group=bareos \
                --with-fd-user=root \
                --with-fd-group=bareos \
                --with-sbin-perm=0755 \
                --enable-smartalloc \
                --enable-dynamic-cats-backends \
                --enable-batch-insert \
                --disable-afs \
                --host=${CHOST} \
                ${myconf}
        # correct configuration for QT based bat
        if use qt4 ; then
                pushd src/qt-console
                eqmake4
                popd
                pushd src/qt-tray-monitor
                eqmake4
                popd
        fi
}

src_compile() {
        # workaround for build failing with high -j values
        # if ndmp is enabled
        use ndmp && MAKEOPTS="$MAKEOPTS -j1"

        # Make build log verbose (bug #447806)
        emake NO_ECHO=""
}

src_install() {
        emake DESTDIR="${D}" install
        doicon scripts/bareos.png

        # install bat icon and desktop file when enabled
        # (for some reason ./configure doesn't pick this up)
        if use qt4 && ! use static ; then
                doicon src/images/bat.png
                domenu scripts/bat.desktop
        fi

        # remove some scripts we don't need at all
        rm -f 
"${D}"/usr/libexec/bareos/{bareos,bareos-ctl-dir,bareos-ctl-fd,bareos-ctl-sd,startmysql,stopmysql}
        rm -f "${D}"/usr/sbin/bareos

        # remove upstream init scripts
        rm -f "${D}"/etc/init.d/bareos-*

        # rename statically linked apps
        if use clientonly && use static ; then
                pushd "${D}"/usr/sbin || die
                mv static-bareos-fd bareos-fd || die
                mv static-bconsole bconsole || die
                popd || die
        fi

        # extra files which 'make install' doesn't cover
        if ! use clientonly; then
                # the logrotate configuration
                # (now unconditional wrt bug #258187)
                diropts -m0755
                insinto /etc/logrotate.d
                insopts -m0644
                newins "${S}"/scripts/logrotate bareos

                # the logwatch scripts
                if use logwatch; then
                        diropts -m0750
                        dodir /etc/log.d/scripts/services
                        dodir /etc/log.d/scripts/shared
                        dodir /etc/log.d/conf/logfiles
                        dodir /etc/log.d/conf/services
                        pushd "${S}"/scripts/logwatch >&/dev/null || die
                        emake DESTDIR="${D}" install
                        popd >&/dev/null || die
                fi
        fi

        rm -vf "${D}"/usr/share/man/man1/bareos-bwxconsole.1*
        if ! use qt4; then
                rm -vf "${D}"/usr/share/man/man1/bat.1*
        fi
        if use clientonly || ! use director; then
                rm -vf "${D}"/usr/share/man/man8/bareos-dir.8*
                rm -vf "${D}"/usr/share/man/man8/bareos-dbcheck.8*
                rm -vf "${D}"/usr/share/man/man1/bsmtp.1*
                rm -vf "${D}"/usr/share/man/man8/bwild.8*
                rm -vf "${D}"/usr/share/man/man8/bregex.8*
                rm -vf "${D}"/usr/share/man/man8/bpluginfo.8*
                rm -vf "${D}"/usr/libexec/bareos/create_*_database
                rm -vf "${D}"/usr/libexec/bareos/drop_*_database
                rm -vf "${D}"/usr/libexec/bareos/make_*_tables
                rm -vf "${D}"/usr/libexec/bareos/update_*_tables
                rm -vf "${D}"/usr/libexec/bareos/drop_*_tables
                rm -vf "${D}"/usr/libexec/bareos/grant_*_privileges
                rm -vf "${D}"/usr/libexec/bareos/*_catalog_backup
        fi
        if use clientonly || ! use storage-daemon; then
                rm -vf "${D}"/usr/share/man/man8/bareos-sd.8*
                rm -vf "${D}"/usr/share/man/man8/bcopy.8*
                rm -vf "${D}"/usr/share/man/man8/bextract.8*
                rm -vf "${D}"/usr/share/man/man8/bls.8*
                rm -vf "${D}"/usr/share/man/man8/bscan.8*
                rm -vf "${D}"/usr/share/man/man8/btape.8*
                rm -vf "${D}"/usr/libexec/bareos/disk-changer
                rm -vf "${D}"/usr/libexec/bareos/mtx-changer
                rm -vf "${D}"/usr/libexec/bareos/dvd-handler
                rm -vf "${D}"/etc/bareos/mtx-changer.conf
        fi
        if ! use scsi-crypto; then
                rm -vf "${D}"/usr/share/man/man8/bscrypto.8*
        fi
        if ! use qt4; then
                rm -vf "${D}"/usr/share/man/man1/bareos-tray-monitor.1*
        fi

        # documentation
        dodoc README.md
        use ndmp && dodoc README.NDMP
        use scsi-crypto && dodoc README.scsicrypto

        # vim-files
        if use vim-syntax; then
                insinto /usr/share/vim/vimfiles/syntax
                doins scripts/bareos.vim
                insinto /usr/share/vim/vimfiles/ftdetect
                newins scripts/filetype.vim bareos_ft.vim
        fi

        # setup init scripts
        myscripts="bareos-fd"
        if ! use clientonly; then
                if use director; then
                        myscripts="${myscripts} bareos-dir"
                fi
                if use storage-daemon; then
                        myscripts="${myscripts} bareos-sd"
                fi
        fi
        for script in ${myscripts}; do
                # copy over init script and config to a temporary location
                # so we can modify them as needed
                cp "${FILESDIR}/${script}".confd "${T}/${script}".confd || die 
"failed to copy ${script}.confd"
                cp "${FILESDIR}/${script}".initd "${T}/${script}".initd || die 
"failed to copy ${script}.initd"

                # now set the database dependency for the director init script
                case "${script}" in
                        bareos-dir)
                                sed -i -e "s:%databasetypes%:${mydbtypes}:" 
"${T}/${script}".confd || die
                                ;;
                        *)
                                ;;
                esac

                # install init script and config
                newinitd "${T}/${script}".initd "${script}"
                newconfd "${T}/${script}".confd "${script}"
        done

        # make sure the working directory exists
        diropts -m0750
        keepdir /var/lib/bareos

        # make sure bareos group can execute bareos libexec scripts
        fowners -R root:bareos /usr/libexec/bareos
}

pkg_postinst() {
        if use clientonly; then
                fowners root:bareos /var/lib/bareos
        else
                fowners bareos:bareos /var/lib/bareos
        fi

        if ! use clientonly && use director; then
                einfo
                einfo "If this is a new install, you must create the databases 
with:"
                if use postgres; then
                        einfo
                        einfo "For postgresql:"
                        einfo "  su postgres -c 
'/usr/libexec/bareos/create_bareos_database postgresql'"
                        einfo "  su postgres -c 
'/usr/libexec/bareos/make_bareos_tables postgresql'"
                        einfo "  su postgres -c 
'/usr/libexec/bareos/grant_bareos_privileges postgresql'"
                fi
                if use mysql; then
                        einfo
                        einfo "For mysql:"
                        einfo
                        einfo "  Make sure root has direct access to your mysql 
server. You may want to"
                        einfo "  create a /root/.my.cnf file with"
                        einfo "    [client]"
                        einfo "    user=root"
                        einfo "    password=YourPasswordForAccessingMysqlAsRoot"
                        einfo "  before running:"
                        einfo "  /usr/libexec/bareos/create_bareos_database 
mysql"
                        einfo "  /usr/libexec/bareos/make_bareos_tables mysql"
                        einfo "  /usr/libexec/bareos/grant_bareos_privileges 
mysql"
                fi
                einfo
        fi

        if use sqlite3; then
                einfo
                einfo "Be aware that Bareos does not officially support SQLite 
database."
                einfo "Best use it only for a client-only installation. See Bug 
#445540."
                einfo
                einfo "It is strongly recommended to use either postgresql or 
mysql as"
                einfo "catalog database backend."
                einfo
        fi

        einfo "Please note that 'bconsole' will always be installed. To compile 
'bat'"
        einfo "you have to enable 'USE=qt4'."
        einfo
}




Reply via email to