From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 1C80A15802E for ; Tue, 25 Jun 2024 09:20:21 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 8F9AF2BC019; Tue, 25 Jun 2024 09:20:14 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 27F832BC015 for ; Tue, 25 Jun 2024 09:20:14 +0000 (UTC) From: Florian Schmaus To: gentoo-dev@lists.gentoo.org Cc: java@gentoo.org, Florian Schmaus Subject: [gentoo-dev] [PATCH] java-utils-2.eclass: add --runtime-only argument to java-pkg_getjars Date: Tue, 25 Jun 2024 11:20:02 +0200 Message-ID: <20240625092002.160944-1-flow@gentoo.org> X-Mailer: git-send-email 2.44.2 Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Archives-Salt: 8f709aac-2883-4533-bcdb-2b0479413e7b X-Archives-Hash: 0e0aa2d9290c559209e1436234fcff8c Some packages only need the jar at runtime, not at compile time. For example https://bugs.gentoo.org/934659#c2 Bug: https://bugs.gentoo.org/934659 Signed-off-by: Florian Schmaus --- eclass/java-utils-2.eclass | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/eclass/java-utils-2.eclass b/eclass/java-utils-2.eclass index adbc5242053a..3c2d190c4c15 100644 --- a/eclass/java-utils-2.eclass +++ b/eclass/java-utils-2.eclass @@ -1137,7 +1137,7 @@ java-pkg_jarfrom() { } # @FUNCTION: java-pkg_getjars -# @USAGE: [--build-only] [--with-dependencies] [,...] +# @USAGE: [--build-only] [--runtime-only] [--with-dependencies] [,...] # @DESCRIPTION: # Get the classpath provided by any number of packages # Among other things, this can be passed to 'javac -classpath' or 'ant -lib'. @@ -1157,6 +1157,7 @@ java-pkg_jarfrom() { # Parameters: # --build-only - makes the jar(s) not added into package.env DEPEND line. # (assumed automatically when called inside src_test) +# --runtime-only - marks the jar(s) not added into package.env RDEPEND line. # --with-dependencies - get jars also from requested package's dependencies # transitively. # $1 - list of packages to get jars from @@ -1165,6 +1166,7 @@ java-pkg_jarfrom() { java-pkg_getjars() { debug-print-function ${FUNCNAME} $* + local dep_constraint local build_only="" local deep="" @@ -1173,6 +1175,9 @@ java-pkg_getjars() { while [[ "${1}" == --* ]]; do if [[ "${1}" = "--build-only" ]]; then build_only="build" + dep_constraint="build" + elif [[ "${1}" = "--runtime-only" ]]; then + dep_constraint="runtime" elif [[ "${1}" = "--with-dependencies" ]]; then deep="--with-dependencies" else @@ -1191,7 +1196,7 @@ java-pkg_getjars() { debug-print "${pkgs}:${jars}" for pkg in ${pkgs//,/ }; do - java-pkg_ensure-dep "${build_only}" "${pkg}" + java-pkg_ensure-dep "${dep_constraint}" "${pkg}" done for pkg in ${pkgs//,/ }; do @@ -1808,7 +1813,6 @@ java-pkg_ant-tasks-depend() { fi } - # @FUNCTION: ejunit_ # @INTERNAL # @DESCRIPTION: -- 2.44.2