Compare commits

...
Sign in to create a new pull request.

27 commits

Author SHA1 Message Date
Jiri Vanek
346c5983aa 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.
2025-07-28 18:57:09 +02:00
Fedora Release Engineering
cd24147d41 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-23 20:28:40 +00:00
Fedora Release Engineering
145f40ad1e Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-16 18:10:39 +00:00
Miroslav Suchý
495ce98a25 convert ASL 2.0 license to SPDX
This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4
2024-07-24 15:35:00 +02:00
Fedora Release Engineering
f8175c2dd3 Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-17 23:03:12 +00:00
Software Management Team
dc75f0c262 Eliminate use of obsolete %patchN syntax (#2283636) 2024-05-30 12:46:46 +02:00
Jiri Vanek
da3903dd34 Rebuilt for java-21-openjdk as system jdk
https://fedoraproject.org/wiki/Changes/Java21
2024-02-27 15:26:55 +01:00
Fedora Release Engineering
11ad99b2a9 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-24 11:29:26 +00:00
Fedora Release Engineering
694958e372 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-19 19:13:27 +00:00
Fedora Release Engineering
fd180cf228 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-19 19:36:36 +00:00
Fedora Release Engineering
0a7ec1c3ec Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-19 03:21:53 +00:00
Fedora Release Engineering
4b5b17b2e4 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-21 03:05:58 +00:00
Jiri
b37df9aa70 Rebuilt for Drop i686 JDKs
https://fedoraproject.org/wiki/Changes/Drop_i686_JDKs
2022-07-08 15:17:00 +02:00
Jiri
0588887729 Rebuilt for java-17-openjdk as system jdk
https://fedoraproject.org/wiki/Changes/Java17
2022-02-05 20:37:01 +01:00
Fedora Release Engineering
1b1c5d42b7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-20 02:56:18 +00:00
Fedora Release Engineering
1c04504e35 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-21 22:54:06 +00:00
Marian Koncek
5c3d724305 Update to upstream version 211.7442.40 2021-06-02 15:08:59 +02:00
Fedora Release Engineering
06121b3df0 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-26 05:28:31 +00:00
Jiri Vanek
932abd2e86 set source/target of 8 2020-12-10 13:50:33 +01:00
Fedora Release Engineering
d422f7f356 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-27 17:22:47 +00:00
Jiri
6b403667ce Rebuilt for JDK-11 2020-07-10 19:09:58 +02:00
Jiri Vanek
3608fc5cc0 moved to gradle-less build 2020-02-18 10:17:45 +01:00
Fedora Release Engineering
3adfe19f83 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-28 18:24:20 +00:00
Fedora Release Engineering
18adabb7e4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-25 00:29:22 +00:00
Fedora Release Engineering
4356c02886 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-01-31 19:37:54 +00:00
Igor Gnatenko
38f67dd265 Remove obsolete Group tag
References: https://fedoraproject.org/wiki/Changes/Remove_Group_Tag
2019-01-28 20:24:01 +01:00
Jiri
c91345d468 added virtual provides of fernflower-decompiler and fernflower-decompiler-javadoc 2019-01-18 19:03:39 +01:00
7 changed files with 121 additions and 33 deletions

1
.gitignore vendored
View file

@ -1 +1,2 @@
/fernflower-183.5153.8.tar.gz
/fernflower-211.7442.40.tar.gz

View file

@ -1,13 +1,13 @@
# idea soources have 280MB
# decompiler itself is 375kB now, including test classes...
VERSION=183.5153.8
VERSION=211.7442.40
INPUT=$VERSION.tar.gz
TOP_DIR=intellij-community-idea-$VERSION
DECOMPILER_DIR=$TOP_DIR/plugins/java-decompiler
NAME=fernflower
OUT_NAME=$NAME-$VERSION
OUTPUT=$OUT_NAME.tar.gz
TEST=true;
if [ -e $OUTPUT ] ; then
echo "$OUTPUT already exists"
else
@ -29,12 +29,3 @@ else
mv $DECOMPILER_DIR/$OUTPUT .
rm -rf $TOP_DIR
fi
if [ $TEST == "true" ] ; then
tar -xvf $OUTPUT
pushd $OUT_NAME
gradle-local jar
find | grep $NAME.jar
popd
fi

View file

@ -5,4 +5,3 @@ MAIN_CLASS=org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler
set_classpath fernflower
run ${@}

View file

@ -4,12 +4,13 @@
%global with_javadoc 1
Name: fernflower
Version: 183.5153.8
Release: 1%{?dist}
Version: 211.7442.40
Release: 16%{?dist}
Summary: JIdea's java decompiler
Group: Development/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/JetBrains/intellij-community/tree/master/plugins/java-decompiler/engine
#Source0: https://github.com/JetBrains/intellij-community/archive/idea/%%{version}.tar.gz
# this source is 280MB big, so only the decompiler is repacked via create-sources.sh and has 350kB
# generated by source2; `create-sources.sh 183.5153.8`
@ -17,17 +18,21 @@ Source0: %{name}-%{version}.tar.gz
# launcher
Source1: %{name}
Source2: create-sources.sh
Patch0: remove_main.patch
Patch1: port_to_java_8.patch
BuildArch: noarch
ExclusiveArch: %{java_arches} noarch
BuildRequires: javapackages-tools
BuildRequires: java-devel
BuildRequires: gradle-local
BuildRequires: java-25-devel
%if %{with_javadoc}
BuildRequires: zip
%endif
Requires: java-headless
Requires: java-25-headless
Requires: javapackages-tools
Provides: %{name}-decompiler
%description
JIdea's decompiler is the first actually working analytical decompiler for Java and probably
@ -37,9 +42,9 @@ please send your bug reports and improvement suggestions to the issue tracker.
%if %{with_javadoc}
%package javadoc
Summary: %{name} API documentation
Group: Documentation
Requires: javapackages-filesystem
BuildArch: noarch
Provides: %{name}-decompiler-javadoc
%description javadoc
The %{name} 100% empty API documentation.
@ -57,10 +62,17 @@ rm -vf gradle/wrapper/gradle-wrapper.jar
find | grep "\\.class$" && exit 1
find | grep "\\.jar$" && exit 1
#removing main method from entry point jar
%patch0
%patch -P0
%patch -P1 -p1
%build
%gradle_build --skip-install jar
mkdir build
javac -source 8 -target 8 -d build `find src -type f`
cd build
jar -cf ../%{name}.jar org
cd ..
mkdir build/libs
mv %{name}.jar build/libs/
%if %{with_javadoc}
# this is sad. Javadoc is really 100% empty
mkdir fernflower-javadoc
@ -70,7 +82,6 @@ cd ..
zip -r %{name}.zip fernflower-javadoc
%endif
%install
mkdir -p $RPM_BUILD_ROOT/%{_bindir}/
cp %{SOURCE1} $RPM_BUILD_ROOT/%{_bindir}/ # cusotm launcher for main method in main jar
@ -95,5 +106,80 @@ cp %{name}.zip $RPM_BUILD_ROOT/%{_javadocdir}/
%endif
%changelog
* Mon Jul 28 2025 jiri vanek <jvanek@redhat.com> - 211.7442.40-16
- Rebuilt for java-25-openjdk as preffered jdk
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 211.7442.40-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 211.7442.40-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Wed Jul 24 2024 Miroslav Suchý <msuchy@redhat.com> - 211.7442.40-13
- convert license to SPDX
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 211.7442.40-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Tue Feb 27 2024 Jiri Vanek <jvanek@redhat.com> - 211.7442.40-11
- Rebuilt for java-21-openjdk as system jdk
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 211.7442.40-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 211.7442.40-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 211.7442.40-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 211.7442.40-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 211.7442.40-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Jul 08 2022 Jiri Vanek <jvanek@redhat.com> - 211.7442.40-5
- Rebuilt for Drop i686 JDKs
* Sat Feb 05 2022 Jiri Vanek <jvanek@redhat.com> - 211.7442.40-4
- Rebuilt for java-17-openjdk as system jdk
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 211.7442.40-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 211.7442.40-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Wed Jun 02 2021 Marian Koncek <mkoncek@redhat.com> - 211.7442.40-1
- Update to upstream version 211.7442.40
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 183.5153.8-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Thu Dec 10 2020 Jiri Vanek <jvanek@redhat.com> - 183.5153.8-9
- set source/target of 8
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 183.5153.8-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jul 10 2020 Jiri Vanek <jvanek@redhat.com> - 183.5153.8-7
- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11
* Tue Feb 18 2020 Jiri Vanek <jvanek@redhat.com> - 183.5153.8-6
- moved to gradle-less build
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 183.5153.8-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 183.5153.8-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 183.5153.8-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jan 18 2019 Jiri Vanek <jvanek@redhat.com> - 183.5153.8-2
- added virtual provides of fernflower-decompiler and fernflower-decompiler-javadoc
* Wed Jan 09 2019 Jiri Vanek <jvanek@redhat.com> - 183.5153.8-1
- initial package

13
port_to_java_8.patch Normal file
View file

@ -0,0 +1,13 @@
diff --git a/src/org/jetbrains/java/decompiler/util/SFormsFastMapDirect.java b/src/org/jetbrains/java/decompiler/util/SFormsFastMapDirect.java
index bb8b4dd..30fcb9b 100644
--- a/src/org/jetbrains/java/decompiler/util/SFormsFastMapDirect.java
+++ b/src/org/jetbrains/java/decompiler/util/SFormsFastMapDirect.java
@@ -342,7 +342,7 @@ public class SFormsFastMapDirect {
if (ent != null) {
final int key = i == 0 ? ikey : (i == 1 ? ikey + VarExprent.STACK_BASE : -ikey);
- list.add(new Entry<>() {
+ list.add(new Entry<Integer, FastSparseSet<Integer>>() {
private final Integer var = key;
private final FastSparseSet<Integer> val = ent;

View file

@ -1,13 +1,13 @@
--- build.gradle 2018-12-24 11:27:21.000000000 +0100
+++ build.gradle.orig 2019-01-02 15:29:35.875645761 +0100
@@ -10,15 +10,6 @@
--- build.gradle 2021-05-31 12:00:45.000000000 +0200
+++ build.gradle.rej 2021-06-02 14:27:41.778875605 +0200
@@ -11,15 +11,6 @@
test.java.srcDirs 'test'
}
-repositories { jcenter() }
-dependencies {
- testCompile 'junit:junit:4.+'
- testCompile 'org.assertj:assertj-core:3.+'
- testCompile 'junit:junit:4.12'
- testCompile 'org.assertj:assertj-core:3.12.2'
-}
-
jar {
@ -15,6 +15,4 @@
- manifest {
- attributes 'Main-Class': 'org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler'
- }
-}
\ No newline at end of file
+}
}

View file

@ -1 +1 @@
SHA512 (fernflower-183.5153.8.tar.gz) = efaa1dc107ba62e38cda59fdfddfd6f5d22d01ecbd22bdeff29ec3a57622309e5f89a7025af52f018f7250b6d840bb7ccd64a4a51dc92bbc470911d1b289372a
SHA512 (fernflower-211.7442.40.tar.gz) = 54138ec2987f27887dc7a882d0e4d5bf6a1a7c4d9f8e73bafd7cd957181779bb59a413117cd65dd29973c9072f5b89f797c78581113f83043191894b0631ab31