From 31fbcec6af765faed7ef8e1c7b917df647226adf Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 26 Jul 2019 11:19:34 +0000 Subject: [PATCH 01/29] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index e87b00f..a6a84e9 100644 --- a/procyon.spec +++ b/procyon.spec @@ -6,7 +6,7 @@ Name: procyon Version: 0.5.33 -Release: 0.2.pre02%{?dist} +Release: 0.3.pre02%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://bitbucket.org/mstrobel/procyon/ @@ -425,6 +425,9 @@ popd %doc README.md %changelog +* Fri Jul 26 2019 Fedora Release Engineering - 0.5.33-0.3.pre02 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Sat Feb 02 2019 Fedora Release Engineering - 0.5.33-0.2.pre02 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild From d3f4e18e07a36aa742dca8f2ae1e08742e17cf34 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 30 Jan 2020 09:46:47 +0000 Subject: [PATCH 02/29] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index a6a84e9..4aa5b4b 100644 --- a/procyon.spec +++ b/procyon.spec @@ -6,7 +6,7 @@ Name: procyon Version: 0.5.33 -Release: 0.3.pre02%{?dist} +Release: 0.4.pre02%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://bitbucket.org/mstrobel/procyon/ @@ -425,6 +425,9 @@ popd %doc README.md %changelog +* Thu Jan 30 2020 Fedora Release Engineering - 0.5.33-0.4.pre02 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Fri Jul 26 2019 Fedora Release Engineering - 0.5.33-0.3.pre02 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From 0cd199db77460845a9dc643263cbe589e861535e Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Tue, 18 Feb 2020 10:26:24 +0100 Subject: [PATCH 03/29] Moved to gradle-less build --- madeToPasXlint.patch | 30 +++++ procyon.spec | 279 ++++++------------------------------------- 2 files changed, 64 insertions(+), 245 deletions(-) create mode 100644 madeToPasXlint.patch diff --git a/madeToPasXlint.patch b/madeToPasXlint.patch new file mode 100644 index 0000000..c1eb252 --- /dev/null +++ b/madeToPasXlint.patch @@ -0,0 +1,30 @@ +--- a/Procyon.CompilerTools/src/main/java/com/strobel/assembler/metadata/MethodBinder.java ++++ b/Procyon.CompilerTools/src/main/java/com/strobel/assembler/metadata/MethodBinder.java2 +@@ -213,7 +213,7 @@ + + // + // Find the most specific method based on the parameters. On the first pass, prohibit +- // auto-(un)boxing and variable arity (see JLS §15.12.2.2). ++ // auto-(un)boxing and variable arity (see JLS 15.12.2.2). + // + int result = findMostSpecific( + m1.getParameters(), +@@ -229,7 +229,7 @@ + + // + // If the first attempt produced an ambiguous result, try again with boxing conversions +- // allowed (see JLS §15.12.2.3). ++ // allowed (see JLS 15.12.2.3). + // + if (result == 0) { + result = findMostSpecific( +@@ -247,7 +247,7 @@ + + // + // If the second attempt produced an ambiguous result, try again with both boxing +- // conversions and variable arity allowed (see JLS §15.12.2.4). ++ // conversions and variable arity allowed (see JLS 15.12.2.4). + // + if (result == 0) { + result = findMostSpecific( + diff --git a/procyon.spec b/procyon.spec index 4aa5b4b..6fd50a7 100644 --- a/procyon.spec +++ b/procyon.spec @@ -1,12 +1,10 @@ #in noarch? why... %define debug_package %{nil} -# assembled single-jar decompiler can not be currently packed in fedora, but can be build locally -%global enable_fat_jar 0 %global remove_tests 1 Name: procyon Version: 0.5.33 -Release: 0.4.pre02%{?dist} +Release: 0.5.pre02%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://bitbucket.org/mstrobel/procyon/ @@ -20,14 +18,10 @@ Patch0: removeSigningAndIfDecompilerAndMain.patch Patch1: disableFatJar.patch # patch should be proposed to upstream. Patch2: adaptToNewerJcommander.patch +Patch3: madeToPasXlint.patch BuildArch: noarch BuildRequires: javapackages-tools BuildRequires: java-devel -%if %{enable_fat_jar} -BuildRequires: gradle -%else -BuildRequires: gradle-local -%endif BuildRequires: dos2unix BuildRequires: beust-jcommander Requires: java-headless @@ -38,19 +32,6 @@ Recommends: %{name}-core = %{version}-%{release} Recommends: %{name}-expressions = %{version}-%{release} Recommends: %{name}-reflection = %{version}-%{release} Recommends: %{name}-decompiler = %{version}-%{release} -%if %{enable_fat_jar} -Recommends: %{name}-decompiler-all = %{version}-%{release} -%endif -Recommends: %{name}-compilertools-javadoc = %{version}-%{release} -Recommends: %{name}-core-javadoc = %{version}-%{release} -Recommends: %{name}-expressions-javadoc = %{version}-%{release} -Recommends: %{name}-reflection-javadoc = %{version}-%{release} -Recommends: %{name}-decompiler-javadoc = %{version}-%{release} -Recommends: %{name}-compilertools-srcs = %{version}-%{release} -Recommends: %{name}-core-srcs = %{version}-%{release} -Recommends: %{name}-expressions-srcs = %{version}-%{release} -Recommends: %{name}-reflection-srcs = %{version}-%{release} -Recommends: %{name}-decompiler-srcs = %{version}-%{release} %description Procyon is a suite of Java metaprogramming tools focused on code generation and analysis. @@ -107,18 +88,6 @@ procyon-decompiler is a front-end for the Java decompiler included in procyon-co For more information about the decompiler, see the Java Decompiler wiki page - https://bitbucket.org/mstrobel/procyon/wiki/Java%20Decompiler -%if %{enable_fat_jar} -%package decompiler-all -Summary: procyon-decompiler-all is library with assembled core and compiler-tools together with cli -BuildArch: noarch -Requires: javapackages-tools - -%description decompiler-all -procyon-decompiler is a front-end for the Java decompiler with all depndencies packed -For more information about the decompiler, see the Java Decompiler wiki page - -https://bitbucket.org/mstrobel/procyon/wiki/Java%20Decompiler -%endif - %package reflection Summary: The procyon-reflection framework provides a rich reflection and code generation API BuildArch: noarch @@ -131,80 +100,6 @@ Emit APIs and is meant to address many of the shortcomings of the core Java refl limited and cumbersome support for generic type inspection. Its code generation facilities include a TypeBuilder, MethodBuilder, and a bytecode emitter. -%package compilertools-javadoc -Summary: The procyon-compilertools project javadoc -BuildArch: noarch - -%description compilertools-javadoc -javadoc - -%package core-javadoc -Summary: The procyon-core framework javadoc -BuildArch: noarch - -%description core-javadoc -javadoc - -%package expressions-javadoc -Summary: The procyon-expressions framework provides javadoc -BuildArch: noarch - -%description expressions-javadoc -javadoc - -%package decompiler-javadoc -Summary: procyon-decompiler javadoc -BuildArch: noarch - -%description decompiler-javadoc -javadoc - -%package reflection-javadoc -Summary: The procyon-reflection framework javadoc -BuildArch: noarch - -%description reflection-javadoc -javadoc - -%package compilertools-srcs -Summary: The procyon-compilertools project sources -BuildArch: noarch -Requires: javapackages-tools - -%description compilertools-srcs -sources - -%package core-srcs -Summary: The procyon-core framework sources -BuildArch: noarch -Requires: javapackages-tools - -%description core-srcs -sources - -%package expressions-srcs -Summary: The procyon-expressions framework provides sources -BuildArch: noarch -Requires: javapackages-tools - -%description expressions-srcs -sources - -%package decompiler-srcs -Summary: procyon-decompiler sources -BuildArch: noarch -Requires: javapackages-tools - -%description decompiler-srcs -sources - -%package reflection-srcs -Summary: The procyon-reflection framework sources -BuildArch: noarch -Requires: javapackages-tools - -%description reflection-srcs -sources %prep %setup -q -n mstrobel-procyon-ee404caa9a29 @@ -221,81 +116,59 @@ dos2unix build.gradle dos2unix README.md # also removing main method from enter point jar %patch0 -p1 -%if %{enable_fat_jar} -echo "not applying patch1, enabeld fat jar" -%else %patch1 -p1 -%endif %patch2 -p1 +dos2unix Procyon.CompilerTools/src/main/java/com/strobel/assembler/metadata/MethodBinder.java +%patch3 -p1 %build -#gradle build -x test -%gradle_build -f + +mkdir -p build/Procyon.CompilerTools/{libs,classes} +mkdir -p build/Procyon.Core/{libs,classes} +mkdir -p build/Procyon.Decompiler/{libs,classes} +mkdir -p build/Procyon.Expressions/{libs,classes} +mkdir -p build/Procyon.Reflection/{libs,classes} + +javac -d build/Procyon.Core/classes/ ` find Procyon.Core/src/main/java -type f | grep "\.java"` +javac -d build/Procyon.Reflection/classes/ -cp build/Procyon.Core/classes/ ` find Procyon.Reflection/src/main/java -type f | grep "\.java"` +javac -d build/Procyon.Expressions/classes/ -cp build/Procyon.Core/classes/:build/Procyon.Reflection/classes/ ` find Procyon.Expressions/src/main/java -type f | grep "\.java"` +javac -d build/Procyon.CompilerTools/classes/ -cp build/Procyon.Core/classes/ ` find Procyon.CompilerTools/src/main/java -type f | grep "\.java"` + +# pack the jars +for x in Procyon.CompilerTools Procyon.Core Procyon.Reflection Procyon.Expressions ; do + pushd build/$x/classes/ + project=`echo $x | sed -e "s/Procyon.//" | sed -e 's/\(.*\)/\L\1/'` + jar -cf ../../../build/$x/libs/%{name}-$project-%{version}.jar com + popd +done + # create just launcher jar to be used in fedora -mkdir launcher-minimal -mkdir launcher-minimal/classes -javac -cp build/Procyon.Core/libs/%{name}-core-%{version}.jar:build/Procyon.CompilerTools/libs/%{name}-compilertools-%{version}.jar:%{_javadir}/beust-jcommander.jar -d launcher-minimal/classes ` find Procyon.Decompiler/src/main/java -type f | grep "\.java"` -%if %{enable_fat_jar} -# some dependent packages depnds on this assembeld decompiler jar (we build without its main in manifest (good idea?), see patch0 -gradle fatjar -x test -# rename -mv build/Procyon.Decompiler/libs/%{name}-decompiler-%{version}.jar build/Procyon.Decompiler/libs/%{name}-decompiler-all-%{version}.jar -%endif +mkdir build/launcher-minimal +mkdir build/launcher-minimal/classes +javac -cp build/Procyon.Core/classes/:build/Procyon.CompilerTools/classes/:%{_javadir}/beust-jcommander.jar -d build/launcher-minimal/classes ` find Procyon.Decompiler/src/main/java -type f | grep "\.java"` # pack the minimal jar -pushd launcher-minimal/classes/ -jar -cf ../../build/Procyon.Decompiler/libs/%{name}-decompiler-%{version}.jar com +pushd build/launcher-minimal/classes/ +jar -cf ../../../build/Procyon.Decompiler/libs/%{name}-decompiler-%{version}.jar com popd %install mkdir -p $RPM_BUILD_ROOT/%{_bindir}/ cp %{SOURCE1} $RPM_BUILD_ROOT/%{_bindir}/ # cusotm launcher for main method in main jar mkdir -p $RPM_BUILD_ROOT/%{_javadir}/%{name}/ -mkdir -p $RPM_BUILD_ROOT/%{_javadir}/%{name}/srcs -mkdir -p $RPM_BUILD_ROOT/%{_javadocdir}/%{name}/ cp build/Procyon.CompilerTools/libs/%{name}-compilertools-%{version}.jar $RPM_BUILD_ROOT/%{_javadir}/%{name}/ cp build/Procyon.Core/libs/%{name}-core-%{version}.jar $RPM_BUILD_ROOT/%{_javadir}/%{name}/ cp build/Procyon.Decompiler/libs/%{name}-decompiler-%{version}.jar $RPM_BUILD_ROOT/%{_javadir}/%{name}/ -%if %{enable_fat_jar} -cp build/Procyon.Decompiler/libs/%{name}-decompiler-all-%{version}.jar $RPM_BUILD_ROOT/%{_javadir}/%{name}/ -%endif cp build/Procyon.Expressions/libs/%{name}-expressions-%{version}.jar $RPM_BUILD_ROOT/%{_javadir}/%{name}/ cp build/Procyon.Reflection/libs/%{name}-reflection-%{version}.jar $RPM_BUILD_ROOT/%{_javadir}/%{name}/ -cp build/Procyon.CompilerTools/libs/%{name}-compilertools-%{version}-javadoc.jar $RPM_BUILD_ROOT/%{_javadocdir}/%{name}/ -cp build/Procyon.Core/libs/%{name}-core-%{version}-javadoc.jar $RPM_BUILD_ROOT/%{_javadocdir}/%{name}/ -cp build/Procyon.Decompiler/libs/%{name}-decompiler-%{version}-javadoc.jar $RPM_BUILD_ROOT/%{_javadocdir}/%{name}/ -cp build/Procyon.Expressions/libs/%{name}-expressions-%{version}-javadoc.jar $RPM_BUILD_ROOT/%{_javadocdir}/%{name}/ -cp build/Procyon.Reflection/libs/%{name}-reflection-%{version}-javadoc.jar $RPM_BUILD_ROOT/%{_javadocdir}/%{name}/ - -cp build/Procyon.CompilerTools/libs/%{name}-compilertools-%{version}-sources.jar $RPM_BUILD_ROOT/%{_javadir}/%{name}/srcs/ -cp build/Procyon.Core/libs/%{name}-core-%{version}-sources.jar $RPM_BUILD_ROOT/%{_javadir}/%{name}/srcs/ -cp build/Procyon.Decompiler/libs/%{name}-decompiler-%{version}-sources.jar $RPM_BUILD_ROOT/%{_javadir}/%{name}/srcs/ -cp build/Procyon.Expressions/libs/%{name}-expressions-%{version}-sources.jar $RPM_BUILD_ROOT/%{_javadir}/%{name}/srcs/ -cp build/Procyon.Reflection/libs/%{name}-reflection-%{version}-sources.jar $RPM_BUILD_ROOT/%{_javadir}/%{name}/srcs/ pushd $RPM_BUILD_ROOT/%{_javadir}/%{name}/ ln -s %{name}-compilertools-%{version}.jar %{name}-compilertools.jar ln -s %{name}-core-%{version}.jar %{name}-core.jar ln -s %{name}-decompiler-%{version}.jar %{name}-decompiler.jar -%if %{enable_fat_jar} -ln -s %{name}-decompiler-all-%{version}.jar %{name}-decompiler-all.jar -%endif ln -s %{name}-expressions-%{version}.jar %{name}-expressions.jar ln -s %{name}-reflection-%{version}.jar %{name}-reflection.jar popd -pushd $RPM_BUILD_ROOT/%{_javadocdir}/%{name}/ -ln -s %{name}-compilertools-%{version}-javadoc.jar %{name}-compilertools-javadoc.jar -ln -s %{name}-core-%{version}-javadoc.jar %{name}-core-javadoc.jar -ln -s %{name}-decompiler-%{version}-javadoc.jar %{name}-decompiler-javadoc.jar -ln -s %{name}-expressions-%{version}-javadoc.jar %{name}-expressions-javadoc.jar -ln -s %{name}-reflection-%{version}-javadoc.jar %{name}-reflection-javadoc.jar -popd -pushd $RPM_BUILD_ROOT/%{_javadir}/%{name}/srcs -ln -s %{name}-compilertools-%{version}-sources.jar %{name}-compilertools-sources.jar -ln -s %{name}-core-%{version}-sources.jar %{name}-core-sources.jar -ln -s %{name}-decompiler-%{version}-sources.jar %{name}-decompiler-sources.jar -ln -s %{name}-expressions-%{version}-sources.jar %{name}-expressions-sources.jar -ln -s %{name}-reflection-%{version}-sources.jar %{name}-reflection-sources.jar -popd + %files %license License.txt @@ -330,16 +203,6 @@ popd %license License.txt %doc README.md -%if %{enable_fat_jar} -%files decompiler-all -%dir %{_javadir}/%{name} -%{_bindir}/%{name}-decompiler -%{_javadir}/%{name}/%{name}-decompiler-all-%{version}.jar -%{_javadir}/%{name}/%{name}-decompiler-all.jar -%license License.txt -%doc README.md -%endif - %files reflection %dir %{_javadir}/%{name}/ %{_javadir}/%{name}/%{name}-reflection-%{version}.jar @@ -347,86 +210,12 @@ popd %license License.txt %doc README.md -%files compilertools-javadoc -%dir %{_javadocdir}/%{name}/ -%{_javadocdir}/%{name}/%{name}-compilertools-%{version}-javadoc.jar -%{_javadocdir}/%{name}/%{name}-compilertools-javadoc.jar -%license License.txt -%doc README.md - -%files core-javadoc -%dir %{_javadocdir}/%{name}/ -%{_javadocdir}/%{name}/%{name}-core-%{version}-javadoc.jar -%{_javadocdir}/%{name}/%{name}-core-javadoc.jar -%license License.txt -%doc README.md - -%files expressions-javadoc -%dir %{_javadocdir}/%{name}/ -%{_javadocdir}/%{name}/%{name}-expressions-%{version}-javadoc.jar -%{_javadocdir}/%{name}/%{name}-expressions-javadoc.jar -%license License.txt -%doc README.md - -%files decompiler-javadoc -%dir %{_javadocdir}/%{name}/ -%{_bindir}/%{name}-decompiler -%{_javadocdir}/%{name}/%{name}-decompiler-%{version}-javadoc.jar -%{_javadocdir}/%{name}/%{name}-decompiler-javadoc.jar -%license License.txt -%doc README.md - -%files reflection-javadoc -%dir %{_javadocdir}/%{name}/ -%{_javadocdir}/%{name}/%{name}-reflection-%{version}-javadoc.jar -%{_javadocdir}/%{name}/%{name}-reflection-javadoc.jar -%license License.txt -%doc README.md - -%files compilertools-srcs -%dir %{_javadir}/%{name} -%dir %{_javadir}/%{name}/srcs -%{_javadir}/%{name}/srcs/%{name}-compilertools-%{version}-sources.jar -%{_javadir}/%{name}/srcs/%{name}-compilertools-sources.jar -%license License.txt -%doc README.md - -%files core-srcs -%dir %{_javadir}/%{name} -%dir %{_javadir}/%{name}/srcs -%{_javadir}/%{name}/srcs/%{name}-core-%{version}-sources.jar -%{_javadir}/%{name}/srcs/%{name}-core-sources.jar -%license License.txt -%doc README.md - -%files expressions-srcs -%dir %{_javadir}/%{name} -%dir %{_javadir}/%{name}/srcs -%{_javadir}/%{name}/srcs/%{name}-expressions-%{version}-sources.jar -%{_javadir}/%{name}/srcs/%{name}-expressions-sources.jar -%license License.txt -%doc README.md - -%files decompiler-srcs -%dir %{_javadir}/%{name} -%dir %{_javadir}/%{name}/srcs -%{_bindir}/%{name}-decompiler -%{_javadir}/%{name}/srcs/%{name}-decompiler-%{version}-sources.jar -%{_javadir}/%{name}/srcs/%{name}-decompiler-sources.jar -%license License.txt -%doc README.md - -%files reflection-srcs -%dir %{_javadir}/%{name} -%dir %{_javadir}/%{name}/srcs -%{_javadir}/%{name}/srcs/%{name}-reflection-%{version}-sources.jar -%{_javadir}/%{name}/srcs/%{name}-reflection-sources.jar -%license License.txt -%doc README.md %changelog -* Thu Jan 30 2020 Fedora Release Engineering - 0.5.33-0.4.pre02 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild +* Tue Feb 18 2020 Jiri Vanek - 0.5.33-0.5.pre02 +- removed fat jar, as gradle is gone +- removed javadoc and srcs artifacts. will eb building by javac +- buit by javac instead of gradle * Fri Jul 26 2019 Fedora Release Engineering - 0.5.33-0.3.pre02 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From bfe1377e2b1f11e5506c239d69e6bec0dfb45995 Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Tue, 18 Feb 2020 13:47:08 +0100 Subject: [PATCH 04/29] bumped to latest tagged forest 0.5.36 + fixed bug in usage of newer jcommander --- .gitignore | 1 + newJcommander.patch | 12 ++++++++++++ procyon.spec | 16 +++++++++++----- sources | 2 +- 4 files changed, 25 insertions(+), 6 deletions(-) create mode 100644 newJcommander.patch diff --git a/.gitignore b/.gitignore index 3386f58..25ad59e 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /mstrobel-procyon-ee404caa9a29.zip +/v0.5.36.tar.gz diff --git a/newJcommander.patch b/newJcommander.patch new file mode 100644 index 0000000..140fc73 --- /dev/null +++ b/newJcommander.patch @@ -0,0 +1,12 @@ +--- a/Procyon.Decompiler/src/main/java/com/strobel/decompiler/DecompilerDriver.java ++++ a/Procyon.Decompiler/src/main/java/com/strobel/decompiler/DecompilerDriver.java +@@ -64,7 +64,7 @@ + final boolean decompileJar = !StringUtilities.isNullOrWhitespace(jarFile); + + if (options.getPrintVersion()) { +- JCommander.getConsole().println(Procyon.version()); ++ jCommander.getConsole().println(Procyon.version()); + if (options.getPrintUsage()) { + jCommander.usage(); + } + diff --git a/procyon.spec b/procyon.spec index 6fd50a7..3b36204 100644 --- a/procyon.spec +++ b/procyon.spec @@ -3,13 +3,12 @@ %global remove_tests 1 Name: procyon -Version: 0.5.33 -Release: 0.5.pre02%{?dist} +Version: 0.5.36 +Release: 0.1%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://bitbucket.org/mstrobel/procyon/ -#Source0: https://bitbucket.org/mstrobel/procyon/get/ee404caa9a29.zip -Source0: mstrobel-procyon-ee404caa9a29.zip +Source0: https://bitbucket.org/mstrobel/procyon/get/v0.5.36.tar.gz Source1: procyon-decompiler # main removal is not upstream-able, and is enforced by fedora policy # signature is touching online world, necessary for packaging, not usptream able @@ -19,6 +18,7 @@ Patch1: disableFatJar.patch # patch should be proposed to upstream. Patch2: adaptToNewerJcommander.patch Patch3: madeToPasXlint.patch +Patch4: newJcommander.patch BuildArch: noarch BuildRequires: javapackages-tools BuildRequires: java-devel @@ -102,7 +102,7 @@ MethodBuilder, and a bytecode emitter. %prep -%setup -q -n mstrobel-procyon-ee404caa9a29 +%setup -q -n mstrobel-procyon-9f7822463e41 %if %{remove_tests} find | grep "\\.class$" #find | grep "\\.jar$" @@ -120,6 +120,8 @@ dos2unix README.md %patch2 -p1 dos2unix Procyon.CompilerTools/src/main/java/com/strobel/assembler/metadata/MethodBinder.java %patch3 -p1 +%patch4 -p1 + %build @@ -212,6 +214,10 @@ popd %changelog +* Tue Feb 18 2020 Jiri Vanek - 0.5.36-0.1 +- bumped to latest tagged forest 0.5.36 +- fixed bug in usage of newer jcommander + * Tue Feb 18 2020 Jiri Vanek - 0.5.33-0.5.pre02 - removed fat jar, as gradle is gone - removed javadoc and srcs artifacts. will eb building by javac diff --git a/sources b/sources index 8948dbe..77ab89d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (mstrobel-procyon-ee404caa9a29.zip) = f47a9539509ac380e5fc1cb694a8f5f17a9b925726f937c92cffcce4490ed6e4773f9cf265fc28c8a4eb51da6b0257730a4ae3a8e343e17c1dfe9eeee4fcadb0 +SHA512 (v0.5.36.tar.gz) = 4f70f1b6886cb14a10e7686350bc13b7f5b0a3d09295982e6d03814f329fe426b503900e57c285b4f6906f824c623d142fd7cb3131cf6729dcf3044d0beb48c6 From f300aa2b6924bd045705c1fcbb4fb742fe2495a2 Mon Sep 17 00:00:00 2001 From: Jiri Date: Mon, 4 May 2020 16:43:36 +0200 Subject: [PATCH 05/29] Adapted procyon to jdk11 defineClass in lookup --- lookupPatch.patch | 30 ++++++++++++++++++++++++++++++ procyon.spec | 3 +++ 2 files changed, 33 insertions(+) create mode 100644 lookupPatch.patch diff --git a/lookupPatch.patch b/lookupPatch.patch new file mode 100644 index 0000000..9190669 --- /dev/null +++ b/lookupPatch.patch @@ -0,0 +1,30 @@ +--- Procyon.Reflection/src/main/java/com/strobel/reflection/emit/TypeBuilder.java ++++ Procyon.Reflection/src/main/java/com/strobel/reflection/emit/TypeBuilder.java +@@ -34,6 +34,7 @@ + import java.io.IOException; + import java.io.OutputStream; + import java.lang.annotation.Annotation; ++import java.lang.invoke.MethodHandles; + import java.lang.reflect.Field; + import java.lang.reflect.Modifier; + import java.security.ProtectionDomain; +@@ -1231,14 +1232,10 @@ + + _hasBeenCreated = true; + +- _generatedClass = (Class) getUnsafeInstance().defineClass( +- fullName, +- classBytes, +- 0, +- classBytes.length, +- Thread.currentThread().getContextClassLoader(), +- _protectionDomain +- ); ++ MethodHandles.Lookup lookup = MethodHandles.lookup(); ++ MethodHandles.Lookup privateLookup = MethodHandles.privateLookupIn(Class.forName(fullName), lookup); ++ _generatedClass = (Class)privateLookup.defineClass(classBytes); ++ + + RuntimeHelpers.ensureClassInitialized(_generatedClass); + + diff --git a/procyon.spec b/procyon.spec index 3b36204..bebcb4f 100644 --- a/procyon.spec +++ b/procyon.spec @@ -19,6 +19,7 @@ Patch1: disableFatJar.patch Patch2: adaptToNewerJcommander.patch Patch3: madeToPasXlint.patch Patch4: newJcommander.patch +Patch5: lookupPatch.patch BuildArch: noarch BuildRequires: javapackages-tools BuildRequires: java-devel @@ -121,6 +122,8 @@ dos2unix README.md dos2unix Procyon.CompilerTools/src/main/java/com/strobel/assembler/metadata/MethodBinder.java %patch3 -p1 %patch4 -p1 +dos2unix Procyon.Reflection/src/main/java/com/strobel/reflection/emit/TypeBuilder.java +%patch5 -p0 %build From 5a3323915518a22fc3002a8198344ecae5590e29 Mon Sep 17 00:00:00 2001 From: Jiri Date: Sat, 11 Jul 2020 05:20:00 +0200 Subject: [PATCH 06/29] Rebuilt for JDK-11 --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index bebcb4f..d317627 100644 --- a/procyon.spec +++ b/procyon.spec @@ -4,7 +4,7 @@ Name: procyon Version: 0.5.36 -Release: 0.1%{?dist} +Release: 0.2%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://bitbucket.org/mstrobel/procyon/ @@ -217,6 +217,9 @@ popd %changelog +* Sat Jul 11 2020 Jiri Vanek - 0.5.36-0.2 +- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 + * Tue Feb 18 2020 Jiri Vanek - 0.5.36-0.1 - bumped to latest tagged forest 0.5.36 - fixed bug in usage of newer jcommander From 1bf07c60195f03e02a3674698f70808d7a42403b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 28 Jul 2020 23:01:17 +0000 Subject: [PATCH 07/29] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index d317627..259e862 100644 --- a/procyon.spec +++ b/procyon.spec @@ -4,7 +4,7 @@ Name: procyon Version: 0.5.36 -Release: 0.2%{?dist} +Release: 0.3%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://bitbucket.org/mstrobel/procyon/ @@ -217,6 +217,9 @@ popd %changelog +* Tue Jul 28 2020 Fedora Release Engineering - 0.5.36-0.3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Sat Jul 11 2020 Jiri Vanek - 0.5.36-0.2 - Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 From 2328bdd6eec5263efeed6f7af2308c3bda027c72 Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Thu, 10 Dec 2020 13:43:58 +0100 Subject: [PATCH 08/29] Build in jdk8 comaptible way --- procyon.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index 259e862..38cdf79 100644 --- a/procyon.spec +++ b/procyon.spec @@ -150,7 +150,7 @@ done # create just launcher jar to be used in fedora mkdir build/launcher-minimal mkdir build/launcher-minimal/classes -javac -cp build/Procyon.Core/classes/:build/Procyon.CompilerTools/classes/:%{_javadir}/beust-jcommander.jar -d build/launcher-minimal/classes ` find Procyon.Decompiler/src/main/java -type f | grep "\.java"` +javac -source 8 -target 8 -cp build/Procyon.Core/classes/:build/Procyon.CompilerTools/classes/:%{_javadir}/beust-jcommander.jar -d build/launcher-minimal/classes ` find Procyon.Decompiler/src/main/java -type f | grep "\.java"` # pack the minimal jar pushd build/launcher-minimal/classes/ jar -cf ../../../build/Procyon.Decompiler/libs/%{name}-decompiler-%{version}.jar com From 7a6736462ebac8d8369ecf3df67811b4b6e8e71d Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Thu, 10 Dec 2020 13:47:15 +0100 Subject: [PATCH 09/29] Added changelog and bumped release --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index 38cdf79..aef14bf 100644 --- a/procyon.spec +++ b/procyon.spec @@ -4,7 +4,7 @@ Name: procyon Version: 0.5.36 -Release: 0.3%{?dist} +Release: 0.4%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://bitbucket.org/mstrobel/procyon/ @@ -217,6 +217,9 @@ popd %changelog +* Sat Dec 10 2020 Jiri Vanek - 0.5.36-0.4 +- set source/target of 8 + * Tue Jul 28 2020 Fedora Release Engineering - 0.5.36-0.3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 25241799b00713cbaaf8d214f14ae15a816d32ac Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 27 Jan 2021 08:36:11 +0000 Subject: [PATCH 10/29] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index aef14bf..018c93f 100644 --- a/procyon.spec +++ b/procyon.spec @@ -4,7 +4,7 @@ Name: procyon Version: 0.5.36 -Release: 0.4%{?dist} +Release: 0.5%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://bitbucket.org/mstrobel/procyon/ @@ -217,6 +217,9 @@ popd %changelog +* Wed Jan 27 2021 Fedora Release Engineering - 0.5.36-0.5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Sat Dec 10 2020 Jiri Vanek - 0.5.36-0.4 - set source/target of 8 From 5c87dab60f85f13123650da90819886a98211dcc Mon Sep 17 00:00:00 2001 From: Marian Koncek Date: Thu, 3 Jun 2021 11:19:40 +0200 Subject: [PATCH 11/29] Update to upstream version 1.0~SNAPSHOT --- .gitignore | 1 + disableFatJar.patch | 24 ++++--- generate-tarball.sh | 23 +++++++ procyon.spec | 27 ++++---- removeSigningAndIfDecompilerAndMain.patch | 78 ++++++++--------------- sources | 2 +- 6 files changed, 81 insertions(+), 74 deletions(-) create mode 100755 generate-tarball.sh diff --git a/.gitignore b/.gitignore index 25ad59e..be41408 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /mstrobel-procyon-ee404caa9a29.zip /v0.5.36.tar.gz +/procyon-1.0~SNAPSHOT.tar.gz diff --git a/disableFatJar.patch b/disableFatJar.patch index 5d8bbef..4abf2db 100644 --- a/disableFatJar.patch +++ b/disableFatJar.patch @@ -1,28 +1,34 @@ -diff -r ee404caa9a29 Procyon.Decompiler/build.gradle +diff --git a/Procyon.Decompiler/build.gradle b/Procyon.Decompiler/build.gradle +index 7377956..388de1e 100644 --- a/Procyon.Decompiler/build.gradle -+++ b/Procyon.Decompiler/build.gradle.nw -@@ -3,23 +3,10 @@ ++++ b/Procyon.Decompiler/build.gradle +@@ -2,27 +2,13 @@ buildscript { + repositories { jcenter() } - +- - dependencies { - classpath 'eu.appsatori:gradle-fatjar-plugin:0.3' - } } - jar.enabled = true + jar.enabled = false uploadArchives.enabled = false -- + -apply plugin: 'eu.appsatori.fatjar' - -fatJar { -// from rootProject.allprojects.collect({ it.sourceSets.main.allSource }) - - manifest { -- attributes 'Title': archivesBaseName, 'Manifest-Version': '1.0', 'Version': version +- attributes 'Title': archivesBaseName, 'Manifest-Version': '1.0', 'Version': version, 'Main-Class' : 'com.strobel.decompiler.DecompilerDriver' - } -} - +- dependencies { compile 'com.beust:jcommander:1.30' - + compile project(':Procyon.Core') + compile project(':Procyon.CompilerTools') +-} +\ No newline at end of file ++} diff --git a/generate-tarball.sh b/generate-tarball.sh new file mode 100755 index 0000000..0ec644d --- /dev/null +++ b/generate-tarball.sh @@ -0,0 +1,23 @@ +#!/bin/bash +set -e + +name=procyon +version="$(sed -n 's/Version:\s*//p' *.spec)" + +# RETRIEVE +rm -rf procyon +git clone "https://github.com/slowcoders/procyon.git" + +# CLEAN TARBALL +pushd procyon +git checkout "f6568b3ffbb61af8166f678190f2dc0775fd47fd" + +rm -rf .git .idea docs +rm -rf gradle* +popd + +rm -rf "${name}-${version}" +mv procyon "${name}-${version}" + +tar -czf "${name}-${version}.tar.gz" "${name}-${version}" +rm -rf "${name}-${version}" diff --git a/procyon.spec b/procyon.spec index 018c93f..ebfc528 100644 --- a/procyon.spec +++ b/procyon.spec @@ -3,13 +3,16 @@ %global remove_tests 1 Name: procyon -Version: 0.5.36 -Release: 0.5%{?dist} +Version: 1.0~SNAPSHOT +Release: 1%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 -URL: https://bitbucket.org/mstrobel/procyon/ -Source0: https://bitbucket.org/mstrobel/procyon/get/v0.5.36.tar.gz +URL: https://github.com/mstrobel/procyon +# ./generate-tarball.sh +# This script uses a fork of the original project +Source0: %{name}-%{version}.tar.gz Source1: procyon-decompiler + # main removal is not upstream-able, and is enforced by fedora policy # signature is touching online world, necessary for packaging, not usptream able Patch0: removeSigningAndIfDecompilerAndMain.patch @@ -20,14 +23,16 @@ Patch2: adaptToNewerJcommander.patch Patch3: madeToPasXlint.patch Patch4: newJcommander.patch Patch5: lookupPatch.patch + BuildArch: noarch + BuildRequires: javapackages-tools BuildRequires: java-devel BuildRequires: dos2unix BuildRequires: beust-jcommander Requires: java-headless Requires: javapackages-tools -# main package is just meta package for all subprojects andtheirs artifacts +# main package is just meta package for all subprojects and their artifacts Recommends: %{name}-compilertools = %{version}-%{release} Recommends: %{name}-core = %{version}-%{release} Recommends: %{name}-expressions = %{version}-%{release} @@ -101,9 +106,8 @@ Emit APIs and is meant to address many of the shortcomings of the core Java refl limited and cumbersome support for generic type inspection. Its code generation facilities include a TypeBuilder, MethodBuilder, and a bytecode emitter. - %prep -%setup -q -n mstrobel-procyon-9f7822463e41 +%setup -q %if %{remove_tests} find | grep "\\.class$" #find | grep "\\.jar$" @@ -125,9 +129,7 @@ dos2unix Procyon.CompilerTools/src/main/java/com/strobel/assembler/metadata/Meth dos2unix Procyon.Reflection/src/main/java/com/strobel/reflection/emit/TypeBuilder.java %patch5 -p0 - %build - mkdir -p build/Procyon.CompilerTools/{libs,classes} mkdir -p build/Procyon.Core/{libs,classes} mkdir -p build/Procyon.Decompiler/{libs,classes} @@ -174,7 +176,6 @@ ln -s %{name}-expressions-%{version}.jar %{name}-expressions.jar ln -s %{name}-reflection-%{version}.jar %{name}-reflection.jar popd - %files %license License.txt %doc README.md @@ -215,12 +216,14 @@ popd %license License.txt %doc README.md - %changelog +* Thu Jun 03 2021 Marian Koncek - 1.0~SNAPSHOT-1 +- Update to upstream version 1.0~SNAPSHOT + * Wed Jan 27 2021 Fedora Release Engineering - 0.5.36-0.5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild -* Sat Dec 10 2020 Jiri Vanek - 0.5.36-0.4 +* Thu Dec 10 2020 Jiri Vanek - 0.5.36-0.4 - set source/target of 8 * Tue Jul 28 2020 Fedora Release Engineering - 0.5.36-0.3 diff --git a/removeSigningAndIfDecompilerAndMain.patch b/removeSigningAndIfDecompilerAndMain.patch index 31315a9..4b40d28 100644 --- a/removeSigningAndIfDecompilerAndMain.patch +++ b/removeSigningAndIfDecompilerAndMain.patch @@ -1,70 +1,44 @@ -diff -r ee404caa9a29 Procyon.Decompiler/build.gradle ---- a/Procyon.Decompiler/build.gradle Thu Jul 26 07:08:30 2018 -0400 -+++ b/Procyon.Decompiler/build.gradle Fri Dec 21 17:02:23 2018 +0100 -@@ -8,7 +8,7 @@ - } - } - --jar.enabled = false -+jar.enabled = true - uploadArchives.enabled = false - - apply plugin: 'eu.appsatori.fatjar' -@@ -17,7 +17,7 @@ - // from rootProject.allprojects.collect({ it.sourceSets.main.allSource }) - - manifest { -- attributes 'Title': archivesBaseName, 'Manifest-Version': '1.0', 'Version': version, 'Main-Class' : 'com.strobel.decompiler.DecompilerDriver' -+ attributes 'Title': archivesBaseName, 'Manifest-Version': '1.0', 'Version': version - } - } - -@@ -25,4 +25,4 @@ - compile 'com.beust:jcommander:1.30' - compile project(':Procyon.Core') - compile project(':Procyon.CompilerTools') --} -\ No newline at end of file -+} -diff -r ee404caa9a29 build.gradle ---- a/build.gradle Thu Jul 26 07:08:30 2018 -0400 -+++ b/build.gradle Fri Dec 21 17:02:23 2018 +0100 -@@ -59,7 +59,6 @@ +diff --git a/build.gradle b/build.gradle +index f521868..3168766 100644 +--- a/build.gradle ++++ b/build.gradle +@@ -62,9 +62,6 @@ rootProject.uploadArchives.enabled = false subprojects { apply plugin: 'maven' - apply plugin: 'signing' +- +- final boolean shouldSign = "true".equalsIgnoreCase(System.properties.getProperty("procyon.signing.enabled")) - archivesBaseName = 'procyon-' + it.name.split("\\.")[1].toLowerCase() + archivesBaseName = "procyon-${(it.name as String).split('\\.')[1].toLowerCase()}" -@@ -80,7 +79,7 @@ - from sourceSets.main.allSource - } - -- if (project.name != "Procyon.Decompiler") { -+ - javadoc { - options.encoding = 'UTF-8' - } -@@ -91,78 +90,6 @@ +@@ -131,86 +128,6 @@ subprojects { + archives javadocJar archives sourcesJar } - -- signing { -- sign configurations.archives +- +- if (shouldSign) { +- signing { +- sign configurations.archives +- } - } - +- - uploadArchives { - repositories.mavenDeployer { -- beforeDeployment { MavenDeployment deployment -> -- signing.signPom(deployment) +- if (shouldSign) { +- beforeDeployment { MavenDeployment deployment -> +- signing.signPom(deployment) +- } - } +- - snapshotRepository(url: "https://oss.sonatype.org/content/repositories/snapshots") { -- authentication(userName: project.properties.get("sonatypeUsername"), password: project.properties.get("sonatypePassword")) +- authentication(userName: project.properties.get("procyon.sonatype.username"), +- password: project.properties.get("procyon.sonatype.password")) - } - - repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2") { -- authentication(userName: project.properties.get("sonatypeUsername"), password: project.properties.get("sonatypePassword")) +- authentication(userName: project.properties.get("procyon.sonatype.username"), +- password: project.properties.get("procyon.sonatype.password")) - } - - pom { @@ -122,6 +96,6 @@ diff -r ee404caa9a29 build.gradle - } - } - } -- } + } } diff --git a/sources b/sources index 77ab89d..d5cb14e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (v0.5.36.tar.gz) = 4f70f1b6886cb14a10e7686350bc13b7f5b0a3d09295982e6d03814f329fe426b503900e57c285b4f6906f824c623d142fd7cb3131cf6729dcf3044d0beb48c6 +SHA512 (procyon-1.0~SNAPSHOT.tar.gz) = d19f5fc282facf0756a363844c38e98ea33d8488fd512b33a63057371e8ed31358ff47cb44b273a3687b09588342f25258a168ffba436380bd22d25b85ca3b07 From b50dc0234cbabc0aafe372c4dd0577788a090ade Mon Sep 17 00:00:00 2001 From: Jiri Date: Tue, 22 Jun 2021 13:30:44 +0200 Subject: [PATCH 12/29] moved to commit versioning --- .gitignore | 1 + generate-tarball.sh | 8 ++++---- procyon.spec | 15 +++++++++++---- sources | 2 +- 4 files changed, 17 insertions(+), 9 deletions(-) diff --git a/.gitignore b/.gitignore index be41408..029b54d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /mstrobel-procyon-ee404caa9a29.zip /v0.5.36.tar.gz /procyon-1.0~SNAPSHOT.tar.gz +/procyon-92ba3f44b8f2b755a21efcdc05dec347ab4df552.tar.gz diff --git a/generate-tarball.sh b/generate-tarball.sh index 0ec644d..817fc26 100755 --- a/generate-tarball.sh +++ b/generate-tarball.sh @@ -1,16 +1,16 @@ #!/bin/bash -set -e +set -ex name=procyon -version="$(sed -n 's/Version:\s*//p' *.spec)" +version=`cat procyon.spec | grep "%global commit " | sed "s/.*commit //"` # RETRIEVE rm -rf procyon -git clone "https://github.com/slowcoders/procyon.git" +git clone "https://github.com/mstrobel/procyon.git" # CLEAN TARBALL pushd procyon -git checkout "f6568b3ffbb61af8166f678190f2dc0775fd47fd" +git checkout "$version" rm -rf .git .idea docs rm -rf gradle* diff --git a/procyon.spec b/procyon.spec index ebfc528..0e13ace 100644 --- a/procyon.spec +++ b/procyon.spec @@ -2,15 +2,19 @@ %define debug_package %{nil} %global remove_tests 1 +%global commit 92ba3f44b8f2b755a21efcdc05dec347ab4df552 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20210619 + Name: procyon -Version: 1.0~SNAPSHOT -Release: 1%{?dist} +Version: 0.5.36 +Release: 0.6.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://github.com/mstrobel/procyon # ./generate-tarball.sh # This script uses a fork of the original project -Source0: %{name}-%{version}.tar.gz +Source0: %{name}-%{commit}.tar.gz Source1: procyon-decompiler # main removal is not upstream-able, and is enforced by fedora policy @@ -107,7 +111,7 @@ limited and cumbersome support for generic type inspection. Its code generation MethodBuilder, and a bytecode emitter. %prep -%setup -q +%setup -q -n %{name}-%{commit} %if %{remove_tests} find | grep "\\.class$" #find | grep "\\.jar$" @@ -217,6 +221,9 @@ popd %doc README.md %changelog +* Thu Jun 03 2020 Jiri Vanek - 0.5.36-0.6-92ba3f4 +- moved to commit versioning + * Thu Jun 03 2021 Marian Koncek - 1.0~SNAPSHOT-1 - Update to upstream version 1.0~SNAPSHOT diff --git a/sources b/sources index d5cb14e..4a20307 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (procyon-1.0~SNAPSHOT.tar.gz) = d19f5fc282facf0756a363844c38e98ea33d8488fd512b33a63057371e8ed31358ff47cb44b273a3687b09588342f25258a168ffba436380bd22d25b85ca3b07 +SHA512 (procyon-92ba3f44b8f2b755a21efcdc05dec347ab4df552.tar.gz) = eca4fd9c7b3b4b09e4bcf7e317ca3988301899b2a784fe4b789cb5797934a849f63a9ec330a05a6c4232660c6e2878cfd242e756f0131575df72404cec573b68 From 96b04f279a050a9f59cd81be4bae657f85affd81 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 23 Jul 2021 04:05:13 +0000 Subject: [PATCH 13/29] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index 0e13ace..9eb7303 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,7 +8,7 @@ Name: procyon Version: 0.5.36 -Release: 0.6.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.7.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://github.com/mstrobel/procyon @@ -221,6 +221,9 @@ popd %doc README.md %changelog +* Fri Jul 23 2021 Fedora Release Engineering - 0.5.36-0.7.20210619.git92ba3f4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Thu Jun 03 2020 Jiri Vanek - 0.5.36-0.6-92ba3f4 - moved to commit versioning From 3eff6c8e829543d0474bc47c86c755ee89d81121 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 21 Jan 2022 09:28:26 +0000 Subject: [PATCH 14/29] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index 9eb7303..ba24fce 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,7 +8,7 @@ Name: procyon Version: 0.5.36 -Release: 0.7.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.8.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://github.com/mstrobel/procyon @@ -221,6 +221,9 @@ popd %doc README.md %changelog +* Fri Jan 21 2022 Fedora Release Engineering - 0.5.36-0.8.20210619.git92ba3f4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Fri Jul 23 2021 Fedora Release Engineering - 0.5.36-0.7.20210619.git92ba3f4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From dfe48a0a23ce8eb1ac8912a759d2f6ec180898f9 Mon Sep 17 00:00:00 2001 From: Jiri Date: Sat, 5 Feb 2022 23:51:59 +0100 Subject: [PATCH 15/29] Rebuilt for java-17-openjdk as system jdk https://fedoraproject.org/wiki/Changes/Java17 --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index ba24fce..dd9cb39 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,7 +8,7 @@ Name: procyon Version: 0.5.36 -Release: 0.8.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.9.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://github.com/mstrobel/procyon @@ -221,6 +221,9 @@ popd %doc README.md %changelog +* Sat Feb 05 2022 Jiri Vanek - 0.5.36-0.9.20210619.git92ba3f4 +- Rebuilt for java-17-openjdk as system jdk + * Fri Jan 21 2022 Fedora Release Engineering - 0.5.36-0.8.20210619.git92ba3f4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From 6b7999d26abdcf0d0b66a390db4b90c4841c88da Mon Sep 17 00:00:00 2001 From: Jiri Date: Fri, 8 Jul 2022 16:36:36 +0200 Subject: [PATCH 16/29] Rebuilt for Drop i686 JDKs https://fedoraproject.org/wiki/Changes/Drop_i686_JDKs --- procyon.spec | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index dd9cb39..f585b44 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,7 +8,7 @@ Name: procyon Version: 0.5.36 -Release: 0.9.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.10.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://github.com/mstrobel/procyon @@ -29,6 +29,7 @@ Patch4: newJcommander.patch Patch5: lookupPatch.patch BuildArch: noarch +ExclusiveArch: %{java_arches} noarch BuildRequires: javapackages-tools BuildRequires: java-devel @@ -52,6 +53,7 @@ The Procyon libraries are available from Maven Central under group ID org.bitbuc %package compilertools Summary: The procyon-compilertools project BuildArch: noarch +ExclusiveArch: %{java_arches} noarch Requires: javapackages-tools %description compilertools @@ -63,6 +65,7 @@ The Compiler Toolset is still early in development and subject to change. %package core Summary: The procyon-core framework contains common support classes BuildArch: noarch +ExclusiveArch: %{java_arches} noarch Requires: javapackages-tools %description core @@ -74,6 +77,7 @@ and some runtime type helpers. %package expressions Summary: The procyon-expressions framework provides a more natural form of Linq-like code generation BuildArch: noarch +ExclusiveArch: %{java_arches} noarch Requires: javapackages-tools %description expressions @@ -88,6 +92,7 @@ minus the dynamic callsite support (and with more relaxed rules regarding type c %package decompiler Summary: procyon-decompiler is a front-end for the Java decompiler BuildArch: noarch +ExclusiveArch: %{java_arches} noarch Requires: %{name}-core Requires: %{name}-compilertools Requires: beust-jcommander @@ -101,6 +106,7 @@ https://bitbucket.org/mstrobel/procyon/wiki/Java%20Decompiler %package reflection Summary: The procyon-reflection framework provides a rich reflection and code generation API BuildArch: noarch +ExclusiveArch: %{java_arches} noarch Requires: javapackages-tools %description reflection @@ -221,6 +227,9 @@ popd %doc README.md %changelog +* Fri Jul 08 2022 Jiri Vanek - 0.5.36-0.10.20210619.git92ba3f4 +- Rebuilt for Drop i686 JDKs + * Sat Feb 05 2022 Jiri Vanek - 0.5.36-0.9.20210619.git92ba3f4 - Rebuilt for java-17-openjdk as system jdk From a8de1c6cb66dd9a2f9590f8e97a2f7a1b12388a5 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 22 Jul 2022 15:26:09 +0000 Subject: [PATCH 17/29] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index f585b44..5a53a4f 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,7 +8,7 @@ Name: procyon Version: 0.5.36 -Release: 0.10.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.11.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://github.com/mstrobel/procyon @@ -227,6 +227,9 @@ popd %doc README.md %changelog +* Fri Jul 22 2022 Fedora Release Engineering - 0.5.36-0.11.20210619.git92ba3f4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Fri Jul 08 2022 Jiri Vanek - 0.5.36-0.10.20210619.git92ba3f4 - Rebuilt for Drop i686 JDKs From 434dd52be631e6f15f77edd71dff96f733ecc245 Mon Sep 17 00:00:00 2001 From: Jiri Date: Thu, 10 Nov 2022 19:09:55 +0100 Subject: [PATCH 18/29] bumped to 0.6.0 --- .gitignore | 1 + adaptToNewerJcommander.patch | 12 --- disableFatJar.patch | 34 -------- lookupPatch.patch | 30 ------- newJcommander.patch | 12 --- procyon.spec | 31 ++----- removeSigningAndIfDecompilerAndMain.patch | 101 ---------------------- sources | 2 +- 8 files changed, 11 insertions(+), 212 deletions(-) delete mode 100644 adaptToNewerJcommander.patch delete mode 100644 disableFatJar.patch delete mode 100644 lookupPatch.patch delete mode 100644 newJcommander.patch delete mode 100644 removeSigningAndIfDecompilerAndMain.patch diff --git a/.gitignore b/.gitignore index 029b54d..9a636c6 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ /v0.5.36.tar.gz /procyon-1.0~SNAPSHOT.tar.gz /procyon-92ba3f44b8f2b755a21efcdc05dec347ab4df552.tar.gz +/procyon-88a95fa93c58322393174f84543edc7a0a2ca44d.tar.gz diff --git a/adaptToNewerJcommander.patch b/adaptToNewerJcommander.patch deleted file mode 100644 index bab3d59..0000000 --- a/adaptToNewerJcommander.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/Procyon.Decompiler/src/main/java/com/strobel/decompiler/CommandLineOptions.java_nw -+++ b/Procyon.Decompiler/src/main/java/com/strobel/decompiler/CommandLineOptions.java -@@ -23,7 +23,7 @@ - - public class CommandLineOptions { - @Parameter(description = "") -- private final List _inputs = new ArrayList<>(); -+ private List _inputs = new ArrayList<>(); - - @Parameter( - names = { "-?", "--help" }, - diff --git a/disableFatJar.patch b/disableFatJar.patch deleted file mode 100644 index 4abf2db..0000000 --- a/disableFatJar.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff --git a/Procyon.Decompiler/build.gradle b/Procyon.Decompiler/build.gradle -index 7377956..388de1e 100644 ---- a/Procyon.Decompiler/build.gradle -+++ b/Procyon.Decompiler/build.gradle -@@ -2,27 +2,13 @@ buildscript { - repositories { - jcenter() - } -- -- dependencies { -- classpath 'eu.appsatori:gradle-fatjar-plugin:0.3' -- } - } - - jar.enabled = false - uploadArchives.enabled = false - --apply plugin: 'eu.appsatori.fatjar' -- --fatJar { --// from rootProject.allprojects.collect({ it.sourceSets.main.allSource }) -- -- manifest { -- attributes 'Title': archivesBaseName, 'Manifest-Version': '1.0', 'Version': version, 'Main-Class' : 'com.strobel.decompiler.DecompilerDriver' -- } --} -- - dependencies { - compile 'com.beust:jcommander:1.30' - compile project(':Procyon.Core') - compile project(':Procyon.CompilerTools') --} -\ No newline at end of file -+} diff --git a/lookupPatch.patch b/lookupPatch.patch deleted file mode 100644 index 9190669..0000000 --- a/lookupPatch.patch +++ /dev/null @@ -1,30 +0,0 @@ ---- Procyon.Reflection/src/main/java/com/strobel/reflection/emit/TypeBuilder.java -+++ Procyon.Reflection/src/main/java/com/strobel/reflection/emit/TypeBuilder.java -@@ -34,6 +34,7 @@ - import java.io.IOException; - import java.io.OutputStream; - import java.lang.annotation.Annotation; -+import java.lang.invoke.MethodHandles; - import java.lang.reflect.Field; - import java.lang.reflect.Modifier; - import java.security.ProtectionDomain; -@@ -1231,14 +1232,10 @@ - - _hasBeenCreated = true; - -- _generatedClass = (Class) getUnsafeInstance().defineClass( -- fullName, -- classBytes, -- 0, -- classBytes.length, -- Thread.currentThread().getContextClassLoader(), -- _protectionDomain -- ); -+ MethodHandles.Lookup lookup = MethodHandles.lookup(); -+ MethodHandles.Lookup privateLookup = MethodHandles.privateLookupIn(Class.forName(fullName), lookup); -+ _generatedClass = (Class)privateLookup.defineClass(classBytes); -+ - - RuntimeHelpers.ensureClassInitialized(_generatedClass); - - diff --git a/newJcommander.patch b/newJcommander.patch deleted file mode 100644 index 140fc73..0000000 --- a/newJcommander.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/Procyon.Decompiler/src/main/java/com/strobel/decompiler/DecompilerDriver.java -+++ a/Procyon.Decompiler/src/main/java/com/strobel/decompiler/DecompilerDriver.java -@@ -64,7 +64,7 @@ - final boolean decompileJar = !StringUtilities.isNullOrWhitespace(jarFile); - - if (options.getPrintVersion()) { -- JCommander.getConsole().println(Procyon.version()); -+ jCommander.getConsole().println(Procyon.version()); - if (options.getPrintUsage()) { - jCommander.usage(); - } - diff --git a/procyon.spec b/procyon.spec index 5a53a4f..b6c508d 100644 --- a/procyon.spec +++ b/procyon.spec @@ -2,13 +2,13 @@ %define debug_package %{nil} %global remove_tests 1 -%global commit 92ba3f44b8f2b755a21efcdc05dec347ab4df552 +%global commit 88a95fa93c58322393174f84543edc7a0a2ca44d %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20210619 +%global commitdate 20220221 Name: procyon -Version: 0.5.36 -Release: 0.11.%{commitdate}.git%{shortcommit}%{?dist} +Version: 0.6.0 +Release: 0.1.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://github.com/mstrobel/procyon @@ -16,17 +16,8 @@ URL: https://github.com/mstrobel/procyon # This script uses a fork of the original project Source0: %{name}-%{commit}.tar.gz Source1: procyon-decompiler - -# main removal is not upstream-able, and is enforced by fedora policy -# signature is touching online world, necessary for packaging, not usptream able -Patch0: removeSigningAndIfDecompilerAndMain.patch -# fat jar do not have much sense for fedora packagin. not upstream-able -Patch1: disableFatJar.patch -# patch should be proposed to upstream. -Patch2: adaptToNewerJcommander.patch Patch3: madeToPasXlint.patch -Patch4: newJcommander.patch -Patch5: lookupPatch.patch + BuildArch: noarch ExclusiveArch: %{java_arches} noarch @@ -129,15 +120,8 @@ find | grep "\\.jar$" && exit 1 dos2unix Procyon.Decompiler/build.gradle dos2unix build.gradle dos2unix README.md -# also removing main method from enter point jar -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 dos2unix Procyon.CompilerTools/src/main/java/com/strobel/assembler/metadata/MethodBinder.java %patch3 -p1 -%patch4 -p1 -dos2unix Procyon.Reflection/src/main/java/com/strobel/reflection/emit/TypeBuilder.java -%patch5 -p0 %build mkdir -p build/Procyon.CompilerTools/{libs,classes} @@ -227,6 +211,9 @@ popd %doc README.md %changelog +* Fri Jul 22 2022 Fedora Release Engineering - 0.6.0-0.1.20220221.git88a95fa +- bumped to 0.6.0 + * Fri Jul 22 2022 Fedora Release Engineering - 0.5.36-0.11.20210619.git92ba3f4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild @@ -242,7 +229,7 @@ popd * Fri Jul 23 2021 Fedora Release Engineering - 0.5.36-0.7.20210619.git92ba3f4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild -* Thu Jun 03 2020 Jiri Vanek - 0.5.36-0.6-92ba3f4 +* Thu Jun 03 2021 Jiri Vanek - 0.5.36-0.6-92ba3f4 - moved to commit versioning * Thu Jun 03 2021 Marian Koncek - 1.0~SNAPSHOT-1 diff --git a/removeSigningAndIfDecompilerAndMain.patch b/removeSigningAndIfDecompilerAndMain.patch deleted file mode 100644 index 4b40d28..0000000 --- a/removeSigningAndIfDecompilerAndMain.patch +++ /dev/null @@ -1,101 +0,0 @@ -diff --git a/build.gradle b/build.gradle -index f521868..3168766 100644 ---- a/build.gradle -+++ b/build.gradle -@@ -62,9 +62,6 @@ rootProject.uploadArchives.enabled = false - - subprojects { - apply plugin: 'maven' -- apply plugin: 'signing' -- -- final boolean shouldSign = "true".equalsIgnoreCase(System.properties.getProperty("procyon.signing.enabled")) - - archivesBaseName = "procyon-${(it.name as String).split('\\.')[1].toLowerCase()}" - -@@ -131,86 +128,6 @@ subprojects { - archives javadocJar - archives sourcesJar - } -- -- if (shouldSign) { -- signing { -- sign configurations.archives -- } -- } -- -- uploadArchives { -- repositories.mavenDeployer { -- if (shouldSign) { -- beforeDeployment { MavenDeployment deployment -> -- signing.signPom(deployment) -- } -- } -- -- snapshotRepository(url: "https://oss.sonatype.org/content/repositories/snapshots") { -- authentication(userName: project.properties.get("procyon.sonatype.username"), -- password: project.properties.get("procyon.sonatype.password")) -- } -- -- repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2") { -- authentication(userName: project.properties.get("procyon.sonatype.username"), -- password: project.properties.get("procyon.sonatype.password")) -- } -- -- pom { -- groupId = project.group -- version = project.version -- artifactId = project.archivesBaseName -- -- project { -- name project.archivesBaseName -- packaging 'jar' -- description 'Procyon' -- url 'https://bitbucket.org/mstrobel/procyon' -- -- scm { -- url 'https://bitbucket.org/mstrobel/procyon' -- connection 'scm:hg:https://hg@bitbucket.org/mstrobel/procyon' -- developerConnection 'scm:hg:https://mstrobel@bitbucket.org/mstrobel/procyon' -- } -- -- issueManagement { -- system 'jira' -- url 'https://bitbucket.org/mstrobel/procyon/issues' -- } -- -- licenses { -- license { -- name 'The Apache Software License, Version 2.0' -- url 'http://www.apache.org/licenses/LICENSE-2.0.txt' -- distribution 'repo' -- } -- } -- -- developers { -- developer { -- id 'mstrobel' -- name 'Mike Strobel' -- roles { -- role 'owner' -- role 'packager' -- role 'developer' -- } -- } -- } -- -- dependencies { -- dependency { -- groupId 'junit' -- artifactId 'junit' -- version '4.11' -- scope 'test' --// optional = true -- } -- } -- } -- } -- } -- } - } - } - diff --git a/sources b/sources index 4a20307..1dfc060 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (procyon-92ba3f44b8f2b755a21efcdc05dec347ab4df552.tar.gz) = eca4fd9c7b3b4b09e4bcf7e317ca3988301899b2a784fe4b789cb5797934a849f63a9ec330a05a6c4232660c6e2878cfd242e756f0131575df72404cec573b68 +SHA512 (procyon-88a95fa93c58322393174f84543edc7a0a2ca44d.tar.gz) = 69c782cb8648f5c8f6ed1999d301df2318f64a3d3479a16ef340891deaef7a1b161d4d2808d98e70372381626dbe5488d9d0dc9b6c17feacc8e0d38f1747985e From 70384ae6e6493a96a305df065ddb213985020446 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 20 Jan 2023 10:18:06 +0000 Subject: [PATCH 19/29] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index b6c508d..26114d2 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,7 +8,7 @@ Name: procyon Version: 0.6.0 -Release: 0.1.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.2.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://github.com/mstrobel/procyon @@ -211,6 +211,9 @@ popd %doc README.md %changelog +* Fri Jan 20 2023 Fedora Release Engineering - 0.6.0-0.2.20220221.git88a95fa +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Fri Jul 22 2022 Fedora Release Engineering - 0.6.0-0.1.20220221.git88a95fa - bumped to 0.6.0 From dd66f936e66aa3bf5c14f46d54ab271200125426 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 21 Jul 2023 06:18:35 +0000 Subject: [PATCH 20/29] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index 26114d2..12cbcc8 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,7 +8,7 @@ Name: procyon Version: 0.6.0 -Release: 0.2.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.3.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://github.com/mstrobel/procyon @@ -211,6 +211,9 @@ popd %doc README.md %changelog +* Fri Jul 21 2023 Fedora Release Engineering - 0.6.0-0.3.20220221.git88a95fa +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Fri Jan 20 2023 Fedora Release Engineering - 0.6.0-0.2.20220221.git88a95fa - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From c8306f29908c6ea75f074a787d53f84fe215f996 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 21 Jan 2024 22:23:00 +0000 Subject: [PATCH 21/29] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index 12cbcc8..9e5ad11 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,7 +8,7 @@ Name: procyon Version: 0.6.0 -Release: 0.3.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.4.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://github.com/mstrobel/procyon @@ -211,6 +211,9 @@ popd %doc README.md %changelog +* Sun Jan 21 2024 Fedora Release Engineering - 0.6.0-0.4.20220221.git88a95fa +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Fri Jul 21 2023 Fedora Release Engineering - 0.6.0-0.3.20220221.git88a95fa - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From c3684204ee100ae556838860133b0cac57fa27e7 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 26 Jan 2024 00:09:41 +0000 Subject: [PATCH 22/29] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index 9e5ad11..77d441e 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,7 +8,7 @@ Name: procyon Version: 0.6.0 -Release: 0.4.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.5.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://github.com/mstrobel/procyon @@ -211,6 +211,9 @@ popd %doc README.md %changelog +* Fri Jan 26 2024 Fedora Release Engineering - 0.6.0-0.5.20220221.git88a95fa +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Sun Jan 21 2024 Fedora Release Engineering - 0.6.0-0.4.20220221.git88a95fa - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 4d21205f0126061ee2cf095ef89434bd18f7b87a Mon Sep 17 00:00:00 2001 From: Software Management Team Date: Thu, 30 May 2024 12:46:49 +0200 Subject: [PATCH 23/29] Eliminate use of obsolete %patchN syntax (#2283636) --- procyon.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index 77d441e..5cf609f 100644 --- a/procyon.spec +++ b/procyon.spec @@ -121,7 +121,7 @@ dos2unix Procyon.Decompiler/build.gradle dos2unix build.gradle dos2unix README.md dos2unix Procyon.CompilerTools/src/main/java/com/strobel/assembler/metadata/MethodBinder.java -%patch3 -p1 +%patch -P3 -p1 %build mkdir -p build/Procyon.CompilerTools/{libs,classes} From edfc778439a65a979e7868e922862976c348c59f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jul 2024 08:30:58 +0000 Subject: [PATCH 24/29] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index 5cf609f..c6b6e41 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,7 +8,7 @@ Name: procyon Version: 0.6.0 -Release: 0.5.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.6.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools License: ASL 2.0 URL: https://github.com/mstrobel/procyon @@ -211,6 +211,9 @@ popd %doc README.md %changelog +* Fri Jul 19 2024 Fedora Release Engineering - 0.6.0-0.6.20220221.git88a95fa +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Fri Jan 26 2024 Fedora Release Engineering - 0.6.0-0.5.20220221.git88a95fa - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 4c1e5ca290fb06dae215d1971323466ea2a57aa8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20Such=C3=BD?= Date: Wed, 24 Jul 2024 16:55:05 +0200 Subject: [PATCH 25/29] convert ASL 2.0 license to SPDX This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4 --- procyon.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/procyon.spec b/procyon.spec index c6b6e41..c117a9f 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,9 +8,10 @@ Name: procyon Version: 0.6.0 -Release: 0.6.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.7.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools -License: ASL 2.0 +# Automatically converted from old format: ASL 2.0 - review is highly recommended. +License: Apache-2.0 URL: https://github.com/mstrobel/procyon # ./generate-tarball.sh # This script uses a fork of the original project @@ -211,6 +212,9 @@ popd %doc README.md %changelog +* Wed Jul 24 2024 Miroslav Suchý - 0.6.0-0.7.20220221.git88a95fa +- convert license to SPDX + * Fri Jul 19 2024 Fedora Release Engineering - 0.6.0-0.6.20220221.git88a95fa - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 75ebafd594f8e47e4d4d71460913fcb2795095a3 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 18 Jan 2025 10:50:29 +0000 Subject: [PATCH 26/29] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index c117a9f..f71499e 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,7 +8,7 @@ Name: procyon Version: 0.6.0 -Release: 0.7.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.8.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools # Automatically converted from old format: ASL 2.0 - review is highly recommended. License: Apache-2.0 @@ -212,6 +212,9 @@ popd %doc README.md %changelog +* Sat Jan 18 2025 Fedora Release Engineering - 0.6.0-0.8.20220221.git88a95fa +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Wed Jul 24 2024 Miroslav Suchý - 0.6.0-0.7.20220221.git88a95fa - convert license to SPDX From eec9e10016ef6e3a313e96e656ec899d3ad14bf8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 06:09:58 +0000 Subject: [PATCH 27/29] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- procyon.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/procyon.spec b/procyon.spec index f71499e..b4631ab 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,7 +8,7 @@ Name: procyon Version: 0.6.0 -Release: 0.8.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.9.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools # Automatically converted from old format: ASL 2.0 - review is highly recommended. License: Apache-2.0 @@ -212,6 +212,9 @@ popd %doc README.md %changelog +* Fri Jul 25 2025 Fedora Release Engineering - 0.6.0-0.9.20220221.git88a95fa +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Sat Jan 18 2025 Fedora Release Engineering - 0.6.0-0.8.20220221.git88a95fa - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From c7e1cf24ff01753d5c1ea300b33b3e76c2f4b2b5 Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Mon, 28 Jul 2025 19:19:55 +0200 Subject: [PATCH 28/29] Rebuilt for java-25-openjdk as preffered jdk https://fedoraproject.org/wiki/Changes/Java25AndNoMoreSystemJdk Note, that since f43, you should be always explicit on what jdk to use. This commit should do exactly that. --- procyon.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/procyon.spec b/procyon.spec index b4631ab..84b5a8b 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,7 +8,7 @@ Name: procyon Version: 0.6.0 -Release: 0.9.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.10.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools # Automatically converted from old format: ASL 2.0 - review is highly recommended. License: Apache-2.0 @@ -24,10 +24,10 @@ BuildArch: noarch ExclusiveArch: %{java_arches} noarch BuildRequires: javapackages-tools -BuildRequires: java-devel +BuildRequires: java-25-devel BuildRequires: dos2unix BuildRequires: beust-jcommander -Requires: java-headless +Requires: java-25-headless Requires: javapackages-tools # main package is just meta package for all subprojects and their artifacts Recommends: %{name}-compilertools = %{version}-%{release} @@ -212,6 +212,9 @@ popd %doc README.md %changelog +* Mon Jul 28 2025 jiri vanek - 0.6.0-0.10.20220221.git88a95fa +- Rebuilt for java-25-openjdk as preffered jdk + * Fri Jul 25 2025 Fedora Release Engineering - 0.6.0-0.9.20220221.git88a95fa - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From be7ad1b4284ae8839c74f9e2a90a4804c7108bce Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Thu, 16 Oct 2025 17:15:17 +0200 Subject: [PATCH 29/29] Building eith -f and for 1.8 --- procyon.spec | 97 +++++----------------------------------------------- 1 file changed, 8 insertions(+), 89 deletions(-) diff --git a/procyon.spec b/procyon.spec index 84b5a8b..08caf50 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,7 +8,7 @@ Name: procyon Version: 0.6.0 -Release: 0.10.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.11.%{commitdate}.git%{shortcommit}%{?dist} Summary: procyon java decompiler and other tools # Automatically converted from old format: ASL 2.0 - review is highly recommended. License: Apache-2.0 @@ -131,10 +131,12 @@ mkdir -p build/Procyon.Decompiler/{libs,classes} mkdir -p build/Procyon.Expressions/{libs,classes} mkdir -p build/Procyon.Reflection/{libs,classes} -javac -d build/Procyon.Core/classes/ ` find Procyon.Core/src/main/java -type f | grep "\.java"` -javac -d build/Procyon.Reflection/classes/ -cp build/Procyon.Core/classes/ ` find Procyon.Reflection/src/main/java -type f | grep "\.java"` -javac -d build/Procyon.Expressions/classes/ -cp build/Procyon.Core/classes/:build/Procyon.Reflection/classes/ ` find Procyon.Expressions/src/main/java -type f | grep "\.java"` -javac -d build/Procyon.CompilerTools/classes/ -cp build/Procyon.Core/classes/ ` find Procyon.CompilerTools/src/main/java -type f | grep "\.java"` +sourceVersion="-source 8 -target 8 -g" + +javac $sourceVersion -d build/Procyon.Core/classes/ ` find Procyon.Core/src/main/java -type f | grep "\.java"` +javac $sourceVersion -d build/Procyon.Reflection/classes/ -cp build/Procyon.Core/classes/ ` find Procyon.Reflection/src/main/java -type f | grep "\.java"` +javac $sourceVersion -d build/Procyon.Expressions/classes/ -cp build/Procyon.Core/classes/:build/Procyon.Reflection/classes/ ` find Procyon.Expressions/src/main/java -type f | grep "\.java"` +javac $sourceVersion -d build/Procyon.CompilerTools/classes/ -cp build/Procyon.Core/classes/ ` find Procyon.CompilerTools/src/main/java -type f | grep "\.java"` # pack the jars for x in Procyon.CompilerTools Procyon.Core Procyon.Reflection Procyon.Expressions ; do @@ -212,87 +214,4 @@ popd %doc README.md %changelog -* Mon Jul 28 2025 jiri vanek - 0.6.0-0.10.20220221.git88a95fa -- Rebuilt for java-25-openjdk as preffered jdk - -* Fri Jul 25 2025 Fedora Release Engineering - 0.6.0-0.9.20220221.git88a95fa -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Sat Jan 18 2025 Fedora Release Engineering - 0.6.0-0.8.20220221.git88a95fa -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Wed Jul 24 2024 Miroslav Suchý - 0.6.0-0.7.20220221.git88a95fa -- convert license to SPDX - -* Fri Jul 19 2024 Fedora Release Engineering - 0.6.0-0.6.20220221.git88a95fa -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Fri Jan 26 2024 Fedora Release Engineering - 0.6.0-0.5.20220221.git88a95fa -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Sun Jan 21 2024 Fedora Release Engineering - 0.6.0-0.4.20220221.git88a95fa -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Jul 21 2023 Fedora Release Engineering - 0.6.0-0.3.20220221.git88a95fa -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Fri Jan 20 2023 Fedora Release Engineering - 0.6.0-0.2.20220221.git88a95fa -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Fri Jul 22 2022 Fedora Release Engineering - 0.6.0-0.1.20220221.git88a95fa -- bumped to 0.6.0 - -* Fri Jul 22 2022 Fedora Release Engineering - 0.5.36-0.11.20210619.git92ba3f4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Fri Jul 08 2022 Jiri Vanek - 0.5.36-0.10.20210619.git92ba3f4 -- Rebuilt for Drop i686 JDKs - -* Sat Feb 05 2022 Jiri Vanek - 0.5.36-0.9.20210619.git92ba3f4 -- Rebuilt for java-17-openjdk as system jdk - -* Fri Jan 21 2022 Fedora Release Engineering - 0.5.36-0.8.20210619.git92ba3f4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Fri Jul 23 2021 Fedora Release Engineering - 0.5.36-0.7.20210619.git92ba3f4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Thu Jun 03 2021 Jiri Vanek - 0.5.36-0.6-92ba3f4 -- moved to commit versioning - -* Thu Jun 03 2021 Marian Koncek - 1.0~SNAPSHOT-1 -- Update to upstream version 1.0~SNAPSHOT - -* Wed Jan 27 2021 Fedora Release Engineering - 0.5.36-0.5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Thu Dec 10 2020 Jiri Vanek - 0.5.36-0.4 -- set source/target of 8 - -* Tue Jul 28 2020 Fedora Release Engineering - 0.5.36-0.3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Sat Jul 11 2020 Jiri Vanek - 0.5.36-0.2 -- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 - -* Tue Feb 18 2020 Jiri Vanek - 0.5.36-0.1 -- bumped to latest tagged forest 0.5.36 -- fixed bug in usage of newer jcommander - -* Tue Feb 18 2020 Jiri Vanek - 0.5.33-0.5.pre02 -- removed fat jar, as gradle is gone -- removed javadoc and srcs artifacts. will eb building by javac -- buit by javac instead of gradle - -* Fri Jul 26 2019 Fedora Release Engineering - 0.5.33-0.3.pre02 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Sat Feb 02 2019 Fedora Release Engineering - 0.5.33-0.2.pre02 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Fri Dec 21 2018 Jiri Vanek 0.5.33-0.1.pre02 -- created special package for assembled fat jar -- adapted rest of package to include and cooperate with minimal decompiler frontend - -* Fri Dec 21 2018 Jiri Vanek 0.5.33-0.1.pre01 -- inital load +%autochangelog