pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/pkgtools/pbulk pbulk-0.19:



details:   https://anonhg.NetBSD.org/pkgsrc/rev/c07eb05cc375
branches:  trunk
changeset: 537812:c07eb05cc375
user:      joerg <joerg%pkgsrc.org@localhost>
date:      Wed Jan 16 14:20:08 2008 +0000

description:
pbulk-0.19:
- add support for building using DESTDIR.

diffstat:

 pkgtools/pbulk/Makefile                      |   4 +-
 pkgtools/pbulk/files/pbulk/pbulk.conf        |   4 +-
 pkgtools/pbulk/files/pbulk/scripts/pkg-build |  51 ++++++++++++++++++++++-----
 3 files changed, 46 insertions(+), 13 deletions(-)

diffs (122 lines):

diff -r 07d13389efe1 -r c07eb05cc375 pkgtools/pbulk/Makefile
--- a/pkgtools/pbulk/Makefile   Wed Jan 16 14:03:31 2008 +0000
+++ b/pkgtools/pbulk/Makefile   Wed Jan 16 14:20:08 2008 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.24 2008/01/15 21:43:31 joerg Exp $
+# $NetBSD: Makefile,v 1.25 2008/01/16 14:20:08 joerg Exp $
 
-DISTNAME=      pbulk-0.18
+DISTNAME=      pbulk-0.19
 CATEGORIES=    pkgtools
 MASTER_SITES=  # empty
 DISTFILES=     # empty
diff -r 07d13389efe1 -r c07eb05cc375 pkgtools/pbulk/files/pbulk/pbulk.conf
--- a/pkgtools/pbulk/files/pbulk/pbulk.conf     Wed Jan 16 14:03:31 2008 +0000
+++ b/pkgtools/pbulk/files/pbulk/pbulk.conf     Wed Jan 16 14:20:08 2008 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: pbulk.conf,v 1.10 2008/01/15 21:43:32 joerg Exp $
+# $NetBSD: pbulk.conf,v 1.11 2008/01/16 14:20:09 joerg Exp $
 
 # The URL where the build report will be made available. This is only
 # used in the .txt version of the report.
@@ -38,6 +38,8 @@
 
 report_graph_script_limit=512
 
+unprivileged_user=pbulk
+
 # The directories where the various files are created.
 #
 bulklog=/bulklog
diff -r 07d13389efe1 -r c07eb05cc375 pkgtools/pbulk/files/pbulk/scripts/pkg-build
--- a/pkgtools/pbulk/files/pbulk/scripts/pkg-build      Wed Jan 16 14:03:31 2008 +0000
+++ b/pkgtools/pbulk/files/pbulk/scripts/pkg-build      Wed Jan 16 14:20:08 2008 +0000
@@ -1,7 +1,7 @@
 #!@SH@
-# $NetBSD: pkg-build,v 1.7 2007/09/21 13:42:54 rillig Exp $
+# $NetBSD: pkg-build,v 1.8 2008/01/16 14:20:09 joerg Exp $
 #
-# Copyright (c) 2007 Joerg Sonnenberger <joerg%NetBSD.org@localhost>.
+# Copyright (c) 2007, 2008 Joerg Sonnenberger <joerg%NetBSD.org@localhost>.
 # All rights reserved.
 #
 # This code was developed as part of Google's Summer of Code 2007 program.
@@ -43,8 +43,14 @@
        exit 1
 }
 
+run_direct() "$@"
+run_su() su ${unprivileged_user} -c '"$@"' make "$@"
+
 run_make() {
-       ${make} $1 \
+       local run_cmd
+       run_cmd=$1
+       shift
+       ${run_cmd} ${make} $1 \
                BATCH=1 \
                DEPENDS_TARGET=/nonexistent \
                ${MAKE_FLAGS} \
@@ -64,16 +70,33 @@
                dependencies=${build_info_line#DEPENDS=}
                ;;
        MULTI_VERSION=*)
-               MAKE_FLAGS=${build_info_line#MULTI_VERSION=*}
+               MAKE_FLAGS=${build_info_line#MULTI_VERSION=}
                ;;
+       USE_DESTDIR=*)
+               use_destdir=${build_info_line#USE_DESTDIR=}
        esac
 done
 
+case "$use_destdir" in
+user-destdir)
+       run_build=run_su
+       run_install=run_su
+       ;;
+destdir)
+       run_build=run_su
+       run_install=run_direct
+       ;;
+*)
+       run_build=run_direct
+       run_install=run_direct
+       ;;
+esac
+
 ${pkg_up_to_date_script} ${pkgname} ${dependencies} && exit 0
 
 set -e
 
-@PREFIX@/libexec/pbulk/client-clean
+/usr/pkg_bulk/libexec/pbulk/client-clean
 
 # Create the output directory and clean it up
 mkdir -p ${bulklog}/${pkgname}
@@ -88,13 +111,21 @@
        PKG_PATH=${packages}/All ${pkg_add} $dependencies > ${bulklog}/${pkgname}/depends.log 2>&1
 fi
 # Build package, create a separate log file for each major phase
-run_make checksum  > ${bulklog}/${pkgname}/checksum.log 2>&1 || cleanup
-run_make configure  > ${bulklog}/${pkgname}/configure.log 2>&1 || cleanup
-run_make all  > ${bulklog}/${pkgname}/build.log 2>&1 || cleanup
-run_make install  > ${bulklog}/${pkgname}/install.log 2>&1 || cleanup
-run_make package  > ${bulklog}/${pkgname}/package.log 2>&1 || cleanup
+run_make ${run_build} checksum  > ${bulklog}/${pkgname}/checksum.log 2>&1 || cleanup
+run_make ${run_build} configure  > ${bulklog}/${pkgname}/configure.log 2>&1 || cleanup
+run_make ${run_build} all  > ${bulklog}/${pkgname}/build.log 2>&1 || cleanup
+run_make ${run_install} install  > ${bulklog}/${pkgname}/install.log 2>&1 || cleanup
+run_make ${run_install} package  > ${bulklog}/${pkgname}/package.log 2>&1 || cleanup
+
+# When using DESTDIR build, add the package once to test install rules.
+if [ "$use_destdir" != "no" ]; then
+       PKG_PATH=${packages}/All ${pkg_add} ${pkgname} \
+           > ${bulklog}/${pkgname}/package.log 2>&1 || cleanup
+fi
+
 # Clean build area
 ${make} clean > ${bulklog}/${pkgname}/clean.log 2>&1
+
 # Test uninstall rules
 ${pkg_delete} ${pkgname} > ${bulklog}/${pkgname}/deinstall.log 2>&1
 



Home | Main Index | Thread Index | Old Index