Sync from SUSE:SLFO:Main java-atk-wrapper revision 70f580d79104b46d0d40ec48028a38d3

This commit is contained in:
Adrian Schröter 2024-05-03 13:56:25 +02:00
commit 8a11d49591
7 changed files with 391 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

12
HOWTO Normal file
View File

@ -0,0 +1,12 @@
Package installs java-atk-wrapper in a JRE-independent way. It is up to each
JRE to make use of it correctly. In general, you want to symlink the shared
object and the jar into somehwere where the JRE can find it and configure the
accessiblity configuration of the JRE to load this.
For OpenJDK, the process looks like this:
ln -s %{_libdir}/java-atk-wrapper/libatk-wrapper.so \
/usr/lib/jvm/jre/lib/%{arch}/libatk-wrapper.so
ln -s %{_libdir}/java-atk-wrapper/java-atk-wrapper.jar \
/usr/lib/jvm/jre/lib/ext/
echo "assistive_technologies=org.GNOME.Accessibility.AtkWrapper" \
>> /usr/lib/java/jre/lib/accessibility.properties

38
autogen.sh Normal file
View File

@ -0,0 +1,38 @@
#!/bin/sh
# Run this to generate all the initial makefiles, etc.
test -n "$srcdir" || srcdir=`dirname "$0"`
test -n "$srcdir" || srcdir=.
olddir=`pwd`
cd "$srcdir"
mkdir -p m4
AUTORECONF=`which autoreconf`
if test -z ${AUTORECONF}; then
echo "*** No autoreconf found, please intall it ***"
exit 1
else
autoreconf -vif || exit $?
fi
PKGCONFIG=`which pkg-config`
if test -z "$PKGCONFIG"; then
echo "*** pkg-config not found, please install it ***"
exit 1
fi
pkg-config --print-errors gobject-introspection-1.0
if [ "$?" != 0 ]; then
echo "You probably need to install 'libgirepository1.0-dev'"
exit 1
fi
# README and INSTALL are required by automake, but may be deleted by clean
# up rules. to get automake to work, simply touch these here, they will be
# regenerated from their corresponding *.in files by ./configure anyway.
touch README INSTALL
cd "$olddir"
test -n "$NOCONFIGURE" || "$srcdir/configure" "$@"

BIN
java-atk-wrapper-0.38.0.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

198
java-atk-wrapper.changes Normal file
View File

