Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1
@ 2022-07-30 15:51 2asoft
  2022-07-30 16:01 ` 2asoft
                   ` (36 more replies)
  0 siblings, 37 replies; 38+ messages in thread
From: 2asoft @ 2022-07-30 15:51 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1021 bytes --]

There is a new pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.3b526.1
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 10102 bytes --]

From 488589f06d2519124fc5c4ba88b2933914b34b37 Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH] New package: jetbrains-jdk17-17.0.3b526.1

---
 srcpkgs/jetbrains-jdk17/INSTALL.msg           |  29 +++++
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 109 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   5 +
 4 files changed, 207 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/INSTALL.msg
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/INSTALL.msg b/srcpkgs/jetbrains-jdk17/INSTALL.msg
new file mode 100644
index 000000000000..21f1f57c16d2
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/INSTALL.msg
@@ -0,0 +1,29 @@
+JDK17 is not fully supported by JetBrains' IDEs prior to v2022.2.
+There is anecdotal evidence that JDK17 is in general more performant, so it may be desirable to use it despite incomplete support.
+
+It is necessary to add the following to the vmoptions file for any of the JetBrains' IDEs you use in order for the IDE to start:
+
+--illegal-access=warn
+-Dsun.java2d.metal=true
+--add-opens=java.base/java.lang=ALL-UNNAMED
+--add-opens=java.base/java.util=ALL-UNNAMED
+--add-opens=java.desktop/java.awt.event=ALL-UNNAMED
+--add-opens=java.desktop/java.awt.peer=ALL-UNNAMED
+--add-opens=java.desktop/java.awt=ALL-UNNAMED
+--add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED
+--add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED
+--add-opens=java.desktop/javax.swing=ALL-UNNAMED
+--add-opens=java.desktop/sun.awt=ALL-UNNAMED
+--add-opens=java.desktop/sun.awt.datatransfer=ALL-UNNAMED
+--add-opens=java.desktop/sun.awt.image=ALL-UNNAMED
+--add-opens=java.desktop/sun.awt.X11=ALL-UNNAMED
+--add-opens=java.desktop/sun.font=ALL-UNNAMED
+--add-opens=java.desktop/sun.swing=ALL-UNNAMED
+--add-exports=java.desktop/sun.awt=ALL-UNNAMED
+--add-exports=java.desktop/sun.awt.datatransfer=ALL-UNNAMED
+--add-exports=java.desktop/sun.awt.image=ALL-UNNAMED
+--add-exports=java.desktop/sun.awt.X11=ALL-UNNAMED
+
+
+Original idea taken from https://mustafaakin.dev/posts/2021-12-08-running-intellij-idea-with-jdk17-for-better-render-performance/.
+MacOS namespaces removed, new namespaces added as necessary.
diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..88e4079bf714
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,109 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.3b526.1
+revision=1
+archs="x86_64"
+_jdk_ver=${version%b*}
+_jdk_build=${version#*b}
+_tag_name="jb${_jdk_ver}-b${_jdk_build}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${_jdk_build}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+makedepends="pkg-config zip bzip2 unzip tar wget make autoconf automake libtool alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel file which libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel git make-ca"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz"
+checksum=aab60e37c10fb1c122397855fa448e285b241fcff1731342b659ac0e6ecff3ae
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build is still parallel, but don't use -jN.
+disable_parallel_build=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..b8a971d471d5
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,5 @@
+_jdk_ver=${version%b*}
+_jdk_build=${version#*b}
+version=${_jdk_ver}-b${_jdk_build}
+pattern="/releases/tag/jb\K17.\d+.\d+-b\d+(\.\d+)?(?=\")"
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: New package: jetbrains-jdk17-17.0.3b526.1
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
@ 2022-07-30 16:01 ` 2asoft
  2022-07-30 16:03 ` [PR PATCH] [Updated] " 2asoft
                   ` (35 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-07-30 16:01 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 503 bytes --]

New comment by 2asoft on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#issuecomment-1200242991

Comment:
This was previously attempted at #34780, and was decided to be delayed until it became necessary.
With 2022.2 branch of Jetbrains products, this is the necessary version of the runtime.

I will create PRs for individual software, switching them to this version, and eventually `jetbrains-jdk-bin` will need to be deleted.

Ive verified this version locally.

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.3b526.1
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
  2022-07-30 16:01 ` 2asoft
@ 2022-07-30 16:03 ` 2asoft
  2022-07-30 16:08 ` 2asoft
                   ` (34 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-07-30 16:03 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1026 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.3b526.1
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 8264 bytes --]

From caf1c33f8978d3ef4124165229704006575ecdb5 Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH] New package: jetbrains-jdk17-17.0.3b526.1

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 109 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   5 +
 3 files changed, 178 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..88e4079bf714
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,109 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.3b526.1
+revision=1
+archs="x86_64"
+_jdk_ver=${version%b*}
+_jdk_build=${version#*b}
+_tag_name="jb${_jdk_ver}-b${_jdk_build}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${_jdk_build}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+makedepends="pkg-config zip bzip2 unzip tar wget make autoconf automake libtool alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel file which libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel git make-ca"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz"
+checksum=aab60e37c10fb1c122397855fa448e285b241fcff1731342b659ac0e6ecff3ae
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build is still parallel, but don't use -jN.
+disable_parallel_build=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..b8a971d471d5
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,5 @@
+_jdk_ver=${version%b*}
+_jdk_build=${version#*b}
+version=${_jdk_ver}-b${_jdk_build}
+pattern="/releases/tag/jb\K17.\d+.\d+-b\d+(\.\d+)?(?=\")"
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: New package: jetbrains-jdk17-17.0.3b526.1
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
  2022-07-30 16:01 ` 2asoft
  2022-07-30 16:03 ` [PR PATCH] [Updated] " 2asoft
@ 2022-07-30 16:08 ` 2asoft
  2022-07-31  2:19 ` 2asoft
                   ` (33 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-07-30 16:08 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 595 bytes --]

New comment by 2asoft on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#issuecomment-1200242991

Comment:
This was previously attempted at #34780, and was decided to be delayed until it became necessary.
With 2022.2 branch of Jetbrains products, this is the necessary version of the runtime.

I will create PRs for individual software, switching them to this version, and eventually `jetbrains-jdk-bin` will need to be deleted.

I plan to eventually get the build patch committed to the OpenJDK; it is a long process.

Ive verified this version locally.

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: New package: jetbrains-jdk17-17.0.3b526.1
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (2 preceding siblings ...)
  2022-07-30 16:08 ` 2asoft
@ 2022-07-31  2:19 ` 2asoft
  2022-07-31  2:29 ` classabbyamp
                   ` (32 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-07-31  2:19 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 374 bytes --]

New comment by 2asoft on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#issuecomment-1200333308

Comment:
@classabbyamp I see you authored the OpenJDK port.
I need some help with the build here -- it works locally (once the included patch is applied), but complains in ci that `-jN` must not be used; as far as I can tell, it is not used.

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: New package: jetbrains-jdk17-17.0.3b526.1
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (3 preceding siblings ...)
  2022-07-31  2:19 ` 2asoft
@ 2022-07-31  2:29 ` classabbyamp
  2022-07-31  2:53 ` [PR PATCH] [Updated] " 2asoft
                   ` (31 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: classabbyamp @ 2022-07-31  2:29 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 228 bytes --]

New comment by classabbyamp on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#issuecomment-1200334278

Comment:
add `disable_parallel_check=yes`, that's changed since I lasted updated openjdk17

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.3b526.1
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (4 preceding siblings ...)
  2022-07-31  2:29 ` classabbyamp
@ 2022-07-31  2:53 ` 2asoft
  2022-07-31  5:25 ` classabbyamp
                   ` (30 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-07-31  2:53 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1026 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.3b526.1
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 8303 bytes --]

From 68dfd01d9f1b4557912b60c051b36aae05ab2cc6 Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH] New package: jetbrains-jdk17-17.0.3b526.1

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 110 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   5 +
 3 files changed, 179 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..1981b3279f13
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,110 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.3b526.1
+revision=1
+archs="x86_64"
+_jdk_ver=${version%b*}
+_jdk_build=${version#*b}
+_tag_name="jb${_jdk_ver}-b${_jdk_build}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${_jdk_build}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+makedepends="pkg-config zip bzip2 unzip tar wget make autoconf automake libtool alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel file which libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel git make-ca"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz"
+checksum=aab60e37c10fb1c122397855fa448e285b241fcff1731342b659ac0e6ecff3ae
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build and check are still parallel, but don't use -jN.
+disable_parallel_build=yes
+disable_parallel_check=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..b8a971d471d5
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,5 @@
+_jdk_ver=${version%b*}
+_jdk_build=${version#*b}
+version=${_jdk_ver}-b${_jdk_build}
+pattern="/releases/tag/jb\K17.\d+.\d+-b\d+(\.\d+)?(?=\")"
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: New package: jetbrains-jdk17-17.0.3b526.1
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (5 preceding siblings ...)
  2022-07-31  2:53 ` [PR PATCH] [Updated] " 2asoft
@ 2022-07-31  5:25 ` classabbyamp
  2022-07-31  5:35 ` 2asoft
                   ` (29 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: classabbyamp @ 2022-07-31  5:25 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 225 bytes --]

New comment by classabbyamp on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#issuecomment-1200351869

Comment:
you probably want to add `--with-jobs=${XBPS_ORIG_MAKEJOBS}` to configure_args

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: New package: jetbrains-jdk17-17.0.3b526.1
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (6 preceding siblings ...)
  2022-07-31  5:25 ` classabbyamp
@ 2022-07-31  5:35 ` 2asoft
  2022-07-31  5:38 ` classabbyamp
                   ` (28 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-07-31  5:35 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 337 bytes --]

New comment by 2asoft on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#issuecomment-1200352868

Comment:
> you probably want to add `--with-jobs=${XBPS_ORIG_MAKEJOBS}` to configure_args

I can make the change, but I wonder if there is a way for me to repro this locally so I can not-waste your time?

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: New package: jetbrains-jdk17-17.0.3b526.1
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (7 preceding siblings ...)
  2022-07-31  5:35 ` 2asoft
@ 2022-07-31  5:38 ` classabbyamp
  2022-08-23  3:43 ` [PR PATCH] [Updated] " 2asoft
                   ` (27 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: classabbyamp @ 2022-07-31  5:38 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 276 bytes --]

New comment by classabbyamp on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#issuecomment-1200353127

Comment:
to run the check stage locally, use `./xbps-src check` or the `-Q` flag with another `./xbps-src` command like `pkg` or `install`

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.3b526.1
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (8 preceding siblings ...)
  2022-07-31  5:38 ` classabbyamp
@ 2022-08-23  3:43 ` 2asoft
  2022-09-09 17:11 ` 2asoft
                   ` (26 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-08-23  3:43 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1026 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.3b526.1
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 8592 bytes --]

From a337dfe0ef09cfc9b74f2021dfad21e565f372ef Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH] New package: jetbrains-jdk17-17.0.3b526.1

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 116 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   5 +
 3 files changed, 185 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..5cbb5709ed9e
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,116 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.3b526.1
+revision=1
+_gtest_ver=1.8.1
+archs="x86_64"
+_jdk_ver=${version%b*}
+_jdk_build=${version#*b}
+_tag_name="jb${_jdk_ver}-b${_jdk_build}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${_jdk_build}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+ --with-debug-level=release
+ --with-jobs=${XBPS_ORIG_MAKEJOBS}
+ --with-gtest=../googletest-release-${_gtest_ver}
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+makedepends="pkg-config zip bzip2 unzip tar wget make autoconf automake libtool alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel file which libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel git make-ca"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
+ https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
+checksum="aab60e37c10fb1c122397855fa448e285b241fcff1731342b659ac0e6ecff3ae
+ 9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build and check are still parallel, but don't use -jN.
+disable_parallel_build=yes
+disable_parallel_check=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..b8a971d471d5
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,5 @@
+_jdk_ver=${version%b*}
+_jdk_build=${version#*b}
+version=${_jdk_ver}-b${_jdk_build}
+pattern="/releases/tag/jb\K17.\d+.\d+-b\d+(\.\d+)?(?=\")"
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.3b526.1
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (9 preceding siblings ...)
  2022-08-23  3:43 ` [PR PATCH] [Updated] " 2asoft
@ 2022-09-09 17:11 ` 2asoft
  2022-09-09 17:12 ` 2asoft
                   ` (25 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-09-09 17:11 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1026 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.3b526.1
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 9846 bytes --]

From 9ef9cbf7f1336d6cc6cf3f306b280ddf276e94fb Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH 1/2] New package: jetbrains-jdk17-17.0.3b526.1

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 116 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   5 +
 3 files changed, 185 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..5cbb5709ed9e
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,116 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.3b526.1
+revision=1
+_gtest_ver=1.8.1
+archs="x86_64"
+_jdk_ver=${version%b*}
+_jdk_build=${version#*b}
+_tag_name="jb${_jdk_ver}-b${_jdk_build}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${_jdk_build}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+ --with-debug-level=release
+ --with-jobs=${XBPS_ORIG_MAKEJOBS}
+ --with-gtest=../googletest-release-${_gtest_ver}
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+makedepends="pkg-config zip bzip2 unzip tar wget make autoconf automake libtool alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel file which libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel git make-ca"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
+ https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
+checksum="aab60e37c10fb1c122397855fa448e285b241fcff1731342b659ac0e6ecff3ae
+ 9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build and check are still parallel, but don't use -jN.
+disable_parallel_build=yes
+disable_parallel_check=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..b8a971d471d5
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,5 @@
+_jdk_ver=${version%b*}
+_jdk_build=${version#*b}
+version=${_jdk_ver}-b${_jdk_build}
+pattern="/releases/tag/jb\K17.\d+.\d+-b\d+(\.\d+)?(?=\")"
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

From e3a6ba636474f2e0267b9e72846913134d47ef3d Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Fri, 9 Sep 2022 10:08:27 -0700
Subject: [PATCH 2/2] jetbrains-jdk17: update to 17.0.4b469.54.

---
 srcpkgs/jetbrains-jdk17/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
index 5cbb5709ed9e..67397b86100e 100644
--- a/srcpkgs/jetbrains-jdk17/template
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -1,6 +1,6 @@
 # Template file for 'jetbrains-jdk17'
 pkgname=jetbrains-jdk17
-version=17.0.3b526.1
+version=17.0.4b469.54
 revision=1
 _gtest_ver=1.8.1
 archs="x86_64"
@@ -43,7 +43,7 @@ license="GPL-2.0-only, Classpath-exception-2.0"
 homepage="https://github.com/JetBrains/JetBrainsRuntime"
 distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
  https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
-checksum="aab60e37c10fb1c122397855fa448e285b241fcff1731342b659ac0e6ecff3ae
+checksum="389f0cb0a5b68b2814ea34df6b92d446420430160e14f32e7bced4f9f7d37482
  9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
 conflicts="jetbrains-jdk-bin"
 

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.3b526.1
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (10 preceding siblings ...)
  2022-09-09 17:11 ` 2asoft
@ 2022-09-09 17:12 ` 2asoft
  2022-09-16 20:15 ` [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.4b469.54 2asoft
                   ` (24 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-09-09 17:12 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1026 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.3b526.1
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 8595 bytes --]

From 81aeefb1e26a88be1d61887b0d0df21e989e953c Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH] New package: jetbrains-jdk17-17.0.4b469.54.

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 116 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   5 +
 3 files changed, 185 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..67397b86100e
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,116 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.4b469.54
+revision=1
+_gtest_ver=1.8.1
+archs="x86_64"
+_jdk_ver=${version%b*}
+_jdk_build=${version#*b}
+_tag_name="jb${_jdk_ver}-b${_jdk_build}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${_jdk_build}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+ --with-debug-level=release
+ --with-jobs=${XBPS_ORIG_MAKEJOBS}
+ --with-gtest=../googletest-release-${_gtest_ver}
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+makedepends="pkg-config zip bzip2 unzip tar wget make autoconf automake libtool alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel file which libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel git make-ca"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
+ https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
+checksum="389f0cb0a5b68b2814ea34df6b92d446420430160e14f32e7bced4f9f7d37482
+ 9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build and check are still parallel, but don't use -jN.
+disable_parallel_build=yes
+disable_parallel_check=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..b8a971d471d5
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,5 @@
+_jdk_ver=${version%b*}
+_jdk_build=${version#*b}
+version=${_jdk_ver}-b${_jdk_build}
+pattern="/releases/tag/jb\K17.\d+.\d+-b\d+(\.\d+)?(?=\")"
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (11 preceding siblings ...)
  2022-09-09 17:12 ` 2asoft
@ 2022-09-16 20:15 ` 2asoft
  2022-09-16 20:20 ` 2asoft
                   ` (23 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-09-16 20:15 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1027 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.4b469.54
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 8595 bytes --]

From 5a87c31652edf53e9426df4ba0a924f6e71c6840 Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH] New package: jetbrains-jdk17-17.0.4b469.54.

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 116 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   5 +
 3 files changed, 185 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..67397b86100e
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,116 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.4b469.54
+revision=1
+_gtest_ver=1.8.1
+archs="x86_64"
+_jdk_ver=${version%b*}
+_jdk_build=${version#*b}
+_tag_name="jb${_jdk_ver}-b${_jdk_build}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${_jdk_build}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+ --with-debug-level=release
+ --with-jobs=${XBPS_ORIG_MAKEJOBS}
+ --with-gtest=../googletest-release-${_gtest_ver}
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+makedepends="pkg-config zip bzip2 unzip tar wget make autoconf automake libtool alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel file which libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel git make-ca"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
+ https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
+checksum="389f0cb0a5b68b2814ea34df6b92d446420430160e14f32e7bced4f9f7d37482
+ 9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build and check are still parallel, but don't use -jN.
+disable_parallel_build=yes
+disable_parallel_check=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..b8a971d471d5
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,5 @@
+_jdk_ver=${version%b*}
+_jdk_build=${version#*b}
+version=${_jdk_ver}-b${_jdk_build}
+pattern="/releases/tag/jb\K17.\d+.\d+-b\d+(\.\d+)?(?=\")"
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (12 preceding siblings ...)
  2022-09-16 20:15 ` [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.4b469.54 2asoft
@ 2022-09-16 20:20 ` 2asoft
  2022-09-19  5:09 ` [PR REVIEW] " classabbyamp
                   ` (22 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-09-16 20:20 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 294 bytes --]

New comment by 2asoft on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#issuecomment-1249777409

Comment:
Would appreciate a review on this, JetBrains' IDEs' latest versions(2022) need this.
I've been using this at $DAY_JOB for a couple months without issue.

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR REVIEW] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (15 preceding siblings ...)
  2022-09-19  5:09 ` classabbyamp
@ 2022-09-19  5:09 ` classabbyamp
  2022-09-19  5:09 ` classabbyamp
                   ` (19 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: classabbyamp @ 2022-09-19  5:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 202 bytes --]

New review comment by classabbyamp on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#discussion_r973864626

Comment:
```suggestion
_tag_name="jb${version//b/-b}"
```

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR REVIEW] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (13 preceding siblings ...)
  2022-09-16 20:20 ` 2asoft
@ 2022-09-19  5:09 ` classabbyamp
  2022-09-19  5:09 ` classabbyamp
                   ` (21 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: classabbyamp @ 2022-09-19  5:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 423 bytes --]

New review comment by classabbyamp on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#discussion_r973855013

Comment:
> `pkg-config zip bzip2 unzip tar wget make autoconf automake libtool git make-ca file which`

all of these should be `hostmakedepends`, but:

> `make`

this is in `base-devel` and doesn't need to be specified

> `git bzip2 tar wget file`

why are these needed?

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR REVIEW] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (19 preceding siblings ...)
  2022-09-19  5:09 ` classabbyamp
@ 2022-09-19  5:09 ` classabbyamp
  2022-10-08  8:42 ` [PR PATCH] [Updated] " 2asoft
                   ` (15 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: classabbyamp @ 2022-09-19  5:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 202 bytes --]

New review comment by classabbyamp on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#discussion_r973866087

Comment:
does the default `do_install()` not work properly?

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR REVIEW] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (16 preceding siblings ...)
  2022-09-19  5:09 ` classabbyamp
@ 2022-09-19  5:09 ` classabbyamp
  2022-09-19  5:09 ` classabbyamp
                   ` (18 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: classabbyamp @ 2022-09-19  5:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 223 bytes --]

New review comment by classabbyamp on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#discussion_r973865085

Comment:
```suggestion
 --with-version-opt=${version#*b}-void-r${revision}
```

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR REVIEW] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (17 preceding siblings ...)
  2022-09-19  5:09 ` classabbyamp
@ 2022-09-19  5:09 ` classabbyamp
  2022-09-19  5:09 ` classabbyamp
                   ` (17 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: classabbyamp @ 2022-09-19  5:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 258 bytes --]

New review comment by classabbyamp on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#discussion_r973864227

Comment:
```suggestion
version="${_tag_name}"
pattern='/archive/refs/tags/jb\K17[\d.]+-b[\d.]+(?=\.tar\.gz)'
```

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR REVIEW] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (14 preceding siblings ...)
  2022-09-19  5:09 ` [PR REVIEW] " classabbyamp
@ 2022-09-19  5:09 ` classabbyamp
  2022-09-19  5:09 ` classabbyamp
                   ` (20 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: classabbyamp @ 2022-09-19  5:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 298 bytes --]

New review comment by classabbyamp on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#discussion_r973852472

Comment:
```suggestion
create_wrksrc=yes
build_wrksrc="JetBrainsRuntime-${_tag_name}"
```
this will also require `patch_args="-Np1 -d ${build_wrksrc}"`

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR REVIEW] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (18 preceding siblings ...)
  2022-09-19  5:09 ` classabbyamp
@ 2022-09-19  5:09 ` classabbyamp
  2022-09-19  5:09 ` classabbyamp
                   ` (16 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: classabbyamp @ 2022-09-19  5:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 188 bytes --]

