commit e2623e44ed20f87ec90d88b5613a95c27197b526 Author: Adrian Schröter Date: Tue Dec 19 14:40:43 2023 +0100 Sync from SUSE:ALP:Source:Standard:1.0 java-atk-wrapper revision 70f580d79104b46d0d40ec48028a38d3 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..fecc750 --- /dev/null +++ b/.gitattributes @@ -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 diff --git a/HOWTO b/HOWTO new file mode 100644 index 0000000..f8db04e --- /dev/null +++ b/HOWTO @@ -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 diff --git a/autogen.sh b/autogen.sh new file mode 100644 index 0000000..eb4f422 --- /dev/null +++ b/autogen.sh @@ -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" "$@" diff --git a/java-atk-wrapper-0.38.0.tar.xz b/java-atk-wrapper-0.38.0.tar.xz new file mode 100644 index 0000000..8438aac --- /dev/null +++ b/java-atk-wrapper-0.38.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb5ba13d5bc3a1acbbedcf5522548338cb42a232fcbf3e8f3d5cfe011e17e668 +size 311024 diff --git a/java-atk-wrapper.changes b/java-atk-wrapper.changes new file mode 100644 index 0000000..72119e4 --- /dev/null +++ b/java-atk-wrapper.changes @@ -0,0 +1,198 @@ +------------------------------------------------------------------- +Mon Mar 7 19:21:06 UTC 2022 - Fridrich Strba + +- 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 + +- 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 + +- 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 diff --git a/java-atk-wrapper.spec b/java-atk-wrapper.spec new file mode 100644 index 0000000..37b2040 --- /dev/null +++ b/java-atk-wrapper.spec @@ -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 diff --git a/jaw-dependencies.patch b/jaw-dependencies.patch new file mode 100644 index 0000000..54af736 --- /dev/null +++ b/jaw-dependencies.patch @@ -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