diff options
Diffstat (limited to 'dev-java/swt')
-rw-r--r-- | dev-java/swt/Manifest | 4 | ||||
-rw-r--r-- | dev-java/swt/swt-4.32.ebuild | 152 |
2 files changed, 156 insertions, 0 deletions
diff --git a/dev-java/swt/Manifest b/dev-java/swt/Manifest index 055e1b7948b8..031e7f32e091 100644 --- a/dev-java/swt/Manifest +++ b/dev-java/swt/Manifest @@ -19,9 +19,13 @@ DIST swt-4.30-gtk-linux-x86_64.zip 3856990 BLAKE2B 0ea29a5f286fb4bb362758629226b DIST swt-4.31-gtk-linux-aarch64.zip 4019864 BLAKE2B 597f9c2ce1382aacd4667c7d1fc350b2318d8b1577dfc32a0139efb9d26e7c32703a0fb2507876ef441c47901d46ba522ea40714f9b88f1d517e3d9d24c2416a SHA512 636e3a4e7adc21ab8ee3ecdc3f85bbd0ad5786836492cf0096f99177716043150b41807cc456f4813ebb1797092761bb227809e8594bf64155b438973cc84bfc DIST swt-4.31-gtk-linux-ppc64le.zip 4036590 BLAKE2B da9ad8a7e0bf168b024c4e1fbdbcc01154ec0d7e8b38b2912ba7edf1bf8239f05a9ce1f08790174158ebb788c9cc3adf754d13942fc8aa0fe9d4a53177a814ff SHA512 bf8f3f45b4229db383839a64b7d08294340ab2f0c623be8e382609b5ff9a59683229bb308d49480ffb01596ab050d45f97894fec99c0d4eb710e60c40b864531 DIST swt-4.31-gtk-linux-x86_64.zip 4039479 BLAKE2B 6f7e434acf57cd03dd5e938b1b1c578339b3d7817202681a15420ebdec3be10b95b1bf5eca6f1cf71de9a5a0c390d2d6ee903c2a71e8974e03987cc52322e44d SHA512 da61610ce00fc46893ec3ee6d5d7ed5cc59312002c6946a3748cff1a776af75bad0026512b412ef1622ca0bee124764ed8ee7f5f87364cff945b296feb86e74b +DIST swt-4.32-gtk-linux-aarch64.zip 3991281 BLAKE2B 99fece9547e801661bb65f699780eb95cb626efd78e1bd79dec15d5fb63e03805ab6c6f75b98648cfad194d800c11cbe6a3c23250f4c4084072aea2aa4cde10c SHA512 adf5d207ba35bfa43fad2c4c64d72a4b56e8830efa0f817b158ad0bd4508eca9c83c43ebebb843c4fb75cb33835a6490b8b0b2a993bfa3507b62fba50345607a +DIST swt-4.32-gtk-linux-ppc64le.zip 4028301 BLAKE2B 1ed2590ffe01836dc9209b8323db25204c157a829f4af10f20509c30f268c88e89a9e252aebd9a4a0d3337fa20b1a3d76040b768918f7a2f7c8a6313314d14b8 SHA512 713f762fab2d5eea125844912fafdc3eb42bfb76c2caac5612972714e07b66de0e2a71ae29a51c86b2ad76c32761842ad209f8b59c931ea727dc03b2161b40f2 +DIST swt-4.32-gtk-linux-x86_64.zip 4011746 BLAKE2B 5d2784f9a18684d539ea576560bb5fecbbf59960cbd8ce901c9b152df087decb2db28ebf9fbf12c710f6dde71583e9002ca0ac85d5ca7a7ce17286ad1666c5c8 SHA512 f4d511595cccf104cda35c6f314e3689508e18e5da85bb2e8bdd408d9b8d4ab3371e851b3b96ba0f835b3ff0a079c4ed887661e586ab0ce06a52abf69ba243be EBUILD swt-3.7.2-r4.ebuild 4440 BLAKE2B 6164e475706b71782671978cc34cf5cdf14b8668132fec49bbfaa03753a92794b0258d6ad09e3cf1582ca4207c824b787b62c958501a09afc17a2d3e69ad190d SHA512 a864f326933d855d6194035bc8582f7df201377af6b5bc4e2abdb16b711edf5d72f560f628ff89f5b426e7c2c63a3dbfef0bdf041dc9907ab6f71cc2b26671b6 EBUILD swt-4.10-r4.ebuild 4269 BLAKE2B 3ef14892698d8df50f090443a8e15f8b0a048b378f5a5a15d9430f3cd2aba36f68d3556444ba43f5e538c5841dc93717ecf91f032bc7cccce98e3a74ca3e12c1 SHA512 79b77fcb263f657fc386b887e1d815165cf87af5bc32ece128eef71845746173cac16cdfb42277e803244d3f507b618c424b65a5e079cbaef57fcaa4932c1070 EBUILD swt-4.29-r1.ebuild 3457 BLAKE2B ea98a5170abae41c7e18637b127d4ffc9f67e2e92042dc97ee191780672813d94904758463c48cb5402d9d838b5e12d0a47a5c7218c0f424f2a30773445d0d92 SHA512 ed7a98c317bbb259fb9c732631c33a1291ae986bdf158cc0abc0c81cd3b28600747cc8af5d8bfcf8df5f61a7dff3697d1572358ca352cb7ce8eaa64089bf5504 EBUILD swt-4.30-r2.ebuild 3527 BLAKE2B 0244ca3c7ba1b60277a4ec1a4eaeb53e5f254b0982e49e990a29acaeace91c14d019d7432bccf61598abe8622cb32d4bf035882e53573e0be276c1bcdb59b97c SHA512 d715601364f15c50460bb812f4384a24ecb05275cb833c59e911a292eac009ece65aff95e0fa9425ef04087a6a2311e3772d1a31629b7e4080fd2a2f2d4a0917 EBUILD swt-4.31-r1.ebuild 3597 BLAKE2B 3ebfa0ada9993a92ee67868ee6070b0a4812b455e3e3209e1a00abe4a528c2202be78d413d62123d113edfd22d998d728d2913b4d03296922a01cde4835ce8c8 SHA512 414e93ee4cc2398bb5f7b1b7079a865e48a0d3de4dcd62bba170c2207d4283fe7eace273736335233a6b16848f73890f59646ff763ba311d5aa75ecb5c146870 +EBUILD swt-4.32.ebuild 3600 BLAKE2B 3f16bce5f970f8abd52843dcf1490083c6cb6c08349de1d472adc3627bbe8a958f1a2176a48f3ac4581e492f87bfb9cab6ea9177a4c3fa273ae535507a4c0f5f SHA512 346aea082e34d3d0938b4c3ca328f3502daf9891cacc7f5f2b90a246da3b39e767f81d96a198c8fae325d0c315371175e54ea20fa85a1687d5ea63b9f389dd62 MISC metadata.xml 761 BLAKE2B f70a4d3ff5fcfad5705772396957664e700bd3ffe9580ac141c5faa11e24562b0cbc199a2f49d61d6a2a08058374dc1b7bfd9ae258e4a692e5b3c340f478da25 SHA512 1e8b8ceb30071c8271365a2d515e094c11ab569c4fee7b7f905d5de0a7613518320a1912b2b958d816e04d9876ed75425e16de9a35e1d6be6466888e08a420b3 diff --git a/dev-java/swt/swt-4.32.ebuild b/dev-java/swt/swt-4.32.ebuild new file mode 100644 index 000000000000..0dc6a896fb7a --- /dev/null +++ b/dev-java/swt/swt-4.32.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}-202406010610" +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.32" +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 +} |