New review comment by classabbyamp on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#discussion_r973852226

Comment:
this is for java's certificate store

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (20 preceding siblings ...)
  2022-09-19  5:09 ` classabbyamp
@ 2022-10-08  8:42 ` 2asoft
  2022-10-08  9:05 ` 2asoft
                   ` (14 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-10-08  8:42 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1027 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.4b469.54
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 8522 bytes --]

From d5e9845d5bc8a33a5e402be3ecb517f2e49c6f59 Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH] New package: jetbrains-jdk17-17.0.4.1b629.2.

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 117 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   2 +
 3 files changed, 183 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..496add7c2dcb
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,117 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.4.1b629.2
+revision=1
+_gtest_ver=1.8.1
+archs="x86_64"
+_tag_name="jbr-release-${version}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+create_wrksrc=yes
+build_wrksrc="JetBrainsRuntime-${_tag_name}"
+patch_args="-Np1 -d ${build_wrksrc}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${version#*b}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+ --with-debug-level=release
+ --with-jobs=${XBPS_ORIG_MAKEJOBS}
+ --with-gtest=../googletest-release-${_gtest_ver}
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+hostmakedepends="pkg-config zip unzip autoconf automake libtool which make-ca"
+makedepends="alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
+ https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
+checksum="c850cc90c8980b00866bb47d2e9f13700f419dd8867892706342aba850127138
+ 9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build and check are still parallel, but don't use -jN.
+disable_parallel_build=yes
+disable_parallel_check=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..215972d02843
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,2 @@
+pattern='/archive/refs/tags/jbr-release-\K17[\d.]+b[\d.]+(?=\.tar\.gz)'
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (21 preceding siblings ...)
  2022-10-08  8:42 ` [PR PATCH] [Updated] " 2asoft
@ 2022-10-08  9:05 ` 2asoft
  2022-10-31  6:58 ` 2asoft
                   ` (13 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-10-08  9:05 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1027 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.4b469.54
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 8522 bytes --]