@ -0,0 +1,198 @@
-------------------------------------------------------------------
Mon Mar 7 19:21:06 UTC 2022 - Fridrich Strba <fstrba@suse.com>
- Added patch:
* jaw-dependencies.patch
+ Compile all java files in one run
+ Compile the classes with source/target 8, since the code
does not allow lower versions
+ Compile the module-info.class with source/target 9
-------------------------------------------------------------------
Fri Dec 11 08:36:20 UTC 2020 - Fridrich Strba <fstrba@suse.com>
- Do not build as modular jar, since it is only used by Java 8
- Force building with Java 8 in order to avoid incompatible classes
merged into our different modular Javas.
-------------------------------------------------------------------
Mon Nov 9 08:08:22 UTC 2020 - Fridrich Strba <fstrba@suse.com>
- Update to 3.38.0
* Build:
+ Fix 32bit build
+ Distribute manifest.txt
+ 783982: Fix build warnings
+ 789956: Build cleanups
+ Allow building outside source tree
+ Do not use GTK+
+ Require java 7
+ 789959: Provide a java module
+ Bump atk-bridge-2.0 dependency to 2.33.1
+ 760227: Filter out AtkWrapper.java from distributed files
+ 768824: Replace GNOME_COMPILE_WARNINGS with AX_COMPILER_FLAGS
+ Fix all warnings
+ Extend JAW_DEBUG
+ 752590: Include --enable-compile-warning option
+ 752350: Make with PLATFORM_CFLAGS
+ 752095: Remove AC_PROG_RANLIB and AC_ISC_POSIX from configure.ac
+ 750533: Don't use hard path for HOME install
* JNI:
+ 752588: Create AtkWrapper.h and include in AtkWrapper.c
+ 751997: Create prototype for access init and shutdown
+ 740439: Create jaw_editable_text_set_run_attributes
+ 752334: remove jaw_table_get_index_at
+ 740542: Create jaw_action_get_localized_name
+ 752291: Replace jaw_set_current_value with jaw_value_set_value
+ 742499: Implement bounds-changed signal in AtkWrapper
+ 752236: Create jaw_value_get_range
+ 752190: Create jaw_table_cell_get_column_span
+ 752188: Create jaw_table_cell_get_row_span
+ 752187: Create jaw_table_cell_get_row_column_span
+ 752174: Create jaw_table_cell_get_position
+ 751267: BUGFIX: remove custom implementation of util listeners
+ 752346: Fix unused event listener warnings in jaw_util
* Wrapper:
+ Fix extents value for invalid extents
+ Compact data-changed events queue
+ Provide javax.accessibility.AccessibilityProvider
+ 754688, 768347: Fix crashes on accessible context being NULL
+ 775609: Fix crashes on accessiblestateset being NULL
+ 793544: Fix crashes on ref_selection returning NULL
+ 760058: Deliver accessibility events in a separate context
+ 766772: Fix crash on unbound recursion
+ 770575: Gracefully abort initialization if at-spi fails
+ 793620: Fix iterating hash table in jaw_impl_finalize
+ 793823: Fix coordinates returned by atkcomponent
+ 791970: Fix removing component listener
+ 766774: Call jaw_impl_get_instance from the application thread
+ 793543: Make sure atk objects exist while processing signals
+ 793622: Fix missing reference addition on children_changed::add
+ 793821: Fix atk event parameters
+ 775947: Make jaw thread a daemon thread
+ 793819: Fix freeing objects
+ 669029: Fix netbeans crashes
+ 754748: Fix freemind crashes
+ 758242: Fix swing threading rules
+ Fix SetName/Description/Role/AccessibleParent
+ Fix GetLocale
+ Fix Component extents
+ Fix TableSetCaption/Summary
+ Fix ActionSet/GetDescription
+ Fix GetTextAtOffset
+ Add GetTextBefore/AfterOffset
+ Fix calling Accessible* methods in the EDT only
+ Fix weak/global reference management, to make sure Accessible objects can
+ easily be freed by the GC, but Atk* objects can't.
+ Fix some null dereferences
+ Fix text selection offsets
+ Support alt graph modifier
+ Fix key event hw_code reporting
+ Support TableGetIndexAt
+ Fix TableCell
+ 750937: Emit object:visible-data-changed signals
+ 752319: Create java AtkTextGranularity interface
+ 740439: Create setRunAttributes in AtkEditableText
+ 740542: Create getLocalizedName in AtkAction
+ 752190: Create getColumnSpan in AtkTableCell
+ 752188: Create getRowSpan in AtkTableCell
+ 752187: Create getRowColumnSpan in AtkTableCell
+ 752174: Create getPosition for AtkTableCell
* Internal:
+ Make debugging cope with current directory not being writable
+ Improve debugging log
+ Update HACKING
+ Update bug tracker URL
+ Update missing atk interface implementations
+ Document the whole picture
+ Make Samuel Thibault maintainer
* Maintainership:
+ Update HACKING
- Removed patches
* jaw-avoid-version.patch
* jaw-gdk.patch
* jaw-java_required.patch
* jaw-javah.patch
* jaw-quotes.patch
+ integrated upstream
-------------------------------------------------------------------
Tue Jan 2 17:35:32 UTC 2018 - fstrba@suse.com
- Added patch:
* jaw-javah.patch
+ Do not search for javah, since it is not needed during the
build
-------------------------------------------------------------------
Wed Nov 8 08:54:50 UTC 2017 - fstrba@suse.com
- Added patch:
* jaw-gdk.patch
+ Remove requirement of gdk3. It is not really needed.
-------------------------------------------------------------------
Thu Oct 26 20:21:22 UTC 2017 - fstrba@suse.com
- Added patches:
* jaw-quotes.patch
+ Add quotes when adding CFLAGS to JAW_CFLAGS in order to avoid
that first of the CFLAGS be evaluated as a command
* jaw-java_required.patch
+ Modify java requirement to 1.7, since the code cannot be
built with source level 1.6 due to a diamond operator
- Modified patch:
* jaw-avoid-version.patch
+ Completely discard all libtool versioning of the library
+ This library is not linked, only loaded by the java code and
as such, it needs only .so extension
-------------------------------------------------------------------
Tue Oct 24 13:28:45 UTC 2017 - fstrba@suse.com
- Remove the distributed AtkWrapper.java file before building,
so that a correct version with the correct path to xprops can be
generated during the build from AtkWrapper.java.in
-------------------------------------------------------------------
Tue Oct 10 16:35:27 UTC 2017 - fstrba@suse.com
- Added patch:
* jaw-avoid-version.patch
- Avoid libtool generated symlinks for the native library,
since it is loaded by System.loadLibrary which expects the
library finish with .so anyway.
-------------------------------------------------------------------
Wed Sep 6 13:12:32 UTC 2017 - fstrba@suse.com
- Upgrade to upsteam 0.33.2
- Removed patch:
* java-atk-wrapper-fortify-decl.patch
+ Integrated upsteam
- Add manifest.txt missing from the tarball
- Force source/bytecode target to 1.7.
-------------------------------------------------------------------
Fri Oct 17 09:12:08 UTC 2014 - fstrba@suse.com
- Upgrade to upstream 0.30.5
- Removed patch java-atk-wrapper-source-target.patch
* No need to apply it since we can chose options for javac from
configure line
- Force source/bytecode target to 1.5 at configure time
-------------------------------------------------------------------
Sat May 3 12:34:51 UTC 2014 - fstrba@suse.com
- Added patch:
* java-atk-wrapper-source-target-patch: pass options to javac to
produce bytecode compatible with java 1.5 and higher.
- Allow to build on SLE11
* xprop is in xorg-x11 package
-------------------------------------------------------------------
Thu Dec 12 15:26:28 UTC 2013 - mvyskocil@suse.com
- Initial SUSE packaging of java-awt-wrapper
* java-atk-wrapper-fortify-decl.patch to fix missing headers

