On Wed, May 22, 2024 at 11:15:31PM +0200, Roland Hieber wrote:
> I cannot find any official announcement on this, but it seems that atk
> was merged into the at-spi2-core tree. At least the atk repository [1]
> has been archived, there have been no new releases since 2022, but there
> has been further development on the atk/ subdir in the at-spi2-core
> repository [2], to which the ATK docs [3] now link too.
> 
>   [1]: https://git.gnome.org/atk
>   [2]: https://gitlab.gnome.org/GNOME/at-spi2-core/
>   [3]: https://gnome.pages.gitlab.gnome.org/at-spi2-core/atk/
> 
> Rename the atk recipe to at-spi2-core, and build libatk as part of it.
> The 'atk_only' meson option carries a big "(UNSUPPORTED)", so build
> everything and only install the two new libs if needed, since they are
> each about 1 MiB big even after stripping the debug symbols.
> 
> Update the license info; COPYING was update from a LGPL-2.0 to a
> LGPL-2.1 license text, and atspi/atspi-gmain.c carries both
> LGPL-2.1-or-later as well as "Academic Free License version 2.1"
> license statements.
> 
> Signed-off-by: Roland Hieber <r...@pengutronix.de>
> ---
> Note: use "git diff -M1" to show the diff between the renamed files
> ---
>  rules/{atk.in => at-spi2-core.in} | 19 +++++--
>  rules/at-spi2-core.make           | 90 +++++++++++++++++++++++++++++++
>  rules/atk.make                    | 67 -----------------------
>  rules/gtk.in                      |  2 +-
>  scripts/migrate/migrate_ptx       |  9 ++++
>  5 files changed, 114 insertions(+), 73 deletions(-)
>  rename rules/{atk.in => at-spi2-core.in} (53%)
>  create mode 100644 rules/at-spi2-core.make
>  delete mode 100644 rules/atk.make
> 
> diff --git a/rules/atk.in b/rules/at-spi2-core.in
> similarity index 53%
> rename from rules/atk.in
> rename to rules/at-spi2-core.in
> index 3ddd3c4fffe6..97669181d6e5 100644
> --- a/rules/atk.in
> +++ b/rules/at-spi2-core.in
> @@ -1,11 +1,13 @@
>  ## SECTION=multimedia_gtk
>  
> -config ATK
> +config AT_SPI2_CORE
>       tristate
> -     prompt "atk"
> +     prompt "at-spi2-core"
>       select HOST_MESON
> +     select DBUS
>       select GLIB
> -     select GOBJECT_INTROSPECTION    if ATK_INTROSPECTION
> +     select GOBJECT_INTROSPECTION    if AT_SPI2_CORE_INTROSPECTION
> +     select LIBXML2                  if BUILDTIME    # only used for tests
>       help
>         ATK is a toolkit providing accessibility interfaces
>         for applications or other toolkits. By implementing
> @@ -14,10 +16,17 @@ config ATK
>         magnifiers, and other alternative input devices.
>         ATK is part of the GNOME project.
>  
> -if ATK
> +if AT_SPI2_CORE
>  
> -config ATK_INTROSPECTION
> +config AT_SPI2_CORE_INTROSPECTION
>       bool
>       default GOBJECT_INTROSPECTION_HELPER
>  
> +config AT_SPI2_CORE_LIBATK_BRIDGE
> +     select AT_SPI2_CORE_LIBATSPI
> +     bool "install libatk-bridge"
> +
> +config AT_SPI2_CORE_LIBATSPI
> +     bool "install libatspi"

Do you have a use-case for this? I have yet to find an embedded use-case,
so I think we should just disable this unconditionally.

With that, you can set -Datk_only=true and make libxml only required if
atk_only is enabled, with a trivial patch. That way you can remove the
extra dependency.

Michael

