[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gentoo-dev
Subject:    Re: [gentoo-dev] RFC: ant-tasks.eclass patch
From:       Miroslav_Å ulc <fordfrog () gentoo ! org>
Date:       2019-09-26 8:05:09
Message-ID: 776f2651-25b7-0de0-c0ea-58e5b27dd3dd () gentoo ! org
[Download RAW message or body]

Dne 25. 09. 19 v 21:44 Michał Górny napsal(a):
> On Wed, 2019-09-25 at 20:47 +0200, Miroslav Å ulc wrote:
>> ...
> I don't think you need two branches here.  Non-array variable is
> equivalent to an array with a single element for the purpose of [@], so
> your 'for' loop will work correctly both for non-array and array.

thanks, you're right, i simplified the patch (attached) and all my tests 
passed.

miroslav


["ant-tasks.eclass.patch" (text/x-patch)]

diff --git a/eclass/ant-tasks.eclass b/eclass/ant-tasks.eclass
index 309df084d156..04c6fb5b7d67 100644
--- a/eclass/ant-tasks.eclass
+++ b/eclass/ant-tasks.eclass
@@ -54,7 +54,9 @@ ANT_TASK_NAME="${PN#ant-}"
 # @DESCRIPTION:
 # Specifies JAVA_PKG_NAME (PN{-SLOT} used with java-pkg_jar-from) of the package
 # that this one depends on. Defaults to the name of ant task, ebuild can
-# override it before inheriting this eclass.
+# override it before inheriting this eclass. In case there is more than one
+# dependency, the variable can be specified as bash array with multiple strings,
+# one for each dependency.
 ANT_TASK_DEPNAME=${ANT_TASK_DEPNAME-${ANT_TASK_NAME}}
 
 # @ECLASS-VARIABLE: ANT_TASK_DISABLE_VM_DEPS
@@ -105,7 +107,7 @@ S="${WORKDIR}/${MY_P}"
 # base: performs the unpack, build.xml replacement and symlinks ant.jar from
 #	ant-core
 #
-# jar-dep: symlinks the jar file(s) from dependency package
+# jar-dep: symlinks the jar file(s) from dependency package(s)
 ant-tasks_src_unpack() {
 	[[ -z "${1}" ]] && ant-tasks_src_unpack all
 
@@ -129,9 +131,11 @@ ant-tasks_src_unpack() {
 				# ant.jar to build against
 				java-pkg_jar-from --build-only ant-core ant.jar;;
 			jar-dep)
-				# get jar from the dependency package
+				# get jar from the dependency package(s)
 				if [[ -n "${ANT_TASK_DEPNAME}" ]]; then
-					java-pkg_jar-from ${ANT_TASK_DEPNAME}
+					for depname in "${ANT_TASK_DEPNAME[@]}"; do
+						java-pkg_jar-from ${depname}
+					done
 				fi;;
 			all)
 				ant-tasks_src_unpack base jar-dep;;


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic