dev-java/swt: drop 3.7.2-r4

Closes: https://bugs.gentoo.org/944885
Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/39990
Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
This commit is contained in:
Volkmar W. Pogatzki
2025-01-05 23:27:46 +01:00
committed by Miroslav Šulc
parent 7ec77c2569
commit e39a83c300
6 changed files with 0 additions and 674 deletions

View File

@@ -1,6 +1,3 @@
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-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.29-gtk-linux-aarch64.zip 3836724 BLAKE2B 8c905df298688686ee22c9f2021560856f7ac7b6a92dad744b27cd30530c6ff76470fdcbb79b91ada01f28c43b8f694c334ff1337d692366ae9dc0319f7e46e2 SHA512 44ff572b57631b1b6a98192f60624758d90f54a2b2272c6bbb140ece39e65bb4086cf08fbc50c5f2e388e7b410b28fc014b87a8560062053b4c131970fa38b17

View File

@@ -1,243 +0,0 @@
--- a/make_linux.mak
+++ b/make_linux.mak
@@ -66,7 +66,7 @@
# Uncomment for Native Stats tool
#NATIVE_STATS = -DNATIVE_STATS
-MOZILLACFLAGS = -O \
+MOZILLACFLAGS = $(CXXFLAGS) \
-DSWT_VERSION=$(SWT_VERSION) \
$(NATIVE_STATS) \
-DMOZILLA_STRICT_API=1 \
@@ -107,7 +107,7 @@
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 \
@@ -131,13 +131,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) -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
@@ -156,7 +156,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
@@ -172,7 +172,7 @@
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
@@ -180,7 +180,7 @@
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
@@ -188,7 +188,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
@@ -205,7 +205,7 @@
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
@@ -222,7 +222,7 @@
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)
- $(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 @@
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 @@
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)
webkit.o: webkitgtk.c
$(CC) $(CFLAGS) $(WEBKITCFLAGS) -c webkitgtk.c -o webkit.o
@@ -296,7 +296,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
--- a/make_freebsd.mak
+++ b/make_freebsd.mak
@@ -64,7 +64,7 @@
# 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 @@
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 @@
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 @@
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 @@
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 @@
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 @@
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 @@
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 @@
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 @@
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 @@
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 @@
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

View File

@@ -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.7
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

View File