> +
>  endif
> diff --git a/rules/at-spi2-core.make b/rules/at-spi2-core.make
> new file mode 100644
> index 000000000000..05d92fa486d8
> --- /dev/null
> +++ b/rules/at-spi2-core.make
> @@ -0,0 +1,90 @@
> +# -*-makefile-*-
> +#
> +# Copyright (C) 2003-2006 Robert Schwebel <r.schwe...@pengutronix.de>
> +#                         Pengutronix <i...@pengutronix.de>, Germany
> +#               2009 by Marc Kleine-Budde <m...@pengutronix.de>
> +#               2024 Roland Hieber, Pengutronix
> +#
> +# For further information about the PTXdist project and license conditions
> +# see the README file.
> +#
> +
> +#
> +# We provide this package
> +#
> +PACKAGES-$(PTXCONF_AT_SPI2_CORE) += at-spi2-core
> +
> +#
> +# Paths and names
> +#
> +AT_SPI2_CORE_VERSION := 2.52.0
> +AT_SPI2_CORE_MD5     := e6591545b2bf204fe9a58f777bd0b78a
> +AT_SPI2_CORE         := at-spi2-core-$(AT_SPI2_CORE_VERSION)
> +AT_SPI2_CORE_SUFFIX  := tar.xz
> +AT_SPI2_CORE_URL     := $(call ptx/mirror, GNOME, at-spi2-core/$(basename 
> $(AT_SPI2_CORE_VERSION))/$(AT_SPI2_CORE).$(AT_SPI2_CORE_SUFFIX))
> +AT_SPI2_CORE_SOURCE  := $(SRCDIR)/$(AT_SPI2_CORE).$(AT_SPI2_CORE_SUFFIX)
> +AT_SPI2_CORE_DIR     := $(BUILDDIR)/$(AT_SPI2_CORE)
> +AT_SPI2_CORE_LICENSE := LGPL-2.0-or-later AND LGPL-2.1-or-later AND AFL-2.1
> +AT_SPI2_CORE_LICENSE_FILES := \
> +     
> file://atk/atkaction.c;startline=1;endline=18;md5=6fd31cd2fdc9b30f619ca8d819bc12d3
>  \
> +     
> file://atspi/atspi-gmain.c;startline=4;endline=21;md5=5a40bca956865414952184669ef3985c
>  \
> +     file://COPYING;md5=4fbd65380cdd255951079008b364516c
> +
> +# 
> ----------------------------------------------------------------------------
> +# Prepare
> +# 
> ----------------------------------------------------------------------------
> +
> +#
> +# meson
> +#
> +AT_SPI2_CORE_CONF_TOOL       := meson
> +AT_SPI2_CORE_CONF_OPT        := \
> +     $(CROSS_MESON_USR) \
> +     -Datk_only=false \
> +     -Ddbus_broker=default \
> +     -Ddbus_daemon=default \
> +     -Ddbus_services_dir=default \
> +     -Ddefault_bus=dbus-daemon \
> +     -Ddisable_p2p=false \
> +     -Ddocs=false \
> +     -Dgtk2_atk_adaptor=false \
> +     -Dintrospection=$(call ptx/endis, PTXCONF_AT_SPI2_CORE_INTROSPECTION)d \
> +     -Dsystemd_user_dir=default \
> +     -Duse_systemd=false \
> +     -Dx11=disabled
> +
> +# 
> ----------------------------------------------------------------------------
> +# Target-Install
> +# 
> ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/at-spi2-core.targetinstall:
> +     @$(call targetinfo)
> +
> +     @$(call install_init, at-spi2-core)
> +     @$(call install_fixup, at-spi2-core,PRIORITY,optional)
> +     @$(call install_fixup, at-spi2-core,SECTION,base)
> +     @$(call install_fixup, at-spi2-core,AUTHOR,"Robert Schwebel 
> <r.schwe...@pengutronix.de>")
> +     @$(call install_fixup, at-spi2-core,DESCRIPTION,missing)
> +
> +     @$(call install_lib, at-spi2-core, 0, 0, 0644, libatk-1.0)
> +ifdef PTXCONF_AT_SPI2_CORE_LIBATK_BRIDGE
> +     @$(call install_lib, at-spi2-core, 0, 0, 0644, libatk-bridge-2.0)
> +endif
> +ifdef PTXCONF_AT_SPI2_CORE_LIBATSPI
> +     @$(call install_lib, at-spi2-core, 0, 0, 0644, libatspi)
> +endif
> +
> +ifdef PTXCONF_AT_SPI2_CORE_INTROSPECTION
> +     @$(call install_copy, at-spi2-core, 0, 0, 0644, -, \
> +             /usr/lib/girepository-1.0/Atk-1.0.typelib)
> +ifdef PTXCONF_AT_SPI2_CORE_LIBATSPI
> +     @$(call install_copy, at-spi2-core, 0, 0, 0644, -, \
> +             /usr/lib/girepository-1.0/Atspi-2.0.typelib)
> +endif
> +endif
> +
> +     @$(call install_finish, at-spi2-core)
> +
> +     @$(call touch)
> +
> +# vim: syntax=make
> diff --git a/rules/atk.make b/rules/atk.make
> deleted file mode 100644
> index 1183faf951f3..000000000000
> --- a/rules/atk.make
> +++ /dev/null
> @@ -1,67 +0,0 @@
> -# -*-makefile-*-
> -#
> -# Copyright (C) 2003-2006 Robert Schwebel <r.schwe...@pengutronix.de>
> -#                         Pengutronix <i...@pengutronix.de>, Germany
> -#               2009 by Marc Kleine-Budde <m...@pengutronix.de>
> -#
> -# For further information about the PTXdist project and license conditions
> -# see the README file.
> -#
> -
> -#
> -# We provide this package
> -#
> -PACKAGES-$(PTXCONF_ATK) += atk
> -
> -#
> -# Paths and names
> -#
> -ATK_VERSION  := 2.38.0
> -ATK_MD5              := 4dcea15cbf166706c166fc4fee05e3f8
> -ATK          := atk-$(ATK_VERSION)
> -ATK_SUFFIX   := tar.xz
> -ATK_URL              := $(call ptx/mirror, GNOME, atk/$(basename 
> $(ATK_VERSION))/$(ATK).$(ATK_SUFFIX))
> -ATK_SOURCE   := $(SRCDIR)/$(ATK).$(ATK_SUFFIX)
> -ATK_DIR              := $(BUILDDIR)/$(ATK)
> -ATK_LICENSE  := LGPL-2.0-or-later
> -ATK_LICENSE_FILES := \
> -     
> file://atk/atkaction.c;startline=1;endline=18;md5=6fd31cd2fdc9b30f619ca8d819bc12d3
>  \
> -     file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7
> -
> -# 
> ----------------------------------------------------------------------------
> -# Prepare
> -# 
> ----------------------------------------------------------------------------
> -
> -#
> -# meson
> -#
> -ATK_CONF_TOOL        := meson
> -ATK_CONF_OPT := \
> -     $(CROSS_MESON_USR) \
> -     -Ddocs=false \
> -     -Dintrospection=$(call ptx/truefalse, PTXCONF_ATK_INTROSPECTION)
> -
> -# 
> ----------------------------------------------------------------------------
> -# Target-Install
> -# 
> ----------------------------------------------------------------------------
> -
> -$(STATEDIR)/atk.targetinstall:
> -     @$(call targetinfo)
> -
> -     @$(call install_init, atk)
> -     @$(call install_fixup, atk,PRIORITY,optional)
> -     @$(call install_fixup, atk,SECTION,base)
> -     @$(call install_fixup, atk,AUTHOR,"Robert Schwebel 
> <r.schwe...@pengutronix.de>")
> -     @$(call install_fixup, atk,DESCRIPTION,missing)
> -
> -     @$(call install_lib, atk, 0, 0, 0644, libatk-1.0)
> -ifdef PTXCONF_ATK_INTROSPECTION
> -     @$(call install_copy, atk, 0, 0, 0644, -, \
> -             /usr/lib/girepository-1.0/Atk-1.0.typelib)
> -endif
> -
> -     @$(call install_finish, atk)
> -
> -     @$(call touch)
> -
> -# vim: syntax=make
> diff --git a/rules/gtk.in b/rules/gtk.in
> index de4f7eaf3d98..ea8598cc1022 100644
> --- a/rules/gtk.in
> +++ b/rules/gtk.in
> @@ -8,7 +8,7 @@ menuconfig GTK
>       select HOST_GDK_PIXBUF
>  
>       # core dependencies
> -     select ATK
> +     select AT_SPI2_CORE
>       select CAIRO
>       select CAIRO_GOBJECT
>       select CAIRO_PDF
> diff --git a/scripts/migrate/migrate_ptx b/scripts/migrate/migrate_ptx
> index 1628392980a2..9531b3e27a6a 100755
> --- a/scripts/migrate/migrate_ptx
> +++ b/scripts/migrate/migrate_ptx
> @@ -477,3 +477,12 @@ D
>  :not_systemd_helper
>  # SYSTEMD without SYSTEMD_HELPER so add it
>  s/^\(# \)\?\(PTXCONF_SYSTEMD\>\)\(.*\)/\1\2_HELPER\3\n\1\2\3/
> +
> +# from   : ptxdist-2024.05.0
> +# to     : ptxdist-2024.06.0
> +# symbol : ATK               -> AT_SPI2_CORE
> +# symbol : ATK_INTROSPECTION -> AT_SPI2_CORE_INTROSPECTION
> +# reason : libatk was merged into at-spi2-core
> +#
> +s/^\(\(# \)\?PTXCONF_\)ATK/\1AT_SPI2_CORE/
> +s/^\(\(# \)\?PTXCONF_\)ATK_INTROSPECTION/\1AT_SPI2_CORE_INTROSPECTION/
> -- 
> 2.39.2
> 
> 
> 

-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

Reply via email to