84
java-atk-wrapper.spec Normal file
View File

@ -0,0 +1,84 @@
#
# spec file for package java-atk-wrapper
#
# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%global major_version 0.38
Name: java-atk-wrapper
Version: %{major_version}.0
Release: 0
Summary: Java ATK Wrapper
License: LGPL-2.0-or-later
Group: Development/Libraries/Java
URL: https://gitlab.gnome.org/GNOME/java-atk-wrapper/
Source0: https://download.gnome.org/sources/%{name}/%{major_version}/%{name}-%{version}.tar.xz
Source1: HOWTO
Source2: https://gitlab.gnome.org/GNOME/%{name}/-/raw/%{version}/autogen.sh
Patch0: jaw-dependencies.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: java-devel >= 1.8
BuildRequires: libtool
BuildRequires: pkgconfig
BuildRequires: xprop
BuildRequires: xz
BuildRequires: pkgconfig(atk) >= 2.14.0
BuildRequires: pkgconfig(atk-bridge-2.0) >= 2.33.1
BuildRequires: pkgconfig(atspi-2) >= 2.14.0
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(gdk-2.0)
BuildRequires: pkgconfig(glib-2.0) >= 2.32.0
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(gobject-introspection-1.0)
BuildRequires: pkgconfig(gthread-2.0)
Requires: java >= 1.8
Requires: xprop
%description
Java ATK Wrapper is a implementation of ATK by using JNI technic. It
converts Java Swing events into ATK events, and send these events to
ATK-Bridge.
JAW is part of the Bonobo deprecation project. It will replaces the
former java-access-bridge.
By talking to ATK-Bridge, it keeps itself from being affected by the
change of underlying communication mechanism.
%prep
%setup -q
%patch0 -p1
cp %{SOURCE1} %{SOURCE2} .
%build
chmod +x autogen.sh
./autogen.sh
%configure --libdir=%{_libdir}/%{name} --disable-modular-jar
make %{?_smp_mflags}
%install
make -C jni install DESTDIR=%{buildroot}
install wrapper/java-atk-wrapper.jar %{buildroot}%{_libdir}/%{name}/
find %{buildroot} -type f -name "*.la" -delete -print
%files
%doc AUTHORS
%license COPYING.LESSER
%doc NEWS
%doc README
%doc HOWTO
%{_libdir}/%{name}/
%changelog

