From 0658bcedbfcccac27003137540c8aeab65554e11 Mon Sep 17 00:00:00 2001 From: Mikolaj Izdebski Date: Tue, 8 Jun 2021 20:17:56 +0200 Subject: [PATCH] Bootstrap Maven as non-modular packages Resolves: rhbz#1951482 --- ...cript.patch => 0001-Adapt-mvn-script.patch | 28 +- ...> 0002-Invoke-logback-via-reflection.patch | 84 +++--- ...ch => 0003-Use-non-shaded-HTTP-wagon.patch | 64 ++--- ... 0004-Remove-dependency-on-powermock.patch | 164 ++++++------ maven.spec | 241 ++++++++++-------- 5 files changed, 297 insertions(+), 284 deletions(-) rename 0001-adapt-mvn-script.patch => 0001-Adapt-mvn-script.patch (65%) rename 0002-invoke-logback-via-reflection.patch => 0002-Invoke-logback-via-reflection.patch (87%) rename 0003-use-non-shaded-HTTP-wagon.patch => 0003-Use-non-shaded-HTTP-wagon.patch (88%) rename 0004-remove-dependency-on-powermock.patch => 0004-Remove-dependency-on-powermock.patch (93%) diff --git a/0001-adapt-mvn-script.patch b/0001-Adapt-mvn-script.patch similarity index 65% rename from 0001-adapt-mvn-script.patch rename to 0001-Adapt-mvn-script.patch index 9f8a75e..a05e573 100644 --- a/0001-adapt-mvn-script.patch +++ b/0001-Adapt-mvn-script.patch @@ -1,14 +1,14 @@ -From 405e23d53b66a688082ed8c22385c5174e212be4 Mon Sep 17 00:00:00 2001 +From 247eafd819d6092661ebc57c54815acd20abd3de Mon Sep 17 00:00:00 2001 From: Michael Simacek -Date: Mon, 25 May 2020 12:10:33 +0200 -Subject: [PATCH 1/4] adapt mvn script +Date: Wed, 1 Feb 2017 14:54:26 +0100 +Subject: [PATCH 1/4] Adapt mvn script --- - apache-maven/src/bin/mvn | 17 +++++++++++++++-- - 1 file changed, 15 insertions(+), 2 deletions(-) + apache-maven/src/bin/mvn | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/apache-maven/src/bin/mvn b/apache-maven/src/bin/mvn -index a554c66..0c07ba6 100644 +index a554c6617..739501af4 100755 --- a/apache-maven/src/bin/mvn +++ b/apache-maven/src/bin/mvn @@ -22,7 +22,7 @@ @@ -20,13 +20,11 @@ index a554c66..0c07ba6 100644 # MAVEN_OPTS (Optional) Java runtime options used when Maven is executed. # MAVEN_SKIP_RC (Optional) Flag to disable loading of mavenrc files. # ----------------------------------------------------------------------------- -@@ -33,12 +33,24 @@ if [ -z "$MAVEN_SKIP_RC" ] ; then +@@ -33,12 +33,16 @@ if [ -z "$MAVEN_SKIP_RC" ] ; then . /etc/mavenrc fi -+ if [ -f /etc/java/maven.conf ] ; then -+ . /etc/java/maven.conf -+ fi ++ . /etc/java/maven.conf + if [ -f "$HOME/.mavenrc" ] ; then . "$HOME/.mavenrc" @@ -34,18 +32,12 @@ index a554c66..0c07ba6 100644 fi -+if [ -f /usr/share/java-utils/java-functions ] ; then -+ . /usr/share/java-utils/java-functions -+ set_jvm -+ set_javacmd -+fi +export JAVA_HOME -+export JAVACMD + # OS specific support. $var _must_ be set to either true or false. cygwin=false; mingw=false; -@@ -63,7 +75,8 @@ done +@@ -63,7 +67,8 @@ done saveddir=`pwd` @@ -56,5 +48,5 @@ index a554c66..0c07ba6 100644 # make it fully qualified MAVEN_HOME=`cd "$MAVEN_HOME" && pwd` -- -2.26.2 +2.21.0 diff --git a/0002-invoke-logback-via-reflection.patch b/0002-Invoke-logback-via-reflection.patch similarity index 87% rename from 0002-invoke-logback-via-reflection.patch rename to 0002-Invoke-logback-via-reflection.patch index 0570159..863977d 100644 --- a/0002-invoke-logback-via-reflection.patch +++ b/0002-Invoke-logback-via-reflection.patch @@ -1,53 +1,53 @@ -From 3ce790eaafcf42e8720c778b712345f100064f38 Mon Sep 17 00:00:00 2001 +From 7610a10691e680db00edcbd4ce6767a30641cd71 Mon Sep 17 00:00:00 2001 From: Michael Simacek -Date: Mon, 25 May 2020 12:12:15 +0200 -Subject: [PATCH 2/4] invoke logback via reflection +Date: Tue, 6 Jun 2017 13:47:43 +0200 +Subject: [PATCH 2/4] Invoke logback via reflection --- .../logging/impl/LogbackConfiguration.java | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/LogbackConfiguration.java b/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/LogbackConfiguration.java -index d16eaa9..51274eb 100644 +index 5d9fab744..ced38cb5a 100644 --- a/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/LogbackConfiguration.java +++ b/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/LogbackConfiguration.java -@@ -35,22 +35,31 @@ public class LogbackConfiguration - @Override - public void setRootLoggerLevel( Level level ) - { -- ch.qos.logback.classic.Level value; -+ String value; - switch ( level ) - { - case DEBUG: -- value = ch.qos.logback.classic.Level.DEBUG; -+ value = "DEBUG"; - break; - - case INFO: -- value = ch.qos.logback.classic.Level.INFO; -+ value = "INFO"; - break; - - default: -- value = ch.qos.logback.classic.Level.ERROR; -+ value = "ERROR"; - break; - } -- ( (ch.qos.logback.classic.Logger) LoggerFactory.getLogger( Logger.ROOT_LOGGER_NAME ) ).setLevel( value ); -+ Logger logger = LoggerFactory.getLogger( Logger.ROOT_LOGGER_NAME ); -+ try { -+ Class levelClass = Class.forName("ch.qos.logback.classic.Level"); -+ Object logbackLevel = levelClass.getField(value).get(null); -+ Class loggerClass = Class.forName("ch.qos.logback.classic.Logger"); -+ loggerClass.getMethod("setLevel", new Class[] {levelClass}) -+ .invoke(logger, new Object[] {logbackLevel}); -+ } catch (Exception e) { -+ throw new RuntimeException("Failed to initialize logback configuration", e); -+ } - } - - @Override +@@ -35,22 +35,31 @@ + @Override + public void setRootLoggerLevel( Level level ) + { +- ch.qos.logback.classic.Level value; ++ String value; + switch ( level ) + { + case DEBUG: +- value = ch.qos.logback.classic.Level.DEBUG; ++ value = "DEBUG"; + break; + + case INFO: +- value = ch.qos.logback.classic.Level.INFO; ++ value = "INFO"; + break; + + default: +- value = ch.qos.logback.classic.Level.ERROR; ++ value = "ERROR"; + break; + } +- ( (ch.qos.logback.classic.Logger) LoggerFactory.getLogger( Logger.ROOT_LOGGER_NAME ) ).setLevel( value ); ++ Logger logger = LoggerFactory.getLogger( Logger.ROOT_LOGGER_NAME ); ++ try { ++ Class levelClass = Class.forName("ch.qos.logback.classic.Level"); ++ Object logbackLevel = levelClass.getField(value).get(null); ++ Class loggerClass = Class.forName("ch.qos.logback.classic.Logger"); ++ loggerClass.getMethod("setLevel", new Class[] {levelClass}) ++ .invoke(logger, new Object[] {logbackLevel}); ++ } catch (Exception e) { ++ throw new RuntimeException("Failed to initialize logback configuration", e); ++ } + } + + @Override -- -2.26.2 +2.21.0 diff --git a/0003-use-non-shaded-HTTP-wagon.patch b/0003-Use-non-shaded-HTTP-wagon.patch similarity index 88% rename from 0003-use-non-shaded-HTTP-wagon.patch rename to 0003-Use-non-shaded-HTTP-wagon.patch index b841134..d61abb3 100644 --- a/0003-use-non-shaded-HTTP-wagon.patch +++ b/0003-Use-non-shaded-HTTP-wagon.patch @@ -1,7 +1,7 @@ -From 1a5ab44597d81d4001c70b425736754dc8a6b663 Mon Sep 17 00:00:00 2001 +From c8933d155694ce37b1d4be59a744c8f7cbde6bb5 Mon Sep 17 00:00:00 2001 From: Mikolaj Izdebski -Date: Mon, 25 May 2020 12:13:20 +0200 -Subject: [PATCH 3/4] use non-shaded HTTP wagon +Date: Mon, 1 Jul 2019 09:51:56 +0200 +Subject: [PATCH 4/4] Use non-shaded HTTP wagon --- apache-maven/pom.xml | 15 --------------- @@ -13,39 +13,39 @@ index 82e12a3..f02a45e 100644 --- a/apache-maven/pom.xml +++ b/apache-maven/pom.xml @@ -63,21 +63,6 @@ under the License. - - org.apache.maven.wagon - wagon-http -- shaded -- -- -- org.apache.httpcomponents -- httpclient -- -- -- org.apache.httpcomponents -- httpcore -- -- -- org.apache.maven.wagon -- wagon-http-shared -- -- - - -