diff --git a/adaptToNewerJcommander.patch b/adaptToNewerJcommander.patch new file mode 100644 index 0000000..bab3d59 --- /dev/null +++ b/adaptToNewerJcommander.patch @@ -0,0 +1,12 @@ +--- 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 new file mode 100644 index 0000000..5d8bbef --- /dev/null +++ b/disableFatJar.patch @@ -0,0 +1,28 @@ +diff -r ee404caa9a29 Procyon.Decompiler/build.gradle +--- a/Procyon.Decompiler/build.gradle ++++ b/Procyon.Decompiler/build.gradle.nw +@@ -3,23 +3,10 @@ + jcenter() + } + +- dependencies { +- classpath 'eu.appsatori:gradle-fatjar-plugin:0.3' +- } + } + + jar.enabled = true + 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 +- } +-} + + dependencies { + compile 'com.beust:jcommander:1.30' + diff --git a/procyon.spec b/procyon.spec index 08caf50..26114d2 100644 --- a/procyon.spec +++ b/procyon.spec @@ -8,10 +8,9 @@ Name: procyon Version: 0.6.0 -Release: 0.11.%{commitdate}.git%{shortcommit}%{?dist} +Release: 0.2.%{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 +License: ASL 2.0 URL: https://github.com/mstrobel/procyon # ./generate-tarball.sh # This script uses a fork of the original project @@ -24,10 +23,10 @@ BuildArch: noarch ExclusiveArch: %{java_arches} noarch BuildRequires: javapackages-tools -BuildRequires: java-25-devel +BuildRequires: java-devel BuildRequires: dos2unix BuildRequires: beust-jcommander -Requires: java-25-headless +Requires: java-headless Requires: javapackages-tools # main package is just meta package for all subprojects and their artifacts Recommends: %{name}-compilertools = %{version}-%{release} @@ -122,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 -%patch -P3 -p1 +%patch3 -p1 %build mkdir -p build/Procyon.CompilerTools/{libs,classes} @@ -131,12 +130,10 @@ mkdir -p build/Procyon.Decompiler/{libs,classes} mkdir -p build/Procyon.Expressions/{libs,classes} mkdir -p build/Procyon.Reflection/{libs,classes} -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"` +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 @@ -214,4 +211,63 @@ popd %doc README.md %changelog -%autochangelog +* 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 diff --git a/removeSigningAndIfDecompilerAndMain.patch b/removeSigningAndIfDecompilerAndMain.patch new file mode 100644 index 0000000..31315a9 --- /dev/null +++ b/removeSigningAndIfDecompilerAndMain.patch @@ -0,0 +1,127 @@ +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 @@ + + subprojects { + apply plugin: 'maven' +- apply plugin: 'signing' + + archivesBaseName = 'procyon-' + it.name.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 @@ + archives sourcesJar + } + +- signing { +- sign configurations.archives +- } + +- uploadArchives { +- repositories.mavenDeployer { +- 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")) +- } +- +- repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2") { +- authentication(userName: project.properties.get("sonatypeUsername"), password: project.properties.get("sonatypePassword")) +- } +- +- 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 +- } +- } +- } +- } +- } +- } +- } + } +