[gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
mgorny 14/12/13 08:42:42 Modified: ChangeLog multibuild.eclass Log: Disable parallel run support. Revision ChangesPath 1.1461 eclass/ChangeLog file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1461view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1461content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1460r2=1.1461 Index: ChangeLog === RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v retrieving revision 1.1460 retrieving revision 1.1461 diff -u -r1.1460 -r1.1461 --- ChangeLog 13 Dec 2014 08:41:37 - 1.1460 +++ ChangeLog 13 Dec 2014 08:42:42 - 1.1461 @@ -1,6 +1,9 @@ # ChangeLog for eclass directory # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1460 2014/12/13 08:41:37 mgorny Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1461 2014/12/13 08:42:42 mgorny Exp $ + + 13 Dec 2014; Michał Górny mgo...@gentoo.org multibuild.eclass: + Disable parallel run support. 13 Dec 2014; Michał Górny mgo...@gentoo.org multilib-build.eclass, multilib-minimal.eclass: 1.20 eclass/multibuild.eclass file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.20view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.20content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.19r2=1.20 Index: multibuild.eclass === RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v retrieving revision 1.19 retrieving revision 1.20 diff -u -r1.19 -r1.20 --- multibuild.eclass 31 Oct 2014 00:57:49 - 1.19 +++ multibuild.eclass 13 Dec 2014 08:42:42 - 1.20 @@ -1,6 +1,6 @@ # Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.19 2014/10/31 00:57:49 pesa Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.20 2014/12/13 08:42:42 mgorny Exp $ # @ECLASS: multibuild # @MAINTAINER: @@ -26,8 +26,6 @@ if [[ ! ${_MULTIBUILD} ]]; then -inherit multiprocessing - # @ECLASS-VARIABLE: MULTIBUILD_VARIANTS # @DESCRIPTION: # An array specifying all enabled variants which multibuild_foreach* @@ -138,8 +136,8 @@ # @USAGE: [argv...] # @DESCRIPTION: # Run the passed command repeatedly for each of the enabled package -# variants alike multibuild_foreach_variant. Multiple invocations of the command -# will be performed in parallel, up to MULTIBUILD_JOBS tasks. +# variants. This used to run the commands in parallel but now it's +# just a deprecated alias to multibuild_foreach_variant. # # The function returns 0 if all commands return 0, or the first non-zero # exit status otherwise. However, it performs all the invocations @@ -148,31 +146,7 @@ multibuild_parallel_foreach_variant() { debug-print-function ${FUNCNAME} ${@} - local ret lret - - _multibuild_parallel() { - ( - multijob_child_init - ${@} - ) - multijob_post_fork - } - - local opts - if [[ ${MULTIBUILD_JOBS} ]]; then - opts=-j${MULTIBUILD_JOBS} - else - opts=${MAKEOPTS} - fi - - multijob_init ${opts} - multibuild_foreach_variant _multibuild_parallel ${@} - ret=${?} - multijob_finish - lret=${?} - - [[ ${ret} -eq 0 ]] ret=${lret} - return ${ret} + multibuild_foreach_variant ${@} } # @FUNCTION: multibuild_for_best_variant @@ -252,25 +226,12 @@ # Merge the directory tree (fake root) from src-root to dest-root # (the real root). Both directories have to be real, absolute paths # (i.e. including ${D}). Source root will be removed. -# -# This functions uses locking to support merging during parallel -# installs. multibuild_merge_root() { local src=${1} local dest=${2} - local lockfile=${T}/.multibuild_merge_lock - local lockfile_l=${lockfile}.${BASHPID} local ret - # Lock the install tree for merge. The touch+ln method ensures race - # condition-free locking with maximum portability. - touch ${lockfile_l} || die - until ln ${lockfile_l} ${lockfile} /dev/null; do - sleep 1 - done - rm ${lockfile_l} || die - if use userland_BSD; then # Most of BSD variants fail to copy broken symlinks, #447370 # also, they do not support --version @@ -297,9 +258,6 @@ ret=${?} fi - # Remove the lock. - rm
[gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
pesa14/10/31 00:57:49 Modified: ChangeLog multibuild.eclass Log: Make sure BUILD_DIR exists before pushd'ing into it. Revision ChangesPath 1.1397 eclass/ChangeLog file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1397view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1397content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1396r2=1.1397 Index: ChangeLog === RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v retrieving revision 1.1396 retrieving revision 1.1397 diff -u -r1.1396 -r1.1397 --- ChangeLog 30 Oct 2014 13:21:25 - 1.1396 +++ ChangeLog 31 Oct 2014 00:57:49 - 1.1397 @@ -1,6 +1,9 @@ # ChangeLog for eclass directory # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1396 2014/10/30 13:21:25 pacho Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1397 2014/10/31 00:57:49 pesa Exp $ + + 31 Oct 2014; Davide Pesavento p...@gentoo.org multibuild.eclass: + Make sure BUILD_DIR exists before pushd'ing into it. 30 Oct 2014; Pacho Ramos pa...@gentoo.org vala.eclass: Fix repoman warnings (#521980 by Arfrever Frehtes Taifersar Arahesis) 1.19 eclass/multibuild.eclass file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.19view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.19content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.18r2=1.19 Index: multibuild.eclass === RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v retrieving revision 1.18 retrieving revision 1.19 diff -u -r1.18 -r1.19 --- multibuild.eclass 10 May 2014 21:36:49 - 1.18 +++ multibuild.eclass 31 Oct 2014 00:57:49 - 1.19 @@ -1,6 +1,6 @@ # Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.18 2014/05/10 21:36:49 mgorny Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.19 2014/10/31 00:57:49 pesa Exp $ # @ECLASS: multibuild # @MAINTAINER: @@ -237,6 +237,7 @@ [[ ${#} -ne 0 ]] || die ${FUNCNAME}: no command specified. [[ ${BUILD_DIR} ]] || die ${FUNCNAME}: BUILD_DIR not set. + mkdir -p ${BUILD_DIR} || die pushd ${BUILD_DIR} /dev/null || die ${@} ret=${?}
[gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
mgorny 14/05/10 21:36:49 Modified: ChangeLog multibuild.eclass Log: Remove the coreutils dependency since the old copying code has been replaced by a more portable function. Bug #509984. Revision ChangesPath 1.1249 eclass/ChangeLog file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1249view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1249content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1248r2=1.1249 Index: ChangeLog === RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v retrieving revision 1.1248 retrieving revision 1.1249 diff -u -r1.1248 -r1.1249 --- ChangeLog 9 May 2014 10:48:59 - 1.1248 +++ ChangeLog 10 May 2014 21:36:49 - 1.1249 @@ -1,6 +1,10 @@ # ChangeLog for eclass directory # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1248 2014/05/09 10:48:59 mgorny Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1249 2014/05/10 21:36:49 mgorny Exp $ + + 10 May 2014; Michał Górny mgo...@gentoo.org multibuild.eclass: + Remove the coreutils dependency since the old copying code has been replaced + by a more portable function. Bug #509984. 09 May 2014; Michał Górny mgo...@gentoo.org cmake-multilib.eclass: Use multilib-minimal for phase functions. 1.18 eclass/multibuild.eclass file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.18view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.18content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.17r2=1.18 Index: multibuild.eclass === RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v retrieving revision 1.17 retrieving revision 1.18 diff -u -r1.17 -r1.18 --- multibuild.eclass 15 Apr 2014 15:54:13 - 1.17 +++ multibuild.eclass 10 May 2014 21:36:49 - 1.18 @@ -1,6 +1,6 @@ # Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.17 2014/04/15 15:54:13 mgorny Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.18 2014/05/10 21:36:49 mgorny Exp $ # @ECLASS: multibuild # @MAINTAINER: @@ -28,8 +28,6 @@ inherit multiprocessing -DEPEND=userland_GNU? ( =sys-apps/coreutils-8.5 ) - # @ECLASS-VARIABLE: MULTIBUILD_VARIANTS # @DESCRIPTION: # An array specifying all enabled variants which multibuild_foreach*
[gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
mgorny 14/04/15 15:54:13 Modified: ChangeLog multibuild.eclass Log: multibuild_merge_root: re-introduce userland_BSD tar fallback, bug #507626. Revision ChangesPath 1.1207 eclass/ChangeLog file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1207view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1207content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1206r2=1.1207 Index: ChangeLog === RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v retrieving revision 1.1206 retrieving revision 1.1207 diff -u -r1.1206 -r1.1207 --- ChangeLog 14 Apr 2014 20:21:42 - 1.1206 +++ ChangeLog 15 Apr 2014 15:54:12 - 1.1207 @@ -1,6 +1,9 @@ # ChangeLog for eclass directory # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1206 2014/04/14 20:21:42 tomwij Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1207 2014/04/15 15:54:12 mgorny Exp $ + + 15 Apr 2014; Michał Górny mgo...@gentoo.org multibuild.eclass: + multibuild_merge_root: re-introduce userland_BSD tar fallback, bug #507626. 14 Apr 2014; Tom Wijsman tom...@gentoo.org kernel-2.eclass: Temporarily fix up =sys-kernel/git-sources-3.15_rc1.ebuild, bug #507656. 1.17 eclass/multibuild.eclass file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.17view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.17content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.16r2=1.17 Index: multibuild.eclass === RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v retrieving revision 1.16 retrieving revision 1.17 diff -u -r1.16 -r1.17 --- multibuild.eclass 11 Apr 2014 08:30:44 - 1.16 +++ multibuild.eclass 15 Apr 2014 15:54:13 - 1.17 @@ -1,6 +1,6 @@ # Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.16 2014/04/11 08:30:44 mgorny Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.17 2014/04/15 15:54:13 mgorny Exp $ # @ECLASS: multibuild # @MAINTAINER: @@ -272,21 +272,31 @@ done rm ${lockfile_l} || die - local cp_args=() - - if cp -a --version /dev/null; then - cp_args+=( -a ) + if use userland_BSD; then + # Most of BSD variants fail to copy broken symlinks, #447370 + # also, they do not support --version + + tar -C ${src} -f - -c . \ + | tar -x -f - -C ${dest} + [[ ${PIPESTATUS[*]} == '0 0' ]] + ret=${?} else - cp_args+=( -P -R -p ) - fi + local cp_args=() - if cp --reflink=auto --version /dev/null; then - # enable reflinking if possible to make this faster - cp_args+=( --reflink=auto ) - fi + if cp -a --version /dev/null; then + cp_args+=( -a ) + else + cp_args+=( -P -R -p ) + fi + + if cp --reflink=auto --version /dev/null; then + # enable reflinking if possible to make this faster + cp_args+=( --reflink=auto ) + fi - cp ${cp_args[@]} ${src}/. ${dest}/ - ret=${?} + cp ${cp_args[@]} ${src}/. ${dest}/ + ret=${?} + fi # Remove the lock. rm ${lockfile} || die
[gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
mgorny 14/04/11 08:30:44 Modified: ChangeLog multibuild.eclass Log: Enable reflinking in multibuild_copy_sources. Revision ChangesPath 1.1204 eclass/ChangeLog file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1204view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1204content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1203r2=1.1204 Index: ChangeLog === RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v retrieving revision 1.1203 retrieving revision 1.1204 diff -u -r1.1203 -r1.1204 --- ChangeLog 10 Apr 2014 16:43:25 - 1.1203 +++ ChangeLog 11 Apr 2014 08:30:44 - 1.1204 @@ -1,6 +1,9 @@ # ChangeLog for eclass directory # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1203 2014/04/10 16:43:25 mgorny Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1204 2014/04/11 08:30:44 mgorny Exp $ + + 11 Apr 2014; Michał Górny mgo...@gentoo.org multibuild.eclass: + Enable reflinking in multibuild_copy_sources. 10 Apr 2014; Michał Górny mgo...@gentoo.org multibuild.eclass: Use a more portable and clobbering cp call for multibuild_merge_root(). 1.16 eclass/multibuild.eclass file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.16view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.16content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.15r2=1.16 Index: multibuild.eclass === RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- multibuild.eclass 10 Apr 2014 16:43:25 - 1.15 +++ multibuild.eclass 11 Apr 2014 08:30:44 - 1.16 @@ -1,6 +1,6 @@ # Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.15 2014/04/10 16:43:25 mgorny Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.16 2014/04/11 08:30:44 mgorny Exp $ # @ECLASS: multibuild # @MAINTAINER: @@ -213,9 +213,16 @@ einfo Will copy sources from ${_MULTIBUILD_INITIAL_BUILD_DIR} + local cp_args=() + if cp --reflink=auto --version /dev/null; then + # enable reflinking if possible to make this faster + cp_args+=( --reflink=auto ) + fi + _multibuild_create_source_copy() { einfo ${MULTIBUILD_VARIANT}: copying to ${BUILD_DIR} - cp -pr ${_MULTIBUILD_INITIAL_BUILD_DIR} ${BUILD_DIR} || die + cp -pr ${cp_args[@]} \ + ${_MULTIBUILD_INITIAL_BUILD_DIR} ${BUILD_DIR} || die } multibuild_foreach_variant _multibuild_create_source_copy
[gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
mgorny 14/04/10 16:43:25 Modified: ChangeLog multibuild.eclass Log: Use a more portable and clobbering cp call for multibuild_merge_root(). Revision ChangesPath 1.1203 eclass/ChangeLog file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1203view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1203content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1202r2=1.1203 Index: ChangeLog === RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v retrieving revision 1.1202 retrieving revision 1.1203 diff -u -r1.1202 -r1.1203 --- ChangeLog 9 Apr 2014 21:55:12 - 1.1202 +++ ChangeLog 10 Apr 2014 16:43:25 - 1.1203 @@ -1,6 +1,9 @@ # ChangeLog for eclass directory # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1202 2014/04/09 21:55:12 radhermit Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1203 2014/04/10 16:43:25 mgorny Exp $ + + 10 Apr 2014; Michał Górny mgo...@gentoo.org multibuild.eclass: + Use a more portable and clobbering cp call for multibuild_merge_root(). 09 Apr 2014; Tim Harder radher...@gentoo.org java-utils-2.eclass: Only refer to DESTTREE within the src_install phase. 1.15 eclass/multibuild.eclass file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.15view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.15content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.14r2=1.15 Index: multibuild.eclass === RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- multibuild.eclass 18 Sep 2013 08:49:33 - 1.14 +++ multibuild.eclass 10 Apr 2014 16:43:25 - 1.15 @@ -1,6 +1,6 @@ -# Copyright 1999-2013 Gentoo Foundation +# Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.14 2013/09/18 08:49:33 mgorny Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.15 2014/04/10 16:43:25 mgorny Exp $ # @ECLASS: multibuild # @MAINTAINER: @@ -265,24 +265,22 @@ done rm ${lockfile_l} || die - if use userland_BSD; then - # 'cp -a -n' is broken: - # http://www.freebsd.org/cgi/query-pr.cgi?pr=174489 - # using tar instead which is universal but terribly slow. - - tar -C ${src} -f - -c . \ - | tar -x -f - -C ${dest} - [[ ${PIPESTATUS[*]} == '0 0' ]] - ret=${?} - elif use userland_GNU; then - # cp works with '-a -n'. + local cp_args=() - cp -a -l -n ${src}/. ${dest}/ - ret=${?} + if cp -a --version /dev/null; then + cp_args+=( -a ) else - die Unsupported userland (${USERLAND}), please report. + cp_args+=( -P -R -p ) fi + if cp --reflink=auto --version /dev/null; then + # enable reflinking if possible to make this faster + cp_args+=( --reflink=auto ) + fi + + cp ${cp_args[@]} ${src}/. ${dest}/ + ret=${?} + # Remove the lock. rm ${lockfile} || die