@@ -1,121 +0,0 @@
Program.launch will first attempt to open files using libgio and then fallback
to gnome-vfs. gio_launch uses g_file_new_for_path which fails when passed a
URI. If swt was built with USE="-gnome" then the fallback fails as well,
making it appear that a package has a dependency on swt[gnome] when it does
not.
Caused by: java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons:
no swt-gnome-gtk-3740 in java.library.path
no swt-gnome-gtk in java.library.path
Can't load library: /home/xxx/.swt/lib/linux/x86_64/libswt-gnome-gtk-3740.so
Can't load library: /home/xxx/.swt/lib/linux/x86_64/libswt-gnome-gtk.so
Use g_file_new_for_commandline_arg instead.
https://bugs.gentoo.org/424151
--- a/os.c
+++ b/os.c
@@ -3059,6 +3059,30 @@ fail:
}
#endif
+#ifndef NO__1g_1file_1new_1for_1commandline_1arg
+JNIEXPORT jintLong JNICALL OS_NATIVE(_1g_1file_1new_1for_1commandline_1arg)
+ (JNIEnv *env, jclass that, jbyteArray arg0)
+{
+ jbyte *lparg0=NULL;
+ jintLong rc = 0;
+ OS_NATIVE_ENTER(env, that, _1g_1file_1new_1for_1commandline_1arg_FUNC);
+ if (arg0) if ((lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL)) == NULL) goto fail;
+/*
+ rc = (jintLong)g_file_new_for_commandline_arg(lparg0);
+*/
+ {
+ LOAD_FUNCTION(fp, g_file_new_for_commandline_arg)
+ if (fp) {
+ rc = (jintLong)((jintLong (CALLING_CONVENTION*)(jbyte *))fp)(lparg0);
+ }
+ }
+fail:
+ if (arg0 && lparg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
+ OS_NATIVE_EXIT(env, that, _1g_1file_1new_1for_1commandline_1arg_FUNC);
+ return rc;
+}
+#endif
+
#ifndef NO__1g_1file_1new_1for_1path
JNIEXPORT jintLong JNICALL OS_NATIVE(_1g_1file_1new_1for_1path)
(JNIEnv *env, jclass that, jbyteArray arg0)
--- a/os_custom.h
+++ b/os_custom.h
@@ -280,6 +280,7 @@
#define g_file_icon_get_file_LIB LIB_GIO
#define g_file_info_get_content_type_LIB LIB_GIO
#define g_file_info_get_modification_time_LIB LIB_GIO
+#define g_file_new_for_commandline_arg_LIB LIB_GIO
#define g_file_new_for_path_LIB LIB_GIO
#define g_file_new_for_uri_LIB LIB_GIO
#define g_file_read_LIB LIB_GIO
--- a/os_stats.c
+++ b/os_stats.c
@@ -18,8 +18,8 @@
#ifdef NATIVE_STATS
-int OS_nativeFunctionCount = 1396;
-int OS_nativeFunctionCallCount[1396];
+int OS_nativeFunctionCount = 1397;
+int OS_nativeFunctionCallCount[1397];
char * OS_nativeFunctionNames[] = {
#ifndef JNI64
"Call__IIII",
@@ -250,6 +250,7 @@ char * OS_nativeFunctionNames[] = {
"_1g_1file_1icon_1get_1file",
"_1g_1file_1info_1get_1content_1type",
"_1g_1file_1info_1get_1modification_1time",
+ "_1g_1file_1new_1for_1commandline_1arg",
"_1g_1file_1new_1for_1path",
"_1g_1file_1new_1for_1uri",
"_1g_1file_1query_1info",
--- a/os_stats.h
+++ b/os_stats.h
@@ -258,6 +258,7 @@ typedef enum {
_1g_1file_1icon_1get_1file_FUNC,
_1g_1file_1info_1get_1content_1type_FUNC,
_1g_1file_1info_1get_1modification_1time_FUNC,
+ _1g_1file_1new_1for_1commandline_1arg_FUNC,
_1g_1file_1new_1for_1path_FUNC,
_1g_1file_1new_1for_1uri_FUNC,
_1g_1file_1query_1info_FUNC,
--- a/src/org/eclipse/swt/internal/gtk/OS.java
+++ b/src/org/eclipse/swt/internal/gtk/OS.java
@@ -2113,6 +2113,16 @@ public static final int /*long*/ g_file_new_for_path(byte[] fileName) {
}
}
/** @method flags=dynamic */
+public static final native int /*long*/ _g_file_new_for_commandline_arg(byte[] fileName);
+public static final int /*long*/ g_file_new_for_commandline_arg(byte[] fileName) {
+ lock.lock();
+ try {
+ return _g_file_new_for_commandline_arg(fileName);
+ } finally {
+ lock.unlock();
+ }
+}
+/** @method flags=dynamic */
public static final native int /*long*/ _g_file_new_for_uri(byte[] fileName);
public static final int /*long*/ g_file_new_for_uri(byte[] fileName) {
lock.lock();
--- a/src/org/eclipse/swt/program/Program.java
+++ b/src/org/eclipse/swt/program/Program.java
@@ -954,7 +954,7 @@ static boolean gio_isExecutable(String fileName) {
static boolean gio_launch(String fileName) {
boolean result = false;
byte[] fileNameBuffer = Converter.wcsToMbcs (null, fileName, true);
- int /*long*/ file = OS.g_file_new_for_path (fileNameBuffer);
+ int /*long*/ file = OS.g_file_new_for_commandline_arg (fileNameBuffer);
if (file != 0) {
int /*long*/ uri = OS.g_file_get_uri (file);
if (uri != 0) {

View File

@@ -1,121 +0,0 @@
Program.launch will first attempt to open files using libgio and then fallback
to gnome-vfs. gio_launch uses g_file_new_for_path which fails when passed a
URI. If swt was built with USE="-gnome" then the fallback fails as well,
making it appear that a package has a dependency on swt[gnome] when it does
not.
Caused by: java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons:
no swt-gnome-gtk-3740 in java.library.path
no swt-gnome-gtk in java.library.path
Can't load library: /home/xxx/.swt/lib/linux/x86_64/libswt-gnome-gtk-3740.so
Can't load library: /home/xxx/.swt/lib/linux/x86_64/libswt-gnome-gtk.so
Use g_file_new_for_commandline_arg instead.
https://bugs.gentoo.org/424151
--- a/os.c
+++ b/os.c
@@ -3059,6 +3059,30 @@ fail:
}
#endif
+#ifndef NO__1g_1file_1new_1for_1commandline_1arg
+JNIEXPORT jintLong JNICALL OS_NATIVE(_1g_1file_1new_1for_1commandline_1arg)
+ (JNIEnv *env, jclass that, jbyteArray arg0)
+{
+ jbyte *lparg0=NULL;
+ jintLong rc = 0;
+ OS_NATIVE_ENTER(env, that, _1g_1file_1new_1for_1commandline_1arg_FUNC);
+ if (arg0) if ((lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL)) == NULL) goto fail;
+/*
+ rc = (jintLong)g_file_new_for_commandline_arg(lparg0);
+*/
+ {
+ LOAD_FUNCTION(fp, g_file_new_for_commandline_arg)
+ if (fp) {
+ rc = (jintLong)((jintLong (CALLING_CONVENTION*)(jbyte *))fp)(lparg0);
+ }
+ }
+fail:
+ if (arg0 && lparg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
+ OS_NATIVE_EXIT(env, that, _1g_1file_1new_1for_1commandline_1arg_FUNC);
+ return rc;
+}
+#endif
+
#ifndef NO__1g_1file_1new_1for_1path
JNIEXPORT jintLong JNICALL OS_NATIVE(_1g_1file_1new_1for_1path)
(JNIEnv *env, jclass that, jbyteArray arg0)
--- a/os_custom.h
+++ b/os_custom.h
@@ -280,6 +280,7 @@
#define g_file_icon_get_file_LIB LIB_GIO
#define g_file_info_get_content_type_LIB LIB_GIO
#define g_file_info_get_modification_time_LIB LIB_GIO
+#define g_file_new_for_commandline_arg_LIB LIB_GIO
#define g_file_new_for_path_LIB LIB_GIO
#define g_file_new_for_uri_LIB LIB_GIO
#define g_file_read_LIB LIB_GIO
--- a/os_stats.c
+++ b/os_stats.c
@@ -18,8 +18,8 @@
#ifdef NATIVE_STATS
-int OS_nativeFunctionCount = 1396;
-int OS_nativeFunctionCallCount[1396];
+int OS_nativeFunctionCount = 1397;
+int OS_nativeFunctionCallCount[1397];
char * OS_nativeFunctionNames[] = {
#ifndef JNI64
"Call__IIII",
@@ -250,6 +250,7 @@ char * OS_nativeFunctionNames[] = {
"_1g_1file_1icon_1get_1file",
"_1g_1file_1info_1get_1content_1type",
"_1g_1file_1info_1get_1modification_1time",
+ "_1g_1file_1new_1for_1commandline_1arg",
"_1g_1file_1new_1for_1path",
"_1g_1file_1new_1for_1uri",
"_1g_1file_1query_1info",
--- a/os_stats.h
+++ b/os_stats.h
@@ -258,6 +258,7 @@ typedef enum {
_1g_1file_1icon_1get_1file_FUNC,
_1g_1file_1info_1get_1content_1type_FUNC,
_1g_1file_1info_1get_1modification_1time_FUNC,
+ _1g_1file_1new_1for_1commandline_1arg_FUNC,
_1g_1file_1new_1for_1path_FUNC,
_1g_1file_1new_1for_1uri_FUNC,
_1g_1file_1query_1info_FUNC,
--- a/src/org/eclipse/swt/internal/gtk/OS.java
+++ b/src/org/eclipse/swt/internal/gtk/OS.java
@@ -2113,6 +2113,16 @@ public static final long /*int*/ g_file_new_for_path(byte[] fileName) {
}
}
/** @method flags=dynamic */
+public static final native long /*int*/ _g_file_new_for_commandline_arg(byte[] fileName);
+public static final long /*int*/ g_file_new_for_commandline_arg(byte[] fileName) {
+ lock.lock();
+ try {
+ return _g_file_new_for_commandline_arg(fileName);
+ } finally {
+ lock.unlock();
+ }
+}
+/** @method flags=dynamic */
public static final native long /*int*/ _g_file_new_for_uri(byte[] fileName);
public static final long /*int*/ g_file_new_for_uri(byte[] fileName) {
lock.lock();
--- a/src/org/eclipse/swt/program/Program.java
+++ b/src/org/eclipse/swt/program/Program.java
@@ -954,7 +954,7 @@ static boolean gio_isExecutable(String fileName) {
static boolean gio_launch(String fileName) {
boolean result = false;
byte[] fileNameBuffer = Converter.wcsToMbcs (null, fileName, true);
- long /*int*/ file = OS.g_file_new_for_path (fileNameBuffer);
+ long /*int*/ file = OS.g_file_new_for_commandline_arg (fileNameBuffer);
if (file != 0) {
long /*int*/ uri = OS.g_file_get_uri (file);
if (uri != 0) {

View File

@@ -1,169 +0,0 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
JAVA_PKG_IUSE="doc source"
inherit java-pkg-2 java-pkg-simple java-osgi toolchain-funcs
MY_PV="${PV/_rc/RC}"
MY_DMF="https://archive.eclipse.org/eclipse/downloads/drops/R-${MY_PV}-201202080800"
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 )
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.7"
KEYWORDS="amd64 ppc64"
IUSE="cairo opengl"
BDEPEND="
app-arch/unzip
virtual/pkgconfig
"
COMMON_DEPEND="
app-accessibility/at-spi2-core:2
dev-libs/glib
>=x11-libs/gtk+-2.6.8:2
x11-libs/libXtst
cairo? ( x11-libs/cairo )
opengl? (
virtual/glu
virtual/opengl
)"
DEPEND="${COMMON_DEPEND}
>=virtual/jdk-1.8:*[-headless-awt]
x11-base/xorg-proto
x11-libs/libX11
x11-libs/libXrender
x11-libs/libXt
x11-libs/libXtst"
RDEPEND="${COMMON_DEPEND}
>=virtual/jre-1.8:*"
# JNI libraries don't need SONAME, bug #253756
QA_SONAME="usr/lib.*/libswt-.*.so"
JAVA_RESOURCE_DIRS="resources"
JAVA_SRC_DIR="src"
PATCHES=(
# Fix Makefiles to respect flags and work with --as-needed
"${FILESDIR}"/as-needed-and-flag-fixes-3.6.patch
)
src_unpack() {
default
unpack "./src.zip"
}
src_prepare() {
default #780585
java-pkg-2_src_prepare
java-pkg_clean
mkdir resources src || die "mkdir failed"
mv org src || die "moving java sources failed"
case ${ARCH} in
ppc|x86) eapply "${FILESDIR}"/${P}-gio_launch-URI-x86.patch ;;
*) eapply "${FILESDIR}"/${P}-gio_launch-URI.patch ;;
esac
pushd src > /dev/null || die
find -type f ! -name '*.java' \
| xargs \
cp --parent -t ../resources -v \
|| die "copying resources failed"
popd > /dev/null || die
cp version.txt resources || die "adding version.txt failed"
}
src_compile() {
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
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
[[ ${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
java-pkg-simple_src_compile
}
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" || die
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" || die
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
docinto html
dodoc about.html
}