From f0c858b852c09ff9c3b166beb5b0657325c0b123 Mon Sep 17 00:00:00 2001 From: Bryan Drewery Date: Tue, 7 Mar 2017 04:45:00 +0000 Subject: [PATCH] Update to 3.0-1957-gb3d3e0c2 - pkgclean/distclean: Properly support PREPARE_PARALLEL_JOBS from poudriere.conf - Default PREPARE_PARALLEL_JOBS to 1.25*PARALLEL_JOBS - Poudriere now sets process title for some operations via setproctitle(2). - Dependency calculation majorly refactored to fetch more make variables at once rather than fetching some and then more later. This rework also speeds up some startups by up to 60% by keeping the compute_deps work queue full and more parallelized. This is especially seen in meta port lists. The storage for the make variables fetched is not very efficient yet and will improve more in the future. - Add more sh builtins: pwait, mkdir, rename, setproctitle, rmdir, mktemp - nohang: Do read before logfile comparison. - update_stats: Stop building from html_json coproc after done building - More work to use relative paths, thus reducing namecache contention. - rm is bundled if the base system version does not support rm -x. - Determine at runtime if umount -n (MNT_NONBUSY) is supported - buildlog: Properly show limits in jail - The "balance_pool" operation after a port is done building is now asynchronous. - Fix some cases where stats were not updated on early exit. - Detect race during jail startup; prevent multiple concurrent jail startups for the same jail+set+portstree. - Some unexpected older packages may be deleted during startup. - bulk: Change dependency information to -v rather than -vv - Limit parallel umounts if batched free vnode lists not supported. - Only fetch LIB/RUN_DEPENDS and OPTIONS if the CHECK_CHANGED_DEPS/OPTIONS is set - Add some missing license headers in HTML code. - run_hook: cd to / before running hook to avoid umount problems. - Pass -DNOCLEANDEPENDS when cleaning to not clean dependency dirs. - Slightly reword some of the port job statuses. - api: Allow evalling from stdin - Move /var/db/freebsd-update exemption into common_mtree. - More tests added - Fix PORTBUILD_UID lookup when user doesn't exist in jail. - configure: Don't prefer GCC (poudriere build only) --- ports-mgmt/poudriere-devel/Makefile | 19 ++++++++-- ports-mgmt/poudriere-devel/distinfo | 6 ++-- ...-src__libexec__poudriere__cached__cached.c | 10 ------ .../files/patch-src_share_poudriere_common.sh | 35 ------------------- .../patch-src_share_poudriere_include_fs.sh | 20 ----------- ports-mgmt/poudriere-devel/pkg-plist | 8 +++-- 6 files changed, 25 insertions(+), 73 deletions(-) delete mode 100644 ports-mgmt/poudriere-devel/files/patch-src__libexec__poudriere__cached__cached.c delete mode 100644 ports-mgmt/poudriere-devel/files/patch-src_share_poudriere_common.sh delete mode 100644 ports-mgmt/poudriere-devel/files/patch-src_share_poudriere_include_fs.sh diff --git a/ports-mgmt/poudriere-devel/Makefile b/ports-mgmt/poudriere-devel/Makefile index e5788ae2947c..3118889f6722 100644 --- a/ports-mgmt/poudriere-devel/Makefile +++ b/ports-mgmt/poudriere-devel/Makefile @@ -1,8 +1,8 @@ # $FreeBSD$ PORTNAME= poudriere -DISTVERSION= 3.1.99.20170221 -PORTREVISION= 1 +DISTVERSION= 3.1.99.20170306 +PORTREVISION= 0 CATEGORIES= ports-mgmt MASTER_SITES= LOCAL/bdrewery/${PORTNAME}/ \ http://mirror.shatow.net/freebsd/${PORTNAME}/ \ @@ -18,7 +18,7 @@ CONFLICTS_INSTALL= poudriere-[0-9]* USE_GITHUB= yes GH_ACCOUNT= freebsd -GH_TAGNAME= 3.0-1822-ge8f0d3e +GH_TAGNAME= 3.0-1957-gb3d3e0c2 #DISTNAME= ${GH_ACCOUNT}-${GH_PROJECT}-${GH_TAGNAME} GNU_CONFIGURE= yes @@ -34,6 +34,19 @@ RUN_DEPENDS+= freebsd-release-manifests>0:misc/freebsd-release-manifests QEMU_DESC= Add qemu-user-static to compile ports for non-x86 architectures QEMU_RUN_DEPENDS= qemu-user-static>0:emulators/qemu-user-static +.include + +# rm -x support came in 10.0. A bundled rm is used if not supported in base. +# While <10 is technically not supported in the Ports Tree, Poudriere +# detects this and it being a package build tool it should still be +# supported as a user may be installing this to build packages for upgrading +# their system to a supported release. +.if ${OSVERSION} < 1000000 +PLIST_SUB+= RM="" +.else +PLIST_SUB+= RM="@comment " +.endif + post-install: @${MKDIR} ${STAGEDIR}${PREFIX}/share/zsh/site-functions/ ${INSTALL_DATA} ${WRKSRC}/completions/zsh/_poudriere \ diff --git a/ports-mgmt/poudriere-devel/distinfo b/ports-mgmt/poudriere-devel/distinfo index 00ae0073366a..2b1c83b5f5e6 100644 --- a/ports-mgmt/poudriere-devel/distinfo +++ b/ports-mgmt/poudriere-devel/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1487697127 -SHA256 (freebsd-poudriere-3.1.99.20170221-3.0-1822-ge8f0d3e_GH0.tar.gz) = 6f2702bd7f4f753c40a43df6599a46657766d39deda83a2e2df746d1525fb68a -SIZE (freebsd-poudriere-3.1.99.20170221-3.0-1822-ge8f0d3e_GH0.tar.gz) = 2952866 +TIMESTAMP = 1488859216 +SHA256 (freebsd-poudriere-3.1.99.20170306-3.0-1957-gb3d3e0c2_GH0.tar.gz) = f614fea1cb572f290a1606fa18c047ac698004f3879880b37c3c9d0bacf3744b +SIZE (freebsd-poudriere-3.1.99.20170306-3.0-1957-gb3d3e0c2_GH0.tar.gz) = 2968774 diff --git a/ports-mgmt/poudriere-devel/files/patch-src__libexec__poudriere__cached__cached.c b/ports-mgmt/poudriere-devel/files/patch-src__libexec__poudriere__cached__cached.c deleted file mode 100644 index 7cd62e0d6a76..000000000000 --- a/ports-mgmt/poudriere-devel/files/patch-src__libexec__poudriere__cached__cached.c +++ /dev/null @@ -1,10 +0,0 @@ ---- src/libexec/poudriere/cached/cached.c.orig 2017-02-20 23:37:27 UTC -+++ src/libexec/poudriere/cached/cached.c -@@ -26,6 +26,7 @@ - - #include - -+#include - #include - #include - #include diff --git a/ports-mgmt/poudriere-devel/files/patch-src_share_poudriere_common.sh b/ports-mgmt/poudriere-devel/files/patch-src_share_poudriere_common.sh deleted file mode 100644 index 2f9bd636b645..000000000000 --- a/ports-mgmt/poudriere-devel/files/patch-src_share_poudriere_common.sh +++ /dev/null @@ -1,35 +0,0 @@ ---- src/share/poudriere/common.sh.orig 2017-02-22 20:34:08 UTC -+++ src/share/poudriere/common.sh -@@ -3216,7 +3216,7 @@ build_pkg() { - - if [ ${TMPFS_LOCALBASE} -eq 1 -o ${TMPFS_ALL} -eq 1 ]; then - if [ -f "${mnt}/${LOCALBASE:-/usr/local}/.mounted" ]; then -- umount -n ${mnt}/${LOCALBASE:-/usr/local} -+ umount -f ${mnt}/${LOCALBASE:-/usr/local} - fi - mnt_tmpfs localbase ${mnt}/${LOCALBASE:-/usr/local} - do_clone "${MASTERMNT}/${LOCALBASE:-/usr/local}" \ -@@ -3322,7 +3322,7 @@ stop_build() { - _my_path mnt - - if [ -f "${mnt}/.npkg_mounted" ]; then -- umount -n "${mnt}/.npkg" -+ umount -f "${mnt}/.npkg" - rm -f "${mnt}/.npkg_mounted" - fi - rm -rf "${PACKAGES}/.npkg/${PKGNAME}" -@@ -4693,12 +4693,12 @@ clean_restricted() { - bset status "clean_restricted:" - # Remount rw - # mount_nullfs does not support mount -u -- umount -n ${MASTERMNT}/packages -+ umount -f ${MASTERMNT}/packages - mount_packages - injail /usr/bin/make -s -C /usr/ports -j ${PARALLEL_JOBS} \ - RM="/bin/rm -fv" ECHO_MSG="true" clean-restricted - # Remount ro -- umount -n ${MASTERMNT}/packages -+ umount -f ${MASTERMNT}/packages - mount_packages -o ro - } - diff --git a/ports-mgmt/poudriere-devel/files/patch-src_share_poudriere_include_fs.sh b/ports-mgmt/poudriere-devel/files/patch-src_share_poudriere_include_fs.sh deleted file mode 100644 index ab63945c90b7..000000000000 --- a/ports-mgmt/poudriere-devel/files/patch-src_share_poudriere_include_fs.sh +++ /dev/null @@ -1,20 +0,0 @@ ---- src/share/poudriere/include/fs.sh.orig 2017-02-22 20:34:08 UTC -+++ src/share/poudriere/include/fs.sh -@@ -98,7 +98,7 @@ umountfs() { - - [ -d "${mnt}" ] || return 0 - mnt=$(realpath ${mnt}) -- if ! findmounts "${mnt}" "${pattern}" | xargs umount -n; then -+ if ! findmounts "${mnt}" "${pattern}" | xargs umount -f; then - findmounts "${mnt}" "${pattern}" | xargs umount -fv || : - fi - -@@ -198,7 +198,7 @@ destroyfs() { - umountfs ${mnt} 1 - if [ ${TMPFS_ALL} -eq 1 ]; then - if [ -d "${mnt}" ]; then -- if ! umount -n "${mnt}" 2>/dev/null; then -+ if ! umount -f "${mnt}" 2>/dev/null; then - umount -f "${mnt}" 2>/dev/null || : - fi - fi diff --git a/ports-mgmt/poudriere-devel/pkg-plist b/ports-mgmt/poudriere-devel/pkg-plist index b88fcc6ddab7..30eaf0e189b3 100644 --- a/ports-mgmt/poudriere-devel/pkg-plist +++ b/ports-mgmt/poudriere-devel/pkg-plist @@ -15,8 +15,10 @@ libexec/poudriere/locked_mkdir libexec/poudriere/nc libexec/poudriere/poudriered libexec/poudriere/ptsort +libexec/poudriere/pwait libexec/poudriere/rename libexec/poudriere/rexec +%%RM%%libexec/poudriere/rm libexec/poudriere/sh libexec/poudriere/timeout libexec/poudriere/timestamp @@ -72,15 +74,17 @@ man/man8/poudriere.8.gz %%DATADIR%%/html/jail.html %%DATADIR%%/html/robots.txt %%DATADIR%%/image.sh -%%DATADIR%%/include/common.sh.dragonfly -%%DATADIR%%/include/common.sh.freebsd %%DATADIR%%/include/colors.pre.sh %%DATADIR%%/include/colors.sh +%%DATADIR%%/include/common.sh.dragonfly +%%DATADIR%%/include/common.sh.freebsd %%DATADIR%%/include/display.sh %%DATADIR%%/include/fs.sh %%DATADIR%%/include/hash.sh %%DATADIR%%/include/html.sh %%DATADIR%%/include/parallel.sh +%%DATADIR%%/include/shared_hash.sh +%%DATADIR%%/include/util.sh %%DATADIR%%/jail.sh %%DATADIR%%/options.sh %%DATADIR%%/pkgclean.sh