diff options
-rw-r--r-- | packages/bacula/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/bacula/bacula-client_1.38.11.bb | 55 | ||||
-rw-r--r-- | packages/bacula/files/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/bacula/files/bacula-fd.init | 43 | ||||
-rw-r--r-- | packages/bacula/files/findlib-attribs.patch | 50 |
5 files changed, 148 insertions, 0 deletions
diff --git a/packages/bacula/.mtn2git_empty b/packages/bacula/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/bacula/.mtn2git_empty diff --git a/packages/bacula/bacula-client_1.38.11.bb b/packages/bacula/bacula-client_1.38.11.bb new file mode 100644 index 0000000000..474f6110c3 --- /dev/null +++ b/packages/bacula/bacula-client_1.38.11.bb @@ -0,0 +1,55 @@ +DESCRIPTION = "Bacula filedaemon is the client to backup your device using Bacula a network based backup program" +SECTION = "console/network" +PRIORITY = "optional" +MAINTAINER = "Bastian Ballmann <balle@chaostal.de>" +HOMEPAGE = "http://www.bacula.org" +LICENSE = "GPL" +PR="r0" +DEPENDS = "gmp openssl zlib readline" + +SRC_URI = "http://heanet.dl.sourceforge.net/sourceforge/bacula/bacula-1.38.11.tar.gz \ + file://findlib-attribs.patch;patch=1;pnum=1 \ + file://bacula-fd.init" + +S = "${WORKDIR}/bacula-1.38.11" + +# Makefile is broken using ccache +# No idea how to fix it so I turned ccache off +CCACHE = "" + +inherit autotools update-rc.d + +LDFLAGS += "-L${STAGING_LIBDIR}" +CFLAGS += "-L${STAGING_LIBDIR} -I${STAGING_INCDIR}" + +INITSCRIPT_NAME = "bacula-fd" + +do_configure() { + oe_runconf --enable-client-only \ + --prefix=/usr \ + --with-working-dir=/var/lib/bacula \ + --with-fd-user=root \ + --with-fd-group=bacula +} + +do_compile() { + oe_runmake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" +} + +do_install() { + mkdir -p ${D}/${sbindir} + install -m 0754 ${S}/src/filed/bacula-fd ${D}/${sbindir}/ + + mkdir -p ${D}/${sysconfdir}/bacula + install ${S}/src/filed/bacula-fd.conf ${D}/${sysconfdir}/bacula/ +} + +# Add group +pkg_postinst() { + grep -q bacula: /etc/group || addgroup bacula +} + +do_install_append() { + mkdir -p ${D}/${sysconfdir}/init.d + install ${WORKDIR}/bacula-fd.init ${D}/${sysconfdir}/init.d/bacula-fd +} diff --git a/packages/bacula/files/.mtn2git_empty b/packages/bacula/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/bacula/files/.mtn2git_empty diff --git a/packages/bacula/files/bacula-fd.init b/packages/bacula/files/bacula-fd.init new file mode 100644 index 0000000000..14f9013e6e --- /dev/null +++ b/packages/bacula/files/bacula-fd.init @@ -0,0 +1,43 @@ +#! /bin/sh +# +# bacula-fd init script for OpenZaurus +# + +BACFDBIN=/usr/sbin +BACFDCFG=/etc/bacula +PIDDIR=/var/run +SUBSYSDIR=/var/run/ + +FD_PORT=9102 + +FD_USER=root +FD_GROUP=bacula + +case "$1" in + start) + [ -x ${BACFDBIN}/bacula-fd ] && { + echo "Starting the Bacula File daemon" + ${BACFDBIN}/bacula-fd $2 -u ${FD_USER} -g ${FD_GROUP} -v -c ${BACFDCFG}/bacula-fd.conf + } + ;; + + stop) + # Stop the FD first so that SD will fail jobs and update catalog + [ -x ${BACFDBIN}/bacula-fd ] && { + echo "Stopping the Bacula File daemon" + killall bacula-fd + } + ;; + + restart) + $0 stop + sleep 5 + $0 start + ;; + + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 + ;; +esac +exit 0 diff --git a/packages/bacula/files/findlib-attribs.patch b/packages/bacula/files/findlib-attribs.patch new file mode 100644 index 0000000000..6bf63a95d6 --- /dev/null +++ b/packages/bacula/files/findlib-attribs.patch @@ -0,0 +1,50 @@ +diff -Naur bacula-1.38.11/src/findlib/attribs.c bacula-1.38.11_patched/src/findlib/attribs.c +--- bacula-1.38.11/src/findlib/attribs.c 2005-09-24 15:11:31.000000000 +0200 ++++ bacula-1.38.11_patched/src/findlib/attribs.c 2006-09-16 21:41:45.000000000 +0200 +@@ -135,12 +135,7 @@ + p += to_base64((int64_t)ff_pkt->LinkFI, p); + *p++ = ' '; + +-#ifdef HAVE_CHFLAGS +- /* FreeBSD function */ +- p += to_base64((int64_t)statp->st_flags, p); /* output st_flags */ +-#else + p += to_base64((int64_t)0, p); /* output place holder */ +-#endif + *p++ = ' '; + p += to_base64((int64_t)data_stream, p); + *p = 0; +@@ -225,11 +220,6 @@ + if (*p == ' ' || (*p != 0 && *(p+1) == ' ')) { + p++; + p += from_base64(&val, p); +-#ifdef HAVE_CHFLAGS +- plug(statp->st_flags, val); +- } else { +- statp->st_flags = 0; +-#endif + } + + /* Look for data stream id */ +@@ -377,21 +367,6 @@ + attr->ofname, be.strerror()); + ok = false; + } +-#ifdef HAVE_CHFLAGS +- /* +- * FreeBSD user flags +- * +- * Note, this should really be done before the utime() above, +- * but if the immutable bit is set, it will make the utimes() +- * fail. +- */ +- if (chflags(attr->ofname, attr->statp.st_flags) < 0) { +- berrno be; +- Jmsg2(jcr, M_ERROR, 0, _("Unable to set file flags %s: ERR=%s\n"), +- attr->ofname, be.strerror()); +- ok = false; +- } +-#endif + } + pm_strcpy(attr->ofname, "*none*"); + umask(old_mask); |