diff options
99 files changed, 20089 insertions, 8451 deletions
@@ -1,5 +1,153 @@ # Generated by Makefile. Do not edit. +2011-03-10 Ted Gould <ted@gould.cx> + + 0.3.101 + +2011-03-10 Ted Gould <ted@gould.cx> + + Ignoring a bunch of files that are annoying + +2011-03-10 Ted Gould <ted@gould.cx> + + Commenting out the Python tests as they don't test what we want + +2011-03-10 Ted Gould <ted@gould.cx> + + Helper to get the cached menuitem from a widget + +2011-03-09 Ted Gould <ted@gould.cx> + + Add to documentation as well + +2011-03-09 Ted Gould <ted@gould.cx> + + Add a function to get the cached menu item + +2011-03-10 Ted Gould <ted@gould.cx> + + Having the GTK Client handle theme directories + +2011-03-10 Ted Gould <ted@gould.cx> + + Check the theme directories on build so we can insure we're up-to-date + +2011-03-10 Ted Gould <ted@gould.cx> + + Also check the status when we get the proxy, not part of this bug, but it'll come along soon enough. + +2011-03-10 Ted Gould <ted@gould.cx> + + On initially getting the proxy we need to check the theme directories to boot strap. + +2011-03-09 Ted Gould <ted@gould.cx> + + Attaching bug + +2011-03-09 Ted Gould <ted@gould.cx> + + Updating to trunk + +2011-03-04 Ted Gould <ted@gould.cx> + + Stealing the code from indicator-application to ref and unref theme directories. + +2011-03-04 Ted Gould <ted@gould.cx> + + Build the theme directory database when we build objects + +2011-03-04 Ted Gould <ted@gould.cx> + + Fleshing out the change functions, but it infact creates more functions. Whoa! + +2011-03-04 Ted Gould <ted@gould.cx> + + Making a private variable and making a lifecycle for it. + +2011-03-04 Ted Gould <ted@gould.cx> + + Signal handler for theme directories changing. + +2011-03-10 Ted Gould <ted@gould.cx> + + Memory leak fixes + +2011-03-10 Chris Coulson <chrisccoulson@ubuntu.com> + + Fix various memory leaks + +2011-03-09 Ted Gould <ted@gould.cx> + + Respect use_underscores and add extra _ if not set + +2011-03-09 Michael Terry <mike@mterry.name> + + respect use-underline and use-markup of labels in menu items + +2011-03-09 Ted Gould <ted@gould.cx> + + Protecting from NULL layout_props + +2011-03-09 Ted Gould <ted@gould.cx> + + Check to ensure that layout_props isn't NULL. Atleast we shouldn't crash. + +2011-03-09 Ted Gould <ted@gould.cx> + + Make sure to remove the value from the hash before signaling it's changed + +2011-03-07 Ted Gould <ted@gould.cx> + + Attach bug + +2011-03-07 Ted Gould <ted@gould.cx> + + Putting in a protection and fixing the truth + +2011-03-07 Ted Gould <ted@gould.cx> + + Steal earlier instead of later so that signal handlers don't find the value in the hashtable + +2011-03-07 Ted Gould <ted@gould.cx> + + Switching to using the extended lookup and getting the key and value + +2011-03-09 Ted Gould <ted@gould.cx> + + Get the label and remove markup so that we get the mnemonics + +2011-03-09 Michael Terry <mike@mterry.name> + + sanitize label text to strip pango markup + +2011-03-08 Michael Terry <mike@mterry.name> + + pass on mnemonics and markup from label + +2011-03-09 Ted Gould <ted@gould.cx> + + Setting the cache and allowing reparenting of items + +2011-03-08 Chris Coulson <chrisccoulson@ubuntu.com> + + Ensure we set the CACHED_MENUITEM data on GtkWidget's + +2011-03-08 Ted Gould <ted@gould.cx> + + Wrap properties + +2011-03-08 Michael Terry <mike@mterry.name> + + wrap PropertiesChanged arguments in a variant + +2011-03-04 Ted Gould <ted@gould.cx> + + Fix the enum templates + +2011-03-04 Ted Gould <ted@gould.cx> + + Use the 'basename' parameter + 2011-03-03 Ted Gould <ted@gould.cx> 0.3.100 diff --git a/Makefile.in b/Makefile.in index 0063aa3..5a9748c 100644 --- a/Makefile.in +++ b/Makefile.in @@ -40,12 +40,7 @@ DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ compile config.guess config.sub depcomp install-sh ltmain.sh \ missing mkinstalldirs ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/gnome-doc-utils.m4 \ - $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/intltool.m4 \ - $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ @@ -452,6 +452,8380 @@ sed 's/^/| /' conftest.foo >&AS_MESSAGE_LOG_FD fi]) +dnl Do not call GNOME_DOC_DEFINES directly. It is split out from +dnl GNOME_DOC_INIT to allow gnome-doc-utils to bootstrap off itself. +AC_DEFUN([GNOME_DOC_DEFINES], +[ +AC_ARG_WITH([help-dir], + AC_HELP_STRING([--with-help-dir=DIR], [path to help docs]),, + [with_help_dir='${datadir}/gnome/help']) +HELP_DIR="$with_help_dir" +AC_SUBST(HELP_DIR) + +AC_ARG_WITH([omf-dir], + AC_HELP_STRING([--with-omf-dir=DIR], [path to OMF files]),, + [with_omf_dir='${datadir}/omf']) +OMF_DIR="$with_omf_dir" +AC_SUBST(OMF_DIR) + +AC_ARG_WITH([help-formats], + AC_HELP_STRING([--with-help-formats=FORMATS], [list of formats]),, + [with_help_formats='']) +DOC_USER_FORMATS="$with_help_formats" +AC_SUBST(DOC_USER_FORMATS) + +AC_ARG_ENABLE([scrollkeeper], + [AC_HELP_STRING([--disable-scrollkeeper], + [do not make updates to the scrollkeeper database])],, + enable_scrollkeeper=yes) +AM_CONDITIONAL([ENABLE_SK],[test "$gdu_cv_have_gdu" = "yes" -a "$enable_scrollkeeper" = "yes"]) + +dnl disable scrollkeeper automatically for distcheck +DISTCHECK_CONFIGURE_FLAGS="--disable-scrollkeeper $DISTCHECK_CONFIGURE_FLAGS" +AC_SUBST(DISTCHECK_CONFIGURE_FLAGS) + +AM_CONDITIONAL([HAVE_GNOME_DOC_UTILS],[test "$gdu_cv_have_gdu" = "yes"]) +]) + +# GNOME_DOC_INIT ([MINIMUM-VERSION],[ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND]) +# +AC_DEFUN([GNOME_DOC_INIT], +[AC_REQUIRE([AC_PROG_LN_S])dnl + +ifelse([$1],,[gdu_cv_version_required=0.3.2],[gdu_cv_version_required=$1]) + +AC_MSG_CHECKING([gnome-doc-utils >= $gdu_cv_version_required]) +PKG_CHECK_EXISTS([gnome-doc-utils >= $gdu_cv_version_required], + [gdu_cv_have_gdu=yes],[gdu_cv_have_gdu=no]) + +if test "$gdu_cv_have_gdu" = "yes"; then + AC_MSG_RESULT([yes]) + ifelse([$2],,[:],[$2]) +else + AC_MSG_RESULT([no]) + ifelse([$3],,[AC_MSG_ERROR([gnome-doc-utils >= $gdu_cv_version_required not found])],[$3]) +fi + +GNOME_DOC_DEFINES +]) + +dnl -*- mode: autoconf -*- + +# serial 1 + +dnl Usage: +dnl GTK_DOC_CHECK([minimum-gtk-doc-version]) +AC_DEFUN([GTK_DOC_CHECK], +[ + AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first + AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first + + dnl check for tools we added during development + AC_PATH_PROG([GTKDOC_CHECK],[gtkdoc-check]) + AC_PATH_PROGS([GTKDOC_REBASE],[gtkdoc-rebase],[true]) + AC_PATH_PROG([GTKDOC_MKPDF],[gtkdoc-mkpdf]) + + dnl for overriding the documentation installation directory + AC_ARG_WITH([html-dir], + AS_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),, + [with_html_dir='${datadir}/gtk-doc/html']) + HTML_DIR="$with_html_dir" + AC_SUBST([HTML_DIR]) + + dnl enable/disable documentation building + AC_ARG_ENABLE([gtk-doc], + AS_HELP_STRING([--enable-gtk-doc], + [use gtk-doc to build documentation [[default=no]]]),, + [enable_gtk_doc=no]) + + if test x$enable_gtk_doc = xyes; then + ifelse([$1],[], + [PKG_CHECK_EXISTS([gtk-doc],, + AC_MSG_ERROR([gtk-doc not installed and --enable-gtk-doc requested]))], + [PKG_CHECK_EXISTS([gtk-doc >= $1],, + AC_MSG_ERROR([You need to have gtk-doc >= $1 installed to build $PACKAGE_NAME]))]) + fi + + AC_MSG_CHECKING([whether to build gtk-doc documentation]) + AC_MSG_RESULT($enable_gtk_doc) + + dnl enable/disable output formats + AC_ARG_ENABLE([gtk-doc-html], + AS_HELP_STRING([--enable-gtk-doc-html], + [build documentation in html format [[default=yes]]]),, + [enable_gtk_doc_html=yes]) + AC_ARG_ENABLE([gtk-doc-pdf], + AS_HELP_STRING([--enable-gtk-doc-pdf], + [build documentation in pdf format [[default=no]]]),, + [enable_gtk_doc_pdf=no]) + + if test -z "$GTKDOC_MKPDF"; then + enable_gtk_doc_pdf=no + fi + + + AM_CONDITIONAL([ENABLE_GTK_DOC], [test x$enable_gtk_doc = xyes]) + AM_CONDITIONAL([GTK_DOC_BUILD_HTML], [test x$enable_gtk_doc_html = xyes]) + AM_CONDITIONAL([GTK_DOC_BUILD_PDF], [test x$enable_gtk_doc_pdf = xyes]) + AM_CONDITIONAL([GTK_DOC_USE_LIBTOOL], [test -n "$LIBTOOL"]) + AM_CONDITIONAL([GTK_DOC_USE_REBASE], [test -n "$GTKDOC_REBASE"]) +]) + + +dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml]) +# serial 40 IT_PROG_INTLTOOL +AC_DEFUN([IT_PROG_INTLTOOL], [ +AC_PREREQ([2.50])dnl +AC_REQUIRE([AM_NLS])dnl + +case "$am__api_version" in + 1.[01234]) + AC_MSG_ERROR([Automake 1.5 or newer is required to use intltool]) + ;; + *) + ;; +esac + +if test -n "$1"; then + AC_MSG_CHECKING([for intltool >= $1]) + + INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` + INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3` + [INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` + ] + AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found]) + test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || + AC_MSG_ERROR([Your intltool is too old. You need intltool $1 or later.]) +fi + +AC_PATH_PROG(INTLTOOL_UPDATE, [intltool-update]) +AC_PATH_PROG(INTLTOOL_MERGE, [intltool-merge]) +AC_PATH_PROG(INTLTOOL_EXTRACT, [intltool-extract]) +if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then + AC_MSG_ERROR([The intltool scripts were not found. Please install intltool.]) +fi + + INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' +INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< [$]@' + INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' +INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< [$]@' + INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + +_IT_SUBST(INTLTOOL_DESKTOP_RULE) +_IT_SUBST(INTLTOOL_DIRECTORY_RULE) +_IT_SUBST(INTLTOOL_KEYS_RULE) +_IT_SUBST(INTLTOOL_PROP_RULE) +_IT_SUBST(INTLTOOL_OAF_RULE) +_IT_SUBST(INTLTOOL_PONG_RULE) +_IT_SUBST(INTLTOOL_SERVER_RULE) +_IT_SUBST(INTLTOOL_SHEET_RULE) +_IT_SUBST(INTLTOOL_SOUNDLIST_RULE) +_IT_SUBST(INTLTOOL_UI_RULE) +_IT_SUBST(INTLTOOL_XAM_RULE) +_IT_SUBST(INTLTOOL_KBD_RULE) +_IT_SUBST(INTLTOOL_XML_RULE) +_IT_SUBST(INTLTOOL_XML_NOMERGE_RULE) +_IT_SUBST(INTLTOOL_CAVES_RULE) +_IT_SUBST(INTLTOOL_SCHEMAS_RULE) +_IT_SUBST(INTLTOOL_THEME_RULE) +_IT_SUBST(INTLTOOL_SERVICE_RULE) +_IT_SUBST(INTLTOOL_POLICY_RULE) + +# Check the gettext tools to make sure they are GNU +AC_PATH_PROG(XGETTEXT, xgettext) +AC_PATH_PROG(MSGMERGE, msgmerge) +AC_PATH_PROG(MSGFMT, msgfmt) +AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) +if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then + AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) +fi +xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" +mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" +mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" +if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then + AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) +fi + +AC_PATH_PROG(INTLTOOL_PERL, perl) +if test -z "$INTLTOOL_PERL"; then + AC_MSG_ERROR([perl not found]) +fi +AC_MSG_CHECKING([for perl >= 5.8.1]) +$INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1 +if test $? -ne 0; then + AC_MSG_ERROR([perl 5.8.1 is required for intltool]) +else + IT_PERL_VERSION="`$INTLTOOL_PERL -e \"printf '%vd', $^V\"`" + AC_MSG_RESULT([$IT_PERL_VERSION]) +fi +if test "x$2" != "xno-xml"; then + AC_MSG_CHECKING([for XML::Parser]) + if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then + AC_MSG_RESULT([ok]) + else + AC_MSG_ERROR([XML::Parser perl module is required for intltool]) + fi +fi + +# Substitute ALL_LINGUAS so we can use it in po/Makefile +AC_SUBST(ALL_LINGUAS) + +# Set DATADIRNAME correctly if it is not set yet +# (copied from glib-gettext.m4) +if test -z "$DATADIRNAME"; then + AC_LINK_IFELSE( + [AC_LANG_PROGRAM([[]], + [[extern int _nl_msg_cat_cntr; + return _nl_msg_cat_cntr]])], + [DATADIRNAME=share], + [case $host in + *-*-solaris*) + dnl On Solaris, if bind_textdomain_codeset is in libc, + dnl GNU format message catalog is always supported, + dnl since both are added to the libc all together. + dnl Hence, we'd like to go with DATADIRNAME=share + dnl in this case. + AC_CHECK_FUNC(bind_textdomain_codeset, + [DATADIRNAME=share], [DATADIRNAME=lib]) + ;; + *) + [DATADIRNAME=lib] + ;; + esac]) +fi +AC_SUBST(DATADIRNAME) + +IT_PO_SUBDIR([po]) + +]) + + +# IT_PO_SUBDIR(DIRNAME) +# --------------------- +# All po subdirs have to be declared with this macro; the subdir "po" is +# declared by IT_PROG_INTLTOOL. +# +AC_DEFUN([IT_PO_SUBDIR], +[AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS. +dnl +dnl The following CONFIG_COMMANDS should be executed at the very end +dnl of config.status. +AC_CONFIG_COMMANDS_PRE([ + AC_CONFIG_COMMANDS([$1/stamp-it], [ + if [ ! grep "^# INTLTOOL_MAKEFILE$" "$1/Makefile.in" > /dev/null ]; then + AC_MSG_ERROR([$1/Makefile.in.in was not created by intltoolize.]) + fi + rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp" + >"$1/stamp-it.tmp" + [sed '/^#/d + s/^[[].*] *// + /^[ ]*$/d + '"s|^| $ac_top_srcdir/|" \ + "$srcdir/$1/POTFILES.in" | sed '$!s/$/ \\/' >"$1/POTFILES" + ] + [sed '/^POTFILES =/,/[^\\]$/ { + /^POTFILES =/!d + r $1/POTFILES + } + ' "$1/Makefile.in" >"$1/Makefile"] + rm -f "$1/Makefile.tmp" + mv "$1/stamp-it.tmp" "$1/stamp-it" + ]) +])dnl +]) + +# _IT_SUBST(VARIABLE) +# ------------------- +# Abstract macro to do either _AM_SUBST_NOTMAKE or AC_SUBST +# +AC_DEFUN([_IT_SUBST], +[ +AC_SUBST([$1]) +m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])]) +] +) + +# deprecated macros +AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL]) +# A hint is needed for aclocal from Automake <= 1.9.4: +# AC_DEFUN([AC_PROG_INTLTOOL], ...) + + +dnl -*- mode: autoconf -*- +dnl Copyright 2009 Johan Dahlin +dnl +dnl This file is free software; the author(s) gives unlimited +dnl permission to copy and/or distribute it, with or without +dnl modifications, as long as this notice is preserved. +dnl + +# serial 1 + +m4_define([_GOBJECT_INTROSPECTION_CHECK_INTERNAL], +[ + AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first + AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first + AC_BEFORE([LT_INIT],[$0])dnl setup libtool first + + dnl enable/disable introspection + m4_if([$2], [require], + [dnl + enable_introspection=yes + ],[dnl + AC_ARG_ENABLE(introspection, + AS_HELP_STRING([--enable-introspection[=@<:@no/auto/yes@:>@]], + [Enable introspection for this build]),, + [enable_introspection=auto]) + ])dnl + + AC_MSG_CHECKING([for gobject-introspection]) + + dnl presence/version checking + AS_CASE([$enable_introspection], + [no], [dnl + found_introspection="no (disabled, use --enable-introspection to enable)" + ],dnl + [yes],[dnl + PKG_CHECK_EXISTS([gobject-introspection-1.0],, + AC_MSG_ERROR([gobject-introspection-1.0 is not installed])) + PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], + found_introspection=yes, + AC_MSG_ERROR([You need to have gobject-introspection >= $1 installed to build AC_PACKAGE_NAME])) + ],dnl + [auto],[dnl + PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], found_introspection=yes, found_introspection=no) + ],dnl + [dnl + AC_MSG_ERROR([invalid argument passed to --enable-introspection, should be one of @<:@no/auto/yes@:>@]) + ])dnl + + AC_MSG_RESULT([$found_introspection]) + + INTROSPECTION_SCANNER= + INTROSPECTION_COMPILER= + INTROSPECTION_GENERATE= + INTROSPECTION_GIRDIR= + INTROSPECTION_TYPELIBDIR= + if test "x$found_introspection" = "xyes"; then + INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0` + INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0` + INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0` + INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0` + INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)" + INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0` + INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0` + INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection + fi + AC_SUBST(INTROSPECTION_SCANNER) + AC_SUBST(INTROSPECTION_COMPILER) + AC_SUBST(INTROSPECTION_GENERATE) + AC_SUBST(INTROSPECTION_GIRDIR) + AC_SUBST(INTROSPECTION_TYPELIBDIR) + AC_SUBST(INTROSPECTION_CFLAGS) + AC_SUBST(INTROSPECTION_LIBS) + AC_SUBST(INTROSPECTION_MAKEFILE) + + AM_CONDITIONAL(HAVE_INTROSPECTION, test "x$found_introspection" = "xyes") +]) + + +dnl Usage: +dnl GOBJECT_INTROSPECTION_CHECK([minimum-g-i-version]) + +AC_DEFUN([GOBJECT_INTROSPECTION_CHECK], +[ + _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1]) +]) + +dnl Usage: +dnl GOBJECT_INTROSPECTION_REQUIRE([minimum-g-i-version]) + + +AC_DEFUN([GOBJECT_INTROSPECTION_REQUIRE], +[ + _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1], [require]) +]) + +# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, +# 2006, 2007, 2008 Free Software Foundation, Inc. +# Written by Gordon Matzigkeit, 1996 +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +m4_define([_LT_COPYING], [dnl +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, +# 2006, 2007, 2008 Free Software Foundation, Inc. +# Written by Gordon Matzigkeit, 1996 +# +# This file is part of GNU Libtool. +# +# GNU Libtool is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# As a special exception to the GNU General Public License, +# if you distribute this file as part of a program or library that +# is built using GNU Libtool, you may include this file under the +# same distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Libtool; see the file COPYING. If not, a copy +# can be downloaded from http://www.gnu.org/licenses/gpl.html, or +# obtained by writing to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +]) + +# serial 56 LT_INIT + + +# LT_PREREQ(VERSION) +# ------------------ +# Complain and exit if this libtool version is less that VERSION. +m4_defun([LT_PREREQ], +[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1, + [m4_default([$3], + [m4_fatal([Libtool version $1 or higher is required], + 63)])], + [$2])]) + + +# _LT_CHECK_BUILDDIR +# ------------------ +# Complain if the absolute build directory name contains unusual characters +m4_defun([_LT_CHECK_BUILDDIR], +[case `pwd` in + *\ * | *\ *) + AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;; +esac +]) + + +# LT_INIT([OPTIONS]) +# ------------------ +AC_DEFUN([LT_INIT], +[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT +AC_BEFORE([$0], [LT_LANG])dnl +AC_BEFORE([$0], [LT_OUTPUT])dnl +AC_BEFORE([$0], [LTDL_INIT])dnl +m4_require([_LT_CHECK_BUILDDIR])dnl + +dnl Autoconf doesn't catch unexpanded LT_ macros by default: +m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl +m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl +dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4 +dnl unless we require an AC_DEFUNed macro: +AC_REQUIRE([LTOPTIONS_VERSION])dnl +AC_REQUIRE([LTSUGAR_VERSION])dnl +AC_REQUIRE([LTVERSION_VERSION])dnl +AC_REQUIRE([LTOBSOLETE_VERSION])dnl +m4_require([_LT_PROG_LTMAIN])dnl + +dnl Parse OPTIONS +_LT_SET_OPTIONS([$0], [$1]) + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ltmain" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +AC_SUBST(LIBTOOL)dnl + +_LT_SETUP + +# Only expand once: +m4_define([LT_INIT]) +])# LT_INIT + +# Old names: +AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT]) +AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_PROG_LIBTOOL], []) +dnl AC_DEFUN([AM_PROG_LIBTOOL], []) + + +# _LT_CC_BASENAME(CC) +# ------------------- +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +m4_defun([_LT_CC_BASENAME], +[for cc_temp in $1""; do + case $cc_temp in + compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; + distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; + \-*) ;; + *) break;; + esac +done +cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"` +]) + + +# _LT_FILEUTILS_DEFAULTS +# ---------------------- +# It is okay to use these file commands and assume they have been set +# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'. +m4_defun([_LT_FILEUTILS_DEFAULTS], +[: ${CP="cp -f"} +: ${MV="mv -f"} +: ${RM="rm -f"} +])# _LT_FILEUTILS_DEFAULTS + + +# _LT_SETUP +# --------- +m4_defun([_LT_SETUP], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +_LT_DECL([], [host_alias], [0], [The host system])dnl +_LT_DECL([], [host], [0])dnl +_LT_DECL([], [host_os], [0])dnl +dnl +_LT_DECL([], [build_alias], [0], [The build system])dnl +_LT_DECL([], [build], [0])dnl +_LT_DECL([], [build_os], [0])dnl +dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([LT_PATH_LD])dnl +AC_REQUIRE([LT_PATH_NM])dnl +dnl +AC_REQUIRE([AC_PROG_LN_S])dnl +test -z "$LN_S" && LN_S="ln -s" +_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl +dnl +AC_REQUIRE([LT_CMD_MAX_LEN])dnl +_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl +_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl +dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_CHECK_SHELL_FEATURES])dnl +m4_require([_LT_CMD_RELOAD])dnl +m4_require([_LT_CHECK_MAGIC_METHOD])dnl +m4_require([_LT_CMD_OLD_ARCHIVE])dnl +m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl + +_LT_CONFIG_LIBTOOL_INIT([ +# See if we are running on zsh, and set the options which allow our +# commands through without removal of \ escapes INIT. +if test -n "\${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST +fi +]) +if test -n "${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST +fi + +_LT_CHECK_OBJDIR + +m4_require([_LT_TAG_COMPILER])dnl +_LT_PROG_ECHO_BACKSLASH + +case $host_os in +aix3*) + # AIX sometimes has problems with the GCC collect2 program. For some + # reason, if we set the COLLECT_NAMES environment variable, the problems + # vanish in a puff of smoke. + if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES + fi + ;; +esac + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +sed_quote_subst='s/\([["`$\\]]\)/\\\1/g' + +# Same as above, but do not quote variable references. +double_quote_subst='s/\([["`\\]]\)/\\\1/g' + +# Sed substitution to delay expansion of an escaped shell variable in a +# double_quote_subst'ed string. +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' + +# Sed substitution to delay expansion of an escaped single quote. +delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' + +# Sed substitution to avoid accidental globbing in evaled expressions +no_glob_subst='s/\*/\\\*/g' + +# Global variables: +ofile=libtool +can_build_shared=yes + +# All known linkers require a `.a' archive for static linking (except MSVC, +# which needs '.lib'). +libext=a + +with_gnu_ld="$lt_cv_prog_gnu_ld" + +old_CC="$CC" +old_CFLAGS="$CFLAGS" + +# Set sane defaults for various variables +test -z "$CC" && CC=cc +test -z "$LTCC" && LTCC=$CC +test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS +test -z "$LD" && LD=ld +test -z "$ac_objext" && ac_objext=o + +_LT_CC_BASENAME([$compiler]) + +# Only perform the check for file, if the check method requires it +test -z "$MAGIC_CMD" && MAGIC_CMD=file +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + _LT_PATH_MAGIC + fi + ;; +esac + +# Use C for the default configuration in the libtool script +LT_SUPPORTED_TAG([CC]) +_LT_LANG_C_CONFIG +_LT_LANG_DEFAULT_CONFIG +_LT_CONFIG_COMMANDS +])# _LT_SETUP + + +# _LT_PROG_LTMAIN +# --------------- +# Note that this code is called both from `configure', and `config.status' +# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably, +# `config.status' has no value for ac_aux_dir unless we are using Automake, +# so we pass a copy along to make sure it has a sensible value anyway. +m4_defun([_LT_PROG_LTMAIN], +[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl +_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir']) +ltmain="$ac_aux_dir/ltmain.sh" +])# _LT_PROG_LTMAIN + + + +# So that we can recreate a full libtool script including additional +# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS +# in macros and then make a single call at the end using the `libtool' +# label. + + +# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS]) +# ---------------------------------------- +# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later. +m4_define([_LT_CONFIG_LIBTOOL_INIT], +[m4_ifval([$1], + [m4_append([_LT_OUTPUT_LIBTOOL_INIT], + [$1 +])])]) + +# Initialize. +m4_define([_LT_OUTPUT_LIBTOOL_INIT]) + + +# _LT_CONFIG_LIBTOOL([COMMANDS]) +# ------------------------------ +# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later. +m4_define([_LT_CONFIG_LIBTOOL], +[m4_ifval([$1], + [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS], + [$1 +])])]) + +# Initialize. +m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS]) + + +# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS]) +# ----------------------------------------------------- +m4_defun([_LT_CONFIG_SAVE_COMMANDS], +[_LT_CONFIG_LIBTOOL([$1]) +_LT_CONFIG_LIBTOOL_INIT([$2]) +]) + + +# _LT_FORMAT_COMMENT([COMMENT]) +# ----------------------------- +# Add leading comment marks to the start of each line, and a trailing +# full-stop to the whole comment if one is not present already. +m4_define([_LT_FORMAT_COMMENT], +[m4_ifval([$1], [ +m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])], + [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.]) +)]) + + + + + +# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?]) +# ------------------------------------------------------------------- +# CONFIGNAME is the name given to the value in the libtool script. +# VARNAME is the (base) name used in the configure script. +# VALUE may be 0, 1 or 2 for a computed quote escaped value based on +# VARNAME. Any other value will be used directly. +m4_define([_LT_DECL], +[lt_if_append_uniq([lt_decl_varnames], [$2], [, ], + [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name], + [m4_ifval([$1], [$1], [$2])]) + lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3]) + m4_ifval([$4], + [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])]) + lt_dict_add_subkey([lt_decl_dict], [$2], + [tagged?], [m4_ifval([$5], [yes], [no])])]) +]) + + +# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION]) +# -------------------------------------------------------- +m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])]) + + +# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...]) +# ------------------------------------------------ +m4_define([lt_decl_tag_varnames], +[_lt_decl_filter([tagged?], [yes], $@)]) + + +# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..]) +# --------------------------------------------------------- +m4_define([_lt_decl_filter], +[m4_case([$#], + [0], [m4_fatal([$0: too few arguments: $#])], + [1], [m4_fatal([$0: too few arguments: $#: $1])], + [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)], + [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)], + [lt_dict_filter([lt_decl_dict], $@)])[]dnl +]) + + +# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...]) +# -------------------------------------------------- +m4_define([lt_decl_quote_varnames], +[_lt_decl_filter([value], [1], $@)]) + + +# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...]) +# --------------------------------------------------- +m4_define([lt_decl_dquote_varnames], +[_lt_decl_filter([value], [2], $@)]) + + +# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...]) +# --------------------------------------------------- +m4_define([lt_decl_varnames_tagged], +[m4_assert([$# <= 2])dnl +_$0(m4_quote(m4_default([$1], [[, ]])), + m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]), + m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))]) +m4_define([_lt_decl_varnames_tagged], +[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])]) + + +# lt_decl_all_varnames([SEPARATOR], [VARNAME1...]) +# ------------------------------------------------ +m4_define([lt_decl_all_varnames], +[_$0(m4_quote(m4_default([$1], [[, ]])), + m4_if([$2], [], + m4_quote(lt_decl_varnames), + m4_quote(m4_shift($@))))[]dnl +]) +m4_define([_lt_decl_all_varnames], +[lt_join($@, lt_decl_varnames_tagged([$1], + lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl +]) + + +# _LT_CONFIG_STATUS_DECLARE([VARNAME]) +# ------------------------------------ +# Quote a variable value, and forward it to `config.status' so that its +# declaration there will have the same value as in `configure'. VARNAME +# must have a single quote delimited value for this to work. +m4_define([_LT_CONFIG_STATUS_DECLARE], +[$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`']) + + +# _LT_CONFIG_STATUS_DECLARATIONS +# ------------------------------ +# We delimit libtool config variables with single quotes, so when +# we write them to config.status, we have to be sure to quote all +# embedded single quotes properly. In configure, this macro expands +# each variable declared with _LT_DECL (and _LT_TAGDECL) into: +# +# <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`' +m4_defun([_LT_CONFIG_STATUS_DECLARATIONS], +[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames), + [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])]) + + +# _LT_LIBTOOL_TAGS +# ---------------- +# Output comment and list of tags supported by the script +m4_defun([_LT_LIBTOOL_TAGS], +[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl +available_tags="_LT_TAGS"dnl +]) + + +# _LT_LIBTOOL_DECLARE(VARNAME, [TAG]) +# ----------------------------------- +# Extract the dictionary values for VARNAME (optionally with TAG) and +# expand to a commented shell variable setting: +# +# # Some comment about what VAR is for. +# visible_name=$lt_internal_name +m4_define([_LT_LIBTOOL_DECLARE], +[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], + [description])))[]dnl +m4_pushdef([_libtool_name], + m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl +m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])), + [0], [_libtool_name=[$]$1], + [1], [_libtool_name=$lt_[]$1], + [2], [_libtool_name=$lt_[]$1], + [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl +m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl +]) + + +# _LT_LIBTOOL_CONFIG_VARS +# ----------------------- +# Produce commented declarations of non-tagged libtool config variables +# suitable for insertion in the LIBTOOL CONFIG section of the `libtool' +# script. Tagged libtool config variables (even for the LIBTOOL CONFIG +# section) are produced by _LT_LIBTOOL_TAG_VARS. +m4_defun([_LT_LIBTOOL_CONFIG_VARS], +[m4_foreach([_lt_var], + m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)), + [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])]) + + +# _LT_LIBTOOL_TAG_VARS(TAG) +# ------------------------- +m4_define([_LT_LIBTOOL_TAG_VARS], +[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames), + [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])]) + + +# _LT_TAGVAR(VARNAME, [TAGNAME]) +# ------------------------------ +m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])]) + + +# _LT_CONFIG_COMMANDS +# ------------------- +# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of +# variables for single and double quote escaping we saved from calls +# to _LT_DECL, we can put quote escaped variables declarations +# into `config.status', and then the shell code to quote escape them in +# for loops in `config.status'. Finally, any additional code accumulated +# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded. +m4_defun([_LT_CONFIG_COMMANDS], +[AC_PROVIDE_IFELSE([LT_OUTPUT], + dnl If the libtool generation code has been placed in $CONFIG_LT, + dnl instead of duplicating it all over again into config.status, + dnl then we will have config.status run $CONFIG_LT later, so it + dnl needs to know what name is stored there: + [AC_CONFIG_COMMANDS([libtool], + [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])], + dnl If the libtool generation code is destined for config.status, + dnl expand the accumulated commands and init code now: + [AC_CONFIG_COMMANDS([libtool], + [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])]) +])#_LT_CONFIG_COMMANDS + + +# Initialize. +m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT], +[ + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +sed_quote_subst='$sed_quote_subst' +double_quote_subst='$double_quote_subst' +delay_variable_subst='$delay_variable_subst' +_LT_CONFIG_STATUS_DECLARATIONS +LTCC='$LTCC' +LTCFLAGS='$LTCFLAGS' +compiler='$compiler_DEFAULT' + +# Quote evaled strings. +for var in lt_decl_all_varnames([[ \ +]], lt_decl_quote_varnames); do + case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in + *[[\\\\\\\`\\"\\\$]]*) + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" + ;; + *) + eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" + ;; + esac +done + +# Double-quote double-evaled strings. +for var in lt_decl_all_varnames([[ \ +]], lt_decl_dquote_varnames); do + case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in + *[[\\\\\\\`\\"\\\$]]*) + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" + ;; + *) + eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" + ;; + esac +done + +# Fix-up fallback echo if it was mangled by the above quoting rules. +case \$lt_ECHO in +*'\\\[$]0 --fallback-echo"')dnl " + lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\` + ;; +esac + +_LT_OUTPUT_LIBTOOL_INIT +]) + + +# LT_OUTPUT +# --------- +# This macro allows early generation of the libtool script (before +# AC_OUTPUT is called), incase it is used in configure for compilation +# tests. +AC_DEFUN([LT_OUTPUT], +[: ${CONFIG_LT=./config.lt} +AC_MSG_NOTICE([creating $CONFIG_LT]) +cat >"$CONFIG_LT" <<_LTEOF +#! $SHELL +# Generated by $as_me. +# Run this file to recreate a libtool stub with the current configuration. + +lt_cl_silent=false +SHELL=\${CONFIG_SHELL-$SHELL} +_LTEOF + +cat >>"$CONFIG_LT" <<\_LTEOF +AS_SHELL_SANITIZE +_AS_PREPARE + +exec AS_MESSAGE_FD>&1 +exec AS_MESSAGE_LOG_FD>>config.log +{ + echo + AS_BOX([Running $as_me.]) +} >&AS_MESSAGE_LOG_FD + +lt_cl_help="\ +\`$as_me' creates a local libtool stub from the current configuration, +for use in further configure time tests before the real libtool is +generated. + +Usage: $[0] [[OPTIONS]] + + -h, --help print this help, then exit + -V, --version print version number, then exit + -q, --quiet do not print progress messages + -d, --debug don't remove temporary files + +Report bugs to <bug-libtool@gnu.org>." + +lt_cl_version="\ +m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl +m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) +configured by $[0], generated by m4_PACKAGE_STRING. + +Copyright (C) 2008 Free Software Foundation, Inc. +This config.lt script is free software; the Free Software Foundation +gives unlimited permision to copy, distribute and modify it." + +while test $[#] != 0 +do + case $[1] in + --version | --v* | -V ) + echo "$lt_cl_version"; exit 0 ;; + --help | --h* | -h ) + echo "$lt_cl_help"; exit 0 ;; + --debug | --d* | -d ) + debug=: ;; + --quiet | --q* | --silent | --s* | -q ) + lt_cl_silent=: ;; + + -*) AC_MSG_ERROR([unrecognized option: $[1] +Try \`$[0] --help' for more information.]) ;; + + *) AC_MSG_ERROR([unrecognized argument: $[1] +Try \`$[0] --help' for more information.]) ;; + esac + shift +done + +if $lt_cl_silent; then + exec AS_MESSAGE_FD>/dev/null +fi +_LTEOF + +cat >>"$CONFIG_LT" <<_LTEOF +_LT_OUTPUT_LIBTOOL_COMMANDS_INIT +_LTEOF + +cat >>"$CONFIG_LT" <<\_LTEOF +AC_MSG_NOTICE([creating $ofile]) +_LT_OUTPUT_LIBTOOL_COMMANDS +AS_EXIT(0) +_LTEOF +chmod +x "$CONFIG_LT" + +# configure is writing to config.log, but config.lt does its own redirection, +# appending to config.log, which fails on DOS, as config.log is still kept +# open by configure. Here we exec the FD to /dev/null, effectively closing +# config.log, so it can be properly (re)opened and appended to by config.lt. +if test "$no_create" != yes; then + lt_cl_success=: + test "$silent" = yes && + lt_config_lt_args="$lt_config_lt_args --quiet" + exec AS_MESSAGE_LOG_FD>/dev/null + $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false + exec AS_MESSAGE_LOG_FD>>config.log + $lt_cl_success || AS_EXIT(1) +fi +])# LT_OUTPUT + + +# _LT_CONFIG(TAG) +# --------------- +# If TAG is the built-in tag, create an initial libtool script with a +# default configuration from the untagged config vars. Otherwise add code +# to config.status for appending the configuration named by TAG from the +# matching tagged config vars. +m4_defun([_LT_CONFIG], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +_LT_CONFIG_SAVE_COMMANDS([ + m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl + m4_if(_LT_TAG, [C], [ + # See if we are running on zsh, and set the options which allow our + # commands through without removal of \ escapes. + if test -n "${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST + fi + + cfgfile="${ofile}T" + trap "$RM \"$cfgfile\"; exit 1" 1 2 15 + $RM "$cfgfile" + + cat <<_LT_EOF >> "$cfgfile" +#! $SHELL + +# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. +# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: +# NOTE: Changes made to this file will be lost: look at ltmain.sh. +# +_LT_COPYING +_LT_LIBTOOL_TAGS + +# ### BEGIN LIBTOOL CONFIG +_LT_LIBTOOL_CONFIG_VARS +_LT_LIBTOOL_TAG_VARS +# ### END LIBTOOL CONFIG + +_LT_EOF + + case $host_os in + aix3*) + cat <<\_LT_EOF >> "$cfgfile" +# AIX sometimes has problems with the GCC collect2 program. For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES +fi +_LT_EOF + ;; + esac + + _LT_PROG_LTMAIN + + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? + sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \ + || (rm -f "$cfgfile"; exit 1) + + _LT_PROG_XSI_SHELLFNS + + sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \ + || (rm -f "$cfgfile"; exit 1) + + mv -f "$cfgfile" "$ofile" || + (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") + chmod +x "$ofile" +], +[cat <<_LT_EOF >> "$ofile" + +dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded +dnl in a comment (ie after a #). +# ### BEGIN LIBTOOL TAG CONFIG: $1 +_LT_LIBTOOL_TAG_VARS(_LT_TAG) +# ### END LIBTOOL TAG CONFIG: $1 +_LT_EOF +])dnl /m4_if +], +[m4_if([$1], [], [ + PACKAGE='$PACKAGE' + VERSION='$VERSION' + TIMESTAMP='$TIMESTAMP' + RM='$RM' + ofile='$ofile'], []) +])dnl /_LT_CONFIG_SAVE_COMMANDS +])# _LT_CONFIG + + +# LT_SUPPORTED_TAG(TAG) +# --------------------- +# Trace this macro to discover what tags are supported by the libtool +# --tag option, using: +# autoconf --trace 'LT_SUPPORTED_TAG:$1' +AC_DEFUN([LT_SUPPORTED_TAG], []) + + +# C support is built-in for now +m4_define([_LT_LANG_C_enabled], []) +m4_define([_LT_TAGS], []) + + +# LT_LANG(LANG) +# ------------- +# Enable libtool support for the given language if not already enabled. +AC_DEFUN([LT_LANG], +[AC_BEFORE([$0], [LT_OUTPUT])dnl +m4_case([$1], + [C], [_LT_LANG(C)], + [C++], [_LT_LANG(CXX)], + [Java], [_LT_LANG(GCJ)], + [Fortran 77], [_LT_LANG(F77)], + [Fortran], [_LT_LANG(FC)], + [Windows Resource], [_LT_LANG(RC)], + [m4_ifdef([_LT_LANG_]$1[_CONFIG], + [_LT_LANG($1)], + [m4_fatal([$0: unsupported language: "$1"])])])dnl +])# LT_LANG + + +# _LT_LANG(LANGNAME) +# ------------------ +m4_defun([_LT_LANG], +[m4_ifdef([_LT_LANG_]$1[_enabled], [], + [LT_SUPPORTED_TAG([$1])dnl + m4_append([_LT_TAGS], [$1 ])dnl + m4_define([_LT_LANG_]$1[_enabled], [])dnl + _LT_LANG_$1_CONFIG($1)])dnl +])# _LT_LANG + + +# _LT_LANG_DEFAULT_CONFIG +# ----------------------- +m4_defun([_LT_LANG_DEFAULT_CONFIG], +[AC_PROVIDE_IFELSE([AC_PROG_CXX], + [LT_LANG(CXX)], + [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])]) + +AC_PROVIDE_IFELSE([AC_PROG_F77], + [LT_LANG(F77)], + [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])]) + +AC_PROVIDE_IFELSE([AC_PROG_FC], + [LT_LANG(FC)], + [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])]) + +dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal +dnl pulling things in needlessly. +AC_PROVIDE_IFELSE([AC_PROG_GCJ], + [LT_LANG(GCJ)], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], + [LT_LANG(GCJ)], + [AC_PROVIDE_IFELSE([LT_PROG_GCJ], + [LT_LANG(GCJ)], + [m4_ifdef([AC_PROG_GCJ], + [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])]) + m4_ifdef([A][M_PROG_GCJ], + [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])]) + m4_ifdef([LT_PROG_GCJ], + [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])]) + +AC_PROVIDE_IFELSE([LT_PROG_RC], + [LT_LANG(RC)], + [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])]) +])# _LT_LANG_DEFAULT_CONFIG + +# Obsolete macros: +AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)]) +AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)]) +AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)]) +AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_CXX], []) +dnl AC_DEFUN([AC_LIBTOOL_F77], []) +dnl AC_DEFUN([AC_LIBTOOL_FC], []) +dnl AC_DEFUN([AC_LIBTOOL_GCJ], []) + + +# _LT_TAG_COMPILER +# ---------------- +m4_defun([_LT_TAG_COMPILER], +[AC_REQUIRE([AC_PROG_CC])dnl + +_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl +_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl +_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl +_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# If no C compiler flags were specified, use CFLAGS. +LTCFLAGS=${LTCFLAGS-"$CFLAGS"} + +# Allow CC to be a program name with arguments. +compiler=$CC +])# _LT_TAG_COMPILER + + +# _LT_COMPILER_BOILERPLATE +# ------------------------ +# Check for compiler boilerplate output or warnings with +# the simple compiler test code. +m4_defun([_LT_COMPILER_BOILERPLATE], +[m4_require([_LT_DECL_SED])dnl +ac_outfile=conftest.$ac_objext +echo "$lt_simple_compile_test_code" >conftest.$ac_ext +eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_compiler_boilerplate=`cat conftest.err` +$RM conftest* +])# _LT_COMPILER_BOILERPLATE + + +# _LT_LINKER_BOILERPLATE +# ---------------------- +# Check for linker boilerplate output or warnings with +# the simple link test code. +m4_defun([_LT_LINKER_BOILERPLATE], +[m4_require([_LT_DECL_SED])dnl +ac_outfile=conftest.$ac_objext +echo "$lt_simple_link_test_code" >conftest.$ac_ext +eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_linker_boilerplate=`cat conftest.err` +$RM -r conftest* +])# _LT_LINKER_BOILERPLATE + +# _LT_REQUIRED_DARWIN_CHECKS +# ------------------------- +m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ + case $host_os in + rhapsody* | darwin*) + AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:]) + AC_CHECK_TOOL([NMEDIT], [nmedit], [:]) + AC_CHECK_TOOL([LIPO], [lipo], [:]) + AC_CHECK_TOOL([OTOOL], [otool], [:]) + AC_CHECK_TOOL([OTOOL64], [otool64], [:]) + _LT_DECL([], [DSYMUTIL], [1], + [Tool to manipulate archived DWARF debug symbol files on Mac OS X]) + _LT_DECL([], [NMEDIT], [1], + [Tool to change global to local symbols on Mac OS X]) + _LT_DECL([], [LIPO], [1], + [Tool to manipulate fat objects and archives on Mac OS X]) + _LT_DECL([], [OTOOL], [1], + [ldd/readelf like tool for Mach-O binaries on Mac OS X]) + _LT_DECL([], [OTOOL64], [1], + [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4]) + + AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod], + [lt_cv_apple_cc_single_mod=no + if test -z "${LT_MULTI_MODULE}"; then + # By default we will add the -single_module flag. You can override + # by either setting the environment variable LT_MULTI_MODULE + # non-empty at configure time, or by adding -multi_module to the + # link flags. + rm -rf libconftest.dylib* + echo "int foo(void){return 1;}" > conftest.c + echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ +-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD + $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ + -dynamiclib -Wl,-single_module conftest.c 2>conftest.err + _lt_result=$? + if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then + lt_cv_apple_cc_single_mod=yes + else + cat conftest.err >&AS_MESSAGE_LOG_FD + fi + rm -rf libconftest.dylib* + rm -f conftest.* + fi]) + AC_CACHE_CHECK([for -exported_symbols_list linker flag], + [lt_cv_ld_exported_symbols_list], + [lt_cv_ld_exported_symbols_list=no + save_LDFLAGS=$LDFLAGS + echo "_main" > conftest.sym + LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" + AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], + [lt_cv_ld_exported_symbols_list=yes], + [lt_cv_ld_exported_symbols_list=no]) + LDFLAGS="$save_LDFLAGS" + ]) + case $host_os in + rhapsody* | darwin1.[[012]]) + _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; + darwin1.*) + _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; + darwin*) # darwin 5.x on + # if running on 10.5 or later, the deployment target defaults + # to the OS version, if on x86, and 10.4, the deployment + # target defaults to 10.4. Don't you love it? + case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in + 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) + _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; + 10.[[012]]*) + _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; + 10.*) + _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; + esac + ;; + esac + if test "$lt_cv_apple_cc_single_mod" = "yes"; then + _lt_dar_single_mod='$single_module' + fi + if test "$lt_cv_ld_exported_symbols_list" = "yes"; then + _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' + else + _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' + fi + if test "$DSYMUTIL" != ":"; then + _lt_dsymutil='~$DSYMUTIL $lib || :' + else + _lt_dsymutil= + fi + ;; + esac +]) + + +# _LT_DARWIN_LINKER_FEATURES +# -------------------------- +# Checks for linker and compiler features on darwin +m4_defun([_LT_DARWIN_LINKER_FEATURES], +[ + m4_require([_LT_REQUIRED_DARWIN_CHECKS]) + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_automatic, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_TAGVAR(whole_archive_flag_spec, $1)='' + _LT_TAGVAR(link_all_deplibs, $1)=yes + _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined" + case $cc_basename in + ifort*) _lt_dar_can_shared=yes ;; + *) _lt_dar_can_shared=$GCC ;; + esac + if test "$_lt_dar_can_shared" = "yes"; then + output_verbose_link_cmd=echo + _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" + _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" + _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" + _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}" + m4_if([$1], [CXX], +[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then + _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}" + _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}" + fi +],[]) + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi +]) + +# _LT_SYS_MODULE_PATH_AIX +# ----------------------- +# Links a minimal program and checks the executable +# for the system default hardcoded library path. In most cases, +# this is /usr/lib:/lib, but when the MPI compilers are used +# the location of the communication and MPI libs are included too. +# If we don't find anything, use the default library path according +# to the aix ld manual. +m4_defun([_LT_SYS_MODULE_PATH_AIX], +[m4_require([_LT_DECL_SED])dnl +AC_LINK_IFELSE(AC_LANG_PROGRAM,[ +lt_aix_libpath_sed=' + /Import File Strings/,/^$/ { + /^0/ { + s/^0 *\(.*\)$/\1/ + p + } + }' +aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` +# Check for a 64-bit object if we didn't find anything. +if test -z "$aix_libpath"; then + aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` +fi],[]) +if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi +])# _LT_SYS_MODULE_PATH_AIX + + +# _LT_SHELL_INIT(ARG) +# ------------------- +m4_define([_LT_SHELL_INIT], +[ifdef([AC_DIVERSION_NOTICE], + [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], + [AC_DIVERT_PUSH(NOTICE)]) +$1 +AC_DIVERT_POP +])# _LT_SHELL_INIT + + +# _LT_PROG_ECHO_BACKSLASH +# ----------------------- +# Add some code to the start of the generated configure script which +# will find an echo command which doesn't interpret backslashes. +m4_defun([_LT_PROG_ECHO_BACKSLASH], +[_LT_SHELL_INIT([ +# Check that we are running under the correct shell. +SHELL=${CONFIG_SHELL-/bin/sh} + +case X$lt_ECHO in +X*--fallback-echo) + # Remove one level of quotation (which was required for Make). + ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` + ;; +esac + +ECHO=${lt_ECHO-echo} +if test "X[$]1" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift +elif test "X[$]1" = X--fallback-echo; then + # Avoid inline document here, it may be left over + : +elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then + # Yippee, $ECHO works! + : +else + # Restart under the correct shell. + exec $SHELL "[$]0" --no-reexec ${1+"[$]@"} +fi + +if test "X[$]1" = X--fallback-echo; then + # used as fallback echo + shift + cat <<_LT_EOF +[$]* +_LT_EOF + exit 0 +fi + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +if test -z "$lt_ECHO"; then + if test "X${echo_test_string+set}" != Xset; then + # find a string as large as possible, as long as the shell can cope with it + for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do + # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... + if { echo_test_string=`eval $cmd`; } 2>/dev/null && + { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null + then + break + fi + done + fi + + if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && + echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + : + else + # The Solaris, AIX, and Digital Unix default echo programs unquote + # backslashes. This makes it impossible to quote backslashes using + # echo "$something" | sed 's/\\/\\\\/g' + # + # So, first we look for a working echo in the user's PATH. + + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for dir in $PATH /usr/ucb; do + IFS="$lt_save_ifs" + if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && + test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + ECHO="$dir/echo" + break + fi + done + IFS="$lt_save_ifs" + + if test "X$ECHO" = Xecho; then + # We didn't find a better echo, so look for alternatives. + if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' && + echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + # This shell has a builtin print -r that does the trick. + ECHO='print -r' + elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } && + test "X$CONFIG_SHELL" != X/bin/ksh; then + # If we have ksh, try running configure again with it. + ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} + export ORIGINAL_CONFIG_SHELL + CONFIG_SHELL=/bin/ksh + export CONFIG_SHELL + exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} + else + # Try using printf. + ECHO='printf %s\n' + if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && + echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + # Cool, printf works + : + elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && + test "X$echo_testing_string" = 'X\t' && + echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL + export CONFIG_SHELL + SHELL="$CONFIG_SHELL" + export SHELL + ECHO="$CONFIG_SHELL [$]0 --fallback-echo" + elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && + test "X$echo_testing_string" = 'X\t' && + echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + ECHO="$CONFIG_SHELL [$]0 --fallback-echo" + else + # maybe with a smaller string... + prev=: + + for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do + if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null + then + break + fi + prev="$cmd" + done + + if test "$prev" != 'sed 50q "[$]0"'; then + echo_test_string=`eval $prev` + export echo_test_string + exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} + else + # Oops. We lost completely, so just stick with echo. + ECHO=echo + fi + fi + fi + fi + fi +fi + +# Copy echo and quote the copy suitably for passing to libtool from +# the Makefile, instead of quoting the original, which is used later. +lt_ECHO=$ECHO +if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then + lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" +fi + +AC_SUBST(lt_ECHO) +]) +_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts]) +_LT_DECL([], [ECHO], [1], + [An echo program that does not interpret backslashes]) +])# _LT_PROG_ECHO_BACKSLASH + + +# _LT_ENABLE_LOCK +# --------------- +m4_defun([_LT_ENABLE_LOCK], +[AC_ARG_ENABLE([libtool-lock], + [AS_HELP_STRING([--disable-libtool-lock], + [avoid locking (might break parallel builds)])]) +test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +ia64-*-hpux*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.$ac_objext` in + *ELF-32*) + HPUX_IA64_MODE="32" + ;; + *ELF-64*) + HPUX_IA64_MODE="64" + ;; + esac + fi + rm -rf conftest* + ;; +*-*-irix6*) + # Find out which ABI we are using. + echo '[#]line __oline__ "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + if test "$lt_cv_prog_gnu_ld" = yes; then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -melf32bsmip" + ;; + *N32*) + LD="${LD-ld} -melf32bmipn32" + ;; + *64-bit*) + LD="${LD-ld} -melf64bmip" + ;; + esac + else + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + fi + rm -rf conftest* + ;; + +x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \ +s390*-*linux*|s390*-*tpf*|sparc*-*linux*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.o` in + *32-bit*) + case $host in + x86_64-*kfreebsd*-gnu) + LD="${LD-ld} -m elf_i386_fbsd" + ;; + x86_64-*linux*) + LD="${LD-ld} -m elf_i386" + ;; + ppc64-*linux*|powerpc64-*linux*) + LD="${LD-ld} -m elf32ppclinux" + ;; + s390x-*linux*) + LD="${LD-ld} -m elf_s390" + ;; + sparc64-*linux*) + LD="${LD-ld} -m elf32_sparc" + ;; + esac + ;; + *64-bit*) + case $host in + x86_64-*kfreebsd*-gnu) + LD="${LD-ld} -m elf_x86_64_fbsd" + ;; + x86_64-*linux*) + LD="${LD-ld} -m elf_x86_64" + ;; + ppc*-*linux*|powerpc*-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; + s390*-*linux*|s390*-*tpf*) + LD="${LD-ld} -m elf64_s390" + ;; + sparc*-*linux*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, + [AC_LANG_PUSH(C) + AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) + AC_LANG_POP]) + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; +sparc*-*solaris*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.o` in + *64-bit*) + case $lt_cv_prog_gnu_ld in + yes*) LD="${LD-ld} -m elf64_sparc" ;; + *) + if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then + LD="${LD-ld} -64" + fi + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; +esac + +need_locks="$enable_libtool_lock" +])# _LT_ENABLE_LOCK + + +# _LT_CMD_OLD_ARCHIVE +# ------------------- +m4_defun([_LT_CMD_OLD_ARCHIVE], +[AC_CHECK_TOOL(AR, ar, false) +test -z "$AR" && AR=ar +test -z "$AR_FLAGS" && AR_FLAGS=cru +_LT_DECL([], [AR], [1], [The archiver]) +_LT_DECL([], [AR_FLAGS], [1]) + +AC_CHECK_TOOL(STRIP, strip, :) +test -z "$STRIP" && STRIP=: +_LT_DECL([], [STRIP], [1], [A symbol stripping program]) + +AC_CHECK_TOOL(RANLIB, ranlib, :) +test -z "$RANLIB" && RANLIB=: +_LT_DECL([], [RANLIB], [1], + [Commands used to install an old-style archive]) + +# Determine commands to create old-style static archives. +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' +old_postinstall_cmds='chmod 644 $oldlib' +old_postuninstall_cmds= + +if test -n "$RANLIB"; then + case $host_os in + openbsd*) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib" + ;; + *) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib" + ;; + esac + old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" +fi +_LT_DECL([], [old_postinstall_cmds], [2]) +_LT_DECL([], [old_postuninstall_cmds], [2]) +_LT_TAGDECL([], [old_archive_cmds], [2], + [Commands used to build an old-style archive]) +])# _LT_CMD_OLD_ARCHIVE + + +# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) +# ---------------------------------------------------------------- +# Check whether the given compiler option works +AC_DEFUN([_LT_COMPILER_OPTION], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_SED])dnl +AC_CACHE_CHECK([$1], [$2], + [$2=no + m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="$3" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&AS_MESSAGE_LOG_FD + echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. + $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then + $2=yes + fi + fi + $RM conftest* +]) + +if test x"[$]$2" = xyes; then + m4_if([$5], , :, [$5]) +else + m4_if([$6], , :, [$6]) +fi +])# _LT_COMPILER_OPTION + +# Old name: +AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], []) + + +# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +# [ACTION-SUCCESS], [ACTION-FAILURE]) +# ---------------------------------------------------- +# Check whether the given linker option works +AC_DEFUN([_LT_LINKER_OPTION], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_SED])dnl +AC_CACHE_CHECK([$1], [$2], + [$2=no + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS $3" + echo "$lt_simple_link_test_code" > conftest.$ac_ext + if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then + # The linker can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + # Append any errors to the config.log. + cat conftest.err 1>&AS_MESSAGE_LOG_FD + $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if diff conftest.exp conftest.er2 >/dev/null; then + $2=yes + fi + else + $2=yes + fi + fi + $RM -r conftest* + LDFLAGS="$save_LDFLAGS" +]) + +if test x"[$]$2" = xyes; then + m4_if([$4], , :, [$4]) +else + m4_if([$5], , :, [$5]) +fi +])# _LT_LINKER_OPTION + +# Old name: +AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], []) + + +# LT_CMD_MAX_LEN +#--------------- +AC_DEFUN([LT_CMD_MAX_LEN], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +# find the maximum length of command line arguments +AC_MSG_CHECKING([the maximum length of command line arguments]) +AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl + i=0 + teststring="ABCD" + + case $build_os in + msdosdjgpp*) + # On DJGPP, this test can blow up pretty badly due to problems in libc + # (any single argument exceeding 2000 bytes causes a buffer overrun + # during glob expansion). Even if it were fixed, the result of this + # check would be larger than it should be. + lt_cv_sys_max_cmd_len=12288; # 12K is about right + ;; + + gnu*) + # Under GNU Hurd, this test is not required because there is + # no limit to the length of command line arguments. + # Libtool will interpret -1 as no limit whatsoever + lt_cv_sys_max_cmd_len=-1; + ;; + + cygwin* | mingw* | cegcc*) + # On Win9x/ME, this test blows up -- it succeeds, but takes + # about 5 minutes as the teststring grows exponentially. + # Worse, since 9x/ME are not pre-emptively multitasking, + # you end up with a "frozen" computer, even though with patience + # the test eventually succeeds (with a max line length of 256k). + # Instead, let's just punt: use the minimum linelength reported by + # all of the supported platforms: 8192 (on NT/2K/XP). + lt_cv_sys_max_cmd_len=8192; + ;; + + amigaos*) + # On AmigaOS with pdksh, this test takes hours, literally. + # So we just punt and use a minimum line length of 8192. + lt_cv_sys_max_cmd_len=8192; + ;; + + netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) + # This has been around since 386BSD, at least. Likely further. + if test -x /sbin/sysctl; then + lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` + elif test -x /usr/sbin/sysctl; then + lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` + else + lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs + fi + # And add a safety zone + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` + ;; + + interix*) + # We know the value 262144 and hardcode it with a safety zone (like BSD) + lt_cv_sys_max_cmd_len=196608 + ;; + + osf*) + # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure + # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not + # nice to cause kernel panics so lets avoid the loop below. + # First set a reasonable default. + lt_cv_sys_max_cmd_len=16384 + # + if test -x /sbin/sysconfig; then + case `/sbin/sysconfig -q proc exec_disable_arg_limit` in + *1*) lt_cv_sys_max_cmd_len=-1 ;; + esac + fi + ;; + sco3.2v5*) + lt_cv_sys_max_cmd_len=102400 + ;; + sysv5* | sco5v6* | sysv4.2uw2*) + kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` + if test -n "$kargmax"; then + lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` + else + lt_cv_sys_max_cmd_len=32768 + fi + ;; + *) + lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` + if test -n "$lt_cv_sys_max_cmd_len"; then + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` + else + # Make teststring a little bigger before we do anything with it. + # a 1K string should be a reasonable start. + for i in 1 2 3 4 5 6 7 8 ; do + teststring=$teststring$teststring + done + SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} + # If test is not a shell built-in, we'll probably end up computing a + # maximum length that is only half of the actual maximum length, but + # we can't tell. + while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \ + = "XX$teststring$teststring"; } >/dev/null 2>&1 && + test $i != 17 # 1/2 MB should be enough + do + i=`expr $i + 1` + teststring=$teststring$teststring + done + # Only check the string length outside the loop. + lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` + teststring= + # Add a significant safety factor because C++ compilers can tack on + # massive amounts of additional arguments before passing them to the + # linker. It appears as though 1/2 is a usable value. + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` + fi + ;; + esac +]) +if test -n $lt_cv_sys_max_cmd_len ; then + AC_MSG_RESULT($lt_cv_sys_max_cmd_len) +else + AC_MSG_RESULT(none) +fi +max_cmd_len=$lt_cv_sys_max_cmd_len +_LT_DECL([], [max_cmd_len], [0], + [What is the maximum length of a command?]) +])# LT_CMD_MAX_LEN + +# Old name: +AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], []) + + +# _LT_HEADER_DLFCN +# ---------------- +m4_defun([_LT_HEADER_DLFCN], +[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl +])# _LT_HEADER_DLFCN + + +# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, +# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) +# ---------------------------------------------------------------- +m4_defun([_LT_TRY_DLOPEN_SELF], +[m4_require([_LT_HEADER_DLFCN])dnl +if test "$cross_compiling" = yes; then : + [$4] +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +[#line __oline__ "configure" +#include "confdefs.h" + +#if HAVE_DLFCN_H +#include <dlfcn.h> +#endif + +#include <stdio.h> + +#ifdef RTLD_GLOBAL +# define LT_DLGLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LT_DLGLOBAL DL_GLOBAL +# else +# define LT_DLGLOBAL 0 +# endif +#endif + +/* We may have to define LT_DLLAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LT_DLLAZY_OR_NOW +# ifdef RTLD_LAZY +# define LT_DLLAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LT_DLLAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LT_DLLAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LT_DLLAZY_OR_NOW DL_NOW +# else +# define LT_DLLAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +void fnord() { int i=42;} +int main () +{ + void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); + int status = $lt_dlunknown; + + if (self) + { + if (dlsym (self,"fnord")) status = $lt_dlno_uscore; + else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + /* dlclose (self); */ + } + else + puts (dlerror ()); + + return status; +}] +_LT_EOF + if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then + (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) $1 ;; + x$lt_dlneed_uscore) $2 ;; + x$lt_dlunknown|x*) $3 ;; + esac + else : + # compilation failed + $3 + fi +fi +rm -fr conftest* +])# _LT_TRY_DLOPEN_SELF + + +# LT_SYS_DLOPEN_SELF +# ------------------ +AC_DEFUN([LT_SYS_DLOPEN_SELF], +[m4_require([_LT_HEADER_DLFCN])dnl +if test "x$enable_dlopen" != xyes; then + enable_dlopen=unknown + enable_dlopen_self=unknown + enable_dlopen_self_static=unknown +else + lt_cv_dlopen=no + lt_cv_dlopen_libs= + + case $host_os in + beos*) + lt_cv_dlopen="load_add_on" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ;; + + mingw* | pw32* | cegcc*) + lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen_libs= + ;; + + cygwin*) + lt_cv_dlopen="dlopen" + lt_cv_dlopen_libs= + ;; + + darwin*) + # if libdl is installed we need to link against it + AC_CHECK_LIB([dl], [dlopen], + [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[ + lt_cv_dlopen="dyld" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ]) + ;; + + *) + AC_CHECK_FUNC([shl_load], + [lt_cv_dlopen="shl_load"], + [AC_CHECK_LIB([dld], [shl_load], + [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"], + [AC_CHECK_FUNC([dlopen], + [lt_cv_dlopen="dlopen"], + [AC_CHECK_LIB([dl], [dlopen], + [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], + [AC_CHECK_LIB([svld], [dlopen], + [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], + [AC_CHECK_LIB([dld], [dld_link], + [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"]) + ]) + ]) + ]) + ]) + ]) + ;; + esac + + if test "x$lt_cv_dlopen" != xno; then + enable_dlopen=yes + else + enable_dlopen=no + fi + + case $lt_cv_dlopen in + dlopen) + save_CPPFLAGS="$CPPFLAGS" + test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + + save_LDFLAGS="$LDFLAGS" + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" + + save_LIBS="$LIBS" + LIBS="$lt_cv_dlopen_libs $LIBS" + + AC_CACHE_CHECK([whether a program can dlopen itself], + lt_cv_dlopen_self, [dnl + _LT_TRY_DLOPEN_SELF( + lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, + lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) + ]) + + if test "x$lt_cv_dlopen_self" = xyes; then + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" + AC_CACHE_CHECK([whether a statically linked program can dlopen itself], + lt_cv_dlopen_self_static, [dnl + _LT_TRY_DLOPEN_SELF( + lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, + lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) + ]) + fi + + CPPFLAGS="$save_CPPFLAGS" + LDFLAGS="$save_LDFLAGS" + LIBS="$save_LIBS" + ;; + esac + + case $lt_cv_dlopen_self in + yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; + *) enable_dlopen_self=unknown ;; + esac + + case $lt_cv_dlopen_self_static in + yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; + *) enable_dlopen_self_static=unknown ;; + esac +fi +_LT_DECL([dlopen_support], [enable_dlopen], [0], + [Whether dlopen is supported]) +_LT_DECL([dlopen_self], [enable_dlopen_self], [0], + [Whether dlopen of programs is supported]) +_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0], + [Whether dlopen of statically linked programs is supported]) +])# LT_SYS_DLOPEN_SELF + +# Old name: +AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) + + +# _LT_COMPILER_C_O([TAGNAME]) +# --------------------------- +# Check to see if options -c and -o are simultaneously supported by compiler. +# This macro does not hard code the compiler like AC_PROG_CC_C_O. +m4_defun([_LT_COMPILER_C_O], +[m4_require([_LT_DECL_SED])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_TAG_COMPILER])dnl +AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], + [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)], + [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no + $RM -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&AS_MESSAGE_LOG_FD + echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp + $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 + if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then + _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes + fi + fi + chmod u+w . 2>&AS_MESSAGE_LOG_FD + $RM conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files + $RM out/* && rmdir out + cd .. + $RM -r conftest + $RM conftest* +]) +_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1], + [Does compiler simultaneously support -c and -o options?]) +])# _LT_COMPILER_C_O + + +# _LT_COMPILER_FILE_LOCKS([TAGNAME]) +# ---------------------------------- +# Check to see if we can do hard links to lock some files if needed +m4_defun([_LT_COMPILER_FILE_LOCKS], +[m4_require([_LT_ENABLE_LOCK])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +_LT_COMPILER_C_O([$1]) + +hard_links="nottested" +if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then + # do not overwrite the value of need_locks provided by the user + AC_MSG_CHECKING([if we can lock with hard links]) + hard_links=yes + $RM conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + AC_MSG_RESULT([$hard_links]) + if test "$hard_links" = no; then + AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe]) + need_locks=warn + fi +else + need_locks=no +fi +_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?]) +])# _LT_COMPILER_FILE_LOCKS + + +# _LT_CHECK_OBJDIR +# ---------------- +m4_defun([_LT_CHECK_OBJDIR], +[AC_CACHE_CHECK([for objdir], [lt_cv_objdir], +[rm -f .libs 2>/dev/null +mkdir .libs 2>/dev/null +if test -d .libs; then + lt_cv_objdir=.libs +else + # MS-DOS does not allow filenames that begin with a dot. + lt_cv_objdir=_libs +fi +rmdir .libs 2>/dev/null]) +objdir=$lt_cv_objdir +_LT_DECL([], [objdir], [0], + [The name of the directory that contains temporary libtool files])dnl +m4_pattern_allow([LT_OBJDIR])dnl +AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/", + [Define to the sub-directory in which libtool stores uninstalled libraries.]) +])# _LT_CHECK_OBJDIR + + +# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME]) +# -------------------------------------- +# Check hardcoding attributes. +m4_defun([_LT_LINKER_HARDCODE_LIBPATH], +[AC_MSG_CHECKING([how to hardcode library paths into programs]) +_LT_TAGVAR(hardcode_action, $1)= +if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || + test -n "$_LT_TAGVAR(runpath_var, $1)" || + test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then + + # We can hardcode non-existent directories. + if test "$_LT_TAGVAR(hardcode_direct, $1)" != no && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no && + test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then + # Linking always hardcodes the temporary library directory. + _LT_TAGVAR(hardcode_action, $1)=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + _LT_TAGVAR(hardcode_action, $1)=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + _LT_TAGVAR(hardcode_action, $1)=unsupported +fi +AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) + +if test "$_LT_TAGVAR(hardcode_action, $1)" = relink || + test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then + # Fast installation is not supported + enable_fast_install=no +elif test "$shlibpath_overrides_runpath" = yes || + test "$enable_shared" = no; then + # Fast installation is not necessary + enable_fast_install=needless +fi +_LT_TAGDECL([], [hardcode_action], [0], + [How to hardcode a shared library path into an executable]) +])# _LT_LINKER_HARDCODE_LIBPATH + + +# _LT_CMD_STRIPLIB +# ---------------- +m4_defun([_LT_CMD_STRIPLIB], +[m4_require([_LT_DECL_EGREP]) +striplib= +old_striplib= +AC_MSG_CHECKING([whether stripping libraries is possible]) +if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + AC_MSG_RESULT([yes]) +else +# FIXME - insert some real tests, host_os isn't really good enough + case $host_os in + darwin*) + if test -n "$STRIP" ; then + striplib="$STRIP -x" + old_striplib="$STRIP -S" + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + fi + ;; + *) + AC_MSG_RESULT([no]) + ;; + esac +fi +_LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) +_LT_DECL([], [striplib], [1]) +])# _LT_CMD_STRIPLIB + + +# _LT_SYS_DYNAMIC_LINKER([TAG]) +# ----------------------------- +# PORTME Fill in your ld.so characteristics +m4_defun([_LT_SYS_DYNAMIC_LINKER], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_OBJDUMP])dnl +m4_require([_LT_DECL_SED])dnl +AC_MSG_CHECKING([dynamic linker characteristics]) +m4_if([$1], + [], [ +if test "$GCC" = yes; then + case $host_os in + darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; + *) lt_awk_arg="/^libraries:/" ;; + esac + lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then + # if the path contains ";" then we assume it to be the separator + # otherwise default to the standard path separator (i.e. ":") - it is + # assumed that no part of a normal pathname contains ";" but that should + # okay in the real world where ";" in dirpaths is itself problematic. + lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'` + else + lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi + # Ok, now we have the path, separated by spaces, we can step through it + # and add multilib dir if necessary. + lt_tmp_lt_search_path_spec= + lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` + for lt_sys_path in $lt_search_path_spec; do + if test -d "$lt_sys_path/$lt_multi_os_dir"; then + lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir" + else + test -d "$lt_sys_path" && \ + lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" + fi + done + lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk ' +BEGIN {RS=" "; FS="/|\n";} { + lt_foo=""; + lt_count=0; + for (lt_i = NF; lt_i > 0; lt_i--) { + if ($lt_i != "" && $lt_i != ".") { + if ($lt_i == "..") { + lt_count++; + } else { + if (lt_count == 0) { + lt_foo="/" $lt_i lt_foo; + } else { + lt_count--; + } + } + } + } + if (lt_foo != "") { lt_freq[[lt_foo]]++; } + if (lt_freq[[lt_foo]] == 1) { print lt_foo; } +}'` + sys_lib_search_path_spec=`$ECHO $lt_search_path_spec` +else + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" +fi]) +library_names_spec= +libname_spec='lib$name' +soname_spec= +shrext_cmds=".so" +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +need_lib_prefix=unknown +hardcode_into_libs=no + +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +need_version=unknown + +case $host_os in +aix3*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' + shlibpath_var=LIBPATH + + # AIX 3 has no versioning support, so we append a major version to the name. + soname_spec='${libname}${release}${shared_ext}$major' + ;; + +aix[[4-9]]*) + version_type=linux + need_lib_prefix=no + need_version=no + hardcode_into_libs=yes + if test "$host_cpu" = ia64; then + # AIX 5 supports IA64 + library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + else + # With GCC up to 2.95.x, collect2 would create an import file + # for dependence libraries. The import file would start with + # the line `#! .'. This would cause the generated library to + # depend on `.', always an invalid library. This was fixed in + # development snapshots of GCC prior to 3.0. + case $host_os in + aix4 | aix4.[[01]] | aix4.[[01]].*) + if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' + echo ' yes ' + echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then + : + else + can_build_shared=no + fi + ;; + esac + # AIX (on Power*) has no versioning support, so currently we can not hardcode correct + # soname into executable. Probably we can add versioning support to + # collect2, so additional links can be useful in future. + if test "$aix_use_runtimelinking" = yes; then + # If using run time linking (on AIX 4.2 or later) use lib<name>.so + # instead of lib<name>.a to let people know that these are not + # typical AIX shared libraries. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + else + # We preserve .a as extension for shared libraries through AIX4.2 + # and later when we are not doing run time linking. + library_names_spec='${libname}${release}.a $libname.a' + soname_spec='${libname}${release}${shared_ext}$major' + fi + shlibpath_var=LIBPATH + fi + ;; + +amigaos*) + case $host_cpu in + powerpc) + # Since July 2007 AmigaOS4 officially supports .so libraries. + # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + ;; + m68k) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + ;; + esac + ;; + +beos*) + library_names_spec='${libname}${shared_ext}' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + ;; + +bsdi[[45]]*) + version_type=linux + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32* | cegcc*) + version_type=windows + shrext_cmds=".dll" + need_version=no + need_lib_prefix=no + + case $GCC,$host_os in + yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*) + library_names_spec='$libname.dll.a' + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \${file}`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname~ + if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then + eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; + fi' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + shlibpath_overrides_runpath=yes + + case $host_os in + cygwin*) + # Cygwin DLLs use 'cyg' prefix rather than 'lib' + soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" + ;; + mingw* | cegcc*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then + # It is most probably a Windows format PATH printed by + # mingw gcc, but we are running on Cygwin. Gcc prints its search + # path with ; separators, and with drive letters. We can handle the + # drive letters (cygwin fileutils understands them), so leave them, + # especially as we might pass files found there to a mingw objdump, + # which wouldn't understand a cygwinified path. Ahh. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi + ;; + pw32*) + # pw32 DLLs use 'pw' prefix rather than 'lib' + library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + ;; + esac + ;; + + *) + library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib' + ;; + esac + dynamic_linker='Win32 ld.exe' + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' + soname_spec='${libname}${release}${major}$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' +m4_if([$1], [],[ + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' + ;; + +dgux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +freebsd1*) + dynamic_linker=no + ;; + +freebsd* | dragonfly*) + # DragonFly does not have aout. When/if they implement a new + # versioning mechanism, adjust this. + if test -x /usr/bin/objformat; then + objformat=`/usr/bin/objformat` + else + case $host_os in + freebsd[[123]]*) objformat=aout ;; + *) objformat=elf ;; + esac + fi + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + need_version=no + need_lib_prefix=no + ;; + freebsd-*) + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' + need_version=yes + ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in + freebsd2*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.[[01]]* | freebsdelf3.[[01]]*) + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ + freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + *) # from 4.6 on, and DragonFly + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + esac + ;; + +gnu*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + hardcode_into_libs=yes + ;; + +hpux9* | hpux10* | hpux11*) + # Give a soname corresponding to the major version so that dld.sl refuses to + # link against other versions. + version_type=sunos + need_lib_prefix=no + need_version=no + case $host_cpu in + ia64*) + shrext_cmds='.so' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.so" + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + if test "X$HPUX_IA64_MODE" = X32; then + sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + else + sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + fi + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + hppa*64*) + shrext_cmds='.sl' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.sl" + shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + *) + shrext_cmds='.sl' + dynamic_linker="$host_os dld.sl" + shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + ;; + esac + # HP-UX runs *really* slowly unless shared libraries are mode 555. + postinstall_cmds='chmod 555 $lib' + ;; + +interix[[3-9]]*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +irix5* | irix6* | nonstopux*) + case $host_os in + nonstopux*) version_type=nonstopux ;; + *) + if test "$lt_cv_prog_gnu_ld" = yes; then + version_type=linux + else + version_type=irix + fi ;; + esac + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' + case $host_os in + irix5* | nonstopux*) + libsuff= shlibsuff= + ;; + *) + case $LD in # libtool.m4 will add one of these switches to LD + *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") + libsuff= shlibsuff= libmagic=32-bit;; + *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") + libsuff=32 shlibsuff=N32 libmagic=N32;; + *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") + libsuff=64 shlibsuff=64 libmagic=64-bit;; + *) libsuff= shlibsuff= libmagic=never-match;; + esac + ;; + esac + shlibpath_var=LD_LIBRARY${shlibsuff}_PATH + shlibpath_overrides_runpath=no + sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" + sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" + hardcode_into_libs=yes + ;; + +# No shared lib support for Linux oldld, aout, or coff. +linux*oldld* | linux*aout* | linux*coff*) + dynamic_linker=no + ;; + +# This must be Linux ELF. +linux* | k*bsd*-gnu | kopensolaris*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + # Some binutils ld are patched to set DT_RUNPATH + save_LDFLAGS=$LDFLAGS + save_libdir=$libdir + eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \ + LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\"" + AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], + [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null], + [shlibpath_overrides_runpath=yes])]) + LDFLAGS=$save_LDFLAGS + libdir=$save_libdir + + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` + sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on + # powerpc, because MkLinux only supported shared libraries with the + # GNU dynamic linker. Since this was broken with cross compilers, + # most powerpc-linux boxes support dynamic linking these days and + # people can always --disable-shared, the test was removed, and we + # assume the GNU/Linux dynamic linker is in use. + dynamic_linker='GNU/Linux ld.so' + ;; + +netbsdelf*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='NetBSD ld.elf_so' + ;; + +netbsd*) + version_type=sunos + need_lib_prefix=no + need_version=no + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + dynamic_linker='NetBSD (a.out) ld.so' + else + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + dynamic_linker='NetBSD ld.elf_so' + fi + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + +newsos6) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +*nto* | *qnx*) + version_type=qnx + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='ldqnx.so' + ;; + +openbsd*) + version_type=sunos + sys_lib_dlsearch_path_spec="/usr/lib" + need_lib_prefix=no + # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. + case $host_os in + openbsd3.3 | openbsd3.3.*) need_version=yes ;; + *) need_version=no ;; + esac + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + case $host_os in + openbsd2.[[89]] | openbsd2.[[89]].*) + shlibpath_overrides_runpath=no + ;; + *) + shlibpath_overrides_runpath=yes + ;; + esac + else + shlibpath_overrides_runpath=yes + fi + ;; + +os2*) + libname_spec='$name' + shrext_cmds=".dll" + need_lib_prefix=no + library_names_spec='$libname${shared_ext} $libname.a' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=LIBPATH + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + ;; + +rdos*) + dynamic_linker=no + ;; + +solaris*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + # ldd complains unless libraries are executable + postinstall_cmds='chmod +x $lib' + ;; + +sunos4*) + version_type=sunos + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + if test "$with_gnu_ld" = yes; then + need_lib_prefix=no + fi + need_version=yes + ;; + +sysv4 | sysv4.3*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + sni) + shlibpath_overrides_runpath=no + need_lib_prefix=no + runpath_var=LD_RUN_PATH + ;; + siemens) + need_lib_prefix=no + ;; + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +sysv4*MP*) + if test -d /usr/nec ;then + version_type=linux + library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' + soname_spec='$libname${shared_ext}.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + version_type=freebsd-elf + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + if test "$with_gnu_ld" = yes; then + sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' + else + sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' + case $host_os in + sco3.2v5*) + sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" + ;; + esac + fi + sys_lib_dlsearch_path_spec='/usr/lib' + ;; + +tpf*) + # TPF is a cross-target only. Preferred cross-host = GNU/Linux. + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +uts4*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +*) + dynamic_linker=no + ;; +esac +AC_MSG_RESULT([$dynamic_linker]) +test "$dynamic_linker" = no && can_build_shared=no + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test "$GCC" = yes; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi + +if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then + sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" +fi +if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then + sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" +fi + +_LT_DECL([], [variables_saved_for_relink], [1], + [Variables whose values should be saved in libtool wrapper scripts and + restored at link time]) +_LT_DECL([], [need_lib_prefix], [0], + [Do we need the "lib" prefix for modules?]) +_LT_DECL([], [need_version], [0], [Do we need a version for libraries?]) +_LT_DECL([], [version_type], [0], [Library versioning type]) +_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable]) +_LT_DECL([], [shlibpath_var], [0],[Shared library path variable]) +_LT_DECL([], [shlibpath_overrides_runpath], [0], + [Is shlibpath searched before the hard-coded library search path?]) +_LT_DECL([], [libname_spec], [1], [Format of library name prefix]) +_LT_DECL([], [library_names_spec], [1], + [[List of archive names. First name is the real one, the rest are links. + The last name is the one that the linker finds with -lNAME]]) +_LT_DECL([], [soname_spec], [1], + [[The coded name of the library, if different from the real name]]) +_LT_DECL([], [postinstall_cmds], [2], + [Command to use after installation of a shared archive]) +_LT_DECL([], [postuninstall_cmds], [2], + [Command to use after uninstallation of a shared archive]) +_LT_DECL([], [finish_cmds], [2], + [Commands used to finish a libtool library installation in a directory]) +_LT_DECL([], [finish_eval], [1], + [[As "finish_cmds", except a single script fragment to be evaled but + not shown]]) +_LT_DECL([], [hardcode_into_libs], [0], + [Whether we should hardcode library paths into libraries]) +_LT_DECL([], [sys_lib_search_path_spec], [2], + [Compile-time system search path for libraries]) +_LT_DECL([], [sys_lib_dlsearch_path_spec], [2], + [Run-time system search path for libraries]) +])# _LT_SYS_DYNAMIC_LINKER + + +# _LT_PATH_TOOL_PREFIX(TOOL) +# -------------------------- +# find a file program which can recognize shared library +AC_DEFUN([_LT_PATH_TOOL_PREFIX], +[m4_require([_LT_DECL_EGREP])dnl +AC_MSG_CHECKING([for $1]) +AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, +[case $MAGIC_CMD in +[[\\/*] | ?:[\\/]*]) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; +*) + lt_save_MAGIC_CMD="$MAGIC_CMD" + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR +dnl $ac_dummy forces splitting on constant user-supplied paths. +dnl POSIX.2 word splitting is done only on the output of word expansions, +dnl not every word. This closes a longstanding sh security hole. + ac_dummy="m4_if([$2], , $PATH, [$2])" + for ac_dir in $ac_dummy; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$1; then + lt_cv_path_MAGIC_CMD="$ac_dir/$1" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + $EGREP "$file_magic_regex" > /dev/null; then + : + else + cat <<_LT_EOF 1>&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +_LT_EOF + fi ;; + esac + fi + break + fi + done + IFS="$lt_save_ifs" + MAGIC_CMD="$lt_save_MAGIC_CMD" + ;; +esac]) +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + AC_MSG_RESULT($MAGIC_CMD) +else + AC_MSG_RESULT(no) +fi +_LT_DECL([], [MAGIC_CMD], [0], + [Used to examine libraries when file_magic_cmd begins with "file"])dnl +])# _LT_PATH_TOOL_PREFIX + +# Old name: +AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) + + +# _LT_PATH_MAGIC +# -------------- +# find a file program which can recognize a shared library +m4_defun([_LT_PATH_MAGIC], +[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) + else + MAGIC_CMD=: + fi +fi +])# _LT_PATH_MAGIC + + +# LT_PATH_LD +# ---------- +# find the pathname to the GNU or non-GNU linker +AC_DEFUN([LT_PATH_LD], +[AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +m4_require([_LT_DECL_SED])dnl +m4_require([_LT_DECL_EGREP])dnl + +AC_ARG_WITH([gnu-ld], + [AS_HELP_STRING([--with-gnu-ld], + [assume the C compiler uses GNU ld @<:@default=no@:>@])], + [test "$withval" = no || with_gnu_ld=yes], + [with_gnu_ld=no])dnl + +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + AC_MSG_CHECKING([for ld used by $CC]) + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [[\\/]]* | ?:[[\\/]]*) + re_direlt='/[[^/]][[^/]]*/\.\./' + # Canonicalize the pathname of ld + ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` + while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do + ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + AC_MSG_CHECKING([for GNU ld]) +else + AC_MSG_CHECKING([for non-GNU ld]) +fi +AC_CACHE_VAL(lt_cv_path_LD, +[if test -z "$LD"; then + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some variants of GNU ld only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in + *GNU* | *'with BFD'*) + test "$with_gnu_ld" != no && break + ;; + *) + test "$with_gnu_ld" != yes && break + ;; + esac + fi + done + IFS="$lt_save_ifs" +else + lt_cv_path_LD="$LD" # Let the user override the test with a path. +fi]) +LD="$lt_cv_path_LD" +if test -n "$LD"; then + AC_MSG_RESULT($LD) +else + AC_MSG_RESULT(no) +fi +test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) +_LT_PATH_LD_GNU +AC_SUBST([LD]) + +_LT_TAGDECL([], [LD], [1], [The linker used to build libraries]) +])# LT_PATH_LD + +# Old names: +AU_ALIAS([AM_PROG_LD], [LT_PATH_LD]) +AU_ALIAS([AC_PROG_LD], [LT_PATH_LD]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AM_PROG_LD], []) +dnl AC_DEFUN([AC_PROG_LD], []) + + +# _LT_PATH_LD_GNU +#- -------------- +m4_defun([_LT_PATH_LD_GNU], +[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, +[# I'd rather use --version here, but apparently some GNU lds only accept -v. +case `$LD -v 2>&1 </dev/null` in +*GNU* | *'with BFD'*) + lt_cv_prog_gnu_ld=yes + ;; +*) + lt_cv_prog_gnu_ld=no + ;; +esac]) +with_gnu_ld=$lt_cv_prog_gnu_ld +])# _LT_PATH_LD_GNU + + +# _LT_CMD_RELOAD +# -------------- +# find reload flag for linker +# -- PORTME Some linkers may need a different reload flag. +m4_defun([_LT_CMD_RELOAD], +[AC_CACHE_CHECK([for $LD option to reload object files], + lt_cv_ld_reload_flag, + [lt_cv_ld_reload_flag='-r']) +reload_flag=$lt_cv_ld_reload_flag +case $reload_flag in +"" | " "*) ;; +*) reload_flag=" $reload_flag" ;; +esac +reload_cmds='$LD$reload_flag -o $output$reload_objs' +case $host_os in + darwin*) + if test "$GCC" = yes; then + reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs' + else + reload_cmds='$LD$reload_flag -o $output$reload_objs' + fi + ;; +esac +_LT_DECL([], [reload_flag], [1], [How to create reloadable object files])dnl +_LT_DECL([], [reload_cmds], [2])dnl +])# _LT_CMD_RELOAD + + +# _LT_CHECK_MAGIC_METHOD +# ---------------------- +# how to check for library dependencies +# -- PORTME fill in with the dynamic library characteristics +m4_defun([_LT_CHECK_MAGIC_METHOD], +[m4_require([_LT_DECL_EGREP]) +m4_require([_LT_DECL_OBJDUMP]) +AC_CACHE_CHECK([how to recognize dependent libraries], +lt_cv_deplibs_check_method, +[lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_deplibs_check_method='unknown' +# Need to set the preceding variable on all platforms that support +# interlibrary dependencies. +# 'none' -- dependencies not supported. +# `unknown' -- same as none, but documents that we really don't know. +# 'pass_all' -- all dependencies passed with no checks. +# 'test_compile' -- check by making test program. +# 'file_magic [[regex]]' -- check by looking for files in library path +# which responds to the $file_magic_cmd with a given extended regex. +# If you have `file' or equivalent on your system and you're not sure +# whether `pass_all' will *always* work, you probably want this one. + +case $host_os in +aix[[4-9]]*) + lt_cv_deplibs_check_method=pass_all + ;; + +beos*) + lt_cv_deplibs_check_method=pass_all + ;; + +bsdi[[45]]*) + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +cygwin*) + # func_win32_libid is a shell function defined in ltmain.sh + lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' + lt_cv_file_magic_cmd='func_win32_libid' + ;; + +mingw* | pw32*) + # Base MSYS/MinGW do not provide the 'file' command needed by + # func_win32_libid shell function, so use a weaker test based on 'objdump', + # unless we find 'file', for example because we are cross-compiling. + if ( file / ) >/dev/null 2>&1; then + lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' + lt_cv_file_magic_cmd='func_win32_libid' + else + lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + fi + ;; + +cegcc) + # use the weaker test based on 'objdump'. See mingw*. + lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + +darwin* | rhapsody*) + lt_cv_deplibs_check_method=pass_all + ;; + +freebsd* | dragonfly*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20* | hpux11*) + lt_cv_file_magic_cmd=/usr/bin/file + case $host_cpu in + ia64*) + lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' + lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so + ;; + hppa*64*) + [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]'] + lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl + ;; + *) + lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library' + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + esac + ;; + +interix[[3-9]]*) + # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' + ;; + +irix5* | irix6* | nonstopux*) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be Linux ELF. +linux* | k*bsd*-gnu | kopensolaris*-gnu) + lt_cv_deplibs_check_method=pass_all + ;; + +netbsd* | netbsdelf*-gnu) + if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' + fi + ;; + +newos6*) + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +*nto* | *qnx*) + lt_cv_deplibs_check_method=pass_all + ;; + +openbsd*) + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' + fi + ;; + +osf3* | osf4* | osf5*) + lt_cv_deplibs_check_method=pass_all + ;; + +rdos*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + lt_cv_deplibs_check_method=pass_all + ;; + +sysv4 | sysv4.3*) + case $host_vendor in + motorola) + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + sequent) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' + ;; + sni) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" + lt_cv_file_magic_test_file=/lib/libc.so + ;; + siemens) + lt_cv_deplibs_check_method=pass_all + ;; + pc) + lt_cv_deplibs_check_method=pass_all + ;; + esac + ;; + +tpf*) + lt_cv_deplibs_check_method=pass_all + ;; +esac +]) +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +test -z "$deplibs_check_method" && deplibs_check_method=unknown + +_LT_DECL([], [deplibs_check_method], [1], + [Method to check whether dependent libraries are shared objects]) +_LT_DECL([], [file_magic_cmd], [1], + [Command to use when deplibs_check_method == "file_magic"]) +])# _LT_CHECK_MAGIC_METHOD + + +# LT_PATH_NM +# ---------- +# find the pathname to a BSD- or MS-compatible name lister +AC_DEFUN([LT_PATH_NM], +[AC_REQUIRE([AC_PROG_CC])dnl +AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM, +[if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM="$NM" +else + lt_nm_to_check="${ac_tool_prefix}nm" + if test -n "$ac_tool_prefix" && test "$build" = "$host"; then + lt_nm_to_check="$lt_nm_to_check nm" + fi + for lt_tmp_nm in $lt_nm_to_check; do + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + tmp_nm="$ac_dir/$lt_tmp_nm" + if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in + */dev/null* | *'Invalid file or object type'*) + lt_cv_path_NM="$tmp_nm -B" + break + ;; + *) + case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in + */dev/null*) + lt_cv_path_NM="$tmp_nm -p" + break + ;; + *) + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + ;; + esac + ;; + esac + fi + done + IFS="$lt_save_ifs" + done + : ${lt_cv_path_NM=no} +fi]) +if test "$lt_cv_path_NM" != "no"; then + NM="$lt_cv_path_NM" +else + # Didn't find any BSD compatible name lister, look for dumpbin. + AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :) + AC_SUBST([DUMPBIN]) + if test "$DUMPBIN" != ":"; then + NM="$DUMPBIN" + fi +fi +test -z "$NM" && NM=nm +AC_SUBST([NM]) +_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl + +AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface], + [lt_cv_nm_interface="BSD nm" + echo "int some_variable = 0;" > conftest.$ac_ext + (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD) + (eval "$ac_compile" 2>conftest.err) + cat conftest.err >&AS_MESSAGE_LOG_FD + (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD) + (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) + cat conftest.err >&AS_MESSAGE_LOG_FD + (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD) + cat conftest.out >&AS_MESSAGE_LOG_FD + if $GREP 'External.*some_variable' conftest.out > /dev/null; then + lt_cv_nm_interface="MS dumpbin" + fi + rm -f conftest*]) +])# LT_PATH_NM + +# Old names: +AU_ALIAS([AM_PROG_NM], [LT_PATH_NM]) +AU_ALIAS([AC_PROG_NM], [LT_PATH_NM]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AM_PROG_NM], []) +dnl AC_DEFUN([AC_PROG_NM], []) + + +# LT_LIB_M +# -------- +# check for math library +AC_DEFUN([LT_LIB_M], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +LIBM= +case $host in +*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*) + # These system don't have libm, or don't need it + ;; +*-ncr-sysv4.3*) + AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") + AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") + ;; +*) + AC_CHECK_LIB(m, cos, LIBM="-lm") + ;; +esac +AC_SUBST([LIBM]) +])# LT_LIB_M + +# Old name: +AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_CHECK_LIBM], []) + + +# _LT_COMPILER_NO_RTTI([TAGNAME]) +# ------------------------------- +m4_defun([_LT_COMPILER_NO_RTTI], +[m4_require([_LT_TAG_COMPILER])dnl + +_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= + +if test "$GCC" = yes; then + _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' + + _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], + lt_cv_prog_compiler_rtti_exceptions, + [-fno-rtti -fno-exceptions], [], + [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) +fi +_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1], + [Compiler flag to turn off builtin functions]) +])# _LT_COMPILER_NO_RTTI + + +# _LT_CMD_GLOBAL_SYMBOLS +# ---------------------- +m4_defun([_LT_CMD_GLOBAL_SYMBOLS], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([LT_PATH_NM])dnl +AC_REQUIRE([LT_PATH_LD])dnl +m4_require([_LT_DECL_SED])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_TAG_COMPILER])dnl + +# Check for command to grab the raw symbol name followed by C symbol from nm. +AC_MSG_CHECKING([command to parse $NM output from $compiler object]) +AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], +[ +# These are sane defaults that work on at least a few old systems. +# [They come from Ultrix. What could be older than Ultrix?!! ;)] + +# Character class describing NM global symbol codes. +symcode='[[BCDEGRST]]' + +# Regexp to match symbols that can be accessed directly from C. +sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' + +# Define system-specific variables. +case $host_os in +aix*) + symcode='[[BCDT]]' + ;; +cygwin* | mingw* | pw32* | cegcc*) + symcode='[[ABCDGISTW]]' + ;; +hpux*) + if test "$host_cpu" = ia64; then + symcode='[[ABCDEGRST]]' + fi + ;; +irix* | nonstopux*) + symcode='[[BCDEGRST]]' + ;; +osf*) + symcode='[[BCDEGQRST]]' + ;; +solaris*) + symcode='[[BDRT]]' + ;; +sco3.2v5*) + symcode='[[DT]]' + ;; +sysv4.2uw2*) + symcode='[[DT]]' + ;; +sysv5* | sco5v6* | unixware* | OpenUNIX*) + symcode='[[ABDT]]' + ;; +sysv4) + symcode='[[DFNSTU]]' + ;; +esac + +# If we're using GNU nm, then use its standard symbol codes. +case `$NM -V 2>&1` in +*GNU* | *'with BFD'*) + symcode='[[ABCDGIRSTW]]' ;; +esac + +# Transform an extracted symbol line into a proper C declaration. +# Some systems (esp. on ia64) link data and code symbols differently, +# so use this general approach. +lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" + +# Transform an extracted symbol line into symbol name and symbol address +lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'" +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'" + +# Handle CRLF in mingw tool chain +opt_cr= +case $build_os in +mingw*) + opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp + ;; +esac + +# Try without a prefix underscore, then with it. +for ac_symprfx in "" "_"; do + + # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. + symxfrm="\\1 $ac_symprfx\\2 \\2" + + # Write the raw and C identifiers. + if test "$lt_cv_nm_interface" = "MS dumpbin"; then + # Fake it for dumpbin and say T for any non-static function + # and D for any global variable. + # Also find C++ and __fastcall symbols from MSVC++, + # which start with @ or ?. + lt_cv_sys_global_symbol_pipe="$AWK ['"\ +" {last_section=section; section=\$ 3};"\ +" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ +" \$ 0!~/External *\|/{next};"\ +" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ +" {if(hide[section]) next};"\ +" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ +" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ +" s[1]~/^[@?]/{print s[1], s[1]; next};"\ +" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ +" ' prfx=^$ac_symprfx]" + else + lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" + fi + + # Check to see that the pipe works correctly. + pipe_works=no + + rm -f conftest* + cat > conftest.$ac_ext <<_LT_EOF +#ifdef __cplusplus +extern "C" { +#endif +char nm_test_var; +void nm_test_func(void); +void nm_test_func(void){} +#ifdef __cplusplus +} +#endif +int main(){nm_test_var='a';nm_test_func();return(0);} +_LT_EOF + + if AC_TRY_EVAL(ac_compile); then + # Now try to grab the symbols. + nlist=conftest.nm + if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then + # Try sorting and uniquifying the output. + if sort "$nlist" | uniq > "$nlist"T; then + mv -f "$nlist"T "$nlist" + else + rm -f "$nlist"T + fi + + # Make sure that we snagged all the symbols we need. + if $GREP ' nm_test_var$' "$nlist" >/dev/null; then + if $GREP ' nm_test_func$' "$nlist" >/dev/null; then + cat <<_LT_EOF > conftest.$ac_ext +#ifdef __cplusplus +extern "C" { +#endif + +_LT_EOF + # Now generate the symbol file. + eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' + + cat <<_LT_EOF >> conftest.$ac_ext + +/* The mapping between symbol names and symbols. */ +const struct { + const char *name; + void *address; +} +lt__PROGRAM__LTX_preloaded_symbols[[]] = +{ + { "@PROGRAM@", (void *) 0 }, +_LT_EOF + $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext + cat <<\_LT_EOF >> conftest.$ac_ext + {0, (void *) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt__PROGRAM__LTX_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif +_LT_EOF + # Now try linking the two files. + mv conftest.$ac_objext conftstm.$ac_objext + lt_save_LIBS="$LIBS" + lt_save_CFLAGS="$CFLAGS" + LIBS="conftstm.$ac_objext" + CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" + if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then + pipe_works=yes + fi + LIBS="$lt_save_LIBS" + CFLAGS="$lt_save_CFLAGS" + else + echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD + fi + else + echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD + fi + else + echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD + fi + else + echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD + cat conftest.$ac_ext >&5 + fi + rm -rf conftest* conftst* + + # Do not use the global_symbol_pipe unless it works. + if test "$pipe_works" = yes; then + break + else + lt_cv_sys_global_symbol_pipe= + fi +done +]) +if test -z "$lt_cv_sys_global_symbol_pipe"; then + lt_cv_sys_global_symbol_to_cdecl= +fi +if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then + AC_MSG_RESULT(failed) +else + AC_MSG_RESULT(ok) +fi + +_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1], + [Take the output of nm and produce a listing of raw symbols and C names]) +_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], + [Transform the output of nm in a proper C declaration]) +_LT_DECL([global_symbol_to_c_name_address], + [lt_cv_sys_global_symbol_to_c_name_address], [1], + [Transform the output of nm in a C name address pair]) +_LT_DECL([global_symbol_to_c_name_address_lib_prefix], + [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1], + [Transform the output of nm in a C name address pair when lib prefix is needed]) +]) # _LT_CMD_GLOBAL_SYMBOLS + + +# _LT_COMPILER_PIC([TAGNAME]) +# --------------------------- +m4_defun([_LT_COMPILER_PIC], +[m4_require([_LT_TAG_COMPILER])dnl +_LT_TAGVAR(lt_prog_compiler_wl, $1)= +_LT_TAGVAR(lt_prog_compiler_pic, $1)= +_LT_TAGVAR(lt_prog_compiler_static, $1)= + +AC_MSG_CHECKING([for $compiler option to produce PIC]) +m4_if([$1], [CXX], [ + # C++ specific cases for pic, static, wl, etc. + if test "$GXX" = yes; then + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + m68k) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' + ;; + esac + ;; + + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + mingw* | cygwin* | os2* | pw32* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + # Although the cygwin gcc ignores -fPIC, still need this for old-style + # (--disable-auto-import) libraries + m4_if([$1], [GCJ], [], + [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) + ;; + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + ;; + *djgpp*) + # DJGPP does not support shared libraries at all + _LT_TAGVAR(lt_prog_compiler_pic, $1)= + ;; + interix[[3-9]]*) + # Interix 3.x gcc -fpic/-fPIC options generate broken code. + # Instead, we relocate shared libraries at runtime. + ;; + sysv4*MP*) + if test -d /usr/nec; then + _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic + fi + ;; + hpux*) + # PIC is the default for 64-bit PA HP-UX, but not for 32-bit + # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag + # sets the default TLS model and affects inlining. + case $host_cpu in + hppa*64*) + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + ;; + *qnx* | *nto*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + else + case $host_os in + aix[[4-9]]*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + else + _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' + fi + ;; + chorus*) + case $cc_basename in + cxch68*) + # Green Hills C++ Compiler + # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" + ;; + esac + ;; + dgux*) + case $cc_basename in + ec++*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + ;; + ghcx*) + # Green Hills C++ Compiler + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + *) + ;; + esac + ;; + freebsd* | dragonfly*) + # FreeBSD uses GNU C++ + ;; + hpux9* | hpux10* | hpux11*) + case $cc_basename in + CC*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + if test "$host_cpu" != ia64; then + _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + fi + ;; + aCC*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + ;; + esac + ;; + *) + ;; + esac + ;; + interix*) + # This is c89, which is MS Visual C++ (no shared libs) + # Anyone wants to do a port? + ;; + irix5* | irix6* | nonstopux*) + case $cc_basename in + CC*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + # CC pic flag -KPIC is the default. + ;; + *) + ;; + esac + ;; + linux* | k*bsd*-gnu | kopensolaris*-gnu) + case $cc_basename in + KCC*) + # KAI C++ Compiler + _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + ecpc* ) + # old Intel C++ for x86_64 which still supported -KPIC. + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + icpc* ) + # Intel C++, used to be incompatible with GCC. + # ICC 10 doesn't accept -KPIC any more. + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + pgCC* | pgcpp*) + # Portland Group C++ compiler + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + cxx*) + # Compaq C++ + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + _LT_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + xlc* | xlC*) + # IBM XL 8.0 on PPC + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) + # Sun C++ 5.9 + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + ;; + esac + ;; + esac + ;; + lynxos*) + ;; + m88k*) + ;; + mvs*) + case $cc_basename in + cxx*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' + ;; + *) + ;; + esac + ;; + netbsd* | netbsdelf*-gnu) + ;; + *qnx* | *nto*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' + ;; + osf3* | osf4* | osf5*) + case $cc_basename in + KCC*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' + ;; + RCC*) + # Rational C++ 2.4.1 + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + cxx*) + # Digital/Compaq C++ + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + _LT_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + *) + ;; + esac + ;; + psos*) + ;; + solaris*) + case $cc_basename in + CC*) + # Sun C++ 4.2, 5.x and Centerline C++ + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + ;; + gcx*) + # Green Hills C++ Compiler + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + ;; + *) + ;; + esac + ;; + sunos4*) + case $cc_basename in + CC*) + # Sun C++ 4.x + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + lcc*) + # Lucid + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + *) + ;; + esac + ;; + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + case $cc_basename in + CC*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + esac + ;; + tandem*) + case $cc_basename in + NCC*) + # NonStop-UX NCC 3.20 + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + ;; + *) + ;; + esac + ;; + vxworks*) + ;; + *) + _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + esac + fi +], +[ + if test "$GCC" = yes; then + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + m68k) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' + ;; + esac + ;; + + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + + mingw* | cygwin* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + # Although the cygwin gcc ignores -fPIC, still need this for old-style + # (--disable-auto-import) libraries + m4_if([$1], [GCJ], [], + [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) + ;; + + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + ;; + + hpux*) + # PIC is the default for 64-bit PA HP-UX, but not for 32-bit + # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag + # sets the default TLS model and affects inlining. + case $host_cpu in + hppa*64*) + # +Z the default + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + ;; + + interix[[3-9]]*) + # Interix 3.x gcc -fpic/-fPIC options generate broken code. + # Instead, we relocate shared libraries at runtime. + ;; + + msdosdjgpp*) + # Just because we use GCC doesn't mean we suddenly get shared libraries + # on systems that don't support them. + _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + enable_shared=no + ;; + + *nto* | *qnx*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic + fi + ;; + + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + else + # PORTME Check for flag to pass linker flags through the system compiler. + case $host_os in + aix*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + else + _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' + fi + ;; + + mingw* | cygwin* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + m4_if([$1], [GCJ], [], + [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) + ;; + + hpux9* | hpux10* | hpux11*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + ;; + esac + # Is there a better lt_prog_compiler_static that works with the bundled CC? + _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + ;; + + irix5* | irix6* | nonstopux*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # PIC (with -KPIC) is the default. + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + linux* | k*bsd*-gnu | kopensolaris*-gnu) + case $cc_basename in + # old Intel for x86_64 which still supported -KPIC. + ecc*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + # icc used to be incompatible with GCC. + # ICC 10 doesn't accept -KPIC any more. + icc* | ifort*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + # Lahey Fortran 8.1. + lf95*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared' + _LT_TAGVAR(lt_prog_compiler_static, $1)='--static' + ;; + pgcc* | pgf77* | pgf90* | pgf95*) + # Portland Group compilers (*not* the Pentium gcc compiler, + # which looks to be a dead project) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + ccc*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # All Alpha code is PIC. + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + xl*) + # IBM XL C 8.0/Fortran 10.1 on PPC + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) + # Sun C 5.9 + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + ;; + *Sun\ F*) + # Sun Fortran 8.3 passes all unrecognized flags to the linker + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_TAGVAR(lt_prog_compiler_wl, $1)='' + ;; + esac + ;; + esac + ;; + + newsos6) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + *nto* | *qnx*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' + ;; + + osf3* | osf4* | osf5*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # All OSF/1 code is PIC. + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + rdos*) + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + solaris*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + case $cc_basename in + f77* | f90* | f95*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; + *) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; + esac + ;; + + sunos4*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + sysv4 | sysv4.2uw2* | sysv4.3*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + sysv4*MP*) + if test -d /usr/nec ;then + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + unicos*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + + uts4*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + *) + _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + esac + fi +]) +case $host_os in + # For platforms which do not support PIC, -DPIC is meaningless: + *djgpp*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)= + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])" + ;; +esac +AC_MSG_RESULT([$_LT_TAGVAR(lt_prog_compiler_pic, $1)]) +_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], + [How to pass a linker flag through the compiler]) + +# +# Check to make sure the PIC flag actually works. +# +if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then + _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works], + [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)], + [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [], + [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in + "" | " "*) ;; + *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;; + esac], + [_LT_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) +fi +_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1], + [Additional compiler flags for building library objects]) + +# +# Check to make sure the static flag actually works. +# +wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\" +_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], + _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1), + $lt_tmp_static_flag, + [], + [_LT_TAGVAR(lt_prog_compiler_static, $1)=]) +_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1], + [Compiler flag to prevent dynamic linking]) +])# _LT_COMPILER_PIC + + +# _LT_LINKER_SHLIBS([TAGNAME]) +# ---------------------------- +# See if the linker supports building shared libraries. +m4_defun([_LT_LINKER_SHLIBS], +[AC_REQUIRE([LT_PATH_LD])dnl +AC_REQUIRE([LT_PATH_NM])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_DECL_SED])dnl +m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl +m4_require([_LT_TAG_COMPILER])dnl +AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) +m4_if([$1], [CXX], [ + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + case $host_os in + aix[[4-9]]*) + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then + _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + else + _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + fi + ;; + pw32*) + _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" + ;; + cygwin* | mingw* | cegcc*) + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' + ;; + linux* | k*bsd*-gnu) + _LT_TAGVAR(link_all_deplibs, $1)=no + ;; + *) + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + ;; + esac + _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] +], [ + runpath_var= + _LT_TAGVAR(allow_undefined_flag, $1)= + _LT_TAGVAR(always_export_symbols, $1)=no + _LT_TAGVAR(archive_cmds, $1)= + _LT_TAGVAR(archive_expsym_cmds, $1)= + _LT_TAGVAR(compiler_needs_object, $1)=no + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no + _LT_TAGVAR(export_dynamic_flag_spec, $1)= + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + _LT_TAGVAR(hardcode_automatic, $1)=no + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_direct_absolute, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= + _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= + _LT_TAGVAR(hardcode_libdir_separator, $1)= + _LT_TAGVAR(hardcode_minus_L, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_TAGVAR(inherit_rpath, $1)=no + _LT_TAGVAR(link_all_deplibs, $1)=unknown + _LT_TAGVAR(module_cmds, $1)= + _LT_TAGVAR(module_expsym_cmds, $1)= + _LT_TAGVAR(old_archive_from_new_cmds, $1)= + _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)= + _LT_TAGVAR(thread_safe_flag_spec, $1)= + _LT_TAGVAR(whole_archive_flag_spec, $1)= + # include_expsyms should be a list of space-separated symbols to be *always* + # included in the symbol list + _LT_TAGVAR(include_expsyms, $1)= + # exclude_expsyms can be an extended regexp of symbols to exclude + # it will be wrapped by ` (' and `)$', so one must not match beginning or + # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', + # as well as any symbol that contains `d'. + _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] + # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out + # platforms (ab)use it in PIC code, but their linkers get confused if + # the symbol is explicitly referenced. Since portable code cannot + # rely on this symbol name, it's probably fine to never include it in + # preloaded symbol tables. + # Exclude shared library initialization/finalization symbols. +dnl Note also adjust exclude_expsyms for C++ above. + extract_expsyms_cmds= + + case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + # FIXME: the MSVC++ port hasn't been tested in a loooong time + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + if test "$GCC" != yes; then + with_gnu_ld=no + fi + ;; + interix*) + # we just hope/assume this is gcc and not c89 (= MSVC++) + with_gnu_ld=yes + ;; + openbsd*) + with_gnu_ld=no + ;; + linux* | k*bsd*-gnu) + _LT_TAGVAR(link_all_deplibs, $1)=no + ;; + esac + + _LT_TAGVAR(ld_shlibs, $1)=yes + if test "$with_gnu_ld" = yes; then + # If archive_cmds runs LD, not CC, wlarc should be empty + wlarc='${wl}' + + # Set some defaults for GNU ld with shared library support. These + # are reset later if shared libraries are not supported. Putting them + # here allows them to be overridden if necessary. + runpath_var=LD_RUN_PATH + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then + _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + _LT_TAGVAR(whole_archive_flag_spec, $1)= + fi + supports_anon_versioning=no + case `$LD -v 2>&1` in + *GNU\ gold*) supports_anon_versioning=yes ;; + *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 + *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... + *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... + *\ 2.11.*) ;; # other 2.11 versions + *) supports_anon_versioning=yes ;; + esac + + # See if GNU ld supports shared libraries. + case $host_os in + aix[[3-9]]*) + # On AIX/PPC, the GNU linker is very broken + if test "$host_cpu" != ia64; then + _LT_TAGVAR(ld_shlibs, $1)=no + cat <<_LT_EOF 1>&2 + +*** Warning: the GNU linker, at least up to release 2.9.1, is reported +*** to be unable to reliably create shared libraries on AIX. +*** Therefore, libtool is disabling shared libraries support. If you +*** really care for shared libraries, you may want to modify your PATH +*** so that a non-GNU linker is found, and then restart. + +_LT_EOF + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='' + ;; + m68k) + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_minus_L, $1)=yes + ;; + esac + ;; + + beos*) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + # Joseph Beckenbach <jrb3@best.com> says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + cygwin* | mingw* | pw32* | cegcc*) + # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, + # as there is no search path for DLLs. + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_TAGVAR(always_export_symbols, $1)=no + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols' + + if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + interix[[3-9]]*) + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. + # Instead, shared libraries are loaded at an image base (0x10000000 by + # default) and relocated if they conflict, which is a slow very memory + # consuming and fragmenting process. To avoid this, we pick a random, + # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link + # time. Moving up from 0x10000000 also allows more sbrk(2) space. + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + ;; + + gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) + tmp_diet=no + if test "$host_os" = linux-dietlibc; then + case $cc_basename in + diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) + esac + fi + if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ + && test "$tmp_diet" = no + then + tmp_addflag= + tmp_sharedflag='-shared' + case $cc_basename,$host_cpu in + pgcc*) # Portland Group C compiler + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' + tmp_addflag=' $pic_flag' + ;; + pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' + tmp_addflag=' $pic_flag -Mnomain' ;; + ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 + tmp_addflag=' -i_dynamic' ;; + efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 + tmp_addflag=' -i_dynamic -nofor_main' ;; + ifc* | ifort*) # Intel Fortran compiler + tmp_addflag=' -nofor_main' ;; + lf95*) # Lahey Fortran 8.1 + _LT_TAGVAR(whole_archive_flag_spec, $1)= + tmp_sharedflag='--shared' ;; + xl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below) + tmp_sharedflag='-qmkshrobj' + tmp_addflag= ;; + esac + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) # Sun C 5.9 + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' + _LT_TAGVAR(compiler_needs_object, $1)=yes + tmp_sharedflag='-G' ;; + *Sun\ F*) # Sun Fortran 8.3 + tmp_sharedflag='-G' ;; + esac + _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + + if test "x$supports_anon_versioning" = xyes; then + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + fi + + case $cc_basename in + xlf*) + # IBM XL Fortran 10.1 on PPC cannot create shared libs itself + _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= + _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir' + _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib' + if test "x$supports_anon_versioning" = xyes; then + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' + fi + ;; + esac + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + netbsd* | netbsdelf*-gnu) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' + wlarc= + else + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + fi + ;; + + solaris*) + if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then + _LT_TAGVAR(ld_shlibs, $1)=no + cat <<_LT_EOF 1>&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +_LT_EOF + elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) + case `$LD -v 2>&1` in + *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) + _LT_TAGVAR(ld_shlibs, $1)=no + cat <<_LT_EOF 1>&2 + +*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not +*** reliably create shared libraries on SCO systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.16.91.0.3 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +_LT_EOF + ;; + *) + # For security reasons, it is highly recommended that you always + # use absolute paths for naming shared libraries, and exclude the + # DT_RUNPATH tag from executables and libraries. But doing so + # requires that you compile everything twice, which is a pain. + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + + sunos4*) + _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' + wlarc= + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + + if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then + runpath_var= + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= + _LT_TAGVAR(export_dynamic_flag_spec, $1)= + _LT_TAGVAR(whole_archive_flag_spec, $1)= + fi + else + # PORTME fill in a description of your system's linker (not GNU ld) + case $host_os in + aix3*) + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_TAGVAR(always_export_symbols, $1)=yes + _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' + # Note: this linker hardcodes the directories in LIBPATH if there + # are no directories specified by -L. + _LT_TAGVAR(hardcode_minus_L, $1)=yes + if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then + # Neither direct hardcoding nor static linking is supported with a + # broken collect2. + _LT_TAGVAR(hardcode_direct, $1)=unsupported + fi + ;; + + aix[[4-9]]*) + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then + _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + else + _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + fi + aix_use_runtimelinking=no + + # Test if we are trying to use run time linking or normal + # AIX style linking. If -brtl is somewhere in LDFLAGS, we + # need to do runtime linking. + case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) + for ld_flag in $LDFLAGS; do + if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then + aix_use_runtimelinking=yes + break + fi + done + ;; + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + _LT_TAGVAR(archive_cmds, $1)='' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_TAGVAR(link_all_deplibs, $1)=yes + _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' + + if test "$GCC" = yes; then + case $host_os in aix4.[[012]]|aix4.[[012]].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && + strings "$collect2name" | $GREP resolve_lib_name >/dev/null + then + # We have reworked collect2 + : + else + # We have old collect2 + _LT_TAGVAR(hardcode_direct, $1)=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)= + fi + ;; + esac + shared_flag='-shared' + if test "$aix_use_runtimelinking" = yes; then + shared_flag="$shared_flag "'${wl}-G' + fi + _LT_TAGVAR(link_all_deplibs, $1)=no + else + # not using gcc + if test "$host_cpu" = ia64; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test "$aix_use_runtimelinking" = yes; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + fi + + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + _LT_TAGVAR(always_export_symbols, $1)=yes + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + _LT_TAGVAR(allow_undefined_flag, $1)='-berok' + # Determine the default libpath from the value encoded in an + # empty executable. + _LT_SYS_MODULE_PATH_AIX + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' + _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" + _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an + # empty executable. + _LT_SYS_MODULE_PATH_AIX + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' + _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' + # Exported symbols can be pulled into shared objects from archives + _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' + _LT_TAGVAR(archive_cmds_need_lc, $1)=yes + # This is similar to how AIX traditionally builds its shared libraries. + _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='' + ;; + m68k) + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_minus_L, $1)=yes + ;; + esac + ;; + + bsdi[[45]]*) + _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic + ;; + + cygwin* | mingw* | pw32* | cegcc*) + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=".dll" + # FIXME: Setting linknames here is a bad hack. + _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' + # FIXME: Should let the user specify the lib program. + _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs' + _LT_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`' + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + ;; + + darwin* | rhapsody*) + _LT_DARWIN_LINKER_FEATURES($1) + ;; + + dgux*) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + freebsd1*) + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor + # support. Future versions do this automatically, but an explicit c++rt0.o + # does not break anything, and helps significantly (at the cost of a little + # extra space). + freebsd2.2*) + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. + freebsd2*) + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # FreeBSD 3 and greater uses gcc -shared to do shared libraries. + freebsd* | dragonfly*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + hpux9*) + if test "$GCC" = yes; then + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + else + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + fi + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(hardcode_direct, $1)=yes + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + ;; + + hpux10*) + if test "$GCC" = yes -a "$with_gnu_ld" = no; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' + fi + if test "$with_gnu_ld" = no; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_TAGVAR(hardcode_minus_L, $1)=yes + fi + ;; + + hpux11*) + if test "$GCC" = yes -a "$with_gnu_ld" = no; then + case $host_cpu in + hppa*64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + else + case $host_cpu in + hppa*64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + fi + if test "$with_gnu_ld" = no; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + case $host_cpu in + hppa*64*|ia64*) + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + *) + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_TAGVAR(hardcode_minus_L, $1)=yes + ;; + esac + fi + ;; + + irix5* | irix6* | nonstopux*) + if test "$GCC" = yes; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + # Try to use the -exported_symbol ld option, if it does not + # work, assume that -exports_file does not work either and + # implicitly export all symbols. + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" + AC_LINK_IFELSE(int foo(void) {}, + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' + ) + LDFLAGS="$save_LDFLAGS" + else + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib' + fi + _LT_TAGVAR(archive_cmds_need_lc, $1)='no' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(inherit_rpath, $1)=yes + _LT_TAGVAR(link_all_deplibs, $1)=yes + ;; + + netbsd* | netbsdelf*-gnu) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out + else + _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF + fi + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + newsos6) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *nto* | *qnx*) + ;; + + openbsd*) + if test -f /usr/libexec/ld.so; then + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + else + case $host_os in + openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + ;; + esac + fi + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + os2*) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' + _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' + ;; + + osf3*) + if test "$GCC" = yes; then + _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' + fi + _LT_TAGVAR(archive_cmds_need_lc, $1)='no' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + + osf4* | osf5*) # as osf3* with the addition of -msym flag + if test "$GCC" = yes; then + _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + else + _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ + $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp' + + # Both c and cxx compiler support -rpath directly + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + fi + _LT_TAGVAR(archive_cmds_need_lc, $1)='no' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + + solaris*) + _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' + if test "$GCC" = yes; then + wlarc='${wl}' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + else + case `$CC -V 2>&1` in + *"Compilers 5.0"*) + wlarc='' + _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' + ;; + *) + wlarc='${wl}' + _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + ;; + esac + fi + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + case $host_os in + solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; + *) + # The compiler driver will combine and reorder linker options, + # but understands `-z linker_flag'. GCC discards it without `$wl', + # but is careful enough not to reorder. + # Supported since Solaris 2.6 (maybe 2.5.1?) + if test "$GCC" = yes; then + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' + else + _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' + fi + ;; + esac + _LT_TAGVAR(link_all_deplibs, $1)=yes + ;; + + sunos4*) + if test "x$host_vendor" = xsequent; then + # Use $CC to link under sequent, because it throws in some extra .o + # files that make .init and .fini sections work. + _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' + fi + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + sysv4) + case $host_vendor in + sni) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true??? + ;; + siemens) + ## LD is ld it makes a PLAMLIB + ## CC just makes a GrossModule. + _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' + _LT_TAGVAR(hardcode_direct, $1)=no + ;; + motorola) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie + ;; + esac + runpath_var='LD_RUN_PATH' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + sysv4.3*) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + _LT_TAGVAR(ld_shlibs, $1)=yes + fi + ;; + + sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) + _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var='LD_RUN_PATH' + + if test "$GCC" = yes; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + sysv5* | sco3.2v5* | sco5v6*) + # Note: We can NOT use -z defs as we might desire, because we do not + # link with -lc, and that would cause any symbols used from libc to + # always be unresolved, which means just about no library would + # ever link correctly. If we're not using GNU ld we use -z text + # though, which does catch some bad symbols but isn't as heavy-handed + # as -z defs. + _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_TAGVAR(link_all_deplibs, $1)=yes + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' + runpath_var='LD_RUN_PATH' + + if test "$GCC" = yes; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + uts4*) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *) + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + + if test x$host_vendor = xsni; then + case $host in + sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym' + ;; + esac + fi + fi +]) +AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) +test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no + +_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld + +_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl +_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl +_LT_DECL([], [extract_expsyms_cmds], [2], + [The commands to extract the exported symbol list from a shared archive]) + +# +# Do we need to explicitly link libc? +# +case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in +x|xyes) + # Assume -lc should be added + _LT_TAGVAR(archive_cmds_need_lc, $1)=yes + + if test "$enable_shared" = yes && test "$GCC" = yes; then + case $_LT_TAGVAR(archive_cmds, $1) in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + AC_MSG_CHECKING([whether -lc should be explicitly linked in]) + $RM conftest* + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + if AC_TRY_EVAL(ac_compile) 2>conftest.err; then + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) + pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1) + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1) + _LT_TAGVAR(allow_undefined_flag, $1)= + if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) + then + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + else + _LT_TAGVAR(archive_cmds_need_lc, $1)=yes + fi + _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $RM conftest* + AC_MSG_RESULT([$_LT_TAGVAR(archive_cmds_need_lc, $1)]) + ;; + esac + fi + ;; +esac + +_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0], + [Whether or not to add -lc for building shared libraries]) +_LT_TAGDECL([allow_libtool_libs_with_static_runtimes], + [enable_shared_with_static_runtimes], [0], + [Whether or not to disallow shared libs when runtime libs are static]) +_LT_TAGDECL([], [export_dynamic_flag_spec], [1], + [Compiler flag to allow reflexive dlopens]) +_LT_TAGDECL([], [whole_archive_flag_spec], [1], + [Compiler flag to generate shared objects directly from archives]) +_LT_TAGDECL([], [compiler_needs_object], [1], + [Whether the compiler copes with passing no objects directly]) +_LT_TAGDECL([], [old_archive_from_new_cmds], [2], + [Create an old-style archive from a shared archive]) +_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2], + [Create a temporary old-style archive to link instead of a shared archive]) +_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive]) +_LT_TAGDECL([], [archive_expsym_cmds], [2]) +_LT_TAGDECL([], [module_cmds], [2], + [Commands used to build a loadable module if different from building + a shared archive.]) +_LT_TAGDECL([], [module_expsym_cmds], [2]) +_LT_TAGDECL([], [with_gnu_ld], [1], + [Whether we are building with GNU ld or not]) +_LT_TAGDECL([], [allow_undefined_flag], [1], + [Flag that allows shared libraries with undefined symbols to be built]) +_LT_TAGDECL([], [no_undefined_flag], [1], + [Flag that enforces no undefined symbols]) +_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1], + [Flag to hardcode $libdir into a binary during linking. + This must work even if $libdir does not exist]) +_LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1], + [[If ld is used when linking, flag to hardcode $libdir into a binary + during linking. This must work even if $libdir does not exist]]) +_LT_TAGDECL([], [hardcode_libdir_separator], [1], + [Whether we need a single "-rpath" flag with a separated argument]) +_LT_TAGDECL([], [hardcode_direct], [0], + [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes + DIR into the resulting binary]) +_LT_TAGDECL([], [hardcode_direct_absolute], [0], + [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes + DIR into the resulting binary and the resulting library dependency is + "absolute", i.e impossible to change by setting ${shlibpath_var} if the + library is relocated]) +_LT_TAGDECL([], [hardcode_minus_L], [0], + [Set to "yes" if using the -LDIR flag during linking hardcodes DIR + into the resulting binary]) +_LT_TAGDECL([], [hardcode_shlibpath_var], [0], + [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR + into the resulting binary]) +_LT_TAGDECL([], [hardcode_automatic], [0], + [Set to "yes" if building a shared library automatically hardcodes DIR + into the library and all subsequent libraries and executables linked + against it]) +_LT_TAGDECL([], [inherit_rpath], [0], + [Set to yes if linker adds runtime paths of dependent libraries + to runtime path list]) +_LT_TAGDECL([], [link_all_deplibs], [0], + [Whether libtool must link a program against all its dependency libraries]) +_LT_TAGDECL([], [fix_srcfile_path], [1], + [Fix the shell variable $srcfile for the compiler]) +_LT_TAGDECL([], [always_export_symbols], [0], + [Set to "yes" if exported symbols are required]) +_LT_TAGDECL([], [export_symbols_cmds], [2], + [The commands to list exported symbols]) +_LT_TAGDECL([], [exclude_expsyms], [1], + [Symbols that should not be listed in the preloaded symbols]) +_LT_TAGDECL([], [include_expsyms], [1], + [Symbols that must always be exported]) +_LT_TAGDECL([], [prelink_cmds], [2], + [Commands necessary for linking programs (against libraries) with templates]) +_LT_TAGDECL([], [file_list_spec], [1], + [Specify filename containing input files]) +dnl FIXME: Not yet implemented +dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1], +dnl [Compiler flag to generate thread safe objects]) +])# _LT_LINKER_SHLIBS + + +# _LT_LANG_C_CONFIG([TAG]) +# ------------------------ +# Ensure that the configuration variables for a C compiler are suitably +# defined. These variables are subsequently used by _LT_CONFIG to write +# the compiler configuration to `libtool'. +m4_defun([_LT_LANG_C_CONFIG], +[m4_require([_LT_DECL_EGREP])dnl +lt_save_CC="$CC" +AC_LANG_PUSH(C) + +# Source file extension for C test sources. +ac_ext=c + +# Object file extension for compiled C test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(){return(0);}' + +_LT_TAG_COMPILER +# Save the default compiler, since it gets overwritten when the other +# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. +compiler_DEFAULT=$CC + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +if test -n "$compiler"; then + _LT_COMPILER_NO_RTTI($1) + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_SYS_DYNAMIC_LINKER($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + LT_SYS_DLOPEN_SELF + _LT_CMD_STRIPLIB + + # Report which library types will actually be built + AC_MSG_CHECKING([if libtool supports shared libraries]) + AC_MSG_RESULT([$can_build_shared]) + + AC_MSG_CHECKING([whether to build shared libraries]) + test "$can_build_shared" = "no" && enable_shared=no + + # On AIX, shared libraries and static libraries use the same namespace, and + # are all built from PIC. + case $host_os in + aix3*) + test "$enable_shared" = yes && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + + aix[[4-9]]*) + if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then + test "$enable_shared" = yes && enable_static=no + fi + ;; + esac + AC_MSG_RESULT([$enable_shared]) + + AC_MSG_CHECKING([whether to build static libraries]) + # Make sure either enable_shared or enable_static is yes. + test "$enable_shared" = yes || enable_static=yes + AC_MSG_RESULT([$enable_static]) + + _LT_CONFIG($1) +fi +AC_LANG_POP +CC="$lt_save_CC" +])# _LT_LANG_C_CONFIG + + +# _LT_PROG_CXX +# ------------ +# Since AC_PROG_CXX is broken, in that it returns g++ if there is no c++ +# compiler, we have our own version here. +m4_defun([_LT_PROG_CXX], +[ +pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes]) +AC_PROG_CXX +if test -n "$CXX" && ( test "X$CXX" != "Xno" && + ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || + (test "X$CXX" != "Xg++"))) ; then + AC_PROG_CXXCPP +else + _lt_caught_CXX_error=yes +fi +popdef([AC_MSG_ERROR]) +])# _LT_PROG_CXX + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([_LT_PROG_CXX], []) + + +# _LT_LANG_CXX_CONFIG([TAG]) +# -------------------------- +# Ensure that the configuration variables for a C++ compiler are suitably +# defined. These variables are subsequently used by _LT_CONFIG to write +# the compiler configuration to `libtool'. +m4_defun([_LT_LANG_CXX_CONFIG], +[AC_REQUIRE([_LT_PROG_CXX])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_EGREP])dnl + +AC_LANG_PUSH(C++) +_LT_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_TAGVAR(allow_undefined_flag, $1)= +_LT_TAGVAR(always_export_symbols, $1)=no +_LT_TAGVAR(archive_expsym_cmds, $1)= +_LT_TAGVAR(compiler_needs_object, $1)=no +_LT_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_TAGVAR(hardcode_direct, $1)=no +_LT_TAGVAR(hardcode_direct_absolute, $1)=no +_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= +_LT_TAGVAR(hardcode_libdir_separator, $1)= +_LT_TAGVAR(hardcode_minus_L, $1)=no +_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported +_LT_TAGVAR(hardcode_automatic, $1)=no +_LT_TAGVAR(inherit_rpath, $1)=no +_LT_TAGVAR(module_cmds, $1)= +_LT_TAGVAR(module_expsym_cmds, $1)= +_LT_TAGVAR(link_all_deplibs, $1)=unknown +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(no_undefined_flag, $1)= +_LT_TAGVAR(whole_archive_flag_spec, $1)= +_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Source file extension for C++ test sources. +ac_ext=cpp + +# Object file extension for compiled C++ test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# No sense in running all these tests if we already determined that +# the CXX compiler isn't working. Some variables (like enable_shared) +# are currently assumed to apply to all compilers on this platform, +# and will be corrupted by setting them based on a non-working compiler. +if test "$_lt_caught_CXX_error" != yes; then + # Code to be used in simple compile tests + lt_simple_compile_test_code="int some_variable = 0;" + + # Code to be used in simple link tests + lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }' + + # ltmain only uses $CC for tagged configurations so make sure $CC is set. + _LT_TAG_COMPILER + + # save warnings/boilerplate of simple test code + _LT_COMPILER_BOILERPLATE + _LT_LINKER_BOILERPLATE + + # Allow CC to be a program name with arguments. + lt_save_CC=$CC + lt_save_LD=$LD + lt_save_GCC=$GCC + GCC=$GXX + lt_save_with_gnu_ld=$with_gnu_ld + lt_save_path_LD=$lt_cv_path_LD + if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then + lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx + else + $as_unset lt_cv_prog_gnu_ld + fi + if test -n "${lt_cv_path_LDCXX+set}"; then + lt_cv_path_LD=$lt_cv_path_LDCXX + else + $as_unset lt_cv_path_LD + fi + test -z "${LDCXX+set}" || LD=$LDCXX + CC=${CXX-"c++"} + compiler=$CC + _LT_TAGVAR(compiler, $1)=$CC + _LT_CC_BASENAME([$compiler]) + + if test -n "$compiler"; then + # We don't want -fno-exception when compiling C++ code, so set the + # no_builtin_flag separately + if test "$GXX" = yes; then + _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' + else + _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= + fi + + if test "$GXX" = yes; then + # Set up default GNU C++ configuration + + LT_PATH_LD + + # Check if GNU C++ uses GNU ld as the underlying linker, since the + # archiving commands below assume that GNU ld is being used. + if test "$with_gnu_ld" = yes; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + + # If archive_cmds runs LD, not CC, wlarc should be empty + # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to + # investigate it a little bit more. (MM) + wlarc='${wl}' + + # ancient GNU ld didn't support --whole-archive et. al. + if eval "`$CC -print-prog-name=ld` --help 2>&1" | + $GREP 'no-whole-archive' > /dev/null; then + _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + _LT_TAGVAR(whole_archive_flag_spec, $1)= + fi + else + with_gnu_ld=no + wlarc= + + # A generic and very simple default shared library creation + # command for GNU C++ for the case where it uses the native + # linker, instead of GNU ld. If possible, this setting should + # overridden to take advantage of the native linker features on + # the platform it is being used on. + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + fi + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' + + else + GXX=no + with_gnu_ld=no + wlarc= + fi + + # PORTME: fill in a description of your system's C++ link characteristics + AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) + _LT_TAGVAR(ld_shlibs, $1)=yes + case $host_os in + aix3*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + aix[[4-9]]*) + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + aix_use_runtimelinking=no + + # Test if we are trying to use run time linking or normal + # AIX style linking. If -brtl is somewhere in LDFLAGS, we + # need to do runtime linking. + case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) + for ld_flag in $LDFLAGS; do + case $ld_flag in + *-brtl*) + aix_use_runtimelinking=yes + break + ;; + esac + done + ;; + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + _LT_TAGVAR(archive_cmds, $1)='' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_TAGVAR(link_all_deplibs, $1)=yes + _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' + + if test "$GXX" = yes; then + case $host_os in aix4.[[012]]|aix4.[[012]].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && + strings "$collect2name" | $GREP resolve_lib_name >/dev/null + then + # We have reworked collect2 + : + else + # We have old collect2 + _LT_TAGVAR(hardcode_direct, $1)=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)= + fi + esac + shared_flag='-shared' + if test "$aix_use_runtimelinking" = yes; then + shared_flag="$shared_flag "'${wl}-G' + fi + else + # not using gcc + if test "$host_cpu" = ia64; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test "$aix_use_runtimelinking" = yes; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + fi + + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to + # export. + _LT_TAGVAR(always_export_symbols, $1)=yes + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + _LT_TAGVAR(allow_undefined_flag, $1)='-berok' + # Determine the default libpath from the value encoded in an empty + # executable. + _LT_SYS_MODULE_PATH_AIX + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' + _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" + _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an + # empty executable. + _LT_SYS_MODULE_PATH_AIX + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' + _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' + # Exported symbols can be pulled into shared objects from archives + _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' + _LT_TAGVAR(archive_cmds_need_lc, $1)=yes + # This is similar to how AIX traditionally builds its shared + # libraries. + _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + + beos*) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + # Joseph Beckenbach <jrb3@best.com> says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + chorus*) + case $cc_basename in + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + cygwin* | mingw* | pw32* | cegcc*) + # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, + # as there is no search path for DLLs. + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_TAGVAR(always_export_symbols, $1)=no + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + + if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + darwin* | rhapsody*) + _LT_DARWIN_LINKER_FEATURES($1) + ;; + + dgux*) + case $cc_basename in + ec++*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + ghcx*) + # Green Hills C++ Compiler + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + freebsd[[12]]*) + # C++ shared libraries reported to be fairly broken before + # switch to ELF + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + freebsd-elf*) + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + ;; + + freebsd* | dragonfly*) + # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF + # conventions + _LT_TAGVAR(ld_shlibs, $1)=yes + ;; + + gnu*) + ;; + + hpux9*) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, + # but as the default + # location of the library. + + case $cc_basename in + CC*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + aCC*) + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' + ;; + *) + if test "$GXX" = yes; then + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + else + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + + hpux10*|hpux11*) + if test $with_gnu_ld = no; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + case $host_cpu in + hppa*64*|ia64*) + ;; + *) + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + ;; + esac + fi + case $host_cpu in + hppa*64*|ia64*) + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + *) + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, + # but as the default + # location of the library. + ;; + esac + + case $cc_basename in + CC*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + aCC*) + case $host_cpu in + hppa*64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + ia64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + esac + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' + ;; + *) + if test "$GXX" = yes; then + if test $with_gnu_ld = no; then + case $host_cpu in + hppa*64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + ia64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + esac + fi + else + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + + interix[[3-9]]*) + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. + # Instead, shared libraries are loaded at an image base (0x10000000 by + # default) and relocated if they conflict, which is a slow very memory + # consuming and fragmenting process. To avoid this, we pick a random, + # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link + # time. Moving up from 0x10000000 also allows more sbrk(2) space. + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + ;; + irix5* | irix6*) + case $cc_basename in + CC*) + # SGI C++ + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' + + # Archives containing C++ object files must be created using + # "CC -ar", where "CC" is the IRIX C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' + ;; + *) + if test "$GXX" = yes; then + if test "$with_gnu_ld" = no; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib' + fi + fi + _LT_TAGVAR(link_all_deplibs, $1)=yes + ;; + esac + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(inherit_rpath, $1)=yes + ;; + + linux* | k*bsd*-gnu | kopensolaris*-gnu) + case $cc_basename in + KCC*) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' + ;; + icpc* | ecpc* ) + # Intel C++ + with_gnu_ld=yes + # version 8.0 and above of icpc choke on multiply defined symbols + # if we add $predep_objects and $postdep_objects, however 7.1 and + # earlier do not add the objects themselves. + case `$CC -V 2>&1` in + *"Version 7."*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + ;; + *) # Version 8.0 or newer + tmp_idyn= + case $host_cpu in + ia64*) tmp_idyn=' -i_dynamic';; + esac + _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + ;; + esac + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + ;; + pgCC* | pgcpp*) + # Portland Group C++ compiler + case `$CC -V` in + *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*) + _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ + compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"' + _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ + $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~ + $RANLIB $oldlib' + _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ + $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ + $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' + ;; + *) # Version 6 will use weak symbols + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' + ;; + esac + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' + ;; + cxx*) + # Compaq C++ + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' + + runpath_var=LD_RUN_PATH + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' + ;; + xl*) + # IBM XL 8.0 on PPC, with GNU ld + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + if test "x$supports_anon_versioning" = xyes; then + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + fi + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) + # Sun C++ 5.9 + _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' + _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' + _LT_TAGVAR(compiler_needs_object, $1)=yes + + # Not sure whether something based on + # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 + # would be better. + output_verbose_link_cmd='echo' + + # Archives containing C++ object files must be created using + # "CC -xar", where "CC" is the Sun C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' + ;; + esac + ;; + esac + ;; + + lynxos*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + m88k*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + mvs*) + case $cc_basename in + cxx*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' + wlarc= + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + fi + # Workaround some broken pre-1.5 toolchains + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' + ;; + + *nto* | *qnx*) + _LT_TAGVAR(ld_shlibs, $1)=yes + ;; + + openbsd2*) + # C++ shared libraries are fairly broken + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + openbsd*) + if test -f /usr/libexec/ld.so; then + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + fi + output_verbose_link_cmd=echo + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + osf3* | osf4* | osf5*) + case $cc_basename in + KCC*) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + # Archives containing C++ object files must be created using + # the KAI C++ compiler. + case $host in + osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; + *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;; + esac + ;; + RCC*) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + cxx*) + case $host in + osf3*) + _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + ;; + *) + _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ + echo "-hidden">> $lib.exp~ + $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~ + $RM $lib.exp' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + ;; + esac + + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' + ;; + *) + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + case $host in + osf3*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + ;; + esac + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' + + else + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + + psos*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + sunos4*) + case $cc_basename in + CC*) + # Sun C++ 4.x + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + lcc*) + # Lucid + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + solaris*) + case $cc_basename in + CC*) + # Sun C++ 4.2, 5.x and Centerline C++ + _LT_TAGVAR(archive_cmds_need_lc,$1)=yes + _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' + _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + case $host_os in + solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; + *) + # The compiler driver will combine and reorder linker options, + # but understands `-z linker_flag'. + # Supported since Solaris 2.6 (maybe 2.5.1?) + _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' + ;; + esac + _LT_TAGVAR(link_all_deplibs, $1)=yes + + output_verbose_link_cmd='echo' + + # Archives containing C++ object files must be created using + # "CC -xar", where "CC" is the Sun C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' + ;; + gcx*) + # Green Hills C++ Compiler + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + + # The C++ compiler must be used to create the archive. + _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' + ;; + *) + # GNU C++ compiler with Solaris linker + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' + if $CC --version | $GREP -v '^2\.7' > /dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' + else + # g++ 2.7 appears to require `-G' NOT `-shared' on this + # platform. + _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' + fi + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' + case $host_os in + solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; + *) + _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' + ;; + esac + fi + ;; + esac + ;; + + sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) + _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var='LD_RUN_PATH' + + case $cc_basename in + CC*) + _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + + sysv5* | sco3.2v5* | sco5v6*) + # Note: We can NOT use -z defs as we might desire, because we do not + # link with -lc, and that would cause any symbols used from libc to + # always be unresolved, which means just about no library would + # ever link correctly. If we're not using GNU ld we use -z text + # though, which does catch some bad symbols but isn't as heavy-handed + # as -z defs. + _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_TAGVAR(link_all_deplibs, $1)=yes + _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' + runpath_var='LD_RUN_PATH' + + case $cc_basename in + CC*) + _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + + tandem*) + case $cc_basename in + NCC*) + # NonStop-UX NCC 3.20 + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + vxworks*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + + AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) + test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no + + _LT_TAGVAR(GCC, $1)="$GXX" + _LT_TAGVAR(LD, $1)="$LD" + + ## CAVEAT EMPTOR: + ## There is no encapsulation within the following macros, do not change + ## the running order or otherwise move them around unless you know exactly + ## what you are doing... + _LT_SYS_HIDDEN_LIBDEPS($1) + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_SYS_DYNAMIC_LINKER($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + + _LT_CONFIG($1) + fi # test -n "$compiler" + + CC=$lt_save_CC + LDCXX=$LD + LD=$lt_save_LD + GCC=$lt_save_GCC + with_gnu_ld=$lt_save_with_gnu_ld + lt_cv_path_LDCXX=$lt_cv_path_LD + lt_cv_path_LD=$lt_save_path_LD + lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld + lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld +fi # test "$_lt_caught_CXX_error" != yes + +AC_LANG_POP +])# _LT_LANG_CXX_CONFIG + + +# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) +# --------------------------------- +# Figure out "hidden" library dependencies from verbose +# compiler output when linking a shared library. +# Parse the compiler output and extract the necessary +# objects, libraries and library flags. +m4_defun([_LT_SYS_HIDDEN_LIBDEPS], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +# Dependencies to place before and after the object being linked: +_LT_TAGVAR(predep_objects, $1)= +_LT_TAGVAR(postdep_objects, $1)= +_LT_TAGVAR(predeps, $1)= +_LT_TAGVAR(postdeps, $1)= +_LT_TAGVAR(compiler_lib_search_path, $1)= + +dnl we can't use the lt_simple_compile_test_code here, +dnl because it contains code intended for an executable, +dnl not a library. It's possible we should let each +dnl tag define a new lt_????_link_test_code variable, +dnl but it's only used here... +m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF +int a; +void foo (void) { a = 0; } +_LT_EOF +], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF +class Foo +{ +public: + Foo (void) { a = 0; } +private: + int a; +}; +_LT_EOF +], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF + subroutine foo + implicit none + integer*4 a + a=0 + return + end +_LT_EOF +], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF + subroutine foo + implicit none + integer a + a=0 + return + end +_LT_EOF +], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF +public class foo { + private int a; + public void bar (void) { + a = 0; + } +}; +_LT_EOF +]) +dnl Parse the compiler output and extract the necessary +dnl objects, libraries and library flags. +if AC_TRY_EVAL(ac_compile); then + # Parse the compiler output and extract the necessary + # objects, libraries and library flags. + + # Sentinel used to keep track of whether or not we are before + # the conftest object file. + pre_test_object_deps_done=no + + for p in `eval "$output_verbose_link_cmd"`; do + case $p in + + -L* | -R* | -l*) + # Some compilers place space between "-{L,R}" and the path. + # Remove the space. + if test $p = "-L" || + test $p = "-R"; then + prev=$p + continue + else + prev= + fi + + if test "$pre_test_object_deps_done" = no; then + case $p in + -L* | -R*) + # Internal compiler library paths should come after those + # provided the user. The postdeps already come after the + # user supplied libs so there is no need to process them. + if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then + _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}" + else + _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}" + fi + ;; + # The "-l" case would never come before the object being + # linked, so don't bother handling this case. + esac + else + if test -z "$_LT_TAGVAR(postdeps, $1)"; then + _LT_TAGVAR(postdeps, $1)="${prev}${p}" + else + _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}" + fi + fi + ;; + + *.$objext) + # This assumes that the test object file only shows up + # once in the compiler output. + if test "$p" = "conftest.$objext"; then + pre_test_object_deps_done=yes + continue + fi + + if test "$pre_test_object_deps_done" = no; then + if test -z "$_LT_TAGVAR(predep_objects, $1)"; then + _LT_TAGVAR(predep_objects, $1)="$p" + else + _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" + fi + else + if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then + _LT_TAGVAR(postdep_objects, $1)="$p" + else + _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" + fi + fi + ;; + + *) ;; # Ignore the rest. + + esac + done + + # Clean up. + rm -f a.out a.exe +else + echo "libtool.m4: error: problem compiling $1 test program" +fi + +$RM -f confest.$objext + +# PORTME: override above test on systems where it is broken +m4_if([$1], [CXX], +[case $host_os in +interix[[3-9]]*) + # Interix 3.5 installs completely hosed .la files for C++, so rather than + # hack all around it, let's just trust "g++" to DTRT. + _LT_TAGVAR(predep_objects,$1)= + _LT_TAGVAR(postdep_objects,$1)= + _LT_TAGVAR(postdeps,$1)= + ;; + +linux*) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) + # Sun C++ 5.9 + + # The more standards-conforming stlport4 library is + # incompatible with the Cstd library. Avoid specifying + # it if it's in CXXFLAGS. Ignore libCrun as + # -library=stlport4 depends on it. + case " $CXX $CXXFLAGS " in + *" -library=stlport4 "*) + solaris_use_stlport4=yes + ;; + esac + + if test "$solaris_use_stlport4" != yes; then + _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' + fi + ;; + esac + ;; + +solaris*) + case $cc_basename in + CC*) + # The more standards-conforming stlport4 library is + # incompatible with the Cstd library. Avoid specifying + # it if it's in CXXFLAGS. Ignore libCrun as + # -library=stlport4 depends on it. + case " $CXX $CXXFLAGS " in + *" -library=stlport4 "*) + solaris_use_stlport4=yes + ;; + esac + + # Adding this requires a known-good setup of shared libraries for + # Sun compiler versions before 5.6, else PIC objects from an old + # archive will be linked into the output, leading to subtle bugs. + if test "$solaris_use_stlport4" != yes; then + _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' + fi + ;; + esac + ;; +esac +]) + +case " $_LT_TAGVAR(postdeps, $1) " in +*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; +esac + _LT_TAGVAR(compiler_lib_search_dirs, $1)= +if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then + _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'` +fi +_LT_TAGDECL([], [compiler_lib_search_dirs], [1], + [The directories searched by this compiler when creating a shared library]) +_LT_TAGDECL([], [predep_objects], [1], + [Dependencies to place before and after the objects being linked to + create a shared library]) +_LT_TAGDECL([], [postdep_objects], [1]) +_LT_TAGDECL([], [predeps], [1]) +_LT_TAGDECL([], [postdeps], [1]) +_LT_TAGDECL([], [compiler_lib_search_path], [1], + [The library search path used internally by the compiler when linking + a shared library]) +])# _LT_SYS_HIDDEN_LIBDEPS + + +# _LT_PROG_F77 +# ------------ +# Since AC_PROG_F77 is broken, in that it returns the empty string +# if there is no fortran compiler, we have our own version here. +m4_defun([_LT_PROG_F77], +[ +pushdef([AC_MSG_ERROR], [_lt_disable_F77=yes]) +AC_PROG_F77 +if test -z "$F77" || test "X$F77" = "Xno"; then + _lt_disable_F77=yes +fi +popdef([AC_MSG_ERROR]) +])# _LT_PROG_F77 + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([_LT_PROG_F77], []) + + +# _LT_LANG_F77_CONFIG([TAG]) +# -------------------------- +# Ensure that the configuration variables for a Fortran 77 compiler are +# suitably defined. These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to `libtool'. +m4_defun([_LT_LANG_F77_CONFIG], +[AC_REQUIRE([_LT_PROG_F77])dnl +AC_LANG_PUSH(Fortran 77) + +_LT_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_TAGVAR(allow_undefined_flag, $1)= +_LT_TAGVAR(always_export_symbols, $1)=no +_LT_TAGVAR(archive_expsym_cmds, $1)= +_LT_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_TAGVAR(hardcode_direct, $1)=no +_LT_TAGVAR(hardcode_direct_absolute, $1)=no +_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= +_LT_TAGVAR(hardcode_libdir_separator, $1)= +_LT_TAGVAR(hardcode_minus_L, $1)=no +_LT_TAGVAR(hardcode_automatic, $1)=no +_LT_TAGVAR(inherit_rpath, $1)=no +_LT_TAGVAR(module_cmds, $1)= +_LT_TAGVAR(module_expsym_cmds, $1)= +_LT_TAGVAR(link_all_deplibs, $1)=unknown +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(no_undefined_flag, $1)= +_LT_TAGVAR(whole_archive_flag_spec, $1)= +_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Source file extension for f77 test sources. +ac_ext=f + +# Object file extension for compiled f77 test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# No sense in running all these tests if we already determined that +# the F77 compiler isn't working. Some variables (like enable_shared) +# are currently assumed to apply to all compilers on this platform, +# and will be corrupted by setting them based on a non-working compiler. +if test "$_lt_disable_F77" != yes; then + # Code to be used in simple compile tests + lt_simple_compile_test_code="\ + subroutine t + return + end +" + + # Code to be used in simple link tests + lt_simple_link_test_code="\ + program t + end +" + + # ltmain only uses $CC for tagged configurations so make sure $CC is set. + _LT_TAG_COMPILER + + # save warnings/boilerplate of simple test code + _LT_COMPILER_BOILERPLATE + _LT_LINKER_BOILERPLATE + + # Allow CC to be a program name with arguments. + lt_save_CC="$CC" + lt_save_GCC=$GCC + CC=${F77-"f77"} + compiler=$CC + _LT_TAGVAR(compiler, $1)=$CC + _LT_CC_BASENAME([$compiler]) + GCC=$G77 + if test -n "$compiler"; then + AC_MSG_CHECKING([if libtool supports shared libraries]) + AC_MSG_RESULT([$can_build_shared]) + + AC_MSG_CHECKING([whether to build shared libraries]) + test "$can_build_shared" = "no" && enable_shared=no + + # On AIX, shared libraries and static libraries use the same namespace, and + # are all built from PIC. + case $host_os in + aix3*) + test "$enable_shared" = yes && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + aix[[4-9]]*) + if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then + test "$enable_shared" = yes && enable_static=no + fi + ;; + esac + AC_MSG_RESULT([$enable_shared]) + + AC_MSG_CHECKING([whether to build static libraries]) + # Make sure either enable_shared or enable_static is yes. + test "$enable_shared" = yes || enable_static=yes + AC_MSG_RESULT([$enable_static]) + + _LT_TAGVAR(GCC, $1)="$G77" + _LT_TAGVAR(LD, $1)="$LD" + + ## CAVEAT EMPTOR: + ## There is no encapsulation within the following macros, do not change + ## the running order or otherwise move them around unless you know exactly + ## what you are doing... + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_SYS_DYNAMIC_LINKER($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + + _LT_CONFIG($1) + fi # test -n "$compiler" + + GCC=$lt_save_GCC + CC="$lt_save_CC" +fi # test "$_lt_disable_F77" != yes + +AC_LANG_POP +])# _LT_LANG_F77_CONFIG + + +# _LT_PROG_FC +# ----------- +# Since AC_PROG_FC is broken, in that it returns the empty string +# if there is no fortran compiler, we have our own version here. +m4_defun([_LT_PROG_FC], +[ +pushdef([AC_MSG_ERROR], [_lt_disable_FC=yes]) +AC_PROG_FC +if test -z "$FC" || test "X$FC" = "Xno"; then + _lt_disable_FC=yes +fi +popdef([AC_MSG_ERROR]) +])# _LT_PROG_FC + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([_LT_PROG_FC], []) + + +# _LT_LANG_FC_CONFIG([TAG]) +# ------------------------- +# Ensure that the configuration variables for a Fortran compiler are +# suitably defined. These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to `libtool'. +m4_defun([_LT_LANG_FC_CONFIG], +[AC_REQUIRE([_LT_PROG_FC])dnl +AC_LANG_PUSH(Fortran) + +_LT_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_TAGVAR(allow_undefined_flag, $1)= +_LT_TAGVAR(always_export_symbols, $1)=no +_LT_TAGVAR(archive_expsym_cmds, $1)= +_LT_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_TAGVAR(hardcode_direct, $1)=no +_LT_TAGVAR(hardcode_direct_absolute, $1)=no +_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= +_LT_TAGVAR(hardcode_libdir_separator, $1)= +_LT_TAGVAR(hardcode_minus_L, $1)=no +_LT_TAGVAR(hardcode_automatic, $1)=no +_LT_TAGVAR(inherit_rpath, $1)=no +_LT_TAGVAR(module_cmds, $1)= +_LT_TAGVAR(module_expsym_cmds, $1)= +_LT_TAGVAR(link_all_deplibs, $1)=unknown +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(no_undefined_flag, $1)= +_LT_TAGVAR(whole_archive_flag_spec, $1)= +_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Source file extension for fc test sources. +ac_ext=${ac_fc_srcext-f} + +# Object file extension for compiled fc test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# No sense in running all these tests if we already determined that +# the FC compiler isn't working. Some variables (like enable_shared) +# are currently assumed to apply to all compilers on this platform, +# and will be corrupted by setting them based on a non-working compiler. +if test "$_lt_disable_FC" != yes; then + # Code to be used in simple compile tests + lt_simple_compile_test_code="\ + subroutine t + return + end +" + + # Code to be used in simple link tests + lt_simple_link_test_code="\ + program t + end +" + + # ltmain only uses $CC for tagged configurations so make sure $CC is set. + _LT_TAG_COMPILER + + # save warnings/boilerplate of simple test code + _LT_COMPILER_BOILERPLATE + _LT_LINKER_BOILERPLATE + + # Allow CC to be a program name with arguments. + lt_save_CC="$CC" + lt_save_GCC=$GCC + CC=${FC-"f95"} + compiler=$CC + GCC=$ac_cv_fc_compiler_gnu + + _LT_TAGVAR(compiler, $1)=$CC + _LT_CC_BASENAME([$compiler]) + + if test -n "$compiler"; then + AC_MSG_CHECKING([if libtool supports shared libraries]) + AC_MSG_RESULT([$can_build_shared]) + + AC_MSG_CHECKING([whether to build shared libraries]) + test "$can_build_shared" = "no" && enable_shared=no + + # On AIX, shared libraries and static libraries use the same namespace, and + # are all built from PIC. + case $host_os in + aix3*) + test "$enable_shared" = yes && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + aix[[4-9]]*) + if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then + test "$enable_shared" = yes && enable_static=no + fi + ;; + esac + AC_MSG_RESULT([$enable_shared]) + + AC_MSG_CHECKING([whether to build static libraries]) + # Make sure either enable_shared or enable_static is yes. + test "$enable_shared" = yes || enable_static=yes + AC_MSG_RESULT([$enable_static]) + + _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu" + _LT_TAGVAR(LD, $1)="$LD" + + ## CAVEAT EMPTOR: + ## There is no encapsulation within the following macros, do not change + ## the running order or otherwise move them around unless you know exactly + ## what you are doing... + _LT_SYS_HIDDEN_LIBDEPS($1) + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_SYS_DYNAMIC_LINKER($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + + _LT_CONFIG($1) + fi # test -n "$compiler" + + GCC=$lt_save_GCC + CC="$lt_save_CC" +fi # test "$_lt_disable_FC" != yes + +AC_LANG_POP +])# _LT_LANG_FC_CONFIG + + +# _LT_LANG_GCJ_CONFIG([TAG]) +# -------------------------- +# Ensure that the configuration variables for the GNU Java Compiler compiler +# are suitably defined. These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to `libtool'. +m4_defun([_LT_LANG_GCJ_CONFIG], +[AC_REQUIRE([LT_PROG_GCJ])dnl +AC_LANG_SAVE + +# Source file extension for Java test sources. +ac_ext=java + +# Object file extension for compiled Java test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="class foo {}" + +# Code to be used in simple link tests +lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }' + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +_LT_TAG_COMPILER + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +# Allow CC to be a program name with arguments. +lt_save_CC="$CC" +lt_save_GCC=$GCC +GCC=yes +CC=${GCJ-"gcj"} +compiler=$CC +_LT_TAGVAR(compiler, $1)=$CC +_LT_TAGVAR(LD, $1)="$LD" +_LT_CC_BASENAME([$compiler]) + +# GCJ did not exist at the time GCC didn't implicitly link libc in. +_LT_TAGVAR(archive_cmds_need_lc, $1)=no + +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds + +if test -n "$compiler"; then + _LT_COMPILER_NO_RTTI($1) + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + + _LT_CONFIG($1) +fi + +AC_LANG_RESTORE + +GCC=$lt_save_GCC +CC="$lt_save_CC" +])# _LT_LANG_GCJ_CONFIG + + +# _LT_LANG_RC_CONFIG([TAG]) +# ------------------------- +# Ensure that the configuration variables for the Windows resource compiler +# are suitably defined. These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to `libtool'. +m4_defun([_LT_LANG_RC_CONFIG], +[AC_REQUIRE([LT_PROG_RC])dnl +AC_LANG_SAVE + +# Source file extension for RC test sources. +ac_ext=rc + +# Object file extension for compiled RC test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }' + +# Code to be used in simple link tests +lt_simple_link_test_code="$lt_simple_compile_test_code" + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +_LT_TAG_COMPILER + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +# Allow CC to be a program name with arguments. +lt_save_CC="$CC" +lt_save_GCC=$GCC +GCC= +CC=${RC-"windres"} +compiler=$CC +_LT_TAGVAR(compiler, $1)=$CC +_LT_CC_BASENAME([$compiler]) +_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes + +if test -n "$compiler"; then + : + _LT_CONFIG($1) +fi + +GCC=$lt_save_GCC +AC_LANG_RESTORE +CC="$lt_save_CC" +])# _LT_LANG_RC_CONFIG + + +# LT_PROG_GCJ +# ----------- +AC_DEFUN([LT_PROG_GCJ], +[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ], + [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ], + [AC_CHECK_TOOL(GCJ, gcj,) + test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" + AC_SUBST(GCJFLAGS)])])[]dnl +]) + +# Old name: +AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([LT_AC_PROG_GCJ], []) + + +# LT_PROG_RC +# ---------- +AC_DEFUN([LT_PROG_RC], +[AC_CHECK_TOOL(RC, windres,) +]) + +# Old name: +AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([LT_AC_PROG_RC], []) + + +# _LT_DECL_EGREP +# -------------- +# If we don't have a new enough Autoconf to choose the best grep +# available, choose the one first in the user's PATH. +m4_defun([_LT_DECL_EGREP], +[AC_REQUIRE([AC_PROG_EGREP])dnl +AC_REQUIRE([AC_PROG_FGREP])dnl +test -z "$GREP" && GREP=grep +_LT_DECL([], [GREP], [1], [A grep program that handles long lines]) +_LT_DECL([], [EGREP], [1], [An ERE matcher]) +_LT_DECL([], [FGREP], [1], [A literal string matcher]) +dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too +AC_SUBST([GREP]) +]) + + +# _LT_DECL_OBJDUMP +# -------------- +# If we don't have a new enough Autoconf to choose the best objdump +# available, choose the one first in the user's PATH. +m4_defun([_LT_DECL_OBJDUMP], +[AC_CHECK_TOOL(OBJDUMP, objdump, false) +test -z "$OBJDUMP" && OBJDUMP=objdump +_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper]) +AC_SUBST([OBJDUMP]) +]) + + +# _LT_DECL_SED +# ------------ +# Check for a fully-functional sed program, that truncates +# as few characters as possible. Prefer GNU sed if found. +m4_defun([_LT_DECL_SED], +[AC_PROG_SED +test -z "$SED" && SED=sed +Xsed="$SED -e 1s/^X//" +_LT_DECL([], [SED], [1], [A sed program that does not truncate output]) +_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"], + [Sed that helps us avoid accidentally triggering echo(1) options like -n]) +])# _LT_DECL_SED + +m4_ifndef([AC_PROG_SED], [ +# NOTE: This macro has been submitted for inclusion into # +# GNU Autoconf as AC_PROG_SED. When it is available in # +# a released version of Autoconf we should remove this # +# macro and use it instead. # + +m4_defun([AC_PROG_SED], +[AC_MSG_CHECKING([for a sed that does not truncate output]) +AC_CACHE_VAL(lt_cv_path_SED, +[# Loop through the user's path and test for sed and gsed. +# Then use that list of sed's as ones to test for truncation. +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for lt_ac_prog in sed gsed; do + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then + lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" + fi + done + done +done +IFS=$as_save_IFS +lt_ac_max=0 +lt_ac_count=0 +# Add /usr/xpg4/bin/sed as it is typically found on Solaris +# along with /bin/sed that truncates output. +for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do + test ! -f $lt_ac_sed && continue + cat /dev/null > conftest.in + lt_ac_count=0 + echo $ECHO_N "0123456789$ECHO_C" >conftest.in + # Check for GNU sed and select it if it is found. + if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then + lt_cv_path_SED=$lt_ac_sed + break + fi + while true; do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo >>conftest.nl + $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break + cmp -s conftest.out conftest.nl || break + # 10000 chars as input seems more than enough + test $lt_ac_count -gt 10 && break + lt_ac_count=`expr $lt_ac_count + 1` + if test $lt_ac_count -gt $lt_ac_max; then + lt_ac_max=$lt_ac_count + lt_cv_path_SED=$lt_ac_sed + fi + done +done +]) +SED=$lt_cv_path_SED +AC_SUBST([SED]) +AC_MSG_RESULT([$SED]) +])#AC_PROG_SED +])#m4_ifndef + +# Old name: +AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([LT_AC_PROG_SED], []) + + +# _LT_CHECK_SHELL_FEATURES +# ------------------------ +# Find out whether the shell is Bourne or XSI compatible, +# or has some other useful features. +m4_defun([_LT_CHECK_SHELL_FEATURES], +[AC_MSG_CHECKING([whether the shell understands some XSI constructs]) +# Try some XSI features +xsi_shell=no +( _lt_dummy="a/b/c" + test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \ + = c,a/b,, \ + && eval 'test $(( 1 + 1 )) -eq 2 \ + && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ + && xsi_shell=yes +AC_MSG_RESULT([$xsi_shell]) +_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell']) + +AC_MSG_CHECKING([whether the shell understands "+="]) +lt_shell_append=no +( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \ + >/dev/null 2>&1 \ + && lt_shell_append=yes +AC_MSG_RESULT([$lt_shell_append]) +_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append']) + +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then + lt_unset=unset +else + lt_unset=false +fi +_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl + +# test EBCDIC or ASCII +case `echo X|tr X '\101'` in + A) # ASCII based system + # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr + lt_SP2NL='tr \040 \012' + lt_NL2SP='tr \015\012 \040\040' + ;; + *) # EBCDIC based system + lt_SP2NL='tr \100 \n' + lt_NL2SP='tr \r\n \100\100' + ;; +esac +_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl +_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl +])# _LT_CHECK_SHELL_FEATURES + + +# _LT_PROG_XSI_SHELLFNS +# --------------------- +# Bourne and XSI compatible variants of some useful shell functions. +m4_defun([_LT_PROG_XSI_SHELLFNS], +[case $xsi_shell in + yes) + cat << \_LT_EOF >> "$cfgfile" + +# func_dirname file append nondir_replacement +# Compute the dirname of FILE. If nonempty, add APPEND to the result, +# otherwise set result to NONDIR_REPLACEMENT. +func_dirname () +{ + case ${1} in + */*) func_dirname_result="${1%/*}${2}" ;; + * ) func_dirname_result="${3}" ;; + esac +} + +# func_basename file +func_basename () +{ + func_basename_result="${1##*/}" +} + +# func_dirname_and_basename file append nondir_replacement +# perform func_basename and func_dirname in a single function +# call: +# dirname: Compute the dirname of FILE. If nonempty, +# add APPEND to the result, otherwise set result +# to NONDIR_REPLACEMENT. +# value returned in "$func_dirname_result" +# basename: Compute filename of FILE. +# value retuned in "$func_basename_result" +# Implementation must be kept synchronized with func_dirname +# and func_basename. For efficiency, we do not delegate to +# those functions but instead duplicate the functionality here. +func_dirname_and_basename () +{ + case ${1} in + */*) func_dirname_result="${1%/*}${2}" ;; + * ) func_dirname_result="${3}" ;; + esac + func_basename_result="${1##*/}" +} + +# func_stripname prefix suffix name +# strip PREFIX and SUFFIX off of NAME. +# PREFIX and SUFFIX must not contain globbing or regex special +# characters, hashes, percent signs, but SUFFIX may contain a leading +# dot (in which case that matches only a dot). +func_stripname () +{ + # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are + # positional parameters, so assign one to ordinary parameter first. + func_stripname_result=${3} + func_stripname_result=${func_stripname_result#"${1}"} + func_stripname_result=${func_stripname_result%"${2}"} +} + +# func_opt_split +func_opt_split () +{ + func_opt_split_opt=${1%%=*} + func_opt_split_arg=${1#*=} +} + +# func_lo2o object +func_lo2o () +{ + case ${1} in + *.lo) func_lo2o_result=${1%.lo}.${objext} ;; + *) func_lo2o_result=${1} ;; + esac +} + +# func_xform libobj-or-source +func_xform () +{ + func_xform_result=${1%.*}.lo +} + +# func_arith arithmetic-term... +func_arith () +{ + func_arith_result=$(( $[*] )) +} + +# func_len string +# STRING may not start with a hyphen. +func_len () +{ + func_len_result=${#1} +} + +_LT_EOF + ;; + *) # Bourne compatible functions. + cat << \_LT_EOF >> "$cfgfile" + +# func_dirname file append nondir_replacement +# Compute the dirname of FILE. If nonempty, add APPEND to the result, +# otherwise set result to NONDIR_REPLACEMENT. +func_dirname () +{ + # Extract subdirectory from the argument. + func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"` + if test "X$func_dirname_result" = "X${1}"; then + func_dirname_result="${3}" + else + func_dirname_result="$func_dirname_result${2}" + fi +} + +# func_basename file +func_basename () +{ + func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"` +} + +dnl func_dirname_and_basename +dnl A portable version of this function is already defined in general.m4sh +dnl so there is no need for it here. + +# func_stripname prefix suffix name +# strip PREFIX and SUFFIX off of NAME. +# PREFIX and SUFFIX must not contain globbing or regex special +# characters, hashes, percent signs, but SUFFIX may contain a leading +# dot (in which case that matches only a dot). +# func_strip_suffix prefix name +func_stripname () +{ + case ${2} in + .*) func_stripname_result=`$ECHO "X${3}" \ + | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;; + *) func_stripname_result=`$ECHO "X${3}" \ + | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;; + esac +} + +# sed scripts: +my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q' +my_sed_long_arg='1s/^-[[^=]]*=//' + +# func_opt_split +func_opt_split () +{ + func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"` + func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"` +} + +# func_lo2o object +func_lo2o () +{ + func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"` +} + +# func_xform libobj-or-source +func_xform () +{ + func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[[^.]]*$/.lo/'` +} + +# func_arith arithmetic-term... +func_arith () +{ + func_arith_result=`expr "$[@]"` +} + +# func_len string +# STRING may not start with a hyphen. +func_len () +{ + func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len` +} + +_LT_EOF +esac + +case $lt_shell_append in + yes) + cat << \_LT_EOF >> "$cfgfile" + +# func_append var value +# Append VALUE to the end of shell variable VAR. +func_append () +{ + eval "$[1]+=\$[2]" +} +_LT_EOF + ;; + *) + cat << \_LT_EOF >> "$cfgfile" + +# func_append var value +# Append VALUE to the end of shell variable VAR. +func_append () +{ + eval "$[1]=\$$[1]\$[2]" +} + +_LT_EOF + ;; + esac +]) + +# Helper functions for option handling. -*- Autoconf -*- +# +# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. +# Written by Gary V. Vaughan, 2004 +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +# serial 6 ltoptions.m4 + +# This is to help aclocal find these macros, as it can't see m4_define. +AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) + + +# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME) +# ------------------------------------------ +m4_define([_LT_MANGLE_OPTION], +[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])]) + + +# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME) +# --------------------------------------- +# Set option OPTION-NAME for macro MACRO-NAME, and if there is a +# matching handler defined, dispatch to it. Other OPTION-NAMEs are +# saved as a flag. +m4_define([_LT_SET_OPTION], +[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl +m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]), + _LT_MANGLE_DEFUN([$1], [$2]), + [m4_warning([Unknown $1 option `$2'])])[]dnl +]) + + +# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET]) +# ------------------------------------------------------------ +# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. +m4_define([_LT_IF_OPTION], +[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])]) + + +# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET) +# ------------------------------------------------------- +# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME +# are set. +m4_define([_LT_UNLESS_OPTIONS], +[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), + [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option), + [m4_define([$0_found])])])[]dnl +m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3 +])[]dnl +]) + + +# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST) +# ---------------------------------------- +# OPTION-LIST is a space-separated list of Libtool options associated +# with MACRO-NAME. If any OPTION has a matching handler declared with +# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about +# the unknown option and exit. +m4_defun([_LT_SET_OPTIONS], +[# Set options +m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), + [_LT_SET_OPTION([$1], _LT_Option)]) + +m4_if([$1],[LT_INIT],[ + dnl + dnl Simply set some default values (i.e off) if boolean options were not + dnl specified: + _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no + ]) + _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no + ]) + dnl + dnl If no reference was made to various pairs of opposing options, then + dnl we run the default mode handler for the pair. For example, if neither + dnl `shared' nor `disable-shared' was passed, we enable building of shared + dnl archives by default: + _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED]) + _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC]) + _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC]) + _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install], + [_LT_ENABLE_FAST_INSTALL]) + ]) +])# _LT_SET_OPTIONS + + + +# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME) +# ----------------------------------------- +m4_define([_LT_MANGLE_DEFUN], +[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])]) + + +# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE) +# ----------------------------------------------- +m4_define([LT_OPTION_DEFINE], +[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl +])# LT_OPTION_DEFINE + + +# dlopen +# ------ +LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes +]) + +AU_DEFUN([AC_LIBTOOL_DLOPEN], +[_LT_SET_OPTION([LT_INIT], [dlopen]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you +put the `dlopen' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], []) + + +# win32-dll +# --------- +# Declare package support for building win32 dll's. +LT_OPTION_DEFINE([LT_INIT], [win32-dll], +[enable_win32_dll=yes + +case $host in +*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*) + AC_CHECK_TOOL(AS, as, false) + AC_CHECK_TOOL(DLLTOOL, dlltool, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) + ;; +esac + +test -z "$AS" && AS=as +_LT_DECL([], [AS], [0], [Assembler program])dnl + +test -z "$DLLTOOL" && DLLTOOL=dlltool +_LT_DECL([], [DLLTOOL], [0], [DLL creation program])dnl + +test -z "$OBJDUMP" && OBJDUMP=objdump +_LT_DECL([], [OBJDUMP], [0], [Object dumper program])dnl +])# win32-dll + +AU_DEFUN([AC_LIBTOOL_WIN32_DLL], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +_LT_SET_OPTION([LT_INIT], [win32-dll]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you +put the `win32-dll' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], []) + + +# _LT_ENABLE_SHARED([DEFAULT]) +# ---------------------------- +# implement the --enable-shared flag, and supports the `shared' and +# `disable-shared' LT_INIT options. +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +m4_define([_LT_ENABLE_SHARED], +[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl +AC_ARG_ENABLE([shared], + [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@], + [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_shared=yes ;; + no) enable_shared=no ;; + *) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [enable_shared=]_LT_ENABLE_SHARED_DEFAULT) + + _LT_DECL([build_libtool_libs], [enable_shared], [0], + [Whether or not to build shared libraries]) +])# _LT_ENABLE_SHARED + +LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])]) +LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])]) + +# Old names: +AC_DEFUN([AC_ENABLE_SHARED], +[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared]) +]) + +AC_DEFUN([AC_DISABLE_SHARED], +[_LT_SET_OPTION([LT_INIT], [disable-shared]) +]) + +AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) +AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AM_ENABLE_SHARED], []) +dnl AC_DEFUN([AM_DISABLE_SHARED], []) + + + +# _LT_ENABLE_STATIC([DEFAULT]) +# ---------------------------- +# implement the --enable-static flag, and support the `static' and +# `disable-static' LT_INIT options. +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +m4_define([_LT_ENABLE_STATIC], +[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl +AC_ARG_ENABLE([static], + [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@], + [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_static=yes ;; + no) enable_static=no ;; + *) + enable_static=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [enable_static=]_LT_ENABLE_STATIC_DEFAULT) + + _LT_DECL([build_old_libs], [enable_static], [0], + [Whether or not to build static libraries]) +])# _LT_ENABLE_STATIC + +LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])]) +LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])]) + +# Old names: +AC_DEFUN([AC_ENABLE_STATIC], +[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static]) +]) + +AC_DEFUN([AC_DISABLE_STATIC], +[_LT_SET_OPTION([LT_INIT], [disable-static]) +]) + +AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) +AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AM_ENABLE_STATIC], []) +dnl AC_DEFUN([AM_DISABLE_STATIC], []) + + + +# _LT_ENABLE_FAST_INSTALL([DEFAULT]) +# ---------------------------------- +# implement the --enable-fast-install flag, and support the `fast-install' +# and `disable-fast-install' LT_INIT options. +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +m4_define([_LT_ENABLE_FAST_INSTALL], +[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl +AC_ARG_ENABLE([fast-install], + [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], + [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_fast_install=yes ;; + no) enable_fast_install=no ;; + *) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT) + +_LT_DECL([fast_install], [enable_fast_install], [0], + [Whether or not to optimize for fast installation])dnl +])# _LT_ENABLE_FAST_INSTALL + +LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])]) +LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])]) + +# Old names: +AU_DEFUN([AC_ENABLE_FAST_INSTALL], +[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you put +the `fast-install' option into LT_INIT's first parameter.]) +]) + +AU_DEFUN([AC_DISABLE_FAST_INSTALL], +[_LT_SET_OPTION([LT_INIT], [disable-fast-install]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you put +the `disable-fast-install' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], []) +dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], []) + + +# _LT_WITH_PIC([MODE]) +# -------------------- +# implement the --with-pic flag, and support the `pic-only' and `no-pic' +# LT_INIT options. +# MODE is either `yes' or `no'. If omitted, it defaults to `both'. +m4_define([_LT_WITH_PIC], +[AC_ARG_WITH([pic], + [AS_HELP_STRING([--with-pic], + [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], + [pic_mode="$withval"], + [pic_mode=default]) + +test -z "$pic_mode" && pic_mode=m4_default([$1], [default]) + +_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl +])# _LT_WITH_PIC + +LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])]) +LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])]) + +# Old name: +AU_DEFUN([AC_LIBTOOL_PICMODE], +[_LT_SET_OPTION([LT_INIT], [pic-only]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you +put the `pic-only' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_PICMODE], []) + + +m4_define([_LTDL_MODE], []) +LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive], + [m4_define([_LTDL_MODE], [nonrecursive])]) +LT_OPTION_DEFINE([LTDL_INIT], [recursive], + [m4_define([_LTDL_MODE], [recursive])]) +LT_OPTION_DEFINE([LTDL_INIT], [subproject], + [m4_define([_LTDL_MODE], [subproject])]) + +m4_define([_LTDL_TYPE], []) +LT_OPTION_DEFINE([LTDL_INIT], [installable], + [m4_define([_LTDL_TYPE], [installable])]) +LT_OPTION_DEFINE([LTDL_INIT], [convenience], + [m4_define([_LTDL_TYPE], [convenience])]) + +# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- +# +# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. +# Written by Gary V. Vaughan, 2004 +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +# serial 6 ltsugar.m4 + +# This is to help aclocal find these macros, as it can't see m4_define. +AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])]) + + +# lt_join(SEP, ARG1, [ARG2...]) +# ----------------------------- +# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their +# associated separator. +# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier +# versions in m4sugar had bugs. +m4_define([lt_join], +[m4_if([$#], [1], [], + [$#], [2], [[$2]], + [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])]) +m4_define([_lt_join], +[m4_if([$#$2], [2], [], + [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])]) + + +# lt_car(LIST) +# lt_cdr(LIST) +# ------------ +# Manipulate m4 lists. +# These macros are necessary as long as will still need to support +# Autoconf-2.59 which quotes differently. +m4_define([lt_car], [[$1]]) +m4_define([lt_cdr], +[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], + [$#], 1, [], + [m4_dquote(m4_shift($@))])]) +m4_define([lt_unquote], $1) + + +# lt_append(MACRO-NAME, STRING, [SEPARATOR]) +# ------------------------------------------ +# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'. +# Note that neither SEPARATOR nor STRING are expanded; they are appended +# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). +# No SEPARATOR is output if MACRO-NAME was previously undefined (different +# than defined and empty). +# +# This macro is needed until we can rely on Autoconf 2.62, since earlier +# versions of m4sugar mistakenly expanded SEPARATOR but not STRING. +m4_define([lt_append], +[m4_define([$1], + m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])]) + + + +# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...]) +# ---------------------------------------------------------- +# Produce a SEP delimited list of all paired combinations of elements of +# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list +# has the form PREFIXmINFIXSUFFIXn. +# Needed until we can rely on m4_combine added in Autoconf 2.62. +m4_define([lt_combine], +[m4_if(m4_eval([$# > 3]), [1], + [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl +[[m4_foreach([_Lt_prefix], [$2], + [m4_foreach([_Lt_suffix], + ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[, + [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])]) + + +# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ]) +# ----------------------------------------------------------------------- +# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited +# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ. +m4_define([lt_if_append_uniq], +[m4_ifdef([$1], + [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1], + [lt_append([$1], [$2], [$3])$4], + [$5])], + [lt_append([$1], [$2], [$3])$4])]) + + +# lt_dict_add(DICT, KEY, VALUE) +# ----------------------------- +m4_define([lt_dict_add], +[m4_define([$1($2)], [$3])]) + + +# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE) +# -------------------------------------------- +m4_define([lt_dict_add_subkey], +[m4_define([$1($2:$3)], [$4])]) + + +# lt_dict_fetch(DICT, KEY, [SUBKEY]) +# ---------------------------------- +m4_define([lt_dict_fetch], +[m4_ifval([$3], + m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]), + m4_ifdef([$1($2)], [m4_defn([$1($2)])]))]) + + +# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE]) +# ----------------------------------------------------------------- +m4_define([lt_if_dict_fetch], +[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4], + [$5], + [$6])]) + + +# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...]) +# -------------------------------------------------------------- +m4_define([lt_dict_filter], +[m4_if([$5], [], [], + [lt_join(m4_quote(m4_default([$4], [[, ]])), + lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]), + [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl +]) + +# ltversion.m4 -- version numbers -*- Autoconf -*- +# +# Copyright (C) 2004 Free Software Foundation, Inc. +# Written by Scott James Remnant, 2004 +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +# Generated from ltversion.in. + +# serial 3017 ltversion.m4 +# This file is part of GNU Libtool + +m4_define([LT_PACKAGE_VERSION], [2.2.6b]) +m4_define([LT_PACKAGE_REVISION], [1.3017]) + +AC_DEFUN([LTVERSION_VERSION], +[macro_version='2.2.6b' +macro_revision='1.3017' +_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) +_LT_DECL(, macro_revision, 0) +]) + +# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- +# +# Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. +# Written by Scott James Remnant, 2004. +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +# serial 4 lt~obsolete.m4 + +# These exist entirely to fool aclocal when bootstrapping libtool. +# +# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN) +# which have later been changed to m4_define as they aren't part of the +# exported API, or moved to Autoconf or Automake where they belong. +# +# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN +# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us +# using a macro with the same name in our local m4/libtool.m4 it'll +# pull the old libtool.m4 in (it doesn't see our shiny new m4_define +# and doesn't know about Autoconf macros at all.) +# +# So we provide this file, which has a silly filename so it's always +# included after everything else. This provides aclocal with the +# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything +# because those macros already exist, or will be overwritten later. +# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. +# +# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here. +# Yes, that means every name once taken will need to remain here until +# we give up compatibility with versions before 1.7, at which point +# we need to keep only those names which we still refer to. + +# This is to help aclocal find these macros, as it can't see m4_define. +AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])]) + +m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])]) +m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])]) +m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])]) +m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])]) +m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])]) +m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])]) +m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])]) +m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])]) +m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])]) +m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])]) +m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])]) +m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])]) +m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])]) +m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])]) +m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])]) +m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])]) +m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])]) +m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])]) +m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])]) +m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])]) +m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])]) +m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])]) +m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])]) +m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])]) +m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])]) +m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])]) +m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])]) +m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])]) +m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])]) +m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])]) +m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])]) +m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])]) +m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])]) +m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])]) +m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])]) +m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])]) +m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])]) +m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])]) +m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])]) +m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])]) +m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])]) +m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])]) +m4_ifndef([AC_LIBTOOL_RC], [AC_DEFUN([AC_LIBTOOL_RC])]) +m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])]) +m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])]) +m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])]) +m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])]) +m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])]) +m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])]) +m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])]) +m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])]) + # nls.m4 serial 5 (gettext-0.18) dnl Copyright (C) 1995-2003, 2005-2006, 2008-2010 Free Software Foundation, dnl Inc. @@ -1687,12 +10061,3 @@ AC_SUBST([am__tar]) AC_SUBST([am__untar]) ]) # _AM_PROG_TAR -m4_include([m4/gnome-doc-utils.m4]) -m4_include([m4/gtk-doc.m4]) -m4_include([m4/intltool.m4]) -m4_include([m4/introspection.m4]) -m4_include([m4/libtool.m4]) -m4_include([m4/ltoptions.m4]) -m4_include([m4/ltsugar.m4]) -m4_include([m4/ltversion.m4]) -m4_include([m4/lt~obsolete.m4]) @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.67 for libdbusmenu 0.3.100. +# Generated by GNU Autoconf 2.67 for libdbusmenu 0.3.101. # # Report bugs to <ted@canonical.com>. # @@ -703,8 +703,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='libdbusmenu' PACKAGE_TARNAME='libdbusmenu' -PACKAGE_VERSION='0.3.100' -PACKAGE_STRING='libdbusmenu 0.3.100' +PACKAGE_VERSION='0.3.101' +PACKAGE_STRING='libdbusmenu 0.3.101' PACKAGE_BUGREPORT='ted@canonical.com' PACKAGE_URL='' @@ -1541,7 +1541,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures libdbusmenu 0.3.100 to adapt to many kinds of systems. +\`configure' configures libdbusmenu 0.3.101 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1611,7 +1611,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libdbusmenu 0.3.100:";; + short | recursive ) echo "Configuration of libdbusmenu 0.3.101:";; esac cat <<\_ACEOF @@ -1751,7 +1751,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libdbusmenu configure 0.3.100 +libdbusmenu configure 0.3.101 generated by GNU Autoconf 2.67 Copyright (C) 2010 Free Software Foundation, Inc. @@ -2122,7 +2122,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libdbusmenu $as_me 0.3.100, which was +It was created by libdbusmenu $as_me 0.3.101, which was generated by GNU Autoconf 2.67. Invocation command line was $ $0 $@ @@ -2943,7 +2943,7 @@ fi # Define the identity of the package. PACKAGE=libdbusmenu - VERSION=0.3.100 + VERSION=0.3.101 # Some tools Automake needs. @@ -8777,10 +8777,6 @@ _lt_linker_boilerplate=`cat conftest.err` $RM -r conftest* -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... if test -n "$compiler"; then lt_prog_compiler_no_builtin_flag= @@ -8806,11 +8802,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8809: $lt_compile\"" >&5) + (eval echo "\"\$as_me:8805: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:8813: \$? = $ac_status" >&5 + echo "$as_me:8809: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -9145,11 +9141,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:9148: $lt_compile\"" >&5) + (eval echo "\"\$as_me:9144: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:9152: \$? = $ac_status" >&5 + echo "$as_me:9148: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -9250,11 +9246,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:9253: $lt_compile\"" >&5) + (eval echo "\"\$as_me:9249: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:9257: \$? = $ac_status" >&5 + echo "$as_me:9253: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -9305,11 +9301,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:9308: $lt_compile\"" >&5) + (eval echo "\"\$as_me:9304: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:9312: \$? = $ac_status" >&5 + echo "$as_me:9308: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -11689,7 +11685,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11692 "configure" +#line 11688 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11785,7 +11781,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11788 "configure" +#line 11784 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -13298,7 +13294,7 @@ fi ########################### LIBDBUSMENU_CURRENT=3 -LIBDBUSMENU_REVISION=8 +LIBDBUSMENU_REVISION=9 LIBDBUSMENU_AGE=0 @@ -14620,7 +14616,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libdbusmenu $as_me 0.3.100, which was +This file was extended by libdbusmenu $as_me 0.3.101, which was generated by GNU Autoconf 2.67. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -14686,7 +14682,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -libdbusmenu config.status 0.3.100 +libdbusmenu config.status 0.3.101 configured by $0, generated by GNU Autoconf 2.67, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index 98f7cc7..8cfa421 100644 --- a/configure.ac +++ b/configure.ac @@ -1,11 +1,11 @@ -AC_INIT(libdbusmenu, 0.3.100, ted@canonical.com) +AC_INIT(libdbusmenu, 0.3.101, ted@canonical.com) AC_COPYRIGHT([Copyright 2009,2010 Canonical]) AC_PREREQ(2.62) AM_CONFIG_HEADER(config.h) -AM_INIT_AUTOMAKE(libdbusmenu, 0.3.100, [-Wno-portability]) +AM_INIT_AUTOMAKE(libdbusmenu, 0.3.101, [-Wno-portability]) AM_MAINTAINER_MODE @@ -134,7 +134,7 @@ AC_PATH_PROG([XSLT_PROC], [xsltproc]) ########################### LIBDBUSMENU_CURRENT=3 -LIBDBUSMENU_REVISION=8 +LIBDBUSMENU_REVISION=9 LIBDBUSMENU_AGE=0 AC_SUBST(LIBDBUSMENU_CURRENT) diff --git a/debian/changelog b/debian/changelog index be83197..4b34c80 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,20 @@ +libdbusmenu (0.3.101-0ubuntu1~ppa1) UNRELEASED; urgency=low + + * New upstream release. + ∘ Add helper to get cached menuitem from widget + ∘ Have the GTK Dbusmenu Client handle theme directories (LP: #727325) + ∘ Fix a bunch of memory leaks (LP: #722972) + ∘ Handle _ in menuitems more correctly when parsing (LP: #621301) + ∘ Protect from NULL layout_props (LP: #729722) + ∘ Remove the property from the hashtable before signaling that + it's been changed (LP: #725603) + ∘ Wrap emitted properties in a variant + ∘ Fix enum templates so they can be included by other programs + without error + ∘ Setting the cached menu item (LP: #723463) (LP: #729128) (LP: #729194) + + -- Ted Gould <ted@ubuntu.com> Thu, 10 Mar 2011 11:03:27 -0600 + libdbusmenu (0.3.100-0ubuntu4) natty; urgency=low * libdbusmenu-gtk/parser.c @@ -20,13 +37,6 @@ libdbusmenu (0.3.100-0ubuntu2) natty; urgency=low -- Ken VanDine <ken.vandine@canonical.com> Fri, 04 Mar 2011 10:22:36 -0500 -libdbusmenu (0.3.100-0ubuntu2~ppa1) natty; urgency=low - - * Upstream Merge - * Fix the enum-types.h header in the dist - - -- Ted Gould <ted@ubuntu.com> Fri, 04 Mar 2011 09:31:09 -0600 - libdbusmenu (0.3.100-0ubuntu1) natty; urgency=low * New upstream release. diff --git a/docs/Makefile.in b/docs/Makefile.in index 6b38370..b153c02 100644 --- a/docs/Makefile.in +++ b/docs/Makefile.in @@ -36,12 +36,7 @@ host_triplet = @host@ subdir = docs DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/gnome-doc-utils.m4 \ - $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/intltool.m4 \ - $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs diff --git a/docs/libdbusmenu-glib/Makefile.in b/docs/libdbusmenu-glib/Makefile.in index 8a2cffb..f1eaff3 100644 --- a/docs/libdbusmenu-glib/Makefile.in +++ b/docs/libdbusmenu-glib/Makefile.in @@ -36,12 +36,7 @@ host_triplet = @host@ subdir = docs/libdbusmenu-glib DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/gnome-doc-utils.m4 \ - $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/intltool.m4 \ - $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs diff --git a/docs/libdbusmenu-glib/reference/Makefile.in b/docs/libdbusmenu-glib/reference/Makefile.in index a475a64..96b09f1 100644 --- a/docs/libdbusmenu-glib/reference/Makefile.in +++ b/docs/libdbusmenu-glib/reference/Makefile.in @@ -43,12 +43,7 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/version.xml.in $(top_srcdir)/gtk-doc.local.make subdir = docs/libdbusmenu-glib/reference ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/gnome-doc-utils.m4 \ - $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/intltool.m4 \ - $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs diff --git a/docs/libdbusmenu-glib/reference/html/annotation-glossary.html b/docs/libdbusmenu-glib/reference/html/annotation-glossary.html new file mode 100644 index 0000000..46ca614 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/annotation-glossary.html @@ -0,0 +1,77 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>Annotation Glossary</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="up" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="prev" href="api-index-deprecated.html" title="Deprecated API Index"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> +<tr valign="middle"> +<td><a accesskey="p" href="api-index-deprecated.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td> </td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-glib Reference Manual</th> +<td> </td> +</tr> +<tr><td colspan="5" class="shortcuts"> +<a class="shortcut" href="#glsA">A</a> +  | + <a class="shortcut" href="#glsC">C</a> +  | + <a class="shortcut" href="#glsT">T</a> +  | + <a class="shortcut" href="#glsE">E</a> +  | + <a class="shortcut" href="#glsI">I</a> +  | + <a class="shortcut" href="#glsT">T</a> +  | + <a class="shortcut" href="#glsS">S</a> +</td></tr> +</table> +<div class="glossary"> +<div class="titlepage"><div><div><h2 class="title"> +<a name="annotation-glossary"></a>Annotation Glossary</h2></div></div></div> +<a name="glsA"></a><h3 class="title">A</h3> +<dt> +<a name="annotation-glossterm-allow-none"></a>allow-none</dt> +<dd><p>NULL is ok, both for passing and for returning.</p></dd> +<a name="glsC"></a><h3 class="title">C</h3> +<dt> +<a name="annotation-glossterm-closure"></a>closure</dt> +<dd><p>This parameter is a 'user_data', for callbacks; many bindings can pass NULL here.</p></dd> +<a name="glsT"></a><h3 class="title">T</h3> +<dt> +<a name="annotation-glossterm-transfer%20none"></a>transfer none</dt> +<dd><p>Don't free data after the code is done.</p></dd> +<a name="glsE"></a><h3 class="title">E</h3> +<dt> +<a name="annotation-glossterm-element-type"></a>element-type</dt> +<dd><p>Generics and defining elements of containers and arrays.</p></dd> +<a name="glsI"></a><h3 class="title">I</h3> +<dt> +<a name="annotation-glossterm-in"></a>in</dt> +<dd><p>Parameter for input. Default is <acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>.</p></dd> +<a name="glsT"></a><h3 class="title">T</h3> +<dt> +<a name="annotation-glossterm-transfer%20container"></a>transfer container</dt> +<dd><p>Free data container after the code is done.</p></dd> +<dt> +<a name="annotation-glossterm-transfer%20full"></a>transfer full</dt> +<dd><p>Free data after the code is done.</p></dd> +<a name="glsS"></a><h3 class="title">S</h3> +<dt> +<a name="annotation-glossterm-scope%20notified"></a>scope notified</dt> +<dd><p>The callback is valid until the GDestroyNotify argument is called.</p></dd> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-glib/reference/html/api-index-deprecated.html b/docs/libdbusmenu-glib/reference/html/api-index-deprecated.html new file mode 100644 index 0000000..1acd5ee --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/api-index-deprecated.html @@ -0,0 +1,31 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>Deprecated API Index</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="up" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="prev" href="api-index-full.html" title="API Index"> +<link rel="next" href="annotation-glossary.html" title="Annotation Glossary"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"> +<td><a accesskey="p" href="api-index-full.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td>Â </td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-glib Reference Manual</th> +<td><a accesskey="n" href="annotation-glossary.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr></table> +<div class="index"> +<div class="titlepage"><div><div><h2 class="title"> +<a name="api-index-deprecated"></a>Deprecated API Index</h2></div></div></div> +<a name="idx"></a> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-glib/reference/html/api-index-full.html b/docs/libdbusmenu-glib/reference/html/api-index-full.html new file mode 100644 index 0000000..00c4939 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/api-index-full.html @@ -0,0 +1,545 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>API Index</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="up" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="prev" href="object-tree.html" title="Object Hierarchy"> +<link rel="next" href="api-index-deprecated.html" title="Deprecated API Index"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> +<tr valign="middle"> +<td><a accesskey="p" href="object-tree.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td>Â </td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-glib Reference Manual</th> +<td><a accesskey="n" href="api-index-deprecated.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr> +<tr><td colspan="5" class="shortcuts"> +<a class="shortcut" href="#idxC">C</a> + Â |Â + <a class="shortcut" href="#idxM">M</a> + Â |Â + <a class="shortcut" href="#idxS">S</a> + Â |Â + <a class="shortcut" href="#idxT">T</a> +</td></tr> +</table> +<div class="index"> +<div class="titlepage"><div><div><h2 class="title"> +<a name="api-index-full"></a>API Index</h2></div></div></div> +<a name="idx"></a><a name="idxC"></a><h3 class="title">C</h3> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient">DbusmenuClient</a>, struct in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClientClass" title="struct DbusmenuClientClass">DbusmenuClientClass</a>, struct in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClientTypeHandler" title="DbusmenuClientTypeHandler ()">DbusmenuClientTypeHandler</a>, user_function in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-add-type-handler" title="dbusmenu_client_add_type_handler ()">dbusmenu_client_add_type_handler</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-add-type-handler-full" title="dbusmenu_client_add_type_handler_full ()">dbusmenu_client_add_type_handler_full</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-icon-paths" title="dbusmenu_client_get_icon_paths ()">dbusmenu_client_get_icon_paths</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-root" title="dbusmenu_client_get_root ()">dbusmenu_client_get_root</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-status" title="dbusmenu_client_get_status ()">dbusmenu_client_get_status</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-text-direction" title="dbusmenu_client_get_text_direction ()">dbusmenu_client_get_text_direction</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-new" title="dbusmenu_client_new ()">dbusmenu_client_new</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-DBUS-NAME:CAPS" title="DBUSMENU_CLIENT_PROP_DBUS_NAME">DBUSMENU_CLIENT_PROP_DBUS_NAME</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-DBUS-OBJECT:CAPS" title="DBUSMENU_CLIENT_PROP_DBUS_OBJECT">DBUSMENU_CLIENT_PROP_DBUS_OBJECT</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-STATUS:CAPS" title="DBUSMENU_CLIENT_PROP_STATUS">DBUSMENU_CLIENT_PROP_STATUS</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-TEXT-DIRECTION:CAPS" title="DBUSMENU_CLIENT_PROP_TEXT_DIRECTION">DBUSMENU_CLIENT_PROP_TEXT_DIRECTION</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-EVENT-RESULT:CAPS" title="DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT">DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-ICON-THEME-DIRS-CHANGED:CAPS" title="DBUSMENU_CLIENT_SIGNAL_ICON_THEME_DIRS_CHANGED">DBUSMENU_CLIENT_SIGNAL_ICON_THEME_DIRS_CHANGED</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-ITEM-ACTIVATE:CAPS" title="DBUSMENU_CLIENT_SIGNAL_ITEM_ACTIVATE">DBUSMENU_CLIENT_SIGNAL_ITEM_ACTIVATE</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-LAYOUT-UPDATED:CAPS" title="DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED">DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-NEW-MENUITEM:CAPS" title="DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM">DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-ROOT-CHANGED:CAPS" title="DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED">DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-TYPES-DEFAULT:CAPS" title="DBUSMENU_CLIENT_TYPES_DEFAULT">DBUSMENU_CLIENT_TYPES_DEFAULT</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-TYPES-IMAGE:CAPS" title="DBUSMENU_CLIENT_TYPES_IMAGE">DBUSMENU_CLIENT_TYPES_IMAGE</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-TYPES-SEPARATOR:CAPS" title="DBUSMENU_CLIENT_TYPES_SEPARATOR">DBUSMENU_CLIENT_TYPES_SEPARATOR</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient">DbusmenuClient</a> +</dt> +<dd></dd> +<a name="idxM"></a><h3 class="title">M</h3> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem">DbusmenuMenuitem</a>, struct in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitemClass" title="struct DbusmenuMenuitemClass">DbusmenuMenuitemClass</a>, struct in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxy" title="DbusmenuMenuitemProxy">DbusmenuMenuitemProxy</a>, struct in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html" title="DbusmenuMenuitemProxy">DbusmenuMenuitemProxy</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxyClass" title="struct DbusmenuMenuitemProxyClass">DbusmenuMenuitemProxyClass</a>, struct in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html" title="DbusmenuMenuitemProxy">DbusmenuMenuitemProxy</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-about-to-show-cb" title="dbusmenu_menuitem_about_to_show_cb ()">dbusmenu_menuitem_about_to_show_cb</a>, user_function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-buildvariant-slot-t" title="dbusmenu_menuitem_buildvariant_slot_t ()">dbusmenu_menuitem_buildvariant_slot_t</a>, user_function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-add-position" title="dbusmenu_menuitem_child_add_position ()">dbusmenu_menuitem_child_add_position</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-append" title="dbusmenu_menuitem_child_append ()">dbusmenu_menuitem_child_append</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-delete" title="dbusmenu_menuitem_child_delete ()">dbusmenu_menuitem_child_delete</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-CHILD-DISPLAY-SUBMENU:CAPS" title="DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU">DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-find" title="dbusmenu_menuitem_child_find ()">dbusmenu_menuitem_child_find</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-prepend" title="dbusmenu_menuitem_child_prepend ()">dbusmenu_menuitem_child_prepend</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-reorder" title="dbusmenu_menuitem_child_reorder ()">dbusmenu_menuitem_child_reorder</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-find-id" title="dbusmenu_menuitem_find_id ()">dbusmenu_menuitem_find_id</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-foreach" title="dbusmenu_menuitem_foreach ()">dbusmenu_menuitem_foreach</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-children" title="dbusmenu_menuitem_get_children ()">dbusmenu_menuitem_get_children</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-id" title="dbusmenu_menuitem_get_id ()">dbusmenu_menuitem_get_id</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-parent" title="dbusmenu_menuitem_get_parent ()">dbusmenu_menuitem_get_parent</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-position" title="dbusmenu_menuitem_get_position ()">dbusmenu_menuitem_get_position</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-position-realized" title="dbusmenu_menuitem_get_position_realized ()">dbusmenu_menuitem_get_position_realized</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-root" title="dbusmenu_menuitem_get_root ()">dbusmenu_menuitem_get_root</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-handle-event" title="dbusmenu_menuitem_handle_event ()">dbusmenu_menuitem_handle_event</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-ICON-NAME-BLANK:CAPS" title="DBUSMENU_MENUITEM_ICON_NAME_BLANK">DBUSMENU_MENUITEM_ICON_NAME_BLANK</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-new" title="dbusmenu_menuitem_new ()">dbusmenu_menuitem_new</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-new-with-id" title="dbusmenu_menuitem_new_with_id ()">dbusmenu_menuitem_new_with_id</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-properties-copy" title="dbusmenu_menuitem_properties_copy ()">dbusmenu_menuitem_properties_copy</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-properties-list" title="dbusmenu_menuitem_properties_list ()">dbusmenu_menuitem_properties_list</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-exist" title="dbusmenu_menuitem_property_exist ()">dbusmenu_menuitem_property_exist</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get" title="dbusmenu_menuitem_property_get ()">dbusmenu_menuitem_property_get</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get-bool" title="dbusmenu_menuitem_property_get_bool ()">dbusmenu_menuitem_property_get_bool</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get-int" title="dbusmenu_menuitem_property_get_int ()">dbusmenu_menuitem_property_get_int</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get-variant" title="dbusmenu_menuitem_property_get_variant ()">dbusmenu_menuitem_property_get_variant</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-remove" title="dbusmenu_menuitem_property_remove ()">dbusmenu_menuitem_property_remove</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set" title="dbusmenu_menuitem_property_set ()">dbusmenu_menuitem_property_set</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set-bool" title="dbusmenu_menuitem_property_set_bool ()">dbusmenu_menuitem_property_set_bool</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set-int" title="dbusmenu_menuitem_property_set_int ()">dbusmenu_menuitem_property_set_int</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set-variant" title="dbusmenu_menuitem_property_set_variant ()">dbusmenu_menuitem_property_set_variant</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-CHILD-DISPLAY:CAPS" title="DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY">DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-ENABLED:CAPS" title="DBUSMENU_MENUITEM_PROP_ENABLED">DBUSMENU_MENUITEM_PROP_ENABLED</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-ICON-DATA:CAPS" title="DBUSMENU_MENUITEM_PROP_ICON_DATA">DBUSMENU_MENUITEM_PROP_ICON_DATA</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-ICON-NAME:CAPS" title="DBUSMENU_MENUITEM_PROP_ICON_NAME">DBUSMENU_MENUITEM_PROP_ICON_NAME</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-LABEL:CAPS" title="DBUSMENU_MENUITEM_PROP_LABEL">DBUSMENU_MENUITEM_PROP_LABEL</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS" title="DBUSMENU_MENUITEM_PROP_SHORTCUT">DBUSMENU_MENUITEM_PROP_SHORTCUT</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS" title="DBUSMENU_MENUITEM_PROP_TOGGLE_STATE">DBUSMENU_MENUITEM_PROP_TOGGLE_STATE</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS" title="DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE">DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TYPE:CAPS" title="DBUSMENU_MENUITEM_PROP_TYPE">DBUSMENU_MENUITEM_PROP_TYPE</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-VISIBLE:CAPS" title="DBUSMENU_MENUITEM_PROP_VISIBLE">DBUSMENU_MENUITEM_PROP_VISIBLE</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#dbusmenu-menuitem-proxy-get-wrapped" title="dbusmenu_menuitem_proxy_get_wrapped ()">dbusmenu_menuitem_proxy_get_wrapped</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html" title="DbusmenuMenuitemProxy">DbusmenuMenuitemProxy</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#dbusmenu-menuitem-proxy-new" title="dbusmenu_menuitem_proxy_new ()">dbusmenu_menuitem_proxy_new</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html" title="DbusmenuMenuitemProxy">DbusmenuMenuitemProxy</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-send-about-to-show" title="dbusmenu_menuitem_send_about_to_show ()">dbusmenu_menuitem_send_about_to_show</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-set-parent" title="dbusmenu_menuitem_set_parent ()">dbusmenu_menuitem_set_parent</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-set-root" title="dbusmenu_menuitem_set_root ()">dbusmenu_menuitem_set_root</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-ALT:CAPS" title="DBUSMENU_MENUITEM_SHORTCUT_ALT">DBUSMENU_MENUITEM_SHORTCUT_ALT</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-CONTROL:CAPS" title="DBUSMENU_MENUITEM_SHORTCUT_CONTROL">DBUSMENU_MENUITEM_SHORTCUT_CONTROL</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-SHIFT:CAPS" title="DBUSMENU_MENUITEM_SHORTCUT_SHIFT">DBUSMENU_MENUITEM_SHORTCUT_SHIFT</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-SUPER:CAPS" title="DBUSMENU_MENUITEM_SHORTCUT_SUPER">DBUSMENU_MENUITEM_SHORTCUT_SUPER</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-show-to-user" title="dbusmenu_menuitem_show_to_user ()">dbusmenu_menuitem_show_to_user</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-ABOUT-TO-SHOW:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_ABOUT_TO_SHOW">DBUSMENU_MENUITEM_SIGNAL_ABOUT_TO_SHOW</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-CHILD-ADDED:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED">DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-CHILD-MOVED:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED">DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-CHILD-REMOVED:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED">DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-EVENT:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_EVENT">DBUSMENU_MENUITEM_SIGNAL_EVENT</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-ITEM-ACTIVATED:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED">DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-PROPERTY-CHANGED:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED">DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-REALIZED:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_REALIZED">DBUSMENU_MENUITEM_SIGNAL_REALIZED</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-REALIZED-ID:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_REALIZED_ID">DBUSMENU_MENUITEM_SIGNAL_REALIZED_ID</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-SHOW-TO-USER:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_SHOW_TO_USER">DBUSMENU_MENUITEM_SIGNAL_SHOW_TO_USER</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-take-children" title="dbusmenu_menuitem_take_children ()">dbusmenu_menuitem_take_children</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-CHECK:CAPS" title="DBUSMENU_MENUITEM_TOGGLE_CHECK">DBUSMENU_MENUITEM_TOGGLE_CHECK</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-RADIO:CAPS" title="DBUSMENU_MENUITEM_TOGGLE_RADIO">DBUSMENU_MENUITEM_TOGGLE_RADIO</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-CHECKED:CAPS" title="DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED">DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-UNCHECKED:CAPS" title="DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED">DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-UNKNOWN:CAPS" title="DBUSMENU_MENUITEM_TOGGLE_STATE_UNKNOWN">DBUSMENU_MENUITEM_TOGGLE_STATE_UNKNOWN</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-unparent" title="dbusmenu_menuitem_unparent ()">dbusmenu_menuitem_unparent</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem">DbusmenuMenuitem</a> +</dt> +<dd></dd> +<a name="idxS"></a><h3 class="title">S</h3> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer">DbusmenuServer</a>, struct in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServerClass" title="struct DbusmenuServerClass">DbusmenuServerClass</a>, struct in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-get-status" title="dbusmenu_server_get_status ()">dbusmenu_server_get_status</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-get-text-direction" title="dbusmenu_server_get_text_direction ()">dbusmenu_server_get_text_direction</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-new" title="dbusmenu_server_new ()">dbusmenu_server_new</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-DBUS-OBJECT:CAPS" title="DBUSMENU_SERVER_PROP_DBUS_OBJECT">DBUSMENU_SERVER_PROP_DBUS_OBJECT</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-ROOT-NODE:CAPS" title="DBUSMENU_SERVER_PROP_ROOT_NODE">DBUSMENU_SERVER_PROP_ROOT_NODE</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-STATUS:CAPS" title="DBUSMENU_SERVER_PROP_STATUS">DBUSMENU_SERVER_PROP_STATUS</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-TEXT-DIRECTION:CAPS" title="DBUSMENU_SERVER_PROP_TEXT_DIRECTION">DBUSMENU_SERVER_PROP_TEXT_DIRECTION</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-VERSION:CAPS" title="DBUSMENU_SERVER_PROP_VERSION">DBUSMENU_SERVER_PROP_VERSION</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-root" title="dbusmenu_server_set_root ()">dbusmenu_server_set_root</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-status" title="dbusmenu_server_set_status ()">dbusmenu_server_set_status</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-text-direction" title="dbusmenu_server_set_text_direction ()">dbusmenu_server_set_text_direction</a>, function in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-ID-PROP-UPDATE:CAPS" title="DBUSMENU_SERVER_SIGNAL_ID_PROP_UPDATE">DBUSMENU_SERVER_SIGNAL_ID_PROP_UPDATE</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-ID-UPDATE:CAPS" title="DBUSMENU_SERVER_SIGNAL_ID_UPDATE">DBUSMENU_SERVER_SIGNAL_ID_UPDATE</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-ITEM-ACTIVATION:CAPS" title="DBUSMENU_SERVER_SIGNAL_ITEM_ACTIVATION">DBUSMENU_SERVER_SIGNAL_ITEM_ACTIVATION</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATE:CAPS" title="DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATE">DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATE</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATED:CAPS" title="DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED">DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED</a>, macro in <a class="link" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer">DbusmenuServer</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-Types.html#DbusmenuStatus" title="enum DbusmenuStatus">DbusmenuStatus</a>, enum in <a class="link" href="libdbusmenu-glib-Types.html" title="Types">Types</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-Types.html#dbusmenu-status-get-nick" title="dbusmenu_status_get_nick ()">dbusmenu_status_get_nick</a>, function in <a class="link" href="libdbusmenu-glib-Types.html" title="Types">Types</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-Types.html#dbusmenu-status-get-type" title="dbusmenu_status_get_type ()">dbusmenu_status_get_type</a>, function in <a class="link" href="libdbusmenu-glib-Types.html" title="Types">Types</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-Types.html#dbusmenu-status-get-value-from-nick" title="dbusmenu_status_get_value_from_nick ()">dbusmenu_status_get_value_from_nick</a>, function in <a class="link" href="libdbusmenu-glib-Types.html" title="Types">Types</a> +</dt> +<dd></dd> +<a name="idxT"></a><h3 class="title">T</h3> +<dt> +<a class="link" href="libdbusmenu-glib-Types.html#DbusmenuTextDirection" title="enum DbusmenuTextDirection">DbusmenuTextDirection</a>, enum in <a class="link" href="libdbusmenu-glib-Types.html" title="Types">Types</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-Types.html#dbusmenu-text-direction-get-nick" title="dbusmenu_text_direction_get_nick ()">dbusmenu_text_direction_get_nick</a>, function in <a class="link" href="libdbusmenu-glib-Types.html" title="Types">Types</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-Types.html#dbusmenu-text-direction-get-type" title="dbusmenu_text_direction_get_type ()">dbusmenu_text_direction_get_type</a>, function in <a class="link" href="libdbusmenu-glib-Types.html" title="Types">Types</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-Types.html#dbusmenu-text-direction-get-value-from-nick" title="dbusmenu_text_direction_get_value_from_nick ()">dbusmenu_text_direction_get_value_from_nick</a>, function in <a class="link" href="libdbusmenu-glib-Types.html" title="Types">Types</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-Types.html#DBUSMENU-TYPE-STATUS:CAPS" title="DBUSMENU_TYPE_STATUS">DBUSMENU_TYPE_STATUS</a>, macro in <a class="link" href="libdbusmenu-glib-Types.html" title="Types">Types</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-glib-Types.html#DBUSMENU-TYPE-TEXT-DIRECTION:CAPS" title="DBUSMENU_TYPE_TEXT_DIRECTION">DBUSMENU_TYPE_TEXT_DIRECTION</a>, macro in <a class="link" href="libdbusmenu-glib-Types.html" title="Types">Types</a> +</dt> +<dd></dd> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-glib/reference/html/ch01.html b/docs/libdbusmenu-glib/reference/html/ch01.html new file mode 100644 index 0000000..5c2cc1d --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/ch01.html @@ -0,0 +1,50 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>API</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="up" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="prev" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="next" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"> +<td><a accesskey="p" href="index.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td> </td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-glib Reference Manual</th> +<td><a accesskey="n" href="libdbusmenu-glib-DbusmenuServer.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr></table> +<div class="chapter"> +<div class="titlepage"><div><div><h2 class="title"> +<a name="id325831"></a>API</h2></div></div></div> +<div class="toc"><dl> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-glib-DbusmenuServer.html">DbusmenuServer</a></span><span class="refpurpose"> — The server signals changed and + updates on a tree of <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> objecs.</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-glib-DbusmenuMenuitemProxy.html">DbusmenuMenuitemProxy</a></span><span class="refpurpose"> — A menuitem that proxies from another menuitem</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-glib-DbusmenuMenuitem.html">DbusmenuMenuitem</a></span><span class="refpurpose"> — A lowlevel represenation of a menuitem</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-glib-DbusmenuClient.html">DbusmenuClient</a></span><span class="refpurpose"> — The catcher of all the server traffic</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-glib-Types.html">Types</a></span><span class="refpurpose"> — Types that are used by both client and + server.</span> +</dt> +</dl></div> +<span style="color: red"><xi:include></xi:include></span><span style="color: red"><xi:include></xi:include></span><span style="color: red"><xi:include></xi:include></span> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-glib/reference/html/home.png b/docs/libdbusmenu-glib/reference/html/home.png Binary files differnew file mode 100644 index 0000000..fb60b55 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/home.png diff --git a/docs/libdbusmenu-glib/reference/html/index.html b/docs/libdbusmenu-glib/reference/html/index.html new file mode 100644 index 0000000..3e4a9ae --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/index.html @@ -0,0 +1,49 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>libdbusmenu-glib Reference Manual</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="next" href="ch01.html" title="API"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<div class="book"> +<div class="titlepage"> +<div><div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">libdbusmenu-glib Reference Manual</p></th></tr></table></div></div> +<hr> +</div> +<div class="toc"><dl> +<dt><span class="chapter"><a href="ch01.html">API</a></span></dt> +<dd><dl> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-glib-DbusmenuServer.html">DbusmenuServer</a></span><span class="refpurpose"> — The server signals changed and + updates on a tree of <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> objecs.</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-glib-DbusmenuMenuitemProxy.html">DbusmenuMenuitemProxy</a></span><span class="refpurpose"> — A menuitem that proxies from another menuitem</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-glib-DbusmenuMenuitem.html">DbusmenuMenuitem</a></span><span class="refpurpose"> — A lowlevel represenation of a menuitem</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-glib-DbusmenuClient.html">DbusmenuClient</a></span><span class="refpurpose"> — The catcher of all the server traffic</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-glib-Types.html">Types</a></span><span class="refpurpose"> — Types that are used by both client and + server.</span> +</dt> +</dl></dd> +<dt><span class="chapter"><a href="object-tree.html">Object Hierarchy</a></span></dt> +<dt><span class="index"><a href="api-index-full.html">API Index</a></span></dt> +<dt><span class="index"><a href="api-index-deprecated.html">Deprecated API Index</a></span></dt> +<dt><span class="glossary"><a href="annotation-glossary.html">Annotation Glossary</a></span></dt> +</dl></div> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-glib/reference/html/index.sgml b/docs/libdbusmenu-glib/reference/html/index.sgml new file mode 100644 index 0000000..8b4ca32 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/index.sgml @@ -0,0 +1,163 @@ +<ANCHOR id="libdbusmenu-glib-DbusmenuServer" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html"> +<ANCHOR id="libdbusmenu-glib-DbusmenuServer.stability-level" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#libdbusmenu-glib-DbusmenuServer.stability-level"> +<ANCHOR id="libdbusmenu-glib-DbusmenuServer.synopsis" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#libdbusmenu-glib-DbusmenuServer.synopsis"> +<ANCHOR id="libdbusmenu-glib-DbusmenuServer.description" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#libdbusmenu-glib-DbusmenuServer.description"> +<ANCHOR id="libdbusmenu-glib-DbusmenuServer.details" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#libdbusmenu-glib-DbusmenuServer.details"> +<ANCHOR id="DBUSMENU-SERVER-SIGNAL-ID-PROP-UPDATE:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-ID-PROP-UPDATE:CAPS"> +<ANCHOR id="DBUSMENU-SERVER-SIGNAL-ID-UPDATE:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-ID-UPDATE:CAPS"> +<ANCHOR id="DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATED:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATED:CAPS"> +<ANCHOR id="DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATE:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATE:CAPS"> +<ANCHOR id="DBUSMENU-SERVER-SIGNAL-ITEM-ACTIVATION:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-ITEM-ACTIVATION:CAPS"> +<ANCHOR id="DBUSMENU-SERVER-PROP-DBUS-OBJECT:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-DBUS-OBJECT:CAPS"> +<ANCHOR id="DBUSMENU-SERVER-PROP-ROOT-NODE:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-ROOT-NODE:CAPS"> +<ANCHOR id="DBUSMENU-SERVER-PROP-STATUS:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-STATUS:CAPS"> +<ANCHOR id="DBUSMENU-SERVER-PROP-TEXT-DIRECTION:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-TEXT-DIRECTION:CAPS"> +<ANCHOR id="DBUSMENU-SERVER-PROP-VERSION:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-VERSION:CAPS"> +<ANCHOR id="DbusmenuServer" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer"> +<ANCHOR id="DbusmenuServerClass" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DbusmenuServerClass"> +<ANCHOR id="dbusmenu-server-new" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-new"> +<ANCHOR id="dbusmenu-server-get-status" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-get-status"> +<ANCHOR id="dbusmenu-server-get-text-direction" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-get-text-direction"> +<ANCHOR id="dbusmenu-server-set-root" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-root"> +<ANCHOR id="dbusmenu-server-set-status" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-status"> +<ANCHOR id="dbusmenu-server-set-text-direction" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-text-direction"> +<ANCHOR id="libdbusmenu-glib-DbusmenuMenuitemProxy" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitemProxy.html"> +<ANCHOR id="libdbusmenu-glib-DbusmenuMenuitemProxy.stability-level" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitemProxy.html#libdbusmenu-glib-DbusmenuMenuitemProxy.stability-level"> +<ANCHOR id="libdbusmenu-glib-DbusmenuMenuitemProxy.synopsis" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitemProxy.html#libdbusmenu-glib-DbusmenuMenuitemProxy.synopsis"> +<ANCHOR id="libdbusmenu-glib-DbusmenuMenuitemProxy.description" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitemProxy.html#libdbusmenu-glib-DbusmenuMenuitemProxy.description"> +<ANCHOR id="libdbusmenu-glib-DbusmenuMenuitemProxy.details" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitemProxy.html#libdbusmenu-glib-DbusmenuMenuitemProxy.details"> +<ANCHOR id="DbusmenuMenuitemProxy" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxy"> +<ANCHOR id="DbusmenuMenuitemProxyClass" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxyClass"> +<ANCHOR id="dbusmenu-menuitem-proxy-new" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitemProxy.html#dbusmenu-menuitem-proxy-new"> +<ANCHOR id="dbusmenu-menuitem-proxy-get-wrapped" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitemProxy.html#dbusmenu-menuitem-proxy-get-wrapped"> +<ANCHOR id="libdbusmenu-glib-DbusmenuMenuitem" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html"> +<ANCHOR id="libdbusmenu-glib-DbusmenuMenuitem.stability-level" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#libdbusmenu-glib-DbusmenuMenuitem.stability-level"> +<ANCHOR id="libdbusmenu-glib-DbusmenuMenuitem.synopsis" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#libdbusmenu-glib-DbusmenuMenuitem.synopsis"> +<ANCHOR id="libdbusmenu-glib-DbusmenuMenuitem.description" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#libdbusmenu-glib-DbusmenuMenuitem.description"> +<ANCHOR id="libdbusmenu-glib-DbusmenuMenuitem.details" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#libdbusmenu-glib-DbusmenuMenuitem.details"> +<ANCHOR id="DBUSMENU-MENUITEM-SIGNAL-PROPERTY-CHANGED:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-PROPERTY-CHANGED:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-SIGNAL-ITEM-ACTIVATED:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-ITEM-ACTIVATED:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-SIGNAL-CHILD-ADDED:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-CHILD-ADDED:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-SIGNAL-CHILD-REMOVED:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-CHILD-REMOVED:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-SIGNAL-CHILD-MOVED:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-CHILD-MOVED:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-SIGNAL-EVENT:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-EVENT:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-SIGNAL-REALIZED:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-REALIZED:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-SIGNAL-REALIZED-ID:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-REALIZED-ID:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-SIGNAL-ABOUT-TO-SHOW:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-ABOUT-TO-SHOW:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-SIGNAL-SHOW-TO-USER:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-SHOW-TO-USER:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-PROP-TYPE:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TYPE:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-PROP-VISIBLE:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-VISIBLE:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-PROP-ENABLED:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-ENABLED:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-PROP-LABEL:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-LABEL:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-PROP-ICON-NAME:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-ICON-NAME:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-PROP-ICON-DATA:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-ICON-DATA:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-PROP-CHILD-DISPLAY:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-CHILD-DISPLAY:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-TOGGLE-CHECK:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-CHECK:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-TOGGLE-RADIO:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-RADIO:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-TOGGLE-STATE-UNCHECKED:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-UNCHECKED:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-TOGGLE-STATE-CHECKED:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-CHECKED:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-TOGGLE-STATE-UNKNOWN:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-UNKNOWN:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-ICON-NAME-BLANK:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-ICON-NAME-BLANK:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-CHILD-DISPLAY-SUBMENU:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-CHILD-DISPLAY-SUBMENU:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-SHORTCUT-ALT:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-ALT:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-SHORTCUT-CONTROL:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-CONTROL:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-SHORTCUT-SHIFT:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-SHIFT:CAPS"> +<ANCHOR id="DBUSMENU-MENUITEM-SHORTCUT-SUPER:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-SUPER:CAPS"> +<ANCHOR id="DbusmenuMenuitem" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"> +<ANCHOR id="dbusmenu-menuitem-about-to-show-cb" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-about-to-show-cb"> +<ANCHOR id="dbusmenu-menuitem-buildvariant-slot-t" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-buildvariant-slot-t"> +<ANCHOR id="DbusmenuMenuitemClass" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitemClass"> +<ANCHOR id="dbusmenu-menuitem-new" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-new"> +<ANCHOR id="dbusmenu-menuitem-new-with-id" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-new-with-id"> +<ANCHOR id="dbusmenu-menuitem-get-id" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-id"> +<ANCHOR id="dbusmenu-menuitem-get-children" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-children"> +<ANCHOR id="dbusmenu-menuitem-take-children" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-take-children"> +<ANCHOR id="dbusmenu-menuitem-get-position" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-position"> +<ANCHOR id="dbusmenu-menuitem-get-position-realized" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-position-realized"> +<ANCHOR id="dbusmenu-menuitem-child-append" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-append"> +<ANCHOR id="dbusmenu-menuitem-child-prepend" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-prepend"> +<ANCHOR id="dbusmenu-menuitem-child-delete" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-delete"> +<ANCHOR id="dbusmenu-menuitem-child-add-position" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-add-position"> +<ANCHOR id="dbusmenu-menuitem-child-reorder" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-reorder"> +<ANCHOR id="dbusmenu-menuitem-child-find" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-find"> +<ANCHOR id="dbusmenu-menuitem-find-id" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-find-id"> +<ANCHOR id="dbusmenu-menuitem-property-set" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set"> +<ANCHOR id="dbusmenu-menuitem-property-set-bool" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set-bool"> +<ANCHOR id="dbusmenu-menuitem-property-set-int" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set-int"> +<ANCHOR id="dbusmenu-menuitem-property-set-variant" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set-variant"> +<ANCHOR id="dbusmenu-menuitem-property-get" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get"> +<ANCHOR id="dbusmenu-menuitem-property-get-bool" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get-bool"> +<ANCHOR id="dbusmenu-menuitem-property-get-int" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get-int"> +<ANCHOR id="dbusmenu-menuitem-property-get-variant" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get-variant"> +<ANCHOR id="dbusmenu-menuitem-property-exist" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-exist"> +<ANCHOR id="dbusmenu-menuitem-properties-list" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-properties-list"> +<ANCHOR id="dbusmenu-menuitem-properties-copy" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-properties-copy"> +<ANCHOR id="dbusmenu-menuitem-property-remove" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-remove"> +<ANCHOR id="dbusmenu-menuitem-set-root" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-set-root"> +<ANCHOR id="dbusmenu-menuitem-get-root" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-root"> +<ANCHOR id="dbusmenu-menuitem-foreach" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-foreach"> +<ANCHOR id="dbusmenu-menuitem-handle-event" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-handle-event"> +<ANCHOR id="dbusmenu-menuitem-send-about-to-show" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-send-about-to-show"> +<ANCHOR id="dbusmenu-menuitem-show-to-user" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-show-to-user"> +<ANCHOR id="dbusmenu-menuitem-get-parent" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-parent"> +<ANCHOR id="dbusmenu-menuitem-set-parent" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-set-parent"> +<ANCHOR id="dbusmenu-menuitem-unparent" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-unparent"> +<ANCHOR id="libdbusmenu-glib-DbusmenuClient" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html"> +<ANCHOR id="libdbusmenu-glib-DbusmenuClient.stability-level" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#libdbusmenu-glib-DbusmenuClient.stability-level"> +<ANCHOR id="libdbusmenu-glib-DbusmenuClient.synopsis" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#libdbusmenu-glib-DbusmenuClient.synopsis"> +<ANCHOR id="libdbusmenu-glib-DbusmenuClient.description" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#libdbusmenu-glib-DbusmenuClient.description"> +<ANCHOR id="libdbusmenu-glib-DbusmenuClient.details" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#libdbusmenu-glib-DbusmenuClient.details"> +<ANCHOR id="DBUSMENU-CLIENT-SIGNAL-LAYOUT-UPDATED:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-LAYOUT-UPDATED:CAPS"> +<ANCHOR id="DBUSMENU-CLIENT-SIGNAL-ROOT-CHANGED:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-ROOT-CHANGED:CAPS"> +<ANCHOR id="DBUSMENU-CLIENT-SIGNAL-NEW-MENUITEM:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-NEW-MENUITEM:CAPS"> +<ANCHOR id="DBUSMENU-CLIENT-SIGNAL-EVENT-RESULT:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-EVENT-RESULT:CAPS"> +<ANCHOR id="DBUSMENU-CLIENT-SIGNAL-ITEM-ACTIVATE:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-ITEM-ACTIVATE:CAPS"> +<ANCHOR id="DBUSMENU-CLIENT-SIGNAL-ICON-THEME-DIRS-CHANGED:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-ICON-THEME-DIRS-CHANGED:CAPS"> +<ANCHOR id="DBUSMENU-CLIENT-PROP-DBUS-NAME:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-DBUS-NAME:CAPS"> +<ANCHOR id="DBUSMENU-CLIENT-PROP-DBUS-OBJECT:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-DBUS-OBJECT:CAPS"> +<ANCHOR id="DBUSMENU-CLIENT-PROP-STATUS:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-STATUS:CAPS"> +<ANCHOR id="DBUSMENU-CLIENT-PROP-TEXT-DIRECTION:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-TEXT-DIRECTION:CAPS"> +<ANCHOR id="DBUSMENU-CLIENT-TYPES-DEFAULT:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-TYPES-DEFAULT:CAPS"> +<ANCHOR id="DBUSMENU-CLIENT-TYPES-SEPARATOR:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-TYPES-SEPARATOR:CAPS"> +<ANCHOR id="DBUSMENU-CLIENT-TYPES-IMAGE:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-TYPES-IMAGE:CAPS"> +<ANCHOR id="DbusmenuClient" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient"> +<ANCHOR id="DbusmenuClientClass" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DbusmenuClientClass"> +<ANCHOR id="DbusmenuClientTypeHandler" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DbusmenuClientTypeHandler"> +<ANCHOR id="dbusmenu-client-new" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-new"> +<ANCHOR id="dbusmenu-client-get-icon-paths" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-icon-paths"> +<ANCHOR id="dbusmenu-client-get-root" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-root"> +<ANCHOR id="dbusmenu-client-get-status" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-status"> +<ANCHOR id="dbusmenu-client-get-text-direction" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-text-direction"> +<ANCHOR id="dbusmenu-client-add-type-handler" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-add-type-handler"> +<ANCHOR id="dbusmenu-client-add-type-handler-full" href="libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-add-type-handler-full"> +<ANCHOR id="libdbusmenu-glib-Types" href="libdbusmenu-glib/libdbusmenu-glib-Types.html"> +<ANCHOR id="libdbusmenu-glib-Types.stability-level" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#libdbusmenu-glib-Types.stability-level"> +<ANCHOR id="libdbusmenu-glib-Types.synopsis" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#libdbusmenu-glib-Types.synopsis"> +<ANCHOR id="libdbusmenu-glib-Types.description" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#libdbusmenu-glib-Types.description"> +<ANCHOR id="libdbusmenu-glib-Types.details" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#libdbusmenu-glib-Types.details"> +<ANCHOR id="DBUSMENU-TYPE-STATUS:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#DBUSMENU-TYPE-STATUS:CAPS"> +<ANCHOR id="DBUSMENU-TYPE-TEXT-DIRECTION:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#DBUSMENU-TYPE-TEXT-DIRECTION:CAPS"> +<ANCHOR id="DbusmenuStatus" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#DbusmenuStatus"> +<ANCHOR id="DBUSMENU-STATUS-NORMAL:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#DBUSMENU-STATUS-NORMAL:CAPS"> +<ANCHOR id="DBUSMENU-STATUS-NOTICE:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#DBUSMENU-STATUS-NOTICE:CAPS"> +<ANCHOR id="DbusmenuTextDirection" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#DbusmenuTextDirection"> +<ANCHOR id="DBUSMENU-TEXT-DIRECTION-NONE:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#DBUSMENU-TEXT-DIRECTION-NONE:CAPS"> +<ANCHOR id="DBUSMENU-TEXT-DIRECTION-LTR:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#DBUSMENU-TEXT-DIRECTION-LTR:CAPS"> +<ANCHOR id="DBUSMENU-TEXT-DIRECTION-RTL:CAPS" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#DBUSMENU-TEXT-DIRECTION-RTL:CAPS"> +<ANCHOR id="dbusmenu-status-get-nick" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#dbusmenu-status-get-nick"> +<ANCHOR id="dbusmenu-status-get-type" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#dbusmenu-status-get-type"> +<ANCHOR id="dbusmenu-status-get-value-from-nick" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#dbusmenu-status-get-value-from-nick"> +<ANCHOR id="dbusmenu-text-direction-get-nick" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#dbusmenu-text-direction-get-nick"> +<ANCHOR id="dbusmenu-text-direction-get-type" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#dbusmenu-text-direction-get-type"> +<ANCHOR id="dbusmenu-text-direction-get-value-from-nick" href="libdbusmenu-glib/libdbusmenu-glib-Types.html#dbusmenu-text-direction-get-value-from-nick"> +<ANCHOR id="annotation-glossterm-allow-none" href="libdbusmenu-glib/annotation-glossary.html#annotation-glossterm-allow-none"> +<ANCHOR id="annotation-glossterm-closure" href="libdbusmenu-glib/annotation-glossary.html#annotation-glossterm-closure"> +<ANCHOR id="annotation-glossterm-transfer none" href="libdbusmenu-glib/annotation-glossary.html#annotation-glossterm-transfer none"> +<ANCHOR id="annotation-glossterm-element-type" href="libdbusmenu-glib/annotation-glossary.html#annotation-glossterm-element-type"> +<ANCHOR id="annotation-glossterm-in" href="libdbusmenu-glib/annotation-glossary.html#annotation-glossterm-in"> +<ANCHOR id="annotation-glossterm-transfer container" href="libdbusmenu-glib/annotation-glossary.html#annotation-glossterm-transfer container"> +<ANCHOR id="annotation-glossterm-transfer full" href="libdbusmenu-glib/annotation-glossary.html#annotation-glossterm-transfer full"> +<ANCHOR id="annotation-glossterm-scope notified" href="libdbusmenu-glib/annotation-glossary.html#annotation-glossterm-scope notified"> diff --git a/docs/libdbusmenu-glib/reference/html/left.png b/docs/libdbusmenu-glib/reference/html/left.png Binary files differnew file mode 100644 index 0000000..48cab27 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/left.png diff --git a/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuClient.html b/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuClient.html new file mode 100644 index 0000000..169098f --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuClient.html @@ -0,0 +1,597 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>DbusmenuClient</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="up" href="ch01.html" title="API"> +<link rel="prev" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem"> +<link rel="next" href="libdbusmenu-glib-Types.html" title="Types"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> +<tr valign="middle"> +<td><a accesskey="p" href="libdbusmenu-glib-DbusmenuMenuitem.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-glib Reference Manual</th> +<td><a accesskey="n" href="libdbusmenu-glib-Types.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr> +<tr><td colspan="5" class="shortcuts"> +<a href="#libdbusmenu-glib-DbusmenuClient.synopsis" class="shortcut">Top</a> +  | + <a href="#libdbusmenu-glib-DbusmenuClient.description" class="shortcut">Description</a> +</td></tr> +</table> +<div class="refentry"> +<a name="libdbusmenu-glib-DbusmenuClient"></a><div class="titlepage"></div> +<div class="refnamediv"><table width="100%"><tr> +<td valign="top"> +<h2><span class="refentrytitle"><a name="libdbusmenu-glib-DbusmenuClient.top_of_page"></a>DbusmenuClient</span></h2> +<p>DbusmenuClient — The catcher of all the server traffic</p> +</td> +<td valign="top" align="right"></td> +</tr></table></div> +<div class="refsect1"> +<a name="libdbusmenu-glib-DbusmenuClient.stability-level"></a><h2>Stability Level</h2> +Unstable, unless otherwise indicated +</div> +<div class="refsynopsisdiv"> +<a name="libdbusmenu-glib-DbusmenuClient.synopsis"></a><h2>Synopsis</h2> +<pre class="synopsis"> +#include <libdbusmenu-glib/client.h> + +#define <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-LAYOUT-UPDATED:CAPS" title="DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED">DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-ROOT-CHANGED:CAPS" title="DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED">DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-NEW-MENUITEM:CAPS" title="DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM">DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-EVENT-RESULT:CAPS" title="DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT">DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-ITEM-ACTIVATE:CAPS" title="DBUSMENU_CLIENT_SIGNAL_ITEM_ACTIVATE">DBUSMENU_CLIENT_SIGNAL_ITEM_ACTIVATE</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-ICON-THEME-DIRS-CHANGED:CAPS" title="DBUSMENU_CLIENT_SIGNAL_ICON_THEME_DIRS_CHANGED">DBUSMENU_CLIENT_SIGNAL_ICON_THEME_DIRS_CHANGED</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-DBUS-NAME:CAPS" title="DBUSMENU_CLIENT_PROP_DBUS_NAME">DBUSMENU_CLIENT_PROP_DBUS_NAME</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-DBUS-OBJECT:CAPS" title="DBUSMENU_CLIENT_PROP_DBUS_OBJECT">DBUSMENU_CLIENT_PROP_DBUS_OBJECT</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-STATUS:CAPS" title="DBUSMENU_CLIENT_PROP_STATUS">DBUSMENU_CLIENT_PROP_STATUS</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-TEXT-DIRECTION:CAPS" title="DBUSMENU_CLIENT_PROP_TEXT_DIRECTION">DBUSMENU_CLIENT_PROP_TEXT_DIRECTION</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-TYPES-DEFAULT:CAPS" title="DBUSMENU_CLIENT_TYPES_DEFAULT">DBUSMENU_CLIENT_TYPES_DEFAULT</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-TYPES-SEPARATOR:CAPS" title="DBUSMENU_CLIENT_TYPES_SEPARATOR">DBUSMENU_CLIENT_TYPES_SEPARATOR</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-TYPES-IMAGE:CAPS" title="DBUSMENU_CLIENT_TYPES_IMAGE">DBUSMENU_CLIENT_TYPES_IMAGE</a> + <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient">DbusmenuClient</a>; +struct <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClientClass" title="struct DbusmenuClientClass">DbusmenuClientClass</a>; +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> (<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClientTypeHandler" title="DbusmenuClientTypeHandler ()">*DbusmenuClientTypeHandler</a>) (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *newitem</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *parent</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> *client</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>); +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="returnvalue">DbusmenuClient</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-new" title="dbusmenu_client_new ()">dbusmenu_client_new</a> (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object</code></em>); +const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Boxed-Types.html#GStrv"><span class="returnvalue">GStrv</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-icon-paths" title="dbusmenu_client_get_icon_paths ()">dbusmenu_client_get_icon_paths</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> *client</code></em>); +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-root" title="dbusmenu_client_get_root ()">dbusmenu_client_get_root</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> *client</code></em>); +<a class="link" href="libdbusmenu-glib-Types.html#DbusmenuStatus" title="enum DbusmenuStatus"><span class="returnvalue">DbusmenuStatus</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-status" title="dbusmenu_client_get_status ()">dbusmenu_client_get_status</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> *client</code></em>); +<a class="link" href="libdbusmenu-glib-Types.html#DbusmenuTextDirection" title="enum DbusmenuTextDirection"><span class="returnvalue">DbusmenuTextDirection</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-text-direction" title="dbusmenu_client_get_text_direction ()">dbusmenu_client_get_text_direction</a> + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> *client</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-add-type-handler" title="dbusmenu_client_add_type_handler ()">dbusmenu_client_add_type_handler</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> *client</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *type</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClientTypeHandler" title="DbusmenuClientTypeHandler ()"><span class="type">DbusmenuClientTypeHandler</span></a> newfunc</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-add-type-handler-full" title="dbusmenu_client_add_type_handler_full ()">dbusmenu_client_add_type_handler_full</a> + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> *client</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *type</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClientTypeHandler" title="DbusmenuClientTypeHandler ()"><span class="type">DbusmenuClientTypeHandler</span></a> newfunc</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy_func</code></em>); +</pre> +</div> +<div class="refsect1"> +<a name="libdbusmenu-glib-DbusmenuClient.description"></a><h2>Description</h2> +<p> +The client exists as a mirror to the server. For most folks + all they will do with a client is set it up to connect to + a server and then watch as the menu items on their side + of the bus change. This is all they should need to know about + the client, that it magically makes their menuitems dance. +</p> +<p> + It does this by setting up signal watchers and adjusting + the menuitems appropriately. Most users should watch the + menu items and the signal <span class="type">"layout-changed"</span> for + larger events so that they can be optimized. It is possible + with that signal that even the root node would change. If + that doesn't happen the normal signals on the individual + nodes should be enough for most users. +</p> +</div> +<div class="refsect1"> +<a name="libdbusmenu-glib-DbusmenuClient.details"></a><h2>Details</h2> +<div class="refsect2"> +<a name="DBUSMENU-CLIENT-SIGNAL-LAYOUT-UPDATED:CAPS"></a><h3>DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED</h3> +<pre class="programlisting">#define DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED "layout-updated" +</pre> +<p> +String to attach to signal <span class="type">"layout-updated"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-CLIENT-SIGNAL-ROOT-CHANGED:CAPS"></a><h3>DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED</h3> +<pre class="programlisting">#define DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED "root-changed" +</pre> +<p> +String to attach to signal <span class="type">"root-changed"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-CLIENT-SIGNAL-NEW-MENUITEM:CAPS"></a><h3>DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM</h3> +<pre class="programlisting">#define DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM "new-menuitem" +</pre> +<p> +String to attach to signal <span class="type">"new-menuitem"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-CLIENT-SIGNAL-EVENT-RESULT:CAPS"></a><h3>DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT</h3> +<pre class="programlisting">#define DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT "event-result" +</pre> +<p> +String to attach to signal <span class="type">"event-result"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-CLIENT-SIGNAL-ITEM-ACTIVATE:CAPS"></a><h3>DBUSMENU_CLIENT_SIGNAL_ITEM_ACTIVATE</h3> +<pre class="programlisting">#define DBUSMENU_CLIENT_SIGNAL_ITEM_ACTIVATE "item-activate" +</pre> +<p> +String to attach to signal <span class="type">"item-activate"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-CLIENT-SIGNAL-ICON-THEME-DIRS-CHANGED:CAPS"></a><h3>DBUSMENU_CLIENT_SIGNAL_ICON_THEME_DIRS_CHANGED</h3> +<pre class="programlisting">#define DBUSMENU_CLIENT_SIGNAL_ICON_THEME_DIRS_CHANGED "icon-theme-dirs-changed" +</pre> +<p> +String to attach to signal <span class="type">"icon-theme-dirs-changed"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-CLIENT-PROP-DBUS-NAME:CAPS"></a><h3>DBUSMENU_CLIENT_PROP_DBUS_NAME</h3> +<pre class="programlisting">#define DBUSMENU_CLIENT_PROP_DBUS_NAME "dbus-name" +</pre> +<p> +String to access property <span class="type">"dbus-name"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-CLIENT-PROP-DBUS-OBJECT:CAPS"></a><h3>DBUSMENU_CLIENT_PROP_DBUS_OBJECT</h3> +<pre class="programlisting">#define DBUSMENU_CLIENT_PROP_DBUS_OBJECT "dbus-object" +</pre> +<p> +String to access property <span class="type">"dbus-object"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-CLIENT-PROP-STATUS:CAPS"></a><h3>DBUSMENU_CLIENT_PROP_STATUS</h3> +<pre class="programlisting">#define DBUSMENU_CLIENT_PROP_STATUS "status" +</pre> +<p> +String to access property <span class="type">"status"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-CLIENT-PROP-TEXT-DIRECTION:CAPS"></a><h3>DBUSMENU_CLIENT_PROP_TEXT_DIRECTION</h3> +<pre class="programlisting">#define DBUSMENU_CLIENT_PROP_TEXT_DIRECTION "text-direction" +</pre> +<p> +String to access property <span class="type">"text-direction"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-CLIENT-TYPES-DEFAULT:CAPS"></a><h3>DBUSMENU_CLIENT_TYPES_DEFAULT</h3> +<pre class="programlisting">#define DBUSMENU_CLIENT_TYPES_DEFAULT "standard" +</pre> +<p> +Used to set the 'type' property on a menu item to create +a standard menu item. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-CLIENT-TYPES-SEPARATOR:CAPS"></a><h3>DBUSMENU_CLIENT_TYPES_SEPARATOR</h3> +<pre class="programlisting">#define DBUSMENU_CLIENT_TYPES_SEPARATOR "separator" +</pre> +<p> +Used to set the 'type' property on a menu item to create +a separator menu item. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-CLIENT-TYPES-IMAGE:CAPS"></a><h3>DBUSMENU_CLIENT_TYPES_IMAGE</h3> +<pre class="programlisting">#define DBUSMENU_CLIENT_TYPES_IMAGE "standard" +</pre> +<p> +Used to set the 'type' property on a menu item to create +an image menu item. Deprecated as standard menu items now +support images as well. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DbusmenuClient"></a><h3>DbusmenuClient</h3> +<pre class="programlisting">typedef struct _DbusmenuClient DbusmenuClient;</pre> +<p> +The client for a <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> creating a shared + object set of <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> objects. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DbusmenuClientClass"></a><h3>struct DbusmenuClientClass</h3> +<pre class="programlisting">struct DbusmenuClientClass { + GObjectClass parent_class; + + void (*layout_updated)(void); + void (*root_changed) (DbusmenuMenuitem * newroot); + void (*new_menuitem) (DbusmenuMenuitem * newitem); + void (*item_activate) (DbusmenuMenuitem * item, guint timestamp); + void (*event_result) (DbusmenuMenuitem * item, gchar * event, GVariant * data, guint timestamp, GError * error); + void (*icon_theme_dirs) (DbusmenuMenuitem * item, gpointer theme_dirs, GError * error); + + /*< Private >*/ + void (*reserved1) (void); + void (*reserved2) (void); + void (*reserved3) (void); + void (*reserved4) (void); + void (*reserved5) (void); +}; +</pre> +<p> +A simple class that takes all of the information from a + <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> over DBus and makes the same set of + <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> objects appear on the other side. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a> <em class="structfield"><code><a name="DbusmenuClientClass.parent-class"></a>parent_class</code></em>;</span></p></td> +<td><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a></td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuClientClass.layout-updated"></a>layout_updated</code></em> ()</span></p></td> +<td>Slot for <span class="type">"layout-updated"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuClientClass.root-changed"></a>root_changed</code></em> ()</span></p></td> +<td>Slot for <span class="type">"root-changed"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuClientClass.new-menuitem"></a>new_menuitem</code></em> ()</span></p></td> +<td>Slot for <span class="type">"new-menuitem"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuClientClass.item-activate"></a>item_activate</code></em> ()</span></p></td> +<td>Slot for <span class="type">"item-activate"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuClientClass.event-result"></a>event_result</code></em> ()</span></p></td> +<td>Slot for <span class="type">"event-error"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuClientClass.icon-theme-dirs"></a>icon_theme_dirs</code></em> ()</span></p></td> +<td>Slot for <span class="type">"icon-theme-dirs-changed"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuClientClass.reserved1"></a>reserved1</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuClientClass.reserved2"></a>reserved2</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuClientClass.reserved3"></a>reserved3</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuClientClass.reserved4"></a>reserved4</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuClientClass.reserved5"></a>reserved5</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="DbusmenuClientTypeHandler"></a><h3>DbusmenuClientTypeHandler ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> (*DbusmenuClientTypeHandler) (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *newitem</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *parent</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> *client</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> +<p> +The type handler is called when a dbusmenu item is created + with a matching type as setup in <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-add-type-handler" title="dbusmenu_client_add_type_handler ()"><span class="type">dbusmenu_client_add_type_handler</span></a> +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>newitem</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> that was created</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>parent</code></em> :</span></p></td> +<td>The parent of <em class="parameter"><code>newitem</code></em> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> if none</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td> +<td>A pointer to the <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> +</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td> +<td>The data you gave us</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><span class="type">TRUE</span></a> if the type has been handled. <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><span class="type">FALSE</span></a> if this +function was somehow unable to handle it.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-client-new"></a><h3>dbusmenu_client_new ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="returnvalue">DbusmenuClient</span></a> * dbusmenu_client_new (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object</code></em>);</pre> +<p> +This function creates a new client that connects to a specific +server on DBus. That server is at a specific location sharing +a known object. The interface is assumed by the code to be +the DBus menu interface. The newly created client will start +sending out events as it syncs up with the server. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td> +<td>The DBus name for the server to connect to</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td> +<td>The object on the server to monitor</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A brand new <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-client-get-icon-paths"></a><h3>dbusmenu_client_get_icon_paths ()</h3> +<pre class="programlisting">const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Boxed-Types.html#GStrv"><span class="returnvalue">GStrv</span></a> dbusmenu_client_get_icon_paths (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> *client</code></em>);</pre> +<p> +Gets the stored and exported icon paths from the client. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> to get the icon paths from</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A NULL-terminated list of icon paths with +memory managed by the client. Duplicate if you want +to keep them. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-client-get-root"></a><h3>dbusmenu_client_get_root ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * dbusmenu_client_get_root (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> *client</code></em>);</pre> +<p> +Grabs the root node for the specified client <em class="parameter"><code>client</code></em>. This +function may block. It will block if there is currently a +call to update the layout, it will block on that layout +updated and then return the newly updated layout. Chances +are that this update is in the queue for the mainloop as +it would have been requested some time ago, but in theory +it could block longer. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> to get the root node from</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> representing the root of +menu on the server. If there is no server or there is +an error receiving its layout it'll return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-client-get-status"></a><h3>dbusmenu_client_get_status ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-Types.html#DbusmenuStatus" title="enum DbusmenuStatus"><span class="returnvalue">DbusmenuStatus</span></a> dbusmenu_client_get_status (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> *client</code></em>);</pre> +<p> +Gets the recommended current status that the server + is exporting for the menus. In situtations where the + value is <a class="link" href="libdbusmenu-glib-Types.html#DBUSMENU-STATUS-NOTICE:CAPS"><span class="type">DBUSMENU_STATUS_NOTICE</span></a> it is recommended that + the client show the menus to the user an a more noticible + way. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td> +<td> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> to check the status on</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>Status being exported.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-client-get-text-direction"></a><h3>dbusmenu_client_get_text_direction ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-Types.html#DbusmenuTextDirection" title="enum DbusmenuTextDirection"><span class="returnvalue">DbusmenuTextDirection</span></a> dbusmenu_client_get_text_direction + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> *client</code></em>);</pre> +<p> +Gets the text direction that the server is exporting. If + the server is not exporting a direction then the value + <a class="link" href="libdbusmenu-glib-Types.html#DBUSMENU-TEXT-DIRECTION-NONE:CAPS"><span class="type">DBUSMENU_TEXT_DIRECTION_NONE</span></a> will be returned. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td> +<td> +<a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> to check the text direction on</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>Text direction being exported.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-client-add-type-handler"></a><h3>dbusmenu_client_add_type_handler ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_client_add_type_handler (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> *client</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *type</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClientTypeHandler" title="DbusmenuClientTypeHandler ()"><span class="type">DbusmenuClientTypeHandler</span></a> newfunc</code></em>);</pre> +<p> +This function connects into the type handling of the <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a>. +Every new menuitem that comes in immediately gets asked for it's +properties. When we get those properties we check the 'type' +property and look to see if it matches a handler that is known +by the client. If so, the <em class="parameter"><code>newfunc</code></em> function is executed on that +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a>. If not, then the DbusmenuClient::new-menuitem +signal is sent. +</p> +<p> +In the future the known types will be sent to the server so that it +can make choices about the menu item types availble. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td> +<td>Client where we're getting types coming in</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td> +<td>A text string that will be matched with the 'type' +property on incoming menu items</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>newfunc</code></em> :</span></p></td> +<td>The function that will be executed with those new +items when they come in. <span class="annotation">[<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span> +</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>If registering the new type was successful.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-client-add-type-handler-full"></a><h3>dbusmenu_client_add_type_handler_full ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_client_add_type_handler_full + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> *client</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *type</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClientTypeHandler" title="DbusmenuClientTypeHandler ()"><span class="type">DbusmenuClientTypeHandler</span></a> newfunc</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy_func</code></em>);</pre> +<p> +This function connects into the type handling of the <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a>. +Every new menuitem that comes in immediately gets asked for it's +properties. When we get those properties we check the 'type' +property and look to see if it matches a handler that is known +by the client. If so, the <em class="parameter"><code>newfunc</code></em> function is executed on that +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a>. If not, then the DbusmenuClient::new-menuitem +signal is sent. +</p> +<p> +In the future the known types will be sent to the server so that it +can make choices about the menu item types availble. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td> +<td>Client where we're getting types coming in</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td> +<td>A text string that will be matched with the 'type' +property on incoming menu items</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>newfunc</code></em> :</span></p></td> +<td>The function that will be executed with those new +items when they come in. <span class="annotation">[<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span> +</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td> +<td>Data passed to <em class="parameter"><code>newfunc</code></em> when it is called</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>destroy_func</code></em> :</span></p></td> +<td>A function that is called when the type handler is +removed (usually on client destruction) which will free +the resources in <em class="parameter"><code>user_data</code></em>.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>If registering the new type was successful.</td> +</tr> +</tbody> +</table></div> +</div> +</div> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuMenuitem.html b/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuMenuitem.html new file mode 100644 index 0000000..9621955 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuMenuitem.html @@ -0,0 +1,1696 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>DbusmenuMenuitem</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="up" href="ch01.html" title="API"> +<link rel="prev" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html" title="DbusmenuMenuitemProxy"> +<link rel="next" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> +<tr valign="middle"> +<td><a accesskey="p" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-glib Reference Manual</th> +<td><a accesskey="n" href="libdbusmenu-glib-DbusmenuClient.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr> +<tr><td colspan="5" class="shortcuts"> +<a href="#libdbusmenu-glib-DbusmenuMenuitem.synopsis" class="shortcut">Top</a> +  | + <a href="#libdbusmenu-glib-DbusmenuMenuitem.description" class="shortcut">Description</a> +</td></tr> +</table> +<div class="refentry"> +<a name="libdbusmenu-glib-DbusmenuMenuitem"></a><div class="titlepage"></div> +<div class="refnamediv"><table width="100%"><tr> +<td valign="top"> +<h2><span class="refentrytitle"><a name="libdbusmenu-glib-DbusmenuMenuitem.top_of_page"></a>DbusmenuMenuitem</span></h2> +<p>DbusmenuMenuitem — A lowlevel represenation of a menuitem</p> +</td> +<td valign="top" align="right"></td> +</tr></table></div> +<div class="refsect1"> +<a name="libdbusmenu-glib-DbusmenuMenuitem.stability-level"></a><h2>Stability Level</h2> +Unstable, unless otherwise indicated +</div> +<div class="refsynopsisdiv"> +<a name="libdbusmenu-glib-DbusmenuMenuitem.synopsis"></a><h2>Synopsis</h2> +<pre class="synopsis"> +#include <libdbusmenu-glib/menuitem.h> + +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-PROPERTY-CHANGED:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED">DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-ITEM-ACTIVATED:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED">DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-CHILD-ADDED:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED">DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-CHILD-REMOVED:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED">DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-CHILD-MOVED:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED">DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-EVENT:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_EVENT">DBUSMENU_MENUITEM_SIGNAL_EVENT</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-REALIZED:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_REALIZED">DBUSMENU_MENUITEM_SIGNAL_REALIZED</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-REALIZED-ID:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_REALIZED_ID">DBUSMENU_MENUITEM_SIGNAL_REALIZED_ID</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-ABOUT-TO-SHOW:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_ABOUT_TO_SHOW">DBUSMENU_MENUITEM_SIGNAL_ABOUT_TO_SHOW</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-SHOW-TO-USER:CAPS" title="DBUSMENU_MENUITEM_SIGNAL_SHOW_TO_USER">DBUSMENU_MENUITEM_SIGNAL_SHOW_TO_USER</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TYPE:CAPS" title="DBUSMENU_MENUITEM_PROP_TYPE">DBUSMENU_MENUITEM_PROP_TYPE</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-VISIBLE:CAPS" title="DBUSMENU_MENUITEM_PROP_VISIBLE">DBUSMENU_MENUITEM_PROP_VISIBLE</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-ENABLED:CAPS" title="DBUSMENU_MENUITEM_PROP_ENABLED">DBUSMENU_MENUITEM_PROP_ENABLED</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-LABEL:CAPS" title="DBUSMENU_MENUITEM_PROP_LABEL">DBUSMENU_MENUITEM_PROP_LABEL</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-ICON-NAME:CAPS" title="DBUSMENU_MENUITEM_PROP_ICON_NAME">DBUSMENU_MENUITEM_PROP_ICON_NAME</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-ICON-DATA:CAPS" title="DBUSMENU_MENUITEM_PROP_ICON_DATA">DBUSMENU_MENUITEM_PROP_ICON_DATA</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS" title="DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE">DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS" title="DBUSMENU_MENUITEM_PROP_TOGGLE_STATE">DBUSMENU_MENUITEM_PROP_TOGGLE_STATE</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-CHILD-DISPLAY:CAPS" title="DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY">DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS" title="DBUSMENU_MENUITEM_PROP_SHORTCUT">DBUSMENU_MENUITEM_PROP_SHORTCUT</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-CHECK:CAPS" title="DBUSMENU_MENUITEM_TOGGLE_CHECK">DBUSMENU_MENUITEM_TOGGLE_CHECK</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-RADIO:CAPS" title="DBUSMENU_MENUITEM_TOGGLE_RADIO">DBUSMENU_MENUITEM_TOGGLE_RADIO</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-UNCHECKED:CAPS" title="DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED">DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-CHECKED:CAPS" title="DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED">DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-UNKNOWN:CAPS" title="DBUSMENU_MENUITEM_TOGGLE_STATE_UNKNOWN">DBUSMENU_MENUITEM_TOGGLE_STATE_UNKNOWN</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-ICON-NAME-BLANK:CAPS" title="DBUSMENU_MENUITEM_ICON_NAME_BLANK">DBUSMENU_MENUITEM_ICON_NAME_BLANK</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-CHILD-DISPLAY-SUBMENU:CAPS" title="DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU">DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-ALT:CAPS" title="DBUSMENU_MENUITEM_SHORTCUT_ALT">DBUSMENU_MENUITEM_SHORTCUT_ALT</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-CONTROL:CAPS" title="DBUSMENU_MENUITEM_SHORTCUT_CONTROL">DBUSMENU_MENUITEM_SHORTCUT_CONTROL</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-SHIFT:CAPS" title="DBUSMENU_MENUITEM_SHORTCUT_SHIFT">DBUSMENU_MENUITEM_SHORTCUT_SHIFT</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-SUPER:CAPS" title="DBUSMENU_MENUITEM_SHORTCUT_SUPER">DBUSMENU_MENUITEM_SHORTCUT_SUPER</a> +struct <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem">DbusmenuMenuitem</a>; +<span class="returnvalue">void</span> (<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-about-to-show-cb" title="dbusmenu_menuitem_about_to_show_cb ()">*dbusmenu_menuitem_about_to_show_cb</a>) + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> * (<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-buildvariant-slot-t" title="dbusmenu_menuitem_buildvariant_slot_t ()">*dbusmenu_menuitem_buildvariant_slot_t</a>) + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **properties</code></em>); +struct <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitemClass" title="struct DbusmenuMenuitemClass">DbusmenuMenuitemClass</a>; +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-new" title="dbusmenu_menuitem_new ()">dbusmenu_menuitem_new</a> (<em class="parameter"><code><span class="type">void</span></code></em>); +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-new-with-id" title="dbusmenu_menuitem_new_with_id ()">dbusmenu_menuitem_new_with_id</a> (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> id</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-id" title="dbusmenu_menuitem_get_id ()">dbusmenu_menuitem_get_id</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-children" title="dbusmenu_menuitem_get_children ()">dbusmenu_menuitem_get_children</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-take-children" title="dbusmenu_menuitem_take_children ()">dbusmenu_menuitem_take_children</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-position" title="dbusmenu_menuitem_get_position ()">dbusmenu_menuitem_get_position</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *parent</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-position-realized" title="dbusmenu_menuitem_get_position_realized ()">dbusmenu_menuitem_get_position_realized</a> + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *parent</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-append" title="dbusmenu_menuitem_child_append ()">dbusmenu_menuitem_child_append</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *child</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-prepend" title="dbusmenu_menuitem_child_prepend ()">dbusmenu_menuitem_child_prepend</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *child</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-delete" title="dbusmenu_menuitem_child_delete ()">dbusmenu_menuitem_child_delete</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *child</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-add-position" title="dbusmenu_menuitem_child_add_position ()">dbusmenu_menuitem_child_add_position</a> + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *child</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> position</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-reorder" title="dbusmenu_menuitem_child_reorder ()">dbusmenu_menuitem_child_reorder</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *child</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> position</code></em>); +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-find" title="dbusmenu_menuitem_child_find ()">dbusmenu_menuitem_child_find</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> id</code></em>); +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-find-id" title="dbusmenu_menuitem_find_id ()">dbusmenu_menuitem_find_id</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> id</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set" title="dbusmenu_menuitem_property_set ()">dbusmenu_menuitem_property_set</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set-bool" title="dbusmenu_menuitem_property_set_bool ()">dbusmenu_menuitem_property_set_bool</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> value</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set-int" title="dbusmenu_menuitem_property_set_int ()">dbusmenu_menuitem_property_set_int</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set-variant" title="dbusmenu_menuitem_property_set_variant ()">dbusmenu_menuitem_property_set_variant</a> + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *value</code></em>); +const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get" title="dbusmenu_menuitem_property_get ()">dbusmenu_menuitem_property_get</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get-bool" title="dbusmenu_menuitem_property_get_bool ()">dbusmenu_menuitem_property_get_bool</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get-int" title="dbusmenu_menuitem_property_get_int ()">dbusmenu_menuitem_property_get_int</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get-variant" title="dbusmenu_menuitem_property_get_variant ()">dbusmenu_menuitem_property_get_variant</a> + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-exist" title="dbusmenu_menuitem_property_exist ()">dbusmenu_menuitem_property_exist</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-properties-list" title="dbusmenu_menuitem_properties_list ()">dbusmenu_menuitem_properties_list</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-properties-copy" title="dbusmenu_menuitem_properties_copy ()">dbusmenu_menuitem_properties_copy</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>); +<span class="returnvalue">void</span> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-remove" title="dbusmenu_menuitem_property_remove ()">dbusmenu_menuitem_property_remove</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>); +<span class="returnvalue">void</span> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-set-root" title="dbusmenu_menuitem_set_root ()">dbusmenu_menuitem_set_root</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> root</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-root" title="dbusmenu_menuitem_get_root ()">dbusmenu_menuitem_get_root</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>); +<span class="returnvalue">void</span> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-foreach" title="dbusmenu_menuitem_foreach ()">dbusmenu_menuitem_foreach</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><span class="type">void</span> (*func) (DbusmenuMenuitem * mi, gpointer data)</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>); +<span class="returnvalue">void</span> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-handle-event" title="dbusmenu_menuitem_handle_event ()">dbusmenu_menuitem_handle_event</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *variant</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> timestamp</code></em>); +<span class="returnvalue">void</span> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-send-about-to-show" title="dbusmenu_menuitem_send_about_to_show ()">dbusmenu_menuitem_send_about_to_show</a> + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><span class="type">void</span> (*cb) (DbusmenuMenuitem * mi, gpointer user_data)</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> cb_data</code></em>); +<span class="returnvalue">void</span> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-show-to-user" title="dbusmenu_menuitem_show_to_user ()">dbusmenu_menuitem_show_to_user</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> timestamp</code></em>); +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-parent" title="dbusmenu_menuitem_get_parent ()">dbusmenu_menuitem_get_parent</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-set-parent" title="dbusmenu_menuitem_set_parent ()">dbusmenu_menuitem_set_parent</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *parent</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-unparent" title="dbusmenu_menuitem_unparent ()">dbusmenu_menuitem_unparent</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>); +</pre> +</div> +<div class="refsect1"> +<a name="libdbusmenu-glib-DbusmenuMenuitem.description"></a><h2>Description</h2> +<p> +A <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> is the lowest level of represenation of a +single item in a menu. It gets created on the server side +and copied over to the client side where it gets rendered. As +the server starts to change it, and grow it, and do all kinds +of fun stuff that information is transfered over DBus and the +client updates it's understanding of the object model. +</p> +<p> +Most people using either the client or the server should be +able to deal mostly with <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> objects. These +are simple, but then they can be attached to more complex +objects and handled appropriately. +</p> +</div> +<div class="refsect1"> +<a name="libdbusmenu-glib-DbusmenuMenuitem.details"></a><h2>Details</h2> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-SIGNAL-PROPERTY-CHANGED:CAPS"></a><h3>DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED "property-changed" +</pre> +<p> +String to attach to signal <span class="type">"property-changed"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-SIGNAL-ITEM-ACTIVATED:CAPS"></a><h3>DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED "item-activated" +</pre> +<p> +String to attach to signal <span class="type">"item-activated"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-SIGNAL-CHILD-ADDED:CAPS"></a><h3>DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED "child-added" +</pre> +<p> +String to attach to signal <span class="type">"child-added"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-SIGNAL-CHILD-REMOVED:CAPS"></a><h3>DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED "child-removed" +</pre> +<p> +String to attach to signal <span class="type">"child-removed"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-SIGNAL-CHILD-MOVED:CAPS"></a><h3>DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED "child-moved" +</pre> +<p> +String to attach to signal <span class="type">"child-moved"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-SIGNAL-EVENT:CAPS"></a><h3>DBUSMENU_MENUITEM_SIGNAL_EVENT</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_SIGNAL_EVENT "event" +</pre> +<p> +String to attach to signal <span class="type">"event"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-SIGNAL-REALIZED:CAPS"></a><h3>DBUSMENU_MENUITEM_SIGNAL_REALIZED</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_SIGNAL_REALIZED "realized" +</pre> +<p> +String to attach to signal <span class="type">"realized"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-SIGNAL-REALIZED-ID:CAPS"></a><h3>DBUSMENU_MENUITEM_SIGNAL_REALIZED_ID</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_SIGNAL_REALIZED_ID (g_signal_lookup(DBUSMENU_MENUITEM_SIGNAL_REALIZED, DBUSMENU_TYPE_MENUITEM)) +</pre> +<p> +ID to attach to signal <span class="type">"realized"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-SIGNAL-ABOUT-TO-SHOW:CAPS"></a><h3>DBUSMENU_MENUITEM_SIGNAL_ABOUT_TO_SHOW</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_SIGNAL_ABOUT_TO_SHOW "about-to-show" +</pre> +<p> +String to attach to signal <span class="type">"about-to-show"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-SIGNAL-SHOW-TO-USER:CAPS"></a><h3>DBUSMENU_MENUITEM_SIGNAL_SHOW_TO_USER</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_SIGNAL_SHOW_TO_USER "show-to-user" +</pre> +<p> +String to attach to signal <span class="type">"show-to-user"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-PROP-TYPE:CAPS"></a><h3>DBUSMENU_MENUITEM_PROP_TYPE</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_PROP_TYPE "type" +</pre> +<p> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> property used to represent what type of menuitem +this object represents. Type: <a href="http://library.gnome.org/devel/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-STRING:CAPS"><span class="type">G_VARIANT_TYPE_STRING</span></a>. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-PROP-VISIBLE:CAPS"></a><h3>DBUSMENU_MENUITEM_PROP_VISIBLE</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_PROP_VISIBLE "visible" +</pre> +<p> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> property used to represent whether the menuitem +should be shown or not. Type: <a href="http://library.gnome.org/devel/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-BOOLEAN:CAPS"><span class="type">G_VARIANT_TYPE_BOOLEAN</span></a>. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-PROP-ENABLED:CAPS"></a><h3>DBUSMENU_MENUITEM_PROP_ENABLED</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_PROP_ENABLED "enabled" +</pre> +<p> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> property used to represent whether the menuitem +is clickable or not. Type: <a href="http://library.gnome.org/devel/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-BOOLEAN:CAPS"><span class="type">G_VARIANT_TYPE_BOOLEAN</span></a>. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-PROP-LABEL:CAPS"></a><h3>DBUSMENU_MENUITEM_PROP_LABEL</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_PROP_LABEL "label" +</pre> +<p> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> property used for the text on the menu item. +Type: <a href="http://library.gnome.org/devel/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-STRING:CAPS"><span class="type">G_VARIANT_TYPE_STRING</span></a> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-PROP-ICON-NAME:CAPS"></a><h3>DBUSMENU_MENUITEM_PROP_ICON_NAME</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_PROP_ICON_NAME "icon-name" +</pre> +<p> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> property that is the name of the icon under the +Freedesktop.org icon naming spec. Type: <a href="http://library.gnome.org/devel/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-STRING:CAPS"><span class="type">G_VARIANT_TYPE_STRING</span></a> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-PROP-ICON-DATA:CAPS"></a><h3>DBUSMENU_MENUITEM_PROP_ICON_DATA</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_PROP_ICON_DATA "icon-data" +</pre> +<p> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> property that is the raw data of a custom icon +used in the application. Type: <a href="http://library.gnome.org/devel/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-VARIANT:CAPS"><span class="type">G_VARIANT_TYPE_VARIANT</span></a> +</p> +<p> +It is recommended that this is not set directly but instead the +libdbusmenu-gtk library is used with the function <a href="/usr/share/gtk-doc/html/libdbusmenu-gtk/libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-image"><code class="function">dbusmenu_menuitem_property_set_image()</code></a> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS"></a><h3>DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE "toggle-type" +</pre> +<p> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> property that says what type of toggle entry should +be shown in the menu. Should be either <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-CHECK:CAPS" title="DBUSMENU_MENUITEM_TOGGLE_CHECK"><span class="type">DBUSMENU_MENUITEM_TOGGLE_CHECK</span></a> +or <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-RADIO:CAPS" title="DBUSMENU_MENUITEM_TOGGLE_RADIO"><span class="type">DBUSMENU_MENUITEM_TOGGLE_RADIO</span></a>. Type: <a href="http://library.gnome.org/devel/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-STRING:CAPS"><span class="type">G_VARIANT_TYPE_STRING</span></a> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS"></a><h3>DBUSMENU_MENUITEM_PROP_TOGGLE_STATE</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_PROP_TOGGLE_STATE "toggle-state" +</pre> +<p> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> property that says what state a toggle entry should +be shown as the menu. Should be either <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-UNCHECKED:CAPS" title="DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED"><span class="type">DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED</span></a> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-CHECKED:CAPS" title="DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED"><span class="type">DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED</span></a> or <span class="type">DBUSMENU_MENUITEM_TOGGLE_STATUE_UNKNOWN</span>. +Type: <a href="http://library.gnome.org/devel/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-INT32:CAPS"><span class="type">G_VARIANT_TYPE_INT32</span></a> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-PROP-CHILD-DISPLAY:CAPS"></a><h3>DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY "children-display" +</pre> +<p> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> property that tells how the children of this menuitem +should be displayed. Most likely this will be unset or of the value +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-CHILD-DISPLAY-SUBMENU:CAPS" title="DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU"><span class="type">DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU</span></a>. Type: <a href="http://library.gnome.org/devel/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-STRING:CAPS"><span class="type">G_VARIANT_TYPE_STRING</span></a> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS"></a><h3>DBUSMENU_MENUITEM_PROP_SHORTCUT</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_PROP_SHORTCUT "shortcut" +</pre> +<p> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> property that is the entries that represent a shortcut +to activate the menuitem. It is an array of arrays of strings. +Type: <a href="http://library.gnome.org/devel/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-ARRAY:CAPS"><span class="type">G_VARIANT_TYPE_ARRAY</span></a> +</p> +<p> +It is recommended that this is not set directly but instead the +libdbusmenu-gtk library is used with the function <a href="/usr/share/gtk-doc/html/libdbusmenu-gtk/libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut"><code class="function">dbusmenu_menuitem_property_set_shortcut()</code></a> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-TOGGLE-CHECK:CAPS"></a><h3>DBUSMENU_MENUITEM_TOGGLE_CHECK</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_TOGGLE_CHECK "checkmark" +</pre> +<p> +Used to set <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS" title="DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE"><span class="type">DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE</span></a> to be a standard +check mark item. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-TOGGLE-RADIO:CAPS"></a><h3>DBUSMENU_MENUITEM_TOGGLE_RADIO</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_TOGGLE_RADIO "radio" +</pre> +<p> +Used to set <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS" title="DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE"><span class="type">DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE</span></a> to be a standard +radio item. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-TOGGLE-STATE-UNCHECKED:CAPS"></a><h3>DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED 0 +</pre> +<p> +Used to set <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS" title="DBUSMENU_MENUITEM_PROP_TOGGLE_STATE"><span class="type">DBUSMENU_MENUITEM_PROP_TOGGLE_STATE</span></a> so that the menu's +toggle item is empty. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-TOGGLE-STATE-CHECKED:CAPS"></a><h3>DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED 1 +</pre> +<p> +Used to set <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS" title="DBUSMENU_MENUITEM_PROP_TOGGLE_STATE"><span class="type">DBUSMENU_MENUITEM_PROP_TOGGLE_STATE</span></a> so that the menu's +toggle item is filled. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-TOGGLE-STATE-UNKNOWN:CAPS"></a><h3>DBUSMENU_MENUITEM_TOGGLE_STATE_UNKNOWN</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_TOGGLE_STATE_UNKNOWN -1 +</pre> +<p> +Used to set <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS" title="DBUSMENU_MENUITEM_PROP_TOGGLE_STATE"><span class="type">DBUSMENU_MENUITEM_PROP_TOGGLE_STATE</span></a> so that the menu's +toggle item is undecided. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-ICON-NAME-BLANK:CAPS"></a><h3>DBUSMENU_MENUITEM_ICON_NAME_BLANK</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_ICON_NAME_BLANK "blank-icon" +</pre> +<p> +Used to set <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS" title="DBUSMENU_MENUITEM_PROP_TOGGLE_STATE"><span class="type">DBUSMENU_MENUITEM_PROP_TOGGLE_STATE</span></a> so that the menu's +toggle item is undecided. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-CHILD-DISPLAY-SUBMENU:CAPS"></a><h3>DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU "submenu" +</pre> +<p> +Used in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-CHILD-DISPLAY:CAPS" title="DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY"><span class="type">DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY</span></a> to have the +subitems displayed as a submenu. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-SHORTCUT-ALT:CAPS"></a><h3>DBUSMENU_MENUITEM_SHORTCUT_ALT</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_SHORTCUT_ALT "Alt" +</pre> +<p> +Used in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS" title="DBUSMENU_MENUITEM_PROP_SHORTCUT"><span class="type">DBUSMENU_MENUITEM_PROP_SHORTCUT</span></a> to represent the +alternate key. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-SHORTCUT-CONTROL:CAPS"></a><h3>DBUSMENU_MENUITEM_SHORTCUT_CONTROL</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_SHORTCUT_CONTROL "Control" +</pre> +<p> +Used in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS" title="DBUSMENU_MENUITEM_PROP_SHORTCUT"><span class="type">DBUSMENU_MENUITEM_PROP_SHORTCUT</span></a> to represent the +control key. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-SHORTCUT-SHIFT:CAPS"></a><h3>DBUSMENU_MENUITEM_SHORTCUT_SHIFT</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_SHORTCUT_SHIFT "Shift" +</pre> +<p> +Used in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS" title="DBUSMENU_MENUITEM_PROP_SHORTCUT"><span class="type">DBUSMENU_MENUITEM_PROP_SHORTCUT</span></a> to represent the +shift key. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-MENUITEM-SHORTCUT-SUPER:CAPS"></a><h3>DBUSMENU_MENUITEM_SHORTCUT_SUPER</h3> +<pre class="programlisting">#define DBUSMENU_MENUITEM_SHORTCUT_SUPER "Super" +</pre> +<p> +Used in <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS" title="DBUSMENU_MENUITEM_PROP_SHORTCUT"><span class="type">DBUSMENU_MENUITEM_PROP_SHORTCUT</span></a> to represent the +super key. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DbusmenuMenuitem"></a><h3>struct DbusmenuMenuitem</h3> +<pre class="programlisting">struct DbusmenuMenuitem { + GObject parent; + + /*< Private >*/ + DbusmenuMenuitemPrivate * priv; +}; +</pre> +<p> +This is the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> based object that represents a menu +item. It gets created the same on both the client and +the server side and libdbusmenu-glib does the work of making +this object model appear on both sides of DBus. Simple +really, though through updates and people coming on and off +the bus it can lead to lots of fun complex scenarios. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> <em class="structfield"><code><a name="DbusmenuMenuitem.parent"></a>parent</code></em>;</span></p></td> +<td>Parent object</td> +</tr> +<tr> +<td><p><span class="term"><span class="type">DbusmenuMenuitemPrivate</span> *<em class="structfield"><code><a name="DbusmenuMenuitem.priv"></a>priv</code></em>;</span></p></td> +<td>Private data</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-about-to-show-cb"></a><h3>dbusmenu_menuitem_about_to_show_cb ()</h3> +<pre class="programlisting"><span class="returnvalue">void</span> (*dbusmenu_menuitem_about_to_show_cb) + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> +<p> +Callback prototype for a callback that is called when the +menu should be shown. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>Menu item that should be shown</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td> +<td>Extra user data sent with the function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-buildvariant-slot-t"></a><h3>dbusmenu_menuitem_buildvariant_slot_t ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> * (*dbusmenu_menuitem_buildvariant_slot_t) + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **properties</code></em>);</pre> +<p> +This is the function that is called to represent this menu item +as a variant. Should call it's own children. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>Menu item that should be built from. <span class="annotation">[<acronym title="Parameter for input. Default is transfer none."><span class="acronym">in</span></acronym>]</span> +</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>properties</code></em> :</span></p></td> +<td>A list of properties that should be the only ones in the resulting variant structure. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> +</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A variant representing this item and it's children. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="DbusmenuMenuitemClass"></a><h3>struct DbusmenuMenuitemClass</h3> +<pre class="programlisting">struct DbusmenuMenuitemClass { + GObjectClass parent_class; + + /* Signals */ + void (*property_changed) (gchar * property, GVariant * value); + void (*item_activated) (guint timestamp); + void (*child_added) (DbusmenuMenuitem * child, guint position); + void (*child_removed) (DbusmenuMenuitem * child); + void (*child_moved) (DbusmenuMenuitem * child, guint newpos, guint oldpos); + void (*realized) (void); + + /* Virtual functions */ + dbusmenu_menuitem_buildvariant_slot_t buildvariant; + void (*handle_event) (DbusmenuMenuitem * mi, const gchar * name, GVariant * variant, guint timestamp); + void (*send_about_to_show) (DbusmenuMenuitem * mi, void (*cb) (DbusmenuMenuitem * mi, gpointer user_data), gpointer cb_data); + + void (*show_to_user) (DbusmenuMenuitem * mi, guint timestamp, gpointer cb_data); + gboolean (*about_to_show) (void); + + void (*event) (const gchar * name, GVariant * value, guint timestamp); + + /*< Private >*/ + void (*reserved1) (void); + void (*reserved2) (void); + void (*reserved3) (void); + void (*reserved4) (void); + void (*reserved5) (void); +}; +</pre> +<p> +Functions and signals that every menuitem should know something +about. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a> <em class="structfield"><code><a name="DbusmenuMenuitemClass.parent-class"></a>parent_class</code></em>;</span></p></td> +<td>Functions and signals from our parent</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemClass.property-changed"></a>property_changed</code></em> ()</span></p></td> +<td>Slot for <span class="type">"property-changed"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemClass.item-activated"></a>item_activated</code></em> ()</span></p></td> +<td>Slot for <span class="type">"item-activated"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemClass.child-added"></a>child_added</code></em> ()</span></p></td> +<td>Slot for <span class="type">"child-added"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemClass.child-removed"></a>child_removed</code></em> ()</span></p></td> +<td>Slot for <span class="type">"child-removed"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemClass.child-moved"></a>child_moved</code></em> ()</span></p></td> +<td>Slot for <span class="type">"child-moved"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemClass.realized"></a>realized</code></em> ()</span></p></td> +<td>Slot for <span class="type">"realized"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-buildvariant-slot-t" title="dbusmenu_menuitem_buildvariant_slot_t ()"><span class="type">dbusmenu_menuitem_buildvariant_slot_t</span></a> <em class="structfield"><code><a name="DbusmenuMenuitemClass.buildvariant"></a>buildvariant</code></em>;</span></p></td> +<td>Virtual function that appends the strings required to represent this menu item in the menu variant.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemClass.handle-event"></a>handle_event</code></em> ()</span></p></td> +<td>This function is to override how events are handled by subclasses. Look at <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-handle-event" title="dbusmenu_menuitem_handle_event ()"><span class="type">dbusmenu_menuitem_handle_event</span></a> for lots of good information.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemClass.show-to-user"></a>show_to_user</code></em> ()</span></p></td> +<td>Slot for <span class="type">"show-to-user"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemClass.about-to-show"></a>about_to_show</code></em> ()</span></p></td> +<td>Slot for <span class="type">"about-to-show"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemClass.event"></a>event</code></em> ()</span></p></td> +<td>Slot for <span class="type">"event"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemClass.reserved1"></a>reserved1</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemClass.reserved2"></a>reserved2</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemClass.reserved3"></a>reserved3</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemClass.reserved4"></a>reserved4</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemClass.reserved5"></a>reserved5</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-new"></a><h3>dbusmenu_menuitem_new ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * dbusmenu_menuitem_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> +<p> +Create a new <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> with all default values. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody><tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A newly allocated <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a>.</td> +</tr></tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-new-with-id"></a><h3>dbusmenu_menuitem_new_with_id ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * dbusmenu_menuitem_new_with_id (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> id</code></em>);</pre> +<p> +This creates a blank <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> with a specific ID. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>id</code></em> :</span></p></td> +<td>ID to use for this menuitem</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A newly allocated <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a>.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-get-id"></a><h3>dbusmenu_menuitem_get_id ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> dbusmenu_menuitem_get_id (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>);</pre> +<p> +Gets the unique ID for <em class="parameter"><code>mi</code></em>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to query.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>The ID of the <em class="parameter"><code>mi</code></em>.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-get-children"></a><h3>dbusmenu_menuitem_get_children ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> * dbusmenu_menuitem_get_children (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>);</pre> +<p> +Returns simply the list of children that this menu item +has. The list is valid until another child related function +is called, where it might be changed. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to query.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of pointers to <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> objects. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-take-children"></a><h3>dbusmenu_menuitem_take_children ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> * dbusmenu_menuitem_take_children (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>);</pre> +<p> +While the name sounds devious that's exactly what this function +does. It takes the list of children from the <em class="parameter"><code>mi</code></em> and clears the +internal list. The calling function is now in charge of the ref's +on the children it has taken. A lot of responsibility involved +in taking children. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <span class="type">DbusmenMenuitem</span> to take the children from.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of pointers to <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> objects. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Dbusmenu.Menuitem]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-get-position"></a><h3>dbusmenu_menuitem_get_position ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> dbusmenu_menuitem_get_position (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *parent</code></em>);</pre> +<p> +This function returns the position of the menu item <em class="parameter"><code>mi</code></em> +in the children of <em class="parameter"><code>parent</code></em>. It will return zero if the +menu item can't be found. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to find the position of</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>parent</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> who's children contain <em class="parameter"><code>mi</code></em> +</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>The position of <em class="parameter"><code>mi</code></em> in the children of <em class="parameter"><code>parent</code></em>.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-get-position-realized"></a><h3>dbusmenu_menuitem_get_position_realized ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> dbusmenu_menuitem_get_position_realized + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *parent</code></em>);</pre> +<p> +This function is very similar to <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-position" title="dbusmenu_menuitem_get_position ()"><span class="type">dbusmenu_menuitem_get_position</span></a> +except that it only counts in the children that have been realized. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to find the position of</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>parent</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> who's children contain <em class="parameter"><code>mi</code></em> +</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>The position of <em class="parameter"><code>mi</code></em> in the realized children of <em class="parameter"><code>parent</code></em>.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-child-append"></a><h3>dbusmenu_menuitem_child_append ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_child_append (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *child</code></em>);</pre> +<p> +This function adds <em class="parameter"><code>child</code></em> to the list of children on <em class="parameter"><code>mi</code></em> at +the end of that list. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> which will become a new parent</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>child</code></em> :</span></p></td> +<td>The <span class="type">DbusmenMenuitem</span> that will be a child</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>Whether the child has been added successfully.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-child-prepend"></a><h3>dbusmenu_menuitem_child_prepend ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_child_prepend (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *child</code></em>);</pre> +<p> +This function adds <em class="parameter"><code>child</code></em> to the list of children on <em class="parameter"><code>mi</code></em> at +the beginning of that list. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> which will become a new parent</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>child</code></em> :</span></p></td> +<td>The <span class="type">DbusmenMenuitem</span> that will be a child</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>Whether the child has been added successfully.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-child-delete"></a><h3>dbusmenu_menuitem_child_delete ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_child_delete (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *child</code></em>);</pre> +<p> +This function removes <em class="parameter"><code>child</code></em> from the children list of <em class="parameter"><code>mi</code></em>. It does +not call <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-unref"><span class="type">g_object_unref</span></a> on <em class="parameter"><code>child</code></em>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> which has <em class="parameter"><code>child</code></em> as a child</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>child</code></em> :</span></p></td> +<td>The child <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> that you want to no longer +be a child of <em class="parameter"><code>mi</code></em>.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>If we were able to delete <em class="parameter"><code>child</code></em>.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-child-add-position"></a><h3>dbusmenu_menuitem_child_add_position ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_child_add_position + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *child</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> position</code></em>);</pre> +<p> +Puts <em class="parameter"><code>child</code></em> in the list of children for <em class="parameter"><code>mi</code></em> at the location +specified in <em class="parameter"><code>position</code></em>. If there is not enough entires available +then <em class="parameter"><code>child</code></em> will be placed at the end of the list. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> that we're adding the child <em class="parameter"><code>child</code></em> to.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>child</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to make a child of <em class="parameter"><code>mi</code></em>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>position</code></em> :</span></p></td> +<td>Where in <em class="parameter"><code>mi</code></em> object's list of chidren <em class="parameter"><code>child</code></em> should be placed.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>Whether <em class="parameter"><code>child</code></em> was added successfully.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-child-reorder"></a><h3>dbusmenu_menuitem_child_reorder ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_child_reorder (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *child</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> position</code></em>);</pre> +<p> +This function moves a child on the list of children. It is +for a child that is already in the list, but simply needs a +new location. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> that has children needing realignment</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>child</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> that is a child needing to be moved</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>position</code></em> :</span></p></td> +<td>The position in the list to place it in</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>Whether the move was successful.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-child-find"></a><h3>dbusmenu_menuitem_child_find ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * dbusmenu_menuitem_child_find (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> id</code></em>);</pre> +<p> +Search the children of <em class="parameter"><code>mi</code></em> to find one with the ID of <em class="parameter"><code>id</code></em>. +If it doesn't exist then we return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> who's children to look on</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>id</code></em> :</span></p></td> +<td>The ID of the child that we're looking for.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>The menu item with the ID <em class="parameter"><code>id</code></em> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> if it +can't be found. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-find-id"></a><h3>dbusmenu_menuitem_find_id ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * dbusmenu_menuitem_find_id (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> id</code></em>);</pre> +<p> +This function searchs the whole tree of children that +are attached to <em class="parameter"><code>mi</code></em>. This could be quite a few nodes, all +the way down the tree. It is a depth first search. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> at the top of the tree to search</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>id</code></em> :</span></p></td> +<td>ID of the <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to search for</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> with the ID of <em class="parameter"><code>id</code></em> +or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> if there isn't such a menu item in the tree +represented by <em class="parameter"><code>mi</code></em>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-set"></a><h3>dbusmenu_menuitem_property_set ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_property_set (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre> +<p> +Takes the pair of <em class="parameter"><code>property</code></em> and <em class="parameter"><code>value</code></em> and places them as a +property on <em class="parameter"><code>mi</code></em>. If a property already exists by that name, +then the value is set to the new value. If not, the property +is added. If the value is changed or the property was previously +unset then the signal <span class="type">"prop-changed"</span> will be +emitted by this function. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to set the property on.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>property</code></em> :</span></p></td> +<td>Name of the property to set.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> +<td>The value of the property.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A boolean representing if the property value was set.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-set-bool"></a><h3>dbusmenu_menuitem_property_set_bool ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_property_set_bool (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> value</code></em>);</pre> +<p> +Takes a boolean <em class="parameter"><code>value</code></em> and sets it on <em class="parameter"><code>property</code></em> as a +property on <em class="parameter"><code>mi</code></em>. If a property already exists by that name, +then the value is set to the new value. If not, the property +is added. If the value is changed or the property was previously +unset then the signal <span class="type">"prop-changed"</span> will be +emitted by this function. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to set the property on.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>property</code></em> :</span></p></td> +<td>Name of the property to set.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> +<td>The value of the property.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A boolean representing if the property value was set.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-set-int"></a><h3>dbusmenu_menuitem_property_set_int ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_property_set_int (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value</code></em>);</pre> +<p> +Takes a boolean <em class="parameter"><code>value</code></em> and sets it on <em class="parameter"><code>property</code></em> as a +property on <em class="parameter"><code>mi</code></em>. If a property already exists by that name, +then the value is set to the new value. If not, the property +is added. If the value is changed or the property was previously +unset then the signal <span class="type">"prop-changed"</span> will be +emitted by this function. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to set the property on.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>property</code></em> :</span></p></td> +<td>Name of the property to set.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> +<td>The value of the property.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A boolean representing if the property value was set.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-set-variant"></a><h3>dbusmenu_menuitem_property_set_variant ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_property_set_variant + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *value</code></em>);</pre> +<p> +Takes the pair of <em class="parameter"><code>property</code></em> and <em class="parameter"><code>value</code></em> and places them as a +property on <em class="parameter"><code>mi</code></em>. If a property already exists by that name, +then the value is set to the new value. If not, the property +is added. If the value is changed or the property was previously +unset then the signal <span class="type">"prop-changed"</span> will be +emitted by this function. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to set the property on.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>property</code></em> :</span></p></td> +<td>Name of the property to set.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> +<td>The value of the property.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A boolean representing if the property value was set.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-get"></a><h3>dbusmenu_menuitem_property_get ()</h3> +<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * dbusmenu_menuitem_property_get (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>);</pre> +<p> +Look up a property on <em class="parameter"><code>mi</code></em> and return the value of it if +it exits. <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> will be returned if the property doesn't +exist. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to look for the property on.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>property</code></em> :</span></p></td> +<td>The property to grab.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A string with the value of the property +that shouldn't be free'd. Or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> if the property +is not set or is not a string. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-get-bool"></a><h3>dbusmenu_menuitem_property_get_bool ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_property_get_bool (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>);</pre> +<p> +Look up a property on <em class="parameter"><code>mi</code></em> and return the value of it if +it exits. Returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><span class="type">FALSE</span></a> if the property doesn't exist. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to look for the property on.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>property</code></em> :</span></p></td> +<td>The property to grab.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>The value of the property or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><span class="type">FALSE</span></a>.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-get-int"></a><h3>dbusmenu_menuitem_property_get_int ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> dbusmenu_menuitem_property_get_int (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>);</pre> +<p> +Look up a property on <em class="parameter"><code>mi</code></em> and return the value of it if +it exits. Returns zero if the property doesn't exist. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to look for the property on.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>property</code></em> :</span></p></td> +<td>The property to grab.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>The value of the property or zero.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-get-variant"></a><h3>dbusmenu_menuitem_property_get_variant ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> * dbusmenu_menuitem_property_get_variant + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>);</pre> +<p> +Look up a property on <em class="parameter"><code>mi</code></em> and return the value of it if +it exits. <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> will be returned if the property doesn't +exist. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to look for the property on.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>property</code></em> :</span></p></td> +<td>The property to grab.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A GVariant for the property. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-exist"></a><h3>dbusmenu_menuitem_property_exist ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_property_exist (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>);</pre> +<p> +Checkes to see if a particular property exists on <em class="parameter"><code>mi</code></em> and +returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><span class="type">TRUE</span></a> if so. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to look for the property on.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>property</code></em> :</span></p></td> +<td>The property to look for.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A boolean checking to see if the property is available</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-properties-list"></a><h3>dbusmenu_menuitem_properties_list ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> * dbusmenu_menuitem_properties_list (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>);</pre> +<p> +This functiong gets a list of the names of all the properties +that are set on this menu item. This data on the list is owned +by the menuitem but the list is not and should be freed using +<a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#g-list-free"><code class="function">g_list_free()</code></a> when the calling function is done with it. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to list the properties on</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A list of strings or NULL if there are +none. <span class="annotation">[<acronym title="Free data container after the code is done."><span class="acronym">transfer container</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-properties-copy"></a><h3>dbusmenu_menuitem_properties_copy ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> * dbusmenu_menuitem_properties_copy (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>);</pre> +<p> +This function takes the properties of a <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> +and puts them into a <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> that is referenced by the +key of a string and has the value of a string. The hash +table may not have any entries if there aren't any or there +is an error in processing. It is the caller's responsibility +to destroy the created <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> that we're interested in the properties of</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A brand new <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> that contains all of +theroperties that are on this <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> <em class="parameter"><code>mi</code></em>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-remove"></a><h3>dbusmenu_menuitem_property_remove ()</h3> +<pre class="programlisting"><span class="returnvalue">void</span> dbusmenu_menuitem_property_remove (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>);</pre> +<p> +Removes a property from the menuitem. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to remove the property on.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>property</code></em> :</span></p></td> +<td>The property to look for.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-set-root"></a><h3>dbusmenu_menuitem_set_root ()</h3> +<pre class="programlisting"><span class="returnvalue">void</span> dbusmenu_menuitem_set_root (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> root</code></em>);</pre> +<p> +This function sets the internal value of whether this is a +root node or not. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to set whether it's root</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>root</code></em> :</span></p></td> +<td>Whether <em class="parameter"><code>mi</code></em> is a root node or not</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-get-root"></a><h3>dbusmenu_menuitem_get_root ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_get_root (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>);</pre> +<p> +This function returns the internal value of whether this is a +root node or not. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to see whether it's root</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><span class="type">TRUE</span></a> if this is a root node</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-foreach"></a><h3>dbusmenu_menuitem_foreach ()</h3> +<pre class="programlisting"><span class="returnvalue">void</span> dbusmenu_menuitem_foreach (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><span class="type">void</span> (*func) (DbusmenuMenuitem * mi, gpointer data)</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre> +<p> +This calls the function <em class="parameter"><code>func</code></em> on this menu item and all +of the children of this item. And their children. And +their children. And... you get the point. It will get +called on the whole tree. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <span class="type">DbusmenItem</span> to start from</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>func</code></em> :</span></p></td> +<td>Function to call on every node in the tree</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td> +<td>User data to pass to the function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-handle-event"></a><h3>dbusmenu_menuitem_handle_event ()</h3> +<pre class="programlisting"><span class="returnvalue">void</span> dbusmenu_menuitem_handle_event (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *variant</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> timestamp</code></em>);</pre> +<p> +This function is called to create an event. It is likely +to be overrided by subclasses. The default menu item +will respond to the activate signal and do: +</p> +<p> +Emits the <span class="type">"item-activate"</span> signal on this +menu item. Called by server objects when they get the +appropriate DBus signals from the client. +</p> +<p> +If you subclass this function you should really think +about calling the parent function unless you have a good +reason not to. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to send the signal on.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td> +<td>The name of the signal</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>variant</code></em> :</span></p></td> +<td>A value that could be set for the event</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>timestamp</code></em> :</span></p></td> +<td>The timestamp of when the event happened</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-send-about-to-show"></a><h3>dbusmenu_menuitem_send_about_to_show ()</h3> +<pre class="programlisting"><span class="returnvalue">void</span> dbusmenu_menuitem_send_about_to_show + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><span class="type">void</span> (*cb) (DbusmenuMenuitem * mi, gpointer user_data)</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> cb_data</code></em>);</pre> +<p> +This function is used to send the even that the submenu +of this item is about to be shown. Callers to this event +should delay showing the menu until their callback is +called if possible. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to send the signal on.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td> +<td>Callback to call when the call has returned.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>cb_data</code></em> :</span></p></td> +<td>Data to pass to the callback. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-show-to-user"></a><h3>dbusmenu_menuitem_show_to_user ()</h3> +<pre class="programlisting"><span class="returnvalue">void</span> dbusmenu_menuitem_show_to_user (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> timestamp</code></em>);</pre> +<p> +Signals that this menu item should be shown to the user. If this is +server side the server will then take it and send it over the +bus. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to show</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>timestamp</code></em> :</span></p></td> +<td>The time that the user requested it to be shown</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-get-parent"></a><h3>dbusmenu_menuitem_get_parent ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * dbusmenu_menuitem_get_parent (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>);</pre> +<p> +This function looks up the parent of <em class="parameter"><code>mi</code></em> +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> for which to inspect the parent</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>The parent of this menu item. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-set-parent"></a><h3>dbusmenu_menuitem_set_parent ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_set_parent (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *parent</code></em>);</pre> +<p> +Sets the parent of <em class="parameter"><code>mi</code></em> to <em class="parameter"><code>parent</code></em>. If <em class="parameter"><code>mi</code></em> already +has a parent, then this call will fail. The parent will +be set automatically when using the usual methods to add a +child menuitem, so this function should not normally be +called directly +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> for which to set the parent</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>parent</code></em> :</span></p></td> +<td>The new parent <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> +</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>Whether the parent was set successfully</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-unparent"></a><h3>dbusmenu_menuitem_unparent ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_unparent (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>);</pre> +<p> +Unparents the menu item <em class="parameter"><code>mi</code></em>. If <em class="parameter"><code>mi</code></em> doesn't have a +parent, then this call will fail. The menuitem will +be unparented automatically when using the usual methods +to delete a child menuitem, so this function should not +normally be called directly +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to unparent</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>Whether the menu item was unparented successfully</td> +</tr> +</tbody> +</table></div> +</div> +</div> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuMenuitemProxy.html b/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuMenuitemProxy.html new file mode 100644 index 0000000..78edabc --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuMenuitemProxy.html @@ -0,0 +1,166 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>DbusmenuMenuitemProxy</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="up" href="ch01.html" title="API"> +<link rel="prev" href="libdbusmenu-glib-DbusmenuServer.html" title="DbusmenuServer"> +<link rel="next" href="libdbusmenu-glib-DbusmenuMenuitem.html" title="DbusmenuMenuitem"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> +<tr valign="middle"> +<td><a accesskey="p" href="libdbusmenu-glib-DbusmenuServer.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-glib Reference Manual</th> +<td><a accesskey="n" href="libdbusmenu-glib-DbusmenuMenuitem.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr> +<tr><td colspan="5" class="shortcuts"> +<a href="#libdbusmenu-glib-DbusmenuMenuitemProxy.synopsis" class="shortcut">Top</a> +  | + <a href="#libdbusmenu-glib-DbusmenuMenuitemProxy.description" class="shortcut">Description</a> +</td></tr> +</table> +<div class="refentry"> +<a name="libdbusmenu-glib-DbusmenuMenuitemProxy"></a><div class="titlepage"></div> +<div class="refnamediv"><table width="100%"><tr> +<td valign="top"> +<h2><span class="refentrytitle"><a name="libdbusmenu-glib-DbusmenuMenuitemProxy.top_of_page"></a>DbusmenuMenuitemProxy</span></h2> +<p>DbusmenuMenuitemProxy — A menuitem that proxies from another menuitem</p> +</td> +<td valign="top" align="right"></td> +</tr></table></div> +<div class="refsect1"> +<a name="libdbusmenu-glib-DbusmenuMenuitemProxy.stability-level"></a><h2>Stability Level</h2> +Unstable, unless otherwise indicated +</div> +<div class="refsynopsisdiv"> +<a name="libdbusmenu-glib-DbusmenuMenuitemProxy.synopsis"></a><h2>Synopsis</h2> +<pre class="synopsis"> +#include <libdbusmenu-glib/menuitem-proxy.h> + + <a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxy" title="DbusmenuMenuitemProxy">DbusmenuMenuitemProxy</a>; +struct <a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxyClass" title="struct DbusmenuMenuitemProxyClass">DbusmenuMenuitemProxyClass</a>; +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxy" title="DbusmenuMenuitemProxy"><span class="returnvalue">DbusmenuMenuitemProxy</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#dbusmenu-menuitem-proxy-new" title="dbusmenu_menuitem_proxy_new ()">dbusmenu_menuitem_proxy_new</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>); +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#dbusmenu-menuitem-proxy-get-wrapped" title="dbusmenu_menuitem_proxy_get_wrapped ()">dbusmenu_menuitem_proxy_get_wrapped</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxy" title="DbusmenuMenuitemProxy"><span class="type">DbusmenuMenuitemProxy</span></a> *pmi</code></em>); +</pre> +</div> +<div class="refsect1"> +<a name="libdbusmenu-glib-DbusmenuMenuitemProxy.description"></a><h2>Description</h2> +<p> +This small object allows for proxying all the properties from a remote +menuitem to a new object that can be moved around appropriately within +the new menu structure. +</p> +</div> +<div class="refsect1"> +<a name="libdbusmenu-glib-DbusmenuMenuitemProxy.details"></a><h2>Details</h2> +<div class="refsect2"> +<a name="DbusmenuMenuitemProxy"></a><h3>DbusmenuMenuitemProxy</h3> +<pre class="programlisting">typedef struct _DbusmenuMenuitemProxy DbusmenuMenuitemProxy;</pre> +<p> +Public instance data for a <a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxy" title="DbusmenuMenuitemProxy"><span class="type">DbusmenuMenuitemProxy</span></a>. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DbusmenuMenuitemProxyClass"></a><h3>struct DbusmenuMenuitemProxyClass</h3> +<pre class="programlisting">struct DbusmenuMenuitemProxyClass { + DbusmenuMenuitemClass parent_class; + + /*< Private >*/ + void (*reserved1) (void); + void (*reserved2) (void); + void (*reserved3) (void); + void (*reserved4) (void); +}; +</pre> +<p> +Functions and signal slots for <a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxy" title="DbusmenuMenuitemProxy"><span class="type">DbusmenuMenuitemProxy</span></a>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitemClass" title="struct DbusmenuMenuitemClass"><span class="type">DbusmenuMenuitemClass</span></a> <em class="structfield"><code><a name="DbusmenuMenuitemProxyClass.parent-class"></a>parent_class</code></em>;</span></p></td> +<td>The Class of <span class="type">DbusmeneMenuitem</span> +</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemProxyClass.reserved1"></a>reserved1</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemProxyClass.reserved2"></a>reserved2</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemProxyClass.reserved3"></a>reserved3</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuMenuitemProxyClass.reserved4"></a>reserved4</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-proxy-new"></a><h3>dbusmenu_menuitem_proxy_new ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxy" title="DbusmenuMenuitemProxy"><span class="returnvalue">DbusmenuMenuitemProxy</span></a> * dbusmenu_menuitem_proxy_new (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *mi</code></em>);</pre> +<p> +Builds a new <a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxy" title="DbusmenuMenuitemProxy"><span class="type">DbusmenuMenuitemProxy</span></a> object that proxies +all of the values for <em class="parameter"><code>mi</code></em>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>mi</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to proxy</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A new <a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxy" title="DbusmenuMenuitemProxy"><span class="type">DbusmenuMenuitemProxy</span></a> object.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-proxy-get-wrapped"></a><h3>dbusmenu_menuitem_proxy_get_wrapped ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * dbusmenu_menuitem_proxy_get_wrapped (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxy" title="DbusmenuMenuitemProxy"><span class="type">DbusmenuMenuitemProxy</span></a> *pmi</code></em>);</pre> +<p> +Accesses the private variable of which <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> +we are doing the proxying for. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>pmi</code></em> :</span></p></td> +<td> +<a class="link" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxy" title="DbusmenuMenuitemProxy"><span class="type">DbusmenuMenuitemProxy</span></a> to look into</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> object or a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> if we +don't have one or there is an error. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +</div> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuServer.html b/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuServer.html new file mode 100644 index 0000000..f60ba38 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuServer.html @@ -0,0 +1,412 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>DbusmenuServer</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="up" href="ch01.html" title="API"> +<link rel="prev" href="ch01.html" title="API"> +<link rel="next" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html" title="DbusmenuMenuitemProxy"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> +<tr valign="middle"> +<td><a accesskey="p" href="ch01.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-glib Reference Manual</th> +<td><a accesskey="n" href="libdbusmenu-glib-DbusmenuMenuitemProxy.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr> +<tr><td colspan="5" class="shortcuts"> +<a href="#libdbusmenu-glib-DbusmenuServer.synopsis" class="shortcut">Top</a> +  | + <a href="#libdbusmenu-glib-DbusmenuServer.description" class="shortcut">Description</a> +</td></tr> +</table> +<div class="refentry"> +<a name="libdbusmenu-glib-DbusmenuServer"></a><div class="titlepage"></div> +<div class="refnamediv"><table width="100%"><tr> +<td valign="top"> +<h2><span class="refentrytitle"><a name="libdbusmenu-glib-DbusmenuServer.top_of_page"></a>DbusmenuServer</span></h2> +<p>DbusmenuServer — The server signals changed and + updates on a tree of <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> objecs.</p> +</td> +<td valign="top" align="right"></td> +</tr></table></div> +<div class="refsect1"> +<a name="libdbusmenu-glib-DbusmenuServer.stability-level"></a><h2>Stability Level</h2> +Unstable, unless otherwise indicated +</div> +<div class="refsynopsisdiv"> +<a name="libdbusmenu-glib-DbusmenuServer.synopsis"></a><h2>Synopsis</h2> +<pre class="synopsis"> +#include <libdbusmenu-glib/server.h> + +#define <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-ID-PROP-UPDATE:CAPS" title="DBUSMENU_SERVER_SIGNAL_ID_PROP_UPDATE">DBUSMENU_SERVER_SIGNAL_ID_PROP_UPDATE</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-ID-UPDATE:CAPS" title="DBUSMENU_SERVER_SIGNAL_ID_UPDATE">DBUSMENU_SERVER_SIGNAL_ID_UPDATE</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATED:CAPS" title="DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED">DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATE:CAPS" title="DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATE">DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATE</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-ITEM-ACTIVATION:CAPS" title="DBUSMENU_SERVER_SIGNAL_ITEM_ACTIVATION">DBUSMENU_SERVER_SIGNAL_ITEM_ACTIVATION</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-DBUS-OBJECT:CAPS" title="DBUSMENU_SERVER_PROP_DBUS_OBJECT">DBUSMENU_SERVER_PROP_DBUS_OBJECT</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-ROOT-NODE:CAPS" title="DBUSMENU_SERVER_PROP_ROOT_NODE">DBUSMENU_SERVER_PROP_ROOT_NODE</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-STATUS:CAPS" title="DBUSMENU_SERVER_PROP_STATUS">DBUSMENU_SERVER_PROP_STATUS</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-TEXT-DIRECTION:CAPS" title="DBUSMENU_SERVER_PROP_TEXT_DIRECTION">DBUSMENU_SERVER_PROP_TEXT_DIRECTION</a> +#define <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-VERSION:CAPS" title="DBUSMENU_SERVER_PROP_VERSION">DBUSMENU_SERVER_PROP_VERSION</a> + <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer">DbusmenuServer</a>; +struct <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServerClass" title="struct DbusmenuServerClass">DbusmenuServerClass</a>; +<a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="returnvalue">DbusmenuServer</span></a> * <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-new" title="dbusmenu_server_new ()">dbusmenu_server_new</a> (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object</code></em>); +<a class="link" href="libdbusmenu-glib-Types.html#DbusmenuStatus" title="enum DbusmenuStatus"><span class="returnvalue">DbusmenuStatus</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-get-status" title="dbusmenu_server_get_status ()">dbusmenu_server_get_status</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> *server</code></em>); +<a class="link" href="libdbusmenu-glib-Types.html#DbusmenuTextDirection" title="enum DbusmenuTextDirection"><span class="returnvalue">DbusmenuTextDirection</span></a> <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-get-text-direction" title="dbusmenu_server_get_text_direction ()">dbusmenu_server_get_text_direction</a> + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> *server</code></em>); +<span class="returnvalue">void</span> <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-root" title="dbusmenu_server_set_root ()">dbusmenu_server_set_root</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> *self</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *root</code></em>); +<span class="returnvalue">void</span> <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-status" title="dbusmenu_server_set_status ()">dbusmenu_server_set_status</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> *server</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-Types.html#DbusmenuStatus" title="enum DbusmenuStatus"><span class="type">DbusmenuStatus</span></a> status</code></em>); +<span class="returnvalue">void</span> <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-text-direction" title="dbusmenu_server_set_text_direction ()">dbusmenu_server_set_text_direction</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> *server</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-Types.html#DbusmenuTextDirection" title="enum DbusmenuTextDirection"><span class="type">DbusmenuTextDirection</span></a> dir</code></em>); +</pre> +</div> +<div class="refsect1"> +<a name="libdbusmenu-glib-DbusmenuServer.description"></a><h2>Description</h2> +<p> +A <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> is the object that represents the local + tree of <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> objects on DBus. It watches the + various signals that those objects emit and correctly + represents them across DBus to a <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a> so that + the same tree can be maintained in another process. +</p> +<p> + The server needs to have the root set of <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> + objects set via <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-root" title="dbusmenu_server_set_root ()"><span class="type">dbusmenu_server_set_root</span></a> but it will query + all of the objects in that tree automatically. After setting + the root there should be no other maintence required by + users of the server class. +</p> +</div> +<div class="refsect1"> +<a name="libdbusmenu-glib-DbusmenuServer.details"></a><h2>Details</h2> +<div class="refsect2"> +<a name="DBUSMENU-SERVER-SIGNAL-ID-PROP-UPDATE:CAPS"></a><h3>DBUSMENU_SERVER_SIGNAL_ID_PROP_UPDATE</h3> +<pre class="programlisting">#define DBUSMENU_SERVER_SIGNAL_ID_PROP_UPDATE "item-property-updated" +</pre> +<p> +String to attach to signal <span class="type">"item-property-updated"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-SERVER-SIGNAL-ID-UPDATE:CAPS"></a><h3>DBUSMENU_SERVER_SIGNAL_ID_UPDATE</h3> +<pre class="programlisting">#define DBUSMENU_SERVER_SIGNAL_ID_UPDATE "item-updated" +</pre> +<p> +String to attach to signal <span class="type">"item-updated"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATED:CAPS"></a><h3>DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED</h3> +<pre class="programlisting">#define DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED "layout-updated" +</pre> +<p> +String to attach to signal <span class="type">"layout-updated"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATE:CAPS"></a><h3>DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATE</h3> +<pre class="programlisting">#define DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATE DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED +</pre> +<p> +String to attach to signal <span class="type">"layout-updated"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-SERVER-SIGNAL-ITEM-ACTIVATION:CAPS"></a><h3>DBUSMENU_SERVER_SIGNAL_ITEM_ACTIVATION</h3> +<pre class="programlisting">#define DBUSMENU_SERVER_SIGNAL_ITEM_ACTIVATION "item-activation-requested" +</pre> +<p> +String to attach to signal <span class="type">"item-activation-requested"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-SERVER-PROP-DBUS-OBJECT:CAPS"></a><h3>DBUSMENU_SERVER_PROP_DBUS_OBJECT</h3> +<pre class="programlisting">#define DBUSMENU_SERVER_PROP_DBUS_OBJECT "dbus-object" +</pre> +<p> +String to access property <span class="type">"dbus-object"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-SERVER-PROP-ROOT-NODE:CAPS"></a><h3>DBUSMENU_SERVER_PROP_ROOT_NODE</h3> +<pre class="programlisting">#define DBUSMENU_SERVER_PROP_ROOT_NODE "root-node" +</pre> +<p> +String to access property <span class="type">"root-node"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-SERVER-PROP-STATUS:CAPS"></a><h3>DBUSMENU_SERVER_PROP_STATUS</h3> +<pre class="programlisting">#define DBUSMENU_SERVER_PROP_STATUS "status" +</pre> +<p> +String to access property <span class="type">"status"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-SERVER-PROP-TEXT-DIRECTION:CAPS"></a><h3>DBUSMENU_SERVER_PROP_TEXT_DIRECTION</h3> +<pre class="programlisting">#define DBUSMENU_SERVER_PROP_TEXT_DIRECTION "text-direction" +</pre> +<p> +String to access property <span class="type">"text-direction"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-SERVER-PROP-VERSION:CAPS"></a><h3>DBUSMENU_SERVER_PROP_VERSION</h3> +<pre class="programlisting">#define DBUSMENU_SERVER_PROP_VERSION "version" +</pre> +<p> +String to access property <span class="type">"version"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DbusmenuServer"></a><h3>DbusmenuServer</h3> +<pre class="programlisting">typedef struct _DbusmenuServer DbusmenuServer;</pre> +<p> +A server which represents a sharing of a set of + <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitems</span></a> across DBus to a <a class="link" href="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient" title="DbusmenuClient"><span class="type">DbusmenuClient</span></a>. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DbusmenuServerClass"></a><h3>struct DbusmenuServerClass</h3> +<pre class="programlisting">struct DbusmenuServerClass { + GObjectClass parent_class; + + /* Signals */ + void (*id_prop_update)(gint id, gchar * property, gchar * value); + void (*id_update)(gint id); + void (*layout_updated)(gint revision); + void (*item_activation)(gint id, guint timestamp); + + /*< Private >*/ + void (*reserved1) (void); + void (*reserved2) (void); + void (*reserved3) (void); + void (*reserved4) (void); + void (*reserved5) (void); + void (*reserved6) (void); +}; +</pre> +<p> +The class implementing the virtual functions for <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a> <em class="structfield"><code><a name="DbusmenuServerClass.parent-class"></a>parent_class</code></em>;</span></p></td> +<td><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a></td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuServerClass.id-prop-update"></a>id_prop_update</code></em> ()</span></p></td> +<td>Slot for <span class="type">"id-prop-update"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuServerClass.id-update"></a>id_update</code></em> ()</span></p></td> +<td>Slot for <span class="type">"id-update"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuServerClass.layout-updated"></a>layout_updated</code></em> ()</span></p></td> +<td>Slot for <span class="type">"layout-update"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuServerClass.item-activation"></a>item_activation</code></em> ()</span></p></td> +<td>Slot for <span class="type">"item-activation-requested"</span>.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuServerClass.reserved1"></a>reserved1</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuServerClass.reserved2"></a>reserved2</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuServerClass.reserved3"></a>reserved3</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuServerClass.reserved4"></a>reserved4</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuServerClass.reserved5"></a>reserved5</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuServerClass.reserved6"></a>reserved6</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-server-new"></a><h3>dbusmenu_server_new ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="returnvalue">DbusmenuServer</span></a> * dbusmenu_server_new (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object</code></em>);</pre> +<p> +Creates a new <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> object with a specific object + path on DBus. If <em class="parameter"><code>object</code></em> is set to NULL the default object + name of "/com/canonical/dbusmenu" will be used. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td> +<td>The object name to show for this menu structure +on DBus. May be NULL.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A brand new <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-server-get-status"></a><h3>dbusmenu_server_get_status ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-Types.html#DbusmenuStatus" title="enum DbusmenuStatus"><span class="returnvalue">DbusmenuStatus</span></a> dbusmenu_server_get_status (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> *server</code></em>);</pre> +<p> +Gets the current statust hat the server is sending out over + DBus. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>server</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> to get the status from</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>The current status the server is sending</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-server-get-text-direction"></a><h3>dbusmenu_server_get_text_direction ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-Types.html#DbusmenuTextDirection" title="enum DbusmenuTextDirection"><span class="returnvalue">DbusmenuTextDirection</span></a> dbusmenu_server_get_text_direction + (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> *server</code></em>);</pre> +<p> +Returns the value of the text direction that is being exported + over DBus for this server. It should relate to the direction + of the labels and other text fields that are being exported by + this server. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>server</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> object to get the text direction from</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>Text direction exported for this server.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-server-set-root"></a><h3>dbusmenu_server_set_root ()</h3> +<pre class="programlisting"><span class="returnvalue">void</span> dbusmenu_server_set_root (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> *self</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *root</code></em>);</pre> +<p> +This function contains all of the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> wrapping + required to set the property <span class="type">"root-node"</span> + on the server <em class="parameter"><code>self</code></em>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> object to set the root on</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>root</code></em> :</span></p></td> +<td>The new root <a class="link" href="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem" title="struct DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> tree</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-server-set-status"></a><h3>dbusmenu_server_set_status ()</h3> +<pre class="programlisting"><span class="returnvalue">void</span> dbusmenu_server_set_status (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> *server</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-Types.html#DbusmenuStatus" title="enum DbusmenuStatus"><span class="type">DbusmenuStatus</span></a> status</code></em>);</pre> +<p> +Changes the status of the server. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>server</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> to set the status on</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>status</code></em> :</span></p></td> +<td>Status value to set on the server</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-server-set-text-direction"></a><h3>dbusmenu_server_set_text_direction ()</h3> +<pre class="programlisting"><span class="returnvalue">void</span> dbusmenu_server_set_text_direction (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> *server</code></em>, + <em class="parameter"><code><a class="link" href="libdbusmenu-glib-Types.html#DbusmenuTextDirection" title="enum DbusmenuTextDirection"><span class="type">DbusmenuTextDirection</span></a> dir</code></em>);</pre> +<p> +Sets the text direction that should be exported over DBus for + this server. If the value is set to <a class="link" href="libdbusmenu-glib-Types.html#DBUSMENU-TEXT-DIRECTION-NONE:CAPS"><span class="type">DBUSMENU_TEXT_DIRECTION_NONE</span></a> + the default detection will be used for setting the value and + exported over DBus. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>server</code></em> :</span></p></td> +<td>The <a class="link" href="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer" title="DbusmenuServer"><span class="type">DbusmenuServer</span></a> object to set the text direction on</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>dir</code></em> :</span></p></td> +<td>Direction of the text</td> +</tr> +</tbody> +</table></div> +</div> +</div> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-Types.html b/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-Types.html new file mode 100644 index 0000000..93e7e54 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-Types.html @@ -0,0 +1,274 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>Types</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="up" href="ch01.html" title="API"> +<link rel="prev" href="libdbusmenu-glib-DbusmenuClient.html" title="DbusmenuClient"> +<link rel="next" href="object-tree.html" title="Object Hierarchy"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> +<tr valign="middle"> +<td><a accesskey="p" href="libdbusmenu-glib-DbusmenuClient.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-glib Reference Manual</th> +<td><a accesskey="n" href="object-tree.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr> +<tr><td colspan="5" class="shortcuts"> +<a href="#libdbusmenu-glib-Types.synopsis" class="shortcut">Top</a> +  | + <a href="#libdbusmenu-glib-Types.description" class="shortcut">Description</a> +</td></tr> +</table> +<div class="refentry"> +<a name="libdbusmenu-glib-Types"></a><div class="titlepage"></div> +<div class="refnamediv"><table width="100%"><tr> +<td valign="top"> +<h2><span class="refentrytitle"><a name="libdbusmenu-glib-Types.top_of_page"></a>Types</span></h2> +<p>Types — Types that are used by both client and + server.</p> +</td> +<td valign="top" align="right"></td> +</tr></table></div> +<div class="refsect1"> +<a name="libdbusmenu-glib-Types.stability-level"></a><h2>Stability Level</h2> +Unstable, unless otherwise indicated +</div> +<div class="refsynopsisdiv"> +<a name="libdbusmenu-glib-Types.synopsis"></a><h2>Synopsis</h2> +<pre class="synopsis"> +#include <libdbusmenu-glib/types.h> + +#define <a class="link" href="libdbusmenu-glib-Types.html#DBUSMENU-TYPE-STATUS:CAPS" title="DBUSMENU_TYPE_STATUS">DBUSMENU_TYPE_STATUS</a> +#define <a class="link" href="libdbusmenu-glib-Types.html#DBUSMENU-TYPE-TEXT-DIRECTION:CAPS" title="DBUSMENU_TYPE_TEXT_DIRECTION">DBUSMENU_TYPE_TEXT_DIRECTION</a> +enum <a class="link" href="libdbusmenu-glib-Types.html#DbusmenuStatus" title="enum DbusmenuStatus">DbusmenuStatus</a>; +enum <a class="link" href="libdbusmenu-glib-Types.html#DbusmenuTextDirection" title="enum DbusmenuTextDirection">DbusmenuTextDirection</a>; +const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="libdbusmenu-glib-Types.html#dbusmenu-status-get-nick" title="dbusmenu_status_get_nick ()">dbusmenu_status_get_nick</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-Types.html#DbusmenuStatus" title="enum DbusmenuStatus"><span class="type">DbusmenuStatus</span></a> value</code></em>); +<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a> <a class="link" href="libdbusmenu-glib-Types.html#dbusmenu-status-get-type" title="dbusmenu_status_get_type ()">dbusmenu_status_get_type</a> (<em class="parameter"><code><span class="type">void</span></code></em>); +<a class="link" href="libdbusmenu-glib-Types.html#DbusmenuStatus" title="enum DbusmenuStatus"><span class="returnvalue">DbusmenuStatus</span></a> <a class="link" href="libdbusmenu-glib-Types.html#dbusmenu-status-get-value-from-nick" title="dbusmenu_status_get_value_from_nick ()">dbusmenu_status_get_value_from_nick</a> (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nick</code></em>); +const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="libdbusmenu-glib-Types.html#dbusmenu-text-direction-get-nick" title="dbusmenu_text_direction_get_nick ()">dbusmenu_text_direction_get_nick</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-Types.html#DbusmenuTextDirection" title="enum DbusmenuTextDirection"><span class="type">DbusmenuTextDirection</span></a> value</code></em>); +<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a> <a class="link" href="libdbusmenu-glib-Types.html#dbusmenu-text-direction-get-type" title="dbusmenu_text_direction_get_type ()">dbusmenu_text_direction_get_type</a> (<em class="parameter"><code><span class="type">void</span></code></em>); +<a class="link" href="libdbusmenu-glib-Types.html#DbusmenuTextDirection" title="enum DbusmenuTextDirection"><span class="returnvalue">DbusmenuTextDirection</span></a> <a class="link" href="libdbusmenu-glib-Types.html#dbusmenu-text-direction-get-value-from-nick" title="dbusmenu_text_direction_get_value_from_nick ()">dbusmenu_text_direction_get_value_from_nick</a> + (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nick</code></em>); +</pre> +</div> +<div class="refsect1"> +<a name="libdbusmenu-glib-Types.description"></a><h2>Description</h2> +<p> +Enums that are used to describe states of the server across the + bus. They are sent over dbus using their nicks but then turned + back into enums by the client. +</p> +</div> +<div class="refsect1"> +<a name="libdbusmenu-glib-Types.details"></a><h2>Details</h2> +<div class="refsect2"> +<a name="DBUSMENU-TYPE-STATUS:CAPS"></a><h3>DBUSMENU_TYPE_STATUS</h3> +<pre class="programlisting">#define DBUSMENU_TYPE_STATUS (dbusmenu_status_get_type()) +</pre> +<p> +Gets the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> value for the type associated with the + <a class="link" href="libdbusmenu-glib-Types.html#DbusmenuStatus" title="enum DbusmenuStatus"><span class="type">DbusmenuStatus</span></a> enumerated type. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DBUSMENU-TYPE-TEXT-DIRECTION:CAPS"></a><h3>DBUSMENU_TYPE_TEXT_DIRECTION</h3> +<pre class="programlisting">#define DBUSMENU_TYPE_TEXT_DIRECTION (dbusmenu_text_direction_get_type()) +</pre> +<p> +Gets the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> value for the type associated with the + <a class="link" href="libdbusmenu-glib-Types.html#DbusmenuTextDirection" title="enum DbusmenuTextDirection"><span class="type">DbusmenuTextDirection</span></a> enumerated type. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DbusmenuStatus"></a><h3>enum DbusmenuStatus</h3> +<pre class="programlisting">typedef enum { /*< prefix=DBUSMENU_STATUS >*/ + DBUSMENU_STATUS_NORMAL, /*< nick=normal >*/ + DBUSMENU_STATUS_NOTICE /*< nick=notice >*/ +} DbusmenuStatus; +</pre> +<p> +Tracks how the menus should be presented to the user. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><a name="DBUSMENU-STATUS-NORMAL:CAPS"></a><span class="term"><code class="literal">DBUSMENU_STATUS_NORMAL</code></span></p></td> +<td>Everything is normal +</td> +</tr> +<tr> +<td><p><a name="DBUSMENU-STATUS-NOTICE:CAPS"></a><span class="term"><code class="literal">DBUSMENU_STATUS_NOTICE</code></span></p></td> +<td>The menus should be shown at a higher priority +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="DbusmenuTextDirection"></a><h3>enum DbusmenuTextDirection</h3> +<pre class="programlisting">typedef enum { /*< prefix=DBUSMENU_TEXT_DIRECTION >*/ + DBUSMENU_TEXT_DIRECTION_NONE, /*< nick=none >*/ + DBUSMENU_TEXT_DIRECTION_LTR, /*< nick=ltr >*/ + DBUSMENU_TEXT_DIRECTION_RTL /*< nick=rtl >*/ +} DbusmenuTextDirection; +</pre> +<p> +The direction of text that the strings that this server + will be sending strings as. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><a name="DBUSMENU-TEXT-DIRECTION-NONE:CAPS"></a><span class="term"><code class="literal">DBUSMENU_TEXT_DIRECTION_NONE</code></span></p></td> +<td>Unspecified text direction +</td> +</tr> +<tr> +<td><p><a name="DBUSMENU-TEXT-DIRECTION-LTR:CAPS"></a><span class="term"><code class="literal">DBUSMENU_TEXT_DIRECTION_LTR</code></span></p></td> +<td>Left-to-right text direction +</td> +</tr> +<tr> +<td><p><a name="DBUSMENU-TEXT-DIRECTION-RTL:CAPS"></a><span class="term"><code class="literal">DBUSMENU_TEXT_DIRECTION_RTL</code></span></p></td> +<td>Right-to-left text direction +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-status-get-nick"></a><h3>dbusmenu_status_get_nick ()</h3> +<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * dbusmenu_status_get_nick (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-Types.html#DbusmenuStatus" title="enum DbusmenuStatus"><span class="type">DbusmenuStatus</span></a> value</code></em>);</pre> +<p> +Looks up in the enum table for the nick of <em class="parameter"><code>value</code></em>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> +<td>The value of DbusmenuStatus to get the nick of</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>The nick for the given value or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> on error</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-status-get-type"></a><h3>dbusmenu_status_get_type ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a> dbusmenu_status_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> +<p> +Builds a GLib type for the <a class="link" href="libdbusmenu-glib-Types.html#DbusmenuStatus" title="enum DbusmenuStatus"><span class="type">DbusmenuStatus</span></a> enumeration. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody><tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A unique <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> for the <a class="link" href="libdbusmenu-glib-Types.html#DbusmenuStatus" title="enum DbusmenuStatus"><span class="type">DbusmenuStatus</span></a> enum.</td> +</tr></tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-status-get-value-from-nick"></a><h3>dbusmenu_status_get_value_from_nick ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-Types.html#DbusmenuStatus" title="enum DbusmenuStatus"><span class="returnvalue">DbusmenuStatus</span></a> dbusmenu_status_get_value_from_nick (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nick</code></em>);</pre> +<p> +Looks up in the enum table for the value of <em class="parameter"><code>nick</code></em>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>nick</code></em> :</span></p></td> +<td>The enum nick to lookup</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>The value for the given <em class="parameter"><code>nick</code></em> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-text-direction-get-nick"></a><h3>dbusmenu_text_direction_get_nick ()</h3> +<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * dbusmenu_text_direction_get_nick (<em class="parameter"><code><a class="link" href="libdbusmenu-glib-Types.html#DbusmenuTextDirection" title="enum DbusmenuTextDirection"><span class="type">DbusmenuTextDirection</span></a> value</code></em>);</pre> +<p> +Looks up in the enum table for the nick of <em class="parameter"><code>value</code></em>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> +<td>The value of DbusmenuTextDirection to get the nick of</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>The nick for the given value or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> on error</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-text-direction-get-type"></a><h3>dbusmenu_text_direction_get_type ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a> dbusmenu_text_direction_get_type (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> +<p> +Builds a GLib type for the <a class="link" href="libdbusmenu-glib-Types.html#DbusmenuTextDirection" title="enum DbusmenuTextDirection"><span class="type">DbusmenuTextDirection</span></a> enumeration. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody><tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A unique <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> for the <a class="link" href="libdbusmenu-glib-Types.html#DbusmenuTextDirection" title="enum DbusmenuTextDirection"><span class="type">DbusmenuTextDirection</span></a> enum.</td> +</tr></tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-text-direction-get-value-from-nick"></a><h3>dbusmenu_text_direction_get_value_from_nick ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-glib-Types.html#DbusmenuTextDirection" title="enum DbusmenuTextDirection"><span class="returnvalue">DbusmenuTextDirection</span></a> dbusmenu_text_direction_get_value_from_nick + (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nick</code></em>);</pre> +<p> +Looks up in the enum table for the value of <em class="parameter"><code>nick</code></em>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>nick</code></em> :</span></p></td> +<td>The enum nick to lookup</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>The value for the given <em class="parameter"><code>nick</code></em> +</td> +</tr> +</tbody> +</table></div> +</div> +</div> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib.devhelp b/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib.devhelp new file mode 100644 index 0000000..7495bc7 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib.devhelp @@ -0,0 +1,144 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE book PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ""> +<book xmlns="http://www.devhelp.net/book" title="libdbusmenu-glib Reference Manual" link="index.html" author="" name="libdbusmenu-glib"> + <chapters> + <sub name="API" link="ch01.html"> + <sub name="DbusmenuServer" link="libdbusmenu-glib-DbusmenuServer.html"/> + <sub name="DbusmenuMenuitemProxy" link="libdbusmenu-glib-DbusmenuMenuitemProxy.html"/> + <sub name="DbusmenuMenuitem" link="libdbusmenu-glib-DbusmenuMenuitem.html"/> + <sub name="DbusmenuClient" link="libdbusmenu-glib-DbusmenuClient.html"/> + <sub name="Types" link="libdbusmenu-glib-Types.html"/> + </sub> + <sub name="Object Hierarchy" link="object-tree.html"/> + <sub name="API Index" link="api-index-full.html"/> + <sub name="Deprecated API Index" link="api-index-deprecated.html"/> + <sub name="Annotation Glossary" link="annotation-glossary.html"/> + </chapters> + <functions> + <function name="DBUSMENU_SERVER_SIGNAL_ID_PROP_UPDATE" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-ID-PROP-UPDATE:CAPS"/> + <function name="DBUSMENU_SERVER_SIGNAL_ID_UPDATE" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-ID-UPDATE:CAPS"/> + <function name="DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATED:CAPS"/> + <function name="DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATE" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATE:CAPS"/> + <function name="DBUSMENU_SERVER_SIGNAL_ITEM_ACTIVATION" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-ITEM-ACTIVATION:CAPS"/> + <function name="DBUSMENU_SERVER_PROP_DBUS_OBJECT" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-DBUS-OBJECT:CAPS"/> + <function name="DBUSMENU_SERVER_PROP_ROOT_NODE" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-ROOT-NODE:CAPS"/> + <function name="DBUSMENU_SERVER_PROP_STATUS" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-STATUS:CAPS"/> + <function name="DBUSMENU_SERVER_PROP_TEXT_DIRECTION" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-TEXT-DIRECTION:CAPS"/> + <function name="DBUSMENU_SERVER_PROP_VERSION" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-VERSION:CAPS"/> + <function name="DbusmenuServer" link="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer"/> + <function name="struct DbusmenuServerClass" link="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServerClass"/> + <function name="dbusmenu_server_new ()" link="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-new"/> + <function name="dbusmenu_server_get_status ()" link="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-get-status"/> + <function name="dbusmenu_server_get_text_direction ()" link="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-get-text-direction"/> + <function name="dbusmenu_server_set_root ()" link="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-root"/> + <function name="dbusmenu_server_set_status ()" link="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-status"/> + <function name="dbusmenu_server_set_text_direction ()" link="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-text-direction"/> + <function name="DbusmenuMenuitemProxy" link="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxy"/> + <function name="struct DbusmenuMenuitemProxyClass" link="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxyClass"/> + <function name="dbusmenu_menuitem_proxy_new ()" link="libdbusmenu-glib-DbusmenuMenuitemProxy.html#dbusmenu-menuitem-proxy-new"/> + <function name="dbusmenu_menuitem_proxy_get_wrapped ()" link="libdbusmenu-glib-DbusmenuMenuitemProxy.html#dbusmenu-menuitem-proxy-get-wrapped"/> + <function name="DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-PROPERTY-CHANGED:CAPS"/> + <function name="DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-ITEM-ACTIVATED:CAPS"/> + <function name="DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-CHILD-ADDED:CAPS"/> + <function name="DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-CHILD-REMOVED:CAPS"/> + <function name="DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-CHILD-MOVED:CAPS"/> + <function name="DBUSMENU_MENUITEM_SIGNAL_EVENT" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-EVENT:CAPS"/> + <function name="DBUSMENU_MENUITEM_SIGNAL_REALIZED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-REALIZED:CAPS"/> + <function name="DBUSMENU_MENUITEM_SIGNAL_REALIZED_ID" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-REALIZED-ID:CAPS"/> + <function name="DBUSMENU_MENUITEM_SIGNAL_ABOUT_TO_SHOW" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-ABOUT-TO-SHOW:CAPS"/> + <function name="DBUSMENU_MENUITEM_SIGNAL_SHOW_TO_USER" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-SHOW-TO-USER:CAPS"/> + <function name="DBUSMENU_MENUITEM_PROP_TYPE" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TYPE:CAPS"/> + <function name="DBUSMENU_MENUITEM_PROP_VISIBLE" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-VISIBLE:CAPS"/> + <function name="DBUSMENU_MENUITEM_PROP_ENABLED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-ENABLED:CAPS"/> + <function name="DBUSMENU_MENUITEM_PROP_LABEL" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-LABEL:CAPS"/> + <function name="DBUSMENU_MENUITEM_PROP_ICON_NAME" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-ICON-NAME:CAPS"/> + <function name="DBUSMENU_MENUITEM_PROP_ICON_DATA" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-ICON-DATA:CAPS"/> + <function name="DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS"/> + <function name="DBUSMENU_MENUITEM_PROP_TOGGLE_STATE" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS"/> + <function name="DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-CHILD-DISPLAY:CAPS"/> + <function name="DBUSMENU_MENUITEM_PROP_SHORTCUT" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS"/> + <function name="DBUSMENU_MENUITEM_TOGGLE_CHECK" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-CHECK:CAPS"/> + <function name="DBUSMENU_MENUITEM_TOGGLE_RADIO" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-RADIO:CAPS"/> + <function name="DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-UNCHECKED:CAPS"/> + <function name="DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-CHECKED:CAPS"/> + <function name="DBUSMENU_MENUITEM_TOGGLE_STATE_UNKNOWN" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-UNKNOWN:CAPS"/> + <function name="DBUSMENU_MENUITEM_ICON_NAME_BLANK" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-ICON-NAME-BLANK:CAPS"/> + <function name="DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-CHILD-DISPLAY-SUBMENU:CAPS"/> + <function name="DBUSMENU_MENUITEM_SHORTCUT_ALT" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-ALT:CAPS"/> + <function name="DBUSMENU_MENUITEM_SHORTCUT_CONTROL" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-CONTROL:CAPS"/> + <function name="DBUSMENU_MENUITEM_SHORTCUT_SHIFT" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-SHIFT:CAPS"/> + <function name="DBUSMENU_MENUITEM_SHORTCUT_SUPER" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-SUPER:CAPS"/> + <function name="struct DbusmenuMenuitem" link="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"/> + <function name="dbusmenu_menuitem_about_to_show_cb ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-about-to-show-cb"/> + <function name="dbusmenu_menuitem_buildvariant_slot_t ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-buildvariant-slot-t"/> + <function name="struct DbusmenuMenuitemClass" link="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitemClass"/> + <function name="dbusmenu_menuitem_new ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-new"/> + <function name="dbusmenu_menuitem_new_with_id ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-new-with-id"/> + <function name="dbusmenu_menuitem_get_id ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-id"/> + <function name="dbusmenu_menuitem_get_children ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-children"/> + <function name="dbusmenu_menuitem_take_children ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-take-children"/> + <function name="dbusmenu_menuitem_get_position ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-position"/> + <function name="dbusmenu_menuitem_get_position_realized ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-position-realized"/> + <function name="dbusmenu_menuitem_child_append ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-append"/> + <function name="dbusmenu_menuitem_child_prepend ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-prepend"/> + <function name="dbusmenu_menuitem_child_delete ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-delete"/> + <function name="dbusmenu_menuitem_child_add_position ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-add-position"/> + <function name="dbusmenu_menuitem_child_reorder ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-reorder"/> + <function name="dbusmenu_menuitem_child_find ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-find"/> + <function name="dbusmenu_menuitem_find_id ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-find-id"/> + <function name="dbusmenu_menuitem_property_set ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set"/> + <function name="dbusmenu_menuitem_property_set_bool ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set-bool"/> + <function name="dbusmenu_menuitem_property_set_int ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set-int"/> + <function name="dbusmenu_menuitem_property_set_variant ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set-variant"/> + <function name="dbusmenu_menuitem_property_get ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get"/> + <function name="dbusmenu_menuitem_property_get_bool ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get-bool"/> + <function name="dbusmenu_menuitem_property_get_int ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get-int"/> + <function name="dbusmenu_menuitem_property_get_variant ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get-variant"/> + <function name="dbusmenu_menuitem_property_exist ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-exist"/> + <function name="dbusmenu_menuitem_properties_list ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-properties-list"/> + <function name="dbusmenu_menuitem_properties_copy ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-properties-copy"/> + <function name="dbusmenu_menuitem_property_remove ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-remove"/> + <function name="dbusmenu_menuitem_set_root ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-set-root"/> + <function name="dbusmenu_menuitem_get_root ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-root"/> + <function name="dbusmenu_menuitem_foreach ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-foreach"/> + <function name="dbusmenu_menuitem_handle_event ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-handle-event"/> + <function name="dbusmenu_menuitem_send_about_to_show ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-send-about-to-show"/> + <function name="dbusmenu_menuitem_show_to_user ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-show-to-user"/> + <function name="dbusmenu_menuitem_get_parent ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-parent"/> + <function name="dbusmenu_menuitem_set_parent ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-set-parent"/> + <function name="dbusmenu_menuitem_unparent ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-unparent"/> + <function name="DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-LAYOUT-UPDATED:CAPS"/> + <function name="DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-ROOT-CHANGED:CAPS"/> + <function name="DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-NEW-MENUITEM:CAPS"/> + <function name="DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-EVENT-RESULT:CAPS"/> + <function name="DBUSMENU_CLIENT_SIGNAL_ITEM_ACTIVATE" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-ITEM-ACTIVATE:CAPS"/> + <function name="DBUSMENU_CLIENT_SIGNAL_ICON_THEME_DIRS_CHANGED" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-ICON-THEME-DIRS-CHANGED:CAPS"/> + <function name="DBUSMENU_CLIENT_PROP_DBUS_NAME" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-DBUS-NAME:CAPS"/> + <function name="DBUSMENU_CLIENT_PROP_DBUS_OBJECT" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-DBUS-OBJECT:CAPS"/> + <function name="DBUSMENU_CLIENT_PROP_STATUS" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-STATUS:CAPS"/> + <function name="DBUSMENU_CLIENT_PROP_TEXT_DIRECTION" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-TEXT-DIRECTION:CAPS"/> + <function name="DBUSMENU_CLIENT_TYPES_DEFAULT" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-TYPES-DEFAULT:CAPS"/> + <function name="DBUSMENU_CLIENT_TYPES_SEPARATOR" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-TYPES-SEPARATOR:CAPS"/> + <function name="DBUSMENU_CLIENT_TYPES_IMAGE" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-TYPES-IMAGE:CAPS"/> + <function name="DbusmenuClient" link="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient"/> + <function name="struct DbusmenuClientClass" link="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClientClass"/> + <function name="DbusmenuClientTypeHandler ()" link="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClientTypeHandler"/> + <function name="dbusmenu_client_new ()" link="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-new"/> + <function name="dbusmenu_client_get_icon_paths ()" link="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-icon-paths"/> + <function name="dbusmenu_client_get_root ()" link="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-root"/> + <function name="dbusmenu_client_get_status ()" link="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-status"/> + <function name="dbusmenu_client_get_text_direction ()" link="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-text-direction"/> + <function name="dbusmenu_client_add_type_handler ()" link="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-add-type-handler"/> + <function name="dbusmenu_client_add_type_handler_full ()" link="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-add-type-handler-full"/> + <function name="DBUSMENU_TYPE_STATUS" link="libdbusmenu-glib-Types.html#DBUSMENU-TYPE-STATUS:CAPS"/> + <function name="DBUSMENU_TYPE_TEXT_DIRECTION" link="libdbusmenu-glib-Types.html#DBUSMENU-TYPE-TEXT-DIRECTION:CAPS"/> + <function name="enum DbusmenuStatus" link="libdbusmenu-glib-Types.html#DbusmenuStatus"/> + <function name="enum DbusmenuTextDirection" link="libdbusmenu-glib-Types.html#DbusmenuTextDirection"/> + <function name="dbusmenu_status_get_nick ()" link="libdbusmenu-glib-Types.html#dbusmenu-status-get-nick"/> + <function name="dbusmenu_status_get_type ()" link="libdbusmenu-glib-Types.html#dbusmenu-status-get-type"/> + <function name="dbusmenu_status_get_value_from_nick ()" link="libdbusmenu-glib-Types.html#dbusmenu-status-get-value-from-nick"/> + <function name="dbusmenu_text_direction_get_nick ()" link="libdbusmenu-glib-Types.html#dbusmenu-text-direction-get-nick"/> + <function name="dbusmenu_text_direction_get_type ()" link="libdbusmenu-glib-Types.html#dbusmenu-text-direction-get-type"/> + <function name="dbusmenu_text_direction_get_value_from_nick ()" link="libdbusmenu-glib-Types.html#dbusmenu-text-direction-get-value-from-nick"/> + </functions> +</book> diff --git a/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib.devhelp2 b/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib.devhelp2 new file mode 100644 index 0000000..06d5db8 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/libdbusmenu-glib.devhelp2 @@ -0,0 +1,149 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE book PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ""> +<book xmlns="http://www.devhelp.net/book" title="libdbusmenu-glib Reference Manual" link="index.html" author="" name="libdbusmenu-glib" version="2" language="c"> + <chapters> + <sub name="API" link="ch01.html"> + <sub name="DbusmenuServer" link="libdbusmenu-glib-DbusmenuServer.html"/> + <sub name="DbusmenuMenuitemProxy" link="libdbusmenu-glib-DbusmenuMenuitemProxy.html"/> + <sub name="DbusmenuMenuitem" link="libdbusmenu-glib-DbusmenuMenuitem.html"/> + <sub name="DbusmenuClient" link="libdbusmenu-glib-DbusmenuClient.html"/> + <sub name="Types" link="libdbusmenu-glib-Types.html"/> + </sub> + <sub name="Object Hierarchy" link="object-tree.html"/> + <sub name="API Index" link="api-index-full.html"/> + <sub name="Deprecated API Index" link="api-index-deprecated.html"/> + <sub name="Annotation Glossary" link="annotation-glossary.html"/> + </chapters> + <functions> + <keyword type="macro" name="DBUSMENU_SERVER_SIGNAL_ID_PROP_UPDATE" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-ID-PROP-UPDATE:CAPS"/> + <keyword type="macro" name="DBUSMENU_SERVER_SIGNAL_ID_UPDATE" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-ID-UPDATE:CAPS"/> + <keyword type="macro" name="DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATED:CAPS"/> + <keyword type="macro" name="DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATE" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATE:CAPS"/> + <keyword type="macro" name="DBUSMENU_SERVER_SIGNAL_ITEM_ACTIVATION" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-SIGNAL-ITEM-ACTIVATION:CAPS"/> + <keyword type="macro" name="DBUSMENU_SERVER_PROP_DBUS_OBJECT" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-DBUS-OBJECT:CAPS"/> + <keyword type="macro" name="DBUSMENU_SERVER_PROP_ROOT_NODE" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-ROOT-NODE:CAPS"/> + <keyword type="macro" name="DBUSMENU_SERVER_PROP_STATUS" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-STATUS:CAPS"/> + <keyword type="macro" name="DBUSMENU_SERVER_PROP_TEXT_DIRECTION" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-TEXT-DIRECTION:CAPS"/> + <keyword type="macro" name="DBUSMENU_SERVER_PROP_VERSION" link="libdbusmenu-glib-DbusmenuServer.html#DBUSMENU-SERVER-PROP-VERSION:CAPS"/> + <keyword type="struct" name="DbusmenuServer" link="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer"/> + <keyword type="struct" name="struct DbusmenuServerClass" link="libdbusmenu-glib-DbusmenuServer.html#DbusmenuServerClass"/> + <keyword type="function" name="dbusmenu_server_new ()" link="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-new"/> + <keyword type="function" name="dbusmenu_server_get_status ()" link="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-get-status"/> + <keyword type="function" name="dbusmenu_server_get_text_direction ()" link="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-get-text-direction"/> + <keyword type="function" name="dbusmenu_server_set_root ()" link="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-root"/> + <keyword type="function" name="dbusmenu_server_set_status ()" link="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-status"/> + <keyword type="function" name="dbusmenu_server_set_text_direction ()" link="libdbusmenu-glib-DbusmenuServer.html#dbusmenu-server-set-text-direction"/> + <keyword type="struct" name="DbusmenuMenuitemProxy" link="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxy"/> + <keyword type="struct" name="struct DbusmenuMenuitemProxyClass" link="libdbusmenu-glib-DbusmenuMenuitemProxy.html#DbusmenuMenuitemProxyClass"/> + <keyword type="function" name="dbusmenu_menuitem_proxy_new ()" link="libdbusmenu-glib-DbusmenuMenuitemProxy.html#dbusmenu-menuitem-proxy-new"/> + <keyword type="function" name="dbusmenu_menuitem_proxy_get_wrapped ()" link="libdbusmenu-glib-DbusmenuMenuitemProxy.html#dbusmenu-menuitem-proxy-get-wrapped"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-PROPERTY-CHANGED:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-ITEM-ACTIVATED:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-CHILD-ADDED:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-CHILD-REMOVED:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-CHILD-MOVED:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_SIGNAL_EVENT" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-EVENT:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_SIGNAL_REALIZED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-REALIZED:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_SIGNAL_REALIZED_ID" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-REALIZED-ID:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_SIGNAL_ABOUT_TO_SHOW" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-ABOUT-TO-SHOW:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_SIGNAL_SHOW_TO_USER" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SIGNAL-SHOW-TO-USER:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_PROP_TYPE" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TYPE:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_PROP_VISIBLE" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-VISIBLE:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_PROP_ENABLED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-ENABLED:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_PROP_LABEL" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-LABEL:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_PROP_ICON_NAME" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-ICON-NAME:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_PROP_ICON_DATA" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-ICON-DATA:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_PROP_TOGGLE_STATE" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-CHILD-DISPLAY:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_PROP_SHORTCUT" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_TOGGLE_CHECK" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-CHECK:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_TOGGLE_RADIO" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-RADIO:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-UNCHECKED:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-CHECKED:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_TOGGLE_STATE_UNKNOWN" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-TOGGLE-STATE-UNKNOWN:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_ICON_NAME_BLANK" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-ICON-NAME-BLANK:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-CHILD-DISPLAY-SUBMENU:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_SHORTCUT_ALT" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-ALT:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_SHORTCUT_CONTROL" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-CONTROL:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_SHORTCUT_SHIFT" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-SHIFT:CAPS"/> + <keyword type="macro" name="DBUSMENU_MENUITEM_SHORTCUT_SUPER" link="libdbusmenu-glib-DbusmenuMenuitem.html#DBUSMENU-MENUITEM-SHORTCUT-SUPER:CAPS"/> + <keyword type="struct" name="struct DbusmenuMenuitem" link="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"/> + <keyword type="function" name="dbusmenu_menuitem_about_to_show_cb ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-about-to-show-cb"/> + <keyword type="function" name="dbusmenu_menuitem_buildvariant_slot_t ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-buildvariant-slot-t"/> + <keyword type="struct" name="struct DbusmenuMenuitemClass" link="libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitemClass"/> + <keyword type="function" name="dbusmenu_menuitem_new ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-new"/> + <keyword type="function" name="dbusmenu_menuitem_new_with_id ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-new-with-id"/> + <keyword type="function" name="dbusmenu_menuitem_get_id ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-id"/> + <keyword type="function" name="dbusmenu_menuitem_get_children ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-children"/> + <keyword type="function" name="dbusmenu_menuitem_take_children ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-take-children"/> + <keyword type="function" name="dbusmenu_menuitem_get_position ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-position"/> + <keyword type="function" name="dbusmenu_menuitem_get_position_realized ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-position-realized"/> + <keyword type="function" name="dbusmenu_menuitem_child_append ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-append"/> + <keyword type="function" name="dbusmenu_menuitem_child_prepend ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-prepend"/> + <keyword type="function" name="dbusmenu_menuitem_child_delete ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-delete"/> + <keyword type="function" name="dbusmenu_menuitem_child_add_position ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-add-position"/> + <keyword type="function" name="dbusmenu_menuitem_child_reorder ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-reorder"/> + <keyword type="function" name="dbusmenu_menuitem_child_find ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-child-find"/> + <keyword type="function" name="dbusmenu_menuitem_find_id ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-find-id"/> + <keyword type="function" name="dbusmenu_menuitem_property_set ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set"/> + <keyword type="function" name="dbusmenu_menuitem_property_set_bool ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set-bool"/> + <keyword type="function" name="dbusmenu_menuitem_property_set_int ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set-int"/> + <keyword type="function" name="dbusmenu_menuitem_property_set_variant ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-set-variant"/> + <keyword type="function" name="dbusmenu_menuitem_property_get ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get"/> + <keyword type="function" name="dbusmenu_menuitem_property_get_bool ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get-bool"/> + <keyword type="function" name="dbusmenu_menuitem_property_get_int ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get-int"/> + <keyword type="function" name="dbusmenu_menuitem_property_get_variant ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-get-variant"/> + <keyword type="function" name="dbusmenu_menuitem_property_exist ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-exist"/> + <keyword type="function" name="dbusmenu_menuitem_properties_list ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-properties-list"/> + <keyword type="function" name="dbusmenu_menuitem_properties_copy ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-properties-copy"/> + <keyword type="function" name="dbusmenu_menuitem_property_remove ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-property-remove"/> + <keyword type="function" name="dbusmenu_menuitem_set_root ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-set-root"/> + <keyword type="function" name="dbusmenu_menuitem_get_root ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-root"/> + <keyword type="function" name="dbusmenu_menuitem_foreach ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-foreach"/> + <keyword type="function" name="dbusmenu_menuitem_handle_event ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-handle-event"/> + <keyword type="function" name="dbusmenu_menuitem_send_about_to_show ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-send-about-to-show"/> + <keyword type="function" name="dbusmenu_menuitem_show_to_user ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-show-to-user"/> + <keyword type="function" name="dbusmenu_menuitem_get_parent ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-get-parent"/> + <keyword type="function" name="dbusmenu_menuitem_set_parent ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-set-parent"/> + <keyword type="function" name="dbusmenu_menuitem_unparent ()" link="libdbusmenu-glib-DbusmenuMenuitem.html#dbusmenu-menuitem-unparent"/> + <keyword type="macro" name="DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-LAYOUT-UPDATED:CAPS"/> + <keyword type="macro" name="DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-ROOT-CHANGED:CAPS"/> + <keyword type="macro" name="DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-NEW-MENUITEM:CAPS"/> + <keyword type="macro" name="DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-EVENT-RESULT:CAPS"/> + <keyword type="macro" name="DBUSMENU_CLIENT_SIGNAL_ITEM_ACTIVATE" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-ITEM-ACTIVATE:CAPS"/> + <keyword type="macro" name="DBUSMENU_CLIENT_SIGNAL_ICON_THEME_DIRS_CHANGED" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-SIGNAL-ICON-THEME-DIRS-CHANGED:CAPS"/> + <keyword type="macro" name="DBUSMENU_CLIENT_PROP_DBUS_NAME" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-DBUS-NAME:CAPS"/> + <keyword type="macro" name="DBUSMENU_CLIENT_PROP_DBUS_OBJECT" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-DBUS-OBJECT:CAPS"/> + <keyword type="macro" name="DBUSMENU_CLIENT_PROP_STATUS" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-STATUS:CAPS"/> + <keyword type="macro" name="DBUSMENU_CLIENT_PROP_TEXT_DIRECTION" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-PROP-TEXT-DIRECTION:CAPS"/> + <keyword type="macro" name="DBUSMENU_CLIENT_TYPES_DEFAULT" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-TYPES-DEFAULT:CAPS"/> + <keyword type="macro" name="DBUSMENU_CLIENT_TYPES_SEPARATOR" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-TYPES-SEPARATOR:CAPS"/> + <keyword type="macro" name="DBUSMENU_CLIENT_TYPES_IMAGE" link="libdbusmenu-glib-DbusmenuClient.html#DBUSMENU-CLIENT-TYPES-IMAGE:CAPS"/> + <keyword type="struct" name="DbusmenuClient" link="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient"/> + <keyword type="struct" name="struct DbusmenuClientClass" link="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClientClass"/> + <keyword type="function" name="DbusmenuClientTypeHandler ()" link="libdbusmenu-glib-DbusmenuClient.html#DbusmenuClientTypeHandler"/> + <keyword type="function" name="dbusmenu_client_new ()" link="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-new"/> + <keyword type="function" name="dbusmenu_client_get_icon_paths ()" link="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-icon-paths"/> + <keyword type="function" name="dbusmenu_client_get_root ()" link="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-root"/> + <keyword type="function" name="dbusmenu_client_get_status ()" link="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-status"/> + <keyword type="function" name="dbusmenu_client_get_text_direction ()" link="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-get-text-direction"/> + <keyword type="function" name="dbusmenu_client_add_type_handler ()" link="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-add-type-handler"/> + <keyword type="function" name="dbusmenu_client_add_type_handler_full ()" link="libdbusmenu-glib-DbusmenuClient.html#dbusmenu-client-add-type-handler-full"/> + <keyword type="macro" name="DBUSMENU_TYPE_STATUS" link="libdbusmenu-glib-Types.html#DBUSMENU-TYPE-STATUS:CAPS"/> + <keyword type="macro" name="DBUSMENU_TYPE_TEXT_DIRECTION" link="libdbusmenu-glib-Types.html#DBUSMENU-TYPE-TEXT-DIRECTION:CAPS"/> + <keyword type="enum" name="enum DbusmenuStatus" link="libdbusmenu-glib-Types.html#DbusmenuStatus"/> + <keyword type="enum" name="enum DbusmenuTextDirection" link="libdbusmenu-glib-Types.html#DbusmenuTextDirection"/> + <keyword type="function" name="dbusmenu_status_get_nick ()" link="libdbusmenu-glib-Types.html#dbusmenu-status-get-nick"/> + <keyword type="function" name="dbusmenu_status_get_type ()" link="libdbusmenu-glib-Types.html#dbusmenu-status-get-type"/> + <keyword type="function" name="dbusmenu_status_get_value_from_nick ()" link="libdbusmenu-glib-Types.html#dbusmenu-status-get-value-from-nick"/> + <keyword type="function" name="dbusmenu_text_direction_get_nick ()" link="libdbusmenu-glib-Types.html#dbusmenu-text-direction-get-nick"/> + <keyword type="function" name="dbusmenu_text_direction_get_type ()" link="libdbusmenu-glib-Types.html#dbusmenu-text-direction-get-type"/> + <keyword type="function" name="dbusmenu_text_direction_get_value_from_nick ()" link="libdbusmenu-glib-Types.html#dbusmenu-text-direction-get-value-from-nick"/> + <keyword type="constant" name="DBUSMENU_STATUS_NORMAL" link="libdbusmenu-glib-Types.html#DBUSMENU-STATUS-NORMAL:CAPS"/> + <keyword type="constant" name="DBUSMENU_STATUS_NOTICE" link="libdbusmenu-glib-Types.html#DBUSMENU-STATUS-NOTICE:CAPS"/> + <keyword type="constant" name="DBUSMENU_TEXT_DIRECTION_NONE" link="libdbusmenu-glib-Types.html#DBUSMENU-TEXT-DIRECTION-NONE:CAPS"/> + <keyword type="constant" name="DBUSMENU_TEXT_DIRECTION_LTR" link="libdbusmenu-glib-Types.html#DBUSMENU-TEXT-DIRECTION-LTR:CAPS"/> + <keyword type="constant" name="DBUSMENU_TEXT_DIRECTION_RTL" link="libdbusmenu-glib-Types.html#DBUSMENU-TEXT-DIRECTION-RTL:CAPS"/> + </functions> +</book> diff --git a/docs/libdbusmenu-glib/reference/html/object-tree.html b/docs/libdbusmenu-glib/reference/html/object-tree.html new file mode 100644 index 0000000..6a9e004 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/object-tree.html @@ -0,0 +1,32 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>Object Hierarchy</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="up" href="index.html" title="libdbusmenu-glib Reference Manual"> +<link rel="prev" href="libdbusmenu-glib-Types.html" title="Types"> +<link rel="next" href="api-index-full.html" title="API Index"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"> +<td><a accesskey="p" href="libdbusmenu-glib-Types.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td>Â </td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-glib Reference Manual</th> +<td><a accesskey="n" href="api-index-full.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr></table> +<div class="chapter"> +<div class="titlepage"><div><div><h2 class="title"> +<a name="object-tree"></a>Object Hierarchy</h2></div></div></div> +<pre class="screen"> +</pre> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-glib/reference/html/right.png b/docs/libdbusmenu-glib/reference/html/right.png Binary files differnew file mode 100644 index 0000000..ed55207 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/right.png diff --git a/docs/libdbusmenu-glib/reference/html/style.css b/docs/libdbusmenu-glib/reference/html/style.css new file mode 100644 index 0000000..d6f6c26 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/style.css @@ -0,0 +1,266 @@ +.synopsis, .classsynopsis +{ + /* tango:aluminium 1/2 */ + background: #eeeeec; + border: solid 1px #d3d7cf; + padding: 0.5em; +} +.programlisting +{ + /* tango:sky blue 0/1 */ + background: #e6f3ff; + border: solid 1px #729fcf; + padding: 0.5em; +} +.variablelist +{ + padding: 4px; + margin-left: 3em; +} +.variablelist td:first-child +{ + vertical-align: top; +} + +@media screen { + sup a.footnote + { + position: relative; + top: 0em ! important; + + } + /* this is needed so that the local anchors are displayed below the naviagtion */ + div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name] + { + display: inline-block; + position: relative; + top:-5em; + } + /* this seems to be a bug in the xsl style sheets when generating indexes */ + div.index div.index + { + top: 0em; + } + /* make space for the fixed navigation bar and add space at the bottom so that + * link targets appear somewhat close to top + */ + body + { + padding-top: 3.2em; + padding-bottom: 20em; + } + /* style and size the navigation bar */ + table.navigation#top + { + position: fixed; + /* tango:scarlet red 0/1 */ + background: #ffe6e6; + border: solid 1px #ef2929; + margin-top: 0; + margin-bottom: 0; + top: 0; + left: 0; + height: 3em; + z-index: 10; + } + .navigation a, .navigation a:visited + { + /* tango:scarlet red 3 */ + color: #a40000; + } + .navigation a:hover + { + /* tango:scarlet red 1 */ + color: #ef2929; + } + td.shortcuts + { + /* tango:scarlet red 1 */ + color: #ef2929; + font-size: 80%; + white-space: nowrap; + } +} +@media print { + table.navigation { + visibility: collapse; + display: none; + } + div.titlepage table.navigation { + visibility: visible; + display: table; + /* tango:scarlet red 0/1 */ + background: #ffe6e6; + border: solid 1px #ef2929; + margin-top: 0; + margin-bottom: 0; + top: 0; + left: 0; + height: 3em; + } +} + +.navigation .title +{ + font-size: 200%; +} + +div.gallery-float +{ + float: left; + padding: 10px; +} +div.gallery-float img +{ + border-style: none; +} +div.gallery-spacer +{ + clear: both; +} + +a, a:visited +{ + text-decoration: none; + /* tango:sky blue 2 */ + color: #3465a4; +} +a:hover +{ + text-decoration: underline; + /* tango:sky blue 1 */ + color: #729fcf; +} + +div.table table +{ + border-collapse: collapse; + border-spacing: 0px; + /* tango:aluminium 3 */ + border: solid 1px #babdb6; +} + +div.table table td, div.table table th +{ + /* tango:aluminium 3 */ + border: solid 1px #babdb6; + padding: 3px; + vertical-align: top; +} + +div.table table th +{ + /* tango:aluminium 2 */ + background-color: #d3d7cf; +} + +hr +{ + /* tango:aluminium 3 */ + color: #babdb6; + background: #babdb6; + border: none 0px; + height: 1px; + clear: both; +} + +.footer +{ + padding-top: 3.5em; + /* tango:aluminium 3 */ + color: #babdb6; + text-align: center; + font-size: 80%; +} + +.warning +{ + /* tango:orange 0/1 */ + background: #ffeed9; + border-color: #ffb04f; +} +.note +{ + /* tango:chameleon 0/0.5 */ + background: #d8ffb2; + border-color: #abf562; +} +.note, .warning +{ + padding: 0.5em; + border-width: 1px; + border-style: solid; +} +.note h3, .warning h3 +{ + margin-top: 0.0em +} +.note p, .warning p +{ + margin-bottom: 0.0em +} + +/* blob links */ +h2 .extralinks, h3 .extralinks +{ + float: right; + /* tango:aluminium 3 */ + color: #babdb6; + font-size: 80%; + font-weight: normal; +} + +.annotation +{ + /* tango:aluminium 5 */ + color: #555753; + font-size: 80%; + font-weight: normal; +} + +/* code listings */ + +.listing_code .programlisting .cbracket { color: #a40000; } /* tango: scarlet red 3 */ +.listing_code .programlisting .comment { color: #a1a39d; } /* tango: aluminium 4 */ +.listing_code .programlisting .function { color: #000000; font-weight: bold; } +.listing_code .programlisting .function a { color: #11326b; font-weight: bold; } /* tango: sky blue 4 */ +.listing_code .programlisting .keyword { color: #4e9a06; } /* tango: chameleon 3 */ +.listing_code .programlisting .linenum { color: #babdb6; } /* tango: aluminium 3 */ +.listing_code .programlisting .normal { color: #000000; } +.listing_code .programlisting .number { color: #75507b; } /* tango: plum 2 */ +.listing_code .programlisting .preproc { color: #204a87; } /* tango: sky blue 3 */ +.listing_code .programlisting .string { color: #c17d11; } /* tango: chocolate 2 */ +.listing_code .programlisting .type { color: #000000; } +.listing_code .programlisting .type a { color: #11326b; } /* tango: sky blue 4 */ +.listing_code .programlisting .symbol { color: #ce5c00; } /* tango: orange 3 */ + +.listing_frame { + /* tango:sky blue 1 */ + border: solid 1px #729fcf; + padding: 0px; +} + +.listing_lines, .listing_code { + margin-top: 0px; + margin-bottom: 0px; + padding: 0.5em; +} +.listing_lines { + /* tango:sky blue 0.5 */ + background: #a6c5e3; + /* tango:aluminium 6 */ + color: #2e3436; +} +.listing_code { + /* tango:sky blue 0 */ + background: #e6f3ff; +} +.listing_code .programlisting { + /* override from previous */ + border: none 0px; + padding: 0px; +} +.listing_lines pre, .listing_code pre { + margin: 0px; +} + diff --git a/docs/libdbusmenu-glib/reference/html/up.png b/docs/libdbusmenu-glib/reference/html/up.png Binary files differnew file mode 100644 index 0000000..8eb591f --- /dev/null +++ b/docs/libdbusmenu-glib/reference/html/up.png diff --git a/docs/libdbusmenu-glib/reference/tmpl/client.sgml b/docs/libdbusmenu-glib/reference/tmpl/client.sgml new file mode 100644 index 0000000..76c0d19 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/tmpl/client.sgml @@ -0,0 +1,221 @@ +<!-- ##### SECTION Title ##### --> +DbusmenuClient + +<!-- ##### SECTION Short_Description ##### --> + + +<!-- ##### SECTION Long_Description ##### --> +<para> + +</para> + + +<!-- ##### SECTION See_Also ##### --> +<para> + +</para> + + +<!-- ##### SECTION Stability_Level ##### --> + + +<!-- ##### SECTION Image ##### --> + + +<!-- ##### MACRO DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_CLIENT_SIGNAL_ITEM_ACTIVATE ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_CLIENT_SIGNAL_ICON_THEME_DIRS_CHANGED ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_CLIENT_PROP_DBUS_NAME ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_CLIENT_PROP_DBUS_OBJECT ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_CLIENT_PROP_STATUS ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_CLIENT_PROP_TEXT_DIRECTION ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_CLIENT_TYPES_DEFAULT ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_CLIENT_TYPES_SEPARATOR ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_CLIENT_TYPES_IMAGE ##### --> +<para> + +</para> + + + +<!-- ##### STRUCT DbusmenuClient ##### --> +<para> + +</para> + + +<!-- ##### STRUCT DbusmenuClientClass ##### --> +<para> + +</para> + +@parent_class: +@layout_updated: +@root_changed: +@new_menuitem: +@item_activate: +@event_result: +@icon_theme_dirs: +@reserved1: +@reserved2: +@reserved3: +@reserved4: +@reserved5: + +<!-- ##### USER_FUNCTION DbusmenuClientTypeHandler ##### --> +<para> + +</para> + +@newitem: +@parent: +@client: +@user_data: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_client_new ##### --> +<para> + +</para> + +@name: +@object: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_client_get_icon_paths ##### --> +<para> + +</para> + +@client: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_client_get_root ##### --> +<para> + +</para> + +@client: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_client_get_status ##### --> +<para> + +</para> + +@client: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_client_get_text_direction ##### --> +<para> + +</para> + +@client: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_client_add_type_handler ##### --> +<para> + +</para> + +@client: +@type: +@newfunc: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_client_add_type_handler_full ##### --> +<para> + +</para> + +@client: +@type: +@newfunc: +@user_data: +@destroy_func: +@Returns: + + diff --git a/docs/libdbusmenu-glib/reference/tmpl/libdbusmenu-glib-unused.sgml b/docs/libdbusmenu-glib/reference/tmpl/libdbusmenu-glib-unused.sgml new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/tmpl/libdbusmenu-glib-unused.sgml diff --git a/docs/libdbusmenu-glib/reference/tmpl/menuitem-proxy.sgml b/docs/libdbusmenu-glib/reference/tmpl/menuitem-proxy.sgml new file mode 100644 index 0000000..503c293 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/tmpl/menuitem-proxy.sgml @@ -0,0 +1,59 @@ +<!-- ##### SECTION Title ##### --> +DbusmenuMenuitemProxy + +<!-- ##### SECTION Short_Description ##### --> + + +<!-- ##### SECTION Long_Description ##### --> +<para> + +</para> + + +<!-- ##### SECTION See_Also ##### --> +<para> + +</para> + + +<!-- ##### SECTION Stability_Level ##### --> + + +<!-- ##### SECTION Image ##### --> + + +<!-- ##### STRUCT DbusmenuMenuitemProxy ##### --> +<para> + +</para> + + +<!-- ##### STRUCT DbusmenuMenuitemProxyClass ##### --> +<para> + +</para> + +@parent_class: +@reserved1: +@reserved2: +@reserved3: +@reserved4: + +<!-- ##### FUNCTION dbusmenu_menuitem_proxy_new ##### --> +<para> + +</para> + +@mi: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_proxy_get_wrapped ##### --> +<para> + +</para> + +@pmi: +@Returns: + + diff --git a/docs/libdbusmenu-glib/reference/tmpl/menuitem.sgml b/docs/libdbusmenu-glib/reference/tmpl/menuitem.sgml new file mode 100644 index 0000000..c45f2c9 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/tmpl/menuitem.sgml @@ -0,0 +1,635 @@ +<!-- ##### SECTION Title ##### --> +DbusmenuMenuitem + +<!-- ##### SECTION Short_Description ##### --> + + +<!-- ##### SECTION Long_Description ##### --> +<para> + +</para> + + +<!-- ##### SECTION See_Also ##### --> +<para> + +</para> + + +<!-- ##### SECTION Stability_Level ##### --> + + +<!-- ##### SECTION Image ##### --> + + +<!-- ##### MACRO DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_SIGNAL_EVENT ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_SIGNAL_REALIZED ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_SIGNAL_REALIZED_ID ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_SIGNAL_ABOUT_TO_SHOW ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_SIGNAL_SHOW_TO_USER ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_PROP_TYPE ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_PROP_VISIBLE ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_PROP_ENABLED ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_PROP_LABEL ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_PROP_ICON_NAME ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_PROP_ICON_DATA ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_PROP_TOGGLE_STATE ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_PROP_SHORTCUT ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_TOGGLE_CHECK ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_TOGGLE_RADIO ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_TOGGLE_STATE_UNKNOWN ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_ICON_NAME_BLANK ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_SHORTCUT_ALT ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_SHORTCUT_CONTROL ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_SHORTCUT_SHIFT ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_MENUITEM_SHORTCUT_SUPER ##### --> +<para> + +</para> + + + +<!-- ##### STRUCT DbusmenuMenuitem ##### --> +<para> + +</para> + +@parent: +@priv: + +<!-- ##### USER_FUNCTION dbusmenu_menuitem_about_to_show_cb ##### --> +<para> + +</para> + +@mi: +@user_data: + + +<!-- ##### USER_FUNCTION dbusmenu_menuitem_buildvariant_slot_t ##### --> +<para> + +</para> + +@mi: +@properties: +@Returns: + + +<!-- ##### STRUCT DbusmenuMenuitemClass ##### --> +<para> + +</para> + +@parent_class: +@property_changed: +@item_activated: +@child_added: +@child_removed: +@child_moved: +@realized: +@buildvariant: +@handle_event: +@show_to_user: +@about_to_show: +@event: +@reserved1: +@reserved2: +@reserved3: +@reserved4: +@reserved5: + +<!-- ##### FUNCTION dbusmenu_menuitem_new ##### --> +<para> + +</para> + +@void: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_new_with_id ##### --> +<para> + +</para> + +@id: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_get_id ##### --> +<para> + +</para> + +@mi: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_get_children ##### --> +<para> + +</para> + +@mi: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_take_children ##### --> +<para> + +</para> + +@mi: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_get_position ##### --> +<para> + +</para> + +@mi: +@parent: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_get_position_realized ##### --> +<para> + +</para> + +@mi: +@parent: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_child_append ##### --> +<para> + +</para> + +@mi: +@child: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_child_prepend ##### --> +<para> + +</para> + +@mi: +@child: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_child_delete ##### --> +<para> + +</para> + +@mi: +@child: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_child_add_position ##### --> +<para> + +</para> + +@mi: +@child: +@position: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_child_reorder ##### --> +<para> + +</para> + +@mi: +@child: +@position: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_child_find ##### --> +<para> + +</para> + +@mi: +@id: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_find_id ##### --> +<para> + +</para> + +@mi: +@id: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_set ##### --> +<para> + +</para> + +@mi: +@property: +@value: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_set_bool ##### --> +<para> + +</para> + +@mi: +@property: +@value: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_set_int ##### --> +<para> + +</para> + +@mi: +@property: +@value: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_set_variant ##### --> +<para> + +</para> + +@mi: +@property: +@value: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_get ##### --> +<para> + +</para> + +@mi: +@property: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_get_bool ##### --> +<para> + +</para> + +@mi: +@property: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_get_int ##### --> +<para> + +</para> + +@mi: +@property: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_get_variant ##### --> +<para> + +</para> + +@mi: +@property: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_exist ##### --> +<para> + +</para> + +@mi: +@property: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_properties_list ##### --> +<para> + +</para> + +@mi: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_properties_copy ##### --> +<para> + +</para> + +@mi: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_remove ##### --> +<para> + +</para> + +@mi: +@property: + + +<!-- ##### FUNCTION dbusmenu_menuitem_set_root ##### --> +<para> + +</para> + +@mi: +@root: + + +<!-- ##### FUNCTION dbusmenu_menuitem_get_root ##### --> +<para> + +</para> + +@mi: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_foreach ##### --> +<para> + +</para> + +@mi: +@func: +@data: + + +<!-- ##### FUNCTION dbusmenu_menuitem_handle_event ##### --> +<para> + +</para> + +@mi: +@name: +@variant: +@timestamp: + + +<!-- ##### FUNCTION dbusmenu_menuitem_send_about_to_show ##### --> +<para> + +</para> + +@mi: +@cb: +@cb_data: + + +<!-- ##### FUNCTION dbusmenu_menuitem_show_to_user ##### --> +<para> + +</para> + +@mi: +@timestamp: + + +<!-- ##### FUNCTION dbusmenu_menuitem_get_parent ##### --> +<para> + +</para> + +@mi: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_set_parent ##### --> +<para> + +</para> + +@mi: +@parent: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_unparent ##### --> +<para> + +</para> + +@mi: +@Returns: + + diff --git a/docs/libdbusmenu-glib/reference/tmpl/server.sgml b/docs/libdbusmenu-glib/reference/tmpl/server.sgml new file mode 100644 index 0000000..ca9c51e --- /dev/null +++ b/docs/libdbusmenu-glib/reference/tmpl/server.sgml @@ -0,0 +1,171 @@ +<!-- ##### SECTION Title ##### --> +DbusmenuServer + +<!-- ##### SECTION Short_Description ##### --> + + +<!-- ##### SECTION Long_Description ##### --> +<para> + +</para> + + +<!-- ##### SECTION See_Also ##### --> +<para> + +</para> + + +<!-- ##### SECTION Stability_Level ##### --> + + +<!-- ##### SECTION Image ##### --> + + +<!-- ##### MACRO DBUSMENU_SERVER_SIGNAL_ID_PROP_UPDATE ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_SERVER_SIGNAL_ID_UPDATE ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATE ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_SERVER_SIGNAL_ITEM_ACTIVATION ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_SERVER_PROP_DBUS_OBJECT ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_SERVER_PROP_ROOT_NODE ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_SERVER_PROP_STATUS ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_SERVER_PROP_TEXT_DIRECTION ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_SERVER_PROP_VERSION ##### --> +<para> + +</para> + + + +<!-- ##### STRUCT DbusmenuServer ##### --> +<para> + +</para> + + +<!-- ##### STRUCT DbusmenuServerClass ##### --> +<para> + +</para> + +@parent_class: +@id_prop_update: +@id_update: +@layout_updated: +@item_activation: +@reserved1: +@reserved2: +@reserved3: +@reserved4: +@reserved5: +@reserved6: + +<!-- ##### FUNCTION dbusmenu_server_new ##### --> +<para> + +</para> + +@object: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_server_get_status ##### --> +<para> + +</para> + +@server: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_server_get_text_direction ##### --> +<para> + +</para> + +@server: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_server_set_root ##### --> +<para> + +</para> + +@self: +@root: + + +<!-- ##### FUNCTION dbusmenu_server_set_status ##### --> +<para> + +</para> + +@server: +@status: + + +<!-- ##### FUNCTION dbusmenu_server_set_text_direction ##### --> +<para> + +</para> + +@server: +@dir: + + diff --git a/docs/libdbusmenu-glib/reference/tmpl/types.sgml b/docs/libdbusmenu-glib/reference/tmpl/types.sgml new file mode 100644 index 0000000..8a5e419 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/tmpl/types.sgml @@ -0,0 +1,109 @@ +<!-- ##### SECTION Title ##### --> +Types + +<!-- ##### SECTION Short_Description ##### --> + + +<!-- ##### SECTION Long_Description ##### --> +<para> + +</para> + + +<!-- ##### SECTION See_Also ##### --> +<para> + +</para> + + +<!-- ##### SECTION Stability_Level ##### --> + + +<!-- ##### SECTION Image ##### --> + + +<!-- ##### MACRO DBUSMENU_TYPE_STATUS ##### --> +<para> + +</para> + + + +<!-- ##### MACRO DBUSMENU_TYPE_TEXT_DIRECTION ##### --> +<para> + +</para> + + + +<!-- ##### ENUM DbusmenuStatus ##### --> +<para> + +</para> + +@DBUSMENU_STATUS_NORMAL: +@DBUSMENU_STATUS_NOTICE: + +<!-- ##### ENUM DbusmenuTextDirection ##### --> +<para> + +</para> + +@DBUSMENU_TEXT_DIRECTION_NONE: +@DBUSMENU_TEXT_DIRECTION_LTR: +@DBUSMENU_TEXT_DIRECTION_RTL: + +<!-- ##### FUNCTION dbusmenu_status_get_nick ##### --> +<para> + +</para> + +@value: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_status_get_type ##### --> +<para> + +</para> + +@void: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_status_get_value_from_nick ##### --> +<para> + +</para> + +@nick: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_text_direction_get_nick ##### --> +<para> + +</para> + +@value: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_text_direction_get_type ##### --> +<para> + +</para> + +@void: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_text_direction_get_value_from_nick ##### --> +<para> + +</para> + +@nick: +@Returns: + + diff --git a/docs/libdbusmenu-glib/reference/version.xml b/docs/libdbusmenu-glib/reference/version.xml index 72280e8..1dd7a93 100644 --- a/docs/libdbusmenu-glib/reference/version.xml +++ b/docs/libdbusmenu-glib/reference/version.xml @@ -1 +1 @@ -0.3.100 +0.3.101 diff --git a/docs/libdbusmenu-glib/reference/xml/annotation-glossary.xml b/docs/libdbusmenu-glib/reference/xml/annotation-glossary.xml new file mode 100644 index 0000000..1b466fb --- /dev/null +++ b/docs/libdbusmenu-glib/reference/xml/annotation-glossary.xml @@ -0,0 +1,72 @@ +<?xml version="1.0"?> +<!DOCTYPE glossary PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> + +<glossary id="annotation-glossary"> + <title>Annotation Glossary</title> +<glossdiv><title>A</title> + <glossentry> + <glossterm><anchor id="annotation-glossterm-allow-none"/>allow-none</glossterm> + <glossdef> + <para>NULL is ok, both for passing and for returning.</para> + </glossdef> + </glossentry> +</glossdiv> +<glossdiv><title>C</title> + <glossentry> + <glossterm><anchor id="annotation-glossterm-closure"/>closure</glossterm> + <glossdef> + <para>This parameter is a 'user_data', for callbacks; many bindings can pass NULL here.</para> + </glossdef> + </glossentry> +</glossdiv> +<glossdiv><title>T</title> + <glossentry> + <glossterm><anchor id="annotation-glossterm-transfer none"/>transfer none</glossterm> + <glossdef> + <para>Don't free data after the code is done.</para> + </glossdef> + </glossentry> +</glossdiv> +<glossdiv><title>E</title> + <glossentry> + <glossterm><anchor id="annotation-glossterm-element-type"/>element-type</glossterm> + <glossdef> + <para>Generics and defining elements of containers and arrays.</para> + </glossdef> + </glossentry> +</glossdiv> +<glossdiv><title>I</title> + <glossentry> + <glossterm><anchor id="annotation-glossterm-in"/>in</glossterm> + <glossdef> + <para>Parameter for input. Default is <acronym>transfer none</acronym>.</para> + </glossdef> + </glossentry> +</glossdiv> +<glossdiv><title>T</title> + <glossentry> + <glossterm><anchor id="annotation-glossterm-transfer container"/>transfer container</glossterm> + <glossdef> + <para>Free data container after the code is done.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><anchor id="annotation-glossterm-transfer full"/>transfer full</glossterm> + <glossdef> + <para>Free data after the code is done.</para> + </glossdef> + </glossentry> +</glossdiv> +<glossdiv><title>S</title> + <glossentry> + <glossterm><anchor id="annotation-glossterm-scope notified"/>scope notified</glossterm> + <glossdef> + <para>The callback is valid until the GDestroyNotify argument is called.</para> + </glossdef> + </glossentry> +</glossdiv> +</glossary> diff --git a/docs/libdbusmenu-glib/reference/xml/api-index-deprecated.xml b/docs/libdbusmenu-glib/reference/xml/api-index-deprecated.xml new file mode 100644 index 0000000..8ec0fe4 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/xml/api-index-deprecated.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<!DOCTYPE indexdiv PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> +<indexdiv> +</indexdiv> diff --git a/docs/libdbusmenu-glib/reference/xml/api-index-full.xml b/docs/libdbusmenu-glib/reference/xml/api-index-full.xml new file mode 100644 index 0000000..08fd7fa --- /dev/null +++ b/docs/libdbusmenu-glib/reference/xml/api-index-full.xml @@ -0,0 +1,141 @@ +<?xml version="1.0"?> +<!DOCTYPE indexdiv PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> +<indexdiv> +<indexdiv><title>C</title> +<indexentry><primaryie linkends="DbusmenuClient"><link linkend="DbusmenuClient">DbusmenuClient</link>, struct in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DbusmenuClientClass"><link linkend="DbusmenuClientClass">DbusmenuClientClass</link>, struct in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DbusmenuClientTypeHandler"><link linkend="DbusmenuClientTypeHandler">DbusmenuClientTypeHandler</link>, user_function in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-client-add-type-handler"><link linkend="dbusmenu-client-add-type-handler">dbusmenu_client_add_type_handler</link>, function in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-client-add-type-handler-full"><link linkend="dbusmenu-client-add-type-handler-full">dbusmenu_client_add_type_handler_full</link>, function in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-client-get-icon-paths"><link linkend="dbusmenu-client-get-icon-paths">dbusmenu_client_get_icon_paths</link>, function in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-client-get-root"><link linkend="dbusmenu-client-get-root">dbusmenu_client_get_root</link>, function in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-client-get-status"><link linkend="dbusmenu-client-get-status">dbusmenu_client_get_status</link>, function in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-client-get-text-direction"><link linkend="dbusmenu-client-get-text-direction">dbusmenu_client_get_text_direction</link>, function in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-client-new"><link linkend="dbusmenu-client-new">dbusmenu_client_new</link>, function in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-CLIENT-PROP-DBUS-NAME:CAPS"><link linkend="DBUSMENU-CLIENT-PROP-DBUS-NAME:CAPS">DBUSMENU_CLIENT_PROP_DBUS_NAME</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-CLIENT-PROP-DBUS-OBJECT:CAPS"><link linkend="DBUSMENU-CLIENT-PROP-DBUS-OBJECT:CAPS">DBUSMENU_CLIENT_PROP_DBUS_OBJECT</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-CLIENT-PROP-STATUS:CAPS"><link linkend="DBUSMENU-CLIENT-PROP-STATUS:CAPS">DBUSMENU_CLIENT_PROP_STATUS</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-CLIENT-PROP-TEXT-DIRECTION:CAPS"><link linkend="DBUSMENU-CLIENT-PROP-TEXT-DIRECTION:CAPS">DBUSMENU_CLIENT_PROP_TEXT_DIRECTION</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-CLIENT-SIGNAL-EVENT-RESULT:CAPS"><link linkend="DBUSMENU-CLIENT-SIGNAL-EVENT-RESULT:CAPS">DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-CLIENT-SIGNAL-ICON-THEME-DIRS-CHANGED:CAPS"><link linkend="DBUSMENU-CLIENT-SIGNAL-ICON-THEME-DIRS-CHANGED:CAPS">DBUSMENU_CLIENT_SIGNAL_ICON_THEME_DIRS_CHANGED</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-CLIENT-SIGNAL-ITEM-ACTIVATE:CAPS"><link linkend="DBUSMENU-CLIENT-SIGNAL-ITEM-ACTIVATE:CAPS">DBUSMENU_CLIENT_SIGNAL_ITEM_ACTIVATE</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-CLIENT-SIGNAL-LAYOUT-UPDATED:CAPS"><link linkend="DBUSMENU-CLIENT-SIGNAL-LAYOUT-UPDATED:CAPS">DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-CLIENT-SIGNAL-NEW-MENUITEM:CAPS"><link linkend="DBUSMENU-CLIENT-SIGNAL-NEW-MENUITEM:CAPS">DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-CLIENT-SIGNAL-ROOT-CHANGED:CAPS"><link linkend="DBUSMENU-CLIENT-SIGNAL-ROOT-CHANGED:CAPS">DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-CLIENT-TYPES-DEFAULT:CAPS"><link linkend="DBUSMENU-CLIENT-TYPES-DEFAULT:CAPS">DBUSMENU_CLIENT_TYPES_DEFAULT</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-CLIENT-TYPES-IMAGE:CAPS"><link linkend="DBUSMENU-CLIENT-TYPES-IMAGE:CAPS">DBUSMENU_CLIENT_TYPES_IMAGE</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-CLIENT-TYPES-SEPARATOR:CAPS"><link linkend="DBUSMENU-CLIENT-TYPES-SEPARATOR:CAPS">DBUSMENU_CLIENT_TYPES_SEPARATOR</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuClient">DbusmenuClient</link></primaryie></indexentry> +</indexdiv> +<indexdiv><title>M</title> +<indexentry><primaryie linkends="DbusmenuMenuitem"><link linkend="DbusmenuMenuitem">DbusmenuMenuitem</link>, struct in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DbusmenuMenuitemClass"><link linkend="DbusmenuMenuitemClass">DbusmenuMenuitemClass</link>, struct in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DbusmenuMenuitemProxy"><link linkend="DbusmenuMenuitemProxy">DbusmenuMenuitemProxy</link>, struct in <link linkend="libdbusmenu-glib-DbusmenuMenuitemProxy">DbusmenuMenuitemProxy</link></primaryie></indexentry> +<indexentry><primaryie linkends="DbusmenuMenuitemProxyClass"><link linkend="DbusmenuMenuitemProxyClass">DbusmenuMenuitemProxyClass</link>, struct in <link linkend="libdbusmenu-glib-DbusmenuMenuitemProxy">DbusmenuMenuitemProxy</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-about-to-show-cb"><link linkend="dbusmenu-menuitem-about-to-show-cb">dbusmenu_menuitem_about_to_show_cb</link>, user_function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-buildvariant-slot-t"><link linkend="dbusmenu-menuitem-buildvariant-slot-t">dbusmenu_menuitem_buildvariant_slot_t</link>, user_function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-child-add-position"><link linkend="dbusmenu-menuitem-child-add-position">dbusmenu_menuitem_child_add_position</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-child-append"><link linkend="dbusmenu-menuitem-child-append">dbusmenu_menuitem_child_append</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-child-delete"><link linkend="dbusmenu-menuitem-child-delete">dbusmenu_menuitem_child_delete</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-CHILD-DISPLAY-SUBMENU:CAPS"><link linkend="DBUSMENU-MENUITEM-CHILD-DISPLAY-SUBMENU:CAPS">DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-child-find"><link linkend="dbusmenu-menuitem-child-find">dbusmenu_menuitem_child_find</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-child-prepend"><link linkend="dbusmenu-menuitem-child-prepend">dbusmenu_menuitem_child_prepend</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-child-reorder"><link linkend="dbusmenu-menuitem-child-reorder">dbusmenu_menuitem_child_reorder</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-find-id"><link linkend="dbusmenu-menuitem-find-id">dbusmenu_menuitem_find_id</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-foreach"><link linkend="dbusmenu-menuitem-foreach">dbusmenu_menuitem_foreach</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-get-children"><link linkend="dbusmenu-menuitem-get-children">dbusmenu_menuitem_get_children</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-get-id"><link linkend="dbusmenu-menuitem-get-id">dbusmenu_menuitem_get_id</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-get-parent"><link linkend="dbusmenu-menuitem-get-parent">dbusmenu_menuitem_get_parent</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-get-position"><link linkend="dbusmenu-menuitem-get-position">dbusmenu_menuitem_get_position</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-get-position-realized"><link linkend="dbusmenu-menuitem-get-position-realized">dbusmenu_menuitem_get_position_realized</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-get-root"><link linkend="dbusmenu-menuitem-get-root">dbusmenu_menuitem_get_root</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-handle-event"><link linkend="dbusmenu-menuitem-handle-event">dbusmenu_menuitem_handle_event</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-ICON-NAME-BLANK:CAPS"><link linkend="DBUSMENU-MENUITEM-ICON-NAME-BLANK:CAPS">DBUSMENU_MENUITEM_ICON_NAME_BLANK</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-new"><link linkend="dbusmenu-menuitem-new">dbusmenu_menuitem_new</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-new-with-id"><link linkend="dbusmenu-menuitem-new-with-id">dbusmenu_menuitem_new_with_id</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-properties-copy"><link linkend="dbusmenu-menuitem-properties-copy">dbusmenu_menuitem_properties_copy</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-properties-list"><link linkend="dbusmenu-menuitem-properties-list">dbusmenu_menuitem_properties_list</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-exist"><link linkend="dbusmenu-menuitem-property-exist">dbusmenu_menuitem_property_exist</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-get"><link linkend="dbusmenu-menuitem-property-get">dbusmenu_menuitem_property_get</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-get-bool"><link linkend="dbusmenu-menuitem-property-get-bool">dbusmenu_menuitem_property_get_bool</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-get-int"><link linkend="dbusmenu-menuitem-property-get-int">dbusmenu_menuitem_property_get_int</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-get-variant"><link linkend="dbusmenu-menuitem-property-get-variant">dbusmenu_menuitem_property_get_variant</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-remove"><link linkend="dbusmenu-menuitem-property-remove">dbusmenu_menuitem_property_remove</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-set"><link linkend="dbusmenu-menuitem-property-set">dbusmenu_menuitem_property_set</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-set-bool"><link linkend="dbusmenu-menuitem-property-set-bool">dbusmenu_menuitem_property_set_bool</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-set-int"><link linkend="dbusmenu-menuitem-property-set-int">dbusmenu_menuitem_property_set_int</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-set-variant"><link linkend="dbusmenu-menuitem-property-set-variant">dbusmenu_menuitem_property_set_variant</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-PROP-CHILD-DISPLAY:CAPS"><link linkend="DBUSMENU-MENUITEM-PROP-CHILD-DISPLAY:CAPS">DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-PROP-ENABLED:CAPS"><link linkend="DBUSMENU-MENUITEM-PROP-ENABLED:CAPS">DBUSMENU_MENUITEM_PROP_ENABLED</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-PROP-ICON-DATA:CAPS"><link linkend="DBUSMENU-MENUITEM-PROP-ICON-DATA:CAPS">DBUSMENU_MENUITEM_PROP_ICON_DATA</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-PROP-ICON-NAME:CAPS"><link linkend="DBUSMENU-MENUITEM-PROP-ICON-NAME:CAPS">DBUSMENU_MENUITEM_PROP_ICON_NAME</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-PROP-LABEL:CAPS"><link linkend="DBUSMENU-MENUITEM-PROP-LABEL:CAPS">DBUSMENU_MENUITEM_PROP_LABEL</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS"><link linkend="DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS">DBUSMENU_MENUITEM_PROP_SHORTCUT</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS"><link linkend="DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS">DBUSMENU_MENUITEM_PROP_TOGGLE_STATE</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS"><link linkend="DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS">DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-PROP-TYPE:CAPS"><link linkend="DBUSMENU-MENUITEM-PROP-TYPE:CAPS">DBUSMENU_MENUITEM_PROP_TYPE</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-PROP-VISIBLE:CAPS"><link linkend="DBUSMENU-MENUITEM-PROP-VISIBLE:CAPS">DBUSMENU_MENUITEM_PROP_VISIBLE</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-proxy-get-wrapped"><link linkend="dbusmenu-menuitem-proxy-get-wrapped">dbusmenu_menuitem_proxy_get_wrapped</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitemProxy">DbusmenuMenuitemProxy</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-proxy-new"><link linkend="dbusmenu-menuitem-proxy-new">dbusmenu_menuitem_proxy_new</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitemProxy">DbusmenuMenuitemProxy</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-send-about-to-show"><link linkend="dbusmenu-menuitem-send-about-to-show">dbusmenu_menuitem_send_about_to_show</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-set-parent"><link linkend="dbusmenu-menuitem-set-parent">dbusmenu_menuitem_set_parent</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-set-root"><link linkend="dbusmenu-menuitem-set-root">dbusmenu_menuitem_set_root</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-SHORTCUT-ALT:CAPS"><link linkend="DBUSMENU-MENUITEM-SHORTCUT-ALT:CAPS">DBUSMENU_MENUITEM_SHORTCUT_ALT</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-SHORTCUT-CONTROL:CAPS"><link linkend="DBUSMENU-MENUITEM-SHORTCUT-CONTROL:CAPS">DBUSMENU_MENUITEM_SHORTCUT_CONTROL</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-SHORTCUT-SHIFT:CAPS"><link linkend="DBUSMENU-MENUITEM-SHORTCUT-SHIFT:CAPS">DBUSMENU_MENUITEM_SHORTCUT_SHIFT</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-SHORTCUT-SUPER:CAPS"><link linkend="DBUSMENU-MENUITEM-SHORTCUT-SUPER:CAPS">DBUSMENU_MENUITEM_SHORTCUT_SUPER</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-show-to-user"><link linkend="dbusmenu-menuitem-show-to-user">dbusmenu_menuitem_show_to_user</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-SIGNAL-ABOUT-TO-SHOW:CAPS"><link linkend="DBUSMENU-MENUITEM-SIGNAL-ABOUT-TO-SHOW:CAPS">DBUSMENU_MENUITEM_SIGNAL_ABOUT_TO_SHOW</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-SIGNAL-CHILD-ADDED:CAPS"><link linkend="DBUSMENU-MENUITEM-SIGNAL-CHILD-ADDED:CAPS">DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-SIGNAL-CHILD-MOVED:CAPS"><link linkend="DBUSMENU-MENUITEM-SIGNAL-CHILD-MOVED:CAPS">DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-SIGNAL-CHILD-REMOVED:CAPS"><link linkend="DBUSMENU-MENUITEM-SIGNAL-CHILD-REMOVED:CAPS">DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-SIGNAL-EVENT:CAPS"><link linkend="DBUSMENU-MENUITEM-SIGNAL-EVENT:CAPS">DBUSMENU_MENUITEM_SIGNAL_EVENT</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-SIGNAL-ITEM-ACTIVATED:CAPS"><link linkend="DBUSMENU-MENUITEM-SIGNAL-ITEM-ACTIVATED:CAPS">DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-SIGNAL-PROPERTY-CHANGED:CAPS"><link linkend="DBUSMENU-MENUITEM-SIGNAL-PROPERTY-CHANGED:CAPS">DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-SIGNAL-REALIZED:CAPS"><link linkend="DBUSMENU-MENUITEM-SIGNAL-REALIZED:CAPS">DBUSMENU_MENUITEM_SIGNAL_REALIZED</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-SIGNAL-REALIZED-ID:CAPS"><link linkend="DBUSMENU-MENUITEM-SIGNAL-REALIZED-ID:CAPS">DBUSMENU_MENUITEM_SIGNAL_REALIZED_ID</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-SIGNAL-SHOW-TO-USER:CAPS"><link linkend="DBUSMENU-MENUITEM-SIGNAL-SHOW-TO-USER:CAPS">DBUSMENU_MENUITEM_SIGNAL_SHOW_TO_USER</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-take-children"><link linkend="dbusmenu-menuitem-take-children">dbusmenu_menuitem_take_children</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-TOGGLE-CHECK:CAPS"><link linkend="DBUSMENU-MENUITEM-TOGGLE-CHECK:CAPS">DBUSMENU_MENUITEM_TOGGLE_CHECK</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-TOGGLE-RADIO:CAPS"><link linkend="DBUSMENU-MENUITEM-TOGGLE-RADIO:CAPS">DBUSMENU_MENUITEM_TOGGLE_RADIO</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-TOGGLE-STATE-CHECKED:CAPS"><link linkend="DBUSMENU-MENUITEM-TOGGLE-STATE-CHECKED:CAPS">DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-TOGGLE-STATE-UNCHECKED:CAPS"><link linkend="DBUSMENU-MENUITEM-TOGGLE-STATE-UNCHECKED:CAPS">DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-MENUITEM-TOGGLE-STATE-UNKNOWN:CAPS"><link linkend="DBUSMENU-MENUITEM-TOGGLE-STATE-UNKNOWN:CAPS">DBUSMENU_MENUITEM_TOGGLE_STATE_UNKNOWN</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-unparent"><link linkend="dbusmenu-menuitem-unparent">dbusmenu_menuitem_unparent</link>, function in <link linkend="libdbusmenu-glib-DbusmenuMenuitem">DbusmenuMenuitem</link></primaryie></indexentry> +</indexdiv> +<indexdiv><title>S</title> +<indexentry><primaryie linkends="DbusmenuServer"><link linkend="DbusmenuServer">DbusmenuServer</link>, struct in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="DbusmenuServerClass"><link linkend="DbusmenuServerClass">DbusmenuServerClass</link>, struct in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-server-get-status"><link linkend="dbusmenu-server-get-status">dbusmenu_server_get_status</link>, function in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-server-get-text-direction"><link linkend="dbusmenu-server-get-text-direction">dbusmenu_server_get_text_direction</link>, function in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-server-new"><link linkend="dbusmenu-server-new">dbusmenu_server_new</link>, function in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-SERVER-PROP-DBUS-OBJECT:CAPS"><link linkend="DBUSMENU-SERVER-PROP-DBUS-OBJECT:CAPS">DBUSMENU_SERVER_PROP_DBUS_OBJECT</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-SERVER-PROP-ROOT-NODE:CAPS"><link linkend="DBUSMENU-SERVER-PROP-ROOT-NODE:CAPS">DBUSMENU_SERVER_PROP_ROOT_NODE</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-SERVER-PROP-STATUS:CAPS"><link linkend="DBUSMENU-SERVER-PROP-STATUS:CAPS">DBUSMENU_SERVER_PROP_STATUS</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-SERVER-PROP-TEXT-DIRECTION:CAPS"><link linkend="DBUSMENU-SERVER-PROP-TEXT-DIRECTION:CAPS">DBUSMENU_SERVER_PROP_TEXT_DIRECTION</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-SERVER-PROP-VERSION:CAPS"><link linkend="DBUSMENU-SERVER-PROP-VERSION:CAPS">DBUSMENU_SERVER_PROP_VERSION</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-server-set-root"><link linkend="dbusmenu-server-set-root">dbusmenu_server_set_root</link>, function in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-server-set-status"><link linkend="dbusmenu-server-set-status">dbusmenu_server_set_status</link>, function in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-server-set-text-direction"><link linkend="dbusmenu-server-set-text-direction">dbusmenu_server_set_text_direction</link>, function in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-SERVER-SIGNAL-ID-PROP-UPDATE:CAPS"><link linkend="DBUSMENU-SERVER-SIGNAL-ID-PROP-UPDATE:CAPS">DBUSMENU_SERVER_SIGNAL_ID_PROP_UPDATE</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-SERVER-SIGNAL-ID-UPDATE:CAPS"><link linkend="DBUSMENU-SERVER-SIGNAL-ID-UPDATE:CAPS">DBUSMENU_SERVER_SIGNAL_ID_UPDATE</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-SERVER-SIGNAL-ITEM-ACTIVATION:CAPS"><link linkend="DBUSMENU-SERVER-SIGNAL-ITEM-ACTIVATION:CAPS">DBUSMENU_SERVER_SIGNAL_ITEM_ACTIVATION</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATE:CAPS"><link linkend="DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATE:CAPS">DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATE</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATED:CAPS"><link linkend="DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATED:CAPS">DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED</link>, macro in <link linkend="libdbusmenu-glib-DbusmenuServer">DbusmenuServer</link></primaryie></indexentry> +<indexentry><primaryie linkends="DbusmenuStatus"><link linkend="DbusmenuStatus">DbusmenuStatus</link>, enum in <link linkend="libdbusmenu-glib-Types">Types</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-status-get-nick"><link linkend="dbusmenu-status-get-nick">dbusmenu_status_get_nick</link>, function in <link linkend="libdbusmenu-glib-Types">Types</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-status-get-type"><link linkend="dbusmenu-status-get-type">dbusmenu_status_get_type</link>, function in <link linkend="libdbusmenu-glib-Types">Types</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-status-get-value-from-nick"><link linkend="dbusmenu-status-get-value-from-nick">dbusmenu_status_get_value_from_nick</link>, function in <link linkend="libdbusmenu-glib-Types">Types</link></primaryie></indexentry> +</indexdiv> +<indexdiv><title>T</title> +<indexentry><primaryie linkends="DbusmenuTextDirection"><link linkend="DbusmenuTextDirection">DbusmenuTextDirection</link>, enum in <link linkend="libdbusmenu-glib-Types">Types</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-text-direction-get-nick"><link linkend="dbusmenu-text-direction-get-nick">dbusmenu_text_direction_get_nick</link>, function in <link linkend="libdbusmenu-glib-Types">Types</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-text-direction-get-type"><link linkend="dbusmenu-text-direction-get-type">dbusmenu_text_direction_get_type</link>, function in <link linkend="libdbusmenu-glib-Types">Types</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-text-direction-get-value-from-nick"><link linkend="dbusmenu-text-direction-get-value-from-nick">dbusmenu_text_direction_get_value_from_nick</link>, function in <link linkend="libdbusmenu-glib-Types">Types</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-TYPE-STATUS:CAPS"><link linkend="DBUSMENU-TYPE-STATUS:CAPS">DBUSMENU_TYPE_STATUS</link>, macro in <link linkend="libdbusmenu-glib-Types">Types</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-TYPE-TEXT-DIRECTION:CAPS"><link linkend="DBUSMENU-TYPE-TEXT-DIRECTION:CAPS">DBUSMENU_TYPE_TEXT_DIRECTION</link>, macro in <link linkend="libdbusmenu-glib-Types">Types</link></primaryie></indexentry> +</indexdiv> +</indexdiv> diff --git a/docs/libdbusmenu-glib/reference/xml/client.xml b/docs/libdbusmenu-glib/reference/xml/client.xml new file mode 100644 index 0000000..c5f55a5 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/xml/client.xml @@ -0,0 +1,439 @@ +<?xml version="1.0"?> +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> +<refentry id="libdbusmenu-glib-DbusmenuClient"> +<refmeta> +<refentrytitle role="top_of_page" id="libdbusmenu-glib-DbusmenuClient.top_of_page">DbusmenuClient</refentrytitle> +<manvolnum>3</manvolnum> +<refmiscinfo> + LIBDBUSMENU-GLIB Library +</refmiscinfo> +</refmeta> +<refnamediv> +<refname>DbusmenuClient</refname> +<refpurpose>The catcher of all the server traffic</refpurpose> +</refnamediv> +<refsect1 id="libdbusmenu-glib-DbusmenuClient.stability-level"> +<title>Stability Level</title> +Unstable, unless otherwise indicated +</refsect1> + +<refsynopsisdiv id="libdbusmenu-glib-DbusmenuClient.synopsis" role="synopsis"> +<title role="synopsis.title">Synopsis</title> + +<synopsis> +#include <libdbusmenu-glib/client.h> + +#define <link linkend="DBUSMENU-CLIENT-SIGNAL-LAYOUT-UPDATED:CAPS">DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED</link> +#define <link linkend="DBUSMENU-CLIENT-SIGNAL-ROOT-CHANGED:CAPS">DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED</link> +#define <link linkend="DBUSMENU-CLIENT-SIGNAL-NEW-MENUITEM:CAPS">DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM</link> +#define <link linkend="DBUSMENU-CLIENT-SIGNAL-EVENT-RESULT:CAPS">DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT</link> +#define <link linkend="DBUSMENU-CLIENT-SIGNAL-ITEM-ACTIVATE:CAPS">DBUSMENU_CLIENT_SIGNAL_ITEM_ACTIVATE</link> +#define <link linkend="DBUSMENU-CLIENT-SIGNAL-ICON-THEME-DIRS-CHANGED:CAPS">DBUSMENU_CLIENT_SIGNAL_ICON_THEME_DIRS_CHANGED</link> +#define <link linkend="DBUSMENU-CLIENT-PROP-DBUS-NAME:CAPS">DBUSMENU_CLIENT_PROP_DBUS_NAME</link> +#define <link linkend="DBUSMENU-CLIENT-PROP-DBUS-OBJECT:CAPS">DBUSMENU_CLIENT_PROP_DBUS_OBJECT</link> +#define <link linkend="DBUSMENU-CLIENT-PROP-STATUS:CAPS">DBUSMENU_CLIENT_PROP_STATUS</link> +#define <link linkend="DBUSMENU-CLIENT-PROP-TEXT-DIRECTION:CAPS">DBUSMENU_CLIENT_PROP_TEXT_DIRECTION</link> +#define <link linkend="DBUSMENU-CLIENT-TYPES-DEFAULT:CAPS">DBUSMENU_CLIENT_TYPES_DEFAULT</link> +#define <link linkend="DBUSMENU-CLIENT-TYPES-SEPARATOR:CAPS">DBUSMENU_CLIENT_TYPES_SEPARATOR</link> +#define <link linkend="DBUSMENU-CLIENT-TYPES-IMAGE:CAPS">DBUSMENU_CLIENT_TYPES_IMAGE</link> + <link linkend="DbusmenuClient">DbusmenuClient</link>; +struct <link linkend="DbusmenuClientClass">DbusmenuClientClass</link>; +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> (<link linkend="DbusmenuClientTypeHandler">*DbusmenuClientTypeHandler</link>) (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *newitem</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *parent</parameter>, + <parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>, + <parameter><link linkend="gpointer"><type>gpointer</type></link> user_data</parameter>); +<link linkend="DbusmenuClient"><returnvalue>DbusmenuClient</returnvalue></link> * <link linkend="dbusmenu-client-new">dbusmenu_client_new</link> (<parameter>const <link linkend="gchar"><type>gchar</type></link> *name</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *object</parameter>); +const <link linkend="GStrv"><returnvalue>GStrv</returnvalue></link> <link linkend="dbusmenu-client-get-icon-paths">dbusmenu_client_get_icon_paths</link> (<parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>); +<link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * <link linkend="dbusmenu-client-get-root">dbusmenu_client_get_root</link> (<parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>); +<link linkend="DbusmenuStatus"><returnvalue>DbusmenuStatus</returnvalue></link> <link linkend="dbusmenu-client-get-status">dbusmenu_client_get_status</link> (<parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>); +<link linkend="DbusmenuTextDirection"><returnvalue>DbusmenuTextDirection</returnvalue></link> <link linkend="dbusmenu-client-get-text-direction">dbusmenu_client_get_text_direction</link> + (<parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-client-add-type-handler">dbusmenu_client_add_type_handler</link> (<parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *type</parameter>, + <parameter><link linkend="DbusmenuClientTypeHandler"><type>DbusmenuClientTypeHandler</type></link> newfunc</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-client-add-type-handler-full">dbusmenu_client_add_type_handler_full</link> + (<parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *type</parameter>, + <parameter><link linkend="DbusmenuClientTypeHandler"><type>DbusmenuClientTypeHandler</type></link> newfunc</parameter>, + <parameter><link linkend="gpointer"><type>gpointer</type></link> user_data</parameter>, + <parameter><link linkend="GDestroyNotify"><type>GDestroyNotify</type></link> destroy_func</parameter>); +</synopsis> +</refsynopsisdiv> + +<refsect1 id="libdbusmenu-glib-DbusmenuClient.description" role="desc"> +<title role="desc.title">Description</title> +<para> +The client exists as a mirror to the server. For most folks + all they will do with a client is set it up to connect to + a server and then watch as the menu items on their side + of the bus change. This is all they should need to know about + the client, that it magically makes their menuitems dance. +</para> +<para> + It does this by setting up signal watchers and adjusting + the menuitems appropriately. Most users should watch the + menu items and the signal <link linkend="DbusmenuClient-layout-changed"><type>"layout-changed"</type></link> for + larger events so that they can be optimized. It is possible + with that signal that even the root node would change. If + that doesn't happen the normal signals on the individual + nodes should be enough for most users. +</para> +</refsect1> +<refsect1 id="libdbusmenu-glib-DbusmenuClient.details" role="details"> +<title role="details.title">Details</title> +<refsect2 id="DBUSMENU-CLIENT-SIGNAL-LAYOUT-UPDATED:CAPS" role="macro"> +<title>DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED</title> +<indexterm zone="DBUSMENU-CLIENT-SIGNAL-LAYOUT-UPDATED:CAPS"><primary>DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED</primary></indexterm> +<programlisting>#define DBUSMENU_CLIENT_SIGNAL_LAYOUT_UPDATED "layout-updated" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuClient-layout-updated"><type>"layout-updated"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-CLIENT-SIGNAL-ROOT-CHANGED:CAPS" role="macro"> +<title>DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED</title> +<indexterm zone="DBUSMENU-CLIENT-SIGNAL-ROOT-CHANGED:CAPS"><primary>DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED</primary></indexterm> +<programlisting>#define DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED "root-changed" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuClient-root-changed"><type>"root-changed"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-CLIENT-SIGNAL-NEW-MENUITEM:CAPS" role="macro"> +<title>DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM</title> +<indexterm zone="DBUSMENU-CLIENT-SIGNAL-NEW-MENUITEM:CAPS"><primary>DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM</primary></indexterm> +<programlisting>#define DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM "new-menuitem" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuClient-new-menuitem"><type>"new-menuitem"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-CLIENT-SIGNAL-EVENT-RESULT:CAPS" role="macro"> +<title>DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT</title> +<indexterm zone="DBUSMENU-CLIENT-SIGNAL-EVENT-RESULT:CAPS"><primary>DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT</primary></indexterm> +<programlisting>#define DBUSMENU_CLIENT_SIGNAL_EVENT_RESULT "event-result" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuClient-event-result"><type>"event-result"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-CLIENT-SIGNAL-ITEM-ACTIVATE:CAPS" role="macro"> +<title>DBUSMENU_CLIENT_SIGNAL_ITEM_ACTIVATE</title> +<indexterm zone="DBUSMENU-CLIENT-SIGNAL-ITEM-ACTIVATE:CAPS"><primary>DBUSMENU_CLIENT_SIGNAL_ITEM_ACTIVATE</primary></indexterm> +<programlisting>#define DBUSMENU_CLIENT_SIGNAL_ITEM_ACTIVATE "item-activate" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuClient-item-activate"><type>"item-activate"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-CLIENT-SIGNAL-ICON-THEME-DIRS-CHANGED:CAPS" role="macro"> +<title>DBUSMENU_CLIENT_SIGNAL_ICON_THEME_DIRS_CHANGED</title> +<indexterm zone="DBUSMENU-CLIENT-SIGNAL-ICON-THEME-DIRS-CHANGED:CAPS"><primary>DBUSMENU_CLIENT_SIGNAL_ICON_THEME_DIRS_CHANGED</primary></indexterm> +<programlisting>#define DBUSMENU_CLIENT_SIGNAL_ICON_THEME_DIRS_CHANGED "icon-theme-dirs-changed" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuClient-icon-theme-dirs-changed"><type>"icon-theme-dirs-changed"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-CLIENT-PROP-DBUS-NAME:CAPS" role="macro"> +<title>DBUSMENU_CLIENT_PROP_DBUS_NAME</title> +<indexterm zone="DBUSMENU-CLIENT-PROP-DBUS-NAME:CAPS"><primary>DBUSMENU_CLIENT_PROP_DBUS_NAME</primary></indexterm> +<programlisting>#define DBUSMENU_CLIENT_PROP_DBUS_NAME "dbus-name" +</programlisting> +<para> +String to access property <link linkend="DbusmenuClient--dbus-name"><type>"dbus-name"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-CLIENT-PROP-DBUS-OBJECT:CAPS" role="macro"> +<title>DBUSMENU_CLIENT_PROP_DBUS_OBJECT</title> +<indexterm zone="DBUSMENU-CLIENT-PROP-DBUS-OBJECT:CAPS"><primary>DBUSMENU_CLIENT_PROP_DBUS_OBJECT</primary></indexterm> +<programlisting>#define DBUSMENU_CLIENT_PROP_DBUS_OBJECT "dbus-object" +</programlisting> +<para> +String to access property <link linkend="DbusmenuClient--dbus-object"><type>"dbus-object"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-CLIENT-PROP-STATUS:CAPS" role="macro"> +<title>DBUSMENU_CLIENT_PROP_STATUS</title> +<indexterm zone="DBUSMENU-CLIENT-PROP-STATUS:CAPS"><primary>DBUSMENU_CLIENT_PROP_STATUS</primary></indexterm> +<programlisting>#define DBUSMENU_CLIENT_PROP_STATUS "status" +</programlisting> +<para> +String to access property <link linkend="DbusmenuClient--status"><type>"status"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-CLIENT-PROP-TEXT-DIRECTION:CAPS" role="macro"> +<title>DBUSMENU_CLIENT_PROP_TEXT_DIRECTION</title> +<indexterm zone="DBUSMENU-CLIENT-PROP-TEXT-DIRECTION:CAPS"><primary>DBUSMENU_CLIENT_PROP_TEXT_DIRECTION</primary></indexterm> +<programlisting>#define DBUSMENU_CLIENT_PROP_TEXT_DIRECTION "text-direction" +</programlisting> +<para> +String to access property <link linkend="DbusmenuClient--text-direction"><type>"text-direction"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-CLIENT-TYPES-DEFAULT:CAPS" role="macro"> +<title>DBUSMENU_CLIENT_TYPES_DEFAULT</title> +<indexterm zone="DBUSMENU-CLIENT-TYPES-DEFAULT:CAPS"><primary>DBUSMENU_CLIENT_TYPES_DEFAULT</primary></indexterm> +<programlisting>#define DBUSMENU_CLIENT_TYPES_DEFAULT "standard" +</programlisting> +<para> +Used to set the 'type' property on a menu item to create +a standard menu item. +</para></refsect2> +<refsect2 id="DBUSMENU-CLIENT-TYPES-SEPARATOR:CAPS" role="macro"> +<title>DBUSMENU_CLIENT_TYPES_SEPARATOR</title> +<indexterm zone="DBUSMENU-CLIENT-TYPES-SEPARATOR:CAPS"><primary>DBUSMENU_CLIENT_TYPES_SEPARATOR</primary></indexterm> +<programlisting>#define DBUSMENU_CLIENT_TYPES_SEPARATOR "separator" +</programlisting> +<para> +Used to set the 'type' property on a menu item to create +a separator menu item. +</para></refsect2> +<refsect2 id="DBUSMENU-CLIENT-TYPES-IMAGE:CAPS" role="macro"> +<title>DBUSMENU_CLIENT_TYPES_IMAGE</title> +<indexterm zone="DBUSMENU-CLIENT-TYPES-IMAGE:CAPS"><primary>DBUSMENU_CLIENT_TYPES_IMAGE</primary></indexterm> +<programlisting>#define DBUSMENU_CLIENT_TYPES_IMAGE "standard" +</programlisting> +<para> +Used to set the 'type' property on a menu item to create +an image menu item. Deprecated as standard menu items now +support images as well. +</para></refsect2> +<refsect2 id="DbusmenuClient" role="struct"> +<title>DbusmenuClient</title> +<indexterm zone="DbusmenuClient"><primary>DbusmenuClient</primary></indexterm> +<programlisting>typedef struct _DbusmenuClient DbusmenuClient;</programlisting> +<para> +The client for a <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> creating a shared + object set of <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> objects. +</para></refsect2> +<refsect2 id="DbusmenuClientClass" role="struct"> +<title>struct DbusmenuClientClass</title> +<indexterm zone="DbusmenuClientClass"><primary>DbusmenuClientClass</primary></indexterm> +<programlisting>struct DbusmenuClientClass { + GObjectClass parent_class; + + void (*layout_updated)(void); + void (*root_changed) (DbusmenuMenuitem * newroot); + void (*new_menuitem) (DbusmenuMenuitem * newitem); + void (*item_activate) (DbusmenuMenuitem * item, guint timestamp); + void (*event_result) (DbusmenuMenuitem * item, gchar * event, GVariant * data, guint timestamp, GError * error); + void (*icon_theme_dirs) (DbusmenuMenuitem * item, gpointer theme_dirs, GError * error); + + /*< Private >*/ + void (*reserved1) (void); + void (*reserved2) (void); + void (*reserved3) (void); + void (*reserved4) (void); + void (*reserved5) (void); +}; +</programlisting> +<para> +A simple class that takes all of the information from a + <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> over DBus and makes the same set of + <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> objects appear on the other side. +</para><variablelist role="struct"> +<varlistentry><term><link linkend="GObjectClass"><type>GObjectClass</type></link> <structfield id="DbusmenuClientClass.parent-class">parent_class</structfield>;</term> +<listitem><simpara><link linkend="GObjectClass"><type>GObjectClass</type></link></simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuClientClass.layout-updated">layout_updated</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuClient-layout-updated"><type>"layout-updated"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuClientClass.root-changed">root_changed</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuClient-root-changed"><type>"root-changed"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuClientClass.new-menuitem">new_menuitem</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuClient-new-menuitem"><type>"new-menuitem"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuClientClass.item-activate">item_activate</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuClient-item-activate"><type>"item-activate"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuClientClass.event-result">event_result</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuClient-event-error"><type>"event-error"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuClientClass.icon-theme-dirs">icon_theme_dirs</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuClient-icon-theme-dirs-changed"><type>"icon-theme-dirs-changed"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuClientClass.reserved1">reserved1</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuClientClass.reserved2">reserved2</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuClientClass.reserved3">reserved3</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuClientClass.reserved4">reserved4</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuClientClass.reserved5">reserved5</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +</variablelist></refsect2> +<refsect2 id="DbusmenuClientTypeHandler" role="function"> +<title>DbusmenuClientTypeHandler ()</title> +<indexterm zone="DbusmenuClientTypeHandler"><primary>DbusmenuClientTypeHandler</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> (*DbusmenuClientTypeHandler) (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *newitem</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *parent</parameter>, + <parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>, + <parameter><link linkend="gpointer"><type>gpointer</type></link> user_data</parameter>);</programlisting> +<para> +The type handler is called when a dbusmenu item is created + with a matching type as setup in <link linkend="dbusmenu-client-add-type-handler"><type>dbusmenu_client_add_type_handler</type></link> +</para><variablelist role="params"> +<varlistentry><term><parameter>newitem</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> that was created</simpara></listitem></varlistentry> +<varlistentry><term><parameter>parent</parameter> :</term> +<listitem><simpara>The parent of <parameter>newitem</parameter> or <link linkend="NULL:CAPS"><type>NULL</type></link> if none</simpara></listitem></varlistentry> +<varlistentry><term><parameter>client</parameter> :</term> +<listitem><simpara>A pointer to the <link linkend="DbusmenuClient"><type>DbusmenuClient</type></link></simpara></listitem></varlistentry> +<varlistentry><term><parameter>user_data</parameter> :</term> +<listitem><simpara>The data you gave us</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara><link linkend="TRUE:CAPS"><type>TRUE</type></link> if the type has been handled. <link linkend="FALSE:CAPS"><type>FALSE</type></link> if this +function was somehow unable to handle it.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-client-new" role="function"> +<title>dbusmenu_client_new ()</title> +<indexterm zone="dbusmenu-client-new"><primary>dbusmenu_client_new</primary></indexterm> +<programlisting><link linkend="DbusmenuClient"><returnvalue>DbusmenuClient</returnvalue></link> * dbusmenu_client_new (<parameter>const <link linkend="gchar"><type>gchar</type></link> *name</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *object</parameter>);</programlisting> +<para> +This function creates a new client that connects to a specific +server on DBus. That server is at a specific location sharing +a known object. The interface is assumed by the code to be +the DBus menu interface. The newly created client will start +sending out events as it syncs up with the server. +</para><variablelist role="params"> +<varlistentry><term><parameter>name</parameter> :</term> +<listitem><simpara>The DBus name for the server to connect to</simpara></listitem></varlistentry> +<varlistentry><term><parameter>object</parameter> :</term> +<listitem><simpara>The object on the server to monitor</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A brand new <link linkend="DbusmenuClient"><type>DbusmenuClient</type></link></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-client-get-icon-paths" role="function"> +<title>dbusmenu_client_get_icon_paths ()</title> +<indexterm zone="dbusmenu-client-get-icon-paths"><primary>dbusmenu_client_get_icon_paths</primary></indexterm> +<programlisting>const <link linkend="GStrv"><returnvalue>GStrv</returnvalue></link> dbusmenu_client_get_icon_paths (<parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>);</programlisting> +<para> +Gets the stored and exported icon paths from the client. +</para><variablelist role="params"> +<varlistentry><term><parameter>client</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> to get the icon paths from</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A NULL-terminated list of icon paths with +memory managed by the client. Duplicate if you want +to keep them. <emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-client-get-root" role="function"> +<title>dbusmenu_client_get_root ()</title> +<indexterm zone="dbusmenu-client-get-root"><primary>dbusmenu_client_get_root</primary></indexterm> +<programlisting><link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * dbusmenu_client_get_root (<parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>);</programlisting> +<para> +Grabs the root node for the specified client <parameter>client</parameter>. This +function may block. It will block if there is currently a +call to update the layout, it will block on that layout +updated and then return the newly updated layout. Chances +are that this update is in the queue for the mainloop as +it would have been requested some time ago, but in theory +it could block longer. +</para><variablelist role="params"> +<varlistentry><term><parameter>client</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> to get the root node from</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> representing the root of +menu on the server. If there is no server or there is +an error receiving its layout it'll return <link linkend="NULL:CAPS"><type>NULL</type></link>. <emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-client-get-status" role="function"> +<title>dbusmenu_client_get_status ()</title> +<indexterm zone="dbusmenu-client-get-status"><primary>dbusmenu_client_get_status</primary></indexterm> +<programlisting><link linkend="DbusmenuStatus"><returnvalue>DbusmenuStatus</returnvalue></link> dbusmenu_client_get_status (<parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>);</programlisting> +<para> +Gets the recommended current status that the server + is exporting for the menus. In situtations where the + value is <link linkend="DBUSMENU-STATUS-NOTICE:CAPS"><type>DBUSMENU_STATUS_NOTICE</type></link> it is recommended that + the client show the menus to the user an a more noticible + way. +</para><variablelist role="params"> +<varlistentry><term><parameter>client</parameter> :</term> +<listitem><simpara><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> to check the status on</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>Status being exported.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-client-get-text-direction" role="function"> +<title>dbusmenu_client_get_text_direction ()</title> +<indexterm zone="dbusmenu-client-get-text-direction"><primary>dbusmenu_client_get_text_direction</primary></indexterm> +<programlisting><link linkend="DbusmenuTextDirection"><returnvalue>DbusmenuTextDirection</returnvalue></link> dbusmenu_client_get_text_direction + (<parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>);</programlisting> +<para> +Gets the text direction that the server is exporting. If + the server is not exporting a direction then the value + <link linkend="DBUSMENU-TEXT-DIRECTION-NONE:CAPS"><type>DBUSMENU_TEXT_DIRECTION_NONE</type></link> will be returned. +</para><variablelist role="params"> +<varlistentry><term><parameter>client</parameter> :</term> +<listitem><simpara><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> to check the text direction on</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>Text direction being exported.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-client-add-type-handler" role="function"> +<title>dbusmenu_client_add_type_handler ()</title> +<indexterm zone="dbusmenu-client-add-type-handler"><primary>dbusmenu_client_add_type_handler</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_client_add_type_handler (<parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *type</parameter>, + <parameter><link linkend="DbusmenuClientTypeHandler"><type>DbusmenuClientTypeHandler</type></link> newfunc</parameter>);</programlisting> +<para> +This function connects into the type handling of the <link linkend="DbusmenuClient"><type>DbusmenuClient</type></link>. +Every new menuitem that comes in immediately gets asked for it's +properties. When we get those properties we check the 'type' +property and look to see if it matches a handler that is known +by the client. If so, the <parameter>newfunc</parameter> function is executed on that +<link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link>. If not, then the DbusmenuClient::new-menuitem +signal is sent. +</para> +<para> +In the future the known types will be sent to the server so that it +can make choices about the menu item types availble. +</para><variablelist role="params"> +<varlistentry><term><parameter>client</parameter> :</term> +<listitem><simpara>Client where we're getting types coming in</simpara></listitem></varlistentry> +<varlistentry><term><parameter>type</parameter> :</term> +<listitem><simpara>A text string that will be matched with the 'type' +property on incoming menu items</simpara></listitem></varlistentry> +<varlistentry><term><parameter>newfunc</parameter> :</term> +<listitem><simpara>The function that will be executed with those new +items when they come in. <emphasis role="annotation">[<acronym>scope notified</acronym>]</emphasis></simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>If registering the new type was successful.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-client-add-type-handler-full" role="function"> +<title>dbusmenu_client_add_type_handler_full ()</title> +<indexterm zone="dbusmenu-client-add-type-handler-full"><primary>dbusmenu_client_add_type_handler_full</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_client_add_type_handler_full + (<parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *type</parameter>, + <parameter><link linkend="DbusmenuClientTypeHandler"><type>DbusmenuClientTypeHandler</type></link> newfunc</parameter>, + <parameter><link linkend="gpointer"><type>gpointer</type></link> user_data</parameter>, + <parameter><link linkend="GDestroyNotify"><type>GDestroyNotify</type></link> destroy_func</parameter>);</programlisting> +<para> +This function connects into the type handling of the <link linkend="DbusmenuClient"><type>DbusmenuClient</type></link>. +Every new menuitem that comes in immediately gets asked for it's +properties. When we get those properties we check the 'type' +property and look to see if it matches a handler that is known +by the client. If so, the <parameter>newfunc</parameter> function is executed on that +<link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link>. If not, then the DbusmenuClient::new-menuitem +signal is sent. +</para> +<para> +In the future the known types will be sent to the server so that it +can make choices about the menu item types availble. +</para><variablelist role="params"> +<varlistentry><term><parameter>client</parameter> :</term> +<listitem><simpara>Client where we're getting types coming in</simpara></listitem></varlistentry> +<varlistentry><term><parameter>type</parameter> :</term> +<listitem><simpara>A text string that will be matched with the 'type' +property on incoming menu items</simpara></listitem></varlistentry> +<varlistentry><term><parameter>newfunc</parameter> :</term> +<listitem><simpara>The function that will be executed with those new +items when they come in. <emphasis role="annotation">[<acronym>scope notified</acronym>]</emphasis></simpara></listitem></varlistentry> +<varlistentry><term><parameter>user_data</parameter> :</term> +<listitem><simpara>Data passed to <parameter>newfunc</parameter> when it is called</simpara></listitem></varlistentry> +<varlistentry><term><parameter>destroy_func</parameter> :</term> +<listitem><simpara>A function that is called when the type handler is +removed (usually on client destruction) which will free +the resources in <parameter>user_data</parameter>.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>If registering the new type was successful.</simpara></listitem></varlistentry> +</variablelist></refsect2> + +</refsect1> + +</refentry> diff --git a/docs/libdbusmenu-glib/reference/xml/menuitem-proxy.xml b/docs/libdbusmenu-glib/reference/xml/menuitem-proxy.xml new file mode 100644 index 0000000..db860d6 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/xml/menuitem-proxy.xml @@ -0,0 +1,114 @@ +<?xml version="1.0"?> +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> +<refentry id="libdbusmenu-glib-DbusmenuMenuitemProxy"> +<refmeta> +<refentrytitle role="top_of_page" id="libdbusmenu-glib-DbusmenuMenuitemProxy.top_of_page">DbusmenuMenuitemProxy</refentrytitle> +<manvolnum>3</manvolnum> +<refmiscinfo> + LIBDBUSMENU-GLIB Library +</refmiscinfo> +</refmeta> +<refnamediv> +<refname>DbusmenuMenuitemProxy</refname> +<refpurpose>A menuitem that proxies from another menuitem</refpurpose> +</refnamediv> +<refsect1 id="libdbusmenu-glib-DbusmenuMenuitemProxy.stability-level"> +<title>Stability Level</title> +Unstable, unless otherwise indicated +</refsect1> + +<refsynopsisdiv id="libdbusmenu-glib-DbusmenuMenuitemProxy.synopsis" role="synopsis"> +<title role="synopsis.title">Synopsis</title> + +<synopsis> +#include <libdbusmenu-glib/menuitem-proxy.h> + + <link linkend="DbusmenuMenuitemProxy">DbusmenuMenuitemProxy</link>; +struct <link linkend="DbusmenuMenuitemProxyClass">DbusmenuMenuitemProxyClass</link>; +<link linkend="DbusmenuMenuitemProxy"><returnvalue>DbusmenuMenuitemProxy</returnvalue></link> * <link linkend="dbusmenu-menuitem-proxy-new">dbusmenu_menuitem_proxy_new</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>); +<link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * <link linkend="dbusmenu-menuitem-proxy-get-wrapped">dbusmenu_menuitem_proxy_get_wrapped</link> (<parameter><link linkend="DbusmenuMenuitemProxy"><type>DbusmenuMenuitemProxy</type></link> *pmi</parameter>); +</synopsis> +</refsynopsisdiv> + +<refsect1 id="libdbusmenu-glib-DbusmenuMenuitemProxy.description" role="desc"> +<title role="desc.title">Description</title> +<para> +This small object allows for proxying all the properties from a remote +menuitem to a new object that can be moved around appropriately within +the new menu structure. +</para> +</refsect1> +<refsect1 id="libdbusmenu-glib-DbusmenuMenuitemProxy.details" role="details"> +<title role="details.title">Details</title> +<refsect2 id="DbusmenuMenuitemProxy" role="struct"> +<title>DbusmenuMenuitemProxy</title> +<indexterm zone="DbusmenuMenuitemProxy"><primary>DbusmenuMenuitemProxy</primary></indexterm> +<programlisting>typedef struct _DbusmenuMenuitemProxy DbusmenuMenuitemProxy;</programlisting> +<para> +Public instance data for a <link linkend="DbusmenuMenuitemProxy"><type>DbusmenuMenuitemProxy</type></link>. +</para></refsect2> +<refsect2 id="DbusmenuMenuitemProxyClass" role="struct"> +<title>struct DbusmenuMenuitemProxyClass</title> +<indexterm zone="DbusmenuMenuitemProxyClass"><primary>DbusmenuMenuitemProxyClass</primary></indexterm> +<programlisting>struct DbusmenuMenuitemProxyClass { + DbusmenuMenuitemClass parent_class; + + /*< Private >*/ + void (*reserved1) (void); + void (*reserved2) (void); + void (*reserved3) (void); + void (*reserved4) (void); +}; +</programlisting> +<para> +Functions and signal slots for <link linkend="DbusmenuMenuitemProxy"><type>DbusmenuMenuitemProxy</type></link>. +</para><variablelist role="struct"> +<varlistentry><term><link linkend="DbusmenuMenuitemClass"><type>DbusmenuMenuitemClass</type></link> <structfield id="DbusmenuMenuitemProxyClass.parent-class">parent_class</structfield>;</term> +<listitem><simpara>The Class of <link linkend="DbusmeneMenuitem"><type>DbusmeneMenuitem</type></link></simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemProxyClass.reserved1">reserved1</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemProxyClass.reserved2">reserved2</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemProxyClass.reserved3">reserved3</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemProxyClass.reserved4">reserved4</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-proxy-new" role="function"> +<title>dbusmenu_menuitem_proxy_new ()</title> +<indexterm zone="dbusmenu-menuitem-proxy-new"><primary>dbusmenu_menuitem_proxy_new</primary></indexterm> +<programlisting><link linkend="DbusmenuMenuitemProxy"><returnvalue>DbusmenuMenuitemProxy</returnvalue></link> * dbusmenu_menuitem_proxy_new (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>);</programlisting> +<para> +Builds a new <link linkend="DbusmenuMenuitemProxy"><type>DbusmenuMenuitemProxy</type></link> object that proxies +all of the values for <parameter>mi</parameter>. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to proxy</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A new <link linkend="DbusmenuMenuitemProxy"><type>DbusmenuMenuitemProxy</type></link> object.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-proxy-get-wrapped" role="function"> +<title>dbusmenu_menuitem_proxy_get_wrapped ()</title> +<indexterm zone="dbusmenu-menuitem-proxy-get-wrapped"><primary>dbusmenu_menuitem_proxy_get_wrapped</primary></indexterm> +<programlisting><link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * dbusmenu_menuitem_proxy_get_wrapped (<parameter><link linkend="DbusmenuMenuitemProxy"><type>DbusmenuMenuitemProxy</type></link> *pmi</parameter>);</programlisting> +<para> +Accesses the private variable of which <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> +we are doing the proxying for. +</para><variablelist role="params"> +<varlistentry><term><parameter>pmi</parameter> :</term> +<listitem><simpara><link linkend="DbusmenuMenuitemProxy"><type>DbusmenuMenuitemProxy</type></link> to look into</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> object or a <link linkend="NULL:CAPS"><type>NULL</type></link> if we +don't have one or there is an error. <emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> + +</refsect1> + +</refentry> diff --git a/docs/libdbusmenu-glib/reference/xml/menuitem.xml b/docs/libdbusmenu-glib/reference/xml/menuitem.xml new file mode 100644 index 0000000..d4f3504 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/xml/menuitem.xml @@ -0,0 +1,1174 @@ +<?xml version="1.0"?> +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> +<refentry id="libdbusmenu-glib-DbusmenuMenuitem"> +<refmeta> +<refentrytitle role="top_of_page" id="libdbusmenu-glib-DbusmenuMenuitem.top_of_page">DbusmenuMenuitem</refentrytitle> +<manvolnum>3</manvolnum> +<refmiscinfo> + LIBDBUSMENU-GLIB Library +</refmiscinfo> +</refmeta> +<refnamediv> +<refname>DbusmenuMenuitem</refname> +<refpurpose>A lowlevel represenation of a menuitem</refpurpose> +</refnamediv> +<refsect1 id="libdbusmenu-glib-DbusmenuMenuitem.stability-level"> +<title>Stability Level</title> +Unstable, unless otherwise indicated +</refsect1> + +<refsynopsisdiv id="libdbusmenu-glib-DbusmenuMenuitem.synopsis" role="synopsis"> +<title role="synopsis.title">Synopsis</title> + +<synopsis> +#include <libdbusmenu-glib/menuitem.h> + +#define <link linkend="DBUSMENU-MENUITEM-SIGNAL-PROPERTY-CHANGED:CAPS">DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED</link> +#define <link linkend="DBUSMENU-MENUITEM-SIGNAL-ITEM-ACTIVATED:CAPS">DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED</link> +#define <link linkend="DBUSMENU-MENUITEM-SIGNAL-CHILD-ADDED:CAPS">DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED</link> +#define <link linkend="DBUSMENU-MENUITEM-SIGNAL-CHILD-REMOVED:CAPS">DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED</link> +#define <link linkend="DBUSMENU-MENUITEM-SIGNAL-CHILD-MOVED:CAPS">DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED</link> +#define <link linkend="DBUSMENU-MENUITEM-SIGNAL-EVENT:CAPS">DBUSMENU_MENUITEM_SIGNAL_EVENT</link> +#define <link linkend="DBUSMENU-MENUITEM-SIGNAL-REALIZED:CAPS">DBUSMENU_MENUITEM_SIGNAL_REALIZED</link> +#define <link linkend="DBUSMENU-MENUITEM-SIGNAL-REALIZED-ID:CAPS">DBUSMENU_MENUITEM_SIGNAL_REALIZED_ID</link> +#define <link linkend="DBUSMENU-MENUITEM-SIGNAL-ABOUT-TO-SHOW:CAPS">DBUSMENU_MENUITEM_SIGNAL_ABOUT_TO_SHOW</link> +#define <link linkend="DBUSMENU-MENUITEM-SIGNAL-SHOW-TO-USER:CAPS">DBUSMENU_MENUITEM_SIGNAL_SHOW_TO_USER</link> +#define <link linkend="DBUSMENU-MENUITEM-PROP-TYPE:CAPS">DBUSMENU_MENUITEM_PROP_TYPE</link> +#define <link linkend="DBUSMENU-MENUITEM-PROP-VISIBLE:CAPS">DBUSMENU_MENUITEM_PROP_VISIBLE</link> +#define <link linkend="DBUSMENU-MENUITEM-PROP-ENABLED:CAPS">DBUSMENU_MENUITEM_PROP_ENABLED</link> +#define <link linkend="DBUSMENU-MENUITEM-PROP-LABEL:CAPS">DBUSMENU_MENUITEM_PROP_LABEL</link> +#define <link linkend="DBUSMENU-MENUITEM-PROP-ICON-NAME:CAPS">DBUSMENU_MENUITEM_PROP_ICON_NAME</link> +#define <link linkend="DBUSMENU-MENUITEM-PROP-ICON-DATA:CAPS">DBUSMENU_MENUITEM_PROP_ICON_DATA</link> +#define <link linkend="DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS">DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE</link> +#define <link linkend="DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS">DBUSMENU_MENUITEM_PROP_TOGGLE_STATE</link> +#define <link linkend="DBUSMENU-MENUITEM-PROP-CHILD-DISPLAY:CAPS">DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY</link> +#define <link linkend="DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS">DBUSMENU_MENUITEM_PROP_SHORTCUT</link> +#define <link linkend="DBUSMENU-MENUITEM-TOGGLE-CHECK:CAPS">DBUSMENU_MENUITEM_TOGGLE_CHECK</link> +#define <link linkend="DBUSMENU-MENUITEM-TOGGLE-RADIO:CAPS">DBUSMENU_MENUITEM_TOGGLE_RADIO</link> +#define <link linkend="DBUSMENU-MENUITEM-TOGGLE-STATE-UNCHECKED:CAPS">DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED</link> +#define <link linkend="DBUSMENU-MENUITEM-TOGGLE-STATE-CHECKED:CAPS">DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED</link> +#define <link linkend="DBUSMENU-MENUITEM-TOGGLE-STATE-UNKNOWN:CAPS">DBUSMENU_MENUITEM_TOGGLE_STATE_UNKNOWN</link> +#define <link linkend="DBUSMENU-MENUITEM-ICON-NAME-BLANK:CAPS">DBUSMENU_MENUITEM_ICON_NAME_BLANK</link> +#define <link linkend="DBUSMENU-MENUITEM-CHILD-DISPLAY-SUBMENU:CAPS">DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU</link> +#define <link linkend="DBUSMENU-MENUITEM-SHORTCUT-ALT:CAPS">DBUSMENU_MENUITEM_SHORTCUT_ALT</link> +#define <link linkend="DBUSMENU-MENUITEM-SHORTCUT-CONTROL:CAPS">DBUSMENU_MENUITEM_SHORTCUT_CONTROL</link> +#define <link linkend="DBUSMENU-MENUITEM-SHORTCUT-SHIFT:CAPS">DBUSMENU_MENUITEM_SHORTCUT_SHIFT</link> +#define <link linkend="DBUSMENU-MENUITEM-SHORTCUT-SUPER:CAPS">DBUSMENU_MENUITEM_SHORTCUT_SUPER</link> +struct <link linkend="DbusmenuMenuitem">DbusmenuMenuitem</link>; +<link linkend="void"><returnvalue>void</returnvalue></link> (<link linkend="dbusmenu-menuitem-about-to-show-cb">*dbusmenu_menuitem_about_to_show_cb</link>) + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="gpointer"><type>gpointer</type></link> user_data</parameter>); +<link linkend="GVariant"><returnvalue>GVariant</returnvalue></link> * (<link linkend="dbusmenu-menuitem-buildvariant-slot-t">*dbusmenu_menuitem_buildvariant_slot_t</link>) + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="gchar"><type>gchar</type></link> **properties</parameter>); +struct <link linkend="DbusmenuMenuitemClass">DbusmenuMenuitemClass</link>; +<link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * <link linkend="dbusmenu-menuitem-new">dbusmenu_menuitem_new</link> (<parameter><type>void</type></parameter>); +<link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * <link linkend="dbusmenu-menuitem-new-with-id">dbusmenu_menuitem_new_with_id</link> (<parameter><link linkend="gint"><type>gint</type></link> id</parameter>); +<link linkend="gint"><returnvalue>gint</returnvalue></link> <link linkend="dbusmenu-menuitem-get-id">dbusmenu_menuitem_get_id</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>); +<link linkend="GList"><returnvalue>GList</returnvalue></link> * <link linkend="dbusmenu-menuitem-get-children">dbusmenu_menuitem_get_children</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>); +<link linkend="GList"><returnvalue>GList</returnvalue></link> * <link linkend="dbusmenu-menuitem-take-children">dbusmenu_menuitem_take_children</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>); +<link linkend="guint"><returnvalue>guint</returnvalue></link> <link linkend="dbusmenu-menuitem-get-position">dbusmenu_menuitem_get_position</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *parent</parameter>); +<link linkend="guint"><returnvalue>guint</returnvalue></link> <link linkend="dbusmenu-menuitem-get-position-realized">dbusmenu_menuitem_get_position_realized</link> + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *parent</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-child-append">dbusmenu_menuitem_child_append</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *child</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-child-prepend">dbusmenu_menuitem_child_prepend</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *child</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-child-delete">dbusmenu_menuitem_child_delete</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *child</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-child-add-position">dbusmenu_menuitem_child_add_position</link> + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *child</parameter>, + <parameter><link linkend="guint"><type>guint</type></link> position</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-child-reorder">dbusmenu_menuitem_child_reorder</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *child</parameter>, + <parameter><link linkend="guint"><type>guint</type></link> position</parameter>); +<link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * <link linkend="dbusmenu-menuitem-child-find">dbusmenu_menuitem_child_find</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="gint"><type>gint</type></link> id</parameter>); +<link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * <link linkend="dbusmenu-menuitem-find-id">dbusmenu_menuitem_find_id</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="gint"><type>gint</type></link> id</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-property-set">dbusmenu_menuitem_property_set</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *value</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-property-set-bool">dbusmenu_menuitem_property_set_bool</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>, + <parameter>const <link linkend="gboolean"><type>gboolean</type></link> value</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-property-set-int">dbusmenu_menuitem_property_set_int</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>, + <parameter>const <link linkend="gint"><type>gint</type></link> value</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-property-set-variant">dbusmenu_menuitem_property_set_variant</link> + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>, + <parameter><link linkend="GVariant"><type>GVariant</type></link> *value</parameter>); +const <link linkend="gchar"><returnvalue>gchar</returnvalue></link> * <link linkend="dbusmenu-menuitem-property-get">dbusmenu_menuitem_property_get</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-property-get-bool">dbusmenu_menuitem_property_get_bool</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>); +<link linkend="gint"><returnvalue>gint</returnvalue></link> <link linkend="dbusmenu-menuitem-property-get-int">dbusmenu_menuitem_property_get_int</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>); +<link linkend="GVariant"><returnvalue>GVariant</returnvalue></link> * <link linkend="dbusmenu-menuitem-property-get-variant">dbusmenu_menuitem_property_get_variant</link> + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-property-exist">dbusmenu_menuitem_property_exist</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>); +<link linkend="GList"><returnvalue>GList</returnvalue></link> * <link linkend="dbusmenu-menuitem-properties-list">dbusmenu_menuitem_properties_list</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>); +<link linkend="GHashTable"><returnvalue>GHashTable</returnvalue></link> * <link linkend="dbusmenu-menuitem-properties-copy">dbusmenu_menuitem_properties_copy</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>); +<link linkend="void"><returnvalue>void</returnvalue></link> <link linkend="dbusmenu-menuitem-property-remove">dbusmenu_menuitem_property_remove</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>); +<link linkend="void"><returnvalue>void</returnvalue></link> <link linkend="dbusmenu-menuitem-set-root">dbusmenu_menuitem_set_root</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="gboolean"><type>gboolean</type></link> root</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-get-root">dbusmenu_menuitem_get_root</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>); +<link linkend="void"><returnvalue>void</returnvalue></link> <link linkend="dbusmenu-menuitem-foreach">dbusmenu_menuitem_foreach</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="void"><type>void</type></link> (*func) (DbusmenuMenuitem * mi, gpointer data)</parameter>, + <parameter><link linkend="gpointer"><type>gpointer</type></link> data</parameter>); +<link linkend="void"><returnvalue>void</returnvalue></link> <link linkend="dbusmenu-menuitem-handle-event">dbusmenu_menuitem_handle_event</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *name</parameter>, + <parameter><link linkend="GVariant"><type>GVariant</type></link> *variant</parameter>, + <parameter><link linkend="guint"><type>guint</type></link> timestamp</parameter>); +<link linkend="void"><returnvalue>void</returnvalue></link> <link linkend="dbusmenu-menuitem-send-about-to-show">dbusmenu_menuitem_send_about_to_show</link> + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="void"><type>void</type></link> (*cb) (DbusmenuMenuitem * mi, gpointer user_data)</parameter>, + <parameter><link linkend="gpointer"><type>gpointer</type></link> cb_data</parameter>); +<link linkend="void"><returnvalue>void</returnvalue></link> <link linkend="dbusmenu-menuitem-show-to-user">dbusmenu_menuitem_show_to_user</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="guint"><type>guint</type></link> timestamp</parameter>); +<link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * <link linkend="dbusmenu-menuitem-get-parent">dbusmenu_menuitem_get_parent</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-set-parent">dbusmenu_menuitem_set_parent</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *parent</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-unparent">dbusmenu_menuitem_unparent</link> (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>); +</synopsis> +</refsynopsisdiv> + +<refsect1 id="libdbusmenu-glib-DbusmenuMenuitem.description" role="desc"> +<title role="desc.title">Description</title> +<para> +A <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> is the lowest level of represenation of a +single item in a menu. It gets created on the server side +and copied over to the client side where it gets rendered. As +the server starts to change it, and grow it, and do all kinds +of fun stuff that information is transfered over DBus and the +client updates it's understanding of the object model. +</para> +<para> +Most people using either the client or the server should be +able to deal mostly with <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> objects. These +are simple, but then they can be attached to more complex +objects and handled appropriately. +</para> +</refsect1> +<refsect1 id="libdbusmenu-glib-DbusmenuMenuitem.details" role="details"> +<title role="details.title">Details</title> +<refsect2 id="DBUSMENU-MENUITEM-SIGNAL-PROPERTY-CHANGED:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED</title> +<indexterm zone="DBUSMENU-MENUITEM-SIGNAL-PROPERTY-CHANGED:CAPS"><primary>DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED "property-changed" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuServer-property-changed"><type>"property-changed"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-SIGNAL-ITEM-ACTIVATED:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED</title> +<indexterm zone="DBUSMENU-MENUITEM-SIGNAL-ITEM-ACTIVATED:CAPS"><primary>DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED "item-activated" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuServer-item-activated"><type>"item-activated"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-SIGNAL-CHILD-ADDED:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED</title> +<indexterm zone="DBUSMENU-MENUITEM-SIGNAL-CHILD-ADDED:CAPS"><primary>DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_SIGNAL_CHILD_ADDED "child-added" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuServer-child-added"><type>"child-added"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-SIGNAL-CHILD-REMOVED:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED</title> +<indexterm zone="DBUSMENU-MENUITEM-SIGNAL-CHILD-REMOVED:CAPS"><primary>DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_SIGNAL_CHILD_REMOVED "child-removed" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuServer-child-removed"><type>"child-removed"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-SIGNAL-CHILD-MOVED:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED</title> +<indexterm zone="DBUSMENU-MENUITEM-SIGNAL-CHILD-MOVED:CAPS"><primary>DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_SIGNAL_CHILD_MOVED "child-moved" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuServer-child-moved"><type>"child-moved"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-SIGNAL-EVENT:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_SIGNAL_EVENT</title> +<indexterm zone="DBUSMENU-MENUITEM-SIGNAL-EVENT:CAPS"><primary>DBUSMENU_MENUITEM_SIGNAL_EVENT</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_SIGNAL_EVENT "event" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuServer-event"><type>"event"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-SIGNAL-REALIZED:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_SIGNAL_REALIZED</title> +<indexterm zone="DBUSMENU-MENUITEM-SIGNAL-REALIZED:CAPS"><primary>DBUSMENU_MENUITEM_SIGNAL_REALIZED</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_SIGNAL_REALIZED "realized" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuServer-realized"><type>"realized"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-SIGNAL-REALIZED-ID:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_SIGNAL_REALIZED_ID</title> +<indexterm zone="DBUSMENU-MENUITEM-SIGNAL-REALIZED-ID:CAPS"><primary>DBUSMENU_MENUITEM_SIGNAL_REALIZED_ID</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_SIGNAL_REALIZED_ID (g_signal_lookup(DBUSMENU_MENUITEM_SIGNAL_REALIZED, DBUSMENU_TYPE_MENUITEM)) +</programlisting> +<para> +ID to attach to signal <link linkend="DbusmenuServer-realized"><type>"realized"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-SIGNAL-ABOUT-TO-SHOW:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_SIGNAL_ABOUT_TO_SHOW</title> +<indexterm zone="DBUSMENU-MENUITEM-SIGNAL-ABOUT-TO-SHOW:CAPS"><primary>DBUSMENU_MENUITEM_SIGNAL_ABOUT_TO_SHOW</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_SIGNAL_ABOUT_TO_SHOW "about-to-show" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuServer-about-to-show"><type>"about-to-show"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-SIGNAL-SHOW-TO-USER:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_SIGNAL_SHOW_TO_USER</title> +<indexterm zone="DBUSMENU-MENUITEM-SIGNAL-SHOW-TO-USER:CAPS"><primary>DBUSMENU_MENUITEM_SIGNAL_SHOW_TO_USER</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_SIGNAL_SHOW_TO_USER "show-to-user" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuServer-show-to-user"><type>"show-to-user"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-PROP-TYPE:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_PROP_TYPE</title> +<indexterm zone="DBUSMENU-MENUITEM-PROP-TYPE:CAPS"><primary>DBUSMENU_MENUITEM_PROP_TYPE</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_PROP_TYPE "type" +</programlisting> +<para> +<link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> property used to represent what type of menuitem +this object represents. Type: <link linkend="G-VARIANT-TYPE-STRING:CAPS"><type>G_VARIANT_TYPE_STRING</type></link>. +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-PROP-VISIBLE:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_PROP_VISIBLE</title> +<indexterm zone="DBUSMENU-MENUITEM-PROP-VISIBLE:CAPS"><primary>DBUSMENU_MENUITEM_PROP_VISIBLE</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_PROP_VISIBLE "visible" +</programlisting> +<para> +<link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> property used to represent whether the menuitem +should be shown or not. Type: <link linkend="G-VARIANT-TYPE-BOOLEAN:CAPS"><type>G_VARIANT_TYPE_BOOLEAN</type></link>. +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-PROP-ENABLED:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_PROP_ENABLED</title> +<indexterm zone="DBUSMENU-MENUITEM-PROP-ENABLED:CAPS"><primary>DBUSMENU_MENUITEM_PROP_ENABLED</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_PROP_ENABLED "enabled" +</programlisting> +<para> +<link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> property used to represent whether the menuitem +is clickable or not. Type: <link linkend="G-VARIANT-TYPE-BOOLEAN:CAPS"><type>G_VARIANT_TYPE_BOOLEAN</type></link>. +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-PROP-LABEL:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_PROP_LABEL</title> +<indexterm zone="DBUSMENU-MENUITEM-PROP-LABEL:CAPS"><primary>DBUSMENU_MENUITEM_PROP_LABEL</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_PROP_LABEL "label" +</programlisting> +<para> +<link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> property used for the text on the menu item. +Type: <link linkend="G-VARIANT-TYPE-STRING:CAPS"><type>G_VARIANT_TYPE_STRING</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-PROP-ICON-NAME:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_PROP_ICON_NAME</title> +<indexterm zone="DBUSMENU-MENUITEM-PROP-ICON-NAME:CAPS"><primary>DBUSMENU_MENUITEM_PROP_ICON_NAME</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_PROP_ICON_NAME "icon-name" +</programlisting> +<para> +<link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> property that is the name of the icon under the +Freedesktop.org icon naming spec. Type: <link linkend="G-VARIANT-TYPE-STRING:CAPS"><type>G_VARIANT_TYPE_STRING</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-PROP-ICON-DATA:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_PROP_ICON_DATA</title> +<indexterm zone="DBUSMENU-MENUITEM-PROP-ICON-DATA:CAPS"><primary>DBUSMENU_MENUITEM_PROP_ICON_DATA</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_PROP_ICON_DATA "icon-data" +</programlisting> +<para> +<link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> property that is the raw data of a custom icon +used in the application. Type: <link linkend="G-VARIANT-TYPE-VARIANT:CAPS"><type>G_VARIANT_TYPE_VARIANT</type></link> +</para> +<para> +It is recommended that this is not set directly but instead the +libdbusmenu-gtk library is used with the function <link linkend="dbusmenu-menuitem-property-set-image"><function>dbusmenu_menuitem_property_set_image()</function></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE</title> +<indexterm zone="DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS"><primary>DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE "toggle-type" +</programlisting> +<para> +<link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> property that says what type of toggle entry should +be shown in the menu. Should be either <link linkend="DBUSMENU-MENUITEM-TOGGLE-CHECK:CAPS"><type>DBUSMENU_MENUITEM_TOGGLE_CHECK</type></link> +or <link linkend="DBUSMENU-MENUITEM-TOGGLE-RADIO:CAPS"><type>DBUSMENU_MENUITEM_TOGGLE_RADIO</type></link>. Type: <link linkend="G-VARIANT-TYPE-STRING:CAPS"><type>G_VARIANT_TYPE_STRING</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_PROP_TOGGLE_STATE</title> +<indexterm zone="DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS"><primary>DBUSMENU_MENUITEM_PROP_TOGGLE_STATE</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_PROP_TOGGLE_STATE "toggle-state" +</programlisting> +<para> +<link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> property that says what state a toggle entry should +be shown as the menu. Should be either <link linkend="DBUSMENU-MENUITEM-TOGGLE-STATE-UNCHECKED:CAPS"><type>DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED</type></link> +<link linkend="DBUSMENU-MENUITEM-TOGGLE-STATE-CHECKED:CAPS"><type>DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED</type></link> or <link linkend="DBUSMENU-MENUITEM-TOGGLE-STATUE-UNKNOWN:CAPS"><type>DBUSMENU_MENUITEM_TOGGLE_STATUE_UNKNOWN</type></link>. +Type: <link linkend="G-VARIANT-TYPE-INT32:CAPS"><type>G_VARIANT_TYPE_INT32</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-PROP-CHILD-DISPLAY:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY</title> +<indexterm zone="DBUSMENU-MENUITEM-PROP-CHILD-DISPLAY:CAPS"><primary>DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY "children-display" +</programlisting> +<para> +<link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> property that tells how the children of this menuitem +should be displayed. Most likely this will be unset or of the value +<link linkend="DBUSMENU-MENUITEM-CHILD-DISPLAY-SUBMENU:CAPS"><type>DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU</type></link>. Type: <link linkend="G-VARIANT-TYPE-STRING:CAPS"><type>G_VARIANT_TYPE_STRING</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_PROP_SHORTCUT</title> +<indexterm zone="DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS"><primary>DBUSMENU_MENUITEM_PROP_SHORTCUT</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_PROP_SHORTCUT "shortcut" +</programlisting> +<para> +<link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> property that is the entries that represent a shortcut +to activate the menuitem. It is an array of arrays of strings. +Type: <link linkend="G-VARIANT-TYPE-ARRAY:CAPS"><type>G_VARIANT_TYPE_ARRAY</type></link> +</para> +<para> +It is recommended that this is not set directly but instead the +libdbusmenu-gtk library is used with the function <link linkend="dbusmenu-menuitem-property-set-shortcut"><function>dbusmenu_menuitem_property_set_shortcut()</function></link> +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-TOGGLE-CHECK:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_TOGGLE_CHECK</title> +<indexterm zone="DBUSMENU-MENUITEM-TOGGLE-CHECK:CAPS"><primary>DBUSMENU_MENUITEM_TOGGLE_CHECK</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_TOGGLE_CHECK "checkmark" +</programlisting> +<para> +Used to set <link linkend="DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS"><type>DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE</type></link> to be a standard +check mark item. +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-TOGGLE-RADIO:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_TOGGLE_RADIO</title> +<indexterm zone="DBUSMENU-MENUITEM-TOGGLE-RADIO:CAPS"><primary>DBUSMENU_MENUITEM_TOGGLE_RADIO</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_TOGGLE_RADIO "radio" +</programlisting> +<para> +Used to set <link linkend="DBUSMENU-MENUITEM-PROP-TOGGLE-TYPE:CAPS"><type>DBUSMENU_MENUITEM_PROP_TOGGLE_TYPE</type></link> to be a standard +radio item. +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-TOGGLE-STATE-UNCHECKED:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED</title> +<indexterm zone="DBUSMENU-MENUITEM-TOGGLE-STATE-UNCHECKED:CAPS"><primary>DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED 0 +</programlisting> +<para> +Used to set <link linkend="DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS"><type>DBUSMENU_MENUITEM_PROP_TOGGLE_STATE</type></link> so that the menu's +toggle item is empty. +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-TOGGLE-STATE-CHECKED:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED</title> +<indexterm zone="DBUSMENU-MENUITEM-TOGGLE-STATE-CHECKED:CAPS"><primary>DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_TOGGLE_STATE_CHECKED 1 +</programlisting> +<para> +Used to set <link linkend="DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS"><type>DBUSMENU_MENUITEM_PROP_TOGGLE_STATE</type></link> so that the menu's +toggle item is filled. +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-TOGGLE-STATE-UNKNOWN:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_TOGGLE_STATE_UNKNOWN</title> +<indexterm zone="DBUSMENU-MENUITEM-TOGGLE-STATE-UNKNOWN:CAPS"><primary>DBUSMENU_MENUITEM_TOGGLE_STATE_UNKNOWN</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_TOGGLE_STATE_UNKNOWN -1 +</programlisting> +<para> +Used to set <link linkend="DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS"><type>DBUSMENU_MENUITEM_PROP_TOGGLE_STATE</type></link> so that the menu's +toggle item is undecided. +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-ICON-NAME-BLANK:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_ICON_NAME_BLANK</title> +<indexterm zone="DBUSMENU-MENUITEM-ICON-NAME-BLANK:CAPS"><primary>DBUSMENU_MENUITEM_ICON_NAME_BLANK</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_ICON_NAME_BLANK "blank-icon" +</programlisting> +<para> +Used to set <link linkend="DBUSMENU-MENUITEM-PROP-TOGGLE-STATE:CAPS"><type>DBUSMENU_MENUITEM_PROP_TOGGLE_STATE</type></link> so that the menu's +toggle item is undecided. +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-CHILD-DISPLAY-SUBMENU:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU</title> +<indexterm zone="DBUSMENU-MENUITEM-CHILD-DISPLAY-SUBMENU:CAPS"><primary>DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_CHILD_DISPLAY_SUBMENU "submenu" +</programlisting> +<para> +Used in <link linkend="DBUSMENU-MENUITEM-PROP-CHILD-DISPLAY:CAPS"><type>DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY</type></link> to have the +subitems displayed as a submenu. +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-SHORTCUT-ALT:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_SHORTCUT_ALT</title> +<indexterm zone="DBUSMENU-MENUITEM-SHORTCUT-ALT:CAPS"><primary>DBUSMENU_MENUITEM_SHORTCUT_ALT</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_SHORTCUT_ALT "Alt" +</programlisting> +<para> +Used in <link linkend="DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS"><type>DBUSMENU_MENUITEM_PROP_SHORTCUT</type></link> to represent the +alternate key. +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-SHORTCUT-CONTROL:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_SHORTCUT_CONTROL</title> +<indexterm zone="DBUSMENU-MENUITEM-SHORTCUT-CONTROL:CAPS"><primary>DBUSMENU_MENUITEM_SHORTCUT_CONTROL</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_SHORTCUT_CONTROL "Control" +</programlisting> +<para> +Used in <link linkend="DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS"><type>DBUSMENU_MENUITEM_PROP_SHORTCUT</type></link> to represent the +control key. +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-SHORTCUT-SHIFT:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_SHORTCUT_SHIFT</title> +<indexterm zone="DBUSMENU-MENUITEM-SHORTCUT-SHIFT:CAPS"><primary>DBUSMENU_MENUITEM_SHORTCUT_SHIFT</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_SHORTCUT_SHIFT "Shift" +</programlisting> +<para> +Used in <link linkend="DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS"><type>DBUSMENU_MENUITEM_PROP_SHORTCUT</type></link> to represent the +shift key. +</para></refsect2> +<refsect2 id="DBUSMENU-MENUITEM-SHORTCUT-SUPER:CAPS" role="macro"> +<title>DBUSMENU_MENUITEM_SHORTCUT_SUPER</title> +<indexterm zone="DBUSMENU-MENUITEM-SHORTCUT-SUPER:CAPS"><primary>DBUSMENU_MENUITEM_SHORTCUT_SUPER</primary></indexterm> +<programlisting>#define DBUSMENU_MENUITEM_SHORTCUT_SUPER "Super" +</programlisting> +<para> +Used in <link linkend="DBUSMENU-MENUITEM-PROP-SHORTCUT:CAPS"><type>DBUSMENU_MENUITEM_PROP_SHORTCUT</type></link> to represent the +super key. +</para></refsect2> +<refsect2 id="DbusmenuMenuitem" role="struct"> +<title>struct DbusmenuMenuitem</title> +<indexterm zone="DbusmenuMenuitem"><primary>DbusmenuMenuitem</primary></indexterm> +<programlisting>struct DbusmenuMenuitem { + GObject parent; + + /*< Private >*/ + DbusmenuMenuitemPrivate * priv; +}; +</programlisting> +<para> +This is the <link linkend="GObject"><type>GObject</type></link> based object that represents a menu +item. It gets created the same on both the client and +the server side and libdbusmenu-glib does the work of making +this object model appear on both sides of DBus. Simple +really, though through updates and people coming on and off +the bus it can lead to lots of fun complex scenarios. +</para><variablelist role="struct"> +<varlistentry><term><link linkend="GObject"><type>GObject</type></link> <structfield id="DbusmenuMenuitem.parent">parent</structfield>;</term> +<listitem><simpara>Parent object</simpara></listitem> +</varlistentry> +<varlistentry><term><link linkend="DbusmenuMenuitemPrivate"><type>DbusmenuMenuitemPrivate</type></link> *<structfield id="DbusmenuMenuitem.priv">priv</structfield>;</term> +<listitem><simpara>Private data</simpara></listitem> +</varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-about-to-show-cb" role="function"> +<title>dbusmenu_menuitem_about_to_show_cb ()</title> +<indexterm zone="dbusmenu-menuitem-about-to-show-cb"><primary>dbusmenu_menuitem_about_to_show_cb</primary></indexterm> +<programlisting><link linkend="void"><returnvalue>void</returnvalue></link> (*dbusmenu_menuitem_about_to_show_cb) + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="gpointer"><type>gpointer</type></link> user_data</parameter>);</programlisting> +<para> +Callback prototype for a callback that is called when the +menu should be shown. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>Menu item that should be shown</simpara></listitem></varlistentry> +<varlistentry><term><parameter>user_data</parameter> :</term> +<listitem><simpara>Extra user data sent with the function. <emphasis role="annotation">[<acronym>closure</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-buildvariant-slot-t" role="function"> +<title>dbusmenu_menuitem_buildvariant_slot_t ()</title> +<indexterm zone="dbusmenu-menuitem-buildvariant-slot-t"><primary>dbusmenu_menuitem_buildvariant_slot_t</primary></indexterm> +<programlisting><link linkend="GVariant"><returnvalue>GVariant</returnvalue></link> * (*dbusmenu_menuitem_buildvariant_slot_t) + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="gchar"><type>gchar</type></link> **properties</parameter>);</programlisting> +<para> +This is the function that is called to represent this menu item +as a variant. Should call it's own children. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>Menu item that should be built from. <emphasis role="annotation">[<acronym>in</acronym>]</emphasis></simpara></listitem></varlistentry> +<varlistentry><term><parameter>properties</parameter> :</term> +<listitem><simpara>A list of properties that should be the only ones in the resulting variant structure. <emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A variant representing this item and it's children. <emphasis role="annotation">[<acronym>transfer full</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="DbusmenuMenuitemClass" role="struct"> +<title>struct DbusmenuMenuitemClass</title> +<indexterm zone="DbusmenuMenuitemClass"><primary>DbusmenuMenuitemClass</primary></indexterm> +<programlisting>struct DbusmenuMenuitemClass { + GObjectClass parent_class; + + /* Signals */ + void (*property_changed) (gchar * property, GVariant * value); + void (*item_activated) (guint timestamp); + void (*child_added) (DbusmenuMenuitem * child, guint position); + void (*child_removed) (DbusmenuMenuitem * child); + void (*child_moved) (DbusmenuMenuitem * child, guint newpos, guint oldpos); + void (*realized) (void); + + /* Virtual functions */ + dbusmenu_menuitem_buildvariant_slot_t buildvariant; + void (*handle_event) (DbusmenuMenuitem * mi, const gchar * name, GVariant * variant, guint timestamp); + void (*send_about_to_show) (DbusmenuMenuitem * mi, void (*cb) (DbusmenuMenuitem * mi, gpointer user_data), gpointer cb_data); + + void (*show_to_user) (DbusmenuMenuitem * mi, guint timestamp, gpointer cb_data); + gboolean (*about_to_show) (void); + + void (*event) (const gchar * name, GVariant * value, guint timestamp); + + /*< Private >*/ + void (*reserved1) (void); + void (*reserved2) (void); + void (*reserved3) (void); + void (*reserved4) (void); + void (*reserved5) (void); +}; +</programlisting> +<para> +Functions and signals that every menuitem should know something +about. +</para><variablelist role="struct"> +<varlistentry><term><link linkend="GObjectClass"><type>GObjectClass</type></link> <structfield id="DbusmenuMenuitemClass.parent-class">parent_class</structfield>;</term> +<listitem><simpara>Functions and signals from our parent</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemClass.property-changed">property_changed</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuMenuitem-property-changed"><type>"property-changed"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemClass.item-activated">item_activated</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuMenuitem-item-activated"><type>"item-activated"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemClass.child-added">child_added</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuMenuitem-child-added"><type>"child-added"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemClass.child-removed">child_removed</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuMenuitem-child-removed"><type>"child-removed"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemClass.child-moved">child_moved</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuMenuitem-child-moved"><type>"child-moved"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemClass.realized">realized</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuMenuitem-realized"><type>"realized"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><link linkend="dbusmenu-menuitem-buildvariant-slot-t"><type>dbusmenu_menuitem_buildvariant_slot_t</type></link> <structfield id="DbusmenuMenuitemClass.buildvariant">buildvariant</structfield>;</term> +<listitem><simpara>Virtual function that appends the strings required to represent this menu item in the menu variant.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemClass.handle-event">handle_event</structfield> ()</term> +<listitem><simpara>This function is to override how events are handled by subclasses. Look at <link linkend="dbusmenu-menuitem-handle-event"><type>dbusmenu_menuitem_handle_event</type></link> for lots of good information.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemClass.show-to-user">show_to_user</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuMenuitem-show-to-user"><type>"show-to-user"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemClass.about-to-show">about_to_show</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuMenuitem-about-to-show"><type>"about-to-show"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemClass.event">event</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbsumenuMenuitem-event"><type>"event"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemClass.reserved1">reserved1</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemClass.reserved2">reserved2</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemClass.reserved3">reserved3</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemClass.reserved4">reserved4</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuMenuitemClass.reserved5">reserved5</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-new" role="function"> +<title>dbusmenu_menuitem_new ()</title> +<indexterm zone="dbusmenu-menuitem-new"><primary>dbusmenu_menuitem_new</primary></indexterm> +<programlisting><link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * dbusmenu_menuitem_new (<parameter><type>void</type></parameter>);</programlisting> +<para> +Create a new <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> with all default values. +</para><variablelist role="params"> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A newly allocated <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link>.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-new-with-id" role="function"> +<title>dbusmenu_menuitem_new_with_id ()</title> +<indexterm zone="dbusmenu-menuitem-new-with-id"><primary>dbusmenu_menuitem_new_with_id</primary></indexterm> +<programlisting><link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * dbusmenu_menuitem_new_with_id (<parameter><link linkend="gint"><type>gint</type></link> id</parameter>);</programlisting> +<para> +This creates a blank <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> with a specific ID. +</para><variablelist role="params"> +<varlistentry><term><parameter>id</parameter> :</term> +<listitem><simpara>ID to use for this menuitem</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A newly allocated <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link>.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-get-id" role="function"> +<title>dbusmenu_menuitem_get_id ()</title> +<indexterm zone="dbusmenu-menuitem-get-id"><primary>dbusmenu_menuitem_get_id</primary></indexterm> +<programlisting><link linkend="gint"><returnvalue>gint</returnvalue></link> dbusmenu_menuitem_get_id (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>);</programlisting> +<para> +Gets the unique ID for <parameter>mi</parameter>. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to query.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>The ID of the <parameter>mi</parameter>.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-get-children" role="function"> +<title>dbusmenu_menuitem_get_children ()</title> +<indexterm zone="dbusmenu-menuitem-get-children"><primary>dbusmenu_menuitem_get_children</primary></indexterm> +<programlisting><link linkend="GList"><returnvalue>GList</returnvalue></link> * dbusmenu_menuitem_get_children (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>);</programlisting> +<para> +Returns simply the list of children that this menu item +has. The list is valid until another child related function +is called, where it might be changed. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to query.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A <link linkend="GList"><type>GList</type></link> of pointers to <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> objects. <emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-take-children" role="function"> +<title>dbusmenu_menuitem_take_children ()</title> +<indexterm zone="dbusmenu-menuitem-take-children"><primary>dbusmenu_menuitem_take_children</primary></indexterm> +<programlisting><link linkend="GList"><returnvalue>GList</returnvalue></link> * dbusmenu_menuitem_take_children (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>);</programlisting> +<para> +While the name sounds devious that's exactly what this function +does. It takes the list of children from the <parameter>mi</parameter> and clears the +internal list. The calling function is now in charge of the ref's +on the children it has taken. A lot of responsibility involved +in taking children. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenMenuitem"><type>DbusmenMenuitem</type></link> to take the children from.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A <link linkend="GList"><type>GList</type></link> of pointers to <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> objects. <emphasis role="annotation">[<acronym>transfer full</acronym>][<acronym>element-type</acronym> Dbusmenu.Menuitem]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-get-position" role="function"> +<title>dbusmenu_menuitem_get_position ()</title> +<indexterm zone="dbusmenu-menuitem-get-position"><primary>dbusmenu_menuitem_get_position</primary></indexterm> +<programlisting><link linkend="guint"><returnvalue>guint</returnvalue></link> dbusmenu_menuitem_get_position (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *parent</parameter>);</programlisting> +<para> +This function returns the position of the menu item <parameter>mi</parameter> +in the children of <parameter>parent</parameter>. It will return zero if the +menu item can't be found. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to find the position of</simpara></listitem></varlistentry> +<varlistentry><term><parameter>parent</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> who's children contain <parameter>mi</parameter></simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>The position of <parameter>mi</parameter> in the children of <parameter>parent</parameter>.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-get-position-realized" role="function"> +<title>dbusmenu_menuitem_get_position_realized ()</title> +<indexterm zone="dbusmenu-menuitem-get-position-realized"><primary>dbusmenu_menuitem_get_position_realized</primary></indexterm> +<programlisting><link linkend="guint"><returnvalue>guint</returnvalue></link> dbusmenu_menuitem_get_position_realized + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *parent</parameter>);</programlisting> +<para> +This function is very similar to <link linkend="dbusmenu-menuitem-get-position"><type>dbusmenu_menuitem_get_position</type></link> +except that it only counts in the children that have been realized. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to find the position of</simpara></listitem></varlistentry> +<varlistentry><term><parameter>parent</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> who's children contain <parameter>mi</parameter></simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>The position of <parameter>mi</parameter> in the realized children of <parameter>parent</parameter>.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-child-append" role="function"> +<title>dbusmenu_menuitem_child_append ()</title> +<indexterm zone="dbusmenu-menuitem-child-append"><primary>dbusmenu_menuitem_child_append</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_child_append (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *child</parameter>);</programlisting> +<para> +This function adds <parameter>child</parameter> to the list of children on <parameter>mi</parameter> at +the end of that list. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> which will become a new parent</simpara></listitem></varlistentry> +<varlistentry><term><parameter>child</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenMenuitem"><type>DbusmenMenuitem</type></link> that will be a child</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>Whether the child has been added successfully.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-child-prepend" role="function"> +<title>dbusmenu_menuitem_child_prepend ()</title> +<indexterm zone="dbusmenu-menuitem-child-prepend"><primary>dbusmenu_menuitem_child_prepend</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_child_prepend (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *child</parameter>);</programlisting> +<para> +This function adds <parameter>child</parameter> to the list of children on <parameter>mi</parameter> at +the beginning of that list. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> which will become a new parent</simpara></listitem></varlistentry> +<varlistentry><term><parameter>child</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenMenuitem"><type>DbusmenMenuitem</type></link> that will be a child</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>Whether the child has been added successfully.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-child-delete" role="function"> +<title>dbusmenu_menuitem_child_delete ()</title> +<indexterm zone="dbusmenu-menuitem-child-delete"><primary>dbusmenu_menuitem_child_delete</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_child_delete (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *child</parameter>);</programlisting> +<para> +This function removes <parameter>child</parameter> from the children list of <parameter>mi</parameter>. It does +not call <link linkend="g-object-unref"><type>g_object_unref</type></link> on <parameter>child</parameter>. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> which has <parameter>child</parameter> as a child</simpara></listitem></varlistentry> +<varlistentry><term><parameter>child</parameter> :</term> +<listitem><simpara>The child <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> that you want to no longer +be a child of <parameter>mi</parameter>.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>If we were able to delete <parameter>child</parameter>.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-child-add-position" role="function"> +<title>dbusmenu_menuitem_child_add_position ()</title> +<indexterm zone="dbusmenu-menuitem-child-add-position"><primary>dbusmenu_menuitem_child_add_position</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_child_add_position + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *child</parameter>, + <parameter><link linkend="guint"><type>guint</type></link> position</parameter>);</programlisting> +<para> +Puts <parameter>child</parameter> in the list of children for <parameter>mi</parameter> at the location +specified in <parameter>position</parameter>. If there is not enough entires available +then <parameter>child</parameter> will be placed at the end of the list. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> that we're adding the child <parameter>child</parameter> to.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>child</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to make a child of <parameter>mi</parameter>.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>position</parameter> :</term> +<listitem><simpara>Where in <parameter>mi</parameter> object's list of chidren <parameter>child</parameter> should be placed.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>Whether <parameter>child</parameter> was added successfully.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-child-reorder" role="function"> +<title>dbusmenu_menuitem_child_reorder ()</title> +<indexterm zone="dbusmenu-menuitem-child-reorder"><primary>dbusmenu_menuitem_child_reorder</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_child_reorder (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *child</parameter>, + <parameter><link linkend="guint"><type>guint</type></link> position</parameter>);</programlisting> +<para> +This function moves a child on the list of children. It is +for a child that is already in the list, but simply needs a +new location. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> that has children needing realignment</simpara></listitem></varlistentry> +<varlistentry><term><parameter>child</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> that is a child needing to be moved</simpara></listitem></varlistentry> +<varlistentry><term><parameter>position</parameter> :</term> +<listitem><simpara>The position in the list to place it in</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>Whether the move was successful.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-child-find" role="function"> +<title>dbusmenu_menuitem_child_find ()</title> +<indexterm zone="dbusmenu-menuitem-child-find"><primary>dbusmenu_menuitem_child_find</primary></indexterm> +<programlisting><link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * dbusmenu_menuitem_child_find (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="gint"><type>gint</type></link> id</parameter>);</programlisting> +<para> +Search the children of <parameter>mi</parameter> to find one with the ID of <parameter>id</parameter>. +If it doesn't exist then we return <link linkend="NULL:CAPS"><type>NULL</type></link>. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> who's children to look on</simpara></listitem></varlistentry> +<varlistentry><term><parameter>id</parameter> :</term> +<listitem><simpara>The ID of the child that we're looking for.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>The menu item with the ID <parameter>id</parameter> or <link linkend="NULL:CAPS"><type>NULL</type></link> if it +can't be found. <emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-find-id" role="function"> +<title>dbusmenu_menuitem_find_id ()</title> +<indexterm zone="dbusmenu-menuitem-find-id"><primary>dbusmenu_menuitem_find_id</primary></indexterm> +<programlisting><link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * dbusmenu_menuitem_find_id (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="gint"><type>gint</type></link> id</parameter>);</programlisting> +<para> +This function searchs the whole tree of children that +are attached to <parameter>mi</parameter>. This could be quite a few nodes, all +the way down the tree. It is a depth first search. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> at the top of the tree to search</simpara></listitem></varlistentry> +<varlistentry><term><parameter>id</parameter> :</term> +<listitem><simpara>ID of the <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to search for</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> with the ID of <parameter>id</parameter> +or <link linkend="NULL:CAPS"><type>NULL</type></link> if there isn't such a menu item in the tree +represented by <parameter>mi</parameter>. <emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-property-set" role="function"> +<title>dbusmenu_menuitem_property_set ()</title> +<indexterm zone="dbusmenu-menuitem-property-set"><primary>dbusmenu_menuitem_property_set</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_property_set (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *value</parameter>);</programlisting> +<para> +Takes the pair of <parameter>property</parameter> and <parameter>value</parameter> and places them as a +property on <parameter>mi</parameter>. If a property already exists by that name, +then the value is set to the new value. If not, the property +is added. If the value is changed or the property was previously +unset then the signal <link linkend="DbusmenuMenuitem-prop-changed"><type>"prop-changed"</type></link> will be +emitted by this function. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to set the property on.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>property</parameter> :</term> +<listitem><simpara>Name of the property to set.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>value</parameter> :</term> +<listitem><simpara>The value of the property.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A boolean representing if the property value was set.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-property-set-bool" role="function"> +<title>dbusmenu_menuitem_property_set_bool ()</title> +<indexterm zone="dbusmenu-menuitem-property-set-bool"><primary>dbusmenu_menuitem_property_set_bool</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_property_set_bool (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>, + <parameter>const <link linkend="gboolean"><type>gboolean</type></link> value</parameter>);</programlisting> +<para> +Takes a boolean <parameter>value</parameter> and sets it on <parameter>property</parameter> as a +property on <parameter>mi</parameter>. If a property already exists by that name, +then the value is set to the new value. If not, the property +is added. If the value is changed or the property was previously +unset then the signal <link linkend="DbusmenuMenuitem-prop-changed"><type>"prop-changed"</type></link> will be +emitted by this function. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to set the property on.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>property</parameter> :</term> +<listitem><simpara>Name of the property to set.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>value</parameter> :</term> +<listitem><simpara>The value of the property.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A boolean representing if the property value was set.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-property-set-int" role="function"> +<title>dbusmenu_menuitem_property_set_int ()</title> +<indexterm zone="dbusmenu-menuitem-property-set-int"><primary>dbusmenu_menuitem_property_set_int</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_property_set_int (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>, + <parameter>const <link linkend="gint"><type>gint</type></link> value</parameter>);</programlisting> +<para> +Takes a boolean <parameter>value</parameter> and sets it on <parameter>property</parameter> as a +property on <parameter>mi</parameter>. If a property already exists by that name, +then the value is set to the new value. If not, the property +is added. If the value is changed or the property was previously +unset then the signal <link linkend="DbusmenuMenuitem-prop-changed"><type>"prop-changed"</type></link> will be +emitted by this function. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to set the property on.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>property</parameter> :</term> +<listitem><simpara>Name of the property to set.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>value</parameter> :</term> +<listitem><simpara>The value of the property.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A boolean representing if the property value was set.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-property-set-variant" role="function"> +<title>dbusmenu_menuitem_property_set_variant ()</title> +<indexterm zone="dbusmenu-menuitem-property-set-variant"><primary>dbusmenu_menuitem_property_set_variant</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_property_set_variant + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>, + <parameter><link linkend="GVariant"><type>GVariant</type></link> *value</parameter>);</programlisting> +<para> +Takes the pair of <parameter>property</parameter> and <parameter>value</parameter> and places them as a +property on <parameter>mi</parameter>. If a property already exists by that name, +then the value is set to the new value. If not, the property +is added. If the value is changed or the property was previously +unset then the signal <link linkend="DbusmenuMenuitem-prop-changed"><type>"prop-changed"</type></link> will be +emitted by this function. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to set the property on.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>property</parameter> :</term> +<listitem><simpara>Name of the property to set.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>value</parameter> :</term> +<listitem><simpara>The value of the property.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A boolean representing if the property value was set.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-property-get" role="function"> +<title>dbusmenu_menuitem_property_get ()</title> +<indexterm zone="dbusmenu-menuitem-property-get"><primary>dbusmenu_menuitem_property_get</primary></indexterm> +<programlisting>const <link linkend="gchar"><returnvalue>gchar</returnvalue></link> * dbusmenu_menuitem_property_get (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>);</programlisting> +<para> +Look up a property on <parameter>mi</parameter> and return the value of it if +it exits. <link linkend="NULL:CAPS"><type>NULL</type></link> will be returned if the property doesn't +exist. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to look for the property on.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>property</parameter> :</term> +<listitem><simpara>The property to grab.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A string with the value of the property +that shouldn't be free'd. Or <link linkend="NULL:CAPS"><type>NULL</type></link> if the property +is not set or is not a string. <emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-property-get-bool" role="function"> +<title>dbusmenu_menuitem_property_get_bool ()</title> +<indexterm zone="dbusmenu-menuitem-property-get-bool"><primary>dbusmenu_menuitem_property_get_bool</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_property_get_bool (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>);</programlisting> +<para> +Look up a property on <parameter>mi</parameter> and return the value of it if +it exits. Returns <link linkend="FALSE:CAPS"><type>FALSE</type></link> if the property doesn't exist. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to look for the property on.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>property</parameter> :</term> +<listitem><simpara>The property to grab.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>The value of the property or <link linkend="FALSE:CAPS"><type>FALSE</type></link>.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-property-get-int" role="function"> +<title>dbusmenu_menuitem_property_get_int ()</title> +<indexterm zone="dbusmenu-menuitem-property-get-int"><primary>dbusmenu_menuitem_property_get_int</primary></indexterm> +<programlisting><link linkend="gint"><returnvalue>gint</returnvalue></link> dbusmenu_menuitem_property_get_int (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>);</programlisting> +<para> +Look up a property on <parameter>mi</parameter> and return the value of it if +it exits. Returns zero if the property doesn't exist. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to look for the property on.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>property</parameter> :</term> +<listitem><simpara>The property to grab.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>The value of the property or zero.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-property-get-variant" role="function"> +<title>dbusmenu_menuitem_property_get_variant ()</title> +<indexterm zone="dbusmenu-menuitem-property-get-variant"><primary>dbusmenu_menuitem_property_get_variant</primary></indexterm> +<programlisting><link linkend="GVariant"><returnvalue>GVariant</returnvalue></link> * dbusmenu_menuitem_property_get_variant + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>);</programlisting> +<para> +Look up a property on <parameter>mi</parameter> and return the value of it if +it exits. <link linkend="NULL:CAPS"><type>NULL</type></link> will be returned if the property doesn't +exist. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to look for the property on.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>property</parameter> :</term> +<listitem><simpara>The property to grab.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A GVariant for the property. <emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-property-exist" role="function"> +<title>dbusmenu_menuitem_property_exist ()</title> +<indexterm zone="dbusmenu-menuitem-property-exist"><primary>dbusmenu_menuitem_property_exist</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_property_exist (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>);</programlisting> +<para> +Checkes to see if a particular property exists on <parameter>mi</parameter> and +returns <link linkend="TRUE:CAPS"><type>TRUE</type></link> if so. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to look for the property on.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>property</parameter> :</term> +<listitem><simpara>The property to look for.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A boolean checking to see if the property is available</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-properties-list" role="function"> +<title>dbusmenu_menuitem_properties_list ()</title> +<indexterm zone="dbusmenu-menuitem-properties-list"><primary>dbusmenu_menuitem_properties_list</primary></indexterm> +<programlisting><link linkend="GList"><returnvalue>GList</returnvalue></link> * dbusmenu_menuitem_properties_list (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>);</programlisting> +<para> +This functiong gets a list of the names of all the properties +that are set on this menu item. This data on the list is owned +by the menuitem but the list is not and should be freed using +<link linkend="g-list-free"><function>g_list_free()</function></link> when the calling function is done with it. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to list the properties on</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A list of strings or NULL if there are +none. <emphasis role="annotation">[<acronym>transfer container</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-properties-copy" role="function"> +<title>dbusmenu_menuitem_properties_copy ()</title> +<indexterm zone="dbusmenu-menuitem-properties-copy"><primary>dbusmenu_menuitem_properties_copy</primary></indexterm> +<programlisting><link linkend="GHashTable"><returnvalue>GHashTable</returnvalue></link> * dbusmenu_menuitem_properties_copy (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>);</programlisting> +<para> +This function takes the properties of a <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> +and puts them into a <link linkend="GHashTable"><type>GHashTable</type></link> that is referenced by the +key of a string and has the value of a string. The hash +table may not have any entries if there aren't any or there +is an error in processing. It is the caller's responsibility +to destroy the created <link linkend="GHashTable"><type>GHashTable</type></link>. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> that we're interested in the properties of</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A brand new <link linkend="GHashTable"><type>GHashTable</type></link> that contains all of +theroperties that are on this <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> <parameter>mi</parameter>. <emphasis role="annotation">[<acronym>transfer full</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-property-remove" role="function"> +<title>dbusmenu_menuitem_property_remove ()</title> +<indexterm zone="dbusmenu-menuitem-property-remove"><primary>dbusmenu_menuitem_property_remove</primary></indexterm> +<programlisting><link linkend="void"><returnvalue>void</returnvalue></link> dbusmenu_menuitem_property_remove (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>);</programlisting> +<para> +Removes a property from the menuitem. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to remove the property on.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>property</parameter> :</term> +<listitem><simpara>The property to look for.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-set-root" role="function"> +<title>dbusmenu_menuitem_set_root ()</title> +<indexterm zone="dbusmenu-menuitem-set-root"><primary>dbusmenu_menuitem_set_root</primary></indexterm> +<programlisting><link linkend="void"><returnvalue>void</returnvalue></link> dbusmenu_menuitem_set_root (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="gboolean"><type>gboolean</type></link> root</parameter>);</programlisting> +<para> +This function sets the internal value of whether this is a +root node or not. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to set whether it's root</simpara></listitem></varlistentry> +<varlistentry><term><parameter>root</parameter> :</term> +<listitem><simpara>Whether <parameter>mi</parameter> is a root node or not</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-get-root" role="function"> +<title>dbusmenu_menuitem_get_root ()</title> +<indexterm zone="dbusmenu-menuitem-get-root"><primary>dbusmenu_menuitem_get_root</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_get_root (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>);</programlisting> +<para> +This function returns the internal value of whether this is a +root node or not. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to see whether it's root</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara><link linkend="TRUE:CAPS"><type>TRUE</type></link> if this is a root node</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-foreach" role="function"> +<title>dbusmenu_menuitem_foreach ()</title> +<indexterm zone="dbusmenu-menuitem-foreach"><primary>dbusmenu_menuitem_foreach</primary></indexterm> +<programlisting><link linkend="void"><returnvalue>void</returnvalue></link> dbusmenu_menuitem_foreach (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="void"><type>void</type></link> (*func) (DbusmenuMenuitem * mi, gpointer data)</parameter>, + <parameter><link linkend="gpointer"><type>gpointer</type></link> data</parameter>);</programlisting> +<para> +This calls the function <parameter>func</parameter> on this menu item and all +of the children of this item. And their children. And +their children. And... you get the point. It will get +called on the whole tree. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenItem"><type>DbusmenItem</type></link> to start from</simpara></listitem></varlistentry> +<varlistentry><term><parameter>func</parameter> :</term> +<listitem><simpara>Function to call on every node in the tree</simpara></listitem></varlistentry> +<varlistentry><term><parameter>data</parameter> :</term> +<listitem><simpara>User data to pass to the function. <emphasis role="annotation">[<acronym>closure</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-handle-event" role="function"> +<title>dbusmenu_menuitem_handle_event ()</title> +<indexterm zone="dbusmenu-menuitem-handle-event"><primary>dbusmenu_menuitem_handle_event</primary></indexterm> +<programlisting><link linkend="void"><returnvalue>void</returnvalue></link> dbusmenu_menuitem_handle_event (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *name</parameter>, + <parameter><link linkend="GVariant"><type>GVariant</type></link> *variant</parameter>, + <parameter><link linkend="guint"><type>guint</type></link> timestamp</parameter>);</programlisting> +<para> +This function is called to create an event. It is likely +to be overrided by subclasses. The default menu item +will respond to the activate signal and do: +</para> +<para> +Emits the <link linkend="DbusmenuMenuitem-item-activate"><type>"item-activate"</type></link> signal on this +menu item. Called by server objects when they get the +appropriate DBus signals from the client. +</para> +<para> +If you subclass this function you should really think +about calling the parent function unless you have a good +reason not to. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to send the signal on.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>name</parameter> :</term> +<listitem><simpara>The name of the signal</simpara></listitem></varlistentry> +<varlistentry><term><parameter>variant</parameter> :</term> +<listitem><simpara>A value that could be set for the event</simpara></listitem></varlistentry> +<varlistentry><term><parameter>timestamp</parameter> :</term> +<listitem><simpara>The timestamp of when the event happened</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-send-about-to-show" role="function"> +<title>dbusmenu_menuitem_send_about_to_show ()</title> +<indexterm zone="dbusmenu-menuitem-send-about-to-show"><primary>dbusmenu_menuitem_send_about_to_show</primary></indexterm> +<programlisting><link linkend="void"><returnvalue>void</returnvalue></link> dbusmenu_menuitem_send_about_to_show + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="void"><type>void</type></link> (*cb) (DbusmenuMenuitem * mi, gpointer user_data)</parameter>, + <parameter><link linkend="gpointer"><type>gpointer</type></link> cb_data</parameter>);</programlisting> +<para> +This function is used to send the even that the submenu +of this item is about to be shown. Callers to this event +should delay showing the menu until their callback is +called if possible. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to send the signal on.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>cb</parameter> :</term> +<listitem><simpara>Callback to call when the call has returned.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>cb_data</parameter> :</term> +<listitem><simpara>Data to pass to the callback. <emphasis role="annotation">[<acronym>closure</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-show-to-user" role="function"> +<title>dbusmenu_menuitem_show_to_user ()</title> +<indexterm zone="dbusmenu-menuitem-show-to-user"><primary>dbusmenu_menuitem_show_to_user</primary></indexterm> +<programlisting><link linkend="void"><returnvalue>void</returnvalue></link> dbusmenu_menuitem_show_to_user (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="guint"><type>guint</type></link> timestamp</parameter>);</programlisting> +<para> +Signals that this menu item should be shown to the user. If this is +server side the server will then take it and send it over the +bus. +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to show</simpara></listitem></varlistentry> +<varlistentry><term><parameter>timestamp</parameter> :</term> +<listitem><simpara>The time that the user requested it to be shown</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-get-parent" role="function"> +<title>dbusmenu_menuitem_get_parent ()</title> +<indexterm zone="dbusmenu-menuitem-get-parent"><primary>dbusmenu_menuitem_get_parent</primary></indexterm> +<programlisting><link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * dbusmenu_menuitem_get_parent (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>);</programlisting> +<para> +This function looks up the parent of <parameter>mi</parameter> +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> for which to inspect the parent</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>The parent of this menu item. <emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-set-parent" role="function"> +<title>dbusmenu_menuitem_set_parent ()</title> +<indexterm zone="dbusmenu-menuitem-set-parent"><primary>dbusmenu_menuitem_set_parent</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_set_parent (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *parent</parameter>);</programlisting> +<para> +Sets the parent of <parameter>mi</parameter> to <parameter>parent</parameter>. If <parameter>mi</parameter> already +has a parent, then this call will fail. The parent will +be set automatically when using the usual methods to add a +child menuitem, so this function should not normally be +called directly +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> for which to set the parent</simpara></listitem></varlistentry> +<varlistentry><term><parameter>parent</parameter> :</term> +<listitem><simpara>The new parent <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link></simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>Whether the parent was set successfully</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-unparent" role="function"> +<title>dbusmenu_menuitem_unparent ()</title> +<indexterm zone="dbusmenu-menuitem-unparent"><primary>dbusmenu_menuitem_unparent</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_unparent (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>);</programlisting> +<para> +Unparents the menu item <parameter>mi</parameter>. If <parameter>mi</parameter> doesn't have a +parent, then this call will fail. The menuitem will +be unparented automatically when using the usual methods +to delete a child menuitem, so this function should not +normally be called directly +</para><variablelist role="params"> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to unparent</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>Whether the menu item was unparented successfully</simpara></listitem></varlistentry> +</variablelist></refsect2> + +</refsect1> + +</refentry> diff --git a/docs/libdbusmenu-glib/reference/xml/server.xml b/docs/libdbusmenu-glib/reference/xml/server.xml new file mode 100644 index 0000000..de93198 --- /dev/null +++ b/docs/libdbusmenu-glib/reference/xml/server.xml @@ -0,0 +1,309 @@ +<?xml version="1.0"?> +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> +<refentry id="libdbusmenu-glib-DbusmenuServer"> +<refmeta> +<refentrytitle role="top_of_page" id="libdbusmenu-glib-DbusmenuServer.top_of_page">DbusmenuServer</refentrytitle> +<manvolnum>3</manvolnum> +<refmiscinfo> + LIBDBUSMENU-GLIB Library +</refmiscinfo> +</refmeta> +<refnamediv> +<refname>DbusmenuServer</refname> +<refpurpose>The server signals changed and + updates on a tree of <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> objecs.</refpurpose> +</refnamediv> +<refsect1 id="libdbusmenu-glib-DbusmenuServer.stability-level"> +<title>Stability Level</title> +Unstable, unless otherwise indicated +</refsect1> + +<refsynopsisdiv id="libdbusmenu-glib-DbusmenuServer.synopsis" role="synopsis"> +<title role="synopsis.title">Synopsis</title> + +<synopsis> +#include <libdbusmenu-glib/server.h> + +#define <link linkend="DBUSMENU-SERVER-SIGNAL-ID-PROP-UPDATE:CAPS">DBUSMENU_SERVER_SIGNAL_ID_PROP_UPDATE</link> +#define <link linkend="DBUSMENU-SERVER-SIGNAL-ID-UPDATE:CAPS">DBUSMENU_SERVER_SIGNAL_ID_UPDATE</link> +#define <link linkend="DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATED:CAPS">DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED</link> +#define <link linkend="DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATE:CAPS">DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATE</link> +#define <link linkend="DBUSMENU-SERVER-SIGNAL-ITEM-ACTIVATION:CAPS">DBUSMENU_SERVER_SIGNAL_ITEM_ACTIVATION</link> +#define <link linkend="DBUSMENU-SERVER-PROP-DBUS-OBJECT:CAPS">DBUSMENU_SERVER_PROP_DBUS_OBJECT</link> +#define <link linkend="DBUSMENU-SERVER-PROP-ROOT-NODE:CAPS">DBUSMENU_SERVER_PROP_ROOT_NODE</link> +#define <link linkend="DBUSMENU-SERVER-PROP-STATUS:CAPS">DBUSMENU_SERVER_PROP_STATUS</link> +#define <link linkend="DBUSMENU-SERVER-PROP-TEXT-DIRECTION:CAPS">DBUSMENU_SERVER_PROP_TEXT_DIRECTION</link> +#define <link linkend="DBUSMENU-SERVER-PROP-VERSION:CAPS">DBUSMENU_SERVER_PROP_VERSION</link> + <link linkend="DbusmenuServer">DbusmenuServer</link>; +struct <link linkend="DbusmenuServerClass">DbusmenuServerClass</link>; +<link linkend="DbusmenuServer"><returnvalue>DbusmenuServer</returnvalue></link> * <link linkend="dbusmenu-server-new">dbusmenu_server_new</link> (<parameter>const <link linkend="gchar"><type>gchar</type></link> *object</parameter>); +<link linkend="DbusmenuStatus"><returnvalue>DbusmenuStatus</returnvalue></link> <link linkend="dbusmenu-server-get-status">dbusmenu_server_get_status</link> (<parameter><link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> *server</parameter>); +<link linkend="DbusmenuTextDirection"><returnvalue>DbusmenuTextDirection</returnvalue></link> <link linkend="dbusmenu-server-get-text-direction">dbusmenu_server_get_text_direction</link> + (<parameter><link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> *server</parameter>); +<link linkend="void"><returnvalue>void</returnvalue></link> <link linkend="dbusmenu-server-set-root">dbusmenu_server_set_root</link> (<parameter><link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> *self</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *root</parameter>); +<link linkend="void"><returnvalue>void</returnvalue></link> <link linkend="dbusmenu-server-set-status">dbusmenu_server_set_status</link> (<parameter><link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> *server</parameter>, + <parameter><link linkend="DbusmenuStatus"><type>DbusmenuStatus</type></link> status</parameter>); +<link linkend="void"><returnvalue>void</returnvalue></link> <link linkend="dbusmenu-server-set-text-direction">dbusmenu_server_set_text_direction</link> (<parameter><link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> *server</parameter>, + <parameter><link linkend="DbusmenuTextDirection"><type>DbusmenuTextDirection</type></link> dir</parameter>); +</synopsis> +</refsynopsisdiv> + +<refsect1 id="libdbusmenu-glib-DbusmenuServer.description" role="desc"> +<title role="desc.title">Description</title> +<para> +A <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> is the object that represents the local + tree of <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> objects on DBus. It watches the + various signals that those objects emit and correctly + represents them across DBus to a <link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> so that + the same tree can be maintained in another process. +</para> +<para> + The server needs to have the root set of <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> + objects set via <link linkend="dbusmenu-server-set-root"><type>dbusmenu_server_set_root</type></link> but it will query + all of the objects in that tree automatically. After setting + the root there should be no other maintence required by + users of the server class. +</para> +</refsect1> +<refsect1 id="libdbusmenu-glib-DbusmenuServer.details" role="details"> +<title role="details.title">Details</title> +<refsect2 id="DBUSMENU-SERVER-SIGNAL-ID-PROP-UPDATE:CAPS" role="macro"> +<title>DBUSMENU_SERVER_SIGNAL_ID_PROP_UPDATE</title> +<indexterm zone="DBUSMENU-SERVER-SIGNAL-ID-PROP-UPDATE:CAPS"><primary>DBUSMENU_SERVER_SIGNAL_ID_PROP_UPDATE</primary></indexterm> +<programlisting>#define DBUSMENU_SERVER_SIGNAL_ID_PROP_UPDATE "item-property-updated" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuServer-item-property-updated"><type>"item-property-updated"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-SERVER-SIGNAL-ID-UPDATE:CAPS" role="macro"> +<title>DBUSMENU_SERVER_SIGNAL_ID_UPDATE</title> +<indexterm zone="DBUSMENU-SERVER-SIGNAL-ID-UPDATE:CAPS"><primary>DBUSMENU_SERVER_SIGNAL_ID_UPDATE</primary></indexterm> +<programlisting>#define DBUSMENU_SERVER_SIGNAL_ID_UPDATE "item-updated" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuServer-item-updated"><type>"item-updated"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATED:CAPS" role="macro"> +<title>DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED</title> +<indexterm zone="DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATED:CAPS"><primary>DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED</primary></indexterm> +<programlisting>#define DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED "layout-updated" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuServer-layout-updated"><type>"layout-updated"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATE:CAPS" role="macro"> +<title>DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATE</title> +<indexterm zone="DBUSMENU-SERVER-SIGNAL-LAYOUT-UPDATE:CAPS"><primary>DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATE</primary></indexterm> +<programlisting>#define DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATE DBUSMENU_SERVER_SIGNAL_LAYOUT_UPDATED +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuServer-layout-updated"><type>"layout-updated"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-SERVER-SIGNAL-ITEM-ACTIVATION:CAPS" role="macro"> +<title>DBUSMENU_SERVER_SIGNAL_ITEM_ACTIVATION</title> +<indexterm zone="DBUSMENU-SERVER-SIGNAL-ITEM-ACTIVATION:CAPS"><primary>DBUSMENU_SERVER_SIGNAL_ITEM_ACTIVATION</primary></indexterm> +<programlisting>#define DBUSMENU_SERVER_SIGNAL_ITEM_ACTIVATION "item-activation-requested" +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuServer-item-activation-requested"><type>"item-activation-requested"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-SERVER-PROP-DBUS-OBJECT:CAPS" role="macro"> +<title>DBUSMENU_SERVER_PROP_DBUS_OBJECT</title> +<indexterm zone="DBUSMENU-SERVER-PROP-DBUS-OBJECT:CAPS"><primary>DBUSMENU_SERVER_PROP_DBUS_OBJECT</primary></indexterm> +<programlisting>#define DBUSMENU_SERVER_PROP_DBUS_OBJECT "dbus-object" +</programlisting> +<para> +String to access property <link linkend="DbusmenuServer--dbus-object"><type>"dbus-object"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-SERVER-PROP-ROOT-NODE:CAPS" role="macro"> +<title>DBUSMENU_SERVER_PROP_ROOT_NODE</title> +<indexterm zone="DBUSMENU-SERVER-PROP-ROOT-NODE:CAPS"><primary>DBUSMENU_SERVER_PROP_ROOT_NODE</primary></indexterm> +<programlisting>#define DBUSMENU_SERVER_PROP_ROOT_NODE "root-node" +</programlisting> +<para> +String to access property <link linkend="DbusmenuServer--root-node"><type>"root-node"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-SERVER-PROP-STATUS:CAPS" role="macro"> +<title>DBUSMENU_SERVER_PROP_STATUS</title> +<indexterm zone="DBUSMENU-SERVER-PROP-STATUS:CAPS"><primary>DBUSMENU_SERVER_PROP_STATUS</primary></indexterm> +<programlisting>#define DBUSMENU_SERVER_PROP_STATUS "status" +</programlisting> +<para> +String to access property <link linkend="DbusmenuServer--status"><type>"status"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-SERVER-PROP-TEXT-DIRECTION:CAPS" role="macro"> +<title>DBUSMENU_SERVER_PROP_TEXT_DIRECTION</title> +<indexterm zone="DBUSMENU-SERVER-PROP-TEXT-DIRECTION:CAPS"><primary>DBUSMENU_SERVER_PROP_TEXT_DIRECTION</primary></indexterm> +<programlisting>#define DBUSMENU_SERVER_PROP_TEXT_DIRECTION "text-direction" +</programlisting> +<para> +String to access property <link linkend="DbusmenuServer--text-direction"><type>"text-direction"</type></link> +</para></refsect2> +<refsect2 id="DBUSMENU-SERVER-PROP-VERSION:CAPS" role="macro"> +<title>DBUSMENU_SERVER_PROP_VERSION</title> +<indexterm zone="DBUSMENU-SERVER-PROP-VERSION:CAPS"><primary>DBUSMENU_SERVER_PROP_VERSION</primary></indexterm> +<programlisting>#define DBUSMENU_SERVER_PROP_VERSION "version" +</programlisting> +<para> +String to access property <link linkend="DbusmenuServer--version"><type>"version"</type></link> +</para></refsect2> +<refsect2 id="DbusmenuServer" role="struct"> +<title>DbusmenuServer</title> +<indexterm zone="DbusmenuServer"><primary>DbusmenuServer</primary></indexterm> +<programlisting>typedef struct _DbusmenuServer DbusmenuServer;</programlisting> +<para> +A server which represents a sharing of a set of + <link linkend="DbusmenuMenuitems"><type>DbusmenuMenuitems</type></link> across DBus to a <link linkend="DbusmenuClient"><type>DbusmenuClient</type></link>. +</para></refsect2> +<refsect2 id="DbusmenuServerClass" role="struct"> +<title>struct DbusmenuServerClass</title> +<indexterm zone="DbusmenuServerClass"><primary>DbusmenuServerClass</primary></indexterm> +<programlisting>struct DbusmenuServerClass { + GObjectClass parent_class; + + /* Signals */ + void (*id_prop_update)(gint id, gchar * property, gchar * value); + void (*id_update)(gint id); + void (*layout_updated)(gint revision); + void (*item_activation)(gint id, guint timestamp); + + /*< Private >*/ + void (*reserved1) (void); + void (*reserved2) (void); + void (*reserved3) (void); + void (*reserved4) (void); + void (*reserved5) (void); + void (*reserved6) (void); +}; +</programlisting> +<para> +The class implementing the virtual functions for <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link>. +</para><variablelist role="struct"> +<varlistentry><term><link linkend="GObjectClass"><type>GObjectClass</type></link> <structfield id="DbusmenuServerClass.parent-class">parent_class</structfield>;</term> +<listitem><simpara><link linkend="GObjectClass"><type>GObjectClass</type></link></simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuServerClass.id-prop-update">id_prop_update</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuServer-id-prop-update"><type>"id-prop-update"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuServerClass.id-update">id_update</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuServer-id-update"><type>"id-update"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuServerClass.layout-updated">layout_updated</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuServer-layout-update"><type>"layout-update"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuServerClass.item-activation">item_activation</structfield> ()</term> +<listitem><simpara>Slot for <link linkend="DbusmenuServer-item-activation-requested"><type>"item-activation-requested"</type></link>.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuServerClass.reserved1">reserved1</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuServerClass.reserved2">reserved2</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuServerClass.reserved3">reserved3</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuServerClass.reserved4">reserved4</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuServerClass.reserved5">reserved5</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuServerClass.reserved6">reserved6</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-server-new" role="function"> +<title>dbusmenu_server_new ()</title> +<indexterm zone="dbusmenu-server-new"><primary>dbusmenu_server_new</primary></indexterm> +<programlisting><link linkend="DbusmenuServer"><returnvalue>DbusmenuServer</returnvalue></link> * dbusmenu_server_new (<parameter>const <link linkend="gchar"><type>gchar</type></link> *object</parameter>);</programlisting> +<para> +Creates a new <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> object with a specific object + path on DBus. If <parameter>object</parameter> is set to NULL the default object + name of "/com/canonical/dbusmenu" will be used. +</para><variablelist role="params"> +<varlistentry><term><parameter>object</parameter> :</term> +<listitem><simpara>The object name to show for this menu structure +on DBus. May be NULL.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A brand new <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-server-get-status" role="function"> +<title>dbusmenu_server_get_status ()</title> +<indexterm zone="dbusmenu-server-get-status"><primary>dbusmenu_server_get_status</primary></indexterm> +<programlisting><link linkend="DbusmenuStatus"><returnvalue>DbusmenuStatus</returnvalue></link> dbusmenu_server_get_status (<parameter><link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> *server</parameter>);</programlisting> +<para> +Gets the current statust hat the server is sending out over + DBus. +</para><variablelist role="params"> +<varlistentry><term><parameter>server</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> to get the status from</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>The current status the server is sending</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-server-get-text-direction" role="function"> +<title>dbusmenu_server_get_text_direction ()</title> +<indexterm zone="dbusmenu-server-get-text-direction"><primary>dbusmenu_server_get_text_direction</primary></indexterm> +<programlisting><link linkend="DbusmenuTextDirection"><returnvalue>DbusmenuTextDirection</returnvalue></link> dbusmenu_server_get_text_direction + (<parameter><link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> *server</parameter>);</programlisting> +<para> +Returns the value of the text direction that is being exported + over DBus for this server. It should relate to the direction + of the labels and other text fields that are being exported by + this server. +</para><variablelist role="params"> +<varlistentry><term><parameter>server</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> object to get the text direction from</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>Text direction exported for this server.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-server-set-root" role="function"> +<title>dbusmenu_server_set_root ()</title> +<indexterm zone="dbusmenu-server-set-root"><primary>dbusmenu_server_set_root</primary></indexterm> +<programlisting><link linkend="void"><returnvalue>void</returnvalue></link> dbusmenu_server_set_root (<parameter><link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> *self</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *root</parameter>);</programlisting> +<para> +This function contains all of the <link linkend="GValue"><type>GValue</type></link> wrapping + required to set the property <link linkend="DbusmenuServer--root-node"><type>"root-node"</type></link> + on the server <parameter>self</parameter>. +</para><variablelist role="params"> +<varlistentry><term><parameter>self</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> object to set the root on</simpara></listitem></varlistentry> +<varlistentry><term><parameter>root</parameter> :</term> +<listitem><simpara>The new root <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> tree</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-server-set-status" role="function"> +<title>dbusmenu_server_set_status ()</title> +<indexterm zone="dbusmenu-server-set-status"><primary>dbusmenu_server_set_status</primary></indexterm> +<programlisting><link linkend="void"><returnvalue>void</returnvalue></link> dbusmenu_server_set_status (<parameter><link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> *server</parameter>, + <parameter><link linkend="DbusmenuStatus"><type>DbusmenuStatus</type></link> status</parameter>);</programlisting> +<para> +Changes the status of the server. +</para><variablelist role="params"> +<varlistentry><term><parameter>server</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> to set the status on</simpara></listitem></varlistentry> +<varlistentry><term><parameter>status</parameter> :</term> +<listitem><simpara>Status value to set on the server</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-server-set-text-direction" role="function"> +<title>dbusmenu_server_set_text_direction ()</title> +<indexterm zone="dbusmenu-server-set-text-direction"><primary>dbusmenu_server_set_text_direction</primary></indexterm> +<programlisting><link linkend="void"><returnvalue>void</returnvalue></link> dbusmenu_server_set_text_direction (<parameter><link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> *server</parameter>, + <parameter><link linkend="DbusmenuTextDirection"><type>DbusmenuTextDirection</type></link> dir</parameter>);</programlisting> +<para> +Sets the text direction that should be exported over DBus for + this server. If the value is set to <link linkend="DBUSMENU-TEXT-DIRECTION-NONE:CAPS"><type>DBUSMENU_TEXT_DIRECTION_NONE</type></link> + the default detection will be used for setting the value and + exported over DBus. +</para><variablelist role="params"> +<varlistentry><term><parameter>server</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> object to set the text direction on</simpara></listitem></varlistentry> +<varlistentry><term><parameter>dir</parameter> :</term> +<listitem><simpara>Direction of the text</simpara></listitem></varlistentry> +</variablelist></refsect2> + +</refsect1> + +</refentry> diff --git a/docs/libdbusmenu-glib/reference/xml/types.xml b/docs/libdbusmenu-glib/reference/xml/types.xml new file mode 100644 index 0000000..c9a04ba --- /dev/null +++ b/docs/libdbusmenu-glib/reference/xml/types.xml @@ -0,0 +1,190 @@ +<?xml version="1.0"?> +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> +<refentry id="libdbusmenu-glib-Types"> +<refmeta> +<refentrytitle role="top_of_page" id="libdbusmenu-glib-Types.top_of_page">Types</refentrytitle> +<manvolnum>3</manvolnum> +<refmiscinfo> + LIBDBUSMENU-GLIB Library +</refmiscinfo> +</refmeta> +<refnamediv> +<refname>Types</refname> +<refpurpose>Types that are used by both client and + server.</refpurpose> +</refnamediv> +<refsect1 id="libdbusmenu-glib-Types.stability-level"> +<title>Stability Level</title> +Unstable, unless otherwise indicated +</refsect1> + +<refsynopsisdiv id="libdbusmenu-glib-Types.synopsis" role="synopsis"> +<title role="synopsis.title">Synopsis</title> + +<synopsis> +#include <libdbusmenu-glib/types.h> + +#define <link linkend="DBUSMENU-TYPE-STATUS:CAPS">DBUSMENU_TYPE_STATUS</link> +#define <link linkend="DBUSMENU-TYPE-TEXT-DIRECTION:CAPS">DBUSMENU_TYPE_TEXT_DIRECTION</link> +enum <link linkend="DbusmenuStatus">DbusmenuStatus</link>; +enum <link linkend="DbusmenuTextDirection">DbusmenuTextDirection</link>; +const <link linkend="gchar"><returnvalue>gchar</returnvalue></link> * <link linkend="dbusmenu-status-get-nick">dbusmenu_status_get_nick</link> (<parameter><link linkend="DbusmenuStatus"><type>DbusmenuStatus</type></link> value</parameter>); +<link linkend="GType"><returnvalue>GType</returnvalue></link> <link linkend="dbusmenu-status-get-type">dbusmenu_status_get_type</link> (<parameter><type>void</type></parameter>); +<link linkend="DbusmenuStatus"><returnvalue>DbusmenuStatus</returnvalue></link> <link linkend="dbusmenu-status-get-value-from-nick">dbusmenu_status_get_value_from_nick</link> (<parameter>const <link linkend="gchar"><type>gchar</type></link> *nick</parameter>); +const <link linkend="gchar"><returnvalue>gchar</returnvalue></link> * <link linkend="dbusmenu-text-direction-get-nick">dbusmenu_text_direction_get_nick</link> (<parameter><link linkend="DbusmenuTextDirection"><type>DbusmenuTextDirection</type></link> value</parameter>); +<link linkend="GType"><returnvalue>GType</returnvalue></link> <link linkend="dbusmenu-text-direction-get-type">dbusmenu_text_direction_get_type</link> (<parameter><type>void</type></parameter>); +<link linkend="DbusmenuTextDirection"><returnvalue>DbusmenuTextDirection</returnvalue></link> <link linkend="dbusmenu-text-direction-get-value-from-nick">dbusmenu_text_direction_get_value_from_nick</link> + (<parameter>const <link linkend="gchar"><type>gchar</type></link> *nick</parameter>); +</synopsis> +</refsynopsisdiv> + +<refsect1 id="libdbusmenu-glib-Types.description" role="desc"> +<title role="desc.title">Description</title> +<para> +Enums that are used to describe states of the server across the + bus. They are sent over dbus using their nicks but then turned + back into enums by the client. +</para> +</refsect1> +<refsect1 id="libdbusmenu-glib-Types.details" role="details"> +<title role="details.title">Details</title> +<refsect2 id="DBUSMENU-TYPE-STATUS:CAPS" role="macro"> +<title>DBUSMENU_TYPE_STATUS</title> +<indexterm zone="DBUSMENU-TYPE-STATUS:CAPS"><primary>DBUSMENU_TYPE_STATUS</primary></indexterm> +<programlisting>#define DBUSMENU_TYPE_STATUS (dbusmenu_status_get_type()) +</programlisting> +<para> +Gets the <link linkend="GType"><type>GType</type></link> value for the type associated with the + <link linkend="DbusmenuStatus"><type>DbusmenuStatus</type></link> enumerated type. +</para></refsect2> +<refsect2 id="DBUSMENU-TYPE-TEXT-DIRECTION:CAPS" role="macro"> +<title>DBUSMENU_TYPE_TEXT_DIRECTION</title> +<indexterm zone="DBUSMENU-TYPE-TEXT-DIRECTION:CAPS"><primary>DBUSMENU_TYPE_TEXT_DIRECTION</primary></indexterm> +<programlisting>#define DBUSMENU_TYPE_TEXT_DIRECTION (dbusmenu_text_direction_get_type()) +</programlisting> +<para> +Gets the <link linkend="GType"><type>GType</type></link> value for the type associated with the + <link linkend="DbusmenuTextDirection"><type>DbusmenuTextDirection</type></link> enumerated type. +</para></refsect2> +<refsect2 id="DbusmenuStatus" role="enum"> +<title>enum DbusmenuStatus</title> +<indexterm zone="DbusmenuStatus"><primary>DbusmenuStatus</primary></indexterm> +<programlisting>typedef enum { /*< prefix=DBUSMENU_STATUS >*/ + DBUSMENU_STATUS_NORMAL, /*< nick=normal >*/ + DBUSMENU_STATUS_NOTICE /*< nick=notice >*/ +} DbusmenuStatus; +</programlisting> +<para> +Tracks how the menus should be presented to the user. +</para><variablelist role="enum"> +<varlistentry id="DBUSMENU-STATUS-NORMAL:CAPS" role="constant"> +<term><literal>DBUSMENU_STATUS_NORMAL</literal></term> +<listitem><simpara>Everything is normal +</simpara></listitem> +</varlistentry> +<varlistentry id="DBUSMENU-STATUS-NOTICE:CAPS" role="constant"> +<term><literal>DBUSMENU_STATUS_NOTICE</literal></term> +<listitem><simpara>The menus should be shown at a higher priority +</simpara></listitem> +</varlistentry> +</variablelist></refsect2> +<refsect2 id="DbusmenuTextDirection" role="enum"> +<title>enum DbusmenuTextDirection</title> +<indexterm zone="DbusmenuTextDirection"><primary>DbusmenuTextDirection</primary></indexterm> +<programlisting>typedef enum { /*< prefix=DBUSMENU_TEXT_DIRECTION >*/ + DBUSMENU_TEXT_DIRECTION_NONE, /*< nick=none >*/ + DBUSMENU_TEXT_DIRECTION_LTR, /*< nick=ltr >*/ + DBUSMENU_TEXT_DIRECTION_RTL /*< nick=rtl >*/ +} DbusmenuTextDirection; +</programlisting> +<para> +The direction of text that the strings that this server + will be sending strings as. +</para><variablelist role="enum"> +<varlistentry id="DBUSMENU-TEXT-DIRECTION-NONE:CAPS" role="constant"> +<term><literal>DBUSMENU_TEXT_DIRECTION_NONE</literal></term> +<listitem><simpara>Unspecified text direction +</simpara></listitem> +</varlistentry> +<varlistentry id="DBUSMENU-TEXT-DIRECTION-LTR:CAPS" role="constant"> +<term><literal>DBUSMENU_TEXT_DIRECTION_LTR</literal></term> +<listitem><simpara>Left-to-right text direction +</simpara></listitem> +</varlistentry> +<varlistentry id="DBUSMENU-TEXT-DIRECTION-RTL:CAPS" role="constant"> +<term><literal>DBUSMENU_TEXT_DIRECTION_RTL</literal></term> +<listitem><simpara>Right-to-left text direction +</simpara></listitem> +</varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-status-get-nick" role="function"> +<title>dbusmenu_status_get_nick ()</title> +<indexterm zone="dbusmenu-status-get-nick"><primary>dbusmenu_status_get_nick</primary></indexterm> +<programlisting>const <link linkend="gchar"><returnvalue>gchar</returnvalue></link> * dbusmenu_status_get_nick (<parameter><link linkend="DbusmenuStatus"><type>DbusmenuStatus</type></link> value</parameter>);</programlisting> +<para> +Looks up in the enum table for the nick of <parameter>value</parameter>. +</para><variablelist role="params"> +<varlistentry><term><parameter>value</parameter> :</term> +<listitem><simpara>The value of DbusmenuStatus to get the nick of</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>The nick for the given value or <link linkend="NULL:CAPS"><type>NULL</type></link> on error</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-status-get-type" role="function"> +<title>dbusmenu_status_get_type ()</title> +<indexterm zone="dbusmenu-status-get-type"><primary>dbusmenu_status_get_type</primary></indexterm> +<programlisting><link linkend="GType"><returnvalue>GType</returnvalue></link> dbusmenu_status_get_type (<parameter><type>void</type></parameter>);</programlisting> +<para> +Builds a GLib type for the <link linkend="DbusmenuStatus"><type>DbusmenuStatus</type></link> enumeration. +</para><variablelist role="params"> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A unique <link linkend="GType"><type>GType</type></link> for the <link linkend="DbusmenuStatus"><type>DbusmenuStatus</type></link> enum.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-status-get-value-from-nick" role="function"> +<title>dbusmenu_status_get_value_from_nick ()</title> +<indexterm zone="dbusmenu-status-get-value-from-nick"><primary>dbusmenu_status_get_value_from_nick</primary></indexterm> +<programlisting><link linkend="DbusmenuStatus"><returnvalue>DbusmenuStatus</returnvalue></link> dbusmenu_status_get_value_from_nick (<parameter>const <link linkend="gchar"><type>gchar</type></link> *nick</parameter>);</programlisting> +<para> +Looks up in the enum table for the value of <parameter>nick</parameter>. +</para><variablelist role="params"> +<varlistentry><term><parameter>nick</parameter> :</term> +<listitem><simpara>The enum nick to lookup</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>The value for the given <parameter>nick</parameter></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-text-direction-get-nick" role="function"> +<title>dbusmenu_text_direction_get_nick ()</title> +<indexterm zone="dbusmenu-text-direction-get-nick"><primary>dbusmenu_text_direction_get_nick</primary></indexterm> +<programlisting>const <link linkend="gchar"><returnvalue>gchar</returnvalue></link> * dbusmenu_text_direction_get_nick (<parameter><link linkend="DbusmenuTextDirection"><type>DbusmenuTextDirection</type></link> value</parameter>);</programlisting> +<para> +Looks up in the enum table for the nick of <parameter>value</parameter>. +</para><variablelist role="params"> +<varlistentry><term><parameter>value</parameter> :</term> +<listitem><simpara>The value of DbusmenuTextDirection to get the nick of</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>The nick for the given value or <link linkend="NULL:CAPS"><type>NULL</type></link> on error</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-text-direction-get-type" role="function"> +<title>dbusmenu_text_direction_get_type ()</title> +<indexterm zone="dbusmenu-text-direction-get-type"><primary>dbusmenu_text_direction_get_type</primary></indexterm> +<programlisting><link linkend="GType"><returnvalue>GType</returnvalue></link> dbusmenu_text_direction_get_type (<parameter><type>void</type></parameter>);</programlisting> +<para> +Builds a GLib type for the <link linkend="DbusmenuTextDirection"><type>DbusmenuTextDirection</type></link> enumeration. +</para><variablelist role="params"> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A unique <link linkend="GType"><type>GType</type></link> for the <link linkend="DbusmenuTextDirection"><type>DbusmenuTextDirection</type></link> enum.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-text-direction-get-value-from-nick" role="function"> +<title>dbusmenu_text_direction_get_value_from_nick ()</title> +<indexterm zone="dbusmenu-text-direction-get-value-from-nick"><primary>dbusmenu_text_direction_get_value_from_nick</primary></indexterm> +<programlisting><link linkend="DbusmenuTextDirection"><returnvalue>DbusmenuTextDirection</returnvalue></link> dbusmenu_text_direction_get_value_from_nick + (<parameter>const <link linkend="gchar"><type>gchar</type></link> *nick</parameter>);</programlisting> +<para> +Looks up in the enum table for the value of <parameter>nick</parameter>. +</para><variablelist role="params"> +<varlistentry><term><parameter>nick</parameter> :</term> +<listitem><simpara>The enum nick to lookup</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>The value for the given <parameter>nick</parameter></simpara></listitem></varlistentry> +</variablelist></refsect2> + +</refsect1> + +</refentry> diff --git a/docs/libdbusmenu-gtk/Makefile.in b/docs/libdbusmenu-gtk/Makefile.in index 3bff39b..c725646 100644 --- a/docs/libdbusmenu-gtk/Makefile.in +++ b/docs/libdbusmenu-gtk/Makefile.in @@ -36,12 +36,7 @@ host_triplet = @host@ subdir = docs/libdbusmenu-gtk DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/gnome-doc-utils.m4 \ - $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/intltool.m4 \ - $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs diff --git a/docs/libdbusmenu-gtk/reference/Makefile.in b/docs/libdbusmenu-gtk/reference/Makefile.in index 23c4920..cd13836 100644 --- a/docs/libdbusmenu-gtk/reference/Makefile.in +++ b/docs/libdbusmenu-gtk/reference/Makefile.in @@ -43,12 +43,7 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/version.xml.in $(top_srcdir)/gtk-doc.local.make subdir = docs/libdbusmenu-gtk/reference ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/gnome-doc-utils.m4 \ - $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/intltool.m4 \ - $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs diff --git a/docs/libdbusmenu-gtk/reference/html/annotation-glossary.html b/docs/libdbusmenu-gtk/reference/html/annotation-glossary.html new file mode 100644 index 0000000..cb5c7bc --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/annotation-glossary.html @@ -0,0 +1,47 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>Annotation Glossary</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="up" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="prev" href="api-index-deprecated.html" title="Deprecated API Index"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> +<tr valign="middle"> +<td><a accesskey="p" href="api-index-deprecated.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td>Â </td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-gtk Reference Manual</th> +<td>Â </td> +</tr> +<tr><td colspan="5" class="shortcuts"> +<a class="shortcut" href="#glsO">O</a> + Â |Â + <a class="shortcut" href="#glsT">T</a> +</td></tr> +</table> +<div class="glossary"> +<div class="titlepage"><div><div><h2 class="title"> +<a name="annotation-glossary"></a>Annotation Glossary</h2></div></div></div> +<a name="glsO"></a><h3 class="title">O</h3> +<dt> +<a name="annotation-glossterm-out"></a>out</dt> +<dd><p>Parameter for returning results. Default is <acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>.</p></dd> +<a name="glsT"></a><h3 class="title">T</h3> +<dt> +<a name="annotation-glossterm-transfer%20full"></a>transfer full</dt> +<dd><p>Free data after the code is done.</p></dd> +<dt> +<a name="annotation-glossterm-transfer%20none"></a>transfer none</dt> +<dd><p>Don't free data after the code is done.</p></dd> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-gtk/reference/html/api-index-deprecated.html b/docs/libdbusmenu-gtk/reference/html/api-index-deprecated.html new file mode 100644 index 0000000..ad42b0e --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/api-index-deprecated.html @@ -0,0 +1,31 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>Deprecated API Index</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="up" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="prev" href="api-index-full.html" title="API Index"> +<link rel="next" href="annotation-glossary.html" title="Annotation Glossary"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"> +<td><a accesskey="p" href="api-index-full.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td>Â </td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-gtk Reference Manual</th> +<td><a accesskey="n" href="annotation-glossary.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr></table> +<div class="index"> +<div class="titlepage"><div><div><h2 class="title"> +<a name="api-index-deprecated"></a>Deprecated API Index</h2></div></div></div> +<a name="idx"></a> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-gtk/reference/html/api-index-full.html b/docs/libdbusmenu-gtk/reference/html/api-index-full.html new file mode 100644 index 0000000..b99edba --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/api-index-full.html @@ -0,0 +1,139 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>API Index</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="up" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="prev" href="object-tree.html" title="Object Hierarchy"> +<link rel="next" href="api-index-deprecated.html" title="Deprecated API Index"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> +<tr valign="middle"> +<td><a accesskey="p" href="object-tree.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td>Â </td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-gtk Reference Manual</th> +<td><a accesskey="n" href="api-index-deprecated.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr> +<tr><td colspan="5" class="shortcuts"> +<a class="shortcut" href="#idxG">G</a> + Â |Â + <a class="shortcut" href="#idxM">M</a> +</td></tr> +</table> +<div class="index"> +<div class="titlepage"><div><div><h2 class="title"> +<a name="api-index-full"></a>API Index</h2></div></div></div> +<a name="idx"></a><a name="idxG"></a><h3 class="title">G</h3> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient">DbusmenuGtkClient</a>, struct in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html" title="DbusmenuGtkClient">DbusmenuGtkClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClientClass" title="struct DbusmenuGtkClientClass">DbusmenuGtkClientClass</a>, struct in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html" title="DbusmenuGtkClient">DbusmenuGtkClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-get-accel-group" title="dbusmenu_gtkclient_get_accel_group ()">dbusmenu_gtkclient_get_accel_group</a>, function in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html" title="DbusmenuGtkClient">DbusmenuGtkClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-menuitem-get" title="dbusmenu_gtkclient_menuitem_get ()">dbusmenu_gtkclient_menuitem_get</a>, function in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html" title="DbusmenuGtkClient">DbusmenuGtkClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-menuitem-get-submenu" title="dbusmenu_gtkclient_menuitem_get_submenu ()">dbusmenu_gtkclient_menuitem_get_submenu</a>, function in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html" title="DbusmenuGtkClient">DbusmenuGtkClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-new" title="dbusmenu_gtkclient_new ()">dbusmenu_gtkclient_new</a>, function in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html" title="DbusmenuGtkClient">DbusmenuGtkClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-newitem-base" title="dbusmenu_gtkclient_newitem_base ()">dbusmenu_gtkclient_newitem_base</a>, function in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html" title="DbusmenuGtkClient">DbusmenuGtkClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-set-accel-group" title="dbusmenu_gtkclient_set_accel_group ()">dbusmenu_gtkclient_set_accel_group</a>, function in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html" title="DbusmenuGtkClient">DbusmenuGtkClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DBUSMENU-GTKCLIENT-SIGNAL-ROOT-CHANGED:CAPS" title="DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED">DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED</a>, macro in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html" title="DbusmenuGtkClient">DbusmenuGtkClient</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkMenu.html#DbusmenuGtkMenuClass" title="struct DbusmenuGtkMenuClass">DbusmenuGtkMenuClass</a>, struct in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkMenu.html" title="DbusmenuGtkMenu">DbusmenuGtkMenu</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkMenu.html#dbusmenu-gtkmenu-get-client" title="dbusmenu_gtkmenu_get_client ()">dbusmenu_gtkmenu_get_client</a>, function in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkMenu.html" title="DbusmenuGtkMenu">DbusmenuGtkMenu</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkMenu.html#dbusmenu-gtkmenu-new" title="dbusmenu_gtkmenu_new ()">dbusmenu_gtkmenu_new</a>, function in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkMenu.html" title="DbusmenuGtkMenu">DbusmenuGtkMenu</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#DbusmenuGtkSerializableMenuItemClass" title="struct DbusmenuGtkSerializableMenuItemClass">DbusmenuGtkSerializableMenuItemClass</a>, struct in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html" title="DbusmenuGtkSerializableMenuItem">DbusmenuGtkSerializableMenuItem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-parser.html#dbusmenu-gtk-parse-get-cached-item" title="dbusmenu_gtk_parse_get_cached_item ()">dbusmenu_gtk_parse_get_cached_item</a>, function in <a class="link" href="libdbusmenu-gtk-parser.html" title="parser">parser</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-parser.html#dbusmenu-gtk-parse-menu-structure" title="dbusmenu_gtk_parse_menu_structure ()">dbusmenu_gtk_parse_menu_structure</a>, function in <a class="link" href="libdbusmenu-gtk-parser.html" title="parser">parser</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#dbusmenu-gtk-serializable-menu-item-build-menuitem" title="dbusmenu_gtk_serializable_menu_item_build_menuitem ()">dbusmenu_gtk_serializable_menu_item_build_menuitem</a>, function in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html" title="DbusmenuGtkSerializableMenuItem">DbusmenuGtkSerializableMenuItem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#DBUSMENU-GTK-SERIALIZABLE-MENU-ITEM-PROP-MENUITEM:CAPS" title="DBUSMENU_GTK_SERIALIZABLE_MENU_ITEM_PROP_MENUITEM">DBUSMENU_GTK_SERIALIZABLE_MENU_ITEM_PROP_MENUITEM</a>, macro in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html" title="DbusmenuGtkSerializableMenuItem">DbusmenuGtkSerializableMenuItem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#dbusmenu-gtk-serializable-menu-item-register-to-client" title="dbusmenu_gtk_serializable_menu_item_register_to_client ()">dbusmenu_gtk_serializable_menu_item_register_to_client</a>, function in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html" title="DbusmenuGtkSerializableMenuItem">DbusmenuGtkSerializableMenuItem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#dbusmenu-gtk-serializable-menu-item-set-menuitem" title="dbusmenu_gtk_serializable_menu_item_set_menuitem ()">dbusmenu_gtk_serializable_menu_item_set_menuitem</a>, function in <a class="link" href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html" title="DbusmenuGtkSerializableMenuItem">DbusmenuGtkSerializableMenuItem</a> +</dt> +<dd></dd> +<a name="idxM"></a><h3 class="title">M</h3> +<dt> +<a class="link" href="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-get-image" title="dbusmenu_menuitem_property_get_image ()">dbusmenu_menuitem_property_get_image</a>, function in <a class="link" href="libdbusmenu-gtk-menuitem.html" title="menuitem">menuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-get-shortcut" title="dbusmenu_menuitem_property_get_shortcut ()">dbusmenu_menuitem_property_get_shortcut</a>, function in <a class="link" href="libdbusmenu-gtk-menuitem.html" title="menuitem">menuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-image" title="dbusmenu_menuitem_property_set_image ()">dbusmenu_menuitem_property_set_image</a>, function in <a class="link" href="libdbusmenu-gtk-menuitem.html" title="menuitem">menuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut" title="dbusmenu_menuitem_property_set_shortcut ()">dbusmenu_menuitem_property_set_shortcut</a>, function in <a class="link" href="libdbusmenu-gtk-menuitem.html" title="menuitem">menuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut-menuitem" title="dbusmenu_menuitem_property_set_shortcut_menuitem ()">dbusmenu_menuitem_property_set_shortcut_menuitem</a>, function in <a class="link" href="libdbusmenu-gtk-menuitem.html" title="menuitem">menuitem</a> +</dt> +<dd></dd> +<dt> +<a class="link" href="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut-string" title="dbusmenu_menuitem_property_set_shortcut_string ()">dbusmenu_menuitem_property_set_shortcut_string</a>, function in <a class="link" href="libdbusmenu-gtk-menuitem.html" title="menuitem">menuitem</a> +</dt> +<dd></dd> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-gtk/reference/html/ch01.html b/docs/libdbusmenu-gtk/reference/html/ch01.html new file mode 100644 index 0000000..61a4f74 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/ch01.html @@ -0,0 +1,47 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>API</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="up" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="prev" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="next" href="libdbusmenu-gtk-DbusmenuGtkMenu.html" title="DbusmenuGtkMenu"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"> +<td><a accesskey="p" href="index.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td> </td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-gtk Reference Manual</th> +<td><a accesskey="n" href="libdbusmenu-gtk-DbusmenuGtkMenu.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr></table> +<div class="chapter"> +<div class="titlepage"><div><div><h2 class="title"> +<a name="id581523"></a>API</h2></div></div></div> +<div class="toc"><dl> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-gtk-DbusmenuGtkMenu.html">DbusmenuGtkMenu</a></span><span class="refpurpose"> — A GTK Menu Object that syncronizes over DBus</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-gtk-menuitem.html">menuitem</a></span><span class="refpurpose"> — Helpers for <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> properties that require a GTK dependency</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-gtk-DbusmenuGtkClient.html">DbusmenuGtkClient</a></span><span class="refpurpose"> — A subclass of <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient"><span class="type">DbusmenuClient</span></a> adding GTK level features</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-gtk-parser.html">parser</a></span><span class="refpurpose"> — A parser of in-memory GTK menu trees</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html">DbusmenuGtkSerializableMenuItem</a></span><span class="refpurpose"> — A way to build <a href="http://library.gnome.org/devel/gtk/2.24/GtkMenuItem.html"><span class="type">GtkMenuItems</span></a> that can be sent over Dbusmenu</span> +</dt> +</dl></div> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-gtk/reference/html/home.png b/docs/libdbusmenu-gtk/reference/html/home.png Binary files differnew file mode 100644 index 0000000..fb60b55 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/home.png diff --git a/docs/libdbusmenu-gtk/reference/html/index.html b/docs/libdbusmenu-gtk/reference/html/index.html new file mode 100644 index 0000000..8c92ba7 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/index.html @@ -0,0 +1,47 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>libdbusmenu-gtk Reference Manual</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="next" href="ch01.html" title="API"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<div class="book"> +<div class="titlepage"> +<div><div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">libdbusmenu-gtk Reference Manual</p></th></tr></table></div></div> +<hr> +</div> +<div class="toc"><dl> +<dt><span class="chapter"><a href="ch01.html">API</a></span></dt> +<dd><dl> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-gtk-DbusmenuGtkMenu.html">DbusmenuGtkMenu</a></span><span class="refpurpose"> — A GTK Menu Object that syncronizes over DBus</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-gtk-menuitem.html">menuitem</a></span><span class="refpurpose"> — Helpers for <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> properties that require a GTK dependency</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-gtk-DbusmenuGtkClient.html">DbusmenuGtkClient</a></span><span class="refpurpose"> — A subclass of <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient"><span class="type">DbusmenuClient</span></a> adding GTK level features</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-gtk-parser.html">parser</a></span><span class="refpurpose"> — A parser of in-memory GTK menu trees</span> +</dt> +<dt> +<span class="refentrytitle"><a href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html">DbusmenuGtkSerializableMenuItem</a></span><span class="refpurpose"> — A way to build <a href="http://library.gnome.org/devel/gtk/2.24/GtkMenuItem.html"><span class="type">GtkMenuItems</span></a> that can be sent over Dbusmenu</span> +</dt> +</dl></dd> +<dt><span class="chapter"><a href="object-tree.html">Object Hierarchy</a></span></dt> +<dt><span class="index"><a href="api-index-full.html">API Index</a></span></dt> +<dt><span class="index"><a href="api-index-deprecated.html">Deprecated API Index</a></span></dt> +<dt><span class="glossary"><a href="annotation-glossary.html">Annotation Glossary</a></span></dt> +</dl></div> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-gtk/reference/html/index.sgml b/docs/libdbusmenu-gtk/reference/html/index.sgml new file mode 100644 index 0000000..1b4ac64 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/index.sgml @@ -0,0 +1,53 @@ +<ANCHOR id="libdbusmenu-gtk-DbusmenuGtkMenu" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkMenu.html"> +<ANCHOR id="libdbusmenu-gtk-DbusmenuGtkMenu.stability-level" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkMenu.html#libdbusmenu-gtk-DbusmenuGtkMenu.stability-level"> +<ANCHOR id="libdbusmenu-gtk-DbusmenuGtkMenu.synopsis" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkMenu.html#libdbusmenu-gtk-DbusmenuGtkMenu.synopsis"> +<ANCHOR id="libdbusmenu-gtk-DbusmenuGtkMenu.description" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkMenu.html#libdbusmenu-gtk-DbusmenuGtkMenu.description"> +<ANCHOR id="libdbusmenu-gtk-DbusmenuGtkMenu.details" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkMenu.html#libdbusmenu-gtk-DbusmenuGtkMenu.details"> +<ANCHOR id="DbusmenuGtkMenuClass" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkMenu.html#DbusmenuGtkMenuClass"> +<ANCHOR id="dbusmenu-gtkmenu-new" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkMenu.html#dbusmenu-gtkmenu-new"> +<ANCHOR id="dbusmenu-gtkmenu-get-client" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkMenu.html#dbusmenu-gtkmenu-get-client"> +<ANCHOR id="libdbusmenu-gtk-menuitem" href="libdbusmenu-gtk/libdbusmenu-gtk-menuitem.html"> +<ANCHOR id="libdbusmenu-gtk-menuitem.stability-level" href="libdbusmenu-gtk/libdbusmenu-gtk-menuitem.html#libdbusmenu-gtk-menuitem.stability-level"> +<ANCHOR id="libdbusmenu-gtk-menuitem.synopsis" href="libdbusmenu-gtk/libdbusmenu-gtk-menuitem.html#libdbusmenu-gtk-menuitem.synopsis"> +<ANCHOR id="libdbusmenu-gtk-menuitem.description" href="libdbusmenu-gtk/libdbusmenu-gtk-menuitem.html#libdbusmenu-gtk-menuitem.description"> +<ANCHOR id="libdbusmenu-gtk-menuitem.details" href="libdbusmenu-gtk/libdbusmenu-gtk-menuitem.html#libdbusmenu-gtk-menuitem.details"> +<ANCHOR id="dbusmenu-menuitem-property-set-image" href="libdbusmenu-gtk/libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-image"> +<ANCHOR id="dbusmenu-menuitem-property-get-image" href="libdbusmenu-gtk/libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-get-image"> +<ANCHOR id="dbusmenu-menuitem-property-set-shortcut" href="libdbusmenu-gtk/libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut"> +<ANCHOR id="dbusmenu-menuitem-property-set-shortcut-string" href="libdbusmenu-gtk/libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut-string"> +<ANCHOR id="dbusmenu-menuitem-property-set-shortcut-menuitem" href="libdbusmenu-gtk/libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut-menuitem"> +<ANCHOR id="dbusmenu-menuitem-property-get-shortcut" href="libdbusmenu-gtk/libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-get-shortcut"> +<ANCHOR id="libdbusmenu-gtk-DbusmenuGtkClient" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkClient.html"> +<ANCHOR id="libdbusmenu-gtk-DbusmenuGtkClient.stability-level" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkClient.html#libdbusmenu-gtk-DbusmenuGtkClient.stability-level"> +<ANCHOR id="libdbusmenu-gtk-DbusmenuGtkClient.synopsis" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkClient.html#libdbusmenu-gtk-DbusmenuGtkClient.synopsis"> +<ANCHOR id="libdbusmenu-gtk-DbusmenuGtkClient.description" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkClient.html#libdbusmenu-gtk-DbusmenuGtkClient.description"> +<ANCHOR id="libdbusmenu-gtk-DbusmenuGtkClient.details" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkClient.html#libdbusmenu-gtk-DbusmenuGtkClient.details"> +<ANCHOR id="DBUSMENU-GTKCLIENT-SIGNAL-ROOT-CHANGED:CAPS" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkClient.html#DBUSMENU-GTKCLIENT-SIGNAL-ROOT-CHANGED:CAPS"> +<ANCHOR id="DbusmenuGtkClient" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient"> +<ANCHOR id="DbusmenuGtkClientClass" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClientClass"> +<ANCHOR id="dbusmenu-gtkclient-new" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-new"> +<ANCHOR id="dbusmenu-gtkclient-menuitem-get" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-menuitem-get"> +<ANCHOR id="dbusmenu-gtkclient-menuitem-get-submenu" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-menuitem-get-submenu"> +<ANCHOR id="dbusmenu-gtkclient-set-accel-group" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-set-accel-group"> +<ANCHOR id="dbusmenu-gtkclient-get-accel-group" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-get-accel-group"> +<ANCHOR id="dbusmenu-gtkclient-newitem-base" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-newitem-base"> +<ANCHOR id="libdbusmenu-gtk-parser" href="libdbusmenu-gtk/libdbusmenu-gtk-parser.html"> +<ANCHOR id="libdbusmenu-gtk-parser.stability-level" href="libdbusmenu-gtk/libdbusmenu-gtk-parser.html#libdbusmenu-gtk-parser.stability-level"> +<ANCHOR id="libdbusmenu-gtk-parser.synopsis" href="libdbusmenu-gtk/libdbusmenu-gtk-parser.html#libdbusmenu-gtk-parser.synopsis"> +<ANCHOR id="libdbusmenu-gtk-parser.description" href="libdbusmenu-gtk/libdbusmenu-gtk-parser.html#libdbusmenu-gtk-parser.description"> +<ANCHOR id="libdbusmenu-gtk-parser.details" href="libdbusmenu-gtk/libdbusmenu-gtk-parser.html#libdbusmenu-gtk-parser.details"> +<ANCHOR id="dbusmenu-gtk-parse-menu-structure" href="libdbusmenu-gtk/libdbusmenu-gtk-parser.html#dbusmenu-gtk-parse-menu-structure"> +<ANCHOR id="dbusmenu-gtk-parse-get-cached-item" href="libdbusmenu-gtk/libdbusmenu-gtk-parser.html#dbusmenu-gtk-parse-get-cached-item"> +<ANCHOR id="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html"> +<ANCHOR id="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.stability-level" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.stability-level"> +<ANCHOR id="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.synopsis" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.synopsis"> +<ANCHOR id="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.description" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.description"> +<ANCHOR id="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.details" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.details"> +<ANCHOR id="DBUSMENU-GTK-SERIALIZABLE-MENU-ITEM-PROP-MENUITEM:CAPS" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#DBUSMENU-GTK-SERIALIZABLE-MENU-ITEM-PROP-MENUITEM:CAPS"> +<ANCHOR id="DbusmenuGtkSerializableMenuItemClass" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#DbusmenuGtkSerializableMenuItemClass"> +<ANCHOR id="dbusmenu-gtk-serializable-menu-item-build-menuitem" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#dbusmenu-gtk-serializable-menu-item-build-menuitem"> +<ANCHOR id="dbusmenu-gtk-serializable-menu-item-register-to-client" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#dbusmenu-gtk-serializable-menu-item-register-to-client"> +<ANCHOR id="dbusmenu-gtk-serializable-menu-item-set-menuitem" href="libdbusmenu-gtk/libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#dbusmenu-gtk-serializable-menu-item-set-menuitem"> +<ANCHOR id="annotation-glossterm-out" href="libdbusmenu-gtk/annotation-glossary.html#annotation-glossterm-out"> +<ANCHOR id="annotation-glossterm-transfer full" href="libdbusmenu-gtk/annotation-glossary.html#annotation-glossterm-transfer full"> +<ANCHOR id="annotation-glossterm-transfer none" href="libdbusmenu-gtk/annotation-glossary.html#annotation-glossterm-transfer none"> diff --git a/docs/libdbusmenu-gtk/reference/html/left.png b/docs/libdbusmenu-gtk/reference/html/left.png Binary files differnew file mode 100644 index 0000000..48cab27 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/left.png diff --git a/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk-DbusmenuGtkClient.html b/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk-DbusmenuGtkClient.html new file mode 100644 index 0000000..54c5bdb --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk-DbusmenuGtkClient.html @@ -0,0 +1,347 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>DbusmenuGtkClient</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="up" href="ch01.html" title="API"> +<link rel="prev" href="libdbusmenu-gtk-menuitem.html" title="menuitem"> +<link rel="next" href="libdbusmenu-gtk-parser.html" title="parser"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> +<tr valign="middle"> +<td><a accesskey="p" href="libdbusmenu-gtk-menuitem.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-gtk Reference Manual</th> +<td><a accesskey="n" href="libdbusmenu-gtk-parser.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr> +<tr><td colspan="5" class="shortcuts"> +<a href="#libdbusmenu-gtk-DbusmenuGtkClient.synopsis" class="shortcut">Top</a> +  | + <a href="#libdbusmenu-gtk-DbusmenuGtkClient.description" class="shortcut">Description</a> +</td></tr> +</table> +<div class="refentry"> +<a name="libdbusmenu-gtk-DbusmenuGtkClient"></a><div class="titlepage"></div> +<div class="refnamediv"><table width="100%"><tr> +<td valign="top"> +<h2><span class="refentrytitle"><a name="libdbusmenu-gtk-DbusmenuGtkClient.top_of_page"></a>DbusmenuGtkClient</span></h2> +<p>DbusmenuGtkClient — A subclass of <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient"><span class="type">DbusmenuClient</span></a> adding GTK level features</p> +</td> +<td valign="top" align="right"></td> +</tr></table></div> +<div class="refsect1"> +<a name="libdbusmenu-gtk-DbusmenuGtkClient.stability-level"></a><h2>Stability Level</h2> +Unstable, unless otherwise indicated +</div> +<div class="refsynopsisdiv"> +<a name="libdbusmenu-gtk-DbusmenuGtkClient.synopsis"></a><h2>Synopsis</h2> +<pre class="synopsis"> +#include <libdbusmenu-gtk/client.h> + +#define <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DBUSMENU-GTKCLIENT-SIGNAL-ROOT-CHANGED:CAPS" title="DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED">DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED</a> + <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient">DbusmenuGtkClient</a>; +struct <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClientClass" title="struct DbusmenuGtkClientClass">DbusmenuGtkClientClass</a>; +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="returnvalue">DbusmenuGtkClient</span></a> * <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-new" title="dbusmenu_gtkclient_new ()">dbusmenu_gtkclient_new</a> (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *dbus_name</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *dbus_object</code></em>); +<a href="http://library.gnome.org/devel/gtk/2.24/GtkMenuItem.html"><span class="returnvalue">GtkMenuItem</span></a> * <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-menuitem-get" title="dbusmenu_gtkclient_menuitem_get ()">dbusmenu_gtkclient_menuitem_get</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> *client</code></em>, + <em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *item</code></em>); +<a href="http://library.gnome.org/devel/gtk/2.24/GtkMenu.html"><span class="returnvalue">GtkMenu</span></a> * <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-menuitem-get-submenu" title="dbusmenu_gtkclient_menuitem_get_submenu ()">dbusmenu_gtkclient_menuitem_get_submenu</a> + (<em class="parameter"><code><a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> *client</code></em>, + <em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *item</code></em>); +<span class="returnvalue">void</span> <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-set-accel-group" title="dbusmenu_gtkclient_set_accel_group ()">dbusmenu_gtkclient_set_accel_group</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> *client</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gtk/2.24/gtk3-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *agroup</code></em>); +<a href="http://library.gnome.org/devel/gtk/2.24/gtk3-Keyboard-Accelerators.html#GtkAccelGroup"><span class="returnvalue">GtkAccelGroup</span></a> * <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-get-accel-group" title="dbusmenu_gtkclient_get_accel_group ()">dbusmenu_gtkclient_get_accel_group</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> *client</code></em>); +<span class="returnvalue">void</span> <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-newitem-base" title="dbusmenu_gtkclient_newitem_base ()">dbusmenu_gtkclient_newitem_base</a> (<em class="parameter"><code><a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> *client</code></em>, + <em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *item</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gtk/2.24/GtkMenuItem.html"><span class="type">GtkMenuItem</span></a> *gmi</code></em>, + <em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *parent</code></em>); +</pre> +</div> +<div class="refsect1"> +<a name="libdbusmenu-gtk-DbusmenuGtkClient.description"></a><h2>Description</h2> +<p> +In general, this is just a <a href="http://library.gnome.org/devel/gtk/2.24/GtkMenu.html"><span class="type">GtkMenu</span></a>, why else would you care? Oh, + because this menu is created by someone else on a server that exists + on the other side of DBus. You need a <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer"><span class="type">DbusmenuServer</span></a> to be able + push the data into this menu. +</p> +<p> + The first thing you need to know is how to find that <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer"><span class="type">DbusmenuServer</span></a> + on DBus. This involves both the DBus name and the DBus object that + the menu interface can be found on. Those two value should be set + when creating the object using <a class="link" href="libdbusmenu-gtk-DbusmenuGtkMenu.html#dbusmenu-gtkmenu-new" title="dbusmenu_gtkmenu_new ()"><code class="function">dbusmenu_gtkmenu_new()</code></a>. They are then + stored on two properties <span class="type">"dbus-name"</span> and <span class="type">"dbus-object"</span>. +</p> +<p> + After creation the <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> it will continue to keep in + synchronization with the <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer"><span class="type">DbusmenuServer</span></a> object across Dbus. If the + number of entries change, the menus change, if they change thier + properties change, they update in the items. All of this should + be handled transparently to the user of this object. +</p> +</div> +<div class="refsect1"> +<a name="libdbusmenu-gtk-DbusmenuGtkClient.details"></a><h2>Details</h2> +<div class="refsect2"> +<a name="DBUSMENU-GTKCLIENT-SIGNAL-ROOT-CHANGED:CAPS"></a><h3>DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED</h3> +<pre class="programlisting">#define DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED +</pre> +<p> +String to attach to signal <span class="type">"root-changed"</span> +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DbusmenuGtkClient"></a><h3>DbusmenuGtkClient</h3> +<pre class="programlisting">typedef struct _DbusmenuGtkClient DbusmenuGtkClient;</pre> +<p> +A subclass of <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient"><span class="type">DbusmenuClient</span></a> to add functionality with regarding +building GTK items out of the abstract tree. +</p> +</div> +<hr> +<div class="refsect2"> +<a name="DbusmenuGtkClientClass"></a><h3>struct DbusmenuGtkClientClass</h3> +<pre class="programlisting">struct DbusmenuGtkClientClass { + DbusmenuClientClass parent_class; + + /* Signals */ + void (*root_changed) (DbusmenuMenuitem * newroot); + + /*< Private >*/ + void (*reserved1) (void); + void (*reserved2) (void); + void (*reserved3) (void); + void (*reserved4) (void); + void (*reserved5) (void); + void (*reserved6) (void); +}; +</pre> +<p> +Functions and signal slots for using a <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DbusmenuClientClass"><span class="type">DbusmenuClientClass</span></a> <em class="structfield"><code><a name="DbusmenuGtkClientClass.parent-class"></a>parent_class</code></em>;</span></p></td> +<td><span class="type">GtkMenuClass</span></td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuGtkClientClass.root-changed"></a>root_changed</code></em> ()</span></p></td> +<td>Slot for signal <span class="type">"root-changed"</span> +</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuGtkClientClass.reserved1"></a>reserved1</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuGtkClientClass.reserved2"></a>reserved2</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuGtkClientClass.reserved3"></a>reserved3</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuGtkClientClass.reserved4"></a>reserved4</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuGtkClientClass.reserved5"></a>reserved5</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuGtkClientClass.reserved6"></a>reserved6</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-gtkclient-new"></a><h3>dbusmenu_gtkclient_new ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="returnvalue">DbusmenuGtkClient</span></a> * dbusmenu_gtkclient_new (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *dbus_name</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *dbus_object</code></em>);</pre> +<p> +Creates a new <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> object and creates a <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient"><span class="type">DbusmenuClient</span></a> +that connects across DBus to a <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer"><span class="type">DbusmenuServer</span></a>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>dbus_name</code></em> :</span></p></td> +<td>Name of the <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer"><span class="type">DbusmenuServer</span></a> on DBus</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>dbus_object</code></em> :</span></p></td> +<td>Name of the object on the <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer"><span class="type">DbusmenuServer</span></a> +</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A new <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> sync'd with a server</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-gtkclient-menuitem-get"></a><h3>dbusmenu_gtkclient_menuitem_get ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/gtk/2.24/GtkMenuItem.html"><span class="returnvalue">GtkMenuItem</span></a> * dbusmenu_gtkclient_menuitem_get (<em class="parameter"><code><a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> *client</code></em>, + <em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *item</code></em>);</pre> +<p> +This grabs the <a href="http://library.gnome.org/devel/gtk/2.24/GtkMenuItem.html"><span class="type">GtkMenuItem</span></a> that is associated with the +<a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td> +<td>A <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> with the item in it.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>item</code></em> :</span></p></td> +<td> +<a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to get associated <a href="http://library.gnome.org/devel/gtk/2.24/GtkMenuItem.html"><span class="type">GtkMenuItem</span></a> on.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>The <a href="http://library.gnome.org/devel/gtk/2.24/GtkMenuItem.html"><span class="type">GtkMenuItem</span></a> that can be played with. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-gtkclient-menuitem-get-submenu"></a><h3>dbusmenu_gtkclient_menuitem_get_submenu ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/gtk/2.24/GtkMenu.html"><span class="returnvalue">GtkMenu</span></a> * dbusmenu_gtkclient_menuitem_get_submenu + (<em class="parameter"><code><a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> *client</code></em>, + <em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *item</code></em>);</pre> +<p> +This grabs the submenu associated with the menuitem. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td> +<td>A <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> with the item in it.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>item</code></em> :</span></p></td> +<td> +<a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to get associated <a href="http://library.gnome.org/devel/gtk/2.24/GtkMenu.html"><span class="type">GtkMenu</span></a> on.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>The <a href="http://library.gnome.org/devel/gtk/2.24/GtkMenu.html"><span class="type">GtkMenu</span></a> if there is one. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-gtkclient-set-accel-group"></a><h3>dbusmenu_gtkclient_set_accel_group ()</h3> +<pre class="programlisting"><span class="returnvalue">void</span> dbusmenu_gtkclient_set_accel_group (<em class="parameter"><code><a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> *client</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gtk/2.24/gtk3-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *agroup</code></em>);</pre> +<p> +Sets the acceleration group for the menu items with accelerators +on this client. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td> +<td>To set the group on</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>agroup</code></em> :</span></p></td> +<td>The new acceleration group</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-gtkclient-get-accel-group"></a><h3>dbusmenu_gtkclient_get_accel_group ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/gtk/2.24/gtk3-Keyboard-Accelerators.html#GtkAccelGroup"><span class="returnvalue">GtkAccelGroup</span></a> * dbusmenu_gtkclient_get_accel_group (<em class="parameter"><code><a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> *client</code></em>);</pre> +<p> +Gets the accel group for this client. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td> +<td>Client to query for an accelerator group</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>Either a valid group or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> on error or +none set. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-gtkclient-newitem-base"></a><h3>dbusmenu_gtkclient_newitem_base ()</h3> +<pre class="programlisting"><span class="returnvalue">void</span> dbusmenu_gtkclient_newitem_base (<em class="parameter"><code><a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> *client</code></em>, + <em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *item</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gtk/2.24/GtkMenuItem.html"><span class="type">GtkMenuItem</span></a> *gmi</code></em>, + <em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *parent</code></em>);</pre> +<p> +This function provides some of the basic connectivity for being in +the GTK world. Things like visibility and sensitivity of the item are +handled here so that the subclasses don't have to. If you're building +your on GTK menu item you can use this function to apply those basic +attributes so that you don't have to deal with them either. +</p> +<p> +This also handles passing the "activate" signal back to the +<a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> side of thing. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td> +<td>The client handling everything on this connection</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>item</code></em> :</span></p></td> +<td>The <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to attach the GTK-isms to</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>gmi</code></em> :</span></p></td> +<td>A <a href="http://library.gnome.org/devel/gtk/2.24/GtkMenuItem.html"><span class="type">GtkMenuItem</span></a> representing the GTK world's view of this menuitem</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>parent</code></em> :</span></p></td> +<td>The parent <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> +</td> +</tr> +</tbody> +</table></div> +</div> +</div> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk-DbusmenuGtkMenu.html b/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk-DbusmenuGtkMenu.html new file mode 100644 index 0000000..44fb6e4 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk-DbusmenuGtkMenu.html @@ -0,0 +1,187 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>DbusmenuGtkMenu</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="up" href="ch01.html" title="API"> +<link rel="prev" href="ch01.html" title="API"> +<link rel="next" href="libdbusmenu-gtk-menuitem.html" title="menuitem"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> +<tr valign="middle"> +<td><a accesskey="p" href="ch01.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-gtk Reference Manual</th> +<td><a accesskey="n" href="libdbusmenu-gtk-menuitem.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr> +<tr><td colspan="5" class="shortcuts"> +<a href="#libdbusmenu-gtk-DbusmenuGtkMenu.synopsis" class="shortcut">Top</a> +  | + <a href="#libdbusmenu-gtk-DbusmenuGtkMenu.description" class="shortcut">Description</a> +</td></tr> +</table> +<div class="refentry"> +<a name="libdbusmenu-gtk-DbusmenuGtkMenu"></a><div class="titlepage"></div> +<div class="refnamediv"><table width="100%"><tr> +<td valign="top"> +<h2><span class="refentrytitle"><a name="libdbusmenu-gtk-DbusmenuGtkMenu.top_of_page"></a>DbusmenuGtkMenu</span></h2> +<p>DbusmenuGtkMenu — A GTK Menu Object that syncronizes over DBus</p> +</td> +<td valign="top" align="right"></td> +</tr></table></div> +<div class="refsect1"> +<a name="libdbusmenu-gtk-DbusmenuGtkMenu.stability-level"></a><h2>Stability Level</h2> +Unstable, unless otherwise indicated +</div> +<div class="refsynopsisdiv"> +<a name="libdbusmenu-gtk-DbusmenuGtkMenu.synopsis"></a><h2>Synopsis</h2> +<pre class="synopsis"> +#include <libdbusmenu-gtk/menu.h> + +struct <a class="link" href="libdbusmenu-gtk-DbusmenuGtkMenu.html#DbusmenuGtkMenuClass" title="struct DbusmenuGtkMenuClass">DbusmenuGtkMenuClass</a>; +<span class="returnvalue">DbusmenuGtkMenu</span> * <a class="link" href="libdbusmenu-gtk-DbusmenuGtkMenu.html#dbusmenu-gtkmenu-new" title="dbusmenu_gtkmenu_new ()">dbusmenu_gtkmenu_new</a> (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *dbus_name</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *dbus_object</code></em>); +<a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="returnvalue">DbusmenuGtkClient</span></a> * <a class="link" href="libdbusmenu-gtk-DbusmenuGtkMenu.html#dbusmenu-gtkmenu-get-client" title="dbusmenu_gtkmenu_get_client ()">dbusmenu_gtkmenu_get_client</a> (<em class="parameter"><code><span class="type">DbusmenuGtkMenu</span> *menu</code></em>); +</pre> +</div> +<div class="refsect1"> +<a name="libdbusmenu-gtk-DbusmenuGtkMenu.description"></a><h2>Description</h2> +<p> +In general, this is just a <a href="http://library.gnome.org/devel/gtk/2.24/GtkMenu.html"><span class="type">GtkMenu</span></a>, why else would you care? Oh, + because this menu is created by someone else on a server that exists + on the other side of DBus. You need a <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer"><span class="type">DbusmenuServer</span></a> to be able + push the data into this menu. +</p> +<p> + The first thing you need to know is how to find that <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer"><span class="type">DbusmenuServer</span></a> + on DBus. This involves both the DBus name and the DBus object that + the menu interface can be found on. Those two value should be set + when creating the object using <a class="link" href="libdbusmenu-gtk-DbusmenuGtkMenu.html#dbusmenu-gtkmenu-new" title="dbusmenu_gtkmenu_new ()"><code class="function">dbusmenu_gtkmenu_new()</code></a>. They are then + stored on two properties <span class="type">"dbus-name"</span> and <span class="type">"dbus-object"</span>. +</p> +<p> + After creation the <span class="type">DbusmenuGtkMenu</span> it will continue to keep in + synchronization with the <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer"><span class="type">DbusmenuServer</span></a> object across Dbus. If the + number of entries change, the menus change, if they change thier + properties change, they update in the items. All of this should + be handled transparently to the user of this object. +</p> +</div> +<div class="refsect1"> +<a name="libdbusmenu-gtk-DbusmenuGtkMenu.details"></a><h2>Details</h2> +<div class="refsect2"> +<a name="DbusmenuGtkMenuClass"></a><h3>struct DbusmenuGtkMenuClass</h3> +<pre class="programlisting">struct DbusmenuGtkMenuClass { + GtkMenuClass parent_class; + + /*< Private >*/ + void (*reserved1) (void); + void (*reserved2) (void); + void (*reserved3) (void); + void (*reserved4) (void); + void (*reserved5) (void); + void (*reserved6) (void); +}; +</pre> +<p> +All of the subclassable functions and signal slots for a +<span class="type">DbusmenuGtkMenu</span>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><span class="type">GtkMenuClass</span> <em class="structfield"><code><a name="DbusmenuGtkMenuClass.parent-class"></a>parent_class</code></em>;</span></p></td> +<td><span class="type">GtkMenuClass</span></td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuGtkMenuClass.reserved1"></a>reserved1</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuGtkMenuClass.reserved2"></a>reserved2</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuGtkMenuClass.reserved3"></a>reserved3</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuGtkMenuClass.reserved4"></a>reserved4</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuGtkMenuClass.reserved5"></a>reserved5</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +<tr> +<td><p><span class="term"><em class="structfield"><code><a name="DbusmenuGtkMenuClass.reserved6"></a>reserved6</code></em> ()</span></p></td> +<td>Reserved for future use.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-gtkmenu-new"></a><h3>dbusmenu_gtkmenu_new ()</h3> +<pre class="programlisting"><span class="returnvalue">DbusmenuGtkMenu</span> * dbusmenu_gtkmenu_new (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *dbus_name</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *dbus_object</code></em>);</pre> +<p> +Creates a new <span class="type">DbusmenuGtkMenu</span> object and creates a <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuClient.html#DbusmenuClient"><span class="type">DbusmenuClient</span></a> +that connects across DBus to a <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer"><span class="type">DbusmenuServer</span></a>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>dbus_name</code></em> :</span></p></td> +<td>Name of the <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer"><span class="type">DbusmenuServer</span></a> on DBus</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>dbus_object</code></em> :</span></p></td> +<td>Name of the object on the <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuServer.html#DbusmenuServer"><span class="type">DbusmenuServer</span></a> +</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A new <span class="type">DbusmenuGtkMenu</span> sync'd with a server</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-gtkmenu-get-client"></a><h3>dbusmenu_gtkmenu_get_client ()</h3> +<pre class="programlisting"><a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="returnvalue">DbusmenuGtkClient</span></a> * dbusmenu_gtkmenu_get_client (<em class="parameter"><code><span class="type">DbusmenuGtkMenu</span> *menu</code></em>);</pre> +<p> +An accessor for the client that this menu is using to +communicate with the server. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>menu</code></em> :</span></p></td> +<td>The <span class="type">DbusmenuGtkMenu</span> to get the client from</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A valid <a class="link" href="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient" title="DbusmenuGtkClient"><span class="type">DbusmenuGtkClient</span></a> or NULL on error. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +</div> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk-menuitem.html b/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk-menuitem.html new file mode 100644 index 0000000..031cf48 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk-menuitem.html @@ -0,0 +1,274 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>menuitem</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="up" href="ch01.html" title="API"> +<link rel="prev" href="libdbusmenu-gtk-DbusmenuGtkMenu.html" title="DbusmenuGtkMenu"> +<link rel="next" href="libdbusmenu-gtk-DbusmenuGtkClient.html" title="DbusmenuGtkClient"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> +<tr valign="middle"> +<td><a accesskey="p" href="libdbusmenu-gtk-DbusmenuGtkMenu.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-gtk Reference Manual</th> +<td><a accesskey="n" href="libdbusmenu-gtk-DbusmenuGtkClient.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr> +<tr><td colspan="5" class="shortcuts"> +<a href="#libdbusmenu-gtk-menuitem.synopsis" class="shortcut">Top</a> +  | + <a href="#libdbusmenu-gtk-menuitem.description" class="shortcut">Description</a> +</td></tr> +</table> +<div class="refentry"> +<a name="libdbusmenu-gtk-menuitem"></a><div class="titlepage"></div> +<div class="refnamediv"><table width="100%"><tr> +<td valign="top"> +<h2><span class="refentrytitle"><a name="libdbusmenu-gtk-menuitem.top_of_page"></a>menuitem</span></h2> +<p>menuitem — Helpers for <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> properties that require a GTK dependency</p> +</td> +<td valign="top" align="right"></td> +</tr></table></div> +<div class="refsect1"> +<a name="libdbusmenu-gtk-menuitem.stability-level"></a><h2>Stability Level</h2> +Unstable, unless otherwise indicated +</div> +<div class="refsynopsisdiv"> +<a name="libdbusmenu-gtk-menuitem.synopsis"></a><h2>Synopsis</h2> +<pre class="synopsis"> +#include <libdbusmenu-gtk/menuitem.h> + +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-image" title="dbusmenu_menuitem_property_set_image ()">dbusmenu_menuitem_property_set_image</a> + (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *menuitem</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>, + <em class="parameter"><code>const <span class="type">GdkPixbuf</span> *data</code></em>); +<span class="returnvalue">GdkPixbuf</span> * <a class="link" href="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-get-image" title="dbusmenu_menuitem_property_get_image ()">dbusmenu_menuitem_property_get_image</a> + (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *menuitem</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut" title="dbusmenu_menuitem_property_set_shortcut ()">dbusmenu_menuitem_property_set_shortcut</a> + (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *menuitem</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> key</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gdk3/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> modifier</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut-string" title="dbusmenu_menuitem_property_set_shortcut_string ()">dbusmenu_menuitem_property_set_shortcut_string</a> + (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *menuitem</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *shortcut</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut-menuitem" title="dbusmenu_menuitem_property_set_shortcut_menuitem ()">dbusmenu_menuitem_property_set_shortcut_menuitem</a> + (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *menuitem</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gtk/2.24/GtkMenuItem.html"><span class="type">GtkMenuItem</span></a> *gmi</code></em>); +<span class="returnvalue">void</span> <a class="link" href="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-get-shortcut" title="dbusmenu_menuitem_property_get_shortcut ()">dbusmenu_menuitem_property_get_shortcut</a> + (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *menuitem</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *key</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gdk3/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> *modifier</code></em>); +</pre> +</div> +<div class="refsect1"> +<a name="libdbusmenu-gtk-menuitem.description"></a><h2>Description</h2> +<p> +Some property helpers can't be done without picking up a GTK+ + dependency. So those sit in libdbusmenu-gtk but have very similar + prototypes to the code in libdbusmenu-glib so your code will + look consistent, just with the extra depedency. +</p> +</div> +<div class="refsect1"> +<a name="libdbusmenu-gtk-menuitem.details"></a><h2>Details</h2> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-set-image"></a><h3>dbusmenu_menuitem_property_set_image ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_property_set_image + (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *menuitem</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>, + <em class="parameter"><code>const <span class="type">GdkPixbuf</span> *data</code></em>);</pre> +<p> +This function takes the pixbuf that is stored in <em class="parameter"><code>data</code></em> and +turns it into a base64 encoded PNG so that it can be placed +onto a standard <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> property. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>menuitem</code></em> :</span></p></td> +<td>The <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to set the property on.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>property</code></em> :</span></p></td> +<td>Name of the property to set.</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td> +<td>The image to place on the property.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>Whether the function was able to set the property +or not.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-get-image"></a><h3>dbusmenu_menuitem_property_get_image ()</h3> +<pre class="programlisting"><span class="returnvalue">GdkPixbuf</span> * dbusmenu_menuitem_property_get_image + (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *menuitem</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property</code></em>);</pre> +<p> +This function looks on the menu item for a property by the +name of <em class="parameter"><code>property</code></em>. If one exists it tries to turn it into +a <span class="type">GdkPixbuf</span>. It assumes that the property is a base64 encoded +PNG file like the one created by <span class="type">dbusmenu_menuite_property_set_image</span>. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>menuitem</code></em> :</span></p></td> +<td>The <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to look for the property on</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>property</code></em> :</span></p></td> +<td>The name of the property to look for.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A pixbuf or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> to signal error. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-set-shortcut"></a><h3>dbusmenu_menuitem_property_set_shortcut ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_property_set_shortcut + (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *menuitem</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> key</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gdk3/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> modifier</code></em>);</pre> +<p> +Takes the modifer described by <em class="parameter"><code>key</code></em> and <em class="parameter"><code>modifier</code></em> and places that into +the format sending across Dbus for shortcuts. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>menuitem</code></em> :</span></p></td> +<td>The <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to set the shortcut on</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td> +<td>The keycode of the key to send</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>modifier</code></em> :</span></p></td> +<td>A bitmask of modifiers used to activate the item</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>Whether it was successful at setting the property.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-set-shortcut-string"></a><h3>dbusmenu_menuitem_property_set_shortcut_string ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_property_set_shortcut_string + (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *menuitem</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *shortcut</code></em>);</pre> +<p> +This function takes a GTK shortcut string as defined in +<a href="http://library.gnome.org/devel/gtk/2.24/gtk3-Keyboard-Accelerators.html#gtk-accelerator-parse"><span class="type">gtk_accelerator_parse</span></a> and turns that into the information +required to send it over DBusmenu. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>menuitem</code></em> :</span></p></td> +<td>The <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to set the shortcut on</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>shortcut</code></em> :</span></p></td> +<td>String describing the shortcut</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>Whether it was successful at setting the property.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-set-shortcut-menuitem"></a><h3>dbusmenu_menuitem_property_set_shortcut_menuitem ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> dbusmenu_menuitem_property_set_shortcut_menuitem + (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *menuitem</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/gtk/2.24/GtkMenuItem.html"><span class="type">GtkMenuItem</span></a> *gmi</code></em>);</pre> +<p> +Takes the shortcut that is installed on a menu item and calls +<a class="link" href="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut" title="dbusmenu_menuitem_property_set_shortcut ()"><span class="type">dbusmenu_menuitem_property_set_shortcut</span></a> with it. It also sets +up listeners to watch it change. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>menuitem</code></em> :</span></p></td> +<td>The <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to set the shortcut on</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>gmi</code></em> :</span></p></td> +<td>A menu item to steal the shortcut off of</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>Whether it was successful at setting the property.</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-menuitem-property-get-shortcut"></a><h3>dbusmenu_menuitem_property_get_shortcut ()</h3> +<pre class="programlisting"><span class="returnvalue">void</span> dbusmenu_menuitem_property_get_shortcut + (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> *menuitem</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *key</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gdk3/gdk-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> *modifier</code></em>);</pre> +<p> +This function gets a GTK shortcut as a key and a mask +for use to set the accelerators. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>menuitem</code></em> :</span></p></td> +<td>The <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> to get the shortcut off</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td> +<td>Location to put the key value. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span> +</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>modifier</code></em> :</span></p></td> +<td>Location to put the modifier mask. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +</div> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk-parser.html b/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk-parser.html new file mode 100644 index 0000000..fa6d544 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk-parser.html @@ -0,0 +1,118 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>parser</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="up" href="ch01.html" title="API"> +<link rel="prev" href="libdbusmenu-gtk-DbusmenuGtkClient.html" title="DbusmenuGtkClient"> +<link rel="next" href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html" title="DbusmenuGtkSerializableMenuItem"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> +<tr valign="middle"> +<td><a accesskey="p" href="libdbusmenu-gtk-DbusmenuGtkClient.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-gtk Reference Manual</th> +<td><a accesskey="n" href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr> +<tr><td colspan="5" class="shortcuts"> +<a href="#libdbusmenu-gtk-parser.synopsis" class="shortcut">Top</a> +  | + <a href="#libdbusmenu-gtk-parser.description" class="shortcut">Description</a> +</td></tr> +</table> +<div class="refentry"> +<a name="libdbusmenu-gtk-parser"></a><div class="titlepage"></div> +<div class="refnamediv"><table width="100%"><tr> +<td valign="top"> +<h2><span class="refentrytitle"><a name="libdbusmenu-gtk-parser.top_of_page"></a>parser</span></h2> +<p>parser — A parser of in-memory GTK menu trees</p> +</td> +<td valign="top" align="right"></td> +</tr></table></div> +<div class="refsect1"> +<a name="libdbusmenu-gtk-parser.stability-level"></a><h2>Stability Level</h2> +Unstable, unless otherwise indicated +</div> +<div class="refsynopsisdiv"> +<a name="libdbusmenu-gtk-parser.synopsis"></a><h2>Synopsis</h2> +<pre class="synopsis"> +#include <libdbusmenu-gtk/parser.h> + +<a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * <a class="link" href="libdbusmenu-gtk-parser.html#dbusmenu-gtk-parse-menu-structure" title="dbusmenu_gtk_parse_menu_structure ()">dbusmenu_gtk_parse_menu_structure</a> (<em class="parameter"><code><a href="http://library.gnome.org/devel/gtk/2.24/GtkWidget.html"><span class="type">GtkWidget</span></a> *widget</code></em>); +<a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * <a class="link" href="libdbusmenu-gtk-parser.html#dbusmenu-gtk-parse-get-cached-item" title="dbusmenu_gtk_parse_get_cached_item ()">dbusmenu_gtk_parse_get_cached_item</a> (<em class="parameter"><code><a href="http://library.gnome.org/devel/gtk/2.24/GtkWidget.html"><span class="type">GtkWidget</span></a> *widget</code></em>); +</pre> +</div> +<div class="refsect1"> +<a name="libdbusmenu-gtk-parser.description"></a><h2>Description</h2> +<p> +The parser will take a GTK menu tree and attach it to a Dbusmenu menu + tree. Along with setting up all the signals for updates and destruction. + The returned item would be the root item of the given tree. +</p> +</div> +<div class="refsect1"> +<a name="libdbusmenu-gtk-parser.details"></a><h2>Details</h2> +<div class="refsect2"> +<a name="dbusmenu-gtk-parse-menu-structure"></a><h3>dbusmenu_gtk_parse_menu_structure ()</h3> +<pre class="programlisting"><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * dbusmenu_gtk_parse_menu_structure (<em class="parameter"><code><a href="http://library.gnome.org/devel/gtk/2.24/GtkWidget.html"><span class="type">GtkWidget</span></a> *widget</code></em>);</pre> +<p> +Goes through the GTK structures and turns them into the appropraite +Dbusmenu structures along with setting up all the relationships +between the objects. It also stores the dbusmenu items as a cache +on the GTK items so that they'll be reused if necissary. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>widget</code></em> :</span></p></td> +<td>A <a href="http://library.gnome.org/devel/gtk/2.24/GtkMenuItem.html"><span class="type">GtkMenuItem</span></a> or <a href="http://library.gnome.org/devel/gtk/2.24/GtkMenuShell.html"><span class="type">GtkMenuShell</span></a> to turn into a <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> +</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A dbusmenu item representing the menu structure. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="dbusmenu-gtk-parse-get-cached-item"></a><h3>dbusmenu_gtk_parse_get_cached_item ()</h3> +<pre class="programlisting"><a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="returnvalue">DbusmenuMenuitem</span></a> * dbusmenu_gtk_parse_get_cached_item (<em class="parameter"><code><a href="http://library.gnome.org/devel/gtk/2.24/GtkWidget.html"><span class="type">GtkWidget</span></a> *widget</code></em>);</pre> +<p> +The Dbusmenu GTK parser adds cached items on the various +menu items throughout the tree. Sometimes it can be useful +to get that cached item to use directly. This function +will retrieve it for you. +</p> +<div class="variablelist"><table border="0"> +<col align="left" valign="top"> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>widget</code></em> :</span></p></td> +<td>A <a href="http://library.gnome.org/devel/gtk/2.24/GtkMenuItem.html"><span class="type">GtkMenuItem</span></a> that may have a cached <a href="/usr/share/gtk-doc/html/libdbusmenu-glib/libdbusmenu-glib-DbusmenuMenuitem.html#DbusmenuMenuitem"><span class="type">DbusmenuMenuitem</span></a> from the parser</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>A pointer to the cached item +or NULL if it isn't there. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> +</td> +</tr> +</tbody> +</table></div> +</div> +</div> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk.devhelp b/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk.devhelp new file mode 100644 index 0000000..8a8a46b --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk.devhelp @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE book PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ""> +<book xmlns="http://www.devhelp.net/book" title="libdbusmenu-gtk Reference Manual" link="index.html" author="" name="libdbusmenu-gtk"> + <chapters> + <sub name="API" link="ch01.html"> + <sub name="DbusmenuGtkMenu" link="libdbusmenu-gtk-DbusmenuGtkMenu.html"/> + <sub name="menuitem" link="libdbusmenu-gtk-menuitem.html"/> + <sub name="DbusmenuGtkClient" link="libdbusmenu-gtk-DbusmenuGtkClient.html"/> + <sub name="parser" link="libdbusmenu-gtk-parser.html"/> + <sub name="DbusmenuGtkSerializableMenuItem" link="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html"/> + </sub> + <sub name="Object Hierarchy" link="object-tree.html"/> + <sub name="API Index" link="api-index-full.html"/> + <sub name="Deprecated API Index" link="api-index-deprecated.html"/> + <sub name="Annotation Glossary" link="annotation-glossary.html"/> + </chapters> + <functions> + <function name="struct DbusmenuGtkMenuClass" link="libdbusmenu-gtk-DbusmenuGtkMenu.html#DbusmenuGtkMenuClass"/> + <function name="dbusmenu_gtkmenu_new ()" link="libdbusmenu-gtk-DbusmenuGtkMenu.html#dbusmenu-gtkmenu-new"/> + <function name="dbusmenu_gtkmenu_get_client ()" link="libdbusmenu-gtk-DbusmenuGtkMenu.html#dbusmenu-gtkmenu-get-client"/> + <function name="dbusmenu_menuitem_property_set_image ()" link="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-image"/> + <function name="dbusmenu_menuitem_property_get_image ()" link="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-get-image"/> + <function name="dbusmenu_menuitem_property_set_shortcut ()" link="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut"/> + <function name="dbusmenu_menuitem_property_set_shortcut_string ()" link="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut-string"/> + <function name="dbusmenu_menuitem_property_set_shortcut_menuitem ()" link="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut-menuitem"/> + <function name="dbusmenu_menuitem_property_get_shortcut ()" link="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-get-shortcut"/> + <function name="DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED" link="libdbusmenu-gtk-DbusmenuGtkClient.html#DBUSMENU-GTKCLIENT-SIGNAL-ROOT-CHANGED:CAPS"/> + <function name="DbusmenuGtkClient" link="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient"/> + <function name="struct DbusmenuGtkClientClass" link="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClientClass"/> + <function name="dbusmenu_gtkclient_new ()" link="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-new"/> + <function name="dbusmenu_gtkclient_menuitem_get ()" link="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-menuitem-get"/> + <function name="dbusmenu_gtkclient_menuitem_get_submenu ()" link="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-menuitem-get-submenu"/> + <function name="dbusmenu_gtkclient_set_accel_group ()" link="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-set-accel-group"/> + <function name="dbusmenu_gtkclient_get_accel_group ()" link="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-get-accel-group"/> + <function name="dbusmenu_gtkclient_newitem_base ()" link="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-newitem-base"/> + <function name="dbusmenu_gtk_parse_menu_structure ()" link="libdbusmenu-gtk-parser.html#dbusmenu-gtk-parse-menu-structure"/> + <function name="dbusmenu_gtk_parse_get_cached_item ()" link="libdbusmenu-gtk-parser.html#dbusmenu-gtk-parse-get-cached-item"/> + <function name="DBUSMENU_GTK_SERIALIZABLE_MENU_ITEM_PROP_MENUITEM" link="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#DBUSMENU-GTK-SERIALIZABLE-MENU-ITEM-PROP-MENUITEM:CAPS"/> + <function name="struct DbusmenuGtkSerializableMenuItemClass" link="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#DbusmenuGtkSerializableMenuItemClass"/> + <function name="dbusmenu_gtk_serializable_menu_item_build_menuitem ()" link="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#dbusmenu-gtk-serializable-menu-item-build-menuitem"/> + <function name="dbusmenu_gtk_serializable_menu_item_register_to_client ()" link="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#dbusmenu-gtk-serializable-menu-item-register-to-client"/> + <function name="dbusmenu_gtk_serializable_menu_item_set_menuitem ()" link="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#dbusmenu-gtk-serializable-menu-item-set-menuitem"/> + </functions> +</book> diff --git a/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk.devhelp2 b/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk.devhelp2 new file mode 100644 index 0000000..437d425 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk.devhelp2 @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE book PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ""> +<book xmlns="http://www.devhelp.net/book" title="libdbusmenu-gtk Reference Manual" link="index.html" author="" name="libdbusmenu-gtk" version="2" language="c"> + <chapters> + <sub name="API" link="ch01.html"> + <sub name="DbusmenuGtkMenu" link="libdbusmenu-gtk-DbusmenuGtkMenu.html"/> + <sub name="menuitem" link="libdbusmenu-gtk-menuitem.html"/> + <sub name="DbusmenuGtkClient" link="libdbusmenu-gtk-DbusmenuGtkClient.html"/> + <sub name="parser" link="libdbusmenu-gtk-parser.html"/> + <sub name="DbusmenuGtkSerializableMenuItem" link="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html"/> + </sub> + <sub name="Object Hierarchy" link="object-tree.html"/> + <sub name="API Index" link="api-index-full.html"/> + <sub name="Deprecated API Index" link="api-index-deprecated.html"/> + <sub name="Annotation Glossary" link="annotation-glossary.html"/> + </chapters> + <functions> + <keyword type="struct" name="struct DbusmenuGtkMenuClass" link="libdbusmenu-gtk-DbusmenuGtkMenu.html#DbusmenuGtkMenuClass"/> + <keyword type="function" name="dbusmenu_gtkmenu_new ()" link="libdbusmenu-gtk-DbusmenuGtkMenu.html#dbusmenu-gtkmenu-new"/> + <keyword type="function" name="dbusmenu_gtkmenu_get_client ()" link="libdbusmenu-gtk-DbusmenuGtkMenu.html#dbusmenu-gtkmenu-get-client"/> + <keyword type="function" name="dbusmenu_menuitem_property_set_image ()" link="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-image"/> + <keyword type="function" name="dbusmenu_menuitem_property_get_image ()" link="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-get-image"/> + <keyword type="function" name="dbusmenu_menuitem_property_set_shortcut ()" link="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut"/> + <keyword type="function" name="dbusmenu_menuitem_property_set_shortcut_string ()" link="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut-string"/> + <keyword type="function" name="dbusmenu_menuitem_property_set_shortcut_menuitem ()" link="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-set-shortcut-menuitem"/> + <keyword type="function" name="dbusmenu_menuitem_property_get_shortcut ()" link="libdbusmenu-gtk-menuitem.html#dbusmenu-menuitem-property-get-shortcut"/> + <keyword type="macro" name="DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED" link="libdbusmenu-gtk-DbusmenuGtkClient.html#DBUSMENU-GTKCLIENT-SIGNAL-ROOT-CHANGED:CAPS"/> + <keyword type="struct" name="DbusmenuGtkClient" link="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClient"/> + <keyword type="struct" name="struct DbusmenuGtkClientClass" link="libdbusmenu-gtk-DbusmenuGtkClient.html#DbusmenuGtkClientClass"/> + <keyword type="function" name="dbusmenu_gtkclient_new ()" link="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-new"/> + <keyword type="function" name="dbusmenu_gtkclient_menuitem_get ()" link="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-menuitem-get"/> + <keyword type="function" name="dbusmenu_gtkclient_menuitem_get_submenu ()" link="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-menuitem-get-submenu"/> + <keyword type="function" name="dbusmenu_gtkclient_set_accel_group ()" link="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-set-accel-group"/> + <keyword type="function" name="dbusmenu_gtkclient_get_accel_group ()" link="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-get-accel-group"/> + <keyword type="function" name="dbusmenu_gtkclient_newitem_base ()" link="libdbusmenu-gtk-DbusmenuGtkClient.html#dbusmenu-gtkclient-newitem-base"/> + <keyword type="function" name="dbusmenu_gtk_parse_menu_structure ()" link="libdbusmenu-gtk-parser.html#dbusmenu-gtk-parse-menu-structure"/> + <keyword type="function" name="dbusmenu_gtk_parse_get_cached_item ()" link="libdbusmenu-gtk-parser.html#dbusmenu-gtk-parse-get-cached-item"/> + <keyword type="macro" name="DBUSMENU_GTK_SERIALIZABLE_MENU_ITEM_PROP_MENUITEM" link="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#DBUSMENU-GTK-SERIALIZABLE-MENU-ITEM-PROP-MENUITEM:CAPS"/> + <keyword type="struct" name="struct DbusmenuGtkSerializableMenuItemClass" link="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#DbusmenuGtkSerializableMenuItemClass"/> + <keyword type="function" name="dbusmenu_gtk_serializable_menu_item_build_menuitem ()" link="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#dbusmenu-gtk-serializable-menu-item-build-menuitem"/> + <keyword type="function" name="dbusmenu_gtk_serializable_menu_item_register_to_client ()" link="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#dbusmenu-gtk-serializable-menu-item-register-to-client"/> + <keyword type="function" name="dbusmenu_gtk_serializable_menu_item_set_menuitem ()" link="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html#dbusmenu-gtk-serializable-menu-item-set-menuitem"/> + </functions> +</book> diff --git a/docs/libdbusmenu-gtk/reference/html/object-tree.html b/docs/libdbusmenu-gtk/reference/html/object-tree.html new file mode 100644 index 0000000..dc617a1 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/object-tree.html @@ -0,0 +1,32 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>Object Hierarchy</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> +<link rel="home" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="up" href="index.html" title="libdbusmenu-gtk Reference Manual"> +<link rel="prev" href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html" title="DbusmenuGtkSerializableMenuItem"> +<link rel="next" href="api-index-full.html" title="API Index"> +<meta name="generator" content="GTK-Doc V1.16 (XML mode)"> +<link rel="stylesheet" href="style.css" type="text/css"> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> +<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"> +<td><a accesskey="p" href="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td>Â </td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">libdbusmenu-gtk Reference Manual</th> +<td><a accesskey="n" href="api-index-full.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr></table> +<div class="chapter"> +<div class="titlepage"><div><div><h2 class="title"> +<a name="object-tree"></a>Object Hierarchy</h2></div></div></div> +<pre class="screen"> +</pre> +</div> +<div class="footer"> +<hr> + Generated by GTK-Doc V1.16</div> +</body> +</html>
\ No newline at end of file diff --git a/docs/libdbusmenu-gtk/reference/html/right.png b/docs/libdbusmenu-gtk/reference/html/right.png Binary files differnew file mode 100644 index 0000000..ed55207 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/right.png diff --git a/docs/libdbusmenu-gtk/reference/html/style.css b/docs/libdbusmenu-gtk/reference/html/style.css new file mode 100644 index 0000000..d6f6c26 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/style.css @@ -0,0 +1,266 @@ +.synopsis, .classsynopsis +{ + /* tango:aluminium 1/2 */ + background: #eeeeec; + border: solid 1px #d3d7cf; + padding: 0.5em; +} +.programlisting +{ + /* tango:sky blue 0/1 */ + background: #e6f3ff; + border: solid 1px #729fcf; + padding: 0.5em; +} +.variablelist +{ + padding: 4px; + margin-left: 3em; +} +.variablelist td:first-child +{ + vertical-align: top; +} + +@media screen { + sup a.footnote + { + position: relative; + top: 0em ! important; + + } + /* this is needed so that the local anchors are displayed below the naviagtion */ + div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name] + { + display: inline-block; + position: relative; + top:-5em; + } + /* this seems to be a bug in the xsl style sheets when generating indexes */ + div.index div.index + { + top: 0em; + } + /* make space for the fixed navigation bar and add space at the bottom so that + * link targets appear somewhat close to top + */ + body + { + padding-top: 3.2em; + padding-bottom: 20em; + } + /* style and size the navigation bar */ + table.navigation#top + { + position: fixed; + /* tango:scarlet red 0/1 */ + background: #ffe6e6; + border: solid 1px #ef2929; + margin-top: 0; + margin-bottom: 0; + top: 0; + left: 0; + height: 3em; + z-index: 10; + } + .navigation a, .navigation a:visited + { + /* tango:scarlet red 3 */ + color: #a40000; + } + .navigation a:hover + { + /* tango:scarlet red 1 */ + color: #ef2929; + } + td.shortcuts + { + /* tango:scarlet red 1 */ + color: #ef2929; + font-size: 80%; + white-space: nowrap; + } +} +@media print { + table.navigation { + visibility: collapse; + display: none; + } + div.titlepage table.navigation { + visibility: visible; + display: table; + /* tango:scarlet red 0/1 */ + background: #ffe6e6; + border: solid 1px #ef2929; + margin-top: 0; + margin-bottom: 0; + top: 0; + left: 0; + height: 3em; + } +} + +.navigation .title +{ + font-size: 200%; +} + +div.gallery-float +{ + float: left; + padding: 10px; +} +div.gallery-float img +{ + border-style: none; +} +div.gallery-spacer +{ + clear: both; +} + +a, a:visited +{ + text-decoration: none; + /* tango:sky blue 2 */ + color: #3465a4; +} +a:hover +{ + text-decoration: underline; + /* tango:sky blue 1 */ + color: #729fcf; +} + +div.table table +{ + border-collapse: collapse; + border-spacing: 0px; + /* tango:aluminium 3 */ + border: solid 1px #babdb6; +} + +div.table table td, div.table table th +{ + /* tango:aluminium 3 */ + border: solid 1px #babdb6; + padding: 3px; + vertical-align: top; +} + +div.table table th +{ + /* tango:aluminium 2 */ + background-color: #d3d7cf; +} + +hr +{ + /* tango:aluminium 3 */ + color: #babdb6; + background: #babdb6; + border: none 0px; + height: 1px; + clear: both; +} + +.footer +{ + padding-top: 3.5em; + /* tango:aluminium 3 */ + color: #babdb6; + text-align: center; + font-size: 80%; +} + +.warning +{ + /* tango:orange 0/1 */ + background: #ffeed9; + border-color: #ffb04f; +} +.note +{ + /* tango:chameleon 0/0.5 */ + background: #d8ffb2; + border-color: #abf562; +} +.note, .warning +{ + padding: 0.5em; + border-width: 1px; + border-style: solid; +} +.note h3, .warning h3 +{ + margin-top: 0.0em +} +.note p, .warning p +{ + margin-bottom: 0.0em +} + +/* blob links */ +h2 .extralinks, h3 .extralinks +{ + float: right; + /* tango:aluminium 3 */ + color: #babdb6; + font-size: 80%; + font-weight: normal; +} + +.annotation +{ + /* tango:aluminium 5 */ + color: #555753; + font-size: 80%; + font-weight: normal; +} + +/* code listings */ + +.listing_code .programlisting .cbracket { color: #a40000; } /* tango: scarlet red 3 */ +.listing_code .programlisting .comment { color: #a1a39d; } /* tango: aluminium 4 */ +.listing_code .programlisting .function { color: #000000; font-weight: bold; } +.listing_code .programlisting .function a { color: #11326b; font-weight: bold; } /* tango: sky blue 4 */ +.listing_code .programlisting .keyword { color: #4e9a06; } /* tango: chameleon 3 */ +.listing_code .programlisting .linenum { color: #babdb6; } /* tango: aluminium 3 */ +.listing_code .programlisting .normal { color: #000000; } +.listing_code .programlisting .number { color: #75507b; } /* tango: plum 2 */ +.listing_code .programlisting .preproc { color: #204a87; } /* tango: sky blue 3 */ +.listing_code .programlisting .string { color: #c17d11; } /* tango: chocolate 2 */ +.listing_code .programlisting .type { color: #000000; } +.listing_code .programlisting .type a { color: #11326b; } /* tango: sky blue 4 */ +.listing_code .programlisting .symbol { color: #ce5c00; } /* tango: orange 3 */ + +.listing_frame { + /* tango:sky blue 1 */ + border: solid 1px #729fcf; + padding: 0px; +} + +.listing_lines, .listing_code { + margin-top: 0px; + margin-bottom: 0px; + padding: 0.5em; +} +.listing_lines { + /* tango:sky blue 0.5 */ + background: #a6c5e3; + /* tango:aluminium 6 */ + color: #2e3436; +} +.listing_code { + /* tango:sky blue 0 */ + background: #e6f3ff; +} +.listing_code .programlisting { + /* override from previous */ + border: none 0px; + padding: 0px; +} +.listing_lines pre, .listing_code pre { + margin: 0px; +} + diff --git a/docs/libdbusmenu-gtk/reference/html/up.png b/docs/libdbusmenu-gtk/reference/html/up.png Binary files differnew file mode 100644 index 0000000..8eb591f --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/html/up.png diff --git a/docs/libdbusmenu-gtk/reference/libdbusmenu-gtk-sections.txt b/docs/libdbusmenu-gtk/reference/libdbusmenu-gtk-sections.txt index 77101f7..efffeaa 100644 --- a/docs/libdbusmenu-gtk/reference/libdbusmenu-gtk-sections.txt +++ b/docs/libdbusmenu-gtk/reference/libdbusmenu-gtk-sections.txt @@ -73,5 +73,6 @@ dbusmenu_menuitem_property_get_shortcut <SECTION> <FILE>parser</FILE> dbusmenu_gtk_parse_menu_structure +dbusmenu_gtk_parse_get_cached_item </SECTION> diff --git a/docs/libdbusmenu-gtk/reference/tmpl/client.sgml b/docs/libdbusmenu-gtk/reference/tmpl/client.sgml new file mode 100644 index 0000000..df48e31 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/tmpl/client.sgml @@ -0,0 +1,108 @@ +<!-- ##### SECTION Title ##### --> +DbusmenuGtkClient + +<!-- ##### SECTION Short_Description ##### --> + + +<!-- ##### SECTION Long_Description ##### --> +<para> + +</para> + +<!-- ##### SECTION See_Also ##### --> +<para> + +</para> + +<!-- ##### SECTION Stability_Level ##### --> + + +<!-- ##### SECTION Image ##### --> + + +<!-- ##### MACRO DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED ##### --> +<para> + +</para> + + + +<!-- ##### STRUCT DbusmenuGtkClient ##### --> +<para> + +</para> + + +<!-- ##### STRUCT DbusmenuGtkClientClass ##### --> +<para> + +</para> + +@parent_class: +@root_changed: +@reserved1: +@reserved2: +@reserved3: +@reserved4: +@reserved5: +@reserved6: + +<!-- ##### FUNCTION dbusmenu_gtkclient_new ##### --> +<para> + +</para> + +@dbus_name: +@dbus_object: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_gtkclient_menuitem_get ##### --> +<para> + +</para> + +@client: +@item: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_gtkclient_menuitem_get_submenu ##### --> +<para> + +</para> + +@client: +@item: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_gtkclient_set_accel_group ##### --> +<para> + +</para> + +@client: +@agroup: + + +<!-- ##### FUNCTION dbusmenu_gtkclient_get_accel_group ##### --> +<para> + +</para> + +@client: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_gtkclient_newitem_base ##### --> +<para> + +</para> + +@client: +@item: +@gmi: +@parent: + + diff --git a/docs/libdbusmenu-gtk/reference/tmpl/libdbusmenu-gtk-unused.sgml b/docs/libdbusmenu-gtk/reference/tmpl/libdbusmenu-gtk-unused.sgml new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/tmpl/libdbusmenu-gtk-unused.sgml diff --git a/docs/libdbusmenu-gtk/reference/tmpl/menu.sgml b/docs/libdbusmenu-gtk/reference/tmpl/menu.sgml new file mode 100644 index 0000000..f79c35e --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/tmpl/menu.sgml @@ -0,0 +1,54 @@ +<!-- ##### SECTION Title ##### --> +DbusmenuGtkMenu + +<!-- ##### SECTION Short_Description ##### --> + + +<!-- ##### SECTION Long_Description ##### --> +<para> + +</para> + +<!-- ##### SECTION See_Also ##### --> +<para> + +</para> + +<!-- ##### SECTION Stability_Level ##### --> + + +<!-- ##### SECTION Image ##### --> + + +<!-- ##### STRUCT DbusmenuGtkMenuClass ##### --> +<para> + +</para> + +@parent_class: +@reserved1: +@reserved2: +@reserved3: +@reserved4: +@reserved5: +@reserved6: + +<!-- ##### FUNCTION dbusmenu_gtkmenu_new ##### --> +<para> + +</para> + +@dbus_name: +@dbus_object: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_gtkmenu_get_client ##### --> +<para> + +</para> + +@menu: +@Returns: + + diff --git a/docs/libdbusmenu-gtk/reference/tmpl/menuitem.sgml b/docs/libdbusmenu-gtk/reference/tmpl/menuitem.sgml new file mode 100644 index 0000000..536e38c --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/tmpl/menuitem.sgml @@ -0,0 +1,84 @@ +<!-- ##### SECTION Title ##### --> +menuitem + +<!-- ##### SECTION Short_Description ##### --> + + +<!-- ##### SECTION Long_Description ##### --> +<para> + +</para> + +<!-- ##### SECTION See_Also ##### --> +<para> + +</para> + +<!-- ##### SECTION Stability_Level ##### --> + + +<!-- ##### SECTION Image ##### --> + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_set_image ##### --> +<para> + +</para> + +@menuitem: +@property: +@data: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_get_image ##### --> +<para> + +</para> + +@menuitem: +@property: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_set_shortcut ##### --> +<para> + +</para> + +@menuitem: +@key: +@modifier: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_set_shortcut_string ##### --> +<para> + +</para> + +@menuitem: +@shortcut: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_set_shortcut_menuitem ##### --> +<para> + +</para> + +@menuitem: +@gmi: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_menuitem_property_get_shortcut ##### --> +<para> + +</para> + +@menuitem: +@key: +@modifier: + + diff --git a/docs/libdbusmenu-gtk/reference/tmpl/parser.sgml b/docs/libdbusmenu-gtk/reference/tmpl/parser.sgml new file mode 100644 index 0000000..e3a4579 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/tmpl/parser.sgml @@ -0,0 +1,40 @@ +<!-- ##### SECTION Title ##### --> +parser + +<!-- ##### SECTION Short_Description ##### --> + + +<!-- ##### SECTION Long_Description ##### --> +<para> + +</para> + +<!-- ##### SECTION See_Also ##### --> +<para> + +</para> + +<!-- ##### SECTION Stability_Level ##### --> + + +<!-- ##### SECTION Image ##### --> + + +<!-- ##### FUNCTION dbusmenu_gtk_parse_menu_structure ##### --> +<para> + +</para> + +@widget: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_gtk_parse_get_cached_item ##### --> +<para> + +</para> + +@widget: +@Returns: + + diff --git a/docs/libdbusmenu-gtk/reference/tmpl/serializablemenuitem.sgml b/docs/libdbusmenu-gtk/reference/tmpl/serializablemenuitem.sgml new file mode 100644 index 0000000..54e3588 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/tmpl/serializablemenuitem.sgml @@ -0,0 +1,72 @@ +<!-- ##### SECTION Title ##### --> +DbusmenuGtkSerializableMenuItem + +<!-- ##### SECTION Short_Description ##### --> + + +<!-- ##### SECTION Long_Description ##### --> +<para> + +</para> + +<!-- ##### SECTION See_Also ##### --> +<para> + +</para> + +<!-- ##### SECTION Stability_Level ##### --> + + +<!-- ##### SECTION Image ##### --> + + +<!-- ##### MACRO DBUSMENU_GTK_SERIALIZABLE_MENU_ITEM_PROP_MENUITEM ##### --> +<para> + +</para> + + + +<!-- ##### STRUCT DbusmenuGtkSerializableMenuItemClass ##### --> +<para> + +</para> + +@parent_class: +@get_type_string: +@get_default_properties: +@build_dbusmenu_menuitem: +@_dbusmenu_gtk_serializable_menu_item_reserved1: +@_dbusmenu_gtk_serializable_menu_item_reserved2: +@_dbusmenu_gtk_serializable_menu_item_reserved3: +@_dbusmenu_gtk_serializable_menu_item_reserved4: +@_dbusmenu_gtk_serializable_menu_item_reserved5: +@_dbusmenu_gtk_serializable_menu_item_reserved6: + +<!-- ##### FUNCTION dbusmenu_gtk_serializable_menu_item_build_menuitem ##### --> +<para> + +</para> + +@smi: +@Returns: + + +<!-- ##### FUNCTION dbusmenu_gtk_serializable_menu_item_register_to_client ##### --> +<para> + +</para> + +@client: +@item_type: + + +<!-- ##### FUNCTION dbusmenu_gtk_serializable_menu_item_set_menuitem ##### --> +<para> + +</para> + +@smi: +@mi: + + diff --git a/docs/libdbusmenu-gtk/reference/version.xml b/docs/libdbusmenu-gtk/reference/version.xml index 72280e8..1dd7a93 100644 --- a/docs/libdbusmenu-gtk/reference/version.xml +++ b/docs/libdbusmenu-gtk/reference/version.xml @@ -1 +1 @@ -0.3.100 +0.3.101 diff --git a/docs/libdbusmenu-gtk/reference/xml/annotation-glossary.xml b/docs/libdbusmenu-gtk/reference/xml/annotation-glossary.xml new file mode 100644 index 0000000..7dde69a --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/xml/annotation-glossary.xml @@ -0,0 +1,32 @@ +<?xml version="1.0"?> +<!DOCTYPE glossary PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> + +<glossary id="annotation-glossary"> + <title>Annotation Glossary</title> +<glossdiv><title>O</title> + <glossentry> + <glossterm><anchor id="annotation-glossterm-out"/>out</glossterm> + <glossdef> + <para>Parameter for returning results. Default is <acronym>transfer full</acronym>.</para> + </glossdef> + </glossentry> +</glossdiv> +<glossdiv><title>T</title> + <glossentry> + <glossterm><anchor id="annotation-glossterm-transfer full"/>transfer full</glossterm> + <glossdef> + <para>Free data after the code is done.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><anchor id="annotation-glossterm-transfer none"/>transfer none</glossterm> + <glossdef> + <para>Don't free data after the code is done.</para> + </glossdef> + </glossentry> +</glossdiv> +</glossary> diff --git a/docs/libdbusmenu-gtk/reference/xml/api-index-deprecated.xml b/docs/libdbusmenu-gtk/reference/xml/api-index-deprecated.xml new file mode 100644 index 0000000..8ec0fe4 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/xml/api-index-deprecated.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<!DOCTYPE indexdiv PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> +<indexdiv> +</indexdiv> diff --git a/docs/libdbusmenu-gtk/reference/xml/api-index-full.xml b/docs/libdbusmenu-gtk/reference/xml/api-index-full.xml new file mode 100644 index 0000000..2f74a98 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/xml/api-index-full.xml @@ -0,0 +1,37 @@ +<?xml version="1.0"?> +<!DOCTYPE indexdiv PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> +<indexdiv> +<indexdiv><title>G</title> +<indexentry><primaryie linkends="DbusmenuGtkClient"><link linkend="DbusmenuGtkClient">DbusmenuGtkClient</link>, struct in <link linkend="libdbusmenu-gtk-DbusmenuGtkClient">DbusmenuGtkClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DbusmenuGtkClientClass"><link linkend="DbusmenuGtkClientClass">DbusmenuGtkClientClass</link>, struct in <link linkend="libdbusmenu-gtk-DbusmenuGtkClient">DbusmenuGtkClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-gtkclient-get-accel-group"><link linkend="dbusmenu-gtkclient-get-accel-group">dbusmenu_gtkclient_get_accel_group</link>, function in <link linkend="libdbusmenu-gtk-DbusmenuGtkClient">DbusmenuGtkClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-gtkclient-menuitem-get"><link linkend="dbusmenu-gtkclient-menuitem-get">dbusmenu_gtkclient_menuitem_get</link>, function in <link linkend="libdbusmenu-gtk-DbusmenuGtkClient">DbusmenuGtkClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-gtkclient-menuitem-get-submenu"><link linkend="dbusmenu-gtkclient-menuitem-get-submenu">dbusmenu_gtkclient_menuitem_get_submenu</link>, function in <link linkend="libdbusmenu-gtk-DbusmenuGtkClient">DbusmenuGtkClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-gtkclient-new"><link linkend="dbusmenu-gtkclient-new">dbusmenu_gtkclient_new</link>, function in <link linkend="libdbusmenu-gtk-DbusmenuGtkClient">DbusmenuGtkClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-gtkclient-newitem-base"><link linkend="dbusmenu-gtkclient-newitem-base">dbusmenu_gtkclient_newitem_base</link>, function in <link linkend="libdbusmenu-gtk-DbusmenuGtkClient">DbusmenuGtkClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-gtkclient-set-accel-group"><link linkend="dbusmenu-gtkclient-set-accel-group">dbusmenu_gtkclient_set_accel_group</link>, function in <link linkend="libdbusmenu-gtk-DbusmenuGtkClient">DbusmenuGtkClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-GTKCLIENT-SIGNAL-ROOT-CHANGED:CAPS"><link linkend="DBUSMENU-GTKCLIENT-SIGNAL-ROOT-CHANGED:CAPS">DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED</link>, macro in <link linkend="libdbusmenu-gtk-DbusmenuGtkClient">DbusmenuGtkClient</link></primaryie></indexentry> +<indexentry><primaryie linkends="DbusmenuGtkMenuClass"><link linkend="DbusmenuGtkMenuClass">DbusmenuGtkMenuClass</link>, struct in <link linkend="libdbusmenu-gtk-DbusmenuGtkMenu">DbusmenuGtkMenu</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-gtkmenu-get-client"><link linkend="dbusmenu-gtkmenu-get-client">dbusmenu_gtkmenu_get_client</link>, function in <link linkend="libdbusmenu-gtk-DbusmenuGtkMenu">DbusmenuGtkMenu</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-gtkmenu-new"><link linkend="dbusmenu-gtkmenu-new">dbusmenu_gtkmenu_new</link>, function in <link linkend="libdbusmenu-gtk-DbusmenuGtkMenu">DbusmenuGtkMenu</link></primaryie></indexentry> +<indexentry><primaryie linkends="DbusmenuGtkSerializableMenuItemClass"><link linkend="DbusmenuGtkSerializableMenuItemClass">DbusmenuGtkSerializableMenuItemClass</link>, struct in <link linkend="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem">DbusmenuGtkSerializableMenuItem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-gtk-parse-get-cached-item"><link linkend="dbusmenu-gtk-parse-get-cached-item">dbusmenu_gtk_parse_get_cached_item</link>, function in <link linkend="libdbusmenu-gtk-parser">parser</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-gtk-parse-menu-structure"><link linkend="dbusmenu-gtk-parse-menu-structure">dbusmenu_gtk_parse_menu_structure</link>, function in <link linkend="libdbusmenu-gtk-parser">parser</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-gtk-serializable-menu-item-build-menuitem"><link linkend="dbusmenu-gtk-serializable-menu-item-build-menuitem">dbusmenu_gtk_serializable_menu_item_build_menuitem</link>, function in <link linkend="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem">DbusmenuGtkSerializableMenuItem</link></primaryie></indexentry> +<indexentry><primaryie linkends="DBUSMENU-GTK-SERIALIZABLE-MENU-ITEM-PROP-MENUITEM:CAPS"><link linkend="DBUSMENU-GTK-SERIALIZABLE-MENU-ITEM-PROP-MENUITEM:CAPS">DBUSMENU_GTK_SERIALIZABLE_MENU_ITEM_PROP_MENUITEM</link>, macro in <link linkend="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem">DbusmenuGtkSerializableMenuItem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-gtk-serializable-menu-item-register-to-client"><link linkend="dbusmenu-gtk-serializable-menu-item-register-to-client">dbusmenu_gtk_serializable_menu_item_register_to_client</link>, function in <link linkend="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem">DbusmenuGtkSerializableMenuItem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-gtk-serializable-menu-item-set-menuitem"><link linkend="dbusmenu-gtk-serializable-menu-item-set-menuitem">dbusmenu_gtk_serializable_menu_item_set_menuitem</link>, function in <link linkend="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem">DbusmenuGtkSerializableMenuItem</link></primaryie></indexentry> +</indexdiv> +<indexdiv><title>M</title> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-get-image"><link linkend="dbusmenu-menuitem-property-get-image">dbusmenu_menuitem_property_get_image</link>, function in <link linkend="libdbusmenu-gtk-menuitem">menuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-get-shortcut"><link linkend="dbusmenu-menuitem-property-get-shortcut">dbusmenu_menuitem_property_get_shortcut</link>, function in <link linkend="libdbusmenu-gtk-menuitem">menuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-set-image"><link linkend="dbusmenu-menuitem-property-set-image">dbusmenu_menuitem_property_set_image</link>, function in <link linkend="libdbusmenu-gtk-menuitem">menuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-set-shortcut"><link linkend="dbusmenu-menuitem-property-set-shortcut">dbusmenu_menuitem_property_set_shortcut</link>, function in <link linkend="libdbusmenu-gtk-menuitem">menuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-set-shortcut-menuitem"><link linkend="dbusmenu-menuitem-property-set-shortcut-menuitem">dbusmenu_menuitem_property_set_shortcut_menuitem</link>, function in <link linkend="libdbusmenu-gtk-menuitem">menuitem</link></primaryie></indexentry> +<indexentry><primaryie linkends="dbusmenu-menuitem-property-set-shortcut-string"><link linkend="dbusmenu-menuitem-property-set-shortcut-string">dbusmenu_menuitem_property_set_shortcut_string</link>, function in <link linkend="libdbusmenu-gtk-menuitem">menuitem</link></primaryie></indexentry> +</indexdiv> +</indexdiv> diff --git a/docs/libdbusmenu-gtk/reference/xml/client.xml b/docs/libdbusmenu-gtk/reference/xml/client.xml new file mode 100644 index 0000000..d5ead35 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/xml/client.xml @@ -0,0 +1,238 @@ +<?xml version="1.0"?> +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> +<refentry id="libdbusmenu-gtk-DbusmenuGtkClient"> +<refmeta> +<refentrytitle role="top_of_page" id="libdbusmenu-gtk-DbusmenuGtkClient.top_of_page">DbusmenuGtkClient</refentrytitle> +<manvolnum>3</manvolnum> +<refmiscinfo> + LIBDBUSMENU-GTK Library +</refmiscinfo> +</refmeta> +<refnamediv> +<refname>DbusmenuGtkClient</refname> +<refpurpose>A subclass of <link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> adding GTK level features</refpurpose> +</refnamediv> +<refsect1 id="libdbusmenu-gtk-DbusmenuGtkClient.stability-level"> +<title>Stability Level</title> +Unstable, unless otherwise indicated +</refsect1> + +<refsynopsisdiv id="libdbusmenu-gtk-DbusmenuGtkClient.synopsis" role="synopsis"> +<title role="synopsis.title">Synopsis</title> + +<synopsis> +#include <libdbusmenu-gtk/client.h> + +#define <link linkend="DBUSMENU-GTKCLIENT-SIGNAL-ROOT-CHANGED:CAPS">DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED</link> + <link linkend="DbusmenuGtkClient">DbusmenuGtkClient</link>; +struct <link linkend="DbusmenuGtkClientClass">DbusmenuGtkClientClass</link>; +<link linkend="DbusmenuGtkClient"><returnvalue>DbusmenuGtkClient</returnvalue></link> * <link linkend="dbusmenu-gtkclient-new">dbusmenu_gtkclient_new</link> (<parameter><link linkend="gchar"><type>gchar</type></link> *dbus_name</parameter>, + <parameter><link linkend="gchar"><type>gchar</type></link> *dbus_object</parameter>); +<link linkend="GtkMenuItem"><returnvalue>GtkMenuItem</returnvalue></link> * <link linkend="dbusmenu-gtkclient-menuitem-get">dbusmenu_gtkclient_menuitem_get</link> (<parameter><link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> *client</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *item</parameter>); +<link linkend="GtkMenu"><returnvalue>GtkMenu</returnvalue></link> * <link linkend="dbusmenu-gtkclient-menuitem-get-submenu">dbusmenu_gtkclient_menuitem_get_submenu</link> + (<parameter><link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> *client</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *item</parameter>); +<link linkend="void"><returnvalue>void</returnvalue></link> <link linkend="dbusmenu-gtkclient-set-accel-group">dbusmenu_gtkclient_set_accel_group</link> (<parameter><link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> *client</parameter>, + <parameter><link linkend="GtkAccelGroup"><type>GtkAccelGroup</type></link> *agroup</parameter>); +<link linkend="GtkAccelGroup"><returnvalue>GtkAccelGroup</returnvalue></link> * <link linkend="dbusmenu-gtkclient-get-accel-group">dbusmenu_gtkclient_get_accel_group</link> (<parameter><link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> *client</parameter>); +<link linkend="void"><returnvalue>void</returnvalue></link> <link linkend="dbusmenu-gtkclient-newitem-base">dbusmenu_gtkclient_newitem_base</link> (<parameter><link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> *client</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *item</parameter>, + <parameter><link linkend="GtkMenuItem"><type>GtkMenuItem</type></link> *gmi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *parent</parameter>); +</synopsis> +</refsynopsisdiv> + +<refsect1 id="libdbusmenu-gtk-DbusmenuGtkClient.description" role="desc"> +<title role="desc.title">Description</title> +<para> +In general, this is just a <link linkend="GtkMenu"><type>GtkMenu</type></link>, why else would you care? Oh, + because this menu is created by someone else on a server that exists + on the other side of DBus. You need a <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> to be able + push the data into this menu. +</para> +<para> + The first thing you need to know is how to find that <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> + on DBus. This involves both the DBus name and the DBus object that + the menu interface can be found on. Those two value should be set + when creating the object using <link linkend="dbusmenu-gtkmenu-new"><function>dbusmenu_gtkmenu_new()</function></link>. They are then + stored on two properties <link linkend="DbusmenuGtkClient--dbus-name"><type>"dbus-name"</type></link> and <link linkend="DbusmenuGtkClient--dbus-object"><type>"dbus-object"</type></link>. +</para> +<para> + After creation the <link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> it will continue to keep in + synchronization with the <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> object across Dbus. If the + number of entries change, the menus change, if they change thier + properties change, they update in the items. All of this should + be handled transparently to the user of this object. +</para> +</refsect1> +<refsect1 id="libdbusmenu-gtk-DbusmenuGtkClient.details" role="details"> +<title role="details.title">Details</title> +<refsect2 id="DBUSMENU-GTKCLIENT-SIGNAL-ROOT-CHANGED:CAPS" role="macro"> +<title>DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED</title> +<indexterm zone="DBUSMENU-GTKCLIENT-SIGNAL-ROOT-CHANGED:CAPS"><primary>DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED</primary></indexterm> +<programlisting>#define DBUSMENU_GTKCLIENT_SIGNAL_ROOT_CHANGED DBUSMENU_CLIENT_SIGNAL_ROOT_CHANGED +</programlisting> +<para> +String to attach to signal <link linkend="DbusmenuClient-root-changed"><type>"root-changed"</type></link> +</para></refsect2> +<refsect2 id="DbusmenuGtkClient" role="struct"> +<title>DbusmenuGtkClient</title> +<indexterm zone="DbusmenuGtkClient"><primary>DbusmenuGtkClient</primary></indexterm> +<programlisting>typedef struct _DbusmenuGtkClient DbusmenuGtkClient;</programlisting> +<para> +A subclass of <link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> to add functionality with regarding +building GTK items out of the abstract tree. +</para></refsect2> +<refsect2 id="DbusmenuGtkClientClass" role="struct"> +<title>struct DbusmenuGtkClientClass</title> +<indexterm zone="DbusmenuGtkClientClass"><primary>DbusmenuGtkClientClass</primary></indexterm> +<programlisting>struct DbusmenuGtkClientClass { + DbusmenuClientClass parent_class; + + /* Signals */ + void (*root_changed) (DbusmenuMenuitem * newroot); + + /*< Private >*/ + void (*reserved1) (void); + void (*reserved2) (void); + void (*reserved3) (void); + void (*reserved4) (void); + void (*reserved5) (void); + void (*reserved6) (void); +}; +</programlisting> +<para> +Functions and signal slots for using a <link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> +</para><variablelist role="struct"> +<varlistentry><term><link linkend="DbusmenuClientClass"><type>DbusmenuClientClass</type></link> <structfield id="DbusmenuGtkClientClass.parent-class">parent_class</structfield>;</term> +<listitem><simpara><link linkend="GtkMenuClass"><type>GtkMenuClass</type></link></simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkClientClass.root-changed">root_changed</structfield> ()</term> +<listitem><simpara>Slot for signal <link linkend="DbusmenuGtkClient-root-changed"><type>"root-changed"</type></link></simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkClientClass.reserved1">reserved1</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkClientClass.reserved2">reserved2</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkClientClass.reserved3">reserved3</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkClientClass.reserved4">reserved4</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkClientClass.reserved5">reserved5</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkClientClass.reserved6">reserved6</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-gtkclient-new" role="function"> +<title>dbusmenu_gtkclient_new ()</title> +<indexterm zone="dbusmenu-gtkclient-new"><primary>dbusmenu_gtkclient_new</primary></indexterm> +<programlisting><link linkend="DbusmenuGtkClient"><returnvalue>DbusmenuGtkClient</returnvalue></link> * dbusmenu_gtkclient_new (<parameter><link linkend="gchar"><type>gchar</type></link> *dbus_name</parameter>, + <parameter><link linkend="gchar"><type>gchar</type></link> *dbus_object</parameter>);</programlisting> +<para> +Creates a new <link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> object and creates a <link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> +that connects across DBus to a <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link>. +</para><variablelist role="params"> +<varlistentry><term><parameter>dbus_name</parameter> :</term> +<listitem><simpara>Name of the <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> on DBus</simpara></listitem></varlistentry> +<varlistentry><term><parameter>dbus_object</parameter> :</term> +<listitem><simpara>Name of the object on the <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link></simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A new <link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> sync'd with a server</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-gtkclient-menuitem-get" role="function"> +<title>dbusmenu_gtkclient_menuitem_get ()</title> +<indexterm zone="dbusmenu-gtkclient-menuitem-get"><primary>dbusmenu_gtkclient_menuitem_get</primary></indexterm> +<programlisting><link linkend="GtkMenuItem"><returnvalue>GtkMenuItem</returnvalue></link> * dbusmenu_gtkclient_menuitem_get (<parameter><link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> *client</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *item</parameter>);</programlisting> +<para> +This grabs the <link linkend="GtkMenuItem"><type>GtkMenuItem</type></link> that is associated with the +<link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link>. +</para><variablelist role="params"> +<varlistentry><term><parameter>client</parameter> :</term> +<listitem><simpara>A <link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> with the item in it.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>item</parameter> :</term> +<listitem><simpara><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to get associated <link linkend="GtkMenuItem"><type>GtkMenuItem</type></link> on.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>The <link linkend="GtkMenuItem"><type>GtkMenuItem</type></link> that can be played with. <emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-gtkclient-menuitem-get-submenu" role="function"> +<title>dbusmenu_gtkclient_menuitem_get_submenu ()</title> +<indexterm zone="dbusmenu-gtkclient-menuitem-get-submenu"><primary>dbusmenu_gtkclient_menuitem_get_submenu</primary></indexterm> +<programlisting><link linkend="GtkMenu"><returnvalue>GtkMenu</returnvalue></link> * dbusmenu_gtkclient_menuitem_get_submenu + (<parameter><link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> *client</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *item</parameter>);</programlisting> +<para> +This grabs the submenu associated with the menuitem. +</para><variablelist role="params"> +<varlistentry><term><parameter>client</parameter> :</term> +<listitem><simpara>A <link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> with the item in it.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>item</parameter> :</term> +<listitem><simpara><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to get associated <link linkend="GtkMenu"><type>GtkMenu</type></link> on.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>The <link linkend="GtkMenu"><type>GtkMenu</type></link> if there is one. <emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-gtkclient-set-accel-group" role="function"> +<title>dbusmenu_gtkclient_set_accel_group ()</title> +<indexterm zone="dbusmenu-gtkclient-set-accel-group"><primary>dbusmenu_gtkclient_set_accel_group</primary></indexterm> +<programlisting><link linkend="void"><returnvalue>void</returnvalue></link> dbusmenu_gtkclient_set_accel_group (<parameter><link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> *client</parameter>, + <parameter><link linkend="GtkAccelGroup"><type>GtkAccelGroup</type></link> *agroup</parameter>);</programlisting> +<para> +Sets the acceleration group for the menu items with accelerators +on this client. +</para><variablelist role="params"> +<varlistentry><term><parameter>client</parameter> :</term> +<listitem><simpara>To set the group on</simpara></listitem></varlistentry> +<varlistentry><term><parameter>agroup</parameter> :</term> +<listitem><simpara>The new acceleration group</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-gtkclient-get-accel-group" role="function"> +<title>dbusmenu_gtkclient_get_accel_group ()</title> +<indexterm zone="dbusmenu-gtkclient-get-accel-group"><primary>dbusmenu_gtkclient_get_accel_group</primary></indexterm> +<programlisting><link linkend="GtkAccelGroup"><returnvalue>GtkAccelGroup</returnvalue></link> * dbusmenu_gtkclient_get_accel_group (<parameter><link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> *client</parameter>);</programlisting> +<para> +Gets the accel group for this client. +</para><variablelist role="params"> +<varlistentry><term><parameter>client</parameter> :</term> +<listitem><simpara>Client to query for an accelerator group</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>Either a valid group or <link linkend="NULL:CAPS"><type>NULL</type></link> on error or +none set. <emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-gtkclient-newitem-base" role="function"> +<title>dbusmenu_gtkclient_newitem_base ()</title> +<indexterm zone="dbusmenu-gtkclient-newitem-base"><primary>dbusmenu_gtkclient_newitem_base</primary></indexterm> +<programlisting><link linkend="void"><returnvalue>void</returnvalue></link> dbusmenu_gtkclient_newitem_base (<parameter><link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> *client</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *item</parameter>, + <parameter><link linkend="GtkMenuItem"><type>GtkMenuItem</type></link> *gmi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *parent</parameter>);</programlisting> +<para> +This function provides some of the basic connectivity for being in +the GTK world. Things like visibility and sensitivity of the item are +handled here so that the subclasses don't have to. If you're building +your on GTK menu item you can use this function to apply those basic +attributes so that you don't have to deal with them either. +</para> +<para> +This also handles passing the "activate" signal back to the +<link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> side of thing. +</para><variablelist role="params"> +<varlistentry><term><parameter>client</parameter> :</term> +<listitem><simpara>The client handling everything on this connection</simpara></listitem></varlistentry> +<varlistentry><term><parameter>item</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to attach the GTK-isms to</simpara></listitem></varlistentry> +<varlistentry><term><parameter>gmi</parameter> :</term> +<listitem><simpara>A <link linkend="GtkMenuItem"><type>GtkMenuItem</type></link> representing the GTK world's view of this menuitem</simpara></listitem></varlistentry> +<varlistentry><term><parameter>parent</parameter> :</term> +<listitem><simpara>The parent <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link></simpara></listitem></varlistentry> +</variablelist></refsect2> + +</refsect1> + +</refentry> diff --git a/docs/libdbusmenu-gtk/reference/xml/menu.xml b/docs/libdbusmenu-gtk/reference/xml/menu.xml new file mode 100644 index 0000000..ad68499 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/xml/menu.xml @@ -0,0 +1,133 @@ +<?xml version="1.0"?> +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> +<refentry id="libdbusmenu-gtk-DbusmenuGtkMenu"> +<refmeta> +<refentrytitle role="top_of_page" id="libdbusmenu-gtk-DbusmenuGtkMenu.top_of_page">DbusmenuGtkMenu</refentrytitle> +<manvolnum>3</manvolnum> +<refmiscinfo> + LIBDBUSMENU-GTK Library +</refmiscinfo> +</refmeta> +<refnamediv> +<refname>DbusmenuGtkMenu</refname> +<refpurpose>A GTK Menu Object that syncronizes over DBus</refpurpose> +</refnamediv> +<refsect1 id="libdbusmenu-gtk-DbusmenuGtkMenu.stability-level"> +<title>Stability Level</title> +Unstable, unless otherwise indicated +</refsect1> + +<refsynopsisdiv id="libdbusmenu-gtk-DbusmenuGtkMenu.synopsis" role="synopsis"> +<title role="synopsis.title">Synopsis</title> + +<synopsis> +#include <libdbusmenu-gtk/menu.h> + +struct <link linkend="DbusmenuGtkMenuClass">DbusmenuGtkMenuClass</link>; +<link linkend="DbusmenuGtkMenu"><returnvalue>DbusmenuGtkMenu</returnvalue></link> * <link linkend="dbusmenu-gtkmenu-new">dbusmenu_gtkmenu_new</link> (<parameter><link linkend="gchar"><type>gchar</type></link> *dbus_name</parameter>, + <parameter><link linkend="gchar"><type>gchar</type></link> *dbus_object</parameter>); +<link linkend="DbusmenuGtkClient"><returnvalue>DbusmenuGtkClient</returnvalue></link> * <link linkend="dbusmenu-gtkmenu-get-client">dbusmenu_gtkmenu_get_client</link> (<parameter><link linkend="DbusmenuGtkMenu"><type>DbusmenuGtkMenu</type></link> *menu</parameter>); +</synopsis> +</refsynopsisdiv> + +<refsect1 id="libdbusmenu-gtk-DbusmenuGtkMenu.description" role="desc"> +<title role="desc.title">Description</title> +<para> +In general, this is just a <link linkend="GtkMenu"><type>GtkMenu</type></link>, why else would you care? Oh, + because this menu is created by someone else on a server that exists + on the other side of DBus. You need a <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> to be able + push the data into this menu. +</para> +<para> + The first thing you need to know is how to find that <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> + on DBus. This involves both the DBus name and the DBus object that + the menu interface can be found on. Those two value should be set + when creating the object using <link linkend="dbusmenu-gtkmenu-new"><function>dbusmenu_gtkmenu_new()</function></link>. They are then + stored on two properties <link linkend="DbusmenuGtkMenu--dbus-name"><type>"dbus-name"</type></link> and <link linkend="DbusmenuGtkMenu--dbus-object"><type>"dbus-object"</type></link>. +</para> +<para> + After creation the <link linkend="DbusmenuGtkMenu"><type>DbusmenuGtkMenu</type></link> it will continue to keep in + synchronization with the <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> object across Dbus. If the + number of entries change, the menus change, if they change thier + properties change, they update in the items. All of this should + be handled transparently to the user of this object. +</para> +</refsect1> +<refsect1 id="libdbusmenu-gtk-DbusmenuGtkMenu.details" role="details"> +<title role="details.title">Details</title> +<refsect2 id="DbusmenuGtkMenuClass" role="struct"> +<title>struct DbusmenuGtkMenuClass</title> +<indexterm zone="DbusmenuGtkMenuClass"><primary>DbusmenuGtkMenuClass</primary></indexterm> +<programlisting>struct DbusmenuGtkMenuClass { + GtkMenuClass parent_class; + + /*< Private >*/ + void (*reserved1) (void); + void (*reserved2) (void); + void (*reserved3) (void); + void (*reserved4) (void); + void (*reserved5) (void); + void (*reserved6) (void); +}; +</programlisting> +<para> +All of the subclassable functions and signal slots for a +<link linkend="DbusmenuGtkMenu"><type>DbusmenuGtkMenu</type></link>. +</para><variablelist role="struct"> +<varlistentry><term><link linkend="GtkMenuClass"><type>GtkMenuClass</type></link> <structfield id="DbusmenuGtkMenuClass.parent-class">parent_class</structfield>;</term> +<listitem><simpara><link linkend="GtkMenuClass"><type>GtkMenuClass</type></link></simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkMenuClass.reserved1">reserved1</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkMenuClass.reserved2">reserved2</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkMenuClass.reserved3">reserved3</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkMenuClass.reserved4">reserved4</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkMenuClass.reserved5">reserved5</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkMenuClass.reserved6">reserved6</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-gtkmenu-new" role="function"> +<title>dbusmenu_gtkmenu_new ()</title> +<indexterm zone="dbusmenu-gtkmenu-new"><primary>dbusmenu_gtkmenu_new</primary></indexterm> +<programlisting><link linkend="DbusmenuGtkMenu"><returnvalue>DbusmenuGtkMenu</returnvalue></link> * dbusmenu_gtkmenu_new (<parameter><link linkend="gchar"><type>gchar</type></link> *dbus_name</parameter>, + <parameter><link linkend="gchar"><type>gchar</type></link> *dbus_object</parameter>);</programlisting> +<para> +Creates a new <link linkend="DbusmenuGtkMenu"><type>DbusmenuGtkMenu</type></link> object and creates a <link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> +that connects across DBus to a <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link>. +</para><variablelist role="params"> +<varlistentry><term><parameter>dbus_name</parameter> :</term> +<listitem><simpara>Name of the <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link> on DBus</simpara></listitem></varlistentry> +<varlistentry><term><parameter>dbus_object</parameter> :</term> +<listitem><simpara>Name of the object on the <link linkend="DbusmenuServer"><type>DbusmenuServer</type></link></simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A new <link linkend="DbusmenuGtkMenu"><type>DbusmenuGtkMenu</type></link> sync'd with a server</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-gtkmenu-get-client" role="function"> +<title>dbusmenu_gtkmenu_get_client ()</title> +<indexterm zone="dbusmenu-gtkmenu-get-client"><primary>dbusmenu_gtkmenu_get_client</primary></indexterm> +<programlisting><link linkend="DbusmenuGtkClient"><returnvalue>DbusmenuGtkClient</returnvalue></link> * dbusmenu_gtkmenu_get_client (<parameter><link linkend="DbusmenuGtkMenu"><type>DbusmenuGtkMenu</type></link> *menu</parameter>);</programlisting> +<para> +An accessor for the client that this menu is using to +communicate with the server. +</para><variablelist role="params"> +<varlistentry><term><parameter>menu</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuGtkMenu"><type>DbusmenuGtkMenu</type></link> to get the client from</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A valid <link linkend="DbusmenuGtkClient"><type>DbusmenuGtkClient</type></link> or NULL on error. <emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> + +</refsect1> + +</refentry> diff --git a/docs/libdbusmenu-gtk/reference/xml/menuitem.xml b/docs/libdbusmenu-gtk/reference/xml/menuitem.xml new file mode 100644 index 0000000..12f1325 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/xml/menuitem.xml @@ -0,0 +1,178 @@ +<?xml version="1.0"?> +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> +<refentry id="libdbusmenu-gtk-menuitem"> +<refmeta> +<refentrytitle role="top_of_page" id="libdbusmenu-gtk-menuitem.top_of_page">menuitem</refentrytitle> +<manvolnum>3</manvolnum> +<refmiscinfo> + LIBDBUSMENU-GTK Library +</refmiscinfo> +</refmeta> +<refnamediv> +<refname>menuitem</refname> +<refpurpose>Helpers for <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> properties that require a GTK dependency</refpurpose> +</refnamediv> +<refsect1 id="libdbusmenu-gtk-menuitem.stability-level"> +<title>Stability Level</title> +Unstable, unless otherwise indicated +</refsect1> + +<refsynopsisdiv id="libdbusmenu-gtk-menuitem.synopsis" role="synopsis"> +<title role="synopsis.title">Synopsis</title> + +<synopsis> +#include <libdbusmenu-gtk/menuitem.h> + +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-property-set-image">dbusmenu_menuitem_property_set_image</link> + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *menuitem</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>, + <parameter>const <link linkend="GdkPixbuf"><type>GdkPixbuf</type></link> *data</parameter>); +<link linkend="GdkPixbuf"><returnvalue>GdkPixbuf</returnvalue></link> * <link linkend="dbusmenu-menuitem-property-get-image">dbusmenu_menuitem_property_get_image</link> + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *menuitem</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-property-set-shortcut">dbusmenu_menuitem_property_set_shortcut</link> + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *menuitem</parameter>, + <parameter><link linkend="guint"><type>guint</type></link> key</parameter>, + <parameter><link linkend="GdkModifierType"><type>GdkModifierType</type></link> modifier</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-property-set-shortcut-string">dbusmenu_menuitem_property_set_shortcut_string</link> + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *menuitem</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *shortcut</parameter>); +<link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> <link linkend="dbusmenu-menuitem-property-set-shortcut-menuitem">dbusmenu_menuitem_property_set_shortcut_menuitem</link> + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *menuitem</parameter>, + <parameter>const <link linkend="GtkMenuItem"><type>GtkMenuItem</type></link> *gmi</parameter>); +<link linkend="void"><returnvalue>void</returnvalue></link> <link linkend="dbusmenu-menuitem-property-get-shortcut">dbusmenu_menuitem_property_get_shortcut</link> + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *menuitem</parameter>, + <parameter><link linkend="guint"><type>guint</type></link> *key</parameter>, + <parameter><link linkend="GdkModifierType"><type>GdkModifierType</type></link> *modifier</parameter>); +</synopsis> +</refsynopsisdiv> + +<refsect1 id="libdbusmenu-gtk-menuitem.description" role="desc"> +<title role="desc.title">Description</title> +<para> +Some property helpers can't be done without picking up a GTK+ + dependency. So those sit in libdbusmenu-gtk but have very similar + prototypes to the code in libdbusmenu-glib so your code will + look consistent, just with the extra depedency. +</para> +</refsect1> +<refsect1 id="libdbusmenu-gtk-menuitem.details" role="details"> +<title role="details.title">Details</title> +<refsect2 id="dbusmenu-menuitem-property-set-image" role="function"> +<title>dbusmenu_menuitem_property_set_image ()</title> +<indexterm zone="dbusmenu-menuitem-property-set-image"><primary>dbusmenu_menuitem_property_set_image</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_property_set_image + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *menuitem</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>, + <parameter>const <link linkend="GdkPixbuf"><type>GdkPixbuf</type></link> *data</parameter>);</programlisting> +<para> +This function takes the pixbuf that is stored in <parameter>data</parameter> and +turns it into a base64 encoded PNG so that it can be placed +onto a standard <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> property. +</para><variablelist role="params"> +<varlistentry><term><parameter>menuitem</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to set the property on.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>property</parameter> :</term> +<listitem><simpara>Name of the property to set.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>data</parameter> :</term> +<listitem><simpara>The image to place on the property.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>Whether the function was able to set the property +or not.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-property-get-image" role="function"> +<title>dbusmenu_menuitem_property_get_image ()</title> +<indexterm zone="dbusmenu-menuitem-property-get-image"><primary>dbusmenu_menuitem_property_get_image</primary></indexterm> +<programlisting><link linkend="GdkPixbuf"><returnvalue>GdkPixbuf</returnvalue></link> * dbusmenu_menuitem_property_get_image + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *menuitem</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *property</parameter>);</programlisting> +<para> +This function looks on the menu item for a property by the +name of <parameter>property</parameter>. If one exists it tries to turn it into +a <link linkend="GdkPixbuf"><type>GdkPixbuf</type></link>. It assumes that the property is a base64 encoded +PNG file like the one created by <link linkend="dbusmenu-menuite-property-set-image"><type>dbusmenu_menuite_property_set_image</type></link>. +</para><variablelist role="params"> +<varlistentry><term><parameter>menuitem</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to look for the property on</simpara></listitem></varlistentry> +<varlistentry><term><parameter>property</parameter> :</term> +<listitem><simpara>The name of the property to look for.</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A pixbuf or <link linkend="NULL:CAPS"><type>NULL</type></link> to signal error. <emphasis role="annotation">[<acronym>transfer full</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-property-set-shortcut" role="function"> +<title>dbusmenu_menuitem_property_set_shortcut ()</title> +<indexterm zone="dbusmenu-menuitem-property-set-shortcut"><primary>dbusmenu_menuitem_property_set_shortcut</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_property_set_shortcut + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *menuitem</parameter>, + <parameter><link linkend="guint"><type>guint</type></link> key</parameter>, + <parameter><link linkend="GdkModifierType"><type>GdkModifierType</type></link> modifier</parameter>);</programlisting> +<para> +Takes the modifer described by <parameter>key</parameter> and <parameter>modifier</parameter> and places that into +the format sending across Dbus for shortcuts. +</para><variablelist role="params"> +<varlistentry><term><parameter>menuitem</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to set the shortcut on</simpara></listitem></varlistentry> +<varlistentry><term><parameter>key</parameter> :</term> +<listitem><simpara>The keycode of the key to send</simpara></listitem></varlistentry> +<varlistentry><term><parameter>modifier</parameter> :</term> +<listitem><simpara>A bitmask of modifiers used to activate the item</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>Whether it was successful at setting the property.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-property-set-shortcut-string" role="function"> +<title>dbusmenu_menuitem_property_set_shortcut_string ()</title> +<indexterm zone="dbusmenu-menuitem-property-set-shortcut-string"><primary>dbusmenu_menuitem_property_set_shortcut_string</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_property_set_shortcut_string + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *menuitem</parameter>, + <parameter>const <link linkend="gchar"><type>gchar</type></link> *shortcut</parameter>);</programlisting> +<para> +This function takes a GTK shortcut string as defined in +<link linkend="gtk-accelerator-parse"><type>gtk_accelerator_parse</type></link> and turns that into the information +required to send it over DBusmenu. +</para><variablelist role="params"> +<varlistentry><term><parameter>menuitem</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to set the shortcut on</simpara></listitem></varlistentry> +<varlistentry><term><parameter>shortcut</parameter> :</term> +<listitem><simpara>String describing the shortcut</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>Whether it was successful at setting the property.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-property-set-shortcut-menuitem" role="function"> +<title>dbusmenu_menuitem_property_set_shortcut_menuitem ()</title> +<indexterm zone="dbusmenu-menuitem-property-set-shortcut-menuitem"><primary>dbusmenu_menuitem_property_set_shortcut_menuitem</primary></indexterm> +<programlisting><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link> dbusmenu_menuitem_property_set_shortcut_menuitem + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *menuitem</parameter>, + <parameter>const <link linkend="GtkMenuItem"><type>GtkMenuItem</type></link> *gmi</parameter>);</programlisting> +<para> +Takes the shortcut that is installed on a menu item and calls +<link linkend="dbusmenu-menuitem-property-set-shortcut"><type>dbusmenu_menuitem_property_set_shortcut</type></link> with it. It also sets +up listeners to watch it change. +</para><variablelist role="params"> +<varlistentry><term><parameter>menuitem</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to set the shortcut on</simpara></listitem></varlistentry> +<varlistentry><term><parameter>gmi</parameter> :</term> +<listitem><simpara>A menu item to steal the shortcut off of</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>Whether it was successful at setting the property.</simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-menuitem-property-get-shortcut" role="function"> +<title>dbusmenu_menuitem_property_get_shortcut ()</title> +<indexterm zone="dbusmenu-menuitem-property-get-shortcut"><primary>dbusmenu_menuitem_property_get_shortcut</primary></indexterm> +<programlisting><link linkend="void"><returnvalue>void</returnvalue></link> dbusmenu_menuitem_property_get_shortcut + (<parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *menuitem</parameter>, + <parameter><link linkend="guint"><type>guint</type></link> *key</parameter>, + <parameter><link linkend="GdkModifierType"><type>GdkModifierType</type></link> *modifier</parameter>);</programlisting> +<para> +This function gets a GTK shortcut as a key and a mask +for use to set the accelerators. +</para><variablelist role="params"> +<varlistentry><term><parameter>menuitem</parameter> :</term> +<listitem><simpara>The <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> to get the shortcut off</simpara></listitem></varlistentry> +<varlistentry><term><parameter>key</parameter> :</term> +<listitem><simpara>Location to put the key value. <emphasis role="annotation">[<acronym>out</acronym>]</emphasis></simpara></listitem></varlistentry> +<varlistentry><term><parameter>modifier</parameter> :</term> +<listitem><simpara>Location to put the modifier mask. <emphasis role="annotation">[<acronym>out</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> + +</refsect1> + +</refentry> diff --git a/docs/libdbusmenu-gtk/reference/xml/parser.xml b/docs/libdbusmenu-gtk/reference/xml/parser.xml new file mode 100644 index 0000000..329bf0a --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/xml/parser.xml @@ -0,0 +1,77 @@ +<?xml version="1.0"?> +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> +<refentry id="libdbusmenu-gtk-parser"> +<refmeta> +<refentrytitle role="top_of_page" id="libdbusmenu-gtk-parser.top_of_page">parser</refentrytitle> +<manvolnum>3</manvolnum> +<refmiscinfo> + LIBDBUSMENU-GTK Library +</refmiscinfo> +</refmeta> +<refnamediv> +<refname>parser</refname> +<refpurpose>A parser of in-memory GTK menu trees</refpurpose> +</refnamediv> +<refsect1 id="libdbusmenu-gtk-parser.stability-level"> +<title>Stability Level</title> +Unstable, unless otherwise indicated +</refsect1> + +<refsynopsisdiv id="libdbusmenu-gtk-parser.synopsis" role="synopsis"> +<title role="synopsis.title">Synopsis</title> + +<synopsis> +#include <libdbusmenu-gtk/parser.h> + +<link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * <link linkend="dbusmenu-gtk-parse-menu-structure">dbusmenu_gtk_parse_menu_structure</link> (<parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *widget</parameter>); +<link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * <link linkend="dbusmenu-gtk-parse-get-cached-item">dbusmenu_gtk_parse_get_cached_item</link> (<parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *widget</parameter>); +</synopsis> +</refsynopsisdiv> + +<refsect1 id="libdbusmenu-gtk-parser.description" role="desc"> +<title role="desc.title">Description</title> +<para> +The parser will take a GTK menu tree and attach it to a Dbusmenu menu + tree. Along with setting up all the signals for updates and destruction. + The returned item would be the root item of the given tree. +</para> +</refsect1> +<refsect1 id="libdbusmenu-gtk-parser.details" role="details"> +<title role="details.title">Details</title> +<refsect2 id="dbusmenu-gtk-parse-menu-structure" role="function"> +<title>dbusmenu_gtk_parse_menu_structure ()</title> +<indexterm zone="dbusmenu-gtk-parse-menu-structure"><primary>dbusmenu_gtk_parse_menu_structure</primary></indexterm> +<programlisting><link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * dbusmenu_gtk_parse_menu_structure (<parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *widget</parameter>);</programlisting> +<para> +Goes through the GTK structures and turns them into the appropraite +Dbusmenu structures along with setting up all the relationships +between the objects. It also stores the dbusmenu items as a cache +on the GTK items so that they'll be reused if necissary. +</para><variablelist role="params"> +<varlistentry><term><parameter>widget</parameter> :</term> +<listitem><simpara>A <link linkend="GtkMenuItem"><type>GtkMenuItem</type></link> or <link linkend="GtkMenuShell"><type>GtkMenuShell</type></link> to turn into a <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link></simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A dbusmenu item representing the menu structure. <emphasis role="annotation">[<acronym>transfer full</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-gtk-parse-get-cached-item" role="function"> +<title>dbusmenu_gtk_parse_get_cached_item ()</title> +<indexterm zone="dbusmenu-gtk-parse-get-cached-item"><primary>dbusmenu_gtk_parse_get_cached_item</primary></indexterm> +<programlisting><link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * dbusmenu_gtk_parse_get_cached_item (<parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *widget</parameter>);</programlisting> +<para> +The Dbusmenu GTK parser adds cached items on the various +menu items throughout the tree. Sometimes it can be useful +to get that cached item to use directly. This function +will retrieve it for you. +</para><variablelist role="params"> +<varlistentry><term><parameter>widget</parameter> :</term> +<listitem><simpara>A <link linkend="GtkMenuItem"><type>GtkMenuItem</type></link> that may have a cached <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> from the parser</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A pointer to the cached item +or NULL if it isn't there. <emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> + +</refsect1> + +</refentry> diff --git a/docs/libdbusmenu-gtk/reference/xml/serializablemenuitem.xml b/docs/libdbusmenu-gtk/reference/xml/serializablemenuitem.xml new file mode 100644 index 0000000..05fad23 --- /dev/null +++ b/docs/libdbusmenu-gtk/reference/xml/serializablemenuitem.xml @@ -0,0 +1,176 @@ +<?xml version="1.0"?> +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" +[ + <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> +]> +<refentry id="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem"> +<refmeta> +<refentrytitle role="top_of_page" id="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.top_of_page">DbusmenuGtkSerializableMenuItem</refentrytitle> +<manvolnum>3</manvolnum> +<refmiscinfo> + LIBDBUSMENU-GTK Library +</refmiscinfo> +</refmeta> +<refnamediv> +<refname>DbusmenuGtkSerializableMenuItem</refname> +<refpurpose>A way to build <link linkend="GtkMenuItems"><type>GtkMenuItems</type></link> that can be sent over Dbusmenu</refpurpose> +</refnamediv> +<refsect1 id="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.stability-level"> +<title>Stability Level</title> +Unstable, unless otherwise indicated +</refsect1> + +<refsynopsisdiv id="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.synopsis" role="synopsis"> +<title role="synopsis.title">Synopsis</title> + +<synopsis> +#include <libdbusmenu-gtk/serializablemenuitem.h> + +#define <link linkend="DBUSMENU-GTK-SERIALIZABLE-MENU-ITEM-PROP-MENUITEM:CAPS">DBUSMENU_GTK_SERIALIZABLE_MENU_ITEM_PROP_MENUITEM</link> +struct <link linkend="DbusmenuGtkSerializableMenuItemClass">DbusmenuGtkSerializableMenuItemClass</link>; +<link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * <link linkend="dbusmenu-gtk-serializable-menu-item-build-menuitem">dbusmenu_gtk_serializable_menu_item_build_menuitem</link> + (<parameter><link linkend="DbusmenuGtkSerializableMenuItem"><type>DbusmenuGtkSerializableMenuItem</type></link> *smi</parameter>); +<link linkend="void"><returnvalue>void</returnvalue></link> <link linkend="dbusmenu-gtk-serializable-menu-item-register-to-client">dbusmenu_gtk_serializable_menu_item_register_to_client</link> + (<parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>, + <parameter><link linkend="GType"><type>GType</type></link> item_type</parameter>); +<link linkend="void"><returnvalue>void</returnvalue></link> <link linkend="dbusmenu-gtk-serializable-menu-item-set-menuitem">dbusmenu_gtk_serializable_menu_item_set_menuitem</link> + (<parameter><link linkend="DbusmenuGtkSerializableMenuItem"><type>DbusmenuGtkSerializableMenuItem</type></link> *smi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>); +</synopsis> +</refsynopsisdiv> + +<refsect1 id="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.description" role="desc"> +<title role="desc.title">Description</title> +<para> +Menuitems can subclass from this instead of <link linkend="GtkMenuItem"><type>GtkMenuItem</type></link> and + by providing the appropriate functions Dbusmenu will be able + to parse them and send them over the bus. +</para> +</refsect1> +<refsect1 id="libdbusmenu-gtk-DbusmenuGtkSerializableMenuItem.details" role="details"> +<title role="details.title">Details</title> +<refsect2 id="DBUSMENU-GTK-SERIALIZABLE-MENU-ITEM-PROP-MENUITEM:CAPS" role="macro"> +<title>DBUSMENU_GTK_SERIALIZABLE_MENU_ITEM_PROP_MENUITEM</title> +<indexterm zone="DBUSMENU-GTK-SERIALIZABLE-MENU-ITEM-PROP-MENUITEM:CAPS"><primary>DBUSMENU_GTK_SERIALIZABLE_MENU_ITEM_PROP_MENUITEM</primary></indexterm> +<programlisting>#define DBUSMENU_GTK_SERIALIZABLE_MENU_ITEM_PROP_MENUITEM "dbusmenu-menuitem" +</programlisting> +<para> +String to access property <link linkend="DbusmenuGtkSerializableMenuItem--dbusmenu-menuitem"><type>"dbusmenu-menuitem"</type></link> +</para></refsect2> +<refsect2 id="DbusmenuGtkSerializableMenuItemClass" role="struct"> +<title>struct DbusmenuGtkSerializableMenuItemClass</title> +<indexterm zone="DbusmenuGtkSerializableMenuItemClass"><primary>DbusmenuGtkSerializableMenuItemClass</primary></indexterm> +<programlisting>struct DbusmenuGtkSerializableMenuItemClass { + GtkMenuItemClass parent_class; + + /* Subclassable functions */ + const gchar * (*get_type_string) (void); + GHashTable * (*get_default_properties) (void); + + DbusmenuMenuitem * (*build_dbusmenu_menuitem) (DbusmenuGtkSerializableMenuItem * smi); + + /* Signals */ + + + + /* Empty Space */ + /*< Private >*/ + void (*_dbusmenu_gtk_serializable_menu_item_reserved1) (void); + void (*_dbusmenu_gtk_serializable_menu_item_reserved2) (void); + void (*_dbusmenu_gtk_serializable_menu_item_reserved3) (void); + void (*_dbusmenu_gtk_serializable_menu_item_reserved4) (void); + void (*_dbusmenu_gtk_serializable_menu_item_reserved5) (void); + void (*_dbusmenu_gtk_serializable_menu_item_reserved6) (void); +}; +</programlisting> +<para> +Signals and functions for <link linkend="DbusmenuGtkSerializableMenuItem"><type>DbusmenuGtkSerializableMenuItem</type></link>. +</para><variablelist role="struct"> +<varlistentry><term><link linkend="GtkMenuItemClass"><type>GtkMenuItemClass</type></link> <structfield id="DbusmenuGtkSerializableMenuItemClass.parent-class">parent_class</structfield>;</term> +<listitem><simpara>Inherit from GtkMenuItem</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkSerializableMenuItemClass.get-type-string">get_type_string</structfield> ()</term> +<listitem><simpara>Static function to get a string describing this type</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkSerializableMenuItemClass.get-default-properties">get_default_properties</structfield> ()</term> +<listitem><simpara>Return a hashtable of defaults for the menu item type</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkSerializableMenuItemClass.build-dbusmenu-menuitem">build_dbusmenu_menuitem</structfield> ()</term> +<listitem><simpara>Build a menuitem that can be sent over dbus</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkSerializableMenuItemClass.-dbusmenu-gtk-serializable-menu-item-reserved1">_dbusmenu_gtk_serializable_menu_item_reserved1</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkSerializableMenuItemClass.-dbusmenu-gtk-serializable-menu-item-reserved2">_dbusmenu_gtk_serializable_menu_item_reserved2</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkSerializableMenuItemClass.-dbusmenu-gtk-serializable-menu-item-reserved3">_dbusmenu_gtk_serializable_menu_item_reserved3</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkSerializableMenuItemClass.-dbusmenu-gtk-serializable-menu-item-reserved4">_dbusmenu_gtk_serializable_menu_item_reserved4</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkSerializableMenuItemClass.-dbusmenu-gtk-serializable-menu-item-reserved5">_dbusmenu_gtk_serializable_menu_item_reserved5</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +<varlistentry><term><structfield id="DbusmenuGtkSerializableMenuItemClass.-dbusmenu-gtk-serializable-menu-item-reserved6">_dbusmenu_gtk_serializable_menu_item_reserved6</structfield> ()</term> +<listitem><simpara>Reserved for future use.</simpara></listitem> +</varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-gtk-serializable-menu-item-build-menuitem" role="function"> +<title>dbusmenu_gtk_serializable_menu_item_build_menuitem ()</title> +<indexterm zone="dbusmenu-gtk-serializable-menu-item-build-menuitem"><primary>dbusmenu_gtk_serializable_menu_item_build_menuitem</primary></indexterm> +<programlisting><link linkend="DbusmenuMenuitem"><returnvalue>DbusmenuMenuitem</returnvalue></link> * dbusmenu_gtk_serializable_menu_item_build_menuitem + (<parameter><link linkend="DbusmenuGtkSerializableMenuItem"><type>DbusmenuGtkSerializableMenuItem</type></link> *smi</parameter>);</programlisting> +<para> +This function is for menu items that are instanciated from +GTK and have their properites set using GTK functions. This +builds a <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> that then has the properties that +should be sent over the bus to create a new item of this +type on the other side. +</para><variablelist role="params"> +<varlistentry><term><parameter>smi</parameter> :</term> +<listitem><simpara><link linkend="DbusmenuGtkSerializableMenuItem"><type>DbusmenuGtkSerializableMenuItem</type></link> to build a <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> mirroring</simpara></listitem></varlistentry> +<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>A <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> who's values will be +set by this object. <emphasis role="annotation">[<acronym>transfer full</acronym>]</emphasis></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-gtk-serializable-menu-item-register-to-client" role="function"> +<title>dbusmenu_gtk_serializable_menu_item_register_to_client ()</title> +<indexterm zone="dbusmenu-gtk-serializable-menu-item-register-to-client"><primary>dbusmenu_gtk_serializable_menu_item_register_to_client</primary></indexterm> +<programlisting><link linkend="void"><returnvalue>void</returnvalue></link> dbusmenu_gtk_serializable_menu_item_register_to_client + (<parameter><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> *client</parameter>, + <parameter><link linkend="GType"><type>GType</type></link> item_type</parameter>);</programlisting> +<para> +Registers a generic handler for dealing with all subclasses of +<link linkend="DbusmenuGtkSerializableMenuItem"><type>DbusmenuGtkSerializableMenuItem</type></link>. This handler responds to the callback, +creates a new object and attaches it to the appropriate <link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> +object. +</para><variablelist role="params"> +<varlistentry><term><parameter>client</parameter> :</term> +<listitem><simpara><link linkend="DbusmenuClient"><type>DbusmenuClient</type></link> that we should register a type at.</simpara></listitem></varlistentry> +<varlistentry><term><parameter>item_type</parameter> :</term> +<listitem><simpara>The <link linkend="GType"><type>GType</type></link> of a class that is a subclass of <link linkend="DbusmenuGtkSerializableMenuItem"><type>DbusmenuGtkSerializableMenuItem</type></link></simpara></listitem></varlistentry> +</variablelist></refsect2> +<refsect2 id="dbusmenu-gtk-serializable-menu-item-set-menuitem" role="function"> +<title>dbusmenu_gtk_serializable_menu_item_set_menuitem ()</title> +<indexterm zone="dbusmenu-gtk-serializable-menu-item-set-menuitem"><primary>dbusmenu_gtk_serializable_menu_item_set_menuitem</primary></indexterm> +<programlisting><link linkend="void"><returnvalue>void</returnvalue></link> dbusmenu_gtk_serializable_menu_item_set_menuitem + (<parameter><link linkend="DbusmenuGtkSerializableMenuItem"><type>DbusmenuGtkSerializableMenuItem</type></link> *smi</parameter>, + <parameter><link linkend="DbusmenuMenuitem"><type>DbusmenuMenuitem</type></link> *mi</parameter>);</programlisting> +<para> +This function is used on the server side to signal to the object +that it should get its' property change events from <parameter>mi</parameter> instead +of expecting calls to its' API. A call to this function sets the +property and subclasses should listen to the notify signal to +pick up this property being set. +</para><variablelist role="params"> +<varlistentry><term><parameter>smi</parameter> :</term> +<listitem><simpara><link linkend="DbusmenuGtkSerializableMenuItem"><type>DbusmenuGtkSerializableMenuItem</type></link> to set the <parameter>DbusmenuGtkSerializableMenuItem</parameter>::dbusmenu-menuitem of</simpara></listitem></varlistentry> +<varlistentry><term><parameter>mi</parameter> :</term> +<listitem><simpara>Menuitem to get the properties from</simpara></listitem></varlistentry> +</variablelist></refsect2> + +</refsect1> + +</refentry> diff --git a/libdbusmenu-glib/Makefile.in b/libdbusmenu-glib/Makefile.in index e2b9157..5c19fc4 100644 --- a/libdbusmenu-glib/Makefile.in +++ b/libdbusmenu-glib/Makefile.in @@ -61,12 +61,7 @@ DIST_COMMON = $(libdbusmenu_glibinclude_HEADERS) $(srcdir)/Makefile.am \ @HAVE_INTROSPECTION_TRUE@ $(vapi_DATA) subdir = libdbusmenu-glib ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/gnome-doc-utils.m4 \ - $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/intltool.m4 \ - $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs diff --git a/libdbusmenu-glib/client.c b/libdbusmenu-glib/client.c index c95b161..16e832d 100644 --- a/libdbusmenu-glib/client.c +++ b/libdbusmenu-glib/client.c @@ -1056,10 +1056,39 @@ menuproxy_build_cb (GObject * object, GAsyncResult * res, gpointer user_data) } priv->text_direction = dbusmenu_text_direction_get_value_from_nick(g_variant_get_string(str, NULL)); + g_object_notify(G_OBJECT(user_data), DBUSMENU_CLIENT_PROP_TEXT_DIRECTION); g_variant_unref(textdir); } + /* Check the status if available */ + GVariant * status = g_dbus_proxy_get_cached_property(priv->menuproxy, "Status"); + if (textdir != NULL) { + GVariant * str = status; + if (g_variant_is_of_type(str, G_VARIANT_TYPE_VARIANT)) { + str = g_variant_get_variant(str); + } + + priv->status = dbusmenu_status_get_value_from_nick(g_variant_get_string(str, NULL)); + g_object_notify(G_OBJECT(user_data), DBUSMENU_CLIENT_PROP_STATUS); + + g_variant_unref(status); + } + + /* Get the icon theme directories if available */ + GVariant * icon_dirs = g_dbus_proxy_get_cached_property(priv->menuproxy, "IconThemePath"); + if (icon_dirs != NULL) { + if (priv->icon_dirs != NULL) { + g_strfreev(priv->icon_dirs); + priv->icon_dirs = NULL; + } + + priv->icon_dirs = g_variant_dup_strv(icon_dirs, NULL); + g_signal_emit(G_OBJECT(client), signals[ICON_THEME_DIRS], 0, priv->icon_dirs, TRUE); + + g_variant_unref(icon_dirs); + } + /* If we get here, we don't need the DBus proxy */ if (priv->dbusproxy != 0) { g_bus_unwatch_name(priv->dbusproxy); @@ -1213,7 +1242,9 @@ menuproxy_signal_cb (GDBusProxy * proxy, gchar * sender, gchar * signal, GVarian while (g_variant_iter_next(&properties, "s", &property)) { /* g_debug("Removing property '%s' on %d", property, id); */ dbusmenu_menuitem_property_remove(menuitem, property); + g_free(property); } + g_variant_unref(ritem); } GVariantIter items; @@ -1304,12 +1335,11 @@ menuitem_get_properties_replace_cb (GVariant * properties, GError * error, gpoin have_error = TRUE; } - GList * current_props = NULL; + GList * current_props = dbusmenu_menuitem_properties_list(DBUSMENU_MENUITEM(data)); + GList * tmp = NULL; - for (current_props = dbusmenu_menuitem_properties_list(DBUSMENU_MENUITEM(data)); - current_props != NULL && have_error == FALSE; - current_props = g_list_next(current_props)) { - dbusmenu_menuitem_property_remove(DBUSMENU_MENUITEM(data), (const gchar *)current_props->data); + for (tmp = current_props; tmp != NULL && have_error == FALSE; tmp = g_list_next(tmp)) { + dbusmenu_menuitem_property_remove(DBUSMENU_MENUITEM(data), (const gchar *)tmp->data); } g_list_free(current_props); @@ -1823,6 +1853,7 @@ static void update_layout (DbusmenuClient * client) { DbusmenuClientPrivate * priv = DBUSMENU_CLIENT_GET_PRIVATE(client); + g_return_if_fail(priv->layout_props != NULL); if (priv->menuproxy == NULL) { return; diff --git a/libdbusmenu-glib/server.c b/libdbusmenu-glib/server.c index ca39ea3..a41e6ce 100644 --- a/libdbusmenu-glib/server.c +++ b/libdbusmenu-glib/server.c @@ -511,7 +511,7 @@ set_property (GObject * obj, guint id, const GValue * value, GParamSpec * pspec) GVariantBuilder params; g_variant_builder_init(¶ms, G_VARIANT_TYPE_TUPLE); g_variant_builder_add_value(¶ms, g_variant_new_string(DBUSMENU_INTERFACE)); - GVariant * dict = g_variant_new_dict_entry(g_variant_new_string("TextDirection"), g_variant_new_string(dbusmenu_text_direction_get_nick(priv->text_direction))); + GVariant * dict = g_variant_new_dict_entry(g_variant_new_string("TextDirection"), g_variant_new_variant(g_variant_new_string(dbusmenu_text_direction_get_nick(priv->text_direction)))); g_variant_builder_add_value(¶ms, g_variant_new_array(NULL, &dict, 1)); g_variant_builder_add_value(¶ms, g_variant_new_array(G_VARIANT_TYPE_STRING, NULL, 0)); GVariant * vparams = g_variant_builder_end(¶ms); @@ -535,7 +535,7 @@ set_property (GObject * obj, guint id, const GValue * value, GParamSpec * pspec) GVariantBuilder params; g_variant_builder_init(¶ms, G_VARIANT_TYPE_TUPLE); g_variant_builder_add_value(¶ms, g_variant_new_string(DBUSMENU_INTERFACE)); - GVariant * dict = g_variant_new_dict_entry(g_variant_new_string("Status"), g_variant_new_string(dbusmenu_status_get_nick(instatus))); + GVariant * dict = g_variant_new_dict_entry(g_variant_new_string("Status"), g_variant_new_variant(g_variant_new_string(dbusmenu_status_get_nick(instatus)))); g_variant_builder_add_value(¶ms, g_variant_new_array(NULL, &dict, 1)); g_variant_builder_add_value(¶ms, g_variant_new_array(G_VARIANT_TYPE_STRING, NULL, 0)); GVariant * vparams = g_variant_builder_end(¶ms); @@ -1773,7 +1773,7 @@ dbusmenu_server_set_icon_paths (DbusmenuServer * server, GStrv icon_paths) g_variant_builder_add_value(¶ms, g_variant_new_string(DBUSMENU_INTERFACE)); GVariant * items = NULL; if (priv->icon_dirs != NULL) { - GVariant * dict = g_variant_new_dict_entry(g_variant_new_string("IconThemePath"), g_variant_new_strv((const gchar * const *)priv->icon_dirs, -1)); + GVariant * dict = g_variant_new_dict_entry(g_variant_new_string("IconThemePath"), g_variant_new_variant(g_variant_new_strv((const gchar * const *)priv->icon_dirs, -1))); items = g_variant_new_array(NULL, &dict, 1); } else { items = g_variant_new_array(G_VARIANT_TYPE("{sv}"), NULL, 0); diff --git a/libdbusmenu-gtk/Makefile.in b/libdbusmenu-gtk/Makefile.in index 64abec5..5647d0d 100644 --- a/libdbusmenu-gtk/Makefile.in +++ b/libdbusmenu-gtk/Makefile.in @@ -46,12 +46,7 @@ DIST_COMMON = $(libdbusmenu_gtk3include_HEADERS) \ $(srcdir)/Makefile.in $(srcdir)/dbusmenu-gtk-0.4.pc.in \ $(srcdir)/dbusmenu-gtk3-0.4.pc.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/gnome-doc-utils.m4 \ - $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/intltool.m4 \ - $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs diff --git a/libdbusmenu-gtk/client.c b/libdbusmenu-gtk/client.c index 50978ff..510e74e 100644 --- a/libdbusmenu-gtk/client.c +++ b/libdbusmenu-gtk/client.c @@ -38,9 +38,12 @@ License version 3 and version 2.1 along with this program. If not, see /* Private */ struct _DbusmenuGtkClientPrivate { + GStrv old_themedirs; GtkAccelGroup * agroup; }; +GHashTable * theme_dir_db = NULL; + #define DBUSMENU_GTKCLIENT_GET_PRIVATE(o) (DBUSMENU_GTKCLIENT(o)->priv) #define USE_FALLBACK_PROP "use-fallback" @@ -54,6 +57,8 @@ static void new_child (DbusmenuMenuitem * mi, DbusmenuMenuitem * child, guint po static void delete_child (DbusmenuMenuitem * mi, DbusmenuMenuitem * child, DbusmenuGtkClient * gtkclient); static void move_child (DbusmenuMenuitem * mi, DbusmenuMenuitem * child, guint new, guint old, DbusmenuGtkClient * gtkclient); static void item_activate (DbusmenuClient * client, DbusmenuMenuitem * mi, guint timestamp, gpointer userdata); +static void theme_dir_changed (DbusmenuClient * client, GStrv theme_dirs, gpointer userdata); +static void remove_theme_dirs (GtkIconTheme * theme, GStrv dirs); static gboolean new_item_normal (DbusmenuMenuitem * newitem, DbusmenuMenuitem * parent, DbusmenuClient * client, gpointer user_data); static gboolean new_item_seperator (DbusmenuMenuitem * newitem, DbusmenuMenuitem * parent, DbusmenuClient * client, gpointer user_data); @@ -89,6 +94,23 @@ dbusmenu_gtkclient_init (DbusmenuGtkClient *self) DbusmenuGtkClientPrivate * priv = DBUSMENU_GTKCLIENT_GET_PRIVATE(self); priv->agroup = NULL; + priv->old_themedirs = NULL; + + /* We either build the theme db or we get a reference + to it. This way when all clients die the hashtable + will be free'd as well. */ + if (theme_dir_db == NULL) { + theme_dir_db = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL); + + /* NOTE: We're adding an extra ref here because there + is no way to clear the pointer when the hash table + dies, so it's safer to keep the hash table around + forever than not know if it's free'd or not. Patch + submitted to GLib. */ + g_hash_table_ref(theme_dir_db); + } else { + g_hash_table_ref(theme_dir_db); + } dbusmenu_client_add_type_handler(DBUSMENU_CLIENT(self), DBUSMENU_CLIENT_TYPES_DEFAULT, new_item_normal); dbusmenu_client_add_type_handler(DBUSMENU_CLIENT(self), DBUSMENU_CLIENT_TYPES_SEPARATOR, new_item_seperator); @@ -96,6 +118,9 @@ dbusmenu_gtkclient_init (DbusmenuGtkClient *self) /* TODO: I think these can be handled in the class... */ g_signal_connect(G_OBJECT(self), DBUSMENU_CLIENT_SIGNAL_NEW_MENUITEM, G_CALLBACK(new_menuitem), NULL); g_signal_connect(G_OBJECT(self), DBUSMENU_CLIENT_SIGNAL_ITEM_ACTIVATE, G_CALLBACK(item_activate), NULL); + g_signal_connect(G_OBJECT(self), DBUSMENU_CLIENT_SIGNAL_ICON_THEME_DIRS_CHANGED, G_CALLBACK(theme_dir_changed), NULL); + + theme_dir_changed(DBUSMENU_CLIENT(self), dbusmenu_client_get_icon_paths(DBUSMENU_CLIENT(self)), NULL); return; } @@ -111,6 +136,18 @@ dbusmenu_gtkclient_dispose (GObject *object) priv->agroup = NULL; } + if (priv->old_themedirs) { + remove_theme_dirs(gtk_icon_theme_get_default(), priv->old_themedirs); + g_strfreev(priv->old_themedirs); + priv->old_themedirs = NULL; + } + + if (theme_dir_db != NULL) { + g_hash_table_unref(theme_dir_db); + } else { + g_assert_not_reached(); + } + G_OBJECT_CLASS (dbusmenu_gtkclient_parent_class)->dispose (object); return; } @@ -124,6 +161,141 @@ dbusmenu_gtkclient_finalize (GObject *object) return; } +/* Add a theme directory to the table and the theme's list of available + themes to use. */ +static void +theme_dir_ref (GtkIconTheme * theme, GHashTable * db, const gchar * dir) +{ + g_return_if_fail(db != NULL); + g_return_if_fail(theme != NULL); + g_return_if_fail(dir != NULL); + + int count = 0; + if ((count = GPOINTER_TO_INT(g_hash_table_lookup(db, dir))) != 0) { + /* It exists so what we need to do is increase the ref + count of this dir. */ + count++; + } else { + /* It doesn't exist, so we need to add it to the table + and to the search path. */ + gtk_icon_theme_append_search_path(gtk_icon_theme_get_default(), dir); + g_debug("\tAppending search path: %s", dir); + count = 1; + } + + g_hash_table_insert(db, g_strdup(dir), GINT_TO_POINTER(count)); + + return; +} + +/* Unreference the theme directory, and if it's count goes to zero then + we need to remove it from the search path. */ +static void +theme_dir_unref (GtkIconTheme * theme, GHashTable * db, const gchar * dir) +{ + g_return_if_fail(db != NULL); + g_return_if_fail(theme != NULL); + g_return_if_fail(dir != NULL); + + /* Grab the count for this dir */ + int count = GPOINTER_TO_INT(g_hash_table_lookup(db, dir)); + + /* Is this a simple deprecation, if so, we can just lower the + number and move on. */ + if (count > 1) { + count--; + g_hash_table_insert(db, g_strdup(dir), GINT_TO_POINTER(count)); + return; + } + + /* Try to remove it from the hash table, this makes sure + that it existed */ + if (!g_hash_table_remove(db, dir)) { + g_warning("Unref'd a directory that wasn't in the theme dir hash table."); + return; + } + + gchar ** paths; + gint path_count; + + gtk_icon_theme_get_search_path(theme, &paths, &path_count); + + gint i; + gboolean found = FALSE; + for (i = 0; i < path_count; i++) { + if (found) { + /* If we've already found the right entry */ + paths[i - 1] = paths[i]; + } else { + /* We're still looking, is this the one? */ + if (!g_strcmp0(paths[i], dir)) { + found = TRUE; + /* We're freeing this here as it won't be captured by the + g_strfreev() below as it's out of the array. */ + g_free(paths[i]); + } + } + } + + /* If we found one we need to reset the path to + accomidate the changes */ + if (found) { + paths[path_count - 1] = NULL; /* Clear the last one */ + gtk_icon_theme_set_search_path(theme, (const gchar **)paths, path_count - 1); + } + + g_strfreev(paths); + + return; +} + +/* Unregister this list of theme directories */ +static void +remove_theme_dirs (GtkIconTheme * theme, GStrv dirs) +{ + g_return_if_fail(GTK_ICON_THEME(theme)); + g_return_if_fail(dirs != NULL); + + int dir; + + for (dir = 0; dirs[dir] != NULL; dir++) { + theme_dir_unref(theme, theme_dir_db, dirs[dir]); + } + + return; +} + +/* Called when the theme directories are changed by the + server part of things. */ +static void +theme_dir_changed (DbusmenuClient * client, GStrv theme_dirs, gpointer userdata) +{ + DbusmenuGtkClientPrivate * priv = DBUSMENU_GTKCLIENT_GET_PRIVATE(client); + GtkIconTheme * theme = gtk_icon_theme_get_default(); + + /* Ref the new directories */ + if (theme_dirs != NULL) { + int dir; + for (dir = 0; theme_dirs[dir] != NULL; dir++) { + theme_dir_ref(theme, theme_dir_db, theme_dirs[dir]); + } + } + + /* Unref the old ones */ + if (priv->old_themedirs) { + remove_theme_dirs(theme, priv->old_themedirs); + g_strfreev(priv->old_themedirs); + priv->old_themedirs = NULL; + } + + /* Copy the new to the old */ + if (theme_dirs != NULL) { + priv->old_themedirs = g_strdupv(theme_dirs); + } + + return; +} + /* Structure for passing data to swap_agroup */ typedef struct _swap_agroup_t swap_agroup_t; struct _swap_agroup_t { @@ -697,6 +869,7 @@ new_item_normal (DbusmenuMenuitem * newitem, DbusmenuMenuitem * parent, Dbusmenu if (gmi != NULL) { dbusmenu_gtkclient_newitem_base(DBUSMENU_GTKCLIENT(client), newitem, gmi, parent); + g_object_unref(gmi); } else { return FALSE; } @@ -870,6 +1043,9 @@ image_property_handle (DbusmenuMenuitem * item, const gchar * property, GVariant } else { gtk_image_set_from_pixbuf(GTK_IMAGE(gtkimage), image); } + if (image) { + g_object_unref(image); + } } } diff --git a/libdbusmenu-gtk/menuitem.c b/libdbusmenu-gtk/menuitem.c index 370dbf2..b3358fe 100644 --- a/libdbusmenu-gtk/menuitem.c +++ b/libdbusmenu-gtk/menuitem.c @@ -119,12 +119,7 @@ dbusmenu_menuitem_property_get_image (DbusmenuMenuitem * menuitem, const gchar * g_error_free(error); } - error = NULL; - g_input_stream_close(input, NULL, &error); - if (error != NULL) { - g_warning("Unable to close input stream: %s", error->message); - g_error_free(error); - } + g_object_unref(input); g_free(icondata); return icon; diff --git a/libdbusmenu-gtk/parser.c b/libdbusmenu-gtk/parser.c index b0a5cfd..1b032bb 100644 --- a/libdbusmenu-gtk/parser.c +++ b/libdbusmenu-gtk/parser.c @@ -109,6 +109,25 @@ dbusmenu_gtk_parse_menu_structure (GtkWidget * widget) return recurse.parent; } +/** + * dbusmenu_gtk_parse_get_cached_item: + * @widget: A #GtkMenuItem that may have a cached #DbusmenuMenuitem from the parser + * + * The Dbusmenu GTK parser adds cached items on the various + * menu items throughout the tree. Sometimes it can be useful + * to get that cached item to use directly. This function + * will retrieve it for you. + * + * Return value: (transfer none): A pointer to the cached item + * or NULL if it isn't there. + */ +DbusmenuMenuitem * +dbusmenu_gtk_parse_get_cached_item (GtkWidget * widget) +{ + g_return_val_if_fail(GTK_IS_MENU_ITEM(widget), NULL); + return DBUSMENU_MENUITEM(g_object_get_data(G_OBJECT(widget), CACHED_MENUITEM)); +} + static void parse_data_free (gpointer data) { @@ -345,6 +364,49 @@ parse_menu_structure_helper (GtkWidget * widget, RecurseContext * recurse) return; } +static gchar * +sanitize_label_text (const gchar * label) +{ + /* Label contains underscores, which we like, and pango markup, + which we don't. */ + gchar * sanitized = NULL; + GError * error = NULL; + if (pango_parse_markup (label, -1, 0, NULL, &sanitized, NULL, &error)) { + return sanitized; + } + else { + g_warning ("Could not parse '%s': %s", label, error->message); + g_error_free (error); + return g_strdup (label); + } +} + +static gchar * +sanitize_label (GtkLabel * label) +{ + gchar * text; + + if (gtk_label_get_use_markup (label)) { + text = sanitize_label_text (gtk_label_get_label (label)); + } + else { + text = g_strdup (gtk_label_get_label (label)); + } + + if (!gtk_label_get_use_underline (label)) { + /* Insert extra underscores */ + GRegex * regex = g_regex_new ("_", 0, 0, NULL); + gchar * escaped = g_regex_replace_literal (regex, text, -1, 0, "__", 0, NULL); + + g_regex_unref (regex); + g_free (text); + + text = escaped; + } + + return text; +} + /* Turn a widget into a dbusmenu item depending on the type of GTK object that it is. */ static DbusmenuMenuitem * @@ -428,9 +490,9 @@ construct_dbusmenu_for_widget (GtkWidget * widget) { // Sometimes, an app will directly find and modify the label // (like empathy), so watch the label especially for that. - dbusmenu_menuitem_property_set (mi, - "label", - gtk_label_get_text (GTK_LABEL (label))); + gchar * text = sanitize_label (GTK_LABEL (label)); + dbusmenu_menuitem_property_set (mi, "label", text); + g_free (text); pdata->label = label; g_signal_connect (G_OBJECT (label), @@ -673,9 +735,11 @@ label_notify_cb (GtkWidget *widget, if (pspec->name == g_intern_static_string ("label")) { + gchar * text = sanitize_label (GTK_LABEL (widget)); dbusmenu_menuitem_property_set (child, DBUSMENU_MENUITEM_PROP_LABEL, - gtk_label_get_text (GTK_LABEL (widget))); + text); + g_free (text); } } @@ -729,9 +793,11 @@ action_notify_cb (GtkAction *action, } else if (pspec->name == g_intern_static_string ("label")) { + gchar * text = sanitize_label_text (gtk_action_get_label (action)); dbusmenu_menuitem_property_set (mi, DBUSMENU_MENUITEM_PROP_LABEL, - gtk_action_get_label (action)); + text); + g_free (text); } } diff --git a/libdbusmenu-gtk/parser.h b/libdbusmenu-gtk/parser.h index 8187a8e..97fa9c6 100644 --- a/libdbusmenu-gtk/parser.h +++ b/libdbusmenu-gtk/parser.h @@ -35,6 +35,7 @@ License version 3 and version 2.1 along with this program. If not, see G_BEGIN_DECLS DbusmenuMenuitem * dbusmenu_gtk_parse_menu_structure (GtkWidget * widget); +DbusmenuMenuitem * dbusmenu_gtk_parse_get_cached_item (GtkWidget * widget); /** SECTION:parser diff --git a/m4/gnome-doc-utils.m4 b/m4/gnome-doc-utils.m4 deleted file mode 100644 index 402bb3e..0000000 --- a/m4/gnome-doc-utils.m4 +++ /dev/null @@ -1,56 +0,0 @@ -dnl Do not call GNOME_DOC_DEFINES directly. It is split out from -dnl GNOME_DOC_INIT to allow gnome-doc-utils to bootstrap off itself. -AC_DEFUN([GNOME_DOC_DEFINES], -[ -AC_ARG_WITH([help-dir], - AC_HELP_STRING([--with-help-dir=DIR], [path to help docs]),, - [with_help_dir='${datadir}/gnome/help']) -HELP_DIR="$with_help_dir" -AC_SUBST(HELP_DIR) - -AC_ARG_WITH([omf-dir], - AC_HELP_STRING([--with-omf-dir=DIR], [path to OMF files]),, - [with_omf_dir='${datadir}/omf']) -OMF_DIR="$with_omf_dir" -AC_SUBST(OMF_DIR) - -AC_ARG_WITH([help-formats], - AC_HELP_STRING([--with-help-formats=FORMATS], [list of formats]),, - [with_help_formats='']) -DOC_USER_FORMATS="$with_help_formats" -AC_SUBST(DOC_USER_FORMATS) - -AC_ARG_ENABLE([scrollkeeper], - [AC_HELP_STRING([--disable-scrollkeeper], - [do not make updates to the scrollkeeper database])],, - enable_scrollkeeper=yes) -AM_CONDITIONAL([ENABLE_SK],[test "$gdu_cv_have_gdu" = "yes" -a "$enable_scrollkeeper" = "yes"]) - -dnl disable scrollkeeper automatically for distcheck -DISTCHECK_CONFIGURE_FLAGS="--disable-scrollkeeper $DISTCHECK_CONFIGURE_FLAGS" -AC_SUBST(DISTCHECK_CONFIGURE_FLAGS) - -AM_CONDITIONAL([HAVE_GNOME_DOC_UTILS],[test "$gdu_cv_have_gdu" = "yes"]) -]) - -# GNOME_DOC_INIT ([MINIMUM-VERSION],[ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND]) -# -AC_DEFUN([GNOME_DOC_INIT], -[AC_REQUIRE([AC_PROG_LN_S])dnl - -ifelse([$1],,[gdu_cv_version_required=0.3.2],[gdu_cv_version_required=$1]) - -AC_MSG_CHECKING([gnome-doc-utils >= $gdu_cv_version_required]) -PKG_CHECK_EXISTS([gnome-doc-utils >= $gdu_cv_version_required], - [gdu_cv_have_gdu=yes],[gdu_cv_have_gdu=no]) - -if test "$gdu_cv_have_gdu" = "yes"; then - AC_MSG_RESULT([yes]) - ifelse([$2],,[:],[$2]) -else - AC_MSG_RESULT([no]) - ifelse([$3],,[AC_MSG_ERROR([gnome-doc-utils >= $gdu_cv_version_required not found])],[$3]) -fi - -GNOME_DOC_DEFINES -]) diff --git a/m4/gtk-doc.m4 b/m4/gtk-doc.m4 deleted file mode 100644 index 2cfa1e7..0000000 --- a/m4/gtk-doc.m4 +++ /dev/null @@ -1,61 +0,0 @@ -dnl -*- mode: autoconf -*- - -# serial 1 - -dnl Usage: -dnl GTK_DOC_CHECK([minimum-gtk-doc-version]) -AC_DEFUN([GTK_DOC_CHECK], -[ - AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first - AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first - - dnl check for tools we added during development - AC_PATH_PROG([GTKDOC_CHECK],[gtkdoc-check]) - AC_PATH_PROGS([GTKDOC_REBASE],[gtkdoc-rebase],[true]) - AC_PATH_PROG([GTKDOC_MKPDF],[gtkdoc-mkpdf]) - - dnl for overriding the documentation installation directory - AC_ARG_WITH([html-dir], - AS_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),, - [with_html_dir='${datadir}/gtk-doc/html']) - HTML_DIR="$with_html_dir" - AC_SUBST([HTML_DIR]) - - dnl enable/disable documentation building - AC_ARG_ENABLE([gtk-doc], - AS_HELP_STRING([--enable-gtk-doc], - [use gtk-doc to build documentation [[default=no]]]),, - [enable_gtk_doc=no]) - - if test x$enable_gtk_doc = xyes; then - ifelse([$1],[], - [PKG_CHECK_EXISTS([gtk-doc],, - AC_MSG_ERROR([gtk-doc not installed and --enable-gtk-doc requested]))], - [PKG_CHECK_EXISTS([gtk-doc >= $1],, - AC_MSG_ERROR([You need to have gtk-doc >= $1 installed to build $PACKAGE_NAME]))]) - fi - - AC_MSG_CHECKING([whether to build gtk-doc documentation]) - AC_MSG_RESULT($enable_gtk_doc) - - dnl enable/disable output formats - AC_ARG_ENABLE([gtk-doc-html], - AS_HELP_STRING([--enable-gtk-doc-html], - [build documentation in html format [[default=yes]]]),, - [enable_gtk_doc_html=yes]) - AC_ARG_ENABLE([gtk-doc-pdf], - AS_HELP_STRING([--enable-gtk-doc-pdf], - [build documentation in pdf format [[default=no]]]),, - [enable_gtk_doc_pdf=no]) - - if test -z "$GTKDOC_MKPDF"; then - enable_gtk_doc_pdf=no - fi - - - AM_CONDITIONAL([ENABLE_GTK_DOC], [test x$enable_gtk_doc = xyes]) - AM_CONDITIONAL([GTK_DOC_BUILD_HTML], [test x$enable_gtk_doc_html = xyes]) - AM_CONDITIONAL([GTK_DOC_BUILD_PDF], [test x$enable_gtk_doc_pdf = xyes]) - AM_CONDITIONAL([GTK_DOC_USE_LIBTOOL], [test -n "$LIBTOOL"]) - AM_CONDITIONAL([GTK_DOC_USE_REBASE], [test -n "$GTKDOC_REBASE"]) -]) diff --git a/m4/intltool.m4 b/m4/intltool.m4 deleted file mode 100644 index 839e855..0000000 --- a/m4/intltool.m4 +++ /dev/null @@ -1,216 +0,0 @@ -## intltool.m4 - Configure intltool for the target system. -*-Shell-script-*- -## Copyright (C) 2001 Eazel, Inc. -## Author: Maciej Stachowiak <mjs@noisehavoc.org> -## Kenneth Christiansen <kenneth@gnu.org> -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, but -## WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -## General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -## -## As a special exception to the GNU General Public License, if you -## distribute this file as part of a program that contains a -## configuration script generated by Autoconf, you may include it under -## the same distribution terms that you use for the rest of that program. - -dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml]) -# serial 40 IT_PROG_INTLTOOL -AC_DEFUN([IT_PROG_INTLTOOL], [ -AC_PREREQ([2.50])dnl -AC_REQUIRE([AM_NLS])dnl - -case "$am__api_version" in - 1.[01234]) - AC_MSG_ERROR([Automake 1.5 or newer is required to use intltool]) - ;; - *) - ;; -esac - -if test -n "$1"; then - AC_MSG_CHECKING([for intltool >= $1]) - - INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` - INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3` - [INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` - ] - AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found]) - test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || - AC_MSG_ERROR([Your intltool is too old. You need intltool $1 or later.]) -fi - -AC_PATH_PROG(INTLTOOL_UPDATE, [intltool-update]) -AC_PATH_PROG(INTLTOOL_MERGE, [intltool-merge]) -AC_PATH_PROG(INTLTOOL_EXTRACT, [intltool-extract]) -if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then - AC_MSG_ERROR([The intltool scripts were not found. Please install intltool.]) -fi - - INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' -INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' - INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' - INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' - INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< [$]@' - INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' - INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' - INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' -INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' - INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' - INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' - INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< [$]@' - INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' - INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' - INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' - INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' - INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' - INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' - INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' - -_IT_SUBST(INTLTOOL_DESKTOP_RULE) -_IT_SUBST(INTLTOOL_DIRECTORY_RULE) -_IT_SUBST(INTLTOOL_KEYS_RULE) -_IT_SUBST(INTLTOOL_PROP_RULE) -_IT_SUBST(INTLTOOL_OAF_RULE) -_IT_SUBST(INTLTOOL_PONG_RULE) -_IT_SUBST(INTLTOOL_SERVER_RULE) -_IT_SUBST(INTLTOOL_SHEET_RULE) -_IT_SUBST(INTLTOOL_SOUNDLIST_RULE) -_IT_SUBST(INTLTOOL_UI_RULE) -_IT_SUBST(INTLTOOL_XAM_RULE) -_IT_SUBST(INTLTOOL_KBD_RULE) -_IT_SUBST(INTLTOOL_XML_RULE) -_IT_SUBST(INTLTOOL_XML_NOMERGE_RULE) -_IT_SUBST(INTLTOOL_CAVES_RULE) -_IT_SUBST(INTLTOOL_SCHEMAS_RULE) -_IT_SUBST(INTLTOOL_THEME_RULE) -_IT_SUBST(INTLTOOL_SERVICE_RULE) -_IT_SUBST(INTLTOOL_POLICY_RULE) - -# Check the gettext tools to make sure they are GNU -AC_PATH_PROG(XGETTEXT, xgettext) -AC_PATH_PROG(MSGMERGE, msgmerge) -AC_PATH_PROG(MSGFMT, msgfmt) -AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) -if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then - AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) -fi -xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" -mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" -mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" -if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then - AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) -fi - -AC_PATH_PROG(INTLTOOL_PERL, perl) -if test -z "$INTLTOOL_PERL"; then - AC_MSG_ERROR([perl not found]) -fi -AC_MSG_CHECKING([for perl >= 5.8.1]) -$INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1 -if test $? -ne 0; then - AC_MSG_ERROR([perl 5.8.1 is required for intltool]) -else - IT_PERL_VERSION="`$INTLTOOL_PERL -e \"printf '%vd', $^V\"`" - AC_MSG_RESULT([$IT_PERL_VERSION]) -fi -if test "x$2" != "xno-xml"; then - AC_MSG_CHECKING([for XML::Parser]) - if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then - AC_MSG_RESULT([ok]) - else - AC_MSG_ERROR([XML::Parser perl module is required for intltool]) - fi -fi - -# Substitute ALL_LINGUAS so we can use it in po/Makefile -AC_SUBST(ALL_LINGUAS) - -# Set DATADIRNAME correctly if it is not set yet -# (copied from glib-gettext.m4) -if test -z "$DATADIRNAME"; then - AC_LINK_IFELSE( - [AC_LANG_PROGRAM([[]], - [[extern int _nl_msg_cat_cntr; - return _nl_msg_cat_cntr]])], - [DATADIRNAME=share], - [case $host in - *-*-solaris*) - dnl On Solaris, if bind_textdomain_codeset is in libc, - dnl GNU format message catalog is always supported, - dnl since both are added to the libc all together. - dnl Hence, we'd like to go with DATADIRNAME=share - dnl in this case. - AC_CHECK_FUNC(bind_textdomain_codeset, - [DATADIRNAME=share], [DATADIRNAME=lib]) - ;; - *) - [DATADIRNAME=lib] - ;; - esac]) -fi -AC_SUBST(DATADIRNAME) - -IT_PO_SUBDIR([po]) - -]) - - -# IT_PO_SUBDIR(DIRNAME) -# --------------------- -# All po subdirs have to be declared with this macro; the subdir "po" is -# declared by IT_PROG_INTLTOOL. -# -AC_DEFUN([IT_PO_SUBDIR], -[AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS. -dnl -dnl The following CONFIG_COMMANDS should be executed at the very end -dnl of config.status. -AC_CONFIG_COMMANDS_PRE([ - AC_CONFIG_COMMANDS([$1/stamp-it], [ - if [ ! grep "^# INTLTOOL_MAKEFILE$" "$1/Makefile.in" > /dev/null ]; then - AC_MSG_ERROR([$1/Makefile.in.in was not created by intltoolize.]) - fi - rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp" - >"$1/stamp-it.tmp" - [sed '/^#/d - s/^[[].*] *// - /^[ ]*$/d - '"s|^| $ac_top_srcdir/|" \ - "$srcdir/$1/POTFILES.in" | sed '$!s/$/ \\/' >"$1/POTFILES" - ] - [sed '/^POTFILES =/,/[^\\]$/ { - /^POTFILES =/!d - r $1/POTFILES - } - ' "$1/Makefile.in" >"$1/Makefile"] - rm -f "$1/Makefile.tmp" - mv "$1/stamp-it.tmp" "$1/stamp-it" - ]) -])dnl -]) - -# _IT_SUBST(VARIABLE) -# ------------------- -# Abstract macro to do either _AM_SUBST_NOTMAKE or AC_SUBST -# -AC_DEFUN([_IT_SUBST], -[ -AC_SUBST([$1]) -m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])]) -] -) - -# deprecated macros -AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL]) -# A hint is needed for aclocal from Automake <= 1.9.4: -# AC_DEFUN([AC_PROG_INTLTOOL], ...) - diff --git a/m4/libtool.m4 b/m4/libtool.m4 deleted file mode 100644 index a3fee53..0000000 --- a/m4/libtool.m4 +++ /dev/null @@ -1,7377 +0,0 @@ -# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008 Free Software Foundation, Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. - -m4_define([_LT_COPYING], [dnl -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008 Free Software Foundation, Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is part of GNU Libtool. -# -# GNU Libtool is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of -# the License, or (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, or -# obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -]) - -# serial 56 LT_INIT - - -# LT_PREREQ(VERSION) -# ------------------ -# Complain and exit if this libtool version is less that VERSION. -m4_defun([LT_PREREQ], -[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1, - [m4_default([$3], - [m4_fatal([Libtool version $1 or higher is required], - 63)])], - [$2])]) - - -# _LT_CHECK_BUILDDIR -# ------------------ -# Complain if the absolute build directory name contains unusual characters -m4_defun([_LT_CHECK_BUILDDIR], -[case `pwd` in - *\ * | *\ *) - AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;; -esac -]) - - -# LT_INIT([OPTIONS]) -# ------------------ -AC_DEFUN([LT_INIT], -[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT -AC_BEFORE([$0], [LT_LANG])dnl -AC_BEFORE([$0], [LT_OUTPUT])dnl -AC_BEFORE([$0], [LTDL_INIT])dnl -m4_require([_LT_CHECK_BUILDDIR])dnl - -dnl Autoconf doesn't catch unexpanded LT_ macros by default: -m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl -m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl -dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4 -dnl unless we require an AC_DEFUNed macro: -AC_REQUIRE([LTOPTIONS_VERSION])dnl -AC_REQUIRE([LTSUGAR_VERSION])dnl -AC_REQUIRE([LTVERSION_VERSION])dnl -AC_REQUIRE([LTOBSOLETE_VERSION])dnl -m4_require([_LT_PROG_LTMAIN])dnl - -dnl Parse OPTIONS -_LT_SET_OPTIONS([$0], [$1]) - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ltmain" - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -AC_SUBST(LIBTOOL)dnl - -_LT_SETUP - -# Only expand once: -m4_define([LT_INIT]) -])# LT_INIT - -# Old names: -AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT]) -AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_PROG_LIBTOOL], []) -dnl AC_DEFUN([AM_PROG_LIBTOOL], []) - - -# _LT_CC_BASENAME(CC) -# ------------------- -# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. -m4_defun([_LT_CC_BASENAME], -[for cc_temp in $1""; do - case $cc_temp in - compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; - distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; - \-*) ;; - *) break;; - esac -done -cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"` -]) - - -# _LT_FILEUTILS_DEFAULTS -# ---------------------- -# It is okay to use these file commands and assume they have been set -# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'. -m4_defun([_LT_FILEUTILS_DEFAULTS], -[: ${CP="cp -f"} -: ${MV="mv -f"} -: ${RM="rm -f"} -])# _LT_FILEUTILS_DEFAULTS - - -# _LT_SETUP -# --------- -m4_defun([_LT_SETUP], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -_LT_DECL([], [host_alias], [0], [The host system])dnl -_LT_DECL([], [host], [0])dnl -_LT_DECL([], [host_os], [0])dnl -dnl -_LT_DECL([], [build_alias], [0], [The build system])dnl -_LT_DECL([], [build], [0])dnl -_LT_DECL([], [build_os], [0])dnl -dnl -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([LT_PATH_LD])dnl -AC_REQUIRE([LT_PATH_NM])dnl -dnl -AC_REQUIRE([AC_PROG_LN_S])dnl -test -z "$LN_S" && LN_S="ln -s" -_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl -dnl -AC_REQUIRE([LT_CMD_MAX_LEN])dnl -_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl -_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl -dnl -m4_require([_LT_FILEUTILS_DEFAULTS])dnl -m4_require([_LT_CHECK_SHELL_FEATURES])dnl -m4_require([_LT_CMD_RELOAD])dnl -m4_require([_LT_CHECK_MAGIC_METHOD])dnl -m4_require([_LT_CMD_OLD_ARCHIVE])dnl -m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl - -_LT_CONFIG_LIBTOOL_INIT([ -# See if we are running on zsh, and set the options which allow our -# commands through without removal of \ escapes INIT. -if test -n "\${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST -fi -]) -if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST -fi - -_LT_CHECK_OBJDIR - -m4_require([_LT_TAG_COMPILER])dnl -_LT_PROG_ECHO_BACKSLASH - -case $host_os in -aix3*) - # AIX sometimes has problems with the GCC collect2 program. For some - # reason, if we set the COLLECT_NAMES environment variable, the problems - # vanish in a puff of smoke. - if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES - fi - ;; -esac - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -sed_quote_subst='s/\([["`$\\]]\)/\\\1/g' - -# Same as above, but do not quote variable references. -double_quote_subst='s/\([["`\\]]\)/\\\1/g' - -# Sed substitution to delay expansion of an escaped shell variable in a -# double_quote_subst'ed string. -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' - -# Sed substitution to delay expansion of an escaped single quote. -delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' - -# Sed substitution to avoid accidental globbing in evaled expressions -no_glob_subst='s/\*/\\\*/g' - -# Global variables: -ofile=libtool -can_build_shared=yes - -# All known linkers require a `.a' archive for static linking (except MSVC, -# which needs '.lib'). -libext=a - -with_gnu_ld="$lt_cv_prog_gnu_ld" - -old_CC="$CC" -old_CFLAGS="$CFLAGS" - -# Set sane defaults for various variables -test -z "$CC" && CC=cc -test -z "$LTCC" && LTCC=$CC -test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS -test -z "$LD" && LD=ld -test -z "$ac_objext" && ac_objext=o - -_LT_CC_BASENAME([$compiler]) - -# Only perform the check for file, if the check method requires it -test -z "$MAGIC_CMD" && MAGIC_CMD=file -case $deplibs_check_method in -file_magic*) - if test "$file_magic_cmd" = '$MAGIC_CMD'; then - _LT_PATH_MAGIC - fi - ;; -esac - -# Use C for the default configuration in the libtool script -LT_SUPPORTED_TAG([CC]) -_LT_LANG_C_CONFIG -_LT_LANG_DEFAULT_CONFIG -_LT_CONFIG_COMMANDS -])# _LT_SETUP - - -# _LT_PROG_LTMAIN -# --------------- -# Note that this code is called both from `configure', and `config.status' -# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably, -# `config.status' has no value for ac_aux_dir unless we are using Automake, -# so we pass a copy along to make sure it has a sensible value anyway. -m4_defun([_LT_PROG_LTMAIN], -[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl -_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir']) -ltmain="$ac_aux_dir/ltmain.sh" -])# _LT_PROG_LTMAIN - - -## ------------------------------------- ## -## Accumulate code for creating libtool. ## -## ------------------------------------- ## - -# So that we can recreate a full libtool script including additional -# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS -# in macros and then make a single call at the end using the `libtool' -# label. - - -# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS]) -# ---------------------------------------- -# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later. -m4_define([_LT_CONFIG_LIBTOOL_INIT], -[m4_ifval([$1], - [m4_append([_LT_OUTPUT_LIBTOOL_INIT], - [$1 -])])]) - -# Initialize. -m4_define([_LT_OUTPUT_LIBTOOL_INIT]) - - -# _LT_CONFIG_LIBTOOL([COMMANDS]) -# ------------------------------ -# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later. -m4_define([_LT_CONFIG_LIBTOOL], -[m4_ifval([$1], - [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS], - [$1 -])])]) - -# Initialize. -m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS]) - - -# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS]) -# ----------------------------------------------------- -m4_defun([_LT_CONFIG_SAVE_COMMANDS], -[_LT_CONFIG_LIBTOOL([$1]) -_LT_CONFIG_LIBTOOL_INIT([$2]) -]) - - -# _LT_FORMAT_COMMENT([COMMENT]) -# ----------------------------- -# Add leading comment marks to the start of each line, and a trailing -# full-stop to the whole comment if one is not present already. -m4_define([_LT_FORMAT_COMMENT], -[m4_ifval([$1], [ -m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])], - [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.]) -)]) - - - -## ------------------------ ## -## FIXME: Eliminate VARNAME ## -## ------------------------ ## - - -# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?]) -# ------------------------------------------------------------------- -# CONFIGNAME is the name given to the value in the libtool script. -# VARNAME is the (base) name used in the configure script. -# VALUE may be 0, 1 or 2 for a computed quote escaped value based on -# VARNAME. Any other value will be used directly. -m4_define([_LT_DECL], -[lt_if_append_uniq([lt_decl_varnames], [$2], [, ], - [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name], - [m4_ifval([$1], [$1], [$2])]) - lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3]) - m4_ifval([$4], - [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])]) - lt_dict_add_subkey([lt_decl_dict], [$2], - [tagged?], [m4_ifval([$5], [yes], [no])])]) -]) - - -# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION]) -# -------------------------------------------------------- -m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])]) - - -# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...]) -# ------------------------------------------------ -m4_define([lt_decl_tag_varnames], -[_lt_decl_filter([tagged?], [yes], $@)]) - - -# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..]) -# --------------------------------------------------------- -m4_define([_lt_decl_filter], -[m4_case([$#], - [0], [m4_fatal([$0: too few arguments: $#])], - [1], [m4_fatal([$0: too few arguments: $#: $1])], - [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)], - [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)], - [lt_dict_filter([lt_decl_dict], $@)])[]dnl -]) - - -# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...]) -# -------------------------------------------------- -m4_define([lt_decl_quote_varnames], -[_lt_decl_filter([value], [1], $@)]) - - -# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...]) -# --------------------------------------------------- -m4_define([lt_decl_dquote_varnames], -[_lt_decl_filter([value], [2], $@)]) - - -# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...]) -# --------------------------------------------------- -m4_define([lt_decl_varnames_tagged], -[m4_assert([$# <= 2])dnl -_$0(m4_quote(m4_default([$1], [[, ]])), - m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]), - m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))]) -m4_define([_lt_decl_varnames_tagged], -[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])]) - - -# lt_decl_all_varnames([SEPARATOR], [VARNAME1...]) -# ------------------------------------------------ -m4_define([lt_decl_all_varnames], -[_$0(m4_quote(m4_default([$1], [[, ]])), - m4_if([$2], [], - m4_quote(lt_decl_varnames), - m4_quote(m4_shift($@))))[]dnl -]) -m4_define([_lt_decl_all_varnames], -[lt_join($@, lt_decl_varnames_tagged([$1], - lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl -]) - - -# _LT_CONFIG_STATUS_DECLARE([VARNAME]) -# ------------------------------------ -# Quote a variable value, and forward it to `config.status' so that its -# declaration there will have the same value as in `configure'. VARNAME -# must have a single quote delimited value for this to work. -m4_define([_LT_CONFIG_STATUS_DECLARE], -[$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`']) - - -# _LT_CONFIG_STATUS_DECLARATIONS -# ------------------------------ -# We delimit libtool config variables with single quotes, so when -# we write them to config.status, we have to be sure to quote all -# embedded single quotes properly. In configure, this macro expands -# each variable declared with _LT_DECL (and _LT_TAGDECL) into: -# -# <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`' -m4_defun([_LT_CONFIG_STATUS_DECLARATIONS], -[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames), - [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])]) - - -# _LT_LIBTOOL_TAGS -# ---------------- -# Output comment and list of tags supported by the script -m4_defun([_LT_LIBTOOL_TAGS], -[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl -available_tags="_LT_TAGS"dnl -]) - - -# _LT_LIBTOOL_DECLARE(VARNAME, [TAG]) -# ----------------------------------- -# Extract the dictionary values for VARNAME (optionally with TAG) and -# expand to a commented shell variable setting: -# -# # Some comment about what VAR is for. -# visible_name=$lt_internal_name -m4_define([_LT_LIBTOOL_DECLARE], -[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], - [description])))[]dnl -m4_pushdef([_libtool_name], - m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl -m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])), - [0], [_libtool_name=[$]$1], - [1], [_libtool_name=$lt_[]$1], - [2], [_libtool_name=$lt_[]$1], - [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl -m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl -]) - - -# _LT_LIBTOOL_CONFIG_VARS -# ----------------------- -# Produce commented declarations of non-tagged libtool config variables -# suitable for insertion in the LIBTOOL CONFIG section of the `libtool' -# script. Tagged libtool config variables (even for the LIBTOOL CONFIG -# section) are produced by _LT_LIBTOOL_TAG_VARS. -m4_defun([_LT_LIBTOOL_CONFIG_VARS], -[m4_foreach([_lt_var], - m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)), - [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])]) - - -# _LT_LIBTOOL_TAG_VARS(TAG) -# ------------------------- -m4_define([_LT_LIBTOOL_TAG_VARS], -[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames), - [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])]) - - -# _LT_TAGVAR(VARNAME, [TAGNAME]) -# ------------------------------ -m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])]) - - -# _LT_CONFIG_COMMANDS -# ------------------- -# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of -# variables for single and double quote escaping we saved from calls -# to _LT_DECL, we can put quote escaped variables declarations -# into `config.status', and then the shell code to quote escape them in -# for loops in `config.status'. Finally, any additional code accumulated -# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded. -m4_defun([_LT_CONFIG_COMMANDS], -[AC_PROVIDE_IFELSE([LT_OUTPUT], - dnl If the libtool generation code has been placed in $CONFIG_LT, - dnl instead of duplicating it all over again into config.status, - dnl then we will have config.status run $CONFIG_LT later, so it - dnl needs to know what name is stored there: - [AC_CONFIG_COMMANDS([libtool], - [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])], - dnl If the libtool generation code is destined for config.status, - dnl expand the accumulated commands and init code now: - [AC_CONFIG_COMMANDS([libtool], - [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])]) -])#_LT_CONFIG_COMMANDS - - -# Initialize. -m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT], -[ - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -sed_quote_subst='$sed_quote_subst' -double_quote_subst='$double_quote_subst' -delay_variable_subst='$delay_variable_subst' -_LT_CONFIG_STATUS_DECLARATIONS -LTCC='$LTCC' -LTCFLAGS='$LTCFLAGS' -compiler='$compiler_DEFAULT' - -# Quote evaled strings. -for var in lt_decl_all_varnames([[ \ -]], lt_decl_quote_varnames); do - case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in - *[[\\\\\\\`\\"\\\$]]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" - ;; - *) - eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" - ;; - esac -done - -# Double-quote double-evaled strings. -for var in lt_decl_all_varnames([[ \ -]], lt_decl_dquote_varnames); do - case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in - *[[\\\\\\\`\\"\\\$]]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" - ;; - *) - eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" - ;; - esac -done - -# Fix-up fallback echo if it was mangled by the above quoting rules. -case \$lt_ECHO in -*'\\\[$]0 --fallback-echo"')dnl " - lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\` - ;; -esac - -_LT_OUTPUT_LIBTOOL_INIT -]) - - -# LT_OUTPUT -# --------- -# This macro allows early generation of the libtool script (before -# AC_OUTPUT is called), incase it is used in configure for compilation -# tests. -AC_DEFUN([LT_OUTPUT], -[: ${CONFIG_LT=./config.lt} -AC_MSG_NOTICE([creating $CONFIG_LT]) -cat >"$CONFIG_LT" <<_LTEOF -#! $SHELL -# Generated by $as_me. -# Run this file to recreate a libtool stub with the current configuration. - -lt_cl_silent=false -SHELL=\${CONFIG_SHELL-$SHELL} -_LTEOF - -cat >>"$CONFIG_LT" <<\_LTEOF -AS_SHELL_SANITIZE -_AS_PREPARE - -exec AS_MESSAGE_FD>&1 -exec AS_MESSAGE_LOG_FD>>config.log -{ - echo - AS_BOX([Running $as_me.]) -} >&AS_MESSAGE_LOG_FD - -lt_cl_help="\ -\`$as_me' creates a local libtool stub from the current configuration, -for use in further configure time tests before the real libtool is -generated. - -Usage: $[0] [[OPTIONS]] - - -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - -Report bugs to <bug-libtool@gnu.org>." - -lt_cl_version="\ -m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl -m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) -configured by $[0], generated by m4_PACKAGE_STRING. - -Copyright (C) 2008 Free Software Foundation, Inc. -This config.lt script is free software; the Free Software Foundation -gives unlimited permision to copy, distribute and modify it." - -while test $[#] != 0 -do - case $[1] in - --version | --v* | -V ) - echo "$lt_cl_version"; exit 0 ;; - --help | --h* | -h ) - echo "$lt_cl_help"; exit 0 ;; - --debug | --d* | -d ) - debug=: ;; - --quiet | --q* | --silent | --s* | -q ) - lt_cl_silent=: ;; - - -*) AC_MSG_ERROR([unrecognized option: $[1] -Try \`$[0] --help' for more information.]) ;; - - *) AC_MSG_ERROR([unrecognized argument: $[1] -Try \`$[0] --help' for more information.]) ;; - esac - shift -done - -if $lt_cl_silent; then - exec AS_MESSAGE_FD>/dev/null -fi -_LTEOF - -cat >>"$CONFIG_LT" <<_LTEOF -_LT_OUTPUT_LIBTOOL_COMMANDS_INIT -_LTEOF - -cat >>"$CONFIG_LT" <<\_LTEOF -AC_MSG_NOTICE([creating $ofile]) -_LT_OUTPUT_LIBTOOL_COMMANDS -AS_EXIT(0) -_LTEOF -chmod +x "$CONFIG_LT" - -# configure is writing to config.log, but config.lt does its own redirection, -# appending to config.log, which fails on DOS, as config.log is still kept -# open by configure. Here we exec the FD to /dev/null, effectively closing -# config.log, so it can be properly (re)opened and appended to by config.lt. -if test "$no_create" != yes; then - lt_cl_success=: - test "$silent" = yes && - lt_config_lt_args="$lt_config_lt_args --quiet" - exec AS_MESSAGE_LOG_FD>/dev/null - $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false - exec AS_MESSAGE_LOG_FD>>config.log - $lt_cl_success || AS_EXIT(1) -fi -])# LT_OUTPUT - - -# _LT_CONFIG(TAG) -# --------------- -# If TAG is the built-in tag, create an initial libtool script with a -# default configuration from the untagged config vars. Otherwise add code -# to config.status for appending the configuration named by TAG from the -# matching tagged config vars. -m4_defun([_LT_CONFIG], -[m4_require([_LT_FILEUTILS_DEFAULTS])dnl -_LT_CONFIG_SAVE_COMMANDS([ - m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl - m4_if(_LT_TAG, [C], [ - # See if we are running on zsh, and set the options which allow our - # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST - fi - - cfgfile="${ofile}T" - trap "$RM \"$cfgfile\"; exit 1" 1 2 15 - $RM "$cfgfile" - - cat <<_LT_EOF >> "$cfgfile" -#! $SHELL - -# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -_LT_COPYING -_LT_LIBTOOL_TAGS - -# ### BEGIN LIBTOOL CONFIG -_LT_LIBTOOL_CONFIG_VARS -_LT_LIBTOOL_TAG_VARS -# ### END LIBTOOL CONFIG - -_LT_EOF - - case $host_os in - aix3*) - cat <<\_LT_EOF >> "$cfgfile" -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -_LT_EOF - ;; - esac - - _LT_PROG_LTMAIN - - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - _LT_PROG_XSI_SHELLFNS - - sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - mv -f "$cfgfile" "$ofile" || - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" -], -[cat <<_LT_EOF >> "$ofile" - -dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded -dnl in a comment (ie after a #). -# ### BEGIN LIBTOOL TAG CONFIG: $1 -_LT_LIBTOOL_TAG_VARS(_LT_TAG) -# ### END LIBTOOL TAG CONFIG: $1 -_LT_EOF -])dnl /m4_if -], -[m4_if([$1], [], [ - PACKAGE='$PACKAGE' - VERSION='$VERSION' - TIMESTAMP='$TIMESTAMP' - RM='$RM' - ofile='$ofile'], []) -])dnl /_LT_CONFIG_SAVE_COMMANDS -])# _LT_CONFIG - - -# LT_SUPPORTED_TAG(TAG) -# --------------------- -# Trace this macro to discover what tags are supported by the libtool -# --tag option, using: -# autoconf --trace 'LT_SUPPORTED_TAG:$1' -AC_DEFUN([LT_SUPPORTED_TAG], []) - - -# C support is built-in for now -m4_define([_LT_LANG_C_enabled], []) -m4_define([_LT_TAGS], []) - - -# LT_LANG(LANG) -# ------------- -# Enable libtool support for the given language if not already enabled. -AC_DEFUN([LT_LANG], -[AC_BEFORE([$0], [LT_OUTPUT])dnl -m4_case([$1], - [C], [_LT_LANG(C)], - [C++], [_LT_LANG(CXX)], - [Java], [_LT_LANG(GCJ)], - [Fortran 77], [_LT_LANG(F77)], - [Fortran], [_LT_LANG(FC)], - [Windows Resource], [_LT_LANG(RC)], - [m4_ifdef([_LT_LANG_]$1[_CONFIG], - [_LT_LANG($1)], - [m4_fatal([$0: unsupported language: "$1"])])])dnl -])# LT_LANG - - -# _LT_LANG(LANGNAME) -# ------------------ -m4_defun([_LT_LANG], -[m4_ifdef([_LT_LANG_]$1[_enabled], [], - [LT_SUPPORTED_TAG([$1])dnl - m4_append([_LT_TAGS], [$1 ])dnl - m4_define([_LT_LANG_]$1[_enabled], [])dnl - _LT_LANG_$1_CONFIG($1)])dnl -])# _LT_LANG - - -# _LT_LANG_DEFAULT_CONFIG -# ----------------------- -m4_defun([_LT_LANG_DEFAULT_CONFIG], -[AC_PROVIDE_IFELSE([AC_PROG_CXX], - [LT_LANG(CXX)], - [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])]) - -AC_PROVIDE_IFELSE([AC_PROG_F77], - [LT_LANG(F77)], - [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])]) - -AC_PROVIDE_IFELSE([AC_PROG_FC], - [LT_LANG(FC)], - [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])]) - -dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal -dnl pulling things in needlessly. -AC_PROVIDE_IFELSE([AC_PROG_GCJ], - [LT_LANG(GCJ)], - [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], - [LT_LANG(GCJ)], - [AC_PROVIDE_IFELSE([LT_PROG_GCJ], - [LT_LANG(GCJ)], - [m4_ifdef([AC_PROG_GCJ], - [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])]) - m4_ifdef([A][M_PROG_GCJ], - [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])]) - m4_ifdef([LT_PROG_GCJ], - [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])]) - -AC_PROVIDE_IFELSE([LT_PROG_RC], - [LT_LANG(RC)], - [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])]) -])# _LT_LANG_DEFAULT_CONFIG - -# Obsolete macros: -AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)]) -AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)]) -AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)]) -AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_CXX], []) -dnl AC_DEFUN([AC_LIBTOOL_F77], []) -dnl AC_DEFUN([AC_LIBTOOL_FC], []) -dnl AC_DEFUN([AC_LIBTOOL_GCJ], []) - - -# _LT_TAG_COMPILER -# ---------------- -m4_defun([_LT_TAG_COMPILER], -[AC_REQUIRE([AC_PROG_CC])dnl - -_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl -_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl -_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl -_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl - -# If no C compiler was specified, use CC. -LTCC=${LTCC-"$CC"} - -# If no C compiler flags were specified, use CFLAGS. -LTCFLAGS=${LTCFLAGS-"$CFLAGS"} - -# Allow CC to be a program name with arguments. -compiler=$CC -])# _LT_TAG_COMPILER - - -# _LT_COMPILER_BOILERPLATE -# ------------------------ -# Check for compiler boilerplate output or warnings with -# the simple compiler test code. -m4_defun([_LT_COMPILER_BOILERPLATE], -[m4_require([_LT_DECL_SED])dnl -ac_outfile=conftest.$ac_objext -echo "$lt_simple_compile_test_code" >conftest.$ac_ext -eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err -_lt_compiler_boilerplate=`cat conftest.err` -$RM conftest* -])# _LT_COMPILER_BOILERPLATE - - -# _LT_LINKER_BOILERPLATE -# ---------------------- -# Check for linker boilerplate output or warnings with -# the simple link test code. -m4_defun([_LT_LINKER_BOILERPLATE], -[m4_require([_LT_DECL_SED])dnl -ac_outfile=conftest.$ac_objext -echo "$lt_simple_link_test_code" >conftest.$ac_ext -eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err -_lt_linker_boilerplate=`cat conftest.err` -$RM -r conftest* -])# _LT_LINKER_BOILERPLATE - -# _LT_REQUIRED_DARWIN_CHECKS -# ------------------------- -m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ - case $host_os in - rhapsody* | darwin*) - AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:]) - AC_CHECK_TOOL([NMEDIT], [nmedit], [:]) - AC_CHECK_TOOL([LIPO], [lipo], [:]) - AC_CHECK_TOOL([OTOOL], [otool], [:]) - AC_CHECK_TOOL([OTOOL64], [otool64], [:]) - _LT_DECL([], [DSYMUTIL], [1], - [Tool to manipulate archived DWARF debug symbol files on Mac OS X]) - _LT_DECL([], [NMEDIT], [1], - [Tool to change global to local symbols on Mac OS X]) - _LT_DECL([], [LIPO], [1], - [Tool to manipulate fat objects and archives on Mac OS X]) - _LT_DECL([], [OTOOL], [1], - [ldd/readelf like tool for Mach-O binaries on Mac OS X]) - _LT_DECL([], [OTOOL64], [1], - [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4]) - - AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod], - [lt_cv_apple_cc_single_mod=no - if test -z "${LT_MULTI_MODULE}"; then - # By default we will add the -single_module flag. You can override - # by either setting the environment variable LT_MULTI_MODULE - # non-empty at configure time, or by adding -multi_module to the - # link flags. - rm -rf libconftest.dylib* - echo "int foo(void){return 1;}" > conftest.c - echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ --dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD - $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ - -dynamiclib -Wl,-single_module conftest.c 2>conftest.err - _lt_result=$? - if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then - lt_cv_apple_cc_single_mod=yes - else - cat conftest.err >&AS_MESSAGE_LOG_FD - fi - rm -rf libconftest.dylib* - rm -f conftest.* - fi]) - AC_CACHE_CHECK([for -exported_symbols_list linker flag], - [lt_cv_ld_exported_symbols_list], - [lt_cv_ld_exported_symbols_list=no - save_LDFLAGS=$LDFLAGS - echo "_main" > conftest.sym - LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" - AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], - [lt_cv_ld_exported_symbols_list=yes], - [lt_cv_ld_exported_symbols_list=no]) - LDFLAGS="$save_LDFLAGS" - ]) - case $host_os in - rhapsody* | darwin1.[[012]]) - _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; - darwin1.*) - _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; - darwin*) # darwin 5.x on - # if running on 10.5 or later, the deployment target defaults - # to the OS version, if on x86, and 10.4, the deployment - # target defaults to 10.4. Don't you love it? - case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in - 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) - _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; - 10.[[012]]*) - _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; - 10.*) - _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; - esac - ;; - esac - if test "$lt_cv_apple_cc_single_mod" = "yes"; then - _lt_dar_single_mod='$single_module' - fi - if test "$lt_cv_ld_exported_symbols_list" = "yes"; then - _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' - else - _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' - fi - if test "$DSYMUTIL" != ":"; then - _lt_dsymutil='~$DSYMUTIL $lib || :' - else - _lt_dsymutil= - fi - ;; - esac -]) - - -# _LT_DARWIN_LINKER_FEATURES -# -------------------------- -# Checks for linker and compiler features on darwin -m4_defun([_LT_DARWIN_LINKER_FEATURES], -[ - m4_require([_LT_REQUIRED_DARWIN_CHECKS]) - _LT_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_TAGVAR(hardcode_direct, $1)=no - _LT_TAGVAR(hardcode_automatic, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - _LT_TAGVAR(whole_archive_flag_spec, $1)='' - _LT_TAGVAR(link_all_deplibs, $1)=yes - _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined" - case $cc_basename in - ifort*) _lt_dar_can_shared=yes ;; - *) _lt_dar_can_shared=$GCC ;; - esac - if test "$_lt_dar_can_shared" = "yes"; then - output_verbose_link_cmd=echo - _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" - _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" - _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" - _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}" - m4_if([$1], [CXX], -[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then - _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}" - _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}" - fi -],[]) - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi -]) - -# _LT_SYS_MODULE_PATH_AIX -# ----------------------- -# Links a minimal program and checks the executable -# for the system default hardcoded library path. In most cases, -# this is /usr/lib:/lib, but when the MPI compilers are used -# the location of the communication and MPI libs are included too. -# If we don't find anything, use the default library path according -# to the aix ld manual. -m4_defun([_LT_SYS_MODULE_PATH_AIX], -[m4_require([_LT_DECL_SED])dnl -AC_LINK_IFELSE(AC_LANG_PROGRAM,[ -lt_aix_libpath_sed=' - /Import File Strings/,/^$/ { - /^0/ { - s/^0 *\(.*\)$/\1/ - p - } - }' -aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` -# Check for a 64-bit object if we didn't find anything. -if test -z "$aix_libpath"; then - aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` -fi],[]) -if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi -])# _LT_SYS_MODULE_PATH_AIX - - -# _LT_SHELL_INIT(ARG) -# ------------------- -m4_define([_LT_SHELL_INIT], -[ifdef([AC_DIVERSION_NOTICE], - [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], - [AC_DIVERT_PUSH(NOTICE)]) -$1 -AC_DIVERT_POP -])# _LT_SHELL_INIT - - -# _LT_PROG_ECHO_BACKSLASH -# ----------------------- -# Add some code to the start of the generated configure script which -# will find an echo command which doesn't interpret backslashes. -m4_defun([_LT_PROG_ECHO_BACKSLASH], -[_LT_SHELL_INIT([ -# Check that we are running under the correct shell. -SHELL=${CONFIG_SHELL-/bin/sh} - -case X$lt_ECHO in -X*--fallback-echo) - # Remove one level of quotation (which was required for Make). - ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` - ;; -esac - -ECHO=${lt_ECHO-echo} -if test "X[$]1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X[$]1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then - # Yippee, $ECHO works! - : -else - # Restart under the correct shell. - exec $SHELL "[$]0" --no-reexec ${1+"[$]@"} -fi - -if test "X[$]1" = X--fallback-echo; then - # used as fallback echo - shift - cat <<_LT_EOF -[$]* -_LT_EOF - exit 0 -fi - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -if test -z "$lt_ECHO"; then - if test "X${echo_test_string+set}" != Xset; then - # find a string as large as possible, as long as the shell can cope with it - for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do - # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... - if { echo_test_string=`eval $cmd`; } 2>/dev/null && - { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null - then - break - fi - done - fi - - if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && - echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - : - else - # The Solaris, AIX, and Digital Unix default echo programs unquote - # backslashes. This makes it impossible to quote backslashes using - # echo "$something" | sed 's/\\/\\\\/g' - # - # So, first we look for a working echo in the user's PATH. - - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for dir in $PATH /usr/ucb; do - IFS="$lt_save_ifs" - if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && - test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - ECHO="$dir/echo" - break - fi - done - IFS="$lt_save_ifs" - - if test "X$ECHO" = Xecho; then - # We didn't find a better echo, so look for alternatives. - if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' && - echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # This shell has a builtin print -r that does the trick. - ECHO='print -r' - elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } && - test "X$CONFIG_SHELL" != X/bin/ksh; then - # If we have ksh, try running configure again with it. - ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} - export ORIGINAL_CONFIG_SHELL - CONFIG_SHELL=/bin/ksh - export CONFIG_SHELL - exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} - else - # Try using printf. - ECHO='printf %s\n' - if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && - echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # Cool, printf works - : - elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL - export CONFIG_SHELL - SHELL="$CONFIG_SHELL" - export SHELL - ECHO="$CONFIG_SHELL [$]0 --fallback-echo" - elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - ECHO="$CONFIG_SHELL [$]0 --fallback-echo" - else - # maybe with a smaller string... - prev=: - - for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do - if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null - then - break - fi - prev="$cmd" - done - - if test "$prev" != 'sed 50q "[$]0"'; then - echo_test_string=`eval $prev` - export echo_test_string - exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} - else - # Oops. We lost completely, so just stick with echo. - ECHO=echo - fi - fi - fi - fi - fi -fi - -# Copy echo and quote the copy suitably for passing to libtool from -# the Makefile, instead of quoting the original, which is used later. -lt_ECHO=$ECHO -if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then - lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" -fi - -AC_SUBST(lt_ECHO) -]) -_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts]) -_LT_DECL([], [ECHO], [1], - [An echo program that does not interpret backslashes]) -])# _LT_PROG_ECHO_BACKSLASH - - -# _LT_ENABLE_LOCK -# --------------- -m4_defun([_LT_ENABLE_LOCK], -[AC_ARG_ENABLE([libtool-lock], - [AS_HELP_STRING([--disable-libtool-lock], - [avoid locking (might break parallel builds)])]) -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes - -# Some flags need to be propagated to the compiler or linker for good -# libtool support. -case $host in -ia64-*-hpux*) - # Find out which ABI we are using. - echo 'int i;' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case `/usr/bin/file conftest.$ac_objext` in - *ELF-32*) - HPUX_IA64_MODE="32" - ;; - *ELF-64*) - HPUX_IA64_MODE="64" - ;; - esac - fi - rm -rf conftest* - ;; -*-*-irix6*) - # Find out which ABI we are using. - echo '[#]line __oline__ "configure"' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - if test "$lt_cv_prog_gnu_ld" = yes; then - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -melf32bsmip" - ;; - *N32*) - LD="${LD-ld} -melf32bmipn32" - ;; - *64-bit*) - LD="${LD-ld} -melf64bmip" - ;; - esac - else - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -32" - ;; - *N32*) - LD="${LD-ld} -n32" - ;; - *64-bit*) - LD="${LD-ld} -64" - ;; - esac - fi - fi - rm -rf conftest* - ;; - -x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \ -s390*-*linux*|s390*-*tpf*|sparc*-*linux*) - # Find out which ABI we are using. - echo 'int i;' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case `/usr/bin/file conftest.o` in - *32-bit*) - case $host in - x86_64-*kfreebsd*-gnu) - LD="${LD-ld} -m elf_i386_fbsd" - ;; - x86_64-*linux*) - LD="${LD-ld} -m elf_i386" - ;; - ppc64-*linux*|powerpc64-*linux*) - LD="${LD-ld} -m elf32ppclinux" - ;; - s390x-*linux*) - LD="${LD-ld} -m elf_s390" - ;; - sparc64-*linux*) - LD="${LD-ld} -m elf32_sparc" - ;; - esac - ;; - *64-bit*) - case $host in - x86_64-*kfreebsd*-gnu) - LD="${LD-ld} -m elf_x86_64_fbsd" - ;; - x86_64-*linux*) - LD="${LD-ld} -m elf_x86_64" - ;; - ppc*-*linux*|powerpc*-*linux*) - LD="${LD-ld} -m elf64ppc" - ;; - s390*-*linux*|s390*-*tpf*) - LD="${LD-ld} -m elf64_s390" - ;; - sparc*-*linux*) - LD="${LD-ld} -m elf64_sparc" - ;; - esac - ;; - esac - fi - rm -rf conftest* - ;; - -*-*-sco3.2v5*) - # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -belf" - AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, - [AC_LANG_PUSH(C) - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) - AC_LANG_POP]) - if test x"$lt_cv_cc_needs_belf" != x"yes"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" - fi - ;; -sparc*-*solaris*) - # Find out which ABI we are using. - echo 'int i;' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case `/usr/bin/file conftest.o` in - *64-bit*) - case $lt_cv_prog_gnu_ld in - yes*) LD="${LD-ld} -m elf64_sparc" ;; - *) - if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then - LD="${LD-ld} -64" - fi - ;; - esac - ;; - esac - fi - rm -rf conftest* - ;; -esac - -need_locks="$enable_libtool_lock" -])# _LT_ENABLE_LOCK - - -# _LT_CMD_OLD_ARCHIVE -# ------------------- -m4_defun([_LT_CMD_OLD_ARCHIVE], -[AC_CHECK_TOOL(AR, ar, false) -test -z "$AR" && AR=ar -test -z "$AR_FLAGS" && AR_FLAGS=cru -_LT_DECL([], [AR], [1], [The archiver]) -_LT_DECL([], [AR_FLAGS], [1]) - -AC_CHECK_TOOL(STRIP, strip, :) -test -z "$STRIP" && STRIP=: -_LT_DECL([], [STRIP], [1], [A symbol stripping program]) - -AC_CHECK_TOOL(RANLIB, ranlib, :) -test -z "$RANLIB" && RANLIB=: -_LT_DECL([], [RANLIB], [1], - [Commands used to install an old-style archive]) - -# Determine commands to create old-style static archives. -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -if test -n "$RANLIB"; then - case $host_os in - openbsd*) - old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib" - ;; - *) - old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib" - ;; - esac - old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" -fi -_LT_DECL([], [old_postinstall_cmds], [2]) -_LT_DECL([], [old_postuninstall_cmds], [2]) -_LT_TAGDECL([], [old_archive_cmds], [2], - [Commands used to build an old-style archive]) -])# _LT_CMD_OLD_ARCHIVE - - -# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, -# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) -# ---------------------------------------------------------------- -# Check whether the given compiler option works -AC_DEFUN([_LT_COMPILER_OPTION], -[m4_require([_LT_FILEUTILS_DEFAULTS])dnl -m4_require([_LT_DECL_SED])dnl -AC_CACHE_CHECK([$1], [$2], - [$2=no - m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="$3" - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - # The option is referenced via a variable to avoid confusing sed. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&AS_MESSAGE_LOG_FD - echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings other than the usual output. - $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp - $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 - if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then - $2=yes - fi - fi - $RM conftest* -]) - -if test x"[$]$2" = xyes; then - m4_if([$5], , :, [$5]) -else - m4_if([$6], , :, [$6]) -fi -])# _LT_COMPILER_OPTION - -# Old name: -AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], []) - - -# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, -# [ACTION-SUCCESS], [ACTION-FAILURE]) -# ---------------------------------------------------- -# Check whether the given linker option works -AC_DEFUN([_LT_LINKER_OPTION], -[m4_require([_LT_FILEUTILS_DEFAULTS])dnl -m4_require([_LT_DECL_SED])dnl -AC_CACHE_CHECK([$1], [$2], - [$2=no - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS $3" - echo "$lt_simple_link_test_code" > conftest.$ac_ext - if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then - # The linker can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - # Append any errors to the config.log. - cat conftest.err 1>&AS_MESSAGE_LOG_FD - $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp - $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 - if diff conftest.exp conftest.er2 >/dev/null; then - $2=yes - fi - else - $2=yes - fi - fi - $RM -r conftest* - LDFLAGS="$save_LDFLAGS" -]) - -if test x"[$]$2" = xyes; then - m4_if([$4], , :, [$4]) -else - m4_if([$5], , :, [$5]) -fi -])# _LT_LINKER_OPTION - -# Old name: -AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], []) - - -# LT_CMD_MAX_LEN -#--------------- -AC_DEFUN([LT_CMD_MAX_LEN], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -# find the maximum length of command line arguments -AC_MSG_CHECKING([the maximum length of command line arguments]) -AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl - i=0 - teststring="ABCD" - - case $build_os in - msdosdjgpp*) - # On DJGPP, this test can blow up pretty badly due to problems in libc - # (any single argument exceeding 2000 bytes causes a buffer overrun - # during glob expansion). Even if it were fixed, the result of this - # check would be larger than it should be. - lt_cv_sys_max_cmd_len=12288; # 12K is about right - ;; - - gnu*) - # Under GNU Hurd, this test is not required because there is - # no limit to the length of command line arguments. - # Libtool will interpret -1 as no limit whatsoever - lt_cv_sys_max_cmd_len=-1; - ;; - - cygwin* | mingw* | cegcc*) - # On Win9x/ME, this test blows up -- it succeeds, but takes - # about 5 minutes as the teststring grows exponentially. - # Worse, since 9x/ME are not pre-emptively multitasking, - # you end up with a "frozen" computer, even though with patience - # the test eventually succeeds (with a max line length of 256k). - # Instead, let's just punt: use the minimum linelength reported by - # all of the supported platforms: 8192 (on NT/2K/XP). - lt_cv_sys_max_cmd_len=8192; - ;; - - amigaos*) - # On AmigaOS with pdksh, this test takes hours, literally. - # So we just punt and use a minimum line length of 8192. - lt_cv_sys_max_cmd_len=8192; - ;; - - netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) - # This has been around since 386BSD, at least. Likely further. - if test -x /sbin/sysctl; then - lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` - elif test -x /usr/sbin/sysctl; then - lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` - else - lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs - fi - # And add a safety zone - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` - ;; - - interix*) - # We know the value 262144 and hardcode it with a safety zone (like BSD) - lt_cv_sys_max_cmd_len=196608 - ;; - - osf*) - # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure - # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not - # nice to cause kernel panics so lets avoid the loop below. - # First set a reasonable default. - lt_cv_sys_max_cmd_len=16384 - # - if test -x /sbin/sysconfig; then - case `/sbin/sysconfig -q proc exec_disable_arg_limit` in - *1*) lt_cv_sys_max_cmd_len=-1 ;; - esac - fi - ;; - sco3.2v5*) - lt_cv_sys_max_cmd_len=102400 - ;; - sysv5* | sco5v6* | sysv4.2uw2*) - kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` - if test -n "$kargmax"; then - lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` - else - lt_cv_sys_max_cmd_len=32768 - fi - ;; - *) - lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` - if test -n "$lt_cv_sys_max_cmd_len"; then - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` - else - # Make teststring a little bigger before we do anything with it. - # a 1K string should be a reasonable start. - for i in 1 2 3 4 5 6 7 8 ; do - teststring=$teststring$teststring - done - SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} - # If test is not a shell built-in, we'll probably end up computing a - # maximum length that is only half of the actual maximum length, but - # we can't tell. - while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \ - = "XX$teststring$teststring"; } >/dev/null 2>&1 && - test $i != 17 # 1/2 MB should be enough - do - i=`expr $i + 1` - teststring=$teststring$teststring - done - # Only check the string length outside the loop. - lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` - teststring= - # Add a significant safety factor because C++ compilers can tack on - # massive amounts of additional arguments before passing them to the - # linker. It appears as though 1/2 is a usable value. - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` - fi - ;; - esac -]) -if test -n $lt_cv_sys_max_cmd_len ; then - AC_MSG_RESULT($lt_cv_sys_max_cmd_len) -else - AC_MSG_RESULT(none) -fi -max_cmd_len=$lt_cv_sys_max_cmd_len -_LT_DECL([], [max_cmd_len], [0], - [What is the maximum length of a command?]) -])# LT_CMD_MAX_LEN - -# Old name: -AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], []) - - -# _LT_HEADER_DLFCN -# ---------------- -m4_defun([_LT_HEADER_DLFCN], -[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl -])# _LT_HEADER_DLFCN - - -# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, -# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) -# ---------------------------------------------------------------- -m4_defun([_LT_TRY_DLOPEN_SELF], -[m4_require([_LT_HEADER_DLFCN])dnl -if test "$cross_compiling" = yes; then : - [$4] -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<_LT_EOF -[#line __oline__ "configure" -#include "confdefs.h" - -#if HAVE_DLFCN_H -#include <dlfcn.h> -#endif - -#include <stdio.h> - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -void fnord() { int i=42;} -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - /* dlclose (self); */ - } - else - puts (dlerror ()); - - return status; -}] -_LT_EOF - if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then - (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) $1 ;; - x$lt_dlneed_uscore) $2 ;; - x$lt_dlunknown|x*) $3 ;; - esac - else : - # compilation failed - $3 - fi -fi -rm -fr conftest* -])# _LT_TRY_DLOPEN_SELF - - -# LT_SYS_DLOPEN_SELF -# ------------------ -AC_DEFUN([LT_SYS_DLOPEN_SELF], -[m4_require([_LT_HEADER_DLFCN])dnl -if test "x$enable_dlopen" != xyes; then - enable_dlopen=unknown - enable_dlopen_self=unknown - enable_dlopen_self_static=unknown -else - lt_cv_dlopen=no - lt_cv_dlopen_libs= - - case $host_os in - beos*) - lt_cv_dlopen="load_add_on" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ;; - - mingw* | pw32* | cegcc*) - lt_cv_dlopen="LoadLibrary" - lt_cv_dlopen_libs= - ;; - - cygwin*) - lt_cv_dlopen="dlopen" - lt_cv_dlopen_libs= - ;; - - darwin*) - # if libdl is installed we need to link against it - AC_CHECK_LIB([dl], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[ - lt_cv_dlopen="dyld" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ]) - ;; - - *) - AC_CHECK_FUNC([shl_load], - [lt_cv_dlopen="shl_load"], - [AC_CHECK_LIB([dld], [shl_load], - [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"], - [AC_CHECK_FUNC([dlopen], - [lt_cv_dlopen="dlopen"], - [AC_CHECK_LIB([dl], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], - [AC_CHECK_LIB([svld], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], - [AC_CHECK_LIB([dld], [dld_link], - [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"]) - ]) - ]) - ]) - ]) - ]) - ;; - esac - - if test "x$lt_cv_dlopen" != xno; then - enable_dlopen=yes - else - enable_dlopen=no - fi - - case $lt_cv_dlopen in - dlopen) - save_CPPFLAGS="$CPPFLAGS" - test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - - save_LDFLAGS="$LDFLAGS" - wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - - save_LIBS="$LIBS" - LIBS="$lt_cv_dlopen_libs $LIBS" - - AC_CACHE_CHECK([whether a program can dlopen itself], - lt_cv_dlopen_self, [dnl - _LT_TRY_DLOPEN_SELF( - lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, - lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) - ]) - - if test "x$lt_cv_dlopen_self" = xyes; then - wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" - AC_CACHE_CHECK([whether a statically linked program can dlopen itself], - lt_cv_dlopen_self_static, [dnl - _LT_TRY_DLOPEN_SELF( - lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, - lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) - ]) - fi - - CPPFLAGS="$save_CPPFLAGS" - LDFLAGS="$save_LDFLAGS" - LIBS="$save_LIBS" - ;; - esac - - case $lt_cv_dlopen_self in - yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; - *) enable_dlopen_self=unknown ;; - esac - - case $lt_cv_dlopen_self_static in - yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; - *) enable_dlopen_self_static=unknown ;; - esac -fi -_LT_DECL([dlopen_support], [enable_dlopen], [0], - [Whether dlopen is supported]) -_LT_DECL([dlopen_self], [enable_dlopen_self], [0], - [Whether dlopen of programs is supported]) -_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0], - [Whether dlopen of statically linked programs is supported]) -])# LT_SYS_DLOPEN_SELF - -# Old name: -AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) - - -# _LT_COMPILER_C_O([TAGNAME]) -# --------------------------- -# Check to see if options -c and -o are simultaneously supported by compiler. -# This macro does not hard code the compiler like AC_PROG_CC_C_O. -m4_defun([_LT_COMPILER_C_O], -[m4_require([_LT_DECL_SED])dnl -m4_require([_LT_FILEUTILS_DEFAULTS])dnl -m4_require([_LT_TAG_COMPILER])dnl -AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], - [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)], - [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no - $RM -r conftest 2>/dev/null - mkdir conftest - cd conftest - mkdir out - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - - lt_compiler_flag="-o out/conftest2.$ac_objext" - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) - (eval "$lt_compile" 2>out/conftest.err) - ac_status=$? - cat out/conftest.err >&AS_MESSAGE_LOG_FD - echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD - if (exit $ac_status) && test -s out/conftest2.$ac_objext - then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp - $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 - if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then - _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes - fi - fi - chmod u+w . 2>&AS_MESSAGE_LOG_FD - $RM conftest* - # SGI C++ compiler will create directory out/ii_files/ for - # template instantiation - test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files - $RM out/* && rmdir out - cd .. - $RM -r conftest - $RM conftest* -]) -_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1], - [Does compiler simultaneously support -c and -o options?]) -])# _LT_COMPILER_C_O - - -# _LT_COMPILER_FILE_LOCKS([TAGNAME]) -# ---------------------------------- -# Check to see if we can do hard links to lock some files if needed -m4_defun([_LT_COMPILER_FILE_LOCKS], -[m4_require([_LT_ENABLE_LOCK])dnl -m4_require([_LT_FILEUTILS_DEFAULTS])dnl -_LT_COMPILER_C_O([$1]) - -hard_links="nottested" -if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then - # do not overwrite the value of need_locks provided by the user - AC_MSG_CHECKING([if we can lock with hard links]) - hard_links=yes - $RM conftest* - ln conftest.a conftest.b 2>/dev/null && hard_links=no - touch conftest.a - ln conftest.a conftest.b 2>&5 || hard_links=no - ln conftest.a conftest.b 2>/dev/null && hard_links=no - AC_MSG_RESULT([$hard_links]) - if test "$hard_links" = no; then - AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe]) - need_locks=warn - fi -else - need_locks=no -fi -_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?]) -])# _LT_COMPILER_FILE_LOCKS - - -# _LT_CHECK_OBJDIR -# ---------------- -m4_defun([_LT_CHECK_OBJDIR], -[AC_CACHE_CHECK([for objdir], [lt_cv_objdir], -[rm -f .libs 2>/dev/null -mkdir .libs 2>/dev/null -if test -d .libs; then - lt_cv_objdir=.libs -else - # MS-DOS does not allow filenames that begin with a dot. - lt_cv_objdir=_libs -fi -rmdir .libs 2>/dev/null]) -objdir=$lt_cv_objdir -_LT_DECL([], [objdir], [0], - [The name of the directory that contains temporary libtool files])dnl -m4_pattern_allow([LT_OBJDIR])dnl -AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/", - [Define to the sub-directory in which libtool stores uninstalled libraries.]) -])# _LT_CHECK_OBJDIR - - -# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME]) -# -------------------------------------- -# Check hardcoding attributes. -m4_defun([_LT_LINKER_HARDCODE_LIBPATH], -[AC_MSG_CHECKING([how to hardcode library paths into programs]) -_LT_TAGVAR(hardcode_action, $1)= -if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || - test -n "$_LT_TAGVAR(runpath_var, $1)" || - test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then - - # We can hardcode non-existent directories. - if test "$_LT_TAGVAR(hardcode_direct, $1)" != no && - # If the only mechanism to avoid hardcoding is shlibpath_var, we - # have to relink, otherwise we might link with an installed library - # when we should be linking with a yet-to-be-installed one - ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no && - test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then - # Linking always hardcodes the temporary library directory. - _LT_TAGVAR(hardcode_action, $1)=relink - else - # We can link without hardcoding, and we can hardcode nonexisting dirs. - _LT_TAGVAR(hardcode_action, $1)=immediate - fi -else - # We cannot hardcode anything, or else we can only hardcode existing - # directories. - _LT_TAGVAR(hardcode_action, $1)=unsupported -fi -AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) - -if test "$_LT_TAGVAR(hardcode_action, $1)" = relink || - test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then - # Fast installation is not supported - enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then - # Fast installation is not necessary - enable_fast_install=needless -fi -_LT_TAGDECL([], [hardcode_action], [0], - [How to hardcode a shared library path into an executable]) -])# _LT_LINKER_HARDCODE_LIBPATH - - -# _LT_CMD_STRIPLIB -# ---------------- -m4_defun([_LT_CMD_STRIPLIB], -[m4_require([_LT_DECL_EGREP]) -striplib= -old_striplib= -AC_MSG_CHECKING([whether stripping libraries is possible]) -if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then - test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" - test -z "$striplib" && striplib="$STRIP --strip-unneeded" - AC_MSG_RESULT([yes]) -else -# FIXME - insert some real tests, host_os isn't really good enough - case $host_os in - darwin*) - if test -n "$STRIP" ; then - striplib="$STRIP -x" - old_striplib="$STRIP -S" - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - fi - ;; - *) - AC_MSG_RESULT([no]) - ;; - esac -fi -_LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) -_LT_DECL([], [striplib], [1]) -])# _LT_CMD_STRIPLIB - - -# _LT_SYS_DYNAMIC_LINKER([TAG]) -# ----------------------------- -# PORTME Fill in your ld.so characteristics -m4_defun([_LT_SYS_DYNAMIC_LINKER], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -m4_require([_LT_DECL_EGREP])dnl -m4_require([_LT_FILEUTILS_DEFAULTS])dnl -m4_require([_LT_DECL_OBJDUMP])dnl -m4_require([_LT_DECL_SED])dnl -AC_MSG_CHECKING([dynamic linker characteristics]) -m4_if([$1], - [], [ -if test "$GCC" = yes; then - case $host_os in - darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; - *) lt_awk_arg="/^libraries:/" ;; - esac - lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"` - if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then - # if the path contains ";" then we assume it to be the separator - # otherwise default to the standard path separator (i.e. ":") - it is - # assumed that no part of a normal pathname contains ";" but that should - # okay in the real world where ";" in dirpaths is itself problematic. - lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'` - else - lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` - fi - # Ok, now we have the path, separated by spaces, we can step through it - # and add multilib dir if necessary. - lt_tmp_lt_search_path_spec= - lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` - for lt_sys_path in $lt_search_path_spec; do - if test -d "$lt_sys_path/$lt_multi_os_dir"; then - lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir" - else - test -d "$lt_sys_path" && \ - lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" - fi - done - lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk ' -BEGIN {RS=" "; FS="/|\n";} { - lt_foo=""; - lt_count=0; - for (lt_i = NF; lt_i > 0; lt_i--) { - if ($lt_i != "" && $lt_i != ".") { - if ($lt_i == "..") { - lt_count++; - } else { - if (lt_count == 0) { - lt_foo="/" $lt_i lt_foo; - } else { - lt_count--; - } - } - } - } - if (lt_foo != "") { lt_freq[[lt_foo]]++; } - if (lt_freq[[lt_foo]] == 1) { print lt_foo; } -}'` - sys_lib_search_path_spec=`$ECHO $lt_search_path_spec` -else - sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" -fi]) -library_names_spec= -libname_spec='lib$name' -soname_spec= -shrext_cmds=".so" -postinstall_cmds= -postuninstall_cmds= -finish_cmds= -finish_eval= -shlibpath_var= -shlibpath_overrides_runpath=unknown -version_type=none -dynamic_linker="$host_os ld.so" -sys_lib_dlsearch_path_spec="/lib /usr/lib" -need_lib_prefix=unknown -hardcode_into_libs=no - -# when you set need_version to no, make sure it does not cause -set_version -# flags to be left without arguments -need_version=unknown - -case $host_os in -aix3*) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' - shlibpath_var=LIBPATH - - # AIX 3 has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}${shared_ext}$major' - ;; - -aix[[4-9]]*) - version_type=linux - need_lib_prefix=no - need_version=no - hardcode_into_libs=yes - if test "$host_cpu" = ia64; then - # AIX 5 supports IA64 - library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' - shlibpath_var=LD_LIBRARY_PATH - else - # With GCC up to 2.95.x, collect2 would create an import file - # for dependence libraries. The import file would start with - # the line `#! .'. This would cause the generated library to - # depend on `.', always an invalid library. This was fixed in - # development snapshots of GCC prior to 3.0. - case $host_os in - aix4 | aix4.[[01]] | aix4.[[01]].*) - if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' - echo ' yes ' - echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then - : - else - can_build_shared=no - fi - ;; - esac - # AIX (on Power*) has no versioning support, so currently we can not hardcode correct - # soname into executable. Probably we can add versioning support to - # collect2, so additional links can be useful in future. - if test "$aix_use_runtimelinking" = yes; then - # If using run time linking (on AIX 4.2 or later) use lib<name>.so - # instead of lib<name>.a to let people know that these are not - # typical AIX shared libraries. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - else - # We preserve .a as extension for shared libraries through AIX4.2 - # and later when we are not doing run time linking. - library_names_spec='${libname}${release}.a $libname.a' - soname_spec='${libname}${release}${shared_ext}$major' - fi - shlibpath_var=LIBPATH - fi - ;; - -amigaos*) - case $host_cpu in - powerpc) - # Since July 2007 AmigaOS4 officially supports .so libraries. - # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - ;; - m68k) - library_names_spec='$libname.ixlibrary $libname.a' - # Create ${libname}_ixlibrary.a entries in /sys/libs. - finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' - ;; - esac - ;; - -beos*) - library_names_spec='${libname}${shared_ext}' - dynamic_linker="$host_os ld.so" - shlibpath_var=LIBRARY_PATH - ;; - -bsdi[[45]]*) - version_type=linux - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" - sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" - # the default ld.so.conf also contains /usr/contrib/lib and - # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow - # libtool to hard-code these into programs - ;; - -cygwin* | mingw* | pw32* | cegcc*) - version_type=windows - shrext_cmds=".dll" - need_version=no - need_lib_prefix=no - - case $GCC,$host_os in - yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*) - library_names_spec='$libname.dll.a' - # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \${file}`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog $dir/$dlname \$dldir/$dlname~ - chmod a+x \$dldir/$dlname~ - if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then - eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; - fi' - postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $RM \$dlpath' - shlibpath_overrides_runpath=yes - - case $host_os in - cygwin*) - # Cygwin DLLs use 'cyg' prefix rather than 'lib' - soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' - sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" - ;; - mingw* | cegcc*) - # MinGW DLLs use traditional 'lib' prefix - soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' - sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` - if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then - # It is most probably a Windows format PATH printed by - # mingw gcc, but we are running on Cygwin. Gcc prints its search - # path with ; separators, and with drive letters. We can handle the - # drive letters (cygwin fileutils understands them), so leave them, - # especially as we might pass files found there to a mingw objdump, - # which wouldn't understand a cygwinified path. Ahh. - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` - else - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` - fi - ;; - pw32*) - # pw32 DLLs use 'pw' prefix rather than 'lib' - library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' - ;; - esac - ;; - - *) - library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib' - ;; - esac - dynamic_linker='Win32 ld.exe' - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - ;; - -darwin* | rhapsody*) - dynamic_linker="$host_os dyld" - version_type=darwin - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' - soname_spec='${libname}${release}${major}$shared_ext' - shlibpath_overrides_runpath=yes - shlibpath_var=DYLD_LIBRARY_PATH - shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' -m4_if([$1], [],[ - sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) - sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' - ;; - -dgux*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -freebsd1*) - dynamic_linker=no - ;; - -freebsd* | dragonfly*) - # DragonFly does not have aout. When/if they implement a new - # versioning mechanism, adjust this. - if test -x /usr/bin/objformat; then - objformat=`/usr/bin/objformat` - else - case $host_os in - freebsd[[123]]*) objformat=aout ;; - *) objformat=elf ;; - esac - fi - version_type=freebsd-$objformat - case $version_type in - freebsd-elf*) - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' - need_version=no - need_lib_prefix=no - ;; - freebsd-*) - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' - need_version=yes - ;; - esac - shlibpath_var=LD_LIBRARY_PATH - case $host_os in - freebsd2*) - shlibpath_overrides_runpath=yes - ;; - freebsd3.[[01]]* | freebsdelf3.[[01]]*) - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ - freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - *) # from 4.6 on, and DragonFly - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - esac - ;; - -gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - hardcode_into_libs=yes - ;; - -hpux9* | hpux10* | hpux11*) - # Give a soname corresponding to the major version so that dld.sl refuses to - # link against other versions. - version_type=sunos - need_lib_prefix=no - need_version=no - case $host_cpu in - ia64*) - shrext_cmds='.so' - hardcode_into_libs=yes - dynamic_linker="$host_os dld.so" - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - if test "X$HPUX_IA64_MODE" = X32; then - sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" - else - sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" - fi - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - ;; - hppa*64*) - shrext_cmds='.sl' - hardcode_into_libs=yes - dynamic_linker="$host_os dld.sl" - shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH - shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - ;; - *) - shrext_cmds='.sl' - dynamic_linker="$host_os dld.sl" - shlibpath_var=SHLIB_PATH - shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - ;; - esac - # HP-UX runs *really* slowly unless shared libraries are mode 555. - postinstall_cmds='chmod 555 $lib' - ;; - -interix[[3-9]]*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - nonstopux*) version_type=nonstopux ;; - *) - if test "$lt_cv_prog_gnu_ld" = yes; then - version_type=linux - else - version_type=irix - fi ;; - esac - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' - case $host_os in - irix5* | nonstopux*) - libsuff= shlibsuff= - ;; - *) - case $LD in # libtool.m4 will add one of these switches to LD - *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") - libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") - libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") - libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; - esac - ;; - esac - shlibpath_var=LD_LIBRARY${shlibsuff}_PATH - shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" - hardcode_into_libs=yes - ;; - -# No shared lib support for Linux oldld, aout, or coff. -linux*oldld* | linux*aout* | linux*coff*) - dynamic_linker=no - ;; - -# This must be Linux ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - # Some binutils ld are patched to set DT_RUNPATH - save_LDFLAGS=$LDFLAGS - save_libdir=$libdir - eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \ - LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\"" - AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], - [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null], - [shlibpath_overrides_runpath=yes])]) - LDFLAGS=$save_LDFLAGS - libdir=$save_libdir - - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - # Append ld.so.conf contents to the search path - if test -f /etc/ld.so.conf; then - lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` - sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" - fi - - # We used to test for /lib/ld.so.1 and disable shared libraries on - # powerpc, because MkLinux only supported shared libraries with the - # GNU dynamic linker. Since this was broken with cross compilers, - # most powerpc-linux boxes support dynamic linking these days and - # people can always --disable-shared, the test was removed, and we - # assume the GNU/Linux dynamic linker is in use. - dynamic_linker='GNU/Linux ld.so' - ;; - -netbsdelf*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='NetBSD ld.elf_so' - ;; - -netbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - dynamic_linker='NetBSD (a.out) ld.so' - else - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - dynamic_linker='NetBSD ld.elf_so' - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - -newsos6) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -*nto* | *qnx*) - version_type=qnx - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='ldqnx.so' - ;; - -openbsd*) - version_type=sunos - sys_lib_dlsearch_path_spec="/usr/lib" - need_lib_prefix=no - # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. - case $host_os in - openbsd3.3 | openbsd3.3.*) need_version=yes ;; - *) need_version=no ;; - esac - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - case $host_os in - openbsd2.[[89]] | openbsd2.[[89]].*) - shlibpath_overrides_runpath=no - ;; - *) - shlibpath_overrides_runpath=yes - ;; - esac - else - shlibpath_overrides_runpath=yes - fi - ;; - -os2*) - libname_spec='$name' - shrext_cmds=".dll" - need_lib_prefix=no - library_names_spec='$libname${shared_ext} $libname.a' - dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH - ;; - -osf3* | osf4* | osf5*) - version_type=osf - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" - ;; - -rdos*) - dynamic_linker=no - ;; - -solaris*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - # ldd complains unless libraries are executable - postinstall_cmds='chmod +x $lib' - ;; - -sunos4*) - version_type=sunos - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then - need_lib_prefix=no - fi - need_version=yes - ;; - -sysv4 | sysv4.3*) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - case $host_vendor in - sni) - shlibpath_overrides_runpath=no - need_lib_prefix=no - runpath_var=LD_RUN_PATH - ;; - siemens) - need_lib_prefix=no - ;; - motorola) - need_lib_prefix=no - need_version=no - shlibpath_overrides_runpath=no - sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' - ;; - esac - ;; - -sysv4*MP*) - if test -d /usr/nec ;then - version_type=linux - library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' - soname_spec='$libname${shared_ext}.$major' - shlibpath_var=LD_LIBRARY_PATH - fi - ;; - -sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - version_type=freebsd-elf - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - if test "$with_gnu_ld" = yes; then - sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' - else - sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' - case $host_os in - sco3.2v5*) - sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" - ;; - esac - fi - sys_lib_dlsearch_path_spec='/usr/lib' - ;; - -tpf*) - # TPF is a cross-target only. Preferred cross-host = GNU/Linux. - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - -uts4*) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -*) - dynamic_linker=no - ;; -esac -AC_MSG_RESULT([$dynamic_linker]) -test "$dynamic_linker" = no && can_build_shared=no - -variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$GCC" = yes; then - variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -fi - -if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then - sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" -fi -if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then - sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" -fi - -_LT_DECL([], [variables_saved_for_relink], [1], - [Variables whose values should be saved in libtool wrapper scripts and - restored at link time]) -_LT_DECL([], [need_lib_prefix], [0], - [Do we need the "lib" prefix for modules?]) -_LT_DECL([], [need_version], [0], [Do we need a version for libraries?]) -_LT_DECL([], [version_type], [0], [Library versioning type]) -_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable]) -_LT_DECL([], [shlibpath_var], [0],[Shared library path variable]) -_LT_DECL([], [shlibpath_overrides_runpath], [0], - [Is shlibpath searched before the hard-coded library search path?]) -_LT_DECL([], [libname_spec], [1], [Format of library name prefix]) -_LT_DECL([], [library_names_spec], [1], - [[List of archive names. First name is the real one, the rest are links. - The last name is the one that the linker finds with -lNAME]]) -_LT_DECL([], [soname_spec], [1], - [[The coded name of the library, if different from the real name]]) -_LT_DECL([], [postinstall_cmds], [2], - [Command to use after installation of a shared archive]) -_LT_DECL([], [postuninstall_cmds], [2], - [Command to use after uninstallation of a shared archive]) -_LT_DECL([], [finish_cmds], [2], - [Commands used to finish a libtool library installation in a directory]) -_LT_DECL([], [finish_eval], [1], - [[As "finish_cmds", except a single script fragment to be evaled but - not shown]]) -_LT_DECL([], [hardcode_into_libs], [0], - [Whether we should hardcode library paths into libraries]) -_LT_DECL([], [sys_lib_search_path_spec], [2], - [Compile-time system search path for libraries]) -_LT_DECL([], [sys_lib_dlsearch_path_spec], [2], - [Run-time system search path for libraries]) -])# _LT_SYS_DYNAMIC_LINKER - - -# _LT_PATH_TOOL_PREFIX(TOOL) -# -------------------------- -# find a file program which can recognize shared library -AC_DEFUN([_LT_PATH_TOOL_PREFIX], -[m4_require([_LT_DECL_EGREP])dnl -AC_MSG_CHECKING([for $1]) -AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, -[case $MAGIC_CMD in -[[\\/*] | ?:[\\/]*]) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. - ;; -*) - lt_save_MAGIC_CMD="$MAGIC_CMD" - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR -dnl $ac_dummy forces splitting on constant user-supplied paths. -dnl POSIX.2 word splitting is done only on the output of word expansions, -dnl not every word. This closes a longstanding sh security hole. - ac_dummy="m4_if([$2], , $PATH, [$2])" - for ac_dir in $ac_dummy; do - IFS="$lt_save_ifs" - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$1; then - lt_cv_path_MAGIC_CMD="$ac_dir/$1" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - $EGREP "$file_magic_regex" > /dev/null; then - : - else - cat <<_LT_EOF 1>&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -_LT_EOF - fi ;; - esac - fi - break - fi - done - IFS="$lt_save_ifs" - MAGIC_CMD="$lt_save_MAGIC_CMD" - ;; -esac]) -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -if test -n "$MAGIC_CMD"; then - AC_MSG_RESULT($MAGIC_CMD) -else - AC_MSG_RESULT(no) -fi -_LT_DECL([], [MAGIC_CMD], [0], - [Used to examine libraries when file_magic_cmd begins with "file"])dnl -])# _LT_PATH_TOOL_PREFIX - -# Old name: -AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) - - -# _LT_PATH_MAGIC -# -------------- -# find a file program which can recognize a shared library -m4_defun([_LT_PATH_MAGIC], -[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) -if test -z "$lt_cv_path_MAGIC_CMD"; then - if test -n "$ac_tool_prefix"; then - _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) - else - MAGIC_CMD=: - fi -fi -])# _LT_PATH_MAGIC - - -# LT_PATH_LD -# ---------- -# find the pathname to the GNU or non-GNU linker -AC_DEFUN([LT_PATH_LD], -[AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -m4_require([_LT_DECL_SED])dnl -m4_require([_LT_DECL_EGREP])dnl - -AC_ARG_WITH([gnu-ld], - [AS_HELP_STRING([--with-gnu-ld], - [assume the C compiler uses GNU ld @<:@default=no@:>@])], - [test "$withval" = no || with_gnu_ld=yes], - [with_gnu_ld=no])dnl - -ac_prog=ld -if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - AC_MSG_CHECKING([for ld used by $CC]) - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [[\\/]]* | ?:[[\\/]]*) - re_direlt='/[[^/]][[^/]]*/\.\./' - # Canonicalize the pathname of ld - ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` - while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do - ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - AC_MSG_CHECKING([for GNU ld]) -else - AC_MSG_CHECKING([for non-GNU ld]) -fi -AC_CACHE_VAL(lt_cv_path_LD, -[if test -z "$LD"; then - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS="$lt_save_ifs" - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some variants of GNU ld only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in - *GNU* | *'with BFD'*) - test "$with_gnu_ld" != no && break - ;; - *) - test "$with_gnu_ld" != yes && break - ;; - esac - fi - done - IFS="$lt_save_ifs" -else - lt_cv_path_LD="$LD" # Let the user override the test with a path. -fi]) -LD="$lt_cv_path_LD" -if test -n "$LD"; then - AC_MSG_RESULT($LD) -else - AC_MSG_RESULT(no) -fi -test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) -_LT_PATH_LD_GNU -AC_SUBST([LD]) - -_LT_TAGDECL([], [LD], [1], [The linker used to build libraries]) -])# LT_PATH_LD - -# Old names: -AU_ALIAS([AM_PROG_LD], [LT_PATH_LD]) -AU_ALIAS([AC_PROG_LD], [LT_PATH_LD]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AM_PROG_LD], []) -dnl AC_DEFUN([AC_PROG_LD], []) - - -# _LT_PATH_LD_GNU -#- -------------- -m4_defun([_LT_PATH_LD_GNU], -[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, -[# I'd rather use --version here, but apparently some GNU lds only accept -v. -case `$LD -v 2>&1 </dev/null` in -*GNU* | *'with BFD'*) - lt_cv_prog_gnu_ld=yes - ;; -*) - lt_cv_prog_gnu_ld=no - ;; -esac]) -with_gnu_ld=$lt_cv_prog_gnu_ld -])# _LT_PATH_LD_GNU - - -# _LT_CMD_RELOAD -# -------------- -# find reload flag for linker -# -- PORTME Some linkers may need a different reload flag. -m4_defun([_LT_CMD_RELOAD], -[AC_CACHE_CHECK([for $LD option to reload object files], - lt_cv_ld_reload_flag, - [lt_cv_ld_reload_flag='-r']) -reload_flag=$lt_cv_ld_reload_flag -case $reload_flag in -"" | " "*) ;; -*) reload_flag=" $reload_flag" ;; -esac -reload_cmds='$LD$reload_flag -o $output$reload_objs' -case $host_os in - darwin*) - if test "$GCC" = yes; then - reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs' - else - reload_cmds='$LD$reload_flag -o $output$reload_objs' - fi - ;; -esac -_LT_DECL([], [reload_flag], [1], [How to create reloadable object files])dnl -_LT_DECL([], [reload_cmds], [2])dnl -])# _LT_CMD_RELOAD - - -# _LT_CHECK_MAGIC_METHOD -# ---------------------- -# how to check for library dependencies -# -- PORTME fill in with the dynamic library characteristics -m4_defun([_LT_CHECK_MAGIC_METHOD], -[m4_require([_LT_DECL_EGREP]) -m4_require([_LT_DECL_OBJDUMP]) -AC_CACHE_CHECK([how to recognize dependent libraries], -lt_cv_deplibs_check_method, -[lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_deplibs_check_method='unknown' -# Need to set the preceding variable on all platforms that support -# interlibrary dependencies. -# 'none' -- dependencies not supported. -# `unknown' -- same as none, but documents that we really don't know. -# 'pass_all' -- all dependencies passed with no checks. -# 'test_compile' -- check by making test program. -# 'file_magic [[regex]]' -- check by looking for files in library path -# which responds to the $file_magic_cmd with a given extended regex. -# If you have `file' or equivalent on your system and you're not sure -# whether `pass_all' will *always* work, you probably want this one. - -case $host_os in -aix[[4-9]]*) - lt_cv_deplibs_check_method=pass_all - ;; - -beos*) - lt_cv_deplibs_check_method=pass_all - ;; - -bsdi[[45]]*) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' - lt_cv_file_magic_cmd='/usr/bin/file -L' - lt_cv_file_magic_test_file=/shlib/libc.so - ;; - -cygwin*) - # func_win32_libid is a shell function defined in ltmain.sh - lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' - lt_cv_file_magic_cmd='func_win32_libid' - ;; - -mingw* | pw32*) - # Base MSYS/MinGW do not provide the 'file' command needed by - # func_win32_libid shell function, so use a weaker test based on 'objdump', - # unless we find 'file', for example because we are cross-compiling. - if ( file / ) >/dev/null 2>&1; then - lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' - lt_cv_file_magic_cmd='func_win32_libid' - else - lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' - lt_cv_file_magic_cmd='$OBJDUMP -f' - fi - ;; - -cegcc) - # use the weaker test based on 'objdump'. See mingw*. - lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' - lt_cv_file_magic_cmd='$OBJDUMP -f' - ;; - -darwin* | rhapsody*) - lt_cv_deplibs_check_method=pass_all - ;; - -freebsd* | dragonfly*) - if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then - case $host_cpu in - i*86 ) - # Not sure whether the presence of OpenBSD here was a mistake. - # Let's accept both of them until this is cleared up. - lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - ;; - esac - else - lt_cv_deplibs_check_method=pass_all - fi - ;; - -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -hpux10.20* | hpux11*) - lt_cv_file_magic_cmd=/usr/bin/file - case $host_cpu in - ia64*) - lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' - lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so - ;; - hppa*64*) - [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]'] - lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl - ;; - *) - lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library' - lt_cv_file_magic_test_file=/usr/lib/libc.sl - ;; - esac - ;; - -interix[[3-9]]*) - # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' - ;; - -irix5* | irix6* | nonstopux*) - case $LD in - *-32|*"-32 ") libmagic=32-bit;; - *-n32|*"-n32 ") libmagic=N32;; - *-64|*"-64 ") libmagic=64-bit;; - *) libmagic=never-match;; - esac - lt_cv_deplibs_check_method=pass_all - ;; - -# This must be Linux ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu) - lt_cv_deplibs_check_method=pass_all - ;; - -netbsd* | netbsdelf*-gnu) - if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' - else - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' - fi - ;; - -newos6*) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libnls.so - ;; - -*nto* | *qnx*) - lt_cv_deplibs_check_method=pass_all - ;; - -openbsd*) - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' - else - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' - fi - ;; - -osf3* | osf4* | osf5*) - lt_cv_deplibs_check_method=pass_all - ;; - -rdos*) - lt_cv_deplibs_check_method=pass_all - ;; - -solaris*) - lt_cv_deplibs_check_method=pass_all - ;; - -sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - lt_cv_deplibs_check_method=pass_all - ;; - -sysv4 | sysv4.3*) - case $host_vendor in - motorola) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` - ;; - ncr) - lt_cv_deplibs_check_method=pass_all - ;; - sequent) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' - ;; - sni) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" - lt_cv_file_magic_test_file=/lib/libc.so - ;; - siemens) - lt_cv_deplibs_check_method=pass_all - ;; - pc) - lt_cv_deplibs_check_method=pass_all - ;; - esac - ;; - -tpf*) - lt_cv_deplibs_check_method=pass_all - ;; -esac -]) -file_magic_cmd=$lt_cv_file_magic_cmd -deplibs_check_method=$lt_cv_deplibs_check_method -test -z "$deplibs_check_method" && deplibs_check_method=unknown - -_LT_DECL([], [deplibs_check_method], [1], - [Method to check whether dependent libraries are shared objects]) -_LT_DECL([], [file_magic_cmd], [1], - [Command to use when deplibs_check_method == "file_magic"]) -])# _LT_CHECK_MAGIC_METHOD - - -# LT_PATH_NM -# ---------- -# find the pathname to a BSD- or MS-compatible name lister -AC_DEFUN([LT_PATH_NM], -[AC_REQUIRE([AC_PROG_CC])dnl -AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM, -[if test -n "$NM"; then - # Let the user override the test. - lt_cv_path_NM="$NM" -else - lt_nm_to_check="${ac_tool_prefix}nm" - if test -n "$ac_tool_prefix" && test "$build" = "$host"; then - lt_nm_to_check="$lt_nm_to_check nm" - fi - for lt_tmp_nm in $lt_nm_to_check; do - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do - IFS="$lt_save_ifs" - test -z "$ac_dir" && ac_dir=. - tmp_nm="$ac_dir/$lt_tmp_nm" - if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - # Tru64's nm complains that /dev/null is an invalid object file - case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in - */dev/null* | *'Invalid file or object type'*) - lt_cv_path_NM="$tmp_nm -B" - break - ;; - *) - case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in - */dev/null*) - lt_cv_path_NM="$tmp_nm -p" - break - ;; - *) - lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - ;; - esac - ;; - esac - fi - done - IFS="$lt_save_ifs" - done - : ${lt_cv_path_NM=no} -fi]) -if test "$lt_cv_path_NM" != "no"; then - NM="$lt_cv_path_NM" -else - # Didn't find any BSD compatible name lister, look for dumpbin. - AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :) - AC_SUBST([DUMPBIN]) - if test "$DUMPBIN" != ":"; then - NM="$DUMPBIN" - fi -fi -test -z "$NM" && NM=nm -AC_SUBST([NM]) -_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl - -AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface], - [lt_cv_nm_interface="BSD nm" - echo "int some_variable = 0;" > conftest.$ac_ext - (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD) - (eval "$ac_compile" 2>conftest.err) - cat conftest.err >&AS_MESSAGE_LOG_FD - (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD) - (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) - cat conftest.err >&AS_MESSAGE_LOG_FD - (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD) - cat conftest.out >&AS_MESSAGE_LOG_FD - if $GREP 'External.*some_variable' conftest.out > /dev/null; then - lt_cv_nm_interface="MS dumpbin" - fi - rm -f conftest*]) -])# LT_PATH_NM - -# Old names: -AU_ALIAS([AM_PROG_NM], [LT_PATH_NM]) -AU_ALIAS([AC_PROG_NM], [LT_PATH_NM]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AM_PROG_NM], []) -dnl AC_DEFUN([AC_PROG_NM], []) - - -# LT_LIB_M -# -------- -# check for math library -AC_DEFUN([LT_LIB_M], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -LIBM= -case $host in -*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*) - # These system don't have libm, or don't need it - ;; -*-ncr-sysv4.3*) - AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") - AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") - ;; -*) - AC_CHECK_LIB(m, cos, LIBM="-lm") - ;; -esac -AC_SUBST([LIBM]) -])# LT_LIB_M - -# Old name: -AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_CHECK_LIBM], []) - - -# _LT_COMPILER_NO_RTTI([TAGNAME]) -# ------------------------------- -m4_defun([_LT_COMPILER_NO_RTTI], -[m4_require([_LT_TAG_COMPILER])dnl - -_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= - -if test "$GCC" = yes; then - _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' - - _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], - lt_cv_prog_compiler_rtti_exceptions, - [-fno-rtti -fno-exceptions], [], - [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) -fi -_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1], - [Compiler flag to turn off builtin functions]) -])# _LT_COMPILER_NO_RTTI - - -# _LT_CMD_GLOBAL_SYMBOLS -# ---------------------- -m4_defun([_LT_CMD_GLOBAL_SYMBOLS], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([LT_PATH_NM])dnl -AC_REQUIRE([LT_PATH_LD])dnl -m4_require([_LT_DECL_SED])dnl -m4_require([_LT_DECL_EGREP])dnl -m4_require([_LT_TAG_COMPILER])dnl - -# Check for command to grab the raw symbol name followed by C symbol from nm. -AC_MSG_CHECKING([command to parse $NM output from $compiler object]) -AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], -[ -# These are sane defaults that work on at least a few old systems. -# [They come from Ultrix. What could be older than Ultrix?!! ;)] - -# Character class describing NM global symbol codes. -symcode='[[BCDEGRST]]' - -# Regexp to match symbols that can be accessed directly from C. -sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' - -# Define system-specific variables. -case $host_os in -aix*) - symcode='[[BCDT]]' - ;; -cygwin* | mingw* | pw32* | cegcc*) - symcode='[[ABCDGISTW]]' - ;; -hpux*) - if test "$host_cpu" = ia64; then - symcode='[[ABCDEGRST]]' - fi - ;; -irix* | nonstopux*) - symcode='[[BCDEGRST]]' - ;; -osf*) - symcode='[[BCDEGQRST]]' - ;; -solaris*) - symcode='[[BDRT]]' - ;; -sco3.2v5*) - symcode='[[DT]]' - ;; -sysv4.2uw2*) - symcode='[[DT]]' - ;; -sysv5* | sco5v6* | unixware* | OpenUNIX*) - symcode='[[ABDT]]' - ;; -sysv4) - symcode='[[DFNSTU]]' - ;; -esac - -# If we're using GNU nm, then use its standard symbol codes. -case `$NM -V 2>&1` in -*GNU* | *'with BFD'*) - symcode='[[ABCDGIRSTW]]' ;; -esac - -# Transform an extracted symbol line into a proper C declaration. -# Some systems (esp. on ia64) link data and code symbols differently, -# so use this general approach. -lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" - -# Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'" -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'" - -# Handle CRLF in mingw tool chain -opt_cr= -case $build_os in -mingw*) - opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp - ;; -esac - -# Try without a prefix underscore, then with it. -for ac_symprfx in "" "_"; do - - # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. - symxfrm="\\1 $ac_symprfx\\2 \\2" - - # Write the raw and C identifiers. - if test "$lt_cv_nm_interface" = "MS dumpbin"; then - # Fake it for dumpbin and say T for any non-static function - # and D for any global variable. - # Also find C++ and __fastcall symbols from MSVC++, - # which start with @ or ?. - lt_cv_sys_global_symbol_pipe="$AWK ['"\ -" {last_section=section; section=\$ 3};"\ -" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ -" \$ 0!~/External *\|/{next};"\ -" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ -" {if(hide[section]) next};"\ -" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ -" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ -" s[1]~/^[@?]/{print s[1], s[1]; next};"\ -" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ -" ' prfx=^$ac_symprfx]" - else - lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" - fi - - # Check to see that the pipe works correctly. - pipe_works=no - - rm -f conftest* - cat > conftest.$ac_ext <<_LT_EOF -#ifdef __cplusplus -extern "C" { -#endif -char nm_test_var; -void nm_test_func(void); -void nm_test_func(void){} -#ifdef __cplusplus -} -#endif -int main(){nm_test_var='a';nm_test_func();return(0);} -_LT_EOF - - if AC_TRY_EVAL(ac_compile); then - # Now try to grab the symbols. - nlist=conftest.nm - if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then - # Try sorting and uniquifying the output. - if sort "$nlist" | uniq > "$nlist"T; then - mv -f "$nlist"T "$nlist" - else - rm -f "$nlist"T - fi - - # Make sure that we snagged all the symbols we need. - if $GREP ' nm_test_var$' "$nlist" >/dev/null; then - if $GREP ' nm_test_func$' "$nlist" >/dev/null; then - cat <<_LT_EOF > conftest.$ac_ext -#ifdef __cplusplus -extern "C" { -#endif - -_LT_EOF - # Now generate the symbol file. - eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' - - cat <<_LT_EOF >> conftest.$ac_ext - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - void *address; -} -lt__PROGRAM__LTX_preloaded_symbols[[]] = -{ - { "@PROGRAM@", (void *) 0 }, -_LT_EOF - $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext - cat <<\_LT_EOF >> conftest.$ac_ext - {0, (void *) 0} -}; - -/* This works around a problem in FreeBSD linker */ -#ifdef FREEBSD_WORKAROUND -static const void *lt_preloaded_setup() { - return lt__PROGRAM__LTX_preloaded_symbols; -} -#endif - -#ifdef __cplusplus -} -#endif -_LT_EOF - # Now try linking the two files. - mv conftest.$ac_objext conftstm.$ac_objext - lt_save_LIBS="$LIBS" - lt_save_CFLAGS="$CFLAGS" - LIBS="conftstm.$ac_objext" - CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" - if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then - pipe_works=yes - fi - LIBS="$lt_save_LIBS" - CFLAGS="$lt_save_CFLAGS" - else - echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD - fi - else - echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD - fi - else - echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD - fi - else - echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD - cat conftest.$ac_ext >&5 - fi - rm -rf conftest* conftst* - - # Do not use the global_symbol_pipe unless it works. - if test "$pipe_works" = yes; then - break - else - lt_cv_sys_global_symbol_pipe= - fi -done -]) -if test -z "$lt_cv_sys_global_symbol_pipe"; then - lt_cv_sys_global_symbol_to_cdecl= -fi -if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then - AC_MSG_RESULT(failed) -else - AC_MSG_RESULT(ok) -fi - -_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1], - [Take the output of nm and produce a listing of raw symbols and C names]) -_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], - [Transform the output of nm in a proper C declaration]) -_LT_DECL([global_symbol_to_c_name_address], - [lt_cv_sys_global_symbol_to_c_name_address], [1], - [Transform the output of nm in a C name address pair]) -_LT_DECL([global_symbol_to_c_name_address_lib_prefix], - [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1], - [Transform the output of nm in a C name address pair when lib prefix is needed]) -]) # _LT_CMD_GLOBAL_SYMBOLS - - -# _LT_COMPILER_PIC([TAGNAME]) -# --------------------------- -m4_defun([_LT_COMPILER_PIC], -[m4_require([_LT_TAG_COMPILER])dnl -_LT_TAGVAR(lt_prog_compiler_wl, $1)= -_LT_TAGVAR(lt_prog_compiler_pic, $1)= -_LT_TAGVAR(lt_prog_compiler_static, $1)= - -AC_MSG_CHECKING([for $compiler option to produce PIC]) -m4_if([$1], [CXX], [ - # C++ specific cases for pic, static, wl, etc. - if test "$GXX" = yes; then - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - - case $host_os in - aix*) - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - fi - ;; - - amigaos*) - case $host_cpu in - powerpc) - # see comment about AmigaOS4 .so support - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - m68k) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' - ;; - esac - ;; - - beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - mingw* | cygwin* | os2* | pw32* | cegcc*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - # Although the cygwin gcc ignores -fPIC, still need this for old-style - # (--disable-auto-import) libraries - m4_if([$1], [GCJ], [], - [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) - ;; - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' - ;; - *djgpp*) - # DJGPP does not support shared libraries at all - _LT_TAGVAR(lt_prog_compiler_pic, $1)= - ;; - interix[[3-9]]*) - # Interix 3.x gcc -fpic/-fPIC options generate broken code. - # Instead, we relocate shared libraries at runtime. - ;; - sysv4*MP*) - if test -d /usr/nec; then - _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic - fi - ;; - hpux*) - # PIC is the default for 64-bit PA HP-UX, but not for 32-bit - # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag - # sets the default TLS model and affects inlining. - case $host_cpu in - hppa*64*) - ;; - *) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - ;; - *qnx* | *nto*) - # QNX uses GNU C++, but need to define -shared option too, otherwise - # it will coredump. - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' - ;; - *) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - else - case $host_os in - aix[[4-9]]*) - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - else - _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' - fi - ;; - chorus*) - case $cc_basename in - cxch68*) - # Green Hills C++ Compiler - # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" - ;; - esac - ;; - dgux*) - case $cc_basename in - ec++*) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - ;; - ghcx*) - # Green Hills C++ Compiler - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - ;; - *) - ;; - esac - ;; - freebsd* | dragonfly*) - # FreeBSD uses GNU C++ - ;; - hpux9* | hpux10* | hpux11*) - case $cc_basename in - CC*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' - if test "$host_cpu" != ia64; then - _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' - fi - ;; - aCC*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' - case $host_cpu in - hppa*64*|ia64*) - # +Z the default - ;; - *) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' - ;; - esac - ;; - *) - ;; - esac - ;; - interix*) - # This is c89, which is MS Visual C++ (no shared libs) - # Anyone wants to do a port? - ;; - irix5* | irix6* | nonstopux*) - case $cc_basename in - CC*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - # CC pic flag -KPIC is the default. - ;; - *) - ;; - esac - ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) - case $cc_basename in - KCC*) - # KAI C++ Compiler - _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - ecpc* ) - # old Intel C++ for x86_64 which still supported -KPIC. - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - icpc* ) - # Intel C++, used to be incompatible with GCC. - # ICC 10 doesn't accept -KPIC any more. - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - pgCC* | pgcpp*) - # Portland Group C++ compiler - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - cxx*) - # Compaq C++ - # Make sure the PIC flag is empty. It appears that all Alpha - # Linux and Compaq Tru64 Unix objects are PIC. - _LT_TAGVAR(lt_prog_compiler_pic, $1)= - _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - xlc* | xlC*) - # IBM XL 8.0 on PPC - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' - ;; - *) - case `$CC -V 2>&1 | sed 5q` in - *Sun\ C*) - # Sun C++ 5.9 - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' - ;; - esac - ;; - esac - ;; - lynxos*) - ;; - m88k*) - ;; - mvs*) - case $cc_basename in - cxx*) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' - ;; - *) - ;; - esac - ;; - netbsd* | netbsdelf*-gnu) - ;; - *qnx* | *nto*) - # QNX uses GNU C++, but need to define -shared option too, otherwise - # it will coredump. - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' - ;; - osf3* | osf4* | osf5*) - case $cc_basename in - KCC*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' - ;; - RCC*) - # Rational C++ 2.4.1 - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - ;; - cxx*) - # Digital/Compaq C++ - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # Make sure the PIC flag is empty. It appears that all Alpha - # Linux and Compaq Tru64 Unix objects are PIC. - _LT_TAGVAR(lt_prog_compiler_pic, $1)= - _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - *) - ;; - esac - ;; - psos*) - ;; - solaris*) - case $cc_basename in - CC*) - # Sun C++ 4.2, 5.x and Centerline C++ - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' - ;; - gcx*) - # Green Hills C++ Compiler - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' - ;; - *) - ;; - esac - ;; - sunos4*) - case $cc_basename in - CC*) - # Sun C++ 4.x - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - lcc*) - # Lucid - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - ;; - *) - ;; - esac - ;; - sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) - case $cc_basename in - CC*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - esac - ;; - tandem*) - case $cc_basename in - NCC*) - # NonStop-UX NCC 3.20 - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - ;; - *) - ;; - esac - ;; - vxworks*) - ;; - *) - _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - ;; - esac - fi -], -[ - if test "$GCC" = yes; then - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - - case $host_os in - aix*) - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - fi - ;; - - amigaos*) - case $host_cpu in - powerpc) - # see comment about AmigaOS4 .so support - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - m68k) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' - ;; - esac - ;; - - beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - - mingw* | cygwin* | pw32* | os2* | cegcc*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - # Although the cygwin gcc ignores -fPIC, still need this for old-style - # (--disable-auto-import) libraries - m4_if([$1], [GCJ], [], - [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) - ;; - - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' - ;; - - hpux*) - # PIC is the default for 64-bit PA HP-UX, but not for 32-bit - # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag - # sets the default TLS model and affects inlining. - case $host_cpu in - hppa*64*) - # +Z the default - ;; - *) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - ;; - - interix[[3-9]]*) - # Interix 3.x gcc -fpic/-fPIC options generate broken code. - # Instead, we relocate shared libraries at runtime. - ;; - - msdosdjgpp*) - # Just because we use GCC doesn't mean we suddenly get shared libraries - # on systems that don't support them. - _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - enable_shared=no - ;; - - *nto* | *qnx*) - # QNX uses GNU C++, but need to define -shared option too, otherwise - # it will coredump. - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' - ;; - - sysv4*MP*) - if test -d /usr/nec; then - _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic - fi - ;; - - *) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - else - # PORTME Check for flag to pass linker flags through the system compiler. - case $host_os in - aix*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - else - _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' - fi - ;; - - mingw* | cygwin* | pw32* | os2* | cegcc*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - m4_if([$1], [GCJ], [], - [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) - ;; - - hpux9* | hpux10* | hpux11*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but - # not for PA HP-UX. - case $host_cpu in - hppa*64*|ia64*) - # +Z the default - ;; - *) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' - ;; - esac - # Is there a better lt_prog_compiler_static that works with the bundled CC? - _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' - ;; - - irix5* | irix6* | nonstopux*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # PIC (with -KPIC) is the default. - _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - - linux* | k*bsd*-gnu | kopensolaris*-gnu) - case $cc_basename in - # old Intel for x86_64 which still supported -KPIC. - ecc*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - # icc used to be incompatible with GCC. - # ICC 10 doesn't accept -KPIC any more. - icc* | ifort*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - # Lahey Fortran 8.1. - lf95*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared' - _LT_TAGVAR(lt_prog_compiler_static, $1)='--static' - ;; - pgcc* | pgf77* | pgf90* | pgf95*) - # Portland Group compilers (*not* the Pentium gcc compiler, - # which looks to be a dead project) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - ccc*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # All Alpha code is PIC. - _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - xl*) - # IBM XL C 8.0/Fortran 10.1 on PPC - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' - ;; - *) - case `$CC -V 2>&1 | sed 5q` in - *Sun\ C*) - # Sun C 5.9 - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - ;; - *Sun\ F*) - # Sun Fortran 8.3 passes all unrecognized flags to the linker - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - _LT_TAGVAR(lt_prog_compiler_wl, $1)='' - ;; - esac - ;; - esac - ;; - - newsos6) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - *nto* | *qnx*) - # QNX uses GNU C++, but need to define -shared option too, otherwise - # it will coredump. - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' - ;; - - osf3* | osf4* | osf5*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # All OSF/1 code is PIC. - _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - - rdos*) - _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - - solaris*) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - case $cc_basename in - f77* | f90* | f95*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; - *) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; - esac - ;; - - sunos4*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - sysv4 | sysv4.2uw2* | sysv4.3*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - sysv4*MP*) - if test -d /usr/nec ;then - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - fi - ;; - - sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - unicos*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - ;; - - uts4*) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - *) - _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - ;; - esac - fi -]) -case $host_os in - # For platforms which do not support PIC, -DPIC is meaningless: - *djgpp*) - _LT_TAGVAR(lt_prog_compiler_pic, $1)= - ;; - *) - _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])" - ;; -esac -AC_MSG_RESULT([$_LT_TAGVAR(lt_prog_compiler_pic, $1)]) -_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], - [How to pass a linker flag through the compiler]) - -# -# Check to make sure the PIC flag actually works. -# -if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then - _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works], - [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)], - [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [], - [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in - "" | " "*) ;; - *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;; - esac], - [_LT_TAGVAR(lt_prog_compiler_pic, $1)= - _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) -fi -_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1], - [Additional compiler flags for building library objects]) - -# -# Check to make sure the static flag actually works. -# -wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\" -_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], - _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1), - $lt_tmp_static_flag, - [], - [_LT_TAGVAR(lt_prog_compiler_static, $1)=]) -_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1], - [Compiler flag to prevent dynamic linking]) -])# _LT_COMPILER_PIC - - -# _LT_LINKER_SHLIBS([TAGNAME]) -# ---------------------------- -# See if the linker supports building shared libraries. -m4_defun([_LT_LINKER_SHLIBS], -[AC_REQUIRE([LT_PATH_LD])dnl -AC_REQUIRE([LT_PATH_NM])dnl -m4_require([_LT_FILEUTILS_DEFAULTS])dnl -m4_require([_LT_DECL_EGREP])dnl -m4_require([_LT_DECL_SED])dnl -m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl -m4_require([_LT_TAG_COMPILER])dnl -AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) -m4_if([$1], [CXX], [ - _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - case $host_os in - aix[[4-9]]*) - # If we're using GNU nm, then we don't want the "-C" option. - # -C means demangle to AIX nm, but means don't demangle with GNU nm - if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then - _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' - else - _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' - fi - ;; - pw32*) - _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" - ;; - cygwin* | mingw* | cegcc*) - _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' - ;; - linux* | k*bsd*-gnu) - _LT_TAGVAR(link_all_deplibs, $1)=no - ;; - *) - _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - ;; - esac - _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] -], [ - runpath_var= - _LT_TAGVAR(allow_undefined_flag, $1)= - _LT_TAGVAR(always_export_symbols, $1)=no - _LT_TAGVAR(archive_cmds, $1)= - _LT_TAGVAR(archive_expsym_cmds, $1)= - _LT_TAGVAR(compiler_needs_object, $1)=no - _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no - _LT_TAGVAR(export_dynamic_flag_spec, $1)= - _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - _LT_TAGVAR(hardcode_automatic, $1)=no - _LT_TAGVAR(hardcode_direct, $1)=no - _LT_TAGVAR(hardcode_direct_absolute, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= - _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= - _LT_TAGVAR(hardcode_libdir_separator, $1)= - _LT_TAGVAR(hardcode_minus_L, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - _LT_TAGVAR(inherit_rpath, $1)=no - _LT_TAGVAR(link_all_deplibs, $1)=unknown - _LT_TAGVAR(module_cmds, $1)= - _LT_TAGVAR(module_expsym_cmds, $1)= - _LT_TAGVAR(old_archive_from_new_cmds, $1)= - _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)= - _LT_TAGVAR(thread_safe_flag_spec, $1)= - _LT_TAGVAR(whole_archive_flag_spec, $1)= - # include_expsyms should be a list of space-separated symbols to be *always* - # included in the symbol list - _LT_TAGVAR(include_expsyms, $1)= - # exclude_expsyms can be an extended regexp of symbols to exclude - # it will be wrapped by ` (' and `)$', so one must not match beginning or - # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', - # as well as any symbol that contains `d'. - _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] - # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out - # platforms (ab)use it in PIC code, but their linkers get confused if - # the symbol is explicitly referenced. Since portable code cannot - # rely on this symbol name, it's probably fine to never include it in - # preloaded symbol tables. - # Exclude shared library initialization/finalization symbols. -dnl Note also adjust exclude_expsyms for C++ above. - extract_expsyms_cmds= - - case $host_os in - cygwin* | mingw* | pw32* | cegcc*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test "$GCC" != yes; then - with_gnu_ld=no - fi - ;; - interix*) - # we just hope/assume this is gcc and not c89 (= MSVC++) - with_gnu_ld=yes - ;; - openbsd*) - with_gnu_ld=no - ;; - linux* | k*bsd*-gnu) - _LT_TAGVAR(link_all_deplibs, $1)=no - ;; - esac - - _LT_TAGVAR(ld_shlibs, $1)=yes - if test "$with_gnu_ld" = yes; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' - - # Set some defaults for GNU ld with shared library support. These - # are reset later if shared libraries are not supported. Putting them - # here allows them to be overridden if necessary. - runpath_var=LD_RUN_PATH - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then - _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - _LT_TAGVAR(whole_archive_flag_spec, $1)= - fi - supports_anon_versioning=no - case `$LD -v 2>&1` in - *GNU\ gold*) supports_anon_versioning=yes ;; - *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 - *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... - *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... - *\ 2.11.*) ;; # other 2.11 versions - *) supports_anon_versioning=yes ;; - esac - - # See if GNU ld supports shared libraries. - case $host_os in - aix[[3-9]]*) - # On AIX/PPC, the GNU linker is very broken - if test "$host_cpu" != ia64; then - _LT_TAGVAR(ld_shlibs, $1)=no - cat <<_LT_EOF 1>&2 - -*** Warning: the GNU linker, at least up to release 2.9.1, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to modify your PATH -*** so that a non-GNU linker is found, and then restart. - -_LT_EOF - fi - ;; - - amigaos*) - case $host_cpu in - powerpc) - # see comment about AmigaOS4 .so support - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='' - ;; - m68k) - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_minus_L, $1)=yes - ;; - esac - ;; - - beos*) - if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - # Joseph Beckenbach <jrb3@best.com> says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - cygwin* | mingw* | pw32* | cegcc*) - # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, - # as there is no search path for DLLs. - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_TAGVAR(always_export_symbols, $1)=no - _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols' - - if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is; otherwise, prepend... - _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - interix[[3-9]]*) - _LT_TAGVAR(hardcode_direct, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. - # Instead, shared libraries are loaded at an image base (0x10000000 by - # default) and relocated if they conflict, which is a slow very memory - # consuming and fragmenting process. To avoid this, we pick a random, - # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link - # time. Moving up from 0x10000000 also allows more sbrk(2) space. - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - ;; - - gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) - tmp_diet=no - if test "$host_os" = linux-dietlibc; then - case $cc_basename in - diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) - esac - fi - if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ - && test "$tmp_diet" = no - then - tmp_addflag= - tmp_sharedflag='-shared' - case $cc_basename,$host_cpu in - pgcc*) # Portland Group C compiler - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' - tmp_addflag=' $pic_flag' - ;; - pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' - tmp_addflag=' $pic_flag -Mnomain' ;; - ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 - tmp_addflag=' -i_dynamic' ;; - efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 - tmp_addflag=' -i_dynamic -nofor_main' ;; - ifc* | ifort*) # Intel Fortran compiler - tmp_addflag=' -nofor_main' ;; - lf95*) # Lahey Fortran 8.1 - _LT_TAGVAR(whole_archive_flag_spec, $1)= - tmp_sharedflag='--shared' ;; - xl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below) - tmp_sharedflag='-qmkshrobj' - tmp_addflag= ;; - esac - case `$CC -V 2>&1 | sed 5q` in - *Sun\ C*) # Sun C 5.9 - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' - _LT_TAGVAR(compiler_needs_object, $1)=yes - tmp_sharedflag='-G' ;; - *Sun\ F*) # Sun Fortran 8.3 - tmp_sharedflag='-G' ;; - esac - _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - - if test "x$supports_anon_versioning" = xyes; then - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' - fi - - case $cc_basename in - xlf*) - # IBM XL Fortran 10.1 on PPC cannot create shared libs itself - _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= - _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir' - _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib' - if test "x$supports_anon_versioning" = xyes; then - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' - fi - ;; - esac - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - netbsd* | netbsdelf*-gnu) - if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' - wlarc= - else - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - fi - ;; - - solaris*) - if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then - _LT_TAGVAR(ld_shlibs, $1)=no - cat <<_LT_EOF 1>&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -_LT_EOF - elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) - case `$LD -v 2>&1` in - *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) - _LT_TAGVAR(ld_shlibs, $1)=no - cat <<_LT_EOF 1>&2 - -*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not -*** reliably create shared libraries on SCO systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.16.91.0.3 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -_LT_EOF - ;; - *) - # For security reasons, it is highly recommended that you always - # use absolute paths for naming shared libraries, and exclude the - # DT_RUNPATH tag from executables and libraries. But doing so - # requires that you compile everything twice, which is a pain. - if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - - sunos4*) - _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' - wlarc= - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - *) - if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - - if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then - runpath_var= - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= - _LT_TAGVAR(export_dynamic_flag_spec, $1)= - _LT_TAGVAR(whole_archive_flag_spec, $1)= - fi - else - # PORTME fill in a description of your system's linker (not GNU ld) - case $host_os in - aix3*) - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_TAGVAR(always_export_symbols, $1)=yes - _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - _LT_TAGVAR(hardcode_minus_L, $1)=yes - if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - _LT_TAGVAR(hardcode_direct, $1)=unsupported - fi - ;; - - aix[[4-9]]*) - if test "$host_cpu" = ia64; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - exp_sym_flag='-Bexport' - no_entry_flag="" - else - # If we're using GNU nm, then we don't want the "-C" option. - # -C means demangle to AIX nm, but means don't demangle with GNU nm - if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then - _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' - else - _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' - fi - aix_use_runtimelinking=no - - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. - case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) - for ld_flag in $LDFLAGS; do - if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then - aix_use_runtimelinking=yes - break - fi - done - ;; - esac - - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - _LT_TAGVAR(archive_cmds, $1)='' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - _LT_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_TAGVAR(link_all_deplibs, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' - - if test "$GCC" = yes; then - case $host_os in aix4.[[012]]|aix4.[[012]].*) - # We only want to do this on AIX 4.2 and lower, the check - # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && - strings "$collect2name" | $GREP resolve_lib_name >/dev/null - then - # We have reworked collect2 - : - else - # We have old collect2 - _LT_TAGVAR(hardcode_direct, $1)=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - _LT_TAGVAR(hardcode_minus_L, $1)=yes - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)= - fi - ;; - esac - shared_flag='-shared' - if test "$aix_use_runtimelinking" = yes; then - shared_flag="$shared_flag "'${wl}-G' - fi - _LT_TAGVAR(link_all_deplibs, $1)=no - else - # not using gcc - if test "$host_cpu" = ia64; then - # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release - # chokes on -Wl,-G. The following line is correct: - shared_flag='-G' - else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='${wl}-G' - else - shared_flag='${wl}-bM:SRE' - fi - fi - fi - - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' - # It seems that -bexpall does not export symbols beginning with - # underscore (_), so it is better to generate a list of symbols to export. - _LT_TAGVAR(always_export_symbols, $1)=yes - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - _LT_TAGVAR(allow_undefined_flag, $1)='-berok' - # Determine the default libpath from the value encoded in an - # empty executable. - _LT_SYS_MODULE_PATH_AIX - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" - else - if test "$host_cpu" = ia64; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' - _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" - _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" - else - # Determine the default libpath from the value encoded in an - # empty executable. - _LT_SYS_MODULE_PATH_AIX - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' - _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' - # Exported symbols can be pulled into shared objects from archives - _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' - _LT_TAGVAR(archive_cmds_need_lc, $1)=yes - # This is similar to how AIX traditionally builds its shared libraries. - _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' - fi - fi - ;; - - amigaos*) - case $host_cpu in - powerpc) - # see comment about AmigaOS4 .so support - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='' - ;; - m68k) - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_minus_L, $1)=yes - ;; - esac - ;; - - bsdi[[45]]*) - _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic - ;; - - cygwin* | mingw* | pw32* | cegcc*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - # Tell ltmain to make .lib files, not .a files. - libext=lib - # Tell ltmain to make .dll files, not .so files. - shrext_cmds=".dll" - # FIXME: Setting linknames here is a bad hack. - _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' - # FIXME: Should let the user specify the lib program. - _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs' - _LT_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`' - _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - ;; - - darwin* | rhapsody*) - _LT_DARWIN_LINKER_FEATURES($1) - ;; - - dgux*) - _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - freebsd1*) - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - - # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor - # support. Future versions do this automatically, but an explicit c++rt0.o - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2*) - _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_minus_L, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd* | dragonfly*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - hpux9*) - if test "$GCC" = yes; then - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - else - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - fi - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_TAGVAR(hardcode_direct, $1)=yes - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - _LT_TAGVAR(hardcode_minus_L, $1)=yes - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - ;; - - hpux10*) - if test "$GCC" = yes -a "$with_gnu_ld" = no; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' - else - _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' - fi - if test "$with_gnu_ld" = no; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - _LT_TAGVAR(hardcode_minus_L, $1)=yes - fi - ;; - - hpux11*) - if test "$GCC" = yes -a "$with_gnu_ld" = no; then - case $host_cpu in - hppa*64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - ia64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' - ;; - *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' - ;; - esac - else - case $host_cpu in - hppa*64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - ia64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' - ;; - *) - _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' - ;; - esac - fi - if test "$with_gnu_ld" = no; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - - case $host_cpu in - hppa*64*|ia64*) - _LT_TAGVAR(hardcode_direct, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - *) - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - _LT_TAGVAR(hardcode_minus_L, $1)=yes - ;; - esac - fi - ;; - - irix5* | irix6* | nonstopux*) - if test "$GCC" = yes; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - # Try to use the -exported_symbol ld option, if it does not - # work, assume that -exports_file does not work either and - # implicitly export all symbols. - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" - AC_LINK_IFELSE(int foo(void) {}, - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' - ) - LDFLAGS="$save_LDFLAGS" - else - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib' - fi - _LT_TAGVAR(archive_cmds_need_lc, $1)='no' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_TAGVAR(inherit_rpath, $1)=yes - _LT_TAGVAR(link_all_deplibs, $1)=yes - ;; - - netbsd* | netbsdelf*-gnu) - if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out - else - _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF - fi - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - newsos6) - _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - *nto* | *qnx*) - ;; - - openbsd*) - if test -f /usr/libexec/ld.so; then - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - else - case $host_os in - openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) - _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - ;; - *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - ;; - esac - fi - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - os2*) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_minus_L, $1)=yes - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' - _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' - ;; - - osf3*) - if test "$GCC" = yes; then - _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - else - _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' - fi - _LT_TAGVAR(archive_cmds_need_lc, $1)='no' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - ;; - - osf4* | osf5*) # as osf3* with the addition of -msym flag - if test "$GCC" = yes; then - _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - else - _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ - $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp' - - # Both c and cxx compiler support -rpath directly - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' - fi - _LT_TAGVAR(archive_cmds_need_lc, $1)='no' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - ;; - - solaris*) - _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' - if test "$GCC" = yes; then - wlarc='${wl}' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' - else - case `$CC -V 2>&1` in - *"Compilers 5.0"*) - wlarc='' - _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' - ;; - *) - wlarc='${wl}' - _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' - ;; - esac - fi - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - case $host_os in - solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; - *) - # The compiler driver will combine and reorder linker options, - # but understands `-z linker_flag'. GCC discards it without `$wl', - # but is careful enough not to reorder. - # Supported since Solaris 2.6 (maybe 2.5.1?) - if test "$GCC" = yes; then - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' - else - _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' - fi - ;; - esac - _LT_TAGVAR(link_all_deplibs, $1)=yes - ;; - - sunos4*) - if test "x$host_vendor" = xsequent; then - # Use $CC to link under sequent, because it throws in some extra .o - # files that make .init and .fini sections work. - _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' - else - _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' - fi - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_minus_L, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - sysv4) - case $host_vendor in - sni) - _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true??? - ;; - siemens) - ## LD is ld it makes a PLAMLIB - ## CC just makes a GrossModule. - _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' - _LT_TAGVAR(hardcode_direct, $1)=no - ;; - motorola) - _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie - ;; - esac - runpath_var='LD_RUN_PATH' - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - sysv4.3*) - _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' - ;; - - sysv4*MP*) - if test -d /usr/nec; then - _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - _LT_TAGVAR(ld_shlibs, $1)=yes - fi - ;; - - sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) - _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' - _LT_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - runpath_var='LD_RUN_PATH' - - if test "$GCC" = yes; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - else - _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - ;; - - sysv5* | sco3.2v5* | sco5v6*) - # Note: We can NOT use -z defs as we might desire, because we do not - # link with -lc, and that would cause any symbols used from libc to - # always be unresolved, which means just about no library would - # ever link correctly. If we're not using GNU ld we use -z text - # though, which does catch some bad symbols but isn't as heavy-handed - # as -z defs. - _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' - _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' - _LT_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_TAGVAR(link_all_deplibs, $1)=yes - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' - runpath_var='LD_RUN_PATH' - - if test "$GCC" = yes; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - else - _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - ;; - - uts4*) - _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - *) - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - esac - - if test x$host_vendor = xsni; then - case $host in - sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym' - ;; - esac - fi - fi -]) -AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) -test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no - -_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld - -_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl -_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl -_LT_DECL([], [extract_expsyms_cmds], [2], - [The commands to extract the exported symbol list from a shared archive]) - -# -# Do we need to explicitly link libc? -# -case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in -x|xyes) - # Assume -lc should be added - _LT_TAGVAR(archive_cmds_need_lc, $1)=yes - - if test "$enable_shared" = yes && test "$GCC" = yes; then - case $_LT_TAGVAR(archive_cmds, $1) in - *'~'*) - # FIXME: we may have to deal with multi-command sequences. - ;; - '$CC '*) - # Test whether the compiler implicitly links with -lc since on some - # systems, -lgcc has to come before -lc. If gcc already passes -lc - # to ld, don't add -lc before -lgcc. - AC_MSG_CHECKING([whether -lc should be explicitly linked in]) - $RM conftest* - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - - if AC_TRY_EVAL(ac_compile) 2>conftest.err; then - soname=conftest - lib=conftest - libobjs=conftest.$ac_objext - deplibs= - wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) - pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1) - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1) - _LT_TAGVAR(allow_undefined_flag, $1)= - if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) - then - _LT_TAGVAR(archive_cmds_need_lc, $1)=no - else - _LT_TAGVAR(archive_cmds_need_lc, $1)=yes - fi - _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi - $RM conftest* - AC_MSG_RESULT([$_LT_TAGVAR(archive_cmds_need_lc, $1)]) - ;; - esac - fi - ;; -esac - -_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0], - [Whether or not to add -lc for building shared libraries]) -_LT_TAGDECL([allow_libtool_libs_with_static_runtimes], - [enable_shared_with_static_runtimes], [0], - [Whether or not to disallow shared libs when runtime libs are static]) -_LT_TAGDECL([], [export_dynamic_flag_spec], [1], - [Compiler flag to allow reflexive dlopens]) -_LT_TAGDECL([], [whole_archive_flag_spec], [1], - [Compiler flag to generate shared objects directly from archives]) -_LT_TAGDECL([], [compiler_needs_object], [1], - [Whether the compiler copes with passing no objects directly]) -_LT_TAGDECL([], [old_archive_from_new_cmds], [2], - [Create an old-style archive from a shared archive]) -_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2], - [Create a temporary old-style archive to link instead of a shared archive]) -_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive]) -_LT_TAGDECL([], [archive_expsym_cmds], [2]) -_LT_TAGDECL([], [module_cmds], [2], - [Commands used to build a loadable module if different from building - a shared archive.]) -_LT_TAGDECL([], [module_expsym_cmds], [2]) -_LT_TAGDECL([], [with_gnu_ld], [1], - [Whether we are building with GNU ld or not]) -_LT_TAGDECL([], [allow_undefined_flag], [1], - [Flag that allows shared libraries with undefined symbols to be built]) -_LT_TAGDECL([], [no_undefined_flag], [1], - [Flag that enforces no undefined symbols]) -_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1], - [Flag to hardcode $libdir into a binary during linking. - This must work even if $libdir does not exist]) -_LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1], - [[If ld is used when linking, flag to hardcode $libdir into a binary - during linking. This must work even if $libdir does not exist]]) -_LT_TAGDECL([], [hardcode_libdir_separator], [1], - [Whether we need a single "-rpath" flag with a separated argument]) -_LT_TAGDECL([], [hardcode_direct], [0], - [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes - DIR into the resulting binary]) -_LT_TAGDECL([], [hardcode_direct_absolute], [0], - [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes - DIR into the resulting binary and the resulting library dependency is - "absolute", i.e impossible to change by setting ${shlibpath_var} if the - library is relocated]) -_LT_TAGDECL([], [hardcode_minus_L], [0], - [Set to "yes" if using the -LDIR flag during linking hardcodes DIR - into the resulting binary]) -_LT_TAGDECL([], [hardcode_shlibpath_var], [0], - [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR - into the resulting binary]) -_LT_TAGDECL([], [hardcode_automatic], [0], - [Set to "yes" if building a shared library automatically hardcodes DIR - into the library and all subsequent libraries and executables linked - against it]) -_LT_TAGDECL([], [inherit_rpath], [0], - [Set to yes if linker adds runtime paths of dependent libraries - to runtime path list]) -_LT_TAGDECL([], [link_all_deplibs], [0], - [Whether libtool must link a program against all its dependency libraries]) -_LT_TAGDECL([], [fix_srcfile_path], [1], - [Fix the shell variable $srcfile for the compiler]) -_LT_TAGDECL([], [always_export_symbols], [0], - [Set to "yes" if exported symbols are required]) -_LT_TAGDECL([], [export_symbols_cmds], [2], - [The commands to list exported symbols]) -_LT_TAGDECL([], [exclude_expsyms], [1], - [Symbols that should not be listed in the preloaded symbols]) -_LT_TAGDECL([], [include_expsyms], [1], - [Symbols that must always be exported]) -_LT_TAGDECL([], [prelink_cmds], [2], - [Commands necessary for linking programs (against libraries) with templates]) -_LT_TAGDECL([], [file_list_spec], [1], - [Specify filename containing input files]) -dnl FIXME: Not yet implemented -dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1], -dnl [Compiler flag to generate thread safe objects]) -])# _LT_LINKER_SHLIBS - - -# _LT_LANG_C_CONFIG([TAG]) -# ------------------------ -# Ensure that the configuration variables for a C compiler are suitably -# defined. These variables are subsequently used by _LT_CONFIG to write -# the compiler configuration to `libtool'. -m4_defun([_LT_LANG_C_CONFIG], -[m4_require([_LT_DECL_EGREP])dnl -lt_save_CC="$CC" -AC_LANG_PUSH(C) - -# Source file extension for C test sources. -ac_ext=c - -# Object file extension for compiled C test sources. -objext=o -_LT_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="int some_variable = 0;" - -# Code to be used in simple link tests -lt_simple_link_test_code='int main(){return(0);}' - -_LT_TAG_COMPILER -# Save the default compiler, since it gets overwritten when the other -# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. -compiler_DEFAULT=$CC - -# save warnings/boilerplate of simple test code -_LT_COMPILER_BOILERPLATE -_LT_LINKER_BOILERPLATE - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -if test -n "$compiler"; then - _LT_COMPILER_NO_RTTI($1) - _LT_COMPILER_PIC($1) - _LT_COMPILER_C_O($1) - _LT_COMPILER_FILE_LOCKS($1) - _LT_LINKER_SHLIBS($1) - _LT_SYS_DYNAMIC_LINKER($1) - _LT_LINKER_HARDCODE_LIBPATH($1) - LT_SYS_DLOPEN_SELF - _LT_CMD_STRIPLIB - - # Report which library types will actually be built - AC_MSG_CHECKING([if libtool supports shared libraries]) - AC_MSG_RESULT([$can_build_shared]) - - AC_MSG_CHECKING([whether to build shared libraries]) - test "$can_build_shared" = "no" && enable_shared=no - - # On AIX, shared libraries and static libraries use the same namespace, and - # are all built from PIC. - case $host_os in - aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - - aix[[4-9]]*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no - fi - ;; - esac - AC_MSG_RESULT([$enable_shared]) - - AC_MSG_CHECKING([whether to build static libraries]) - # Make sure either enable_shared or enable_static is yes. - test "$enable_shared" = yes || enable_static=yes - AC_MSG_RESULT([$enable_static]) - - _LT_CONFIG($1) -fi -AC_LANG_POP -CC="$lt_save_CC" -])# _LT_LANG_C_CONFIG - - -# _LT_PROG_CXX -# ------------ -# Since AC_PROG_CXX is broken, in that it returns g++ if there is no c++ -# compiler, we have our own version here. -m4_defun([_LT_PROG_CXX], -[ -pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes]) -AC_PROG_CXX -if test -n "$CXX" && ( test "X$CXX" != "Xno" && - ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || - (test "X$CXX" != "Xg++"))) ; then - AC_PROG_CXXCPP -else - _lt_caught_CXX_error=yes -fi -popdef([AC_MSG_ERROR]) -])# _LT_PROG_CXX - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([_LT_PROG_CXX], []) - - -# _LT_LANG_CXX_CONFIG([TAG]) -# -------------------------- -# Ensure that the configuration variables for a C++ compiler are suitably -# defined. These variables are subsequently used by _LT_CONFIG to write -# the compiler configuration to `libtool'. -m4_defun([_LT_LANG_CXX_CONFIG], -[AC_REQUIRE([_LT_PROG_CXX])dnl -m4_require([_LT_FILEUTILS_DEFAULTS])dnl -m4_require([_LT_DECL_EGREP])dnl - -AC_LANG_PUSH(C++) -_LT_TAGVAR(archive_cmds_need_lc, $1)=no -_LT_TAGVAR(allow_undefined_flag, $1)= -_LT_TAGVAR(always_export_symbols, $1)=no -_LT_TAGVAR(archive_expsym_cmds, $1)= -_LT_TAGVAR(compiler_needs_object, $1)=no -_LT_TAGVAR(export_dynamic_flag_spec, $1)= -_LT_TAGVAR(hardcode_direct, $1)=no -_LT_TAGVAR(hardcode_direct_absolute, $1)=no -_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= -_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= -_LT_TAGVAR(hardcode_libdir_separator, $1)= -_LT_TAGVAR(hardcode_minus_L, $1)=no -_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported -_LT_TAGVAR(hardcode_automatic, $1)=no -_LT_TAGVAR(inherit_rpath, $1)=no -_LT_TAGVAR(module_cmds, $1)= -_LT_TAGVAR(module_expsym_cmds, $1)= -_LT_TAGVAR(link_all_deplibs, $1)=unknown -_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds -_LT_TAGVAR(no_undefined_flag, $1)= -_LT_TAGVAR(whole_archive_flag_spec, $1)= -_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no - -# Source file extension for C++ test sources. -ac_ext=cpp - -# Object file extension for compiled C++ test sources. -objext=o -_LT_TAGVAR(objext, $1)=$objext - -# No sense in running all these tests if we already determined that -# the CXX compiler isn't working. Some variables (like enable_shared) -# are currently assumed to apply to all compilers on this platform, -# and will be corrupted by setting them based on a non-working compiler. -if test "$_lt_caught_CXX_error" != yes; then - # Code to be used in simple compile tests - lt_simple_compile_test_code="int some_variable = 0;" - - # Code to be used in simple link tests - lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }' - - # ltmain only uses $CC for tagged configurations so make sure $CC is set. - _LT_TAG_COMPILER - - # save warnings/boilerplate of simple test code - _LT_COMPILER_BOILERPLATE - _LT_LINKER_BOILERPLATE - - # Allow CC to be a program name with arguments. - lt_save_CC=$CC - lt_save_LD=$LD - lt_save_GCC=$GCC - GCC=$GXX - lt_save_with_gnu_ld=$with_gnu_ld - lt_save_path_LD=$lt_cv_path_LD - if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then - lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx - else - $as_unset lt_cv_prog_gnu_ld - fi - if test -n "${lt_cv_path_LDCXX+set}"; then - lt_cv_path_LD=$lt_cv_path_LDCXX - else - $as_unset lt_cv_path_LD - fi - test -z "${LDCXX+set}" || LD=$LDCXX - CC=${CXX-"c++"} - compiler=$CC - _LT_TAGVAR(compiler, $1)=$CC - _LT_CC_BASENAME([$compiler]) - - if test -n "$compiler"; then - # We don't want -fno-exception when compiling C++ code, so set the - # no_builtin_flag separately - if test "$GXX" = yes; then - _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' - else - _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= - fi - - if test "$GXX" = yes; then - # Set up default GNU C++ configuration - - LT_PATH_LD - - # Check if GNU C++ uses GNU ld as the underlying linker, since the - # archiving commands below assume that GNU ld is being used. - if test "$with_gnu_ld" = yes; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - - # If archive_cmds runs LD, not CC, wlarc should be empty - # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to - # investigate it a little bit more. (MM) - wlarc='${wl}' - - # ancient GNU ld didn't support --whole-archive et. al. - if eval "`$CC -print-prog-name=ld` --help 2>&1" | - $GREP 'no-whole-archive' > /dev/null; then - _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - _LT_TAGVAR(whole_archive_flag_spec, $1)= - fi - else - with_gnu_ld=no - wlarc= - - # A generic and very simple default shared library creation - # command for GNU C++ for the case where it uses the native - # linker, instead of GNU ld. If possible, this setting should - # overridden to take advantage of the native linker features on - # the platform it is being used on. - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' - fi - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' - - else - GXX=no - with_gnu_ld=no - wlarc= - fi - - # PORTME: fill in a description of your system's C++ link characteristics - AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) - _LT_TAGVAR(ld_shlibs, $1)=yes - case $host_os in - aix3*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - aix[[4-9]]*) - if test "$host_cpu" = ia64; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - exp_sym_flag='-Bexport' - no_entry_flag="" - else - aix_use_runtimelinking=no - - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. - case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) - for ld_flag in $LDFLAGS; do - case $ld_flag in - *-brtl*) - aix_use_runtimelinking=yes - break - ;; - esac - done - ;; - esac - - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - _LT_TAGVAR(archive_cmds, $1)='' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - _LT_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_TAGVAR(link_all_deplibs, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' - - if test "$GXX" = yes; then - case $host_os in aix4.[[012]]|aix4.[[012]].*) - # We only want to do this on AIX 4.2 and lower, the check - # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && - strings "$collect2name" | $GREP resolve_lib_name >/dev/null - then - # We have reworked collect2 - : - else - # We have old collect2 - _LT_TAGVAR(hardcode_direct, $1)=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - _LT_TAGVAR(hardcode_minus_L, $1)=yes - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)= - fi - esac - shared_flag='-shared' - if test "$aix_use_runtimelinking" = yes; then - shared_flag="$shared_flag "'${wl}-G' - fi - else - # not using gcc - if test "$host_cpu" = ia64; then - # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release - # chokes on -Wl,-G. The following line is correct: - shared_flag='-G' - else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='${wl}-G' - else - shared_flag='${wl}-bM:SRE' - fi - fi - fi - - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' - # It seems that -bexpall does not export symbols beginning with - # underscore (_), so it is better to generate a list of symbols to - # export. - _LT_TAGVAR(always_export_symbols, $1)=yes - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - _LT_TAGVAR(allow_undefined_flag, $1)='-berok' - # Determine the default libpath from the value encoded in an empty - # executable. - _LT_SYS_MODULE_PATH_AIX - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" - else - if test "$host_cpu" = ia64; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' - _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" - _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" - else - # Determine the default libpath from the value encoded in an - # empty executable. - _LT_SYS_MODULE_PATH_AIX - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' - _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' - # Exported symbols can be pulled into shared objects from archives - _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' - _LT_TAGVAR(archive_cmds_need_lc, $1)=yes - # This is similar to how AIX traditionally builds its shared - # libraries. - _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' - fi - fi - ;; - - beos*) - if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - # Joseph Beckenbach <jrb3@best.com> says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - chorus*) - case $cc_basename in - *) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - - cygwin* | mingw* | pw32* | cegcc*) - # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, - # as there is no search path for DLLs. - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_TAGVAR(always_export_symbols, $1)=no - _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - - if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is; otherwise, prepend... - _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - darwin* | rhapsody*) - _LT_DARWIN_LINKER_FEATURES($1) - ;; - - dgux*) - case $cc_basename in - ec++*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - ghcx*) - # Green Hills C++ Compiler - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - - freebsd[[12]]*) - # C++ shared libraries reported to be fairly broken before - # switch to ELF - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - - freebsd-elf*) - _LT_TAGVAR(archive_cmds_need_lc, $1)=no - ;; - - freebsd* | dragonfly*) - # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF - # conventions - _LT_TAGVAR(ld_shlibs, $1)=yes - ;; - - gnu*) - ;; - - hpux9*) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, - # but as the default - # location of the library. - - case $cc_basename in - CC*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - aCC*) - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' - ;; - *) - if test "$GXX" = yes; then - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - else - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - - hpux10*|hpux11*) - if test $with_gnu_ld = no; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - - case $host_cpu in - hppa*64*|ia64*) - ;; - *) - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - ;; - esac - fi - case $host_cpu in - hppa*64*|ia64*) - _LT_TAGVAR(hardcode_direct, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - *) - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, - # but as the default - # location of the library. - ;; - esac - - case $cc_basename in - CC*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - aCC*) - case $host_cpu in - hppa*64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - ia64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - *) - _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - esac - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' - ;; - *) - if test "$GXX" = yes; then - if test $with_gnu_ld = no; then - case $host_cpu in - hppa*64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - ia64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - esac - fi - else - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - - interix[[3-9]]*) - _LT_TAGVAR(hardcode_direct, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. - # Instead, shared libraries are loaded at an image base (0x10000000 by - # default) and relocated if they conflict, which is a slow very memory - # consuming and fragmenting process. To avoid this, we pick a random, - # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link - # time. Moving up from 0x10000000 also allows more sbrk(2) space. - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - ;; - irix5* | irix6*) - case $cc_basename in - CC*) - # SGI C++ - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' - - # Archives containing C++ object files must be created using - # "CC -ar", where "CC" is the IRIX C++ compiler. This is - # necessary to make sure instantiated templates are included - # in the archive. - _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' - ;; - *) - if test "$GXX" = yes; then - if test "$with_gnu_ld" = no; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - else - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib' - fi - fi - _LT_TAGVAR(link_all_deplibs, $1)=yes - ;; - esac - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_TAGVAR(inherit_rpath, $1)=yes - ;; - - linux* | k*bsd*-gnu | kopensolaris*-gnu) - case $cc_basename in - KCC*) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' - - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - - # Archives containing C++ object files must be created using - # "CC -Bstatic", where "CC" is the KAI C++ compiler. - _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' - ;; - icpc* | ecpc* ) - # Intel C++ - with_gnu_ld=yes - # version 8.0 and above of icpc choke on multiply defined symbols - # if we add $predep_objects and $postdep_objects, however 7.1 and - # earlier do not add the objects themselves. - case `$CC -V 2>&1` in - *"Version 7."*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - ;; - *) # Version 8.0 or newer - tmp_idyn= - case $host_cpu in - ia64*) tmp_idyn=' -i_dynamic';; - esac - _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - ;; - esac - _LT_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' - ;; - pgCC* | pgcpp*) - # Portland Group C++ compiler - case `$CC -V` in - *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*) - _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ - compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"' - _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ - $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~ - $RANLIB $oldlib' - _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ - $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ - $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' - ;; - *) # Version 6 will use weak symbols - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' - ;; - esac - - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' - ;; - cxx*) - # Compaq C++ - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' - - runpath_var=LD_RUN_PATH - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' - ;; - xl*) - # IBM XL 8.0 on PPC, with GNU ld - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - if test "x$supports_anon_versioning" = xyes; then - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' - fi - ;; - *) - case `$CC -V 2>&1 | sed 5q` in - *Sun\ C*) - # Sun C++ 5.9 - _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' - _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' - _LT_TAGVAR(compiler_needs_object, $1)=yes - - # Not sure whether something based on - # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 - # would be better. - output_verbose_link_cmd='echo' - - # Archives containing C++ object files must be created using - # "CC -xar", where "CC" is the Sun C++ compiler. This is - # necessary to make sure instantiated templates are included - # in the archive. - _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' - ;; - esac - ;; - esac - ;; - - lynxos*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - - m88k*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - - mvs*) - case $cc_basename in - cxx*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' - wlarc= - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - fi - # Workaround some broken pre-1.5 toolchains - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' - ;; - - *nto* | *qnx*) - _LT_TAGVAR(ld_shlibs, $1)=yes - ;; - - openbsd2*) - # C++ shared libraries are fairly broken - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - - openbsd*) - if test -f /usr/libexec/ld.so; then - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - fi - output_verbose_link_cmd=echo - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - osf3* | osf4* | osf5*) - case $cc_basename in - KCC*) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - - # Archives containing C++ object files must be created using - # the KAI C++ compiler. - case $host in - osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; - *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;; - esac - ;; - RCC*) - # Rational C++ 2.4.1 - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - cxx*) - case $host in - osf3*) - _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - ;; - *) - _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ - echo "-hidden">> $lib.exp~ - $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~ - $RM $lib.exp' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' - ;; - esac - - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' - ;; - *) - if test "$GXX" = yes && test "$with_gnu_ld" = no; then - _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - case $host in - osf3*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - ;; - *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - ;; - esac - - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' - - else - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - - psos*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - - sunos4*) - case $cc_basename in - CC*) - # Sun C++ 4.x - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - lcc*) - # Lucid - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - - solaris*) - case $cc_basename in - CC*) - # Sun C++ 4.2, 5.x and Centerline C++ - _LT_TAGVAR(archive_cmds_need_lc,$1)=yes - _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' - _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' - - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - case $host_os in - solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; - *) - # The compiler driver will combine and reorder linker options, - # but understands `-z linker_flag'. - # Supported since Solaris 2.6 (maybe 2.5.1?) - _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' - ;; - esac - _LT_TAGVAR(link_all_deplibs, $1)=yes - - output_verbose_link_cmd='echo' - - # Archives containing C++ object files must be created using - # "CC -xar", where "CC" is the Sun C++ compiler. This is - # necessary to make sure instantiated templates are included - # in the archive. - _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' - ;; - gcx*) - # Green Hills C++ Compiler - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' - - # The C++ compiler must be used to create the archive. - _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' - ;; - *) - # GNU C++ compiler with Solaris linker - if test "$GXX" = yes && test "$with_gnu_ld" = no; then - _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' - if $CC --version | $GREP -v '^2\.7' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' - else - # g++ 2.7 appears to require `-G' NOT `-shared' on this - # platform. - _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' - fi - - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' - case $host_os in - solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; - *) - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' - ;; - esac - fi - ;; - esac - ;; - - sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) - _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' - _LT_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - runpath_var='LD_RUN_PATH' - - case $cc_basename in - CC*) - _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - esac - ;; - - sysv5* | sco3.2v5* | sco5v6*) - # Note: We can NOT use -z defs as we might desire, because we do not - # link with -lc, and that would cause any symbols used from libc to - # always be unresolved, which means just about no library would - # ever link correctly. If we're not using GNU ld we use -z text - # though, which does catch some bad symbols but isn't as heavy-handed - # as -z defs. - _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' - _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' - _LT_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_TAGVAR(link_all_deplibs, $1)=yes - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' - runpath_var='LD_RUN_PATH' - - case $cc_basename in - CC*) - _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - esac - ;; - - tandem*) - case $cc_basename in - NCC*) - # NonStop-UX NCC 3.20 - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - - vxworks*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - - *) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - esac - - AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) - test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no - - _LT_TAGVAR(GCC, $1)="$GXX" - _LT_TAGVAR(LD, $1)="$LD" - - ## CAVEAT EMPTOR: - ## There is no encapsulation within the following macros, do not change - ## the running order or otherwise move them around unless you know exactly - ## what you are doing... - _LT_SYS_HIDDEN_LIBDEPS($1) - _LT_COMPILER_PIC($1) - _LT_COMPILER_C_O($1) - _LT_COMPILER_FILE_LOCKS($1) - _LT_LINKER_SHLIBS($1) - _LT_SYS_DYNAMIC_LINKER($1) - _LT_LINKER_HARDCODE_LIBPATH($1) - - _LT_CONFIG($1) - fi # test -n "$compiler" - - CC=$lt_save_CC - LDCXX=$LD - LD=$lt_save_LD - GCC=$lt_save_GCC - with_gnu_ld=$lt_save_with_gnu_ld - lt_cv_path_LDCXX=$lt_cv_path_LD - lt_cv_path_LD=$lt_save_path_LD - lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld - lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld -fi # test "$_lt_caught_CXX_error" != yes - -AC_LANG_POP -])# _LT_LANG_CXX_CONFIG - - -# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) -# --------------------------------- -# Figure out "hidden" library dependencies from verbose -# compiler output when linking a shared library. -# Parse the compiler output and extract the necessary -# objects, libraries and library flags. -m4_defun([_LT_SYS_HIDDEN_LIBDEPS], -[m4_require([_LT_FILEUTILS_DEFAULTS])dnl -# Dependencies to place before and after the object being linked: -_LT_TAGVAR(predep_objects, $1)= -_LT_TAGVAR(postdep_objects, $1)= -_LT_TAGVAR(predeps, $1)= -_LT_TAGVAR(postdeps, $1)= -_LT_TAGVAR(compiler_lib_search_path, $1)= - -dnl we can't use the lt_simple_compile_test_code here, -dnl because it contains code intended for an executable, -dnl not a library. It's possible we should let each -dnl tag define a new lt_????_link_test_code variable, -dnl but it's only used here... -m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF -int a; -void foo (void) { a = 0; } -_LT_EOF -], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF -class Foo -{ -public: - Foo (void) { a = 0; } -private: - int a; -}; -_LT_EOF -], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF - subroutine foo - implicit none - integer*4 a - a=0 - return - end -_LT_EOF -], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF - subroutine foo - implicit none - integer a - a=0 - return - end -_LT_EOF -], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF -public class foo { - private int a; - public void bar (void) { - a = 0; - } -}; -_LT_EOF -]) -dnl Parse the compiler output and extract the necessary -dnl objects, libraries and library flags. -if AC_TRY_EVAL(ac_compile); then - # Parse the compiler output and extract the necessary - # objects, libraries and library flags. - - # Sentinel used to keep track of whether or not we are before - # the conftest object file. - pre_test_object_deps_done=no - - for p in `eval "$output_verbose_link_cmd"`; do - case $p in - - -L* | -R* | -l*) - # Some compilers place space between "-{L,R}" and the path. - # Remove the space. - if test $p = "-L" || - test $p = "-R"; then - prev=$p - continue - else - prev= - fi - - if test "$pre_test_object_deps_done" = no; then - case $p in - -L* | -R*) - # Internal compiler library paths should come after those - # provided the user. The postdeps already come after the - # user supplied libs so there is no need to process them. - if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then - _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}" - else - _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}" - fi - ;; - # The "-l" case would never come before the object being - # linked, so don't bother handling this case. - esac - else - if test -z "$_LT_TAGVAR(postdeps, $1)"; then - _LT_TAGVAR(postdeps, $1)="${prev}${p}" - else - _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}" - fi - fi - ;; - - *.$objext) - # This assumes that the test object file only shows up - # once in the compiler output. - if test "$p" = "conftest.$objext"; then - pre_test_object_deps_done=yes - continue - fi - - if test "$pre_test_object_deps_done" = no; then - if test -z "$_LT_TAGVAR(predep_objects, $1)"; then - _LT_TAGVAR(predep_objects, $1)="$p" - else - _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" - fi - else - if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then - _LT_TAGVAR(postdep_objects, $1)="$p" - else - _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" - fi - fi - ;; - - *) ;; # Ignore the rest. - - esac - done - - # Clean up. - rm -f a.out a.exe -else - echo "libtool.m4: error: problem compiling $1 test program" -fi - -$RM -f confest.$objext - -# PORTME: override above test on systems where it is broken -m4_if([$1], [CXX], -[case $host_os in -interix[[3-9]]*) - # Interix 3.5 installs completely hosed .la files for C++, so rather than - # hack all around it, let's just trust "g++" to DTRT. - _LT_TAGVAR(predep_objects,$1)= - _LT_TAGVAR(postdep_objects,$1)= - _LT_TAGVAR(postdeps,$1)= - ;; - -linux*) - case `$CC -V 2>&1 | sed 5q` in - *Sun\ C*) - # Sun C++ 5.9 - - # The more standards-conforming stlport4 library is - # incompatible with the Cstd library. Avoid specifying - # it if it's in CXXFLAGS. Ignore libCrun as - # -library=stlport4 depends on it. - case " $CXX $CXXFLAGS " in - *" -library=stlport4 "*) - solaris_use_stlport4=yes - ;; - esac - - if test "$solaris_use_stlport4" != yes; then - _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' - fi - ;; - esac - ;; - -solaris*) - case $cc_basename in - CC*) - # The more standards-conforming stlport4 library is - # incompatible with the Cstd library. Avoid specifying - # it if it's in CXXFLAGS. Ignore libCrun as - # -library=stlport4 depends on it. - case " $CXX $CXXFLAGS " in - *" -library=stlport4 "*) - solaris_use_stlport4=yes - ;; - esac - - # Adding this requires a known-good setup of shared libraries for - # Sun compiler versions before 5.6, else PIC objects from an old - # archive will be linked into the output, leading to subtle bugs. - if test "$solaris_use_stlport4" != yes; then - _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' - fi - ;; - esac - ;; -esac -]) - -case " $_LT_TAGVAR(postdeps, $1) " in -*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; -esac - _LT_TAGVAR(compiler_lib_search_dirs, $1)= -if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then - _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'` -fi -_LT_TAGDECL([], [compiler_lib_search_dirs], [1], - [The directories searched by this compiler when creating a shared library]) -_LT_TAGDECL([], [predep_objects], [1], - [Dependencies to place before and after the objects being linked to - create a shared library]) -_LT_TAGDECL([], [postdep_objects], [1]) -_LT_TAGDECL([], [predeps], [1]) -_LT_TAGDECL([], [postdeps], [1]) -_LT_TAGDECL([], [compiler_lib_search_path], [1], - [The library search path used internally by the compiler when linking - a shared library]) -])# _LT_SYS_HIDDEN_LIBDEPS - - -# _LT_PROG_F77 -# ------------ -# Since AC_PROG_F77 is broken, in that it returns the empty string -# if there is no fortran compiler, we have our own version here. -m4_defun([_LT_PROG_F77], -[ -pushdef([AC_MSG_ERROR], [_lt_disable_F77=yes]) -AC_PROG_F77 -if test -z "$F77" || test "X$F77" = "Xno"; then - _lt_disable_F77=yes -fi -popdef([AC_MSG_ERROR]) -])# _LT_PROG_F77 - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([_LT_PROG_F77], []) - - -# _LT_LANG_F77_CONFIG([TAG]) -# -------------------------- -# Ensure that the configuration variables for a Fortran 77 compiler are -# suitably defined. These variables are subsequently used by _LT_CONFIG -# to write the compiler configuration to `libtool'. -m4_defun([_LT_LANG_F77_CONFIG], -[AC_REQUIRE([_LT_PROG_F77])dnl -AC_LANG_PUSH(Fortran 77) - -_LT_TAGVAR(archive_cmds_need_lc, $1)=no -_LT_TAGVAR(allow_undefined_flag, $1)= -_LT_TAGVAR(always_export_symbols, $1)=no -_LT_TAGVAR(archive_expsym_cmds, $1)= -_LT_TAGVAR(export_dynamic_flag_spec, $1)= -_LT_TAGVAR(hardcode_direct, $1)=no -_LT_TAGVAR(hardcode_direct_absolute, $1)=no -_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= -_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= -_LT_TAGVAR(hardcode_libdir_separator, $1)= -_LT_TAGVAR(hardcode_minus_L, $1)=no -_LT_TAGVAR(hardcode_automatic, $1)=no -_LT_TAGVAR(inherit_rpath, $1)=no -_LT_TAGVAR(module_cmds, $1)= -_LT_TAGVAR(module_expsym_cmds, $1)= -_LT_TAGVAR(link_all_deplibs, $1)=unknown -_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds -_LT_TAGVAR(no_undefined_flag, $1)= -_LT_TAGVAR(whole_archive_flag_spec, $1)= -_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no - -# Source file extension for f77 test sources. -ac_ext=f - -# Object file extension for compiled f77 test sources. -objext=o -_LT_TAGVAR(objext, $1)=$objext - -# No sense in running all these tests if we already determined that -# the F77 compiler isn't working. Some variables (like enable_shared) -# are currently assumed to apply to all compilers on this platform, -# and will be corrupted by setting them based on a non-working compiler. -if test "$_lt_disable_F77" != yes; then - # Code to be used in simple compile tests - lt_simple_compile_test_code="\ - subroutine t - return - end -" - - # Code to be used in simple link tests - lt_simple_link_test_code="\ - program t - end -" - - # ltmain only uses $CC for tagged configurations so make sure $CC is set. - _LT_TAG_COMPILER - - # save warnings/boilerplate of simple test code - _LT_COMPILER_BOILERPLATE - _LT_LINKER_BOILERPLATE - - # Allow CC to be a program name with arguments. - lt_save_CC="$CC" - lt_save_GCC=$GCC - CC=${F77-"f77"} - compiler=$CC - _LT_TAGVAR(compiler, $1)=$CC - _LT_CC_BASENAME([$compiler]) - GCC=$G77 - if test -n "$compiler"; then - AC_MSG_CHECKING([if libtool supports shared libraries]) - AC_MSG_RESULT([$can_build_shared]) - - AC_MSG_CHECKING([whether to build shared libraries]) - test "$can_build_shared" = "no" && enable_shared=no - - # On AIX, shared libraries and static libraries use the same namespace, and - # are all built from PIC. - case $host_os in - aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - aix[[4-9]]*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no - fi - ;; - esac - AC_MSG_RESULT([$enable_shared]) - - AC_MSG_CHECKING([whether to build static libraries]) - # Make sure either enable_shared or enable_static is yes. - test "$enable_shared" = yes || enable_static=yes - AC_MSG_RESULT([$enable_static]) - - _LT_TAGVAR(GCC, $1)="$G77" - _LT_TAGVAR(LD, $1)="$LD" - - ## CAVEAT EMPTOR: - ## There is no encapsulation within the following macros, do not change - ## the running order or otherwise move them around unless you know exactly - ## what you are doing... - _LT_COMPILER_PIC($1) - _LT_COMPILER_C_O($1) - _LT_COMPILER_FILE_LOCKS($1) - _LT_LINKER_SHLIBS($1) - _LT_SYS_DYNAMIC_LINKER($1) - _LT_LINKER_HARDCODE_LIBPATH($1) - - _LT_CONFIG($1) - fi # test -n "$compiler" - - GCC=$lt_save_GCC - CC="$lt_save_CC" -fi # test "$_lt_disable_F77" != yes - -AC_LANG_POP -])# _LT_LANG_F77_CONFIG - - -# _LT_PROG_FC -# ----------- -# Since AC_PROG_FC is broken, in that it returns the empty string -# if there is no fortran compiler, we have our own version here. -m4_defun([_LT_PROG_FC], -[ -pushdef([AC_MSG_ERROR], [_lt_disable_FC=yes]) -AC_PROG_FC -if test -z "$FC" || test "X$FC" = "Xno"; then - _lt_disable_FC=yes -fi -popdef([AC_MSG_ERROR]) -])# _LT_PROG_FC - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([_LT_PROG_FC], []) - - -# _LT_LANG_FC_CONFIG([TAG]) -# ------------------------- -# Ensure that the configuration variables for a Fortran compiler are -# suitably defined. These variables are subsequently used by _LT_CONFIG -# to write the compiler configuration to `libtool'. -m4_defun([_LT_LANG_FC_CONFIG], -[AC_REQUIRE([_LT_PROG_FC])dnl -AC_LANG_PUSH(Fortran) - -_LT_TAGVAR(archive_cmds_need_lc, $1)=no -_LT_TAGVAR(allow_undefined_flag, $1)= -_LT_TAGVAR(always_export_symbols, $1)=no -_LT_TAGVAR(archive_expsym_cmds, $1)= -_LT_TAGVAR(export_dynamic_flag_spec, $1)= -_LT_TAGVAR(hardcode_direct, $1)=no -_LT_TAGVAR(hardcode_direct_absolute, $1)=no -_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= -_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= -_LT_TAGVAR(hardcode_libdir_separator, $1)= -_LT_TAGVAR(hardcode_minus_L, $1)=no -_LT_TAGVAR(hardcode_automatic, $1)=no -_LT_TAGVAR(inherit_rpath, $1)=no -_LT_TAGVAR(module_cmds, $1)= -_LT_TAGVAR(module_expsym_cmds, $1)= -_LT_TAGVAR(link_all_deplibs, $1)=unknown -_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds -_LT_TAGVAR(no_undefined_flag, $1)= -_LT_TAGVAR(whole_archive_flag_spec, $1)= -_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no - -# Source file extension for fc test sources. -ac_ext=${ac_fc_srcext-f} - -# Object file extension for compiled fc test sources. -objext=o -_LT_TAGVAR(objext, $1)=$objext - -# No sense in running all these tests if we already determined that -# the FC compiler isn't working. Some variables (like enable_shared) -# are currently assumed to apply to all compilers on this platform, -# and will be corrupted by setting them based on a non-working compiler. -if test "$_lt_disable_FC" != yes; then - # Code to be used in simple compile tests - lt_simple_compile_test_code="\ - subroutine t - return - end -" - - # Code to be used in simple link tests - lt_simple_link_test_code="\ - program t - end -" - - # ltmain only uses $CC for tagged configurations so make sure $CC is set. - _LT_TAG_COMPILER - - # save warnings/boilerplate of simple test code - _LT_COMPILER_BOILERPLATE - _LT_LINKER_BOILERPLATE - - # Allow CC to be a program name with arguments. - lt_save_CC="$CC" - lt_save_GCC=$GCC - CC=${FC-"f95"} - compiler=$CC - GCC=$ac_cv_fc_compiler_gnu - - _LT_TAGVAR(compiler, $1)=$CC - _LT_CC_BASENAME([$compiler]) - - if test -n "$compiler"; then - AC_MSG_CHECKING([if libtool supports shared libraries]) - AC_MSG_RESULT([$can_build_shared]) - - AC_MSG_CHECKING([whether to build shared libraries]) - test "$can_build_shared" = "no" && enable_shared=no - - # On AIX, shared libraries and static libraries use the same namespace, and - # are all built from PIC. - case $host_os in - aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - aix[[4-9]]*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no - fi - ;; - esac - AC_MSG_RESULT([$enable_shared]) - - AC_MSG_CHECKING([whether to build static libraries]) - # Make sure either enable_shared or enable_static is yes. - test "$enable_shared" = yes || enable_static=yes - AC_MSG_RESULT([$enable_static]) - - _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu" - _LT_TAGVAR(LD, $1)="$LD" - - ## CAVEAT EMPTOR: - ## There is no encapsulation within the following macros, do not change - ## the running order or otherwise move them around unless you know exactly - ## what you are doing... - _LT_SYS_HIDDEN_LIBDEPS($1) - _LT_COMPILER_PIC($1) - _LT_COMPILER_C_O($1) - _LT_COMPILER_FILE_LOCKS($1) - _LT_LINKER_SHLIBS($1) - _LT_SYS_DYNAMIC_LINKER($1) - _LT_LINKER_HARDCODE_LIBPATH($1) - - _LT_CONFIG($1) - fi # test -n "$compiler" - - GCC=$lt_save_GCC - CC="$lt_save_CC" -fi # test "$_lt_disable_FC" != yes - -AC_LANG_POP -])# _LT_LANG_FC_CONFIG - - -# _LT_LANG_GCJ_CONFIG([TAG]) -# -------------------------- -# Ensure that the configuration variables for the GNU Java Compiler compiler -# are suitably defined. These variables are subsequently used by _LT_CONFIG -# to write the compiler configuration to `libtool'. -m4_defun([_LT_LANG_GCJ_CONFIG], -[AC_REQUIRE([LT_PROG_GCJ])dnl -AC_LANG_SAVE - -# Source file extension for Java test sources. -ac_ext=java - -# Object file extension for compiled Java test sources. -objext=o -_LT_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="class foo {}" - -# Code to be used in simple link tests -lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }' - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_TAG_COMPILER - -# save warnings/boilerplate of simple test code -_LT_COMPILER_BOILERPLATE -_LT_LINKER_BOILERPLATE - -# Allow CC to be a program name with arguments. -lt_save_CC="$CC" -lt_save_GCC=$GCC -GCC=yes -CC=${GCJ-"gcj"} -compiler=$CC -_LT_TAGVAR(compiler, $1)=$CC -_LT_TAGVAR(LD, $1)="$LD" -_LT_CC_BASENAME([$compiler]) - -# GCJ did not exist at the time GCC didn't implicitly link libc in. -_LT_TAGVAR(archive_cmds_need_lc, $1)=no - -_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -if test -n "$compiler"; then - _LT_COMPILER_NO_RTTI($1) - _LT_COMPILER_PIC($1) - _LT_COMPILER_C_O($1) - _LT_COMPILER_FILE_LOCKS($1) - _LT_LINKER_SHLIBS($1) - _LT_LINKER_HARDCODE_LIBPATH($1) - - _LT_CONFIG($1) -fi - -AC_LANG_RESTORE - -GCC=$lt_save_GCC -CC="$lt_save_CC" -])# _LT_LANG_GCJ_CONFIG - - -# _LT_LANG_RC_CONFIG([TAG]) -# ------------------------- -# Ensure that the configuration variables for the Windows resource compiler -# are suitably defined. These variables are subsequently used by _LT_CONFIG -# to write the compiler configuration to `libtool'. -m4_defun([_LT_LANG_RC_CONFIG], -[AC_REQUIRE([LT_PROG_RC])dnl -AC_LANG_SAVE - -# Source file extension for RC test sources. -ac_ext=rc - -# Object file extension for compiled RC test sources. -objext=o -_LT_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }' - -# Code to be used in simple link tests -lt_simple_link_test_code="$lt_simple_compile_test_code" - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_TAG_COMPILER - -# save warnings/boilerplate of simple test code -_LT_COMPILER_BOILERPLATE -_LT_LINKER_BOILERPLATE - -# Allow CC to be a program name with arguments. -lt_save_CC="$CC" -lt_save_GCC=$GCC -GCC= -CC=${RC-"windres"} -compiler=$CC -_LT_TAGVAR(compiler, $1)=$CC -_LT_CC_BASENAME([$compiler]) -_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes - -if test -n "$compiler"; then - : - _LT_CONFIG($1) -fi - -GCC=$lt_save_GCC -AC_LANG_RESTORE -CC="$lt_save_CC" -])# _LT_LANG_RC_CONFIG - - -# LT_PROG_GCJ -# ----------- -AC_DEFUN([LT_PROG_GCJ], -[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ], - [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ], - [AC_CHECK_TOOL(GCJ, gcj,) - test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" - AC_SUBST(GCJFLAGS)])])[]dnl -]) - -# Old name: -AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([LT_AC_PROG_GCJ], []) - - -# LT_PROG_RC -# ---------- -AC_DEFUN([LT_PROG_RC], -[AC_CHECK_TOOL(RC, windres,) -]) - -# Old name: -AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([LT_AC_PROG_RC], []) - - -# _LT_DECL_EGREP -# -------------- -# If we don't have a new enough Autoconf to choose the best grep -# available, choose the one first in the user's PATH. -m4_defun([_LT_DECL_EGREP], -[AC_REQUIRE([AC_PROG_EGREP])dnl -AC_REQUIRE([AC_PROG_FGREP])dnl -test -z "$GREP" && GREP=grep -_LT_DECL([], [GREP], [1], [A grep program that handles long lines]) -_LT_DECL([], [EGREP], [1], [An ERE matcher]) -_LT_DECL([], [FGREP], [1], [A literal string matcher]) -dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too -AC_SUBST([GREP]) -]) - - -# _LT_DECL_OBJDUMP -# -------------- -# If we don't have a new enough Autoconf to choose the best objdump -# available, choose the one first in the user's PATH. -m4_defun([_LT_DECL_OBJDUMP], -[AC_CHECK_TOOL(OBJDUMP, objdump, false) -test -z "$OBJDUMP" && OBJDUMP=objdump -_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper]) -AC_SUBST([OBJDUMP]) -]) - - -# _LT_DECL_SED -# ------------ -# Check for a fully-functional sed program, that truncates -# as few characters as possible. Prefer GNU sed if found. -m4_defun([_LT_DECL_SED], -[AC_PROG_SED -test -z "$SED" && SED=sed -Xsed="$SED -e 1s/^X//" -_LT_DECL([], [SED], [1], [A sed program that does not truncate output]) -_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"], - [Sed that helps us avoid accidentally triggering echo(1) options like -n]) -])# _LT_DECL_SED - -m4_ifndef([AC_PROG_SED], [ -############################################################ -# NOTE: This macro has been submitted for inclusion into # -# GNU Autoconf as AC_PROG_SED. When it is available in # -# a released version of Autoconf we should remove this # -# macro and use it instead. # -############################################################ - -m4_defun([AC_PROG_SED], -[AC_MSG_CHECKING([for a sed that does not truncate output]) -AC_CACHE_VAL(lt_cv_path_SED, -[# Loop through the user's path and test for sed and gsed. -# Then use that list of sed's as ones to test for truncation. -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for lt_ac_prog in sed gsed; do - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then - lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" - fi - done - done -done -IFS=$as_save_IFS -lt_ac_max=0 -lt_ac_count=0 -# Add /usr/xpg4/bin/sed as it is typically found on Solaris -# along with /bin/sed that truncates output. -for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do - test ! -f $lt_ac_sed && continue - cat /dev/null > conftest.in - lt_ac_count=0 - echo $ECHO_N "0123456789$ECHO_C" >conftest.in - # Check for GNU sed and select it if it is found. - if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then - lt_cv_path_SED=$lt_ac_sed - break - fi - while true; do - cat conftest.in conftest.in >conftest.tmp - mv conftest.tmp conftest.in - cp conftest.in conftest.nl - echo >>conftest.nl - $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break - cmp -s conftest.out conftest.nl || break - # 10000 chars as input seems more than enough - test $lt_ac_count -gt 10 && break - lt_ac_count=`expr $lt_ac_count + 1` - if test $lt_ac_count -gt $lt_ac_max; then - lt_ac_max=$lt_ac_count - lt_cv_path_SED=$lt_ac_sed - fi - done -done -]) -SED=$lt_cv_path_SED -AC_SUBST([SED]) -AC_MSG_RESULT([$SED]) -])#AC_PROG_SED -])#m4_ifndef - -# Old name: -AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([LT_AC_PROG_SED], []) - - -# _LT_CHECK_SHELL_FEATURES -# ------------------------ -# Find out whether the shell is Bourne or XSI compatible, -# or has some other useful features. -m4_defun([_LT_CHECK_SHELL_FEATURES], -[AC_MSG_CHECKING([whether the shell understands some XSI constructs]) -# Try some XSI features -xsi_shell=no -( _lt_dummy="a/b/c" - test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \ - = c,a/b,, \ - && eval 'test $(( 1 + 1 )) -eq 2 \ - && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ - && xsi_shell=yes -AC_MSG_RESULT([$xsi_shell]) -_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell']) - -AC_MSG_CHECKING([whether the shell understands "+="]) -lt_shell_append=no -( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \ - >/dev/null 2>&1 \ - && lt_shell_append=yes -AC_MSG_RESULT([$lt_shell_append]) -_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append']) - -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - lt_unset=unset -else - lt_unset=false -fi -_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl - -# test EBCDIC or ASCII -case `echo X|tr X '\101'` in - A) # ASCII based system - # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr - lt_SP2NL='tr \040 \012' - lt_NL2SP='tr \015\012 \040\040' - ;; - *) # EBCDIC based system - lt_SP2NL='tr \100 \n' - lt_NL2SP='tr \r\n \100\100' - ;; -esac -_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl -_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl -])# _LT_CHECK_SHELL_FEATURES - - -# _LT_PROG_XSI_SHELLFNS -# --------------------- -# Bourne and XSI compatible variants of some useful shell functions. -m4_defun([_LT_PROG_XSI_SHELLFNS], -[case $xsi_shell in - yes) - cat << \_LT_EOF >> "$cfgfile" - -# func_dirname file append nondir_replacement -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -func_dirname () -{ - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac -} - -# func_basename file -func_basename () -{ - func_basename_result="${1##*/}" -} - -# func_dirname_and_basename file append nondir_replacement -# perform func_basename and func_dirname in a single function -# call: -# dirname: Compute the dirname of FILE. If nonempty, -# add APPEND to the result, otherwise set result -# to NONDIR_REPLACEMENT. -# value returned in "$func_dirname_result" -# basename: Compute filename of FILE. -# value retuned in "$func_basename_result" -# Implementation must be kept synchronized with func_dirname -# and func_basename. For efficiency, we do not delegate to -# those functions but instead duplicate the functionality here. -func_dirname_and_basename () -{ - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac - func_basename_result="${1##*/}" -} - -# func_stripname prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -func_stripname () -{ - # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are - # positional parameters, so assign one to ordinary parameter first. - func_stripname_result=${3} - func_stripname_result=${func_stripname_result#"${1}"} - func_stripname_result=${func_stripname_result%"${2}"} -} - -# func_opt_split -func_opt_split () -{ - func_opt_split_opt=${1%%=*} - func_opt_split_arg=${1#*=} -} - -# func_lo2o object -func_lo2o () -{ - case ${1} in - *.lo) func_lo2o_result=${1%.lo}.${objext} ;; - *) func_lo2o_result=${1} ;; - esac -} - -# func_xform libobj-or-source -func_xform () -{ - func_xform_result=${1%.*}.lo -} - -# func_arith arithmetic-term... -func_arith () -{ - func_arith_result=$(( $[*] )) -} - -# func_len string -# STRING may not start with a hyphen. -func_len () -{ - func_len_result=${#1} -} - -_LT_EOF - ;; - *) # Bourne compatible functions. - cat << \_LT_EOF >> "$cfgfile" - -# func_dirname file append nondir_replacement -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -func_dirname () -{ - # Extract subdirectory from the argument. - func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"` - if test "X$func_dirname_result" = "X${1}"; then - func_dirname_result="${3}" - else - func_dirname_result="$func_dirname_result${2}" - fi -} - -# func_basename file -func_basename () -{ - func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"` -} - -dnl func_dirname_and_basename -dnl A portable version of this function is already defined in general.m4sh -dnl so there is no need for it here. - -# func_stripname prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -# func_strip_suffix prefix name -func_stripname () -{ - case ${2} in - .*) func_stripname_result=`$ECHO "X${3}" \ - | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;; - *) func_stripname_result=`$ECHO "X${3}" \ - | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;; - esac -} - -# sed scripts: -my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q' -my_sed_long_arg='1s/^-[[^=]]*=//' - -# func_opt_split -func_opt_split () -{ - func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"` - func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"` -} - -# func_lo2o object -func_lo2o () -{ - func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"` -} - -# func_xform libobj-or-source -func_xform () -{ - func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[[^.]]*$/.lo/'` -} - -# func_arith arithmetic-term... -func_arith () -{ - func_arith_result=`expr "$[@]"` -} - -# func_len string -# STRING may not start with a hyphen. -func_len () -{ - func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len` -} - -_LT_EOF -esac - -case $lt_shell_append in - yes) - cat << \_LT_EOF >> "$cfgfile" - -# func_append var value -# Append VALUE to the end of shell variable VAR. -func_append () -{ - eval "$[1]+=\$[2]" -} -_LT_EOF - ;; - *) - cat << \_LT_EOF >> "$cfgfile" - -# func_append var value -# Append VALUE to the end of shell variable VAR. -func_append () -{ - eval "$[1]=\$$[1]\$[2]" -} - -_LT_EOF - ;; - esac -]) diff --git a/m4/ltoptions.m4 b/m4/ltoptions.m4 deleted file mode 100644 index 34151a3..0000000 --- a/m4/ltoptions.m4 +++ /dev/null @@ -1,368 +0,0 @@ -# Helper functions for option handling. -*- Autoconf -*- -# -# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. -# Written by Gary V. Vaughan, 2004 -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. - -# serial 6 ltoptions.m4 - -# This is to help aclocal find these macros, as it can't see m4_define. -AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) - - -# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME) -# ------------------------------------------ -m4_define([_LT_MANGLE_OPTION], -[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])]) - - -# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME) -# --------------------------------------- -# Set option OPTION-NAME for macro MACRO-NAME, and if there is a -# matching handler defined, dispatch to it. Other OPTION-NAMEs are -# saved as a flag. -m4_define([_LT_SET_OPTION], -[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl -m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]), - _LT_MANGLE_DEFUN([$1], [$2]), - [m4_warning([Unknown $1 option `$2'])])[]dnl -]) - - -# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET]) -# ------------------------------------------------------------ -# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. -m4_define([_LT_IF_OPTION], -[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])]) - - -# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET) -# ------------------------------------------------------- -# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME -# are set. -m4_define([_LT_UNLESS_OPTIONS], -[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), - [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option), - [m4_define([$0_found])])])[]dnl -m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3 -])[]dnl -]) - - -# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST) -# ---------------------------------------- -# OPTION-LIST is a space-separated list of Libtool options associated -# with MACRO-NAME. If any OPTION has a matching handler declared with -# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about -# the unknown option and exit. -m4_defun([_LT_SET_OPTIONS], -[# Set options -m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), - [_LT_SET_OPTION([$1], _LT_Option)]) - -m4_if([$1],[LT_INIT],[ - dnl - dnl Simply set some default values (i.e off) if boolean options were not - dnl specified: - _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no - ]) - _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no - ]) - dnl - dnl If no reference was made to various pairs of opposing options, then - dnl we run the default mode handler for the pair. For example, if neither - dnl `shared' nor `disable-shared' was passed, we enable building of shared - dnl archives by default: - _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED]) - _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC]) - _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC]) - _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install], - [_LT_ENABLE_FAST_INSTALL]) - ]) -])# _LT_SET_OPTIONS - - -## --------------------------------- ## -## Macros to handle LT_INIT options. ## -## --------------------------------- ## - -# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME) -# ----------------------------------------- -m4_define([_LT_MANGLE_DEFUN], -[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])]) - - -# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE) -# ----------------------------------------------- -m4_define([LT_OPTION_DEFINE], -[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl -])# LT_OPTION_DEFINE - - -# dlopen -# ------ -LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes -]) - -AU_DEFUN([AC_LIBTOOL_DLOPEN], -[_LT_SET_OPTION([LT_INIT], [dlopen]) -AC_DIAGNOSE([obsolete], -[$0: Remove this warning and the call to _LT_SET_OPTION when you -put the `dlopen' option into LT_INIT's first parameter.]) -]) - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], []) - - -# win32-dll -# --------- -# Declare package support for building win32 dll's. -LT_OPTION_DEFINE([LT_INIT], [win32-dll], -[enable_win32_dll=yes - -case $host in -*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*) - AC_CHECK_TOOL(AS, as, false) - AC_CHECK_TOOL(DLLTOOL, dlltool, false) - AC_CHECK_TOOL(OBJDUMP, objdump, false) - ;; -esac - -test -z "$AS" && AS=as -_LT_DECL([], [AS], [0], [Assembler program])dnl - -test -z "$DLLTOOL" && DLLTOOL=dlltool -_LT_DECL([], [DLLTOOL], [0], [DLL creation program])dnl - -test -z "$OBJDUMP" && OBJDUMP=objdump -_LT_DECL([], [OBJDUMP], [0], [Object dumper program])dnl -])# win32-dll - -AU_DEFUN([AC_LIBTOOL_WIN32_DLL], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -_LT_SET_OPTION([LT_INIT], [win32-dll]) -AC_DIAGNOSE([obsolete], -[$0: Remove this warning and the call to _LT_SET_OPTION when you -put the `win32-dll' option into LT_INIT's first parameter.]) -]) - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], []) - - -# _LT_ENABLE_SHARED([DEFAULT]) -# ---------------------------- -# implement the --enable-shared flag, and supports the `shared' and -# `disable-shared' LT_INIT options. -# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. -m4_define([_LT_ENABLE_SHARED], -[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl -AC_ARG_ENABLE([shared], - [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@], - [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])], - [p=${PACKAGE-default} - case $enableval in - yes) enable_shared=yes ;; - no) enable_shared=no ;; - *) - enable_shared=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," - for pkg in $enableval; do - IFS="$lt_save_ifs" - if test "X$pkg" = "X$p"; then - enable_shared=yes - fi - done - IFS="$lt_save_ifs" - ;; - esac], - [enable_shared=]_LT_ENABLE_SHARED_DEFAULT) - - _LT_DECL([build_libtool_libs], [enable_shared], [0], - [Whether or not to build shared libraries]) -])# _LT_ENABLE_SHARED - -LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])]) -LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])]) - -# Old names: -AC_DEFUN([AC_ENABLE_SHARED], -[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared]) -]) - -AC_DEFUN([AC_DISABLE_SHARED], -[_LT_SET_OPTION([LT_INIT], [disable-shared]) -]) - -AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) -AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AM_ENABLE_SHARED], []) -dnl AC_DEFUN([AM_DISABLE_SHARED], []) - - - -# _LT_ENABLE_STATIC([DEFAULT]) -# ---------------------------- -# implement the --enable-static flag, and support the `static' and -# `disable-static' LT_INIT options. -# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. -m4_define([_LT_ENABLE_STATIC], -[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl -AC_ARG_ENABLE([static], - [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@], - [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])], - [p=${PACKAGE-default} - case $enableval in - yes) enable_static=yes ;; - no) enable_static=no ;; - *) - enable_static=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," - for pkg in $enableval; do - IFS="$lt_save_ifs" - if test "X$pkg" = "X$p"; then - enable_static=yes - fi - done - IFS="$lt_save_ifs" - ;; - esac], - [enable_static=]_LT_ENABLE_STATIC_DEFAULT) - - _LT_DECL([build_old_libs], [enable_static], [0], - [Whether or not to build static libraries]) -])# _LT_ENABLE_STATIC - -LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])]) -LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])]) - -# Old names: -AC_DEFUN([AC_ENABLE_STATIC], -[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static]) -]) - -AC_DEFUN([AC_DISABLE_STATIC], -[_LT_SET_OPTION([LT_INIT], [disable-static]) -]) - -AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) -AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AM_ENABLE_STATIC], []) -dnl AC_DEFUN([AM_DISABLE_STATIC], []) - - - -# _LT_ENABLE_FAST_INSTALL([DEFAULT]) -# ---------------------------------- -# implement the --enable-fast-install flag, and support the `fast-install' -# and `disable-fast-install' LT_INIT options. -# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. -m4_define([_LT_ENABLE_FAST_INSTALL], -[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl -AC_ARG_ENABLE([fast-install], - [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], - [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], - [p=${PACKAGE-default} - case $enableval in - yes) enable_fast_install=yes ;; - no) enable_fast_install=no ;; - *) - enable_fast_install=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," - for pkg in $enableval; do - IFS="$lt_save_ifs" - if test "X$pkg" = "X$p"; then - enable_fast_install=yes - fi - done - IFS="$lt_save_ifs" - ;; - esac], - [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT) - -_LT_DECL([fast_install], [enable_fast_install], [0], - [Whether or not to optimize for fast installation])dnl -])# _LT_ENABLE_FAST_INSTALL - -LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])]) -LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])]) - -# Old names: -AU_DEFUN([AC_ENABLE_FAST_INSTALL], -[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install]) -AC_DIAGNOSE([obsolete], -[$0: Remove this warning and the call to _LT_SET_OPTION when you put -the `fast-install' option into LT_INIT's first parameter.]) -]) - -AU_DEFUN([AC_DISABLE_FAST_INSTALL], -[_LT_SET_OPTION([LT_INIT], [disable-fast-install]) -AC_DIAGNOSE([obsolete], -[$0: Remove this warning and the call to _LT_SET_OPTION when you put -the `disable-fast-install' option into LT_INIT's first parameter.]) -]) - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], []) -dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], []) - - -# _LT_WITH_PIC([MODE]) -# -------------------- -# implement the --with-pic flag, and support the `pic-only' and `no-pic' -# LT_INIT options. -# MODE is either `yes' or `no'. If omitted, it defaults to `both'. -m4_define([_LT_WITH_PIC], -[AC_ARG_WITH([pic], - [AS_HELP_STRING([--with-pic], - [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], - [pic_mode="$withval"], - [pic_mode=default]) - -test -z "$pic_mode" && pic_mode=m4_default([$1], [default]) - -_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl -])# _LT_WITH_PIC - -LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])]) -LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])]) - -# Old name: -AU_DEFUN([AC_LIBTOOL_PICMODE], -[_LT_SET_OPTION([LT_INIT], [pic-only]) -AC_DIAGNOSE([obsolete], -[$0: Remove this warning and the call to _LT_SET_OPTION when you -put the `pic-only' option into LT_INIT's first parameter.]) -]) - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_PICMODE], []) - -## ----------------- ## -## LTDL_INIT Options ## -## ----------------- ## - -m4_define([_LTDL_MODE], []) -LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive], - [m4_define([_LTDL_MODE], [nonrecursive])]) -LT_OPTION_DEFINE([LTDL_INIT], [recursive], - [m4_define([_LTDL_MODE], [recursive])]) -LT_OPTION_DEFINE([LTDL_INIT], [subproject], - [m4_define([_LTDL_MODE], [subproject])]) - -m4_define([_LTDL_TYPE], []) -LT_OPTION_DEFINE([LTDL_INIT], [installable], - [m4_define([_LTDL_TYPE], [installable])]) -LT_OPTION_DEFINE([LTDL_INIT], [convenience], - [m4_define([_LTDL_TYPE], [convenience])]) diff --git a/m4/ltsugar.m4 b/m4/ltsugar.m4 deleted file mode 100644 index 9000a05..0000000 --- a/m4/ltsugar.m4 +++ /dev/null @@ -1,123 +0,0 @@ -# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- -# -# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. -# Written by Gary V. Vaughan, 2004 -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. - -# serial 6 ltsugar.m4 - -# This is to help aclocal find these macros, as it can't see m4_define. -AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])]) - - -# lt_join(SEP, ARG1, [ARG2...]) -# ----------------------------- -# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their -# associated separator. -# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier -# versions in m4sugar had bugs. -m4_define([lt_join], -[m4_if([$#], [1], [], - [$#], [2], [[$2]], - [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])]) -m4_define([_lt_join], -[m4_if([$#$2], [2], [], - [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])]) - - -# lt_car(LIST) -# lt_cdr(LIST) -# ------------ -# Manipulate m4 lists. -# These macros are necessary as long as will still need to support -# Autoconf-2.59 which quotes differently. -m4_define([lt_car], [[$1]]) -m4_define([lt_cdr], -[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], - [$#], 1, [], - [m4_dquote(m4_shift($@))])]) -m4_define([lt_unquote], $1) - - -# lt_append(MACRO-NAME, STRING, [SEPARATOR]) -# ------------------------------------------ -# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'. -# Note that neither SEPARATOR nor STRING are expanded; they are appended -# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). -# No SEPARATOR is output if MACRO-NAME was previously undefined (different -# than defined and empty). -# -# This macro is needed until we can rely on Autoconf 2.62, since earlier -# versions of m4sugar mistakenly expanded SEPARATOR but not STRING. -m4_define([lt_append], -[m4_define([$1], - m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])]) - - - -# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...]) -# ---------------------------------------------------------- -# Produce a SEP delimited list of all paired combinations of elements of -# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list -# has the form PREFIXmINFIXSUFFIXn. -# Needed until we can rely on m4_combine added in Autoconf 2.62. -m4_define([lt_combine], -[m4_if(m4_eval([$# > 3]), [1], - [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl -[[m4_foreach([_Lt_prefix], [$2], - [m4_foreach([_Lt_suffix], - ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[, - [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])]) - - -# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ]) -# ----------------------------------------------------------------------- -# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited -# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ. -m4_define([lt_if_append_uniq], -[m4_ifdef([$1], - [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1], - [lt_append([$1], [$2], [$3])$4], - [$5])], - [lt_append([$1], [$2], [$3])$4])]) - - -# lt_dict_add(DICT, KEY, VALUE) -# ----------------------------- -m4_define([lt_dict_add], -[m4_define([$1($2)], [$3])]) - - -# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE) -# -------------------------------------------- -m4_define([lt_dict_add_subkey], -[m4_define([$1($2:$3)], [$4])]) - - -# lt_dict_fetch(DICT, KEY, [SUBKEY]) -# ---------------------------------- -m4_define([lt_dict_fetch], -[m4_ifval([$3], - m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]), - m4_ifdef([$1($2)], [m4_defn([$1($2)])]))]) - - -# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE]) -# ----------------------------------------------------------------- -m4_define([lt_if_dict_fetch], -[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4], - [$5], - [$6])]) - - -# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...]) -# -------------------------------------------------------------- -m4_define([lt_dict_filter], -[m4_if([$5], [], [], - [lt_join(m4_quote(m4_default([$4], [[, ]])), - lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]), - [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl -]) diff --git a/m4/ltversion.m4 b/m4/ltversion.m4 deleted file mode 100644 index f3c5309..0000000 --- a/m4/ltversion.m4 +++ /dev/null @@ -1,23 +0,0 @@ -# ltversion.m4 -- version numbers -*- Autoconf -*- -# -# Copyright (C) 2004 Free Software Foundation, Inc. -# Written by Scott James Remnant, 2004 -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. - -# Generated from ltversion.in. - -# serial 3017 ltversion.m4 -# This file is part of GNU Libtool - -m4_define([LT_PACKAGE_VERSION], [2.2.6b]) -m4_define([LT_PACKAGE_REVISION], [1.3017]) - -AC_DEFUN([LTVERSION_VERSION], -[macro_version='2.2.6b' -macro_revision='1.3017' -_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) -_LT_DECL(, macro_revision, 0) -]) diff --git a/m4/lt~obsolete.m4 b/m4/lt~obsolete.m4 deleted file mode 100644 index 637bb20..0000000 --- a/m4/lt~obsolete.m4 +++ /dev/null @@ -1,92 +0,0 @@ -# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- -# -# Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. -# Written by Scott James Remnant, 2004. -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. - -# serial 4 lt~obsolete.m4 - -# These exist entirely to fool aclocal when bootstrapping libtool. -# -# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN) -# which have later been changed to m4_define as they aren't part of the -# exported API, or moved to Autoconf or Automake where they belong. -# -# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN -# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us -# using a macro with the same name in our local m4/libtool.m4 it'll -# pull the old libtool.m4 in (it doesn't see our shiny new m4_define -# and doesn't know about Autoconf macros at all.) -# -# So we provide this file, which has a silly filename so it's always -# included after everything else. This provides aclocal with the -# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything -# because those macros already exist, or will be overwritten later. -# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. -# -# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here. -# Yes, that means every name once taken will need to remain here until -# we give up compatibility with versions before 1.7, at which point -# we need to keep only those names which we still refer to. - -# This is to help aclocal find these macros, as it can't see m4_define. -AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])]) - -m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])]) -m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])]) -m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])]) -m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])]) -m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])]) -m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])]) -m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])]) -m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])]) -m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])]) -m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])]) -m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])]) -m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])]) -m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])]) -m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])]) -m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])]) -m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])]) -m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])]) -m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])]) -m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])]) -m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])]) -m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])]) -m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])]) -m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])]) -m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])]) -m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])]) -m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])]) -m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])]) -m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])]) -m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])]) -m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])]) -m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])]) -m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])]) -m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])]) -m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])]) -m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])]) -m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])]) -m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])]) -m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])]) -m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])]) -m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])]) -m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])]) -m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])]) -m4_ifndef([AC_LIBTOOL_RC], [AC_DEFUN([AC_LIBTOOL_RC])]) -m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])]) -m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])]) -m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])]) -m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])]) -m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])]) -m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])]) -m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])]) -m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])]) -m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])]) -m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])]) -m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])]) -m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])]) diff --git a/tests/Makefile.am b/tests/Makefile.am index 61b3e69..a2c0716 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -17,10 +17,16 @@ TESTS = \ test-gtk-objects-test \ test-gtk-label \ test-gtk-shortcut \ - test-gtk-shortcut-python \ test-gtk-reorder \ test-gtk-submenu \ - test-gtk-parser-test \ + test-gtk-parser-test + +# The Python test only work on the system copy of +# dbusmenu, so while they can be usefule they're not +# good tests of what you're currently building. Handy +# to check GI support though. FIXME! +PYTHON_TESTS = \ + test-gtk-shortcut-python \ test-glib-simple-items.py check_PROGRAMS = \ diff --git a/tests/Makefile.in b/tests/Makefile.in index 1645591..b6af70f 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -40,8 +40,7 @@ TESTS = test-glib-objects-test test-glib-events test-glib-layout \ test-glib-properties test-glib-proxy \ test-glib-simple-items$(EXEEXT) test-glib-submenu test-json \ test-gtk-objects-test test-gtk-label test-gtk-shortcut \ - test-gtk-shortcut-python test-gtk-reorder test-gtk-submenu \ - test-gtk-parser-test test-glib-simple-items.py + test-gtk-reorder test-gtk-submenu test-gtk-parser-test check_PROGRAMS = glib-server-nomenu$(EXEEXT) \ test-glib-objects$(EXEEXT) test-glib-events-client$(EXEEXT) \ test-glib-events-server$(EXEEXT) \ @@ -65,12 +64,7 @@ DIST_COMMON = $(libdbusmenu_jsonloaderinclude_HEADERS) \ $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/dbusmenu-jsonloader-0.4.pc.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/gnome-doc-utils.m4 \ - $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/intltool.m4 \ - $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs @@ -649,6 +643,15 @@ EXTRA_DIST = test-glib-simple-items.py test-gtk-shortcut-client.py \ dbusmenu-gtk/mago_tests/data/static.json \ dbusmenu-gtk/mago_tests/data/test-gtk-label.json \ test-json-01.json + +# The Python test only work on the system copy of +# dbusmenu, so while they can be usefule they're not +# good tests of what you're currently building. Handy +# to check GI support though. FIXME! +PYTHON_TESTS = \ + test-gtk-shortcut-python \ + test-glib-simple-items.py + XVFB_RUN = ". $(srcdir)/run-xvfb.sh" # for the GI tests, prefer/use the typelibs from the local build tree diff --git a/tools/Makefile.in b/tools/Makefile.in index 64c2fa5..fb008b5 100644 --- a/tools/Makefile.in +++ b/tools/Makefile.in @@ -40,12 +40,7 @@ libexec_PROGRAMS = dbusmenu-dumper$(EXEEXT) subdir = tools DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/gnome-doc-utils.m4 \ - $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/intltool.m4 \ - $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs diff --git a/tools/testapp/Makefile.in b/tools/testapp/Makefile.in index ae9b152..2d8311a 100644 --- a/tools/testapp/Makefile.in +++ b/tools/testapp/Makefile.in @@ -38,12 +38,7 @@ libexec_PROGRAMS = dbusmenu-testapp$(EXEEXT) subdir = tools/testapp DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/gnome-doc-utils.m4 \ - $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/intltool.m4 \ - $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs |