Date: Tue, 18 Sep 2007 17:42:25 -0400 (EDT) From: Dan Langille <dan@langille.org> To: FreeBSD-gnats-submit@FreeBSD.org Cc: Dan Langille <dan@langille.org> Subject: ports/116449: [MAINTAINER-UPDATE] sysutils/bacula-server - prepare master port for sysutils/bacula-bat Message-ID: <20070918214225.AF121B95C@bast.unixathome.org> Resent-Message-ID: <200709182150.l8ILo1SI088910@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 116449 >Category: ports >Synopsis: [MAINTAINER-UPDATE] sysutils/bacula-server - prepare master port for sysutils/bacula-bat >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: maintainer-update >Submitter-Id: current-users >Arrival-Date: Tue Sep 18 21:50:01 GMT 2007 >Closed-Date: >Last-Modified: >Originator: Dan Langille >Release: FreeBSD 6.2-STABLE i386 >Organization: The FreeBSD Diary >Environment: System: FreeBSD bast.example.org 6.2-STABLE FreeBSD 6.2-STABLE #3: Wed Feb 28 22:21:12 EST 2007 dan@bast.example.org:/usr/obj/usr/src/sys/BAST i386 >Description: Alter this port in preparation for a new port, sysutils/bacula-bat No need to upgrade bacula-server unless you really want to. >How-To-Repeat: >Fix: NOTES to committer: The new slave port, to be submitted in another PR, will use the WITH_BAT variable. bacula-server now refers to WITH_BAT to avoid setting various variables which are not used by the slave port. The new slave port does not need the pre-install and post-install so it defines empty sections. The master port checks for these via structures like this: .if !target(post-install) Two files are being renamed, perhaps a repo copy is called for? The files (new => old) are: bacula-server/pkg-deinstall => bacula-server/pkg-deinstall.server bacula-server/pkg-install => bacula-server/pkg-install.server Three new patch files have been added so the proper qmake is picked up: bacula-server/files/patch-autoconf-configure.in bacula-server/files/patch-configure bacula-server/files/patch-src-qt-console-build-depkgs-qt-console --- bacula-server.diff begins here --- diff -ruN /usr/ports/sysutils/bacula-server/Makefile bacula-server/Makefile --- /usr/ports/sysutils/bacula-server/Makefile Sat Sep 15 05:46:56 2007 +++ bacula-server/Makefile Tue Sep 18 17:30:24 2007 @@ -7,6 +7,7 @@ PORTNAME= bacula DISTVERSION= 2.2.4 +PORTREVISION= 1 CATEGORIES= sysutils MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} MASTER_SITE_SUBDIR= bacula @@ -22,13 +23,17 @@ DISTFILES= ${PORTNAME}-${PORTVERSION}.tar.gz +.if !defined(WITH_BAT) +.if !defined(WITH_CLIENT_ONLY) USE_RC_SUBR?= bacula-dir bacula-sd +.endif .if defined(WITH_CLIENT_ONLY) SUB_FILES+= pkg-message.client .else SUB_FILES+= pkg-message.server .endif +.endif # The user/group IDs below are registered, see # http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/book.html#DADS-UID @@ -37,7 +42,7 @@ # MANCOMPRESSED= yes GNU_CONFIGURE= yes -CONFIGURE_ARGS= --with-tcp-wrappers=/usr/lib \ +CONFIGURE_ARGS+= --with-tcp-wrappers=/usr/lib \ --enable-smartalloc \ --with-working-dir=${BACULA_DIR} \ --with-scriptdir=${PREFIX}/share/${PORTNAME} \ @@ -90,7 +95,9 @@ USE_GNOME= libgnome gnomelibs libgnomeui .endif +.if !defined(WITH_BAT) PLIST_SUB+= BACULA_DIR=${BACULA_DIR} +.endif .include <bsd.port.pre.mk> @@ -101,6 +108,10 @@ CONFIGURE_ARGS+= --disable-nls .endif +# overridden if client install +PKGDEINSTALL= ${PKGDIR}/pkg-deinstall.server +PKGINSTALL= ${PKGDIR}/pkg-install.server + # Client only or full server version .if defined(WITH_CLIENT_ONLY) CONFFILES= fd @@ -160,16 +171,20 @@ .endif .endif + .if defined(WITH_OPENSSL) CONFIGURE_ARGS+= --with-openssl .endif +.if !defined(WITH_BAT) .if defined(WITH_CLIENT_ONLY) MAN8=bacula-fd.8 bconsole.8 .else MAN8=bacula.8 bacula-dir.8 bacula-sd.8 bcopy.8 bextract.8 bls.8 bscan.8 btape.8 btraceback.8 dbcheck.8 MAN1=bsmtp.1 bacula-bgnome-console.1 bacula-tray-monitor.1 bacula-bwxconsole.1 .endif +.endif + MAKE_ARGS+= -E MAN8 -E MAN1 MAKE_ENV+= MAN8="${MAN8}" MAN1="${MAN1}" @@ -216,6 +231,7 @@ @${REINPLACE_CMD} -e '/^fd_subdirs = /s|src/filed||' -e 's|src/console||' ${WRKSRC}/Makefile.in .endif +.if !target(pre-install) pre-install: if [ ! -d "${BACULA_DIR}" ]; then \ ${ECHO_CMD} "creating ${BACULA_DIR}" ; \ @@ -227,7 +243,10 @@ # Extend /etc/services and install UID/GID @ ${SETENV} PKG_PREFIX=${PREFIX} \ ${SH} ${PKGINSTALL} ${PORTNAME} PRE-INSTALL +.endif + +.if !target(post-install) post-install: .if defined(WITH_CLIENT_ONLY) # Extend only /etc/services @@ -287,5 +306,6 @@ done @${CAT} ${PKGMESSAGE} +.endif .include <bsd.port.post.mk> diff -ruN /usr/ports/sysutils/bacula-server/files/patch-autoconf-configure.in bacula-server/files/patch-autoconf-configure.in --- /usr/ports/sysutils/bacula-server/files/patch-autoconf-configure.in Wed Dec 31 19:00:00 1969 +++ bacula-server/files/patch-autoconf-configure.in Tue Sep 18 17:18:29 2007 @@ -0,0 +1,11 @@ +--- autoconf/configure.in.orig Sat Sep 15 12:11:40 2007 ++++ autoconf/configure.in Sat Sep 15 12:11:40 2007 +@@ -2225,7 +2225,7 @@ + cd src/qt-console + chmod 755 install_conf_file build-depkgs-qt-console + echo "Creating bat Makefile" +- qmake ++ ${QMAKE} + cd ${BUILD_DIR} + fi + diff -ruN /usr/ports/sysutils/bacula-server/files/patch-configure bacula-server/files/patch-configure --- /usr/ports/sysutils/bacula-server/files/patch-configure Wed Dec 31 19:00:00 1969 +++ bacula-server/files/patch-configure Tue Sep 18 17:18:42 2007 @@ -0,0 +1,11 @@ +--- configure.orig Sat Sep 15 12:11:56 2007 ++++ configure Sat Sep 15 12:11:56 2007 +@@ -32106,7 +32106,7 @@ + cd src/qt-console + chmod 755 install_conf_file build-depkgs-qt-console + echo "Creating bat Makefile" +- qmake ++ ${QMAKE} + cd ${BUILD_DIR} + fi + diff -ruN /usr/ports/sysutils/bacula-server/files/patch-src-qt-console-build-depkgs-qt-console bacula-server/files/patch-src-qt-console-build-depkgs-qt-console --- /usr/ports/sysutils/bacula-server/files/patch-src-qt-console-build-depkgs-qt-console Wed Dec 31 19:00:00 1969 +++ bacula-server/files/patch-src-qt-console-build-depkgs-qt-console Tue Sep 18 17:18:34 2007 @@ -0,0 +1,11 @@ +--- src/qt-console/build-depkgs-qt-console.orig Sat Sep 15 12:11:32 2007 ++++ src/qt-console/build-depkgs-qt-console Sat Sep 15 12:11:32 2007 +@@ -147,7 +147,7 @@ + echo " INSTALLBASE = ${TOP_DIR}/qwt" >>${TOP_DIR}/depkgs/qwt-5.0.2/qwtconfig.pri + echo "}" >>${TOP_DIR}/depkgs/qwt-5.0.2/qwtconfig.pri + cat ${TOP_DIR}/qwtconfig.pri >>${TOP_DIR}/depkgs/qwt-5.0.2/qwtconfig.pri +- qmake >make.log ++ ${QMAKE} >make.log + do_make Makefile >>make.log + do_make Makefile install >>make.log + echo "In case of problems see: `pwd`/make.log" diff -ruN /usr/ports/sysutils/bacula-server/pkg-deinstall bacula-server/pkg-deinstall --- /usr/ports/sysutils/bacula-server/pkg-deinstall Wed Mar 7 16:57:51 2007 +++ bacula-server/pkg-deinstall Wed Dec 31 19:00:00 1969 @@ -1,32 +0,0 @@ -#!/bin/sh - -PATH=/bin:/usr/bin:/usr/sbin -TMPFILE=/tmp/services-$RANDOM-$$ -if [ -z "${BACULA_DIR}" ]; then - BACULA_DIR=/var/db/bacula -fi - -case "$2" in -"DEINSTALL") - # Delete entries in /etc/services - sed -e '/# Bacula port start/,/# Bacule port end/{' \ - -e 'd' \ - -e '}' /etc/services > $TMPFILE - mv -f $TMPFILE /etc/services - - if [ -d ${BACULA_DIR} ]; then - rmdir ${BACULA_DIR}; - fi - if [ -d ${BACULA_DIR} ]; then - echo "Check if ${BACULA_DIR} is empty and delete it to permanently remove the bacula port" - fi - - # Note how to delete UID/GID - USER=bacula - GROUP=${USER} - if pw usershow "${USER}" 2>/dev/null 1>&2; then - echo "To delete Bacula user permanently, use 'pw userdel ${USER}'" - echo "To delete Bacula group permanently, use 'pw groupdel ${GROUP}'" - fi - ;; -esac diff -ruN /usr/ports/sysutils/bacula-server/pkg-deinstall.server bacula-server/pkg-deinstall.server --- /usr/ports/sysutils/bacula-server/pkg-deinstall.server Wed Dec 31 19:00:00 1969 +++ bacula-server/pkg-deinstall.server Fri Sep 14 17:34:29 2007 @@ -0,0 +1,32 @@ +#!/bin/sh + +PATH=/bin:/usr/bin:/usr/sbin +TMPFILE=/tmp/services-$RANDOM-$$ +if [ -z "${BACULA_DIR}" ]; then + BACULA_DIR=/var/db/bacula +fi + +case "$2" in +"DEINSTALL") + # Delete entries in /etc/services + sed -e '/# Bacula port start/,/# Bacule port end/{' \ + -e 'd' \ + -e '}' /etc/services > $TMPFILE + mv -f $TMPFILE /etc/services + + if [ -d ${BACULA_DIR} ]; then + rmdir ${BACULA_DIR}; + fi + if [ -d ${BACULA_DIR} ]; then + echo "Check if ${BACULA_DIR} is empty and delete it to permanently remove the bacula port" + fi + + # Note how to delete UID/GID + USER=bacula + GROUP=${USER} + if pw usershow "${USER}" 2>/dev/null 1>&2; then + echo "To delete Bacula user permanently, use 'pw userdel ${USER}'" + echo "To delete Bacula group permanently, use 'pw groupdel ${GROUP}'" + fi + ;; +esac diff -ruN /usr/ports/sysutils/bacula-server/pkg-install bacula-server/pkg-install --- /usr/ports/sysutils/bacula-server/pkg-install Wed Mar 7 16:57:51 2007 +++ bacula-server/pkg-install Wed Dec 31 19:00:00 1969 @@ -1,62 +0,0 @@ -#!/bin/sh - -PATH=/bin:/usr/bin:/usr/sbin -if [ -z "${BACULA_DIR}" ]; then - BACULA_DIR=/var/db/bacula -fi - -# Always add lines in /etc/services -grep -q "bacula-dir" /etc/services -if [ "$?" != "0" ]; then - echo "# Bacula port start -bacula-dir 9101/tcp #Bacula director daemon -bacula-fd 9102/tcp #Bacula file daemon -bacula-sd 9103/tcp #Bacula storage daemon -# Bacule port end" >> /etc/services -fi - -case $2 in -PRE-INSTALL) - # Install UID/GID - USER=bacula - GROUP=${USER} - UID=910 - GID=${UID} - - if [ ! -d ${BACULA_DIR} ]; then - mkdir -p ${BACULA_DIR} - fi - - if pw group show "${GROUP}" 2>/dev/null; then - echo "You already have a group \"${GROUP}\", so I will use it." - else - if pw groupadd ${GROUP} -g ${GID}; then - echo "Added group \"${GROUP}\"." - else - echo "Adding group \"${GROUP}\" failed..." - exit 1 - fi - fi - - if pw user show "${USER}" 2>/dev/null; then - echo "You already have a user \"${USER}\", so I will use it." - if pw usermod ${USER} -d ${BACULA_DIR} -G operator - then - echo "Changed home directory of \"${USER}\" to \"${BACULA_DIR}\"" - else - echo "Changing home directory of \"${USER}\" to \"${BACULA_DIR}\" failed..." - exit 1 - fi - else - if pw useradd ${USER} -u ${UID} -g ${GROUP} -G operator -h - \ - -d ${BACULA_DIR} -s /sbin/nologin -c "Bacula Daemon" - then - echo "Added user \"${USER}\"." - else - echo "Adding user \"${USER}\" failed..." - exit 1 - fi - fi - chown -R ${USER}:${GROUP} ${BACULA_DIR} - ;; -esac diff -ruN /usr/ports/sysutils/bacula-server/pkg-install.server bacula-server/pkg-install.server --- /usr/ports/sysutils/bacula-server/pkg-install.server Wed Dec 31 19:00:00 1969 +++ bacula-server/pkg-install.server Fri Sep 14 17:34:29 2007 @@ -0,0 +1,62 @@ +#!/bin/sh + +PATH=/bin:/usr/bin:/usr/sbin +if [ -z "${BACULA_DIR}" ]; then + BACULA_DIR=/var/db/bacula +fi + +# Always add lines in /etc/services +grep -q "bacula-dir" /etc/services +if [ "$?" != "0" ]; then + echo "# Bacula port start +bacula-dir 9101/tcp #Bacula director daemon +bacula-fd 9102/tcp #Bacula file daemon +bacula-sd 9103/tcp #Bacula storage daemon +# Bacule port end" >> /etc/services +fi + +case $2 in +PRE-INSTALL) + # Install UID/GID + USER=bacula + GROUP=${USER} + UID=910 + GID=${UID} + + if [ ! -d ${BACULA_DIR} ]; then + mkdir -p ${BACULA_DIR} + fi + + if pw group show "${GROUP}" 2>/dev/null; then + echo "You already have a group \"${GROUP}\", so I will use it." + else + if pw groupadd ${GROUP} -g ${GID}; then + echo "Added group \"${GROUP}\"." + else + echo "Adding group \"${GROUP}\" failed..." + exit 1 + fi + fi + + if pw user show "${USER}" 2>/dev/null; then + echo "You already have a user \"${USER}\", so I will use it." + if pw usermod ${USER} -d ${BACULA_DIR} -G operator + then + echo "Changed home directory of \"${USER}\" to \"${BACULA_DIR}\"" + else + echo "Changing home directory of \"${USER}\" to \"${BACULA_DIR}\" failed..." + exit 1 + fi + else + if pw useradd ${USER} -u ${UID} -g ${GROUP} -G operator -h - \ + -d ${BACULA_DIR} -s /sbin/nologin -c "Bacula Daemon" + then + echo "Added user \"${USER}\"." + else + echo "Adding user \"${USER}\" failed..." + exit 1 + fi + fi + chown -R ${USER}:${GROUP} ${BACULA_DIR} + ;; +esac --- bacula-server.diff ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070918214225.AF121B95C>