33
jaw-dependencies.patch Normal file
View File

@ -0,0 +1,33 @@
--- java-atk-wrapper-0.38.0/configure.ac 2022-03-07 20:15:51.171967671 +0100
+++ java-atk-wrapper-0.38.0/configure.ac 2020-03-05 23:17:04.000000000 +0100
@@ -46,7 +46,7 @@
AS_IF([test "x$enable_modular_jar" = "xyes"], [
JAVA_REQUIRED=9.0.0
], [
- JAVA_REQUIRED=1.7.0
+ JAVA_REQUIRED=1.8.0
])
JAVA_ERROR_MESSAGE="Java $JAVA_REQUIRED or later is required to build java-access-bridge"
AM_CONDITIONAL([MODULAR_JAR], [test "x$enable_modular_jar" = "xyes"])
--- java-atk-wrapper-0.38.0/wrapper/Makefile.am 2019-04-01 16:22:10.000000000 +0200
+++ java-atk-wrapper-0.38.0/wrapper/Makefile.am 2022-03-07 19:47:41.281675042 +0100
@@ -19,7 +19,7 @@
if MODULAR_JAR
module-info.class : $(srcdir)/module-info.java
- $(JAVAC) -cp $(top_builddir)/wrapper -sourcepath $(top_srcdir)/wrapper:$(top_builddir)/wrapper $(JAVACFLAGS) -d $(top_builddir)/wrapper $<
+ $(JAVAC) -cp $(top_builddir)/wrapper -sourcepath $(top_srcdir)/wrapper:$(top_builddir)/wrapper $(JAVACFLAGS) -source 9 -target 9 -d $(top_builddir)/wrapper $<
$(JARFILES) : $(DEP_CLASSES) module-info.class
$(JAR) cfm $(JARFILES) $(srcdir)/manifest.txt org/GNOME/Accessibility/*.class module-info.class -C $(srcdir) META-INF/services/javax.accessibility.AccessibilityProvider
--- java-atk-wrapper-0.38.0/wrapper/org/GNOME/Accessibility/Makefile.am 2019-05-20 20:54:30.000000000 +0200
+++ java-atk-wrapper-0.38.0/wrapper/org/GNOME/Accessibility/Makefile.am 2022-03-07 20:12:54.986888891 +0100
@@ -12,7 +12,7 @@
all-local: $(BUILD_CLASSES)
%.class : %.java AtkWrapper.java
- $(JAVAC) -cp $(top_builddir)/wrapper -sourcepath $(top_srcdir)/wrapper:$(top_builddir)/wrapper $(JAVACFLAGS) -d $(top_builddir)/wrapper $<
+ $(JAVAC) -cp $(top_builddir)/wrapper -sourcepath $(top_srcdir)/wrapper:$(top_builddir)/wrapper $(JAVACFLAGS) -source 8 -target 8 -d $(top_builddir)/wrapper $(JAVA_SRC) AtkWrapper.java
clean-local:
$(RM) *.class