From 96797dd48d6ec85dd835f513d32a68c6cdd74f5f Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH] New package: jetbrains-jdk17-17.0.4.1b629.2.

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 117 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   2 +
 3 files changed, 183 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..a946fb1b98c3
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,117 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.4.1b629.2
+revision=1
+_gtest_ver=1.8.1
+archs="x86_64"
+_tag_name="jbr-release-${version}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+create_wrksrc=yes
+build_wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${version#*b}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+ --with-debug-level=release
+ --with-jobs=${XBPS_ORIG_MAKEJOBS}
+ --with-gtest=../googletest-release-${_gtest_ver}
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+hostmakedepends="pkg-config zip unzip autoconf automake libtool which make-ca"
+makedepends="alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
+ https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
+checksum="c850cc90c8980b00866bb47d2e9f13700f419dd8867892706342aba850127138
+ 9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
+patch_args="-Np1 -d ${build_wrksrc}"
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build and check are still parallel, but don't use -jN.
+disable_parallel_build=yes
+disable_parallel_check=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..215972d02843
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,2 @@
+pattern='/archive/refs/tags/jbr-release-\K17[\d.]+b[\d.]+(?=\.tar\.gz)'
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (22 preceding siblings ...)
  2022-10-08  9:05 ` 2asoft
@ 2022-10-31  6:58 ` 2asoft
  2022-10-31  8:09 ` 2asoft
                   ` (12 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-10-31  6:58 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1027 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.4b469.54
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 8522 bytes --]

From 8df95e162f0bc9d581257745c56217b7ebca6fe2 Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH] New package: jetbrains-jdk17-17.0.4.1b629.2.

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 117 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   2 +
 3 files changed, 183 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..a946fb1b98c3
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,117 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.4.1b629.2
+revision=1
+_gtest_ver=1.8.1
+archs="x86_64"
+_tag_name="jbr-release-${version}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+create_wrksrc=yes
+build_wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${version#*b}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+ --with-debug-level=release
+ --with-jobs=${XBPS_ORIG_MAKEJOBS}
+ --with-gtest=../googletest-release-${_gtest_ver}
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+hostmakedepends="pkg-config zip unzip autoconf automake libtool which make-ca"
+makedepends="alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
+ https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
+checksum="c850cc90c8980b00866bb47d2e9f13700f419dd8867892706342aba850127138
+ 9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
+patch_args="-Np1 -d ${build_wrksrc}"
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build and check are still parallel, but don't use -jN.
+disable_parallel_build=yes
+disable_parallel_check=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..215972d02843
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,2 @@
+pattern='/archive/refs/tags/jbr-release-\K17[\d.]+b[\d.]+(?=\.tar\.gz)'
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (23 preceding siblings ...)
  2022-10-31  6:58 ` 2asoft
@ 2022-10-31  8:09 ` 2asoft
  2022-11-10 13:33 ` 2asoft
                   ` (11 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-10-31  8:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1027 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.4b469.54
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 8522 bytes --]

From d17a639126d13f78aa6bc23208e72efd3341a8da Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH] New package: jetbrains-jdk17-17.0.4.1b653.1.

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 117 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   2 +
 3 files changed, 183 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..eb0dae960025
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,117 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.4.1b653.1
+revision=1
+_gtest_ver=1.8.1
+archs="x86_64"
+_tag_name="jbr-release-${version}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+create_wrksrc=yes
+build_wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${version#*b}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+ --with-debug-level=release
+ --with-jobs=${XBPS_ORIG_MAKEJOBS}
+ --with-gtest=../googletest-release-${_gtest_ver}
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+hostmakedepends="pkg-config zip unzip autoconf automake libtool which make-ca"
+makedepends="alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
+ https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
+checksum="3aa4e853afe36bc9118e81394fe6e0e90e5bf0e47ae5c42bcc7772bb87ae846b
+ 9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
+patch_args="-Np1 -d ${build_wrksrc}"
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build and check are still parallel, but don't use -jN.
+disable_parallel_build=yes
+disable_parallel_check=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..215972d02843
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,2 @@
+pattern='/archive/refs/tags/jbr-release-\K17[\d.]+b[\d.]+(?=\.tar\.gz)'
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (24 preceding siblings ...)
  2022-10-31  8:09 ` 2asoft
@ 2022-11-10 13:33 ` 2asoft
  2022-12-07 18:33 ` 2asoft
                   ` (10 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-11-10 13:33 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1027 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.4b469.54
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 8520 bytes --]

From 4770b5b2fb7ea261e7246822e931bb86028f262b Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH] New package: jetbrains-jdk17-17.0.5b653.12.

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 117 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   2 +
 3 files changed, 183 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..8725065a82bb
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,117 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.5b653.12
+revision=1
+_gtest_ver=1.8.1
+archs="x86_64"
+_tag_name="jbr-release-${version}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+create_wrksrc=yes
+build_wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${version#*b}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+ --with-debug-level=release
+ --with-jobs=${XBPS_ORIG_MAKEJOBS}
+ --with-gtest=../googletest-release-${_gtest_ver}
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+hostmakedepends="pkg-config zip unzip autoconf automake libtool which make-ca"
+makedepends="alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
+ https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
+checksum="8798a4e6fd547d8a6cbb0d647afc9f52182a3263aa42e373e74ab37c543189e9
+ 9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
+patch_args="-Np1 -d ${build_wrksrc}"
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build and check are still parallel, but don't use -jN.
+disable_parallel_build=yes
+disable_parallel_check=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..215972d02843
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,2 @@
+pattern='/archive/refs/tags/jbr-release-\K17[\d.]+b[\d.]+(?=\.tar\.gz)'
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (25 preceding siblings ...)
  2022-11-10 13:33 ` 2asoft
@ 2022-12-07 18:33 ` 2asoft
  2023-01-14  5:05 ` 2asoft
                   ` (9 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2022-12-07 18:33 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1027 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.4b469.54
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 8520 bytes --]

From 4aab09a13555c54a2222d6d86f7658e671d86eb3 Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH] New package: jetbrains-jdk17-17.0.5b653.14.

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 117 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   2 +
 3 files changed, 183 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..a375bf4b27b6
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,117 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.5b653.14
+revision=1
+_gtest_ver=1.8.1
+archs="x86_64"
+_tag_name="jbr-release-${version}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+create_wrksrc=yes
+build_wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${version#*b}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+ --with-debug-level=release
+ --with-jobs=${XBPS_ORIG_MAKEJOBS}
+ --with-gtest=../googletest-release-${_gtest_ver}
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+hostmakedepends="pkg-config zip unzip autoconf automake libtool which make-ca"
+makedepends="alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
+ https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
+checksum="8085a422482d51b0bc89c8863436d1ce61252cbca2bb0b314db8daf67e3c7e2e
+ 9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
+patch_args="-Np1 -d ${build_wrksrc}"
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build and check are still parallel, but don't use -jN.
+disable_parallel_build=yes
+disable_parallel_check=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..215972d02843
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,2 @@
+pattern='/archive/refs/tags/jbr-release-\K17[\d.]+b[\d.]+(?=\.tar\.gz)'
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (26 preceding siblings ...)
  2022-12-07 18:33 ` 2asoft
@ 2023-01-14  5:05 ` 2asoft
  2023-02-10  8:00 ` 2asoft
                   ` (8 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2023-01-14  5:05 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1027 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.4b469.54
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 8518 bytes --]

From 1a16a4f6cf441b186bc53afad5c54ac54cb2917c Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH] New package: jetbrains-jdk17-17.0.5b759.1.

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 117 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   2 +
 3 files changed, 183 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..4b63ed2da607
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,117 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.5b759.1
+revision=1
+_gtest_ver=1.8.1
+archs="x86_64"
+_tag_name="jbr-release-${version}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+create_wrksrc=yes
+build_wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${version#*b}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+ --with-debug-level=release
+ --with-jobs=${XBPS_ORIG_MAKEJOBS}
+ --with-gtest=../googletest-release-${_gtest_ver}
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+hostmakedepends="pkg-config zip unzip autoconf automake libtool which make-ca"
+makedepends="alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
+ https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
+checksum="25766e1f8bccd6e6b4b863a98b78309f3847434eff24461adc97da0b35a61dbb
+ 9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
+patch_args="-Np1 -d ${build_wrksrc}"
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build and check are still parallel, but don't use -jN.
+disable_parallel_build=yes
+disable_parallel_check=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..215972d02843
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,2 @@
+pattern='/archive/refs/tags/jbr-release-\K17[\d.]+b[\d.]+(?=\.tar\.gz)'
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (27 preceding siblings ...)
  2023-01-14  5:05 ` 2asoft
@ 2023-02-10  8:00 ` 2asoft
  2023-02-10  8:07 ` 2asoft
                   ` (7 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2023-02-10  8:00 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1027 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.4b469.54
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 10346 bytes --]

From d1d68daa5a2e8c94cdb01f8fd33a3894f8e5aea6 Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH 1/3] New package: jetbrains-jdk17-17.0.5b759.1.

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 117 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   2 +
 3 files changed, 183 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..4b63ed2da607
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,117 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.5b759.1
+revision=1
+_gtest_ver=1.8.1
+archs="x86_64"
+_tag_name="jbr-release-${version}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+create_wrksrc=yes
+build_wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${version#*b}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+ --with-debug-level=release
+ --with-jobs=${XBPS_ORIG_MAKEJOBS}
+ --with-gtest=../googletest-release-${_gtest_ver}
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+hostmakedepends="pkg-config zip unzip autoconf automake libtool which make-ca"
+makedepends="alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
+ https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
+checksum="25766e1f8bccd6e6b4b863a98b78309f3847434eff24461adc97da0b35a61dbb
+ 9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
+patch_args="-Np1 -d ${build_wrksrc}"
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build and check are still parallel, but don't use -jN.
+disable_parallel_build=yes
+disable_parallel_check=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..215972d02843
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,2 @@
+pattern='/archive/refs/tags/jbr-release-\K17[\d.]+b[\d.]+(?=\.tar\.gz)'
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

From 32fa4d298e1db4020b9ad5078246ea29db939ea8 Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Thu, 9 Feb 2023 23:15:48 -0800
Subject: [PATCH 2/3] jetbrains-jdk17: update to 17.0.5b759.1.

---
 srcpkgs/jetbrains-jdk17/template | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
index 4b63ed2da607..408deadad107 100644
--- a/srcpkgs/jetbrains-jdk17/template
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -56,14 +56,8 @@ noverifyrdeps=yes
 disable_parallel_build=yes
 disable_parallel_check=yes
 
-# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
-if [ ! "$CROSS_BUILD" ]; then
-	makedepends+=" openjdk16-bootstrap"
-	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
-else
-	makedepends+=" openjdk17"
-	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
-fi
+makedepends+=" openjdk17"
+configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
 configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
 
 do_configure() {

From 2164010692201fcca5990826d3087d9e72b9986f Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Fri, 10 Feb 2023 00:00:58 -0800
Subject: [PATCH 3/3] jetbrains-jdk17: update to 17.0.6b802.1.

---
 srcpkgs/jetbrains-jdk17/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
index 408deadad107..ec778f90068f 100644
--- a/srcpkgs/jetbrains-jdk17/template
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -1,6 +1,6 @@
 # Template file for 'jetbrains-jdk17'
 pkgname=jetbrains-jdk17
-version=17.0.5b759.1
+version=17.0.6b802.1
 revision=1
 _gtest_ver=1.8.1
 archs="x86_64"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (28 preceding siblings ...)
  2023-02-10  8:00 ` 2asoft
@ 2023-02-10  8:07 ` 2asoft
  2023-03-17  1:43 ` dontlaugh
                   ` (6 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2023-02-10  8:07 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1027 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.4b469.54
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 10946 bytes --]

From d1d68daa5a2e8c94cdb01f8fd33a3894f8e5aea6 Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH 1/3] New package: jetbrains-jdk17-17.0.5b759.1.

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 117 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   2 +
 3 files changed, 183 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..4b63ed2da607
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,117 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.5b759.1
+revision=1
+_gtest_ver=1.8.1
+archs="x86_64"
+_tag_name="jbr-release-${version}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+create_wrksrc=yes
+build_wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${version#*b}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+ --with-debug-level=release
+ --with-jobs=${XBPS_ORIG_MAKEJOBS}
+ --with-gtest=../googletest-release-${_gtest_ver}
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+hostmakedepends="pkg-config zip unzip autoconf automake libtool which make-ca"
+makedepends="alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
+ https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
+checksum="25766e1f8bccd6e6b4b863a98b78309f3847434eff24461adc97da0b35a61dbb
+ 9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
+patch_args="-Np1 -d ${build_wrksrc}"
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build and check are still parallel, but don't use -jN.
+disable_parallel_build=yes
+disable_parallel_check=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..215972d02843
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,2 @@
+pattern='/archive/refs/tags/jbr-release-\K17[\d.]+b[\d.]+(?=\.tar\.gz)'
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

From 32fa4d298e1db4020b9ad5078246ea29db939ea8 Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Thu, 9 Feb 2023 23:15:48 -0800
Subject: [PATCH 2/3] jetbrains-jdk17: update to 17.0.5b759.1.

---
 srcpkgs/jetbrains-jdk17/template | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
index 4b63ed2da607..408deadad107 100644
--- a/srcpkgs/jetbrains-jdk17/template
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -56,14 +56,8 @@ noverifyrdeps=yes
 disable_parallel_build=yes
 disable_parallel_check=yes
 
-# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
-if [ ! "$CROSS_BUILD" ]; then
-	makedepends+=" openjdk16-bootstrap"
-	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
-else
-	makedepends+=" openjdk17"
-	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
-fi
+makedepends+=" openjdk17"
+configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
 configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
 
 do_configure() {

From 48f8ef68ea206b23cbc3c93f6434099c24157c95 Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Fri, 10 Feb 2023 00:00:58 -0800
Subject: [PATCH 3/3] jetbrains-jdk17: update to 17.0.6b802.1.

---
 srcpkgs/jetbrains-jdk17/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
index 408deadad107..6700beb93b8f 100644
--- a/srcpkgs/jetbrains-jdk17/template
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -1,6 +1,6 @@
 # Template file for 'jetbrains-jdk17'
 pkgname=jetbrains-jdk17
-version=17.0.5b759.1
+version=17.0.6b802.1
 revision=1
 _gtest_ver=1.8.1
 archs="x86_64"
@@ -43,7 +43,7 @@ license="GPL-2.0-only, Classpath-exception-2.0"
 homepage="https://github.com/JetBrains/JetBrainsRuntime"
 distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
  https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
-checksum="25766e1f8bccd6e6b4b863a98b78309f3847434eff24461adc97da0b35a61dbb
+checksum="72a9dc532bdccd383ffab93f7a373c3e22f4a5e345d771b15c763503728ca314
  9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
 patch_args="-Np1 -d ${build_wrksrc}"
 conflicts="jetbrains-jdk-bin"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (29 preceding siblings ...)
  2023-02-10  8:07 ` 2asoft
@ 2023-03-17  1:43 ` dontlaugh
  2023-03-21 18:40 ` 2asoft
                   ` (5 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: dontlaugh @ 2023-03-17  1:43 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 387 bytes --]

New comment by dontlaugh on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#issuecomment-1472988239

Comment:
Works for me :+1: Installing this JDK let me install the 2022.3.3 CLion from [source](https://github.com/dontlaugh/void-packages/commit/8e8f022cf5bc5b064a06bb732e3b3f8bad117871). Then I had to set `CLION_JDK=/usr/lib/jvm/jbrsdk` to run `CLion`

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (30 preceding siblings ...)
  2023-03-17  1:43 ` dontlaugh
@ 2023-03-21 18:40 ` 2asoft
  2023-03-26 22:14 ` [PR PATCH] [Updated] " 2asoft
                   ` (4 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2023-03-21 18:40 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 731 bytes --]

New comment by 2asoft on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#issuecomment-1478409886

Comment:
> Works for me +1 Installing this JDK let me install the 2022.3.3 CLion from [source](https://github.com/dontlaugh/void-packages/commit/8e8f022cf5bc5b064a06bb732e3b3f8bad117871). Then I had to set `CLION_JDK=/usr/lib/jvm/jbrsdk` to run `CLion`

I have a branch updating CLion to latest [over here](https://github.com/2asoft/void-packages/commits/2asoft/jb_update_clion) as well.
There are a few more changes there (some paths changed, I believe -- it's been a while since I looked).
Just waiting for a momemnt to merge this JDK, and then the several JetBrains' products PRs will follow.

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (31 preceding siblings ...)
  2023-03-21 18:40 ` 2asoft
@ 2023-03-26 22:14 ` 2asoft
  2023-03-28 20:33 ` Chocimier
                   ` (3 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: 2asoft @ 2023-03-26 22:14 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1027 bytes --]

There is an updated pull request by 2asoft against master on the void-packages repository

https://github.com/2asoft/void-packages 2asoft/jb_update_jdk_src
https://github.com/void-linux/void-packages/pull/38374

New package: jetbrains-jdk17-17.0.4b469.54
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


A patch file from https://github.com/void-linux/void-packages/pull/38374.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-2asoft/jb_update_jdk_src-38374.patch --]
[-- Type: text/x-diff, Size: 12231 bytes --]

From b50d0d0d009204d4a44c8edb53ca0e32bcf9871d Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Sat, 30 Jul 2022 08:47:49 -0700
Subject: [PATCH 1/4] New package: jetbrains-jdk17-17.0.5b759.1.

---
 .../01-jdk_build_classlist_sort_to_file.diff  |  64 ++++++++++
 srcpkgs/jetbrains-jdk17/template              | 117 ++++++++++++++++++
 srcpkgs/jetbrains-jdk17/update                |   2 +
 3 files changed, 183 insertions(+)
 create mode 100644 srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
 create mode 100644 srcpkgs/jetbrains-jdk17/template
 create mode 100644 srcpkgs/jetbrains-jdk17/update

diff --git a/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
new file mode 100644
index 000000000000..e94884daf217
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/patches/01-jdk_build_classlist_sort_to_file.diff
@@ -0,0 +1,64 @@
+diff --git a/make/GenerateLinkOptData.gmk b/make/GenerateLinkOptData.gmk
+index 5dd766c8c07..7b2480625f1 100644
+--- a/make/GenerateLinkOptData.gmk
++++ b/make/GenerateLinkOptData.gmk
+@@ -89,9 +89,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
+ 	        exit $$exitcode \
+ 	    )
+ 	$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
++	echo "" > $@
+ 	$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
+ 	    -cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
+-	    build.tools.classlist.SortClasslist $@.raw.3 > $@
++	    build.tools.classlist.SortClasslist $@.raw.3 $@
+ 
+ # The jli trace is created by the same recipe as classlist. By declaring these
+ # dependencies, make will correctly rebuild both jli trace and classlist
+diff --git a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+index 07987feb2da..7a5b84421fc 100644
+--- a/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
++++ b/make/jdk/src/classes/build/tools/classlist/SortClasslist.java
+@@ -33,6 +33,10 @@ package build.tools.classlist;
+ 
+ import java.io.FileInputStream;
+ import java.io.FileNotFoundException;
++import java.io.FileOutputStream;
++import java.io.OutputStreamWriter;
++import java.io.PrintWriter;
++import java.nio.charset.StandardCharsets;
+ import java.util.ArrayList;
+ import java.util.Collections;
+ import java.util.regex.Pattern;
+@@ -50,13 +54,15 @@ public class SortClasslist {
+         ArrayList<String> lambdas = new ArrayList<>();
+ 
+         FileInputStream fis = new FileInputStream(args[0]);
++        FileOutputStream fos = new FileOutputStream(args[1], false);
++        PrintWriter outWriter = new PrintWriter(new OutputStreamWriter(fos, StandardCharsets.UTF_8));
+         Scanner scanner = new Scanner(fis);
+         while (scanner.hasNextLine()) {
+             String line = scanner.nextLine();
+             if (line.startsWith("#")) {
+                 // Comments -- print them first without sorting. These appear only at the top
+                 // of the file.
+-                System.out.println(line);
++                outWriter.println(line);
+             } else if (line.startsWith("@")) {
+                 // @lambda-form-invoker, @lambda-proxy, etc.
+                 lambdas.add(line);
+@@ -73,10 +79,13 @@ public class SortClasslist {
+         Collections.sort(lambdas);
+ 
+         for (String s : classes) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
+         for (String s : lambdas) {
+-            System.out.println(s);
++            outWriter.println(s);
+         }
++
++        outWriter.flush();
++        outWriter.close();
+     }
+ }
diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
new file mode 100644
index 000000000000..4b63ed2da607
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -0,0 +1,117 @@
+# Template file for 'jetbrains-jdk17'
+pkgname=jetbrains-jdk17
+version=17.0.5b759.1
+revision=1
+_gtest_ver=1.8.1
+archs="x86_64"
+_tag_name="jbr-release-${version}"
+_jdk_home="usr/lib/jvm/jbrsdk"
+create_wrksrc=yes
+build_wrksrc="JetBrainsRuntime-${_tag_name}"
+build_style=gnu-configure
+configure_args="
+ --with-vendor-name=Void
+ --with-vendor-url=https://voidlinux.org/
+ --with-vendor-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-vendor-vm-bug-url=https://github.com/void-linux/void-packages/issues
+ --with-version-pre=
+ --with-version-opt=${version#*b}-void-r${revision}
+ --with-stdc++lib=dynamic
+ --with-libjpeg=system
+ --with-giflib=system
+ --with-libpng=system
+ --with-lcms=system
+ --with-zlib=system
+ --with-jtreg=no
+ --with-harfbuzz=system
+ --with-jvm-features=zgc
+ --enable-unlimited-crypto
+ --disable-warnings-as-errors
+ --with-native-debug-symbols=internal
+ --with-debug-level=release
+ --with-jobs=${XBPS_ORIG_MAKEJOBS}
+ --with-gtest=../googletest-release-${_gtest_ver}
+"
+make_build_args="images"
+make_install_args="INSTALL_PREFIX=\"${DESTDIR}/usr/lib\""
+make_check_target="test-hotspot-gtest"
+hostmakedepends="pkg-config zip unzip autoconf automake libtool which make-ca"
+makedepends="alsa-lib-devel cups-devel libX11-devel libjpeg-turbo-devel harfbuzz-devel giflib-devel freetype-devel libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel zlib-devel lcms2-devel"
+short_desc="JetBrains Java 17 JDK"
+maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
+license="GPL-2.0-only, Classpath-exception-2.0"
+homepage="https://github.com/JetBrains/JetBrainsRuntime"
+distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
+ https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
+checksum="25766e1f8bccd6e6b4b863a98b78309f3847434eff24461adc97da0b35a61dbb
+ 9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
+patch_args="-Np1 -d ${build_wrksrc}"
+conflicts="jetbrains-jdk-bin"
+
+# For whatever reason, XBPS finds libjava, libjli, etc as dependencies of this package, and decides to make it depend on openjdk8, which provides those.
+# But that is not true, nor desired -- this is a full fledged JDK distribution, just not installed as such here in XBPS land.
+noverifyrdeps=yes
+
+# Build and check are still parallel, but don't use -jN.
+disable_parallel_build=yes
+disable_parallel_check=yes
+
+# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
+if [ ! "$CROSS_BUILD" ]; then
+	makedepends+=" openjdk16-bootstrap"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
+else
+	makedepends+=" openjdk17"
+	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
+fi
+configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
+
+do_configure() {
+	CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+	CXXFLAGS=${CXXFLAGS/-D_FORTIFY_SOURCE=2/}
+
+	configure_args=${configure_args/--with-libtool-sysroot=$XBPS_CROSS_BASE}
+	if [ "$XBPS_CCACHE" ] && [ -z "$CROSS_BUILD" ]; then
+		configure_args+=" --enable-ccache"
+		CC="/usr/bin/cc"
+		CXX="/usr/bin/c++"
+	fi
+
+	sh ./configure ${configure_args} \
+		--with-extra-cflags="$CFLAGS" \
+		--with-extra-cxxflags="$CXXFLAGS" \
+		--with-extra-ldflags="$LDFLAGS" \
+		READELF=$READELF AR=$AR STRIP=$STRIP NM=$NM \
+		OBJDUMP=$OBJDUMP OBJCOPY=$OBJCOPY
+}
+
+# TODO: openjdk17 had the following hook in it. Debug it for understanding.
+#post_install() {
+#	vmkdir $_jdk_home/lib/security
+#	make-ca -g -f --destdir "${PWD}/ca" -k "${DESTDIR}/$_jdk_home/bin/keytool"
+#	mv ./ca/etc/pki/tls/java/cacerts ${DESTDIR}/$_jdk_home/lib/security/
+#	chmod -R ugo+rw ./ca
+#	rm -rf ./ca
+#}
+
+do_install() {
+	TARGET_PATH="${_jdk_home}"
+
+	vmkdir ${TARGET_PATH}
+
+	vlicense ASSEMBLY_EXCEPTION
+	vlicense LICENSE
+
+	cd build/linux-*-server-release/images/jdk/
+	vcopy bin ${TARGET_PATH}
+	vcopy conf ${TARGET_PATH}
+	vcopy include ${TARGET_PATH}
+	vcopy legal ${TARGET_PATH}
+	vcopy lib ${TARGET_PATH}
+	vcopy release ${TARGET_PATH}
+
+	vmkdir etc/profile.d
+	cat > ${DESTDIR}/etc/profile.d/10_jbrsdk.sh <<EOF
+export IDEA_JDK=\${IDEA_JDK=/${_jdk_home}}
+EOF
+}
diff --git a/srcpkgs/jetbrains-jdk17/update b/srcpkgs/jetbrains-jdk17/update
new file mode 100644
index 000000000000..215972d02843
--- /dev/null
+++ b/srcpkgs/jetbrains-jdk17/update
@@ -0,0 +1,2 @@
+pattern='/archive/refs/tags/jbr-release-\K17[\d.]+b[\d.]+(?=\.tar\.gz)'
+site="https://github.com/JetBrains/JetBrainsRuntime/tags"

From 508c0ed26e3c4418150eb833925c1bc9d8ae0217 Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Thu, 9 Feb 2023 23:15:48 -0800
Subject: [PATCH 2/4] jetbrains-jdk17: update to 17.0.5b759.1.

---
 srcpkgs/jetbrains-jdk17/template | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
index 4b63ed2da607..408deadad107 100644
--- a/srcpkgs/jetbrains-jdk17/template
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -56,14 +56,8 @@ noverifyrdeps=yes
 disable_parallel_build=yes
 disable_parallel_check=yes
 
-# This does not currently accomplish anything, since only building on x86_64. Leaving this for future, taken from `openjdk17`.
-if [ ! "$CROSS_BUILD" ]; then
-	makedepends+=" openjdk16-bootstrap"
-	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk16"
-else
-	makedepends+=" openjdk17"
-	configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
-fi
+makedepends+=" openjdk17"
+configure_args+=" --with-boot-jdk=/usr/lib/jvm/openjdk17"
 configure_args+=" --with-boot-jdk-jvmargs=-Xlog:disable"
 
 do_configure() {

From ea93ee20989f549113290caa0104babcc486d8cc Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Fri, 10 Feb 2023 00:00:58 -0800
Subject: [PATCH 3/4] jetbrains-jdk17: update to 17.0.6b802.1.

---
 srcpkgs/jetbrains-jdk17/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
index 408deadad107..6700beb93b8f 100644
--- a/srcpkgs/jetbrains-jdk17/template
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -1,6 +1,6 @@
 # Template file for 'jetbrains-jdk17'
 pkgname=jetbrains-jdk17
-version=17.0.5b759.1
+version=17.0.6b802.1
 revision=1
 _gtest_ver=1.8.1
 archs="x86_64"
@@ -43,7 +43,7 @@ license="GPL-2.0-only, Classpath-exception-2.0"
 homepage="https://github.com/JetBrains/JetBrainsRuntime"
 distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
  https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
-checksum="25766e1f8bccd6e6b4b863a98b78309f3847434eff24461adc97da0b35a61dbb
+checksum="72a9dc532bdccd383ffab93f7a373c3e22f4a5e345d771b15c763503728ca314
  9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
 patch_args="-Np1 -d ${build_wrksrc}"
 conflicts="jetbrains-jdk-bin"

From f35a063e0ecb9c0f5bff8580069eb39bffccafac Mon Sep 17 00:00:00 2001
From: Anton Afanasyev <anton@doubleasoftware.com>
Date: Mon, 13 Mar 2023 10:18:59 -0700
Subject: [PATCH 4/4] jetbrains-jdk17: update to 17.0.6b829.5.

---
 srcpkgs/jetbrains-jdk17/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/jetbrains-jdk17/template b/srcpkgs/jetbrains-jdk17/template
index 6700beb93b8f..8abe828d5b5d 100644
--- a/srcpkgs/jetbrains-jdk17/template
+++ b/srcpkgs/jetbrains-jdk17/template
@@ -1,6 +1,6 @@
 # Template file for 'jetbrains-jdk17'
 pkgname=jetbrains-jdk17
-version=17.0.6b802.1
+version=17.0.6b829.5
 revision=1
 _gtest_ver=1.8.1
 archs="x86_64"
@@ -43,7 +43,7 @@ license="GPL-2.0-only, Classpath-exception-2.0"
 homepage="https://github.com/JetBrains/JetBrainsRuntime"
 distfiles="https://github.com/JetBrains/JetBrainsRuntime/archive/refs/tags/${_tag_name}.tar.gz
  https://github.com/google/googletest/archive/refs/tags/release-${_gtest_ver}.tar.gz"
-checksum="72a9dc532bdccd383ffab93f7a373c3e22f4a5e345d771b15c763503728ca314
+checksum="1fe7845f2d3bffcd8339ea00ef7befce016680ce3440008b046ec9d771365d89
  9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
 patch_args="-Np1 -d ${build_wrksrc}"
 conflicts="jetbrains-jdk-bin"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (32 preceding siblings ...)
  2023-03-26 22:14 ` [PR PATCH] [Updated] " 2asoft
@ 2023-03-28 20:33 ` Chocimier
  2023-03-28 20:33 ` Chocimier
                   ` (2 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: Chocimier @ 2023-03-28 20:33 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 436 bytes --]

New comment by Chocimier on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#issuecomment-1487556775

Comment:
Pycharm does not start with this, so I all IDEs will need to be updated soon after merging this, i guess?

Squash commits, and please keep template closer to openjdk17: configure_args order, makedepends order and lines split.

openjdk17 as build dependency should go into hostmakedepends.

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (33 preceding siblings ...)
  2023-03-28 20:33 ` Chocimier
@ 2023-03-28 20:33 ` Chocimier
  2023-06-27  2:08 ` github-actions
  2023-07-12  2:06 ` [PR PATCH] [Closed]: " github-actions
  36 siblings, 0 replies; 38+ messages in thread
From: Chocimier @ 2023-03-28 20:33 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 435 bytes --]

New comment by Chocimier on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#issuecomment-1487556775

Comment:
Pycharm does not start with this, so all IDEs will need to be updated soon after merging this, iI guess?

Squash commits, and please keep template closer to openjdk17: configure_args order, makedepends order and lines split.

openjdk17 as build dependency should go into hostmakedepends.

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (34 preceding siblings ...)
  2023-03-28 20:33 ` Chocimier
@ 2023-06-27  2:08 ` github-actions
  2023-07-12  2:06 ` [PR PATCH] [Closed]: " github-actions
  36 siblings, 0 replies; 38+ messages in thread
From: github-actions @ 2023-06-27  2:08 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 305 bytes --]

New comment by github-actions[bot] on void-packages repository

https://github.com/void-linux/void-packages/pull/38374#issuecomment-1608597347

Comment:
Pull Requests become stale 90 days after last activity and are closed 14 days after that.  If this pull request is still relevant bump it or assign it.

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Closed]: New package: jetbrains-jdk17-17.0.4b469.54
  2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
                   ` (35 preceding siblings ...)
  2023-06-27  2:08 ` github-actions
@ 2023-07-12  2:06 ` github-actions
  36 siblings, 0 replies; 38+ messages in thread
From: github-actions @ 2023-07-12  2:06 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 856 bytes --]

There's a closed pull request on the void-packages repository

New package: jetbrains-jdk17-17.0.4b469.54
https://github.com/void-linux/void-packages/pull/38374

Description:
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC)


^ permalink raw reply	[flat|nested] 38+ messages in thread

end of thread, other threads:[~2023-07-12  2:06 UTC | newest]

Thread overview: 38+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-30 15:51 [PR PATCH] New package: jetbrains-jdk17-17.0.3b526.1 2asoft
2022-07-30 16:01 ` 2asoft
2022-07-30 16:03 ` [PR PATCH] [Updated] " 2asoft
2022-07-30 16:08 ` 2asoft
2022-07-31  2:19 ` 2asoft
2022-07-31  2:29 ` classabbyamp
2022-07-31  2:53 ` [PR PATCH] [Updated] " 2asoft
2022-07-31  5:25 ` classabbyamp
2022-07-31  5:35 ` 2asoft
2022-07-31  5:38 ` classabbyamp
2022-08-23  3:43 ` [PR PATCH] [Updated] " 2asoft
2022-09-09 17:11 ` 2asoft
2022-09-09 17:12 ` 2asoft
2022-09-16 20:15 ` [PR PATCH] [Updated] New package: jetbrains-jdk17-17.0.4b469.54 2asoft
2022-09-16 20:20 ` 2asoft
2022-09-19  5:09 ` [PR REVIEW] " classabbyamp
2022-09-19  5:09 ` classabbyamp
2022-09-19  5:09 ` classabbyamp
2022-09-19  5:09 ` classabbyamp
2022-09-19  5:09 ` classabbyamp
2022-09-19  5:09 ` classabbyamp
2022-09-19  5:09 ` classabbyamp
2022-10-08  8:42 ` [PR PATCH] [Updated] " 2asoft
2022-10-08  9:05 ` 2asoft
2022-10-31  6:58 ` 2asoft
2022-10-31  8:09 ` 2asoft
2022-11-10 13:33 ` 2asoft
2022-12-07 18:33 ` 2asoft
2023-01-14  5:05 ` 2asoft
2023-02-10  8:00 ` 2asoft
2023-02-10  8:07 ` 2asoft
2023-03-17  1:43 ` dontlaugh
2023-03-21 18:40 ` 2asoft
2023-03-26 22:14 ` [PR PATCH] [Updated] " 2asoft
2023-03-28 20:33 ` Chocimier
2023-03-28 20:33 ` Chocimier
2023-06-27  2:08 ` github-actions
2023-07-12  2:06 ` [PR PATCH] [Closed]: " github-actions

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).