From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-1698072-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits))
	(No client certificate requested)
	by finch.gentoo.org (Postfix) with ESMTPS id 357FB158232
	for <garchives@archives.gentoo.org>; Sat,  7 Dec 2024 13:31:40 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id 4FF72E0F9B;
	Sat,  7 Dec 2024 13:31:39 +0000 (UTC)
Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id AB86DE0F9B
	for <gentoo-commits@lists.gentoo.org>; Sat,  7 Dec 2024 13:31:38 +0000 (UTC)
Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id C902234310A
	for <gentoo-commits@lists.gentoo.org>; Sat,  7 Dec 2024 13:31:37 +0000 (UTC)
Received: from localhost.localdomain (localhost [IPv6:::1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id 320C11AB5
	for <gentoo-commits@lists.gentoo.org>; Sat,  7 Dec 2024 13:31:36 +0000 (UTC)
From: "Miroslav Šulc" <fordfrog@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: 8bit
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "Miroslav Šulc" <fordfrog@gentoo.org>
Message-ID: <1733578289.fbc6cd35d901b3d59489262da0d62d31dc6a7893.fordfrog@gentoo>
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-java/swt/
X-VCS-Repository: repo/gentoo
X-VCS-Files: dev-java/swt/Manifest dev-java/swt/swt-4.34.ebuild
X-VCS-Directories: dev-java/swt/
X-VCS-Committer: fordfrog
X-VCS-Committer-Name: Miroslav Šulc
X-VCS-Revision: fbc6cd35d901b3d59489262da0d62d31dc6a7893
X-VCS-Branch: master
Date: Sat,  7 Dec 2024 13:31:36 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply
X-Archives-Salt: 4f41e387-a8ca-43c1-8120-842085810aa0
X-Archives-Hash: 5a2c4dfa1ea9535b04533a176a127426

commit:     fbc6cd35d901b3d59489262da0d62d31dc6a7893
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Sun Dec  1 10:14:45 2024 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Sat Dec  7 13:31:29 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fbc6cd35

dev-java/swt: add 4.34

Signed-off-by: Volkmar W. Pogatzki <gentoo <AT> pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/39233/commits/78869c603bae99feb7f43c90fe985733ecd11a09
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 dev-java/swt/Manifest        |   3 +
 dev-java/swt/swt-4.34.ebuild | 152 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 155 insertions(+)

diff --git a/dev-java/swt/Manifest b/dev-java/swt/Manifest
index c5cc743a6940..2a5a03f3edac 100644
--- a/dev-java/swt/Manifest
+++ b/dev-java/swt/Manifest
@@ -18,3 +18,6 @@ DIST swt-4.32-gtk-linux-x86_64.zip 4011746 BLAKE2B 5d2784f9a18684d539ea576560bb5
 DIST swt-4.33-gtk-linux-aarch64.zip 3929090 BLAKE2B 60cc67c7b197cb31c68622c2d78090a50b4d3eca9c8c5f919b230ebed8f65a588c941f32e89ed0126d5bb5558b664a61661535b158bc7b26928556768f83fb5c SHA512 5a01ffd19c62de4fc1d0df4dae7c93ba8235af7e00713f49cf9cb591843f891bb8151a33dd51bca45c31b068edf65b59a1826cec1a1f3b9d14366d30e7efd430
 DIST swt-4.33-gtk-linux-ppc64le.zip 3966353 BLAKE2B 0ab4a75ac1efdedfcacdd235f45b1b0de04ab762cf64957ca1761e2f6a7e1571e106b26ab08b9ecd600ddf89f2abcd151dcd236c303bfe7d8cfabbce2910b2b4 SHA512 8f54cce4e5ac9e0043c8e3861aeed193f919b7bc4291f5812a568fcf4206cf4875d14d9cd7836235414cbde6a837fe38a2a6380c7d50ca04d3aa366dab733d81
 DIST swt-4.33-gtk-linux-x86_64.zip 3950557 BLAKE2B 6cf4f48e32bcfa40082c08a78dd8d64e9454db3859533696c7cc7cd37639ac7df980d9cfd13abaa80e95e44ad619b96944387363d2fb93d7de34f5f25052bd54 SHA512 3211a5480b886c542f99e29b715b5b1221ba679b572f1de6ca68bdb7b06eec6863c68fbddb9b70d74f13e501c3d76a220c7c8b466031b6c0a25bba5c011f8a63
+DIST swt-4.34-gtk-linux-aarch64.zip 4001004 BLAKE2B 4ed2ba9b61cecfda5bad8a3701dccfb12f78617222b24a96e0752bcc481fed96afc31c8053ab38f9b0cc41e46d0c33ddd0c5f04ddba194e7a8725f6856a60d52 SHA512 1c6ab66d02ff27ec45124e46e349a99e6d20f63511c32afbd70ec4d835a86e4f1f83205c67259697bb86250758ac625460bdd105123897f53b233d1e54283cb1
+DIST swt-4.34-gtk-linux-ppc64le.zip 4038598 BLAKE2B 8dd08a73c06c99cf286a894fbe42f8eb74592e4a42d03e184bc8941d067f564e2a1f13d27436ae7e0be44f5a28a0e2124d49dbae6261d841b39d832d3024e31e SHA512 c7c9048f1fc3730f27926d606301100c491b44ee5bab594d4a52bda8f0652302b0954b91d86bd7418532d596c332235a044f04bc677e4e36f33d316819a2a44b
+DIST swt-4.34-gtk-linux-x86_64.zip 4021887 BLAKE2B b9d549db7e143ea79200355e59e393a1305fd30cedfe39d94cd2f02947a62a1a2dc8bea45726e59dddd2360117e8ae757b3f597a37d84bed4e88bf8d4f957797 SHA512 486e18d150e23adb197e2f88448a1c7a48d8ef0d20751b358975460b21792f59a2d7ee55ad2340de381deb5d5508dada2e01087e58fa64690a92271bd3bbc7e7

diff --git a/dev-java/swt/swt-4.34.ebuild b/dev-java/swt/swt-4.34.ebuild
new file mode 100644
index 000000000000..78532d57cbf3
--- /dev/null
+++ b/dev-java/swt/swt-4.34.ebuild
@@ -0,0 +1,152 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+inherit flag-o-matic java-pkg-2 java-pkg-simple toolchain-funcs
+
+MY_PV="${PV/_rc/RC}"
+MY_DMF="https://download.eclipse.org/eclipse/downloads/drops4/R-${MY_PV}-202411201800"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="GTK based SWT Library"
+HOMEPAGE="https://www.eclipse.org/swt/"
+SRC_URI="
+	amd64? ( ${MY_DMF}/${MY_P}-gtk-linux-x86_64.zip )
+	arm64? ( ${MY_DMF}/${MY_P}-gtk-linux-aarch64.zip )
+	ppc64? ( ${MY_DMF}/${MY_P}-gtk-linux-ppc64le.zip )"
+S="${WORKDIR}/library"
+
+LICENSE="CPL-1.0 LGPL-2.1 MPL-1.1"
+SLOT="4.34"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+IUSE="cairo opengl webkit"
+
+BDEPEND="
+	app-arch/unzip
+	virtual/pkgconfig
+"
+COMMON_DEP="
+	app-accessibility/at-spi2-core:2
+	dev-libs/glib
+	x11-libs/gtk+:3
+	x11-libs/libXtst
+	cairo? ( x11-libs/cairo )
+	opengl?	(
+		virtual/glu
+		virtual/opengl
+	)
+	webkit? (
+		net-libs/webkit-gtk:4.1
+	)"
+DEPEND="${COMMON_DEP}
+	>=virtual/jdk-17:*[-headless-awt]
+	x11-base/xorg-proto
+	x11-libs/libX11
+	x11-libs/libXrender
+	x11-libs/libXt
+	x11-libs/libXtst"
+# error: pattern matching in instanceof is not supported in -source 11
+RDEPEND="${COMMON_DEP}
+	>=virtual/jre-17:*
+	x11-libs/libX11"
+
+HTML_DOCS=( ../about.html )
+
+JAVA_RESOURCE_DIRS="../resources"
+JAVA_SRC_DIR="../src"
+
+PATCHES=(
+	"${FILESDIR}/swt-4.27-as-needed-and-flag-fixes.patch"
+)
+
+src_unpack() {
+	default
+	unpack "./src.zip"
+}
+
+src_prepare() {
+	default #780585
+	java-pkg-2_src_prepare
+	# .css stuff is essential at least for running net-p2p/biglybt
+	unzip ../swt.jar 'org/eclipse/swt/internal/gtk/*.css' -d resources || die
+	java-pkg_clean
+	cd .. || die
+	mkdir resources src || die "mkdir failed"
+	find org -type f -name '*.java' \
+		| xargs \
+		cp --parent -t src -v \
+		|| die "copying resources failed"
+	find org -type f ! -name '*.java' \
+		| xargs \
+		cp --parent -t resources -v \
+		|| die "copying resources failed"
+	cp version.txt resources || die "adding version.txt failed"
+}
+
+src_compile() {
+	append-cflags -fcommon # https://bugs.gentoo.org/707838
+
+	local JAWTSO="libjawt.so"
+	IFS=":" read -r -a ldpaths <<< $(java-config -g LDPATH)
+
+	for libpath in "${ldpaths[@]}"; do
+		if [[ -f "${libpath}/${JAWTSO}" ]]; then
+			export AWT_LIB_PATH="${libpath}"
+			break
+		# this is a workaround for broken LDPATH in <=openjdk-8.292_p10 and <=dev-java/openjdk-bin-8.292_p10
+		elif [[ -f "${libpath}/$(tc-arch)/${JAWTSO}" ]]; then
+			export AWT_LIB_PATH="${libpath}/$(tc-arch)"
+			break
+		fi
+	done
+
+	if [[ -z "${AWT_LIB_PATH}" ]]; then
+		eerror "${JAWTSO} not found in the JDK being used for compilation!"
+		die "cannot build AWT library"
+	fi
+
+	# Fix the pointer size for AMD64
+	export SWT_PTR_CFLAGS=-DJNI64
+
+	# Bug #461784, g_thread_init is deprecated since glib-2.32.
+	append-cflags -DNO__1g_1thread_1init
+
+	local make="emake -f make_linux.mak NO_STRIP=y CC=$(tc-getCC) CXX=$(tc-getCXX)"
+
+	einfo "Building AWT library"
+	export SWT_JAVA_HOME="$(java-config -g JAVA_HOME)"
+	${make} make_awt AWT_LIBS="-L\$(AWT_LIB_PATH) -Wl,-rpath,\$(AWT_LIB_PATH) -ljawt \`pkg-config --libs x11\`"
+
+	einfo "Building SWT library"
+	${make} make_swt
+
+	einfo "Building JAVA-AT-SPI bridge"
+	${make} make_atk
+
+	if use cairo ; then
+		einfo "Building CAIRO support"
+		${make} make_cairo
+	fi
+
+	if use opengl ; then
+		einfo "Building OpenGL component"
+		${make} make_glx
+	fi
+
+	if use webkit ; then
+		einfo "Building WebKit component"
+		${make} make_webkit
+	fi
+
+	java-pkg-simple_src_compile
+}
+
+src_install() {
+	java-pkg-simple_src_install
+
+	java-pkg_sointo "/usr/$(get_libdir)/swt"
+	java-pkg_doso *.so
+}