* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2013-03-04 19:21 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2013-03-04 19:21 UTC (permalink / raw
To: gentoo-commits
mgorny 13/03/04 19:21:27
Modified: ChangeLog
Added: multibuild.eclass
Log:
Introduce multibuild.eclass to handle building multiple variants of the same package in a common manner.
Revision Changes Path
1.705 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.705&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.705&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.704&r2=1.705
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.704
retrieving revision 1.705
diff -u -r1.704 -r1.705
--- ChangeLog 4 Mar 2013 19:10:31 -0000 1.704
+++ ChangeLog 4 Mar 2013 19:21:27 -0000 1.705
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.704 2013/03/04 19:10:31 robbat2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.705 2013/03/04 19:21:27 mgorny Exp $
+
+ 04 Mar 2013; Michał Górny <mgorny@gentoo.org> +multibuild.eclass:
+ Introduce multibuild.eclass to handle building multiple variants of the same
+ package in a common manner.
04 Mar 2013; Robin H. Johnson <robbat2@gentoo.org> mysql-cmake.eclass:
MySQL 5.6 needs to NOT have -fno-implicit-templates, also support
1.1 eclass/multibuild.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.1&content-type=text/plain
Index: multibuild.eclass
===================================================================
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.1 2013/03/04 19:21:27 mgorny Exp $
# @ECLASS: multibuild
# @MAINTAINER:
# Michał Górny <mgorny@gentoo.org>
# @AUTHOR:
# Author: Michał Górny <mgorny@gentoo.org>
# @BLURB: A generic eclass for building multiple variants of packages.
# @DESCRIPTION:
# The multibuild eclass aims to provide a generic framework for building
# multiple 'variants' of a package (e.g. multilib, Python
# implementations).
case "${EAPI:-0}" in
0|1|2|3|4)
die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}"
;;
5)
;;
*)
die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}"
;;
esac
if [[ ! ${_MULTIBUILD} ]]; then
inherit multiprocessing
# @ECLASS-VARIABLE: MULTIBUILD_VARIANTS
# @DESCRIPTION:
# An array specifying all enabled variants which multibuild_foreach*
# can execute the process for.
#
# In ebuild, it can be set in global scope. Eclasses should set it
# locally in function scope to support nesting properly.
#
# Example:
# @CODE
# python_foreach_impl() {
# local MULTIBUILD_VARIANTS=( python{2_5,2_6,2_7} ... )
# multibuild_foreach_variant python_compile
# }
# @CODE
# @ECLASS-VARIABLE: MULTIBUILD_VARIANT
# @DESCRIPTION:
# The current variant which the function was executed for.
#
# Example value:
# @CODE
# python2_6
# @CODE
# @ECLASS-VARIABLE: MULTIBUILD_ID
# @DESCRIPTION:
# The unique identifier for a multibuild run. In a simple run, it is
# equal to MULTIBUILD_VARIANT. In a nested multibuild environment, it
# contains the complete selection tree.
#
# It can be used to create variant-unique directories and files.
#
# Example value:
# @CODE
# amd64-double
# @CODE
# @ECLASS-VARIABLE: BUILD_DIR
# @DESCRIPTION:
# The current build directory. In global scope, it is supposed
# to contain an 'initial' build directory. If unset, ${S} is used.
#
# multibuild_foreach_variant() sets BUILD_DIR locally
# to variant-specific build directories based on the initial value
# of BUILD_DIR.
#
# Example value:
# @CODE
# ${WORKDIR}/foo-1.3-python2_6
# @CODE
# @FUNCTION: multibuild_foreach_variant
# @USAGE: [<argv>...]
# @DESCRIPTION:
# Run the passed command repeatedly for each of the enabled package
# variants.
#
# Each of the runs will have variant-specific BUILD_DIR set, and output
# teed to a separate log in ${T}.
#
# The function returns 0 if all commands return 0, or the first non-zero
# exit status otherwise. However, it performs all the invocations
# nevertheless. It is preferred to call 'die' inside of the passed
# function.
multibuild_foreach_variant() {
debug-print-function ${FUNCNAME} "${@}"
[[ ${MULTIBUILD_VARIANTS} ]] \
|| die "MULTIBUILD_VARIANTS need to be set"
local bdir=${BUILD_DIR:-${S}}
# Avoid writing outside WORKDIR if S=${WORKDIR}.
[[ ${bdir%%/} == ${WORKDIR%%/} ]] && bdir=${WORKDIR}/build
local prev_id=${MULTIBUILD_ID:+${MULTIBUILD_ID}-}
local ret=0 lret=0 v
debug-print "${FUNCNAME}: initial build_dir = ${bdir}"
for v in "${MULTIBUILD_VARIANTS[@]}"; do
local MULTIBUILD_VARIANT=${v}
local MULTIBUILD_ID=${prev_id}${v}
local BUILD_DIR=${bdir%%/}-${v}
local log_fd
# redirect_alloc_fd accepts files only. so we need to open
# a random file and then reuse the fd for logger process.
redirect_alloc_fd log_fd /dev/null
# bash can't handle ${log_fd} in redirections,
# we need to use eval to pass fd numbers directly.
eval "
exec ${log_fd}> >(exec tee -a \"\${T}/build-\${MULTIBUILD_ID}.log\")
einfo \"\${v}: running \${@}\" >&${log_fd} 2>&1
\"\${@}\" >&${log_fd} 2>&1
lret=\${?}
exec ${log_fd}>&-
"
done
[[ ${ret} -eq 0 && ${lret} -ne 0 ]] && ret=${lret}
return ${ret}
}
# @FUNCTION: multibuild_parallel_foreach_variant
# @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.
#
# The function returns 0 if all commands return 0, or the first non-zero
# exit status otherwise. However, it performs all the invocations
# nevertheless. It is preferred to call 'die' inside of the passed
# function.
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=1
fi
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2013-03-04 19:27 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2013-03-04 19:27 UTC (permalink / raw
To: gentoo-commits
mgorny 13/03/04 19:27:00
Modified: ChangeLog multibuild.eclass
Log:
Print only the "public" part of commands.
Revision Changes Path
1.707 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.707&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.707&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.706&r2=1.707
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.706
retrieving revision 1.707
diff -u -r1.706 -r1.707
--- ChangeLog 4 Mar 2013 19:22:13 -0000 1.706
+++ ChangeLog 4 Mar 2013 19:27:00 -0000 1.707
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.706 2013/03/04 19:22:13 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.707 2013/03/04 19:27:00 mgorny Exp $
+
+ 04 Mar 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass:
+ Print only the "public" part of commands.
04 Mar 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass,
python-r1.eclass:
1.3 eclass/multibuild.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.3&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.3&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.2&r2=1.3
Index: multibuild.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- multibuild.eclass 4 Mar 2013 19:22:13 -0000 1.2
+++ multibuild.eclass 4 Mar 2013 19:27:00 -0000 1.3
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.2 2013/03/04 19:22:13 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.3 2013/03/04 19:27:00 mgorny Exp $
# @ECLASS: multibuild
# @MAINTAINER:
@@ -118,12 +118,23 @@
# redirect_alloc_fd accepts files only. so we need to open
# a random file and then reuse the fd for logger process.
redirect_alloc_fd log_fd /dev/null
+
+ _multibuild_run() {
+ # find the first non-private command
+ local i=1
+ while [[ ${!i} == _* ]]; do
+ (( i += 1 ))
+ done
+
+ [[ ${i} -le ${#} ]] && einfo "${v}: running ${@:${i}}"
+ "${@}"
+ }
+
# bash can't handle ${log_fd} in redirections,
# we need to use eval to pass fd numbers directly.
eval "
exec ${log_fd}> >(exec tee -a \"\${T}/build-\${MULTIBUILD_ID}.log\")
- einfo \"\${v}: running \${@}\" >&${log_fd} 2>&1
- \"\${@}\" >&${log_fd} 2>&1
+ _multibuild_run \"\${@}\" >&${log_fd} 2>&1
lret=\${?}
exec ${log_fd}>&-
"
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2013-03-04 19:27 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2013-03-04 19:27 UTC (permalink / raw
To: gentoo-commits
mgorny 13/03/04 19:27:24
Modified: ChangeLog multibuild.eclass
Log:
Add multibuild_for_best_variant.
Revision Changes Path
1.708 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.708&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.708&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.707&r2=1.708
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.707
retrieving revision 1.708
diff -u -r1.707 -r1.708
--- ChangeLog 4 Mar 2013 19:27:00 -0000 1.707
+++ ChangeLog 4 Mar 2013 19:27:24 -0000 1.708
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.707 2013/03/04 19:27:00 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.708 2013/03/04 19:27:24 mgorny Exp $
+
+ 04 Mar 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass:
+ Add multibuild_for_best_variant.
04 Mar 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass:
Print only the "public" part of commands.
1.4 eclass/multibuild.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.4&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.4&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.3&r2=1.4
Index: multibuild.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- multibuild.eclass 4 Mar 2013 19:27:00 -0000 1.3
+++ multibuild.eclass 4 Mar 2013 19:27:24 -0000 1.4
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.3 2013/03/04 19:27:00 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.4 2013/03/04 19:27:24 mgorny Exp $
# @ECLASS: multibuild
# @MAINTAINER:
@@ -185,6 +185,26 @@
return ${ret}
}
+# @FUNCTION: multibuild_for_best_variant
+# @USAGE: [<argv>...]
+# @DESCRIPTION:
+# Run the passed command once, for the best of the enabled package
+# variants.
+#
+# The run will have a proper, variant-specificBUILD_DIR set, and output
+# teed to a separate log in ${T}.
+#
+# The function returns command exit status.
+multibuild_for_best_variant() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ [[ ${MULTIBUILD_VARIANTS} ]] \
+ || die "MULTIBUILD_VARIANTS need to be set"
+
+ local MULTIBUILD_VARIANTS=( "${MULTIBUILD_VARIANTS[-1]}" )
+ multibuild_foreach_variant "${@}"
+}
+
# @FUNCTION: run_in_build_dir
# @USAGE: <argv>...
# @DESCRIPTION:
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2013-03-09 13:51 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2013-03-09 13:51 UTC (permalink / raw
To: gentoo-commits
mgorny 13/03/09 13:51:02
Modified: ChangeLog multibuild.eclass
Log:
Introduce multibuild_copy_sources as a generic source duplicating function.
Revision Changes Path
1.722 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.722&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.722&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.721&r2=1.722
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.721
retrieving revision 1.722
diff -u -r1.721 -r1.722
--- ChangeLog 9 Mar 2013 13:13:02 -0000 1.721
+++ ChangeLog 9 Mar 2013 13:51:02 -0000 1.722
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.721 2013/03/09 13:13:02 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.722 2013/03/09 13:51:02 mgorny Exp $
+
+ 09 Mar 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass:
+ Introduce multibuild_copy_sources as a generic source duplicating function.
09 Mar 2013; Michał Górny <mgorny@gentoo.org> distutils-r1.eclass:
Use doins instead of dodoc to install examples, due to PMS limitations. Bug
1.5 eclass/multibuild.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.5&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.5&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.4&r2=1.5
Index: multibuild.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- multibuild.eclass 4 Mar 2013 19:27:24 -0000 1.4
+++ multibuild.eclass 9 Mar 2013 13:51:02 -0000 1.5
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.4 2013/03/04 19:27:24 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.5 2013/03/09 13:51:02 mgorny Exp $
# @ECLASS: multibuild
# @MAINTAINER:
@@ -205,6 +205,27 @@
multibuild_foreach_variant "${@}"
}
+# @FUNCTION: multibuild_copy_sources
+# @DESCRIPTION:
+# Create per-variant copies of source tree. The source tree is assumed
+# to be in ${BUILD_DIR}, or ${S} if the former is unset. The copies will
+# be placed in directories matching BUILD_DIRs used by
+# multibuild_foreach().
+multibuild_copy_sources() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ local _MULTIBUILD_INITIAL_BUILD_DIR=${BUILD_DIR:-${S}}
+
+ einfo "Will copy sources from ${_MULTIBUILD_INITIAL_BUILD_DIR}"
+
+ _multibuild_create_source_copy() {
+ einfo "${impl}: copying to ${BUILD_DIR}"
+ cp -pr "${_MULTIBUILD_INITIAL_BUILD_DIR}" "${BUILD_DIR}" || die
+ }
+
+ multibuild_foreach_variant _multibuild_create_source_copy
+}
+
# @FUNCTION: run_in_build_dir
# @USAGE: <argv>...
# @DESCRIPTION:
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2013-03-10 9:05 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2013-03-10 9:05 UTC (permalink / raw
To: gentoo-commits
mgorny 13/03/10 09:05:32
Modified: ChangeLog multibuild.eclass
Log:
multibuild_copy_sources: fix outputting variant name.
Revision Changes Path
1.733 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.733&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.733&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.732&r2=1.733
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.732
retrieving revision 1.733
diff -u -r1.732 -r1.733
--- ChangeLog 10 Mar 2013 02:02:30 -0000 1.732
+++ ChangeLog 10 Mar 2013 09:05:32 -0000 1.733
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.732 2013/03/10 02:02:30 ottxor Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.733 2013/03/10 09:05:32 mgorny Exp $
+
+ 10 Mar 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass:
+ multibuild_copy_sources: fix outputting variant name.
10 Mar 2013; Christoph Junghans <ottxor@gentoo.org> vim.eclass:
add sys-apps/gawk dep
1.6 eclass/multibuild.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.6&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.6&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.5&r2=1.6
Index: multibuild.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- multibuild.eclass 9 Mar 2013 13:51:02 -0000 1.5
+++ multibuild.eclass 10 Mar 2013 09:05:32 -0000 1.6
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.5 2013/03/09 13:51:02 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.6 2013/03/10 09:05:32 mgorny Exp $
# @ECLASS: multibuild
# @MAINTAINER:
@@ -219,7 +219,7 @@
einfo "Will copy sources from ${_MULTIBUILD_INITIAL_BUILD_DIR}"
_multibuild_create_source_copy() {
- einfo "${impl}: copying to ${BUILD_DIR}"
+ einfo "${MULTIBUILD_VARIANT}: copying to ${BUILD_DIR}"
cp -pr "${_MULTIBUILD_INITIAL_BUILD_DIR}" "${BUILD_DIR}" || die
}
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2013-03-10 21:00 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2013-03-10 21:00 UTC (permalink / raw
To: gentoo-commits
mgorny 13/03/10 21:00:29
Modified: ChangeLog multibuild.eclass
Log:
Fix compatibility with bash-4.1 -- it does not support negative array subscripts.
Revision Changes Path
1.734 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.734&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.734&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.733&r2=1.734
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.733
retrieving revision 1.734
diff -u -r1.733 -r1.734
--- ChangeLog 10 Mar 2013 09:05:32 -0000 1.733
+++ ChangeLog 10 Mar 2013 21:00:28 -0000 1.734
@@ -1,6 +1,10 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.733 2013/03/10 09:05:32 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.734 2013/03/10 21:00:28 mgorny Exp $
+
+ 10 Mar 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass:
+ Fix compatibility with bash-4.1 -- it does not support negative array
+ subscripts.
10 Mar 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass:
multibuild_copy_sources: fix outputting variant name.
1.7 eclass/multibuild.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.7&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.7&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.6&r2=1.7
Index: multibuild.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- multibuild.eclass 10 Mar 2013 09:05:32 -0000 1.6
+++ multibuild.eclass 10 Mar 2013 21:00:29 -0000 1.7
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.6 2013/03/10 09:05:32 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.7 2013/03/10 21:00:29 mgorny Exp $
# @ECLASS: multibuild
# @MAINTAINER:
@@ -201,7 +201,10 @@
[[ ${MULTIBUILD_VARIANTS} ]] \
|| die "MULTIBUILD_VARIANTS need to be set"
- local MULTIBUILD_VARIANTS=( "${MULTIBUILD_VARIANTS[-1]}" )
+ # bash-4.1 can't handle negative subscripts
+ local MULTIBUILD_VARIANTS=(
+ "${MULTIBUILD_VARIANTS[$(( ${#MULTIBUILD_VARIANTS[@]} - 1 ))]}"
+ )
multibuild_foreach_variant "${@}"
}
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2013-03-10 21:44 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2013-03-10 21:44 UTC (permalink / raw
To: gentoo-commits
mgorny 13/03/10 21:44:01
Modified: ChangeLog multibuild.eclass
Log:
Make the log output redirection much simpler. Fix bash-3.2 compatibility.
Revision Changes Path
1.735 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.735&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.735&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.734&r2=1.735
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.734
retrieving revision 1.735
diff -u -r1.734 -r1.735
--- ChangeLog 10 Mar 2013 21:00:28 -0000 1.734
+++ ChangeLog 10 Mar 2013 21:44:00 -0000 1.735
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.734 2013/03/10 21:00:28 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.735 2013/03/10 21:44:00 mgorny Exp $
+
+ 10 Mar 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass:
+ Make the log output redirection much simpler. Fix bash-3.2 compatibility.
10 Mar 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass:
Fix compatibility with bash-4.1 -- it does not support negative array
1.8 eclass/multibuild.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.8&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.8&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.7&r2=1.8
Index: multibuild.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- multibuild.eclass 10 Mar 2013 21:00:29 -0000 1.7
+++ multibuild.eclass 10 Mar 2013 21:44:01 -0000 1.8
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.7 2013/03/10 21:00:29 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.8 2013/03/10 21:44:01 mgorny Exp $
# @ECLASS: multibuild
# @MAINTAINER:
@@ -113,11 +113,6 @@
local MULTIBUILD_VARIANT=${v}
local MULTIBUILD_ID=${prev_id}${v}
local BUILD_DIR=${bdir%%/}-${v}
- local log_fd
-
- # redirect_alloc_fd accepts files only. so we need to open
- # a random file and then reuse the fd for logger process.
- redirect_alloc_fd log_fd /dev/null
_multibuild_run() {
# find the first non-private command
@@ -130,14 +125,9 @@
"${@}"
}
- # bash can't handle ${log_fd} in redirections,
- # we need to use eval to pass fd numbers directly.
- eval "
- exec ${log_fd}> >(exec tee -a \"\${T}/build-\${MULTIBUILD_ID}.log\")
- _multibuild_run \"\${@}\" >&${log_fd} 2>&1
- lret=\${?}
- exec ${log_fd}>&-
- "
+ _multibuild_run "${@}" \
+ > >(exec tee -a "${T}/build-${MULTIBUILD_ID}.log") 2>&1
+ lret=${?}
done
[[ ${ret} -eq 0 && ${lret} -ne 0 ]] && ret=${lret}
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2013-05-23 20:19 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2013-05-23 20:19 UTC (permalink / raw
To: gentoo-commits
mgorny 13/05/23 20:19:29
Modified: ChangeLog multibuild.eclass
Log:
Use portable locking code from Fabian Groffen. Bug #466554.
Revision Changes Path
1.836 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.836&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.836&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.835&r2=1.836
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.835
retrieving revision 1.836
diff -u -r1.835 -r1.836
--- ChangeLog 22 May 2013 05:10:29 -0000 1.835
+++ ChangeLog 23 May 2013 20:19:28 -0000 1.836
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.835 2013/05/22 05:10:29 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.836 2013/05/23 20:19:28 mgorny Exp $
+
+ 23 May 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass:
+ Use portable locking code from Fabian Groffen. Bug #466554.
22 May 2013; Michał Górny <mgorny@gentoo.org> eutils.eclass:
Fix the libtool check, bug #470938.
1.10 eclass/multibuild.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.10&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.10&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.9&r2=1.10
Index: multibuild.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- multibuild.eclass 1 Apr 2013 09:17:53 -0000 1.9
+++ multibuild.eclass 23 May 2013 20:19:28 -0000 1.10
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.9 2013/04/01 09:17:53 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.10 2013/05/23 20:19:28 mgorny Exp $
# @ECLASS: multibuild
# @MAINTAINER:
@@ -251,38 +251,39 @@
local src=${1}
local dest=${2}
- local lockfile=${T}/multibuild_merge_lock
+ local lockfile=${T}/.multibuild_merge_lock
+ local lockfile_l=${lockfile}.${$}
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
- # Locking is done by 'lockf' which can wrap a command.
# '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 . \
- | lockf "${lockfile}" tar -x -f - -C "${dest}"
+ | tar -x -f - -C "${dest}"
[[ ${PIPESTATUS[*]} == '0 0' ]]
ret=${?}
elif use userland_GNU; then
- # GNU has 'flock' which can't wrap commands but can lock
- # a fd which is good enough for us.
- # and cp works with '-a -n'.
-
- local lock_fd
- redirect_alloc_fd lock_fd "${lockfile}" '>>'
- flock ${lock_fd}
+ # cp works with '-a -n'.
cp -a -l -n "${src}"/. "${dest}"/
ret=${?}
-
- # Close the lock file when we are done with it.
- # Prevents deadlock if we aren't in a subshell.
- eval "exec ${lock_fd}>&-"
else
die "Unsupported userland (${USERLAND}), please report."
fi
+ # Remove the lock.
+ rm "${lockfile}" || die
+
if [[ ${ret} -ne 0 ]]; then
die "${MULTIBUILD_VARIANT:-(unknown)}: merging image failed."
fi
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2013-05-24 17:42 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2013-05-24 17:42 UTC (permalink / raw
To: gentoo-commits
mgorny 13/05/24 17:42:06
Modified: ChangeLog multibuild.eclass
Log:
Fix the race condition in locking code by using $BASHPID instead of $$.
Revision Changes Path
1.837 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.837&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.837&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.836&r2=1.837
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.836
retrieving revision 1.837
diff -u -r1.836 -r1.837
--- ChangeLog 23 May 2013 20:19:28 -0000 1.836
+++ ChangeLog 24 May 2013 17:42:05 -0000 1.837
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.836 2013/05/23 20:19:28 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.837 2013/05/24 17:42:05 mgorny Exp $
+
+ 24 May 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass:
+ Fix the race condition in locking code by using $BASHPID instead of $$.
23 May 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass:
Use portable locking code from Fabian Groffen. Bug #466554.
1.11 eclass/multibuild.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.11&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.11&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.10&r2=1.11
Index: multibuild.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- multibuild.eclass 23 May 2013 20:19:28 -0000 1.10
+++ multibuild.eclass 24 May 2013 17:42:05 -0000 1.11
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.10 2013/05/23 20:19:28 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.11 2013/05/24 17:42:05 mgorny Exp $
# @ECLASS: multibuild
# @MAINTAINER:
@@ -252,7 +252,7 @@
local dest=${2}
local lockfile=${T}/.multibuild_merge_lock
- local lockfile_l=${lockfile}.${$}
+ local lockfile_l=${lockfile}.${BASHPID}
local ret
# Lock the install tree for merge. The touch+ln method ensures race
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2013-06-21 10:31 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2013-06-21 10:31 UTC (permalink / raw
To: gentoo-commits
mgorny 13/06/21 10:31:18
Modified: ChangeLog multibuild.eclass
Log:
Enable EAPI 4 per bug #474000.
Revision Changes Path
1.861 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.861&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.861&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.860&r2=1.861
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.860
retrieving revision 1.861
diff -u -r1.860 -r1.861
--- ChangeLog 18 Jun 2013 04:31:44 -0000 1.860
+++ ChangeLog 21 Jun 2013 10:31:18 -0000 1.861
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.860 2013/06/18 04:31:44 ottxor Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.861 2013/06/21 10:31:18 mgorny Exp $
+
+ 21 Jun 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass:
+ Enable EAPI 4 per bug #474000.
18 Jun 2013; Christoph Junghans <ottxor@gentoo.org> cvs.eclass:
fixed use of proxy variables
1.12 eclass/multibuild.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.12&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.12&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.11&r2=1.12
Index: multibuild.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- multibuild.eclass 24 May 2013 17:42:05 -0000 1.11
+++ multibuild.eclass 21 Jun 2013 10:31:18 -0000 1.12
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.11 2013/05/24 17:42:05 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.12 2013/06/21 10:31:18 mgorny Exp $
# @ECLASS: multibuild
# @MAINTAINER:
@@ -14,10 +14,10 @@
# implementations).
case "${EAPI:-0}" in
- 0|1|2|3|4)
+ 0|1|2|3)
die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}"
;;
- 5)
+ 4|5)
;;
*)
die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}"
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2013-09-10 9:10 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2013-09-10 9:10 UTC (permalink / raw
To: gentoo-commits
mgorny 13/09/10 09:10:22
Modified: ChangeLog multibuild.eclass
Log:
Add new enough coreutils dep wrt bug #484454.
Revision Changes Path
1.955 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.955&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.955&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.954&r2=1.955
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.954
retrieving revision 1.955
diff -u -r1.954 -r1.955
--- ChangeLog 9 Sep 2013 16:01:16 -0000 1.954
+++ ChangeLog 10 Sep 2013 09:10:22 -0000 1.955
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.954 2013/09/09 16:01:16 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.955 2013/09/10 09:10:22 mgorny Exp $
+
+ 10 Sep 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass:
+ Add new enough coreutils dep wrt bug #484454.
09 Sep 2013; Michał Górny <mgorny@gentoo.org> git-r3.eclass:
Introduce smart switching between "git fetch" and "git fetch --depth 1" to
1.13 eclass/multibuild.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.13&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.13&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.12&r2=1.13
Index: multibuild.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- multibuild.eclass 21 Jun 2013 10:31:18 -0000 1.12
+++ multibuild.eclass 10 Sep 2013 09:10:22 -0000 1.13
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.12 2013/06/21 10:31:18 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.13 2013/09/10 09:10:22 mgorny Exp $
# @ECLASS: multibuild
# @MAINTAINER:
@@ -28,6 +28,8 @@
inherit multiprocessing
+RDEPEND="userland_GNU? ( >=sys-apps/coreutils-8.5 )"
+
# @ECLASS-VARIABLE: MULTIBUILD_VARIANTS
# @DESCRIPTION:
# An array specifying all enabled variants which multibuild_foreach*
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2013-09-18 8:49 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2013-09-18 8:49 UTC (permalink / raw
To: gentoo-commits
mgorny 13/09/18 08:49:33
Modified: ChangeLog multibuild.eclass
Log:
Fix coreutils dep to be build-time.
Revision Changes Path
1.975 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.975&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.975&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.974&r2=1.975
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.974
retrieving revision 1.975
diff -u -r1.974 -r1.975
--- ChangeLog 17 Sep 2013 19:40:56 -0000 1.974
+++ ChangeLog 18 Sep 2013 08:49:33 -0000 1.975
@@ -1,6 +1,9 @@
# ChangeLog for eclass directory
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.974 2013/09/17 19:40:56 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.975 2013/09/18 08:49:33 mgorny Exp $
+
+ 18 Sep 2013; Michał Górny <mgorny@gentoo.org> multibuild.eclass:
+ Fix coreutils dep to be build-time.
17 Sep 2013; Michał Górny <mgorny@gentoo.org> python-utils-r1.eclass:
Fix missing variable replacement in _python_ln_rel.
1.14 eclass/multibuild.eclass
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.14&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.14&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.13&r2=1.14
Index: multibuild.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- multibuild.eclass 10 Sep 2013 09:10:22 -0000 1.13
+++ multibuild.eclass 18 Sep 2013 08:49:33 -0000 1.14
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.13 2013/09/10 09:10:22 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/multibuild.eclass,v 1.14 2013/09/18 08:49:33 mgorny Exp $
# @ECLASS: multibuild
# @MAINTAINER:
@@ -28,7 +28,7 @@
inherit multiprocessing
-RDEPEND="userland_GNU? ( >=sys-apps/coreutils-8.5 )"
+DEPEND="userland_GNU? ( >=sys-apps/coreutils-8.5 )"
# @ECLASS-VARIABLE: MULTIBUILD_VARIANTS
# @DESCRIPTION:
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2014-04-10 16:43 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2014-04-10 16:43 UTC (permalink / raw
To: gentoo-commits
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 Changes Path
1.1203 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1203&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1203&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1202&r2=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 -0000 1.1202
+++ ChangeLog 10 Apr 2014 16:43:25 -0000 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 <mgorny@gentoo.org> multibuild.eclass:
+ Use a more portable and clobbering "cp" call for multibuild_merge_root().
09 Apr 2014; Tim Harder <radhermit@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.15&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.15&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.14&r2=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 -0000 1.14
+++ multibuild.eclass 10 Apr 2014 16:43:25 -0000 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
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2014-04-11 8:30 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2014-04-11 8:30 UTC (permalink / raw
To: gentoo-commits
mgorny 14/04/11 08:30:44
Modified: ChangeLog multibuild.eclass
Log:
Enable reflinking in multibuild_copy_sources.
Revision Changes Path
1.1204 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1204&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1204&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1203&r2=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 -0000 1.1203
+++ ChangeLog 11 Apr 2014 08:30:44 -0000 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 <mgorny@gentoo.org> multibuild.eclass:
+ Enable reflinking in multibuild_copy_sources.
10 Apr 2014; Michał Górny <mgorny@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.16&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.16&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.15&r2=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 -0000 1.15
+++ multibuild.eclass 11 Apr 2014 08:30:44 -0000 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
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2014-04-15 15:54 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2014-04-15 15:54 UTC (permalink / raw
To: gentoo-commits
mgorny 14/04/15 15:54:13
Modified: ChangeLog multibuild.eclass
Log:
multibuild_merge_root: re-introduce userland_BSD tar fallback, bug #507626.
Revision Changes Path
1.1207 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1207&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1207&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1206&r2=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 -0000 1.1206
+++ ChangeLog 15 Apr 2014 15:54:12 -0000 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 <mgorny@gentoo.org> multibuild.eclass:
+ multibuild_merge_root: re-introduce userland_BSD tar fallback, bug #507626.
14 Apr 2014; Tom Wijsman <TomWij@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.17&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.17&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.16&r2=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 -0000 1.16
+++ multibuild.eclass 15 Apr 2014 15:54:13 -0000 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
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2014-05-10 21:36 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2014-05-10 21:36 UTC (permalink / raw
To: gentoo-commits
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 Changes Path
1.1249 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1249&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1249&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1248&r2=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 -0000 1.1248
+++ ChangeLog 10 May 2014 21:36:49 -0000 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 <mgorny@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 <mgorny@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.18&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.18&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.17&r2=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 -0000 1.17
+++ multibuild.eclass 10 May 2014 21:36:49 -0000 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*
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2014-10-31 0:57 Davide Pesavento (pesa)
0 siblings, 0 replies; 18+ messages in thread
From: Davide Pesavento (pesa) @ 2014-10-31 0:57 UTC (permalink / raw
To: gentoo-commits
pesa 14/10/31 00:57:49
Modified: ChangeLog multibuild.eclass
Log:
Make sure BUILD_DIR exists before pushd'ing into it.
Revision Changes Path
1.1397 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1397&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1397&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1396&r2=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 -0000 1.1396
+++ ChangeLog 31 Oct 2014 00:57:49 -0000 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 <pesa@gentoo.org> multibuild.eclass:
+ Make sure BUILD_DIR exists before pushd'ing into it.
30 Oct 2014; Pacho Ramos <pacho@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.19&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.19&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.18&r2=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 -0000 1.18
+++ multibuild.eclass 31 Oct 2014 00:57:49 -0000 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=${?}
^ permalink raw reply [flat|nested] 18+ messages in thread
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass
@ 2014-12-13 8:42 Michal Gorny (mgorny)
0 siblings, 0 replies; 18+ messages in thread
From: Michal Gorny (mgorny) @ 2014-12-13 8:42 UTC (permalink / raw
To: gentoo-commits
mgorny 14/12/13 08:42:42
Modified: ChangeLog multibuild.eclass
Log:
Disable parallel run support.
Revision Changes Path
1.1461 eclass/ChangeLog
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1461&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1461&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1460&r2=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 -0000 1.1460
+++ ChangeLog 13 Dec 2014 08:42:42 -0000 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 <mgorny@gentoo.org> multibuild.eclass:
+ Disable parallel run support.
13 Dec 2014; Michał Górny <mgorny@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.20&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?rev=1.20&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/multibuild.eclass?r1=1.19&r2=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 -0000 1.19
+++ multibuild.eclass 13 Dec 2014 08:42:42 -0000 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 "${lockfile}" || die
-
if [[ ${ret} -ne 0 ]]; then
die "${MULTIBUILD_VARIANT:-(unknown)}: merging image failed."
fi
^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2014-12-13 8:42 UTC | newest]
Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-09-10 9:10 [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog multibuild.eclass Michal Gorny (mgorny)
-- strict thread matches above, loose matches on Subject: below --
2014-12-13 8:42 Michal Gorny (mgorny)
2014-10-31 0:57 Davide Pesavento (pesa)
2014-05-10 21:36 Michal Gorny (mgorny)
2014-04-15 15:54 Michal Gorny (mgorny)
2014-04-11 8:30 Michal Gorny (mgorny)
2014-04-10 16:43 Michal Gorny (mgorny)
2013-09-18 8:49 Michal Gorny (mgorny)
2013-06-21 10:31 Michal Gorny (mgorny)
2013-05-24 17:42 Michal Gorny (mgorny)
2013-05-23 20:19 Michal Gorny (mgorny)
2013-03-10 21:44 Michal Gorny (mgorny)
2013-03-10 21:00 Michal Gorny (mgorny)
2013-03-10 9:05 Michal Gorny (mgorny)
2013-03-09 13:51 Michal Gorny (mgorny)
2013-03-04 19:27 Michal Gorny (mgorny)
2013-03-04 19:27 Michal Gorny (mgorny)
2013-03-04 19:21 Michal Gorny (mgorny)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox