GNOME Bugzilla – Bug 573539
Can't build rev 1337 with disabling deprecated symbols due to atk_hyperlink_is_selected_link used in atkhyperlink.c
Last modified: 2013-12-11 12:36:35 UTC
I can't jhbuild atk, because it uses deprecated symbols. muelli@xbox:~/svn/gnome/atk$ head config.log This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by atk configure 1.25.2, which was generated by GNU Autoconf 2.62. Invocation command line was $ ./configure --enable-maintainer-mode --prefix /opt/gnome2 --libdir ${exec_prefix}/lib64 --disable-static --disable-scrollkeeper --disable-gtk-doc ## --------- ## ## Platform. ## muelli@xbox:~/svn/gnome/atk$ muelli@xbox:~/svn/gnome/atk$ make make all-recursive make[1]: Entering directory `/home/muelli/svn/gnome/atk' Making all in atk make[2]: Entering directory `/home/muelli/svn/gnome/atk/atk' make all-am make[3]: Entering directory `/home/muelli/svn/gnome/atk/atk' if /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_DISABLE_DEPRECATED -DATK_DISABLE_DEPRECATED -DATK_COMPILATION -DATK_LOCALEDIR="\"/opt/gnome2/share/locale\"" -pthread -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -ggdb -g3 -O0 -pipe -Werror-implicit-function-declaration -Wall -MT atkhyperlink.lo -MD -MP -MF ".deps/atkhyperlink.Tpo" -c -o atkhyperlink.lo atkhyperlink.c; \ then mv -f ".deps/atkhyperlink.Tpo" ".deps/atkhyperlink.Plo"; else rm -f ".deps/atkhyperlink.Tpo"; exit 1; fi if /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_DISABLE_DEPRECATED -DATK_DISABLE_DEPRECATED -DATK_COMPILATION -DATK_LOCALEDIR="\"/opt/gnome2/share/locale\"" -pthread -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -ggdb -g3 -O0 -pipe -Werror-implicit-function-declaration -Wall -MT atknoopobject.lo -MD -MP -MF ".deps/atknoopobject.Tpo" -c -o atknoopobject.lo atknoopobject.c; \ then mv -f ".deps/atknoopobject.Tpo" ".deps/atknoopobject.Plo"; else rm -f ".deps/atknoopobject.Tpo"; exit 1; fi if /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_DISABLE_DEPRECATED -DATK_DISABLE_DEPRECATED -DATK_COMPILATION -DATK_LOCALEDIR="\"/opt/gnome2/share/locale\"" -pthread -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -ggdb -g3 -O0 -pipe -Werror-implicit-function-declaration -Wall -MT atknoopobjectfactory.lo -MD -MP -MF ".deps/atknoopobjectfactory.Tpo" -c -o atknoopobjectfactory.lo atknoopobjectfactory.c; \ then mv -f ".deps/atknoopobjectfactory.Tpo" ".deps/atknoopobjectfactory.Plo"; else rm -f ".deps/atknoopobjectfactory.Tpo"; exit 1; fi gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_DISABLE_DEPRECATED -DATK_DISABLE_DEPRECATED -DATK_COMPILATION -DATK_LOCALEDIR=\"/opt/gnome2/share/locale\" -pthread -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -ggdb -g3 -O0 -pipe -Werror-implicit-function-declaration -Wall -MT atknoopobject.lo -MD -MP -MF .deps/atknoopobject.Tpo -c atknoopobject.c -fPIC -DPIC -o .libs/atknoopobject.o gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_DISABLE_DEPRECATED -DATK_DISABLE_DEPRECATED -DATK_COMPILATION -DATK_LOCALEDIR=\"/opt/gnome2/share/locale\" -pthread -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -ggdb -g3 -O0 -pipe -Werror-implicit-function-declaration -Wall -MT atkhyperlink.lo -MD -MP -MF .deps/atkhyperlink.Tpo -c atkhyperlink.c -fPIC -DPIC -o .libs/atkhyperlink.o gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_DISABLE_DEPRECATED -DATK_DISABLE_DEPRECATED -DATK_COMPILATION -DATK_LOCALEDIR=\"/opt/gnome2/share/locale\" -pthread -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -ggdb -g3 -O0 -pipe -Werror-implicit-function-declaration -Wall -MT atknoopobjectfactory.lo -MD -MP -MF .deps/atknoopobjectfactory.Tpo -c atknoopobjectfactory.c -fPIC -DPIC -o .libs/atknoopobjectfactory.o atkhyperlink.c: In function ‘atk_hyperlink_real_get_property’: atkhyperlink.c:167: error: implicit declaration of function ‘atk_hyperlink_is_selected_link’ make[3]: *** [atkhyperlink.lo] Error 1 make[3]: *** Waiting for unfinished jobs.... make[3]: Leaving directory `/home/muelli/svn/gnome/atk/atk' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/muelli/svn/gnome/atk/atk' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/muelli/svn/gnome/atk' make: *** [all] Error 2 I tried to figure out, how to fix this, but the documentation http://library.gnome.org/devel/atk/unstable/AtkHyperlink.html#atk-hyperlink-is-selected-link is not very verbose :( It says to use ATK_STATE_SELECTED but it doesn't mention how to obtain this information...
atk_object_ref_state_set and atk_state_set_contains_state should be the functions you want.
Created attachment 130200 [details] [review] Replace deprecated call Thanks for your input. I hope I replaced the call correctly. Feel free to reject the patch and give further hints.
I just realized that AtkHyperlink is not a AtkObject. So it doesn't have state_set. I think the documentation means user should not call atk_hyperlink_real_get_property with prop_id == PROP_SELECTED_LINK either.
Uh. Well, I have no idea, how to fix this, then :( If you know, it would be really good if you could update the docs.
*** Bug 575007 has been marked as a duplicate of this bug. ***
*** Bug 576778 has been marked as a duplicate of this bug. ***
Bug 340553 discussed deprecating this function. I couldn't, however, find a way to replace atk_hyperlink_is_selected_link. I'm confirming this bug, as we have two dups by now.
still valid in 1.28
[Mass-reassigning open atk bug reports for better trackability as requested in https://bugzilla.gnome.org/show_bug.cgi?id=653179 . PLEASE NOTE: If you have watched the previous assignee of this bug report as a workaround for actually getting notified of changes in atk bugs, you yourself will now have to add atk-maint@gnome.bugs to your watchlist at the bottom of https://bugzilla.gnome.org/userprefs.cgi?tab=email to keep watching atk bug reports in GNOME Bugzilla. Sorry for the noise: Feel free to filter for this comment in order to mass-delete the triggered bugmail.]
Bug fixed with this commit: commit d8c18579a728d49a024a40152f612d89ba0ee523 Author: Alejandro Piñeiro <apinheiro@igalia.com> Date: Tue Aug 13 12:34:47 2013 +0200 atkhyperlink: deprecate 'link-selected' property As the property is deprecated, atk_hyperlink_is_selected_link is not anymore used to get its value. This closes bug bgo#573539
*** Bug 651253 has been marked as a duplicate of this bug. ***