summaryrefslogtreecommitdiff
path: root/dev-java/swt
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-03-19 12:34:34 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-03-19 12:34:34 +0000
commit1d300fd75dc60cab2ca6e0bb0016b09a4fb7c67a (patch)
tree5dff362f093f67da764ce10a380ad9d14646b46e /dev-java/swt
parent78634f348a30a55cc55606ee1ecde032241ceaeb (diff)
gentoo auto-resync : 19:03:2023 - 12:34:33
Diffstat (limited to 'dev-java/swt')
-rw-r--r--dev-java/swt/Manifest14
-rw-r--r--dev-java/swt/files/swt-3.8-as-needed-and-flag-fixes.patch243
-rw-r--r--dev-java/swt/files/swt-3.8-manifest17
-rw-r--r--dev-java/swt/files/swt-3.8.2-gthread.patch44
-rw-r--r--dev-java/swt/files/swt-4.27-as-needed-and-flag-fixes.patch82
-rw-r--r--dev-java/swt/metadata.xml5
-rw-r--r--dev-java/swt/swt-3.8.2-r4.ebuild152
-rw-r--r--dev-java/swt/swt-4.27.ebuild142
8 files changed, 235 insertions, 464 deletions
diff --git a/dev-java/swt/Manifest b/dev-java/swt/Manifest
index 19da5dc478ef..5b2ba3462fc1 100644
--- a/dev-java/swt/Manifest
+++ b/dev-java/swt/Manifest
@@ -3,20 +3,18 @@ AUX build.xml 458 BLAKE2B 5e37fe8b8428e23f477c2767a2a96b1dc02aa6a8d4caa70b9f900c
AUX swt-3.7-manifest 750 BLAKE2B b0182c7e25e66be2443e3dcf0d64be1a92b836b8cd461cd6a92e7b73985a91a0c853fb8a3b784fa1edb70e2261f4a94e7273a505e4b130fcfe7b1c372b41efa1 SHA512 e4f6aa5ce58cdc697c234a2a4be43de0510d3c082a2737627a35df74d378a50edc0f7d3e62221f402eed602fcdc50fa7eff969b12602189fd400e1f1580f0d8f
AUX swt-3.7.2-gio_launch-URI-x86.patch 4287 BLAKE2B 54c55cd48cb4f4d64deae90769aa84b7d2785c070c2e5b3e647037ca986d152b8ea71bb58c0d9749e8efb50fca53ab3fc9dbb4ae4355a86dc2285f253e74e064 SHA512 c82364b7e7bc255ed592a254201346a4159789ddbf486f22c026fdefce3f0d26bc91b42535228050eee4ec9b4e7a840008b60b2c7cb98896d6b8f1d875b5bef7
AUX swt-3.7.2-gio_launch-URI.patch 4287 BLAKE2B 45c2655ca657b968b1fa6dc74fee4e30330339da12ffac079eaf616cf1f2e9a3a8e984789d38c43019ade81d9a5a444b0a763df3026732dbc515a3a6b329efb5 SHA512 4954c7464bb2ab7b9c23fd771d3dd49dd826d4a919d3ee85914ca8360708f26d396aaaa6564cc826fcff6ea892d916097e118c4ed0a1ed60cb8217e5c3ebf94d
-AUX swt-3.8-as-needed-and-flag-fixes.patch 8852 BLAKE2B 963f9cccc06c41b6bbd88d5430d66b500094c19708bb903cae7b125342556eb42d193c91fb6c3ca94c589a75060e3a16c3f8cec2ccd02c3f5a4176d5ec2c6a91 SHA512 523dfb0c0fa2bb2c8c0647ef214465c7ebbc93a7a179b204efc46065a925170dc2659238bbb0abefc73b145322b9668340d36ff8a95fc5083890223b48d6e644
-AUX swt-3.8-manifest 750 BLAKE2B 46ff2102bf58343aa6443accc445c1531920f5913876189f471eba38961c4850cc121f52410570f8cae374f2112ec9466cffaccb218daf9558d43c32f39cd24c SHA512 ce465f77e2fc3340ccaf3ecce67697666972331f849ef196eeebfed3dd1342691a5641ec20b91bc5b480ea0acc9edf194ec9f4bc597c2778d0bd0382923d1bc5
-AUX swt-3.8.2-gthread.patch 1225 BLAKE2B 44dd188433a0e3f70ae53c2df79ffe1fe9839e82847568f611e1c04d380b6cd5837c7f96055ea3132c401de3e73f4b41e6b9bf070f515778cf0b5ddbdaa8942f SHA512 035ea3dda893481f67ac0447e0c7382a9761eb3ee77b65ca77038bd17117b68a2d93058c8414d9b2656ceeecde3e6ebc06c0f27e044f217fe8f44945104dcbd4
AUX swt-4.10-as-needed-and-flag-fixes.patch 2647 BLAKE2B 003a92de886b9c11dcba89f0fc6862ba4211359025f95c07d13e5a68bb151667bd0fa36137a28f144f6bb2b8c2905243a6402dd0136a9d9fe080c5e8d4dfedd5 SHA512 fd39fa82aa63de13904b9b2e535983de1be1129cb471e49fc2f76e0fdf2b3dc45a7bcddfce6c77447a8a5863ee590cffa3d29509fb12b30369dff1360f88493a
AUX swt-4.10-manifest 739 BLAKE2B d70c6bbecc6741cff4889005f13adab95d59ef7ff4604bf0ca4482422cb6d4e6f0766e1a01bd9779c3acab3d5b1d382b193b93c44f00ad37317aa6b9308f1088 SHA512 dba2b208fb925cdc43dd64c0900b5c8e8d2ffdea06a9f4f49648d9aa6625481b8316c654d07a1b059385c9546f4929a747a69107415028b0fa0247a7619538ce
+AUX swt-4.27-as-needed-and-flag-fixes.patch 2697 BLAKE2B b8887e16b23ad4eac3c2f995400c6c27d613c31e309c68526c6f0945dc555fac70071aebd61172c9e074452a9bef41bd72639d30632cbc09f07f838b59729698 SHA512 a18c1dee0a51edbbdd9fa3bc5e5958e3c9c1821542351a4c9be303628434b4cd84c1c7cb973760cd3595858e9b85df36570b39e4706b688982f189d115c82493
DIST swt-3.7.2-gtk-linux-ppc64.zip 5688113 BLAKE2B bb102da40a3f63d63ca6a56d4c57ade55d7fe8d6206acf9e60caa0a8600b5c2cec6c0304cd2ab532948f03ff0706e8b2928ae9e93ef0019051044dad3fe7b1c0 SHA512 750aaa43560bbf6f82f7f8cd9338abc88578f4f0b9aadaec9bc8a5c3d1ad593619cdf01d202cbf06766090ee977989ea7904643669c61971973951d8428b57d0
DIST swt-3.7.2-gtk-linux-x86.zip 5374609 BLAKE2B 04d44b9fffcedc6ce255e2651377ac6968bb41c44cee403f063c159962d9d43a5c9529026819ddb1c8eea98cd11ed818075c37f4e9851d2e95532dc166e570ce SHA512 9f58864d05eba2648e4b5d5c958172f5c0c7c730209525b3d6f607586daaefea4d5ba1013e80c0c11948f01c553044b0a98c81688b33c14114ba79c7ce620426
DIST swt-3.7.2-gtk-linux-x86_64.zip 5671443 BLAKE2B 953fc9eab6d1f2750b1a1345cddf4aa6969567cb75977f87ee50668d367e55dda8be2ff836d87b780005c22132fa783b475f422c093617fd02f478eadd96076d SHA512 d60ae1d3f3b0577f7e3018139f93069c89d021064fec2f3f4074f95cfae56abdc0c7d531cb904ad3911482543cddcc3f6646ff47192073f4bde97c79e13612b7
-DIST swt-3.8.2-gtk-linux-ppc64.zip 5933708 BLAKE2B d49633d9d5049d1a6f9bbdcf5a364b73802194fbaf02aa5064c7a1c917e0aad80c829b026a1a41b7903ed0d8066af89ff24683897ced8cbe8c41406a7696c408 SHA512 cb9f2c7aed0b18bae6546272076c23c91d9e1a38404f0a70ddc6408047d961befe2839db177066312b82d8365bee6bcffb6e92aaa7a869ad37d9f49ab780e337
-DIST swt-3.8.2-gtk-linux-x86.zip 5558694 BLAKE2B 8dd0ce9f2c6b8dc448c85a6c509f39ef2da000e0589da52330b83dec87601d100320af778983b2083ca8f9e2890a2d4c731cb2810d9054a9e50e7940ad14bea2 SHA512 afe1563e92fe9af0a58e7dbae731976991a6afacf6415ab88ebf557f99a5154169ad7103519524f71142c4160d55a9b0a9f7379b21486430318e4160e6f01c00
-DIST swt-3.8.2-gtk-linux-x86_64.zip 5865160 BLAKE2B 45d60d334eb99f407cf9101a06f65e48543538a386103767700fb0af5ea0cf3da73eefe57b8cc6b3d78cb8f29345869f5474513648560395a69cbd4c9b8ee8a4 SHA512 43a27cb6fc891d7da35f5fcfc6ccb689d2b2c58de70b628b1e7cf07131f0641598b627eeedafb6a8dca715a336a7fb4fb6a03bb29fea3e115a4af571b1574cf8
DIST swt-4.10-gtk-linux-ppc64le.zip 3848264 BLAKE2B 214861fde6987906fb24f3187936f3bcb49aebed54fe242427c3737bf6761e8f77d049c376f30ca0fc33e74a1e8a48b6aff6d9863775ee9c33fea7cb2edd1309 SHA512 1b3ede58c2b41abae76f58a303bd3fbf1849ba8be3fd6518325bc22400e960c3ab542e7351b1bc08053e2746ea3e28812e04c2d1789cb1e19ea28745c8a5f39a
DIST swt-4.10-gtk-linux-x86_64.zip 3844306 BLAKE2B 0e0ed21708acce347fd025920ee635f586c460f8a9c05a7067fd70eed9da999b4a62a5febd17f0c5546ab15198336038e4ab49a1bd588d49ffb39450353a1911 SHA512 9dd946cb7c11446f553f06b8af516167519bab00d4a89f626cd612be6d18e50023fc537aa3d844a8f7a56a767df00410efe4dd20e2bfd930639330a1e279a7a0
+DIST swt-4.27-gtk-linux-aarch64.zip 3849438 BLAKE2B b07daa4942c450d5cca5a323b0649a645fe9a283b272a73a9675f3bd07fbae859c41f451521231a93f4fb56ae4093d57474545611c4789c076abad2e9e1c911f SHA512 a3ba011258e5906beb15ffd5deaa73fc9a5ed5f7bce78a4a683ad8ad12a5cca1fa3a0d89fed6da9f4ade530ea3bda09093ad43202993b522a060a9dcd98746d3
+DIST swt-4.27-gtk-linux-ppc64le.zip 3872996 BLAKE2B 58ae779b7103da932719fe702674e211f8f0068c3b6094172b4c58e939de96d8d43ef80d40740c29f6fcd802a252a87ba850e9e6320d881c958b0161700e4e8c SHA512 6f8f1fce502e0980ced3f201dcdeb3397a583a9ba9ebe76d82c713c440d614c4ff38efe5f596a9da25940f931e3c651c36b18211faea4fab31872d25566b060a
+DIST swt-4.27-gtk-linux-x86_64.zip 3869518 BLAKE2B d0eb7d1be59944cbffe5556c258043d084f7f1a8fa1d9ad9c3738896adc12aa015f85b675ba72af31de566ae451280bb83d82082b3f589c8da643631bf1f7bfb SHA512 efa89c1752340978e1aa1d2343a07df001fa952092aef959bdeedf53a31270d24ebe34ccb50e72ef2221da810ed08c53b188a80aab8a37e5932f85f6771ea1ef
EBUILD swt-3.7.2-r3.ebuild 4286 BLAKE2B 40e4b69caa7d503bbe4a832a7b3d685fc88c6469a10bad3321b33f97959e46f4af4677afaac824526c97f683a43644e4f0fd7c45b47ba360a3e9c5f18c01edc6 SHA512 517cd181329938b7bf6108713827c29825410e3053b38c3971cfbdeacc7012c3385717e130d244f7e02d96dc18d7349d52656df552c26a452d903d2be1bee995
-EBUILD swt-3.8.2-r4.ebuild 4080 BLAKE2B 84cf90257a379eee4b0130e7d61319d96afe7beefb3a5186376a4a44ad993dffdb47fe02b20e3d14ec04cf22cc8cf353ef1a8a53a9adf6879d2b5245bdeb4c37 SHA512 0f2aa63789a0364aa7c444995576dc2c8d4437a9c7f3ac97886d3c601461e7a61caabdbd2b2d12ba7c05aec4e8bf81852a85caf4b691ef9b55e4b2b706baa021
EBUILD swt-4.10-r2.ebuild 4528 BLAKE2B 71b929a9ca02b5918314b5bf2631aa374c089d3a749e645c84865266f1cc5eebc2de5cea17471834fc329012276722c6a922c9d9266d9c9f24c45362af3b5b9b SHA512 5d7bf83a2c1b664e5e2b76336b35100eed8eef45986dc896ef5751b50431b34cfe99d9084ecae547e54dc5b250fc793fe7dd5f8c52294c442f193c2acabec480
-MISC metadata.xml 519 BLAKE2B 5c132bb4b8d9fbacfae3262a550e34932088ecbd204c3a8c2c13d782b0b0fa37a3b255bc84c388ee13f874b427a87a4321e605d0c614308300c18715c9631ab5 SHA512 ef81d6d7cc9f8e2309dcb8bdd78ea942a7a300ba4ed8506a93f12150c9142a5f62a153c0d77e3000f78637d5523367b7fce1186bbac01cafae10d4d0af6c959d
+EBUILD swt-4.27.ebuild 3315 BLAKE2B 38a6424498f1b907170cca4c8ccc4d4c6959aa8f6f56b31c5a522d5f75748cde776958a3800f1d80fbb125672c79d73c5e4fdb87f828797c0ae0224973e5360f SHA512 6400d2bfa6737578779c44755032b4a2689384d50868b972197fae9bd632affea03651563abfe4231217637595bbd32a9e4cca0e00b21f92c3353e57b9cdaa37
+MISC metadata.xml 761 BLAKE2B f70a4d3ff5fcfad5705772396957664e700bd3ffe9580ac141c5faa11e24562b0cbc199a2f49d61d6a2a08058374dc1b7bfd9ae258e4a692e5b3c340f478da25 SHA512 1e8b8ceb30071c8271365a2d515e094c11ab569c4fee7b7f905d5de0a7613518320a1912b2b958d816e04d9876ed75425e16de9a35e1d6be6466888e08a420b3
diff --git a/dev-java/swt/files/swt-3.8-as-needed-and-flag-fixes.patch b/dev-java/swt/files/swt-3.8-as-needed-and-flag-fixes.patch
deleted file mode 100644
index ce5c54e408e2..000000000000
--- a/dev-java/swt/files/swt-3.8-as-needed-and-flag-fixes.patch
+++ /dev/null
@@ -1,243 +0,0 @@
---- a/make_freebsd.mak
-+++ b/make_freebsd.mak
-@@ -64,7 +64,7 @@ GLXLIBS = -L/usr/X11R6/lib -lGL -lGLU -lm
- # Uncomment for Native Stats tool
- #NATIVE_STATS = -DNATIVE_STATS
-
--MOZILLACFLAGS = -O \
-+MOZILLACFLAGS += \
- -DSWT_VERSION=$(SWT_VERSION) \
- $(NATIVE_STATS) \
- -DMOZILLA_STRICT_API=1 \
-@@ -91,7 +91,7 @@ XULRUNNER_OBJECTS = swt.o xpcomxul.o xpcomxul_custom.o xpcomxul_structs.o xpcomx
- XPCOMINIT_OBJECTS = swt.o xpcominit.o xpcominit_structs.o xpcominit_stats.o
- GLX_OBJECTS = swt.o glx.o glx_structs.o glx_stats.o
-
--CFLAGS = -O -Wall \
-+CFLAGS += \
- -DSWT_VERSION=$(SWT_VERSION) \
- $(NATIVE_STATS) \
- -DFREEBSD -DGTK \
-@@ -115,13 +115,13 @@ all: make_swt make_atk make_gnome make_glx
- make_swt: $(SWT_LIB) $(SWTPI_LIB)
-
- $(SWT_LIB): $(SWT_OBJECTS)
-- $(CC) $(LFLAGS) -o $(SWT_LIB) $(SWT_OBJECTS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(SWT_LIB) $(SWT_OBJECTS)
-
- callback.o: callback.c callback.h
- $(CC) $(CFLAGS) -DUSE_ASSEMBLER -c callback.c
-
- $(SWTPI_LIB): $(SWTPI_OBJECTS)
-- $(CC) $(LFLAGS) -o $(SWTPI_LIB) $(SWTPI_OBJECTS) $(GTKLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(SWTPI_LIB) $(SWTPI_OBJECTS) $(GTKLIBS)
-
- swt.o: swt.c swt.h
- $(CC) $(CFLAGS) -c swt.c
-@@ -140,7 +140,7 @@ os_stats.o: os_stats.c os_structs.h os.h os_stats.h swt.h
- make_cairo: $(CAIRO_LIB)
-
- $(CAIRO_LIB): $(CAIRO_OBJECTS)
-- $(CC) $(LFLAGS) -o $(CAIRO_LIB) $(CAIRO_OBJECTS) $(CAIROLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(CAIRO_LIB) $(CAIRO_OBJECTS) $(CAIROLIBS)
-
- cairo.o: cairo.c cairo.h swt.h
- $(CC) $(CFLAGS) $(CAIROCFLAGS) -c cairo.c
-@@ -156,7 +156,7 @@ cairo_stats.o: cairo_stats.c cairo_structs.h cairo.h cairo_stats.h swt.h
- make_cde: $(CDE_LIB)
-
- $(CDE_LIB): $(CDE_OBJECTS)
-- $(CC) $(LFLAGS) -o $(CDE_LIB) $(CDE_OBJECTS) $(CDE_LIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(CDE_LIB) $(CDE_OBJECTS) $(CDE_LIBS)
-
- #
- # AWT lib
-@@ -164,7 +164,7 @@ $(CDE_LIB): $(CDE_OBJECTS)
- make_awt:$(AWT_LIB)
-
- $(AWT_LIB): $(AWT_OBJECTS)
-- $(CC) $(AWT_LFLAGS) -o $(AWT_LIB) $(AWT_OBJECTS) $(AWT_LIBS)
-+ $(CC) $(LDFLAGS) $(AWT_LFLAGS) -o $(AWT_LIB) $(AWT_OBJECTS) $(AWT_LIBS)
-
- #
- # Atk lib
-@@ -172,7 +172,7 @@ $(AWT_LIB): $(AWT_OBJECTS)
- make_atk: $(ATK_LIB)
-
- $(ATK_LIB): $(ATK_OBJECTS)
-- $(CC) $(LFLAGS) -o $(ATK_LIB) $(ATK_OBJECTS) $(ATKLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(ATK_LIB) $(ATK_OBJECTS) $(ATKLIBS)
-
- atk.o: atk.c atk.h
- $(CC) $(CFLAGS) $(ATKCFLAGS) -c atk.c
-@@ -189,7 +189,7 @@ atk_stats.o: atk_stats.c atk_structs.h atk_stats.h atk.h
- make_gnome: $(GNOME_LIB)
-
- $(GNOME_LIB): $(GNOME_OBJECTS)
-- $(CC) $(LFLAGS) -o $(GNOME_LIB) $(GNOME_OBJECTS) $(GNOMELIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(GNOME_LIB) $(GNOME_OBJECTS) $(GNOMELIBS)
-
- gnome.o: gnome.c
- $(CC) $(CFLAGS) $(GNOMECFLAGS) -c gnome.c
-@@ -206,7 +206,7 @@ gnome_stats.o: gnome_stats.c gnome_stats.h
- make_mozilla:$(MOZILLA_LIB)
-
- $(MOZILLA_LIB): $(MOZILLA_OBJECTS)
-- $(CXX) -o $(MOZILLA_LIB) $(MOZILLA_OBJECTS) $(MOZILLALFLAGS) ${MOZILLA_LIBS}
-+ $(CXX) $(LDFLAGS) -o $(MOZILLA_LIB) $(MOZILLA_OBJECTS) $(MOZILLALFLAGS) ${MOZILLA_LIBS}
-
- xpcom.o: xpcom.cpp
- $(CXX) $(MOZILLACFLAGS) ${MOZILLA_INCLUDES} -c xpcom.cpp
-@@ -226,7 +226,7 @@ xpcom_stats.o: xpcom_stats.cpp
- make_xulrunner:$(XULRUNNER_LIB)
-
- $(XULRUNNER_LIB): $(XULRUNNER_OBJECTS)
-- $(CXX) -o $(XULRUNNER_LIB) $(XULRUNNER_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-+ $(CXX) $(LDFLAGS) -o $(XULRUNNER_LIB) $(XULRUNNER_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-
- xpcomxul.o: xpcom.cpp
- $(CXX) -o xpcomxul.o $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcom.cpp
-@@ -252,7 +252,7 @@ xpcomxulglue_stats.o: xpcomglue_stats.cpp
- make_xpcominit:$(XPCOMINIT_LIB)
-
- $(XPCOMINIT_LIB): $(XPCOMINIT_OBJECTS)
-- $(CXX) -o $(XPCOMINIT_LIB) $(XPCOMINIT_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-+ $(CXX) $(LDFLAGS) -o $(XPCOMINIT_LIB) $(XPCOMINIT_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-
- xpcominit.o: xpcominit.cpp
- $(CXX) $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcominit.cpp
-@@ -269,7 +269,7 @@ xpcominit_stats.o: xpcominit_stats.cpp
- make_glx: $(GLX_LIB)
-
- $(GLX_LIB): $(GLX_OBJECTS)
-- $(CC) $(LFLAGS) -o $(GLX_LIB) $(GLX_OBJECTS) $(GLXLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(GLX_LIB) $(GLX_OBJECTS) $(GLXLIBS)
-
- glx.o: glx.c
- $(CC) $(CFLAGS) $(GLXCFLAGS) -c glx.c
---- a/make_linux.mak
-+++ b/make_linux.mak
-@@ -66,7 +66,7 @@ GLXLIBS = -lGL -lGLU -lm
- # Uncomment for Native Stats tool
- #NATIVE_STATS = -DNATIVE_STATS
-
--MOZILLACFLAGS = -O \
-+MOZILLACFLAGS = $(CXXFLAGS) \
- -DSWT_VERSION=$(SWT_VERSION) \
- $(NATIVE_STATS) \
- -DMOZILLA_STRICT_API=1 \
-@@ -106,7 +106,7 @@ XPCOMINIT_OBJECTS = swt.o xpcominit.o xpcominit_structs.o xpcominit_stats.o
- WEBKIT_OBJECTS = swt.o webkit.o webkit_structs.o webkit_stats.o
- GLX_OBJECTS = swt.o glx.o glx_structs.o glx_stats.o
-
--CFLAGS = -O -Wall \
-+CFLAGS += \
- -DSWT_VERSION=$(SWT_VERSION) \
- $(NATIVE_STATS) \
- -DLINUX -DGTK \
-@@ -130,13 +130,13 @@ all: make_swt make_atk make_glx make_webkit
- make_swt: $(SWT_LIB) $(SWTPI_LIB)
-
- $(SWT_LIB): $(SWT_OBJECTS)
-- $(CC) $(LFLAGS) -o $(SWT_LIB) $(SWT_OBJECTS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(SWT_LIB) $(SWT_OBJECTS)
-
- callback.o: callback.c callback.h
- $(CC) $(CFLAGS) -DUSE_ASSEMBLER -c callback.c
-
- $(SWTPI_LIB): $(SWTPI_OBJECTS)
-- $(CC) $(LFLAGS) -o $(SWTPI_LIB) $(SWTPI_OBJECTS) $(GTKLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(SWTPI_LIB) $(SWTPI_OBJECTS) $(GTKLIBS)
-
- swt.o: swt.c swt.h
- $(CC) $(CFLAGS) -c swt.c
-@@ -155,7 +155,7 @@ os_stats.o: os_stats.c os_structs.h os.h os_stats.h swt.h
- make_cairo: $(CAIRO_LIB)
-
- $(CAIRO_LIB): $(CAIRO_OBJECTS)
-- $(CC) $(LFLAGS) -o $(CAIRO_LIB) $(CAIRO_OBJECTS) $(CAIROLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(CAIRO_LIB) $(CAIRO_OBJECTS) $(CAIROLIBS)
-
- cairo.o: cairo.c cairo.h swt.h
- $(CC) $(CFLAGS) $(CAIROCFLAGS) -c cairo.c
-@@ -171,7 +171,7 @@ cairo_stats.o: cairo_stats.c cairo_structs.h cairo.h cairo_stats.h swt.h
- make_cde: $(CDE_LIB)
-
- $(CDE_LIB): $(CDE_OBJECTS)
-- $(CC) $(LFLAGS) -o $(CDE_LIB) $(CDE_OBJECTS) $(CDE_LIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(CDE_LIB) $(CDE_OBJECTS) $(CDE_LIBS)
-
- #
- # AWT lib
-@@ -179,7 +179,7 @@ $(CDE_LIB): $(CDE_OBJECTS)
- make_awt:$(AWT_LIB)
-
- $(AWT_LIB): $(AWT_OBJECTS)
-- $(CC) $(AWT_LFLAGS) -o $(AWT_LIB) $(AWT_OBJECTS) $(AWT_LIBS)
-+ $(CC) $(LDFLAGS) $(AWT_LFLAGS) -o $(AWT_LIB) $(AWT_OBJECTS) $(AWT_LIBS)
-
- #
- # Atk lib
-@@ -187,7 +187,7 @@ $(AWT_LIB): $(AWT_OBJECTS)
- make_atk: $(ATK_LIB)
-
- $(ATK_LIB): $(ATK_OBJECTS)
-- $(CC) $(LFLAGS) -o $(ATK_LIB) $(ATK_OBJECTS) $(ATKLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(ATK_LIB) $(ATK_OBJECTS) $(ATKLIBS)
-
- atk.o: atk.c atk.h
- $(CC) $(CFLAGS) $(ATKCFLAGS) -c atk.c
-@@ -204,7 +204,7 @@ atk_stats.o: atk_stats.c atk_structs.h atk_stats.h atk.h
- make_gnome: $(GNOME_LIB)
-
- $(GNOME_LIB): $(GNOME_OBJECTS)
-- $(CC) $(LFLAGS) -o $(GNOME_LIB) $(GNOME_OBJECTS) $(GNOMELIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(GNOME_LIB) $(GNOME_OBJECTS) $(GNOMELIBS)
-
- gnome.o: gnome.c
- $(CC) $(CFLAGS) $(GNOMECFLAGS) -c gnome.c
-@@ -221,7 +221,7 @@ gnome_stats.o: gnome_stats.c gnome_stats.h
- make_mozilla:$(MOZILLA_LIB)
-
- $(MOZILLA_LIB): $(MOZILLA_OBJECTS)
-- $(CXX) -o $(MOZILLA_LIB) $(MOZILLA_OBJECTS) $(MOZILLALFLAGS) ${MOZILLA_LIBS}
-+ $(CXX) $(LDFLAGS) -o $(MOZILLA_LIB) $(MOZILLA_OBJECTS) $(MOZILLALFLAGS) ${MOZILLA_LIBS}
-
- xpcom.o: xpcom.cpp
- $(CXX) $(MOZILLACFLAGS) $(MOZILLAEXCLUDES) ${MOZILLA_INCLUDES} -c xpcom.cpp
-@@ -242,7 +242,7 @@ make_xulrunner:$(XULRUNNER_LIB)
-
- $(XULRUNNER_LIB): $(XULRUNNER_OBJECTS)
- echo -e "#include<stdlib.h>\nsize_t je_malloc_usable_size_in_advance(size_t n) {\nreturn n;\n}" | gcc --shared -xc - -o libswt-xulrunner-fix.so
-- $(CXX) -o $(XULRUNNER_LIB) $(XULRUNNER_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-+ $(CXX) $(LDFLAGS) -o $(XULRUNNER_LIB) $(XULRUNNER_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-
- xpcomxul.o: xpcom.cpp
- $(CXX) -o xpcomxul.o $(MOZILLACFLAGS) $(XULRUNNEREXCLUDES) ${XULRUNNER_INCLUDES} -c xpcom.cpp
-@@ -262,7 +262,7 @@ xpcomxul_stats.o: xpcom_stats.cpp
- make_xpcominit:$(XPCOMINIT_LIB)
-
- $(XPCOMINIT_LIB): $(XPCOMINIT_OBJECTS)
-- $(CXX) -o $(XPCOMINIT_LIB) $(XPCOMINIT_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-+ $(CXX) $(LDFLAGS) -o $(XPCOMINIT_LIB) $(XPCOMINIT_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-
- xpcominit.o: xpcominit.cpp
- $(CXX) $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcominit.cpp
-@@ -279,7 +279,7 @@ xpcominit_stats.o: xpcominit_stats.cpp
- make_webkit: $(WEBKIT_LIB)
-
- $(WEBKIT_LIB): $(WEBKIT_OBJECTS)
-- $(CC) $(LFLAGS) -o $(WEBKIT_LIB) $(WEBKIT_OBJECTS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(WEBKIT_LIB) $(WEBKIT_OBJECTS)
-
- webkit.o: webkitgtk.c
- $(CC) $(CFLAGS) $(WEBKITCFLAGS) -c webkitgtk.c -o webkit.o
-@@ -296,7 +296,7 @@ webkit_stats.o: webkitgtk_stats.c webkitgtk_stats.h
- make_glx: $(GLX_LIB)
-
- $(GLX_LIB): $(GLX_OBJECTS)
-- $(CC) $(LFLAGS) -o $(GLX_LIB) $(GLX_OBJECTS) $(GLXLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(GLX_LIB) $(GLX_OBJECTS) $(GLXLIBS)
-
- glx.o: glx.c
- $(CC) $(CFLAGS) $(GLXCFLAGS) -c glx.c
diff --git a/dev-java/swt/files/swt-3.8-manifest b/dev-java/swt/files/swt-3.8-manifest
deleted file mode 100644
index ee9e31c373d6..000000000000
--- a/dev-java/swt/files/swt-3.8-manifest
+++ /dev/null
@@ -1,17 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Fragment-Host: org.eclipse.swt; bundle-version="[3.0.0,4.0.0)"
-Bundle-SymbolicName: org.eclipse.swt.gtk.linux.SWT_ARCH; singleton:=true
-Bundle-Version: 3.8
-Eclipse-PlatformFilter: (& (osgi.ws=gtk) (osgi.os=linux) (osgi.arch=SWT_ARCH))
-Export-Package: org.eclipse.swt.internal.accessibility.gtk; x-internal:=true,
- org.eclipse.swt.internal.cairo; x-internal:=true,
- org.eclipse.swt.internal.cde; x-internal:=true,
- org.eclipse.swt.internal.gnome; x-internal:=true,
- org.eclipse.swt.internal.gtk; x-internal:=true,
- org.eclipse.swt.internal.opengl.glx; x-internal:=true
- org.eclipse.swt.internal.webkit; x-internal:=true
-
diff --git a/dev-java/swt/files/swt-3.8.2-gthread.patch b/dev-java/swt/files/swt-3.8.2-gthread.patch
deleted file mode 100644
index 6f99a59382ba..000000000000
--- a/dev-java/swt/files/swt-3.8.2-gthread.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From c973b9b9be568ebbce618985bc5ee440babf8ab1 Mon Sep 17 00:00:00 2001
-From: Jakub Adam <jakub.adam@ktknet.cz>
-Date: Thu, 27 Jun 2013 10:16:49 +0200
-Subject: [PATCH 1/2] fix-glib-2.35-compatibility
-
-g_thread_init() and g_thread_supported() are deprecated and don't
-have to be used anymore.
-
----
- os.c | 9 +++++----
- 1 file changed, 5 insertions(+), 4 deletions(-)
-
---- a/os.c
-+++ b/os.c
-@@ -4444,9 +4444,9 @@ fail:
- JNIEXPORT void JNICALL OS_NATIVE(_1g_1thread_1init)
- (JNIEnv *env, jclass that, jintLong arg0)
- {
-- OS_NATIVE_ENTER(env, that, _1g_1thread_1init_FUNC);
-+ /*OS_NATIVE_ENTER(env, that, _1g_1thread_1init_FUNC);
- g_thread_init((GThreadFunctions *)arg0);
-- OS_NATIVE_EXIT(env, that, _1g_1thread_1init_FUNC);
-+ OS_NATIVE_EXIT(env, that, _1g_1thread_1init_FUNC);*/
- }
- #endif
-
-@@ -4454,11 +4454,12 @@ JNIEXPORT void JNICALL OS_NATIVE(_1g_1thread_1init)
- JNIEXPORT jboolean JNICALL OS_NATIVE(_1g_1thread_1supported)
- (JNIEnv *env, jclass that)
- {
-- jboolean rc = 0;
-+ /*jboolean rc = 0;
- OS_NATIVE_ENTER(env, that, _1g_1thread_1supported_FUNC);
- rc = (jboolean)g_thread_supported();
- OS_NATIVE_EXIT(env, that, _1g_1thread_1supported_FUNC);
-- return rc;
-+ return rc;*/
-+ return 1;
- }
- #endif
-
---
-1.7.10.4
-
diff --git a/dev-java/swt/files/swt-4.27-as-needed-and-flag-fixes.patch b/dev-java/swt/files/swt-4.27-as-needed-and-flag-fixes.patch
new file mode 100644
index 000000000000..fffbc910c521
--- /dev/null
+++ b/dev-java/swt/files/swt-4.27-as-needed-and-flag-fixes.patch
@@ -0,0 +1,82 @@
+diff -Naur a/make_linux.mak b/make_linux.mak
+--- a/make_linux.mak 2019-01-07 14:08:00.269147198 +0100
++++ b/make_linux.mak 2019-01-07 14:10:28.645155241 +0100
+@@ -98,7 +98,7 @@
+ WEBKIT_OBJECTS = swt.o webkitgtk.o webkitgtk_structs.o webkitgtk_stats.o webkitgtk_custom.o
+ GLX_OBJECTS = swt.o glx.o glx_structs.o glx_stats.o
+
+-CFLAGS := $(CFLAGS) \
++CFLAGS += -fPIC \
+ -DSWT_VERSION=$(SWT_VERSION) \
+ $(NATIVE_STATS) \
+ $(SWT_DEBUG) \
+@@ -130,13 +130,13 @@
+ make_swt: $(SWT_LIB) $(SWTPI_LIB)
+
+ $(SWT_LIB): $(SWT_OBJECTS)
+- $(CC) $(LFLAGS) -o $(SWT_LIB) $(SWT_OBJECTS)
++ $(CC) $(LDFLAGS) $(LFLAGS) -o $(SWT_LIB) $(SWT_OBJECTS)
+
+ callback.o: callback.c callback.h
+ $(CC) $(CFLAGS) $(GTKCFLAGS) -DUSE_ASSEMBLER -c callback.c
+
+ $(SWTPI_LIB): $(SWTPI_OBJECTS)
+- $(CC) $(LFLAGS) -o $(SWTPI_LIB) $(SWTPI_OBJECTS) $(GTKLIBS)
++ $(CC) $(LDFLAGS) $(LFLAGS) -o $(SWTPI_LIB) $(SWTPI_OBJECTS) $(GTKLIBS)
+
+ swt.o: swt.c swt.h
+ $(CC) $(CFLAGS) -c swt.c
+@@ -169,7 +169,7 @@
+ make_cairo: $(CAIRO_LIB)
+
+ $(CAIRO_LIB): $(CAIRO_OBJECTS)
+- $(CC) $(LFLAGS) -o $(CAIRO_LIB) $(CAIRO_OBJECTS) $(CAIROLIBS)
++ $(CC) $(LDFLAGS) $(LFLAGS) -o $(CAIRO_LIB) $(CAIRO_OBJECTS) $(CAIROLIBS)
+
+ cairo.o: cairo.c cairo.h swt.h
+ $(CC) $(CFLAGS) $(CAIROCFLAGS) -c cairo.c
+@@ -184,7 +184,7 @@
+ make_awt:$(AWT_LIB)
+
+ $(AWT_LIB): $(AWT_OBJECTS)
+- $(CC) $(AWT_LFLAGS) -o $(AWT_LIB) $(AWT_OBJECTS) $(AWT_LIBS)
++ $(CC) -fPIC $(LDFLAGS) $(AWT_LFLAGS) -o $(AWT_LIB) $(AWT_OBJECTS) $(AWT_LIBS)
+
+ #
+ # Atk lib
+@@ -192,7 +192,7 @@
+ make_atk: $(ATK_LIB)
+
+ $(ATK_LIB): $(ATK_OBJECTS)
+- $(CC) $(LFLAGS) -o $(ATK_LIB) $(ATK_OBJECTS) $(ATKLIBS)
++ $(CC) $(LDFLAGS) $(LFLAGS) -o $(ATK_LIB) $(ATK_OBJECTS) $(ATKLIBS)
+
+ atk.o: atk.c atk.h
+ $(CC) $(CFLAGS) $(ATKCFLAGS) -c atk.c
+@@ -209,7 +209,7 @@
+ make_webkit: $(WEBKIT_LIB)
+
+ $(WEBKIT_LIB): $(WEBKIT_OBJECTS)
+- $(CC) $(LFLAGS) -o $(WEBKIT_LIB) $(WEBKIT_OBJECTS) $(WEBKITLIBS)
++ $(CC) $(LDFLAGS) $(LFLAGS) -o $(WEBKIT_LIB) $(WEBKIT_OBJECTS) $(WEBKITLIBS)
+
+ webkitgtk.o: webkitgtk.c webkitgtk_custom.h
+ $(CC) $(CFLAGS) $(WEBKITCFLAGS) -c webkitgtk.c
+# @@ -217,7 +217,7 @@
+# make_webkit2extension: $(WEBKIT_EXTENSION_LIB)
+#
+# $(WEBKIT_EXTENSION_LIB) : webkitgtk_extension.o
+# - $(CC) $(LFLAGS) -o $@ $^ $(WEBKIT_EXTENSION_LFLAGS)
+# + $(CC) $(LDFLAGS) $(LFLAGS) -o $@ $^ $(WEBKIT_EXTENSION_LFLAGS)
+#
+# webkitgtk_extension.o : webkitgtk_extension.c
+# $(CC) $(CFLAGS) $(WEBKIT_EXTENSION_CFLAGS) ${SWT_PTR_CFLAGS} -fPIC -c $^
+@@ -229,7 +229,7 @@
+ make_glx: $(GLX_LIB)
+
+ $(GLX_LIB): $(GLX_OBJECTS)
+- $(CC) $(LFLAGS) -o $(GLX_LIB) $(GLX_OBJECTS) $(GLXLIBS)
++ $(CC) $(LDFLAGS) $(LFLAGS) -o $(GLX_LIB) $(GLX_OBJECTS) $(GLXLIBS)
+
+ glx.o: glx.c
+ $(CC) $(CFLAGS) $(GLXCFLAGS) -c glx.c
diff --git a/dev-java/swt/metadata.xml b/dev-java/swt/metadata.xml
index d94f6cdd831e..c06386289922 100644
--- a/dev-java/swt/metadata.xml
+++ b/dev-java/swt/metadata.xml
@@ -10,4 +10,9 @@
Eclipse platform in an operating system independent manner. It is analogous to
AWT/Swing in Java with a difference - SWT uses a rich set of native widgets.
</longdescription>
+ <upstream>
+ <bugs-to>https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Platform%38component=SWT</bugs-to>
+ <doc>https://wiki.eclipse.org/SWT</doc>
+ <remote-id type="github">eclipse-platform/eclipse.platform.swt</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/swt/swt-3.8.2-r4.ebuild b/dev-java/swt/swt-3.8.2-r4.ebuild
deleted file mode 100644
index ca352d8bd6b2..000000000000
--- a/dev-java/swt/swt-3.8.2-r4.ebuild
+++ /dev/null
@@ -1,152 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit java-pkg-2 java-ant-2 toolchain-funcs java-osgi
-
-MY_PV="${PV/_rc/RC}"
-MY_DMF="https://archive.eclipse.org/eclipse/downloads/drops/R-${MY_PV}-201301310800"
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="GTK based SWT Library"
-HOMEPAGE="https://www.eclipse.org/"
-SRC_URI="
- amd64? ( ${MY_DMF}/${MY_P}-gtk-linux-x86_64.zip )
- ppc? ( ${MY_DMF}/${MY_P}-gtk-linux-x86.zip )
- ppc64? ( ${MY_DMF}/${MY_P}-gtk-linux-ppc64.zip )
- x86? ( ${MY_DMF}/${MY_P}-gtk-linux-x86.zip )"
-
-LICENSE="CPL-1.0 LGPL-2.1 MPL-1.1"
-SLOT="3.8"
-KEYWORDS="amd64 ppc64 x86"
-IUSE="cairo opengl"
-
-COMMON_DEPEND="
- >=dev-libs/atk-1.10.2
- >=dev-libs/glib-2.6
- >=x11-libs/gtk+-2.6.8:2
- x11-libs/libXtst
- cairo? ( >=x11-libs/cairo-1.4.14 )
- opengl? (
- virtual/glu
- virtual/opengl
- )"
-DEPEND="${COMMON_DEPEND}
- app-arch/unzip
- virtual/jdk:1.8
- virtual/pkgconfig
- x11-base/xorg-proto
- x11-libs/libX11
- x11-libs/libXrender
- x11-libs/libXt
- >=x11-libs/libXtst-1.1.0"
-RDEPEND="${COMMON_DEPEND}
- >=virtual/jre-1.4"
-
-S="${WORKDIR}"
-
-# JNI libraries don't need SONAME, bug #253756
-QA_SONAME="usr/lib.*/libswt-.*.so"
-
-PATCHES=(
- "${FILESDIR}"/swt-3.8-as-needed-and-flag-fixes.patch
- "${FILESDIR}"/swt-3.8.2-gthread.patch
-)
-
-src_unpack() {
- local DISTFILE=${A}
- unzip -jq "${DISTDIR}"/${DISTFILE} "*src.zip" || die "Unable to extract distfile"
- unpack "./src.zip"
-
- # Cleanup the redirtied directory structure
- rm -rf about_files/ || die
-}
-
-src_prepare() {
- default
- # Replace the build.xml to allow compilation without Eclipse tasks
- cp "${FILESDIR}/build.xml" "${S}/build.xml" || die "Unable to update build.xml"
-
- mkdir -p "${S}/src"
- mv "${S}/org" "${S}/src" || die "Unable to restructure SWT sources"
-}
-
-src_compile() {
- # Drop jikes support as it seems to be unfriendly with SWT
- java-pkg_filter-compiler jikes
-
- local AWT_ARCH
- local JAWTSO="libjawt.so"
- if [[ $(tc-arch) == 'x86' ]] ; then
- AWT_ARCH="i386"
- elif [[ $(tc-arch) == 'ppc' ]] ; then
- AWT_ARCH="ppc"
- elif [[ $(tc-arch) == 'ppc64' ]] ; then
- AWT_ARCH="ppc64"
- else
- AWT_ARCH="amd64"
- fi
- if [[ -f "${JAVA_HOME}/jre/lib/${AWT_ARCH}/${JAWTSO}" ]]; then
- export AWT_LIB_PATH="${JAVA_HOME}/jre/lib/${AWT_ARCH}"
- elif [[ -f "${JAVA_HOME}/jre/bin/${JAWTSO}" ]]; then
- export AWT_LIB_PATH="${JAVA_HOME}/jre/bin"
- elif [[ -f "${JAVA_HOME}/$(get_libdir)/${JAWTSO}" ]] ; then
- export AWT_LIB_PATH="${JAVA_HOME}/$(get_libdir)"
- else
- eerror "${JAWTSO} not found in the JDK being used for compilation!"
- die "cannot build AWT library"
- fi
-
- # Fix the pointer size for AMD64
- [[ ${ARCH} == "amd64" || ${ARCH} == "ppc64" ]] && export SWT_PTR_CFLAGS=-DJNI64
-
- local make="emake -f make_linux.mak NO_STRIP=y CC=$(tc-getCC) CXX=$(tc-getCXX)"
-
- einfo "Building AWT library"
- ${make} make_awt
-
- 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
-
- einfo "Building JNI libraries"
- eant compile
-
- einfo "Copying missing files"
- cp -i "${S}/version.txt" "${S}/build/version.txt" || die
- cp -i "${S}/src/org/eclipse/swt/internal/SWTMessages.properties" \
- "${S}/build/org/eclipse/swt/internal/" || die
-
- einfo "Packing JNI libraries"
- eant jar
-}
-
-src_install() {
- swtArch=${ARCH}
- use amd64 && swtArch=x86_64
-
- sed "s/SWT_ARCH/${swtArch}/" "${FILESDIR}/${PN}-${SLOT}-manifest" > "MANIFEST_TMP.MF" || die
- use cairo || sed -i -e "/ org.eclipse.swt.internal.cairo; x-internal:=true,/d" "MANIFEST_TMP.MF"
- sed -i -e "/ org.eclipse.swt.internal.gnome; x-internal:=true,/d" "MANIFEST_TMP.MF"
- use opengl || sed -i -e "/ org.eclipse.swt.internal.opengl.glx; x-internal:=true,/d" "MANIFEST_TMP.MF"
- sed -i -e "/ org.eclipse.swt.internal.webkit; x-internal:=true,/d" "MANIFEST_TMP.MF"
- java-osgi_newjar-fromfile "swt.jar" "MANIFEST_TMP.MF" "Standard Widget Toolkit for GTK 2.0"
-
- java-pkg_sointo /usr/$(get_libdir)
- java-pkg_doso *.so
-
- dodoc about.html
-}
diff --git a/dev-java/swt/swt-4.27.ebuild b/dev-java/swt/swt-4.27.ebuild
new file mode 100644
index 000000000000..e21194ce71dd
--- /dev/null
+++ b/dev-java/swt/swt-4.27.ebuild
@@ -0,0 +1,142 @@
+# Copyright 1999-2023 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}-202303020300"
+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 )"
+
+LICENSE="CPL-1.0 LGPL-2.1 MPL-1.1"
+SLOT="4.27"
+KEYWORDS="~amd64 ~ppc64"
+IUSE="cairo opengl webkit"
+
+COMMON_DEP="
+ app-accessibility/at-spi2-core:2
+ dev-libs/glib
+ x11-libs/gtk+:2
+ x11-libs/libXtst
+ cairo? ( x11-libs/cairo )
+ opengl? (
+ virtual/glu
+ virtual/opengl
+ )
+ webkit? (
+ net-libs/webkit-gtk:4.1
+ )"
+DEPEND="${COMMON_DEP}
+ >=virtual/jdk-11:*[-headless-awt]
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst"
+RDEPEND="${COMMON_DEP}
+ >=virtual/jre-1.8:*"
+BDEPEND="
+ app-arch/unzip
+ virtual/pkgconfig
+"
+
+HTML_DOCS=( about.html )
+
+JAVA_RESOURCE_DIRS="resources"
+JAVA_SRC_DIR="src"
+
+PATCHES=(
+ "${FILESDIR}/${P}-as-needed-and-flag-fixes.patch"
+)
+
+src_unpack() {
+ default
+ unpack "./src.zip"
+}
+
+src_prepare() {
+ default
+ 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
+ mkdir src || die "mkdir failed"
+ mv org src || die "moving java sources failed"
+ find src -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"
+ ${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
+}