ibus-1.5.32/0000755000000000000000000000000014775217606006272 5ibus-1.5.32/m4/0000755000000000000000000000000014775217563006614 5ibus-1.5.32/m4/ax_prog_cc_for_build.m40000644000000000000000000001233714775216466013136 # =========================================================================== # https://www.gnu.org/software/autoconf-archive/ax_prog_cc_for_build.html # =========================================================================== # # SYNOPSIS # # AX_PROG_CC_FOR_BUILD # # DESCRIPTION # # This macro searches for a C compiler that generates native executables, # that is a C compiler that surely is not a cross-compiler. This can be # useful if you have to generate source code at compile-time like for # example GCC does. # # The macro sets the CC_FOR_BUILD and CPP_FOR_BUILD macros to anything # needed to compile or link (CC_FOR_BUILD) and preprocess (CPP_FOR_BUILD). # The value of these variables can be overridden by the user by specifying # a compiler with an environment variable (like you do for standard CC). # # It also sets BUILD_EXEEXT and BUILD_OBJEXT to the executable and object # file extensions for the build platform, and GCC_FOR_BUILD to `yes' if # the compiler we found is GCC. All these variables but GCC_FOR_BUILD are # substituted in the Makefile. # # LICENSE # # Copyright (c) 2008 Paolo Bonzini # # Copying and distribution of this file, with or without modification, are # permitted in any medium without royalty provided the copyright notice # and this notice are preserved. This file is offered as-is, without any # warranty. #serial 21 AU_ALIAS([AC_PROG_CC_FOR_BUILD], [AX_PROG_CC_FOR_BUILD]) AC_DEFUN([AX_PROG_CC_FOR_BUILD], [dnl AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_PROG_CPP])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl dnl Use the standard macros, but make them use other variable names dnl pushdef([ac_cv_prog_CPP], ac_cv_build_prog_CPP)dnl pushdef([ac_cv_prog_cc_c89], ac_cv_build_prog_cc_c89)dnl pushdef([ac_cv_prog_cc_c99], ac_cv_build_prog_cc_c99)dnl pushdef([ac_cv_prog_cc_c11], ac_cv_build_prog_cc_c11)dnl pushdef([ac_cv_prog_gcc], ac_cv_build_prog_gcc)dnl pushdef([ac_cv_prog_cc_works], ac_cv_build_prog_cc_works)dnl pushdef([ac_cv_prog_cc_cross], ac_cv_build_prog_cc_cross)dnl pushdef([ac_cv_prog_cc_g], ac_cv_build_prog_cc_g)dnl pushdef([ac_cv_c_compiler_gnu], ac_cv_build_c_compiler_gnu)dnl pushdef([ac_cv_exeext], ac_cv_build_exeext)dnl pushdef([ac_cv_objext], ac_cv_build_objext)dnl pushdef([ac_exeext], ac_build_exeext)dnl pushdef([ac_objext], ac_build_objext)dnl pushdef([CC], CC_FOR_BUILD)dnl pushdef([CPP], CPP_FOR_BUILD)dnl pushdef([GCC], GCC_FOR_BUILD)dnl pushdef([CFLAGS], CFLAGS_FOR_BUILD)dnl pushdef([CPPFLAGS], CPPFLAGS_FOR_BUILD)dnl pushdef([EXEEXT], BUILD_EXEEXT)dnl pushdef([LDFLAGS], LDFLAGS_FOR_BUILD)dnl pushdef([OBJEXT], BUILD_OBJEXT)dnl pushdef([host], build)dnl pushdef([host_alias], build_alias)dnl pushdef([host_cpu], build_cpu)dnl pushdef([host_vendor], build_vendor)dnl pushdef([host_os], build_os)dnl pushdef([ac_cv_host], ac_cv_build)dnl pushdef([ac_cv_host_alias], ac_cv_build_alias)dnl pushdef([ac_cv_host_cpu], ac_cv_build_cpu)dnl pushdef([ac_cv_host_vendor], ac_cv_build_vendor)dnl pushdef([ac_cv_host_os], ac_cv_build_os)dnl pushdef([ac_tool_prefix], ac_build_tool_prefix)dnl pushdef([am_cv_CC_dependencies_compiler_type], am_cv_build_CC_dependencies_compiler_type)dnl pushdef([am_cv_prog_cc_c_o], am_cv_build_prog_cc_c_o)dnl pushdef([cross_compiling], cross_compiling_build)dnl cross_compiling_build=no ac_build_tool_prefix= AS_IF([test -n "$build"], [ac_build_tool_prefix="$build-"], [test -n "$build_alias"],[ac_build_tool_prefix="$build_alias-"]) AC_LANG_PUSH([C]) dnl The pushdef([ac_cv_c_compiler_gnu], ...) currently does not cover dnl the use of this variable in _AC_LANG_COMPILER_GNU called by dnl AC_PROG_CC. Unset this cache variable temporarily as a workaround. was_set_c_compiler_gnu=${[ac_cv_c_compiler_gnu]+y} AS_IF([test ${was_set_c_compiler_gnu}], [saved_c_compiler_gnu=$[ac_cv_c_compiler_gnu] AS_UNSET([[ac_cv_c_compiler_gnu]])]) AC_PROG_CC dnl Restore ac_cv_c_compiler_gnu AS_IF([test ${was_set_c_compiler_gnu}], [[ac_cv_c_compiler_gnu]=$[saved_c_compiler_gnu]]) _AC_COMPILER_EXEEXT _AC_COMPILER_OBJEXT AC_PROG_CPP dnl Restore the old definitions dnl popdef([cross_compiling])dnl popdef([am_cv_prog_cc_c_o])dnl popdef([am_cv_CC_dependencies_compiler_type])dnl popdef([ac_tool_prefix])dnl popdef([ac_cv_host_os])dnl popdef([ac_cv_host_vendor])dnl popdef([ac_cv_host_cpu])dnl popdef([ac_cv_host_alias])dnl popdef([ac_cv_host])dnl popdef([host_os])dnl popdef([host_vendor])dnl popdef([host_cpu])dnl popdef([host_alias])dnl popdef([host])dnl popdef([OBJEXT])dnl popdef([LDFLAGS])dnl popdef([EXEEXT])dnl popdef([CPPFLAGS])dnl popdef([CFLAGS])dnl popdef([GCC])dnl popdef([CPP])dnl popdef([CC])dnl popdef([ac_objext])dnl popdef([ac_exeext])dnl popdef([ac_cv_objext])dnl popdef([ac_cv_exeext])dnl popdef([ac_cv_c_compiler_gnu])dnl popdef([ac_cv_prog_cc_g])dnl popdef([ac_cv_prog_cc_cross])dnl popdef([ac_cv_prog_cc_works])dnl popdef([ac_cv_prog_cc_c89])dnl popdef([ac_cv_prog_gcc])dnl popdef([ac_cv_prog_CPP])dnl dnl restore global variables ac_ext, ac_cpp, ac_compile, dnl ac_link, ac_compiler_gnu (dependant on the current dnl language after popping): AC_LANG_POP([C]) dnl Finally, set Makefile variables dnl AC_SUBST(BUILD_EXEEXT)dnl AC_SUBST(BUILD_OBJEXT)dnl AC_SUBST([CFLAGS_FOR_BUILD])dnl AC_SUBST([CPPFLAGS_FOR_BUILD])dnl AC_SUBST([LDFLAGS_FOR_BUILD])dnl ]) ibus-1.5.32/m4/gettext.m40000644000000000000000000003676314775216741010476 # gettext.m4 serial 68 (gettext-0.19.8) dnl Copyright (C) 1995-2014, 2016 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. dnl dnl This file can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public dnl License but which still want to provide support for the GNU gettext dnl functionality. dnl Please note that the actual code of the GNU gettext library is covered dnl by the GNU Library General Public License, and the rest of the GNU dnl gettext package is covered by the GNU General Public License. dnl They are *not* in the public domain. dnl Authors: dnl Ulrich Drepper , 1995-2000. dnl Bruno Haible , 2000-2006, 2008-2010. dnl Macro to add for using GNU gettext. dnl Usage: AM_GNU_GETTEXT([INTLSYMBOL], [NEEDSYMBOL], [INTLDIR]). dnl INTLSYMBOL can be one of 'external', 'no-libtool', 'use-libtool'. The dnl default (if it is not specified or empty) is 'no-libtool'. dnl INTLSYMBOL should be 'external' for packages with no intl directory, dnl and 'no-libtool' or 'use-libtool' for packages with an intl directory. dnl If INTLSYMBOL is 'use-libtool', then a libtool library dnl $(top_builddir)/intl/libintl.la will be created (shared and/or static, dnl depending on --{enable,disable}-{shared,static} and on the presence of dnl AM-DISABLE-SHARED). If INTLSYMBOL is 'no-libtool', a static library dnl $(top_builddir)/intl/libintl.a will be created. dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext dnl implementations (in libc or libintl) without the ngettext() function dnl will be ignored. If NEEDSYMBOL is specified and is dnl 'need-formatstring-macros', then GNU gettext implementations that don't dnl support the ISO C 99 formatstring macros will be ignored. dnl INTLDIR is used to find the intl libraries. If empty, dnl the value '$(top_builddir)/intl/' is used. dnl dnl The result of the configuration is one of three cases: dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled dnl and used. dnl Catalog format: GNU --> install in $(datadir) dnl Catalog extension: .mo after installation, .gmo in source tree dnl 2) GNU gettext has been found in the system's C library. dnl Catalog format: GNU --> install in $(datadir) dnl Catalog extension: .mo after installation, .gmo in source tree dnl 3) No internationalization, always use English msgid. dnl Catalog format: none dnl Catalog extension: none dnl If INTLSYMBOL is 'external', only cases 2 and 3 can occur. dnl The use of .gmo is historical (it was needed to avoid overwriting the dnl GNU format catalogs when building on a platform with an X/Open gettext), dnl but we keep it in order not to force irrelevant filename changes on the dnl maintainers. dnl AC_DEFUN([AM_GNU_GETTEXT], [ dnl Argument checking. ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [no-libtool], , [ifelse([$1], [use-libtool], , [errprint([ERROR: invalid first argument to AM_GNU_GETTEXT ])])])])]) ifelse(ifelse([$1], [], [old])[]ifelse([$1], [no-libtool], [old]), [old], [AC_DIAGNOSE([obsolete], [Use of AM_GNU_GETTEXT without [external] argument is deprecated.])]) ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], , [errprint([ERROR: invalid second argument to AM_GNU_GETTEXT ])])])]) define([gt_included_intl], ifelse([$1], [external], ifdef([AM_GNU_GETTEXT_][INTL_SUBDIR], [yes], [no]), [yes])) define([gt_libtool_suffix_prefix], ifelse([$1], [use-libtool], [l], [])) gt_NEEDS_INIT AM_GNU_GETTEXT_NEED([$2]) AC_REQUIRE([AM_PO_SUBDIRS])dnl ifelse(gt_included_intl, yes, [ AC_REQUIRE([AM_INTL_SUBDIR])dnl ]) dnl Prerequisites of AC_LIB_LINKFLAGS_BODY. AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) AC_REQUIRE([AC_LIB_RPATH]) dnl Sometimes libintl requires libiconv, so first search for libiconv. dnl Ideally we would do this search only after the dnl if test "$USE_NLS" = "yes"; then dnl if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then dnl tests. But if configure.in invokes AM_ICONV after AM_GNU_GETTEXT dnl the configure script would need to contain the same shell code dnl again, outside any 'if'. There are two solutions: dnl - Invoke AM_ICONV_LINKFLAGS_BODY here, outside any 'if'. dnl - Control the expansions in more detail using AC_PROVIDE_IFELSE. dnl Since AC_PROVIDE_IFELSE is only in autoconf >= 2.52 and not dnl documented, we avoid it. ifelse(gt_included_intl, yes, , [ AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY]) ]) dnl Sometimes, on Mac OS X, libintl requires linking with CoreFoundation. gt_INTL_MACOSX dnl Set USE_NLS. AC_REQUIRE([AM_NLS]) ifelse(gt_included_intl, yes, [ BUILD_INCLUDED_LIBINTL=no USE_INCLUDED_LIBINTL=no ]) LIBINTL= LTLIBINTL= POSUB= dnl Add a version number to the cache macros. case " $gt_needs " in *" need-formatstring-macros "*) gt_api_version=3 ;; *" need-ngettext "*) gt_api_version=2 ;; *) gt_api_version=1 ;; esac gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc" gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl" dnl If we use NLS figure out what method if test "$USE_NLS" = "yes"; then gt_use_preinstalled_gnugettext=no ifelse(gt_included_intl, yes, [ AC_MSG_CHECKING([whether included gettext is requested]) AC_ARG_WITH([included-gettext], [ --with-included-gettext use the GNU gettext library included here], nls_cv_force_use_gnu_gettext=$withval, nls_cv_force_use_gnu_gettext=no) AC_MSG_RESULT([$nls_cv_force_use_gnu_gettext]) nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext" if test "$nls_cv_force_use_gnu_gettext" != "yes"; then ]) dnl User does not insist on using GNU NLS library. Figure out what dnl to use. If GNU gettext is available we use this. Else we have dnl to fall back to GNU NLS library. if test $gt_api_version -ge 3; then gt_revision_test_code=' #ifndef __GNU_GETTEXT_SUPPORTED_REVISION #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) #endif changequote(,)dnl typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; changequote([,])dnl ' else gt_revision_test_code= fi if test $gt_api_version -ge 2; then gt_expression_test_code=' + * ngettext ("", "", 0)' else gt_expression_test_code= fi AC_CACHE_CHECK([for GNU gettext in libc], [$gt_func_gnugettext_libc], [AC_LINK_IFELSE( [AC_LANG_PROGRAM( [[ #include #ifndef __GNU_GETTEXT_SUPPORTED_REVISION extern int _nl_msg_cat_cntr; extern int *_nl_domain_bindings; #define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_domain_bindings) #else #define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 #endif $gt_revision_test_code ]], [[ bindtextdomain ("", ""); return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION ]])], [eval "$gt_func_gnugettext_libc=yes"], [eval "$gt_func_gnugettext_libc=no"])]) if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then dnl Sometimes libintl requires libiconv, so first search for libiconv. ifelse(gt_included_intl, yes, , [ AM_ICONV_LINK ]) dnl Search for libintl and define LIBINTL, LTLIBINTL and INCINTL dnl accordingly. Don't use AC_LIB_LINKFLAGS_BODY([intl],[iconv]) dnl because that would add "-liconv" to LIBINTL and LTLIBINTL dnl even if libiconv doesn't exist. AC_LIB_LINKFLAGS_BODY([intl]) AC_CACHE_CHECK([for GNU gettext in libintl], [$gt_func_gnugettext_libintl], [gt_save_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$CPPFLAGS $INCINTL" gt_save_LIBS="$LIBS" LIBS="$LIBS $LIBINTL" dnl Now see whether libintl exists and does not depend on libiconv. AC_LINK_IFELSE( [AC_LANG_PROGRAM( [[ #include #ifndef __GNU_GETTEXT_SUPPORTED_REVISION extern int _nl_msg_cat_cntr; extern #ifdef __cplusplus "C" #endif const char *_nl_expand_alias (const char *); #define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias ("")) #else #define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 #endif $gt_revision_test_code ]], [[ bindtextdomain ("", ""); return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION ]])], [eval "$gt_func_gnugettext_libintl=yes"], [eval "$gt_func_gnugettext_libintl=no"]) dnl Now see whether libintl exists and depends on libiconv. if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then LIBS="$LIBS $LIBICONV" AC_LINK_IFELSE( [AC_LANG_PROGRAM( [[ #include #ifndef __GNU_GETTEXT_SUPPORTED_REVISION extern int _nl_msg_cat_cntr; extern #ifdef __cplusplus "C" #endif const char *_nl_expand_alias (const char *); #define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias ("")) #else #define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 #endif $gt_revision_test_code ]], [[ bindtextdomain ("", ""); return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION ]])], [LIBINTL="$LIBINTL $LIBICONV" LTLIBINTL="$LTLIBINTL $LTLIBICONV" eval "$gt_func_gnugettext_libintl=yes" ]) fi CPPFLAGS="$gt_save_CPPFLAGS" LIBS="$gt_save_LIBS"]) fi dnl If an already present or preinstalled GNU gettext() is found, dnl use it. But if this macro is used in GNU gettext, and GNU dnl gettext is already preinstalled in libintl, we update this dnl libintl. (Cf. the install rule in intl/Makefile.in.) if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \ || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \ && test "$PACKAGE" != gettext-runtime \ && test "$PACKAGE" != gettext-tools; }; then gt_use_preinstalled_gnugettext=yes else dnl Reset the values set by searching for libintl. LIBINTL= LTLIBINTL= INCINTL= fi ifelse(gt_included_intl, yes, [ if test "$gt_use_preinstalled_gnugettext" != "yes"; then dnl GNU gettext is not found in the C library. dnl Fall back on included GNU gettext library. nls_cv_use_gnu_gettext=yes fi fi if test "$nls_cv_use_gnu_gettext" = "yes"; then dnl Mark actions used to generate GNU NLS library. BUILD_INCLUDED_LIBINTL=yes USE_INCLUDED_LIBINTL=yes LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LIBICONV $LIBTHREAD" LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LTLIBICONV $LTLIBTHREAD" LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'` fi CATOBJEXT= if test "$gt_use_preinstalled_gnugettext" = "yes" \ || test "$nls_cv_use_gnu_gettext" = "yes"; then dnl Mark actions to use GNU gettext tools. CATOBJEXT=.gmo fi ]) if test -n "$INTL_MACOSX_LIBS"; then if test "$gt_use_preinstalled_gnugettext" = "yes" \ || test "$nls_cv_use_gnu_gettext" = "yes"; then dnl Some extra flags are needed during linking. LIBINTL="$LIBINTL $INTL_MACOSX_LIBS" LTLIBINTL="$LTLIBINTL $INTL_MACOSX_LIBS" fi fi if test "$gt_use_preinstalled_gnugettext" = "yes" \ || test "$nls_cv_use_gnu_gettext" = "yes"; then AC_DEFINE([ENABLE_NLS], [1], [Define to 1 if translation of program messages to the user's native language is requested.]) else USE_NLS=no fi fi AC_MSG_CHECKING([whether to use NLS]) AC_MSG_RESULT([$USE_NLS]) if test "$USE_NLS" = "yes"; then AC_MSG_CHECKING([where the gettext function comes from]) if test "$gt_use_preinstalled_gnugettext" = "yes"; then if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then gt_source="external libintl" else gt_source="libc" fi else gt_source="included intl directory" fi AC_MSG_RESULT([$gt_source]) fi if test "$USE_NLS" = "yes"; then if test "$gt_use_preinstalled_gnugettext" = "yes"; then if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then AC_MSG_CHECKING([how to link with libintl]) AC_MSG_RESULT([$LIBINTL]) AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCINTL]) fi dnl For backward compatibility. Some packages may be using this. AC_DEFINE([HAVE_GETTEXT], [1], [Define if the GNU gettext() function is already present or preinstalled.]) AC_DEFINE([HAVE_DCGETTEXT], [1], [Define if the GNU dcgettext() function is already present or preinstalled.]) fi dnl We need to process the po/ directory. POSUB=po fi ifelse(gt_included_intl, yes, [ dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL dnl to 'yes' because some of the testsuite requires it. if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then BUILD_INCLUDED_LIBINTL=yes fi dnl Make all variables we use known to autoconf. AC_SUBST([BUILD_INCLUDED_LIBINTL]) AC_SUBST([USE_INCLUDED_LIBINTL]) AC_SUBST([CATOBJEXT]) dnl For backward compatibility. Some configure.ins may be using this. nls_cv_header_intl= nls_cv_header_libgt= dnl For backward compatibility. Some Makefiles may be using this. DATADIRNAME=share AC_SUBST([DATADIRNAME]) dnl For backward compatibility. Some Makefiles may be using this. INSTOBJEXT=.mo AC_SUBST([INSTOBJEXT]) dnl For backward compatibility. Some Makefiles may be using this. GENCAT=gencat AC_SUBST([GENCAT]) dnl For backward compatibility. Some Makefiles may be using this. INTLOBJS= if test "$USE_INCLUDED_LIBINTL" = yes; then INTLOBJS="\$(GETTOBJS)" fi AC_SUBST([INTLOBJS]) dnl Enable libtool support if the surrounding package wishes it. INTL_LIBTOOL_SUFFIX_PREFIX=gt_libtool_suffix_prefix AC_SUBST([INTL_LIBTOOL_SUFFIX_PREFIX]) ]) dnl For backward compatibility. Some Makefiles may be using this. INTLLIBS="$LIBINTL" AC_SUBST([INTLLIBS]) dnl Make all documented variables known to autoconf. AC_SUBST([LIBINTL]) AC_SUBST([LTLIBINTL]) AC_SUBST([POSUB]) ]) dnl gt_NEEDS_INIT ensures that the gt_needs variable is initialized. m4_define([gt_NEEDS_INIT], [ m4_divert_text([DEFAULTS], [gt_needs=]) m4_define([gt_NEEDS_INIT], []) ]) dnl Usage: AM_GNU_GETTEXT_NEED([NEEDSYMBOL]) AC_DEFUN([AM_GNU_GETTEXT_NEED], [ m4_divert_text([INIT_PREPARE], [gt_needs="$gt_needs $1"]) ]) dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version]) AC_DEFUN([AM_GNU_GETTEXT_VERSION], []) dnl Usage: AM_GNU_GETTEXT_REQUIRE_VERSION([gettext-version]) AC_DEFUN([AM_GNU_GETTEXT_REQUIRE_VERSION], []) ibus-1.5.32/m4/gtk-doc.m40000644000000000000000000001066014775216746010333 # -*- mode: autoconf -*- # # gtk-doc.m4 - configure macro to check for gtk-doc # Copyright (C) 2003 James Henstridge # 2007-2017 Stefan Sauer # # 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 3 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, see . # # As a special exception, the above copyright owner gives unlimited # permission to copy, distribute and modify the configure scripts that # are the output of Autoconf when processing the Macro. You need not # follow the terms of the GNU General Public License when using or # distributing such scripts, even though portions of the text of the # Macro appear in them. The GNU General Public License (GPL) does govern # all other use of the material that constitutes the Autoconf Macro. # serial 2 dnl Usage: dnl GTK_DOC_CHECK([minimum-gtk-doc-version]) AC_DEFUN([GTK_DOC_CHECK], [ AC_REQUIRE([PKG_PROG_PKG_CONFIG]) AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first ifelse([$1],[],[gtk_doc_requires="gtk-doc"],[gtk_doc_requires="gtk-doc >= $1"]) AC_MSG_CHECKING([for gtk-doc]) PKG_CHECK_EXISTS([$gtk_doc_requires],[have_gtk_doc=yes],[have_gtk_doc=no]) AC_MSG_RESULT($have_gtk_doc) if test "$have_gtk_doc" = "no"; then AC_MSG_WARN([ You will not be able to create source packages with 'make dist' because $gtk_doc_requires is not found.]) fi dnl check for tools we added during development dnl Use AC_CHECK_PROG to avoid the check target using an absolute path that dnl may not be writable by the user. Currently, automake requires that the dnl test name must end in '.test'. dnl https://bugzilla.gnome.org/show_bug.cgi?id=701638 AC_CHECK_PROG([GTKDOC_CHECK],[gtkdoc-check],[gtkdoc-check.test]) AC_PATH_PROG([GTKDOC_CHECK_PATH],[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]) AC_MSG_CHECKING([whether to build gtk-doc documentation]) AC_MSG_RESULT($enable_gtk_doc) if test "x$enable_gtk_doc" = "xyes" && test "$have_gtk_doc" = "no"; then AC_MSG_ERROR([ You must have $gtk_doc_requires installed to build documentation for $PACKAGE_NAME. Please install gtk-doc or disable building the documentation by adding '--disable-gtk-doc' to '[$]0'.]) fi dnl don't check for glib if we build glib if test "x$PACKAGE_NAME" != "xglib"; then dnl don't fail if someone does not have glib PKG_CHECK_MODULES(GTKDOC_DEPS, glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0,,[:]) fi 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 if test -z "$AM_DEFAULT_VERBOSITY"; then AM_DEFAULT_VERBOSITY=1 fi AC_SUBST([AM_DEFAULT_VERBOSITY]) AM_CONDITIONAL([HAVE_GTK_DOC], [test x$have_gtk_doc = xyes]) 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"]) ]) ibus-1.5.32/m4/ibuslocale.m40000644000000000000000000000104614775216466011122 AC_DEFUN([DEFINE_IBUS_LOCALEDIR], [ ibus_save_prefix="$prefix" ibus_save_datarootdir="$datarootdir" ibus_save_datadir="$datadir" ibus_save_localedir="$localedir" test "x$prefix" = xNONE && prefix=$ac_default_prefix datarootdir=`eval echo "$datarootdir"` datadir=`eval echo "$datadir"` test "x$localedir" = xNONE && localedir="${datadir}/locale" ibus_localedir=`eval echo "$localedir"` ibus_datadir=`eval echo "$datadir"` localedir="$ibus_save_localedir" datadir="$ibus_save_datadir" datarootdir="$ibus_save_datarootdir" prefix="$ibus_save_prefix" ]) ibus-1.5.32/m4/iconv.m40000644000000000000000000002207214775216741010114 # iconv.m4 serial 19 (gettext-0.18.2) dnl Copyright (C) 2000-2002, 2007-2014, 2016 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. AC_DEFUN([AM_ICONV_LINKFLAGS_BODY], [ dnl Prerequisites of AC_LIB_LINKFLAGS_BODY. AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) AC_REQUIRE([AC_LIB_RPATH]) dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV dnl accordingly. AC_LIB_LINKFLAGS_BODY([iconv]) ]) AC_DEFUN([AM_ICONV_LINK], [ dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and dnl those with the standalone portable GNU libiconv installed). AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV dnl accordingly. AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY]) dnl Add $INCICONV to CPPFLAGS before performing the following checks, dnl because if the user has installed libiconv and not disabled its use dnl via --without-libiconv-prefix, he wants to use it. The first dnl AC_LINK_IFELSE will then fail, the second AC_LINK_IFELSE will succeed. am_save_CPPFLAGS="$CPPFLAGS" AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV]) AC_CACHE_CHECK([for iconv], [am_cv_func_iconv], [ am_cv_func_iconv="no, consider installing GNU libiconv" am_cv_lib_iconv=no AC_LINK_IFELSE( [AC_LANG_PROGRAM( [[ #include #include ]], [[iconv_t cd = iconv_open("",""); iconv(cd,NULL,NULL,NULL,NULL); iconv_close(cd);]])], [am_cv_func_iconv=yes]) if test "$am_cv_func_iconv" != yes; then am_save_LIBS="$LIBS" LIBS="$LIBS $LIBICONV" AC_LINK_IFELSE( [AC_LANG_PROGRAM( [[ #include #include ]], [[iconv_t cd = iconv_open("",""); iconv(cd,NULL,NULL,NULL,NULL); iconv_close(cd);]])], [am_cv_lib_iconv=yes] [am_cv_func_iconv=yes]) LIBS="$am_save_LIBS" fi ]) if test "$am_cv_func_iconv" = yes; then AC_CACHE_CHECK([for working iconv], [am_cv_func_iconv_works], [ dnl This tests against bugs in AIX 5.1, AIX 6.1..7.1, HP-UX 11.11, dnl Solaris 10. am_save_LIBS="$LIBS" if test $am_cv_lib_iconv = yes; then LIBS="$LIBS $LIBICONV" fi am_cv_func_iconv_works=no for ac_iconv_const in '' 'const'; do AC_RUN_IFELSE( [AC_LANG_PROGRAM( [[ #include #include #ifndef ICONV_CONST # define ICONV_CONST $ac_iconv_const #endif ]], [[int result = 0; /* Test against AIX 5.1 bug: Failures are not distinguishable from successful returns. */ { iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8"); if (cd_utf8_to_88591 != (iconv_t)(-1)) { static ICONV_CONST char input[] = "\342\202\254"; /* EURO SIGN */ char buf[10]; ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_utf8_to_88591, &inptr, &inbytesleft, &outptr, &outbytesleft); if (res == 0) result |= 1; iconv_close (cd_utf8_to_88591); } } /* Test against Solaris 10 bug: Failures are not distinguishable from successful returns. */ { iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646"); if (cd_ascii_to_88591 != (iconv_t)(-1)) { static ICONV_CONST char input[] = "\263"; char buf[10]; ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_ascii_to_88591, &inptr, &inbytesleft, &outptr, &outbytesleft); if (res == 0) result |= 2; iconv_close (cd_ascii_to_88591); } } /* Test against AIX 6.1..7.1 bug: Buffer overrun. */ { iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1"); if (cd_88591_to_utf8 != (iconv_t)(-1)) { static ICONV_CONST char input[] = "\304"; static char buf[2] = { (char)0xDE, (char)0xAD }; ICONV_CONST char *inptr = input; size_t inbytesleft = 1; char *outptr = buf; size_t outbytesleft = 1; size_t res = iconv (cd_88591_to_utf8, &inptr, &inbytesleft, &outptr, &outbytesleft); if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD) result |= 4; iconv_close (cd_88591_to_utf8); } } #if 0 /* This bug could be worked around by the caller. */ /* Test against HP-UX 11.11 bug: Positive return value instead of 0. */ { iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591"); if (cd_88591_to_utf8 != (iconv_t)(-1)) { static ICONV_CONST char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337"; char buf[50]; ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_88591_to_utf8, &inptr, &inbytesleft, &outptr, &outbytesleft); if ((int)res > 0) result |= 8; iconv_close (cd_88591_to_utf8); } } #endif /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is provided. */ if (/* Try standardized names. */ iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1) /* Try IRIX, OSF/1 names. */ && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1) /* Try AIX names. */ && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1) /* Try HP-UX names. */ && iconv_open ("utf8", "eucJP") == (iconv_t)(-1)) result |= 16; return result; ]])], [am_cv_func_iconv_works=yes], , [case "$host_os" in aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; *) am_cv_func_iconv_works="guessing yes" ;; esac]) test "$am_cv_func_iconv_works" = no || break done LIBS="$am_save_LIBS" ]) case "$am_cv_func_iconv_works" in *no) am_func_iconv=no am_cv_lib_iconv=no ;; *) am_func_iconv=yes ;; esac else am_func_iconv=no am_cv_lib_iconv=no fi if test "$am_func_iconv" = yes; then AC_DEFINE([HAVE_ICONV], [1], [Define if you have the iconv() function and it works.]) fi if test "$am_cv_lib_iconv" = yes; then AC_MSG_CHECKING([how to link with libiconv]) AC_MSG_RESULT([$LIBICONV]) else dnl If $LIBICONV didn't lead to a usable library, we don't need $INCICONV dnl either. CPPFLAGS="$am_save_CPPFLAGS" LIBICONV= LTLIBICONV= fi AC_SUBST([LIBICONV]) AC_SUBST([LTLIBICONV]) ]) dnl Define AM_ICONV using AC_DEFUN_ONCE for Autoconf >= 2.64, in order to dnl avoid warnings like dnl "warning: AC_REQUIRE: `AM_ICONV' was expanded before it was required". dnl This is tricky because of the way 'aclocal' is implemented: dnl - It requires defining an auxiliary macro whose name ends in AC_DEFUN. dnl Otherwise aclocal's initial scan pass would miss the macro definition. dnl - It requires a line break inside the AC_DEFUN_ONCE and AC_DEFUN expansions. dnl Otherwise aclocal would emit many "Use of uninitialized value $1" dnl warnings. m4_define([gl_iconv_AC_DEFUN], m4_version_prereq([2.64], [[AC_DEFUN_ONCE( [$1], [$2])]], [m4_ifdef([gl_00GNULIB], [[AC_DEFUN_ONCE( [$1], [$2])]], [[AC_DEFUN( [$1], [$2])]])])) gl_iconv_AC_DEFUN([AM_ICONV], [ AM_ICONV_LINK if test "$am_cv_func_iconv" = yes; then AC_MSG_CHECKING([for iconv declaration]) AC_CACHE_VAL([am_cv_proto_iconv], [ AC_COMPILE_IFELSE( [AC_LANG_PROGRAM( [[ #include #include extern #ifdef __cplusplus "C" #endif #if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus) size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); #else size_t iconv(); #endif ]], [[]])], [am_cv_proto_iconv_arg1=""], [am_cv_proto_iconv_arg1="const"]) am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"]) am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'` AC_MSG_RESULT([ $am_cv_proto_iconv]) AC_DEFINE_UNQUOTED([ICONV_CONST], [$am_cv_proto_iconv_arg1], [Define as const if the declaration of iconv() needs const.]) dnl Also substitute ICONV_CONST in the gnulib generated . m4_ifdef([gl_ICONV_H_DEFAULTS], [AC_REQUIRE([gl_ICONV_H_DEFAULTS]) if test -n "$am_cv_proto_iconv_arg1"; then ICONV_CONST="const" fi ]) fi ]) ibus-1.5.32/m4/intlmacosx.m40000644000000000000000000000474514775216741011166 # intlmacosx.m4 serial 5 (gettext-0.18.2) dnl Copyright (C) 2004-2014, 2016 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. dnl dnl This file can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public dnl License but which still want to provide support for the GNU gettext dnl functionality. dnl Please note that the actual code of the GNU gettext library is covered dnl by the GNU Library General Public License, and the rest of the GNU dnl gettext package is covered by the GNU General Public License. dnl They are *not* in the public domain. dnl Checks for special options needed on Mac OS X. dnl Defines INTL_MACOSX_LIBS. AC_DEFUN([gt_INTL_MACOSX], [ dnl Check for API introduced in Mac OS X 10.2. AC_CACHE_CHECK([for CFPreferencesCopyAppValue], [gt_cv_func_CFPreferencesCopyAppValue], [gt_save_LIBS="$LIBS" LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" AC_LINK_IFELSE( [AC_LANG_PROGRAM( [[#include ]], [[CFPreferencesCopyAppValue(NULL, NULL)]])], [gt_cv_func_CFPreferencesCopyAppValue=yes], [gt_cv_func_CFPreferencesCopyAppValue=no]) LIBS="$gt_save_LIBS"]) if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then AC_DEFINE([HAVE_CFPREFERENCESCOPYAPPVALUE], [1], [Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in the CoreFoundation framework.]) fi dnl Check for API introduced in Mac OS X 10.3. AC_CACHE_CHECK([for CFLocaleCopyCurrent], [gt_cv_func_CFLocaleCopyCurrent], [gt_save_LIBS="$LIBS" LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" AC_LINK_IFELSE( [AC_LANG_PROGRAM( [[#include ]], [[CFLocaleCopyCurrent();]])], [gt_cv_func_CFLocaleCopyCurrent=yes], [gt_cv_func_CFLocaleCopyCurrent=no]) LIBS="$gt_save_LIBS"]) if test $gt_cv_func_CFLocaleCopyCurrent = yes; then AC_DEFINE([HAVE_CFLOCALECOPYCURRENT], [1], [Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the CoreFoundation framework.]) fi INTL_MACOSX_LIBS= if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation" fi AC_SUBST([INTL_MACOSX_LIBS]) ]) ibus-1.5.32/m4/introspection.m40000644000000000000000000001201414775216466011675 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 dnl This is a copy of AS_AC_EXPAND dnl dnl (C) 2003, 2004, 2005 Thomas Vander Stichele dnl Copying and distribution of this file, with or without modification, dnl are permitted in any medium without royalty provided the copyright dnl notice and this notice are preserved. m4_define([_GOBJECT_INTROSPECTION_AS_AC_EXPAND], [ EXP_VAR=[$1] FROM_VAR=[$2] dnl first expand prefix and exec_prefix if necessary prefix_save=$prefix exec_prefix_save=$exec_prefix dnl if no prefix given, then use /usr/local, the default prefix if test "x$prefix" = "xNONE"; then prefix="$ac_default_prefix" fi dnl if no exec_prefix given, then use prefix if test "x$exec_prefix" = "xNONE"; then exec_prefix=$prefix fi full_var="$FROM_VAR" dnl loop until it doesn't change anymore while true; do new_full_var="`eval echo $full_var`" if test "x$new_full_var" = "x$full_var"; then break; fi full_var=$new_full_var done dnl clean up full_var=$new_full_var AC_SUBST([$1], "$full_var") dnl restore prefix and exec_prefix prefix=$prefix_save exec_prefix=$exec_prefix_save ]) 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 Canonicalize enable_introspection enable_introspection=$found_introspection ],dnl [dnl AC_MSG_ERROR([invalid argument passed to --enable-introspection, should be one of @<:@no/auto/yes@:>@]) ])dnl AC_MSG_RESULT([$found_introspection]) dnl expand datadir/libdir so we can pass them to pkg-config dnl and get paths relative to our target directories _GOBJECT_INTROSPECTION_AS_AC_EXPAND(_GI_EXP_DATADIR, "$datadir") _GOBJECT_INTROSPECTION_AS_AC_EXPAND(_GI_EXP_LIBDIR, "$libdir") INTROSPECTION_SCANNER= INTROSPECTION_COMPILER= INTROSPECTION_GENERATE= INTROSPECTION_GIRDIR= INTROSPECTION_TYPELIBDIR= if test "x$found_introspection" = "xyes"; then INTROSPECTION_SCANNER=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0` INTROSPECTION_COMPILER=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0` INTROSPECTION_GENERATE=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0` INTROSPECTION_GIRDIR=`$PKG_CONFIG --define-variable=datadir="${_GI_EXP_DATADIR}" --variable=girdir gobject-introspection-1.0` INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --define-variable=libdir="${_GI_EXP_LIBDIR}" --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_SYSROOT_DIR`$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]) ]) ibus-1.5.32/m4/lib-ld.m40000644000000000000000000000714314775216741010143 # lib-ld.m4 serial 6 dnl Copyright (C) 1996-2003, 2009-2016 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. dnl Subroutines of libtool.m4, dnl with replacements s/_*LT_PATH/AC_LIB_PROG/ and s/lt_/acl_/ to avoid dnl collision with libtool.m4. dnl From libtool-2.4. Sets the variable with_gnu_ld to yes or no. AC_DEFUN([AC_LIB_PROG_LD_GNU], [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], [acl_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 2>&1 \ && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ || PATH_SEPARATOR=';' } fi 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([acl_cv_path_LD], [if test -z "$LD"; then acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS="$acl_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then acl_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 `"$acl_cv_path_LD" -v 2>&1 = 1.10 to complain if config.rpath is missing. m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([config.rpath])]) AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir AC_CACHE_CHECK([for shared library run path origin], [acl_cv_rpath], [ CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh . ./conftest.sh rm -f ./conftest.sh acl_cv_rpath=done ]) wl="$acl_cv_wl" acl_libext="$acl_cv_libext" acl_shlibext="$acl_cv_shlibext" acl_libname_spec="$acl_cv_libname_spec" acl_library_names_spec="$acl_cv_library_names_spec" acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" acl_hardcode_direct="$acl_cv_hardcode_direct" acl_hardcode_minus_L="$acl_cv_hardcode_minus_L" dnl Determine whether the user wants rpath handling at all. AC_ARG_ENABLE([rpath], [ --disable-rpath do not hardcode runtime library paths], :, enable_rpath=yes) ]) dnl AC_LIB_FROMPACKAGE(name, package) dnl declares that libname comes from the given package. The configure file dnl will then not have a --with-libname-prefix option but a dnl --with-package-prefix option. Several libraries can come from the same dnl package. This declaration must occur before an AC_LIB_LINKFLAGS or similar dnl macro call that searches for libname. AC_DEFUN([AC_LIB_FROMPACKAGE], [ pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-], [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) define([acl_frompackage_]NAME, [$2]) popdef([NAME]) pushdef([PACK],[$2]) pushdef([PACKUP],[m4_translit(PACK,[abcdefghijklmnopqrstuvwxyz./+-], [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) define([acl_libsinpackage_]PACKUP, m4_ifdef([acl_libsinpackage_]PACKUP, [m4_defn([acl_libsinpackage_]PACKUP)[, ]],)[lib$1]) popdef([PACKUP]) popdef([PACK]) ]) dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and dnl the libraries corresponding to explicit and implicit dependencies. dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables. dnl Also, sets the LIB${NAME}_PREFIX variable to nonempty if libname was found dnl in ${LIB${NAME}_PREFIX}/$acl_libdirstem. AC_DEFUN([AC_LIB_LINKFLAGS_BODY], [ AC_REQUIRE([AC_LIB_PREPARE_MULTILIB]) pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-], [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) pushdef([PACK],[m4_ifdef([acl_frompackage_]NAME, [acl_frompackage_]NAME, lib[$1])]) pushdef([PACKUP],[m4_translit(PACK,[abcdefghijklmnopqrstuvwxyz./+-], [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) pushdef([PACKLIBS],[m4_ifdef([acl_frompackage_]NAME, [acl_libsinpackage_]PACKUP, lib[$1])]) dnl Autoconf >= 2.61 supports dots in --with options. pushdef([P_A_C_K],[m4_if(m4_version_compare(m4_defn([m4_PACKAGE_VERSION]),[2.61]),[-1],[m4_translit(PACK,[.],[_])],PACK)]) dnl By default, look in $includedir and $libdir. use_additional=yes AC_LIB_WITH_FINAL_PREFIX([ eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" ]) AC_ARG_WITH(P_A_C_K[-prefix], [[ --with-]]P_A_C_K[[-prefix[=DIR] search for ]PACKLIBS[ in DIR/include and DIR/lib --without-]]P_A_C_K[[-prefix don't search for ]PACKLIBS[ in includedir and libdir]], [ if test "X$withval" = "Xno"; then use_additional=no else if test "X$withval" = "X"; then AC_LIB_WITH_FINAL_PREFIX([ eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" ]) else additional_includedir="$withval/include" additional_libdir="$withval/$acl_libdirstem" if test "$acl_libdirstem2" != "$acl_libdirstem" \ && ! test -d "$withval/$acl_libdirstem"; then additional_libdir="$withval/$acl_libdirstem2" fi fi fi ]) dnl Search the library and its dependencies in $additional_libdir and dnl $LDFLAGS. Using breadth-first-seach. LIB[]NAME= LTLIB[]NAME= INC[]NAME= LIB[]NAME[]_PREFIX= dnl HAVE_LIB${NAME} is an indicator that LIB${NAME}, LTLIB${NAME} have been dnl computed. So it has to be reset here. HAVE_LIB[]NAME= rpathdirs= ltrpathdirs= names_already_handled= names_next_round='$1 $2' while test -n "$names_next_round"; do names_this_round="$names_next_round" names_next_round= for name in $names_this_round; do already_handled= for n in $names_already_handled; do if test "$n" = "$name"; then already_handled=yes break fi done if test -z "$already_handled"; then names_already_handled="$names_already_handled $name" dnl See if it was already located by an earlier AC_LIB_LINKFLAGS dnl or AC_LIB_HAVE_LINKFLAGS call. uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` eval value=\"\$HAVE_LIB$uppername\" if test -n "$value"; then if test "$value" = yes; then eval value=\"\$LIB$uppername\" test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value" eval value=\"\$LTLIB$uppername\" test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value" else dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined dnl that this library doesn't exist. So just drop it. : fi else dnl Search the library lib$name in $additional_libdir and $LDFLAGS dnl and the already constructed $LIBNAME/$LTLIBNAME. found_dir= found_la= found_so= found_a= eval libname=\"$acl_libname_spec\" # typically: libname=lib$name if test -n "$acl_shlibext"; then shrext=".$acl_shlibext" # typically: shrext=.so else shrext= fi if test $use_additional = yes; then dir="$additional_libdir" dnl The same code as in the loop below: dnl First look for a shared library. if test -n "$acl_shlibext"; then if test -f "$dir/$libname$shrext"; then found_dir="$dir" found_so="$dir/$libname$shrext" else if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then ver=`(cd "$dir" && \ for f in "$libname$shrext".*; do echo "$f"; done \ | sed -e "s,^$libname$shrext\\\\.,," \ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ | sed 1q ) 2>/dev/null` if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then found_dir="$dir" found_so="$dir/$libname$shrext.$ver" fi else eval library_names=\"$acl_library_names_spec\" for f in $library_names; do if test -f "$dir/$f"; then found_dir="$dir" found_so="$dir/$f" break fi done fi fi fi dnl Then look for a static library. if test "X$found_dir" = "X"; then if test -f "$dir/$libname.$acl_libext"; then found_dir="$dir" found_a="$dir/$libname.$acl_libext" fi fi if test "X$found_dir" != "X"; then if test -f "$dir/$libname.la"; then found_la="$dir/$libname.la" fi fi fi if test "X$found_dir" = "X"; then for x in $LDFLAGS $LTLIB[]NAME; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) case "$x" in -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` dnl First look for a shared library. if test -n "$acl_shlibext"; then if test -f "$dir/$libname$shrext"; then found_dir="$dir" found_so="$dir/$libname$shrext" else if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then ver=`(cd "$dir" && \ for f in "$libname$shrext".*; do echo "$f"; done \ | sed -e "s,^$libname$shrext\\\\.,," \ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ | sed 1q ) 2>/dev/null` if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then found_dir="$dir" found_so="$dir/$libname$shrext.$ver" fi else eval library_names=\"$acl_library_names_spec\" for f in $library_names; do if test -f "$dir/$f"; then found_dir="$dir" found_so="$dir/$f" break fi done fi fi fi dnl Then look for a static library. if test "X$found_dir" = "X"; then if test -f "$dir/$libname.$acl_libext"; then found_dir="$dir" found_a="$dir/$libname.$acl_libext" fi fi if test "X$found_dir" != "X"; then if test -f "$dir/$libname.la"; then found_la="$dir/$libname.la" fi fi ;; esac if test "X$found_dir" != "X"; then break fi done fi if test "X$found_dir" != "X"; then dnl Found the library. LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name" if test "X$found_so" != "X"; then dnl Linking with a shared library. We attempt to hardcode its dnl directory into the executable's runpath, unless it's the dnl standard /usr/lib. if test "$enable_rpath" = no \ || test "X$found_dir" = "X/usr/$acl_libdirstem" \ || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then dnl No hardcoding is needed. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" else dnl Use an explicit option to hardcode DIR into the resulting dnl binary. dnl Potentially add DIR to ltrpathdirs. dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. haveit= for x in $ltrpathdirs; do if test "X$x" = "X$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then ltrpathdirs="$ltrpathdirs $found_dir" fi dnl The hardcoding into $LIBNAME is system dependent. if test "$acl_hardcode_direct" = yes; then dnl Using DIR/libNAME.so during linking hardcodes DIR into the dnl resulting binary. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" else if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then dnl Use an explicit option to hardcode DIR into the resulting dnl binary. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" dnl Potentially add DIR to rpathdirs. dnl The rpathdirs will be appended to $LIBNAME at the end. haveit= for x in $rpathdirs; do if test "X$x" = "X$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then rpathdirs="$rpathdirs $found_dir" fi else dnl Rely on "-L$found_dir". dnl But don't add it if it's already contained in the LDFLAGS dnl or the already constructed $LIBNAME haveit= for x in $LDFLAGS $LIB[]NAME; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) if test "X$x" = "X-L$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir" fi if test "$acl_hardcode_minus_L" != no; then dnl FIXME: Not sure whether we should use dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" dnl here. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" else dnl We cannot use $acl_hardcode_runpath_var and LD_RUN_PATH dnl here, because this doesn't fit in flags passed to the dnl compiler. So give up. No hardcoding. This affects only dnl very old systems. dnl FIXME: Not sure whether we should use dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" dnl here. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" fi fi fi fi else if test "X$found_a" != "X"; then dnl Linking with a static library. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a" else dnl We shouldn't come here, but anyway it's good to have a dnl fallback. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name" fi fi dnl Assume the include files are nearby. additional_includedir= case "$found_dir" in */$acl_libdirstem | */$acl_libdirstem/) basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` if test "$name" = '$1'; then LIB[]NAME[]_PREFIX="$basedir" fi additional_includedir="$basedir/include" ;; */$acl_libdirstem2 | */$acl_libdirstem2/) basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` if test "$name" = '$1'; then LIB[]NAME[]_PREFIX="$basedir" fi additional_includedir="$basedir/include" ;; esac if test "X$additional_includedir" != "X"; then dnl Potentially add $additional_includedir to $INCNAME. dnl But don't add it dnl 1. if it's the standard /usr/include, dnl 2. if it's /usr/local/include and we are using GCC on Linux, dnl 3. if it's already present in $CPPFLAGS or the already dnl constructed $INCNAME, dnl 4. if it doesn't exist as a directory. if test "X$additional_includedir" != "X/usr/include"; then haveit= if test "X$additional_includedir" = "X/usr/local/include"; then if test -n "$GCC"; then case $host_os in linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi if test -z "$haveit"; then for x in $CPPFLAGS $INC[]NAME; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) if test "X$x" = "X-I$additional_includedir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_includedir"; then dnl Really add $additional_includedir to $INCNAME. INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir" fi fi fi fi fi dnl Look for dependencies. if test -n "$found_la"; then dnl Read the .la file. It defines the variables dnl dlname, library_names, old_library, dependency_libs, current, dnl age, revision, installed, dlopen, dlpreopen, libdir. save_libdir="$libdir" case "$found_la" in */* | *\\*) . "$found_la" ;; *) . "./$found_la" ;; esac libdir="$save_libdir" dnl We use only dependency_libs. for dep in $dependency_libs; do case "$dep" in -L*) additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME. dnl But don't add it dnl 1. if it's the standard /usr/lib, dnl 2. if it's /usr/local/lib and we are using GCC on Linux, dnl 3. if it's already present in $LDFLAGS or the already dnl constructed $LIBNAME, dnl 4. if it doesn't exist as a directory. if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \ && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then haveit= if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \ || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then if test -n "$GCC"; then case $host_os in linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi if test -z "$haveit"; then haveit= for x in $LDFLAGS $LIB[]NAME; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) if test "X$x" = "X-L$additional_libdir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then dnl Really add $additional_libdir to $LIBNAME. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir" fi fi haveit= for x in $LDFLAGS $LTLIB[]NAME; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) if test "X$x" = "X-L$additional_libdir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then dnl Really add $additional_libdir to $LTLIBNAME. LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir" fi fi fi fi ;; -R*) dir=`echo "X$dep" | sed -e 's/^X-R//'` if test "$enable_rpath" != no; then dnl Potentially add DIR to rpathdirs. dnl The rpathdirs will be appended to $LIBNAME at the end. haveit= for x in $rpathdirs; do if test "X$x" = "X$dir"; then haveit=yes break fi done if test -z "$haveit"; then rpathdirs="$rpathdirs $dir" fi dnl Potentially add DIR to ltrpathdirs. dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. haveit= for x in $ltrpathdirs; do if test "X$x" = "X$dir"; then haveit=yes break fi done if test -z "$haveit"; then ltrpathdirs="$ltrpathdirs $dir" fi fi ;; -l*) dnl Handle this in the next round. names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` ;; *.la) dnl Handle this in the next round. Throw away the .la's dnl directory; it is already contained in a preceding -L dnl option. names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` ;; *) dnl Most likely an immediate library name. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep" LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep" ;; esac done fi else dnl Didn't find the library; assume it is in the system directories dnl known to the linker and runtime loader. (All the system dnl directories known to the linker should also be known to the dnl runtime loader, otherwise the system is severely misconfigured.) LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name" fi fi fi done done if test "X$rpathdirs" != "X"; then if test -n "$acl_hardcode_libdir_separator"; then dnl Weird platform: only the last -rpath option counts, the user must dnl pass all path elements in one option. We can arrange that for a dnl single library, but not when more than one $LIBNAMEs are used. alldirs= for found_dir in $rpathdirs; do alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir" done dnl Note: acl_hardcode_libdir_flag_spec uses $libdir and $wl. acl_save_libdir="$libdir" libdir="$alldirs" eval flag=\"$acl_hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" else dnl The -rpath options are cumulative. for found_dir in $rpathdirs; do acl_save_libdir="$libdir" libdir="$found_dir" eval flag=\"$acl_hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" done fi fi if test "X$ltrpathdirs" != "X"; then dnl When using libtool, the option that works for both libraries and dnl executables is -R. The -R options are cumulative. for found_dir in $ltrpathdirs; do LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir" done fi popdef([P_A_C_K]) popdef([PACKLIBS]) popdef([PACKUP]) popdef([PACK]) popdef([NAME]) ]) dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR, dnl unless already present in VAR. dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes dnl contains two or three consecutive elements that belong together. AC_DEFUN([AC_LIB_APPENDTOVAR], [ for element in [$2]; do haveit= for x in $[$1]; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) if test "X$x" = "X$element"; then haveit=yes break fi done if test -z "$haveit"; then [$1]="${[$1]}${[$1]:+ }$element" fi done ]) dnl For those cases where a variable contains several -L and -l options dnl referring to unknown libraries and directories, this macro determines the dnl necessary additional linker options for the runtime path. dnl AC_LIB_LINKFLAGS_FROM_LIBS([LDADDVAR], [LIBSVALUE], [USE-LIBTOOL]) dnl sets LDADDVAR to linker options needed together with LIBSVALUE. dnl If USE-LIBTOOL evaluates to non-empty, linking with libtool is assumed, dnl otherwise linking without libtool is assumed. AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS], [ AC_REQUIRE([AC_LIB_RPATH]) AC_REQUIRE([AC_LIB_PREPARE_MULTILIB]) $1= if test "$enable_rpath" != no; then if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then dnl Use an explicit option to hardcode directories into the resulting dnl binary. rpathdirs= next= for opt in $2; do if test -n "$next"; then dir="$next" dnl No need to hardcode the standard /usr/lib. if test "X$dir" != "X/usr/$acl_libdirstem" \ && test "X$dir" != "X/usr/$acl_libdirstem2"; then rpathdirs="$rpathdirs $dir" fi next= else case $opt in -L) next=yes ;; -L*) dir=`echo "X$opt" | sed -e 's,^X-L,,'` dnl No need to hardcode the standard /usr/lib. if test "X$dir" != "X/usr/$acl_libdirstem" \ && test "X$dir" != "X/usr/$acl_libdirstem2"; then rpathdirs="$rpathdirs $dir" fi next= ;; *) next= ;; esac fi done if test "X$rpathdirs" != "X"; then if test -n ""$3""; then dnl libtool is used for linking. Use -R options. for dir in $rpathdirs; do $1="${$1}${$1:+ }-R$dir" done else dnl The linker is used for linking directly. if test -n "$acl_hardcode_libdir_separator"; then dnl Weird platform: only the last -rpath option counts, the user dnl must pass all path elements in one option. alldirs= for dir in $rpathdirs; do alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$dir" done acl_save_libdir="$libdir" libdir="$alldirs" eval flag=\"$acl_hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" $1="$flag" else dnl The -rpath options are cumulative. for dir in $rpathdirs; do acl_save_libdir="$libdir" libdir="$dir" eval flag=\"$acl_hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" $1="${$1}${$1:+ }$flag" done fi fi fi fi fi AC_SUBST([$1]) ]) ibus-1.5.32/m4/lib-prefix.m40000644000000000000000000002042214775216741011034 # lib-prefix.m4 serial 7 (gettext-0.18) dnl Copyright (C) 2001-2005, 2008-2016 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. dnl AC_LIB_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't dnl require excessive bracketing. ifdef([AC_HELP_STRING], [AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])], [AC_DEFUN([AC_][LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])]) dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed dnl to access previously installed libraries. The basic assumption is that dnl a user will want packages to use other packages he previously installed dnl with the same --prefix option. dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate dnl libraries, but is otherwise very convenient. AC_DEFUN([AC_LIB_PREFIX], [ AC_BEFORE([$0], [AC_LIB_LINKFLAGS]) AC_REQUIRE([AC_PROG_CC]) AC_REQUIRE([AC_CANONICAL_HOST]) AC_REQUIRE([AC_LIB_PREPARE_MULTILIB]) AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) dnl By default, look in $includedir and $libdir. use_additional=yes AC_LIB_WITH_FINAL_PREFIX([ eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" ]) AC_LIB_ARG_WITH([lib-prefix], [ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib --without-lib-prefix don't search for libraries in includedir and libdir], [ if test "X$withval" = "Xno"; then use_additional=no else if test "X$withval" = "X"; then AC_LIB_WITH_FINAL_PREFIX([ eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" ]) else additional_includedir="$withval/include" additional_libdir="$withval/$acl_libdirstem" fi fi ]) if test $use_additional = yes; then dnl Potentially add $additional_includedir to $CPPFLAGS. dnl But don't add it dnl 1. if it's the standard /usr/include, dnl 2. if it's already present in $CPPFLAGS, dnl 3. if it's /usr/local/include and we are using GCC on Linux, dnl 4. if it doesn't exist as a directory. if test "X$additional_includedir" != "X/usr/include"; then haveit= for x in $CPPFLAGS; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) if test "X$x" = "X-I$additional_includedir"; then haveit=yes break fi done if test -z "$haveit"; then if test "X$additional_includedir" = "X/usr/local/include"; then if test -n "$GCC"; then case $host_os in linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi if test -z "$haveit"; then if test -d "$additional_includedir"; then dnl Really add $additional_includedir to $CPPFLAGS. CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir" fi fi fi fi dnl Potentially add $additional_libdir to $LDFLAGS. dnl But don't add it dnl 1. if it's the standard /usr/lib, dnl 2. if it's already present in $LDFLAGS, dnl 3. if it's /usr/local/lib and we are using GCC on Linux, dnl 4. if it doesn't exist as a directory. if test "X$additional_libdir" != "X/usr/$acl_libdirstem"; then haveit= for x in $LDFLAGS; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) if test "X$x" = "X-L$additional_libdir"; then haveit=yes break fi done if test -z "$haveit"; then if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem"; then if test -n "$GCC"; then case $host_os in linux*) haveit=yes;; esac fi fi if test -z "$haveit"; then if test -d "$additional_libdir"; then dnl Really add $additional_libdir to $LDFLAGS. LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir" fi fi fi fi fi ]) dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix, dnl acl_final_exec_prefix, containing the values to which $prefix and dnl $exec_prefix will expand at the end of the configure script. AC_DEFUN([AC_LIB_PREPARE_PREFIX], [ dnl Unfortunately, prefix and exec_prefix get only finally determined dnl at the end of configure. if test "X$prefix" = "XNONE"; then acl_final_prefix="$ac_default_prefix" else acl_final_prefix="$prefix" fi if test "X$exec_prefix" = "XNONE"; then acl_final_exec_prefix='${prefix}' else acl_final_exec_prefix="$exec_prefix" fi acl_save_prefix="$prefix" prefix="$acl_final_prefix" eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" prefix="$acl_save_prefix" ]) dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the dnl variables prefix and exec_prefix bound to the values they will have dnl at the end of the configure script. AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX], [ acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" $1 exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" ]) dnl AC_LIB_PREPARE_MULTILIB creates dnl - a variable acl_libdirstem, containing the basename of the libdir, either dnl "lib" or "lib64" or "lib/64", dnl - a variable acl_libdirstem2, as a secondary possible value for dnl acl_libdirstem, either the same as acl_libdirstem or "lib/sparcv9" or dnl "lib/amd64". AC_DEFUN([AC_LIB_PREPARE_MULTILIB], [ dnl There is no formal standard regarding lib and lib64. dnl On glibc systems, the current practice is that on a system supporting dnl 32-bit and 64-bit instruction sets or ABIs, 64-bit libraries go under dnl $prefix/lib64 and 32-bit libraries go under $prefix/lib. We determine dnl the compiler's default mode by looking at the compiler's library search dnl path. If at least one of its elements ends in /lib64 or points to a dnl directory whose absolute pathname ends in /lib64, we assume a 64-bit ABI. dnl Otherwise we use the default, namely "lib". dnl On Solaris systems, the current practice is that on a system supporting dnl 32-bit and 64-bit instruction sets or ABIs, 64-bit libraries go under dnl $prefix/lib/64 (which is a symlink to either $prefix/lib/sparcv9 or dnl $prefix/lib/amd64) and 32-bit libraries go under $prefix/lib. AC_REQUIRE([AC_CANONICAL_HOST]) acl_libdirstem=lib acl_libdirstem2= case "$host_os" in solaris*) dnl See Solaris 10 Software Developer Collection > Solaris 64-bit Developer's Guide > The Development Environment dnl . dnl "Portable Makefiles should refer to any library directories using the 64 symbolic link." dnl But we want to recognize the sparcv9 or amd64 subdirectory also if the dnl symlink is missing, so we set acl_libdirstem2 too. AC_CACHE_CHECK([for 64-bit host], [gl_cv_solaris_64bit], [AC_EGREP_CPP([sixtyfour bits], [ #ifdef _LP64 sixtyfour bits #endif ], [gl_cv_solaris_64bit=yes], [gl_cv_solaris_64bit=no]) ]) if test $gl_cv_solaris_64bit = yes; then acl_libdirstem=lib/64 case "$host_cpu" in sparc*) acl_libdirstem2=lib/sparcv9 ;; i*86 | x86_64) acl_libdirstem2=lib/amd64 ;; esac fi ;; *) searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'` if test -n "$searchpath"; then acl_save_IFS="${IFS= }"; IFS=":" for searchdir in $searchpath; do if test -d "$searchdir"; then case "$searchdir" in */lib64/ | */lib64 ) acl_libdirstem=lib64 ;; */../ | */.. ) # Better ignore directories of this form. They are misleading. ;; *) searchdir=`cd "$searchdir" && pwd` case "$searchdir" in */lib64 ) acl_libdirstem=lib64 ;; esac ;; esac fi done IFS="$acl_save_IFS" fi ;; esac test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem" ]) ibus-1.5.32/m4/libtool.m40000644000000000000000000113752014775216745010454 # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- # # Copyright (C) 1996-2001, 2003-2019, 2021-2024 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) 2024 Free Software Foundation, Inc. # This is free software; see the source for copying conditions. There is NO # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # 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 this program. If not, see . ]) # serial 63 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.64])dnl We use AC_PATH_PROGS_FEATURE_CHECK AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl 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 _LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}]) 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_PREPARE_CC_BASENAME # ----------------------- m4_defun([_LT_PREPARE_CC_BASENAME], [ # Calculate cc_basename. Skip known compiler wrappers and cross-prefix. func_cc_basename () { for cc_temp in @S|@*""; do case $cc_temp in compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; \-*) ;; *) break;; esac done func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` } ])# _LT_PREPARE_CC_BASENAME # _LT_CC_BASENAME(CC) # ------------------- # It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME, # but that macro is also expanded into generated libtool script, which # arranges for $SED and $ECHO to be set by different means. m4_defun([_LT_CC_BASENAME], [m4_require([_LT_PREPARE_CC_BASENAME])dnl AC_REQUIRE([_LT_DECL_SED])dnl AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl func_cc_basename $1 cc_basename=$func_cc_basename_result ]) # _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 AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl _LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl 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_PATH_CONVERSION_FUNCTIONS])dnl m4_require([_LT_CMD_RELOAD])dnl m4_require([_LT_DECL_FILECMD])dnl m4_require([_LT_CHECK_MAGIC_METHOD])dnl m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl m4_require([_LT_CMD_OLD_ARCHIVE])dnl m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl m4_require([_LT_WITH_SYSROOT])dnl m4_require([_LT_CMD_TRUNCATE])dnl _LT_CONFIG_LIBTOOL_INIT([ # See if we are running on zsh, and set the options that 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 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 set != "${COLLECT_NAMES+set}"; then COLLECT_NAMES= export COLLECT_NAMES fi ;; esac # Global variables: ofile=libtool can_build_shared=yes # All known linkers require a '.a' archive for static linking (except MSVC and # ICC, which need '.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_PREPARE_SED_QUOTE_VARS # -------------------------- # Define a few sed substitution that help us do robust quoting. m4_defun([_LT_PREPARE_SED_QUOTE_VARS], [# Backslashify 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' ]) # _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 "$][$1" | $SED "$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: # # ='`$ECHO "$" | $SED "$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' # A function that is used when there is no print builtin or printf. func_fallback_echo () { eval 'cat <<_LTECHO_EOF \$[]1 _LTECHO_EOF' } # Quote evaled strings. for var in lt_decl_all_varnames([[ \ ]], lt_decl_quote_varnames); do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[[\\\\\\\`\\"\\\$]]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) 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 \\\\""\\\\\$\$var"\\\\"\` in *[[\\\\\\\`\\"\\\$]]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done _LT_OUTPUT_LIBTOOL_INIT ]) # _LT_GENERATED_FILE_INIT(FILE, [COMMENT]) # ------------------------------------ # Generate a child script FILE with all initialization necessary to # reuse the environment learned by the parent script, and make the # file executable. If COMMENT is supplied, it is inserted after the # '#!' sequence but before initialization text begins. After this # macro, additional text can be appended to FILE to form the body of # the child script. The macro ends with non-zero status if the # file could not be fully written (such as if the disk is full). m4_ifdef([AS_INIT_GENERATED], [m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])], [m4_defun([_LT_GENERATED_FILE_INIT], [m4_require([AS_PREPARE])]dnl [m4_pushdef([AS_MESSAGE_LOG_FD])]dnl [lt_write_fail=0 cat >$1 <<_ASEOF || lt_write_fail=1 #! $SHELL # Generated by $as_me. $2 SHELL=\${CONFIG_SHELL-$SHELL} export SHELL _ASEOF cat >>$1 <<\_ASEOF || lt_write_fail=1 AS_SHELL_SANITIZE _AS_PREPARE exec AS_MESSAGE_FD>&1 _ASEOF test 0 = "$lt_write_fail" && chmod +x $1[]dnl m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT # LT_OUTPUT # --------- # This macro allows early generation of the libtool script (before # AC_OUTPUT is called), in case it is used in configure for compilation # tests. AC_DEFUN([LT_OUTPUT], [: ${CONFIG_LT=./config.lt} AC_MSG_NOTICE([creating $CONFIG_LT]) _LT_GENERATED_FILE_INIT(["$CONFIG_LT"], [# Run this file to recreate a libtool stub with the current configuration.]) cat >>"$CONFIG_LT" <<\_LTEOF lt_cl_silent=false 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 ." 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) 2024 Free Software Foundation, Inc. This config.lt script is free software; the Free Software Foundation gives unlimited permission 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. lt_cl_success=: test yes = "$silent" && 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) ])# 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 that 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 # Generated automatically by $as_me ($PACKAGE) $VERSION # NOTE: Changes made to this file will be lost: look at ltmain.sh. # Provide generalized library-building support services. # Written by Gordon Matzigkeit, 1996 _LT_COPYING _LT_LIBTOOL_TAGS # Configured defaults for sys_lib_dlsearch_path munging. : \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} # ### BEGIN LIBTOOL CONFIG _LT_LIBTOOL_CONFIG_VARS _LT_LIBTOOL_TAG_VARS # ### END LIBTOOL CONFIG _LT_EOF cat <<'_LT_EOF' >> "$cfgfile" # ### BEGIN FUNCTIONS SHARED WITH CONFIGURE _LT_PREPARE_MUNGE_PATH_LIST _LT_PREPARE_CC_BASENAME # ### END FUNCTIONS SHARED WITH CONFIGURE _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 set != "${COLLECT_NAMES+set}"; 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 '$q' "$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' 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)], [Go], [_LT_LANG(GO)], [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 m4_ifndef([AC_PROG_GO], [ ############################################################ # NOTE: This macro has been submitted for inclusion into # # GNU Autoconf as AC_PROG_GO. When it is available in # # a released version of Autoconf we should remove this # # macro and use it instead. # ############################################################ m4_defun([AC_PROG_GO], [AC_LANG_PUSH(Go)dnl AC_ARG_VAR([GOC], [Go compiler command])dnl AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl _AC_ARG_VAR_LDFLAGS()dnl AC_CHECK_TOOL(GOC, gccgo) if test -z "$GOC"; then if test -n "$ac_tool_prefix"; then AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo]) fi fi if test -z "$GOC"; then AC_CHECK_PROG(GOC, gccgo, gccgo, false) fi ])#m4_defun ])#m4_ifndef # _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([AC_PROG_GO], [LT_LANG(GO)], [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])]) 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)]) AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)]) 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], []) dnl AC_DEFUN([AC_LIBTOOL_RC], []) # _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 there is a non-empty error log, and "single_module" # appears in it, assume the flag caused a linker warning if test -s conftest.err && $GREP single_module conftest.err; then cat conftest.err >&AS_MESSAGE_LOG_FD # Otherwise, if the output was created with a 0 exit code from # the compiler, it worked. elif test -f libconftest.dylib && test 0 = "$_lt_result"; 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]) # Feature test to disable chained fixups since it is not # compatible with '-undefined dynamic_lookup' AC_CACHE_CHECK([for -no_fixup_chains linker flag], [lt_cv_support_no_fixup_chains], [ save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS -Wl,-no_fixup_chains" AC_LINK_IFELSE( [AC_LANG_PROGRAM([],[])], lt_cv_support_no_fixup_chains=yes, lt_cv_support_no_fixup_chains=no ) LDFLAGS=$save_LDFLAGS ] ) 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 ]) AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load], [lt_cv_ld_force_load=no cat > conftest.c << _LT_EOF int forced_loaded() { return 2;} _LT_EOF echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD echo "$AR $AR_FLAGS libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD $AR $AR_FLAGS libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD cat > conftest.c << _LT_EOF int main(void) { return 0;} _LT_EOF echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err _lt_result=$? if test -s conftest.err && $GREP force_load conftest.err; then cat conftest.err >&AS_MESSAGE_LOG_FD elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then lt_cv_ld_force_load=yes else cat conftest.err >&AS_MESSAGE_LOG_FD fi rm -f conftest.err libconftest.a conftest conftest.c rm -rf conftest.dSYM ]) 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*) case $MACOSX_DEPLOYMENT_TARGET,$host in 10.[[012]],*|,*powerpc*-darwin[[5-8]]*) _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; *) _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' if test yes = "$lt_cv_support_no_fixup_chains"; then AS_VAR_APPEND([_lt_dar_allow_undefined], [' $wl-no_fixup_chains']) fi ;; esac ;; esac if test yes = "$lt_cv_apple_cc_single_mod"; then _lt_dar_single_mod='$single_module' fi _lt_dar_needs_single_mod=no case $host_os in rhapsody* | darwin1.*) _lt_dar_needs_single_mod=yes ;; darwin*) # When targeting Mac OS X 10.4 (darwin 8) or later, # -single_module is the default and -multi_module is unsupported. # The toolchain on macOS 10.14 (darwin 18) and later cannot # target any OS version that needs -single_module. case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 10.0,*-darwin[[567]].*|10.[[0-3]],*-darwin[[5-9]].*|10.[[0-3]],*-darwin1[[0-7]].*) _lt_dar_needs_single_mod=yes ;; esac ;; esac if test yes = "$lt_cv_ld_exported_symbols_list"; 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" && test no = "$lt_cv_ld_force_load"; then _lt_dsymutil='~$DSYMUTIL $lib || :' else _lt_dsymutil= fi ;; esac ]) # _LT_DARWIN_LINKER_FEATURES([TAG]) # --------------------------------- # 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 if test yes = "$lt_cv_ld_force_load"; then _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes], [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes]) else _LT_TAGVAR(whole_archive_flag_spec, $1)='' fi _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined case $cc_basename in ifort*|nagfor*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac if test yes = "$_lt_dar_can_shared"; then output_verbose_link_cmd=func_echo_all _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 yes = "$_lt_dar_needs_single_mod" -a yes != "$lt_cv_apple_cc_single_mod"; 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([TAGNAME]) # ---------------------------------- # 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. # Store the results from the different compilers for each TAGNAME. # Allow to override them for all tags through lt_cv_aix_libpath. m4_defun([_LT_SYS_MODULE_PATH_AIX], [m4_require([_LT_DECL_SED])dnl if test set = "${lt_cv_aix_libpath+set}"; then aix_libpath=$lt_cv_aix_libpath else AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])], [AC_LINK_IFELSE([AC_LANG_PROGRAM],[ lt_aix_libpath_sed='[ /Import File Strings/,/^$/ { /^0/ { s/^0 *\([^ ]*\) *$/\1/ p } }]' _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`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 "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi],[]) if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib fi ]) aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1]) fi ])# _LT_SYS_MODULE_PATH_AIX # _LT_SHELL_INIT(ARG) # ------------------- m4_define([_LT_SHELL_INIT], [m4_divert_text([M4SH-INIT], [$1 ])])# _LT_SHELL_INIT # _LT_PROG_ECHO_BACKSLASH # ----------------------- # Find how we can fake an echo command that does not interpret backslash. # In particular, with Autoconf 2.60 or later we add some code to the start # of the generated configure script that will find a shell with a builtin # printf (that we can use as an echo command). m4_defun([_LT_PROG_ECHO_BACKSLASH], [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO AC_MSG_CHECKING([how to print strings]) # Test print first, because it will be a builtin if present. if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then ECHO='print -r --' elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then ECHO='printf %s\n' else # Use this function as a fallback that always works. func_fallback_echo () { eval 'cat <<_LTECHO_EOF $[]1 _LTECHO_EOF' } ECHO='func_fallback_echo' fi # func_echo_all arg... # Invoke $ECHO with all args, space-separated. func_echo_all () { $ECHO "$*" } case $ECHO in printf*) AC_MSG_RESULT([printf]) ;; print*) AC_MSG_RESULT([print -r]) ;; *) AC_MSG_RESULT([cat]) ;; esac m4_ifdef([_AS_DETECT_SUGGESTED], [_AS_DETECT_SUGGESTED([ test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || ( ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO PATH=/empty FPATH=/empty; export PATH FPATH test "X`printf %s $ECHO`" = "X$ECHO" \ || test "X`print -r -- $ECHO`" = "X$ECHO" )])]) _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts]) _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes]) ])# _LT_PROG_ECHO_BACKSLASH # _LT_WITH_SYSROOT # ---------------- AC_DEFUN([_LT_WITH_SYSROOT], [m4_require([_LT_DECL_SED])dnl AC_MSG_CHECKING([for sysroot]) AC_ARG_WITH([sysroot], [AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@], [Search for dependent libraries within DIR (or the compiler's sysroot if not specified).])], [], [with_sysroot=no]) dnl lt_sysroot will always be passed unquoted. We quote it here dnl in case the user passed a directory name. lt_sysroot= case $with_sysroot in #( yes) if test yes = "$GCC"; then # Trim trailing / since we'll always append absolute paths and we want # to avoid //, if only for less confusing output for the user. lt_sysroot=`$CC --print-sysroot 2>/dev/null | $SED 's:/\+$::'` fi ;; #( /*) lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"` ;; #( no|'') ;; #( *) AC_MSG_RESULT([$with_sysroot]) AC_MSG_ERROR([The sysroot must be an absolute path.]) ;; esac AC_MSG_RESULT([${lt_sysroot:-no}]) _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl [dependent libraries, and where our libraries should be installed.])]) # _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 no = "$enable_libtool_lock" || 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 what ABI is being produced by ac_compile, and set mode # options accordingly. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `$FILECMD conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE=32 ;; *ELF-64*) HPUX_IA64_MODE=64 ;; esac fi rm -rf conftest* ;; *-*-irix6*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then if test yes = "$lt_cv_prog_gnu_ld"; then case `$FILECMD conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; *N32*) LD="${LD-ld} -melf32bmipn32" ;; *64-bit*) LD="${LD-ld} -melf64bmip" ;; esac else case `$FILECMD 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* ;; mips64*-*linux*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then emul=elf case `$FILECMD conftest.$ac_objext` in *32-bit*) emul="${emul}32" ;; *64-bit*) emul="${emul}64" ;; esac case `$FILECMD conftest.$ac_objext` in *MSB*) emul="${emul}btsmip" ;; *LSB*) emul="${emul}ltsmip" ;; esac case `$FILECMD conftest.$ac_objext` in *N32*) emul="${emul}n32" ;; esac LD="${LD-ld} -m $emul" fi rm -rf conftest* ;; x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-gnu*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. Note that the listed cases only cover the # situations where additional linker options are needed (such as when # doing 32-bit compilation for a host where ld defaults to 64-bit, or # vice versa); the common cases where no linker options are needed do # not appear in the list. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `$FILECMD conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*|x86_64-gnu*) case `$FILECMD conftest.o` in *x86-64*) LD="${LD-ld} -m elf32_x86_64" ;; *) LD="${LD-ld} -m elf_i386" ;; esac ;; powerpc64le-*linux*) LD="${LD-ld} -m elf32lppclinux" ;; 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*|x86_64-gnu*) LD="${LD-ld} -m elf_x86_64" ;; powerpcle-*linux*) LD="${LD-ld} -m elf64lppc" ;; 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 yes != "$lt_cv_cc_needs_belf"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf CFLAGS=$SAVE_CFLAGS fi ;; *-*solaris*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `$FILECMD conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) case $host in i?86-*-solaris*|x86_64-*-solaris*) LD="${LD-ld} -m elf_x86_64" ;; sparc*-*-solaris*) LD="${LD-ld} -m elf64_sparc" ;; esac # GNU ld 2.21 introduced _sol2 emulations. Use them if available. if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then LD=${LD-ld}_sol2 fi ;; *) 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_PROG_AR # ----------- m4_defun([_LT_PROG_AR], [AC_CHECK_TOOLS(AR, [ar], false) : ${AR=ar} _LT_DECL([], [AR], [1], [The archiver]) # Use ARFLAGS variable as AR's operation code to sync the variable naming with # Automake. If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have # higher priority because that's what people were doing historically (setting # ARFLAGS for automake and AR_FLAGS for libtool). FIXME: Make the AR_FLAGS # variable obsoleted/removed. test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr} lt_ar_flags=$AR_FLAGS _LT_DECL([], [lt_ar_flags], [0], [Flags to create an archive (by configure)]) # Make AR_FLAGS overridable by 'make ARFLAGS='. Don't try to run-time override # by AR_FLAGS because that was never working and AR_FLAGS is about to die. _LT_DECL([], [AR_FLAGS], [\@S|@{ARFLAGS-"\@S|@lt_ar_flags"}], [Flags to create an archive]) AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], [lt_cv_ar_at_file=no AC_COMPILE_IFELSE([AC_LANG_PROGRAM], [echo conftest.$ac_objext > conftest.lst lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD' AC_TRY_EVAL([lt_ar_try]) if test 0 -eq "$ac_status"; then # Ensure the archiver fails upon bogus file names. rm -f conftest.$ac_objext libconftest.a AC_TRY_EVAL([lt_ar_try]) if test 0 -ne "$ac_status"; then lt_cv_ar_at_file=@ fi fi rm -f conftest.* libconftest.a ]) ]) if test no = "$lt_cv_ar_at_file"; then archiver_list_spec= else archiver_list_spec=$lt_cv_ar_at_file fi _LT_DECL([], [archiver_list_spec], [1], [How to feed a file listing to the archiver]) ])# _LT_PROG_AR # _LT_CMD_OLD_ARCHIVE # ------------------- m4_defun([_LT_CMD_OLD_ARCHIVE], [_LT_PROG_AR AC_CHECK_TOOL(STRIP, strip, :) test -z "$STRIP" && STRIP=: _LT_DECL([], [STRIP], [1], [A symbol stripping program]) AC_REQUIRE([AC_PROG_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 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" fi case $host_os in darwin*) lock_old_archive_extraction=yes ;; *) lock_old_archive_extraction=no ;; esac _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_DECL([], [lock_old_archive_extraction], [0], [Whether to use a lock for old archive extraction]) ])# _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" ## exclude from sc_useless_quotes_in_assignment # 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:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&AS_MESSAGE_LOG_FD echo "$as_me:$LINENO: \$? = $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 "$_lt_compiler_boilerplate" | $SED '/^$/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 yes = "[$]$2"; 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 "$_lt_linker_boilerplate" | $SED '/^$/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 yes = "[$]$2"; 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* | ironclad*) # Under GNU Hurd and Ironclad, 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* | windows* | 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; ;; mint*) # On MiNT this can take a long time and run out of memory. 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; ;; darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*) # 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 ;; os2*) # The test takes a long time on OS/2. lt_cv_sys_max_cmd_len=8192 ;; 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" && \ test undefined != "$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`env echo "$teststring$teststring" 2>/dev/null` \ = "X$teststring$teststring"; } >/dev/null 2>&1 && test 17 != "$i" # 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 yes = "$cross_compiling"; 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 $LINENO "configure" #include "confdefs.h" #if HAVE_DLFCN_H #include #endif #include #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 /* When -fvisibility=hidden is used, assume the code has been annotated correspondingly for the symbols needed. */ #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) int fnord (void) __attribute__((visibility("default"))); #endif int fnord (void) { return 42; } int main (void) { 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; else puts (dlerror ()); } /* 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 yes != "$enable_dlopen"; 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* | windows* | 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 ]) ;; tpf*) # Don't try to run any link tests for TPF. We know it's impossible # because TPF is a cross-compiler, and we know how we open DSOs. lt_cv_dlopen=dlopen lt_cv_dlopen_libs= lt_cv_dlopen_self=no ;; *) 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 no = "$lt_cv_dlopen"; then enable_dlopen=no else enable_dlopen=yes fi case $lt_cv_dlopen in dlopen) save_CPPFLAGS=$CPPFLAGS test yes = "$ac_cv_header_dlfcn_h" && 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 yes = "$lt_cv_dlopen_self"; 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:$LINENO: $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:$LINENO: \$? = $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 "$_lt_compiler_boilerplate" | $SED '/^$/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 no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; 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 no = "$hard_links"; 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 where 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 yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then # We can hardcode non-existent directories. if test no != "$_LT_TAGVAR(hardcode_direct, $1)" && # 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 no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" && test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; 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 relink = "$_LT_TAGVAR(hardcode_action, $1)" || test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then # Fast installation is not supported enable_fast_install=no elif test yes = "$shlibpath_overrides_runpath" || test no = "$enable_shared"; 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 -z "$STRIP"; then AC_MSG_RESULT([no]) else if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then old_striplib="$STRIP --strip-debug" striplib="$STRIP --strip-unneeded" AC_MSG_RESULT([yes]) else case $host_os in darwin*) # FIXME - insert some real tests, host_os isn't really good enough striplib="$STRIP -x" old_striplib="$STRIP -S" AC_MSG_RESULT([yes]) ;; freebsd*) if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then old_striplib="$STRIP --strip-debug" striplib="$STRIP --strip-unneeded" AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) fi ;; *) AC_MSG_RESULT([no]) ;; esac fi fi _LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) _LT_DECL([], [striplib], [1]) ])# _LT_CMD_STRIPLIB # _LT_PREPARE_MUNGE_PATH_LIST # --------------------------- # Make sure func_munge_path_list() is defined correctly. m4_defun([_LT_PREPARE_MUNGE_PATH_LIST], [[# func_munge_path_list VARIABLE PATH # ----------------------------------- # VARIABLE is name of variable containing _space_ separated list of # directories to be munged by the contents of PATH, which is string # having a format: # "DIR[:DIR]:" # string "DIR[ DIR]" will be prepended to VARIABLE # ":DIR[:DIR]" # string "DIR[ DIR]" will be appended to VARIABLE # "DIRP[:DIRP]::[DIRA:]DIRA" # string "DIRP[ DIRP]" will be prepended to VARIABLE and string # "DIRA[ DIRA]" will be appended to VARIABLE # "DIR[:DIR]" # VARIABLE will be replaced by "DIR[ DIR]" func_munge_path_list () { case x@S|@2 in x) ;; *:) eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\" ;; x:*) eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\" ;; *::*) eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\" ;; *) eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\" ;; esac } ]])# _LT_PREPARE_PATH_LIST # _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 m4_require([_LT_CHECK_SHELL_FEATURES])dnl m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl AC_MSG_CHECKING([dynamic linker characteristics]) m4_if([$1], [], [ if test yes = "$GCC"; then case $host_os in darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; *) lt_awk_arg='/^libraries:/' ;; esac case $host_os in mingw* | windows* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;; *) lt_sed_strip_eq='s|=/|/|g' ;; esac lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` case $lt_search_path_spec in *\;*) # 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 's/;/ /g'` ;; *) lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` ;; esac # 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` # ...but if some path component already ends with the multilib dir we assume # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). case "$lt_multi_os_dir; $lt_search_path_spec " in "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) lt_multi_os_dir= ;; esac 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" elif test -n "$lt_multi_os_dir"; then 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; } }'` # AWK program above erroneously prepends '/' to C:/dos/paths # for these hosts. case $host_os in mingw* | windows* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;; esac sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` 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 AC_ARG_VAR([LT_SYS_LIBRARY_PATH], [User-defined run-time library search path.]) case $host_os in aix3*) version_type=linux # correct to gnu/linux during the next big refactor 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 # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no hardcode_into_libs=yes if test ia64 = "$host_cpu"; 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 # Using Import Files as archive members, it is possible to support # filename-based versioning of shared library archives on AIX. While # this would work for both with and without runtime linking, it will # prevent static linking of such archives. So we do filename-based # shared library versioning with .so extension only, which is used # when both runtime linking and shared linking is enabled. # Unfortunately, runtime linking may impact performance, so we do # not want this to be the default eventually. Also, we use the # versioned .so libs for executables only if there is the -brtl # linker flag in LDFLAGS as well, or --enable-aix-soname=svr4 only. # To allow for filename-based versioning support, we need to create # libNAME.so.V as an archive file, containing: # *) an Import File, referring to the versioned filename of the # archive as well as the shared archive member, telling the # bitwidth (32 or 64) of that shared object, and providing the # list of exported symbols of that shared object, eventually # decorated with the 'weak' keyword # *) the shared object with the F_LOADONLY flag set, to really avoid # it being seen by the linker. # At run time we better use the real file rather than another symlink, # but for link time we create the symlink libNAME.so -> libNAME.so.V case $with_aix_soname,$aix_use_runtimelinking in # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. aix,yes) # traditional libtool dynamic_linker='AIX unversionable lib.so' # If using run time linking (on AIX 4.2 or later) use lib.so # instead of lib.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' ;; aix,no) # traditional AIX only dynamic_linker='AIX lib.a[(]lib.so.V[)]' # 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' ;; svr4,*) # full svr4 only dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]" library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' # We do not specify a path in Import Files, so LIBPATH fires. shlibpath_overrides_runpath=yes ;; *,yes) # both, prefer svr4 dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]" library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' # unpreferred sharedlib libNAME.a needs extra handling postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' # We do not specify a path in Import Files, so LIBPATH fires. shlibpath_overrides_runpath=yes ;; *,no) # both, prefer aix dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]" library_names_spec='$libname$release.a $libname.a' soname_spec='$libname$release$shared_ext$major' # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' ;; esac 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=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; $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 # correct to gnu/linux during the next big refactor 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* | windows* | pw32* | cegcc*) version_type=windows shrext_cmds=.dll need_version=no need_lib_prefix=no case $GCC,$cc_basename in yes,*) # gcc library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds # If user builds GCC with multilib enabled, # it should just install on $(libdir) # not on $(libdir)/../bin or 32 bits dlls would override 64 bit ones. if test xyes = x"$multilib"; then postinstall_cmds='base_file=`basename \$file`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ $install_prog $dir/$dlname $destdir/$dlname~ chmod a+x $destdir/$dlname~ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then eval '\''$striplib $destdir/$dlname'\'' || exit \$?; fi' else 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' 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' m4_if([$1], [],[ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) ;; mingw* | windows* | cegcc*) # MinGW DLLs use traditional 'lib' prefix soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' ;; 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 dynamic_linker='Win32 ld.exe' ;; *,cl* | *,icl*) # Native MSVC or ICC libname_spec='$name' soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' library_names_spec='$libname.dll.lib' case $build_os in mingw* | windows*) sys_lib_search_path_spec= lt_save_ifs=$IFS IFS=';' for lt_path in $LIB do IFS=$lt_save_ifs # Let DOS variable expansion print the short 8.3 style file name. lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" done IFS=$lt_save_ifs # Convert to MSYS style. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` ;; cygwin*) # Convert to unix form, then to dos form, then back to unix form # but this time dos style (no spaces!) so that the unix form looks # like /cygdrive/c/PROGRA~1:/cygdr... sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` ;; *) sys_lib_search_path_spec=$LIB if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then # It is most probably a Windows format PATH. 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 # FIXME: find the short name or the path components, as spaces are # common. (e.g. "Program Files" -> "PROGRA~1") ;; esac # 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' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes dynamic_linker='Win32 link.exe' ;; *) # Assume MSVC and ICC wrapper library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib' dynamic_linker='Win32 ld.exe' ;; esac # 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 # correct to gnu/linux during the next big refactor 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 ;; freebsd* | dragonfly* | midnightbsd*) # 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[[23]].*) 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$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' need_version=no need_lib_prefix=no ;; freebsd-*) library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' need_version=yes ;; esac case $host_cpu in powerpc64) # On FreeBSD bi-arch platforms, a different variable is used for 32-bit # binaries. See . AC_COMPILE_IFELSE( [AC_LANG_SOURCE( [[int test_pointer_size[sizeof (void *) - 5]; ]])], [shlibpath_var=LD_LIBRARY_PATH], [shlibpath_var=LD_32_LIBRARY_PATH]) ;; *) shlibpath_var=LD_LIBRARY_PATH ;; esac 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 ;; haiku*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no dynamic_linker="$host_os runtime_loader" 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=LIBRARY_PATH shlibpath_overrides_runpath=no sys_lib_search_path_spec='/boot/system/non-packaged/develop/lib /boot/system/develop/lib' sys_lib_dlsearch_path_spec='/boot/home/config/non-packaged/lib /boot/home/config/lib /boot/system/non-packaged/lib /boot/system/lib' hardcode_into_libs=no ;; 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 32 = "$HPUX_IA64_MODE"; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" sys_lib_dlsearch_path_spec=/usr/lib/hpux32 else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" sys_lib_dlsearch_path_spec=/usr/lib/hpux64 fi ;; 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' # or fails outright, so override atomically: install_override_mode=555 ;; interix[[3-9]]*) version_type=linux # correct to gnu/linux during the next big refactor 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 yes = "$lt_cv_prog_gnu_ld"; then version_type=linux # correct to gnu/linux during the next big refactor 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 ;; linux*android*) version_type=none # Android doesn't support versioned libraries. need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext $libname$shared_ext' soname_spec='$libname$release$shared_ext' finish_cmds= shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # 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 dynamic_linker='Android linker' # -rpath works at least for libraries that are not overridden by # libraries installed in system locations. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' ;; # This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) version_type=linux # correct to gnu/linux during the next big refactor 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 AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath], [lt_cv_shlibpath_overrides_runpath=no 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], [lt_cv_shlibpath_overrides_runpath=yes])]) LDFLAGS=$save_LDFLAGS libdir=$save_libdir ]) shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath # 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 # Add ABI-specific directories to the system library path. sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" # Ideally, we could use ldconfig to report *all* directories which are # searched for libraries, however this is still not possible. Aside from not # being certain /sbin/ldconfig is available, command # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, # even though it is searched at run-time. Try to do the best guess by # appending ld.so.conf contents (and includes) 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;s/"//g;/^$/d' | tr '\n' ' '` sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $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 ;; *-mlibc) version_type=linux # correct to gnu/linux during the next big refactor 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='mlibc ld.so' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; newsos6) version_type=linux # correct to gnu/linux during the next big refactor 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 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then need_version=no else need_version=yes fi 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 shlibpath_overrides_runpath=yes ;; os2*) libname_spec='$name' version_type=windows shrext_cmds=.dll need_version=no need_lib_prefix=no # OS/2 can only load a DLL with a base name of 8 characters or less. soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; v=$($ECHO $release$versuffix | tr -d .-); n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); $ECHO $n$v`$shared_ext' library_names_spec='${libname}_dll.$libext' dynamic_linker='OS/2 ld.exe' shlibpath_var=BEGINLIBPATH sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec 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' ;; 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 ;; serenity*) version_type=linux # correct to gnu/linux during the next big refactor 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 dynamic_linker='SerenityOS LibELF' ;; solaris*) version_type=linux # correct to gnu/linux during the next big refactor 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 yes = "$with_gnu_ld"; then need_lib_prefix=no fi need_version=yes ;; sysv4 | sysv4.3*) version_type=linux # correct to gnu/linux during the next big refactor 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 # correct to gnu/linux during the next big refactor 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=sco 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 yes = "$with_gnu_ld"; 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 # correct to gnu/linux during the next big refactor 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 # correct to gnu/linux during the next big refactor 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 ;; emscripten*) version_type=none need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext' soname_spec='$libname$release$shared_ext' finish_cmds= dynamic_linker="Emscripten linker" _LT_COMPILER_PIC($1)='-fPIC' _LT_TAGVAR(archive_cmds, $1)='$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib -s EXPORTED_FUNCTIONS=@$output_objdir/$soname.expsym' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(no_undefined_flag, $1)= ;; *) dynamic_linker=no ;; esac AC_MSG_RESULT([$dynamic_linker]) test no = "$dynamic_linker" && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" if test yes = "$GCC"; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec fi if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec fi # remember unaugmented sys_lib_dlsearch_path content for libtool script decls... configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH _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([], [install_override_mode], [1], [Permission mode override for installation of shared libraries]) _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], [configure_time_dlsearch_path], [2], [Detected run-time system search path for libraries]) _LT_DECL([], [configure_time_lt_sys_library_path], [2], [Explicit LT_SYS_LIBRARY_PATH set during ./configure time]) ])# _LT_SYS_DYNAMIC_LINKER # _LT_PATH_TOOL_PREFIX(TOOL) # -------------------------- # find a file program that 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 that 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 m4_require([_LT_PROG_ECHO_BACKSLASH])dnl AC_ARG_WITH([gnu-ld], [AS_HELP_STRING([--with-gnu-ld], [assume the C compiler uses GNU ld @<:@default=no@:>@])], [test no = "$withval" || with_gnu_ld=yes], [with_gnu_ld=no])dnl ac_prog=ld if test yes = "$GCC"; then # Check if gcc -print-prog-name=ld gives a path. AC_MSG_CHECKING([for ld used by $CC]) case $host in *-*-mingw* | *-*-windows*) # 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 yes = "$with_gnu_ld"; 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 &1 conftest.i cat conftest.i conftest.i >conftest2.i : ${lt_DD:=$DD} AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd], [if "$ac_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then cmp -s conftest.i conftest.out \ && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: fi]) rm -f conftest.i conftest2.i conftest.out]) ])# _LT_PATH_DD # _LT_CMD_TRUNCATE # ---------------- # find command to truncate a binary pipe m4_defun([_LT_CMD_TRUNCATE], [m4_require([_LT_PATH_DD]) AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin], [printf 0123456789abcdef0123456789abcdef >conftest.i cat conftest.i conftest.i >conftest2.i lt_cv_truncate_bin= if "$ac_cv_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then cmp -s conftest.i conftest.out \ && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" fi rm -f conftest.i conftest2.i conftest.out test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"]) _LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1], [Command to truncate a binary pipe]) ])# _LT_CMD_TRUNCATE # _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. # 'file_magic [[regex]]' -- check by looking for files in library path # that 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='$FILECMD -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* | windows* | 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 # Keep this pattern in sync with the one in func_win32_libid. lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64|pe-aarch64)' 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* | midnightbsd*) 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=$FILECMD lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac else lt_cv_deplibs_check_method=pass_all fi ;; haiku*) lt_cv_deplibs_check_method=pass_all ;; hpux10.20* | hpux11*) lt_cv_file_magic_cmd=$FILECMD 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])(-bit)?( [LM]SB)? 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 glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) lt_cv_deplibs_check_method=pass_all ;; *-mlibc) 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=$FILECMD 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__`"; 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 ;; serenity*) 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 ;; os2*) lt_cv_deplibs_check_method=pass_all ;; esac ]) file_magic_glob= want_nocaseglob=no if test "$build" = "$host"; then case $host_os in mingw* | windows* | pw32*) if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then want_nocaseglob=yes else file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"` fi ;; esac fi 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_DECL([], [file_magic_glob], [1], [How to find potential files when deplibs_check_method = "file_magic"]) _LT_DECL([], [want_nocaseglob], [1], [Find potential files using nocaseglob 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 # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty case $build_os in mingw* | windows*) lt_bad_file=conftest.nm/nofile ;; *) lt_bad_file=/dev/null ;; esac case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in *$lt_bad_file* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break 2 ;; *) case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break 2 ;; *) 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 no != "$lt_cv_path_NM"; then NM=$lt_cv_path_NM else # Didn't find any BSD compatible name lister, look for dumpbin. if test -n "$DUMPBIN"; then : # Let the user override the test. else AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in *COFF*) DUMPBIN="$DUMPBIN -symbols -headers" ;; *) DUMPBIN=: ;; esac fi 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:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&AS_MESSAGE_LOG_FD (eval echo "\"\$as_me:$LINENO: $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:$LINENO: 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_CHECK_SHAREDLIB_FROM_LINKLIB # -------------------------------- # how to determine the name of the shared library # associated with a specific link library. # -- PORTME fill in with the dynamic library characteristics m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB], [m4_require([_LT_DECL_EGREP]) m4_require([_LT_DECL_OBJDUMP]) m4_require([_LT_DECL_DLLTOOL]) AC_CACHE_CHECK([how to associate runtime and link libraries], lt_cv_sharedlib_from_linklib_cmd, [lt_cv_sharedlib_from_linklib_cmd='unknown' case $host_os in cygwin* | mingw* | windows* | pw32* | cegcc*) # two different shell functions defined in ltmain.sh; # decide which one to use based on capabilities of $DLLTOOL case `$DLLTOOL --help 2>&1` in *--identify-strict*) lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib ;; *) lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback ;; esac ;; *) # fallback: assume linklib IS sharedlib lt_cv_sharedlib_from_linklib_cmd=$ECHO ;; esac ]) sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO _LT_DECL([], [sharedlib_from_linklib_cmd], [1], [Command to associate shared and link libraries]) ])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB # _LT_PATH_MANIFEST_TOOL # ---------------------- # locate the manifest tool m4_defun([_LT_PATH_MANIFEST_TOOL], [AC_CHECK_TOOL(MANIFEST_TOOL, mt, :) test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_manifest_tool], [lt_cv_path_manifest_tool=no echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out cat conftest.err >&AS_MESSAGE_LOG_FD if $GREP 'Manifest Tool' conftest.out > /dev/null; then lt_cv_path_manifest_tool=yes fi rm -f conftest*]) if test yes != "$lt_cv_path_manifest_tool"; then MANIFEST_TOOL=: fi _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl ])# _LT_PATH_MANIFEST_TOOL # _LT_DLL_DEF_P([FILE]) # --------------------- # True iff FILE is a Windows DLL '.def' file. # Keep in sync with func_dll_def_p in the libtool script AC_DEFUN([_LT_DLL_DEF_P], [dnl test DEF = "`$SED -n dnl -e '\''s/^[[ ]]*//'\'' dnl Strip leading whitespace -e '\''/^\(;.*\)*$/d'\'' dnl Delete empty lines and comments -e '\''s/^\(EXPORTS\|LIBRARY\)\([[ ]].*\)*$/DEF/p'\'' dnl -e q dnl Only consider the first "real" line $1`" dnl ])# _LT_DLL_DEF_P # LT_LIB_M # -------- # check for math library AC_DEFUN([LT_LIB_M], [AC_REQUIRE([AC_CANONICAL_HOST])dnl LIBM= case $host in *-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-mingw* | *-*-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 yes = "$GCC"; then case $cc_basename in nvcc*) _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;; *) _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;; esac _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([AC_PROG_AWK])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* | windows* | pw32* | cegcc*) symcode='[[ABCDGISTW]]' ;; hpux*) if test ia64 = "$host_cpu"; then symcode='[[ABCDEGRST]]' fi ;; irix* | nonstopux*) symcode='[[BCDEGRST]]' ;; osf*) symcode='[[BCDEGQRST]]' ;; solaris*) symcode='[[BCDRT]]' ;; 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 if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Gets list of data symbols to import. lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'" # Adjust the below global symbol transforms to fixup imported variables. lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" lt_c_name_lib_hook="\ -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" else # Disable hooks by default. lt_cv_sys_global_symbol_to_import= lt_cdecl_hook= lt_c_name_hook= lt_c_name_lib_hook= fi # 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"\ $lt_cdecl_hook\ " -e 's/^T .* \(.*\)$/extern int \1();/p'"\ " -e 's/^$symcode$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"\ $lt_c_name_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" # Transform an extracted symbol line into symbol name with lib prefix and # symbol address. lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\ $lt_c_name_lib_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" # Handle CRLF in mingw tool chain opt_cr= case $build_os in mingw* | windows*) 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, # D for any global variable and I for any imported variable. # Also find C++ and __fastcall symbols from MSVC++ or ICC, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK ['"\ " {last_section=section; section=\$ 3};"\ " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ " /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ " /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ " /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ " {if(hide[section]) next};"\ " {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ " {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ " s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ " s[1]~prfx {split(s[1],t,\"@\"); print f,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 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'" # 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(void){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 $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&AS_MESSAGE_LOG_FD if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&AS_MESSAGE_LOG_FD && 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 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE /* DATA imports from DLLs on WIN32 can't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */ # define LT@&t@_DLSYM_CONST #elif defined __osf__ /* This system does not cope well with relocations in const data. */ # define LT@&t@_DLSYM_CONST #else # define LT@&t@_DLSYM_CONST const #endif #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. */ LT@&t@_DLSYM_CONST struct { const char *name; void *address; } lt__PROGRAM__LTX_preloaded_symbols[[]] = { { "@PROGRAM@", (void *) 0 }, _LT_EOF $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$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_globsym_save_LIBS=$LIBS lt_globsym_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_globsym_save_LIBS CFLAGS=$lt_globsym_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 yes = "$pipe_works"; 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 # Response file support. if test "$lt_cv_nm_interface" = "MS dumpbin"; then nm_file_list_spec='@' elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then nm_file_list_spec='@' 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_import], [lt_cv_sys_global_symbol_to_import], [1], [Transform the output of nm into a list of symbols to manually relocate]) _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_DECL([nm_interface], [lt_cv_nm_interface], [1], [The name lister interface]) _LT_DECL([], [nm_file_list_spec], [1], [Specify filename containing input files for $NM]) ]) # _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)= m4_if([$1], [CXX], [ # C++ specific cases for pic, static, wl, etc. if test yes = "$GXX"; 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 ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; 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* | windows* | 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']) case $host_os in os2*) _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' ;; esac ;; 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)= ;; haiku*) # PIC is the default for Haiku. # The "-static" flag exists, but is broken. _LT_TAGVAR(lt_prog_compiler_static, $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 ia64 = "$host_cpu"; 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 ;; mingw* | windows* | 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). m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) ;; 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* | midnightbsd*) # 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 ia64 != "$host_cpu"; 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 | 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* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL 8.0, 9.0 on PPC and BlueGene _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) ;; *-mlibc) ;; *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*) ;; serenity*) ;; solaris*) case $cc_basename in CC* | sunCC*) # 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 yes = "$GCC"; 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 ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; 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* | windows* | 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']) case $host_os in os2*) _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' ;; esac ;; 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' ;; haiku*) # PIC is the default for Haiku. # The "-static" flag exists, but is broken. _LT_TAGVAR(lt_prog_compiler_static, $1)= ;; 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 case $cc_basename in nvcc*) # Cuda Compiler Driver 2.2 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker ' if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)" fi ;; 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 ia64 = "$host_cpu"; 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 ;; 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' case $cc_basename in nagfor*) # NAG Fortran compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; esac ;; mingw* | windows* | 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']) case $host_os in os2*) _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' ;; esac ;; 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 | 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' ;; *flang* | ftn | f18* | f95*) # Flang compiler. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _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' ;; nagfor*) # NAG Fortran compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; tcc*) # Fabrice Bellard et al's Tiny 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)='-static' ;; pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) # 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* | bgxl* | bgf* | mpixl*) # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene _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\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*) # 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)='' ;; *Sun\ F* | *Sun*Fortran*) _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 ' ;; *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,' ;; *Intel*\ [[CF]]*Compiler*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; *Portland\ Group*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; esac ;; esac ;; newsos6) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; *-mlibc) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; *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' ;; serenity*) ;; solaris*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' case $cc_basename in f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) _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 that 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_CACHE_CHECK([for $compiler option to produce PIC], [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)], [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)]) _LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1) # # 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]) _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], [How to pass a linker flag through the compiler]) # # 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_PATH_MANIFEST_TOOL])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' _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] 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 GNU nm, but means don't demangle to AIX nm. # Without the "-l" option, or with the "-B" option, AIX nm treats # weak defined symbols like other global defined symbols, whereas # GNU nm marks them as "W". # While the 'weak' keyword is ignored in the Export File, we need # it in the Import File for the 'aix-soname' feature, so we have # to replace the "-B" option with "-P" for AIX 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") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi ;; pw32*) _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds ;; cygwin* | mingw* | windows* | cegcc*) case $cc_basename in cl* | icl*) _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' ;; *) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] ;; esac ;; *) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' ;; esac ], [ 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_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* | windows* | pw32* | cegcc*) # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using # Microsoft Visual C++ or Intel C++ Compiler. if test yes != "$GCC"; then with_gnu_ld=no fi ;; interix*) # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC) with_gnu_ld=yes ;; esac _LT_TAGVAR(ld_shlibs, $1)=yes # On some targets, GNU ld is compatible enough with the native linker # that we're better off using the native interface for both. lt_use_gnu_ld_interface=no if test yes = "$with_gnu_ld"; then case $host_os in aix*) # The AIX port of GNU ld has always aspired to compatibility # with the native linker. However, as the warning in the GNU ld # block says, versions before 2.19.5* couldn't really create working # shared libraries, regardless of the interface used. case `$LD -v 2>&1` in *\ \(GNU\ Binutils\)\ 2.19.5*) ;; *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;; *\ \(GNU\ Binutils\)\ [[3-9]]*) ;; *) lt_use_gnu_ld_interface=yes ;; esac ;; *) lt_use_gnu_ld_interface=yes ;; esac fi if test yes = "$lt_use_gnu_ld_interface"; 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 | $SED -e 's/([[^)]]\+)\s\+//' 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 ia64 != "$host_cpu"; then _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 *** Warning: the GNU linker, at least up to release 2.19, 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 install binutils *** 2.20 or above, or modify your PATH so that a non-GNU linker is found. *** You will then need to restart the configuration process. _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 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* | windows* | 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(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' _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/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] _LT_TAGVAR(file_list_spec, $1)='@' 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, use it as # is; otherwise, prepend EXPORTS... _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); 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 ;; haiku*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(link_all_deplibs, $1)=no ;; os2*) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(allow_undefined_flag, $1)=unsupported shrext_cmds=.dll _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ prefix_cmds="$SED"~ if test EXPORTS = "`$SED 1q $export_symbols`"; then prefix_cmds="$prefix_cmds -e 1d"; fi~ prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes _LT_TAGVAR(file_list_spec, $1)='@' ;; 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 linux-dietlibc = "$host_os"; 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 no = "$tmp_diet" then tmp_addflag=' $pic_flag' 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; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' tmp_addflag=' $pic_flag' ;; pgf77* | pgf90* | pgf95* | pgfortran*) # 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; func_echo_all \"$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' ;; nagfor*) # NAGFOR 5.3 tmp_sharedflag='-Wl,-shared' ;; xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below) tmp_sharedflag='-qmkshrobj' tmp_addflag= ;; nvcc*) # Cuda Compiler Driver 2.2 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes ;; 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; func_echo_all \"$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 yes = "$supports_anon_versioning"; 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 tcc*) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic' ;; xlf* | bgf* | bgxlf* | mpixlf*) # 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)='$wl-rpath $wl$libdir' _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' if test yes = "$supports_anon_versioning"; 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 $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi ;; esac else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; *-mlibc) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ;; 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 $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $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 $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $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 cannot *** 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 $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $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 no = "$_LT_TAGVAR(ld_shlibs, $1)"; 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 yes = "$GCC" && 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 ia64 = "$host_cpu"; 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 GNU nm, but means don't demangle to AIX nm. # Without the "-l" option, or with the "-B" option, AIX nm treats # weak defined symbols like other global defined symbols, whereas # GNU nm marks them as "W". # While the 'weak' keyword is ignored in the Export File, we need # it in the Import File for the 'aix-soname' feature, so we have # to replace the "-B" option with "-P" for AIX 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") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | 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 # have runtime linking enabled, and use it for executables. # For shared libraries, we enable/disable runtime linking # depending on the kind of the shared library created - # when "with_aix_soname,aix_use_runtimelinking" is: # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables # "aix,yes" lib.so shared, rtl:yes, for executables # lib.a static archive # "both,no" lib.so.V(shr.o) shared, rtl:yes # lib.a(lib.so.V) shared, rtl:no, for executables # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables # lib.a(lib.so.V) shared, rtl:no # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables # lib.a static archive case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) for ld_flag in $LDFLAGS; do if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then aix_use_runtimelinking=yes break fi done if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then # With aix-soname=svr4, we create the lib.so.V shared archives only, # so we don't have lib.a shared libs to link our executables. # We have to force runtime linking in this case. aix_use_runtimelinking=yes LDFLAGS="$LDFLAGS -Wl,-brtl" fi ;; 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,' case $with_aix_soname,$aix_use_runtimelinking in aix,*) ;; # traditional, no import file svr4,* | *,yes) # use import file # The Import File defines what to hardcode. _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no ;; esac if test yes = "$GCC"; 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 yes = "$aix_use_runtimelinking"; then shared_flag="$shared_flag "'$wl-G' fi # Need to ensure runtime linking is disabled for the traditional # shared library, or the linker may eventually find shared libraries # /with/ Import File - we do not want to mix them. shared_flag_aix='-shared' shared_flag_svr4='-shared $wl-G' else # not using gcc if test ia64 = "$host_cpu"; 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 yes = "$aix_use_runtimelinking"; then shared_flag='$wl-G' else shared_flag='$wl-bM:SRE' fi shared_flag_aix='$wl-bM:SRE' shared_flag_svr4='$wl-G' 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,yes = "$with_aix_soname,$aix_use_runtimelinking"; 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([$1]) _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 -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag else if test ia64 = "$host_cpu"; 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([$1]) _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' if test yes = "$with_gnu_ld"; then # We only use this code for GNU lds that support --whole-archive. _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' else # Exported symbols can be pulled into shared objects from archives _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' fi _LT_TAGVAR(archive_cmds_need_lc, $1)=yes _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' # -brtl affects multiple linker settings, -berok does not and is overridden later compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' if test svr4 != "$with_aix_soname"; then # This is similar to how AIX traditionally builds its shared libraries. _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' fi if test aix != "$with_aix_soname"; then _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' else # used by -dlpreopen to get the symbols _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' fi _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' 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* | windows* | pw32* | cegcc*) # When not using gcc, we currently assume that we are using # Microsoft Visual C++ or Intel C++ Compiler. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. case $cc_basename in cl* | icl*) # Native MSVC or ICC _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=yes _LT_TAGVAR(file_list_spec, $1)='@' # 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 -Fe$output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then cp "$export_symbols" "$output_objdir/$soname.def"; echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; else $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; fi~ $CC -Fe$tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ linknames=' # The linker will not automatically build a static lib if we build a DLL. # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' _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' # Don't use ranlib _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ lt_tool_outputfile="@TOOL_OUTPUT@"~ case $lt_outputfile in *.exe|*.EXE) ;; *) lt_outputfile=$lt_outputfile.exe lt_tool_outputfile=$lt_tool_outputfile.exe ;; esac~ if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; $RM "$lt_outputfile.manifest"; fi' ;; *) # Assume MSVC and ICC wrapper _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 `func_echo_all "$deplibs" | $SED '\''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(enable_shared_with_static_runtimes, $1)=yes ;; esac ;; 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 ;; # 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* | midnightbsd*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -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 yes = "$GCC"; then _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$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 "x$output_objdir/$soname" = "x$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 yes,no = "$GCC,$with_gnu_ld"; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $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 no = "$with_gnu_ld"; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$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 yes,no = "$GCC,$with_gnu_ld"; 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 $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $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' ;; *) m4_if($1, [], [ # Older versions of the 11.00 compiler do not understand -b yet # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) _LT_LINKER_OPTION([if $CC understands -b], _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b], [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'], [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_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 no = "$with_gnu_ld"; 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 yes = "$GCC"; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $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. # This should be the same for all languages, so no per-tag cache variable. AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol], [lt_cv_irix_exported_symbol], [save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" AC_LINK_IFELSE( [AC_LANG_SOURCE( [AC_LANG_CASE([C], [[int foo (void) { return 0; }]], [C++], [[int foo (void) { return 0; }]], [Fortran 77], [[ subroutine foo end]], [Fortran], [[ subroutine foo end]])])], [lt_cv_irix_exported_symbol=yes], [lt_cv_irix_exported_symbol=no]) LDFLAGS=$save_LDFLAGS]) if test yes = "$lt_cv_irix_exported_symbol"; then _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' fi else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -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" && func_echo_all "-set_version $verstring"` -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 ;; linux*) case $cc_basename in tcc*) # Fabrice Bellard et al's Tiny C Compiler _LT_TAGVAR(ld_shlibs, $1)=yes _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' ;; esac ;; *-mlibc) ;; 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__`"; 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 _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' 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 shrext_cmds=.dll _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ prefix_cmds="$SED"~ if test EXPORTS = "`$SED 1q $export_symbols`"; then prefix_cmds="$prefix_cmds -e 1d"; fi~ prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes _LT_TAGVAR(file_list_spec, $1)='@' ;; osf3*) if test yes = "$GCC"; 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" && func_echo_all "$wl-set_version $wl$verstring"` $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" && func_echo_all "-set_version $verstring"` -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 yes = "$GCC"; then _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $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" && func_echo_all "-set_version $verstring"` -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 "-set_version $verstring"` -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)=: ;; serenity*) ;; solaris*) _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' if test yes = "$GCC"; then wlarc='$wl' _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $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 $pic_flag $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 yes = "$GCC"; 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 sequent = "$host_vendor"; 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 yes = "$GCC"; 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 CANNOT 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 yes = "$GCC"; 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 sni = "$host_vendor"; 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 no = "$_LT_TAGVAR(ld_shlibs, $1)" && 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 yes,yes = "$GCC,$enable_shared"; 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_CACHE_CHECK([whether -lc should be explicitly linked in], [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1), [$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_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no else lt_cv_[]_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* ]) _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_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_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([], [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([], [postlink_cmds], [2], [Commands necessary for finishing linking programs]) _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(void){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 what 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 no = "$can_build_shared" && 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 yes = "$enable_shared" && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test ia64 != "$host_cpu"; then case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in yes,aix,yes) ;; # shared object as lib.so file only yes,svr4,*) ;; # shared object as lib.so archive member only yes,*) enable_static=no ;; # shared object in lib.a archive as well esac 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 yes = "$enable_shared" || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_CONFIG($1) fi AC_LANG_POP CC=$lt_save_CC ])# _LT_LANG_C_CONFIG # _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], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_PATH_MANIFEST_TOOL])dnl if test -n "$CXX" && ( test no != "$CXX" && ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) || (test g++ != "$CXX"))); then AC_PROG_CXXCPP else _lt_caught_CXX_error=yes fi 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_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(reload_flag, $1)=$reload_flag _LT_TAGVAR(reload_cmds, $1)=$reload_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 yes != "$_lt_caught_CXX_error"; 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_CFLAGS=$CFLAGS 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++"} CFLAGS=$CXXFLAGS 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 yes = "$GXX"; 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 yes = "$GXX"; 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 yes = "$with_gnu_ld"; then _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -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 $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 -v "^Configured with:" | $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 ia64 = "$host_cpu"; 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 # have runtime linking enabled, and use it for executables. # For shared libraries, we enable/disable runtime linking # depending on the kind of the shared library created - # when "with_aix_soname,aix_use_runtimelinking" is: # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables # "aix,yes" lib.so shared, rtl:yes, for executables # lib.a static archive # "both,no" lib.so.V(shr.o) shared, rtl:yes # lib.a(lib.so.V) shared, rtl:no, for executables # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables # lib.a(lib.so.V) shared, rtl:no # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables # lib.a static archive 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 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then # With aix-soname=svr4, we create the lib.so.V shared archives only, # so we don't have lib.a shared libs to link our executables. # We have to force runtime linking in this case. aix_use_runtimelinking=yes LDFLAGS="$LDFLAGS -Wl,-brtl" fi ;; 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,' case $with_aix_soname,$aix_use_runtimelinking in aix,*) ;; # no import file svr4,* | *,yes) # use import file # The Import File defines what to hardcode. _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no ;; esac if test yes = "$GXX"; 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 yes = "$aix_use_runtimelinking"; then shared_flag=$shared_flag' $wl-G' fi # Need to ensure runtime linking is disabled for the traditional # shared library, or the linker may eventually find shared libraries # /with/ Import File - we do not want to mix them. shared_flag_aix='-shared' shared_flag_svr4='-shared $wl-G' else # not using gcc if test ia64 = "$host_cpu"; 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 yes = "$aix_use_runtimelinking"; then shared_flag='$wl-G' else shared_flag='$wl-bM:SRE' fi shared_flag_aix='$wl-bM:SRE' shared_flag_svr4='$wl-G' 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,yes = "$with_aix_soname,$aix_use_runtimelinking"; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. # The "-G" linker flag allows undefined symbols. _LT_TAGVAR(no_undefined_flag, $1)='-bernotok' # Determine the default libpath from the value encoded in an empty # executable. _LT_SYS_MODULE_PATH_AIX([$1]) _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 -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag else if test ia64 = "$host_cpu"; 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([$1]) _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' if test yes = "$with_gnu_ld"; then # We only use this code for GNU lds that support --whole-archive. _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' else # Exported symbols can be pulled into shared objects from archives _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' fi _LT_TAGVAR(archive_cmds_need_lc, $1)=yes _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' # -brtl affects multiple linker settings, -berok does not and is overridden later compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' if test svr4 != "$with_aix_soname"; then # This is similar to how AIX traditionally builds its shared # libraries. Need -bnortl late, we may have -brtl in LDFLAGS. _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' fi if test aix != "$with_aix_soname"; then _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' else # used by -dlpreopen to get the symbols _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' fi _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' fi fi ;; beos*) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Joseph Beckenbach 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* | windows* | pw32* | cegcc*) case $GXX,$cc_basename in ,cl* | no,cl* | ,icl* | no,icl*) # Native MSVC or ICC # 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 _LT_TAGVAR(always_export_symbols, $1)=yes _LT_TAGVAR(file_list_spec, $1)='@' # 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 $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then cp "$export_symbols" "$output_objdir/$soname.def"; echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; else $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; fi~ $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ linknames=' # The linker will not automatically build a static lib if we build a DLL. # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes # Don't use ranlib _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ lt_tool_outputfile="@TOOL_OUTPUT@"~ case $lt_outputfile in *.exe|*.EXE) ;; *) lt_outputfile=$lt_outputfile.exe lt_tool_outputfile=$lt_tool_outputfile.exe ;; esac~ func_to_tool_file "$lt_outputfile"~ if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; $RM "$lt_outputfile.manifest"; fi' ;; *) # g++ # _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(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' _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(file_list_spec, $1)='@' 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, use it as # is; otherwise, prepend EXPORTS... _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); 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 ;; esac ;; darwin* | rhapsody*) _LT_DARWIN_LINKER_FEATURES($1) ;; os2*) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(allow_undefined_flag, $1)=unsupported shrext_cmds=.dll _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ prefix_cmds="$SED"~ if test EXPORTS = "`$SED 1q $export_symbols`"; then prefix_cmds="$prefix_cmds -e 1d"; fi~ prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes _LT_TAGVAR(file_list_spec, $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 ;; freebsd2.*) # 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* | midnightbsd*) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions _LT_TAGVAR(ld_shlibs, $1)=yes ;; haiku*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(link_all_deplibs, $1)=no ;; 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 "x$output_objdir/$soname" = "x$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; func_echo_all "$list"' ;; *) if test yes = "$GXX"; then _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$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 no = "$with_gnu_ld"; 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; func_echo_all "$list"' ;; *) if test yes = "$GXX"; then if test no = "$with_gnu_ld"; 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 $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $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" && func_echo_all "-set_version $verstring"` -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 yes = "$GXX"; then if test no = "$with_gnu_ld"; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` -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 | 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; func_echo_all "$list"' _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 | sort | $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 | sort | $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 | sort | $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 | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ;; *) # Version 6 and above 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; func_echo_all \"$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=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed' ;; xl* | mpixl* | bgxl*) # 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 yes = "$supports_anon_versioning"; 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; func_echo_all \"$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='func_echo_all' # 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 ;; *-mlibc) _LT_TAGVAR(ld_shlibs, $1)=yes ;; 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 ;; 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__`"; 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=func_echo_all 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" && func_echo_all "$wl-set_version $verstring"` -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" && func_echo_all "-set_version $verstring"` -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 "-set_version $verstring"` -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=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test yes,no = "$GXX,$with_gnu_ld"; 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" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $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 -v "^Configured with:" | $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 ;; serenity*) ;; 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* | sunCC*) # 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='func_echo_all' # 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 yes,no = "$GXX,$with_gnu_ld"; 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 $pic_flag -nostdlib $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 $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -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 -v "^Configured with:" | $GREP " [[-]]L"' else # g++ 2.7 appears to require '-G' NOT '-shared' on this # platform. _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $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 $wl-h $wl$soname -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 -v "^Configured with:" | $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 CANNOT 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(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~ '"$_LT_TAGVAR(old_archive_cmds, $1)" _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~ '"$_LT_TAGVAR(reload_cmds, $1)" ;; *) _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 no = "$_LT_TAGVAR(ld_shlibs, $1)" && 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 CFLAGS=$lt_save_CFLAGS 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 yes != "$_lt_caught_CXX_error" AC_LANG_POP ])# _LT_LANG_CXX_CONFIG # _LT_FUNC_STRIPNAME_CNF # ---------------------- # func_stripname_cnf 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). # # This function is identical to the (non-XSI) version of func_stripname, # except this one can be used by m4 code that may be executed by configure, # rather than the libtool script. m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl AC_REQUIRE([_LT_DECL_SED]) AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH]) func_stripname_cnf () { case @S|@2 in .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;; *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;; esac } # func_stripname_cnf ])# _LT_FUNC_STRIPNAME_CNF # _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 AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])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 ], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF package foo func foo() { } _LT_EOF ]) _lt_libdeps_save_CFLAGS=$CFLAGS case "$CC $CFLAGS " in #( *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;; *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;; *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;; esac 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 $prev$p in -L* | -R* | -l*) # Some compilers place space between "-{L,R,l}" and the path. # Remove the space. if test x-L = x"$p" || test x-R = x"$p" || test x-l = x"$p"; then prev=$p continue fi # Expand the sysroot to ease extracting the directories later. if test -z "$prev"; then case $p in -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;; -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;; -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;; esac fi case $p in =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;; esac if test no = "$pre_test_object_deps_done"; then case $prev 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 prev= ;; *.lto.$objext) ;; # Ignore GCC LTO objects *.$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 no = "$pre_test_object_deps_done"; 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 CFLAGS=$_lt_libdeps_save_CFLAGS # 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)= ;; 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_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_LANG_PUSH(Fortran 77) if test -z "$F77" || test no = "$F77"; then _lt_disable_F77=yes fi _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_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(reload_flag, $1)=$reload_flag _LT_TAGVAR(reload_cmds, $1)=$reload_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 yes != "$_lt_disable_F77"; 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 lt_save_CFLAGS=$CFLAGS CC=${F77-"f77"} CFLAGS=$FFLAGS 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 no = "$can_build_shared" && 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 yes = "$enable_shared" && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test ia64 != "$host_cpu"; then case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in yes,aix,yes) ;; # shared object as lib.so file only yes,svr4,*) ;; # shared object as lib.so archive member only yes,*) enable_static=no ;; # shared object in lib.a archive as well esac 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 yes = "$enable_shared" || 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 CFLAGS=$lt_save_CFLAGS fi # test yes != "$_lt_disable_F77" AC_LANG_POP ])# _LT_LANG_F77_CONFIG # _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_LANG_PUSH(Fortran) if test -z "$FC" || test no = "$FC"; then _lt_disable_FC=yes fi _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_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(reload_flag, $1)=$reload_flag _LT_TAGVAR(reload_cmds, $1)=$reload_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 yes != "$_lt_disable_FC"; 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 lt_save_CFLAGS=$CFLAGS CC=${FC-"f95"} CFLAGS=$FCFLAGS 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 no = "$can_build_shared" && 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 yes = "$enable_shared" && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test ia64 != "$host_cpu"; then case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in yes,aix,yes) ;; # shared object as lib.so file only yes,svr4,*) ;; # shared object as lib.so archive member only yes,*) enable_static=no ;; # shared object in lib.a archive as well esac 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 yes = "$enable_shared" || 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 CFLAGS=$lt_save_CFLAGS fi # test yes != "$_lt_disable_FC" 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_CFLAGS=$CFLAGS lt_save_GCC=$GCC GCC=yes CC=${GCJ-"gcj"} CFLAGS=$GCJFLAGS 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 _LT_TAGVAR(reload_flag, $1)=$reload_flag _LT_TAGVAR(reload_cmds, $1)=$reload_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 CFLAGS=$lt_save_CFLAGS ])# _LT_LANG_GCJ_CONFIG # _LT_LANG_GO_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for the GNU Go compiler # are suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to 'libtool'. m4_defun([_LT_LANG_GO_CONFIG], [AC_REQUIRE([LT_PROG_GO])dnl AC_LANG_SAVE # Source file extension for Go test sources. ac_ext=go # Object file extension for compiled Go test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code="package main; func main() { }" # Code to be used in simple link tests lt_simple_link_test_code='package main; func main() { }' # 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_CFLAGS=$CFLAGS lt_save_GCC=$GCC GCC=yes CC=${GOC-"gccgo"} CFLAGS=$GOFLAGS compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_TAGVAR(LD, $1)=$LD _LT_CC_BASENAME([$compiler]) # Go 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 _LT_TAGVAR(reload_flag, $1)=$reload_flag _LT_TAGVAR(reload_cmds, $1)=$reload_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 CFLAGS=$lt_save_CFLAGS ])# _LT_LANG_GO_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_CFLAGS=$CFLAGS lt_save_GCC=$GCC GCC= CC=${RC-"windres"} CFLAGS= 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 CFLAGS=$lt_save_CFLAGS ])# _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 set = "${GCJFLAGS+set}" || 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_GO # ---------- AC_DEFUN([LT_PROG_GO], [AC_CHECK_TOOL(GOC, gccgo,) ]) # 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_DLLTOOL # ---------------- # Ensure DLLTOOL variable is set. m4_defun([_LT_DECL_DLLTOOL], [AC_CHECK_TOOL(DLLTOOL, dlltool, false) test -z "$DLLTOOL" && DLLTOOL=dlltool _LT_DECL([], [DLLTOOL], [1], [DLL creation program]) AC_SUBST([DLLTOOL]) ]) # _LT_DECL_FILECMD # ---------------- # Check for a file(cmd) program that can be used to detect file type and magic m4_defun([_LT_DECL_FILECMD], [AC_CHECK_PROG([FILECMD], [file], [file], [:]) _LT_DECL([], [FILECMD], [1], [A file(cmd) program that detects file types]) ])# _LD_DECL_FILECMD # _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 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], [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_PATH_CONVERSION_FUNCTIONS # ----------------------------- # Determine what file name conversion functions should be used by # func_to_host_file (and, implicitly, by func_to_host_path). These are needed # for certain cross-compile configurations and native mingw. m4_defun([_LT_PATH_CONVERSION_FUNCTIONS], [AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl AC_MSG_CHECKING([how to convert $build file names to $host format]) AC_CACHE_VAL(lt_cv_to_host_file_cmd, [case $host in *-*-mingw* ) case $build in *-*-mingw* | *-*-windows* ) # actually msys lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 ;; *-*-cygwin* ) lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 ;; * ) # otherwise, assume *nix lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 ;; esac ;; *-*-cygwin* ) case $build in *-*-mingw* | *-*-windows* ) # actually msys lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin ;; *-*-cygwin* ) lt_cv_to_host_file_cmd=func_convert_file_noop ;; * ) # otherwise, assume *nix lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin ;; esac ;; * ) # unhandled hosts (and "normal" native builds) lt_cv_to_host_file_cmd=func_convert_file_noop ;; esac ]) to_host_file_cmd=$lt_cv_to_host_file_cmd AC_MSG_RESULT([$lt_cv_to_host_file_cmd]) _LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd], [0], [convert $build file names to $host format])dnl AC_MSG_CHECKING([how to convert $build file names to toolchain format]) AC_CACHE_VAL(lt_cv_to_tool_file_cmd, [#assume ordinary cross tools, or native build. lt_cv_to_tool_file_cmd=func_convert_file_noop case $host in *-*-mingw* | *-*-windows* ) case $build in *-*-mingw* | *-*-windows* ) # actually msys lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 ;; esac ;; esac ]) to_tool_file_cmd=$lt_cv_to_tool_file_cmd AC_MSG_RESULT([$lt_cv_to_tool_file_cmd]) _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd], [0], [convert $build files to toolchain format])dnl ])# _LT_PATH_CONVERSION_FUNCTIONS ibus-1.5.32/m4/ltoptions.m40000644000000000000000000003612114775216745011035 # Helper functions for option handling. -*- Autoconf -*- # # Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2024 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 10 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_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4], [_LT_WITH_AIX_SONAME([aix])]) ]) ])# _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* | *-*-windows* | *-*-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], [1], [Assembler program])dnl test -z "$DLLTOOL" && DLLTOOL=dlltool _LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl test -z "$OBJDUMP" && OBJDUMP=objdump _LT_DECL([], [OBJDUMP], [1], [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_AIX_SONAME([DEFAULT]) # ---------------------------------- # implement the --enable-aix-soname configure option, and support the # `aix-soname=aix' and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. # DEFAULT is either `aix', `both', or `svr4'. If omitted, it defaults to `aix'. m4_define([_LT_WITH_AIX_SONAME], [m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl shared_archive_member_spec= case $host,$enable_shared in power*-*-aix[[5-9]]*,yes) AC_MSG_CHECKING([which variant of shared library versioning to provide]) AC_ARG_ENABLE([aix-soname], [AS_HELP_STRING([--enable-aix-soname=aix|svr4|both], [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])], [case $enableval in aix|svr4|both) ;; *) AC_MSG_ERROR([Unknown argument to --enable-aix-soname]) ;; esac lt_cv_with_aix_soname=$enable_aix_soname], [_AC_ENABLE_IF([with], [aix-soname], [case $withval in aix|svr4|both) ;; *) AC_MSG_ERROR([Unknown argument to --with-aix-soname]) ;; esac lt_cv_with_aix_soname=$with_aix_soname], [AC_CACHE_VAL([lt_cv_with_aix_soname], [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)]) enable_aix_soname=$lt_cv_with_aix_soname]) with_aix_soname=$enable_aix_soname AC_MSG_RESULT([$with_aix_soname]) if test aix != "$with_aix_soname"; then # For the AIX way of multilib, we name the shared archive member # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o', # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File. # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag, # the AIX toolchain works better with OBJECT_MODE set (default 32). if test 64 = "${OBJECT_MODE-32}"; then shared_archive_member_spec=shr_64 else shared_archive_member_spec=shr fi fi ;; *) with_aix_soname=aix ;; esac _LT_DECL([], [shared_archive_member_spec], [0], [Shared archive member basename, for filename based shared library versioning on AIX])dnl ])# _LT_WITH_AIX_SONAME LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])]) LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])]) LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])]) # _LT_WITH_PIC([MODE]) # -------------------- # implement the --enable-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_ENABLE([pic], [AS_HELP_STRING([--enable-pic@<:@=PKGS@:>@], [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], [lt_p=${PACKAGE-default} case $enableval in yes|no) pic_mode=$enableval ;; *) pic_mode=default # Look at the argument we got. We use all the common list separators. lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for lt_pkg in $enableval; do IFS=$lt_save_ifs if test "X$lt_pkg" = "X$lt_p"; then pic_mode=yes fi done IFS=$lt_save_ifs ;; esac], [dnl Continue to support --with-pic and --without-pic, for backward dnl compatibility. _AC_ENABLE_IF([with], [pic], [lt_p=${PACKAGE-default} case $withval in yes|no) pic_mode=$withval ;; *) pic_mode=default # Look at the argument we got. We use all the common list separators. lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for lt_pkg in $withval; do IFS=$lt_save_ifs if test "X$lt_pkg" = "X$lt_p"; then pic_mode=yes fi done IFS=$lt_save_ifs ;; esac], [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])]) ibus-1.5.32/m4/ltsugar.m40000644000000000000000000001045314775216745010463 # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- # # Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2024 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 ]) ibus-1.5.32/m4/ltversion.m40000644000000000000000000000131214775216745011021 # ltversion.m4 -- version numbers -*- Autoconf -*- # # Copyright (C) 2004, 2011-2019, 2021-2024 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. # @configure_input@ # serial 4441 ltversion.m4 # This file is part of GNU Libtool m4_define([LT_PACKAGE_VERSION], [2.5.4]) m4_define([LT_PACKAGE_REVISION], [2.5.4]) AC_DEFUN([LTVERSION_VERSION], [macro_version='2.5.4' macro_revision='2.5.4' _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_revision, 0) ]) ibus-1.5.32/m4/lt~obsolete.m40000644000000000000000000001400714775216745011353 # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- # # Copyright (C) 2004-2005, 2007, 2009, 2011-2019, 2021-2024 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 5 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_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])]) m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])]) m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])]) m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])]) m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])]) m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])]) m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])]) m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])]) ibus-1.5.32/m4/nls.m40000644000000000000000000000230714775216741007571 # nls.m4 serial 5 (gettext-0.18) dnl Copyright (C) 1995-2003, 2005-2006, 2008-2014, 2016 Free Software dnl Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. dnl dnl This file can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public dnl License but which still want to provide support for the GNU gettext dnl functionality. dnl Please note that the actual code of the GNU gettext library is covered dnl by the GNU Library General Public License, and the rest of the GNU dnl gettext package is covered by the GNU General Public License. dnl They are *not* in the public domain. dnl Authors: dnl Ulrich Drepper , 1995-2000. dnl Bruno Haible , 2000-2003. AC_PREREQ([2.50]) AC_DEFUN([AM_NLS], [ AC_MSG_CHECKING([whether NLS is requested]) dnl Default is enabled NLS AC_ARG_ENABLE([nls], [ --disable-nls do not use Native Language Support], USE_NLS=$enableval, USE_NLS=yes) AC_MSG_RESULT([$USE_NLS]) AC_SUBST([USE_NLS]) ]) ibus-1.5.32/m4/pkg_config_for_build.m40000644000000000000000000000135514775216466013136 # PKG_PROG_PKG_CONFIG_FOR_BUILD([MIN-VERSION]) # ---------------------------------- AC_DEFUN([PKG_PROG_PKG_CONFIG_FOR_BUILD], [m4_pattern_allow([^PKG_CONFIG_FOR_BUILD$]) AC_ARG_VAR([PKG_CONFIG_FOR_BUILD], [path to build system's pkg-config utility]) if test "x$ac_cv_env_PKG_CONFIG_FOR_BUILD_set" != "xset"; then AC_PATH_PROG([PKG_CONFIG_FOR_BUILD], [pkg-config]) fi if test -n "$PKG_CONFIG_FOR_BUILD"; then _pkg_for_build_min_version=m4_default([$1], [0.9.0]) AC_MSG_CHECKING([build system's pkg-config is at least version $_pkg_min_version]) if $PKG_CONFIG_FOR_BUILD --atleast-pkgconfig-version $_pkg_min_version; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) PKG_CONFIG_FOR_BUILD="" fi fi[]dnl ])# PKG_PROG_PKG_CONFIG_FOR_BUILD ibus-1.5.32/m4/po.m40000644000000000000000000004503114775216741007414 # po.m4 serial 24 (gettext-0.19) dnl Copyright (C) 1995-2014, 2016 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. dnl dnl This file can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public dnl License but which still want to provide support for the GNU gettext dnl functionality. dnl Please note that the actual code of the GNU gettext library is covered dnl by the GNU Library General Public License, and the rest of the GNU dnl gettext package is covered by the GNU General Public License. dnl They are *not* in the public domain. dnl Authors: dnl Ulrich Drepper , 1995-2000. dnl Bruno Haible , 2000-2003. AC_PREREQ([2.60]) dnl Checks for all prerequisites of the po subdirectory. AC_DEFUN([AM_PO_SUBDIRS], [ AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AC_PROG_INSTALL])dnl AC_REQUIRE([AC_PROG_MKDIR_P])dnl AC_REQUIRE([AC_PROG_SED])dnl AC_REQUIRE([AM_NLS])dnl dnl Release version of the gettext macros. This is used to ensure that dnl the gettext macros and po/Makefile.in.in are in sync. AC_SUBST([GETTEXT_MACRO_VERSION], [0.19]) dnl Perform the following tests also if --disable-nls has been given, dnl because they are needed for "make dist" to work. dnl Search for GNU msgfmt in the PATH. dnl The first test excludes Solaris msgfmt and early GNU msgfmt versions. dnl The second test excludes FreeBSD msgfmt. AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, [$ac_dir/$ac_word --statistics /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1 && (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], :) AC_PATH_PROG([GMSGFMT], [gmsgfmt], [$MSGFMT]) dnl Test whether it is GNU msgfmt >= 0.15. changequote(,)dnl case `$MSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) MSGFMT_015=: ;; *) MSGFMT_015=$MSGFMT ;; esac changequote([,])dnl AC_SUBST([MSGFMT_015]) changequote(,)dnl case `$GMSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) GMSGFMT_015=: ;; *) GMSGFMT_015=$GMSGFMT ;; esac changequote([,])dnl AC_SUBST([GMSGFMT_015]) dnl Search for GNU xgettext 0.12 or newer in the PATH. dnl The first test excludes Solaris xgettext and early GNU xgettext versions. dnl The second test excludes FreeBSD xgettext. AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, [$ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1 && (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], :) dnl Remove leftover from FreeBSD xgettext call. rm -f messages.po dnl Test whether it is GNU xgettext >= 0.15. changequote(,)dnl case `$XGETTEXT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) XGETTEXT_015=: ;; *) XGETTEXT_015=$XGETTEXT ;; esac changequote([,])dnl AC_SUBST([XGETTEXT_015]) dnl Search for GNU msgmerge 0.11 or newer in the PATH. AM_PATH_PROG_WITH_TEST(MSGMERGE, msgmerge, [$ac_dir/$ac_word --update -q /dev/null /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1], :) dnl Installation directories. dnl Autoconf >= 2.60 defines localedir. For older versions of autoconf, we dnl have to define it here, so that it can be used in po/Makefile. test -n "$localedir" || localedir='${datadir}/locale' AC_SUBST([localedir]) dnl Support for AM_XGETTEXT_OPTION. test -n "${XGETTEXT_EXTRA_OPTIONS+set}" || XGETTEXT_EXTRA_OPTIONS= AC_SUBST([XGETTEXT_EXTRA_OPTIONS]) AC_CONFIG_COMMANDS([po-directories], [[ for ac_file in $CONFIG_FILES; do # Support "outfile[:infile[:infile...]]" case "$ac_file" in *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; esac # PO directories have a Makefile.in generated from Makefile.in.in. case "$ac_file" in */Makefile.in) # Adjust a relative srcdir. ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` ac_dir_suffix=/`echo "$ac_dir"|sed 's%^\./%%'` ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` # In autoconf-2.13 it is called $ac_given_srcdir. # In autoconf-2.50 it is called $srcdir. test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" case "$ac_given_srcdir" in .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; /*) top_srcdir="$ac_given_srcdir" ;; *) top_srcdir="$ac_dots$ac_given_srcdir" ;; esac # Treat a directory as a PO directory if and only if it has a # POTFILES.in file. This allows packages to have multiple PO # directories under different names or in different locations. if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then rm -f "$ac_dir/POTFILES" test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" gt_tab=`printf '\t'` cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ${gt_tab}]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES" POMAKEFILEDEPS="POTFILES.in" # ALL_LINGUAS, POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES depend # on $ac_dir but don't depend on user-specified configuration # parameters. if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then # The LINGUAS file contains the set of available languages. if test -n "$OBSOLETE_ALL_LINGUAS"; then test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" fi ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` # Hide the ALL_LINGUAS assignment from automake < 1.5. eval 'ALL_LINGUAS''=$ALL_LINGUAS_' POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" else # The set of available languages was given in configure.in. # Hide the ALL_LINGUAS assignment from automake < 1.5. eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' fi # Compute POFILES # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) # Compute UPDATEPOFILES # as $(foreach lang, $(ALL_LINGUAS), $(lang).po-update) # Compute DUMMYPOFILES # as $(foreach lang, $(ALL_LINGUAS), $(lang).nop) # Compute GMOFILES # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo) case "$ac_given_srcdir" in .) srcdirpre= ;; *) srcdirpre='$(srcdir)/' ;; esac POFILES= UPDATEPOFILES= DUMMYPOFILES= GMOFILES= for lang in $ALL_LINGUAS; do POFILES="$POFILES $srcdirpre$lang.po" UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" DUMMYPOFILES="$DUMMYPOFILES $lang.nop" GMOFILES="$GMOFILES $srcdirpre$lang.gmo" done # CATALOGS depends on both $ac_dir and the user's LINGUAS # environment variable. INST_LINGUAS= if test -n "$ALL_LINGUAS"; then for presentlang in $ALL_LINGUAS; do useit=no if test "%UNSET%" != "$LINGUAS"; then desiredlanguages="$LINGUAS" else desiredlanguages="$ALL_LINGUAS" fi for desiredlang in $desiredlanguages; do # Use the presentlang catalog if desiredlang is # a. equal to presentlang, or # b. a variant of presentlang (because in this case, # presentlang can be used as a fallback for messages # which are not translated in the desiredlang catalog). case "$desiredlang" in "$presentlang"*) useit=yes;; esac done if test $useit = yes; then INST_LINGUAS="$INST_LINGUAS $presentlang" fi done fi CATALOGS= if test -n "$INST_LINGUAS"; then for lang in $INST_LINGUAS; do CATALOGS="$CATALOGS $lang.gmo" done fi test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile" sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile" for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do if test -f "$f"; then case "$f" in *.orig | *.bak | *~) ;; *) cat "$f" >> "$ac_dir/Makefile" ;; esac fi done fi ;; esac done]], [# Capture the value of obsolete ALL_LINGUAS because we need it to compute # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it # from automake < 1.5. eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"' # Capture the value of LINGUAS because we need it to compute CATALOGS. LINGUAS="${LINGUAS-%UNSET%}" ]) ]) dnl Postprocesses a Makefile in a directory containing PO files. AC_DEFUN([AM_POSTPROCESS_PO_MAKEFILE], [ # When this code is run, in config.status, two variables have already been # set: # - OBSOLETE_ALL_LINGUAS is the value of LINGUAS set in configure.in, # - LINGUAS is the value of the environment variable LINGUAS at configure # time. changequote(,)dnl # Adjust a relative srcdir. ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` ac_dir_suffix=/`echo "$ac_dir"|sed 's%^\./%%'` ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` # In autoconf-2.13 it is called $ac_given_srcdir. # In autoconf-2.50 it is called $srcdir. test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" case "$ac_given_srcdir" in .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; /*) top_srcdir="$ac_given_srcdir" ;; *) top_srcdir="$ac_dots$ac_given_srcdir" ;; esac # Find a way to echo strings without interpreting backslash. if test "X`(echo '\t') 2>/dev/null`" = 'X\t'; then gt_echo='echo' else if test "X`(printf '%s\n' '\t') 2>/dev/null`" = 'X\t'; then gt_echo='printf %s\n' else echo_func () { cat < "$ac_file.tmp" tab=`printf '\t'` if grep -l '@TCLCATALOGS@' "$ac_file" > /dev/null; then # Add dependencies that cannot be formulated as a simple suffix rule. for lang in $ALL_LINGUAS; do frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'` cat >> "$ac_file.tmp" < /dev/null; then # Add dependencies that cannot be formulated as a simple suffix rule. for lang in $ALL_LINGUAS; do frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'` cat >> "$ac_file.tmp" <> "$ac_file.tmp" <, 1996. AC_PREREQ([2.50]) # Search path for a program which passes the given test. dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) AC_DEFUN([AM_PATH_PROG_WITH_TEST], [ # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which # contains only /bin. Note that ksh looks also at the FPATH variable, # so we have to set that as well for the test. PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ || PATH_SEPARATOR=';' } fi # Find out how to test for executable files. Don't use a zero-byte file, # as systems may use methods other than mode bits to determine executability. cat >conf$$.file <<_ASEOF #! /bin/sh exit 0 _ASEOF chmod +x conf$$.file if test -x conf$$.file >/dev/null 2>&1; then ac_executable_p="test -x" else ac_executable_p="test -f" fi rm -f conf$$.file # Extract the first word of "$2", so it can be a program name with args. set dummy $2; ac_word=[$]2 AC_MSG_CHECKING([for $ac_word]) AC_CACHE_VAL([ac_cv_path_$1], [case "[$]$1" in [[\\/]]* | ?:[[\\/]]*) ac_cv_path_$1="[$]$1" # Let the user override the test with a path. ;; *) ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in ifelse([$5], , $PATH, [$5]); do IFS="$ac_save_IFS" test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then echo "$as_me: trying $ac_dir/$ac_word..." >&AS_MESSAGE_LOG_FD if [$3]; then ac_cv_path_$1="$ac_dir/$ac_word$ac_exec_ext" break 2 fi fi done done IFS="$ac_save_IFS" dnl If no 4th arg is given, leave the cache variable unset, dnl so AC_PATH_PROGS will keep looking. ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" ])dnl ;; esac])dnl $1="$ac_cv_path_$1" if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then AC_MSG_RESULT([$][$1]) else AC_MSG_RESULT([no]) fi AC_SUBST([$1])dnl ]) ibus-1.5.32/m4/vapigen.m40000644000000000000000000000663314775216466010440 dnl vapigen.m4 dnl dnl Copyright 2012 Evan Nemerson dnl dnl This library is free software; you can redistribute it and/or dnl modify it under the terms of the GNU Lesser General Public dnl License as published by the Free Software Foundation; either dnl version 2.1 of the License, or (at your option) any later version. dnl dnl This library is distributed in the hope that it will be useful, dnl but WITHOUT ANY WARRANTY; without even the implied warranty of dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU dnl Lesser General Public License for more details. dnl dnl You should have received a copy of the GNU Lesser General Public dnl License along with this library; if not, write to the Free Software dnl Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA # VAPIGEN_CHECK([VERSION], [API_VERSION], [FOUND_INTROSPECTION], [DEFAULT]) # -------------------------------------- # Check vapigen existence and version # # See http://live.gnome.org/Vala/UpstreamGuide for detailed documentation AC_DEFUN([VAPIGEN_CHECK], [ AS_IF([test "x$3" != "xyes"], [ m4_provide_if([GOBJECT_INTROSPECTION_CHECK], [], [ m4_provide_if([GOBJECT_INTROSPECTION_REQUIRE], [], [ AC_MSG_ERROR([[You must call GOBJECT_INTROSPECTION_CHECK or GOBJECT_INTROSPECTION_REQUIRE before using VAPIGEN_CHECK unless using the FOUND_INTROSPECTION argument is "yes"]]) ]) ]) ]) AC_ARG_ENABLE([vala], [AS_HELP_STRING([--enable-vala[=@<:@no/auto/yes@:>@]],[build Vala bindings @<:@default=]ifelse($4,,auto,$4)[@:>@])],,[ AS_IF([test "x$4" = "x"], [ enable_vala=auto ], [ enable_vala=$4 ]) ]) AS_CASE([$enable_vala], [no], [enable_vala=no], [yes], [ AS_IF([test "x$3" != "xyes" -a "x$found_introspection" != "xyes"], [ AC_MSG_ERROR([Vala bindings require GObject Introspection]) ]) ], [auto], [ AS_IF([test "x$3" != "xyes" -a "x$found_introspection" != "xyes"], [ enable_vala=no ]) ], [ AC_MSG_ERROR([Invalid argument passed to --enable-vala, should be one of @<:@no/auto/yes@:>@]) ]) AS_IF([test "x$2" = "x"], [ vapigen_pkg_name=vapigen ], [ vapigen_pkg_name=vapigen-$2 ]) AS_IF([test "x$1" = "x"], [ vapigen_pkg="$vapigen_pkg_name" ], [ vapigen_pkg="$vapigen_pkg_name >= $1" ]) PKG_PROG_PKG_CONFIG PKG_CHECK_EXISTS([$vapigen_pkg], [ AS_IF([test "$enable_vala" = "auto"], [ enable_vala=yes ]) ], [ AS_CASE([$enable_vala], [yes], [ AC_MSG_ERROR([$vapigen_pkg not found]) ], [auto], [ enable_vala=no ]) ]) AC_MSG_CHECKING([for vapigen]) AS_CASE([$enable_vala], [yes], [ VAPIGEN=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=vapigen $vapigen_pkg_name` VAPIGEN_MAKEFILE=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=datadir $vapigen_pkg_name`/vala/Makefile.vapigen AS_IF([test "x$2" = "x"], [ VAPIGEN_VAPIDIR=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=vapidir $vapigen_pkg_name` ], [ VAPIGEN_VAPIDIR=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=vapidir_versioned $vapigen_pkg_name` ]) ]) AC_MSG_RESULT([$enable_vala]) AC_SUBST([VAPIGEN]) AC_SUBST([VAPIGEN_VAPIDIR]) AC_SUBST([VAPIGEN_MAKEFILE]) AM_CONDITIONAL(ENABLE_VAPIGEN, test "x$enable_vala" = "xyes") ]) ibus-1.5.32/m4/Makefile.am0000644000000000000000000000214014775216466010566 # vim:set noet ts=4: # # ibus - The Input Bus # # Copyright (c) 2007-2010 Peng Huang # Copyright (c) 2007-2018 Red Hat, Inc. # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library 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 # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 # USA EXTRA_DIST = \ ax_prog_cc_for_build.m4 \ ibuslocale.m4 \ pkg_config_for_build.m4 \ vapigen.m4 \ $(NULL) GITIGNOREFILES = \ gtk-doc.m4 \ intltool.m4 \ libtool.m4 \ lt*.m4 \ $(NULL) -include $(top_srcdir)/git.mk ibus-1.5.32/m4/Makefile.in0000644000000000000000000004575714775216753010623 # Makefile.in generated by automake 1.17 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2024 Free Software Foundation, Inc. # This Makefile.in 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. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ # vim:set noet ts=4: # # ibus - The Input Bus # # Copyright (c) 2007-2010 Peng Huang # Copyright (c) 2007-2018 Red Hat, Inc. # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library 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 # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 # USA VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) am__rm_f = rm -f $(am__rm_f_notfound) am__rm_rf = rm -rf $(am__rm_f_notfound) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/ax_prog_cc_for_build.m4 \ $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gtk-doc.m4 \ $(top_srcdir)/m4/ibuslocale.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/intlmacosx.m4 \ $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/lib-ld.m4 \ $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.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)/m4/nls.m4 \ $(top_srcdir)/m4/pkg_config_for_build.m4 \ $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ $(top_srcdir)/m4/vapigen.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = SOURCES = DIST_SOURCES = am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) am__DIST_COMMON = $(srcdir)/Makefile.in DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BUILD_EXEEXT = @BUILD_EXEEXT@ BUILD_OBJEXT = @BUILD_OBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CC_FOR_BUILD = @CC_FOR_BUILD@ CFLAGS = @CFLAGS@ CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@ CPP_FOR_BUILD = @CPP_FOR_BUILD@ CSCOPE = @CSCOPE@ CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DATE_DISPLAY = @DATE_DISPLAY@ DBUSMENU_GLIB_CFLAGS = @DBUSMENU_GLIB_CFLAGS@ DBUSMENU_GLIB_LIBS = @DBUSMENU_GLIB_LIBS@ DBUSMENU_GTK3_CFLAGS = @DBUSMENU_GTK3_CFLAGS@ DBUSMENU_GTK3_LIBS = @DBUSMENU_GTK3_LIBS@ DBUS_CFLAGS = @DBUS_CFLAGS@ DBUS_LIBS = @DBUS_LIBS@ DBUS_PYTHON_CFLAGS = @DBUS_PYTHON_CFLAGS@ DBUS_PYTHON_LIBS = @DBUS_PYTHON_LIBS@ DCONF_CFLAGS = @DCONF_CFLAGS@ DCONF_LIBS = @DCONF_LIBS@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EMOJI_ANNOTATION_DIR = @EMOJI_ANNOTATION_DIR@ ENDIAN = @ENDIAN@ ENV_IBUS_TEST = @ENV_IBUS_TEST@ ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FILECMD = @FILECMD@ GDBUS_CODEGEN = @GDBUS_CODEGEN@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIO2_CFLAGS = @GIO2_CFLAGS@ GIO2_LIBS = @GIO2_LIBS@ GLIB2_CFLAGS = @GLIB2_CFLAGS@ GLIB2_LIBS = @GLIB2_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_CFLAGS_FOR_BUILD = @GLIB_CFLAGS_FOR_BUILD@ GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ GLIB_LIBS_FOR_BUILD = @GLIB_LIBS_FOR_BUILD@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMSGFMT = @GMSGFMT@ GMSGFMT_015 = @GMSGFMT_015@ GOBJECT2_CFLAGS = @GOBJECT2_CFLAGS@ GOBJECT2_LIBS = @GOBJECT2_LIBS@ GOBJECT_QUERY = @GOBJECT_QUERY@ GREP = @GREP@ GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@ GTHREAD2_CFLAGS = @GTHREAD2_CFLAGS@ GTHREAD2_LIBS = @GTHREAD2_LIBS@ GTK2_CFLAGS = @GTK2_CFLAGS@ GTK2_IM_MODULEDIR = @GTK2_IM_MODULEDIR@ GTK2_LIBS = @GTK2_LIBS@ GTK3_CFLAGS = @GTK3_CFLAGS@ GTK3_IM_MODULEDIR = @GTK3_IM_MODULEDIR@ GTK3_LIBS = @GTK3_LIBS@ GTK4_CFLAGS = @GTK4_CFLAGS@ GTK4_IM_MODULEDIR = @GTK4_IM_MODULEDIR@ GTK4_LIBS = @GTK4_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IBUS_ABI_AGE = @IBUS_ABI_AGE@ IBUS_ABI_CURRENT = @IBUS_ABI_CURRENT@ IBUS_ABI_REVISION = @IBUS_ABI_REVISION@ IBUS_API_VERSION = @IBUS_API_VERSION@ IBUS_BINARY_VERSION = @IBUS_BINARY_VERSION@ IBUS_GIR_SCANNERFLAGS = @IBUS_GIR_SCANNERFLAGS@ IBUS_ICON_KEYBOARD = @IBUS_ICON_KEYBOARD@ IBUS_MAJOR_VERSION = @IBUS_MAJOR_VERSION@ IBUS_MICRO_VERSION = @IBUS_MICRO_VERSION@ IBUS_MINOR_VERSION = @IBUS_MINOR_VERSION@ IBUS_UI_WAYLAND_DESKTOP = @IBUS_UI_WAYLAND_DESKTOP@ IBUS_VERSION = @IBUS_VERSION@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ ISOCODES_CFLAGS = @ISOCODES_CFLAGS@ ISOCODES_LIBS = @ISOCODES_LIBS@ ISOCODES_PREFIX = @ISOCODES_PREFIX@ LD = @LD@ LDFLAGS = @LDFLAGS@ LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@ LIBDL = @LIBDL@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ LIBNOTIFY_CFLAGS = @LIBNOTIFY_CFLAGS@ LIBNOTIFY_LIBS = @LIBNOTIFY_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ LT_CURRENT_MINUS_AGE = @LT_CURRENT_MINUS_AGE@ LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ LT_VERSION_INFO = @LT_VERSION_INFO@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_FOR_BUILD = @PKG_CONFIG_FOR_BUILD@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POSUB = @POSUB@ PYTHON = @PYTHON@ PYTHON2 = @PYTHON2@ PYTHON_CFLAGS = @PYTHON_CFLAGS@ PYTHON_CONFIG = @PYTHON_CONFIG@ PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ PYTHON_INCLUDES = @PYTHON_INCLUDES@ PYTHON_LIBS = @PYTHON_LIBS@ PYTHON_PLATFORM = @PYTHON_PLATFORM@ PYTHON_PREFIX = @PYTHON_PREFIX@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ SYSTEMD_CFLAGS = @SYSTEMD_CFLAGS@ SYSTEMD_LIBS = @SYSTEMD_LIBS@ SYSTEMD_USER_UNIT_DIR = @SYSTEMD_USER_UNIT_DIR@ UCD_DIR = @UCD_DIR@ UNICODE_EMOJI_DIR = @UNICODE_EMOJI_DIR@ USE_NLS = @USE_NLS@ VALAC = @VALAC@ VALA_TARGET_GLIB_VERSION = @VALA_TARGET_GLIB_VERSION@ VAPIGEN = @VAPIGEN@ VAPIGEN_MAKEFILE = @VAPIGEN_MAKEFILE@ VAPIGEN_VAPIDIR = @VAPIGEN_VAPIDIR@ VERSION = @VERSION@ WAYLAND_CFLAGS = @WAYLAND_CFLAGS@ WAYLAND_IM_PRTCL_SUBDIR = @WAYLAND_IM_PRTCL_SUBDIR@ WAYLAND_LIBS = @WAYLAND_LIBS@ WAYLAND_PRTCLS_DIR = @WAYLAND_PRTCLS_DIR@ WAYLAND_SCANNER_CFLAGS = @WAYLAND_SCANNER_CFLAGS@ WAYLAND_SCANNER_LIBS = @WAYLAND_SCANNER_LIBS@ WAYLAND_TEXT_PRTCL_SUBDIR = @WAYLAND_TEXT_PRTCL_SUBDIR@ X11_CFLAGS = @X11_CFLAGS@ X11_LIBS = @X11_LIBS@ X11_LOCALEDATADIR = @X11_LOCALEDATADIR@ X11_PREFIX = @X11_PREFIX@ XFIXES_CFLAGS = @XFIXES_CFLAGS@ XFIXES_LIBS = @XFIXES_LIBS@ XGETTEXT = @XGETTEXT@ XGETTEXT_015 = @XGETTEXT_015@ XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ XIM_CLI_ARG = @XIM_CLI_ARG@ XKBCONFIG_BASE = @XKBCONFIG_BASE@ XKBCONFIG_CFLAGS = @XKBCONFIG_CFLAGS@ XKBCONFIG_LIBS = @XKBCONFIG_LIBS@ XTEST_CFLAGS = @XTEST_CFLAGS@ XTEST_LIBS = @XTEST_LIBS@ _GI_EXP_DATADIR = @_GI_EXP_DATADIR@ _GI_EXP_LIBDIR = @_GI_EXP_LIBDIR@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_CC_FOR_BUILD = @ac_ct_CC_FOR_BUILD@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__rm_f_notfound = @am__rm_f_notfound@ am__tar = @am__tar@ am__untar = @am__untar@ am__xargs_n = @am__xargs_n@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ gsettingsschemadir = @gsettingsschemadir@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ pkgpyexecdir = @pkgpyexecdir@ pkgpython2dir = @pkgpython2dir@ pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ py2overridesdir = @py2overridesdir@ pyexecdir = @pyexecdir@ pyoverridesdir = @pyoverridesdir@ pythondir = @pythondir@ runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ wayland_protocoldir = @wayland_protocoldir@ wayland_scanner = @wayland_scanner@ wayland_scanner_rules = @wayland_scanner_rules@ EXTRA_DIST = \ ax_prog_cc_for_build.m4 \ ibuslocale.m4 \ pkg_config_for_build.m4 \ vapigen.m4 \ $(NULL) GITIGNOREFILES = \ gtk-doc.m4 \ intltool.m4 \ libtool.m4 \ lt*.m4 \ $(NULL) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu m4/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu m4/Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs tags TAGS: ctags CTAGS: cscope cscopelist: distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: distclean-generic: -$(am__rm_f) $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || $(am__rm_f) $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-libtool mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic clean-libtool \ cscopelist-am ctags-am distclean distclean-generic \ distclean-libtool distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags-am uninstall uninstall-am .PRECIOUS: Makefile -include $(top_srcdir)/git.mk # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: # Tell GNU make to disable its built-in pattern rules. %:: %,v %:: RCS/%,v %:: RCS/% %:: s.% %:: SCCS/s.% ibus-1.5.32/Makefile.am0000644000000000000000000000744414775216466010262 # vim:set noet ts=4: # # ibus - The Input Bus # # Copyright (c) 2007-2016 Peng Huang # Copyright (c) 2015-2019 Takao Fujiwara # Copyright (c) 2007-2019 Red Hat, Inc. # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library 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 # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 # USA NULL = if ENABLE_UI UI_DIR = ui endif if ENABLE_ENGINE ENGINE_DIR = engine endif if ENABLE_SETUP SETUP_DIR = setup endif if ENABLE_PYTHON_LIBRARY PYTHON_LIB_DIRS = ibus endif if ENABLE_DAEMON DAEMON_DIR = \ bus \ $(NULL) endif SUBDIRS = \ src \ bindings \ util \ conf \ client \ portal \ data \ m4 \ po \ $(ENGINE_DIR) \ $(UI_DIR) \ tools \ $(DAEMON_DIR) \ $(PYTHON_LIB_DIRS) \ $(SETUP_DIR) \ docs \ $(NULL) ACLOCAL_AMFLAGS = -I m4 pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = ibus-@IBUS_API_VERSION@.pc ibus_pc_in = ibus-@IBUS_API_VERSION@.pc.in EXTRA_DIST = \ COPYING.unicode \ autogen.sh \ $(ibus_pc_in) \ ibus.spec.in \ python-config.py \ xinput-ibus \ $(NULL) noinst_DIST = \ $(NULL) DISTCLEANFILES = \ po/stamp-it \ $(NULL) install-data-hook: $(MKDIR_P) $(DESTDIR)${pkgdatadir}/engine DISTCHECK_CONFIGURE_FLAGS = \ --enable-gtk-doc \ --disable-schemas-install \ --enable-memconf \ $(NULL) dist-hook: if test -d .git ; then \ git log --name-status --date=iso > $(distdir)/ChangeLog ; \ IBUS_PREV_MICRO_VERSION=`expr $(IBUS_MICRO_VERSION) - 1`; \ IBUS_PREV_VERSION=\ "$(IBUS_MAJOR_VERSION).$(IBUS_MINOR_VERSION).$$IBUS_PREV_MICRO_VERSION"; \ echo "Changes in IBus $(IBUS_VERSION)" > $(distdir)/NEWS; \ echo "" >> $(distdir)/NEWS; \ git shortlog $$IBUS_PREV_VERSION...$(IBUS_VERSION) \ >> $(distdir)/NEWS; \ echo "" >> $(distdir)/NEWS; \ git log $$IBUS_PREV_VERSION...$(IBUS_VERSION) --reverse \ --pretty=format:'%s (%an) %h' >> $(distdir)/NEWS; \ fi distclean-local: if test "x$(srcdir)" = "x."; then :; else \ rm -f ChangeLog; \ rm -f NEWS; \ fi MAINTAINERCLEANFILES = \ $(srcdir)/ChangeLog \ $(NULL) rpm: dist @PACKAGE_NAME@.spec rpmbuild -bb \ --define "_sourcedir `pwd`" \ --define "_builddir `pwd`/rpm" \ --define "_srcrpmdir `pwd`/rpm" \ --define "_rpmdir `pwd`"/rpm \ --define "_specdir `pwd`/rpm" \ @PACKAGE_NAME@.spec srpm: dist @PACKAGE_NAME@.spec rpmbuild -bs \ --define "_sourcedir `pwd`" \ --define "_builddir `pwd`/rpm" \ --define "_srcrpmdir `pwd`/rpm" \ --define "_rpmdir `pwd`/rpm" \ --define "_specdir `pwd`/rpm" \ @PACKAGE_NAME@.spec @PACKAGE_NAME@-@PACKAGE_VERSION@.%.sum: @PACKAGE_NAME@-@PACKAGE_VERSION@.% f=`basename $@ .sum`; \ printf "cksum %s %s %s\n" `cksum $$f` > $@; \ printf "sha1sum %s %s\n" `sha1sum $$f` >> $@; \ printf "sha256sum %s %s\n" `sha256sum $$f` >> $@; \ printf "sha512sum %s %s\n" `sha512sum $$f` >> $@; \ $(NULL) clean-rpm: -$(RM) -r "`uname -i`" clean-local: clean-rpm git-tag: git tag -s @PACKAGE_VERSION@ git-clean-tree: git clean -d -f -x GITIGNOREFILES = \ INSTALL \ aclocal.m4 \ compile \ config.guess \ config.h.in \ config.sub \ depcomp \ gtk-doc.make \ install-sh \ ltmain.sh \ missing \ mkinstalldirs \ py-compile \ stamp-h* \ $(NULL) -include $(top_srcdir)/git.mk ibus-1.5.32/configure0000755000000000000000000321651314775216751010134 #! /bin/sh # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.72 for ibus 1.5.32. # # Report bugs to . # # # Copyright (C) 1992-1996, 1998-2017, 2020-2023 Free Software Foundation, # Inc. # # # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## -------------------- ## ## M4sh Initialization. ## ## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case e in #( e) case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; esac ;; esac fi # Reset variables that may have inherited troublesome values from # the environment. # IFS needs to be set, to space, tab, and newline, in precisely that order. # (If _AS_PATH_WALK were called with IFS unset, it would have the # side effect of setting IFS to empty, thus disabling word splitting.) # Quoting is to prevent editors from complaining about space-tab. as_nl=' ' export as_nl IFS=" "" $as_nl" PS1='$ ' PS2='> ' PS4='+ ' # Ensure predictable behavior from utilities with locale-dependent output. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # We cannot yet rely on "unset" to work, but we need these variables # to be unset--not just set to an empty or harmless value--now, to # avoid bugs in old shells (e.g. pre-3.0 UWIN ksh). This construct # also avoids known problems related to "unset" and subshell syntax # in other old shells (e.g. bash 2.01 and pdksh 5.2.14). for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH do eval test \${$as_var+y} \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done # Ensure that fds 0, 1, and 2 are open. if (exec 3>&0) 2>/dev/null; then :; else exec 0&1) 2>/dev/null; then :; else exec 1>/dev/null; fi if (exec 3>&2) ; then :; else exec 2>/dev/null; fi # The user is always right. if ${PATH_SEPARATOR+false} :; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi # Find who we are. Look in the path if we contain no directory separator. as_myself= case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac test -r "$as_dir$0" && as_myself=$as_dir$0 && break done IFS=$as_save_IFS ;; esac # We did not find ourselves, most probably we were run as 'sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # Use a proper internal environment variable to ensure we don't fall # into an infinite loop, continuously re-executing ourselves. if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then _as_can_reexec=no; export _as_can_reexec; # We cannot yet assume a decent shell, so we have to provide a # neutralization value for shells without unset; and this also # works around shells that cannot unset nonexistent variables. # Preserve -v and -x to the replacement shell. BASH_ENV=/dev/null ENV=/dev/null (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV case $- in # (((( *v*x* | *x*v* ) as_opts=-vx ;; *v* ) as_opts=-v ;; *x* ) as_opts=-x ;; * ) as_opts= ;; esac exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} # Admittedly, this is quite paranoid, since all the known shells bail # out after a failed 'exec'. printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2 exit 255 fi # We don't want this to propagate to other subprocesses. { _as_can_reexec=; unset _as_can_reexec;} if test "x$CONFIG_SHELL" = x; then as_bourne_compatible="if test \${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which # is contrary to our usage. Disable this feature. alias -g '\${1+\"\$@\"}'='\"\$@\"' setopt NO_GLOB_SUBST else case e in #( e) case \`(set -o) 2>/dev/null\` in #( *posix*) : set -o posix ;; #( *) : ;; esac ;; esac fi " as_required="as_fn_return () { (exit \$1); } as_fn_success () { as_fn_return 0; } as_fn_failure () { as_fn_return 1; } as_fn_ret_success () { return 0; } as_fn_ret_failure () { return 1; } exitcode=0 as_fn_success || { exitcode=1; echo as_fn_success failed.; } as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } if ( set x; as_fn_ret_success y && test x = \"\$1\" ) then : else case e in #( e) exitcode=1; echo positional parameters were not saved. ;; esac fi test x\$exitcode = x0 || exit 1 blah=\$(echo \$(echo blah)) test x\"\$blah\" = xblah || exit 1 test -x / || exit 1" as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 test \$(( 1 + 1 )) = 2 || exit 1 test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || ( ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO PATH=/empty FPATH=/empty; export PATH FPATH test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\ || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1" if (eval "$as_required") 2>/dev/null then : as_have_required=yes else case e in #( e) as_have_required=no ;; esac fi if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null then : else case e in #( e) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR as_found=false for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac as_found=: case $as_dir in #( /*) for as_base in sh bash ksh sh5; do # Try only shells that exist, to save several forks. as_shell=$as_dir$as_base if { test -f "$as_shell" || test -f "$as_shell.exe"; } && as_run=a "$as_shell" -c "$as_bourne_compatible""$as_required" 2>/dev/null then : CONFIG_SHELL=$as_shell as_have_required=yes if as_run=a "$as_shell" -c "$as_bourne_compatible""$as_suggested" 2>/dev/null then : break 2 fi fi done;; esac as_found=false done IFS=$as_save_IFS if $as_found then : else case e in #( e) if { test -f "$SHELL" || test -f "$SHELL.exe"; } && as_run=a "$SHELL" -c "$as_bourne_compatible""$as_required" 2>/dev/null then : CONFIG_SHELL=$SHELL as_have_required=yes fi ;; esac fi if test "x$CONFIG_SHELL" != x then : export CONFIG_SHELL # We cannot yet assume a decent shell, so we have to provide a # neutralization value for shells without unset; and this also # works around shells that cannot unset nonexistent variables. # Preserve -v and -x to the replacement shell. BASH_ENV=/dev/null ENV=/dev/null (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV case $- in # (((( *v*x* | *x*v* ) as_opts=-vx ;; *v* ) as_opts=-v ;; *x* ) as_opts=-x ;; * ) as_opts= ;; esac exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} # Admittedly, this is quite paranoid, since all the known shells bail # out after a failed 'exec'. printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2 exit 255 fi if test x$as_have_required = xno then : printf "%s\n" "$0: This script requires a shell more modern than all" printf "%s\n" "$0: the shells that I found on your system." if test ${ZSH_VERSION+y} ; then printf "%s\n" "$0: In particular, zsh $ZSH_VERSION has bugs and should" printf "%s\n" "$0: be upgraded to zsh 4.3.4 or later." else printf "%s\n" "$0: Please tell bug-autoconf@gnu.org and $0: https://github.com/ibus/ibus/issues about your system, $0: including any error possibly output before this $0: message. Then install a modern shell, or manually run $0: the script under such a shell if you do have one." fi exit 1 fi ;; esac fi fi SHELL=${CONFIG_SHELL-/bin/sh} export SHELL # Unset more variables known to interfere with behavior of common tools. CLICOLOR_FORCE= GREP_OPTIONS= unset CLICOLOR_FORCE GREP_OPTIONS ## --------------------- ## ## M4sh Shell Functions. ## ## --------------------- ## # as_fn_unset VAR # --------------- # Portably unset VAR. as_fn_unset () { { eval $1=; unset $1;} } as_unset=as_fn_unset # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. as_fn_set_status () { return $1 } # as_fn_set_status # as_fn_exit STATUS # ----------------- # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. as_fn_exit () { set +e as_fn_set_status $1 exit $1 } # as_fn_exit # as_fn_mkdir_p # ------------- # Create "$as_dir" as a directory, including parents if necessary. as_fn_mkdir_p () { case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || eval $as_mkdir_p || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || printf "%s\n" X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" } # as_fn_mkdir_p # as_fn_executable_p FILE # ----------------------- # Test if FILE is an executable regular file. as_fn_executable_p () { test -f "$1" && test -x "$1" } # as_fn_executable_p # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null then : eval 'as_fn_append () { eval $1+=\$2 }' else case e in #( e) as_fn_append () { eval $1=\$$1\$2 } ;; esac fi # as_fn_append # as_fn_arith ARG... # ------------------ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null then : eval 'as_fn_arith () { as_val=$(( $* )) }' else case e in #( e) as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } ;; esac fi # as_fn_arith # as_fn_error STATUS ERROR [LINENO LOG_FD] # ---------------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the # script with STATUS, using 1 if that was 0. as_fn_error () { as_status=$1; test $as_status -eq 0 && as_status=1 if test "$4"; then as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi printf "%s\n" "$as_me: error: $2" >&2 as_fn_exit $as_status } # as_fn_error if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || printf "%s\n" X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits as_lineno_1=$LINENO as_lineno_1a=$LINENO as_lineno_2=$LINENO as_lineno_2a=$LINENO eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) sed -n ' p /[$]LINENO/= ' <$as_myself | sed ' t clear :clear s/[$]LINENO.*/&-/ t lineno b :lineno N :loop s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ t loop s/-\n.*// ' >$as_me.lineno && chmod +x "$as_me.lineno" || { printf "%s\n" "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } # If we had to re-execute with $CONFIG_SHELL, we're ensured to have # already done that, so ensure we don't try to do so again and fall # in an infinite loop. This has already happened in practice. _as_can_reexec=no; export _as_can_reexec # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensitive to this). . "./$as_me.lineno" # Exit status is that of the last command. exit } # Determine whether it's possible to make 'echo' print without a newline. # These variables are no longer used directly by Autoconf, but are AC_SUBSTed # for compatibility with existing Makefiles. ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. xy) ECHO_C='\c';; *) echo `echo ksh88 bug on AIX 6.1` > /dev/null ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac # For backward compatibility with old third-party macros, we provide # the shell variables $as_echo and $as_echo_n. New code should use # AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively. as_echo='printf %s\n' as_echo_n='printf %s' rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir mkdir conf$$.dir 2>/dev/null fi if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: # 1) On MSYS, both 'ln -s file dir' and 'ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; 'ln -s' creates a wrapper executable. # In both cases, we have to default to 'cp -pR'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -pR' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -pR' fi else as_ln_s='cp -pR' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_test_x='test -x' as_executable_p=as_fn_executable_p # Sed expression to map a string onto a valid CPP name. as_sed_cpp="y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g" as_tr_cpp="eval sed '$as_sed_cpp'" # deprecated # Sed expression to map a string onto a valid variable name. as_sed_sh="y%*+%pp%;s%[^_$as_cr_alnum]%_%g" as_tr_sh="eval sed '$as_sed_sh'" # deprecated as_awk_strverscmp=' # Use only awk features that work with 7th edition Unix awk (1978). # My, what an old awk you have, Mr. Solaris! END { while (length(v1) && length(v2)) { # Set d1 to be the next thing to compare from v1, and likewise for d2. # Normally this is a single character, but if v1 and v2 contain digits, # compare them as integers and fractions as strverscmp does. if (v1 ~ /^[0-9]/ && v2 ~ /^[0-9]/) { # Split v1 and v2 into their leading digit string components d1 and d2, # and advance v1 and v2 past the leading digit strings. for (len1 = 1; substr(v1, len1 + 1) ~ /^[0-9]/; len1++) continue for (len2 = 1; substr(v2, len2 + 1) ~ /^[0-9]/; len2++) continue d1 = substr(v1, 1, len1); v1 = substr(v1, len1 + 1) d2 = substr(v2, 1, len2); v2 = substr(v2, len2 + 1) if (d1 ~ /^0/) { if (d2 ~ /^0/) { # Compare two fractions. while (d1 ~ /^0/ && d2 ~ /^0/) { d1 = substr(d1, 2); len1-- d2 = substr(d2, 2); len2-- } if (len1 != len2 && ! (len1 && len2 && substr(d1, 1, 1) == substr(d2, 1, 1))) { # The two components differ in length, and the common prefix # contains only leading zeros. Consider the longer to be less. d1 = -len1 d2 = -len2 } else { # Otherwise, compare as strings. d1 = "x" d1 d2 = "x" d2 } } else { # A fraction is less than an integer. exit 1 } } else { if (d2 ~ /^0/) { # An integer is greater than a fraction. exit 2 } else { # Compare two integers. d1 += 0 d2 += 0 } } } else { # The normal case, without worrying about digits. d1 = substr(v1, 1, 1); v1 = substr(v1, 2) d2 = substr(v2, 1, 1); v2 = substr(v2, 2) } if (d1 < d2) exit 1 if (d1 > d2) exit 2 } # Beware Solaris /usr/xgp4/bin/awk (at least through Solaris 10), # which mishandles some comparisons of empty strings to integers. if (length(v2)) exit 1 if (length(v1)) exit 2 } ' SHELL=${CONFIG_SHELL-/bin/sh} test -n "$DJDIR" || exec 7<&0 &1 # Name of the host. # hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` # # Initializations. # ac_default_prefix=/usr/local ac_clean_files= ac_config_libobj_dir=. LIBOBJS= cross_compiling=no subdirs= MFLAGS= MAKEFLAGS= # Identity of this package. PACKAGE_NAME='ibus' PACKAGE_TARNAME='ibus' PACKAGE_VERSION='1.5.32' PACKAGE_STRING='ibus 1.5.32' PACKAGE_BUGREPORT='https://github.com/ibus/ibus/issues' PACKAGE_URL='' # Factoring default headers for most tests. ac_includes_default="\ #include #ifdef HAVE_STDIO_H # include #endif #ifdef HAVE_STDLIB_H # include #endif #ifdef HAVE_STRING_H # include #endif #ifdef HAVE_INTTYPES_H # include #endif #ifdef HAVE_STDINT_H # include #endif #ifdef HAVE_STRINGS_H # include #endif #ifdef HAVE_SYS_TYPES_H # include #endif #ifdef HAVE_SYS_STAT_H # include #endif #ifdef HAVE_UNISTD_H # include #endif" ac_header_c_list= gt_needs= ac_subst_vars='am__EXEEXT_FALSE am__EXEEXT_TRUE LTLIBOBJS LIBOBJS GDBUS_CODEGEN XKBCONFIG_BASE XKBCONFIG_LIBS XKBCONFIG_CFLAGS ISOCODES_PREFIX ISOCODES_LIBS ISOCODES_CFLAGS UCD_DIR ENABLE_UNICODE_DICT_FALSE ENABLE_UNICODE_DICT_TRUE EMOJI_ANNOTATION_DIR UNICODE_EMOJI_DIR ENABLE_EMOJI_DICT_FALSE ENABLE_EMOJI_DICT_TRUE ENABLE_INSTALL_TESTS_FALSE ENABLE_INSTALL_TESTS_TRUE XFIXES_LIBS XFIXES_CFLAGS ENABLE_XTEST_FALSE ENABLE_XTEST_TRUE XTEST_LIBS XTEST_CFLAGS LIBNOTIFY_LIBS LIBNOTIFY_CFLAGS ENABLE_LIBNOTIFY_FALSE ENABLE_LIBNOTIFY_TRUE ENABLE_ENGINE_FALSE ENABLE_ENGINE_TRUE DBUSMENU_GTK3_LIBS DBUSMENU_GTK3_CFLAGS DBUSMENU_GLIB_LIBS DBUSMENU_GLIB_CFLAGS ENABLE_UI_FALSE ENABLE_UI_TRUE IBUS_ICON_KEYBOARD DBUS_PYTHON_LIBS DBUS_PYTHON_CFLAGS GTK4_IM_MODULEDIR GTK3_IM_MODULEDIR GTK2_IM_MODULEDIR pkgpython2dir PYTHON_INCLUDES PYTHON_CONFIG ENABLE_PYGOBJECT_FALSE ENABLE_PYGOBJECT_TRUE py2overridesdir pyoverridesdir PYTHON_LIBS PYTHON_CFLAGS ENABLE_DAEMON_FALSE ENABLE_DAEMON_TRUE ENABLE_SETUP_FALSE ENABLE_SETUP_TRUE ENABLE_PYTHON_LIBRARY_FALSE ENABLE_PYTHON_LIBRARY_TRUE ENABLE_PYTHON2_FALSE ENABLE_PYTHON2_TRUE PYTHON2 pkgpyexecdir pyexecdir pkgpythondir pythondir PYTHON_EXEC_PREFIX PYTHON_PREFIX PYTHON_PLATFORM PYTHON_VERSION PYTHON ENV_IBUS_TEST SYSTEMD_USER_UNIT_DIR SYSTEMD_LIBS SYSTEMD_CFLAGS ENABLE_SYSTEMD_FALSE ENABLE_SYSTEMD_TRUE GSETTINGS_RULES GLIB_COMPILE_SCHEMAS gsettingsschemadir GSETTINGS_DISABLE_SCHEMAS_COMPILE DCONF_LIBS DCONF_CFLAGS ENABLE_DCONF_FALSE ENABLE_DCONF_TRUE ENABLE_MEMCONF_FALSE ENABLE_MEMCONF_TRUE DBUS_LIBS DBUS_CFLAGS GTK_DOC_USE_REBASE_FALSE GTK_DOC_USE_REBASE_TRUE GTK_DOC_USE_LIBTOOL_FALSE GTK_DOC_USE_LIBTOOL_TRUE GTK_DOC_BUILD_PDF_FALSE GTK_DOC_BUILD_PDF_TRUE GTK_DOC_BUILD_HTML_FALSE GTK_DOC_BUILD_HTML_TRUE ENABLE_GTK_DOC_FALSE ENABLE_GTK_DOC_TRUE HAVE_GTK_DOC_FALSE HAVE_GTK_DOC_TRUE GTKDOC_DEPS_LIBS GTKDOC_DEPS_CFLAGS HTML_DIR GTKDOC_MKPDF GTKDOC_REBASE GTKDOC_CHECK_PATH GTKDOC_CHECK ENABLE_VAPIGEN_FALSE ENABLE_VAPIGEN_TRUE VAPIGEN_MAKEFILE VAPIGEN_VAPIDIR VAPIGEN IBUS_GIR_SCANNERFLAGS HAVE_INTROSPECTION_FALSE HAVE_INTROSPECTION_TRUE INTROSPECTION_MAKEFILE INTROSPECTION_LIBS INTROSPECTION_CFLAGS INTROSPECTION_TYPELIBDIR INTROSPECTION_GIRDIR INTROSPECTION_GENERATE INTROSPECTION_COMPILER INTROSPECTION_SCANNER _GI_EXP_LIBDIR _GI_EXP_DATADIR wayland_scanner_rules wayland_protocoldir wayland_scanner WAYLAND_SCANNER_LIBS WAYLAND_SCANNER_CFLAGS WAYLAND_TEXT_PRTCL_SUBDIR WAYLAND_IM_PRTCL_SUBDIR WAYLAND_PRTCLS_DIR WAYLAND_LIBS WAYLAND_CFLAGS X11_LOCALEDATADIR X11_PREFIX XIM_CLI_ARG X11_LIBS X11_CFLAGS GTK4_LIBS GTK4_CFLAGS IBUS_UI_WAYLAND_DESKTOP ENABLE_GDK3_WAYLAND_FALSE ENABLE_GDK3_WAYLAND_TRUE GTK3_LIBS GTK3_CFLAGS GTK2_LIBS GTK2_CFLAGS ENABLE_APPINDICATOR_FALSE ENABLE_APPINDICATOR_TRUE ENABLE_WAYLAND_FALSE ENABLE_WAYLAND_TRUE ENABLE_XIM_FALSE ENABLE_XIM_TRUE ENABLE_GTK3_OR_4_FALSE ENABLE_GTK3_OR_4_TRUE ENABLE_GTK4_FALSE ENABLE_GTK4_TRUE ENABLE_GTK3_FALSE ENABLE_GTK3_TRUE ENABLE_GTK2_FALSE ENABLE_GTK2_TRUE ENABLE_TESTS_FALSE ENABLE_TESTS_TRUE GLIB_LIBS_FOR_BUILD GLIB_CFLAGS_FOR_BUILD PKG_CONFIG_FOR_BUILD GTHREAD2_LIBS GTHREAD2_CFLAGS GIO2_LIBS GIO2_CFLAGS GOBJECT2_LIBS GOBJECT2_CFLAGS GLIB2_LIBS GLIB2_CFLAGS GLIB_COMPILE_RESOURCES GLIB_MKENUMS GOBJECT_QUERY GLIB_GENMARSHAL GLIB_LIBS GLIB_CFLAGS PKG_CONFIG_LIBDIR PKG_CONFIG_PATH PKG_CONFIG ENDIAN CROSS_COMPILING_FALSE CROSS_COMPILING_TRUE LIBDL LT_SYS_LIBRARY_PATH OTOOL64 OTOOL LIPO NMEDIT DSYMUTIL MANIFEST_TOOL RANLIB ac_ct_AR AR DLLTOOL OBJDUMP FILECMD LN_S NM ac_ct_DUMPBIN DUMPBIN LD FGREP EGREP GREP LIBTOOL POSUB LTLIBINTL LIBINTL INTLLIBS LTLIBICONV LIBICONV INTL_MACOSX_LIBS host_os host_vendor host_cpu host XGETTEXT_EXTRA_OPTIONS MSGMERGE XGETTEXT_015 XGETTEXT GMSGFMT_015 MSGFMT_015 GMSGFMT MSGFMT GETTEXT_MACRO_VERSION USE_NLS SED LDFLAGS_FOR_BUILD CPPFLAGS_FOR_BUILD CFLAGS_FOR_BUILD BUILD_OBJEXT BUILD_EXEEXT CPP_FOR_BUILD ac_ct_CC_FOR_BUILD CC_FOR_BUILD build_os build_vendor build_cpu build CPP VALAC DATE_DISPLAY GETTEXT_PACKAGE LT_CURRENT_MINUS_AGE LT_VERSION_INFO IBUS_BINARY_VERSION IBUS_VERSION IBUS_API_VERSION IBUS_ABI_AGE IBUS_ABI_REVISION IBUS_ABI_CURRENT IBUS_MICRO_VERSION IBUS_MINOR_VERSION IBUS_MAJOR_VERSION am__fastdepCC_FALSE am__fastdepCC_TRUE CCDEPMODE am__nodep AMDEPBACKSLASH AMDEP_FALSE AMDEP_TRUE am__include DEPDIR OBJEXT EXEEXT ac_ct_CC CPPFLAGS LDFLAGS CFLAGS CC MAINT MAINTAINER_MODE_FALSE MAINTAINER_MODE_TRUE am__xargs_n am__rm_f_notfound AM_BACKSLASH AM_DEFAULT_VERBOSITY AM_DEFAULT_V AM_V CSCOPE ETAGS CTAGS am__untar am__tar AMTAR am__leading_dot SET_MAKE AWK mkdir_p MKDIR_P INSTALL_STRIP_PROGRAM STRIP install_sh MAKEINFO AUTOHEADER AUTOMAKE AUTOCONF ACLOCAL VERSION PACKAGE CYGPATH_W am__isrc INSTALL_DATA INSTALL_SCRIPT INSTALL_PROGRAM VALA_TARGET_GLIB_VERSION target_alias host_alias build_alias LIBS ECHO_T ECHO_N ECHO_C DEFS mandir localedir libdir psdir pdfdir dvidir htmldir infodir docdir oldincludedir includedir runstatedir localstatedir sharedstatedir sysconfdir datadir datarootdir libexecdir sbindir bindir program_transform_name prefix exec_prefix PACKAGE_URL PACKAGE_BUGREPORT PACKAGE_STRING PACKAGE_VERSION PACKAGE_TARNAME PACKAGE_NAME PATH_SEPARATOR SHELL am__quote' ac_subst_files='wayland_scanner_rules' ac_user_opts=' enable_option_checking enable_silent_rules enable_maintainer_mode enable_dependency_tracking enable_nls with_gnu_ld enable_rpath with_libiconv_prefix with_libintl_prefix enable_static enable_shared enable_pic with_pic enable_fast_install enable_aix_soname with_aix_soname with_sysroot enable_libtool_lock enable_glibtest enable_tests enable_gtk2 enable_gtk3 enable_gtk4 enable_xim enable_wayland enable_appindicator enable_introspection enable_vala with_html_dir enable_gtk_doc enable_gtk_doc_html enable_gtk_doc_pdf enable_memconf enable_dconf enable_schemas_compile enable_systemd_services enable_python2 enable_python_library enable_setup with_python with_python_sys_prefix with_python_prefix with_python_exec_prefix with_python_overrides_dir with_gtk2_im_module_dir with_gtk3_im_module_dir with_gtk4_im_module_dir enable_dbus_python_check enable_key_snooper with_no_snooper_apps with_panel_icon_keyboard enable_surrounding_text enable_ui enable_engine enable_libnotify enable_install_tests enable_emoji_dict with_unicode_emoji_dir with_emoji_annotation_dir enable_unicode_dict with_ucd_dir with_socket_dir ' ac_precious_vars='build_alias host_alias target_alias CC CFLAGS LDFLAGS LIBS CPPFLAGS CPP LT_SYS_LIBRARY_PATH PKG_CONFIG PKG_CONFIG_PATH PKG_CONFIG_LIBDIR GLIB_CFLAGS GLIB_LIBS GLIB_GENMARSHAL GOBJECT_QUERY GLIB_MKENUMS GLIB_COMPILE_RESOURCES GLIB2_CFLAGS GLIB2_LIBS GOBJECT2_CFLAGS GOBJECT2_LIBS GIO2_CFLAGS GIO2_LIBS GTHREAD2_CFLAGS GTHREAD2_LIBS PKG_CONFIG_FOR_BUILD GTK2_CFLAGS GTK2_LIBS GTK3_CFLAGS GTK3_LIBS GTK4_CFLAGS GTK4_LIBS X11_CFLAGS X11_LIBS WAYLAND_CFLAGS WAYLAND_LIBS WAYLAND_SCANNER_CFLAGS WAYLAND_SCANNER_LIBS GTKDOC_DEPS_CFLAGS GTKDOC_DEPS_LIBS DBUS_CFLAGS DBUS_LIBS DCONF_CFLAGS DCONF_LIBS GLIB_COMPILE_SCHEMAS SYSTEMD_CFLAGS SYSTEMD_LIBS PYTHON PYTHON_CFLAGS PYTHON_LIBS DBUS_PYTHON_CFLAGS DBUS_PYTHON_LIBS DBUSMENU_GLIB_CFLAGS DBUSMENU_GLIB_LIBS DBUSMENU_GTK3_CFLAGS DBUSMENU_GTK3_LIBS LIBNOTIFY_CFLAGS LIBNOTIFY_LIBS XTEST_CFLAGS XTEST_LIBS XFIXES_CFLAGS XFIXES_LIBS ISOCODES_CFLAGS ISOCODES_LIBS XKBCONFIG_CFLAGS XKBCONFIG_LIBS' # Initialize some variables set by options. ac_init_help= ac_init_version=false ac_unrecognized_opts= ac_unrecognized_sep= # The variables have the same names as the options, with # dashes changed to underlines. cache_file=/dev/null exec_prefix=NONE no_create= no_recursion= prefix=NONE program_prefix=NONE program_suffix=NONE program_transform_name=s,x,x, silent= site= srcdir= verbose= x_includes=NONE x_libraries=NONE # Installation directory options. # These are left unexpanded so users can "make install exec_prefix=/foo" # and all the variables that are supposed to be based on exec_prefix # by default will actually change. # Use braces instead of parens because sh, perl, etc. also accept them. # (The list follows the same order as the GNU Coding Standards.) bindir='${exec_prefix}/bin' sbindir='${exec_prefix}/sbin' libexecdir='${exec_prefix}/libexec' datarootdir='${prefix}/share' datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' runstatedir='${localstatedir}/run' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' infodir='${datarootdir}/info' htmldir='${docdir}' dvidir='${docdir}' pdfdir='${docdir}' psdir='${docdir}' libdir='${exec_prefix}/lib' localedir='${datarootdir}/locale' mandir='${datarootdir}/man' ac_prev= ac_dashdash= for ac_option do # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then eval $ac_prev=\$ac_option ac_prev= continue fi case $ac_option in *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; *=) ac_optarg= ;; *) ac_optarg=yes ;; esac case $ac_dashdash$ac_option in --) ac_dashdash=yes ;; -bindir | --bindir | --bindi | --bind | --bin | --bi) ac_prev=bindir ;; -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) bindir=$ac_optarg ;; -build | --build | --buil | --bui | --bu) ac_prev=build_alias ;; -build=* | --build=* | --buil=* | --bui=* | --bu=*) build_alias=$ac_optarg ;; -cache-file | --cache-file | --cache-fil | --cache-fi \ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) ac_prev=cache_file ;; -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) cache_file=$ac_optarg ;; --config-cache | -C) cache_file=config.cache ;; -datadir | --datadir | --datadi | --datad) ac_prev=datadir ;; -datadir=* | --datadir=* | --datadi=* | --datad=*) datadir=$ac_optarg ;; -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ | --dataroo | --dataro | --datar) ac_prev=datarootdir ;; -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) datarootdir=$ac_optarg ;; -disable-* | --disable-*) ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid feature name: '$ac_useropt'" ac_useropt_orig=$ac_useropt ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval enable_$ac_useropt=no ;; -docdir | --docdir | --docdi | --doc | --do) ac_prev=docdir ;; -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) docdir=$ac_optarg ;; -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) ac_prev=dvidir ;; -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) dvidir=$ac_optarg ;; -enable-* | --enable-*) ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid feature name: '$ac_useropt'" ac_useropt_orig=$ac_useropt ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval enable_$ac_useropt=\$ac_optarg ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ | --exec | --exe | --ex) ac_prev=exec_prefix ;; -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ | --exec=* | --exe=* | --ex=*) exec_prefix=$ac_optarg ;; -gas | --gas | --ga | --g) # Obsolete; use --with-gas. with_gas=yes ;; -help | --help | --hel | --he | -h) ac_init_help=long ;; -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) ac_init_help=recursive ;; -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) ac_init_help=short ;; -host | --host | --hos | --ho) ac_prev=host_alias ;; -host=* | --host=* | --hos=* | --ho=*) host_alias=$ac_optarg ;; -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) ac_prev=htmldir ;; -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ | --ht=*) htmldir=$ac_optarg ;; -includedir | --includedir | --includedi | --included | --include \ | --includ | --inclu | --incl | --inc) ac_prev=includedir ;; -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ | --includ=* | --inclu=* | --incl=* | --inc=*) includedir=$ac_optarg ;; -infodir | --infodir | --infodi | --infod | --info | --inf) ac_prev=infodir ;; -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) infodir=$ac_optarg ;; -libdir | --libdir | --libdi | --libd) ac_prev=libdir ;; -libdir=* | --libdir=* | --libdi=* | --libd=*) libdir=$ac_optarg ;; -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ | --libexe | --libex | --libe) ac_prev=libexecdir ;; -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ | --libexe=* | --libex=* | --libe=*) libexecdir=$ac_optarg ;; -localedir | --localedir | --localedi | --localed | --locale) ac_prev=localedir ;; -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) localedir=$ac_optarg ;; -localstatedir | --localstatedir | --localstatedi | --localstated \ | --localstate | --localstat | --localsta | --localst | --locals) ac_prev=localstatedir ;; -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) localstatedir=$ac_optarg ;; -mandir | --mandir | --mandi | --mand | --man | --ma | --m) ac_prev=mandir ;; -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) mandir=$ac_optarg ;; -nfp | --nfp | --nf) # Obsolete; use --without-fp. with_fp=no ;; -no-create | --no-create | --no-creat | --no-crea | --no-cre \ | --no-cr | --no-c | -n) no_create=yes ;; -no-recursion | --no-recursion | --no-recursio | --no-recursi \ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) no_recursion=yes ;; -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ | --oldin | --oldi | --old | --ol | --o) ac_prev=oldincludedir ;; -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) oldincludedir=$ac_optarg ;; -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) ac_prev=prefix ;; -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) prefix=$ac_optarg ;; -program-prefix | --program-prefix | --program-prefi | --program-pref \ | --program-pre | --program-pr | --program-p) ac_prev=program_prefix ;; -program-prefix=* | --program-prefix=* | --program-prefi=* \ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) program_prefix=$ac_optarg ;; -program-suffix | --program-suffix | --program-suffi | --program-suff \ | --program-suf | --program-su | --program-s) ac_prev=program_suffix ;; -program-suffix=* | --program-suffix=* | --program-suffi=* \ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) program_suffix=$ac_optarg ;; -program-transform-name | --program-transform-name \ | --program-transform-nam | --program-transform-na \ | --program-transform-n | --program-transform- \ | --program-transform | --program-transfor \ | --program-transfo | --program-transf \ | --program-trans | --program-tran \ | --progr-tra | --program-tr | --program-t) ac_prev=program_transform_name ;; -program-transform-name=* | --program-transform-name=* \ | --program-transform-nam=* | --program-transform-na=* \ | --program-transform-n=* | --program-transform-=* \ | --program-transform=* | --program-transfor=* \ | --program-transfo=* | --program-transf=* \ | --program-trans=* | --program-tran=* \ | --progr-tra=* | --program-tr=* | --program-t=*) program_transform_name=$ac_optarg ;; -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) ac_prev=pdfdir ;; -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) pdfdir=$ac_optarg ;; -psdir | --psdir | --psdi | --psd | --ps) ac_prev=psdir ;; -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) psdir=$ac_optarg ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; -runstatedir | --runstatedir | --runstatedi | --runstated \ | --runstate | --runstat | --runsta | --runst | --runs \ | --run | --ru | --r) ac_prev=runstatedir ;; -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ | --run=* | --ru=* | --r=*) runstatedir=$ac_optarg ;; -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ | --sbi=* | --sb=*) sbindir=$ac_optarg ;; -sharedstatedir | --sharedstatedir | --sharedstatedi \ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ | --sharedst | --shareds | --shared | --share | --shar \ | --sha | --sh) ac_prev=sharedstatedir ;; -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ | --sha=* | --sh=*) sharedstatedir=$ac_optarg ;; -site | --site | --sit) ac_prev=site ;; -site=* | --site=* | --sit=*) site=$ac_optarg ;; -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) ac_prev=srcdir ;; -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) srcdir=$ac_optarg ;; -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ | --syscon | --sysco | --sysc | --sys | --sy) ac_prev=sysconfdir ;; -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) sysconfdir=$ac_optarg ;; -target | --target | --targe | --targ | --tar | --ta | --t) ac_prev=target_alias ;; -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) target_alias=$ac_optarg ;; -v | -verbose | --verbose | --verbos | --verbo | --verb) verbose=yes ;; -version | --version | --versio | --versi | --vers | -V) ac_init_version=: ;; -with-* | --with-*) ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid package name: '$ac_useropt'" ac_useropt_orig=$ac_useropt ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval with_$ac_useropt=\$ac_optarg ;; -without-* | --without-*) ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid package name: '$ac_useropt'" ac_useropt_orig=$ac_useropt ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval with_$ac_useropt=no ;; --x) # Obsolete; use --with-x. with_x=yes ;; -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ | --x-incl | --x-inc | --x-in | --x-i) ac_prev=x_includes ;; -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) x_includes=$ac_optarg ;; -x-libraries | --x-libraries | --x-librarie | --x-librari \ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) ac_prev=x_libraries ;; -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; -*) as_fn_error $? "unrecognized option: '$ac_option' Try '$0 --help' for more information" ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. case $ac_envvar in #( '' | [0-9]* | *[!_$as_cr_alnum]* ) as_fn_error $? "invalid variable name: '$ac_envvar'" ;; esac eval $ac_envvar=\$ac_optarg export $ac_envvar ;; *) # FIXME: should be removed in autoconf 3.0. printf "%s\n" "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && printf "%s\n" "$as_me: WARNING: invalid host type: $ac_option" >&2 : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" ;; esac done if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` as_fn_error $? "missing argument to $ac_option" fi if test -n "$ac_unrecognized_opts"; then case $enable_option_checking in no) ;; fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; *) printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; esac fi # Check all directory arguments for consistency. for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ libdir localedir mandir runstatedir do eval ac_val=\$$ac_var # Remove trailing slashes. case $ac_val in */ ) ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` eval $ac_var=\$ac_val;; esac # Be sure to have absolute directory names. case $ac_val in [\\/$]* | ?:[\\/]* ) continue;; NONE | '' ) case $ac_var in *prefix ) continue;; esac;; esac as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" done # There might be people who depend on the old broken behavior: '$host' # used to hold the argument of --host etc. # FIXME: To remove some day. build=$build_alias host=$host_alias target=$target_alias # FIXME: To remove some day. if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes fi fi ac_tool_prefix= test -n "$host_alias" && ac_tool_prefix=$host_alias- test "$silent" = yes && exec 6>/dev/null ac_pwd=`pwd` && test -n "$ac_pwd" && ac_ls_di=`ls -di .` && ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || as_fn_error $? "working directory cannot be determined" test "X$ac_ls_di" = "X$ac_pwd_ls_di" || as_fn_error $? "pwd does not report name of working directory" # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes # Try the directory containing this script, then the parent directory. ac_confdir=`$as_dirname -- "$as_myself" || $as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_myself" : 'X\(//\)[^/]' \| \ X"$as_myself" : 'X\(//\)$' \| \ X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || printf "%s\n" X"$as_myself" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` srcdir=$ac_confdir if test ! -r "$srcdir/$ac_unique_file"; then srcdir=.. fi else ac_srcdir_defaulted=no fi if test ! -r "$srcdir/$ac_unique_file"; then test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" fi ac_msg="sources are in $srcdir, but 'cd $srcdir' does not work" ac_abs_confdir=`( cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" pwd)` # When building in place, set srcdir=. if test "$ac_abs_confdir" = "$ac_pwd"; then srcdir=. fi # Remove unnecessary trailing slashes from srcdir. # Double slashes in file names in object file debugging info # mess up M-x gdb in Emacs. case $srcdir in */) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; esac for ac_var in $ac_precious_vars; do eval ac_env_${ac_var}_set=\${${ac_var}+set} eval ac_env_${ac_var}_value=\$${ac_var} eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} eval ac_cv_env_${ac_var}_value=\$${ac_var} done # # Report the --help message. # 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 ibus 1.5.32 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables. Defaults for the options are specified in brackets. Configuration: -h, --help display this help and exit --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit -q, --quiet, --silent do not print 'checking ...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for '--cache-file=config.cache' -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or '..'] Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX] By default, 'make install' will install all the files in '$ac_default_prefix/bin', '$ac_default_prefix/lib' etc. You can specify an installation prefix other than '$ac_default_prefix' using '--prefix', for instance '--prefix=\$HOME'. For better control, use the options below. Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] --datadir=DIR read-only architecture-independent data [DATAROOTDIR] --infodir=DIR info documentation [DATAROOTDIR/info] --localedir=DIR locale-dependent data [DATAROOTDIR/locale] --mandir=DIR man documentation [DATAROOTDIR/man] --docdir=DIR documentation root [DATAROOTDIR/doc/ibus] --htmldir=DIR html documentation [DOCDIR] --dvidir=DIR dvi documentation [DOCDIR] --pdfdir=DIR pdf documentation [DOCDIR] --psdir=DIR ps documentation [DOCDIR] _ACEOF cat <<\_ACEOF Program names: --program-prefix=PREFIX prepend PREFIX to installed program names --program-suffix=SUFFIX append SUFFIX to installed program names --program-transform-name=PROGRAM run sed PROGRAM on installed program names System types: --build=BUILD configure for building on BUILD [guessed] --host=HOST cross-compile to build programs to run on HOST [BUILD] _ACEOF fi if test -n "$ac_init_help"; then case $ac_init_help in short | recursive ) echo "Configuration of ibus 1.5.32:";; esac cat <<\_ACEOF Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --enable-silent-rules less verbose build output (undo: "make V=1") --disable-silent-rules verbose build output (undo: "make V=0") --disable-maintainer-mode disable make rules and dependencies not useful (and sometimes confusing) to the casual installer --enable-dependency-tracking do not reject slow dependency extractors --disable-dependency-tracking speeds up one-time build --disable-nls do not use Native Language Support --disable-rpath do not hardcode runtime library paths --enable-static[=PKGS] build static libraries [default=no] --enable-shared[=PKGS] build shared libraries [default=yes] --enable-pic[=PKGS] try to use only PIC/non-PIC objects [default=use both] --enable-fast-install[=PKGS] optimize for fast installation [default=yes] --enable-aix-soname=aix|svr4|both shared library versioning (aka "SONAME") variant to provide on AIX, [default=aix]. --disable-libtool-lock avoid locking (might break parallel builds) --disable-glibtest do not try to compile and run a test GLIB program --disable-tests Do not run tests --disable-gtk2 Do not build gtk2 im module --disable-gtk3 Do not build gtk3 im module --enable-gtk4 Build gtk4 im module --disable-xim Do not build xim server --enable-wayland Build wayland support --enable-appindicator Build appindicator support --enable-introspection=[no/auto/yes] Enable introspection for this build --enable-vala=[no/auto/yes] build Vala bindings [default=auto] --enable-gtk-doc use gtk-doc to build documentation [[default=no]] --enable-gtk-doc-html build documentation in html format [[default=yes]] --enable-gtk-doc-pdf build documentation in pdf format [[default=no]] --enable-memconf Enable configure base on memory --disable-dconf Disable configure base on dconf --disable-schemas-compile Disable regeneration of gschemas.compiled on install --disable-systemd-services Disable systemd services installation --disable-python2 Do not install bindings/pygobject/gi and ibus for python2. '--disable-python2' bring '--disable-python-library'. --enable-python-library Use ibus python library --disable-setup Do not use setup ui. --disable-dbus-python-check Do not check dbus-python --disable-key-snooper Always disable key snooper in gtk im module --disable-surrounding-text Disable surrounding-text support --disable-ui Disable ibus default user interface --disable-engine Disable ibus simple engine --disable-libnotify Disable to link libnotify --enable-install-tests Enable to install tests --disable-emoji-dict Do not build Emoji dict files --disable-unicode-dict Do not build Unicode dict files Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-gnu-ld assume the C compiler uses GNU ld [default=no] --with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib --without-libiconv-prefix don't search for libiconv in includedir and libdir --with-libintl-prefix[=DIR] search for libintl in DIR/include and DIR/lib --without-libintl-prefix don't search for libintl in includedir and libdir --with-gnu-ld assume the C compiler uses GNU ld [default=no] --with-sysroot[=DIR] Search for dependent libraries within DIR (or the compiler's sysroot if not specified). --with-html-dir=PATH path to installed docs --with-python=PATH Select python2 or python3 --with-python-sys-prefix use Python's sys.prefix and sys.exec_prefix values --with-python_prefix override the default PYTHON_PREFIX --with-python_exec_prefix override the default PYTHON_EXEC_PREFIX --with-python-overrides-dir=DIR Select Python overrides dir --with-gtk2-im-module-dir=DIR Select gtk2 immodule dir --with-gtk3-im-module-dir=DIR Select gtk3 immodule dir --with-gtk4-im-module-dir=DIR Select gtk4 immodule dir --with-no-snooper-apps=regex1,regex2 Does not enable keyboard snooper in those applications (like: .*chrome.*,firefox.*) --with-panel-icon-keyboard=icon_name Set the default panel icon (default: "ibus-keyboard") --with-unicode-emoji-dir=DIR Set the directory of Unicode Emoji. (default: "/usr/share/unicode/emoji") --with-emoji-annotation-dir=DIR Set the directory of CLDR annotation files. (default: "/usr/share/unicode/cldr/common/annotations") --with-ucd-dir=DIR Set the directory of UCD (Unicode Character Database) files. (default: "/usr/share/unicode/ucd") --with-socket-dir=DIR Set the default socket directory to connect ibus-daemon with D-Bus connections (default: "$XDG_CACHE_HOME/ibus"). The best practice of the socket directory would be unique per user not to modify by malicious users but XDG_RUNTIME_DIR is not integrated in BSD systems and the BSD's default is "/tmp". XDG_RUMTIME_DIR is not useful now because XDG_RUMTIME_DIR is available by login but not `su` command but ibus-daemon can be run with su. "$XDG_RUMTIME_DIR", "$XDG_CACHE_HOME", "$UID" are extracted by ibus-daemon. ibus-daemon also runs mkdir for the socket directory since BSD systems do not support abstract socket paths. The socket path on a NFS mount would not be a good idea likes "/home/$USER" because the directory is not sometimes accessible with the network condition. Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory LIBS libraries to pass to the linker, e.g. -l CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if you have headers in a nonstandard directory CPP C preprocessor LT_SYS_LIBRARY_PATH User-defined run-time library search path. PKG_CONFIG path to pkg-config utility PKG_CONFIG_PATH directories to add to pkg-config's search path PKG_CONFIG_LIBDIR path overriding pkg-config's built-in search path GLIB_CFLAGS C compiler flags for GLIB, overriding pkg-config GLIB_LIBS linker flags for GLIB, overriding pkg-config GLIB_GENMARSHAL value of glib_genmarshal for glib-2.0, overriding pkg-config GOBJECT_QUERY value of gobject_query for glib-2.0, overriding pkg-config GLIB_MKENUMS value of glib_mkenums for glib-2.0, overriding pkg-config GLIB_COMPILE_RESOURCES value of glib_compile_resources for gio-2.0, overriding pkg-config GLIB2_CFLAGS C compiler flags for GLIB2, overriding pkg-config GLIB2_LIBS linker flags for GLIB2, overriding pkg-config GOBJECT2_CFLAGS C compiler flags for GOBJECT2, overriding pkg-config GOBJECT2_LIBS linker flags for GOBJECT2, overriding pkg-config GIO2_CFLAGS C compiler flags for GIO2, overriding pkg-config GIO2_LIBS linker flags for GIO2, overriding pkg-config GTHREAD2_CFLAGS C compiler flags for GTHREAD2, overriding pkg-config GTHREAD2_LIBS linker flags for GTHREAD2, overriding pkg-config PKG_CONFIG_FOR_BUILD path to build system's pkg-config utility GTK2_CFLAGS C compiler flags for GTK2, overriding pkg-config GTK2_LIBS linker flags for GTK2, overriding pkg-config GTK3_CFLAGS C compiler flags for GTK3, overriding pkg-config GTK3_LIBS linker flags for GTK3, overriding pkg-config GTK4_CFLAGS C compiler flags for GTK4, overriding pkg-config GTK4_LIBS linker flags for GTK4, overriding pkg-config X11_CFLAGS C compiler flags for X11, overriding pkg-config X11_LIBS linker flags for X11, overriding pkg-config WAYLAND_CFLAGS C compiler flags for WAYLAND, overriding pkg-config WAYLAND_LIBS linker flags for WAYLAND, overriding pkg-config WAYLAND_SCANNER_CFLAGS C compiler flags for WAYLAND_SCANNER, overriding pkg-config WAYLAND_SCANNER_LIBS linker flags for WAYLAND_SCANNER, overriding pkg-config GTKDOC_DEPS_CFLAGS C compiler flags for GTKDOC_DEPS, overriding pkg-config GTKDOC_DEPS_LIBS linker flags for GTKDOC_DEPS, overriding pkg-config DBUS_CFLAGS C compiler flags for DBUS, overriding pkg-config DBUS_LIBS linker flags for DBUS, overriding pkg-config DCONF_CFLAGS C compiler flags for DCONF, overriding pkg-config DCONF_LIBS linker flags for DCONF, overriding pkg-config GLIB_COMPILE_SCHEMAS value of glib_compile_schemas for gio-2.0, overriding pkg-config SYSTEMD_CFLAGS C compiler flags for SYSTEMD, overriding pkg-config SYSTEMD_LIBS linker flags for SYSTEMD, overriding pkg-config PYTHON the Python interpreter PYTHON_CFLAGS C compiler flags for PYTHON, overriding pkg-config PYTHON_LIBS linker flags for PYTHON, overriding pkg-config DBUS_PYTHON_CFLAGS C compiler flags for DBUS_PYTHON, overriding pkg-config DBUS_PYTHON_LIBS linker flags for DBUS_PYTHON, overriding pkg-config DBUSMENU_GLIB_CFLAGS C compiler flags for DBUSMENU_GLIB, overriding pkg-config DBUSMENU_GLIB_LIBS linker flags for DBUSMENU_GLIB, overriding pkg-config DBUSMENU_GTK3_CFLAGS C compiler flags for DBUSMENU_GTK3, overriding pkg-config DBUSMENU_GTK3_LIBS linker flags for DBUSMENU_GTK3, overriding pkg-config LIBNOTIFY_CFLAGS C compiler flags for LIBNOTIFY, overriding pkg-config LIBNOTIFY_LIBS linker flags for LIBNOTIFY, overriding pkg-config XTEST_CFLAGS C compiler flags for XTEST, overriding pkg-config XTEST_LIBS linker flags for XTEST, overriding pkg-config XFIXES_CFLAGS C compiler flags for XFIXES, overriding pkg-config XFIXES_LIBS linker flags for XFIXES, overriding pkg-config ISOCODES_CFLAGS C compiler flags for ISOCODES, overriding pkg-config ISOCODES_LIBS linker flags for ISOCODES, overriding pkg-config XKBCONFIG_CFLAGS C compiler flags for XKBCONFIG, overriding pkg-config XKBCONFIG_LIBS linker flags for XKBCONFIG, overriding pkg-config Use these variables to override the choices made by 'configure' or to help it to find libraries and programs with nonstandard names/locations. Report bugs to . _ACEOF ac_status=$? fi if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue test -d "$ac_dir" || { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || continue ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; esac ;; esac ac_abs_top_builddir=$ac_pwd ac_abs_builddir=$ac_pwd$ac_dir_suffix # for backward compatibility: ac_top_builddir=$ac_top_build_prefix case $srcdir in .) # We are building in place. ac_srcdir=. ac_top_srcdir=$ac_top_builddir_sub ac_abs_top_srcdir=$ac_pwd ;; [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ac_abs_top_srcdir=$srcdir ;; *) # Relative name. ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_build_prefix$srcdir ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix cd "$ac_dir" || { ac_status=$?; continue; } # Check for configure.gnu first; this name is used for a wrapper for # Metaconfig's "Configure" on case-insensitive file systems. if test -f "$ac_srcdir/configure.gnu"; then echo && $SHELL "$ac_srcdir/configure.gnu" --help=recursive elif test -f "$ac_srcdir/configure"; then echo && $SHELL "$ac_srcdir/configure" --help=recursive else printf "%s\n" "$as_me: WARNING: no configuration information is in $ac_dir" >&2 fi || ac_status=$? cd "$ac_pwd" || { ac_status=$?; break; } done fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF ibus configure 1.5.32 generated by GNU Autoconf 2.72 Copyright (C) 2023 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF exit fi ## ------------------------ ## ## Autoconf initialization. ## ## ------------------------ ## # ac_fn_c_try_compile LINENO # -------------------------- # Try to compile conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext conftest.beam if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext then : ac_retval=0 else case e in #( e) printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 ;; esac fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_compile # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES # ------------------------------------------------------- # Tests whether HEADER exists and can be compiled using the include files in # INCLUDES, setting the cache variable VAR accordingly. ac_fn_c_check_header_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 printf %s "checking for $2... " >&6; } if eval test \${$3+y} then : printf %s "(cached) " >&6 else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> _ACEOF if ac_fn_c_try_compile "$LINENO" then : eval "$3=yes" else case e in #( e) eval "$3=no" ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; esac fi eval ac_res=\$$3 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 printf "%s\n" "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_header_compile # ac_fn_c_try_cpp LINENO # ---------------------- # Try to preprocess conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_cpp () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_cpp conftest.$ac_ext" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } > conftest.i && { test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || test ! -s conftest.err } then : ac_retval=0 else case e in #( e) printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 ;; esac fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_cpp # ac_fn_c_try_link LINENO # ----------------------- # Try to link conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_link () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext conftest.beam conftest$ac_exeext if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_link") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || test -x conftest$ac_exeext } then : ac_retval=0 else case e in #( e) printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 ;; esac fi # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would # interfere with the next link command; also delete a directory that is # left behind by Apple's compiler. We do this before executing the actions. rm -rf conftest.dSYM conftest_ipa8_conftest.oo eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_link # ac_fn_c_try_run LINENO # ---------------------- # Try to run conftest.$ac_ext, and return whether this succeeded. Assumes that # executables *can* be run. ac_fn_c_try_run () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; } then : ac_retval=0 else case e in #( e) printf "%s\n" "$as_me: program exited with status $ac_status" >&5 printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=$ac_status ;; esac fi rm -rf conftest.dSYM conftest_ipa8_conftest.oo eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_run # ac_fn_c_check_func LINENO FUNC VAR # ---------------------------------- # Tests whether FUNC exists, setting the cache variable VAR accordingly ac_fn_c_check_func () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 printf %s "checking for $2... " >&6; } if eval test \${$3+y} then : printf %s "(cached) " >&6 else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Define $2 to an innocuous variant, in case declares $2. For example, HP-UX 11i declares gettimeofday. */ #define $2 innocuous_$2 /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $2 (void); below. */ #include #undef $2 /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char $2 (void); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined __stub_$2 || defined __stub___$2 choke me #endif int main (void) { return $2 (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : eval "$3=yes" else case e in #( e) eval "$3=no" ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext ;; esac fi eval ac_res=\$$3 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 printf "%s\n" "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_func ac_configure_args_raw= for ac_arg do case $ac_arg in *\'*) ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac as_fn_append ac_configure_args_raw " '$ac_arg'" done case $ac_configure_args_raw in *$as_nl*) ac_safe_unquote= ;; *) ac_unsafe_z='|&;<>()$`\\"*?[ '' ' # This string ends in space, tab. ac_unsafe_a="$ac_unsafe_z#~" ac_safe_unquote="s/ '\\([^$ac_unsafe_a][^$ac_unsafe_z]*\\)'/ \\1/g" ac_configure_args_raw=` printf "%s\n" "$ac_configure_args_raw" | sed "$ac_safe_unquote"`;; esac 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 ibus $as_me 1.5.32, which was generated by GNU Autoconf 2.72. Invocation command line was $ $0$ac_configure_args_raw _ACEOF exec 5>>config.log { cat <<_ASUNAME ## --------- ## ## Platform. ## ## --------- ## hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` /usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` _ASUNAME as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac printf "%s\n" "PATH: $as_dir" done IFS=$as_save_IFS } >&5 cat >&5 <<_ACEOF ## ----------- ## ## Core tests. ## ## ----------- ## _ACEOF # Keep a trace of the command line. # Strip out --no-create and --no-recursion so they do not pile up. # Strip out --silent because we don't want to record it for future runs. # Also quote any args containing shell meta-characters. # Make two passes to allow for proper duplicate-argument suppression. ac_configure_args= ac_configure_args0= ac_configure_args1= ac_must_keep_next=false for ac_pass in 1 2 do for ac_arg do case $ac_arg in -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) continue ;; *\'*) ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; 2) as_fn_append ac_configure_args1 " '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else case $ac_arg in *=* | --config-cache | -C | -disable-* | --disable-* \ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ | -with-* | --with-* | -without-* | --without-* | --x) case "$ac_configure_args0 " in "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; esac ;; -* ) ac_must_keep_next=true ;; esac fi as_fn_append ac_configure_args " '$ac_arg'" ;; esac done done { ac_configure_args0=; unset ac_configure_args0;} { ac_configure_args1=; unset ac_configure_args1;} # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there # would cause problems or look ugly. # WARNING: Use '\'' to represent an apostrophe within the trap. # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. trap 'exit_status=$? # Sanitize IFS. IFS=" "" $as_nl" # Save into config.log some information that might help in debugging. { echo printf "%s\n" "## ---------------- ## ## Cache variables. ## ## ---------------- ##" echo # The following way of writing the cache mishandles newlines in values, ( for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do eval ac_val=\$$ac_var case $ac_val in #( *${as_nl}*) case $ac_var in #( *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done (set) 2>&1 | case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( *${as_nl}ac_space=\ *) sed -n \ "s/'\''/'\''\\\\'\'''\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" ;; #( *) sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; esac | sort ) echo printf "%s\n" "## ----------------- ## ## Output variables. ## ## ----------------- ##" echo for ac_var in $ac_subst_vars do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac printf "%s\n" "$ac_var='\''$ac_val'\''" done | sort echo if test -n "$ac_subst_files"; then printf "%s\n" "## ------------------- ## ## File substitutions. ## ## ------------------- ##" echo for ac_var in $ac_subst_files do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac printf "%s\n" "$ac_var='\''$ac_val'\''" done | sort echo fi if test -s confdefs.h; then printf "%s\n" "## ----------- ## ## confdefs.h. ## ## ----------- ##" echo cat confdefs.h echo fi test "$ac_signal" != 0 && printf "%s\n" "$as_me: caught signal $ac_signal" printf "%s\n" "$as_me: exit $exit_status" } >&5 rm -f core *.core core.conftest.* && rm -f -r conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status ' 0 for ac_signal in 1 2 13 15; do trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -f -r conftest* confdefs.h printf "%s\n" "/* confdefs.h */" > confdefs.h # Predefined preprocessor variables. printf "%s\n" "#define PACKAGE_NAME \"$PACKAGE_NAME\"" >>confdefs.h printf "%s\n" "#define PACKAGE_TARNAME \"$PACKAGE_TARNAME\"" >>confdefs.h printf "%s\n" "#define PACKAGE_VERSION \"$PACKAGE_VERSION\"" >>confdefs.h printf "%s\n" "#define PACKAGE_STRING \"$PACKAGE_STRING\"" >>confdefs.h printf "%s\n" "#define PACKAGE_BUGREPORT \"$PACKAGE_BUGREPORT\"" >>confdefs.h printf "%s\n" "#define PACKAGE_URL \"$PACKAGE_URL\"" >>confdefs.h # Let the site file select an alternate cache file if it wants to. # Prefer an explicitly selected file to automatically selected ones. if test -n "$CONFIG_SITE"; then ac_site_files="$CONFIG_SITE" elif test "x$prefix" != xNONE; then ac_site_files="$prefix/share/config.site $prefix/etc/config.site" else ac_site_files="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" fi for ac_site_file in $ac_site_files do case $ac_site_file in #( */*) : ;; #( *) : ac_site_file=./$ac_site_file ;; esac if test -f "$ac_site_file" && test -r "$ac_site_file"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 printf "%s\n" "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" \ || { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "failed to load site script $ac_site_file See 'config.log' for more details" "$LINENO" 5; } fi done if test -r "$cache_file"; then # Some versions of bash will fail to source /dev/null (special files # actually), so we avoid doing that. DJGPP emulates it as a regular file. if test /dev/null != "$cache_file" && test -f "$cache_file"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 printf "%s\n" "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . "$cache_file";; *) . "./$cache_file";; esac fi else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 printf "%s\n" "$as_me: creating cache $cache_file" >&6;} >$cache_file fi as_fn_append ac_header_c_list " stdio.h stdio_h HAVE_STDIO_H" # Test code for whether the C compiler supports C89 (global declarations) ac_c_conftest_c89_globals=' /* Does the compiler advertise C89 conformance? Do not test the value of __STDC__, because some compilers set it to 0 while being otherwise adequately conformant. */ #if !defined __STDC__ # error "Compiler does not advertise C89 conformance" #endif #include #include struct stat; /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */ struct buf { int x; }; struct buf * (*rcsopen) (struct buf *, struct stat *, int); static char *e (char **p, int i) { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* C89 style stringification. */ #define noexpand_stringify(a) #a const char *stringified = noexpand_stringify(arbitrary+token=sequence); /* C89 style token pasting. Exercises some of the corner cases that e.g. old MSVC gets wrong, but not very hard. */ #define noexpand_concat(a,b) a##b #define expand_concat(a,b) noexpand_concat(a,b) extern int vA; extern int vbee; #define aye A #define bee B int *pvA = &expand_concat(v,aye); int *pvbee = &noexpand_concat(v,bee); /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not \xHH hex character constants. These do not provoke an error unfortunately, instead are silently treated as an "x". The following induces an error, until -std is added to get proper ANSI mode. Curiously \x00 != x always comes out true, for an array size at least. It is necessary to write \x00 == 0 to get something that is true only with -std. */ int osf4_cc_array ['\''\x00'\'' == 0 ? 1 : -1]; /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters inside strings and character constants. */ #define FOO(x) '\''x'\'' int xlc6_cc_array[FOO(a) == '\''x'\'' ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int), int, int);' # Test code for whether the C compiler supports C89 (body of main). ac_c_conftest_c89_main=' ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]); ' # Test code for whether the C compiler supports C99 (global declarations) ac_c_conftest_c99_globals=' /* Does the compiler advertise C99 conformance? */ #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L # error "Compiler does not advertise C99 conformance" #endif // See if C++-style comments work. #include extern int puts (const char *); extern int printf (const char *, ...); extern int dprintf (int, const char *, ...); extern void *malloc (size_t); extern void free (void *); // Check varargs macros. These examples are taken from C99 6.10.3.5. // dprintf is used instead of fprintf to avoid needing to declare // FILE and stderr. #define debug(...) dprintf (2, __VA_ARGS__) #define showlist(...) puts (#__VA_ARGS__) #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__)) static void test_varargs_macros (void) { int x = 1234; int y = 5678; debug ("Flag"); debug ("X = %d\n", x); showlist (The first, second, and third items.); report (x>y, "x is %d but y is %d", x, y); } // Check long long types. #define BIG64 18446744073709551615ull #define BIG32 4294967295ul #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0) #if !BIG_OK #error "your preprocessor is broken" #endif #if BIG_OK #else #error "your preprocessor is broken" #endif static long long int bignum = -9223372036854775807LL; static unsigned long long int ubignum = BIG64; struct incomplete_array { int datasize; double data[]; }; struct named_init { int number; const wchar_t *name; double average; }; typedef const char *ccp; static inline int test_restrict (ccp restrict text) { // Iterate through items via the restricted pointer. // Also check for declarations in for loops. for (unsigned int i = 0; *(text+i) != '\''\0'\''; ++i) continue; return 0; } // Check varargs and va_copy. static bool test_varargs (const char *format, ...) { va_list args; va_start (args, format); va_list args_copy; va_copy (args_copy, args); const char *str = ""; int number = 0; float fnumber = 0; while (*format) { switch (*format++) { case '\''s'\'': // string str = va_arg (args_copy, const char *); break; case '\''d'\'': // int number = va_arg (args_copy, int); break; case '\''f'\'': // float fnumber = va_arg (args_copy, double); break; default: break; } } va_end (args_copy); va_end (args); return *str && number && fnumber; } ' # Test code for whether the C compiler supports C99 (body of main). ac_c_conftest_c99_main=' // Check bool. _Bool success = false; success |= (argc != 0); // Check restrict. if (test_restrict ("String literal") == 0) success = true; char *restrict newvar = "Another string"; // Check varargs. success &= test_varargs ("s, d'\'' f .", "string", 65, 34.234); test_varargs_macros (); // Check flexible array members. struct incomplete_array *ia = malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); ia->datasize = 10; for (int i = 0; i < ia->datasize; ++i) ia->data[i] = i * 1.234; // Work around memory leak warnings. free (ia); // Check named initializers. struct named_init ni = { .number = 34, .name = L"Test wide string", .average = 543.34343, }; ni.number = 58; int dynamic_array[ni.number]; dynamic_array[0] = argv[0][0]; dynamic_array[ni.number - 1] = 543; // work around unused variable warnings ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == '\''x'\'' || dynamic_array[ni.number - 1] != 543); ' # Test code for whether the C compiler supports C11 (global declarations) ac_c_conftest_c11_globals=' /* Does the compiler advertise C11 conformance? */ #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L # error "Compiler does not advertise C11 conformance" #endif // Check _Alignas. char _Alignas (double) aligned_as_double; char _Alignas (0) no_special_alignment; extern char aligned_as_int; char _Alignas (0) _Alignas (int) aligned_as_int; // Check _Alignof. enum { int_alignment = _Alignof (int), int_array_alignment = _Alignof (int[100]), char_alignment = _Alignof (char) }; _Static_assert (0 < -_Alignof (int), "_Alignof is signed"); // Check _Noreturn. int _Noreturn does_not_return (void) { for (;;) continue; } // Check _Static_assert. struct test_static_assert { int x; _Static_assert (sizeof (int) <= sizeof (long int), "_Static_assert does not work in struct"); long int y; }; // Check UTF-8 literals. #define u8 syntax error! char const utf8_literal[] = u8"happens to be ASCII" "another string"; // Check duplicate typedefs. typedef long *long_ptr; typedef long int *long_ptr; typedef long_ptr long_ptr; // Anonymous structures and unions -- taken from C11 6.7.2.1 Example 1. struct anonymous { union { struct { int i; int j; }; struct { int k; long int l; } w; }; int m; } v1; ' # Test code for whether the C compiler supports C11 (body of main). ac_c_conftest_c11_main=' _Static_assert ((offsetof (struct anonymous, i) == offsetof (struct anonymous, w.k)), "Anonymous union alignment botch"); v1.i = 2; v1.w.k = 5; ok |= v1.i != 5; ' # Test code for whether the C compiler supports C11 (complete). ac_c_conftest_c11_program="${ac_c_conftest_c89_globals} ${ac_c_conftest_c99_globals} ${ac_c_conftest_c11_globals} int main (int argc, char **argv) { int ok = 0; ${ac_c_conftest_c89_main} ${ac_c_conftest_c99_main} ${ac_c_conftest_c11_main} return ok; } " # Test code for whether the C compiler supports C99 (complete). ac_c_conftest_c99_program="${ac_c_conftest_c89_globals} ${ac_c_conftest_c99_globals} int main (int argc, char **argv) { int ok = 0; ${ac_c_conftest_c89_main} ${ac_c_conftest_c99_main} return ok; } " # Test code for whether the C compiler supports C89 (complete). ac_c_conftest_c89_program="${ac_c_conftest_c89_globals} int main (int argc, char **argv) { int ok = 0; ${ac_c_conftest_c89_main} return ok; } " as_fn_append ac_header_c_list " stdlib.h stdlib_h HAVE_STDLIB_H" as_fn_append ac_header_c_list " string.h string_h HAVE_STRING_H" as_fn_append ac_header_c_list " inttypes.h inttypes_h HAVE_INTTYPES_H" as_fn_append ac_header_c_list " stdint.h stdint_h HAVE_STDINT_H" as_fn_append ac_header_c_list " strings.h strings_h HAVE_STRINGS_H" as_fn_append ac_header_c_list " sys/stat.h sys_stat_h HAVE_SYS_STAT_H" as_fn_append ac_header_c_list " sys/types.h sys_types_h HAVE_SYS_TYPES_H" as_fn_append ac_header_c_list " unistd.h unistd_h HAVE_UNISTD_H" as_fn_append ac_header_c_list " wchar.h wchar_h HAVE_WCHAR_H" as_fn_append ac_header_c_list " minix/config.h minix_config_h HAVE_MINIX_CONFIG_H" gt_needs="$gt_needs " # Auxiliary files required by this configure script. ac_aux_files="ltmain.sh config.rpath config.guess config.sub compile missing install-sh" # Locations in which to look for auxiliary files. ac_aux_dir_candidates="${srcdir}${PATH_SEPARATOR}${srcdir}/..${PATH_SEPARATOR}${srcdir}/../.." # Search for a directory containing all of the required auxiliary files, # $ac_aux_files, from the $PATH-style list $ac_aux_dir_candidates. # If we don't find one directory that contains all the files we need, # we report the set of missing files from the *first* directory in # $ac_aux_dir_candidates and give up. ac_missing_aux_files="" ac_first_candidate=: printf "%s\n" "$as_me:${as_lineno-$LINENO}: looking for aux files: $ac_aux_files" >&5 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR as_found=false for as_dir in $ac_aux_dir_candidates do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac as_found=: printf "%s\n" "$as_me:${as_lineno-$LINENO}: trying $as_dir" >&5 ac_aux_dir_found=yes ac_install_sh= for ac_aux in $ac_aux_files do # As a special case, if "install-sh" is required, that requirement # can be satisfied by any of "install-sh", "install.sh", or "shtool", # and $ac_install_sh is set appropriately for whichever one is found. if test x"$ac_aux" = x"install-sh" then if test -f "${as_dir}install-sh"; then printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}install-sh found" >&5 ac_install_sh="${as_dir}install-sh -c" elif test -f "${as_dir}install.sh"; then printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}install.sh found" >&5 ac_install_sh="${as_dir}install.sh -c" elif test -f "${as_dir}shtool"; then printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}shtool found" >&5 ac_install_sh="${as_dir}shtool install -c" else ac_aux_dir_found=no if $ac_first_candidate; then ac_missing_aux_files="${ac_missing_aux_files} install-sh" else break fi fi else if test -f "${as_dir}${ac_aux}"; then printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}${ac_aux} found" >&5 else ac_aux_dir_found=no if $ac_first_candidate; then ac_missing_aux_files="${ac_missing_aux_files} ${ac_aux}" else break fi fi fi done if test "$ac_aux_dir_found" = yes; then ac_aux_dir="$as_dir" break fi ac_first_candidate=false as_found=false done IFS=$as_save_IFS if $as_found then : else case e in #( e) as_fn_error $? "cannot find required auxiliary files:$ac_missing_aux_files" "$LINENO" 5 ;; esac fi # These three variables are undocumented and unsupported, # and are intended to be withdrawn in a future Autoconf release. # They can cause serious problems if a builder's source tree is in a directory # whose full name contains unusual characters. if test -f "${ac_aux_dir}config.guess"; then ac_config_guess="$SHELL ${ac_aux_dir}config.guess" fi if test -f "${ac_aux_dir}config.sub"; then ac_config_sub="$SHELL ${ac_aux_dir}config.sub" fi if test -f "$ac_aux_dir/configure"; then ac_configure="$SHELL ${ac_aux_dir}configure" fi # Check that the precious variables saved in the cache have kept the same # value. ac_cache_corrupted=false for ac_var in $ac_precious_vars; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set eval ac_old_val=\$ac_cv_env_${ac_var}_value eval ac_new_val=\$ac_env_${ac_var}_value case $ac_old_set,$ac_new_set in set,) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: '$ac_var' was set to '$ac_old_val' in the previous run" >&5 printf "%s\n" "$as_me: error: '$ac_var' was set to '$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: '$ac_var' was not set in the previous run" >&5 printf "%s\n" "$as_me: error: '$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then # differences in whitespace do not lead to failure. ac_old_val_w=`echo x $ac_old_val` ac_new_val_w=`echo x $ac_new_val` if test "$ac_old_val_w" != "$ac_new_val_w"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: '$ac_var' has changed since the previous run:" >&5 printf "%s\n" "$as_me: error: '$ac_var' has changed since the previous run:" >&2;} ac_cache_corrupted=: else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in '$ac_var' since the previous run:" >&5 printf "%s\n" "$as_me: warning: ignoring whitespace changes in '$ac_var' since the previous run:" >&2;} eval $ac_var=\$ac_old_val fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: former value: '$ac_old_val'" >&5 printf "%s\n" "$as_me: former value: '$ac_old_val'" >&2;} { printf "%s\n" "$as_me:${as_lineno-$LINENO}: current value: '$ac_new_val'" >&5 printf "%s\n" "$as_me: current value: '$ac_new_val'" >&2;} fi;; esac # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in *\'*) ac_arg=$ac_var=`printf "%s\n" "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; *) ac_arg=$ac_var=$ac_new_val ;; esac case " $ac_configure_args " in *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. *) as_fn_append ac_configure_args " '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 printf "%s\n" "$as_me: error: changes in the environment can compromise the build" >&2;} as_fn_error $? "run '${MAKE-make} distclean' and/or 'rm $cache_file' and start over" "$LINENO" 5 fi ## -------------------- ## ## Main body of script. ## ## -------------------- ## ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_config_headers="$ac_config_headers config.h" # Required versions of other packages. # VALA_TARGET_GLIB_VERSION is used by valac --ccode --target-glib . # VALA_TARGET_GLIB_VERSION and glib_required_version will be different # in the future. VALA_TARGET_GLIB_VERSION=2.46 # Init automake. am__api_version='1.17' # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: # SysV /etc/install, /usr/sbin/install # SunOS /usr/etc/install # IRIX /sbin/install # AIX /bin/install # AmigaOS /C/install, which installs bootblocks on floppy discs # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. # Reject install programs that cannot install multiple files. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 printf %s "checking for a BSD-compatible install... " >&6; } if test -z "$INSTALL"; then if test ${ac_cv_path_install+y} then : printf %s "(cached) " >&6 else case e in #( e) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac # Account for fact that we put trailing slashes in our PATH walk. case $as_dir in #(( ./ | /[cC]/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. # Don't use installbsd from OSF since it installs stuff as root # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext"; then if test $ac_prog = install && grep dspmsg "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. : elif test $ac_prog = install && grep pwplus "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # program-specific install script used by HP pwplus--don't use. : else rm -rf conftest.one conftest.two conftest.dir echo one > conftest.one echo two > conftest.two mkdir conftest.dir if "$as_dir$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir/" && test -s conftest.one && test -s conftest.two && test -s conftest.dir/conftest.one && test -s conftest.dir/conftest.two then ac_cv_path_install="$as_dir$ac_prog$ac_exec_ext -c" break 3 fi fi fi done done ;; esac done IFS=$as_save_IFS rm -rf conftest.one conftest.two conftest.dir ;; esac fi if test ${ac_cv_path_install+y}; then INSTALL=$ac_cv_path_install else # As a last resort, use the slow shell script. Don't cache a # value for INSTALL within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the value is a relative name. INSTALL=$ac_install_sh fi fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 printf "%s\n" "$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether sleep supports fractional seconds" >&5 printf %s "checking whether sleep supports fractional seconds... " >&6; } if test ${am_cv_sleep_fractional_seconds+y} then : printf %s "(cached) " >&6 else case e in #( e) if sleep 0.001 2>/dev/null then : am_cv_sleep_fractional_seconds=yes else case e in #( e) am_cv_sleep_fractional_seconds=no ;; esac fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_sleep_fractional_seconds" >&5 printf "%s\n" "$am_cv_sleep_fractional_seconds" >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking filesystem timestamp resolution" >&5 printf %s "checking filesystem timestamp resolution... " >&6; } if test ${am_cv_filesystem_timestamp_resolution+y} then : printf %s "(cached) " >&6 else case e in #( e) # Default to the worst case. am_cv_filesystem_timestamp_resolution=2 # Only try to go finer than 1 sec if sleep can do it. # Don't try 1 sec, because if 0.01 sec and 0.1 sec don't work, # - 1 sec is not much of a win compared to 2 sec, and # - it takes 2 seconds to perform the test whether 1 sec works. # # Instead, just use the default 2s on platforms that have 1s resolution, # accept the extra 1s delay when using $sleep in the Automake tests, in # exchange for not incurring the 2s delay for running the test for all # packages. # am_try_resolutions= if test "$am_cv_sleep_fractional_seconds" = yes; then # Even a millisecond often causes a bunch of false positives, # so just try a hundredth of a second. The time saved between .001 and # .01 is not terribly consequential. am_try_resolutions="0.01 0.1 $am_try_resolutions" fi # In order to catch current-generation FAT out, we must *modify* files # that already exist; the *creation* timestamp is finer. Use names # that make ls -t sort them differently when they have equal # timestamps than when they have distinct timestamps, keeping # in mind that ls -t prints the *newest* file first. rm -f conftest.ts? : > conftest.ts1 : > conftest.ts2 : > conftest.ts3 # Make sure ls -t actually works. Do 'set' in a subshell so we don't # clobber the current shell's arguments. (Outer-level square brackets # are removed by m4; they're present so that m4 does not expand # ; be careful, easy to get confused.) if ( set X `ls -t conftest.ts[12]` && { test "$*" != "X conftest.ts1 conftest.ts2" || test "$*" != "X conftest.ts2 conftest.ts1"; } ); then :; else # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". printf "%s\n" ""Bad output from ls -t: \"`ls -t conftest.ts[12]`\""" >&5 { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "ls -t produces unexpected output. Make sure there is not a broken ls alias in your environment. See 'config.log' for more details" "$LINENO" 5; } fi for am_try_res in $am_try_resolutions; do # Any one fine-grained sleep might happen to cross the boundary # between two values of a coarser actual resolution, but if we do # two fine-grained sleeps in a row, at least one of them will fall # entirely within a coarse interval. echo alpha > conftest.ts1 sleep $am_try_res echo beta > conftest.ts2 sleep $am_try_res echo gamma > conftest.ts3 # We assume that 'ls -t' will make use of high-resolution # timestamps if the operating system supports them at all. if (set X `ls -t conftest.ts?` && test "$2" = conftest.ts3 && test "$3" = conftest.ts2 && test "$4" = conftest.ts1); then # # Ok, ls -t worked. If we're at a resolution of 1 second, we're done, # because we don't need to test make. make_ok=true if test $am_try_res != 1; then # But if we've succeeded so far with a subsecond resolution, we # have one more thing to check: make. It can happen that # everything else supports the subsecond mtimes, but make doesn't; # notably on macOS, which ships make 3.81 from 2006 (the last one # released under GPLv2). https://bugs.gnu.org/68808 # # We test $MAKE if it is defined in the environment, else "make". # It might get overridden later, but our hope is that in practice # it does not matter: it is the system "make" which is (by far) # the most likely to be broken, whereas if the user overrides it, # probably they did so with a better, or at least not worse, make. # https://lists.gnu.org/archive/html/automake/2024-06/msg00051.html # # Create a Makefile (real tab character here): rm -f conftest.mk echo 'conftest.ts1: conftest.ts2' >conftest.mk echo ' touch conftest.ts2' >>conftest.mk # # Now, running # touch conftest.ts1; touch conftest.ts2; make # should touch ts1 because ts2 is newer. This could happen by luck, # but most often, it will fail if make's support is insufficient. So # test for several consecutive successes. # # (We reuse conftest.ts[12] because we still want to modify existing # files, not create new ones, per above.) n=0 make=${MAKE-make} until test $n -eq 3; do echo one > conftest.ts1 sleep $am_try_res echo two > conftest.ts2 # ts2 should now be newer than ts1 if $make -f conftest.mk | grep 'up to date' >/dev/null; then make_ok=false break # out of $n loop fi n=`expr $n + 1` done fi # if $make_ok; then # Everything we know to check worked out, so call this resolution good. am_cv_filesystem_timestamp_resolution=$am_try_res break # out of $am_try_res loop fi # Otherwise, we'll go on to check the next resolution. fi done rm -f conftest.ts? # (end _am_filesystem_timestamp_resolution) ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_filesystem_timestamp_resolution" >&5 printf "%s\n" "$am_cv_filesystem_timestamp_resolution" >&6; } # This check should not be cached, as it may vary across builds of # different projects. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 printf %s "checking whether build environment is sane... " >&6; } # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' ' case `pwd` in *[\\\"\#\$\&\'\`$am_lf]*) as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;; esac case $srcdir in *[\\\"\#\$\&\'\`$am_lf\ \ ]*) as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;; esac # Do 'set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). am_build_env_is_sane=no am_has_slept=no rm -f conftest.file for am_try in 1 2; do echo "timestamp, slept: $am_has_slept" > conftest.file if ( set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$*" = "X"; then # -L didn't work. set X `ls -t "$srcdir/configure" conftest.file` fi test "$2" = conftest.file ); then am_build_env_is_sane=yes break fi # Just in case. sleep "$am_cv_filesystem_timestamp_resolution" am_has_slept=yes done { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_build_env_is_sane" >&5 printf "%s\n" "$am_build_env_is_sane" >&6; } if test "$am_build_env_is_sane" = no; then as_fn_error $? "newly created file is older than distributed files! Check your system clock" "$LINENO" 5 fi # If we didn't sleep, we still need to ensure time stamps of config.status and # generated files are strictly newer. am_sleep_pid= if test -e conftest.file || grep 'slept: no' conftest.file >/dev/null 2>&1 then : else case e in #( e) ( sleep "$am_cv_filesystem_timestamp_resolution" ) & am_sleep_pid=$! ;; esac fi rm -f conftest.file test "$program_prefix" != NONE && program_transform_name="s&^&$program_prefix&;$program_transform_name" # Use a double $ so make ignores it. test "$program_suffix" != NONE && program_transform_name="s&\$&$program_suffix&;$program_transform_name" # Double any \ or $. # By default was 's,x,x', remove it if useless. ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' program_transform_name=`printf "%s\n" "$program_transform_name" | sed "$ac_script"` # Expand $ac_aux_dir to an absolute path. am_aux_dir=`cd "$ac_aux_dir" && pwd` if test x"${MISSING+set}" != xset; then MISSING="\${SHELL} '$am_aux_dir/missing'" fi # Use eval to expand $SHELL if eval "$MISSING --is-lightweight"; then am_missing_run="$MISSING " else am_missing_run= { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5 printf "%s\n" "$as_me: WARNING: 'missing' script is too old or missing" >&2;} fi if test x"${install_sh+set}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; *) install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi # Installed binaries are usually stripped using 'strip' when the user # run "make install-strip". However 'strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the 'STRIP' environment variable to overrule this program. if test "$cross_compiling" != no; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_STRIP+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 printf "%s\n" "$STRIP" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_STRIP+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_STRIP="strip" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 printf "%s\n" "$ac_ct_STRIP" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_STRIP" = x; then STRIP=":" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac STRIP=$ac_ct_STRIP fi else STRIP="$ac_cv_prog_STRIP" fi fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a race-free mkdir -p" >&5 printf %s "checking for a race-free mkdir -p... " >&6; } if test -z "$MKDIR_P"; then if test ${ac_cv_path_mkdir+y} then : printf %s "(cached) " >&6 else case e in #( e) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_prog in mkdir gmkdir; do for ac_exec_ext in '' $ac_executable_extensions; do as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext" || continue case `"$as_dir$ac_prog$ac_exec_ext" --version 2>&1` in #( 'mkdir ('*'coreutils) '* | \ *'BusyBox '* | \ 'mkdir (fileutils) '4.1*) ac_cv_path_mkdir=$as_dir$ac_prog$ac_exec_ext break 3;; esac done done done IFS=$as_save_IFS ;; esac fi test -d ./--version && rmdir ./--version if test ${ac_cv_path_mkdir+y}; then MKDIR_P="$ac_cv_path_mkdir -p" else # As a last resort, use plain mkdir -p, # in the hope it doesn't have the bugs of ancient mkdir. MKDIR_P='mkdir -p' fi fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 printf "%s\n" "$MKDIR_P" >&6; } for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_AWK+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$AWK"; then ac_cv_prog_AWK="$AWK" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_AWK="$ac_prog" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 printf "%s\n" "$AWK" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi test -n "$AWK" && break done { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 printf %s "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } set x ${MAKE-make} ac_make=`printf "%s\n" "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` if eval test \${ac_cv_prog_make_${ac_make}_set+y} then : printf %s "(cached) " >&6 else case e in #( e) cat >conftest.make <<\_ACEOF SHELL = /bin/sh all: @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. case `${MAKE-make} -f conftest.make 2>/dev/null` in *@@@%%%=?*=@@@%%%*) eval ac_cv_prog_make_${ac_make}_set=yes;; *) eval ac_cv_prog_make_${ac_make}_set=no;; esac rm -f conftest.make ;; esac fi if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } SET_MAKE= else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null AM_DEFAULT_VERBOSITY=1 # Check whether --enable-silent-rules was given. if test ${enable_silent_rules+y} then : enableval=$enable_silent_rules; fi am_make=${MAKE-make} { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 printf %s "checking whether $am_make supports nested variables... " >&6; } if test ${am_cv_make_support_nested_variables+y} then : printf %s "(cached) " >&6 else case e in #( e) if printf "%s\n" 'TRUE=$(BAR$(V)) BAR0=false BAR1=true V=1 am__doit: @$(TRUE) .PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then am_cv_make_support_nested_variables=yes else am_cv_make_support_nested_variables=no fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 printf "%s\n" "$am_cv_make_support_nested_variables" >&6; } AM_BACKSLASH='\' am__rm_f_notfound= if (rm -f && rm -fr && rm -rf) 2>/dev/null then : else case e in #( e) am__rm_f_notfound='""' ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking xargs -n works" >&5 printf %s "checking xargs -n works... " >&6; } if test ${am_cv_xargs_n_works+y} then : printf %s "(cached) " >&6 else case e in #( e) if test "`echo 1 2 3 | xargs -n2 echo`" = "1 2 3" then : am_cv_xargs_n_works=yes else case e in #( e) am_cv_xargs_n_works=no ;; esac fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_xargs_n_works" >&5 printf "%s\n" "$am_cv_xargs_n_works" >&6; } if test "$am_cv_xargs_n_works" = yes then : am__xargs_n='xargs -n' else case e in #( e) am__xargs_n='am__xargs_n () { shift; sed "s/ /\\n/g" | while read am__xargs_n_arg; do "" "$am__xargs_n_arg"; done; }' ;; esac fi if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output # is not polluted with repeated "-I." am__isrc=' -I$(srcdir)' # test to see if srcdir already configured if test -f $srcdir/config.status; then as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 fi fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi # Define the identity of the package. PACKAGE='ibus' VERSION='1.5.32' printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h printf "%s\n" "#define VERSION \"$VERSION\"" >>confdefs.h # Some tools Automake needs. ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} # For better backward compatibility. To be removed once Automake 1.9.x # dies out for good. For more background, see: # # mkdir_p='$(MKDIR_P)' # We need awk for the "check" target (and possibly the TAP driver). The # system "awk" is bad on some platforms. # Always define AMTAR for backward compatibility. Yes, it's still used # in the wild :-( We should find a proper way to deprecate it ... AMTAR='$${TAR-tar}' # We'll loop over all known methods to create a tar archive until one works. _am_tools='gnutar pax cpio none' am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -' # Variables for tags utilities; see am/tags.am if test -z "$CTAGS"; then CTAGS=ctags fi if test -z "$ETAGS"; then ETAGS=etags fi if test -z "$CSCOPE"; then CSCOPE=cscope fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5 printf %s "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } # Check whether --enable-maintainer-mode was given. if test ${enable_maintainer_mode+y} then : enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval else case e in #( e) USE_MAINTAINER_MODE=yes ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 printf "%s\n" "$USE_MAINTAINER_MODE" >&6; } if test $USE_MAINTAINER_MODE = yes; then MAINTAINER_MODE_TRUE= MAINTAINER_MODE_FALSE='#' else MAINTAINER_MODE_TRUE='#' MAINTAINER_MODE_FALSE= fi MAINT=$MAINTAINER_MODE_TRUE DEPDIR="${am__leading_dot}deps" ac_config_commands="$ac_config_commands depfiles" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5 printf %s "checking whether ${MAKE-make} supports the include directive... " >&6; } cat > confinc.mk << 'END' am__doit: @echo this is the am__doit target >confinc.out .PHONY: am__doit END am__include="#" am__quote= # BSD make does it like this. echo '.include "confinc.mk" # ignored' > confmf.BSD # Other make implementations (GNU, Solaris 10, AIX) do it like this. echo 'include confinc.mk # ignored' > confmf.GNU _am_result=no for s in GNU BSD; do { echo "$as_me:$LINENO: ${MAKE-make} -f confmf.$s && cat confinc.out" >&5 (${MAKE-make} -f confmf.$s && cat confinc.out) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } case $?:`cat confinc.out 2>/dev/null` in #( '0:this is the am__doit target') : case $s in #( BSD) : am__include='.include' am__quote='"' ;; #( *) : am__include='include' am__quote='' ;; esac ;; #( *) : ;; esac if test "$am__include" != "#"; then _am_result="yes ($s style)" break fi done rm -f confinc.* confmf.* { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5 printf "%s\n" "${_am_result}" >&6; } # Check whether --enable-dependency-tracking was given. if test ${enable_dependency_tracking+y} then : enableval=$enable_dependency_tracking; fi if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' am__nodep='_no' fi if test "x$enable_dependency_tracking" != xno; then AMDEP_TRUE= AMDEP_FALSE='#' else AMDEP_TRUE='#' AMDEP_FALSE= fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi CC=$ac_cv_prog_CC if test -n "$CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 printf "%s\n" "$CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 printf "%s\n" "$ac_ct_CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi CC=$ac_cv_prog_CC if test -n "$CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 printf "%s\n" "$CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then if test "$as_dir$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir$ac_word${1+' '}$@" fi fi fi ;; esac fi CC=$ac_cv_prog_CC if test -n "$CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 printf "%s\n" "$CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi CC=$ac_cv_prog_CC if test -n "$CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 printf "%s\n" "$CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 printf "%s\n" "$ac_ct_CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi test -n "$ac_ct_CC" && break done if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}clang", so it can be a program name with args. set dummy ${ac_tool_prefix}clang; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}clang" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi CC=$ac_cv_prog_CC if test -n "$CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 printf "%s\n" "$CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "clang", so it can be a program name with args. set dummy clang; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="clang" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 printf "%s\n" "$ac_ct_CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi else CC="$ac_cv_prog_CC" fi fi test -z "$CC" && { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "no acceptable C compiler found in \$PATH See 'config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion -version; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 printf %s "checking whether the C compiler works... " >&6; } ac_link_default=`printf "%s\n" "$ac_link" | sed 's/ -o *conftest[^ ]*//'` # The possible output files: ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" ac_rmfiles= for ac_file in $ac_files do case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; * ) ac_rmfiles="$ac_rmfiles $ac_file";; esac done rm -f $ac_rmfiles if { { ac_try="$ac_link_default" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_link_default") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } then : # Autoconf-2.13 could set the ac_cv_exeext variable to 'no'. # So ignore a value of 'no', otherwise this would lead to 'EXEEXT = no' # in a Makefile. We should not override ac_cv_exeext if it was cached, # so that the user can short-circuit this test for compilers unknown to # Autoconf. for ac_file in $ac_files '' do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) if test ${ac_cv_exeext+y} && test "$ac_cv_exeext" != no; then :; else ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` fi # We set ac_cv_exeext here because the later test for it is not # safe: cross compilers may not add the suffix if given an '-o' # argument, so we may need to know it at that point already. # Even if this section looks crufty: it has the advantage of # actually working. break;; * ) break;; esac done test "$ac_cv_exeext" = no && ac_cv_exeext= else case e in #( e) ac_file='' ;; esac fi if test -z "$ac_file" then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error 77 "C compiler cannot create executables See 'config.log' for more details" "$LINENO" 5; } else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 printf %s "checking for C compiler default output file name... " >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 printf "%s\n" "$ac_file" >&6; } ac_exeext=$ac_cv_exeext rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 printf %s "checking for suffix of executables... " >&6; } if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } then : # If both 'conftest.exe' and 'conftest' are 'present' (well, observable) # catch 'conftest.exe'. For instance with Cygwin, 'ls conftest' will # work properly (i.e., refer to 'conftest.exe'), while it won't with # 'rm'. for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` break;; * ) break;; esac done else case e in #( e) { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of executables: cannot compile and link See 'config.log' for more details" "$LINENO" 5; } ;; esac fi rm -f conftest conftest$ac_cv_exeext { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 printf "%s\n" "$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main (void) { FILE *f = fopen ("conftest.out", "w"); if (!f) return 1; return ferror (f) || fclose (f) != 0; ; return 0; } _ACEOF ac_clean_files="$ac_clean_files conftest.out" # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 printf %s "checking whether we are cross compiling... " >&6; } if test "$cross_compiling" != yes; then { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if { ac_try='./conftest$ac_cv_exeext' { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error 77 "cannot run C compiled programs. If you meant to cross compile, use '--host'. See 'config.log' for more details" "$LINENO" 5; } fi fi fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 printf "%s\n" "$cross_compiling" >&6; } rm -f conftest.$ac_ext conftest$ac_cv_exeext \ conftest.o conftest.obj conftest.out ac_clean_files=$ac_clean_files_save { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 printf %s "checking for suffix of object files... " >&6; } if test ${ac_cv_objext+y} then : printf %s "(cached) " >&6 else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF rm -f conftest.o conftest.obj if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } then : for ac_file in conftest.o conftest.obj conftest.*; do test -f "$ac_file" || continue; case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else case e in #( e) printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of object files: cannot compile See 'config.log' for more details" "$LINENO" 5; } ;; esac fi rm -f conftest.$ac_cv_objext conftest.$ac_ext ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 printf "%s\n" "$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C" >&5 printf %s "checking whether the compiler supports GNU C... " >&6; } if test ${ac_cv_c_compiler_gnu+y} then : printf %s "(cached) " >&6 else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_compiler_gnu=yes else case e in #( e) ac_compiler_gnu=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 printf "%s\n" "$ac_cv_c_compiler_gnu" >&6; } ac_compiler_gnu=$ac_cv_c_compiler_gnu if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi ac_test_CFLAGS=${CFLAGS+y} ac_save_CFLAGS=$CFLAGS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 printf %s "checking whether $CC accepts -g... " >&6; } if test ${ac_cv_prog_cc_g+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_prog_cc_g=yes else case e in #( e) CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : else case e in #( e) ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_prog_cc_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 printf "%s\n" "$ac_cv_prog_cc_g" >&6; } if test $ac_test_CFLAGS; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi ac_prog_cc_stdc=no if test x$ac_prog_cc_stdc = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C11 features" >&5 printf %s "checking for $CC option to enable C11 features... " >&6; } if test ${ac_cv_prog_cc_c11+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_cv_prog_cc_c11=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_c_conftest_c11_program _ACEOF for ac_arg in '' -std=gnu11 do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO" then : ac_cv_prog_cc_c11=$ac_arg fi rm -f core conftest.err conftest.$ac_objext conftest.beam test "x$ac_cv_prog_cc_c11" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC ;; esac fi if test "x$ac_cv_prog_cc_c11" = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 printf "%s\n" "unsupported" >&6; } else case e in #( e) if test "x$ac_cv_prog_cc_c11" = x then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 printf "%s\n" "none needed" >&6; } else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c11" >&5 printf "%s\n" "$ac_cv_prog_cc_c11" >&6; } CC="$CC $ac_cv_prog_cc_c11" ;; esac fi ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c11 ac_prog_cc_stdc=c11 ;; esac fi fi if test x$ac_prog_cc_stdc = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C99 features" >&5 printf %s "checking for $CC option to enable C99 features... " >&6; } if test ${ac_cv_prog_cc_c99+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_cv_prog_cc_c99=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_c_conftest_c99_program _ACEOF for ac_arg in '' -std=gnu99 -std=c99 -c99 -qlanglvl=extc1x -qlanglvl=extc99 -AC99 -D_STDC_C99= do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO" then : ac_cv_prog_cc_c99=$ac_arg fi rm -f core conftest.err conftest.$ac_objext conftest.beam test "x$ac_cv_prog_cc_c99" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC ;; esac fi if test "x$ac_cv_prog_cc_c99" = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 printf "%s\n" "unsupported" >&6; } else case e in #( e) if test "x$ac_cv_prog_cc_c99" = x then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 printf "%s\n" "none needed" >&6; } else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5 printf "%s\n" "$ac_cv_prog_cc_c99" >&6; } CC="$CC $ac_cv_prog_cc_c99" ;; esac fi ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99 ac_prog_cc_stdc=c99 ;; esac fi fi if test x$ac_prog_cc_stdc = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C89 features" >&5 printf %s "checking for $CC option to enable C89 features... " >&6; } if test ${ac_cv_prog_cc_c89+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_c_conftest_c89_program _ACEOF for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO" then : ac_cv_prog_cc_c89=$ac_arg fi rm -f core conftest.err conftest.$ac_objext conftest.beam test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC ;; esac fi if test "x$ac_cv_prog_cc_c89" = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 printf "%s\n" "unsupported" >&6; } else case e in #( e) if test "x$ac_cv_prog_cc_c89" = x then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 printf "%s\n" "none needed" >&6; } else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 printf "%s\n" "$ac_cv_prog_cc_c89" >&6; } CC="$CC $ac_cv_prog_cc_c89" ;; esac fi ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89 ac_prog_cc_stdc=c89 ;; esac fi fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 printf %s "checking whether $CC understands -c and -o together... " >&6; } if test ${am_cv_prog_cc_c_o+y} then : printf %s "(cached) " >&6 else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF # Make sure it works both with $CC and with simple cc. # Following AC_PROG_CC_C_O, we do the test twice because some # compilers refuse to overwrite an existing .o file with -o, # though they will create one. am_cv_prog_cc_c_o=yes for am_i in 1 2; do if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } \ && test -f conftest2.$ac_objext; then : OK else am_cv_prog_cc_c_o=no break fi done rm -f core conftest* unset am_i ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 printf "%s\n" "$am_cv_prog_cc_c_o" >&6; } if test "$am_cv_prog_cc_c_o" != yes; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC="$am_aux_dir/compile $CC" fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu depcc="$CC" am_compiler_list= { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 printf %s "checking dependency style of $depcc... " >&6; } if test ${am_cv_CC_dependencies_compiler_type+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thus: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 printf "%s\n" "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi ac_header= ac_cache= for ac_item in $ac_header_c_list do if test $ac_cache; then ac_fn_c_check_header_compile "$LINENO" $ac_header ac_cv_header_$ac_cache "$ac_includes_default" if eval test \"x\$ac_cv_header_$ac_cache\" = xyes; then printf "%s\n" "#define $ac_item 1" >> confdefs.h fi ac_header= ac_cache= elif test $ac_header; then ac_cache=$ac_item else ac_header=$ac_item fi done if test $ac_cv_header_stdlib_h = yes && test $ac_cv_header_string_h = yes then : printf "%s\n" "#define STDC_HEADERS 1" >>confdefs.h fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5 printf %s "checking whether it is safe to define __EXTENSIONS__... " >&6; } if test ${ac_cv_safe_to_define___extensions__+y} then : printf %s "(cached) " >&6 else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ # define __EXTENSIONS__ 1 $ac_includes_default int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_safe_to_define___extensions__=yes else case e in #( e) ac_cv_safe_to_define___extensions__=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5 printf "%s\n" "$ac_cv_safe_to_define___extensions__" >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether _XOPEN_SOURCE should be defined" >&5 printf %s "checking whether _XOPEN_SOURCE should be defined... " >&6; } if test ${ac_cv_should_define__xopen_source+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_cv_should_define__xopen_source=no if test $ac_cv_header_wchar_h = yes then : cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include mbstate_t x; int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #define _XOPEN_SOURCE 500 #include mbstate_t x; int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_should_define__xopen_source=yes fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_should_define__xopen_source" >&5 printf "%s\n" "$ac_cv_should_define__xopen_source" >&6; } printf "%s\n" "#define _ALL_SOURCE 1" >>confdefs.h printf "%s\n" "#define _DARWIN_C_SOURCE 1" >>confdefs.h printf "%s\n" "#define _GNU_SOURCE 1" >>confdefs.h printf "%s\n" "#define _HPUX_ALT_XOPEN_SOCKET_API 1" >>confdefs.h printf "%s\n" "#define _NETBSD_SOURCE 1" >>confdefs.h printf "%s\n" "#define _OPENBSD_SOURCE 1" >>confdefs.h printf "%s\n" "#define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h printf "%s\n" "#define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1" >>confdefs.h printf "%s\n" "#define __STDC_WANT_IEC_60559_BFP_EXT__ 1" >>confdefs.h printf "%s\n" "#define __STDC_WANT_IEC_60559_DFP_EXT__ 1" >>confdefs.h printf "%s\n" "#define __STDC_WANT_IEC_60559_EXT__ 1" >>confdefs.h printf "%s\n" "#define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1" >>confdefs.h printf "%s\n" "#define __STDC_WANT_IEC_60559_TYPES_EXT__ 1" >>confdefs.h printf "%s\n" "#define __STDC_WANT_LIB_EXT2__ 1" >>confdefs.h printf "%s\n" "#define __STDC_WANT_MATH_SPEC_FUNCS__ 1" >>confdefs.h printf "%s\n" "#define _TANDEM_SOURCE 1" >>confdefs.h if test $ac_cv_header_minix_config_h = yes then : MINIX=yes printf "%s\n" "#define _MINIX 1" >>confdefs.h printf "%s\n" "#define _POSIX_SOURCE 1" >>confdefs.h printf "%s\n" "#define _POSIX_1_SOURCE 2" >>confdefs.h else case e in #( e) MINIX= ;; esac fi if test $ac_cv_safe_to_define___extensions__ = yes then : printf "%s\n" "#define __EXTENSIONS__ 1" >>confdefs.h fi if test $ac_cv_should_define__xopen_source = yes then : printf "%s\n" "#define _XOPEN_SOURCE 500" >>confdefs.h fi # Support silent build rules. Disable # by either passing --disable-silent-rules to configure or passing V=1 # to make AM_DEFAULT_VERBOSITY=0 # Define sustituted variables: IBUS_MAJOR_VERSION=1 IBUS_MINOR_VERSION=5 IBUS_MICRO_VERSION=32 IBUS_ABI_CURRENT=5 IBUS_ABI_REVISION=532 IBUS_ABI_AGE=0 IBUS_VERSION=1.5.32 IBUS_API_VERSION=1.0 IBUS_BINARY_VERSION=1.5.0.532 # libtool versioning # # If LT_VERSION_INFO="lt_current:lt_revision:lt_age", libibus is # libibus-ibus_api_version.so.(lt_current - lt_age).lt_age.lt_revision # If the abi is changed, but it is compatible with last version, # ibus_abi_current++, ibus_abi_age++; # If the abi is not compatible with last version, # ibus_abi_current++, ibus_abi_age = 0; LT_VERSION_INFO="5:532:0" LT_CURRENT_MINUS_AGE=5 # Define GETTEXT_* variables. GETTEXT_PACKAGE=ibus10 printf "%s\n" "#define GETTEXT_PACKAGE \"$GETTEXT_PACKAGE\"" >>confdefs.h ibus_save_prefix="$prefix" ibus_save_datarootdir="$datarootdir" ibus_save_datadir="$datadir" ibus_save_localedir="$localedir" test "x$prefix" = xNONE && prefix=$ac_default_prefix datarootdir=`eval echo "$datarootdir"` datadir=`eval echo "$datadir"` test "x$localedir" = xNONE && localedir="${datadir}/locale" ibus_localedir=`eval echo "$localedir"` ibus_datadir=`eval echo "$datadir"` localedir="$ibus_save_localedir" datadir="$ibus_save_datadir" datarootdir="$ibus_save_datarootdir" prefix="$ibus_save_prefix" printf "%s\n" "#define LOCALEDIR \"$ibus_localedir\"" >>confdefs.h # For dislpay date. DATE_DISPLAY="火 4月 08 2025" # Check for programs. ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi CC=$ac_cv_prog_CC if test -n "$CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 printf "%s\n" "$CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 printf "%s\n" "$ac_ct_CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi CC=$ac_cv_prog_CC if test -n "$CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 printf "%s\n" "$CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then if test "$as_dir$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir$ac_word${1+' '}$@" fi fi fi ;; esac fi CC=$ac_cv_prog_CC if test -n "$CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 printf "%s\n" "$CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi CC=$ac_cv_prog_CC if test -n "$CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 printf "%s\n" "$CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 printf "%s\n" "$ac_ct_CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi test -n "$ac_ct_CC" && break done if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}clang", so it can be a program name with args. set dummy ${ac_tool_prefix}clang; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}clang" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi CC=$ac_cv_prog_CC if test -n "$CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 printf "%s\n" "$CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "clang", so it can be a program name with args. set dummy clang; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_CC+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="clang" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 printf "%s\n" "$ac_ct_CC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi else CC="$ac_cv_prog_CC" fi fi test -z "$CC" && { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "no acceptable C compiler found in \$PATH See 'config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion -version; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C" >&5 printf %s "checking whether the compiler supports GNU C... " >&6; } if test ${ac_cv_c_compiler_gnu+y} then : printf %s "(cached) " >&6 else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_compiler_gnu=yes else case e in #( e) ac_compiler_gnu=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 printf "%s\n" "$ac_cv_c_compiler_gnu" >&6; } ac_compiler_gnu=$ac_cv_c_compiler_gnu if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi ac_test_CFLAGS=${CFLAGS+y} ac_save_CFLAGS=$CFLAGS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 printf %s "checking whether $CC accepts -g... " >&6; } if test ${ac_cv_prog_cc_g+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_prog_cc_g=yes else case e in #( e) CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : else case e in #( e) ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_prog_cc_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 printf "%s\n" "$ac_cv_prog_cc_g" >&6; } if test $ac_test_CFLAGS; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi ac_prog_cc_stdc=no if test x$ac_prog_cc_stdc = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C11 features" >&5 printf %s "checking for $CC option to enable C11 features... " >&6; } if test ${ac_cv_prog_cc_c11+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_cv_prog_cc_c11=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_c_conftest_c11_program _ACEOF for ac_arg in '' -std=gnu11 do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO" then : ac_cv_prog_cc_c11=$ac_arg fi rm -f core conftest.err conftest.$ac_objext conftest.beam test "x$ac_cv_prog_cc_c11" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC ;; esac fi if test "x$ac_cv_prog_cc_c11" = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 printf "%s\n" "unsupported" >&6; } else case e in #( e) if test "x$ac_cv_prog_cc_c11" = x then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 printf "%s\n" "none needed" >&6; } else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c11" >&5 printf "%s\n" "$ac_cv_prog_cc_c11" >&6; } CC="$CC $ac_cv_prog_cc_c11" ;; esac fi ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c11 ac_prog_cc_stdc=c11 ;; esac fi fi if test x$ac_prog_cc_stdc = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C99 features" >&5 printf %s "checking for $CC option to enable C99 features... " >&6; } if test ${ac_cv_prog_cc_c99+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_cv_prog_cc_c99=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_c_conftest_c99_program _ACEOF for ac_arg in '' -std=gnu99 -std=c99 -c99 -qlanglvl=extc1x -qlanglvl=extc99 -AC99 -D_STDC_C99= do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO" then : ac_cv_prog_cc_c99=$ac_arg fi rm -f core conftest.err conftest.$ac_objext conftest.beam test "x$ac_cv_prog_cc_c99" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC ;; esac fi if test "x$ac_cv_prog_cc_c99" = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 printf "%s\n" "unsupported" >&6; } else case e in #( e) if test "x$ac_cv_prog_cc_c99" = x then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 printf "%s\n" "none needed" >&6; } else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5 printf "%s\n" "$ac_cv_prog_cc_c99" >&6; } CC="$CC $ac_cv_prog_cc_c99" ;; esac fi ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99 ac_prog_cc_stdc=c99 ;; esac fi fi if test x$ac_prog_cc_stdc = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C89 features" >&5 printf %s "checking for $CC option to enable C89 features... " >&6; } if test ${ac_cv_prog_cc_c89+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_c_conftest_c89_program _ACEOF for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO" then : ac_cv_prog_cc_c89=$ac_arg fi rm -f core conftest.err conftest.$ac_objext conftest.beam test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC ;; esac fi if test "x$ac_cv_prog_cc_c89" = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 printf "%s\n" "unsupported" >&6; } else case e in #( e) if test "x$ac_cv_prog_cc_c89" = x then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 printf "%s\n" "none needed" >&6; } else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 printf "%s\n" "$ac_cv_prog_cc_c89" >&6; } CC="$CC $ac_cv_prog_cc_c89" ;; esac fi ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89 ac_prog_cc_stdc=c89 ;; esac fi fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 printf %s "checking whether $CC understands -c and -o together... " >&6; } if test ${am_cv_prog_cc_c_o+y} then : printf %s "(cached) " >&6 else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF # Make sure it works both with $CC and with simple cc. # Following AC_PROG_CC_C_O, we do the test twice because some # compilers refuse to overwrite an existing .o file with -o, # though they will create one. am_cv_prog_cc_c_o=yes for am_i in 1 2; do if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } \ && test -f conftest2.$ac_objext; then : OK else am_cv_prog_cc_c_o=no break fi done rm -f core conftest* unset am_i ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 printf "%s\n" "$am_cv_prog_cc_c_o" >&6; } if test "$am_cv_prog_cc_c_o" != yes; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC="$am_aux_dir/compile $CC" fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu depcc="$CC" am_compiler_list= { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 printf %s "checking dependency style of $depcc... " >&6; } if test ${am_cv_CC_dependencies_compiler_type+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thus: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 printf "%s\n" "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi # Extract the first word of "valac", so it can be a program name with args. set dummy valac; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_VALAC+y} then : printf %s "(cached) " >&6 else case e in #( e) case $VALAC in [\\/]* | ?:[\\/]*) ac_cv_path_VALAC="$VALAC" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_VALAC="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_VALAC" && ac_cv_path_VALAC="valac" ;; esac ;; esac fi VALAC=$ac_cv_path_VALAC if test -n "$VALAC"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $VALAC" >&5 printf "%s\n" "$VALAC" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "$VALAC" != valac && test -n "0.20" then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $VALAC supports at least API version 0.20" >&5 printf %s "checking whether $VALAC supports at least API version 0.20... " >&6; } am__vala_version=`$VALAC --api-version` as_arg_v1=0.20 as_arg_v2="$am__vala_version" awk "$as_awk_strverscmp" v1="$as_arg_v1" v2="$as_arg_v2" /dev/null case $? in #( 1) : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } ;; #( 0) : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } ;; #( 2) : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } VALAC=valac ;; #( *) : ;; esac fi if test "$VALAC" = valac; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Vala compiler not found or too old" >&5 printf "%s\n" "$as_me: WARNING: Vala compiler not found or too old" >&2;} { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: you will not be able to compile Vala source files" >&5 printf "%s\n" "$as_me: WARNING: you will not be able to compile Vala source files" >&2;} else : fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 printf %s "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } set x ${MAKE-make} ac_make=`printf "%s\n" "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` if eval test \${ac_cv_prog_make_${ac_make}_set+y} then : printf %s "(cached) " >&6 else case e in #( e) cat >conftest.make <<\_ACEOF SHELL = /bin/sh all: @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. case `${MAKE-make} -f conftest.make 2>/dev/null` in *@@@%%%=?*=@@@%%%*) eval ac_cv_prog_make_${ac_make}_set=yes;; *) eval ac_cv_prog_make_${ac_make}_set=no;; esac rm -f conftest.make ;; esac fi if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } SET_MAKE= else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 printf %s "checking how to run the C preprocessor... " >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then if test ${ac_cv_prog_CPP+y} then : printf %s "(cached) " >&6 else case e in #( e) # Double quotes because $CC needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-cpp" cpp /lib/cpp do ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO" then : else case e in #( e) # Broken: fails on valid input. continue ;; esac fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO" then : # Broken: success on invalid input. continue else case e in #( e) # Passes both tests. ac_preproc_ok=: break ;; esac fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of 'break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok then : break fi done ac_cv_prog_CPP=$CPP ;; esac fi CPP=$ac_cv_prog_CPP else ac_cv_prog_CPP=$CPP fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 printf "%s\n" "$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO" then : else case e in #( e) # Broken: fails on valid input. continue ;; esac fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO" then : # Broken: success on invalid input. continue else case e in #( e) # Passes both tests. ac_preproc_ok=: break ;; esac fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of 'break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok then : else case e in #( e) { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "C preprocessor \"$CPP\" fails sanity check See 'config.log' for more details" "$LINENO" 5; } ;; esac fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu # Make sure we can run config.sub. $SHELL "${ac_aux_dir}config.sub" sun4 >/dev/null 2>&1 || as_fn_error $? "cannot run $SHELL ${ac_aux_dir}config.sub" "$LINENO" 5 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 printf %s "checking build system type... " >&6; } if test ${ac_cv_build+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_build_alias=$build_alias test "x$ac_build_alias" = x && ac_build_alias=`$SHELL "${ac_aux_dir}config.guess"` test "x$ac_build_alias" = x && as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 ac_cv_build=`$SHELL "${ac_aux_dir}config.sub" $ac_build_alias` || as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $ac_build_alias failed" "$LINENO" 5 ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 printf "%s\n" "$ac_cv_build" >&6; } case $ac_cv_build in *-*-*) ;; *) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; esac build=$ac_cv_build ac_save_IFS=$IFS; IFS='-' set x $ac_cv_build shift build_cpu=$1 build_vendor=$2 shift; shift # Remember, the first character of IFS is used to create $*, # except with old shells: build_os=$* IFS=$ac_save_IFS case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac cross_compiling_build=no ac_build_tool_prefix= if test -n "$build" then : ac_build_tool_prefix="$build-" elif test -n "$build_alias" then : ac_build_tool_prefix="$build_alias-" fi ac_ext=c ac_cpp='$CPP_FOR_BUILD $CPPFLAGS_FOR_BUILD' ac_compile='$CC_FOR_BUILD -c $CFLAGS_FOR_BUILD $CPPFLAGS_FOR_BUILD conftest.$ac_ext >&5' ac_link='$CC_FOR_BUILD -o conftest$ac_build_exeext $CFLAGS_FOR_BUILD $CPPFLAGS_FOR_BUILD $LDFLAGS_FOR_BUILD conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_build_c_compiler_gnu was_set_c_compiler_gnu=${ac_cv_c_compiler_gnu+y} if test ${was_set_c_compiler_gnu} then : saved_c_compiler_gnu=$ac_cv_c_compiler_gnu { ac_cv_c_compiler_gnu=; unset ac_cv_c_compiler_gnu;} fi ac_ext=c ac_cpp='$CPP_FOR_BUILD $CPPFLAGS_FOR_BUILD' ac_compile='$CC_FOR_BUILD -c $CFLAGS_FOR_BUILD $CPPFLAGS_FOR_BUILD conftest.$ac_ext >&5' ac_link='$CC_FOR_BUILD -o conftest$ac_build_exeext $CFLAGS_FOR_BUILD $CPPFLAGS_FOR_BUILD $LDFLAGS_FOR_BUILD conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_build_c_compiler_gnu if test -n "$ac_build_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_build_tool_prefix}gcc; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC_FOR_BUILD+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$CC_FOR_BUILD"; then ac_cv_prog_CC_FOR_BUILD="$CC_FOR_BUILD" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_CC_FOR_BUILD="${ac_build_tool_prefix}gcc" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi CC_FOR_BUILD=$ac_cv_prog_CC_FOR_BUILD if test -n "$CC_FOR_BUILD"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC_FOR_BUILD" >&5 printf "%s\n" "$CC_FOR_BUILD" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_CC_FOR_BUILD"; then ac_ct_CC_FOR_BUILD=$CC_FOR_BUILD # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_CC_FOR_BUILD+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_CC_FOR_BUILD"; then ac_cv_prog_ac_ct_CC_FOR_BUILD="$ac_ct_CC_FOR_BUILD" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC_FOR_BUILD="gcc" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_CC_FOR_BUILD=$ac_cv_prog_ac_ct_CC_FOR_BUILD if test -n "$ac_ct_CC_FOR_BUILD"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC_FOR_BUILD" >&5 printf "%s\n" "$ac_ct_CC_FOR_BUILD" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_CC_FOR_BUILD" = x; then CC_FOR_BUILD="" else case $cross_compiling_build:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with build triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with build triplet" >&2;} ac_tool_warned=yes ;; esac CC_FOR_BUILD=$ac_ct_CC_FOR_BUILD fi else CC_FOR_BUILD="$ac_cv_prog_CC_FOR_BUILD" fi if test -z "$CC_FOR_BUILD"; then if test -n "$ac_build_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_build_tool_prefix}cc; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC_FOR_BUILD+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$CC_FOR_BUILD"; then ac_cv_prog_CC_FOR_BUILD="$CC_FOR_BUILD" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_CC_FOR_BUILD="${ac_build_tool_prefix}cc" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi CC_FOR_BUILD=$ac_cv_prog_CC_FOR_BUILD if test -n "$CC_FOR_BUILD"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC_FOR_BUILD" >&5 printf "%s\n" "$CC_FOR_BUILD" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi fi if test -z "$CC_FOR_BUILD"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC_FOR_BUILD+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$CC_FOR_BUILD"; then ac_cv_prog_CC_FOR_BUILD="$CC_FOR_BUILD" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then if test "$as_dir$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC_FOR_BUILD="cc" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC_FOR_BUILD shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC_FOR_BUILD to just the basename; use the full file name. shift ac_cv_prog_CC_FOR_BUILD="$as_dir$ac_word${1+' '}$@" fi fi fi ;; esac fi CC_FOR_BUILD=$ac_cv_prog_CC_FOR_BUILD if test -n "$CC_FOR_BUILD"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC_FOR_BUILD" >&5 printf "%s\n" "$CC_FOR_BUILD" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$CC_FOR_BUILD"; then if test -n "$ac_build_tool_prefix"; then for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_build_tool_prefix$ac_prog; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC_FOR_BUILD+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$CC_FOR_BUILD"; then ac_cv_prog_CC_FOR_BUILD="$CC_FOR_BUILD" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_CC_FOR_BUILD="$ac_build_tool_prefix$ac_prog" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi CC_FOR_BUILD=$ac_cv_prog_CC_FOR_BUILD if test -n "$CC_FOR_BUILD"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC_FOR_BUILD" >&5 printf "%s\n" "$CC_FOR_BUILD" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi test -n "$CC_FOR_BUILD" && break done fi if test -z "$CC_FOR_BUILD"; then ac_ct_CC_FOR_BUILD=$CC_FOR_BUILD for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_CC_FOR_BUILD+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_CC_FOR_BUILD"; then ac_cv_prog_ac_ct_CC_FOR_BUILD="$ac_ct_CC_FOR_BUILD" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC_FOR_BUILD="$ac_prog" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_CC_FOR_BUILD=$ac_cv_prog_ac_ct_CC_FOR_BUILD if test -n "$ac_ct_CC_FOR_BUILD"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC_FOR_BUILD" >&5 printf "%s\n" "$ac_ct_CC_FOR_BUILD" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi test -n "$ac_ct_CC_FOR_BUILD" && break done if test "x$ac_ct_CC_FOR_BUILD" = x; then CC_FOR_BUILD="" else case $cross_compiling_build:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with build triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with build triplet" >&2;} ac_tool_warned=yes ;; esac CC_FOR_BUILD=$ac_ct_CC_FOR_BUILD fi fi fi if test -z "$CC_FOR_BUILD"; then if test -n "$ac_build_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}clang", so it can be a program name with args. set dummy ${ac_build_tool_prefix}clang; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC_FOR_BUILD+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$CC_FOR_BUILD"; then ac_cv_prog_CC_FOR_BUILD="$CC_FOR_BUILD" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_CC_FOR_BUILD="${ac_build_tool_prefix}clang" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi CC_FOR_BUILD=$ac_cv_prog_CC_FOR_BUILD if test -n "$CC_FOR_BUILD"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC_FOR_BUILD" >&5 printf "%s\n" "$CC_FOR_BUILD" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_CC_FOR_BUILD"; then ac_ct_CC_FOR_BUILD=$CC_FOR_BUILD # Extract the first word of "clang", so it can be a program name with args. set dummy clang; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_CC_FOR_BUILD+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_CC_FOR_BUILD"; then ac_cv_prog_ac_ct_CC_FOR_BUILD="$ac_ct_CC_FOR_BUILD" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC_FOR_BUILD="clang" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_CC_FOR_BUILD=$ac_cv_prog_ac_ct_CC_FOR_BUILD if test -n "$ac_ct_CC_FOR_BUILD"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC_FOR_BUILD" >&5 printf "%s\n" "$ac_ct_CC_FOR_BUILD" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_CC_FOR_BUILD" = x; then CC_FOR_BUILD="" else case $cross_compiling_build:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with build triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with build triplet" >&2;} ac_tool_warned=yes ;; esac CC_FOR_BUILD=$ac_ct_CC_FOR_BUILD fi else CC_FOR_BUILD="$ac_cv_prog_CC_FOR_BUILD" fi fi test -z "$CC_FOR_BUILD" && { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "no acceptable C compiler found in \$PATH See 'config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion -version; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C" >&5 printf %s "checking whether the compiler supports GNU C... " >&6; } if test ${ac_cv_c_compiler_gnu+y} then : printf %s "(cached) " >&6 else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_compiler_gnu=yes else case e in #( e) ac_compiler_gnu=no ;; esac fi rm -f core conftest.err conftest.$ac_build_objext conftest.beam conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 printf "%s\n" "$ac_cv_c_compiler_gnu" >&6; } ac_compiler_gnu=$ac_cv_c_compiler_gnu if test $ac_compiler_gnu = yes; then GCC_FOR_BUILD=yes else GCC_FOR_BUILD= fi ac_test_CFLAGS=${CFLAGS_FOR_BUILD+y} ac_save_CFLAGS=$CFLAGS_FOR_BUILD { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC_FOR_BUILD accepts -g" >&5 printf %s "checking whether $CC_FOR_BUILD accepts -g... " >&6; } if test ${ac_cv_build_prog_cc_g+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_build_prog_cc_g=no CFLAGS_FOR_BUILD="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_build_prog_cc_g=yes else case e in #( e) CFLAGS_FOR_BUILD="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : else case e in #( e) ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS_FOR_BUILD="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_build_prog_cc_g=yes fi rm -f core conftest.err conftest.$ac_build_objext conftest.beam conftest.$ac_ext ;; esac fi rm -f core conftest.err conftest.$ac_build_objext conftest.beam conftest.$ac_ext ;; esac fi rm -f core conftest.err conftest.$ac_build_objext conftest.beam conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build_prog_cc_g" >&5 printf "%s\n" "$ac_cv_build_prog_cc_g" >&6; } if test $ac_test_CFLAGS; then CFLAGS_FOR_BUILD=$ac_save_CFLAGS elif test $ac_cv_build_prog_cc_g = yes; then if test "$GCC_FOR_BUILD" = yes; then CFLAGS_FOR_BUILD="-g -O2" else CFLAGS_FOR_BUILD="-g" fi else if test "$GCC_FOR_BUILD" = yes; then CFLAGS_FOR_BUILD="-O2" else CFLAGS_FOR_BUILD= fi fi ac_prog_cc_stdc=no if test x$ac_prog_cc_stdc = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC_FOR_BUILD option to enable C11 features" >&5 printf %s "checking for $CC_FOR_BUILD option to enable C11 features... " >&6; } if test ${ac_cv_build_prog_cc_c11+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_cv_build_prog_cc_c11=no ac_save_CC=$CC_FOR_BUILD cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_c_conftest_c11_program _ACEOF for ac_arg in '' -std=gnu11 do CC_FOR_BUILD="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO" then : ac_cv_build_prog_cc_c11=$ac_arg fi rm -f core conftest.err conftest.$ac_build_objext conftest.beam test "x$ac_cv_build_prog_cc_c11" != "xno" && break done rm -f conftest.$ac_ext CC_FOR_BUILD=$ac_save_CC ;; esac fi if test "x$ac_cv_build_prog_cc_c11" = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 printf "%s\n" "unsupported" >&6; } else case e in #( e) if test "x$ac_cv_build_prog_cc_c11" = x then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 printf "%s\n" "none needed" >&6; } else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build_prog_cc_c11" >&5 printf "%s\n" "$ac_cv_build_prog_cc_c11" >&6; } CC_FOR_BUILD="$CC_FOR_BUILD $ac_cv_build_prog_cc_c11" ;; esac fi ac_cv_prog_cc_stdc=$ac_cv_build_prog_cc_c11 ac_prog_cc_stdc=c11 ;; esac fi fi if test x$ac_prog_cc_stdc = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC_FOR_BUILD option to enable C99 features" >&5 printf %s "checking for $CC_FOR_BUILD option to enable C99 features... " >&6; } if test ${ac_cv_build_prog_cc_c99+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_cv_build_prog_cc_c99=no ac_save_CC=$CC_FOR_BUILD cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_c_conftest_c99_program _ACEOF for ac_arg in '' -std=gnu99 -std=c99 -c99 -qlanglvl=extc1x -qlanglvl=extc99 -AC99 -D_STDC_C99= do CC_FOR_BUILD="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO" then : ac_cv_build_prog_cc_c99=$ac_arg fi rm -f core conftest.err conftest.$ac_build_objext conftest.beam test "x$ac_cv_build_prog_cc_c99" != "xno" && break done rm -f conftest.$ac_ext CC_FOR_BUILD=$ac_save_CC ;; esac fi if test "x$ac_cv_build_prog_cc_c99" = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 printf "%s\n" "unsupported" >&6; } else case e in #( e) if test "x$ac_cv_build_prog_cc_c99" = x then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 printf "%s\n" "none needed" >&6; } else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build_prog_cc_c99" >&5 printf "%s\n" "$ac_cv_build_prog_cc_c99" >&6; } CC_FOR_BUILD="$CC_FOR_BUILD $ac_cv_build_prog_cc_c99" ;; esac fi ac_cv_prog_cc_stdc=$ac_cv_build_prog_cc_c99 ac_prog_cc_stdc=c99 ;; esac fi fi if test x$ac_prog_cc_stdc = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC_FOR_BUILD option to enable C89 features" >&5 printf %s "checking for $CC_FOR_BUILD option to enable C89 features... " >&6; } if test ${ac_cv_build_prog_cc_c89+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_cv_build_prog_cc_c89=no ac_save_CC=$CC_FOR_BUILD cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_c_conftest_c89_program _ACEOF for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC_FOR_BUILD="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO" then : ac_cv_build_prog_cc_c89=$ac_arg fi rm -f core conftest.err conftest.$ac_build_objext conftest.beam test "x$ac_cv_build_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC_FOR_BUILD=$ac_save_CC ;; esac fi if test "x$ac_cv_build_prog_cc_c89" = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 printf "%s\n" "unsupported" >&6; } else case e in #( e) if test "x$ac_cv_build_prog_cc_c89" = x then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 printf "%s\n" "none needed" >&6; } else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build_prog_cc_c89" >&5 printf "%s\n" "$ac_cv_build_prog_cc_c89" >&6; } CC_FOR_BUILD="$CC_FOR_BUILD $ac_cv_build_prog_cc_c89" ;; esac fi ac_cv_prog_cc_stdc=$ac_cv_build_prog_cc_c89 ac_prog_cc_stdc=c89 ;; esac fi fi ac_ext=c ac_cpp='$CPP_FOR_BUILD $CPPFLAGS_FOR_BUILD' ac_compile='$CC_FOR_BUILD -c $CFLAGS_FOR_BUILD $CPPFLAGS_FOR_BUILD conftest.$ac_ext >&5' ac_link='$CC_FOR_BUILD -o conftest$ac_build_exeext $CFLAGS_FOR_BUILD $CPPFLAGS_FOR_BUILD $LDFLAGS_FOR_BUILD conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_build_c_compiler_gnu ac_ext=c ac_cpp='$CPP_FOR_BUILD $CPPFLAGS_FOR_BUILD' ac_compile='$CC_FOR_BUILD -c $CFLAGS_FOR_BUILD $CPPFLAGS_FOR_BUILD conftest.$ac_ext >&5' ac_link='$CC_FOR_BUILD -o conftest$ac_build_exeext $CFLAGS_FOR_BUILD $CPPFLAGS_FOR_BUILD $LDFLAGS_FOR_BUILD conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_build_c_compiler_gnu { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC_FOR_BUILD understands -c and -o together" >&5 printf %s "checking whether $CC_FOR_BUILD understands -c and -o together... " >&6; } if test ${am_cv_build_prog_cc_c_o+y} then : printf %s "(cached) " >&6 else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF # Make sure it works both with $CC and with simple cc. # Following AC_PROG_CC_C_O, we do the test twice because some # compilers refuse to overwrite an existing .o file with -o, # though they will create one. am_cv_build_prog_cc_c_o=yes for am_i in 1 2; do if { echo "$as_me:$LINENO: $CC_FOR_BUILD -c conftest.$ac_ext -o conftest2.$ac_build_objext" >&5 ($CC_FOR_BUILD -c conftest.$ac_ext -o conftest2.$ac_build_objext) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } \ && test -f conftest2.$ac_build_objext; then : OK else am_cv_build_prog_cc_c_o=no break fi done rm -f core conftest* unset am_i ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_build_prog_cc_c_o" >&5 printf "%s\n" "$am_cv_build_prog_cc_c_o" >&6; } if test "$am_cv_build_prog_cc_c_o" != yes; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC_FOR_BUILD="$am_aux_dir/compile $CC_FOR_BUILD" fi ac_ext=c ac_cpp='$CPP_FOR_BUILD $CPPFLAGS_FOR_BUILD' ac_compile='$CC_FOR_BUILD -c $CFLAGS_FOR_BUILD $CPPFLAGS_FOR_BUILD conftest.$ac_ext >&5' ac_link='$CC_FOR_BUILD -o conftest$ac_build_exeext $CFLAGS_FOR_BUILD $CPPFLAGS_FOR_BUILD $LDFLAGS_FOR_BUILD conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_build_c_compiler_gnu depcc="$CC_FOR_BUILD" am_compiler_list= { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 printf %s "checking dependency style of $depcc... " >&6; } if test ${am_cv_build_CC_dependencies_compiler_type+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_build_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${BUILD_OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${BUILD_OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thus: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_build_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_build_CC_dependencies_compiler_type=none fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_build_CC_dependencies_compiler_type" >&5 printf "%s\n" "$am_cv_build_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_build_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_build_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi if test ${was_set_c_compiler_gnu} then : ac_cv_c_compiler_gnu=$saved_c_compiler_gnu fi cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 printf %s "checking whether the C compiler works... " >&6; } ac_link_default=`printf "%s\n" "$ac_link" | sed 's/ -o *conftest[^ ]*//'` # The possible output files: ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" ac_rmfiles= for ac_file in $ac_files do case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; * ) ac_rmfiles="$ac_rmfiles $ac_file";; esac done rm -f $ac_rmfiles if { { ac_try="$ac_link_default" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_link_default") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } then : # Autoconf-2.13 could set the ac_cv_exeext variable to 'no'. # So ignore a value of 'no', otherwise this would lead to 'EXEEXT = no' # in a Makefile. We should not override ac_cv_exeext if it was cached, # so that the user can short-circuit this test for compilers unknown to # Autoconf. for ac_file in $ac_files '' do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) if test ${ac_cv_build_exeext+y} && test "$ac_cv_build_exeext" != no; then :; else ac_cv_build_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` fi # We set ac_cv_exeext here because the later test for it is not # safe: cross compilers may not add the suffix if given an '-o' # argument, so we may need to know it at that point already. # Even if this section looks crufty: it has the advantage of # actually working. break;; * ) break;; esac done test "$ac_cv_build_exeext" = no && ac_cv_build_exeext= else case e in #( e) ac_file='' ;; esac fi if test -z "$ac_file" then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error 77 "C compiler cannot create executables See 'config.log' for more details" "$LINENO" 5; } else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 printf %s "checking for C compiler default output file name... " >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 printf "%s\n" "$ac_file" >&6; } ac_build_exeext=$ac_cv_build_exeext rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_build_exeext b.out ac_clean_files=$ac_clean_files_save { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 printf %s "checking for suffix of executables... " >&6; } if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } then : # If both 'conftest.exe' and 'conftest' are 'present' (well, observable) # catch 'conftest.exe'. For instance with Cygwin, 'ls conftest' will # work properly (i.e., refer to 'conftest.exe'), while it won't with # 'rm'. for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; *.* ) ac_cv_build_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` break;; * ) break;; esac done else case e in #( e) { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of executables: cannot compile and link See 'config.log' for more details" "$LINENO" 5; } ;; esac fi rm -f conftest conftest$ac_cv_build_exeext { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build_exeext" >&5 printf "%s\n" "$ac_cv_build_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_build_exeext ac_build_exeext=$BUILD_EXEEXT cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main (void) { FILE *f = fopen ("conftest.out", "w"); if (!f) return 1; return ferror (f) || fclose (f) != 0; ; return 0; } _ACEOF ac_clean_files="$ac_clean_files conftest.out" # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 printf %s "checking whether we are cross compiling... " >&6; } if test "$cross_compiling_build" != yes; then { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if { ac_try='./conftest$ac_cv_build_exeext' { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then cross_compiling_build=no else if test "$cross_compiling_build" = maybe; then cross_compiling_build=yes else { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error 77 "cannot run C compiled programs. If you meant to cross compile, use '--build'. See 'config.log' for more details" "$LINENO" 5; } fi fi fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $cross_compiling_build" >&5 printf "%s\n" "$cross_compiling_build" >&6; } rm -f conftest.$ac_ext conftest$ac_cv_build_exeext \ conftest.o conftest.obj conftest.out ac_clean_files=$ac_clean_files_save { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 printf %s "checking for suffix of object files... " >&6; } if test ${ac_cv_build_objext+y} then : printf %s "(cached) " >&6 else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF rm -f conftest.o conftest.obj if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" printf "%s\n" "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } then : for ac_file in conftest.o conftest.obj conftest.*; do test -f "$ac_file" || continue; case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; *) ac_cv_build_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else case e in #( e) printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of object files: cannot compile See 'config.log' for more details" "$LINENO" 5; } ;; esac fi rm -f conftest.$ac_cv_build_objext conftest.$ac_ext ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build_objext" >&5 printf "%s\n" "$ac_cv_build_objext" >&6; } OBJEXT=$ac_cv_build_objext ac_build_objext=$BUILD_OBJEXT ac_ext=c ac_cpp='$CPP_FOR_BUILD $CPPFLAGS_FOR_BUILD' ac_compile='$CC_FOR_BUILD -c $CFLAGS_FOR_BUILD $CPPFLAGS_FOR_BUILD conftest.$ac_ext >&5' ac_link='$CC_FOR_BUILD -o conftest$ac_build_exeext $CFLAGS_FOR_BUILD $CPPFLAGS_FOR_BUILD $LDFLAGS_FOR_BUILD conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_build_c_compiler_gnu { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 printf %s "checking how to run the C preprocessor... " >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP_FOR_BUILD" && test -d "$CPP_FOR_BUILD"; then CPP_FOR_BUILD= fi if test -z "$CPP_FOR_BUILD"; then if test ${ac_cv_build_prog_CPP+y} then : printf %s "(cached) " >&6 else case e in #( e) # Double quotes because $CC needs to be expanded for CPP_FOR_BUILD in "$CC_FOR_BUILD -E" "$CC_FOR_BUILD -E -traditional-cpp" cpp /lib/cpp do ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO" then : else case e in #( e) # Broken: fails on valid input. continue ;; esac fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO" then : # Broken: success on invalid input. continue else case e in #( e) # Passes both tests. ac_preproc_ok=: break ;; esac fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of 'break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok then : break fi done ac_cv_build_prog_CPP=$CPP_FOR_BUILD ;; esac fi CPP_FOR_BUILD=$ac_cv_build_prog_CPP else ac_cv_build_prog_CPP=$CPP_FOR_BUILD fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CPP_FOR_BUILD" >&5 printf "%s\n" "$CPP_FOR_BUILD" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO" then : else case e in #( e) # Broken: fails on valid input. continue ;; esac fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO" then : # Broken: success on invalid input. continue else case e in #( e) # Passes both tests. ac_preproc_ok=: break ;; esac fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of 'break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok then : else case e in #( e) { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "C preprocessor \"$CPP_FOR_BUILD\" fails sanity check See 'config.log' for more details" "$LINENO" 5; } ;; esac fi ac_ext=c ac_cpp='$CPP_FOR_BUILD $CPPFLAGS_FOR_BUILD' ac_compile='$CC_FOR_BUILD -c $CFLAGS_FOR_BUILD $CPPFLAGS_FOR_BUILD conftest.$ac_ext >&5' ac_link='$CC_FOR_BUILD -o conftest$ac_build_exeext $CFLAGS_FOR_BUILD $CPPFLAGS_FOR_BUILD $LDFLAGS_FOR_BUILD conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_build_c_compiler_gnu ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu # i18n stuff { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 printf %s "checking for a sed that does not truncate output... " >&6; } if test ${ac_cv_path_SED+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ for ac_i in 1 2 3 4 5 6 7; do ac_script="$ac_script$as_nl$ac_script" done echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed { ac_script=; unset ac_script;} if test -z "$SED"; then ac_path_SED_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_prog in sed gsed do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_SED="$as_dir$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_SED" || continue # Check for GNU ac_path_SED and select it if it is found. # Check for GNU $ac_path_SED case `"$ac_path_SED" --version 2>&1` in #( *GNU*) ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; #( *) ac_count=0 printf %s 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" printf "%s\n" '' >> "conftest.nl" "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_SED_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_SED="$ac_path_SED" ac_path_SED_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_SED_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_SED"; then as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 fi else ac_cv_path_SED=$SED fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 printf "%s\n" "$ac_cv_path_SED" >&6; } SED="$ac_cv_path_SED" rm -f conftest.sed { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5 printf %s "checking whether NLS is requested... " >&6; } # Check whether --enable-nls was given. if test ${enable_nls+y} then : enableval=$enable_nls; USE_NLS=$enableval else case e in #( e) USE_NLS=yes ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5 printf "%s\n" "$USE_NLS" >&6; } GETTEXT_MACRO_VERSION=0.19 # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which # contains only /bin. Note that ksh looks also at the FPATH variable, # so we have to set that as well for the test. PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ || PATH_SEPARATOR=';' } fi # Find out how to test for executable files. Don't use a zero-byte file, # as systems may use methods other than mode bits to determine executability. cat >conf$$.file <<_ASEOF #! /bin/sh exit 0 _ASEOF chmod +x conf$$.file if test -x conf$$.file >/dev/null 2>&1; then ac_executable_p="test -x" else ac_executable_p="test -f" fi rm -f conf$$.file # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_MSGFMT+y} then : printf %s "(cached) " >&6 else case e in #( e) case "$MSGFMT" in [\\/]* | ?:[\\/]*) ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. ;; *) ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS="$ac_save_IFS" test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then echo "$as_me: trying $ac_dir/$ac_word..." >&5 if $ac_dir/$ac_word --statistics /dev/null >&5 2>&1 && (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then ac_cv_path_MSGFMT="$ac_dir/$ac_word$ac_exec_ext" break 2 fi fi done done IFS="$ac_save_IFS" test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT=":" ;; esac ;; esac fi MSGFMT="$ac_cv_path_MSGFMT" if test "$MSGFMT" != ":"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 printf "%s\n" "$MSGFMT" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_GMSGFMT+y} then : printf %s "(cached) " >&6 else case e in #( e) case $GMSGFMT in [\\/]* | ?:[\\/]*) ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_GMSGFMT="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" ;; esac ;; esac fi GMSGFMT=$ac_cv_path_GMSGFMT if test -n "$GMSGFMT"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 printf "%s\n" "$GMSGFMT" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi case `$MSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) MSGFMT_015=: ;; *) MSGFMT_015=$MSGFMT ;; esac case `$GMSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) GMSGFMT_015=: ;; *) GMSGFMT_015=$GMSGFMT ;; esac # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which # contains only /bin. Note that ksh looks also at the FPATH variable, # so we have to set that as well for the test. PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ || PATH_SEPARATOR=';' } fi # Find out how to test for executable files. Don't use a zero-byte file, # as systems may use methods other than mode bits to determine executability. cat >conf$$.file <<_ASEOF #! /bin/sh exit 0 _ASEOF chmod +x conf$$.file if test -x conf$$.file >/dev/null 2>&1; then ac_executable_p="test -x" else ac_executable_p="test -f" fi rm -f conf$$.file # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_XGETTEXT+y} then : printf %s "(cached) " >&6 else case e in #( e) case "$XGETTEXT" in [\\/]* | ?:[\\/]*) ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. ;; *) ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS="$ac_save_IFS" test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then echo "$as_me: trying $ac_dir/$ac_word..." >&5 if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >&5 2>&1 && (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then ac_cv_path_XGETTEXT="$ac_dir/$ac_word$ac_exec_ext" break 2 fi fi done done IFS="$ac_save_IFS" test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":" ;; esac ;; esac fi XGETTEXT="$ac_cv_path_XGETTEXT" if test "$XGETTEXT" != ":"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 printf "%s\n" "$XGETTEXT" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi rm -f messages.po case `$XGETTEXT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) XGETTEXT_015=: ;; *) XGETTEXT_015=$XGETTEXT ;; esac # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which # contains only /bin. Note that ksh looks also at the FPATH variable, # so we have to set that as well for the test. PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ || PATH_SEPARATOR=';' } fi # Find out how to test for executable files. Don't use a zero-byte file, # as systems may use methods other than mode bits to determine executability. cat >conf$$.file <<_ASEOF #! /bin/sh exit 0 _ASEOF chmod +x conf$$.file if test -x conf$$.file >/dev/null 2>&1; then ac_executable_p="test -x" else ac_executable_p="test -f" fi rm -f conf$$.file # Extract the first word of "msgmerge", so it can be a program name with args. set dummy msgmerge; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_MSGMERGE+y} then : printf %s "(cached) " >&6 else case e in #( e) case "$MSGMERGE" in [\\/]* | ?:[\\/]*) ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path. ;; *) ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS="$ac_save_IFS" test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then echo "$as_me: trying $ac_dir/$ac_word..." >&5 if $ac_dir/$ac_word --update -q /dev/null /dev/null >&5 2>&1; then ac_cv_path_MSGMERGE="$ac_dir/$ac_word$ac_exec_ext" break 2 fi fi done done IFS="$ac_save_IFS" test -z "$ac_cv_path_MSGMERGE" && ac_cv_path_MSGMERGE=":" ;; esac ;; esac fi MSGMERGE="$ac_cv_path_MSGMERGE" if test "$MSGMERGE" != ":"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5 printf "%s\n" "$MSGMERGE" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi test -n "$localedir" || localedir='${datadir}/locale' test -n "${XGETTEXT_EXTRA_OPTIONS+set}" || XGETTEXT_EXTRA_OPTIONS= ac_config_commands="$ac_config_commands po-directories" if test "X$prefix" = "XNONE"; then acl_final_prefix="$ac_default_prefix" else acl_final_prefix="$prefix" fi if test "X$exec_prefix" = "XNONE"; then acl_final_exec_prefix='${prefix}' else acl_final_exec_prefix="$exec_prefix" fi acl_save_prefix="$prefix" prefix="$acl_final_prefix" eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" prefix="$acl_save_prefix" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 printf %s "checking host system type... " >&6; } if test ${ac_cv_host+y} then : printf %s "(cached) " >&6 else case e in #( e) if test "x$host_alias" = x; then ac_cv_host=$ac_cv_build else ac_cv_host=`$SHELL "${ac_aux_dir}config.sub" $host_alias` || as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $host_alias failed" "$LINENO" 5 fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 printf "%s\n" "$ac_cv_host" >&6; } case $ac_cv_host in *-*-*) ;; *) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; esac host=$ac_cv_host ac_save_IFS=$IFS; IFS='-' set x $ac_cv_host shift host_cpu=$1 host_vendor=$2 shift; shift # Remember, the first character of IFS is used to create $*, # except with old shells: host_os=$* IFS=$ac_save_IFS case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac # Check whether --with-gnu-ld was given. if test ${with_gnu_ld+y} then : withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes else case e in #( e) with_gnu_ld=no ;; esac fi # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which # contains only /bin. Note that ksh looks also at the FPATH variable, # so we have to set that as well for the test. PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ || PATH_SEPARATOR=';' } fi ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 printf %s "checking for ld used by $CC... " >&6; } 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 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 printf %s "checking for GNU ld... " >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 printf %s "checking for non-GNU ld... " >&6; } fi if test ${acl_cv_path_LD+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -z "$LD"; then acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS="$acl_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then acl_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 `"$acl_cv_path_LD" -v 2>&1 &5 printf "%s\n" "$LD" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 printf %s "checking if the linker ($LD) is GNU ld... " >&6; } if test ${acl_cv_prog_gnu_ld+y} then : printf %s "(cached) " >&6 else case e in #( e) # I'd rather use --version here, but apparently some GNU lds only accept -v. case `$LD -v 2>&1 &5 printf "%s\n" "$acl_cv_prog_gnu_ld" >&6; } with_gnu_ld=$acl_cv_prog_gnu_ld { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5 printf %s "checking for shared library run path origin... " >&6; } if test ${acl_cv_rpath+y} then : printf %s "(cached) " >&6 else case e in #( e) CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh . ./conftest.sh rm -f ./conftest.sh acl_cv_rpath=done ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5 printf "%s\n" "$acl_cv_rpath" >&6; } wl="$acl_cv_wl" acl_libext="$acl_cv_libext" acl_shlibext="$acl_cv_shlibext" acl_libname_spec="$acl_cv_libname_spec" acl_library_names_spec="$acl_cv_library_names_spec" acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" acl_hardcode_direct="$acl_cv_hardcode_direct" acl_hardcode_minus_L="$acl_cv_hardcode_minus_L" # Check whether --enable-rpath was given. if test ${enable_rpath+y} then : enableval=$enable_rpath; : else case e in #( e) enable_rpath=yes ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep -e" >&5 printf %s "checking for egrep -e... " >&6; } if test ${ac_cv_path_EGREP_TRADITIONAL+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -z "$EGREP_TRADITIONAL"; then ac_path_EGREP_TRADITIONAL_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_prog in grep ggrep do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_EGREP_TRADITIONAL="$as_dir$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_EGREP_TRADITIONAL" || continue # Check for GNU ac_path_EGREP_TRADITIONAL and select it if it is found. # Check for GNU $ac_path_EGREP_TRADITIONAL case `"$ac_path_EGREP_TRADITIONAL" --version 2>&1` in #( *GNU*) ac_cv_path_EGREP_TRADITIONAL="$ac_path_EGREP_TRADITIONAL" ac_path_EGREP_TRADITIONAL_found=:;; #( *) ac_count=0 printf %s 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" printf "%s\n" 'EGREP_TRADITIONAL' >> "conftest.nl" "$ac_path_EGREP_TRADITIONAL" -E 'EGR(EP|AC)_TRADITIONAL$' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_EGREP_TRADITIONAL_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_EGREP_TRADITIONAL="$ac_path_EGREP_TRADITIONAL" ac_path_EGREP_TRADITIONAL_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_EGREP_TRADITIONAL_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_EGREP_TRADITIONAL"; then : fi else ac_cv_path_EGREP_TRADITIONAL=$EGREP_TRADITIONAL fi if test "$ac_cv_path_EGREP_TRADITIONAL" then : ac_cv_path_EGREP_TRADITIONAL="$ac_cv_path_EGREP_TRADITIONAL -E" else case e in #( e) if test -z "$EGREP_TRADITIONAL"; then ac_path_EGREP_TRADITIONAL_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_prog in egrep do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_EGREP_TRADITIONAL="$as_dir$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_EGREP_TRADITIONAL" || continue # Check for GNU ac_path_EGREP_TRADITIONAL and select it if it is found. # Check for GNU $ac_path_EGREP_TRADITIONAL case `"$ac_path_EGREP_TRADITIONAL" --version 2>&1` in #( *GNU*) ac_cv_path_EGREP_TRADITIONAL="$ac_path_EGREP_TRADITIONAL" ac_path_EGREP_TRADITIONAL_found=:;; #( *) ac_count=0 printf %s 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" printf "%s\n" 'EGREP_TRADITIONAL' >> "conftest.nl" "$ac_path_EGREP_TRADITIONAL" 'EGR(EP|AC)_TRADITIONAL$' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_EGREP_TRADITIONAL_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_EGREP_TRADITIONAL="$ac_path_EGREP_TRADITIONAL" ac_path_EGREP_TRADITIONAL_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_EGREP_TRADITIONAL_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_EGREP_TRADITIONAL"; then as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_EGREP_TRADITIONAL=$EGREP_TRADITIONAL fi ;; esac fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP_TRADITIONAL" >&5 printf "%s\n" "$ac_cv_path_EGREP_TRADITIONAL" >&6; } EGREP_TRADITIONAL=$ac_cv_path_EGREP_TRADITIONAL acl_libdirstem=lib acl_libdirstem2= case "$host_os" in solaris*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5 printf %s "checking for 64-bit host... " >&6; } if test ${gl_cv_solaris_64bit+y} then : printf %s "(cached) " >&6 else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef _LP64 sixtyfour bits #endif _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP_TRADITIONAL "sixtyfour bits" >/dev/null 2>&1 then : gl_cv_solaris_64bit=yes else case e in #( e) gl_cv_solaris_64bit=no ;; esac fi rm -rf conftest* ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_solaris_64bit" >&5 printf "%s\n" "$gl_cv_solaris_64bit" >&6; } if test $gl_cv_solaris_64bit = yes; then acl_libdirstem=lib/64 case "$host_cpu" in sparc*) acl_libdirstem2=lib/sparcv9 ;; i*86 | x86_64) acl_libdirstem2=lib/amd64 ;; esac fi ;; *) searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'` if test -n "$searchpath"; then acl_save_IFS="${IFS= }"; IFS=":" for searchdir in $searchpath; do if test -d "$searchdir"; then case "$searchdir" in */lib64/ | */lib64 ) acl_libdirstem=lib64 ;; */../ | */.. ) # Better ignore directories of this form. They are misleading. ;; *) searchdir=`cd "$searchdir" && pwd` case "$searchdir" in */lib64 ) acl_libdirstem=lib64 ;; esac ;; esac fi done IFS="$acl_save_IFS" fi ;; esac test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem" use_additional=yes acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" # Check whether --with-libiconv-prefix was given. if test ${with_libiconv_prefix+y} then : withval=$with_libiconv_prefix; if test "X$withval" = "Xno"; then use_additional=no else if test "X$withval" = "X"; then acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" else additional_includedir="$withval/include" additional_libdir="$withval/$acl_libdirstem" if test "$acl_libdirstem2" != "$acl_libdirstem" \ && ! test -d "$withval/$acl_libdirstem"; then additional_libdir="$withval/$acl_libdirstem2" fi fi fi fi LIBICONV= LTLIBICONV= INCICONV= LIBICONV_PREFIX= HAVE_LIBICONV= rpathdirs= ltrpathdirs= names_already_handled= names_next_round='iconv ' while test -n "$names_next_round"; do names_this_round="$names_next_round" names_next_round= for name in $names_this_round; do already_handled= for n in $names_already_handled; do if test "$n" = "$name"; then already_handled=yes break fi done if test -z "$already_handled"; then names_already_handled="$names_already_handled $name" uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` eval value=\"\$HAVE_LIB$uppername\" if test -n "$value"; then if test "$value" = yes; then eval value=\"\$LIB$uppername\" test -z "$value" || LIBICONV="${LIBICONV}${LIBICONV:+ }$value" eval value=\"\$LTLIB$uppername\" test -z "$value" || LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$value" else : fi else found_dir= found_la= found_so= found_a= eval libname=\"$acl_libname_spec\" # typically: libname=lib$name if test -n "$acl_shlibext"; then shrext=".$acl_shlibext" # typically: shrext=.so else shrext= fi if test $use_additional = yes; then dir="$additional_libdir" if test -n "$acl_shlibext"; then if test -f "$dir/$libname$shrext"; then found_dir="$dir" found_so="$dir/$libname$shrext" else if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then ver=`(cd "$dir" && \ for f in "$libname$shrext".*; do echo "$f"; done \ | sed -e "s,^$libname$shrext\\\\.,," \ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ | sed 1q ) 2>/dev/null` if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then found_dir="$dir" found_so="$dir/$libname$shrext.$ver" fi else eval library_names=\"$acl_library_names_spec\" for f in $library_names; do if test -f "$dir/$f"; then found_dir="$dir" found_so="$dir/$f" break fi done fi fi fi if test "X$found_dir" = "X"; then if test -f "$dir/$libname.$acl_libext"; then found_dir="$dir" found_a="$dir/$libname.$acl_libext" fi fi if test "X$found_dir" != "X"; then if test -f "$dir/$libname.la"; then found_la="$dir/$libname.la" fi fi fi if test "X$found_dir" = "X"; then for x in $LDFLAGS $LTLIBICONV; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" case "$x" in -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` if test -n "$acl_shlibext"; then if test -f "$dir/$libname$shrext"; then found_dir="$dir" found_so="$dir/$libname$shrext" else if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then ver=`(cd "$dir" && \ for f in "$libname$shrext".*; do echo "$f"; done \ | sed -e "s,^$libname$shrext\\\\.,," \ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ | sed 1q ) 2>/dev/null` if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then found_dir="$dir" found_so="$dir/$libname$shrext.$ver" fi else eval library_names=\"$acl_library_names_spec\" for f in $library_names; do if test -f "$dir/$f"; then found_dir="$dir" found_so="$dir/$f" break fi done fi fi fi if test "X$found_dir" = "X"; then if test -f "$dir/$libname.$acl_libext"; then found_dir="$dir" found_a="$dir/$libname.$acl_libext" fi fi if test "X$found_dir" != "X"; then if test -f "$dir/$libname.la"; then found_la="$dir/$libname.la" fi fi ;; esac if test "X$found_dir" != "X"; then break fi done fi if test "X$found_dir" != "X"; then LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$found_dir -l$name" if test "X$found_so" != "X"; then if test "$enable_rpath" = no \ || test "X$found_dir" = "X/usr/$acl_libdirstem" \ || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" else haveit= for x in $ltrpathdirs; do if test "X$x" = "X$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then ltrpathdirs="$ltrpathdirs $found_dir" fi if test "$acl_hardcode_direct" = yes; then LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" else if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" haveit= for x in $rpathdirs; do if test "X$x" = "X$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then rpathdirs="$rpathdirs $found_dir" fi else haveit= for x in $LDFLAGS $LIBICONV; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-L$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir" fi if test "$acl_hardcode_minus_L" != no; then LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" else LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" fi fi fi fi else if test "X$found_a" != "X"; then LIBICONV="${LIBICONV}${LIBICONV:+ }$found_a" else LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir -l$name" fi fi additional_includedir= case "$found_dir" in */$acl_libdirstem | */$acl_libdirstem/) basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` if test "$name" = 'iconv'; then LIBICONV_PREFIX="$basedir" fi additional_includedir="$basedir/include" ;; */$acl_libdirstem2 | */$acl_libdirstem2/) basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` if test "$name" = 'iconv'; then LIBICONV_PREFIX="$basedir" fi additional_includedir="$basedir/include" ;; esac if test "X$additional_includedir" != "X"; then if test "X$additional_includedir" != "X/usr/include"; then haveit= if test "X$additional_includedir" = "X/usr/local/include"; then if test -n "$GCC"; then case $host_os in linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi if test -z "$haveit"; then for x in $CPPFLAGS $INCICONV; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-I$additional_includedir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_includedir"; then INCICONV="${INCICONV}${INCICONV:+ }-I$additional_includedir" fi fi fi fi fi if test -n "$found_la"; then save_libdir="$libdir" case "$found_la" in */* | *\\*) . "$found_la" ;; *) . "./$found_la" ;; esac libdir="$save_libdir" for dep in $dependency_libs; do case "$dep" in -L*) additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \ && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then haveit= if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \ || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then if test -n "$GCC"; then case $host_os in linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi if test -z "$haveit"; then haveit= for x in $LDFLAGS $LIBICONV; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-L$additional_libdir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then LIBICONV="${LIBICONV}${LIBICONV:+ }-L$additional_libdir" fi fi haveit= for x in $LDFLAGS $LTLIBICONV; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-L$additional_libdir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$additional_libdir" fi fi fi fi ;; -R*) dir=`echo "X$dep" | sed -e 's/^X-R//'` if test "$enable_rpath" != no; then haveit= for x in $rpathdirs; do if test "X$x" = "X$dir"; then haveit=yes break fi done if test -z "$haveit"; then rpathdirs="$rpathdirs $dir" fi haveit= for x in $ltrpathdirs; do if test "X$x" = "X$dir"; then haveit=yes break fi done if test -z "$haveit"; then ltrpathdirs="$ltrpathdirs $dir" fi fi ;; -l*) names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` ;; *.la) names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` ;; *) LIBICONV="${LIBICONV}${LIBICONV:+ }$dep" LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$dep" ;; esac done fi else LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-l$name" fi fi fi done done if test "X$rpathdirs" != "X"; then if test -n "$acl_hardcode_libdir_separator"; then alldirs= for found_dir in $rpathdirs; do alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir" done acl_save_libdir="$libdir" libdir="$alldirs" eval flag=\"$acl_hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" else for found_dir in $rpathdirs; do acl_save_libdir="$libdir" libdir="$found_dir" eval flag=\"$acl_hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" done fi fi if test "X$ltrpathdirs" != "X"; then for found_dir in $ltrpathdirs; do LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-R$found_dir" done fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5 printf %s "checking for CFPreferencesCopyAppValue... " >&6; } if test ${gt_cv_func_CFPreferencesCopyAppValue+y} then : printf %s "(cached) " >&6 else case e in #( e) gt_save_LIBS="$LIBS" LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main (void) { CFPreferencesCopyAppValue(NULL, NULL) ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : gt_cv_func_CFPreferencesCopyAppValue=yes else case e in #( e) gt_cv_func_CFPreferencesCopyAppValue=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS="$gt_save_LIBS" ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5 printf "%s\n" "$gt_cv_func_CFPreferencesCopyAppValue" >&6; } if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then printf "%s\n" "#define HAVE_CFPREFERENCESCOPYAPPVALUE 1" >>confdefs.h fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyCurrent" >&5 printf %s "checking for CFLocaleCopyCurrent... " >&6; } if test ${gt_cv_func_CFLocaleCopyCurrent+y} then : printf %s "(cached) " >&6 else case e in #( e) gt_save_LIBS="$LIBS" LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main (void) { CFLocaleCopyCurrent(); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : gt_cv_func_CFLocaleCopyCurrent=yes else case e in #( e) gt_cv_func_CFLocaleCopyCurrent=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS="$gt_save_LIBS" ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFLocaleCopyCurrent" >&5 printf "%s\n" "$gt_cv_func_CFLocaleCopyCurrent" >&6; } if test $gt_cv_func_CFLocaleCopyCurrent = yes; then printf "%s\n" "#define HAVE_CFLOCALECOPYCURRENT 1" >>confdefs.h fi INTL_MACOSX_LIBS= if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation" fi LIBINTL= LTLIBINTL= POSUB= case " $gt_needs " in *" need-formatstring-macros "*) gt_api_version=3 ;; *" need-ngettext "*) gt_api_version=2 ;; *) gt_api_version=1 ;; esac gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc" gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl" if test "$USE_NLS" = "yes"; then gt_use_preinstalled_gnugettext=no if test $gt_api_version -ge 3; then gt_revision_test_code=' #ifndef __GNU_GETTEXT_SUPPORTED_REVISION #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) #endif typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; ' else gt_revision_test_code= fi if test $gt_api_version -ge 2; then gt_expression_test_code=' + * ngettext ("", "", 0)' else gt_expression_test_code= fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5 printf %s "checking for GNU gettext in libc... " >&6; } if eval test \${$gt_func_gnugettext_libc+y} then : printf %s "(cached) " >&6 else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #ifndef __GNU_GETTEXT_SUPPORTED_REVISION extern int _nl_msg_cat_cntr; extern int *_nl_domain_bindings; #define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_domain_bindings) #else #define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 #endif $gt_revision_test_code int main (void) { bindtextdomain ("", ""); return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : eval "$gt_func_gnugettext_libc=yes" else case e in #( e) eval "$gt_func_gnugettext_libc=no" ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext ;; esac fi eval ac_res=\$$gt_func_gnugettext_libc { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 printf "%s\n" "$ac_res" >&6; } if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then am_save_CPPFLAGS="$CPPFLAGS" for element in $INCICONV; do haveit= for x in $CPPFLAGS; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X$element"; then haveit=yes break fi done if test -z "$haveit"; then CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" fi done { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5 printf %s "checking for iconv... " >&6; } if test ${am_cv_func_iconv+y} then : printf %s "(cached) " >&6 else case e in #( e) am_cv_func_iconv="no, consider installing GNU libiconv" am_cv_lib_iconv=no cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include int main (void) { iconv_t cd = iconv_open("",""); iconv(cd,NULL,NULL,NULL,NULL); iconv_close(cd); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : am_cv_func_iconv=yes fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext if test "$am_cv_func_iconv" != yes; then am_save_LIBS="$LIBS" LIBS="$LIBS $LIBICONV" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include int main (void) { iconv_t cd = iconv_open("",""); iconv(cd,NULL,NULL,NULL,NULL); iconv_close(cd); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : am_cv_lib_iconv=yes am_cv_func_iconv=yes fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS="$am_save_LIBS" fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5 printf "%s\n" "$am_cv_func_iconv" >&6; } if test "$am_cv_func_iconv" = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working iconv" >&5 printf %s "checking for working iconv... " >&6; } if test ${am_cv_func_iconv_works+y} then : printf %s "(cached) " >&6 else case e in #( e) am_save_LIBS="$LIBS" if test $am_cv_lib_iconv = yes; then LIBS="$LIBS $LIBICONV" fi am_cv_func_iconv_works=no for ac_iconv_const in '' 'const'; do if test "$cross_compiling" = yes then : case "$host_os" in aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; *) am_cv_func_iconv_works="guessing yes" ;; esac else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #ifndef ICONV_CONST # define ICONV_CONST $ac_iconv_const #endif int main (void) { int result = 0; /* Test against AIX 5.1 bug: Failures are not distinguishable from successful returns. */ { iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8"); if (cd_utf8_to_88591 != (iconv_t)(-1)) { static ICONV_CONST char input[] = "\342\202\254"; /* EURO SIGN */ char buf[10]; ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_utf8_to_88591, &inptr, &inbytesleft, &outptr, &outbytesleft); if (res == 0) result |= 1; iconv_close (cd_utf8_to_88591); } } /* Test against Solaris 10 bug: Failures are not distinguishable from successful returns. */ { iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646"); if (cd_ascii_to_88591 != (iconv_t)(-1)) { static ICONV_CONST char input[] = "\263"; char buf[10]; ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_ascii_to_88591, &inptr, &inbytesleft, &outptr, &outbytesleft); if (res == 0) result |= 2; iconv_close (cd_ascii_to_88591); } } /* Test against AIX 6.1..7.1 bug: Buffer overrun. */ { iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1"); if (cd_88591_to_utf8 != (iconv_t)(-1)) { static ICONV_CONST char input[] = "\304"; static char buf[2] = { (char)0xDE, (char)0xAD }; ICONV_CONST char *inptr = input; size_t inbytesleft = 1; char *outptr = buf; size_t outbytesleft = 1; size_t res = iconv (cd_88591_to_utf8, &inptr, &inbytesleft, &outptr, &outbytesleft); if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD) result |= 4; iconv_close (cd_88591_to_utf8); } } #if 0 /* This bug could be worked around by the caller. */ /* Test against HP-UX 11.11 bug: Positive return value instead of 0. */ { iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591"); if (cd_88591_to_utf8 != (iconv_t)(-1)) { static ICONV_CONST char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337"; char buf[50]; ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_88591_to_utf8, &inptr, &inbytesleft, &outptr, &outbytesleft); if ((int)res > 0) result |= 8; iconv_close (cd_88591_to_utf8); } } #endif /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is provided. */ if (/* Try standardized names. */ iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1) /* Try IRIX, OSF/1 names. */ && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1) /* Try AIX names. */ && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1) /* Try HP-UX names. */ && iconv_open ("utf8", "eucJP") == (iconv_t)(-1)) result |= 16; return result; ; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO" then : am_cv_func_iconv_works=yes fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext ;; esac fi test "$am_cv_func_iconv_works" = no || break done LIBS="$am_save_LIBS" ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv_works" >&5 printf "%s\n" "$am_cv_func_iconv_works" >&6; } case "$am_cv_func_iconv_works" in *no) am_func_iconv=no am_cv_lib_iconv=no ;; *) am_func_iconv=yes ;; esac else am_func_iconv=no am_cv_lib_iconv=no fi if test "$am_func_iconv" = yes; then printf "%s\n" "#define HAVE_ICONV 1" >>confdefs.h fi if test "$am_cv_lib_iconv" = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5 printf %s "checking how to link with libiconv... " >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5 printf "%s\n" "$LIBICONV" >&6; } else CPPFLAGS="$am_save_CPPFLAGS" LIBICONV= LTLIBICONV= fi use_additional=yes acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" # Check whether --with-libintl-prefix was given. if test ${with_libintl_prefix+y} then : withval=$with_libintl_prefix; if test "X$withval" = "Xno"; then use_additional=no else if test "X$withval" = "X"; then acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" else additional_includedir="$withval/include" additional_libdir="$withval/$acl_libdirstem" if test "$acl_libdirstem2" != "$acl_libdirstem" \ && ! test -d "$withval/$acl_libdirstem"; then additional_libdir="$withval/$acl_libdirstem2" fi fi fi fi LIBINTL= LTLIBINTL= INCINTL= LIBINTL_PREFIX= HAVE_LIBINTL= rpathdirs= ltrpathdirs= names_already_handled= names_next_round='intl ' while test -n "$names_next_round"; do names_this_round="$names_next_round" names_next_round= for name in $names_this_round; do already_handled= for n in $names_already_handled; do if test "$n" = "$name"; then already_handled=yes break fi done if test -z "$already_handled"; then names_already_handled="$names_already_handled $name" uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` eval value=\"\$HAVE_LIB$uppername\" if test -n "$value"; then if test "$value" = yes; then eval value=\"\$LIB$uppername\" test -z "$value" || LIBINTL="${LIBINTL}${LIBINTL:+ }$value" eval value=\"\$LTLIB$uppername\" test -z "$value" || LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$value" else : fi else found_dir= found_la= found_so= found_a= eval libname=\"$acl_libname_spec\" # typically: libname=lib$name if test -n "$acl_shlibext"; then shrext=".$acl_shlibext" # typically: shrext=.so else shrext= fi if test $use_additional = yes; then dir="$additional_libdir" if test -n "$acl_shlibext"; then if test -f "$dir/$libname$shrext"; then found_dir="$dir" found_so="$dir/$libname$shrext" else if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then ver=`(cd "$dir" && \ for f in "$libname$shrext".*; do echo "$f"; done \ | sed -e "s,^$libname$shrext\\\\.,," \ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ | sed 1q ) 2>/dev/null` if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then found_dir="$dir" found_so="$dir/$libname$shrext.$ver" fi else eval library_names=\"$acl_library_names_spec\" for f in $library_names; do if test -f "$dir/$f"; then found_dir="$dir" found_so="$dir/$f" break fi done fi fi fi if test "X$found_dir" = "X"; then if test -f "$dir/$libname.$acl_libext"; then found_dir="$dir" found_a="$dir/$libname.$acl_libext" fi fi if test "X$found_dir" != "X"; then if test -f "$dir/$libname.la"; then found_la="$dir/$libname.la" fi fi fi if test "X$found_dir" = "X"; then for x in $LDFLAGS $LTLIBINTL; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" case "$x" in -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` if test -n "$acl_shlibext"; then if test -f "$dir/$libname$shrext"; then found_dir="$dir" found_so="$dir/$libname$shrext" else if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then ver=`(cd "$dir" && \ for f in "$libname$shrext".*; do echo "$f"; done \ | sed -e "s,^$libname$shrext\\\\.,," \ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ | sed 1q ) 2>/dev/null` if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then found_dir="$dir" found_so="$dir/$libname$shrext.$ver" fi else eval library_names=\"$acl_library_names_spec\" for f in $library_names; do if test -f "$dir/$f"; then found_dir="$dir" found_so="$dir/$f" break fi done fi fi fi if test "X$found_dir" = "X"; then if test -f "$dir/$libname.$acl_libext"; then found_dir="$dir" found_a="$dir/$libname.$acl_libext" fi fi if test "X$found_dir" != "X"; then if test -f "$dir/$libname.la"; then found_la="$dir/$libname.la" fi fi ;; esac if test "X$found_dir" != "X"; then break fi done fi if test "X$found_dir" != "X"; then LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$found_dir -l$name" if test "X$found_so" != "X"; then if test "$enable_rpath" = no \ || test "X$found_dir" = "X/usr/$acl_libdirstem" \ || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" else haveit= for x in $ltrpathdirs; do if test "X$x" = "X$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then ltrpathdirs="$ltrpathdirs $found_dir" fi if test "$acl_hardcode_direct" = yes; then LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" else if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" haveit= for x in $rpathdirs; do if test "X$x" = "X$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then rpathdirs="$rpathdirs $found_dir" fi else haveit= for x in $LDFLAGS $LIBINTL; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-L$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir" fi if test "$acl_hardcode_minus_L" != no; then LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" else LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name" fi fi fi fi else if test "X$found_a" != "X"; then LIBINTL="${LIBINTL}${LIBINTL:+ }$found_a" else LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir -l$name" fi fi additional_includedir= case "$found_dir" in */$acl_libdirstem | */$acl_libdirstem/) basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` if test "$name" = 'intl'; then LIBINTL_PREFIX="$basedir" fi additional_includedir="$basedir/include" ;; */$acl_libdirstem2 | */$acl_libdirstem2/) basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` if test "$name" = 'intl'; then LIBINTL_PREFIX="$basedir" fi additional_includedir="$basedir/include" ;; esac if test "X$additional_includedir" != "X"; then if test "X$additional_includedir" != "X/usr/include"; then haveit= if test "X$additional_includedir" = "X/usr/local/include"; then if test -n "$GCC"; then case $host_os in linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi if test -z "$haveit"; then for x in $CPPFLAGS $INCINTL; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-I$additional_includedir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_includedir"; then INCINTL="${INCINTL}${INCINTL:+ }-I$additional_includedir" fi fi fi fi fi if test -n "$found_la"; then save_libdir="$libdir" case "$found_la" in */* | *\\*) . "$found_la" ;; *) . "./$found_la" ;; esac libdir="$save_libdir" for dep in $dependency_libs; do case "$dep" in -L*) additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \ && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then haveit= if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \ || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then if test -n "$GCC"; then case $host_os in linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi if test -z "$haveit"; then haveit= for x in $LDFLAGS $LIBINTL; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-L$additional_libdir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then LIBINTL="${LIBINTL}${LIBINTL:+ }-L$additional_libdir" fi fi haveit= for x in $LDFLAGS $LTLIBINTL; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-L$additional_libdir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$additional_libdir" fi fi fi fi ;; -R*) dir=`echo "X$dep" | sed -e 's/^X-R//'` if test "$enable_rpath" != no; then haveit= for x in $rpathdirs; do if test "X$x" = "X$dir"; then haveit=yes break fi done if test -z "$haveit"; then rpathdirs="$rpathdirs $dir" fi haveit= for x in $ltrpathdirs; do if test "X$x" = "X$dir"; then haveit=yes break fi done if test -z "$haveit"; then ltrpathdirs="$ltrpathdirs $dir" fi fi ;; -l*) names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` ;; *.la) names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` ;; *) LIBINTL="${LIBINTL}${LIBINTL:+ }$dep" LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$dep" ;; esac done fi else LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name" LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-l$name" fi fi fi done done if test "X$rpathdirs" != "X"; then if test -n "$acl_hardcode_libdir_separator"; then alldirs= for found_dir in $rpathdirs; do alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir" done acl_save_libdir="$libdir" libdir="$alldirs" eval flag=\"$acl_hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" LIBINTL="${LIBINTL}${LIBINTL:+ }$flag" else for found_dir in $rpathdirs; do acl_save_libdir="$libdir" libdir="$found_dir" eval flag=\"$acl_hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" LIBINTL="${LIBINTL}${LIBINTL:+ }$flag" done fi fi if test "X$ltrpathdirs" != "X"; then for found_dir in $ltrpathdirs; do LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-R$found_dir" done fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5 printf %s "checking for GNU gettext in libintl... " >&6; } if eval test \${$gt_func_gnugettext_libintl+y} then : printf %s "(cached) " >&6 else case e in #( e) gt_save_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$CPPFLAGS $INCINTL" gt_save_LIBS="$LIBS" LIBS="$LIBS $LIBINTL" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #ifndef __GNU_GETTEXT_SUPPORTED_REVISION extern int _nl_msg_cat_cntr; extern #ifdef __cplusplus "C" #endif const char *_nl_expand_alias (const char *); #define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias ("")) #else #define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 #endif $gt_revision_test_code int main (void) { bindtextdomain ("", ""); return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : eval "$gt_func_gnugettext_libintl=yes" else case e in #( e) eval "$gt_func_gnugettext_libintl=no" ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then LIBS="$LIBS $LIBICONV" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #ifndef __GNU_GETTEXT_SUPPORTED_REVISION extern int _nl_msg_cat_cntr; extern #ifdef __cplusplus "C" #endif const char *_nl_expand_alias (const char *); #define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias ("")) #else #define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 #endif $gt_revision_test_code int main (void) { bindtextdomain ("", ""); return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : LIBINTL="$LIBINTL $LIBICONV" LTLIBINTL="$LTLIBINTL $LTLIBICONV" eval "$gt_func_gnugettext_libintl=yes" fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext fi CPPFLAGS="$gt_save_CPPFLAGS" LIBS="$gt_save_LIBS" ;; esac fi eval ac_res=\$$gt_func_gnugettext_libintl { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 printf "%s\n" "$ac_res" >&6; } fi if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \ || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \ && test "$PACKAGE" != gettext-runtime \ && test "$PACKAGE" != gettext-tools; }; then gt_use_preinstalled_gnugettext=yes else LIBINTL= LTLIBINTL= INCINTL= fi if test -n "$INTL_MACOSX_LIBS"; then if test "$gt_use_preinstalled_gnugettext" = "yes" \ || test "$nls_cv_use_gnu_gettext" = "yes"; then LIBINTL="$LIBINTL $INTL_MACOSX_LIBS" LTLIBINTL="$LTLIBINTL $INTL_MACOSX_LIBS" fi fi if test "$gt_use_preinstalled_gnugettext" = "yes" \ || test "$nls_cv_use_gnu_gettext" = "yes"; then printf "%s\n" "#define ENABLE_NLS 1" >>confdefs.h else USE_NLS=no fi fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to use NLS" >&5 printf %s "checking whether to use NLS... " >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5 printf "%s\n" "$USE_NLS" >&6; } if test "$USE_NLS" = "yes"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking where the gettext function comes from" >&5 printf %s "checking where the gettext function comes from... " >&6; } if test "$gt_use_preinstalled_gnugettext" = "yes"; then if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then gt_source="external libintl" else gt_source="libc" fi else gt_source="included intl directory" fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_source" >&5 printf "%s\n" "$gt_source" >&6; } fi if test "$USE_NLS" = "yes"; then if test "$gt_use_preinstalled_gnugettext" = "yes"; then if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to link with libintl" >&5 printf %s "checking how to link with libintl... " >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIBINTL" >&5 printf "%s\n" "$LIBINTL" >&6; } for element in $INCINTL; do haveit= for x in $CPPFLAGS; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X$element"; then haveit=yes break fi done if test -z "$haveit"; then CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" fi done fi printf "%s\n" "#define HAVE_GETTEXT 1" >>confdefs.h printf "%s\n" "#define HAVE_DCGETTEXT 1" >>confdefs.h fi POSUB=po fi INTLLIBS="$LIBINTL" # Define PACKAGE_VERSION_* variables. # Check whether --enable-static was given. if test ${enable_static+y} then : enableval=$enable_static; 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 else case e in #( e) enable_static=no ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing strerror" >&5 printf %s "checking for library containing strerror... " >&6; } if test ${ac_cv_search_strerror+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_func_search_save_LIBS=$LIBS cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. The 'extern "C"' is for builds by C++ compilers; although this is not generally supported in C code supporting it here has little cost and some practical benefit (sr 110532). */ #ifdef __cplusplus extern "C" #endif char strerror (void); int main (void) { return strerror (); ; return 0; } _ACEOF for ac_lib in '' cposix do if test -z "$ac_lib"; then ac_res="none required" else ac_res=-l$ac_lib LIBS="-l$ac_lib $ac_func_search_save_LIBS" fi if ac_fn_c_try_link "$LINENO" then : ac_cv_search_strerror=$ac_res fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext if test ${ac_cv_search_strerror+y} then : break fi done if test ${ac_cv_search_strerror+y} then : else case e in #( e) ac_cv_search_strerror=no ;; esac fi rm conftest.$ac_ext LIBS=$ac_func_search_save_LIBS ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_strerror" >&5 printf "%s\n" "$ac_cv_search_strerror" >&6; } ac_res=$ac_cv_search_strerror if test "$ac_res" != no then : test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" fi case `pwd` in *\ * | *\ *) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 printf "%s\n" "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;; esac macro_version='2.5.4' macro_revision='2.5.4' ltmain=$ac_aux_dir/ltmain.sh # Backslashify 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' ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5 printf %s "checking how to print strings... " >&6; } # Test print first, because it will be a builtin if present. if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then ECHO='print -r --' elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then ECHO='printf %s\n' else # Use this function as a fallback that always works. func_fallback_echo () { eval 'cat <<_LTECHO_EOF $1 _LTECHO_EOF' } ECHO='func_fallback_echo' fi # func_echo_all arg... # Invoke $ECHO with all args, space-separated. func_echo_all () { $ECHO "" } case $ECHO in printf*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: printf" >&5 printf "%s\n" "printf" >&6; } ;; print*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 printf "%s\n" "print -r" >&6; } ;; *) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: cat" >&5 printf "%s\n" "cat" >&6; } ;; esac { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 printf %s "checking for a sed that does not truncate output... " >&6; } if test ${ac_cv_path_SED+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ for ac_i in 1 2 3 4 5 6 7; do ac_script="$ac_script$as_nl$ac_script" done echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed { ac_script=; unset ac_script;} if test -z "$SED"; then ac_path_SED_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_prog in sed gsed do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_SED="$as_dir$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_SED" || continue # Check for GNU ac_path_SED and select it if it is found. # Check for GNU $ac_path_SED case `"$ac_path_SED" --version 2>&1` in #( *GNU*) ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; #( *) ac_count=0 printf %s 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" printf "%s\n" '' >> "conftest.nl" "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_SED_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_SED="$ac_path_SED" ac_path_SED_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_SED_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_SED"; then as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 fi else ac_cv_path_SED=$SED fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 printf "%s\n" "$ac_cv_path_SED" >&6; } SED="$ac_cv_path_SED" rm -f conftest.sed test -z "$SED" && SED=sed Xsed="$SED -e 1s/^X//" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 printf %s "checking for grep that handles long lines and -e... " >&6; } if test ${ac_cv_path_GREP+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -z "$GREP"; then ac_path_GREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_prog in grep ggrep do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_GREP="$as_dir$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_GREP" || continue # Check for GNU ac_path_GREP and select it if it is found. # Check for GNU $ac_path_GREP case `"$ac_path_GREP" --version 2>&1` in #( *GNU*) ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; #( *) ac_count=0 printf %s 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" printf "%s\n" 'GREP' >> "conftest.nl" "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_GREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_GREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_GREP"; then as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_GREP=$GREP fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 printf "%s\n" "$ac_cv_path_GREP" >&6; } GREP="$ac_cv_path_GREP" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 printf %s "checking for egrep... " >&6; } if test ${ac_cv_path_EGREP+y} then : printf %s "(cached) " >&6 else case e in #( e) if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 then ac_cv_path_EGREP="$GREP -E" else if test -z "$EGREP"; then ac_path_EGREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_prog in egrep do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_EGREP="$as_dir$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_EGREP" || continue # Check for GNU ac_path_EGREP and select it if it is found. # Check for GNU $ac_path_EGREP case `"$ac_path_EGREP" --version 2>&1` in #( *GNU*) ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; #( *) ac_count=0 printf %s 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" printf "%s\n" 'EGREP' >> "conftest.nl" "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_EGREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_EGREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_EGREP"; then as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_EGREP=$EGREP fi fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 printf "%s\n" "$ac_cv_path_EGREP" >&6; } EGREP="$ac_cv_path_EGREP" EGREP_TRADITIONAL=$EGREP ac_cv_path_EGREP_TRADITIONAL=$EGREP { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5 printf %s "checking for fgrep... " >&6; } if test ${ac_cv_path_FGREP+y} then : printf %s "(cached) " >&6 else case e in #( e) if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1 then ac_cv_path_FGREP="$GREP -F" else if test -z "$FGREP"; then ac_path_FGREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_prog in fgrep do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_FGREP="$as_dir$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_FGREP" || continue # Check for GNU ac_path_FGREP and select it if it is found. # Check for GNU $ac_path_FGREP case `"$ac_path_FGREP" --version 2>&1` in #( *GNU*) ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;; #( *) ac_count=0 printf %s 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" printf "%s\n" 'FGREP' >> "conftest.nl" "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_FGREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_FGREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_FGREP"; then as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_FGREP=$FGREP fi fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5 printf "%s\n" "$ac_cv_path_FGREP" >&6; } FGREP="$ac_cv_path_FGREP" test -z "$GREP" && GREP=grep # Check whether --with-gnu-ld was given. if test ${with_gnu_ld+y} then : withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes else case e in #( e) with_gnu_ld=no ;; esac fi ac_prog=ld if test yes = "$GCC"; then # Check if gcc -print-prog-name=ld gives a path. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 printf %s "checking for ld used by $CC... " >&6; } case $host in *-*-mingw* | *-*-windows*) # 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 yes = "$with_gnu_ld"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 printf %s "checking for GNU ld... " >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 printf %s "checking for non-GNU ld... " >&6; } fi if test ${lt_cv_path_LD+y} then : printf %s "(cached) " >&6 else case e in #( e) 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 &5 printf "%s\n" "$LD" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 printf %s "checking if the linker ($LD) is GNU ld... " >&6; } if test ${lt_cv_prog_gnu_ld+y} then : printf %s "(cached) " >&6 else case e in #( e) # I'd rather use --version here, but apparently some GNU lds only accept -v. case `$LD -v 2>&1 &5 printf "%s\n" "$lt_cv_prog_gnu_ld" >&6; } with_gnu_ld=$lt_cv_prog_gnu_ld { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5 printf %s "checking for BSD- or MS-compatible name lister (nm)... " >&6; } if test ${lt_cv_path_NM+y} then : printf %s "(cached) " >&6 else case e in #( e) 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 # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty case $build_os in mingw* | windows*) lt_bad_file=conftest.nm/nofile ;; *) lt_bad_file=/dev/null ;; esac case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in *$lt_bad_file* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break 2 ;; *) case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break 2 ;; *) 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 ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 printf "%s\n" "$lt_cv_path_NM" >&6; } if test no != "$lt_cv_path_NM"; then NM=$lt_cv_path_NM else # Didn't find any BSD compatible name lister, look for dumpbin. if test -n "$DUMPBIN"; then : # Let the user override the test. else if test -n "$ac_tool_prefix"; then for ac_prog in dumpbin "link -dump" do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_DUMPBIN+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$DUMPBIN"; then ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi DUMPBIN=$ac_cv_prog_DUMPBIN if test -n "$DUMPBIN"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5 printf "%s\n" "$DUMPBIN" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi test -n "$DUMPBIN" && break done fi if test -z "$DUMPBIN"; then ac_ct_DUMPBIN=$DUMPBIN for ac_prog in dumpbin "link -dump" do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_DUMPBIN+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_DUMPBIN"; then ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_DUMPBIN="$ac_prog" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN if test -n "$ac_ct_DUMPBIN"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5 printf "%s\n" "$ac_ct_DUMPBIN" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi test -n "$ac_ct_DUMPBIN" && break done if test "x$ac_ct_DUMPBIN" = x; then DUMPBIN=":" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac DUMPBIN=$ac_ct_DUMPBIN fi fi case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in *COFF*) DUMPBIN="$DUMPBIN -symbols -headers" ;; *) DUMPBIN=: ;; esac fi if test : != "$DUMPBIN"; then NM=$DUMPBIN fi fi test -z "$NM" && NM=nm { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5 printf %s "checking the name lister ($NM) interface... " >&6; } if test ${lt_cv_nm_interface+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&5 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&5 (eval echo "\"\$as_me:$LINENO: output\"" >&5) cat conftest.out >&5 if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" fi rm -f conftest* ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5 printf "%s\n" "$lt_cv_nm_interface" >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 printf %s "checking whether ln -s works... " >&6; } LN_S=$as_ln_s if test "$LN_S" = "ln -s"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 printf "%s\n" "no, using $LN_S" >&6; } fi # find the maximum length of command line arguments { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5 printf %s "checking the maximum length of command line arguments... " >&6; } if test ${lt_cv_sys_max_cmd_len+y} then : printf %s "(cached) " >&6 else case e in #( e) 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* | ironclad*) # Under GNU Hurd and Ironclad, 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* | windows* | 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; ;; mint*) # On MiNT this can take a long time and run out of memory. 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; ;; darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*) # 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 ;; os2*) # The test takes a long time on OS/2. lt_cv_sys_max_cmd_len=8192 ;; 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" && \ test undefined != "$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`env echo "$teststring$teststring" 2>/dev/null` \ = "X$teststring$teststring"; } >/dev/null 2>&1 && test 17 != "$i" # 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 ;; esac fi if test -n "$lt_cv_sys_max_cmd_len"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 printf "%s\n" "$lt_cv_sys_max_cmd_len" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none" >&5 printf "%s\n" "none" >&6; } fi max_cmd_len=$lt_cv_sys_max_cmd_len : ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then lt_unset=unset else lt_unset=false fi # 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 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5 printf %s "checking how to convert $build file names to $host format... " >&6; } if test ${lt_cv_to_host_file_cmd+y} then : printf %s "(cached) " >&6 else case e in #( e) case $host in *-*-mingw* ) case $build in *-*-mingw* | *-*-windows* ) # actually msys lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 ;; *-*-cygwin* ) lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 ;; * ) # otherwise, assume *nix lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 ;; esac ;; *-*-cygwin* ) case $build in *-*-mingw* | *-*-windows* ) # actually msys lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin ;; *-*-cygwin* ) lt_cv_to_host_file_cmd=func_convert_file_noop ;; * ) # otherwise, assume *nix lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin ;; esac ;; * ) # unhandled hosts (and "normal" native builds) lt_cv_to_host_file_cmd=func_convert_file_noop ;; esac ;; esac fi to_host_file_cmd=$lt_cv_to_host_file_cmd { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5 printf "%s\n" "$lt_cv_to_host_file_cmd" >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5 printf %s "checking how to convert $build file names to toolchain format... " >&6; } if test ${lt_cv_to_tool_file_cmd+y} then : printf %s "(cached) " >&6 else case e in #( e) #assume ordinary cross tools, or native build. lt_cv_to_tool_file_cmd=func_convert_file_noop case $host in *-*-mingw* | *-*-windows* ) case $build in *-*-mingw* | *-*-windows* ) # actually msys lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 ;; esac ;; esac ;; esac fi to_tool_file_cmd=$lt_cv_to_tool_file_cmd { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5 printf "%s\n" "$lt_cv_to_tool_file_cmd" >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5 printf %s "checking for $LD option to reload object files... " >&6; } if test ${lt_cv_ld_reload_flag+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_ld_reload_flag='-r' ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5 printf "%s\n" "$lt_cv_ld_reload_flag" >&6; } 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 cygwin* | mingw* | windows* | pw32* | cegcc*) if test yes != "$GCC"; then reload_cmds=false fi ;; darwin*) if test yes = "$GCC"; then reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs' else reload_cmds='$LD$reload_flag -o $output$reload_objs' fi ;; esac # Extract the first word of "file", so it can be a program name with args. set dummy file; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_FILECMD+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$FILECMD"; then ac_cv_prog_FILECMD="$FILECMD" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_FILECMD="file" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_prog_FILECMD" && ac_cv_prog_FILECMD=":" fi ;; esac fi FILECMD=$ac_cv_prog_FILECMD if test -n "$FILECMD"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $FILECMD" >&5 printf "%s\n" "$FILECMD" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args. set dummy ${ac_tool_prefix}objdump; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_OBJDUMP+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$OBJDUMP"; then ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi OBJDUMP=$ac_cv_prog_OBJDUMP if test -n "$OBJDUMP"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 printf "%s\n" "$OBJDUMP" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_OBJDUMP"; then ac_ct_OBJDUMP=$OBJDUMP # Extract the first word of "objdump", so it can be a program name with args. set dummy objdump; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_OBJDUMP+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_OBJDUMP"; then ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_OBJDUMP="objdump" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP if test -n "$ac_ct_OBJDUMP"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5 printf "%s\n" "$ac_ct_OBJDUMP" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_OBJDUMP" = x; then OBJDUMP="false" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OBJDUMP=$ac_ct_OBJDUMP fi else OBJDUMP="$ac_cv_prog_OBJDUMP" fi test -z "$OBJDUMP" && OBJDUMP=objdump { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5 printf %s "checking how to recognize dependent libraries... " >&6; } if test ${lt_cv_deplibs_check_method+y} then : printf %s "(cached) " >&6 else case e in #( e) 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. # 'file_magic [[regex]]' -- check by looking for files in library path # that 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='$FILECMD -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* | windows* | 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 # Keep this pattern in sync with the one in func_win32_libid. lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64|pe-aarch64)' 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* | midnightbsd*) 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=$FILECMD lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac else lt_cv_deplibs_check_method=pass_all fi ;; haiku*) lt_cv_deplibs_check_method=pass_all ;; hpux10.20* | hpux11*) lt_cv_file_magic_cmd=$FILECMD 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])(-bit)?( [LM]SB)? 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 glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) lt_cv_deplibs_check_method=pass_all ;; *-mlibc) 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=$FILECMD 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__`"; 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 ;; serenity*) 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 ;; os2*) lt_cv_deplibs_check_method=pass_all ;; esac ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5 printf "%s\n" "$lt_cv_deplibs_check_method" >&6; } file_magic_glob= want_nocaseglob=no if test "$build" = "$host"; then case $host_os in mingw* | windows* | pw32*) if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then want_nocaseglob=yes else file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"` fi ;; esac fi 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 if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args. set dummy ${ac_tool_prefix}dlltool; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_DLLTOOL+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$DLLTOOL"; then ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi DLLTOOL=$ac_cv_prog_DLLTOOL if test -n "$DLLTOOL"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5 printf "%s\n" "$DLLTOOL" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_DLLTOOL"; then ac_ct_DLLTOOL=$DLLTOOL # Extract the first word of "dlltool", so it can be a program name with args. set dummy dlltool; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_DLLTOOL+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_DLLTOOL"; then ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_DLLTOOL="dlltool" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL if test -n "$ac_ct_DLLTOOL"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5 printf "%s\n" "$ac_ct_DLLTOOL" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_DLLTOOL" = x; then DLLTOOL="false" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac DLLTOOL=$ac_ct_DLLTOOL fi else DLLTOOL="$ac_cv_prog_DLLTOOL" fi test -z "$DLLTOOL" && DLLTOOL=dlltool { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5 printf %s "checking how to associate runtime and link libraries... " >&6; } if test ${lt_cv_sharedlib_from_linklib_cmd+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_sharedlib_from_linklib_cmd='unknown' case $host_os in cygwin* | mingw* | windows* | pw32* | cegcc*) # two different shell functions defined in ltmain.sh; # decide which one to use based on capabilities of $DLLTOOL case `$DLLTOOL --help 2>&1` in *--identify-strict*) lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib ;; *) lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback ;; esac ;; *) # fallback: assume linklib IS sharedlib lt_cv_sharedlib_from_linklib_cmd=$ECHO ;; esac ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5 printf "%s\n" "$lt_cv_sharedlib_from_linklib_cmd" >&6; } sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_RANLIB+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$RANLIB"; then ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 printf "%s\n" "$RANLIB" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_RANLIB"; then ac_ct_RANLIB=$RANLIB # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_RANLIB+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_RANLIB"; then ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_RANLIB="ranlib" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 printf "%s\n" "$ac_ct_RANLIB" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_RANLIB" = x; then RANLIB=":" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac RANLIB=$ac_ct_RANLIB fi else RANLIB="$ac_cv_prog_RANLIB" fi if test -n "$ac_tool_prefix"; then for ac_prog in ar do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_AR+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$AR"; then ac_cv_prog_AR="$AR" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_AR="$ac_tool_prefix$ac_prog" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi AR=$ac_cv_prog_AR if test -n "$AR"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 printf "%s\n" "$AR" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi test -n "$AR" && break done fi if test -z "$AR"; then ac_ct_AR=$AR for ac_prog in ar do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_AR+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_AR"; then ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_AR="$ac_prog" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_AR=$ac_cv_prog_ac_ct_AR if test -n "$ac_ct_AR"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 printf "%s\n" "$ac_ct_AR" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi test -n "$ac_ct_AR" && break done if test "x$ac_ct_AR" = x; then AR="false" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac AR=$ac_ct_AR fi fi : ${AR=ar} # Use ARFLAGS variable as AR's operation code to sync the variable naming with # Automake. If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have # higher priority because that's what people were doing historically (setting # ARFLAGS for automake and AR_FLAGS for libtool). FIXME: Make the AR_FLAGS # variable obsoleted/removed. test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr} lt_ar_flags=$AR_FLAGS # Make AR_FLAGS overridable by 'make ARFLAGS='. Don't try to run-time override # by AR_FLAGS because that was never working and AR_FLAGS is about to die. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5 printf %s "checking for archiver @FILE support... " >&6; } if test ${lt_cv_ar_at_file+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_ar_at_file=no cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : echo conftest.$ac_objext > conftest.lst lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5' { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 (eval $lt_ar_try) 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if test 0 -eq "$ac_status"; then # Ensure the archiver fails upon bogus file names. rm -f conftest.$ac_objext libconftest.a { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 (eval $lt_ar_try) 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if test 0 -ne "$ac_status"; then lt_cv_ar_at_file=@ fi fi rm -f conftest.* libconftest.a fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5 printf "%s\n" "$lt_cv_ar_at_file" >&6; } if test no = "$lt_cv_ar_at_file"; then archiver_list_spec= else archiver_list_spec=$lt_cv_ar_at_file fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_STRIP+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 printf "%s\n" "$STRIP" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_STRIP+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_STRIP="strip" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 printf "%s\n" "$ac_ct_STRIP" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_STRIP" = x; then STRIP=":" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac STRIP=$ac_ct_STRIP fi else STRIP="$ac_cv_prog_STRIP" fi test -z "$STRIP" && STRIP=: test -z "$RANLIB" && RANLIB=: # 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 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" fi case $host_os in darwin*) lock_old_archive_extraction=yes ;; *) lock_old_archive_extraction=no ;; esac # 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 # Check for command to grab the raw symbol name followed by C symbol from nm. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5 printf %s "checking command to parse $NM output from $compiler object... " >&6; } if test ${lt_cv_sys_global_symbol_pipe+y} then : printf %s "(cached) " >&6 else case e in #( e) # 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* | windows* | pw32* | cegcc*) symcode='[ABCDGISTW]' ;; hpux*) if test ia64 = "$host_cpu"; then symcode='[ABCDEGRST]' fi ;; irix* | nonstopux*) symcode='[BCDEGRST]' ;; osf*) symcode='[BCDEGQRST]' ;; solaris*) symcode='[BCDRT]' ;; 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 if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Gets list of data symbols to import. lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'" # Adjust the below global symbol transforms to fixup imported variables. lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" lt_c_name_lib_hook="\ -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" else # Disable hooks by default. lt_cv_sys_global_symbol_to_import= lt_cdecl_hook= lt_c_name_hook= lt_c_name_lib_hook= fi # 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"\ $lt_cdecl_hook\ " -e 's/^T .* \(.*\)$/extern int \1();/p'"\ " -e 's/^$symcode$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"\ $lt_c_name_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" # Transform an extracted symbol line into symbol name with lib prefix and # symbol address. lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\ $lt_c_name_lib_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" # Handle CRLF in mingw tool chain opt_cr= case $build_os in mingw* | windows*) 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, # D for any global variable and I for any imported variable. # Also find C++ and __fastcall symbols from MSVC++ or ICC, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK '"\ " {last_section=section; section=\$ 3};"\ " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ " /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ " /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ " /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ " {if(hide[section]) next};"\ " {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ " {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ " s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ " s[1]~prfx {split(s[1],t,\"@\"); print f,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 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'" # 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(void){nm_test_var='a';nm_test_func();return(0);} _LT_EOF if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then # Now try to grab the symbols. nlist=conftest.nm $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&5 if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&5 && 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 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE /* DATA imports from DLLs on WIN32 can't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */ # define LT_DLSYM_CONST #elif defined __osf__ /* This system does not cope well with relocations in const data. */ # define LT_DLSYM_CONST #else # define LT_DLSYM_CONST const #endif #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. */ LT_DLSYM_CONST struct { const char *name; void *address; } lt__PROGRAM__LTX_preloaded_symbols[] = { { "@PROGRAM@", (void *) 0 }, _LT_EOF $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$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_globsym_save_LIBS=$LIBS lt_globsym_save_CFLAGS=$CFLAGS LIBS=conftstm.$ac_objext CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag" if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s conftest$ac_exeext; then pipe_works=yes fi LIBS=$lt_globsym_save_LIBS CFLAGS=$lt_globsym_save_CFLAGS else echo "cannot find nm_test_func in $nlist" >&5 fi else echo "cannot find nm_test_var in $nlist" >&5 fi else echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5 fi else echo "$progname: failed program was:" >&5 cat conftest.$ac_ext >&5 fi rm -rf conftest* conftst* # Do not use the global_symbol_pipe unless it works. if test yes = "$pipe_works"; then break else lt_cv_sys_global_symbol_pipe= fi done ;; esac fi 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 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: failed" >&5 printf "%s\n" "failed" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ok" >&5 printf "%s\n" "ok" >&6; } fi # Response file support. if test "$lt_cv_nm_interface" = "MS dumpbin"; then nm_file_list_spec='@' elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then nm_file_list_spec='@' fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5 printf %s "checking for sysroot... " >&6; } # Check whether --with-sysroot was given. if test ${with_sysroot+y} then : withval=$with_sysroot; else case e in #( e) with_sysroot=no ;; esac fi lt_sysroot= case $with_sysroot in #( yes) if test yes = "$GCC"; then # Trim trailing / since we'll always append absolute paths and we want # to avoid //, if only for less confusing output for the user. lt_sysroot=`$CC --print-sysroot 2>/dev/null | $SED 's:/\+$::'` fi ;; #( /*) lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"` ;; #( no|'') ;; #( *) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5 printf "%s\n" "$with_sysroot" >&6; } as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5 ;; esac { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5 printf "%s\n" "${lt_sysroot:-no}" >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5 printf %s "checking for a working dd... " >&6; } if test ${ac_cv_path_lt_DD+y} then : printf %s "(cached) " >&6 else case e in #( e) printf 0123456789abcdef0123456789abcdef >conftest.i cat conftest.i conftest.i >conftest2.i : ${lt_DD:=$DD} if test -z "$lt_DD"; then ac_path_lt_DD_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_prog in dd do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_lt_DD="$as_dir$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_lt_DD" || continue if "$ac_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then cmp -s conftest.i conftest.out \ && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: fi $ac_path_lt_DD_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_lt_DD"; then : fi else ac_cv_path_lt_DD=$lt_DD fi rm -f conftest.i conftest2.i conftest.out ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5 printf "%s\n" "$ac_cv_path_lt_DD" >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5 printf %s "checking how to truncate binary pipes... " >&6; } if test ${lt_cv_truncate_bin+y} then : printf %s "(cached) " >&6 else case e in #( e) printf 0123456789abcdef0123456789abcdef >conftest.i cat conftest.i conftest.i >conftest2.i lt_cv_truncate_bin= if "$ac_cv_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then cmp -s conftest.i conftest.out \ && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" fi rm -f conftest.i conftest2.i conftest.out test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q" ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5 printf "%s\n" "$lt_cv_truncate_bin" >&6; } # Calculate cc_basename. Skip known compiler wrappers and cross-prefix. func_cc_basename () { for cc_temp in $*""; do case $cc_temp in compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; \-*) ;; *) break;; esac done func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` } # Check whether --enable-libtool-lock was given. if test ${enable_libtool_lock+y} then : enableval=$enable_libtool_lock; fi test no = "$enable_libtool_lock" || 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 what ABI is being produced by ac_compile, and set mode # options accordingly. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `$FILECMD conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE=32 ;; *ELF-64*) HPUX_IA64_MODE=64 ;; esac fi rm -rf conftest* ;; *-*-irix6*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. echo '#line '$LINENO' "configure"' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then if test yes = "$lt_cv_prog_gnu_ld"; then case `$FILECMD conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; *N32*) LD="${LD-ld} -melf32bmipn32" ;; *64-bit*) LD="${LD-ld} -melf64bmip" ;; esac else case `$FILECMD 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* ;; mips64*-*linux*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. echo '#line '$LINENO' "configure"' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then emul=elf case `$FILECMD conftest.$ac_objext` in *32-bit*) emul="${emul}32" ;; *64-bit*) emul="${emul}64" ;; esac case `$FILECMD conftest.$ac_objext` in *MSB*) emul="${emul}btsmip" ;; *LSB*) emul="${emul}ltsmip" ;; esac case `$FILECMD conftest.$ac_objext` in *N32*) emul="${emul}n32" ;; esac LD="${LD-ld} -m $emul" fi rm -rf conftest* ;; x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-gnu*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. Note that the listed cases only cover the # situations where additional linker options are needed (such as when # doing 32-bit compilation for a host where ld defaults to 64-bit, or # vice versa); the common cases where no linker options are needed do # not appear in the list. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `$FILECMD conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*|x86_64-gnu*) case `$FILECMD conftest.o` in *x86-64*) LD="${LD-ld} -m elf32_x86_64" ;; *) LD="${LD-ld} -m elf_i386" ;; esac ;; powerpc64le-*linux*) LD="${LD-ld} -m elf32lppclinux" ;; 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*|x86_64-gnu*) LD="${LD-ld} -m elf_x86_64" ;; powerpcle-*linux*) LD="${LD-ld} -m elf64lppc" ;; 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" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 printf %s "checking whether the C compiler needs -belf... " >&6; } if test ${lt_cv_cc_needs_belf+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : lt_cv_cc_needs_belf=yes else case e in #( e) lt_cv_cc_needs_belf=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 printf "%s\n" "$lt_cv_cc_needs_belf" >&6; } if test yes != "$lt_cv_cc_needs_belf"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf CFLAGS=$SAVE_CFLAGS fi ;; *-*solaris*) # Find out what ABI is being produced by ac_compile, and set linker # options accordingly. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `$FILECMD conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) case $host in i?86-*-solaris*|x86_64-*-solaris*) LD="${LD-ld} -m elf_x86_64" ;; sparc*-*-solaris*) LD="${LD-ld} -m elf64_sparc" ;; esac # GNU ld 2.21 introduced _sol2 emulations. Use them if available. if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then LD=${LD-ld}_sol2 fi ;; *) 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 if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args. set dummy ${ac_tool_prefix}mt; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_MANIFEST_TOOL+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$MANIFEST_TOOL"; then ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL if test -n "$MANIFEST_TOOL"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5 printf "%s\n" "$MANIFEST_TOOL" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_MANIFEST_TOOL"; then ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL # Extract the first word of "mt", so it can be a program name with args. set dummy mt; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_MANIFEST_TOOL+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_MANIFEST_TOOL"; then ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_MANIFEST_TOOL="mt" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL if test -n "$ac_ct_MANIFEST_TOOL"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5 printf "%s\n" "$ac_ct_MANIFEST_TOOL" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_MANIFEST_TOOL" = x; then MANIFEST_TOOL=":" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL fi else MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL" fi test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5 printf %s "checking if $MANIFEST_TOOL is a manifest tool... " >&6; } if test ${lt_cv_path_manifest_tool+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_path_manifest_tool=no echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out cat conftest.err >&5 if $GREP 'Manifest Tool' conftest.out > /dev/null; then lt_cv_path_manifest_tool=yes fi rm -f conftest* ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_manifest_tool" >&5 printf "%s\n" "$lt_cv_path_manifest_tool" >&6; } if test yes != "$lt_cv_path_manifest_tool"; then MANIFEST_TOOL=: fi case $host_os in rhapsody* | darwin*) if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args. set dummy ${ac_tool_prefix}dsymutil; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_DSYMUTIL+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$DSYMUTIL"; then ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi DSYMUTIL=$ac_cv_prog_DSYMUTIL if test -n "$DSYMUTIL"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5 printf "%s\n" "$DSYMUTIL" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_DSYMUTIL"; then ac_ct_DSYMUTIL=$DSYMUTIL # Extract the first word of "dsymutil", so it can be a program name with args. set dummy dsymutil; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_DSYMUTIL+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_DSYMUTIL"; then ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_DSYMUTIL="dsymutil" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL if test -n "$ac_ct_DSYMUTIL"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5 printf "%s\n" "$ac_ct_DSYMUTIL" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_DSYMUTIL" = x; then DSYMUTIL=":" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac DSYMUTIL=$ac_ct_DSYMUTIL fi else DSYMUTIL="$ac_cv_prog_DSYMUTIL" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args. set dummy ${ac_tool_prefix}nmedit; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_NMEDIT+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$NMEDIT"; then ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi NMEDIT=$ac_cv_prog_NMEDIT if test -n "$NMEDIT"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5 printf "%s\n" "$NMEDIT" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_NMEDIT"; then ac_ct_NMEDIT=$NMEDIT # Extract the first word of "nmedit", so it can be a program name with args. set dummy nmedit; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_NMEDIT+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_NMEDIT"; then ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_NMEDIT="nmedit" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT if test -n "$ac_ct_NMEDIT"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5 printf "%s\n" "$ac_ct_NMEDIT" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_NMEDIT" = x; then NMEDIT=":" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac NMEDIT=$ac_ct_NMEDIT fi else NMEDIT="$ac_cv_prog_NMEDIT" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args. set dummy ${ac_tool_prefix}lipo; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_LIPO+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$LIPO"; then ac_cv_prog_LIPO="$LIPO" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_LIPO="${ac_tool_prefix}lipo" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi LIPO=$ac_cv_prog_LIPO if test -n "$LIPO"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5 printf "%s\n" "$LIPO" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_LIPO"; then ac_ct_LIPO=$LIPO # Extract the first word of "lipo", so it can be a program name with args. set dummy lipo; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_LIPO+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_LIPO"; then ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_LIPO="lipo" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO if test -n "$ac_ct_LIPO"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5 printf "%s\n" "$ac_ct_LIPO" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_LIPO" = x; then LIPO=":" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac LIPO=$ac_ct_LIPO fi else LIPO="$ac_cv_prog_LIPO" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args. set dummy ${ac_tool_prefix}otool; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_OTOOL+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$OTOOL"; then ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_OTOOL="${ac_tool_prefix}otool" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi OTOOL=$ac_cv_prog_OTOOL if test -n "$OTOOL"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5 printf "%s\n" "$OTOOL" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_OTOOL"; then ac_ct_OTOOL=$OTOOL # Extract the first word of "otool", so it can be a program name with args. set dummy otool; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_OTOOL+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_OTOOL"; then ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_OTOOL="otool" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL if test -n "$ac_ct_OTOOL"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5 printf "%s\n" "$ac_ct_OTOOL" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_OTOOL" = x; then OTOOL=":" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OTOOL=$ac_ct_OTOOL fi else OTOOL="$ac_cv_prog_OTOOL" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args. set dummy ${ac_tool_prefix}otool64; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_OTOOL64+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$OTOOL64"; then ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi OTOOL64=$ac_cv_prog_OTOOL64 if test -n "$OTOOL64"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5 printf "%s\n" "$OTOOL64" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_prog_OTOOL64"; then ac_ct_OTOOL64=$OTOOL64 # Extract the first word of "otool64", so it can be a program name with args. set dummy otool64; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_OTOOL64+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$ac_ct_OTOOL64"; then ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_OTOOL64="otool64" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64 if test -n "$ac_ct_OTOOL64"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5 printf "%s\n" "$ac_ct_OTOOL64" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_ct_OTOOL64" = x; then OTOOL64=":" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OTOOL64=$ac_ct_OTOOL64 fi else OTOOL64="$ac_cv_prog_OTOOL64" fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5 printf %s "checking for -single_module linker flag... " >&6; } if test ${lt_cv_apple_cc_single_mod+y} then : printf %s "(cached) " >&6 else case e in #( e) 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" >&5 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c 2>conftest.err _lt_result=$? # If there is a non-empty error log, and "single_module" # appears in it, assume the flag caused a linker warning if test -s conftest.err && $GREP single_module conftest.err; then cat conftest.err >&5 # Otherwise, if the output was created with a 0 exit code from # the compiler, it worked. elif test -f libconftest.dylib && test 0 = "$_lt_result"; then lt_cv_apple_cc_single_mod=yes else cat conftest.err >&5 fi rm -rf libconftest.dylib* rm -f conftest.* fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5 printf "%s\n" "$lt_cv_apple_cc_single_mod" >&6; } # Feature test to disable chained fixups since it is not # compatible with '-undefined dynamic_lookup' { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -no_fixup_chains linker flag" >&5 printf %s "checking for -no_fixup_chains linker flag... " >&6; } if test ${lt_cv_support_no_fixup_chains+y} then : printf %s "(cached) " >&6 else case e in #( e) save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS -Wl,-no_fixup_chains" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : lt_cv_support_no_fixup_chains=yes else case e in #( e) lt_cv_support_no_fixup_chains=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$save_LDFLAGS ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_support_no_fixup_chains" >&5 printf "%s\n" "$lt_cv_support_no_fixup_chains" >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5 printf %s "checking for -exported_symbols_list linker flag... " >&6; } if test ${lt_cv_ld_exported_symbols_list+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_ld_exported_symbols_list=no save_LDFLAGS=$LDFLAGS echo "_main" > conftest.sym LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : lt_cv_ld_exported_symbols_list=yes else case e in #( e) lt_cv_ld_exported_symbols_list=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$save_LDFLAGS ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5 printf "%s\n" "$lt_cv_ld_exported_symbols_list" >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5 printf %s "checking for -force_load linker flag... " >&6; } if test ${lt_cv_ld_force_load+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_ld_force_load=no cat > conftest.c << _LT_EOF int forced_loaded() { return 2;} _LT_EOF echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5 echo "$AR $AR_FLAGS libconftest.a conftest.o" >&5 $AR $AR_FLAGS libconftest.a conftest.o 2>&5 echo "$RANLIB libconftest.a" >&5 $RANLIB libconftest.a 2>&5 cat > conftest.c << _LT_EOF int main(void) { return 0;} _LT_EOF echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err _lt_result=$? if test -s conftest.err && $GREP force_load conftest.err; then cat conftest.err >&5 elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then lt_cv_ld_force_load=yes else cat conftest.err >&5 fi rm -f conftest.err libconftest.a conftest conftest.c rm -rf conftest.dSYM ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5 printf "%s\n" "$lt_cv_ld_force_load" >&6; } 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*) case $MACOSX_DEPLOYMENT_TARGET,$host in 10.[012],*|,*powerpc*-darwin[5-8]*) _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; *) _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' if test yes = "$lt_cv_support_no_fixup_chains"; then as_fn_append _lt_dar_allow_undefined ' $wl-no_fixup_chains' fi ;; esac ;; esac if test yes = "$lt_cv_apple_cc_single_mod"; then _lt_dar_single_mod='$single_module' fi _lt_dar_needs_single_mod=no case $host_os in rhapsody* | darwin1.*) _lt_dar_needs_single_mod=yes ;; darwin*) # When targeting Mac OS X 10.4 (darwin 8) or later, # -single_module is the default and -multi_module is unsupported. # The toolchain on macOS 10.14 (darwin 18) and later cannot # target any OS version that needs -single_module. case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 10.0,*-darwin[567].*|10.[0-3],*-darwin[5-9].*|10.[0-3],*-darwin1[0-7].*) _lt_dar_needs_single_mod=yes ;; esac ;; esac if test yes = "$lt_cv_ld_exported_symbols_list"; 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" && test no = "$lt_cv_ld_force_load"; then _lt_dsymutil='~$DSYMUTIL $lib || :' else _lt_dsymutil= fi ;; esac # func_munge_path_list VARIABLE PATH # ----------------------------------- # VARIABLE is name of variable containing _space_ separated list of # directories to be munged by the contents of PATH, which is string # having a format: # "DIR[:DIR]:" # string "DIR[ DIR]" will be prepended to VARIABLE # ":DIR[:DIR]" # string "DIR[ DIR]" will be appended to VARIABLE # "DIRP[:DIRP]::[DIRA:]DIRA" # string "DIRP[ DIRP]" will be prepended to VARIABLE and string # "DIRA[ DIRA]" will be appended to VARIABLE # "DIR[:DIR]" # VARIABLE will be replaced by "DIR[ DIR]" func_munge_path_list () { case x$2 in x) ;; *:) eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" ;; x:*) eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" ;; *::*) eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" ;; *) eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" ;; esac } ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default " if test "x$ac_cv_header_dlfcn_h" = xyes then : printf "%s\n" "#define HAVE_DLFCN_H 1" >>confdefs.h fi # Set options enable_dlopen=no enable_win32_dll=no # Check whether --enable-shared was given. if test ${enable_shared+y} then : enableval=$enable_shared; 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 else case e in #( e) enable_shared=yes ;; esac fi # Check whether --enable-pic was given. if test ${enable_pic+y} then : enableval=$enable_pic; lt_p=${PACKAGE-default} case $enableval in yes|no) pic_mode=$enableval ;; *) pic_mode=default # Look at the argument we got. We use all the common list separators. lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for lt_pkg in $enableval; do IFS=$lt_save_ifs if test "X$lt_pkg" = "X$lt_p"; then pic_mode=yes fi done IFS=$lt_save_ifs ;; esac else case e in #( e) # Check whether --with-pic was given. if test ${with_pic+y} then : withval=$with_pic; lt_p=${PACKAGE-default} case $withval in yes|no) pic_mode=$withval ;; *) pic_mode=default # Look at the argument we got. We use all the common list separators. lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for lt_pkg in $withval; do IFS=$lt_save_ifs if test "X$lt_pkg" = "X$lt_p"; then pic_mode=yes fi done IFS=$lt_save_ifs ;; esac else case e in #( e) pic_mode=default ;; esac fi ;; esac fi # Check whether --enable-fast-install was given. if test ${enable_fast_install+y} then : enableval=$enable_fast_install; 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 else case e in #( e) enable_fast_install=yes ;; esac fi shared_archive_member_spec= case $host,$enable_shared in power*-*-aix[5-9]*,yes) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5 printf %s "checking which variant of shared library versioning to provide... " >&6; } # Check whether --enable-aix-soname was given. if test ${enable_aix_soname+y} then : enableval=$enable_aix_soname; case $enableval in aix|svr4|both) ;; *) as_fn_error $? "Unknown argument to --enable-aix-soname" "$LINENO" 5 ;; esac lt_cv_with_aix_soname=$enable_aix_soname else case e in #( e) # Check whether --with-aix-soname was given. if test ${with_aix_soname+y} then : withval=$with_aix_soname; case $withval in aix|svr4|both) ;; *) as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 5 ;; esac lt_cv_with_aix_soname=$with_aix_soname else case e in #( e) if test ${lt_cv_with_aix_soname+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_with_aix_soname=aix ;; esac fi ;; esac fi enable_aix_soname=$lt_cv_with_aix_soname ;; esac fi with_aix_soname=$enable_aix_soname { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5 printf "%s\n" "$with_aix_soname" >&6; } if test aix != "$with_aix_soname"; then # For the AIX way of multilib, we name the shared archive member # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o', # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File. # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag, # the AIX toolchain works better with OBJECT_MODE set (default 32). if test 64 = "${OBJECT_MODE-32}"; then shared_archive_member_spec=shr_64 else shared_archive_member_spec=shr fi fi ;; *) with_aix_soname=aix ;; esac # This can be used to rebuild libtool when needed LIBTOOL_DEPS=$ltmain # Always use our own libtool. LIBTOOL='$(SHELL) $(top_builddir)/libtool' test -z "$LN_S" && LN_S="ln -s" if test -n "${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 printf %s "checking for objdir... " >&6; } if test ${lt_cv_objdir+y} then : printf %s "(cached) " >&6 else case e in #( e) 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 ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5 printf "%s\n" "$lt_cv_objdir" >&6; } objdir=$lt_cv_objdir printf "%s\n" "#define LT_OBJDIR \"$lt_cv_objdir/\"" >>confdefs.h 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 set != "${COLLECT_NAMES+set}"; then COLLECT_NAMES= export COLLECT_NAMES fi ;; esac # Global variables: ofile=libtool can_build_shared=yes # All known linkers require a '.a' archive for static linking (except MSVC and # ICC, which need '.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 func_cc_basename $compiler cc_basename=$func_cc_basename_result # 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 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5 printf %s "checking for ${ac_tool_prefix}file... " >&6; } if test ${lt_cv_path_MAGIC_CMD+y} then : printf %s "(cached) " >&6 else case e in #( e) 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 ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" for ac_dir in $ac_dummy; do IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/${ac_tool_prefix}file"; then lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file" 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 ;; esac fi MAGIC_CMD=$lt_cv_path_MAGIC_CMD if test -n "$MAGIC_CMD"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 printf "%s\n" "$MAGIC_CMD" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for file" >&5 printf %s "checking for file... " >&6; } if test ${lt_cv_path_MAGIC_CMD+y} then : printf %s "(cached) " >&6 else case e in #( e) 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 ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" for ac_dir in $ac_dummy; do IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/file"; then lt_cv_path_MAGIC_CMD=$ac_dir/"file" 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 ;; esac fi MAGIC_CMD=$lt_cv_path_MAGIC_CMD if test -n "$MAGIC_CMD"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 printf "%s\n" "$MAGIC_CMD" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi else MAGIC_CMD=: fi fi fi ;; esac # Use C for the default configuration in the libtool script lt_save_CC=$CC ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu # Source file extension for C test sources. ac_ext=c # Object file extension for compiled C test sources. objext=o objext=$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(void){return(0);}' # 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 # 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 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* 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* ## 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= if test yes = "$GCC"; then case $cc_basename in nvcc*) lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;; *) lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;; esac { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 printf %s "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } if test ${lt_cv_prog_compiler_rtti_exceptions+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_prog_compiler_rtti_exceptions=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-fno-rtti -fno-exceptions" ## exclude from sc_useless_quotes_in_assignment # 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:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $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. $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_rtti_exceptions=yes fi fi $RM conftest* ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 printf "%s\n" "$lt_cv_prog_compiler_rtti_exceptions" >&6; } if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions" else : fi fi lt_prog_compiler_wl= lt_prog_compiler_pic= lt_prog_compiler_static= if test yes = "$GCC"; then lt_prog_compiler_wl='-Wl,' lt_prog_compiler_static='-static' case $host_os in aix*) # All AIX code is PIC. if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' fi lt_prog_compiler_pic='-fPIC' ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support lt_prog_compiler_pic='-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_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | windows* | 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 lt_prog_compiler_pic='-DDLL_EXPORT' case $host_os in os2*) lt_prog_compiler_static='$wl-static' ;; esac ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files lt_prog_compiler_pic='-fno-common' ;; haiku*) # PIC is the default for Haiku. # The "-static" flag exists, but is broken. lt_prog_compiler_static= ;; 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_prog_compiler_pic='-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_prog_compiler_can_build_shared=no enable_shared=no ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. lt_prog_compiler_pic='-fPIC -shared' ;; sysv4*MP*) if test -d /usr/nec; then lt_prog_compiler_pic=-Kconform_pic fi ;; *) lt_prog_compiler_pic='-fPIC' ;; esac case $cc_basename in nvcc*) # Cuda Compiler Driver 2.2 lt_prog_compiler_wl='-Xlinker ' if test -n "$lt_prog_compiler_pic"; then lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic" fi ;; esac else # PORTME Check for flag to pass linker flags through the system compiler. case $host_os in aix*) lt_prog_compiler_wl='-Wl,' if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' else lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp' fi ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files lt_prog_compiler_pic='-fno-common' case $cc_basename in nagfor*) # NAG Fortran compiler lt_prog_compiler_wl='-Wl,-Wl,,' lt_prog_compiler_pic='-PIC' lt_prog_compiler_static='-Bstatic' ;; esac ;; mingw* | windows* | 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). lt_prog_compiler_pic='-DDLL_EXPORT' case $host_os in os2*) lt_prog_compiler_static='$wl-static' ;; esac ;; hpux9* | hpux10* | hpux11*) lt_prog_compiler_wl='-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_prog_compiler_pic='+Z' ;; esac # Is there a better lt_prog_compiler_static that works with the bundled CC? lt_prog_compiler_static='$wl-a ${wl}archive' ;; irix5* | irix6* | nonstopux*) lt_prog_compiler_wl='-Wl,' # PIC (with -KPIC) is the default. lt_prog_compiler_static='-non_shared' ;; linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in # old Intel for x86_64, which still supported -KPIC. ecc*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-static' ;; *flang* | ftn | f18* | f95*) # Flang compiler. lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; # icc used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. icc* | ifort*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; # Lahey Fortran 8.1. lf95*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='--shared' lt_prog_compiler_static='--static' ;; nagfor*) # NAG Fortran compiler lt_prog_compiler_wl='-Wl,-Wl,,' lt_prog_compiler_pic='-PIC' lt_prog_compiler_static='-Bstatic' ;; tcc*) # Fabrice Bellard et al's Tiny C Compiler lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group compilers (*not* the Pentium gcc compiler, # which looks to be a dead project) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fpic' lt_prog_compiler_static='-Bstatic' ;; ccc*) lt_prog_compiler_wl='-Wl,' # All Alpha code is PIC. lt_prog_compiler_static='-non_shared' ;; xl* | bgxl* | bgf* | mpixl*) # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-qpic' lt_prog_compiler_static='-qstaticlink' ;; *) case `$CC -V 2>&1 | $SED 5q` in *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*) # Sun Fortran 8.3 passes all unrecognized flags to the linker lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='' ;; *Sun\ F* | *Sun*Fortran*) lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='-Qoption ld ' ;; *Sun\ C*) # Sun C 5.9 lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='-Wl,' ;; *Intel*\ [CF]*Compiler*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; *Portland\ Group*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fpic' lt_prog_compiler_static='-Bstatic' ;; esac ;; esac ;; newsos6) lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' ;; *-mlibc) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. lt_prog_compiler_pic='-fPIC -shared' ;; osf3* | osf4* | osf5*) lt_prog_compiler_wl='-Wl,' # All OSF/1 code is PIC. lt_prog_compiler_static='-non_shared' ;; rdos*) lt_prog_compiler_static='-non_shared' ;; serenity*) ;; solaris*) lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' case $cc_basename in f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) lt_prog_compiler_wl='-Qoption ld ';; *) lt_prog_compiler_wl='-Wl,';; esac ;; sunos4*) lt_prog_compiler_wl='-Qoption ld ' lt_prog_compiler_pic='-PIC' lt_prog_compiler_static='-Bstatic' ;; sysv4 | sysv4.2uw2* | sysv4.3*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' ;; sysv4*MP*) if test -d /usr/nec; then lt_prog_compiler_pic='-Kconform_pic' lt_prog_compiler_static='-Bstatic' fi ;; sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' ;; unicos*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_can_build_shared=no ;; uts4*) lt_prog_compiler_pic='-pic' lt_prog_compiler_static='-Bstatic' ;; *) lt_prog_compiler_can_build_shared=no ;; esac fi case $host_os in # For platforms that do not support PIC, -DPIC is meaningless: *djgpp*) lt_prog_compiler_pic= ;; *) lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC" ;; esac { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 printf %s "checking for $compiler option to produce PIC... " >&6; } if test ${lt_cv_prog_compiler_pic+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_prog_compiler_pic=$lt_prog_compiler_pic ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5 printf "%s\n" "$lt_cv_prog_compiler_pic" >&6; } lt_prog_compiler_pic=$lt_cv_prog_compiler_pic # # Check to make sure the PIC flag actually works. # if test -n "$lt_prog_compiler_pic"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 printf %s "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } if test ${lt_cv_prog_compiler_pic_works+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_prog_compiler_pic_works=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="$lt_prog_compiler_pic -DPIC" ## exclude from sc_useless_quotes_in_assignment # 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:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $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. $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_pic_works=yes fi fi $RM conftest* ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5 printf "%s\n" "$lt_cv_prog_compiler_pic_works" >&6; } if test yes = "$lt_cv_prog_compiler_pic_works"; then case $lt_prog_compiler_pic in "" | " "*) ;; *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;; esac else lt_prog_compiler_pic= lt_prog_compiler_can_build_shared=no fi fi # # Check to make sure the static flag actually works. # wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 printf %s "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } if test ${lt_cv_prog_compiler_static_works+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_prog_compiler_static_works=no save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS $lt_tmp_static_flag" 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>&5 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_static_works=yes fi else lt_cv_prog_compiler_static_works=yes fi fi $RM -r conftest* LDFLAGS=$save_LDFLAGS ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5 printf "%s\n" "$lt_cv_prog_compiler_static_works" >&6; } if test yes = "$lt_cv_prog_compiler_static_works"; then : else lt_prog_compiler_static= fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; } if test ${lt_cv_prog_compiler_c_o+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_prog_compiler_c_o=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:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 echo "$as_me:$LINENO: \$? = $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 # So say no if there are warnings $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/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_cv_prog_compiler_c_o=yes fi fi chmod u+w . 2>&5 $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* ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; } if test ${lt_cv_prog_compiler_c_o+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_prog_compiler_c_o=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:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 echo "$as_me:$LINENO: \$? = $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 # So say no if there are warnings $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/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_cv_prog_compiler_c_o=yes fi fi chmod u+w . 2>&5 $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* ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; } hard_links=nottested if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then # do not overwrite the value of need_locks provided by the user { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 printf %s "checking if we can lock with hard links... " >&6; } 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 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 printf "%s\n" "$hard_links" >&6; } if test no = "$hard_links"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5 printf "%s\n" "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;} need_locks=warn fi else need_locks=no fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 printf %s "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } runpath_var= allow_undefined_flag= always_export_symbols=no archive_cmds= archive_expsym_cmds= compiler_needs_object=no enable_shared_with_static_runtimes=no export_dynamic_flag_spec= export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' hardcode_automatic=no hardcode_direct=no hardcode_direct_absolute=no hardcode_libdir_flag_spec= hardcode_libdir_separator= hardcode_minus_L=no hardcode_shlibpath_var=unsupported inherit_rpath=no link_all_deplibs=unknown module_cmds= module_expsym_cmds= old_archive_from_new_cmds= old_archive_from_expsyms_cmds= thread_safe_flag_spec= whole_archive_flag_spec= # include_expsyms should be a list of space-separated symbols to be *always* # included in the symbol list include_expsyms= # 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'. exclude_expsyms='_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. extract_expsyms_cmds= case $host_os in cygwin* | mingw* | windows* | pw32* | cegcc*) # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using # Microsoft Visual C++ or Intel C++ Compiler. if test yes != "$GCC"; then with_gnu_ld=no fi ;; interix*) # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC) with_gnu_ld=yes ;; esac ld_shlibs=yes # On some targets, GNU ld is compatible enough with the native linker # that we're better off using the native interface for both. lt_use_gnu_ld_interface=no if test yes = "$with_gnu_ld"; then case $host_os in aix*) # The AIX port of GNU ld has always aspired to compatibility # with the native linker. However, as the warning in the GNU ld # block says, versions before 2.19.5* couldn't really create working # shared libraries, regardless of the interface used. case `$LD -v 2>&1` in *\ \(GNU\ Binutils\)\ 2.19.5*) ;; *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;; *\ \(GNU\ Binutils\)\ [3-9]*) ;; *) lt_use_gnu_ld_interface=yes ;; esac ;; *) lt_use_gnu_ld_interface=yes ;; esac fi if test yes = "$lt_use_gnu_ld_interface"; 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 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' export_dynamic_flag_spec='$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 whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' else whole_archive_flag_spec= fi supports_anon_versioning=no case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 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 ia64 != "$host_cpu"; then ld_shlibs=no cat <<_LT_EOF 1>&2 *** Warning: the GNU linker, at least up to release 2.19, 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 install binutils *** 2.20 or above, or modify your PATH so that a non-GNU linker is found. *** You will then need to restart the configuration process. _LT_EOF fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='' ;; m68k) archive_cmds='$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)' hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes ;; esac ;; beos*) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then allow_undefined_flag=unsupported # Joseph Beckenbach says some releases of gcc # support --undefined. This deserves some investigation. FIXME archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' else ld_shlibs=no fi ;; cygwin* | mingw* | windows* | pw32* | cegcc*) # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless, # as there is no search path for DLLs. hardcode_libdir_flag_spec='-L$libdir' export_dynamic_flag_spec='$wl--export-all-symbols' allow_undefined_flag=unsupported always_export_symbols=no enable_shared_with_static_runtimes=yes export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols' exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname' file_list_spec='@' if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then archive_cmds='$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, use it as # is; otherwise, prepend EXPORTS... archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; 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 ld_shlibs=no fi ;; haiku*) archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' link_all_deplibs=no ;; os2*) hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes allow_undefined_flag=unsupported shrext_cmds=.dll archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ prefix_cmds="$SED"~ if test EXPORTS = "`$SED 1q $export_symbols`"; then prefix_cmds="$prefix_cmds -e 1d"; fi~ prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' old_archive_from_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' enable_shared_with_static_runtimes=yes file_list_spec='@' ;; interix[3-9]*) hardcode_direct=no hardcode_shlibpath_var=no hardcode_libdir_flag_spec='$wl-rpath,$libdir' export_dynamic_flag_spec='$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. archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' archive_expsym_cmds='$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 linux-dietlibc = "$host_os"; 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 no = "$tmp_diet" then tmp_addflag=' $pic_flag' tmp_sharedflag='-shared' case $cc_basename,$host_cpu in pgcc*) # Portland Group C compiler whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' tmp_addflag=' $pic_flag' ;; pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group f77 and f90 compilers whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$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 whole_archive_flag_spec= tmp_sharedflag='--shared' ;; nagfor*) # NAGFOR 5.3 tmp_sharedflag='-Wl,-shared' ;; xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below) tmp_sharedflag='-qmkshrobj' tmp_addflag= ;; nvcc*) # Cuda Compiler Driver 2.2 whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' compiler_needs_object=yes ;; esac case `$CC -V 2>&1 | $SED 5q` in *Sun\ C*) # Sun C 5.9 whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' compiler_needs_object=yes tmp_sharedflag='-G' ;; *Sun\ F*) # Sun Fortran 8.3 tmp_sharedflag='-G' ;; esac archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' if test yes = "$supports_anon_versioning"; then archive_expsym_cmds='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 tcc*) hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' export_dynamic_flag_spec='-rdynamic' ;; xlf* | bgf* | bgxlf* | mpixlf*) # IBM XL Fortran 10.1 on PPC cannot create shared libs itself whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive' hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' if test yes = "$supports_anon_versioning"; then archive_expsym_cmds='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 $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi ;; esac else ld_shlibs=no fi ;; *-mlibc) archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ;; netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= else archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $pic_flag $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 ld_shlibs=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 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) case `$LD -v 2>&1` in *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*) ld_shlibs=no cat <<_LT_EOF 1>&2 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot *** 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 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi ;; esac ;; sunos4*) archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' wlarc= hardcode_direct=yes hardcode_shlibpath_var=no ;; *) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi ;; esac if test no = "$ld_shlibs"; then runpath_var= hardcode_libdir_flag_spec= export_dynamic_flag_spec= whole_archive_flag_spec= fi else # PORTME fill in a description of your system's linker (not GNU ld) case $host_os in aix3*) allow_undefined_flag=unsupported always_export_symbols=yes archive_expsym_cmds='$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. hardcode_minus_L=yes if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then # Neither direct hardcoding nor static linking is supported with a # broken collect2. hardcode_direct=unsupported fi ;; aix[4-9]*) if test ia64 = "$host_cpu"; 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 GNU nm, but means don't demangle to AIX nm. # Without the "-l" option, or with the "-B" option, AIX nm treats # weak defined symbols like other global defined symbols, whereas # GNU nm marks them as "W". # While the 'weak' keyword is ignored in the Export File, we need # it in the Import File for the 'aix-soname' feature, so we have # to replace the "-B" option with "-P" for AIX nm. if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | 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 # have runtime linking enabled, and use it for executables. # For shared libraries, we enable/disable runtime linking # depending on the kind of the shared library created - # when "with_aix_soname,aix_use_runtimelinking" is: # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables # "aix,yes" lib.so shared, rtl:yes, for executables # lib.a static archive # "both,no" lib.so.V(shr.o) shared, rtl:yes # lib.a(lib.so.V) shared, rtl:no, for executables # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables # lib.a(lib.so.V) shared, rtl:no # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables # lib.a static archive case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) for ld_flag in $LDFLAGS; do if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then aix_use_runtimelinking=yes break fi done if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then # With aix-soname=svr4, we create the lib.so.V shared archives only, # so we don't have lib.a shared libs to link our executables. # We have to force runtime linking in this case. aix_use_runtimelinking=yes LDFLAGS="$LDFLAGS -Wl,-brtl" fi ;; 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. archive_cmds='' hardcode_direct=yes hardcode_direct_absolute=yes hardcode_libdir_separator=':' link_all_deplibs=yes file_list_spec='$wl-f,' case $with_aix_soname,$aix_use_runtimelinking in aix,*) ;; # traditional, no import file svr4,* | *,yes) # use import file # The Import File defines what to hardcode. hardcode_direct=no hardcode_direct_absolute=no ;; esac if test yes = "$GCC"; 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 hardcode_direct=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 hardcode_minus_L=yes hardcode_libdir_flag_spec='-L$libdir' hardcode_libdir_separator= fi ;; esac shared_flag='-shared' if test yes = "$aix_use_runtimelinking"; then shared_flag="$shared_flag "'$wl-G' fi # Need to ensure runtime linking is disabled for the traditional # shared library, or the linker may eventually find shared libraries # /with/ Import File - we do not want to mix them. shared_flag_aix='-shared' shared_flag_svr4='-shared $wl-G' else # not using gcc if test ia64 = "$host_cpu"; 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 yes = "$aix_use_runtimelinking"; then shared_flag='$wl-G' else shared_flag='$wl-bM:SRE' fi shared_flag_aix='$wl-bM:SRE' shared_flag_svr4='$wl-G' fi fi export_dynamic_flag_spec='$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. always_export_symbols=yes if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. allow_undefined_flag='-berok' # Determine the default libpath from the value encoded in an # empty executable. if test set = "${lt_cv_aix_libpath+set}"; then aix_libpath=$lt_cv_aix_libpath else if test ${lt_cv_aix_libpath_+y} then : printf %s "(cached) " >&6 else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : lt_aix_libpath_sed=' /Import File Strings/,/^$/ { /^0/ { s/^0 *\([^ ]*\) *$/\1/ p } }' lt_cv_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 "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_=/usr/lib:/lib fi ;; esac fi aix_libpath=$lt_cv_aix_libpath_ fi hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath" archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag else if test ia64 = "$host_cpu"; then hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib' allow_undefined_flag="-z nodefs" archive_expsym_cmds="\$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. if test set = "${lt_cv_aix_libpath+set}"; then aix_libpath=$lt_cv_aix_libpath else if test ${lt_cv_aix_libpath_+y} then : printf %s "(cached) " >&6 else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : lt_aix_libpath_sed=' /Import File Strings/,/^$/ { /^0/ { s/^0 *\([^ ]*\) *$/\1/ p } }' lt_cv_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 "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_=/usr/lib:/lib fi ;; esac fi aix_libpath=$lt_cv_aix_libpath_ fi hardcode_libdir_flag_spec='$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. no_undefined_flag=' $wl-bernotok' allow_undefined_flag=' $wl-berok' if test yes = "$with_gnu_ld"; then # We only use this code for GNU lds that support --whole-archive. whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive' else # Exported symbols can be pulled into shared objects from archives whole_archive_flag_spec='$convenience' fi archive_cmds_need_lc=yes archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' # -brtl affects multiple linker settings, -berok does not and is overridden later compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`' if test svr4 != "$with_aix_soname"; then # This is similar to how AIX traditionally builds its shared libraries. archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' fi if test aix != "$with_aix_soname"; then archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' else # used by -dlpreopen to get the symbols archive_expsym_cmds="$archive_expsym_cmds"'~$MV $output_objdir/$realname.d/$soname $output_objdir' fi archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d' fi fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='' ;; m68k) archive_cmds='$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)' hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes ;; esac ;; bsdi[45]*) export_dynamic_flag_spec=-rdynamic ;; cygwin* | mingw* | windows* | pw32* | cegcc*) # When not using gcc, we currently assume that we are using # Microsoft Visual C++ or Intel C++ Compiler. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. case $cc_basename in cl* | icl*) # Native MSVC or ICC hardcode_libdir_flag_spec=' ' allow_undefined_flag=unsupported always_export_symbols=yes file_list_spec='@' # 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. archive_cmds='$CC -Fe$output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then cp "$export_symbols" "$output_objdir/$soname.def"; echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; else $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; fi~ $CC -Fe$tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ linknames=' # The linker will not automatically build a static lib if we build a DLL. # _LT_TAGVAR(old_archive_from_new_cmds, )='true' enable_shared_with_static_runtimes=yes exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols' # Don't use ranlib old_postinstall_cmds='chmod 644 $oldlib' postlink_cmds='lt_outputfile="@OUTPUT@"~ lt_tool_outputfile="@TOOL_OUTPUT@"~ case $lt_outputfile in *.exe|*.EXE) ;; *) lt_outputfile=$lt_outputfile.exe lt_tool_outputfile=$lt_tool_outputfile.exe ;; esac~ if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; $RM "$lt_outputfile.manifest"; fi' ;; *) # Assume MSVC and ICC wrapper hardcode_libdir_flag_spec=' ' allow_undefined_flag=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. archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' # The linker will automatically build a .lib file if we build a DLL. old_archive_from_new_cmds='true' # FIXME: Should let the user specify the lib program. old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs' enable_shared_with_static_runtimes=yes ;; esac ;; darwin* | rhapsody*) archive_cmds_need_lc=no hardcode_direct=no hardcode_automatic=yes hardcode_shlibpath_var=unsupported if test yes = "$lt_cv_ld_force_load"; then whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' else whole_archive_flag_spec='' fi link_all_deplibs=yes allow_undefined_flag=$_lt_dar_allow_undefined case $cc_basename in ifort*|nagfor*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac if test yes = "$_lt_dar_can_shared"; then output_verbose_link_cmd=func_echo_all archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" archive_expsym_cmds="$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" module_expsym_cmds="$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" else ld_shlibs=no fi ;; dgux*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_libdir_flag_spec='-L$libdir' hardcode_shlibpath_var=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*) archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes hardcode_shlibpath_var=no ;; # Unfortunately, older versions of FreeBSD 2 do not have this feature. freebsd2.*) archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=yes hardcode_minus_L=yes hardcode_shlibpath_var=no ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. freebsd* | dragonfly* | midnightbsd*) archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes hardcode_shlibpath_var=no ;; hpux9*) if test yes = "$GCC"; then archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' else archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' fi hardcode_libdir_flag_spec='$wl+b $wl$libdir' hardcode_libdir_separator=: hardcode_direct=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes export_dynamic_flag_spec='$wl-E' ;; hpux10*) if test yes,no = "$GCC,$with_gnu_ld"; then archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi if test no = "$with_gnu_ld"; then hardcode_libdir_flag_spec='$wl+b $wl$libdir' hardcode_libdir_separator=: hardcode_direct=yes hardcode_direct_absolute=yes export_dynamic_flag_spec='$wl-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes fi ;; hpux11*) if test yes,no = "$GCC,$with_gnu_ld"; then case $host_cpu in hppa*64*) archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac else case $host_cpu in hppa*64*) archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) # Older versions of the 11.00 compiler do not understand -b yet # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5 printf %s "checking if $CC understands -b... " >&6; } if test ${lt_cv_prog_compiler__b+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_prog_compiler__b=no save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS -b" 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>&5 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler__b=yes fi else lt_cv_prog_compiler__b=yes fi fi $RM -r conftest* LDFLAGS=$save_LDFLAGS ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5 printf "%s\n" "$lt_cv_prog_compiler__b" >&6; } if test yes = "$lt_cv_prog_compiler__b"; then archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi ;; esac fi if test no = "$with_gnu_ld"; then hardcode_libdir_flag_spec='$wl+b $wl$libdir' hardcode_libdir_separator=: case $host_cpu in hppa*64*|ia64*) hardcode_direct=no hardcode_shlibpath_var=no ;; *) hardcode_direct=yes hardcode_direct_absolute=yes export_dynamic_flag_spec='$wl-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes ;; esac fi ;; irix5* | irix6* | nonstopux*) if test yes = "$GCC"; then archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $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. # This should be the same for all languages, so no per-tag cache variable. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5 printf %s "checking whether the $host_os linker accepts -exported_symbol... " >&6; } if test ${lt_cv_irix_exported_symbol+y} then : printf %s "(cached) " >&6 else case e in #( e) save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int foo (void) { return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : lt_cv_irix_exported_symbol=yes else case e in #( e) lt_cv_irix_exported_symbol=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$save_LDFLAGS ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5 printf "%s\n" "$lt_cv_irix_exported_symbol" >&6; } if test yes = "$lt_cv_irix_exported_symbol"; then archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' fi else archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' fi archive_cmds_need_lc='no' hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' hardcode_libdir_separator=: inherit_rpath=yes link_all_deplibs=yes ;; linux*) case $cc_basename in tcc*) # Fabrice Bellard et al's Tiny C Compiler ld_shlibs=yes archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' ;; esac ;; *-mlibc) ;; netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF fi hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes hardcode_shlibpath_var=no ;; newsos6) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=yes hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' hardcode_libdir_separator=: hardcode_shlibpath_var=no ;; *nto* | *qnx*) ;; openbsd*) if test -f /usr/libexec/ld.so; then hardcode_direct=yes hardcode_shlibpath_var=no hardcode_direct_absolute=yes if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' hardcode_libdir_flag_spec='$wl-rpath,$libdir' export_dynamic_flag_spec='$wl-E' else archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' hardcode_libdir_flag_spec='$wl-rpath,$libdir' fi else ld_shlibs=no fi ;; os2*) hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes allow_undefined_flag=unsupported shrext_cmds=.dll archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ $ECHO EXPORTS >> $output_objdir/$libname.def~ prefix_cmds="$SED"~ if test EXPORTS = "`$SED 1q $export_symbols`"; then prefix_cmds="$prefix_cmds -e 1d"; fi~ prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ emximp -o $lib $output_objdir/$libname.def' old_archive_from_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' enable_shared_with_static_runtimes=yes file_list_spec='@' ;; osf3*) if test yes = "$GCC"; then allow_undefined_flag=' $wl-expect_unresolved $wl\*' archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' else allow_undefined_flag=' -expect_unresolved \*' archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' fi archive_cmds_need_lc='no' hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' hardcode_libdir_separator=: ;; osf4* | osf5*) # as osf3* with the addition of -msym flag if test yes = "$GCC"; then allow_undefined_flag=' $wl-expect_unresolved $wl\*' archive_cmds='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' else allow_undefined_flag=' -expect_unresolved \*' archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' archive_expsym_cmds='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 "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp' # Both c and cxx compiler support -rpath directly hardcode_libdir_flag_spec='-rpath $libdir' fi archive_cmds_need_lc='no' hardcode_libdir_separator=: ;; serenity*) ;; solaris*) no_undefined_flag=' -z defs' if test yes = "$GCC"; then wlarc='$wl' archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -shared $pic_flag $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='' archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags' archive_expsym_cmds='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' archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='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 hardcode_libdir_flag_spec='-R$libdir' hardcode_shlibpath_var=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 yes = "$GCC"; then whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' else whole_archive_flag_spec='-z allextract$convenience -z defaultextract' fi ;; esac link_all_deplibs=yes ;; sunos4*) if test sequent = "$host_vendor"; then # Use $CC to link under sequent, because it throws in some extra .o # files that make .init and .fini sections work. archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' fi hardcode_libdir_flag_spec='-L$libdir' hardcode_direct=yes hardcode_minus_L=yes hardcode_shlibpath_var=no ;; sysv4) case $host_vendor in sni) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=yes # is this really true??? ;; siemens) ## LD is ld it makes a PLAMLIB ## CC just makes a GrossModule. archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' reload_cmds='$CC -r -o $output$reload_objs' hardcode_direct=no ;; motorola) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=no #Motorola manual says yes, but my tests say they lie ;; esac runpath_var='LD_RUN_PATH' hardcode_shlibpath_var=no ;; sysv4.3*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_shlibpath_var=no export_dynamic_flag_spec='-Bexport' ;; sysv4*MP*) if test -d /usr/nec; then archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_shlibpath_var=no runpath_var=LD_RUN_PATH hardcode_runpath_var=yes ld_shlibs=yes fi ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) no_undefined_flag='$wl-z,text' archive_cmds_need_lc=no hardcode_shlibpath_var=no runpath_var='LD_RUN_PATH' if test yes = "$GCC"; then archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; sysv5* | sco3.2v5* | sco5v6*) # Note: We CANNOT 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. no_undefined_flag='$wl-z,text' allow_undefined_flag='$wl-z,nodefs' archive_cmds_need_lc=no hardcode_shlibpath_var=no hardcode_libdir_flag_spec='$wl-R,$libdir' hardcode_libdir_separator=':' link_all_deplibs=yes export_dynamic_flag_spec='$wl-Bexport' runpath_var='LD_RUN_PATH' if test yes = "$GCC"; then archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; uts4*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_libdir_flag_spec='-L$libdir' hardcode_shlibpath_var=no ;; *) ld_shlibs=no ;; esac if test sni = "$host_vendor"; then case $host in sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) export_dynamic_flag_spec='$wl-Blargedynsym' ;; esac fi fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 printf "%s\n" "$ld_shlibs" >&6; } test no = "$ld_shlibs" && can_build_shared=no with_gnu_ld=$with_gnu_ld # # Do we need to explicitly link libc? # case "x$archive_cmds_need_lc" in x|xyes) # Assume -lc should be added archive_cmds_need_lc=yes if test yes,yes = "$GCC,$enable_shared"; then case $archive_cmds 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. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 printf %s "checking whether -lc should be explicitly linked in... " >&6; } if test ${lt_cv_archive_cmds_need_lc+y} then : printf %s "(cached) " >&6 else case e in #( e) $RM conftest* echo "$lt_simple_compile_test_code" > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } 2>conftest.err; then soname=conftest lib=conftest libobjs=conftest.$ac_objext deplibs= wl=$lt_prog_compiler_wl pic_flag=$lt_prog_compiler_pic compiler_flags=-v linker_flags=-v verstring= output_objdir=. libname=conftest lt_save_allow_undefined_flag=$allow_undefined_flag allow_undefined_flag= if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } then lt_cv_archive_cmds_need_lc=no else lt_cv_archive_cmds_need_lc=yes fi allow_undefined_flag=$lt_save_allow_undefined_flag else cat conftest.err 1>&5 fi $RM conftest* ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5 printf "%s\n" "$lt_cv_archive_cmds_need_lc" >&6; } archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc ;; esac fi ;; esac { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 printf %s "checking dynamic linker characteristics... " >&6; } if test yes = "$GCC"; then case $host_os in darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; *) lt_awk_arg='/^libraries:/' ;; esac case $host_os in mingw* | windows* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;; *) lt_sed_strip_eq='s|=/|/|g' ;; esac lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` case $lt_search_path_spec in *\;*) # 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 's/;/ /g'` ;; *) lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` ;; esac # 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` # ...but if some path component already ends with the multilib dir we assume # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). case "$lt_multi_os_dir; $lt_search_path_spec " in "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) lt_multi_os_dir= ;; esac 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" elif test -n "$lt_multi_os_dir"; then 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; } }'` # AWK program above erroneously prepends '/' to C:/dos/paths # for these hosts. case $host_os in mingw* | windows* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ $SED 's|/\([A-Za-z]:\)|\1|g'` ;; esac sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` 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 # correct to gnu/linux during the next big refactor 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 # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no hardcode_into_libs=yes if test ia64 = "$host_cpu"; 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 # Using Import Files as archive members, it is possible to support # filename-based versioning of shared library archives on AIX. While # this would work for both with and without runtime linking, it will # prevent static linking of such archives. So we do filename-based # shared library versioning with .so extension only, which is used # when both runtime linking and shared linking is enabled. # Unfortunately, runtime linking may impact performance, so we do # not want this to be the default eventually. Also, we use the # versioned .so libs for executables only if there is the -brtl # linker flag in LDFLAGS as well, or --enable-aix-soname=svr4 only. # To allow for filename-based versioning support, we need to create # libNAME.so.V as an archive file, containing: # *) an Import File, referring to the versioned filename of the # archive as well as the shared archive member, telling the # bitwidth (32 or 64) of that shared object, and providing the # list of exported symbols of that shared object, eventually # decorated with the 'weak' keyword # *) the shared object with the F_LOADONLY flag set, to really avoid # it being seen by the linker. # At run time we better use the real file rather than another symlink, # but for link time we create the symlink libNAME.so -> libNAME.so.V case $with_aix_soname,$aix_use_runtimelinking in # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. aix,yes) # traditional libtool dynamic_linker='AIX unversionable lib.so' # If using run time linking (on AIX 4.2 or later) use lib.so # instead of lib.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' ;; aix,no) # traditional AIX only dynamic_linker='AIX lib.a(lib.so.V)' # 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' ;; svr4,*) # full svr4 only dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)" library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' # We do not specify a path in Import Files, so LIBPATH fires. shlibpath_overrides_runpath=yes ;; *,yes) # both, prefer svr4 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)" library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' # unpreferred sharedlib libNAME.a needs extra handling postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' # We do not specify a path in Import Files, so LIBPATH fires. shlibpath_overrides_runpath=yes ;; *,no) # both, prefer aix dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)" library_names_spec='$libname$release.a $libname.a' soname_spec='$libname$release$shared_ext$major' # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' ;; esac 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=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; $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 # correct to gnu/linux during the next big refactor 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* | windows* | pw32* | cegcc*) version_type=windows shrext_cmds=.dll need_version=no need_lib_prefix=no case $GCC,$cc_basename in yes,*) # gcc library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds # If user builds GCC with multilib enabled, # it should just install on $(libdir) # not on $(libdir)/../bin or 32 bits dlls would override 64 bit ones. if test xyes = x"$multilib"; then postinstall_cmds='base_file=`basename \$file`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ $install_prog $dir/$dlname $destdir/$dlname~ chmod a+x $destdir/$dlname~ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then eval '\''$striplib $destdir/$dlname'\'' || exit \$?; fi' else 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' 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="$sys_lib_search_path_spec /usr/lib/w32api" ;; mingw* | windows* | cegcc*) # MinGW DLLs use traditional 'lib' prefix soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' ;; 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 dynamic_linker='Win32 ld.exe' ;; *,cl* | *,icl*) # Native MSVC or ICC libname_spec='$name' soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' library_names_spec='$libname.dll.lib' case $build_os in mingw* | windows*) sys_lib_search_path_spec= lt_save_ifs=$IFS IFS=';' for lt_path in $LIB do IFS=$lt_save_ifs # Let DOS variable expansion print the short 8.3 style file name. lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" done IFS=$lt_save_ifs # Convert to MSYS style. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'` ;; cygwin*) # Convert to unix form, then to dos form, then back to unix form # but this time dos style (no spaces!) so that the unix form looks # like /cygdrive/c/PROGRA~1:/cygdr... sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` ;; *) sys_lib_search_path_spec=$LIB if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then # It is most probably a Windows format PATH. 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 # FIXME: find the short name or the path components, as spaces are # common. (e.g. "Program Files" -> "PROGRA~1") ;; esac # 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' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes dynamic_linker='Win32 link.exe' ;; *) # Assume MSVC and ICC wrapper library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib' dynamic_linker='Win32 ld.exe' ;; esac # 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`' 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 # correct to gnu/linux during the next big refactor 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 ;; freebsd* | dragonfly* | midnightbsd*) # 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[23].*) 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$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' need_version=no need_lib_prefix=no ;; freebsd-*) library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' need_version=yes ;; esac case $host_cpu in powerpc64) # On FreeBSD bi-arch platforms, a different variable is used for 32-bit # binaries. See . cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int test_pointer_size[sizeof (void *) - 5]; _ACEOF if ac_fn_c_try_compile "$LINENO" then : shlibpath_var=LD_LIBRARY_PATH else case e in #( e) shlibpath_var=LD_32_LIBRARY_PATH ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; *) shlibpath_var=LD_LIBRARY_PATH ;; esac 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 ;; haiku*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no dynamic_linker="$host_os runtime_loader" 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=LIBRARY_PATH shlibpath_overrides_runpath=no sys_lib_search_path_spec='/boot/system/non-packaged/develop/lib /boot/system/develop/lib' sys_lib_dlsearch_path_spec='/boot/home/config/non-packaged/lib /boot/home/config/lib /boot/system/non-packaged/lib /boot/system/lib' hardcode_into_libs=no ;; 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 32 = "$HPUX_IA64_MODE"; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" sys_lib_dlsearch_path_spec=/usr/lib/hpux32 else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" sys_lib_dlsearch_path_spec=/usr/lib/hpux64 fi ;; 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' # or fails outright, so override atomically: install_override_mode=555 ;; interix[3-9]*) version_type=linux # correct to gnu/linux during the next big refactor 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 yes = "$lt_cv_prog_gnu_ld"; then version_type=linux # correct to gnu/linux during the next big refactor 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 ;; linux*android*) version_type=none # Android doesn't support versioned libraries. need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext $libname$shared_ext' soname_spec='$libname$release$shared_ext' finish_cmds= shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # 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 dynamic_linker='Android linker' # -rpath works at least for libraries that are not overridden by # libraries installed in system locations. hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' ;; # This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) version_type=linux # correct to gnu/linux during the next big refactor 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 if test ${lt_cv_shlibpath_overrides_runpath+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_shlibpath_overrides_runpath=no save_LDFLAGS=$LDFLAGS save_libdir=$libdir eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \ LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\"" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main (void) { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null then : lt_cv_shlibpath_overrides_runpath=yes fi fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$save_LDFLAGS libdir=$save_libdir ;; esac fi shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath # 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 # Add ABI-specific directories to the system library path. sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" # Ideally, we could use ldconfig to report *all* directories which are # searched for libraries, however this is still not possible. Aside from not # being certain /sbin/ldconfig is available, command # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, # even though it is searched at run-time. Try to do the best guess by # appending ld.so.conf contents (and includes) 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;s/"//g;/^$/d' | tr '\n' ' '` sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $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 ;; *-mlibc) version_type=linux # correct to gnu/linux during the next big refactor 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='mlibc ld.so' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; newsos6) version_type=linux # correct to gnu/linux during the next big refactor 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 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then need_version=no else need_version=yes fi 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 shlibpath_overrides_runpath=yes ;; os2*) libname_spec='$name' version_type=windows shrext_cmds=.dll need_version=no need_lib_prefix=no # OS/2 can only load a DLL with a base name of 8 characters or less. soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; v=$($ECHO $release$versuffix | tr -d .-); n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); $ECHO $n$v`$shared_ext' library_names_spec='${libname}_dll.$libext' dynamic_linker='OS/2 ld.exe' shlibpath_var=BEGINLIBPATH sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec 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' ;; 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 ;; serenity*) version_type=linux # correct to gnu/linux during the next big refactor 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 dynamic_linker='SerenityOS LibELF' ;; solaris*) version_type=linux # correct to gnu/linux during the next big refactor 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 yes = "$with_gnu_ld"; then need_lib_prefix=no fi need_version=yes ;; sysv4 | sysv4.3*) version_type=linux # correct to gnu/linux during the next big refactor 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 # correct to gnu/linux during the next big refactor 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=sco 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 yes = "$with_gnu_ld"; 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 # correct to gnu/linux during the next big refactor 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 # correct to gnu/linux during the next big refactor 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 ;; emscripten*) version_type=none need_lib_prefix=no need_version=no library_names_spec='$libname$release$shared_ext' soname_spec='$libname$release$shared_ext' finish_cmds= dynamic_linker="Emscripten linker" lt_prog_compiler_wl= lt_prog_compiler_pic= lt_prog_compiler_static= if test yes = "$GCC"; then lt_prog_compiler_wl='-Wl,' lt_prog_compiler_static='-static' case $host_os in aix*) # All AIX code is PIC. if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' fi lt_prog_compiler_pic='-fPIC' ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support lt_prog_compiler_pic='-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_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | windows* | 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 lt_prog_compiler_pic='-DDLL_EXPORT' case $host_os in os2*) lt_prog_compiler_static='$wl-static' ;; esac ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files lt_prog_compiler_pic='-fno-common' ;; haiku*) # PIC is the default for Haiku. # The "-static" flag exists, but is broken. lt_prog_compiler_static= ;; 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_prog_compiler_pic='-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_prog_compiler_can_build_shared=no enable_shared=no ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. lt_prog_compiler_pic='-fPIC -shared' ;; sysv4*MP*) if test -d /usr/nec; then lt_prog_compiler_pic=-Kconform_pic fi ;; *) lt_prog_compiler_pic='-fPIC' ;; esac case $cc_basename in nvcc*) # Cuda Compiler Driver 2.2 lt_prog_compiler_wl='-Xlinker ' if test -n "$lt_prog_compiler_pic"; then lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic" fi ;; esac else # PORTME Check for flag to pass linker flags through the system compiler. case $host_os in aix*) lt_prog_compiler_wl='-Wl,' if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' else lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp' fi ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files lt_prog_compiler_pic='-fno-common' case $cc_basename in nagfor*) # NAG Fortran compiler lt_prog_compiler_wl='-Wl,-Wl,,' lt_prog_compiler_pic='-PIC' lt_prog_compiler_static='-Bstatic' ;; esac ;; mingw* | windows* | 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). lt_prog_compiler_pic='-DDLL_EXPORT' case $host_os in os2*) lt_prog_compiler_static='$wl-static' ;; esac ;; hpux9* | hpux10* | hpux11*) lt_prog_compiler_wl='-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_prog_compiler_pic='+Z' ;; esac # Is there a better lt_prog_compiler_static that works with the bundled CC? lt_prog_compiler_static='$wl-a ${wl}archive' ;; irix5* | irix6* | nonstopux*) lt_prog_compiler_wl='-Wl,' # PIC (with -KPIC) is the default. lt_prog_compiler_static='-non_shared' ;; linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in # old Intel for x86_64, which still supported -KPIC. ecc*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-static' ;; *flang* | ftn | f18* | f95*) # Flang compiler. lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; # icc used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. icc* | ifort*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; # Lahey Fortran 8.1. lf95*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='--shared' lt_prog_compiler_static='--static' ;; nagfor*) # NAG Fortran compiler lt_prog_compiler_wl='-Wl,-Wl,,' lt_prog_compiler_pic='-PIC' lt_prog_compiler_static='-Bstatic' ;; tcc*) # Fabrice Bellard et al's Tiny C Compiler lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group compilers (*not* the Pentium gcc compiler, # which looks to be a dead project) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fpic' lt_prog_compiler_static='-Bstatic' ;; ccc*) lt_prog_compiler_wl='-Wl,' # All Alpha code is PIC. lt_prog_compiler_static='-non_shared' ;; xl* | bgxl* | bgf* | mpixl*) # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-qpic' lt_prog_compiler_static='-qstaticlink' ;; *) case `$CC -V 2>&1 | $SED 5q` in *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*) # Sun Fortran 8.3 passes all unrecognized flags to the linker lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='' ;; *Sun\ F* | *Sun*Fortran*) lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='-Qoption ld ' ;; *Sun\ C*) # Sun C 5.9 lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='-Wl,' ;; *Intel*\ [CF]*Compiler*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; *Portland\ Group*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fpic' lt_prog_compiler_static='-Bstatic' ;; esac ;; esac ;; newsos6) lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' ;; *-mlibc) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. lt_prog_compiler_pic='-fPIC -shared' ;; osf3* | osf4* | osf5*) lt_prog_compiler_wl='-Wl,' # All OSF/1 code is PIC. lt_prog_compiler_static='-non_shared' ;; rdos*) lt_prog_compiler_static='-non_shared' ;; serenity*) ;; solaris*) lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' case $cc_basename in f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) lt_prog_compiler_wl='-Qoption ld ';; *) lt_prog_compiler_wl='-Wl,';; esac ;; sunos4*) lt_prog_compiler_wl='-Qoption ld ' lt_prog_compiler_pic='-PIC' lt_prog_compiler_static='-Bstatic' ;; sysv4 | sysv4.2uw2* | sysv4.3*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' ;; sysv4*MP*) if test -d /usr/nec; then lt_prog_compiler_pic='-Kconform_pic' lt_prog_compiler_static='-Bstatic' fi ;; sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' ;; unicos*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_can_build_shared=no ;; uts4*) lt_prog_compiler_pic='-pic' lt_prog_compiler_static='-Bstatic' ;; *) lt_prog_compiler_can_build_shared=no ;; esac fi case $host_os in # For platforms that do not support PIC, -DPIC is meaningless: *djgpp*) lt_prog_compiler_pic= ;; *) lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC" ;; esac { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 printf %s "checking for $compiler option to produce PIC... " >&6; } if test ${lt_cv_prog_compiler_pic+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_prog_compiler_pic=$lt_prog_compiler_pic ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5 printf "%s\n" "$lt_cv_prog_compiler_pic" >&6; } lt_prog_compiler_pic=$lt_cv_prog_compiler_pic # # Check to make sure the PIC flag actually works. # if test -n "$lt_prog_compiler_pic"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 printf %s "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } if test ${lt_cv_prog_compiler_pic_works+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_prog_compiler_pic_works=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="$lt_prog_compiler_pic -DPIC" ## exclude from sc_useless_quotes_in_assignment # 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:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $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. $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_pic_works=yes fi fi $RM conftest* ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5 printf "%s\n" "$lt_cv_prog_compiler_pic_works" >&6; } if test yes = "$lt_cv_prog_compiler_pic_works"; then case $lt_prog_compiler_pic in "" | " "*) ;; *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;; esac else lt_prog_compiler_pic= lt_prog_compiler_can_build_shared=no fi fi # # Check to make sure the static flag actually works. # wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 printf %s "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } if test ${lt_cv_prog_compiler_static_works+y} then : printf %s "(cached) " >&6 else case e in #( e) lt_cv_prog_compiler_static_works=no save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS $lt_tmp_static_flag" 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>&5 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_static_works=yes fi else lt_cv_prog_compiler_static_works=yes fi fi $RM -r conftest* LDFLAGS=$save_LDFLAGS ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5 printf "%s\n" "$lt_cv_prog_compiler_static_works" >&6; } if test yes = "$lt_cv_prog_compiler_static_works"; then : else lt_prog_compiler_static= fi ='-fPIC' archive_cmds='$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib' archive_expsym_cmds='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib -s EXPORTED_FUNCTIONS=@$output_objdir/$soname.expsym' archive_cmds_need_lc=no no_undefined_flag= ;; *) dynamic_linker=no ;; esac { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 printf "%s\n" "$dynamic_linker" >&6; } test no = "$dynamic_linker" && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" if test yes = "$GCC"; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec fi if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec fi # remember unaugmented sys_lib_dlsearch_path content for libtool script decls... configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 printf %s "checking how to hardcode library paths into programs... " >&6; } hardcode_action= if test -n "$hardcode_libdir_flag_spec" || test -n "$runpath_var" || test yes = "$hardcode_automatic"; then # We can hardcode non-existent directories. if test no != "$hardcode_direct" && # 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 no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" && test no != "$hardcode_minus_L"; then # Linking always hardcodes the temporary library directory. hardcode_action=relink else # We can link without hardcoding, and we can hardcode nonexisting dirs. hardcode_action=immediate fi else # We cannot hardcode anything, or else we can only hardcode existing # directories. hardcode_action=unsupported fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 printf "%s\n" "$hardcode_action" >&6; } if test relink = "$hardcode_action" || test yes = "$inherit_rpath"; then # Fast installation is not supported enable_fast_install=no elif test yes = "$shlibpath_overrides_runpath" || test no = "$enable_shared"; then # Fast installation is not necessary enable_fast_install=needless fi if test yes != "$enable_dlopen"; 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* | windows* | 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 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 printf %s "checking for dlopen in -ldl... " >&6; } if test ${ac_cv_lib_dl_dlopen+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. The 'extern "C"' is for builds by C++ compilers; although this is not generally supported in C code supporting it here has little cost and some practical benefit (sr 110532). */ #ifdef __cplusplus extern "C" #endif char dlopen (void); int main (void) { return dlopen (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_dl_dlopen=yes else case e in #( e) ac_cv_lib_dl_dlopen=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; } if test "x$ac_cv_lib_dl_dlopen" = xyes then : lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl else case e in #( e) lt_cv_dlopen=dyld lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ;; esac fi ;; tpf*) # Don't try to run any link tests for TPF. We know it's impossible # because TPF is a cross-compiler, and we know how we open DSOs. lt_cv_dlopen=dlopen lt_cv_dlopen_libs= lt_cv_dlopen_self=no ;; *) ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" if test "x$ac_cv_func_shl_load" = xyes then : lt_cv_dlopen=shl_load else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 printf %s "checking for shl_load in -ldld... " >&6; } if test ${ac_cv_lib_dld_shl_load+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. The 'extern "C"' is for builds by C++ compilers; although this is not generally supported in C code supporting it here has little cost and some practical benefit (sr 110532). */ #ifdef __cplusplus extern "C" #endif char shl_load (void); int main (void) { return shl_load (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_dld_shl_load=yes else case e in #( e) ac_cv_lib_dld_shl_load=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 printf "%s\n" "$ac_cv_lib_dld_shl_load" >&6; } if test "x$ac_cv_lib_dld_shl_load" = xyes then : lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld else case e in #( e) ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" if test "x$ac_cv_func_dlopen" = xyes then : lt_cv_dlopen=dlopen else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 printf %s "checking for dlopen in -ldl... " >&6; } if test ${ac_cv_lib_dl_dlopen+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. The 'extern "C"' is for builds by C++ compilers; although this is not generally supported in C code supporting it here has little cost and some practical benefit (sr 110532). */ #ifdef __cplusplus extern "C" #endif char dlopen (void); int main (void) { return dlopen (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_dl_dlopen=yes else case e in #( e) ac_cv_lib_dl_dlopen=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; } if test "x$ac_cv_lib_dl_dlopen" = xyes then : lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 printf %s "checking for dlopen in -lsvld... " >&6; } if test ${ac_cv_lib_svld_dlopen+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_check_lib_save_LIBS=$LIBS LIBS="-lsvld $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. The 'extern "C"' is for builds by C++ compilers; although this is not generally supported in C code supporting it here has little cost and some practical benefit (sr 110532). */ #ifdef __cplusplus extern "C" #endif char dlopen (void); int main (void) { return dlopen (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_svld_dlopen=yes else case e in #( e) ac_cv_lib_svld_dlopen=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 printf "%s\n" "$ac_cv_lib_svld_dlopen" >&6; } if test "x$ac_cv_lib_svld_dlopen" = xyes then : lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 printf %s "checking for dld_link in -ldld... " >&6; } if test ${ac_cv_lib_dld_dld_link+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. The 'extern "C"' is for builds by C++ compilers; although this is not generally supported in C code supporting it here has little cost and some practical benefit (sr 110532). */ #ifdef __cplusplus extern "C" #endif char dld_link (void); int main (void) { return dld_link (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_dld_dld_link=yes else case e in #( e) ac_cv_lib_dld_dld_link=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 printf "%s\n" "$ac_cv_lib_dld_dld_link" >&6; } if test "x$ac_cv_lib_dld_dld_link" = xyes then : lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld fi ;; esac fi ;; esac fi ;; esac fi ;; esac fi ;; esac fi ;; esac if test no = "$lt_cv_dlopen"; then enable_dlopen=no else enable_dlopen=yes fi case $lt_cv_dlopen in dlopen) save_CPPFLAGS=$CPPFLAGS test yes = "$ac_cv_header_dlfcn_h" && 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" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 printf %s "checking whether a program can dlopen itself... " >&6; } if test ${lt_cv_dlopen_self+y} then : printf %s "(cached) " >&6 else case e in #( e) if test yes = "$cross_compiling"; then : lt_cv_dlopen_self=cross else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF #line $LINENO "configure" #include "confdefs.h" #if HAVE_DLFCN_H #include #endif #include #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 /* When -fvisibility=hidden is used, assume the code has been annotated correspondingly for the symbols needed. */ #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) int fnord (void) __attribute__((visibility("default"))); #endif int fnord (void) { return 42; } int main (void) { 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; else puts (dlerror ()); } /* dlclose (self); */ } else puts (dlerror ()); return status; } _LT_EOF if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then (./conftest; exit; ) >&5 2>/dev/null lt_status=$? case x$lt_status in x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;; esac else : # compilation failed lt_cv_dlopen_self=no fi fi rm -fr conftest* ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 printf "%s\n" "$lt_cv_dlopen_self" >&6; } if test yes = "$lt_cv_dlopen_self"; then wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 printf %s "checking whether a statically linked program can dlopen itself... " >&6; } if test ${lt_cv_dlopen_self_static+y} then : printf %s "(cached) " >&6 else case e in #( e) if test yes = "$cross_compiling"; then : lt_cv_dlopen_self_static=cross else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF #line $LINENO "configure" #include "confdefs.h" #if HAVE_DLFCN_H #include #endif #include #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 /* When -fvisibility=hidden is used, assume the code has been annotated correspondingly for the symbols needed. */ #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) int fnord (void) __attribute__((visibility("default"))); #endif int fnord (void) { return 42; } int main (void) { 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; else puts (dlerror ()); } /* dlclose (self); */ } else puts (dlerror ()); return status; } _LT_EOF if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then (./conftest; exit; ) >&5 2>/dev/null lt_status=$? case x$lt_status in x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;; esac else : # compilation failed lt_cv_dlopen_self_static=no fi fi rm -fr conftest* ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 printf "%s\n" "$lt_cv_dlopen_self_static" >&6; } 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 striplib= old_striplib= { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 printf %s "checking whether stripping libraries is possible... " >&6; } if test -z "$STRIP"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } else if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then old_striplib="$STRIP --strip-debug" striplib="$STRIP --strip-unneeded" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } else case $host_os in darwin*) # FIXME - insert some real tests, host_os isn't really good enough striplib="$STRIP -x" old_striplib="$STRIP -S" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } ;; freebsd*) if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then old_striplib="$STRIP --strip-debug" striplib="$STRIP --strip-unneeded" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi ;; *) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } ;; esac fi fi # Report what library types will actually be built { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 printf %s "checking if libtool supports shared libraries... " >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 printf "%s\n" "$can_build_shared" >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 printf %s "checking whether to build shared libraries... " >&6; } test no = "$can_build_shared" && 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 yes = "$enable_shared" && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[4-9]*) if test ia64 != "$host_cpu"; then case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in yes,aix,yes) ;; # shared object as lib.so file only yes,svr4,*) ;; # shared object as lib.so archive member only yes,*) enable_static=no ;; # shared object in lib.a archive as well esac fi ;; esac { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 printf "%s\n" "$enable_shared" >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 printf %s "checking whether to build static libraries... " >&6; } # Make sure either enable_shared or enable_static is yes. test yes = "$enable_shared" || enable_static=yes { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 printf "%s\n" "$enable_static" >&6; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu CC=$lt_save_CC ac_config_commands="$ac_config_commands libtool" # Only expand once: # Check header filess. ac_fn_c_check_header_compile "$LINENO" "sys/prctl.h" "ac_cv_header_sys_prctl_h" "$ac_includes_default" if test "x$ac_cv_header_sys_prctl_h" = xyes then : printf "%s\n" "#define HAVE_SYS_PRCTL_H 1" >>confdefs.h fi # Check functions. ac_fn_c_check_func "$LINENO" "daemon" "ac_cv_func_daemon" if test "x$ac_cv_func_daemon" = xyes then : printf "%s\n" "#define HAVE_DAEMON 1" >>confdefs.h fi # Check dlclose() in libc.so. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlclose in -lc" >&5 printf %s "checking for dlclose in -lc... " >&6; } if test ${ac_cv_lib_c_dlclose+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_check_lib_save_LIBS=$LIBS LIBS="-lc $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. The 'extern "C"' is for builds by C++ compilers; although this is not generally supported in C code supporting it here has little cost and some practical benefit (sr 110532). */ #ifdef __cplusplus extern "C" #endif char dlclose (void); int main (void) { return dlclose (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_c_dlclose=yes else case e in #( e) ac_cv_lib_c_dlclose=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_dlclose" >&5 printf "%s\n" "$ac_cv_lib_c_dlclose" >&6; } if test "x$ac_cv_lib_c_dlclose" = xyes then : LIBDL="" else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlclose in -ldl" >&5 printf %s "checking for dlclose in -ldl... " >&6; } if test ${ac_cv_lib_dl_dlclose+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. The 'extern "C"' is for builds by C++ compilers; although this is not generally supported in C code supporting it here has little cost and some practical benefit (sr 110532). */ #ifdef __cplusplus extern "C" #endif char dlclose (void); int main (void) { return dlclose (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_dl_dlclose=yes else case e in #( e) ac_cv_lib_dl_dlclose=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlclose" >&5 printf "%s\n" "$ac_cv_lib_dl_dlclose" >&6; } if test "x$ac_cv_lib_dl_dlclose" = xyes then : LIBDL="-ldl" fi ;; esac fi # Check if cross compiling. if test "x$cross_compiling" = xyes; then CROSS_COMPILING_TRUE= CROSS_COMPILING_FALSE='#' else CROSS_COMPILING_TRUE='#' CROSS_COMPILING_FALSE= fi # Check endianness. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5 printf %s "checking whether byte ordering is bigendian... " >&6; } if test ${ac_cv_c_bigendian+y} then : printf %s "(cached) " >&6 else case e in #( e) ac_cv_c_bigendian=unknown # See if we're dealing with a universal compiler. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifndef __APPLE_CC__ not a universal capable compiler #endif typedef int dummy; _ACEOF if ac_fn_c_try_compile "$LINENO" then : # Check for potential -arch flags. It is not universal unless # there are at least two -arch flags with different values. ac_arch= ac_prev= for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do if test -n "$ac_prev"; then case $ac_word in i?86 | x86_64 | ppc | ppc64) if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then ac_arch=$ac_word else ac_cv_c_bigendian=universal break fi ;; esac ac_prev= elif test "x$ac_word" = "x-arch"; then ac_prev=arch fi done fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext if test $ac_cv_c_bigendian = unknown; then # See if sys/param.h defines the BYTE_ORDER macro. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include int main (void) { #if ! (defined BYTE_ORDER && defined BIG_ENDIAN \\ && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \\ && LITTLE_ENDIAN) bogus endian macros #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : # It does; now see whether it defined to BIG_ENDIAN or not. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include int main (void) { #if BYTE_ORDER != BIG_ENDIAN not big endian #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_c_bigendian=yes else case e in #( e) ac_cv_c_bigendian=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi if test $ac_cv_c_bigendian = unknown; then # See if defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris). cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main (void) { #if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN) bogus endian macros #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : # It does; now see whether it defined to _BIG_ENDIAN or not. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main (void) { #ifndef _BIG_ENDIAN not big endian #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_c_bigendian=yes else case e in #( e) ac_cv_c_bigendian=no ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi if test $ac_cv_c_bigendian = unknown; then # Compile a test program. if test "$cross_compiling" = yes then : # Try to guess by grepping values from an object file. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ unsigned short int ascii_mm[] = { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; unsigned short int ascii_ii[] = { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; int use_ascii (int i) { return ascii_mm[i] + ascii_ii[i]; } unsigned short int ebcdic_ii[] = { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; unsigned short int ebcdic_mm[] = { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; int use_ebcdic (int i) { return ebcdic_mm[i] + ebcdic_ii[i]; } int main (int argc, char **argv) { /* Intimidate the compiler so that it does not optimize the arrays away. */ char *p = argv[0]; ascii_mm[1] = *p++; ebcdic_mm[1] = *p++; ascii_ii[1] = *p++; ebcdic_ii[1] = *p++; return use_ascii (argc) == use_ebcdic (*p); } _ACEOF if ac_fn_c_try_link "$LINENO" then : if grep BIGenDianSyS conftest$ac_exeext >/dev/null; then ac_cv_c_bigendian=yes fi if grep LiTTleEnDian conftest$ac_exeext >/dev/null ; then if test "$ac_cv_c_bigendian" = unknown; then ac_cv_c_bigendian=no else # finding both strings is unlikely to happen, but who knows? ac_cv_c_bigendian=unknown fi fi fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_includes_default int main (void) { /* Are we little or big endian? From Harbison&Steele. */ union { long int l; char c[sizeof (long int)]; } u; u.l = 1; return u.c[sizeof (long int) - 1] == 1; ; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO" then : ac_cv_c_bigendian=no else case e in #( e) ac_cv_c_bigendian=yes ;; esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext ;; esac fi fi ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5 printf "%s\n" "$ac_cv_c_bigendian" >&6; } case $ac_cv_c_bigendian in #( yes) ENDIAN=big;; #( no) ENDIAN=little ;; #( universal) ENDIAN=big ;; #( *) ENDIAN=unknown ;; esac if test x"$ENDIAN" != xlittle -a x"$ENDIAN" != xbig; then as_fn_error $? "Cannot determine endianness. Use ac_cv_c_bigendian to yes or no" "$LINENO" 5 fi ENDIAN_MSG="$ENDIAN (ac_cv_c_bigendian=$ac_cv_c_bigendian)" # Check packages. # Check glib2. # Check whether --enable-glibtest was given. if test ${enable_glibtest+y} then : enableval=$enable_glibtest; else case e in #( e) enable_glibtest=yes ;; esac fi min_glib_version=2.0.0 pkg_config_args="glib-2.0 >= $min_glib_version" for module in . do case "$module" in gmodule) pkg_config_args="$pkg_config_args gmodule-2.0" ;; gmodule-no-export) pkg_config_args="$pkg_config_args gmodule-no-export-2.0" ;; gobject) pkg_config_args="$pkg_config_args gobject-2.0" ;; gthread) pkg_config_args="$pkg_config_args gthread-2.0" ;; gio*) pkg_config_args="$pkg_config_args $module-2.0" ;; esac done if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_PKG_CONFIG+y} then : printf %s "(cached) " >&6 else case e in #( e) case $PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 printf "%s\n" "$PKG_CONFIG" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_path_PKG_CONFIG"; then ac_pt_PKG_CONFIG=$PKG_CONFIG # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_ac_pt_PKG_CONFIG+y} then : printf %s "(cached) " >&6 else case e in #( e) case $ac_pt_PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_ac_pt_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG if test -n "$ac_pt_PKG_CONFIG"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 printf "%s\n" "$ac_pt_PKG_CONFIG" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_pt_PKG_CONFIG" = x; then PKG_CONFIG="" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac PKG_CONFIG=$ac_pt_PKG_CONFIG fi else PKG_CONFIG="$ac_cv_path_PKG_CONFIG" fi fi if test -n "$PKG_CONFIG"; then _pkg_min_version=0.16 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 printf %s "checking pkg-config is at least version $_pkg_min_version... " >&6; } if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } PKG_CONFIG="" fi fi if test -z "$PKG_CONFIG"; then as_fn_error $? "pkg-config not found" "$LINENO" 5 fi no_glib="" if test "x$PKG_CONFIG" = x ; then no_glib=yes PKG_CONFIG=no fi pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $pkg_config_args" >&5 printf %s "checking for $pkg_config_args... " >&6; } if test -n "$GLIB_CFLAGS"; then pkg_cv_GLIB_CFLAGS="$GLIB_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$pkg_config_args\""; } >&5 ($PKG_CONFIG --exists --print-errors "$pkg_config_args") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GLIB_CFLAGS=`$PKG_CONFIG --cflags "$pkg_config_args" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GLIB_LIBS"; then pkg_cv_GLIB_LIBS="$GLIB_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$pkg_config_args\""; } >&5 ($PKG_CONFIG --exists --print-errors "$pkg_config_args") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GLIB_LIBS=`$PKG_CONFIG --libs "$pkg_config_args" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GLIB_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$pkg_config_args" 2>&1` else GLIB_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$pkg_config_args" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GLIB_PKG_ERRORS" >&5 : elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } : else GLIB_CFLAGS=$pkg_cv_GLIB_CFLAGS GLIB_LIBS=$pkg_cv_GLIB_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } : fi if test -n "$GLIB_GENMARSHAL"; then pkg_cv_GLIB_GENMARSHAL="$GLIB_GENMARSHAL" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GLIB_GENMARSHAL=`$PKG_CONFIG --variable="glib_genmarshal" "glib-2.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi GLIB_GENMARSHAL=$pkg_cv_GLIB_GENMARSHAL if test "x$GLIB_GENMARSHAL" = x"" then : fi if test -n "$GOBJECT_QUERY"; then pkg_cv_GOBJECT_QUERY="$GOBJECT_QUERY" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GOBJECT_QUERY=`$PKG_CONFIG --variable="gobject_query" "glib-2.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi GOBJECT_QUERY=$pkg_cv_GOBJECT_QUERY if test "x$GOBJECT_QUERY" = x"" then : fi if test -n "$GLIB_MKENUMS"; then pkg_cv_GLIB_MKENUMS="$GLIB_MKENUMS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GLIB_MKENUMS=`$PKG_CONFIG --variable="glib_mkenums" "glib-2.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi GLIB_MKENUMS=$pkg_cv_GLIB_MKENUMS if test "x$GLIB_MKENUMS" = x"" then : fi if test -n "$GLIB_COMPILE_RESOURCES"; then pkg_cv_GLIB_COMPILE_RESOURCES="$GLIB_COMPILE_RESOURCES" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gio-2.0") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GLIB_COMPILE_RESOURCES=`$PKG_CONFIG --variable="glib_compile_resources" "gio-2.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi GLIB_COMPILE_RESOURCES=$pkg_cv_GLIB_COMPILE_RESOURCES if test "x$GLIB_COMPILE_RESOURCES" = x"" then : fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GLIB - version >= $min_glib_version" >&5 printf %s "checking for GLIB - version >= $min_glib_version... " >&6; } if test x$PKG_CONFIG != xno ; then ## don't try to run the test against uninstalled libtool libs if $PKG_CONFIG --uninstalled $pkg_config_args; then echo "Will use uninstalled version of GLib found in PKG_CONFIG_PATH" enable_glibtest=no fi if $PKG_CONFIG --atleast-version $min_glib_version $pkg_config_args; then : else no_glib=yes fi fi if test x"$no_glib" = x ; then glib_config_major_version=`$PKG_CONFIG --modversion glib-2.0 | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'` glib_config_minor_version=`$PKG_CONFIG --modversion glib-2.0 | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\2/'` glib_config_micro_version=`$PKG_CONFIG --modversion glib-2.0 | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\3/'` if test "x$enable_glibtest" = "xyes" ; then ac_save_CFLAGS="$CFLAGS" ac_save_LIBS="$LIBS" CFLAGS="$CFLAGS $GLIB_CFLAGS" LIBS="$GLIB_LIBS $LIBS" rm -f conf.glibtest if test "$cross_compiling" = yes then : echo $ac_n "cross compiling; assumed OK... $ac_c" else case e in #( e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include int main (void) { unsigned int major, minor, micro; fclose (fopen ("conf.glibtest", "w")); if (sscanf("$min_glib_version", "%u.%u.%u", &major, &minor, µ) != 3) { printf("%s, bad version string\n", "$min_glib_version"); exit(1); } if ((glib_major_version != $glib_config_major_version) || (glib_minor_version != $glib_config_minor_version) || (glib_micro_version != $glib_config_micro_version)) { printf("\n*** 'pkg-config --modversion glib-2.0' returned %d.%d.%d, but GLIB (%d.%d.%d)\n", $glib_config_major_version, $glib_config_minor_version, $glib_config_micro_version, glib_major_version, glib_minor_version, glib_micro_version); printf ("*** was found! If pkg-config was correct, then it is best\n"); printf ("*** to remove the old version of GLib. You may also be able to fix the error\n"); printf("*** by modifying your LD_LIBRARY_PATH environment variable, or by editing\n"); printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n"); printf("*** required on your system.\n"); printf("*** If pkg-config was wrong, set the environment variable PKG_CONFIG_PATH\n"); printf("*** to point to the correct configuration files\n"); } else if ((glib_major_version != GLIB_MAJOR_VERSION) || (glib_minor_version != GLIB_MINOR_VERSION) || (glib_micro_version != GLIB_MICRO_VERSION)) { printf("*** GLib header files (version %d.%d.%d) do not match\n", GLIB_MAJOR_VERSION, GLIB_MINOR_VERSION, GLIB_MICRO_VERSION); printf("*** library (version %d.%d.%d)\n", glib_major_version, glib_minor_version, glib_micro_version); } else { if ((glib_major_version > major) || ((glib_major_version == major) && (glib_minor_version > minor)) || ((glib_major_version == major) && (glib_minor_version == minor) && (glib_micro_version >= micro))) { return 0; } else { printf("\n*** An old version of GLib (%u.%u.%u) was found.\n", glib_major_version, glib_minor_version, glib_micro_version); printf("*** You need a version of GLib newer than %u.%u.%u. The latest version of\n", major, minor, micro); printf("*** GLib is always available from ftp://ftp.gtk.org.\n"); printf("***\n"); printf("*** If you have already installed a sufficiently new version, this error\n"); printf("*** probably means that the wrong copy of the pkg-config shell script is\n"); printf("*** being found. The easiest way to fix this is to remove the old version\n"); printf("*** of GLib, but you can also set the PKG_CONFIG environment to point to the\n"); printf("*** correct copy of pkg-config. (In this case, you will have to\n"); printf("*** modify your LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf\n"); printf("*** so that the correct libraries are found at run-time))\n"); } } return 1; } _ACEOF if ac_fn_c_try_run "$LINENO" then : else case e in #( e) no_glib=yes ;; esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext ;; esac fi CFLAGS="$ac_save_CFLAGS" LIBS="$ac_save_LIBS" fi fi if test "x$no_glib" = x ; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes (version $glib_config_major_version.$glib_config_minor_version.$glib_config_micro_version)" >&5 printf "%s\n" "yes (version $glib_config_major_version.$glib_config_minor_version.$glib_config_micro_version)" >&6; } : else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if test "$PKG_CONFIG" = "no" ; then echo "*** A new enough version of pkg-config was not found." echo "*** See http://www.freedesktop.org/software/pkgconfig/" else if test -f conf.glibtest ; then : else echo "*** Could not run GLib test program, checking why..." ac_save_CFLAGS="$CFLAGS" ac_save_LIBS="$LIBS" CFLAGS="$CFLAGS $GLIB_CFLAGS" LIBS="$LIBS $GLIB_LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include int main (void) { return ((glib_major_version) || (glib_minor_version) || (glib_micro_version)); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO" then : echo "*** The test program compiled, but did not run. This usually means" echo "*** that the run-time linker is not finding GLib or finding the wrong" echo "*** version of GLib. If it is not finding GLib, you'll need to set your" echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" echo "*** to the installed location Also, make sure you have run ldconfig if that" echo "*** is required on your system" echo "***" echo "*** If you have an old version installed, it is best to remove it, although" echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" else case e in #( e) echo "*** The test program failed to compile or link. See the file config.log for the" echo "*** exact error that occurred. This usually means GLib is incorrectly installed." ;; esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext CFLAGS="$ac_save_CFLAGS" LIBS="$ac_save_LIBS" fi fi GLIB_CFLAGS="" GLIB_LIBS="" GLIB_GENMARSHAL="" GOBJECT_QUERY="" GLIB_MKENUMS="" GLIB_COMPILE_RESOURCES="" : fi rm -f conf.glibtest pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for glib-2.0 >= 2.46.0 " >&5 printf %s "checking for glib-2.0 >= 2.46.0 ... " >&6; } if test -n "$GLIB2_CFLAGS"; then pkg_cv_GLIB2_CFLAGS="$GLIB2_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" glib-2.0 >= 2.46.0 \""; } >&5 ($PKG_CONFIG --exists --print-errors " glib-2.0 >= 2.46.0 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GLIB2_CFLAGS=`$PKG_CONFIG --cflags " glib-2.0 >= 2.46.0 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GLIB2_LIBS"; then pkg_cv_GLIB2_LIBS="$GLIB2_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" glib-2.0 >= 2.46.0 \""; } >&5 ($PKG_CONFIG --exists --print-errors " glib-2.0 >= 2.46.0 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GLIB2_LIBS=`$PKG_CONFIG --libs " glib-2.0 >= 2.46.0 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GLIB2_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " glib-2.0 >= 2.46.0 " 2>&1` else GLIB2_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " glib-2.0 >= 2.46.0 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GLIB2_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( glib-2.0 >= 2.46.0 ) were not met: $GLIB2_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables GLIB2_CFLAGS and GLIB2_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables GLIB2_CFLAGS and GLIB2_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else GLIB2_CFLAGS=$pkg_cv_GLIB2_CFLAGS GLIB2_LIBS=$pkg_cv_GLIB2_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gobject-2.0 >= 2.46.0 " >&5 printf %s "checking for gobject-2.0 >= 2.46.0 ... " >&6; } if test -n "$GOBJECT2_CFLAGS"; then pkg_cv_GOBJECT2_CFLAGS="$GOBJECT2_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" gobject-2.0 >= 2.46.0 \""; } >&5 ($PKG_CONFIG --exists --print-errors " gobject-2.0 >= 2.46.0 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GOBJECT2_CFLAGS=`$PKG_CONFIG --cflags " gobject-2.0 >= 2.46.0 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GOBJECT2_LIBS"; then pkg_cv_GOBJECT2_LIBS="$GOBJECT2_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" gobject-2.0 >= 2.46.0 \""; } >&5 ($PKG_CONFIG --exists --print-errors " gobject-2.0 >= 2.46.0 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GOBJECT2_LIBS=`$PKG_CONFIG --libs " gobject-2.0 >= 2.46.0 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GOBJECT2_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " gobject-2.0 >= 2.46.0 " 2>&1` else GOBJECT2_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " gobject-2.0 >= 2.46.0 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GOBJECT2_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( gobject-2.0 >= 2.46.0 ) were not met: $GOBJECT2_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables GOBJECT2_CFLAGS and GOBJECT2_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables GOBJECT2_CFLAGS and GOBJECT2_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else GOBJECT2_CFLAGS=$pkg_cv_GOBJECT2_CFLAGS GOBJECT2_LIBS=$pkg_cv_GOBJECT2_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gio-2.0 gio-unix-2.0 >= 2.46.0 " >&5 printf %s "checking for gio-2.0 gio-unix-2.0 >= 2.46.0 ... " >&6; } if test -n "$GIO2_CFLAGS"; then pkg_cv_GIO2_CFLAGS="$GIO2_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" gio-2.0 gio-unix-2.0 >= 2.46.0 \""; } >&5 ($PKG_CONFIG --exists --print-errors " gio-2.0 gio-unix-2.0 >= 2.46.0 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GIO2_CFLAGS=`$PKG_CONFIG --cflags " gio-2.0 gio-unix-2.0 >= 2.46.0 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GIO2_LIBS"; then pkg_cv_GIO2_LIBS="$GIO2_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" gio-2.0 gio-unix-2.0 >= 2.46.0 \""; } >&5 ($PKG_CONFIG --exists --print-errors " gio-2.0 gio-unix-2.0 >= 2.46.0 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GIO2_LIBS=`$PKG_CONFIG --libs " gio-2.0 gio-unix-2.0 >= 2.46.0 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GIO2_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " gio-2.0 gio-unix-2.0 >= 2.46.0 " 2>&1` else GIO2_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " gio-2.0 gio-unix-2.0 >= 2.46.0 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GIO2_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( gio-2.0 gio-unix-2.0 >= 2.46.0 ) were not met: $GIO2_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables GIO2_CFLAGS and GIO2_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables GIO2_CFLAGS and GIO2_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else GIO2_CFLAGS=$pkg_cv_GIO2_CFLAGS GIO2_LIBS=$pkg_cv_GIO2_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gthread-2.0 >= 2.46.0 " >&5 printf %s "checking for gthread-2.0 >= 2.46.0 ... " >&6; } if test -n "$GTHREAD2_CFLAGS"; then pkg_cv_GTHREAD2_CFLAGS="$GTHREAD2_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" gthread-2.0 >= 2.46.0 \""; } >&5 ($PKG_CONFIG --exists --print-errors " gthread-2.0 >= 2.46.0 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTHREAD2_CFLAGS=`$PKG_CONFIG --cflags " gthread-2.0 >= 2.46.0 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GTHREAD2_LIBS"; then pkg_cv_GTHREAD2_LIBS="$GTHREAD2_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" gthread-2.0 >= 2.46.0 \""; } >&5 ($PKG_CONFIG --exists --print-errors " gthread-2.0 >= 2.46.0 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTHREAD2_LIBS=`$PKG_CONFIG --libs " gthread-2.0 >= 2.46.0 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GTHREAD2_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " gthread-2.0 >= 2.46.0 " 2>&1` else GTHREAD2_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " gthread-2.0 >= 2.46.0 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GTHREAD2_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( gthread-2.0 >= 2.46.0 ) were not met: $GTHREAD2_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables GTHREAD2_CFLAGS and GTHREAD2_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables GTHREAD2_CFLAGS and GTHREAD2_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else GTHREAD2_CFLAGS=$pkg_cv_GTHREAD2_CFLAGS GTHREAD2_LIBS=$pkg_cv_GTHREAD2_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.65.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.65.0") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then printf "%s\n" "#define GLIB2_EMBED_ERRNO_H TRUE" >>confdefs.h fi if test "x$cross_compiling" = "xyes"; then if test "x$ac_cv_env_PKG_CONFIG_FOR_BUILD_set" != "xset"; then # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_PKG_CONFIG_FOR_BUILD+y} then : printf %s "(cached) " >&6 else case e in #( e) case $PKG_CONFIG_FOR_BUILD in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG_FOR_BUILD="$PKG_CONFIG_FOR_BUILD" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_PKG_CONFIG_FOR_BUILD="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi PKG_CONFIG_FOR_BUILD=$ac_cv_path_PKG_CONFIG_FOR_BUILD if test -n "$PKG_CONFIG_FOR_BUILD"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG_FOR_BUILD" >&5 printf "%s\n" "$PKG_CONFIG_FOR_BUILD" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -n "$PKG_CONFIG_FOR_BUILD"; then _pkg_for_build_min_version=0.9.0 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking build system's pkg-config is at least version $_pkg_min_version" >&5 printf %s "checking build system's pkg-config is at least version $_pkg_min_version... " >&6; } if $PKG_CONFIG_FOR_BUILD --atleast-pkgconfig-version $_pkg_min_version; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } PKG_CONFIG_FOR_BUILD="" fi fi GLIB_CFLAGS_FOR_BUILD=`$PKG_CONFIG_FOR_BUILD --cflags glib-2.0 gobject-2.0 gio-2.0 gio-unix-2.0 gthread-2.0` GLIB_LIBS_FOR_BUILD=`$PKG_CONFIG_FOR_BUILD --libs glib-2.0 gobject-2.0 gio-2.0 gio-unix-2.0 gthread-2.0` fi # --disable-tests option. # Check whether --enable-tests was given. if test ${enable_tests+y} then : enableval=$enable_tests; enable_tests=$enableval else case e in #( e) enable_tests=yes ;; esac fi if test x"$enable_tests" = x"yes"; then ENABLE_TESTS_TRUE= ENABLE_TESTS_FALSE='#' else ENABLE_TESTS_TRUE='#' ENABLE_TESTS_FALSE= fi if test x"$enable_tests" != x"yes"; then enable_tests="no (disabled, use --enable-tests to enable)" fi # --disable-gtk2 option. # Check whether --enable-gtk2 was given. if test ${enable_gtk2+y} then : enableval=$enable_gtk2; enable_gtk2=$enableval else case e in #( e) enable_gtk2=yes ;; esac fi if test x"$enable_gtk2" = x"yes"; then ENABLE_GTK2_TRUE= ENABLE_GTK2_FALSE='#' else ENABLE_GTK2_TRUE='#' ENABLE_GTK2_FALSE= fi # --disable-gtk3 option. # Check whether --enable-gtk3 was given. if test ${enable_gtk3+y} then : enableval=$enable_gtk3; enable_gtk3=$enableval else case e in #( e) enable_gtk3=yes ;; esac fi if test x"$enable_gtk3" = x"yes"; then ENABLE_GTK3_TRUE= ENABLE_GTK3_FALSE='#' else ENABLE_GTK3_TRUE='#' ENABLE_GTK3_FALSE= fi # --enable-gtk4 option. # Check whether --enable-gtk4 was given. if test ${enable_gtk4+y} then : enableval=$enable_gtk4; enable_gtk4=$enableval else case e in #( e) enable_gtk4=yes ;; esac fi if test x"$enable_gtk4" = x"yes"; then ENABLE_GTK4_TRUE= ENABLE_GTK4_FALSE='#' else ENABLE_GTK4_TRUE='#' ENABLE_GTK4_FALSE= fi if test x"$enable_gtk3" = x"yes" || test x"$enable_gtk4" = x"yes"; then ENABLE_GTK3_OR_4_TRUE= ENABLE_GTK3_OR_4_FALSE='#' else ENABLE_GTK3_OR_4_TRUE='#' ENABLE_GTK3_OR_4_FALSE= fi # --disable-xim option. # Check whether --enable-xim was given. if test ${enable_xim+y} then : enableval=$enable_xim; enable_xim=$enableval else case e in #( e) enable_xim=yes ;; esac fi if test x"$enable_xim" = x"yes"; then ENABLE_XIM_TRUE= ENABLE_XIM_FALSE='#' else ENABLE_XIM_TRUE='#' ENABLE_XIM_FALSE= fi # --enable-wayland option. # Check whether --enable-wayland was given. if test ${enable_wayland+y} then : enableval=$enable_wayland; enable_wayland=$enableval else case e in #( e) enable_wayland=yes ;; esac fi if test x"$enable_wayland" = x"yes"; then ENABLE_WAYLAND_TRUE= ENABLE_WAYLAND_FALSE='#' else ENABLE_WAYLAND_TRUE='#' ENABLE_WAYLAND_FALSE= fi # --enable-appindicator option. # Check whether --enable-appindicator was given. if test ${enable_appindicator+y} then : enableval=$enable_appindicator; enable_appindicator=$enableval else case e in #( e) enable_appindicator=yes ;; esac fi if test x"$enable_appindicator" = x"yes"; then ENABLE_APPINDICATOR_TRUE= ENABLE_APPINDICATOR_FALSE='#' else ENABLE_APPINDICATOR_TRUE='#' ENABLE_APPINDICATOR_FALSE= fi if test x"$enable_gtk2" = x"yes"; then # check for gtk2 pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gtk+-2.0 " >&5 printf %s "checking for gtk+-2.0 ... " >&6; } if test -n "$GTK2_CFLAGS"; then pkg_cv_GTK2_CFLAGS="$GTK2_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" gtk+-2.0 \""; } >&5 ($PKG_CONFIG --exists --print-errors " gtk+-2.0 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTK2_CFLAGS=`$PKG_CONFIG --cflags " gtk+-2.0 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GTK2_LIBS"; then pkg_cv_GTK2_LIBS="$GTK2_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" gtk+-2.0 \""; } >&5 ($PKG_CONFIG --exists --print-errors " gtk+-2.0 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTK2_LIBS=`$PKG_CONFIG --libs " gtk+-2.0 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GTK2_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " gtk+-2.0 " 2>&1` else GTK2_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " gtk+-2.0 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GTK2_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( gtk+-2.0 ) were not met: $GTK2_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables GTK2_CFLAGS and GTK2_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables GTK2_CFLAGS and GTK2_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else GTK2_CFLAGS=$pkg_cv_GTK2_CFLAGS GTK2_LIBS=$pkg_cv_GTK2_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi gtk2_binary_version=`$PKG_CONFIG --variable=gtk_binary_version gtk+-2.0` GTK2_IM_MODULEDIR="$libdir"/gtk-2.0/$gtk2_binary_version/immodules enable_gtk2="yes (enabled, use --disable-gtk2 to disable)" fi if test x"$enable_gtk3" = x"yes"; then # check for gtk3 pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gtk+-3.0 >= 3.12.0 " >&5 printf %s "checking for gtk+-3.0 >= 3.12.0 ... " >&6; } if test -n "$GTK3_CFLAGS"; then pkg_cv_GTK3_CFLAGS="$GTK3_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" gtk+-3.0 >= 3.12.0 \""; } >&5 ($PKG_CONFIG --exists --print-errors " gtk+-3.0 >= 3.12.0 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTK3_CFLAGS=`$PKG_CONFIG --cflags " gtk+-3.0 >= 3.12.0 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GTK3_LIBS"; then pkg_cv_GTK3_LIBS="$GTK3_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" gtk+-3.0 >= 3.12.0 \""; } >&5 ($PKG_CONFIG --exists --print-errors " gtk+-3.0 >= 3.12.0 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTK3_LIBS=`$PKG_CONFIG --libs " gtk+-3.0 >= 3.12.0 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GTK3_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " gtk+-3.0 >= 3.12.0 " 2>&1` else GTK3_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " gtk+-3.0 >= 3.12.0 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GTK3_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( gtk+-3.0 >= 3.12.0 ) were not met: $GTK3_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables GTK3_CFLAGS and GTK3_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables GTK3_CFLAGS and GTK3_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else GTK3_CFLAGS=$pkg_cv_GTK3_CFLAGS GTK3_LIBS=$pkg_cv_GTK3_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi if test x"$enable_wayland" = x"yes"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gdk-wayland-3.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gdk-wayland-3.0") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then enable_gdk3_wayland=yes else enable_gdk3_wayland=no fi else enable_gdk3_wayland=no fi gtk3_binary_version=`$PKG_CONFIG --variable=gtk_binary_version gtk+-3.0` GTK3_IM_MODULEDIR="$libdir"/gtk-3.0/$gtk3_binary_version/immodules else enable_gdk3_wayland=no fi if test x"$enable_gdk3_wayland" != x"yes"; then enable_gdk3_wayland="no (disabled, need to install gdk-wayland-3.0.pc)" fi if test x"$enable_gdk3_wayland" = x"yes"; then ENABLE_GDK3_WAYLAND_TRUE= ENABLE_GDK3_WAYLAND_FALSE='#' else ENABLE_GDK3_WAYLAND_TRUE='#' ENABLE_GDK3_WAYLAND_FALSE= fi IBUS_UI_WAYLAND_DESKTOP="org.freedesktop.IBus.Panel.Wayland.Gtk3.desktop" printf "%s\n" "#define UI_WAYLAND_DESKTOP \"$IBUS_UI_WAYLAND_DESKTOP\"" >>confdefs.h printf "%s\n" "#define DATADIR \"$ibus_datadir\"" >>confdefs.h if test x"$enable_gtk4" = x"yes"; then # check for gtk4 pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gtk4 " >&5 printf %s "checking for gtk4 ... " >&6; } if test -n "$GTK4_CFLAGS"; then pkg_cv_GTK4_CFLAGS="$GTK4_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" gtk4 \""; } >&5 ($PKG_CONFIG --exists --print-errors " gtk4 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTK4_CFLAGS=`$PKG_CONFIG --cflags " gtk4 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GTK4_LIBS"; then pkg_cv_GTK4_LIBS="$GTK4_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" gtk4 \""; } >&5 ($PKG_CONFIG --exists --print-errors " gtk4 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTK4_LIBS=`$PKG_CONFIG --libs " gtk4 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GTK4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " gtk4 " 2>&1` else GTK4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " gtk4 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GTK4_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( gtk4 ) were not met: $GTK4_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables GTK4_CFLAGS and GTK4_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables GTK4_CFLAGS and GTK4_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else GTK4_CFLAGS=$pkg_cv_GTK4_CFLAGS GTK4_LIBS=$pkg_cv_GTK4_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi gtk4_binary_version=`$PKG_CONFIG --variable=gtk_binary_version gtk4` GTK4_IM_MODULEDIR="$libdir"/gtk-4.0/$gtk4_binary_version/immodules enable_gtk4="yes (enabled, use --disable-gtk4 to disable)" fi if test x"$enable_xim" = x"yes"; then # Check for x11 pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for x11 " >&5 printf %s "checking for x11 ... " >&6; } if test -n "$X11_CFLAGS"; then pkg_cv_X11_CFLAGS="$X11_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" x11 \""; } >&5 ($PKG_CONFIG --exists --print-errors " x11 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_X11_CFLAGS=`$PKG_CONFIG --cflags " x11 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$X11_LIBS"; then pkg_cv_X11_LIBS="$X11_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" x11 \""; } >&5 ($PKG_CONFIG --exists --print-errors " x11 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_X11_LIBS=`$PKG_CONFIG --libs " x11 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then X11_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " x11 " 2>&1` else X11_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " x11 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$X11_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( x11 ) were not met: $X11_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables X11_CFLAGS and X11_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables X11_CFLAGS and X11_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else X11_CFLAGS=$pkg_cv_X11_CFLAGS X11_LIBS=$pkg_cv_X11_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi ac_fn_c_check_header_compile "$LINENO" "X11/XKBlib.h" "ac_cv_header_X11_XKBlib_h" "$ac_includes_default" if test "x$ac_cv_header_X11_XKBlib_h" = xyes then : printf "%s\n" "#define HAVE_X11_XKBLIB_H 1" >>confdefs.h fi # if we don't have gtk3 yet, check for gtk2 if test x"$enable_gtk3" != x"yes"; then # check for gtk2 pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gtk+-2.0 " >&5 printf %s "checking for gtk+-2.0 ... " >&6; } if test -n "$GTK2_CFLAGS"; then pkg_cv_GTK2_CFLAGS="$GTK2_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" gtk+-2.0 \""; } >&5 ($PKG_CONFIG --exists --print-errors " gtk+-2.0 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTK2_CFLAGS=`$PKG_CONFIG --cflags " gtk+-2.0 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GTK2_LIBS"; then pkg_cv_GTK2_LIBS="$GTK2_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" gtk+-2.0 \""; } >&5 ($PKG_CONFIG --exists --print-errors " gtk+-2.0 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTK2_LIBS=`$PKG_CONFIG --libs " gtk+-2.0 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GTK2_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " gtk+-2.0 " 2>&1` else GTK2_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " gtk+-2.0 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GTK2_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( gtk+-2.0 ) were not met: $GTK2_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables GTK2_CFLAGS and GTK2_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables GTK2_CFLAGS and GTK2_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else GTK2_CFLAGS=$pkg_cv_GTK2_CFLAGS GTK2_LIBS=$pkg_cv_GTK2_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi fi XIM_CLI_ARG=--xim printf "%s\n" "#define HAVE_XIM 1" >>confdefs.h enable_xim="yes (enabled, use --disable-xim to disable)" fi if test x"$enable_gtk3" = x"yes"; then enable_gtk3="yes (enabled, use --disable-gtk3 to disable)" fi if $PKG_CONFIG --exists x11; then X11_PREFIX="`$PKG_CONFIG --variable=prefix x11`" elif test x"$prefix" != xNONE; then X11_PREFIX="$prefix" else X11_PREFIX="$ac_default_prefix" fi # Check locale dir for Compose files. if test x"$cross_compiling" != xyes; then as_ac_File=`printf "%s\n" "ac_cv_file_$X11_PREFIX/share/X11/locale/locale.dir" | sed "$as_sed_sh"` { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $X11_PREFIX/share/X11/locale/locale.dir" >&5 printf %s "checking for $X11_PREFIX/share/X11/locale/locale.dir... " >&6; } if eval test \${$as_ac_File+y} then : printf %s "(cached) " >&6 else case e in #( e) test "$cross_compiling" = yes && as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5 if test -r "$X11_PREFIX/share/X11/locale/locale.dir"; then eval "$as_ac_File=yes" else eval "$as_ac_File=no" fi ;; esac fi eval ac_res=\$$as_ac_File { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 printf "%s\n" "$ac_res" >&6; } if eval test \"x\$"$as_ac_File"\" = x"yes" then : X11_LOCALEDATADIR="$X11_PREFIX/share/X11/locale" else case e in #( e) as_ac_File=`printf "%s\n" "ac_cv_file_$X11_PREFIX/lib/X11/locale/locale.dir" | sed "$as_sed_sh"` { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $X11_PREFIX/lib/X11/locale/locale.dir" >&5 printf %s "checking for $X11_PREFIX/lib/X11/locale/locale.dir... " >&6; } if eval test \${$as_ac_File+y} then : printf %s "(cached) " >&6 else case e in #( e) test "$cross_compiling" = yes && as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5 if test -r "$X11_PREFIX/lib/X11/locale/locale.dir"; then eval "$as_ac_File=yes" else eval "$as_ac_File=no" fi ;; esac fi eval ac_res=\$$as_ac_File { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 printf "%s\n" "$ac_res" >&6; } if eval test \"x\$"$as_ac_File"\" = x"yes" then : X11_LOCALEDATADIR="$X11_PREFIX/lib/X11/locale" else case e in #( e) X11_LOCALEDATADIR="$(datadir)/X11/locale" ;; esac fi ;; esac fi else if test x"$X11_LOCALEDATADIR" = x; then X11_LOCALEDATADIR="$X11_PREFIX/share/X11/locale" fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: Skipping X11 locale directory check when cross compiling. Using: $X11_LOCALEDATADIR" >&5 printf "%s\n" "Skipping X11 locale directory check when cross compiling. Using: $X11_LOCALEDATADIR" >&6; } fi if test x"$enable_wayland" = x"yes"; then # Check for wayland pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wayland-client >= 1.2.0 xkbcommon " >&5 printf %s "checking for wayland-client >= 1.2.0 xkbcommon ... " >&6; } if test -n "$WAYLAND_CFLAGS"; then pkg_cv_WAYLAND_CFLAGS="$WAYLAND_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" wayland-client >= 1.2.0 xkbcommon \""; } >&5 ($PKG_CONFIG --exists --print-errors " wayland-client >= 1.2.0 xkbcommon ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_WAYLAND_CFLAGS=`$PKG_CONFIG --cflags " wayland-client >= 1.2.0 xkbcommon " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$WAYLAND_LIBS"; then pkg_cv_WAYLAND_LIBS="$WAYLAND_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" wayland-client >= 1.2.0 xkbcommon \""; } >&5 ($PKG_CONFIG --exists --print-errors " wayland-client >= 1.2.0 xkbcommon ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_WAYLAND_LIBS=`$PKG_CONFIG --libs " wayland-client >= 1.2.0 xkbcommon " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then WAYLAND_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " wayland-client >= 1.2.0 xkbcommon " 2>&1` else WAYLAND_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " wayland-client >= 1.2.0 xkbcommon " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$WAYLAND_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( wayland-client >= 1.2.0 xkbcommon ) were not met: $WAYLAND_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables WAYLAND_CFLAGS and WAYLAND_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables WAYLAND_CFLAGS and WAYLAND_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else WAYLAND_CFLAGS=$pkg_cv_WAYLAND_CFLAGS WAYLAND_LIBS=$pkg_cv_WAYLAND_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"wayland-protocols\""; } >&5 ($PKG_CONFIG --exists --print-errors "wayland-protocols") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then WAYLAND_PRTCLS_DIR="`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`" else WAYLAND_PRTCLS_DIR="/usr/share/wayland-protocols" fi WAYLAND_PRTCLS_DIR="`echo $WAYLAND_PRTCLS_DIR`" WAYLAND_IM_PRTCL_SUBDIR='unstable/input-method' WAYLAND_TEXT_PRTCL_SUBDIR='unstable/text-input' if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_PKG_CONFIG+y} then : printf %s "(cached) " >&6 else case e in #( e) case $PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 printf "%s\n" "$PKG_CONFIG" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_path_PKG_CONFIG"; then ac_pt_PKG_CONFIG=$PKG_CONFIG # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_ac_pt_PKG_CONFIG+y} then : printf %s "(cached) " >&6 else case e in #( e) case $ac_pt_PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_ac_pt_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG if test -n "$ac_pt_PKG_CONFIG"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 printf "%s\n" "$ac_pt_PKG_CONFIG" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_pt_PKG_CONFIG" = x; then PKG_CONFIG="" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac PKG_CONFIG=$ac_pt_PKG_CONFIG fi else PKG_CONFIG="$ac_cv_path_PKG_CONFIG" fi fi if test -n "$PKG_CONFIG"; then _pkg_min_version=0.9.0 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 printf %s "checking pkg-config is at least version $_pkg_min_version... " >&6; } if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } PKG_CONFIG="" fi fi if test -z "$PKG_CONFIG"; then as_fn_error $? "pkg-config not found" "$LINENO" 5 fi pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wayland-scanner >= 1.14.0" >&5 printf %s "checking for wayland-scanner >= 1.14.0... " >&6; } if test -n "$WAYLAND_SCANNER_CFLAGS"; then pkg_cv_WAYLAND_SCANNER_CFLAGS="$WAYLAND_SCANNER_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"wayland-scanner >= 1.14.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "wayland-scanner >= 1.14.0") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_WAYLAND_SCANNER_CFLAGS=`$PKG_CONFIG --cflags "wayland-scanner >= 1.14.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$WAYLAND_SCANNER_LIBS"; then pkg_cv_WAYLAND_SCANNER_LIBS="$WAYLAND_SCANNER_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"wayland-scanner >= 1.14.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "wayland-scanner >= 1.14.0") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_WAYLAND_SCANNER_LIBS=`$PKG_CONFIG --libs "wayland-scanner >= 1.14.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then WAYLAND_SCANNER_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "wayland-scanner >= 1.14.0" 2>&1` else WAYLAND_SCANNER_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "wayland-scanner >= 1.14.0" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$WAYLAND_SCANNER_PKG_ERRORS" >&5 as_fn_error $? "Package requirements (wayland-scanner >= 1.14.0) were not met: $WAYLAND_SCANNER_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables WAYLAND_SCANNER_CFLAGS and WAYLAND_SCANNER_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables WAYLAND_SCANNER_CFLAGS and WAYLAND_SCANNER_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else WAYLAND_SCANNER_CFLAGS=$pkg_cv_WAYLAND_SCANNER_CFLAGS WAYLAND_SCANNER_LIBS=$pkg_cv_WAYLAND_SCANNER_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi wayland_scanner=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner` wayland_scanner_rules=`$PKG_CONFIG --variable=pkgdatadir wayland-scanner`/wayland-scanner.mk wayland_protocoldir='$(WAYLAND_PRTCLS_DIR)/$(WAYLAND_IM_PRTCL_SUBDIR)' enable_wayland="yes (enabled, use --disable-wayland to disable)" else wayland_scanner_rules="./wayland-scanner.mk" fi # GObject introspection # Check whether --enable-introspection was given. if test ${enable_introspection+y} then : enableval=$enable_introspection; else case e in #( e) enable_introspection=auto ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gobject-introspection" >&5 printf %s "checking for gobject-introspection... " >&6; } case $enable_introspection in #( no) : found_introspection="no (disabled, use --enable-introspection to enable)" ;; #( yes) : if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : else as_fn_error $? "gobject-introspection-1.0 is not installed" "$LINENO" 5 fi if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0 >= 0.6.8\""; } >&5 ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0 >= 0.6.8") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then found_introspection=yes else as_fn_error $? "You need to have gobject-introspection >= 0.6.8 installed to build ibus" "$LINENO" 5 fi ;; #( auto) : if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0 >= 0.6.8\""; } >&5 ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0 >= 0.6.8") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then found_introspection=yes else found_introspection=no fi enable_introspection=$found_introspection ;; #( *) : as_fn_error $? "invalid argument passed to --enable-introspection, should be one of [no/auto/yes]" "$LINENO" 5 ;; esac { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $found_introspection" >&5 printf "%s\n" "$found_introspection" >&6; } EXP_VAR=_GI_EXP_DATADIR FROM_VAR="$datadir" prefix_save=$prefix exec_prefix_save=$exec_prefix if test "x$prefix" = "xNONE"; then prefix="$ac_default_prefix" fi if test "x$exec_prefix" = "xNONE"; then exec_prefix=$prefix fi full_var="$FROM_VAR" while true; do new_full_var="`eval echo $full_var`" if test "x$new_full_var" = "x$full_var"; then break; fi full_var=$new_full_var done full_var=$new_full_var _GI_EXP_DATADIR="$full_var" prefix=$prefix_save exec_prefix=$exec_prefix_save EXP_VAR=_GI_EXP_LIBDIR FROM_VAR="$libdir" prefix_save=$prefix exec_prefix_save=$exec_prefix if test "x$prefix" = "xNONE"; then prefix="$ac_default_prefix" fi if test "x$exec_prefix" = "xNONE"; then exec_prefix=$prefix fi full_var="$FROM_VAR" while true; do new_full_var="`eval echo $full_var`" if test "x$new_full_var" = "x$full_var"; then break; fi full_var=$new_full_var done full_var=$new_full_var _GI_EXP_LIBDIR="$full_var" prefix=$prefix_save exec_prefix=$exec_prefix_save INTROSPECTION_SCANNER= INTROSPECTION_COMPILER= INTROSPECTION_GENERATE= INTROSPECTION_GIRDIR= INTROSPECTION_TYPELIBDIR= if test "x$found_introspection" = "xyes"; then INTROSPECTION_SCANNER=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0` INTROSPECTION_COMPILER=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0` INTROSPECTION_GENERATE=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0` INTROSPECTION_GIRDIR=`$PKG_CONFIG --define-variable=datadir="${_GI_EXP_DATADIR}" --variable=girdir gobject-introspection-1.0` INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --define-variable=libdir="${_GI_EXP_LIBDIR}" --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_SYSROOT_DIR`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection fi if test "x$found_introspection" = "xyes"; then HAVE_INTROSPECTION_TRUE= HAVE_INTROSPECTION_FALSE='#' else HAVE_INTROSPECTION_TRUE='#' HAVE_INTROSPECTION_FALSE= fi IBUS_GIR_SCANNERFLAGS= if test x"$found_introspection" = x"yes" ; then IBUS_GIR_SCANNERFLAGS="--warn-all --identifier-prefix=IBus --symbol-prefix=ibus --c-include=ibus.h" if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0 >= 0.9.6\""; } >&5 ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0 >= 0.9.6") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then gir_symbol_prefix=yes else gir_symbol_prefix=no fi if test x"$gir_symbol_prefix" = x"no" ; then IBUS_GIR_SCANNERFLAGS="--strip-prefix=IBus" fi fi # Check vapigen. if test "x" != "xyes" then : fi # Check whether --enable-vala was given. if test ${enable_vala+y} then : enableval=$enable_vala; else case e in #( e) if test "x" = "x" then : enable_vala=auto else case e in #( e) enable_vala= ;; esac fi ;; esac fi case $enable_vala in #( no) : enable_vala=no ;; #( yes) : if test "x" != "xyes" -a "x$found_introspection" != "xyes" then : as_fn_error $? "Vala bindings require GObject Introspection" "$LINENO" 5 fi ;; #( auto) : if test "x" != "xyes" -a "x$found_introspection" != "xyes" then : enable_vala=no fi ;; #( *) : as_fn_error $? "Invalid argument passed to --enable-vala, should be one of [no/auto/yes]" "$LINENO" 5 ;; esac if test "x" = "x" then : vapigen_pkg_name=vapigen else case e in #( e) vapigen_pkg_name=vapigen- ;; esac fi if test "x0.16" = "x" then : vapigen_pkg="$vapigen_pkg_name" else case e in #( e) vapigen_pkg="$vapigen_pkg_name >= 0.16" ;; esac fi if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_PKG_CONFIG+y} then : printf %s "(cached) " >&6 else case e in #( e) case $PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 printf "%s\n" "$PKG_CONFIG" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_path_PKG_CONFIG"; then ac_pt_PKG_CONFIG=$PKG_CONFIG # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_ac_pt_PKG_CONFIG+y} then : printf %s "(cached) " >&6 else case e in #( e) case $ac_pt_PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_ac_pt_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG if test -n "$ac_pt_PKG_CONFIG"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 printf "%s\n" "$ac_pt_PKG_CONFIG" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_pt_PKG_CONFIG" = x; then PKG_CONFIG="" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac PKG_CONFIG=$ac_pt_PKG_CONFIG fi else PKG_CONFIG="$ac_cv_path_PKG_CONFIG" fi fi if test -n "$PKG_CONFIG"; then _pkg_min_version=0.9.0 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 printf %s "checking pkg-config is at least version $_pkg_min_version... " >&6; } if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } PKG_CONFIG="" fi fi if test -z "$PKG_CONFIG"; then as_fn_error $? "pkg-config not found" "$LINENO" 5 fi if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$vapigen_pkg\""; } >&5 ($PKG_CONFIG --exists --print-errors "$vapigen_pkg") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then if test "$enable_vala" = "auto" then : enable_vala=yes fi else case $enable_vala in #( yes) : as_fn_error $? "$vapigen_pkg not found" "$LINENO" 5 ;; #( auto) : enable_vala=no ;; #( *) : ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for vapigen" >&5 printf %s "checking for vapigen... " >&6; } case $enable_vala in #( yes) : VAPIGEN=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=vapigen $vapigen_pkg_name` VAPIGEN_MAKEFILE=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=datadir $vapigen_pkg_name`/vala/Makefile.vapigen if test "x" = "x" then : VAPIGEN_VAPIDIR=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=vapidir $vapigen_pkg_name` else case e in #( e) VAPIGEN_VAPIDIR=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=vapidir_versioned $vapigen_pkg_name` ;; esac fi ;; #( *) : ;; esac { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_vala" >&5 printf "%s\n" "$enable_vala" >&6; } if test "x$enable_vala" = "xyes"; then ENABLE_VAPIGEN_TRUE= ENABLE_VAPIGEN_FALSE='#' else ENABLE_VAPIGEN_TRUE='#' ENABLE_VAPIGEN_FALSE= fi # Check for gtk-doc. gtk_doc_requires="gtk-doc >= 1.9" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gtk-doc" >&5 printf %s "checking for gtk-doc... " >&6; } if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$gtk_doc_requires\""; } >&5 ($PKG_CONFIG --exists --print-errors "$gtk_doc_requires") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then have_gtk_doc=yes else have_gtk_doc=no fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_gtk_doc" >&5 printf "%s\n" "$have_gtk_doc" >&6; } if test "$have_gtk_doc" = "no"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: You will not be able to create source packages with 'make dist' because $gtk_doc_requires is not found." >&5 printf "%s\n" "$as_me: WARNING: You will not be able to create source packages with 'make dist' because $gtk_doc_requires is not found." >&2;} fi # Extract the first word of "gtkdoc-check", so it can be a program name with args. set dummy gtkdoc-check; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_GTKDOC_CHECK+y} then : printf %s "(cached) " >&6 else case e in #( e) if test -n "$GTKDOC_CHECK"; then ac_cv_prog_GTKDOC_CHECK="$GTKDOC_CHECK" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_prog_GTKDOC_CHECK="gtkdoc-check.test" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi ;; esac fi GTKDOC_CHECK=$ac_cv_prog_GTKDOC_CHECK if test -n "$GTKDOC_CHECK"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_CHECK" >&5 printf "%s\n" "$GTKDOC_CHECK" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi # Extract the first word of "gtkdoc-check", so it can be a program name with args. set dummy gtkdoc-check; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_GTKDOC_CHECK_PATH+y} then : printf %s "(cached) " >&6 else case e in #( e) case $GTKDOC_CHECK_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_GTKDOC_CHECK_PATH="$GTKDOC_CHECK_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_GTKDOC_CHECK_PATH="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi GTKDOC_CHECK_PATH=$ac_cv_path_GTKDOC_CHECK_PATH if test -n "$GTKDOC_CHECK_PATH"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_CHECK_PATH" >&5 printf "%s\n" "$GTKDOC_CHECK_PATH" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi for ac_prog in gtkdoc-rebase do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_GTKDOC_REBASE+y} then : printf %s "(cached) " >&6 else case e in #( e) case $GTKDOC_REBASE in [\\/]* | ?:[\\/]*) ac_cv_path_GTKDOC_REBASE="$GTKDOC_REBASE" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_GTKDOC_REBASE="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi GTKDOC_REBASE=$ac_cv_path_GTKDOC_REBASE if test -n "$GTKDOC_REBASE"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_REBASE" >&5 printf "%s\n" "$GTKDOC_REBASE" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi test -n "$GTKDOC_REBASE" && break done test -n "$GTKDOC_REBASE" || GTKDOC_REBASE="true" # Extract the first word of "gtkdoc-mkpdf", so it can be a program name with args. set dummy gtkdoc-mkpdf; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_GTKDOC_MKPDF+y} then : printf %s "(cached) " >&6 else case e in #( e) case $GTKDOC_MKPDF in [\\/]* | ?:[\\/]*) ac_cv_path_GTKDOC_MKPDF="$GTKDOC_MKPDF" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_GTKDOC_MKPDF="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi GTKDOC_MKPDF=$ac_cv_path_GTKDOC_MKPDF if test -n "$GTKDOC_MKPDF"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_MKPDF" >&5 printf "%s\n" "$GTKDOC_MKPDF" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi # Check whether --with-html-dir was given. if test ${with_html_dir+y} then : withval=$with_html_dir; else case e in #( e) with_html_dir='${datadir}/gtk-doc/html' ;; esac fi HTML_DIR="$with_html_dir" # Check whether --enable-gtk-doc was given. if test ${enable_gtk_doc+y} then : enableval=$enable_gtk_doc; else case e in #( e) enable_gtk_doc=no ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build gtk-doc documentation" >&5 printf %s "checking whether to build gtk-doc documentation... " >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_gtk_doc" >&5 printf "%s\n" "$enable_gtk_doc" >&6; } if test "x$enable_gtk_doc" = "xyes" && test "$have_gtk_doc" = "no"; then as_fn_error $? " You must have $gtk_doc_requires installed to build documentation for $PACKAGE_NAME. Please install gtk-doc or disable building the documentation by adding '--disable-gtk-doc' to '$0'." "$LINENO" 5 fi if test "x$PACKAGE_NAME" != "xglib"; then pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" >&5 printf %s "checking for glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0... " >&6; } if test -n "$GTKDOC_DEPS_CFLAGS"; then pkg_cv_GTKDOC_DEPS_CFLAGS="$GTKDOC_DEPS_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTKDOC_DEPS_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GTKDOC_DEPS_LIBS"; then pkg_cv_GTKDOC_DEPS_LIBS="$GTKDOC_DEPS_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTKDOC_DEPS_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GTKDOC_DEPS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" 2>&1` else GTKDOC_DEPS_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GTKDOC_DEPS_PKG_ERRORS" >&5 : elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } : else GTKDOC_DEPS_CFLAGS=$pkg_cv_GTKDOC_DEPS_CFLAGS GTKDOC_DEPS_LIBS=$pkg_cv_GTKDOC_DEPS_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi fi # Check whether --enable-gtk-doc-html was given. if test ${enable_gtk_doc_html+y} then : enableval=$enable_gtk_doc_html; else case e in #( e) enable_gtk_doc_html=yes ;; esac fi # Check whether --enable-gtk-doc-pdf was given. if test ${enable_gtk_doc_pdf+y} then : enableval=$enable_gtk_doc_pdf; else case e in #( e) enable_gtk_doc_pdf=no ;; esac fi if test -z "$GTKDOC_MKPDF"; then enable_gtk_doc_pdf=no fi if test -z "$AM_DEFAULT_VERBOSITY"; then AM_DEFAULT_VERBOSITY=1 fi if test x$have_gtk_doc = xyes; then HAVE_GTK_DOC_TRUE= HAVE_GTK_DOC_FALSE='#' else HAVE_GTK_DOC_TRUE='#' HAVE_GTK_DOC_FALSE= fi if test x$enable_gtk_doc = xyes; then ENABLE_GTK_DOC_TRUE= ENABLE_GTK_DOC_FALSE='#' else ENABLE_GTK_DOC_TRUE='#' ENABLE_GTK_DOC_FALSE= fi if test x$enable_gtk_doc_html = xyes; then GTK_DOC_BUILD_HTML_TRUE= GTK_DOC_BUILD_HTML_FALSE='#' else GTK_DOC_BUILD_HTML_TRUE='#' GTK_DOC_BUILD_HTML_FALSE= fi if test x$enable_gtk_doc_pdf = xyes; then GTK_DOC_BUILD_PDF_TRUE= GTK_DOC_BUILD_PDF_FALSE='#' else GTK_DOC_BUILD_PDF_TRUE='#' GTK_DOC_BUILD_PDF_FALSE= fi if test -n "$LIBTOOL"; then GTK_DOC_USE_LIBTOOL_TRUE= GTK_DOC_USE_LIBTOOL_FALSE='#' else GTK_DOC_USE_LIBTOOL_TRUE='#' GTK_DOC_USE_LIBTOOL_FALSE= fi if test -n "$GTKDOC_REBASE"; then GTK_DOC_USE_REBASE_TRUE= GTK_DOC_USE_REBASE_FALSE='#' else GTK_DOC_USE_REBASE_TRUE='#' GTK_DOC_USE_REBASE_FALSE= fi if test x"$enable_gtk_doc" = x"no"; then enable_gtk_doc="no (disabled, use --enable-gtk-doc to enable)" fi # Check for dbus. pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dbus-1 " >&5 printf %s "checking for dbus-1 ... " >&6; } if test -n "$DBUS_CFLAGS"; then pkg_cv_DBUS_CFLAGS="$DBUS_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" dbus-1 \""; } >&5 ($PKG_CONFIG --exists --print-errors " dbus-1 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_DBUS_CFLAGS=`$PKG_CONFIG --cflags " dbus-1 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$DBUS_LIBS"; then pkg_cv_DBUS_LIBS="$DBUS_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" dbus-1 \""; } >&5 ($PKG_CONFIG --exists --print-errors " dbus-1 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_DBUS_LIBS=`$PKG_CONFIG --libs " dbus-1 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then DBUS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " dbus-1 " 2>&1` else DBUS_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " dbus-1 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$DBUS_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( dbus-1 ) were not met: $DBUS_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables DBUS_CFLAGS and DBUS_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables DBUS_CFLAGS and DBUS_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else DBUS_CFLAGS=$pkg_cv_DBUS_CFLAGS DBUS_LIBS=$pkg_cv_DBUS_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi # --enable-memconf option. # Check whether --enable-memconf was given. if test ${enable_memconf+y} then : enableval=$enable_memconf; enable_memconf=$enableval else case e in #( e) enable_memconf=no ;; esac fi if test "x$enable_memconf" = "xyes"; then ENABLE_MEMCONF_TRUE= ENABLE_MEMCONF_FALSE='#' else ENABLE_MEMCONF_TRUE='#' ENABLE_MEMCONF_FALSE= fi # Check whether --enable-dconf was given. if test ${enable_dconf+y} then : enableval=$enable_dconf; enable_dconf=$enableval else case e in #( e) enable_dconf=yes ;; esac fi if test x"$enable_dconf" = x"yes"; then ENABLE_DCONF_TRUE= ENABLE_DCONF_FALSE='#' else ENABLE_DCONF_TRUE='#' ENABLE_DCONF_FALSE= fi if test x"$enable_dconf" = x"yes"; then # check dconf pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dconf >= 0.7.5" >&5 printf %s "checking for dconf >= 0.7.5... " >&6; } if test -n "$DCONF_CFLAGS"; then pkg_cv_DCONF_CFLAGS="$DCONF_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"dconf >= 0.7.5\""; } >&5 ($PKG_CONFIG --exists --print-errors "dconf >= 0.7.5") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_DCONF_CFLAGS=`$PKG_CONFIG --cflags "dconf >= 0.7.5" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$DCONF_LIBS"; then pkg_cv_DCONF_LIBS="$DCONF_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"dconf >= 0.7.5\""; } >&5 ($PKG_CONFIG --exists --print-errors "dconf >= 0.7.5") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_DCONF_LIBS=`$PKG_CONFIG --libs "dconf >= 0.7.5" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then DCONF_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "dconf >= 0.7.5" 2>&1` else DCONF_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "dconf >= 0.7.5" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$DCONF_PKG_ERRORS" >&5 as_fn_error $? "Package requirements (dconf >= 0.7.5) were not met: $DCONF_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables DCONF_CFLAGS and DCONF_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables DCONF_CFLAGS and DCONF_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else DCONF_CFLAGS=$pkg_cv_DCONF_CFLAGS DCONF_LIBS=$pkg_cv_DCONF_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"dconf >= 0.13.4\""; } >&5 ($PKG_CONFIG --exists --print-errors "dconf >= 0.13.4") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then printf "%s\n" "#define DCONF_0_13_4 TRUE" >>confdefs.h fi # check glib-compile-schemas # Check whether --enable-schemas-compile was given. if test ${enable_schemas_compile+y} then : enableval=$enable_schemas_compile; case ${enableval} in yes) GSETTINGS_DISABLE_SCHEMAS_COMPILE="" ;; no) GSETTINGS_DISABLE_SCHEMAS_COMPILE="1" ;; *) as_fn_error $? "bad value ${enableval} for --enable-schemas-compile" "$LINENO" 5 ;; esac fi if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_PKG_CONFIG+y} then : printf %s "(cached) " >&6 else case e in #( e) case $PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 printf "%s\n" "$PKG_CONFIG" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test -z "$ac_cv_path_PKG_CONFIG"; then ac_pt_PKG_CONFIG=$PKG_CONFIG # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_ac_pt_PKG_CONFIG+y} then : printf %s "(cached) " >&6 else case e in #( e) case $ac_pt_PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_ac_pt_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG if test -n "$ac_pt_PKG_CONFIG"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 printf "%s\n" "$ac_pt_PKG_CONFIG" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test "x$ac_pt_PKG_CONFIG" = x; then PKG_CONFIG="" else case $cross_compiling:$ac_tool_warned in yes:) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac PKG_CONFIG=$ac_pt_PKG_CONFIG fi else PKG_CONFIG="$ac_cv_path_PKG_CONFIG" fi fi if test -n "$PKG_CONFIG"; then _pkg_min_version=0.16 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 printf %s "checking pkg-config is at least version $_pkg_min_version... " >&6; } if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } PKG_CONFIG="" fi fi if test -z "$PKG_CONFIG"; then as_fn_error $? "pkg-config not found" "$LINENO" 5 fi gsettingsschemadir=${datadir}/glib-2.0/schemas if test x$cross_compiling != xyes then : if test -n "$GLIB_COMPILE_SCHEMAS"; then pkg_cv_GLIB_COMPILE_SCHEMAS="$GLIB_COMPILE_SCHEMAS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gio-2.0") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GLIB_COMPILE_SCHEMAS=`$PKG_CONFIG --variable="glib_compile_schemas" "gio-2.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi GLIB_COMPILE_SCHEMAS=$pkg_cv_GLIB_COMPILE_SCHEMAS if test "x$GLIB_COMPILE_SCHEMAS" = x"" then : fi else case e in #( e) # Extract the first word of "glib-compile-schemas", so it can be a program name with args. set dummy glib-compile-schemas; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_GLIB_COMPILE_SCHEMAS+y} then : printf %s "(cached) " >&6 else case e in #( e) case $GLIB_COMPILE_SCHEMAS in [\\/]* | ?:[\\/]*) ac_cv_path_GLIB_COMPILE_SCHEMAS="$GLIB_COMPILE_SCHEMAS" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_GLIB_COMPILE_SCHEMAS="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi GLIB_COMPILE_SCHEMAS=$ac_cv_path_GLIB_COMPILE_SCHEMAS if test -n "$GLIB_COMPILE_SCHEMAS"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GLIB_COMPILE_SCHEMAS" >&5 printf "%s\n" "$GLIB_COMPILE_SCHEMAS" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi ;; esac fi if test "x$GLIB_COMPILE_SCHEMAS" = "x"; then as_fn_error $? "glib-compile-schemas not found." "$LINENO" 5 else : fi GSETTINGS_RULES=' .PHONY : uninstall-gsettings-schemas install-gsettings-schemas clean-gsettings-schemas mostlyclean-am: clean-gsettings-schemas gsettings__enum_file = $(addsuffix .enums.xml,$(gsettings_ENUM_NAMESPACE)) %.gschema.valid: %.gschema.xml $(gsettings__enum_file) $(AM_V_GEN) $(GLIB_COMPILE_SCHEMAS) --strict --dry-run $(addprefix --schema-file=,$(gsettings__enum_file)) --schema-file=$< && mkdir -p $(@D) && touch $@ all-am: $(gsettings_SCHEMAS:.xml=.valid) uninstall-am: uninstall-gsettings-schemas install-data-am: install-gsettings-schemas .SECONDARY: $(gsettings_SCHEMAS) install-gsettings-schemas: $(gsettings_SCHEMAS) $(gsettings__enum_file) @$(NORMAL_INSTALL) if test -n "$^"; then \ test -z "$(gsettingsschemadir)" || $(MKDIR_P) "$(DESTDIR)$(gsettingsschemadir)"; \ $(INSTALL_DATA) $^ "$(DESTDIR)$(gsettingsschemadir)"; \ test -n "$(GSETTINGS_DISABLE_SCHEMAS_COMPILE)$(DESTDIR)" || $(GLIB_COMPILE_SCHEMAS) $(gsettingsschemadir); \ fi uninstall-gsettings-schemas: @$(NORMAL_UNINSTALL) @list='\''$(gsettings_SCHEMAS) $(gsettings__enum_file)'\''; test -n "$(gsettingsschemadir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e '\''s|^.*/||'\''`; \ test -n "$$files" || exit 0; \ echo " ( cd '\''$(DESTDIR)$(gsettingsschemadir)'\'' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(gsettingsschemadir)" && rm -f $$files test -n "$(GSETTINGS_DISABLE_SCHEMAS_COMPILE)$(DESTDIR)" || $(GLIB_COMPILE_SCHEMAS) $(gsettingsschemadir) clean-gsettings-schemas: rm -f $(gsettings_SCHEMAS:.xml=.valid) $(gsettings__enum_file) ifdef gsettings_ENUM_NAMESPACE $(gsettings__enum_file): $(gsettings_ENUM_FILES) $(AM_V_GEN) glib-mkenums --comments '\'''\'' --fhead "" --vhead " <@type@ id='\''$(gsettings_ENUM_NAMESPACE).@EnumName@'\''>" --vprod " " --vtail " " --ftail "" $^ > $@.tmp && mv $@.tmp $@ endif ' enable_dconf="yes (enabled, use --disable-dconf to disable)" fi # Check whether --enable-systemd-services was given. if test ${enable_systemd_services+y} then : enableval=$enable_systemd_services; enable_systemd=$enableval else case e in #( e) enable_systemd=yes ;; esac fi if test x"$enable_systemd" = x"yes"; then ENABLE_SYSTEMD_TRUE= ENABLE_SYSTEMD_FALSE='#' else ENABLE_SYSTEMD_TRUE='#' ENABLE_SYSTEMD_FALSE= fi if test x"$enable_systemd" = x"yes"; then pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for systemd >= 0.7.5 " >&5 printf %s "checking for systemd >= 0.7.5 ... " >&6; } if test -n "$SYSTEMD_CFLAGS"; then pkg_cv_SYSTEMD_CFLAGS="$SYSTEMD_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" systemd >= 0.7.5 \""; } >&5 ($PKG_CONFIG --exists --print-errors " systemd >= 0.7.5 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_SYSTEMD_CFLAGS=`$PKG_CONFIG --cflags " systemd >= 0.7.5 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$SYSTEMD_LIBS"; then pkg_cv_SYSTEMD_LIBS="$SYSTEMD_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" systemd >= 0.7.5 \""; } >&5 ($PKG_CONFIG --exists --print-errors " systemd >= 0.7.5 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_SYSTEMD_LIBS=`$PKG_CONFIG --libs " systemd >= 0.7.5 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then SYSTEMD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " systemd >= 0.7.5 " 2>&1` else SYSTEMD_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " systemd >= 0.7.5 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$SYSTEMD_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( systemd >= 0.7.5 ) were not met: $SYSTEMD_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables SYSTEMD_CFLAGS and SYSTEMD_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables SYSTEMD_CFLAGS and SYSTEMD_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else SYSTEMD_CFLAGS=$pkg_cv_SYSTEMD_CFLAGS SYSTEMD_LIBS=$pkg_cv_SYSTEMD_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi SYSTEMD_USER_UNIT_DIR=`$PKG_CONFIG --define-variable prefix='${prefix}' --variable systemduserunitdir systemd` enable_systemd="yes (enabled, use --disable-systemd-services to disable)" fi # Check env. # Extract the first word of "env", so it can be a program name with args. set dummy env; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_ENV_IBUS_TEST+y} then : printf %s "(cached) " >&6 else case e in #( e) case $ENV_IBUS_TEST in [\\/]* | ?:[\\/]*) ac_cv_path_ENV_IBUS_TEST="$ENV_IBUS_TEST" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_ENV_IBUS_TEST="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi ENV_IBUS_TEST=$ac_cv_path_ENV_IBUS_TEST if test -n "$ENV_IBUS_TEST"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ENV_IBUS_TEST" >&5 printf "%s\n" "$ENV_IBUS_TEST" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi # Check whether --enable-python2 was given. if test ${enable_python2+y} then : enableval=$enable_python2; enable_python2=$enableval else case e in #( e) enable_python2=yes ;; esac fi # Check whether --enable-python-library was given. if test ${enable_python_library+y} then : enableval=$enable_python_library; enable_python_library=$enableval else case e in #( e) enable_python_library=no ;; esac fi # Check whether --enable-setup was given. if test ${enable_setup+y} then : enableval=$enable_setup; enable_setup=$enableval else case e in #( e) enable_setup=yes ;; esac fi # Define python version # Check whether --with-python was given. if test ${with_python+y} then : withval=$with_python; PYTHON=$with_python fi if test -n "$PYTHON"; then # If the user set $PYTHON, use it and don't search something else. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $PYTHON version is >= 2.5" >&5 printf %s "checking whether $PYTHON version is >= 2.5... " >&6; } prog="import sys # split strings by '.' and convert to numeric. Append some zeros # because we need at least 4 digits for the hex conversion. # map returns an iterator in Python 3.0 and a list in 2.x minver = list(map(int, '2.5'.split('.'))) + [0, 0, 0] minverhex = 0 # xrange is not present in Python 3.0 and range returns an iterator for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[i] sys.exit(sys.hexversion < minverhex)" if { echo "$as_me:$LINENO: $PYTHON -c "$prog"" >&5 ($PYTHON -c "$prog") >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } as_fn_error $? "Python interpreter is too old" "$LINENO" 5 ;; esac fi am_display_PYTHON=$PYTHON else # Otherwise, try each interpreter until we find one that satisfies # VERSION. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a Python interpreter with version >= 2.5" >&5 printf %s "checking for a Python interpreter with version >= 2.5... " >&6; } if test ${am_cv_pathless_PYTHON+y} then : printf %s "(cached) " >&6 else case e in #( e) for am_cv_pathless_PYTHON in python python3 python3.20 python3.19 python3.18 python3.17 python3.16 python3.15 python3.14 python3.13 python3.12 python3.11 python3.10 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 python2 python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 none; do test "$am_cv_pathless_PYTHON" = none && break prog="import sys # split strings by '.' and convert to numeric. Append some zeros # because we need at least 4 digits for the hex conversion. # map returns an iterator in Python 3.0 and a list in 2.x minver = list(map(int, '2.5'.split('.'))) + [0, 0, 0] minverhex = 0 # xrange is not present in Python 3.0 and range returns an iterator for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[i] sys.exit(sys.hexversion < minverhex)" if { echo "$as_me:$LINENO: $am_cv_pathless_PYTHON -c "$prog"" >&5 ($am_cv_pathless_PYTHON -c "$prog") >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } then : break fi done ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_pathless_PYTHON" >&5 printf "%s\n" "$am_cv_pathless_PYTHON" >&6; } # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON. if test "$am_cv_pathless_PYTHON" = none; then PYTHON=: else # Extract the first word of "$am_cv_pathless_PYTHON", so it can be a program name with args. set dummy $am_cv_pathless_PYTHON; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_PYTHON+y} then : printf %s "(cached) " >&6 else case e in #( e) case $PYTHON in [\\/]* | ?:[\\/]*) ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_PYTHON="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi PYTHON=$ac_cv_path_PYTHON if test -n "$PYTHON"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5 printf "%s\n" "$PYTHON" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi am_display_PYTHON=$am_cv_pathless_PYTHON fi if test "$PYTHON" = :; then as_fn_error $? "no suitable Python interpreter found" "$LINENO" 5 else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5 printf %s "checking for $am_display_PYTHON version... " >&6; } if test ${am_cv_python_version+y} then : printf %s "(cached) " >&6 else case e in #( e) am_cv_python_version=`$PYTHON -c "import sys; print ('%u.%u' % sys.version_info[:2])"` ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5 printf "%s\n" "$am_cv_python_version" >&6; } PYTHON_VERSION=$am_cv_python_version { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5 printf %s "checking for $am_display_PYTHON platform... " >&6; } if test ${am_cv_python_platform+y} then : printf %s "(cached) " >&6 else case e in #( e) am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"` ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5 printf "%s\n" "$am_cv_python_platform" >&6; } PYTHON_PLATFORM=$am_cv_python_platform if test "x$prefix" = xNONE; then am__usable_prefix=$ac_default_prefix else am__usable_prefix=$prefix fi # Allow user to request using sys.* values from Python, # instead of the GNU $prefix values. # Check whether --with-python-sys-prefix was given. if test ${with_python_sys_prefix+y} then : withval=$with_python_sys_prefix; am_use_python_sys=: else case e in #( e) am_use_python_sys=false ;; esac fi # Allow user to override whatever the default Python prefix is. # Check whether --with-python_prefix was given. if test ${with_python_prefix+y} then : withval=$with_python_prefix; am_python_prefix_subst=$withval am_cv_python_prefix=$withval { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for explicit $am_display_PYTHON prefix" >&5 printf %s "checking for explicit $am_display_PYTHON prefix... " >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_prefix" >&5 printf "%s\n" "$am_cv_python_prefix" >&6; } else case e in #( e) if $am_use_python_sys; then # using python sys.prefix value, not GNU { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for python default $am_display_PYTHON prefix" >&5 printf %s "checking for python default $am_display_PYTHON prefix... " >&6; } if test ${am_cv_python_prefix+y} then : printf %s "(cached) " >&6 else case e in #( e) am_cv_python_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.prefix)"` ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_prefix" >&5 printf "%s\n" "$am_cv_python_prefix" >&6; } case $am_cv_python_prefix in $am__usable_prefix*) am__strip_prefix=`echo "$am__usable_prefix" | sed 's|.|.|g'` am_python_prefix_subst=`echo "$am_cv_python_prefix" | sed "s,^$am__strip_prefix,\\${prefix},"` ;; *) am_python_prefix_subst=$am_cv_python_prefix ;; esac else # using GNU prefix value, not python sys.prefix am_python_prefix_subst='${prefix}' am_python_prefix=$am_python_prefix_subst { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU default $am_display_PYTHON prefix" >&5 printf %s "checking for GNU default $am_display_PYTHON prefix... " >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_python_prefix" >&5 printf "%s\n" "$am_python_prefix" >&6; } fi ;; esac fi # Substituting python_prefix_subst value. PYTHON_PREFIX=$am_python_prefix_subst # emacs-page Now do it all over again for Python exec_prefix, but with yet # another conditional: fall back to regular prefix if that was specified. # Check whether --with-python_exec_prefix was given. if test ${with_python_exec_prefix+y} then : withval=$with_python_exec_prefix; am_python_exec_prefix_subst=$withval am_cv_python_exec_prefix=$withval { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for explicit $am_display_PYTHON exec_prefix" >&5 printf %s "checking for explicit $am_display_PYTHON exec_prefix... " >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_exec_prefix" >&5 printf "%s\n" "$am_cv_python_exec_prefix" >&6; } else case e in #( e) # no explicit --with-python_exec_prefix, but if # --with-python_prefix was given, use its value for python_exec_prefix too. if test -n "$with_python_prefix" then : am_python_exec_prefix_subst=$with_python_prefix am_cv_python_exec_prefix=$with_python_prefix { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for python_prefix-given $am_display_PYTHON exec_prefix" >&5 printf %s "checking for python_prefix-given $am_display_PYTHON exec_prefix... " >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_exec_prefix" >&5 printf "%s\n" "$am_cv_python_exec_prefix" >&6; } else case e in #( e) # Set am__usable_exec_prefix whether using GNU or Python values, # since we use that variable for pyexecdir. if test "x$exec_prefix" = xNONE; then am__usable_exec_prefix=$am__usable_prefix else am__usable_exec_prefix=$exec_prefix fi # if $am_use_python_sys; then # using python sys.exec_prefix, not GNU { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for python default $am_display_PYTHON exec_prefix" >&5 printf %s "checking for python default $am_display_PYTHON exec_prefix... " >&6; } if test ${am_cv_python_exec_prefix+y} then : printf %s "(cached) " >&6 else case e in #( e) am_cv_python_exec_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.exec_prefix)"` ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_exec_prefix" >&5 printf "%s\n" "$am_cv_python_exec_prefix" >&6; } case $am_cv_python_exec_prefix in $am__usable_exec_prefix*) am__strip_prefix=`echo "$am__usable_exec_prefix" | sed 's|.|.|g'` am_python_exec_prefix_subst=`echo "$am_cv_python_exec_prefix" | sed "s,^$am__strip_prefix,\\${exec_prefix},"` ;; *) am_python_exec_prefix_subst=$am_cv_python_exec_prefix ;; esac else # using GNU $exec_prefix, not python sys.exec_prefix am_python_exec_prefix_subst='${exec_prefix}' am_python_exec_prefix=$am_python_exec_prefix_subst { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU default $am_display_PYTHON exec_prefix" >&5 printf %s "checking for GNU default $am_display_PYTHON exec_prefix... " >&6; } { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_python_exec_prefix" >&5 printf "%s\n" "$am_python_exec_prefix" >&6; } fi ;; esac fi ;; esac fi # Substituting python_exec_prefix_subst. PYTHON_EXEC_PREFIX=$am_python_exec_prefix_subst # Factor out some code duplication into this shell variable. am_python_setup_sysconfig="\ import sys # Prefer sysconfig over distutils.sysconfig, for better compatibility # with python 3.x. See automake bug#10227. try: import sysconfig except ImportError: can_use_sysconfig = 0 else: can_use_sysconfig = 1 # Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs: # try: from platform import python_implementation if python_implementation() == 'CPython' and sys.version[:3] == '2.7': can_use_sysconfig = 0 except ImportError: pass" # end of am_python_setup_sysconfig # More repeated code, for figuring out the installation scheme to use. am_python_setup_scheme="if hasattr(sysconfig, 'get_default_scheme'): scheme = sysconfig.get_default_scheme() else: scheme = sysconfig._get_default_scheme() if scheme == 'posix_local': if '$am_py_prefix' == '/usr': scheme = 'deb_system' # should only happen during Debian package builds else: # Debian's default scheme installs to /usr/local/ but we want to # follow the prefix, as we always have. # See bugs#54412, #64837, et al. scheme = 'posix_prefix'" # end of am_python_setup_scheme { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory (pythondir)" >&5 printf %s "checking for $am_display_PYTHON script directory (pythondir)... " >&6; } if test ${am_cv_python_pythondir+y} then : printf %s "(cached) " >&6 else case e in #( e) if test "x$am_cv_python_prefix" = x; then am_py_prefix=$am__usable_prefix else am_py_prefix=$am_cv_python_prefix fi am_cv_python_pythondir=`$PYTHON -c " $am_python_setup_sysconfig if can_use_sysconfig: try: $am_python_setup_scheme sitedir = sysconfig.get_path('purelib', scheme, vars={'base':'$am_py_prefix'}) except: sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'}) else: from distutils import sysconfig sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix') sys.stdout.write(sitedir)"` # case $am_cv_python_pythondir in $am_py_prefix*) am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'` am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,\\${PYTHON_PREFIX},"` ;; *) case $am_py_prefix in /usr|/System*) ;; *) am_cv_python_pythondir="\${PYTHON_PREFIX}/lib/python$PYTHON_VERSION/site-packages" ;; esac ;; esac ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5 printf "%s\n" "$am_cv_python_pythondir" >&6; } pythondir=$am_cv_python_pythondir pkgpythondir=\${pythondir}/$PACKAGE { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory (pyexecdir)" >&5 printf %s "checking for $am_display_PYTHON extension module directory (pyexecdir)... " >&6; } if test ${am_cv_python_pyexecdir+y} then : printf %s "(cached) " >&6 else case e in #( e) if test "x$am_cv_python_exec_prefix" = x; then am_py_exec_prefix=$am__usable_exec_prefix else am_py_exec_prefix=$am_cv_python_exec_prefix fi am_cv_python_pyexecdir=`$PYTHON -c " $am_python_setup_sysconfig if can_use_sysconfig: try: $am_python_setup_scheme sitedir = sysconfig.get_path('platlib', scheme, vars={'platbase':'$am_py_exec_prefix'}) except: sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_exec_prefix'}) else: from distutils import sysconfig sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_exec_prefix') sys.stdout.write(sitedir)"` # case $am_cv_python_pyexecdir in $am_py_exec_prefix*) am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'` am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,\\${PYTHON_EXEC_PREFIX},"` ;; *) case $am_py_exec_prefix in /usr|/System*) ;; *) am_cv_python_pyexecdir="\${PYTHON_EXEC_PREFIX}/lib/python$PYTHON_VERSION/site-packages" ;; esac ;; esac ;; esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5 printf "%s\n" "$am_cv_python_pyexecdir" >&6; } pyexecdir=$am_cv_python_pyexecdir pkgpyexecdir=\${pyexecdir}/$PACKAGE fi if test x"$enable_python2" != x"yes"; then enable_python_library=no PYTHON2= enable_python2="no (disabled, use --enable-python2 to enable)" else # Extract the first word of "python2", so it can be a program name with args. set dummy python2; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_PYTHON2+y} then : printf %s "(cached) " >&6 else case e in #( e) case $PYTHON2 in [\\/]* | ?:[\\/]*) ac_cv_path_PYTHON2="$PYTHON2" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_PYTHON2="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi PYTHON2=$ac_cv_path_PYTHON2 if test -n "$PYTHON2"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PYTHON2" >&5 printf "%s\n" "$PYTHON2" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test x"$PYTHON2" = x""; then PYTHON2=$PYTHON fi fi if test x"$enable_python2" = x"yes"; then ENABLE_PYTHON2_TRUE= ENABLE_PYTHON2_FALSE='#' else ENABLE_PYTHON2_TRUE='#' ENABLE_PYTHON2_FALSE= fi if test x"$enable_python_library" = x"yes"; then ENABLE_PYTHON_LIBRARY_TRUE= ENABLE_PYTHON_LIBRARY_FALSE='#' else ENABLE_PYTHON_LIBRARY_TRUE='#' ENABLE_PYTHON_LIBRARY_FALSE= fi if test x"$enable_setup" = x"yes"; then ENABLE_SETUP_TRUE= ENABLE_SETUP_FALSE='#' else ENABLE_SETUP_TRUE='#' ENABLE_SETUP_FALSE= fi if true; then ENABLE_DAEMON_TRUE= ENABLE_DAEMON_FALSE='#' else ENABLE_DAEMON_TRUE='#' ENABLE_DAEMON_FALSE= fi PYGOBJECT_REQUIRED=3.0.0 # Define Python overrides dir. # When IBus is built with the Json files in test directory, the build # tries to install IBus.py file into pyoverridesdir. # The default GI directory is /usr in Flatpak but the directory is readonly # with `flatpak-builder` and the Flatpak specific GI files are installed in # /app GI directory. # Check whether --with-python-overrides-dir was given. if test ${with_python_overrides_dir+y} then : withval=$with_python_overrides_dir; pyoverridesdir=$with_python_overrides_dir fi if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"pygobject-3.0 >= \$PYGOBJECT_REQUIRED\""; } >&5 ($PKG_CONFIG --exists --print-errors "pygobject-3.0 >= $PYGOBJECT_REQUIRED") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then enable_pygobject=yes else enable_pygobject=no fi if test "x$enable_pygobject" = "xyes"; then pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for pygobject-3.0 >= $PYGOBJECT_REQUIRED" >&5 printf %s "checking for pygobject-3.0 >= $PYGOBJECT_REQUIRED... " >&6; } if test -n "$PYTHON_CFLAGS"; then pkg_cv_PYTHON_CFLAGS="$PYTHON_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"pygobject-3.0 >= \$PYGOBJECT_REQUIRED\""; } >&5 ($PKG_CONFIG --exists --print-errors "pygobject-3.0 >= $PYGOBJECT_REQUIRED") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_PYTHON_CFLAGS=`$PKG_CONFIG --cflags "pygobject-3.0 >= $PYGOBJECT_REQUIRED" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$PYTHON_LIBS"; then pkg_cv_PYTHON_LIBS="$PYTHON_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"pygobject-3.0 >= \$PYGOBJECT_REQUIRED\""; } >&5 ($PKG_CONFIG --exists --print-errors "pygobject-3.0 >= $PYGOBJECT_REQUIRED") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_PYTHON_LIBS=`$PKG_CONFIG --libs "pygobject-3.0 >= $PYGOBJECT_REQUIRED" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then PYTHON_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "pygobject-3.0 >= $PYGOBJECT_REQUIRED" 2>&1` else PYTHON_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "pygobject-3.0 >= $PYGOBJECT_REQUIRED" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$PYTHON_PKG_ERRORS" >&5 as_fn_error $? "Package requirements (pygobject-3.0 >= $PYGOBJECT_REQUIRED) were not met: $PYTHON_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables PYTHON_CFLAGS and PYTHON_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables PYTHON_CFLAGS and PYTHON_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else PYTHON_CFLAGS=$pkg_cv_PYTHON_CFLAGS PYTHON_LIBS=$pkg_cv_PYTHON_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi if test x"$pyoverridesdir" = x""; then pyoverridesdir=`$PYTHON -c "import gi; print(gi._overridesdir)"` fi if test x"$enable_python2" = x"yes"; then py2overridesdir=`$PYTHON2 -c "import gi; print(gi._overridesdir)"` fi fi if test x"$enable_pygobject" = "xyes"; then ENABLE_PYGOBJECT_TRUE= ENABLE_PYGOBJECT_FALSE='#' else ENABLE_PYGOBJECT_TRUE='#' ENABLE_PYGOBJECT_FALSE= fi if test x"$enable_python_library" = x"yes"; then # Check python. # Extract the first word of "python$PYTHON_VERSION-config", so it can be a program name with args. set dummy python$PYTHON_VERSION-config; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_PYTHON_CONFIG+y} then : printf %s "(cached) " >&6 else case e in #( e) case $PYTHON_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PYTHON_CONFIG="$PYTHON_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_PYTHON_CONFIG="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi PYTHON_CONFIG=$ac_cv_path_PYTHON_CONFIG if test -n "$PYTHON_CONFIG"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PYTHON_CONFIG" >&5 printf "%s\n" "$PYTHON_CONFIG" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi if test x"$PYTHON_CONFIG" = x""; then # Extract the first word of "python-config", so it can be a program name with args. set dummy python-config; ac_word=$2 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_PYTHON_CONFIG+y} then : printf %s "(cached) " >&6 else case e in #( e) case $PYTHON_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PYTHON_CONFIG="$PYTHON_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ac_cv_path_PYTHON_CONFIG="$as_dir$ac_word$ac_exec_ext" printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac ;; esac fi PYTHON_CONFIG=$ac_cv_path_PYTHON_CONFIG if test -n "$PYTHON_CONFIG"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PYTHON_CONFIG" >&5 printf "%s\n" "$PYTHON_CONFIG" >&6; } else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } fi fi if test x"$PYTHON_CONFIG" != x""; then PYTHON_CFLAGS=`$PYTHON_CONFIG --includes` PYTHON_LIBS=`$PYTHON_CONFIG --libs` else PYTHON_CFLAGS=`$PYTHON $srcdir/python-config.py --includes` PYTHON_LIBS=`$PYTHON $srcdir/python-config.py --libs` fi PYTHON_INCLUDES="$PYTHON_CFLAGS" PYTHON2_PREFIX=`$PYTHON2 -c "import sys; sys.stdout.write(sys.prefix)"` PYTHON2_VERSION=`$PYTHON2 -c "import sys; sys.stdout.write(sys.version[:3])"` PYTHON2_LIBDIR="$PYTHON2_PREFIX/lib/python$PYTHON2_VERSION" python2dir="$PYTHON2_LIBDIR/site-packages" pkgpython2dir="$python2dir/ibus" else enable_python_library="no (disabled, use --enable-python-library to enable)" fi # Define gtk2 immodule dir. # Check whether --with-gtk2-im-module-dir was given. if test ${with_gtk2_im_module_dir+y} then : withval=$with_gtk2_im_module_dir; GTK2_IM_MODULEDIR=$with_gtk2_im_module_dir fi # Define gtk3 immodule dir. # Check whether --with-gtk3-im-module-dir was given. if test ${with_gtk3_im_module_dir+y} then : withval=$with_gtk3_im_module_dir; GTK3_IM_MODULEDIR=$with_gtk3_im_module_dir fi # Define gtk4 immodule dir. # Check whether --with-gtk4-im-module-dir was given. if test ${with_gtk4_im_module_dir+y} then : withval=$with_gtk4_im_module_dir; GTK4_IM_MODULEDIR=$with_gtk4_im_module_dir fi if test x"$enable_python" = x"yes"; then # Check for dbus-python. # Check whether --enable-dbus-python-check was given. if test ${enable_dbus_python_check+y} then : enableval=$enable_dbus_python_check; enable_dbus_python_check=$enableval else case e in #( e) enable_dbus_python_check=yes ;; esac fi pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dbus-python >= 0.83.0" >&5 printf %s "checking for dbus-python >= 0.83.0... " >&6; } if test -n "$DBUS_PYTHON_CFLAGS"; then pkg_cv_DBUS_PYTHON_CFLAGS="$DBUS_PYTHON_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"dbus-python >= 0.83.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "dbus-python >= 0.83.0") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_DBUS_PYTHON_CFLAGS=`$PKG_CONFIG --cflags "dbus-python >= 0.83.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$DBUS_PYTHON_LIBS"; then pkg_cv_DBUS_PYTHON_LIBS="$DBUS_PYTHON_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"dbus-python >= 0.83.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "dbus-python >= 0.83.0") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_DBUS_PYTHON_LIBS=`$PKG_CONFIG --libs "dbus-python >= 0.83.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then DBUS_PYTHON_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "dbus-python >= 0.83.0" 2>&1` else DBUS_PYTHON_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "dbus-python >= 0.83.0" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$DBUS_PYTHON_PKG_ERRORS" >&5 IBUS_HAS_DBUS_PYTHON=no elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } IBUS_HAS_DBUS_PYTHON=no else DBUS_PYTHON_CFLAGS=$pkg_cv_DBUS_PYTHON_CFLAGS DBUS_PYTHON_LIBS=$pkg_cv_DBUS_PYTHON_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } IBUS_HAS_DBUS_PYTHON=yes fi if test x"$IBUS_HAS_DBUS_PYTHON" != x"yes"; then if test x"$enable_dbus_python_check" != x"no"; then as_fn_error $? "can not find dbus-python >= 0.83.0. Please install or update dbus-python." "$LINENO" 5 else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: can not find dbus-python >= 0.83.0. It is required." >&5 printf "%s\n" "$as_me: WARNING: can not find dbus-python >= 0.83.0. It is required." >&2;} fi fi fi # Option for always disable snooper applications. # Check whether --enable-key-snooper was given. if test ${enable_key_snooper+y} then : enableval=$enable_key_snooper; enable_key_snooper=$enableval else case e in #( e) enable_key_snooper=yes ;; esac fi if test x"$enable_key_snooper" = x"yes"; then printf "%s\n" "#define ENABLE_SNOOPER TRUE" >>confdefs.h else printf "%s\n" "#define ENABLE_SNOOPER FALSE" >>confdefs.h enable_key_snooper="no (disabled, use --enable-key-snooper to enable)" fi # Option for no snooper applications. # Check whether --with-no-snooper-apps was given. if test ${with_no_snooper_apps+y} then : withval=$with_no_snooper_apps; NO_SNOOPER_APPS=$with_no_snooper_apps else case e in #( e) NO_SNOOPER_APPS=firefox.*,.*chrome.*,.*chromium.*,terminator ;; esac fi printf "%s\n" "#define NO_SNOOPER_APPS \"$NO_SNOOPER_APPS\"" >>confdefs.h # GNOME 3 uses the theme's icon. # Check whether --with-panel-icon-keyboard was given. if test ${with_panel_icon_keyboard+y} then : withval=$with_panel_icon_keyboard; if test x"$with_panel_icon_keyboard" = x"yes" -o \ x"$with_panel_icon_keyboard" = x; then with_panel_icon_keyboard="input-keyboard-symbolic" fi if test x"$with_panel_icon_keyboard" = x"legacy"; then with_panel_icon_keyboard="ibus-keyboard" fi IBUS_ICON_KEYBOARD=$with_panel_icon_keyboard else case e in #( e) IBUS_ICON_KEYBOARD="ibus-keyboard" ;; esac fi # --disable-surrounding-text option. # Check whether --enable-surrounding-text was given. if test ${enable_surrounding_text+y} then : enableval=$enable_surrounding_text; enable_surrounding_text=$enableval else case e in #( e) enable_surrounding_text=yes ;; esac fi if test x"$enable_surrounding_text" = x"yes"; then printf "%s\n" "#define ENABLE_SURROUNDING TRUE" >>confdefs.h enable_surrounding_text="yes (enabled, use --disable-surrounding-text to disable)" fi # --disable-ui # Check whether --enable-ui was given. if test ${enable_ui+y} then : enableval=$enable_ui; enable_ui=$enableval else case e in #( e) enable_ui=yes ;; esac fi if test x"$enable_ui" = x"yes"; then ENABLE_UI_TRUE= ENABLE_UI_FALSE='#' else ENABLE_UI_TRUE='#' ENABLE_UI_FALSE= fi if test x"$enable_ui" = x"yes"; then enable_ui="yes (enabled, use --disable-ui to disable)" fi if test x"$enable_appindicator" = x"yes"; then pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dbusmenu-glib-0.4" >&5 printf %s "checking for dbusmenu-glib-0.4... " >&6; } if test -n "$DBUSMENU_GLIB_CFLAGS"; then pkg_cv_DBUSMENU_GLIB_CFLAGS="$DBUSMENU_GLIB_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"dbusmenu-glib-0.4\""; } >&5 ($PKG_CONFIG --exists --print-errors "dbusmenu-glib-0.4") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_DBUSMENU_GLIB_CFLAGS=`$PKG_CONFIG --cflags "dbusmenu-glib-0.4" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$DBUSMENU_GLIB_LIBS"; then pkg_cv_DBUSMENU_GLIB_LIBS="$DBUSMENU_GLIB_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"dbusmenu-glib-0.4\""; } >&5 ($PKG_CONFIG --exists --print-errors "dbusmenu-glib-0.4") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_DBUSMENU_GLIB_LIBS=`$PKG_CONFIG --libs "dbusmenu-glib-0.4" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then DBUSMENU_GLIB_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "dbusmenu-glib-0.4" 2>&1` else DBUSMENU_GLIB_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "dbusmenu-glib-0.4" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$DBUSMENU_GLIB_PKG_ERRORS" >&5 as_fn_error $? "Package requirements (dbusmenu-glib-0.4) were not met: $DBUSMENU_GLIB_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables DBUSMENU_GLIB_CFLAGS and DBUSMENU_GLIB_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables DBUSMENU_GLIB_CFLAGS and DBUSMENU_GLIB_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else DBUSMENU_GLIB_CFLAGS=$pkg_cv_DBUSMENU_GLIB_CFLAGS DBUSMENU_GLIB_LIBS=$pkg_cv_DBUSMENU_GLIB_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dbusmenu-gtk3-0.4" >&5 printf %s "checking for dbusmenu-gtk3-0.4... " >&6; } if test -n "$DBUSMENU_GTK3_CFLAGS"; then pkg_cv_DBUSMENU_GTK3_CFLAGS="$DBUSMENU_GTK3_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"dbusmenu-gtk3-0.4\""; } >&5 ($PKG_CONFIG --exists --print-errors "dbusmenu-gtk3-0.4") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_DBUSMENU_GTK3_CFLAGS=`$PKG_CONFIG --cflags "dbusmenu-gtk3-0.4" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$DBUSMENU_GTK3_LIBS"; then pkg_cv_DBUSMENU_GTK3_LIBS="$DBUSMENU_GTK3_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"dbusmenu-gtk3-0.4\""; } >&5 ($PKG_CONFIG --exists --print-errors "dbusmenu-gtk3-0.4") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_DBUSMENU_GTK3_LIBS=`$PKG_CONFIG --libs "dbusmenu-gtk3-0.4" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then DBUSMENU_GTK3_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "dbusmenu-gtk3-0.4" 2>&1` else DBUSMENU_GTK3_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "dbusmenu-gtk3-0.4" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$DBUSMENU_GTK3_PKG_ERRORS" >&5 as_fn_error $? "Package requirements (dbusmenu-gtk3-0.4) were not met: $DBUSMENU_GTK3_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables DBUSMENU_GTK3_CFLAGS and DBUSMENU_GTK3_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables DBUSMENU_GTK3_CFLAGS and DBUSMENU_GTK3_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else DBUSMENU_GTK3_CFLAGS=$pkg_cv_DBUSMENU_GTK3_CFLAGS DBUSMENU_GTK3_LIBS=$pkg_cv_DBUSMENU_GTK3_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi enable_appindicator="yes (enabled, use --disable-appindicator to disable)" fi # --disable-engine # Check whether --enable-engine was given. if test ${enable_engine+y} then : enableval=$enable_engine; enable_engine=$enableval else case e in #( e) enable_engine=yes ;; esac fi if test x"$enable_engine" = x"yes"; then ENABLE_ENGINE_TRUE= ENABLE_ENGINE_FALSE='#' else ENABLE_ENGINE_TRUE='#' ENABLE_ENGINE_FALSE= fi if test x"$enable_engine" = x"yes"; then enable_engine="yes (enabled, use --disable-engine to disable)" fi # --disable-libnotify # Check whether --enable-libnotify was given. if test ${enable_libnotify+y} then : enableval=$enable_libnotify; enable_libnotify=$enableval else case e in #( e) enable_libnotify=yes ;; esac fi if test x"$enable_libnotify" = x"yes"; then ENABLE_LIBNOTIFY_TRUE= ENABLE_LIBNOTIFY_FALSE='#' else ENABLE_LIBNOTIFY_TRUE='#' ENABLE_LIBNOTIFY_FALSE= fi if test x"$enable_libnotify" = x"yes"; then pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libnotify >= 0.7 " >&5 printf %s "checking for libnotify >= 0.7 ... " >&6; } if test -n "$LIBNOTIFY_CFLAGS"; then pkg_cv_LIBNOTIFY_CFLAGS="$LIBNOTIFY_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" libnotify >= 0.7 \""; } >&5 ($PKG_CONFIG --exists --print-errors " libnotify >= 0.7 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_LIBNOTIFY_CFLAGS=`$PKG_CONFIG --cflags " libnotify >= 0.7 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$LIBNOTIFY_LIBS"; then pkg_cv_LIBNOTIFY_LIBS="$LIBNOTIFY_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" libnotify >= 0.7 \""; } >&5 ($PKG_CONFIG --exists --print-errors " libnotify >= 0.7 ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_LIBNOTIFY_LIBS=`$PKG_CONFIG --libs " libnotify >= 0.7 " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then LIBNOTIFY_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " libnotify >= 0.7 " 2>&1` else LIBNOTIFY_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " libnotify >= 0.7 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$LIBNOTIFY_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( libnotify >= 0.7 ) were not met: $LIBNOTIFY_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables LIBNOTIFY_CFLAGS and LIBNOTIFY_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables LIBNOTIFY_CFLAGS and LIBNOTIFY_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else LIBNOTIFY_CFLAGS=$pkg_cv_LIBNOTIFY_CFLAGS LIBNOTIFY_LIBS=$pkg_cv_LIBNOTIFY_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi enable_libnotify="yes (enabled, use --disable-libnotify to disable)" fi pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for x11 xtst" >&5 printf %s "checking for x11 xtst... " >&6; } if test -n "$XTEST_CFLAGS"; then pkg_cv_XTEST_CFLAGS="$XTEST_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"x11 xtst\""; } >&5 ($PKG_CONFIG --exists --print-errors "x11 xtst") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XTEST_CFLAGS=`$PKG_CONFIG --cflags "x11 xtst" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$XTEST_LIBS"; then pkg_cv_XTEST_LIBS="$XTEST_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"x11 xtst\""; } >&5 ($PKG_CONFIG --exists --print-errors "x11 xtst") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XTEST_LIBS=`$PKG_CONFIG --libs "x11 xtst" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then XTEST_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "x11 xtst" 2>&1` else XTEST_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "x11 xtst" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$XTEST_PKG_ERRORS" >&5 enable_xtest=no elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } enable_xtest=no else XTEST_CFLAGS=$pkg_cv_XTEST_CFLAGS XTEST_LIBS=$pkg_cv_XTEST_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } enable_xtest=yes fi if test x"$enable_xtest" = x"yes"; then ENABLE_XTEST_TRUE= ENABLE_XTEST_FALSE='#' else ENABLE_XTEST_TRUE='#' ENABLE_XTEST_FALSE= fi pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for x11 xfixes >= 6" >&5 printf %s "checking for x11 xfixes >= 6... " >&6; } if test -n "$XFIXES_CFLAGS"; then pkg_cv_XFIXES_CFLAGS="$XFIXES_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"x11 xfixes >= 6\""; } >&5 ($PKG_CONFIG --exists --print-errors "x11 xfixes >= 6") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XFIXES_CFLAGS=`$PKG_CONFIG --cflags "x11 xfixes >= 6" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$XFIXES_LIBS"; then pkg_cv_XFIXES_LIBS="$XFIXES_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"x11 xfixes >= 6\""; } >&5 ($PKG_CONFIG --exists --print-errors "x11 xfixes >= 6") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XFIXES_LIBS=`$PKG_CONFIG --libs "x11 xfixes >= 6" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then XFIXES_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "x11 xfixes >= 6" 2>&1` else XFIXES_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "x11 xfixes >= 6" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$XFIXES_PKG_ERRORS" >&5 have_xfixes="no (libXfixes version is lower than 6)" elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } have_xfixes="no (libXfixes version is lower than 6)" else XFIXES_CFLAGS=$pkg_cv_XFIXES_CFLAGS XFIXES_LIBS=$pkg_cv_XFIXES_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } printf "%s\n" "#define HAVE_XFIXES 1" >>confdefs.h have_xfixes=yes fi # --enable-install-tests # Check whether --enable-install-tests was given. if test ${enable_install_tests+y} then : enableval=$enable_install_tests; enable_install_tests=$enableval else case e in #( e) enable_install_tests=no ;; esac fi if test x"$enable_install_tests" = x"yes"; then ENABLE_INSTALL_TESTS_TRUE= ENABLE_INSTALL_TESTS_FALSE='#' else ENABLE_INSTALL_TESTS_TRUE='#' ENABLE_INSTALL_TESTS_FALSE= fi if test x"$enable_install_tests" = x"no"; then enable_install_tests="no (disabled, use --enable-install-tests to enable)" fi # --disable-emoji-dict option. # Check whether --enable-emoji-dict was given. if test ${enable_emoji_dict+y} then : enableval=$enable_emoji_dict; enable_emoji_dict=$enableval else case e in #( e) enable_emoji_dict=yes ;; esac fi if test x"$enable_emoji_dict" = x"yes"; then ENABLE_EMOJI_DICT_TRUE= ENABLE_EMOJI_DICT_FALSE='#' else ENABLE_EMOJI_DICT_TRUE='#' ENABLE_EMOJI_DICT_FALSE= fi # Check whether --with-unicode-emoji-dir was given. if test ${with_unicode_emoji_dir+y} then : withval=$with_unicode_emoji_dir; UNICODE_EMOJI_DIR=$with_unicode_emoji_dir else case e in #( e) UNICODE_EMOJI_DIR="/usr/share/unicode/emoji" ;; esac fi # Check whether --with-emoji-annotation-dir was given. if test ${with_emoji_annotation_dir+y} then : withval=$with_emoji_annotation_dir; EMOJI_ANNOTATION_DIR=$with_emoji_annotation_dir else case e in #( e) EMOJI_ANNOTATION_DIR="/usr/share/unicode/cldr/common/annotations" ;; esac fi if test x"$enable_emoji_dict" = x"yes"; then if test ! -f $UNICODE_EMOJI_DIR/emoji-test.txt ; then as_fn_error $? "Not found $UNICODE_EMOJI_DIR/emoji-test.txt. You can get \ the emoji files from http://www.unicode.org/Public/emoji/4.0/" "$LINENO" 5 else # POSIX SHELL has no ${FOO:0:1} head=`echo "$UNICODE_EMOJI_DIR" | cut -c1`; if test $head != "/" ; then UNICODE_EMOJI_DIR=`realpath "$UNICODE_EMOJI_DIR"` fi fi if test ! -f $EMOJI_ANNOTATION_DIR/en.xml ; then as_fn_error $? "Not found $EMOJI_ANNOTATION_DIR/en.xml. You can get \ https://github.com/fujiwarat/cldr-emoji-annotation" "$LINENO" 5 else head=`echo "$EMOJI_ANNOTATION_DIR" | cut -c1`; if test $head != "/" ; then EMOJI_ANNOTATION_DIR=`realpath "$EMOJI_ANNOTATION_DIR"` fi fi enable_emoji_dict="yes (enabled, use --disable-emoji-dict to disable)" fi # --disable-unicode-dict option. # Check whether --enable-unicode-dict was given. if test ${enable_unicode_dict+y} then : enableval=$enable_unicode_dict; enable_unicode_dict=$enableval else case e in #( e) enable_unicode_dict=yes ;; esac fi if test x"$enable_unicode_dict" = x"yes"; then ENABLE_UNICODE_DICT_TRUE= ENABLE_UNICODE_DICT_FALSE='#' else ENABLE_UNICODE_DICT_TRUE='#' ENABLE_UNICODE_DICT_FALSE= fi # Check whether --with-ucd-dir was given. if test ${with_ucd_dir+y} then : withval=$with_ucd_dir; UCD_DIR=$with_ucd_dir else case e in #( e) UCD_DIR="/usr/share/unicode/ucd" ;; esac fi if test x"$enable_unicode_dict" = x"yes"; then if test ! -f $UCD_DIR/NamesList.txt ; then as_fn_error $? "Not found $UCD_DIR/NamesList.txt. You can get \ the UCD files from https://www.unicode.org/Public/UNIDATA/" "$LINENO" 5 elif test ! -f $UCD_DIR/Blocks.txt ; then as_fn_error $? "Not found $UCD_DIR/Blocks.txt. You can get \ the UCD files from https://www.unicode.org/Public/UNIDATA/" "$LINENO" 5 else # POSIX SHELL has no ${FOO:0:1} head=`echo "$UCD_DIR" | cut -c1`; if test $head != "/" ; then UCD_DIR=`realpath "$UCD_DIR"` fi fi enable_unicode_dict="yes (enabled, use --disable-unicode-dict to disable)" fi # Check whether --with-socket-dir was given. if test ${with_socket_dir+y} then : withval=$with_socket_dir; IBUS_SOCKET_DIR=$with_socket_dir else case e in #( e) case $host in *linux*) IBUS_SOCKET_DIR='unix:tmpdir=$XDG_CACHE_HOME/ibus';; *) IBUS_SOCKET_DIR='unix:tmpdir=/tmp';; esac ;; esac fi printf "%s\n" "#define IBUS_SOCKET_DIR \"$IBUS_SOCKET_DIR\"" >>confdefs.h # Check iso-codes. pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for iso-codes " >&5 printf %s "checking for iso-codes ... " >&6; } if test -n "$ISOCODES_CFLAGS"; then pkg_cv_ISOCODES_CFLAGS="$ISOCODES_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" iso-codes \""; } >&5 ($PKG_CONFIG --exists --print-errors " iso-codes ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_ISOCODES_CFLAGS=`$PKG_CONFIG --cflags " iso-codes " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$ISOCODES_LIBS"; then pkg_cv_ISOCODES_LIBS="$ISOCODES_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" iso-codes \""; } >&5 ($PKG_CONFIG --exists --print-errors " iso-codes ") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_ISOCODES_LIBS=`$PKG_CONFIG --libs " iso-codes " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then ISOCODES_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " iso-codes " 2>&1` else ISOCODES_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " iso-codes " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$ISOCODES_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( iso-codes ) were not met: $ISOCODES_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables ISOCODES_CFLAGS and ISOCODES_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables ISOCODES_CFLAGS and ISOCODES_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See 'config.log' for more details" "$LINENO" 5; } else ISOCODES_CFLAGS=$pkg_cv_ISOCODES_CFLAGS ISOCODES_LIBS=$pkg_cv_ISOCODES_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } fi ISOCODES_PREFIX=`$PKG_CONFIG iso-codes --variable=prefix` pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for xkeyboard-config" >&5 printf %s "checking for xkeyboard-config... " >&6; } if test -n "$XKBCONFIG_CFLAGS"; then pkg_cv_XKBCONFIG_CFLAGS="$XKBCONFIG_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xkeyboard-config\""; } >&5 ($PKG_CONFIG --exists --print-errors "xkeyboard-config") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XKBCONFIG_CFLAGS=`$PKG_CONFIG --cflags "xkeyboard-config" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$XKBCONFIG_LIBS"; then pkg_cv_XKBCONFIG_LIBS="$XKBCONFIG_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xkeyboard-config\""; } >&5 ($PKG_CONFIG --exists --print-errors "xkeyboard-config") 2>&5 ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XKBCONFIG_LIBS=`$PKG_CONFIG --libs "xkeyboard-config" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then XKBCONFIG_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "xkeyboard-config" 2>&1` else XKBCONFIG_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "xkeyboard-config" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$XKBCONFIG_PKG_ERRORS" >&5 XKBCONFIG_BASE='$(datarootdir)/X11/xkb' elif test $pkg_failed = untried; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } XKBCONFIG_BASE='$(datarootdir)/X11/xkb' else XKBCONFIG_CFLAGS=$pkg_cv_XKBCONFIG_CFLAGS XKBCONFIG_LIBS=$pkg_cv_XKBCONFIG_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } XKBCONFIG_BASE=`$PKG_CONFIG xkeyboard-config --variable=xkb_base` fi GDBUS_CODEGEN=`$PKG_CONFIG --variable gdbus_codegen gio-2.0` # OUTPUT files ac_config_files="$ac_config_files po/Makefile.in bindings/Makefile bindings/pygobject/Makefile bindings/vala/Makefile bus/Makefile bus/ibus-daemon.1 bus/services/Makefile client/Makefile client/gtk2/Makefile client/gtk3/Makefile client/gtk4/Makefile client/x11/Makefile client/wayland/Makefile conf/Makefile conf/dconf/Makefile conf/memconf/Makefile data/Makefile data/annotations/Makefile data/icons/Makefile data/its/Makefile data/keymaps/Makefile data/dconf/Makefile data/dconf/00-upstream-settings.5 data/dconf/ibus.5 docs/Makefile docs/reference/Makefile docs/reference/ibus/ibus-docs.sgml docs/reference/ibus/Makefile engine/Makefile ibus/_config.py ibus/Makefile ibus/interface/Makefile m4/Makefile portal/Makefile setup/Makefile setup/ibus-setup.1 src/Makefile src/compose/Makefile src/ibusversion.h src/tests/Makefile tools/Makefile tools/ibus.1 ui/Makefile ui/gtk3/Makefile ui/gtk3/ibus-emoji.7 util/Makefile util/IMdkit/Makefile Makefile ibus-1.0.pc ibus.spec" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure # scripts and configure runs, see configure's option --config-cache. # It is not useful on other systems. If it contains results you don't # want to keep, you may remove or edit it. # # config.status only pays attention to the cache file if you give it # the --recheck option to rerun configure. # # 'ac_cv_env_foo' variables (set or unset) will be overridden when # loading this file, other *unset* 'ac_cv_foo' will be assigned the # following values. _ACEOF # The following way of writing the cache mishandles newlines in values, # but we know of no workaround that is simple, portable, and efficient. # So, we kill variables containing newlines. # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. ( for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do eval ac_val=\$$ac_var case $ac_val in #( *${as_nl}*) case $ac_var in #( *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done (set) 2>&1 | case $as_nl`(ac_space=' '; set) 2>&1` in #( *${as_nl}ac_space=\ *) # 'set' does not quote correctly, so add quotes: double-quote # substitution turns \\\\ into \\, and sed turns \\ into \. sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" ;; #( *) # 'set' quotes correctly as required by POSIX, so do not add quotes. sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; esac | sort ) | sed ' /^ac_cv_env_/b end t clear :clear s/^\([^=]*\)=\(.*[{}].*\)$/test ${\1+y} || &/ t end s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ :end' >>confcache if diff "$cache_file" confcache >/dev/null 2>&1; then :; else if test -w "$cache_file"; then if test "x$cache_file" != "x/dev/null"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 printf "%s\n" "$as_me: updating cache $cache_file" >&6;} if test ! -f "$cache_file" || test -h "$cache_file"; then cat confcache >"$cache_file" else case $cache_file in #( */* | ?:*) mv -f confcache "$cache_file"$$ && mv -f "$cache_file"$$ "$cache_file" ;; #( *) mv -f confcache "$cache_file" ;; esac fi fi else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 printf "%s\n" "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi rm -f confcache test "x$prefix" = xNONE && prefix=$ac_default_prefix # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' DEFS=-DHAVE_CONFIG_H ac_libobjs= ac_ltlibobjs= U= for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' ac_i=`printf "%s\n" "$ac_i" | sed "$ac_script"` # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR # will be set to the directory where LIBOBJS objects are built. as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5 printf %s "checking that generated files are newer than configure... " >&6; } if test -n "$am_sleep_pid"; then # Hide warnings about reused PIDs. wait $am_sleep_pid 2>/dev/null fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: done" >&5 printf "%s\n" "done" >&6; } case $enable_silent_rules in # ((( yes) AM_DEFAULT_VERBOSITY=0;; no) AM_DEFAULT_VERBOSITY=1;; esac if test $am_cv_make_support_nested_variables = yes; then AM_V='$(V)' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' else AM_V=$AM_DEFAULT_VERBOSITY AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY fi if test -n "$EXEEXT"; then am__EXEEXT_TRUE= am__EXEEXT_FALSE='#' else am__EXEEXT_TRUE='#' am__EXEEXT_FALSE= fi if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then as_fn_error $? "conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${CROSS_COMPILING_TRUE}" && test -z "${CROSS_COMPILING_FALSE}"; then as_fn_error $? "conditional \"CROSS_COMPILING\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_TESTS_TRUE}" && test -z "${ENABLE_TESTS_FALSE}"; then as_fn_error $? "conditional \"ENABLE_TESTS\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_GTK2_TRUE}" && test -z "${ENABLE_GTK2_FALSE}"; then as_fn_error $? "conditional \"ENABLE_GTK2\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_GTK3_TRUE}" && test -z "${ENABLE_GTK3_FALSE}"; then as_fn_error $? "conditional \"ENABLE_GTK3\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_GTK4_TRUE}" && test -z "${ENABLE_GTK4_FALSE}"; then as_fn_error $? "conditional \"ENABLE_GTK4\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_GTK3_OR_4_TRUE}" && test -z "${ENABLE_GTK3_OR_4_FALSE}"; then as_fn_error $? "conditional \"ENABLE_GTK3_OR_4\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_XIM_TRUE}" && test -z "${ENABLE_XIM_FALSE}"; then as_fn_error $? "conditional \"ENABLE_XIM\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_WAYLAND_TRUE}" && test -z "${ENABLE_WAYLAND_FALSE}"; then as_fn_error $? "conditional \"ENABLE_WAYLAND\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_APPINDICATOR_TRUE}" && test -z "${ENABLE_APPINDICATOR_FALSE}"; then as_fn_error $? "conditional \"ENABLE_APPINDICATOR\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_GDK3_WAYLAND_TRUE}" && test -z "${ENABLE_GDK3_WAYLAND_FALSE}"; then as_fn_error $? "conditional \"ENABLE_GDK3_WAYLAND\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${HAVE_INTROSPECTION_TRUE}" && test -z "${HAVE_INTROSPECTION_FALSE}"; then as_fn_error $? "conditional \"HAVE_INTROSPECTION\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_VAPIGEN_TRUE}" && test -z "${ENABLE_VAPIGEN_FALSE}"; then as_fn_error $? "conditional \"ENABLE_VAPIGEN\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${HAVE_GTK_DOC_TRUE}" && test -z "${HAVE_GTK_DOC_FALSE}"; then as_fn_error $? "conditional \"HAVE_GTK_DOC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_GTK_DOC_TRUE}" && test -z "${ENABLE_GTK_DOC_FALSE}"; then as_fn_error $? "conditional \"ENABLE_GTK_DOC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_BUILD_HTML_TRUE}" && test -z "${GTK_DOC_BUILD_HTML_FALSE}"; then as_fn_error $? "conditional \"GTK_DOC_BUILD_HTML\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_BUILD_PDF_TRUE}" && test -z "${GTK_DOC_BUILD_PDF_FALSE}"; then as_fn_error $? "conditional \"GTK_DOC_BUILD_PDF\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_USE_LIBTOOL_TRUE}" && test -z "${GTK_DOC_USE_LIBTOOL_FALSE}"; then as_fn_error $? "conditional \"GTK_DOC_USE_LIBTOOL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_USE_REBASE_TRUE}" && test -z "${GTK_DOC_USE_REBASE_FALSE}"; then as_fn_error $? "conditional \"GTK_DOC_USE_REBASE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_MEMCONF_TRUE}" && test -z "${ENABLE_MEMCONF_FALSE}"; then as_fn_error $? "conditional \"ENABLE_MEMCONF\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_DCONF_TRUE}" && test -z "${ENABLE_DCONF_FALSE}"; then as_fn_error $? "conditional \"ENABLE_DCONF\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_SYSTEMD_TRUE}" && test -z "${ENABLE_SYSTEMD_FALSE}"; then as_fn_error $? "conditional \"ENABLE_SYSTEMD\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_PYTHON2_TRUE}" && test -z "${ENABLE_PYTHON2_FALSE}"; then as_fn_error $? "conditional \"ENABLE_PYTHON2\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_PYTHON_LIBRARY_TRUE}" && test -z "${ENABLE_PYTHON_LIBRARY_FALSE}"; then as_fn_error $? "conditional \"ENABLE_PYTHON_LIBRARY\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_SETUP_TRUE}" && test -z "${ENABLE_SETUP_FALSE}"; then as_fn_error $? "conditional \"ENABLE_SETUP\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_DAEMON_TRUE}" && test -z "${ENABLE_DAEMON_FALSE}"; then as_fn_error $? "conditional \"ENABLE_DAEMON\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_PYGOBJECT_TRUE}" && test -z "${ENABLE_PYGOBJECT_FALSE}"; then as_fn_error $? "conditional \"ENABLE_PYGOBJECT\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_UI_TRUE}" && test -z "${ENABLE_UI_FALSE}"; then as_fn_error $? "conditional \"ENABLE_UI\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_ENGINE_TRUE}" && test -z "${ENABLE_ENGINE_FALSE}"; then as_fn_error $? "conditional \"ENABLE_ENGINE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_LIBNOTIFY_TRUE}" && test -z "${ENABLE_LIBNOTIFY_FALSE}"; then as_fn_error $? "conditional \"ENABLE_LIBNOTIFY\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_XTEST_TRUE}" && test -z "${ENABLE_XTEST_FALSE}"; then as_fn_error $? "conditional \"ENABLE_XTEST\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_INSTALL_TESTS_TRUE}" && test -z "${ENABLE_INSTALL_TESTS_FALSE}"; then as_fn_error $? "conditional \"ENABLE_INSTALL_TESTS\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_EMOJI_DICT_TRUE}" && test -z "${ENABLE_EMOJI_DICT_FALSE}"; then as_fn_error $? "conditional \"ENABLE_EMOJI_DICT\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${ENABLE_UNICODE_DICT_TRUE}" && test -z "${ENABLE_UNICODE_DICT_FALSE}"; then as_fn_error $? "conditional \"ENABLE_UNICODE_DICT\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi : "${CONFIG_STATUS=./config.status}" ac_write_fail=0 ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 printf "%s\n" "$as_me: creating $CONFIG_STATUS" >&6;} as_write_fail=0 cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. # Compiler output produced by configure, useful for debugging # configure, is in config.log if it exists. debug=false ac_cs_recheck=false ac_cs_silent=false SHELL=\${CONFIG_SHELL-$SHELL} export SHELL _ASEOF cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 ## -------------------- ## ## M4sh Initialization. ## ## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case e in #( e) case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; esac ;; esac fi # Reset variables that may have inherited troublesome values from # the environment. # IFS needs to be set, to space, tab, and newline, in precisely that order. # (If _AS_PATH_WALK were called with IFS unset, it would have the # side effect of setting IFS to empty, thus disabling word splitting.) # Quoting is to prevent editors from complaining about space-tab. as_nl=' ' export as_nl IFS=" "" $as_nl" PS1='$ ' PS2='> ' PS4='+ ' # Ensure predictable behavior from utilities with locale-dependent output. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # We cannot yet rely on "unset" to work, but we need these variables # to be unset--not just set to an empty or harmless value--now, to # avoid bugs in old shells (e.g. pre-3.0 UWIN ksh). This construct # also avoids known problems related to "unset" and subshell syntax # in other old shells (e.g. bash 2.01 and pdksh 5.2.14). for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH do eval test \${$as_var+y} \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done # Ensure that fds 0, 1, and 2 are open. if (exec 3>&0) 2>/dev/null; then :; else exec 0&1) 2>/dev/null; then :; else exec 1>/dev/null; fi if (exec 3>&2) ; then :; else exec 2>/dev/null; fi # The user is always right. if ${PATH_SEPARATOR+false} :; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi # Find who we are. Look in the path if we contain no directory separator. as_myself= case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS case $as_dir in #((( '') as_dir=./ ;; */) ;; *) as_dir=$as_dir/ ;; esac test -r "$as_dir$0" && as_myself=$as_dir$0 && break done IFS=$as_save_IFS ;; esac # We did not find ourselves, most probably we were run as 'sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # as_fn_error STATUS ERROR [LINENO LOG_FD] # ---------------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the # script with STATUS, using 1 if that was 0. as_fn_error () { as_status=$1; test $as_status -eq 0 && as_status=1 if test "$4"; then as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi printf "%s\n" "$as_me: error: $2" >&2 as_fn_exit $as_status } # as_fn_error # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. as_fn_set_status () { return $1 } # as_fn_set_status # as_fn_exit STATUS # ----------------- # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. as_fn_exit () { set +e as_fn_set_status $1 exit $1 } # as_fn_exit # as_fn_unset VAR # --------------- # Portably unset VAR. as_fn_unset () { { eval $1=; unset $1;} } as_unset=as_fn_unset # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null then : eval 'as_fn_append () { eval $1+=\$2 }' else case e in #( e) as_fn_append () { eval $1=\$$1\$2 } ;; esac fi # as_fn_append # as_fn_arith ARG... # ------------------ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null then : eval 'as_fn_arith () { as_val=$(( $* )) }' else case e in #( e) as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } ;; esac fi # as_fn_arith if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || printf "%s\n" X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits # Determine whether it's possible to make 'echo' print without a newline. # These variables are no longer used directly by Autoconf, but are AC_SUBSTed # for compatibility with existing Makefiles. ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. xy) ECHO_C='\c';; *) echo `echo ksh88 bug on AIX 6.1` > /dev/null ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac # For backward compatibility with old third-party macros, we provide # the shell variables $as_echo and $as_echo_n. New code should use # AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively. as_echo='printf %s\n' as_echo_n='printf %s' rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir mkdir conf$$.dir 2>/dev/null fi if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: # 1) On MSYS, both 'ln -s file dir' and 'ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; 'ln -s' creates a wrapper executable. # In both cases, we have to default to 'cp -pR'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -pR' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -pR' fi else as_ln_s='cp -pR' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null # as_fn_mkdir_p # ------------- # Create "$as_dir" as a directory, including parents if necessary. as_fn_mkdir_p () { case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || eval $as_mkdir_p || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || printf "%s\n" X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" } # as_fn_mkdir_p if mkdir -p . 2>/dev/null; then as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi # as_fn_executable_p FILE # ----------------------- # Test if FILE is an executable regular file. as_fn_executable_p () { test -f "$1" && test -x "$1" } # as_fn_executable_p as_test_x='test -x' as_executable_p=as_fn_executable_p # Sed expression to map a string onto a valid CPP name. as_sed_cpp="y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g" as_tr_cpp="eval sed '$as_sed_cpp'" # deprecated # Sed expression to map a string onto a valid variable name. as_sed_sh="y%*+%pp%;s%[^_$as_cr_alnum]%_%g" as_tr_sh="eval sed '$as_sed_sh'" # deprecated exec 6>&1 ## ----------------------------------- ## ## Main body of $CONFIG_STATUS script. ## ## ----------------------------------- ## _ASEOF test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # Save the log message, to keep $0 and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" This file was extended by ibus $as_me 1.5.32, which was generated by GNU Autoconf 2.72. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS CONFIG_LINKS = $CONFIG_LINKS CONFIG_COMMANDS = $CONFIG_COMMANDS $ $0 $@ on `(hostname || uname -n) 2>/dev/null | sed 1q` " _ACEOF case $ac_config_files in *" "*) set x $ac_config_files; shift; ac_config_files=$*;; esac case $ac_config_headers in *" "*) set x $ac_config_headers; shift; ac_config_headers=$*;; esac cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # Files that config.status was made for. config_files="$ac_config_files" config_headers="$ac_config_headers" config_commands="$ac_config_commands" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ac_cs_usage="\ '$as_me' instantiates files and other configuration actions from templates according to the current configuration. Unless the files and actions are specified as TAGs, all are instantiated by default. Usage: $0 [OPTION]... [TAG]... -h, --help print this help, then exit -V, --version print version number and configuration settings, then exit --config print configuration, then exit -q, --quiet, --silent do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions --file=FILE[:TEMPLATE] instantiate the configuration file FILE --header=FILE[:TEMPLATE] instantiate the configuration header FILE Configuration files: $config_files Configuration headers: $config_headers Configuration commands: $config_commands Report bugs to ." _ACEOF ac_cs_config=`printf "%s\n" "$ac_configure_args" | sed "$ac_safe_unquote"` ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\''/g"` cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ ibus config.status 1.5.32 configured by $0, generated by GNU Autoconf 2.72, with options \\"\$ac_cs_config\\" Copyright (C) 2023 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." ac_pwd='$ac_pwd' srcdir='$srcdir' INSTALL='$INSTALL' MKDIR_P='$MKDIR_P' AWK='$AWK' test -n "\$AWK" || AWK=awk _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # The default lists apply if the user does not specify any file. ac_need_defaults=: while test $# != 0 do case $1 in --*=?*) ac_option=`expr "X$1" : 'X\([^=]*\)='` ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` ac_shift=: ;; --*=) ac_option=`expr "X$1" : 'X\([^=]*\)='` ac_optarg= ac_shift=: ;; *) ac_option=$1 ac_optarg=$2 ac_shift=shift ;; esac case $ac_option in # Handling of the options. -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) printf "%s\n" "$ac_cs_version"; exit ;; --config | --confi | --conf | --con | --co | --c ) printf "%s\n" "$ac_cs_config"; exit ;; --debug | --debu | --deb | --de | --d | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; '') as_fn_error $? "missing file argument" ;; esac as_fn_append CONFIG_FILES " '$ac_optarg'" ac_need_defaults=false;; --header | --heade | --head | --hea ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; esac as_fn_append CONFIG_HEADERS " '$ac_optarg'" ac_need_defaults=false;; --he | --h) # Conflict between --help and --header as_fn_error $? "ambiguous option: '$1' Try '$0 --help' for more information.";; --help | --hel | -h ) printf "%s\n" "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; # This is an error. -*) as_fn_error $? "unrecognized option: '$1' Try '$0 --help' for more information." ;; *) as_fn_append ac_config_targets " $1" ac_need_defaults=false ;; esac shift done ac_configure_extra_args= if $ac_cs_silent; then exec 6>/dev/null ac_configure_extra_args="$ac_configure_extra_args --silent" fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 if \$ac_cs_recheck; then set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion shift \printf "%s\n" "running CONFIG_SHELL=$SHELL \$*" >&6 CONFIG_SHELL='$SHELL' export CONFIG_SHELL exec "\$@" fi _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 exec 5>>config.log { echo sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX ## Running $as_me. ## _ASBOX printf "%s\n" "$ac_log" } >&5 _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # # INIT-COMMANDS # AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}" # Capture the value of obsolete ALL_LINGUAS because we need it to compute # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it # from automake < 1.5. eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"' # Capture the value of LINGUAS because we need it to compute CATALOGS. LINGUAS="${LINGUAS-%UNSET%}" # 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' enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`' macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`' macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`' enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`' pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`' enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`' shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`' SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`' ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`' PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`' host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`' host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`' host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`' build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`' build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`' build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`' SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`' Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`' GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`' EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`' FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`' LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`' NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`' LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`' max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`' ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`' exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`' lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`' lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`' lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`' lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`' lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`' reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`' reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`' FILECMD='`$ECHO "$FILECMD" | $SED "$delay_single_quote_subst"`' OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`' deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`' file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`' file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`' want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`' DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`' sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`' AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`' lt_ar_flags='`$ECHO "$lt_ar_flags" | $SED "$delay_single_quote_subst"`' AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`' archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`' STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`' RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`' old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`' old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`' old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`' lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`' CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`' CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`' compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`' GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`' lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`' nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`' lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`' lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`' objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`' MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`' lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`' need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`' MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`' DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`' NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`' LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`' OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`' OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`' libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`' shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`' extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`' archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`' enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`' export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`' whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`' compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`' old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`' old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`' archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`' archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`' module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`' module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`' with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`' allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`' no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`' hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`' hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`' hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`' hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`' hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`' hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`' hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`' inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`' link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`' always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`' export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`' exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`' include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`' prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`' postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`' file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`' variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`' need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`' need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`' version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`' runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`' shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`' shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`' libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`' library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`' soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`' install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`' postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`' postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`' finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`' finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`' hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`' sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`' configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`' configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`' hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`' enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`' enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`' enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`' old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`' striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`' LTCC='$LTCC' LTCFLAGS='$LTCFLAGS' compiler='$compiler_DEFAULT' # A function that is used when there is no print builtin or printf. func_fallback_echo () { eval 'cat <<_LTECHO_EOF \$1 _LTECHO_EOF' } # Quote evaled strings. for var in SHELL \ ECHO \ PATH_SEPARATOR \ SED \ GREP \ EGREP \ FGREP \ LD \ NM \ LN_S \ lt_SP2NL \ lt_NL2SP \ reload_flag \ FILECMD \ OBJDUMP \ deplibs_check_method \ file_magic_cmd \ file_magic_glob \ want_nocaseglob \ DLLTOOL \ sharedlib_from_linklib_cmd \ AR \ archiver_list_spec \ STRIP \ RANLIB \ CC \ CFLAGS \ compiler \ lt_cv_sys_global_symbol_pipe \ lt_cv_sys_global_symbol_to_cdecl \ lt_cv_sys_global_symbol_to_import \ lt_cv_sys_global_symbol_to_c_name_address \ lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \ lt_cv_nm_interface \ nm_file_list_spec \ lt_cv_truncate_bin \ lt_prog_compiler_no_builtin_flag \ lt_prog_compiler_pic \ lt_prog_compiler_wl \ lt_prog_compiler_static \ lt_cv_prog_compiler_c_o \ need_locks \ MANIFEST_TOOL \ DSYMUTIL \ NMEDIT \ LIPO \ OTOOL \ OTOOL64 \ shrext_cmds \ export_dynamic_flag_spec \ whole_archive_flag_spec \ compiler_needs_object \ with_gnu_ld \ allow_undefined_flag \ no_undefined_flag \ hardcode_libdir_flag_spec \ hardcode_libdir_separator \ exclude_expsyms \ include_expsyms \ file_list_spec \ variables_saved_for_relink \ libname_spec \ library_names_spec \ soname_spec \ install_override_mode \ finish_eval \ old_striplib \ striplib; do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done # Double-quote double-evaled strings. for var in reload_cmds \ old_postinstall_cmds \ old_postuninstall_cmds \ old_archive_cmds \ extract_expsyms_cmds \ old_archive_from_new_cmds \ old_archive_from_expsyms_cmds \ archive_cmds \ archive_expsym_cmds \ module_cmds \ module_expsym_cmds \ export_symbols_cmds \ prelink_cmds \ postlink_cmds \ postinstall_cmds \ postuninstall_cmds \ finish_cmds \ sys_lib_search_path_spec \ configure_time_dlsearch_path \ configure_time_lt_sys_library_path; do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done ac_aux_dir='$ac_aux_dir' # See if we are running on zsh, and set the options that allow our # commands through without removal of \ escapes INIT. if test -n "\${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi PACKAGE='$PACKAGE' VERSION='$VERSION' RM='$RM' ofile='$ofile' _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # Handling of arguments. for ac_config_target in $ac_config_targets do case $ac_config_target in "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "po-directories") CONFIG_COMMANDS="$CONFIG_COMMANDS po-directories" ;; "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; "bindings/Makefile") CONFIG_FILES="$CONFIG_FILES bindings/Makefile" ;; "bindings/pygobject/Makefile") CONFIG_FILES="$CONFIG_FILES bindings/pygobject/Makefile" ;; "bindings/vala/Makefile") CONFIG_FILES="$CONFIG_FILES bindings/vala/Makefile" ;; "bus/Makefile") CONFIG_FILES="$CONFIG_FILES bus/Makefile" ;; "bus/ibus-daemon.1") CONFIG_FILES="$CONFIG_FILES bus/ibus-daemon.1" ;; "bus/services/Makefile") CONFIG_FILES="$CONFIG_FILES bus/services/Makefile" ;; "client/Makefile") CONFIG_FILES="$CONFIG_FILES client/Makefile" ;; "client/gtk2/Makefile") CONFIG_FILES="$CONFIG_FILES client/gtk2/Makefile" ;; "client/gtk3/Makefile") CONFIG_FILES="$CONFIG_FILES client/gtk3/Makefile" ;; "client/gtk4/Makefile") CONFIG_FILES="$CONFIG_FILES client/gtk4/Makefile" ;; "client/x11/Makefile") CONFIG_FILES="$CONFIG_FILES client/x11/Makefile" ;; "client/wayland/Makefile") CONFIG_FILES="$CONFIG_FILES client/wayland/Makefile" ;; "conf/Makefile") CONFIG_FILES="$CONFIG_FILES conf/Makefile" ;; "conf/dconf/Makefile") CONFIG_FILES="$CONFIG_FILES conf/dconf/Makefile" ;; "conf/memconf/Makefile") CONFIG_FILES="$CONFIG_FILES conf/memconf/Makefile" ;; "data/Makefile") CONFIG_FILES="$CONFIG_FILES data/Makefile" ;; "data/annotations/Makefile") CONFIG_FILES="$CONFIG_FILES data/annotations/Makefile" ;; "data/icons/Makefile") CONFIG_FILES="$CONFIG_FILES data/icons/Makefile" ;; "data/its/Makefile") CONFIG_FILES="$CONFIG_FILES data/its/Makefile" ;; "data/keymaps/Makefile") CONFIG_FILES="$CONFIG_FILES data/keymaps/Makefile" ;; "data/dconf/Makefile") CONFIG_FILES="$CONFIG_FILES data/dconf/Makefile" ;; "data/dconf/00-upstream-settings.5") CONFIG_FILES="$CONFIG_FILES data/dconf/00-upstream-settings.5" ;; "data/dconf/ibus.5") CONFIG_FILES="$CONFIG_FILES data/dconf/ibus.5" ;; "docs/Makefile") CONFIG_FILES="$CONFIG_FILES docs/Makefile" ;; "docs/reference/Makefile") CONFIG_FILES="$CONFIG_FILES docs/reference/Makefile" ;; "docs/reference/ibus/ibus-docs.sgml") CONFIG_FILES="$CONFIG_FILES docs/reference/ibus/ibus-docs.sgml" ;; "docs/reference/ibus/Makefile") CONFIG_FILES="$CONFIG_FILES docs/reference/ibus/Makefile" ;; "engine/Makefile") CONFIG_FILES="$CONFIG_FILES engine/Makefile" ;; "ibus/_config.py") CONFIG_FILES="$CONFIG_FILES ibus/_config.py" ;; "ibus/Makefile") CONFIG_FILES="$CONFIG_FILES ibus/Makefile" ;; "ibus/interface/Makefile") CONFIG_FILES="$CONFIG_FILES ibus/interface/Makefile" ;; "m4/Makefile") CONFIG_FILES="$CONFIG_FILES m4/Makefile" ;; "portal/Makefile") CONFIG_FILES="$CONFIG_FILES portal/Makefile" ;; "setup/Makefile") CONFIG_FILES="$CONFIG_FILES setup/Makefile" ;; "setup/ibus-setup.1") CONFIG_FILES="$CONFIG_FILES setup/ibus-setup.1" ;; "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; "src/compose/Makefile") CONFIG_FILES="$CONFIG_FILES src/compose/Makefile" ;; "src/ibusversion.h") CONFIG_FILES="$CONFIG_FILES src/ibusversion.h" ;; "src/tests/Makefile") CONFIG_FILES="$CONFIG_FILES src/tests/Makefile" ;; "tools/Makefile") CONFIG_FILES="$CONFIG_FILES tools/Makefile" ;; "tools/ibus.1") CONFIG_FILES="$CONFIG_FILES tools/ibus.1" ;; "ui/Makefile") CONFIG_FILES="$CONFIG_FILES ui/Makefile" ;; "ui/gtk3/Makefile") CONFIG_FILES="$CONFIG_FILES ui/gtk3/Makefile" ;; "ui/gtk3/ibus-emoji.7") CONFIG_FILES="$CONFIG_FILES ui/gtk3/ibus-emoji.7" ;; "util/Makefile") CONFIG_FILES="$CONFIG_FILES util/Makefile" ;; "util/IMdkit/Makefile") CONFIG_FILES="$CONFIG_FILES util/IMdkit/Makefile" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "ibus-1.0.pc") CONFIG_FILES="$CONFIG_FILES ibus-1.0.pc" ;; "ibus.spec") CONFIG_FILES="$CONFIG_FILES ibus.spec" ;; *) as_fn_error $? "invalid argument: '$ac_config_target'" "$LINENO" 5;; esac done # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely # bizarre bug on SunOS 4.1.3. if $ac_need_defaults; then test ${CONFIG_FILES+y} || CONFIG_FILES=$config_files test ${CONFIG_HEADERS+y} || CONFIG_HEADERS=$config_headers test ${CONFIG_COMMANDS+y} || CONFIG_COMMANDS=$config_commands fi # Have a temporary directory for convenience. Make it in the build tree # simply because there is no reason against having it here, and in addition, # creating and moving files from /tmp can sometimes cause problems. # Hook for its removal unless debugging. # Note that there is a small window in which the directory will not be cleaned: # after its creation but before its name has been assigned to '$tmp'. $debug || { tmp= ac_tmp= trap 'exit_status=$? : "${ac_tmp:=$tmp}" { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status ' 0 trap 'as_fn_exit 1' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. { tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && test -d "$tmp" } || { tmp=./conf$$-$RANDOM (umask 077 && mkdir "$tmp") } || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 ac_tmp=$tmp # Set up the scripts for CONFIG_FILES section. # No need to generate them if there are no CONFIG_FILES. # This happens for instance with './config.status config.h'. if test -n "$CONFIG_FILES"; then if $AWK 'BEGIN { getline <"/dev/null" }' /dev/null; then ac_cs_awk_getline=: ac_cs_awk_pipe_init= ac_cs_awk_read_file=' while ((getline aline < (F[key])) > 0) print(aline) close(F[key])' ac_cs_awk_pipe_fini= else ac_cs_awk_getline=false ac_cs_awk_pipe_init="print \"cat <<'|#_!!_#|' &&\"" ac_cs_awk_read_file=' print "|#_!!_#|" print "cat " F[key] " &&" '$ac_cs_awk_pipe_init # The final ':' finishes the AND list. ac_cs_awk_pipe_fini='END { print "|#_!!_#|"; print ":" }' fi ac_cr=`echo X | tr X '\015'` # On cygwin, bash can eat \r inside `` if the user requested igncr. # But we know of no other shell where ac_cr would be empty at this # point, so we can use a bashism as a fallback. if test "x$ac_cr" = x; then eval ac_cr=\$\'\\r\' fi ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then ac_cs_awk_cr='\\r' else ac_cs_awk_cr=$ac_cr fi echo 'BEGIN {' >"$ac_tmp/subs1.awk" && _ACEOF # Create commands to substitute file output variables. { echo "cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1" && echo 'cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&' && echo "$ac_subst_files" | sed 's/.*/F["&"]="$&"/' && echo "_ACAWK" && echo "_ACEOF" } >conf$$files.sh && . ./conf$$files.sh || as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 rm -f conf$$files.sh { echo "cat >conf$$subs.awk <<_ACEOF" && echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && echo "_ACEOF" } >conf$$subs.sh || as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` ac_delim='%!_!# ' for ac_last_try in false false false false false :; do . ./conf$$subs.sh || as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` if test $ac_delim_n = $ac_delim_num; then break elif $ac_last_try; then as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi done rm -f conf$$subs.sh cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && _ACEOF sed -n ' h s/^/S["/; s/!.*/"]=/ p g s/^[^!]*!// :repl t repl s/'"$ac_delim"'$// t delim :nl h s/\(.\{148\}\)..*/\1/ t more1 s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ p n b repl :more1 s/["\\]/\\&/g; s/^/"/; s/$/"\\/ p g s/.\{148\}// t nl :delim h s/\(.\{148\}\)..*/\1/ t more2 s/["\\]/\\&/g; s/^/"/; s/$/"/ p b :more2 s/["\\]/\\&/g; s/^/"/; s/$/"\\/ p g s/.\{148\}// t delim ' >$CONFIG_STATUS || ac_write_fail=1 rm -f conf$$subs.awk cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 _ACAWK cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && for (key in S) S_is_set[key] = 1 FS = "" \$ac_cs_awk_pipe_init } { line = $ 0 nfields = split(line, field, "@") substed = 0 len = length(field[1]) for (i = 2; i < nfields; i++) { key = field[i] keylen = length(key) if (S_is_set[key]) { value = S[key] line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) len += length(value) + length(field[++i]) substed = 1 } else len += 1 + keylen } if (nfields == 3 && !substed) { key = field[2] if (F[key] != "" && line ~ /^[ ]*@.*@[ ]*$/) { \$ac_cs_awk_read_file next } } print line } \$ac_cs_awk_pipe_fini _ACAWK _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" else cat fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 _ACEOF # VPATH may cause trouble with some makes, so we remove sole $(srcdir), # ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and # trailing colons and then remove the whole line if VPATH becomes empty # (actually we leave an empty line to preserve line numbers). if test "x$srcdir" = x.; then ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ h s/// s/^/:/ s/[ ]*$/:/ s/:\$(srcdir):/:/g s/:\${srcdir}:/:/g s/:@srcdir@:/:/g s/^:*// s/:*$// x s/\(=[ ]*\).*/\1/ G s/\n// s/^[^=]*=[ ]*$// }' fi cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 fi # test -n "$CONFIG_FILES" # Set up the scripts for CONFIG_HEADERS section. # No need to generate them if there are no CONFIG_HEADERS. # This happens for instance with './config.status Makefile'. if test -n "$CONFIG_HEADERS"; then cat >"$ac_tmp/defines.awk" <<\_ACAWK || BEGIN { _ACEOF # Transform confdefs.h into an awk script 'defines.awk', embedded as # here-document in config.status, that substitutes the proper values into # config.h.in to produce config.h. # Create a delimiter string that does not exist in confdefs.h, to ease # handling of long lines. ac_delim='%!_!# ' for ac_last_try in false false :; do ac_tt=`sed -n "/$ac_delim/p" confdefs.h` if test -z "$ac_tt"; then break elif $ac_last_try; then as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi done # For the awk script, D is an array of macro values keyed by name, # likewise P contains macro parameters if any. Preserve backslash # newline sequences. ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* sed -n ' s/.\{148\}/&'"$ac_delim"'/g t rset :rset s/^[ ]*#[ ]*define[ ][ ]*/ / t def d :def s/\\$// t bsnl s/["\\]/\\&/g s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ D["\1"]=" \3"/p s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p d :bsnl s/["\\]/\\&/g s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ D["\1"]=" \3\\\\\\n"\\/p t cont s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p t cont d :cont n s/.\{148\}/&'"$ac_delim"'/g t clear :clear s/\\$// t bsnlc s/["\\]/\\&/g; s/^/"/; s/$/"/p d :bsnlc s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p b cont ' >$CONFIG_STATUS || ac_write_fail=1 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 for (key in D) D_is_set[key] = 1 FS = "" } /^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { line = \$ 0 split(line, arg, " ") if (arg[1] == "#") { defundef = arg[2] mac1 = arg[3] } else { defundef = substr(arg[1], 2) mac1 = arg[2] } split(mac1, mac2, "(") #) macro = mac2[1] prefix = substr(line, 1, index(line, defundef) - 1) if (D_is_set[macro]) { # Preserve the white space surrounding the "#". print prefix "define", macro P[macro] D[macro] next } else { # Replace #undef with comments. This is necessary, for example, # in the case of _POSIX_SOURCE, which is predefined and required # on some systems where configure will not decide to define it. if (defundef == "undef") { print "/*", prefix defundef, macro, "*/" next } } } { print } _ACAWK _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 fi # test -n "$CONFIG_HEADERS" eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" shift for ac_tag do case $ac_tag in :[FHLC]) ac_mode=$ac_tag; continue;; esac case $ac_mode$ac_tag in :[FHL]*:*);; :L* | :C*:*) as_fn_error $? "invalid tag '$ac_tag'" "$LINENO" 5;; :[FH]-) ac_tag=-:-;; :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; esac ac_save_IFS=$IFS IFS=: set x $ac_tag IFS=$ac_save_IFS shift ac_file=$1 shift case $ac_mode in :L) ac_source=$1;; :[FH]) ac_file_inputs= for ac_f do case $ac_f in -) ac_f="$ac_tmp/stdin";; *) # Look for the file first in the build tree, then in the source tree # (if the path is not absolute). The absolute path cannot be DOS-style, # because $ac_f cannot contain ':'. test -f "$ac_f" || case $ac_f in [\\/$]*) false;; *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; esac || as_fn_error 1 "cannot find input file: '$ac_f'" "$LINENO" 5;; esac case $ac_f in *\'*) ac_f=`printf "%s\n" "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac as_fn_append ac_file_inputs " '$ac_f'" done # Let's still pretend it is 'configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ configure_input='Generated from '` printf "%s\n" "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' `' by configure.' if test x"$ac_file" != x-; then configure_input="$ac_file. $configure_input" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 printf "%s\n" "$as_me: creating $ac_file" >&6;} fi # Neutralize special characters interpreted by sed in replacement strings. case $configure_input in #( *\&* | *\|* | *\\* ) ac_sed_conf_input=`printf "%s\n" "$configure_input" | sed 's/[\\\\&|]/\\\\&/g'`;; #( *) ac_sed_conf_input=$configure_input;; esac case $ac_tag in *:-:* | *:-) cat >"$ac_tmp/stdin" \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; esac ;; esac ac_dir=`$as_dirname -- "$ac_file" || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || printf "%s\n" X"$ac_file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` as_dir="$ac_dir"; as_fn_mkdir_p ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; esac ;; esac ac_abs_top_builddir=$ac_pwd ac_abs_builddir=$ac_pwd$ac_dir_suffix # for backward compatibility: ac_top_builddir=$ac_top_build_prefix case $srcdir in .) # We are building in place. ac_srcdir=. ac_top_srcdir=$ac_top_builddir_sub ac_abs_top_srcdir=$ac_pwd ;; [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ac_abs_top_srcdir=$srcdir ;; *) # Relative name. ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_build_prefix$srcdir ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix case $ac_mode in :F) # # CONFIG_FILE # case $INSTALL in [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; esac ac_MKDIR_P=$MKDIR_P case $MKDIR_P in [\\/$]* | ?:[\\/]* ) ;; */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; esac _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # If the template does not know about datarootdir, expand it. # FIXME: This hack should be removed a few years after 2.60. ac_datarootdir_hack=; ac_datarootdir_seen= ac_sed_dataroot=' /datarootdir/ { p q } /@datadir@/p /@docdir@/p /@infodir@/p /@localedir@/p /@mandir@/p' case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in *datarootdir*) ac_datarootdir_seen=yes;; *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 printf "%s\n" "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_datarootdir_hack=' s&@datadir@&$datadir&g s&@docdir@&$docdir&g s&@infodir@&$infodir&g s&@localedir@&$localedir&g s&@mandir@&$mandir&g s&\\\${datarootdir}&$datarootdir&g' ;; esac _ACEOF # Neutralize VPATH when '$srcdir' = '.'. # Shell code in configure.ac might set extrasub. # FIXME: do we really want to maintain this feature? cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_sed_extra="$ac_vpsub $extrasub _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b s|@configure_input@|$ac_sed_conf_input|;t t s&@top_builddir@&$ac_top_builddir_sub&;t t s&@top_build_prefix@&$ac_top_build_prefix&;t t s&@srcdir@&$ac_srcdir&;t t s&@abs_srcdir@&$ac_abs_srcdir&;t t s&@top_srcdir@&$ac_top_srcdir&;t t s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t s&@builddir@&$ac_builddir&;t t s&@abs_builddir@&$ac_abs_builddir&;t t s&@abs_top_builddir@&$ac_abs_top_builddir&;t t s&@INSTALL@&$ac_INSTALL&;t t s&@MKDIR_P@&$ac_MKDIR_P&;t t $ac_datarootdir_hack " eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | if $ac_cs_awk_getline; then $AWK -f "$ac_tmp/subs.awk" else $AWK -f "$ac_tmp/subs.awk" | $SHELL fi \ >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ "$ac_tmp/out"`; test -z "$ac_out"; } && { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable 'datarootdir' which seems to be undefined. Please make sure it is defined" >&5 printf "%s\n" "$as_me: WARNING: $ac_file contains a reference to the variable 'datarootdir' which seems to be undefined. Please make sure it is defined" >&2;} rm -f "$ac_tmp/stdin" case $ac_file in -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; esac \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; :H) # # CONFIG_HEADER # if test x"$ac_file" != x-; then { printf "%s\n" "/* $configure_input */" >&1 \ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" } >"$ac_tmp/config.h" \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 printf "%s\n" "$as_me: $ac_file is unchanged" >&6;} else rm -f "$ac_file" mv "$ac_tmp/config.h" "$ac_file" \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 fi else printf "%s\n" "/* $configure_input */" >&1 \ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ || as_fn_error $? "could not create -" "$LINENO" 5 fi # Compute "$ac_file"'s index in $config_headers. _am_arg="$ac_file" _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $_am_arg | $_am_arg:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || $as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$_am_arg" : 'X\(//\)[^/]' \| \ X"$_am_arg" : 'X\(//\)$' \| \ X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || printf "%s\n" X"$_am_arg" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'`/stamp-h$_am_stamp_count ;; :C) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 printf "%s\n" "$as_me: executing $ac_file commands" >&6;} ;; esac case $ac_file$ac_mode in "depfiles":C) test x"$AMDEP_TRUE" != x"" || { # Older Autoconf quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. # TODO: see whether this extra hack can be removed once we start # requiring Autoconf 2.70 or later. case $CONFIG_FILES in #( *\'*) : eval set x "$CONFIG_FILES" ;; #( *) : set x $CONFIG_FILES ;; #( *) : ;; esac shift # Used to flag and report bootstrapping failures. am_rc=0 for am_mf do # Strip MF so we end up with the name of the file. am_mf=`printf "%s\n" "$am_mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile which includes # dependency-tracking related rules and includes. # Grep'ing the whole file directly is not great: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \ || continue am_dirpart=`$as_dirname -- "$am_mf" || $as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$am_mf" : 'X\(//\)[^/]' \| \ X"$am_mf" : 'X\(//\)$' \| \ X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || printf "%s\n" X"$am_mf" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` am_filepart=`$as_basename -- "$am_mf" || $as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \ X"$am_mf" : 'X\(//\)$' \| \ X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || printf "%s\n" X/"$am_mf" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` { echo "$as_me:$LINENO: cd "$am_dirpart" \ && sed -e '/# am--include-marker/d' "$am_filepart" \ | $MAKE -f - am--depfiles" >&5 (cd "$am_dirpart" \ && sed -e '/# am--include-marker/d' "$am_filepart" \ | $MAKE -f - am--depfiles) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } || am_rc=$? done if test $am_rc -ne 0; then { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "Something went wrong bootstrapping makefile fragments for automatic dependency tracking. If GNU make was not used, consider re-running the configure script with MAKE=\"gmake\" (or whatever is necessary). You can also try re-running configure with the '--disable-dependency-tracking' option to at least be able to build the package (albeit without support for automatic dependency tracking). See 'config.log' for more details" "$LINENO" 5; } fi { am_dirpart=; unset am_dirpart;} { am_filepart=; unset am_filepart;} { am_mf=; unset am_mf;} { am_rc=; unset am_rc;} rm -f conftest-deps.mk } ;; "po-directories":C) for ac_file in $CONFIG_FILES; do # Support "outfile[:infile[:infile...]]" case "$ac_file" in *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; esac # PO directories have a Makefile.in generated from Makefile.in.in. case "$ac_file" in */Makefile.in) # Adjust a relative srcdir. ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` ac_dir_suffix=/`echo "$ac_dir"|sed 's%^\./%%'` ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` # In autoconf-2.13 it is called $ac_given_srcdir. # In autoconf-2.50 it is called $srcdir. test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" case "$ac_given_srcdir" in .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; /*) top_srcdir="$ac_given_srcdir" ;; *) top_srcdir="$ac_dots$ac_given_srcdir" ;; esac # Treat a directory as a PO directory if and only if it has a # POTFILES.in file. This allows packages to have multiple PO # directories under different names or in different locations. if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then rm -f "$ac_dir/POTFILES" test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" gt_tab=`printf '\t'` cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ${gt_tab}]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES" POMAKEFILEDEPS="POTFILES.in" # ALL_LINGUAS, POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES depend # on $ac_dir but don't depend on user-specified configuration # parameters. if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then # The LINGUAS file contains the set of available languages. if test -n "$OBSOLETE_ALL_LINGUAS"; then test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" fi ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` # Hide the ALL_LINGUAS assignment from automake < 1.5. eval 'ALL_LINGUAS''=$ALL_LINGUAS_' POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" else # The set of available languages was given in configure.in. # Hide the ALL_LINGUAS assignment from automake < 1.5. eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' fi # Compute POFILES # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) # Compute UPDATEPOFILES # as $(foreach lang, $(ALL_LINGUAS), $(lang).po-update) # Compute DUMMYPOFILES # as $(foreach lang, $(ALL_LINGUAS), $(lang).nop) # Compute GMOFILES # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo) case "$ac_given_srcdir" in .) srcdirpre= ;; *) srcdirpre='$(srcdir)/' ;; esac POFILES= UPDATEPOFILES= DUMMYPOFILES= GMOFILES= for lang in $ALL_LINGUAS; do POFILES="$POFILES $srcdirpre$lang.po" UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" DUMMYPOFILES="$DUMMYPOFILES $lang.nop" GMOFILES="$GMOFILES $srcdirpre$lang.gmo" done # CATALOGS depends on both $ac_dir and the user's LINGUAS # environment variable. INST_LINGUAS= if test -n "$ALL_LINGUAS"; then for presentlang in $ALL_LINGUAS; do useit=no if test "%UNSET%" != "$LINGUAS"; then desiredlanguages="$LINGUAS" else desiredlanguages="$ALL_LINGUAS" fi for desiredlang in $desiredlanguages; do # Use the presentlang catalog if desiredlang is # a. equal to presentlang, or # b. a variant of presentlang (because in this case, # presentlang can be used as a fallback for messages # which are not translated in the desiredlang catalog). case "$desiredlang" in "$presentlang"*) useit=yes;; esac done if test $useit = yes; then INST_LINGUAS="$INST_LINGUAS $presentlang" fi done fi CATALOGS= if test -n "$INST_LINGUAS"; then for lang in $INST_LINGUAS; do CATALOGS="$CATALOGS $lang.gmo" done fi test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile" sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile" for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do if test -f "$f"; then case "$f" in *.orig | *.bak | *~) ;; *) cat "$f" >> "$ac_dir/Makefile" ;; esac fi done fi ;; esac done ;; "libtool":C) # See if we are running on zsh, and set the options that 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 # Generated automatically by $as_me ($PACKAGE) $VERSION # NOTE: Changes made to this file will be lost: look at ltmain.sh. # Provide generalized library-building support services. # Written by Gordon Matzigkeit, 1996 # Copyright (C) 2024 Free Software Foundation, Inc. # This is free software; see the source for copying conditions. There is NO # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # 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 this program. If not, see . # The names of the tagged configurations supported by this script. available_tags='' # Configured defaults for sys_lib_dlsearch_path munging. : \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} # ### BEGIN LIBTOOL CONFIG # Whether or not to build static libraries. build_old_libs=$enable_static # Which release of libtool.m4 was used? macro_version=$macro_version macro_revision=$macro_revision # Whether or not to build shared libraries. build_libtool_libs=$enable_shared # What type of objects to build. pic_mode=$pic_mode # Whether or not to optimize for fast installation. fast_install=$enable_fast_install # Shared archive member basename,for filename based shared library versioning on AIX. shared_archive_member_spec=$shared_archive_member_spec # Shell to use when invoking shell scripts. SHELL=$lt_SHELL # An echo program that protects backslashes. ECHO=$lt_ECHO # The PATH separator for the build system. PATH_SEPARATOR=$lt_PATH_SEPARATOR # The host system. host_alias=$host_alias host=$host host_os=$host_os # The build system. build_alias=$build_alias build=$build build_os=$build_os # A sed program that does not truncate output. SED=$lt_SED # Sed that helps us avoid accidentally triggering echo(1) options like -n. Xsed="\$SED -e 1s/^X//" # A grep program that handles long lines. GREP=$lt_GREP # An ERE matcher. EGREP=$lt_EGREP # A literal string matcher. FGREP=$lt_FGREP # A BSD- or MS-compatible name lister. NM=$lt_NM # Whether we need soft or hard links. LN_S=$lt_LN_S # What is the maximum length of a command? max_cmd_len=$max_cmd_len # Object file suffix (normally "o"). objext=$ac_objext # Executable file suffix (normally ""). exeext=$exeext # whether the shell understands "unset". lt_unset=$lt_unset # turn spaces into newlines. SP2NL=$lt_lt_SP2NL # turn newlines into spaces. NL2SP=$lt_lt_NL2SP # convert \$build file names to \$host format. to_host_file_cmd=$lt_cv_to_host_file_cmd # convert \$build files to toolchain format. to_tool_file_cmd=$lt_cv_to_tool_file_cmd # A file(cmd) program that detects file types. FILECMD=$lt_FILECMD # An object symbol dumper. OBJDUMP=$lt_OBJDUMP # Method to check whether dependent libraries are shared objects. deplibs_check_method=$lt_deplibs_check_method # Command to use when deplibs_check_method = "file_magic". file_magic_cmd=$lt_file_magic_cmd # How to find potential files when deplibs_check_method = "file_magic". file_magic_glob=$lt_file_magic_glob # Find potential files using nocaseglob when deplibs_check_method = "file_magic". want_nocaseglob=$lt_want_nocaseglob # DLL creation program. DLLTOOL=$lt_DLLTOOL # Command to associate shared and link libraries. sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd # The archiver. AR=$lt_AR # Flags to create an archive (by configure). lt_ar_flags=$lt_ar_flags # Flags to create an archive. AR_FLAGS=\${ARFLAGS-"\$lt_ar_flags"} # How to feed a file listing to the archiver. archiver_list_spec=$lt_archiver_list_spec # A symbol stripping program. STRIP=$lt_STRIP # Commands used to install an old-style archive. RANLIB=$lt_RANLIB old_postinstall_cmds=$lt_old_postinstall_cmds old_postuninstall_cmds=$lt_old_postuninstall_cmds # Whether to use a lock for old archive extraction. lock_old_archive_extraction=$lock_old_archive_extraction # A C compiler. LTCC=$lt_CC # LTCC compiler flags. LTCFLAGS=$lt_CFLAGS # Take the output of nm and produce a listing of raw symbols and C names. global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe # Transform the output of nm in a proper C declaration. global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl # Transform the output of nm into a list of symbols to manually relocate. global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import # Transform the output of nm in a C name address pair. global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address # Transform the output of nm in a C name address pair when lib prefix is needed. global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix # The name lister interface. nm_interface=$lt_lt_cv_nm_interface # Specify filename containing input files for \$NM. nm_file_list_spec=$lt_nm_file_list_spec # The root where to search for dependent libraries,and where our libraries should be installed. lt_sysroot=$lt_sysroot # Command to truncate a binary pipe. lt_truncate_bin=$lt_lt_cv_truncate_bin # The name of the directory that contains temporary libtool files. objdir=$objdir # Used to examine libraries when file_magic_cmd begins with "file". MAGIC_CMD=$MAGIC_CMD # Must we lock files when doing compilation? need_locks=$lt_need_locks # Manifest tool. MANIFEST_TOOL=$lt_MANIFEST_TOOL # Tool to manipulate archived DWARF debug symbol files on Mac OS X. DSYMUTIL=$lt_DSYMUTIL # Tool to change global to local symbols on Mac OS X. NMEDIT=$lt_NMEDIT # Tool to manipulate fat objects and archives on Mac OS X. LIPO=$lt_LIPO # ldd/readelf like tool for Mach-O binaries on Mac OS X. OTOOL=$lt_OTOOL # ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. OTOOL64=$lt_OTOOL64 # Old archive suffix (normally "a"). libext=$libext # Shared library suffix (normally ".so"). shrext_cmds=$lt_shrext_cmds # The commands to extract the exported symbol list from a shared archive. extract_expsyms_cmds=$lt_extract_expsyms_cmds # Variables whose values should be saved in libtool wrapper scripts and # restored at link time. variables_saved_for_relink=$lt_variables_saved_for_relink # Do we need the "lib" prefix for modules? need_lib_prefix=$need_lib_prefix # Do we need a version for libraries? need_version=$need_version # Library versioning type. version_type=$version_type # Shared library runtime path variable. runpath_var=$runpath_var # Shared library path variable. shlibpath_var=$shlibpath_var # Is shlibpath searched before the hard-coded library search path? shlibpath_overrides_runpath=$shlibpath_overrides_runpath # Format of library name prefix. libname_spec=$lt_libname_spec # 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 library_names_spec=$lt_library_names_spec # The coded name of the library, if different from the real name. soname_spec=$lt_soname_spec # Permission mode override for installation of shared libraries. install_override_mode=$lt_install_override_mode # Command to use after installation of a shared archive. postinstall_cmds=$lt_postinstall_cmds # Command to use after uninstallation of a shared archive. postuninstall_cmds=$lt_postuninstall_cmds # Commands used to finish a libtool library installation in a directory. finish_cmds=$lt_finish_cmds # As "finish_cmds", except a single script fragment to be evaled but # not shown. finish_eval=$lt_finish_eval # Whether we should hardcode library paths into libraries. hardcode_into_libs=$hardcode_into_libs # Compile-time system search path for libraries. sys_lib_search_path_spec=$lt_sys_lib_search_path_spec # Detected run-time system search path for libraries. sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path # Explicit LT_SYS_LIBRARY_PATH set during ./configure time. configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path # Whether dlopen is supported. dlopen_support=$enable_dlopen # Whether dlopen of programs is supported. dlopen_self=$enable_dlopen_self # Whether dlopen of statically linked programs is supported. dlopen_self_static=$enable_dlopen_self_static # Commands to strip libraries. old_striplib=$lt_old_striplib striplib=$lt_striplib # The linker used to build libraries. LD=$lt_LD # How to create reloadable object files. reload_flag=$lt_reload_flag reload_cmds=$lt_reload_cmds # Commands used to build an old-style archive. old_archive_cmds=$lt_old_archive_cmds # A language specific compiler. CC=$lt_compiler # Is the compiler the GNU compiler? with_gcc=$GCC # Compiler flag to turn off builtin functions. no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag # Additional compiler flags for building library objects. pic_flag=$lt_lt_prog_compiler_pic # How to pass a linker flag through the compiler. wl=$lt_lt_prog_compiler_wl # Compiler flag to prevent dynamic linking. link_static_flag=$lt_lt_prog_compiler_static # Does compiler simultaneously support -c and -o options? compiler_c_o=$lt_lt_cv_prog_compiler_c_o # Whether or not to add -lc for building shared libraries. build_libtool_need_lc=$archive_cmds_need_lc # Whether or not to disallow shared libs when runtime libs are static. allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes # Compiler flag to allow reflexive dlopens. export_dynamic_flag_spec=$lt_export_dynamic_flag_spec # Compiler flag to generate shared objects directly from archives. whole_archive_flag_spec=$lt_whole_archive_flag_spec # Whether the compiler copes with passing no objects directly. compiler_needs_object=$lt_compiler_needs_object # Create an old-style archive from a shared archive. old_archive_from_new_cmds=$lt_old_archive_from_new_cmds # Create a temporary old-style archive to link instead of a shared archive. old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds # Commands used to build a shared archive. archive_cmds=$lt_archive_cmds archive_expsym_cmds=$lt_archive_expsym_cmds # Commands used to build a loadable module if different from building # a shared archive. module_cmds=$lt_module_cmds module_expsym_cmds=$lt_module_expsym_cmds # Whether we are building with GNU ld or not. with_gnu_ld=$lt_with_gnu_ld # Flag that allows shared libraries with undefined symbols to be built. allow_undefined_flag=$lt_allow_undefined_flag # Flag that enforces no undefined symbols. no_undefined_flag=$lt_no_undefined_flag # Flag to hardcode \$libdir into a binary during linking. # This must work even if \$libdir does not exist hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec # Whether we need a single "-rpath" flag with a separated argument. hardcode_libdir_separator=$lt_hardcode_libdir_separator # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes # DIR into the resulting binary. hardcode_direct=$hardcode_direct # 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. hardcode_direct_absolute=$hardcode_direct_absolute # Set to "yes" if using the -LDIR flag during linking hardcodes DIR # into the resulting binary. hardcode_minus_L=$hardcode_minus_L # Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR # into the resulting binary. hardcode_shlibpath_var=$hardcode_shlibpath_var # Set to "yes" if building a shared library automatically hardcodes DIR # into the library and all subsequent libraries and executables linked # against it. hardcode_automatic=$hardcode_automatic # Set to yes if linker adds runtime paths of dependent libraries # to runtime path list. inherit_rpath=$inherit_rpath # Whether libtool must link a program against all its dependency libraries. link_all_deplibs=$link_all_deplibs # Set to "yes" if exported symbols are required. always_export_symbols=$always_export_symbols # The commands to list exported symbols. export_symbols_cmds=$lt_export_symbols_cmds # Symbols that should not be listed in the preloaded symbols. exclude_expsyms=$lt_exclude_expsyms # Symbols that must always be exported. include_expsyms=$lt_include_expsyms # Commands necessary for linking programs (against libraries) with templates. prelink_cmds=$lt_prelink_cmds # Commands necessary for finishing linking programs. postlink_cmds=$lt_postlink_cmds # Specify filename containing input files. file_list_spec=$lt_file_list_spec # How to hardcode a shared library path into an executable. hardcode_action=$hardcode_action # ### END LIBTOOL CONFIG _LT_EOF cat <<'_LT_EOF' >> "$cfgfile" # ### BEGIN FUNCTIONS SHARED WITH CONFIGURE # func_munge_path_list VARIABLE PATH # ----------------------------------- # VARIABLE is name of variable containing _space_ separated list of # directories to be munged by the contents of PATH, which is string # having a format: # "DIR[:DIR]:" # string "DIR[ DIR]" will be prepended to VARIABLE # ":DIR[:DIR]" # string "DIR[ DIR]" will be appended to VARIABLE # "DIRP[:DIRP]::[DIRA:]DIRA" # string "DIRP[ DIRP]" will be prepended to VARIABLE and string # "DIRA[ DIRA]" will be appended to VARIABLE # "DIR[:DIR]" # VARIABLE will be replaced by "DIR[ DIR]" func_munge_path_list () { case x$2 in x) ;; *:) eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" ;; x:*) eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" ;; *::*) eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" ;; *) eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" ;; esac } # Calculate cc_basename. Skip known compiler wrappers and cross-prefix. func_cc_basename () { for cc_temp in $*""; do case $cc_temp in compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; \-*) ;; *) break;; esac done func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` } # ### END FUNCTIONS SHARED WITH CONFIGURE _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 set != "${COLLECT_NAMES+set}"; then COLLECT_NAMES= export COLLECT_NAMES fi _LT_EOF ;; esac ltmain=$ac_aux_dir/ltmain.sh # 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 '$q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" ;; esac done # for ac_tag as_fn_exit 0 _ACEOF ac_clean_files=$ac_clean_files_save test $ac_write_fail = 0 || as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 # configure is writing to config.log, and then calls config.status. # config.status does its own redirection, appending to config.log. # Unfortunately, on DOS this fails, as config.log is still kept open # by configure, so config.status won't be able to write to it; its # output is simply discarded. So we exec the FD to /dev/null, # effectively closing config.log, so it can be properly (re)opened and # appended to by config.status. When coming back to configure, we # need to make the FD available again. if test "$no_create" != yes; then ac_cs_success=: ac_config_status_args= test "$silent" = yes && ac_config_status_args="$ac_config_status_args --quiet" exec 5>/dev/null $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. $ac_cs_success || as_fn_exit 1 fi if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: Build options: Version $IBUS_VERSION Install prefix $prefix Build shared libs $enable_shared Build static libs $enable_static Build endianness $ENDIAN_MSG CFLAGS $CFLAGS PYTHON $PYTHON PYTHON2 $PYTHON2 Python overrides dir $pyoverridesdir Enable python2 $enable_python2 Gtk2 immodule dir $GTK2_IM_MODULEDIR Gtk3 immodule dir $GTK3_IM_MODULEDIR Gtk4 immodule dir $GTK4_IM_MODULEDIR Build gtk2 immodule $enable_gtk2 Build gtk3 immodule $enable_gtk3 Build gtk4 immodule $enable_gtk4 Build XIM agent server $enable_xim Build wayland support $enable_wayland Build gdk3 wayland support $enable_gdk3_wayland Build appindicator support $enable_appindicator Build python library $enable_python_library Build memconf modules $enable_memconf Build dconf modules $enable_dconf Build introspection $found_introspection IBus-1.0.gir scannerflags \"$IBUS_GIR_SCANNERFLAGS\" Build vala binding $enable_vala Build document $enable_gtk_doc Build UI $enable_ui Build engine $enable_engine Enable key snooper $enable_key_snooper No snooper regexes \"$NO_SNOOPER_APPS\" Panel icon \"$IBUS_ICON_KEYBOARD\" Enable surrounding-text $enable_surrounding_text Enable libnotify $enable_libnotify Enable Emoji dict $enable_emoji_dict Unicode Emoji directory $UNICODE_EMOJI_DIR CLDR annotation directory $EMOJI_ANNOTATION_DIR Enable Unicode dict $enable_unicode_dict UCD directory $UCD_DIR Socket directory \"$IBUS_SOCKET_DIR\" XFixes client disconnect $have_xfixes Install systemd service $enable_systemd Run test cases $enable_tests Install tests $enable_install_tests " >&5 printf "%s\n" " Build options: Version $IBUS_VERSION Install prefix $prefix Build shared libs $enable_shared Build static libs $enable_static Build endianness $ENDIAN_MSG CFLAGS $CFLAGS PYTHON $PYTHON PYTHON2 $PYTHON2 Python overrides dir $pyoverridesdir Enable python2 $enable_python2 Gtk2 immodule dir $GTK2_IM_MODULEDIR Gtk3 immodule dir $GTK3_IM_MODULEDIR Gtk4 immodule dir $GTK4_IM_MODULEDIR Build gtk2 immodule $enable_gtk2 Build gtk3 immodule $enable_gtk3 Build gtk4 immodule $enable_gtk4 Build XIM agent server $enable_xim Build wayland support $enable_wayland Build gdk3 wayland support $enable_gdk3_wayland Build appindicator support $enable_appindicator Build python library $enable_python_library Build memconf modules $enable_memconf Build dconf modules $enable_dconf Build introspection $found_introspection IBus-1.0.gir scannerflags \"$IBUS_GIR_SCANNERFLAGS\" Build vala binding $enable_vala Build document $enable_gtk_doc Build UI $enable_ui Build engine $enable_engine Enable key snooper $enable_key_snooper No snooper regexes \"$NO_SNOOPER_APPS\" Panel icon \"$IBUS_ICON_KEYBOARD\" Enable surrounding-text $enable_surrounding_text Enable libnotify $enable_libnotify Enable Emoji dict $enable_emoji_dict Unicode Emoji directory $UNICODE_EMOJI_DIR CLDR annotation directory $EMOJI_ANNOTATION_DIR Enable Unicode dict $enable_unicode_dict UCD directory $UCD_DIR Socket directory \"$IBUS_SOCKET_DIR\" XFixes client disconnect $have_xfixes Install systemd service $enable_systemd Run test cases $enable_tests Install tests $enable_install_tests " >&6; } ibus-1.5.32/configure.ac0000644000000000000000000007645014775216644010515 # vim:set et ts=4: # # ibus - The Input Bus # # Copyright (c) 2007-2016 Peng Huang # Copyright (c) 2015-2025 Takao Fujiwara # Copyright (c) 2007-2025 Red Hat, Inc. # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library 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 # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 # USA # If ibus_released is 0, append beta to the version number. m4_define([ibus_released], [1]) m4_define([ibus_major_version], [1]) m4_define([ibus_minor_version], [5]) m4_define([ibus_micro_version], [32]) m4_define([ibus_beta_version], [rc2]) m4_define([ibus_abi_current], [5]) m4_define([ibus_abi_revision], [m4_eval(100 * ibus_minor_version + ibus_micro_version)]) m4_define([ibus_abi_age], [0]) m4_define([ibus_maybe_datestamp], m4_esyscmd([test x]ibus_released[ != x1 && date +.%Y%m%d | tr -d '\n\r'])) m4_define([ibus_beta_suffix], m4_if(ibus_released, 0, -ibus_beta_version)) m4_define([ibus_version], ibus_major_version.ibus_minor_version.ibus_micro_version[]ibus_beta_suffix) m4_define([ibus_api_version], [ibus_major_version.0]) AC_PREFEQ([2.62]) AC_INIT([ibus], [ibus_version], [https://github.com/ibus/ibus/issues], [ibus]) AC_CONFIG_HEADERS([config.h]) AC_CONFIG_MACRO_DIR([m4]) m4_define([ibus_abi_current_minus_age], [m4_eval(ibus_abi_current - ibus_abi_age)]) m4_define([ibus_binary_version], [ibus_major_version.ibus_abi_current_minus_age.ibus_abi_age.ibus_abi_revision]) # Required versions of other packages. m4_define([glib_required_version], [2.46.0]) m4_define([gtk3_required_version], [3.12.0]) # VALA_TARGET_GLIB_VERSION is used by valac --ccode --target-glib . # VALA_TARGET_GLIB_VERSION and glib_required_version will be different # in the future. VALA_TARGET_GLIB_VERSION=2.46 AC_SUBST(VALA_TARGET_GLIB_VERSION) # Init automake. AM_INIT_AUTOMAKE([1.11.1 parallel-tests]) AM_MAINTAINER_MODE([enable]) AC_USE_SYSTEM_EXTENSIONS # Support silent build rules. Disable # by either passing --disable-silent-rules to configure or passing V=1 # to make AM_SILENT_RULES([yes]) # Define sustituted variables: IBUS_MAJOR_VERSION=ibus_major_version IBUS_MINOR_VERSION=ibus_minor_version IBUS_MICRO_VERSION=ibus_micro_version IBUS_ABI_CURRENT=ibus_abi_current IBUS_ABI_REVISION=ibus_abi_revision IBUS_ABI_AGE=ibus_abi_age IBUS_VERSION=ibus_version IBUS_API_VERSION=ibus_api_version IBUS_BINARY_VERSION=ibus_binary_version AC_SUBST(IBUS_MAJOR_VERSION) AC_SUBST(IBUS_MINOR_VERSION) AC_SUBST(IBUS_MICRO_VERSION) AC_SUBST(IBUS_ABI_CURRENT) AC_SUBST(IBUS_ABI_REVISION) AC_SUBST(IBUS_ABI_AGE) AC_SUBST(IBUS_API_VERSION) AC_SUBST(IBUS_VERSION) AC_SUBST(IBUS_BINARY_VERSION) # libtool versioning # # If LT_VERSION_INFO="lt_current:lt_revision:lt_age", libibus is # libibus-ibus_api_version.so.(lt_current - lt_age).lt_age.lt_revision # If the abi is changed, but it is compatible with last version, # ibus_abi_current++, ibus_abi_age++; # If the abi is not compatible with last version, # ibus_abi_current++, ibus_abi_age = 0; m4_define([lt_current], [ibus_abi_current]) m4_define([lt_revision], [ibus_abi_revision]) m4_define([lt_age], [ibus_abi_age]) LT_VERSION_INFO="lt_current:lt_revision:lt_age" LT_CURRENT_MINUS_AGE=m4_eval(lt_current - lt_age) AC_SUBST(LT_VERSION_INFO) AC_SUBST(LT_CURRENT_MINUS_AGE) # Define GETTEXT_* variables. GETTEXT_PACKAGE=ibus10 AC_SUBST(GETTEXT_PACKAGE) AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [The prefix for out gettext translation domains.]) DEFINE_IBUS_LOCALEDIR AC_DEFINE_UNQUOTED(LOCALEDIR, "$ibus_localedir", [Define the location where the catalogs will be installed]) # For dislpay date. m4_define(ibus_datedisplay, m4_esyscmd(date '+%a %b %d %Y' | tr -d '\n\r')) DATE_DISPLAY="ibus_datedisplay" AC_SUBST(DATE_DISPLAY) # Check for programs. AC_PROG_CC AM_PROG_CC_C_O AM_PROG_VALAC([0.20]) AC_PROG_INSTALL AC_PROG_MAKE_SET AX_PROG_CC_FOR_BUILD # i18n stuff AM_GNU_GETTEXT_VERSION([0.19.8]) AM_GNU_GETTEXT([external]) # Define PACKAGE_VERSION_* variables. AC_DISABLE_STATIC([]) AC_SEARCH_LIBS([strerror],[cposix]) LT_INIT # Check header filess. AC_CHECK_HEADERS([sys/prctl.h]) # Check functions. AC_CHECK_FUNCS(daemon) # Check dlclose() in libc.so. AC_CHECK_LIB(c, dlclose, LIBDL="", [AC_CHECK_LIB(dl, dlclose, LIBDL="-ldl")]) AC_SUBST(LIBDL) # Check if cross compiling. AM_CONDITIONAL(CROSS_COMPILING, test "x$cross_compiling" = xyes) # Check endianness. AC_C_BIGENDIAN([ENDIAN=big], [ENDIAN=little], [ENDIAN=unknown], [ENDIAN=big]) if test x"$ENDIAN" != xlittle -a x"$ENDIAN" != xbig; then AC_MSG_ERROR([Cannot determine endianness. Use ac_cv_c_bigendian to yes or no]) fi AC_SUBST(ENDIAN) ENDIAN_MSG="$ENDIAN (ac_cv_c_bigendian=$ac_cv_c_bigendian)" # Check packages. # Check glib2. AM_PATH_GLIB_2_0 PKG_CHECK_MODULES(GLIB2, [ glib-2.0 >= glib_required_version ]) PKG_CHECK_MODULES(GOBJECT2, [ gobject-2.0 >= glib_required_version ]) PKG_CHECK_MODULES(GIO2, [ gio-2.0 gio-unix-2.0 >= glib_required_version ]) PKG_CHECK_MODULES(GTHREAD2, [ gthread-2.0 >= glib_required_version ]) PKG_CHECK_EXISTS( [glib-2.0 >= 2.65.0], [AC_DEFINE(GLIB2_EMBED_ERRNO_H, TRUE, [glib2 include errno.h])] ) AH_BOTTOM([ #ifndef GLIB2_EMBED_ERRNO_H # include #endif ]) if test "x$cross_compiling" = "xyes"; then PKG_PROG_PKG_CONFIG_FOR_BUILD GLIB_CFLAGS_FOR_BUILD=`$PKG_CONFIG_FOR_BUILD --cflags glib-2.0 gobject-2.0 gio-2.0 gio-unix-2.0 gthread-2.0` GLIB_LIBS_FOR_BUILD=`$PKG_CONFIG_FOR_BUILD --libs glib-2.0 gobject-2.0 gio-2.0 gio-unix-2.0 gthread-2.0` AC_SUBST(GLIB_CFLAGS_FOR_BUILD) AC_SUBST(GLIB_LIBS_FOR_BUILD) fi # --disable-tests option. AC_ARG_ENABLE(tests, AS_HELP_STRING([--disable-tests], [Do not run tests]), [enable_tests=$enableval], [enable_tests=yes] ) AM_CONDITIONAL([ENABLE_TESTS], [test x"$enable_tests" = x"yes"]) if test x"$enable_tests" != x"yes"; then enable_tests="no (disabled, use --enable-tests to enable)" fi # --disable-gtk2 option. AC_ARG_ENABLE(gtk2, AS_HELP_STRING([--disable-gtk2], [Do not build gtk2 im module]), [enable_gtk2=$enableval], [enable_gtk2=yes] ) AM_CONDITIONAL([ENABLE_GTK2], [test x"$enable_gtk2" = x"yes"]) # --disable-gtk3 option. AC_ARG_ENABLE(gtk3, AS_HELP_STRING([--disable-gtk3], [Do not build gtk3 im module]), [enable_gtk3=$enableval], [enable_gtk3=yes] ) AM_CONDITIONAL([ENABLE_GTK3], [test x"$enable_gtk3" = x"yes"]) # --enable-gtk4 option. AC_ARG_ENABLE(gtk4, AS_HELP_STRING([--enable-gtk4], [Build gtk4 im module]), [enable_gtk4=$enableval], [enable_gtk4=yes] ) AM_CONDITIONAL([ENABLE_GTK4], [test x"$enable_gtk4" = x"yes"]) AM_CONDITIONAL([ENABLE_GTK3_OR_4], [test x"$enable_gtk3" = x"yes" || test x"$enable_gtk4" = x"yes"]) # --disable-xim option. AC_ARG_ENABLE(xim, AS_HELP_STRING([--disable-xim], [Do not build xim server]), [enable_xim=$enableval], [enable_xim=yes] ) AM_CONDITIONAL([ENABLE_XIM], [test x"$enable_xim" = x"yes"]) # --enable-wayland option. AC_ARG_ENABLE(wayland, AS_HELP_STRING([--enable-wayland], [Build wayland support]), [enable_wayland=$enableval], [enable_wayland=yes] ) AM_CONDITIONAL([ENABLE_WAYLAND], [test x"$enable_wayland" = x"yes"]) # --enable-appindicator option. AC_ARG_ENABLE(appindicator, AS_HELP_STRING([--enable-appindicator], [Build appindicator support]), [enable_appindicator=$enableval], [enable_appindicator=yes] ) AM_CONDITIONAL([ENABLE_APPINDICATOR], [test x"$enable_appindicator" = x"yes"]) if test x"$enable_gtk2" = x"yes"; then # check for gtk2 PKG_CHECK_MODULES(GTK2, [ gtk+-2.0 ]) gtk2_binary_version=`$PKG_CONFIG --variable=gtk_binary_version gtk+-2.0` GTK2_IM_MODULEDIR="$libdir"/gtk-2.0/$gtk2_binary_version/immodules enable_gtk2="yes (enabled, use --disable-gtk2 to disable)" fi if test x"$enable_gtk3" = x"yes"; then # check for gtk3 PKG_CHECK_MODULES(GTK3, [ gtk+-3.0 >= gtk3_required_version ]) if test x"$enable_wayland" = x"yes"; then PKG_CHECK_EXISTS([gdk-wayland-3.0], [enable_gdk3_wayland=yes], [enable_gdk3_wayland=no] ) else enable_gdk3_wayland=no fi gtk3_binary_version=`$PKG_CONFIG --variable=gtk_binary_version gtk+-3.0` GTK3_IM_MODULEDIR="$libdir"/gtk-3.0/$gtk3_binary_version/immodules else enable_gdk3_wayland=no fi if test x"$enable_gdk3_wayland" != x"yes"; then enable_gdk3_wayland="no (disabled, need to install gdk-wayland-3.0.pc)" fi AM_CONDITIONAL([ENABLE_GDK3_WAYLAND], [test x"$enable_gdk3_wayland" = x"yes"]) IBUS_UI_WAYLAND_DESKTOP="org.freedesktop.IBus.Panel.Wayland.Gtk3.desktop" AC_SUBST(IBUS_UI_WAYLAND_DESKTOP) AC_DEFINE_UNQUOTED(UI_WAYLAND_DESKTOP, "$IBUS_UI_WAYLAND_DESKTOP", [Desktop filename of IBus Wayland UI.]) AC_DEFINE_UNQUOTED(DATADIR, "$ibus_datadir", [Datadir.]) if test x"$enable_gtk4" = x"yes"; then # check for gtk4 PKG_CHECK_MODULES(GTK4, [ gtk4 ]) gtk4_binary_version=`$PKG_CONFIG --variable=gtk_binary_version gtk4` GTK4_IM_MODULEDIR="$libdir"/gtk-4.0/$gtk4_binary_version/immodules enable_gtk4="yes (enabled, use --disable-gtk4 to disable)" fi if test x"$enable_xim" = x"yes"; then # Check for x11 PKG_CHECK_MODULES(X11, [ x11 ]) AC_CHECK_HEADERS([X11/XKBlib.h]) # if we don't have gtk3 yet, check for gtk2 if test x"$enable_gtk3" != x"yes"; then # check for gtk2 PKG_CHECK_MODULES(GTK2, [ gtk+-2.0 ]) fi AC_SUBST([XIM_CLI_ARG], [--xim]) AC_DEFINE(HAVE_XIM, 1, [Define to enable XIM]) enable_xim="yes (enabled, use --disable-xim to disable)" fi if test x"$enable_gtk3" = x"yes"; then enable_gtk3="yes (enabled, use --disable-gtk3 to disable)" fi if $PKG_CONFIG --exists x11; then X11_PREFIX="`$PKG_CONFIG --variable=prefix x11`" elif test x"$prefix" != xNONE; then X11_PREFIX="$prefix" else X11_PREFIX="$ac_default_prefix" fi AC_SUBST(X11_PREFIX) # Check locale dir for Compose files. if test x"$cross_compiling" != xyes; then AC_CHECK_FILE($X11_PREFIX/share/X11/locale/locale.dir, X11_LOCALEDATADIR="$X11_PREFIX/share/X11/locale", [AC_CHECK_FILE($X11_PREFIX/lib/X11/locale/locale.dir, X11_LOCALEDATADIR="$X11_PREFIX/lib/X11/locale", X11_LOCALEDATADIR="$(datadir)/X11/locale")]) else if test x"$X11_LOCALEDATADIR" = x; then X11_LOCALEDATADIR="$X11_PREFIX/share/X11/locale" fi AC_MSG_RESULT([Skipping X11 locale directory check when cross compiling. Using: $X11_LOCALEDATADIR]) fi AC_SUBST(X11_LOCALEDATADIR) if test x"$enable_wayland" = x"yes"; then # Check for wayland PKG_CHECK_MODULES(WAYLAND, [ wayland-client >= 1.2.0 xkbcommon ]) PKG_CHECK_EXISTS([wayland-protocols], [WAYLAND_PRTCLS_DIR="`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`"], [WAYLAND_PRTCLS_DIR="/usr/share/wayland-protocols"] ) WAYLAND_PRTCLS_DIR="`echo $WAYLAND_PRTCLS_DIR`" m4_ifdef([WAYLAND_SCANNER_RULES], [WAYLAND_IM_PRTCL_SUBDIR='unstable/input-method' WAYLAND_TEXT_PRTCL_SUBDIR='unstable/text-input' AC_SUBST(WAYLAND_PRTCLS_DIR) AC_SUBST(WAYLAND_IM_PRTCL_SUBDIR) AC_SUBST(WAYLAND_TEXT_PRTCL_SUBDIR) WAYLAND_SCANNER_RULES(['$(WAYLAND_PRTCLS_DIR)/$(WAYLAND_IM_PRTCL_SUBDIR)'])], [AC_SUBST(wayland_scanner_rules)]) enable_wayland="yes (enabled, use --disable-wayland to disable)" else wayland_scanner_rules="./wayland-scanner.mk" AC_SUBST(wayland_scanner_rules) fi # GObject introspection GOBJECT_INTROSPECTION_CHECK([0.6.8]) IBUS_GIR_SCANNERFLAGS= if test x"$found_introspection" = x"yes" ; then IBUS_GIR_SCANNERFLAGS="--warn-all --identifier-prefix=IBus --symbol-prefix=ibus --c-include=ibus.h" PKG_CHECK_EXISTS([gobject-introspection-1.0 >= 0.9.6], [gir_symbol_prefix=yes], [gir_symbol_prefix=no]) if test x"$gir_symbol_prefix" = x"no" ; then IBUS_GIR_SCANNERFLAGS="--strip-prefix=IBus" fi fi AC_SUBST(IBUS_GIR_SCANNERFLAGS) # Check vapigen. VAPIGEN_CHECK([0.16]) # Check for gtk-doc. GTK_DOC_CHECK(1.9) if test x"$enable_gtk_doc" = x"no"; then enable_gtk_doc="no (disabled, use --enable-gtk-doc to enable)" fi # Check for dbus. PKG_CHECK_MODULES(DBUS, [ dbus-1 ]) # --enable-memconf option. AC_ARG_ENABLE(memconf, AS_HELP_STRING([--enable-memconf], [Enable configure base on memory]), [enable_memconf=$enableval], [enable_memconf=no] ) AM_CONDITIONAL([ENABLE_MEMCONF], [test "x$enable_memconf" = "xyes"]) AC_ARG_ENABLE(dconf, AS_HELP_STRING([--disable-dconf], [Disable configure base on dconf]), [enable_dconf=$enableval], [enable_dconf=yes] ) AM_CONDITIONAL([ENABLE_DCONF], [test x"$enable_dconf" = x"yes"]) if test x"$enable_dconf" = x"yes"; then # check dconf PKG_CHECK_MODULES(DCONF, [dconf >= 0.7.5], ) PKG_CHECK_EXISTS([dconf >= 0.13.4], [AC_DEFINE(DCONF_0_13_4, TRUE, [dconf is 0.13.4 or later])], []) # check glib-compile-schemas GLIB_GSETTINGS enable_dconf="yes (enabled, use --disable-dconf to disable)" fi AC_ARG_ENABLE(systemd-services, AS_HELP_STRING([--disable-systemd-services], [Disable systemd services installation]), [enable_systemd=$enableval], [enable_systemd=yes] ) AM_CONDITIONAL([ENABLE_SYSTEMD], [test x"$enable_systemd" = x"yes"]) if test x"$enable_systemd" = x"yes"; then PKG_CHECK_MODULES(SYSTEMD, [ systemd >= 0.7.5 ]) AC_SUBST([SYSTEMD_USER_UNIT_DIR], [`$PKG_CONFIG --define-variable prefix='${prefix}' --variable systemduserunitdir systemd`]) enable_systemd="yes (enabled, use --disable-systemd-services to disable)" fi # Check env. AC_PATH_PROG(ENV_IBUS_TEST, env) AC_SUBST(ENV_IBUS_TEST) AC_ARG_ENABLE(python2, AS_HELP_STRING([--disable-python2], [Do not install bindings/pygobject/gi and ibus for python2. '--disable-python2' bring '--disable-python-library'.]), [enable_python2=$enableval], [enable_python2=yes] ) AC_ARG_ENABLE(python-library, AS_HELP_STRING([--enable-python-library], [Use ibus python library]), [enable_python_library=$enableval], [enable_python_library=no] ) AC_ARG_ENABLE(setup, AS_HELP_STRING([--disable-setup], [Do not use setup ui.]), [enable_setup=$enableval], [enable_setup=yes] ) # Define python version AC_ARG_WITH(python, AS_HELP_STRING([--with-python[=PATH]], [Select python2 or python3]), [PYTHON=$with_python], [] ) AM_PATH_PYTHON([2.5]) if test x"$enable_python2" != x"yes"; then enable_python_library=no PYTHON2= enable_python2="no (disabled, use --enable-python2 to enable)" else AC_PATH_PROG(PYTHON2, python2) if test x"$PYTHON2" = x""; then PYTHON2=$PYTHON fi fi AM_CONDITIONAL([ENABLE_PYTHON2], [test x"$enable_python2" = x"yes"]) AM_CONDITIONAL([ENABLE_PYTHON_LIBRARY], [test x"$enable_python_library" = x"yes"]) AM_CONDITIONAL([ENABLE_SETUP], [test x"$enable_setup" = x"yes"]) AM_CONDITIONAL([ENABLE_DAEMON], [true]) PYGOBJECT_REQUIRED=3.0.0 # Define Python overrides dir. # When IBus is built with the Json files in test directory, the build # tries to install IBus.py file into pyoverridesdir. # The default GI directory is /usr in Flatpak but the directory is readonly # with `flatpak-builder` and the Flatpak specific GI files are installed in # /app GI directory. AC_ARG_WITH(python-overrides-dir, AS_HELP_STRING([--with-python-overrides-dir[=DIR]], [Select Python overrides dir]), pyoverridesdir=$with_python_overrides_dir ) PKG_CHECK_EXISTS([pygobject-3.0 >= $PYGOBJECT_REQUIRED], [enable_pygobject=yes], [enable_pygobject=no]) if test "x$enable_pygobject" = "xyes"; then PKG_CHECK_MODULES(PYTHON, [pygobject-3.0 >= $PYGOBJECT_REQUIRED]) if test x"$pyoverridesdir" = x""; then pyoverridesdir=`$PYTHON -c "import gi; print(gi._overridesdir)"` fi AC_SUBST(pyoverridesdir) if test x"$enable_python2" = x"yes"; then py2overridesdir=`$PYTHON2 -c "import gi; print(gi._overridesdir)"` AC_SUBST(py2overridesdir) fi fi AM_CONDITIONAL(ENABLE_PYGOBJECT, test x"$enable_pygobject" = "xyes") if test x"$enable_python_library" = x"yes"; then # Check python. AC_PATH_PROG(PYTHON_CONFIG, python$PYTHON_VERSION-config) if test x"$PYTHON_CONFIG" = x""; then AC_PATH_PROG(PYTHON_CONFIG, python-config) fi if test x"$PYTHON_CONFIG" != x""; then PYTHON_CFLAGS=`$PYTHON_CONFIG --includes` PYTHON_LIBS=`$PYTHON_CONFIG --libs` else PYTHON_CFLAGS=`$PYTHON $srcdir/python-config.py --includes` PYTHON_LIBS=`$PYTHON $srcdir/python-config.py --libs` fi PYTHON_INCLUDES="$PYTHON_CFLAGS" AC_SUBST(PYTHON_CFLAGS) AC_SUBST(PYTHON_INCLUDES) AC_SUBST(PYTHON_LIBS) PYTHON2_PREFIX=`$PYTHON2 -c "import sys; sys.stdout.write(sys.prefix)"` PYTHON2_VERSION=`$PYTHON2 -c "import sys; sys.stdout.write(sys.version[[:3]])"` PYTHON2_LIBDIR="$PYTHON2_PREFIX/lib/python$PYTHON2_VERSION" python2dir="$PYTHON2_LIBDIR/site-packages" pkgpython2dir="$python2dir/ibus" AC_SUBST(pkgpython2dir) else enable_python_library="no (disabled, use --enable-python-library to enable)" fi # Define gtk2 immodule dir. AC_ARG_WITH(gtk2-im-module-dir, AS_HELP_STRING([--with-gtk2-im-module-dir[=DIR]], [Select gtk2 immodule dir]), GTK2_IM_MODULEDIR=$with_gtk2_im_module_dir ) AC_SUBST(GTK2_IM_MODULEDIR) # Define gtk3 immodule dir. AC_ARG_WITH(gtk3-im-module-dir, AS_HELP_STRING([--with-gtk3-im-module-dir[=DIR]], [Select gtk3 immodule dir]), GTK3_IM_MODULEDIR=$with_gtk3_im_module_dir ) AC_SUBST(GTK3_IM_MODULEDIR) # Define gtk4 immodule dir. AC_ARG_WITH(gtk4-im-module-dir, AS_HELP_STRING([--with-gtk4-im-module-dir[=DIR]], [Select gtk4 immodule dir]), GTK4_IM_MODULEDIR=$with_gtk4_im_module_dir ) AC_SUBST(GTK4_IM_MODULEDIR) if test x"$enable_python" = x"yes"; then # Check for dbus-python. AC_ARG_ENABLE(dbus-python-check, AS_HELP_STRING([--disable-dbus-python-check], [Do not check dbus-python]), [enable_dbus_python_check=$enableval], [enable_dbus_python_check=yes] ) PKG_CHECK_MODULES(DBUS_PYTHON, [dbus-python >= 0.83.0], [IBUS_HAS_DBUS_PYTHON=yes], [IBUS_HAS_DBUS_PYTHON=no] ) if test x"$IBUS_HAS_DBUS_PYTHON" != x"yes"; then if test x"$enable_dbus_python_check" != x"no"; then AC_MSG_ERROR([can not find dbus-python >= 0.83.0. Please install or update dbus-python.]) else AC_MSG_WARN([can not find dbus-python >= 0.83.0. It is required.]) fi fi fi # Option for always disable snooper applications. AC_ARG_ENABLE(key-snooper, AS_HELP_STRING([--disable-key-snooper], [Always disable key snooper in gtk im module]), [enable_key_snooper=$enableval], [enable_key_snooper=yes] ) if test x"$enable_key_snooper" = x"yes"; then AC_DEFINE(ENABLE_SNOOPER, TRUE, [Enable key snooper]) else AC_DEFINE(ENABLE_SNOOPER, FALSE, [Enable key snooper]) enable_key_snooper="no (disabled, use --enable-key-snooper to enable)" fi # Option for no snooper applications. AC_ARG_WITH(no-snooper-apps, AS_HELP_STRING([--with-no-snooper-apps[=regex1,regex2]], [Does not enable keyboard snooper in those applications (like: .*chrome.*,firefox.*)]), NO_SNOOPER_APPS=$with_no_snooper_apps, NO_SNOOPER_APPS=[firefox.*,.*chrome.*,.*chromium.*,terminator] ) AC_DEFINE_UNQUOTED(NO_SNOOPER_APPS, "$NO_SNOOPER_APPS", [Does not enbale keyboard snooper in those applications]) # GNOME 3 uses the theme's icon. AC_ARG_WITH(panel-icon-keyboard, AS_HELP_STRING([--with-panel-icon-keyboard[=icon_name]], [Set the default panel icon (default: "ibus-keyboard")]), [if test x"$with_panel_icon_keyboard" = x"yes" -o \ x"$with_panel_icon_keyboard" = x; then with_panel_icon_keyboard="input-keyboard-symbolic" fi if test x"$with_panel_icon_keyboard" = x"legacy"; then with_panel_icon_keyboard="ibus-keyboard" fi IBUS_ICON_KEYBOARD=$with_panel_icon_keyboard ], IBUS_ICON_KEYBOARD="ibus-keyboard" ) AC_SUBST(IBUS_ICON_KEYBOARD) # --disable-surrounding-text option. AC_ARG_ENABLE(surrounding-text, AS_HELP_STRING([--disable-surrounding-text], [Disable surrounding-text support]), [enable_surrounding_text=$enableval], [enable_surrounding_text=yes] ) if test x"$enable_surrounding_text" = x"yes"; then AC_DEFINE(ENABLE_SURROUNDING, TRUE, [Enable surrounding-text support]) enable_surrounding_text="yes (enabled, use --disable-surrounding-text to disable)" fi # --disable-ui AC_ARG_ENABLE(ui, AS_HELP_STRING([--disable-ui], [Disable ibus default user interface]), [enable_ui=$enableval], [enable_ui=yes] ) AM_CONDITIONAL([ENABLE_UI], [test x"$enable_ui" = x"yes"]) if test x"$enable_ui" = x"yes"; then enable_ui="yes (enabled, use --disable-ui to disable)" fi if test x"$enable_appindicator" = x"yes"; then PKG_CHECK_MODULES(DBUSMENU_GLIB, [dbusmenu-glib-0.4]) PKG_CHECK_MODULES(DBUSMENU_GTK3, [dbusmenu-gtk3-0.4]) enable_appindicator="yes (enabled, use --disable-appindicator to disable)" fi # --disable-engine AC_ARG_ENABLE(engine, AS_HELP_STRING([--disable-engine], [Disable ibus simple engine]), [enable_engine=$enableval], [enable_engine=yes] ) AM_CONDITIONAL([ENABLE_ENGINE], [test x"$enable_engine" = x"yes"]) if test x"$enable_engine" = x"yes"; then enable_engine="yes (enabled, use --disable-engine to disable)" fi # --disable-libnotify AC_ARG_ENABLE(libnotify, AS_HELP_STRING([--disable-libnotify], [Disable to link libnotify]), [enable_libnotify=$enableval], [enable_libnotify=yes] ) AM_CONDITIONAL([ENABLE_LIBNOTIFY], [test x"$enable_libnotify" = x"yes"]) if test x"$enable_libnotify" = x"yes"; then PKG_CHECK_MODULES(LIBNOTIFY, [ libnotify >= 0.7 ]) enable_libnotify="yes (enabled, use --disable-libnotify to disable)" fi PKG_CHECK_MODULES(XTEST, [x11 xtst], [enable_xtest=yes], [enable_xtest=no] ) AM_CONDITIONAL([ENABLE_XTEST], [test x"$enable_xtest" = x"yes"]) PKG_CHECK_MODULES(XFIXES, [x11 xfixes >= 6], [AC_DEFINE([HAVE_XFIXES], [1], [Define to enable XFixes]) have_xfixes=yes], [have_xfixes="no (libXfixes version is lower than 6)"] ) # --enable-install-tests AC_ARG_ENABLE(install-tests, AS_HELP_STRING([--enable-install-tests], [Enable to install tests]), [enable_install_tests=$enableval], [enable_install_tests=no] ) AM_CONDITIONAL([ENABLE_INSTALL_TESTS], [test x"$enable_install_tests" = x"yes"]) if test x"$enable_install_tests" = x"no"; then enable_install_tests="no (disabled, use --enable-install-tests to enable)" fi # --disable-emoji-dict option. AC_ARG_ENABLE(emoji-dict, AS_HELP_STRING([--disable-emoji-dict], [Do not build Emoji dict files]), [enable_emoji_dict=$enableval], [enable_emoji_dict=yes] ) AM_CONDITIONAL([ENABLE_EMOJI_DICT], [test x"$enable_emoji_dict" = x"yes"]) AC_ARG_WITH(unicode-emoji-dir, AS_HELP_STRING([--with-unicode-emoji-dir[=DIR]], [Set the directory of Unicode Emoji. (default: "/usr/share/unicode/emoji")]), UNICODE_EMOJI_DIR=$with_unicode_emoji_dir, UNICODE_EMOJI_DIR="/usr/share/unicode/emoji" ) AC_SUBST(UNICODE_EMOJI_DIR) AC_ARG_WITH(emoji-annotation-dir, AS_HELP_STRING([--with-emoji-annotation-dir[=DIR]], [Set the directory of CLDR annotation files. (default: "/usr/share/unicode/cldr/common/annotations")]), EMOJI_ANNOTATION_DIR=$with_emoji_annotation_dir, EMOJI_ANNOTATION_DIR="/usr/share/unicode/cldr/common/annotations" ) AC_SUBST(EMOJI_ANNOTATION_DIR) if test x"$enable_emoji_dict" = x"yes"; then if test ! -f $UNICODE_EMOJI_DIR/emoji-test.txt ; then AC_MSG_ERROR(Not found $UNICODE_EMOJI_DIR/emoji-test.txt. You can get \ the emoji files from http://www.unicode.org/Public/emoji/4.0/) else # POSIX SHELL has no ${FOO:0:1} head=`echo "$UNICODE_EMOJI_DIR" | cut -c1`; if test $head != "/" ; then UNICODE_EMOJI_DIR=`realpath "$UNICODE_EMOJI_DIR"` fi fi if test ! -f $EMOJI_ANNOTATION_DIR/en.xml ; then AC_MSG_ERROR(Not found $EMOJI_ANNOTATION_DIR/en.xml. You can get \ https://github.com/fujiwarat/cldr-emoji-annotation) else head=`echo "$EMOJI_ANNOTATION_DIR" | cut -c1`; if test $head != "/" ; then EMOJI_ANNOTATION_DIR=`realpath "$EMOJI_ANNOTATION_DIR"` fi fi enable_emoji_dict="yes (enabled, use --disable-emoji-dict to disable)" fi # --disable-unicode-dict option. AC_ARG_ENABLE(unicode-dict, AS_HELP_STRING([--disable-unicode-dict], [Do not build Unicode dict files]), [enable_unicode_dict=$enableval], [enable_unicode_dict=yes] ) AM_CONDITIONAL([ENABLE_UNICODE_DICT], [test x"$enable_unicode_dict" = x"yes"]) AC_ARG_WITH(ucd-dir, AS_HELP_STRING([--with-ucd-dir[=DIR]], [Set the directory of UCD (Unicode Character Database) files. (default: "/usr/share/unicode/ucd")]), UCD_DIR=$with_ucd_dir, UCD_DIR="/usr/share/unicode/ucd" ) AC_SUBST(UCD_DIR) if test x"$enable_unicode_dict" = x"yes"; then if test ! -f $UCD_DIR/NamesList.txt ; then AC_MSG_ERROR(Not found $UCD_DIR/NamesList.txt. You can get \ the UCD files from https://www.unicode.org/Public/UNIDATA/) elif test ! -f $UCD_DIR/Blocks.txt ; then AC_MSG_ERROR(Not found $UCD_DIR/Blocks.txt. You can get \ the UCD files from https://www.unicode.org/Public/UNIDATA/) else # POSIX SHELL has no ${FOO:0:1} head=`echo "$UCD_DIR" | cut -c1`; if test $head != "/" ; then UCD_DIR=`realpath "$UCD_DIR"` fi fi enable_unicode_dict="yes (enabled, use --disable-unicode-dict to disable)" fi AC_ARG_WITH(socket-dir, AS_HELP_STRING([--with-socket-dir[=DIR]], [Set the default socket directory to connect ibus-daemon with D-Bus connections (default: "$XDG_CACHE_HOME/ibus"). The best practice of the socket directory would be unique per user not to modify by malicious users but XDG_RUNTIME_DIR is not integrated in BSD systems and the BSD's default is "/tmp". XDG_RUMTIME_DIR is not useful now because XDG_RUMTIME_DIR is available by login but not `su` command but ibus-daemon can be run with su. "$XDG_RUMTIME_DIR", "$XDG_CACHE_HOME", "$UID" are extracted by ibus-daemon. ibus-daemon also runs mkdir for the socket directory since BSD systems do not support abstract socket paths. The socket path on a NFS mount would not be a good idea likes "/home/$USER" because the directory is not sometimes accessible with the network condition.]), [IBUS_SOCKET_DIR=$with_socket_dir], [case $host in *linux*) IBUS_SOCKET_DIR='unix:tmpdir=$XDG_CACHE_HOME/ibus';; *) IBUS_SOCKET_DIR='unix:tmpdir=/tmp';; esac] ) AC_DEFINE_UNQUOTED(IBUS_SOCKET_DIR, "$IBUS_SOCKET_DIR", [The default socket directory to connect ibus-daemon.]) # Check iso-codes. PKG_CHECK_MODULES(ISOCODES, [ iso-codes ]) ISOCODES_PREFIX=`$PKG_CONFIG iso-codes --variable=prefix` AC_SUBST(ISOCODES_PREFIX) PKG_CHECK_MODULES(XKBCONFIG, [xkeyboard-config], [XKBCONFIG_BASE=`$PKG_CONFIG xkeyboard-config --variable=xkb_base`], [XKBCONFIG_BASE='$(datarootdir)/X11/xkb'] ) AC_SUBST(XKBCONFIG_BASE) AC_SUBST([GDBUS_CODEGEN], [`$PKG_CONFIG --variable gdbus_codegen gio-2.0`]) # OUTPUT files AC_CONFIG_FILES([ po/Makefile.in bindings/Makefile bindings/pygobject/Makefile bindings/vala/Makefile bus/Makefile bus/ibus-daemon.1 bus/services/Makefile client/Makefile client/gtk2/Makefile client/gtk3/Makefile client/gtk4/Makefile client/x11/Makefile client/wayland/Makefile conf/Makefile conf/dconf/Makefile conf/memconf/Makefile data/Makefile data/annotations/Makefile data/icons/Makefile data/its/Makefile data/keymaps/Makefile data/dconf/Makefile data/dconf/00-upstream-settings.5 data/dconf/ibus.5 docs/Makefile docs/reference/Makefile docs/reference/ibus/ibus-docs.sgml docs/reference/ibus/Makefile engine/Makefile ibus/_config.py ibus/Makefile ibus/interface/Makefile m4/Makefile portal/Makefile setup/Makefile setup/ibus-setup.1 src/Makefile src/compose/Makefile src/ibusversion.h src/tests/Makefile tools/Makefile tools/ibus.1 ui/Makefile ui/gtk3/Makefile ui/gtk3/ibus-emoji.7 util/Makefile util/IMdkit/Makefile Makefile ibus-1.0.pc ibus.spec ]) AC_OUTPUT AC_MSG_RESULT([ Build options: Version $IBUS_VERSION Install prefix $prefix Build shared libs $enable_shared Build static libs $enable_static Build endianness $ENDIAN_MSG CFLAGS $CFLAGS PYTHON $PYTHON PYTHON2 $PYTHON2 Python overrides dir $pyoverridesdir Enable python2 $enable_python2 Gtk2 immodule dir $GTK2_IM_MODULEDIR Gtk3 immodule dir $GTK3_IM_MODULEDIR Gtk4 immodule dir $GTK4_IM_MODULEDIR Build gtk2 immodule $enable_gtk2 Build gtk3 immodule $enable_gtk3 Build gtk4 immodule $enable_gtk4 Build XIM agent server $enable_xim Build wayland support $enable_wayland Build gdk3 wayland support $enable_gdk3_wayland Build appindicator support $enable_appindicator Build python library $enable_python_library Build memconf modules $enable_memconf Build dconf modules $enable_dconf Build introspection $found_introspection IBus-1.0.gir scannerflags "$IBUS_GIR_SCANNERFLAGS" Build vala binding $enable_vala Build document $enable_gtk_doc Build UI $enable_ui Build engine $enable_engine Enable key snooper $enable_key_snooper No snooper regexes "$NO_SNOOPER_APPS" Panel icon "$IBUS_ICON_KEYBOARD" Enable surrounding-text $enable_surrounding_text Enable libnotify $enable_libnotify Enable Emoji dict $enable_emoji_dict Unicode Emoji directory $UNICODE_EMOJI_DIR CLDR annotation directory $EMOJI_ANNOTATION_DIR Enable Unicode dict $enable_unicode_dict UCD directory $UCD_DIR Socket directory "$IBUS_SOCKET_DIR" XFixes client disconnect $have_xfixes Install systemd service $enable_systemd Run test cases $enable_tests Install tests $enable_install_tests ]) ibus-1.5.32/aclocal.m40000644000000000000000000026606714775216750010072 # generated automatically by aclocal 1.17 -*- Autoconf -*- # Copyright (C) 1996-2024 Free Software Foundation, Inc. # 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. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.72],, [m4_warning([this file was generated for autoconf 2.72. You have another version of autoconf. It may work, but is not guaranteed to. If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically 'autoreconf'.])]) # Configure paths for GLIB # Owen Taylor 1997-2001 # Increment this whenever this file is changed. #serial 4 dnl AM_PATH_GLIB_2_0([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]]) dnl Test for GLIB, and define GLIB_CFLAGS and GLIB_LIBS, if gmodule, gobject, dnl gthread, or gio is specified in MODULES, pass to pkg-config dnl AC_DEFUN([AM_PATH_GLIB_2_0], [dnl dnl Get the cflags and libraries from pkg-config dnl dnl We can't use PKG_PREREQ because that needs 0.29. m4_ifndef([PKG_PROG_PKG_CONFIG], [pkg.m4 version 0.28 or later is required]) AC_ARG_ENABLE(glibtest, [ --disable-glibtest do not try to compile and run a test GLIB program], , enable_glibtest=yes) min_glib_version=ifelse([$1], [], [2.0.0], [$1]) pkg_config_args="glib-2.0 >= $min_glib_version" for module in . $4 do case "$module" in gmodule) pkg_config_args="$pkg_config_args gmodule-2.0" ;; gmodule-no-export) pkg_config_args="$pkg_config_args gmodule-no-export-2.0" ;; gobject) pkg_config_args="$pkg_config_args gobject-2.0" ;; gthread) pkg_config_args="$pkg_config_args gthread-2.0" ;; gio*) pkg_config_args="$pkg_config_args $module-2.0" ;; esac done PKG_PROG_PKG_CONFIG([0.16]) no_glib="" if test "x$PKG_CONFIG" = x ; then no_glib=yes PKG_CONFIG=no fi dnl For GLIB_CFLAGS and GLIB_LIBS PKG_CHECK_MODULES([GLIB], [$pkg_config_args], [:], [:]) dnl For the tools PKG_CHECK_VAR([GLIB_GENMARSHAL], [glib-2.0], [glib_genmarshal]) PKG_CHECK_VAR([GOBJECT_QUERY], [glib-2.0], [gobject_query]) PKG_CHECK_VAR([GLIB_MKENUMS], [glib-2.0], [glib_mkenums]) PKG_CHECK_VAR([GLIB_COMPILE_RESOURCES], [gio-2.0], [glib_compile_resources]) AC_MSG_CHECKING(for GLIB - version >= $min_glib_version) if test x$PKG_CONFIG != xno ; then ## don't try to run the test against uninstalled libtool libs if $PKG_CONFIG --uninstalled $pkg_config_args; then echo "Will use uninstalled version of GLib found in PKG_CONFIG_PATH" enable_glibtest=no fi if $PKG_CONFIG --atleast-version $min_glib_version $pkg_config_args; then : else no_glib=yes fi fi if test x"$no_glib" = x ; then glib_config_major_version=`$PKG_CONFIG --modversion glib-2.0 | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` glib_config_minor_version=`$PKG_CONFIG --modversion glib-2.0 | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` glib_config_micro_version=`$PKG_CONFIG --modversion glib-2.0 | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` if test "x$enable_glibtest" = "xyes" ; then ac_save_CFLAGS="$CFLAGS" ac_save_LIBS="$LIBS" CFLAGS="$CFLAGS $GLIB_CFLAGS" LIBS="$GLIB_LIBS $LIBS" dnl dnl Now check if the installed GLib is sufficiently new. (Also sanity dnl checks the results of pkg-config to some extent) dnl rm -f conf.glibtest AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include #include #include int main (void) { unsigned int major, minor, micro; fclose (fopen ("conf.glibtest", "w")); if (sscanf("$min_glib_version", "%u.%u.%u", &major, &minor, µ) != 3) { printf("%s, bad version string\n", "$min_glib_version"); exit(1); } if ((glib_major_version != $glib_config_major_version) || (glib_minor_version != $glib_config_minor_version) || (glib_micro_version != $glib_config_micro_version)) { printf("\n*** 'pkg-config --modversion glib-2.0' returned %d.%d.%d, but GLIB (%d.%d.%d)\n", $glib_config_major_version, $glib_config_minor_version, $glib_config_micro_version, glib_major_version, glib_minor_version, glib_micro_version); printf ("*** was found! If pkg-config was correct, then it is best\n"); printf ("*** to remove the old version of GLib. You may also be able to fix the error\n"); printf("*** by modifying your LD_LIBRARY_PATH environment variable, or by editing\n"); printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n"); printf("*** required on your system.\n"); printf("*** If pkg-config was wrong, set the environment variable PKG_CONFIG_PATH\n"); printf("*** to point to the correct configuration files\n"); } else if ((glib_major_version != GLIB_MAJOR_VERSION) || (glib_minor_version != GLIB_MINOR_VERSION) || (glib_micro_version != GLIB_MICRO_VERSION)) { printf("*** GLib header files (version %d.%d.%d) do not match\n", GLIB_MAJOR_VERSION, GLIB_MINOR_VERSION, GLIB_MICRO_VERSION); printf("*** library (version %d.%d.%d)\n", glib_major_version, glib_minor_version, glib_micro_version); } else { if ((glib_major_version > major) || ((glib_major_version == major) && (glib_minor_version > minor)) || ((glib_major_version == major) && (glib_minor_version == minor) && (glib_micro_version >= micro))) { return 0; } else { printf("\n*** An old version of GLib (%u.%u.%u) was found.\n", glib_major_version, glib_minor_version, glib_micro_version); printf("*** You need a version of GLib newer than %u.%u.%u. The latest version of\n", major, minor, micro); printf("*** GLib is always available from ftp://ftp.gtk.org.\n"); printf("***\n"); printf("*** If you have already installed a sufficiently new version, this error\n"); printf("*** probably means that the wrong copy of the pkg-config shell script is\n"); printf("*** being found. The easiest way to fix this is to remove the old version\n"); printf("*** of GLib, but you can also set the PKG_CONFIG environment to point to the\n"); printf("*** correct copy of pkg-config. (In this case, you will have to\n"); printf("*** modify your LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf\n"); printf("*** so that the correct libraries are found at run-time))\n"); } } return 1; } ]])],[],[no_glib=yes],[echo $ac_n "cross compiling; assumed OK... $ac_c"]) CFLAGS="$ac_save_CFLAGS" LIBS="$ac_save_LIBS" fi fi if test "x$no_glib" = x ; then AC_MSG_RESULT(yes (version $glib_config_major_version.$glib_config_minor_version.$glib_config_micro_version)) ifelse([$2], , :, [$2]) else AC_MSG_RESULT(no) if test "$PKG_CONFIG" = "no" ; then echo "*** A new enough version of pkg-config was not found." echo "*** See http://www.freedesktop.org/software/pkgconfig/" else if test -f conf.glibtest ; then : else echo "*** Could not run GLib test program, checking why..." ac_save_CFLAGS="$CFLAGS" ac_save_LIBS="$LIBS" CFLAGS="$CFLAGS $GLIB_CFLAGS" LIBS="$LIBS $GLIB_LIBS" AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #include #include ]], [[ return ((glib_major_version) || (glib_minor_version) || (glib_micro_version)); ]])], [ echo "*** The test program compiled, but did not run. This usually means" echo "*** that the run-time linker is not finding GLib or finding the wrong" echo "*** version of GLib. If it is not finding GLib, you'll need to set your" echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" echo "*** to the installed location Also, make sure you have run ldconfig if that" echo "*** is required on your system" echo "***" echo "*** If you have an old version installed, it is best to remove it, although" echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" ], [ echo "*** The test program failed to compile or link. See the file config.log for the" echo "*** exact error that occurred. This usually means GLib is incorrectly installed."]) CFLAGS="$ac_save_CFLAGS" LIBS="$ac_save_LIBS" fi fi GLIB_CFLAGS="" GLIB_LIBS="" GLIB_GENMARSHAL="" GOBJECT_QUERY="" GLIB_MKENUMS="" GLIB_COMPILE_RESOURCES="" ifelse([$3], , :, [$3]) fi rm -f conf.glibtest ]) # Increment this whenever this file is changed. #serial 2 dnl GLIB_GSETTINGS dnl Defines GSETTINGS_SCHEMAS_INSTALL which controls whether dnl the schema should be compiled dnl AC_DEFUN([GLIB_GSETTINGS], [ dnl We can't use PKG_PREREQ because that needs 0.29. m4_ifndef([PKG_PROG_PKG_CONFIG], [pkg.m4 version 0.28 or later is required]) m4_pattern_allow([AM_V_GEN]) AC_ARG_ENABLE(schemas-compile, AS_HELP_STRING([--disable-schemas-compile], [Disable regeneration of gschemas.compiled on install]), [case ${enableval} in yes) GSETTINGS_DISABLE_SCHEMAS_COMPILE="" ;; no) GSETTINGS_DISABLE_SCHEMAS_COMPILE="1" ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-schemas-compile]) ;; esac]) AC_SUBST([GSETTINGS_DISABLE_SCHEMAS_COMPILE]) PKG_PROG_PKG_CONFIG([0.16]) AC_SUBST(gsettingsschemadir, [${datadir}/glib-2.0/schemas]) AS_IF([test x$cross_compiling != xyes], [PKG_CHECK_VAR([GLIB_COMPILE_SCHEMAS], [gio-2.0], [glib_compile_schemas])], [AC_PATH_PROG([GLIB_COMPILE_SCHEMAS], [glib-compile-schemas])]) AC_SUBST(GLIB_COMPILE_SCHEMAS) if test "x$GLIB_COMPILE_SCHEMAS" = "x"; then ifelse([$2],,[AC_MSG_ERROR([glib-compile-schemas not found.])],[$2]) else ifelse([$1],,[:],[$1]) fi GSETTINGS_RULES=' .PHONY : uninstall-gsettings-schemas install-gsettings-schemas clean-gsettings-schemas mostlyclean-am: clean-gsettings-schemas gsettings__enum_file = $(addsuffix .enums.xml,$(gsettings_ENUM_NAMESPACE)) %.gschema.valid: %.gschema.xml $(gsettings__enum_file) $(AM_V_GEN) $(GLIB_COMPILE_SCHEMAS) --strict --dry-run $(addprefix --schema-file=,$(gsettings__enum_file)) --schema-file=$< && mkdir -p [$](@D) && touch [$]@ all-am: $(gsettings_SCHEMAS:.xml=.valid) uninstall-am: uninstall-gsettings-schemas install-data-am: install-gsettings-schemas .SECONDARY: $(gsettings_SCHEMAS) install-gsettings-schemas: $(gsettings_SCHEMAS) $(gsettings__enum_file) @$(NORMAL_INSTALL) if test -n "$^"; then \ test -z "$(gsettingsschemadir)" || $(MKDIR_P) "$(DESTDIR)$(gsettingsschemadir)"; \ $(INSTALL_DATA) $^ "$(DESTDIR)$(gsettingsschemadir)"; \ test -n "$(GSETTINGS_DISABLE_SCHEMAS_COMPILE)$(DESTDIR)" || $(GLIB_COMPILE_SCHEMAS) $(gsettingsschemadir); \ fi uninstall-gsettings-schemas: @$(NORMAL_UNINSTALL) @list='\''$(gsettings_SCHEMAS) $(gsettings__enum_file)'\''; test -n "$(gsettingsschemadir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e '\''s|^.*/||'\''`; \ test -n "$$files" || exit 0; \ echo " ( cd '\''$(DESTDIR)$(gsettingsschemadir)'\'' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(gsettingsschemadir)" && rm -f $$files test -n "$(GSETTINGS_DISABLE_SCHEMAS_COMPILE)$(DESTDIR)" || $(GLIB_COMPILE_SCHEMAS) $(gsettingsschemadir) clean-gsettings-schemas: rm -f $(gsettings_SCHEMAS:.xml=.valid) $(gsettings__enum_file) ifdef gsettings_ENUM_NAMESPACE $(gsettings__enum_file): $(gsettings_ENUM_FILES) $(AM_V_GEN) glib-mkenums --comments '\'''\'' --fhead "" --vhead " <@type@ id='\''$(gsettings_ENUM_NAMESPACE).@EnumName@'\''>" --vprod " " --vtail " " --ftail "" [$]^ > [$]@.tmp && mv [$]@.tmp [$]@ endif ' _GSETTINGS_SUBST(GSETTINGS_RULES) ]) dnl _GSETTINGS_SUBST(VARIABLE) dnl Abstract macro to do either _AM_SUBST_NOTMAKE or AC_SUBST AC_DEFUN([_GSETTINGS_SUBST], [ AC_SUBST([$1]) m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])]) ] ) # pkg.m4 - Macros to locate and use pkg-config. -*- Autoconf -*- # serial 12 (pkg-config-0.29.2) dnl Copyright © 2004 Scott James Remnant . dnl Copyright © 2012-2015 Dan Nicholson dnl dnl This program is free software; you can redistribute it and/or modify dnl it under the terms of the GNU General Public License as published by dnl the Free Software Foundation; either version 2 of the License, or dnl (at your option) any later version. dnl dnl This program is distributed in the hope that it will be useful, but dnl WITHOUT ANY WARRANTY; without even the implied warranty of dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU dnl General Public License for more details. dnl dnl You should have received a copy of the GNU General Public License dnl along with this program; if not, write to the Free Software dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA dnl 02111-1307, USA. dnl dnl As a special exception to the GNU General Public License, if you dnl distribute this file as part of a program that contains a dnl configuration script generated by Autoconf, you may include it under dnl the same distribution terms that you use for the rest of that dnl program. dnl PKG_PREREQ(MIN-VERSION) dnl ----------------------- dnl Since: 0.29 dnl dnl Verify that the version of the pkg-config macros are at least dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's dnl installed version of pkg-config, this checks the developer's version dnl of pkg.m4 when generating configure. dnl dnl To ensure that this macro is defined, also add: dnl m4_ifndef([PKG_PREREQ], dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])]) dnl dnl See the "Since" comment for each macro you use to see what version dnl of the macros you require. m4_defun([PKG_PREREQ], [m4_define([PKG_MACROS_VERSION], [0.29.2]) m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1, [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])]) ])dnl PKG_PREREQ dnl PKG_PROG_PKG_CONFIG([MIN-VERSION], [ACTION-IF-NOT-FOUND]) dnl --------------------------------------------------------- dnl Since: 0.16 dnl dnl Search for the pkg-config tool and set the PKG_CONFIG variable to dnl first found in the path. Checks that the version of pkg-config found dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is dnl used since that's the first version where most current features of dnl pkg-config existed. dnl dnl If pkg-config is not found or older than specified, it will result dnl in an empty PKG_CONFIG variable. To avoid widespread issues with dnl scripts not checking it, ACTION-IF-NOT-FOUND defaults to aborting. dnl You can specify [PKG_CONFIG=false] as an action instead, which would dnl result in pkg-config tests failing, but no bogus error messages. AC_DEFUN([PKG_PROG_PKG_CONFIG], [m4_pattern_forbid([^_?PKG_[A-Z_]+$]) m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) fi if test -n "$PKG_CONFIG"; then _pkg_min_version=m4_default([$1], [0.9.0]) AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) PKG_CONFIG="" fi fi if test -z "$PKG_CONFIG"; then m4_default([$2], [AC_MSG_ERROR([pkg-config not found])]) fi[]dnl ])dnl PKG_PROG_PKG_CONFIG dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) dnl ------------------------------------------------------------------- dnl Since: 0.18 dnl dnl Check to see whether a particular set of modules exists. Similar to dnl PKG_CHECK_MODULES(), but does not set variables or print errors. dnl dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) dnl only at the first occurrence in configure.ac, so if the first place dnl it's called might be skipped (such as if it is within an "if", you dnl have to call PKG_CHECK_EXISTS manually AC_DEFUN([PKG_CHECK_EXISTS], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl if test -n "$PKG_CONFIG" && \ AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then m4_default([$2], [:]) m4_ifvaln([$3], [else $3])dnl fi]) dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) dnl --------------------------------------------- dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting dnl pkg_failed based on the result. m4_define([_PKG_CONFIG], [if test -n "$$1"; then pkg_cv_[]$1="$$1" elif test -n "$PKG_CONFIG"; then PKG_CHECK_EXISTS([$3], [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes ], [pkg_failed=yes]) else pkg_failed=untried fi[]dnl ])dnl _PKG_CONFIG dnl _PKG_SHORT_ERRORS_SUPPORTED dnl --------------------------- dnl Internal check to see if pkg-config supports short errors. AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], [AC_REQUIRE([PKG_PROG_PKG_CONFIG]) if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi[]dnl ])dnl _PKG_SHORT_ERRORS_SUPPORTED dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], dnl [ACTION-IF-NOT-FOUND]) dnl -------------------------------------------------------------- dnl Since: 0.4.0 dnl dnl Note that if there is a possibility the first call to dnl PKG_CHECK_MODULES might not happen, you should be sure to include an dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac AC_DEFUN([PKG_CHECK_MODULES], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl pkg_failed=no AC_MSG_CHECKING([for $2]) _PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) _PKG_CONFIG([$1][_LIBS], [libs], [$2]) m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS and $1[]_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details.]) if test $pkg_failed = yes; then AC_MSG_RESULT([no]) _PKG_SHORT_ERRORS_SUPPORTED if test $_pkg_short_errors_supported = yes; then $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` else $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD m4_default([$4], [AC_MSG_ERROR( [Package requirements ($2) were not met: $$1_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. _PKG_TEXT])[]dnl ]) elif test $pkg_failed = untried; then AC_MSG_RESULT([no]) m4_default([$4], [AC_MSG_FAILURE( [The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. _PKG_TEXT To get pkg-config, see .])[]dnl ]) else $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS $1[]_LIBS=$pkg_cv_[]$1[]_LIBS AC_MSG_RESULT([yes]) $3 fi[]dnl ])dnl PKG_CHECK_MODULES dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], dnl [ACTION-IF-NOT-FOUND]) dnl --------------------------------------------------------------------- dnl Since: 0.29 dnl dnl Checks for existence of MODULES and gathers its build flags with dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags dnl and VARIABLE-PREFIX_LIBS from --libs. dnl dnl Note that if there is a possibility the first call to dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to dnl include an explicit call to PKG_PROG_PKG_CONFIG in your dnl configure.ac. AC_DEFUN([PKG_CHECK_MODULES_STATIC], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl _save_PKG_CONFIG=$PKG_CONFIG PKG_CONFIG="$PKG_CONFIG --static" PKG_CHECK_MODULES($@) PKG_CONFIG=$_save_PKG_CONFIG[]dnl ])dnl PKG_CHECK_MODULES_STATIC dnl PKG_INSTALLDIR([DIRECTORY]) dnl ------------------------- dnl Since: 0.27 dnl dnl Substitutes the variable pkgconfigdir as the location where a module dnl should install pkg-config .pc files. By default the directory is dnl $libdir/pkgconfig, but the default can be changed by passing dnl DIRECTORY. The user can override through the --with-pkgconfigdir dnl parameter. AC_DEFUN([PKG_INSTALLDIR], [m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])]) m4_pushdef([pkg_description], [pkg-config installation directory @<:@]pkg_default[@:>@]) AC_ARG_WITH([pkgconfigdir], [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],, [with_pkgconfigdir=]pkg_default) AC_SUBST([pkgconfigdir], [$with_pkgconfigdir]) m4_popdef([pkg_default]) m4_popdef([pkg_description]) ])dnl PKG_INSTALLDIR dnl PKG_NOARCH_INSTALLDIR([DIRECTORY]) dnl -------------------------------- dnl Since: 0.27 dnl dnl Substitutes the variable noarch_pkgconfigdir as the location where a dnl module should install arch-independent pkg-config .pc files. By dnl default the directory is $datadir/pkgconfig, but the default can be dnl changed by passing DIRECTORY. The user can override through the dnl --with-noarch-pkgconfigdir parameter. AC_DEFUN([PKG_NOARCH_INSTALLDIR], [m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])]) m4_pushdef([pkg_description], [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@]) AC_ARG_WITH([noarch-pkgconfigdir], [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],, [with_noarch_pkgconfigdir=]pkg_default) AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir]) m4_popdef([pkg_default]) m4_popdef([pkg_description]) ])dnl PKG_NOARCH_INSTALLDIR dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE, dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) dnl ------------------------------------------- dnl Since: 0.28 dnl dnl Retrieves the value of the pkg-config variable for the given module. AC_DEFUN([PKG_CHECK_VAR], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl _PKG_CONFIG([$1], [variable="][$3]["], [$2]) AS_VAR_COPY([$1], [pkg_cv_][$1]) AS_VAR_IF([$1], [""], [$5], [$4])dnl ])dnl PKG_CHECK_VAR dnl PKG_WITH_MODULES(VARIABLE-PREFIX, MODULES, dnl [ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND], dnl [DESCRIPTION], [DEFAULT]) dnl ------------------------------------------ dnl dnl Prepare a "--with-" configure option using the lowercase dnl [VARIABLE-PREFIX] name, merging the behaviour of AC_ARG_WITH and dnl PKG_CHECK_MODULES in a single macro. AC_DEFUN([PKG_WITH_MODULES], [ m4_pushdef([with_arg], m4_tolower([$1])) m4_pushdef([description], [m4_default([$5], [build with ]with_arg[ support])]) m4_pushdef([def_arg], [m4_default([$6], [auto])]) m4_pushdef([def_action_if_found], [AS_TR_SH([with_]with_arg)=yes]) m4_pushdef([def_action_if_not_found], [AS_TR_SH([with_]with_arg)=no]) m4_case(def_arg, [yes],[m4_pushdef([with_without], [--without-]with_arg)], [m4_pushdef([with_without],[--with-]with_arg)]) AC_ARG_WITH(with_arg, AS_HELP_STRING(with_without, description[ @<:@default=]def_arg[@:>@]),, [AS_TR_SH([with_]with_arg)=def_arg]) AS_CASE([$AS_TR_SH([with_]with_arg)], [yes],[PKG_CHECK_MODULES([$1],[$2],$3,$4)], [auto],[PKG_CHECK_MODULES([$1],[$2], [m4_n([def_action_if_found]) $3], [m4_n([def_action_if_not_found]) $4])]) m4_popdef([with_arg]) m4_popdef([description]) m4_popdef([def_arg]) ])dnl PKG_WITH_MODULES dnl PKG_HAVE_WITH_MODULES(VARIABLE-PREFIX, MODULES, dnl [DESCRIPTION], [DEFAULT]) dnl ----------------------------------------------- dnl dnl Convenience macro to trigger AM_CONDITIONAL after PKG_WITH_MODULES dnl check._[VARIABLE-PREFIX] is exported as make variable. AC_DEFUN([PKG_HAVE_WITH_MODULES], [ PKG_WITH_MODULES([$1],[$2],,,[$3],[$4]) AM_CONDITIONAL([HAVE_][$1], [test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"]) ])dnl PKG_HAVE_WITH_MODULES dnl PKG_HAVE_DEFINE_WITH_MODULES(VARIABLE-PREFIX, MODULES, dnl [DESCRIPTION], [DEFAULT]) dnl ------------------------------------------------------ dnl dnl Convenience macro to run AM_CONDITIONAL and AC_DEFINE after dnl PKG_WITH_MODULES check. HAVE_[VARIABLE-PREFIX] is exported as make dnl and preprocessor variable. AC_DEFUN([PKG_HAVE_DEFINE_WITH_MODULES], [ PKG_HAVE_WITH_MODULES([$1],[$2],[$3],[$4]) AS_IF([test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"], [AC_DEFINE([HAVE_][$1], 1, [Enable ]m4_tolower([$1])[ support])]) ])dnl PKG_HAVE_DEFINE_WITH_MODULES AC_DEFUN([WAYLAND_SCANNER_RULES], [ PKG_PROG_PKG_CONFIG PKG_CHECK_MODULES([WAYLAND_SCANNER], [wayland-scanner >= 1.14.0]) wayland_scanner=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner` AC_SUBST([wayland_scanner]) wayland_scanner_rules=`$PKG_CONFIG --variable=pkgdatadir wayland-scanner`/wayland-scanner.mk AC_SUBST_FILE([wayland_scanner_rules]) AC_SUBST([wayland_protocoldir], [$1]) ]) # Copyright (C) 2002-2024 Free Software Foundation, Inc. # # 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. # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been # generated from the m4 files accompanying Automake X.Y. # (This private macro should not be called outside this file.) AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version='1.17' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. m4_if([$1], [1.17], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) # _AM_AUTOCONF_VERSION(VERSION) # ----------------------------- # aclocal traces this macro to find the Autoconf version. # This is a private macro too. Using m4_define simplifies # the logic in aclocal, which can simply ignore this definition. m4_define([_AM_AUTOCONF_VERSION], []) # AM_SET_CURRENT_AUTOMAKE_VERSION # ------------------------------- # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], [AM_AUTOMAKE_VERSION([1.17])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- # Copyright (C) 2001-2024 Free Software Foundation, Inc. # # 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. # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets # $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to # '$srcdir', '$srcdir/..', or '$srcdir/../..'. # # Of course, Automake must honor this variable whenever it calls a # tool from the auxiliary directory. The problem is that $srcdir (and # therefore $ac_aux_dir as well) can be either absolute or relative, # depending on how configure is run. This is pretty annoying, since # it makes $ac_aux_dir quite unusable in subdirectories: in the top # source directory, any form will work fine, but in subdirectories a # relative path needs to be adjusted first. # # $ac_aux_dir/missing # fails when called from a subdirectory if $ac_aux_dir is relative # $top_srcdir/$ac_aux_dir/missing # fails if $ac_aux_dir is absolute, # fails when called from a subdirectory in a VPATH build with # a relative $ac_aux_dir # # The reason of the latter failure is that $top_srcdir and $ac_aux_dir # are both prefixed by $srcdir. In an in-source build this is usually # harmless because $srcdir is '.', but things will broke when you # start a VPATH build or use an absolute $srcdir. # # So we could use something similar to $top_srcdir/$ac_aux_dir/missing, # iff we strip the leading $srcdir from $ac_aux_dir. That would be: # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` # and then we would define $MISSING as # MISSING="\${SHELL} $am_aux_dir/missing" # This will work as long as MISSING is not called from configure, because # unfortunately $(top_srcdir) has no meaning in configure. # However there are other variables, like CC, which are often used in # configure, and could therefore not use this "fixed" $ac_aux_dir. # # Another solution, used here, is to always expand $ac_aux_dir to an # absolute PATH. The drawback is that using absolute paths prevent a # configured tree to be moved without reconfiguration. AC_DEFUN([AM_AUX_DIR_EXPAND], [AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl # Expand $ac_aux_dir to an absolute path. am_aux_dir=`cd "$ac_aux_dir" && pwd` ]) # AM_CONDITIONAL -*- Autoconf -*- # Copyright (C) 1997-2024 Free Software Foundation, Inc. # # 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. # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- # Define a conditional. AC_DEFUN([AM_CONDITIONAL], [AC_PREREQ([2.52])dnl m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl AC_SUBST([$1_TRUE])dnl AC_SUBST([$1_FALSE])dnl _AM_SUBST_NOTMAKE([$1_TRUE])dnl _AM_SUBST_NOTMAKE([$1_FALSE])dnl m4_define([_AM_COND_VALUE_$1], [$2])dnl if $2; then $1_TRUE= $1_FALSE='#' else $1_TRUE='#' $1_FALSE= fi AC_CONFIG_COMMANDS_PRE( [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then AC_MSG_ERROR([[conditional "$1" was never defined. Usually this means the macro was only invoked conditionally.]]) fi])]) # Copyright (C) 1999-2024 Free Software Foundation, Inc. # # 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. # There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, # will think it sees a *use*, and therefore will trigger all it's # C support machinery. Also note that it means that autoscan, seeing # CC etc. in the Makefile, will ask for an AC_PROG_CC use... # _AM_DEPENDENCIES(NAME) # ---------------------- # See how the compiler implements dependency checking. # NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC". # We try a few techniques and use that to set a single cache variable. # # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular # dependency, and given that the user is not expected to run this macro, # just rely on AC_PROG_CC. AC_DEFUN([_AM_DEPENDENCIES], [AC_REQUIRE([AM_SET_DEPDIR])dnl AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl AC_REQUIRE([AM_MAKE_INCLUDE])dnl AC_REQUIRE([AM_DEP_TRACK])dnl m4_if([$1], [CC], [depcc="$CC" am_compiler_list=], [$1], [CXX], [depcc="$CXX" am_compiler_list=], [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'], [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'], [$1], [UPC], [depcc="$UPC" am_compiler_list=], [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'], [depcc="$$1" am_compiler_list=]) AC_CACHE_CHECK([dependency style of $depcc], [am_cv_$1_dependencies_compiler_type], [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_$1_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` fi am__universal=false m4_case([$1], [CC], [case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac], [CXX], [case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac]) for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thus: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_$1_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_$1_dependencies_compiler_type=none fi ]) AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) AM_CONDITIONAL([am__fastdep$1], [ test "x$enable_dependency_tracking" != xno \ && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) ]) # AM_SET_DEPDIR # ------------- # Choose a directory name for dependency files. # This macro is AC_REQUIREd in _AM_DEPENDENCIES. AC_DEFUN([AM_SET_DEPDIR], [AC_REQUIRE([AM_SET_LEADING_DOT])dnl AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl ]) # AM_DEP_TRACK # ------------ AC_DEFUN([AM_DEP_TRACK], [AC_ARG_ENABLE([dependency-tracking], [dnl AS_HELP_STRING( [--enable-dependency-tracking], [do not reject slow dependency extractors]) AS_HELP_STRING( [--disable-dependency-tracking], [speeds up one-time build])]) if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' am__nodep='_no' fi AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) AC_SUBST([AMDEPBACKSLASH])dnl _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl AC_SUBST([am__nodep])dnl _AM_SUBST_NOTMAKE([am__nodep])dnl ]) # Generate code to set up dependency tracking. -*- Autoconf -*- # Copyright (C) 1999-2024 Free Software Foundation, Inc. # # 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. # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], [{ # Older Autoconf quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. # TODO: see whether this extra hack can be removed once we start # requiring Autoconf 2.70 or later. AS_CASE([$CONFIG_FILES], [*\'*], [eval set x "$CONFIG_FILES"], [*], [set x $CONFIG_FILES]) shift # Used to flag and report bootstrapping failures. am_rc=0 for am_mf do # Strip MF so we end up with the name of the file. am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile which includes # dependency-tracking related rules and includes. # Grep'ing the whole file directly is not great: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \ || continue am_dirpart=`AS_DIRNAME(["$am_mf"])` am_filepart=`AS_BASENAME(["$am_mf"])` AM_RUN_LOG([cd "$am_dirpart" \ && sed -e '/# am--include-marker/d' "$am_filepart" \ | $MAKE -f - am--depfiles]) || am_rc=$? done if test $am_rc -ne 0; then AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments for automatic dependency tracking. If GNU make was not used, consider re-running the configure script with MAKE="gmake" (or whatever is necessary). You can also try re-running configure with the '--disable-dependency-tracking' option to at least be able to build the package (albeit without support for automatic dependency tracking).]) fi AS_UNSET([am_dirpart]) AS_UNSET([am_filepart]) AS_UNSET([am_mf]) AS_UNSET([am_rc]) rm -f conftest-deps.mk } ])# _AM_OUTPUT_DEPENDENCY_COMMANDS # AM_OUTPUT_DEPENDENCY_COMMANDS # ----------------------------- # This macro should only be invoked once -- use via AC_REQUIRE. # # This code is only required when automatic dependency tracking is enabled. # This creates each '.Po' and '.Plo' makefile fragment that we'll need in # order to bootstrap the dependency handling code. AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AC_CONFIG_COMMANDS([depfiles], [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])]) # Do all the work for Automake. -*- Autoconf -*- # Copyright (C) 1996-2024 Free Software Foundation, Inc. # # 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. # This macro actually does too much. Some checks are only needed if # your package does certain things. But this isn't really a big deal. dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O. m4_define([AC_PROG_CC], m4_defn([AC_PROG_CC]) [_AM_PROG_CC_C_O ]) # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) # AM_INIT_AUTOMAKE([OPTIONS]) # ----------------------------------------------- # The call with PACKAGE and VERSION arguments is the old style # call (pre autoconf-2.50), which is being phased out. PACKAGE # and VERSION should now be passed to AC_INIT and removed from # the call to AM_INIT_AUTOMAKE. # We support both call styles for the transition. After # the next Automake release, Autoconf can make the AC_INIT # arguments mandatory, and then we can depend on a new Autoconf # release and drop the old call support. AC_DEFUN([AM_INIT_AUTOMAKE], [AC_PREREQ([2.65])dnl m4_ifdef([_$0_ALREADY_INIT], [m4_fatal([$0 expanded multiple times ]m4_defn([_$0_ALREADY_INIT]))], [m4_define([_$0_ALREADY_INIT], m4_expansion_stack)])dnl dnl Autoconf wants to disallow AM_ names. We explicitly allow dnl the ones we care about. m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl AC_REQUIRE([AC_PROG_INSTALL])dnl if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output # is not polluted with repeated "-I." AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl # test to see if srcdir already configured if test -f $srcdir/config.status; then AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) fi fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi AC_SUBST([CYGPATH_W]) # Define the identity of the package. dnl Distinguish between old-style and new-style calls. m4_ifval([$2], [AC_DIAGNOSE([obsolete], [$0: two- and three-arguments forms are deprecated.]) m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl AC_SUBST([PACKAGE], [$1])dnl AC_SUBST([VERSION], [$2])], [_AM_SET_OPTIONS([$1])dnl dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. m4_if( m4_ifset([AC_PACKAGE_NAME], [ok]):m4_ifset([AC_PACKAGE_VERSION], [ok]), [ok:ok],, [m4_fatal([AC_INIT should be called with package and version arguments])])dnl AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl _AM_IF_OPTION([no-define],, [AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package]) AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl # Some tools Automake needs. AC_REQUIRE([AM_SANITY_CHECK])dnl AC_REQUIRE([AC_ARG_PROGRAM])dnl AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}]) AM_MISSING_PROG([AUTOCONF], [autoconf]) AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}]) AM_MISSING_PROG([AUTOHEADER], [autoheader]) AM_MISSING_PROG([MAKEINFO], [makeinfo]) AC_REQUIRE([AM_PROG_INSTALL_SH])dnl AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl AC_REQUIRE([AC_PROG_MKDIR_P])dnl # For better backward compatibility. To be removed once Automake 1.9.x # dies out for good. For more background, see: # # AC_SUBST([mkdir_p], ['$(MKDIR_P)']) # We need awk for the "check" target (and possibly the TAP driver). The # system "awk" is bad on some platforms. AC_REQUIRE([AC_PROG_AWK])dnl AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AM_SET_LEADING_DOT])dnl _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], [_AM_PROG_TAR([v7])])]) _AM_IF_OPTION([no-dependencies],, [AC_PROVIDE_IFELSE([AC_PROG_CC], [_AM_DEPENDENCIES([CC])], [m4_define([AC_PROG_CC], m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl AC_PROVIDE_IFELSE([AC_PROG_CXX], [_AM_DEPENDENCIES([CXX])], [m4_define([AC_PROG_CXX], m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl AC_PROVIDE_IFELSE([AC_PROG_OBJC], [_AM_DEPENDENCIES([OBJC])], [m4_define([AC_PROG_OBJC], m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl AC_PROVIDE_IFELSE([AC_PROG_OBJCXX], [_AM_DEPENDENCIES([OBJCXX])], [m4_define([AC_PROG_OBJCXX], m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl ]) # Variables for tags utilities; see am/tags.am if test -z "$CTAGS"; then CTAGS=ctags fi AC_SUBST([CTAGS]) if test -z "$ETAGS"; then ETAGS=etags fi AC_SUBST([ETAGS]) if test -z "$CSCOPE"; then CSCOPE=cscope fi AC_SUBST([CSCOPE]) AC_REQUIRE([_AM_SILENT_RULES])dnl dnl The testsuite driver may need to know about EXEEXT, so add the dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below. AC_CONFIG_COMMANDS_PRE(dnl [m4_provide_if([_AM_COMPILER_EXEEXT], [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl AC_REQUIRE([_AM_PROG_RM_F]) AC_REQUIRE([_AM_PROG_XARGS_N]) dnl The trailing newline in this macro's definition is deliberate, for dnl backward compatibility and to allow trailing 'dnl'-style comments dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841. ]) dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further dnl mangled by Autoconf and run in a shell conditional statement. m4_define([_AC_COMPILER_EXEEXT], m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) # When config.status generates a header, we must update the stamp-h file. # This file resides in the same directory as the config header # that is generated. The stamp files are numbered to have different names. # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the # loop where config.status creates the headers, so we can generate # our stamp files there. AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], [# Compute $1's index in $config_headers. _am_arg=$1 _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $_am_arg | $_am_arg:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) # Copyright (C) 2001-2024 Free Software Foundation, Inc. # # 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. # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl if test x"${install_sh+set}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; *) install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi AC_SUBST([install_sh])]) # Copyright (C) 2003-2024 Free Software Foundation, Inc. # # 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. # Check whether the underlying file-system supports filenames # with a leading dot. For instance MS-DOS doesn't. AC_DEFUN([AM_SET_LEADING_DOT], [rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null AC_SUBST([am__leading_dot])]) # Add --enable-maintainer-mode option to configure. -*- Autoconf -*- # From Jim Meyering # Copyright (C) 1996-2024 Free Software Foundation, Inc. # # 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. # AM_MAINTAINER_MODE([DEFAULT-MODE]) # ---------------------------------- # Control maintainer-specific portions of Makefiles. # Default is to disable them, unless 'enable' is passed literally. # For symmetry, 'disable' may be passed as well. Anyway, the user # can override the default with the --enable/--disable switch. AC_DEFUN([AM_MAINTAINER_MODE], [m4_case(m4_default([$1], [disable]), [enable], [m4_define([am_maintainer_other], [disable])], [disable], [m4_define([am_maintainer_other], [enable])], [m4_define([am_maintainer_other], [enable]) m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])]) AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) dnl maintainer-mode's default is 'disable' unless 'enable' is passed AC_ARG_ENABLE([maintainer-mode], [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode], am_maintainer_other[ make rules and dependencies not useful (and sometimes confusing) to the casual installer])], [USE_MAINTAINER_MODE=$enableval], [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes])) AC_MSG_RESULT([$USE_MAINTAINER_MODE]) AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes]) MAINT=$MAINTAINER_MODE_TRUE AC_SUBST([MAINT])dnl ] ) # Check to see how 'make' treats includes. -*- Autoconf -*- # Copyright (C) 2001-2024 Free Software Foundation, Inc. # # 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. # AM_MAKE_INCLUDE() # ----------------- # Check whether make has an 'include' directive that can support all # the idioms we need for our automatic dependency tracking code. AC_DEFUN([AM_MAKE_INCLUDE], [AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive]) cat > confinc.mk << 'END' am__doit: @echo this is the am__doit target >confinc.out .PHONY: am__doit END am__include="#" am__quote= # BSD make does it like this. echo '.include "confinc.mk" # ignored' > confmf.BSD # Other make implementations (GNU, Solaris 10, AIX) do it like this. echo 'include confinc.mk # ignored' > confmf.GNU _am_result=no for s in GNU BSD; do AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out]) AS_CASE([$?:`cat confinc.out 2>/dev/null`], ['0:this is the am__doit target'], [AS_CASE([$s], [BSD], [am__include='.include' am__quote='"'], [am__include='include' am__quote=''])]) if test "$am__include" != "#"; then _am_result="yes ($s style)" break fi done rm -f confinc.* confmf.* AC_MSG_RESULT([${_am_result}]) AC_SUBST([am__include])]) AC_SUBST([am__quote])]) # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- # Copyright (C) 1997-2024 Free Software Foundation, Inc. # # 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. # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ AC_DEFUN([AM_MISSING_PROG], [AC_REQUIRE([AM_MISSING_HAS_RUN]) $1=${$1-"${am_missing_run}$2"} AC_SUBST($1)]) # AM_MISSING_HAS_RUN # ------------------ # Define MISSING if not defined so far and test if it is modern enough. # If it is, set am_missing_run to use it, otherwise, to nothing. AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl AC_REQUIRE_AUX_FILE([missing])dnl if test x"${MISSING+set}" != xset; then MISSING="\${SHELL} '$am_aux_dir/missing'" fi # Use eval to expand $SHELL if eval "$MISSING --is-lightweight"; then am_missing_run="$MISSING " else am_missing_run= AC_MSG_WARN(['missing' script is too old or missing]) fi ]) # Helper functions for option handling. -*- Autoconf -*- # Copyright (C) 2001-2024 Free Software Foundation, Inc. # # 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. # _AM_MANGLE_OPTION(NAME) # ----------------------- AC_DEFUN([_AM_MANGLE_OPTION], [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) # _AM_SET_OPTION(NAME) # -------------------- # Set option NAME. Presently that only means defining a flag for this option. AC_DEFUN([_AM_SET_OPTION], [m4_define(_AM_MANGLE_OPTION([$1]), [1])]) # _AM_SET_OPTIONS(OPTIONS) # ------------------------ # OPTIONS is a space-separated list of Automake options. AC_DEFUN([_AM_SET_OPTIONS], [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) # ------------------------------------------- # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) # Copyright (C) 1999-2024 Free Software Foundation, Inc. # # 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. # _AM_PROG_CC_C_O # --------------- # Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC # to automatically call this. AC_DEFUN([_AM_PROG_CC_C_O], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl AC_REQUIRE_AUX_FILE([compile])dnl AC_LANG_PUSH([C])dnl AC_CACHE_CHECK( [whether $CC understands -c and -o together], [am_cv_prog_cc_c_o], [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])]) # Make sure it works both with $CC and with simple cc. # Following AC_PROG_CC_C_O, we do the test twice because some # compilers refuse to overwrite an existing .o file with -o, # though they will create one. am_cv_prog_cc_c_o=yes for am_i in 1 2; do if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \ && test -f conftest2.$ac_objext; then : OK else am_cv_prog_cc_c_o=no break fi done rm -f core conftest* unset am_i]) if test "$am_cv_prog_cc_c_o" != yes; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC="$am_aux_dir/compile $CC" fi AC_LANG_POP([C])]) # For backward compatibility. AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) # Copyright (C) 1999-2024 Free Software Foundation, Inc. # # 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. # AM_PATH_PYTHON([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # --------------------------------------------------------------------------- # Adds support for distributing Python modules and packages. To # install modules, copy them to $(pythondir), using the python_PYTHON # automake variable. To install a package with the same name as the # automake package, install to $(pkgpythondir), or use the # pkgpython_PYTHON automake variable. # # The variables $(pyexecdir) and $(pkgpyexecdir) are provided as # locations to install python extension modules (shared libraries). # Another macro is required to find the appropriate flags to compile # extension modules. # # If your package is configured with a different prefix to python, # users will have to add the install directory to the PYTHONPATH # environment variable, or create a .pth file (see the python # documentation for details). # # If the MINIMUM-VERSION argument is passed, AM_PATH_PYTHON will # cause an error if the version of python installed on the system # doesn't meet the requirement. MINIMUM-VERSION should consist of # numbers and dots only. AC_DEFUN([AM_PATH_PYTHON], [ dnl Find a Python interpreter. Python versions prior to 2.0 are not dnl supported. (2.0 was released on October 16, 2000). m4_define_default([_AM_PYTHON_INTERPRETER_LIST], [python python3 dnl python3.20 python3.19 python3.18 python3.17 python3.16 dnl python3.15 python3.14 python3.13 python3.12 python3.11 python3.10 dnl python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 dnl python3.2 python3.1 python3.0 dnl python2 dnl python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 dnl python2.0]) AC_ARG_VAR([PYTHON], [the Python interpreter]) m4_if([$1],[],[ dnl No version check is needed. # Find any Python interpreter. if test -z "$PYTHON"; then AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST, :) fi am_display_PYTHON=python ], [ dnl A version check is needed. if test -n "$PYTHON"; then # If the user set $PYTHON, use it and don't search something else. AC_MSG_CHECKING([whether $PYTHON version is >= $1]) AM_PYTHON_CHECK_VERSION([$PYTHON], [$1], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]) AC_MSG_ERROR([Python interpreter is too old])]) am_display_PYTHON=$PYTHON else # Otherwise, try each interpreter until we find one that satisfies # VERSION. AC_CACHE_CHECK([for a Python interpreter with version >= $1], [am_cv_pathless_PYTHON],[ for am_cv_pathless_PYTHON in _AM_PYTHON_INTERPRETER_LIST none; do test "$am_cv_pathless_PYTHON" = none && break AM_PYTHON_CHECK_VERSION([$am_cv_pathless_PYTHON], [$1], [break]) done]) # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON. if test "$am_cv_pathless_PYTHON" = none; then PYTHON=: else AC_PATH_PROG([PYTHON], [$am_cv_pathless_PYTHON]) fi am_display_PYTHON=$am_cv_pathless_PYTHON fi ]) if test "$PYTHON" = :; then dnl Run any user-specified action, or abort. m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])]) else dnl Query Python for its version number. Although site.py simply uses dnl sys.version[:3], printing that failed with Python 3.10, since the dnl trailing zero was eliminated. So now we output just the major dnl and minor version numbers, as numbers. Apparently the tertiary dnl version is not of interest. dnl AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version], [am_cv_python_version=`$PYTHON -c "import sys; print ('%u.%u' % sys.version_info[[:2]])"`]) AC_SUBST([PYTHON_VERSION], [$am_cv_python_version]) dnl At times, e.g., when building shared libraries, you may want dnl to know which OS platform Python thinks this is. dnl AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform], [am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`]) AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform]) dnl emacs-page dnl If --with-python-sys-prefix is given, use the values of sys.prefix dnl and sys.exec_prefix for the corresponding values of PYTHON_PREFIX dnl and PYTHON_EXEC_PREFIX. Otherwise, use the GNU ${prefix} and dnl ${exec_prefix} variables. dnl dnl The two are made distinct variables so they can be overridden if dnl need be, although general consensus is that you shouldn't need dnl this separation. dnl dnl Also allow directly setting the prefixes via configure options, dnl overriding any default. dnl if test "x$prefix" = xNONE; then am__usable_prefix=$ac_default_prefix else am__usable_prefix=$prefix fi # Allow user to request using sys.* values from Python, # instead of the GNU $prefix values. AC_ARG_WITH([python-sys-prefix], [AS_HELP_STRING([--with-python-sys-prefix], [use Python's sys.prefix and sys.exec_prefix values])], [am_use_python_sys=:], [am_use_python_sys=false]) # Allow user to override whatever the default Python prefix is. AC_ARG_WITH([python_prefix], [AS_HELP_STRING([--with-python_prefix], [override the default PYTHON_PREFIX])], [am_python_prefix_subst=$withval am_cv_python_prefix=$withval AC_MSG_CHECKING([for explicit $am_display_PYTHON prefix]) AC_MSG_RESULT([$am_cv_python_prefix])], [ if $am_use_python_sys; then # using python sys.prefix value, not GNU AC_CACHE_CHECK([for python default $am_display_PYTHON prefix], [am_cv_python_prefix], [am_cv_python_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.prefix)"`]) dnl If sys.prefix is a subdir of $prefix, replace the literal value of dnl $prefix with a variable reference so it can be overridden. case $am_cv_python_prefix in $am__usable_prefix*) am__strip_prefix=`echo "$am__usable_prefix" | sed 's|.|.|g'` am_python_prefix_subst=`echo "$am_cv_python_prefix" | sed "s,^$am__strip_prefix,\\${prefix},"` ;; *) am_python_prefix_subst=$am_cv_python_prefix ;; esac else # using GNU prefix value, not python sys.prefix am_python_prefix_subst='${prefix}' am_python_prefix=$am_python_prefix_subst AC_MSG_CHECKING([for GNU default $am_display_PYTHON prefix]) AC_MSG_RESULT([$am_python_prefix]) fi]) # Substituting python_prefix_subst value. AC_SUBST([PYTHON_PREFIX], [$am_python_prefix_subst]) # emacs-page Now do it all over again for Python exec_prefix, but with yet # another conditional: fall back to regular prefix if that was specified. AC_ARG_WITH([python_exec_prefix], [AS_HELP_STRING([--with-python_exec_prefix], [override the default PYTHON_EXEC_PREFIX])], [am_python_exec_prefix_subst=$withval am_cv_python_exec_prefix=$withval AC_MSG_CHECKING([for explicit $am_display_PYTHON exec_prefix]) AC_MSG_RESULT([$am_cv_python_exec_prefix])], [ # no explicit --with-python_exec_prefix, but if # --with-python_prefix was given, use its value for python_exec_prefix too. AS_IF([test -n "$with_python_prefix"], [am_python_exec_prefix_subst=$with_python_prefix am_cv_python_exec_prefix=$with_python_prefix AC_MSG_CHECKING([for python_prefix-given $am_display_PYTHON exec_prefix]) AC_MSG_RESULT([$am_cv_python_exec_prefix])], [ # Set am__usable_exec_prefix whether using GNU or Python values, # since we use that variable for pyexecdir. if test "x$exec_prefix" = xNONE; then am__usable_exec_prefix=$am__usable_prefix else am__usable_exec_prefix=$exec_prefix fi # if $am_use_python_sys; then # using python sys.exec_prefix, not GNU AC_CACHE_CHECK([for python default $am_display_PYTHON exec_prefix], [am_cv_python_exec_prefix], [am_cv_python_exec_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.exec_prefix)"`]) dnl If sys.exec_prefix is a subdir of $exec_prefix, replace the dnl literal value of $exec_prefix with a variable reference so it can dnl be overridden. case $am_cv_python_exec_prefix in $am__usable_exec_prefix*) am__strip_prefix=`echo "$am__usable_exec_prefix" | sed 's|.|.|g'` am_python_exec_prefix_subst=`echo "$am_cv_python_exec_prefix" | sed "s,^$am__strip_prefix,\\${exec_prefix},"` ;; *) am_python_exec_prefix_subst=$am_cv_python_exec_prefix ;; esac else # using GNU $exec_prefix, not python sys.exec_prefix am_python_exec_prefix_subst='${exec_prefix}' am_python_exec_prefix=$am_python_exec_prefix_subst AC_MSG_CHECKING([for GNU default $am_display_PYTHON exec_prefix]) AC_MSG_RESULT([$am_python_exec_prefix]) fi])]) # Substituting python_exec_prefix_subst. AC_SUBST([PYTHON_EXEC_PREFIX], [$am_python_exec_prefix_subst]) # Factor out some code duplication into this shell variable. am_python_setup_sysconfig="\ import sys # Prefer sysconfig over distutils.sysconfig, for better compatibility # with python 3.x. See automake bug#10227. try: import sysconfig except ImportError: can_use_sysconfig = 0 else: can_use_sysconfig = 1 # Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs: # try: from platform import python_implementation if python_implementation() == 'CPython' and sys.version[[:3]] == '2.7': can_use_sysconfig = 0 except ImportError: pass" # end of am_python_setup_sysconfig # More repeated code, for figuring out the installation scheme to use. am_python_setup_scheme="if hasattr(sysconfig, 'get_default_scheme'): scheme = sysconfig.get_default_scheme() else: scheme = sysconfig._get_default_scheme() if scheme == 'posix_local': if '$am_py_prefix' == '/usr': scheme = 'deb_system' # should only happen during Debian package builds else: # Debian's default scheme installs to /usr/local/ but we want to # follow the prefix, as we always have. # See bugs#54412, #64837, et al. scheme = 'posix_prefix'" # end of am_python_setup_scheme dnl emacs-page Set up 4 directories: dnl 1. pythondir: where to install python scripts. This is the dnl site-packages directory, not the python standard library dnl directory as in early automake betas. This behavior dnl is more consistent with lispdir.m4 for example. dnl Query sysconfig or distutils (per above) for this directory. dnl AC_CACHE_CHECK([for $am_display_PYTHON script directory (pythondir)], [am_cv_python_pythondir], [if test "x$am_cv_python_prefix" = x; then am_py_prefix=$am__usable_prefix else am_py_prefix=$am_cv_python_prefix fi am_cv_python_pythondir=`$PYTHON -c " $am_python_setup_sysconfig if can_use_sysconfig: try: $am_python_setup_scheme sitedir = sysconfig.get_path('purelib', scheme, vars={'base':'$am_py_prefix'}) except: sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'}) else: from distutils import sysconfig sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix') sys.stdout.write(sitedir)"` # case $am_cv_python_pythondir in $am_py_prefix*) am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'` am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,\\${PYTHON_PREFIX},"` ;; *) case $am_py_prefix in /usr|/System*) ;; *) am_cv_python_pythondir="\${PYTHON_PREFIX}/lib/python$PYTHON_VERSION/site-packages" ;; esac ;; esac ]) AC_SUBST([pythondir], [$am_cv_python_pythondir]) dnl 2. pkgpythondir: $PACKAGE directory under pythondir. Was dnl PYTHON_SITE_PACKAGE in previous betas, but this naming is dnl more consistent with the rest of automake. dnl AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE]) dnl 3. pyexecdir: directory for installing python extension modules dnl (shared libraries). dnl Query sysconfig or distutils for this directory. dnl Much of this is the same as for prefix setup above. dnl AC_CACHE_CHECK([for $am_display_PYTHON extension module directory (pyexecdir)], [am_cv_python_pyexecdir], [if test "x$am_cv_python_exec_prefix" = x; then am_py_exec_prefix=$am__usable_exec_prefix else am_py_exec_prefix=$am_cv_python_exec_prefix fi am_cv_python_pyexecdir=`$PYTHON -c " $am_python_setup_sysconfig if can_use_sysconfig: try: $am_python_setup_scheme sitedir = sysconfig.get_path('platlib', scheme, vars={'platbase':'$am_py_exec_prefix'}) except: sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_exec_prefix'}) else: from distutils import sysconfig sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_exec_prefix') sys.stdout.write(sitedir)"` # case $am_cv_python_pyexecdir in $am_py_exec_prefix*) am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'` am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,\\${PYTHON_EXEC_PREFIX},"` ;; *) case $am_py_exec_prefix in /usr|/System*) ;; *) am_cv_python_pyexecdir="\${PYTHON_EXEC_PREFIX}/lib/python$PYTHON_VERSION/site-packages" ;; esac ;; esac ]) AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir]) dnl 4. pkgpyexecdir: $(pyexecdir)/$(PACKAGE) dnl AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE]) dnl Run any user-specified action. $2 fi ]) # AM_PYTHON_CHECK_VERSION(PROG, VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE]) # --------------------------------------------------------------------------- # Run ACTION-IF-TRUE if the Python interpreter PROG has version >= VERSION. # Run ACTION-IF-FALSE otherwise. # This test uses sys.hexversion instead of the string equivalent (first # word of sys.version), in order to cope with versions such as 2.2c1. # This supports Python 2.0 or higher. (2.0 was released on October 16, 2000). AC_DEFUN([AM_PYTHON_CHECK_VERSION], [prog="import sys # split strings by '.' and convert to numeric. Append some zeros # because we need at least 4 digits for the hex conversion. # map returns an iterator in Python 3.0 and a list in 2.x minver = list(map(int, '$2'.split('.'))) + [[0, 0, 0]] minverhex = 0 # xrange is not present in Python 3.0 and range returns an iterator for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]] sys.exit(sys.hexversion < minverhex)" AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])]) # Copyright (C) 2022-2024 Free Software Foundation, Inc. # # 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. # _AM_PROG_RM_F # --------------- # Check whether 'rm -f' without any arguments works. # https://bugs.gnu.org/10828 AC_DEFUN([_AM_PROG_RM_F], [am__rm_f_notfound= AS_IF([(rm -f && rm -fr && rm -rf) 2>/dev/null], [], [am__rm_f_notfound='""']) AC_SUBST(am__rm_f_notfound) ]) # Copyright (C) 2001-2024 Free Software Foundation, Inc. # # 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. # AM_RUN_LOG(COMMAND) # ------------------- # Run COMMAND, save the exit status in ac_status, and log it. # (This has been adapted from Autoconf's _AC_RUN_LOG macro.) AC_DEFUN([AM_RUN_LOG], [{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD (exit $ac_status); }]) # Check to make sure that the build environment is sane. -*- Autoconf -*- # Copyright (C) 1996-2024 Free Software Foundation, Inc. # # 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. # _AM_SLEEP_FRACTIONAL_SECONDS # ---------------------------- AC_DEFUN([_AM_SLEEP_FRACTIONAL_SECONDS], [dnl AC_CACHE_CHECK([whether sleep supports fractional seconds], am_cv_sleep_fractional_seconds, [dnl AS_IF([sleep 0.001 2>/dev/null], [am_cv_sleep_fractional_seconds=yes], [am_cv_sleep_fractional_seconds=no]) ])]) # _AM_FILESYSTEM_TIMESTAMP_RESOLUTION # ----------------------------------- # Determine the filesystem's resolution for file modification # timestamps. The coarsest we know of is FAT, with a resolution # of only two seconds, even with the most recent "exFAT" extensions. # The finest (e.g. ext4 with large inodes, XFS, ZFS) is one # nanosecond, matching clock_gettime. However, it is probably not # possible to delay execution of a shell script for less than one # millisecond, due to process creation overhead and scheduling # granularity, so we don't check for anything finer than that. (See below.) AC_DEFUN([_AM_FILESYSTEM_TIMESTAMP_RESOLUTION], [dnl AC_REQUIRE([_AM_SLEEP_FRACTIONAL_SECONDS]) AC_CACHE_CHECK([filesystem timestamp resolution], am_cv_filesystem_timestamp_resolution, [dnl # Default to the worst case. am_cv_filesystem_timestamp_resolution=2 # Only try to go finer than 1 sec if sleep can do it. # Don't try 1 sec, because if 0.01 sec and 0.1 sec don't work, # - 1 sec is not much of a win compared to 2 sec, and # - it takes 2 seconds to perform the test whether 1 sec works. # # Instead, just use the default 2s on platforms that have 1s resolution, # accept the extra 1s delay when using $sleep in the Automake tests, in # exchange for not incurring the 2s delay for running the test for all # packages. # am_try_resolutions= if test "$am_cv_sleep_fractional_seconds" = yes; then # Even a millisecond often causes a bunch of false positives, # so just try a hundredth of a second. The time saved between .001 and # .01 is not terribly consequential. am_try_resolutions="0.01 0.1 $am_try_resolutions" fi # In order to catch current-generation FAT out, we must *modify* files # that already exist; the *creation* timestamp is finer. Use names # that make ls -t sort them differently when they have equal # timestamps than when they have distinct timestamps, keeping # in mind that ls -t prints the *newest* file first. rm -f conftest.ts? : > conftest.ts1 : > conftest.ts2 : > conftest.ts3 # Make sure ls -t actually works. Do 'set' in a subshell so we don't # clobber the current shell's arguments. (Outer-level square brackets # are removed by m4; they're present so that m4 does not expand # ; be careful, easy to get confused.) if ( set X `[ls -t conftest.ts[12]]` && { test "$[]*" != "X conftest.ts1 conftest.ts2" || test "$[]*" != "X conftest.ts2 conftest.ts1"; } ); then :; else # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". _AS_ECHO_UNQUOTED( ["Bad output from ls -t: \"`[ls -t conftest.ts[12]]`\""], [AS_MESSAGE_LOG_FD]) AC_MSG_FAILURE([ls -t produces unexpected output. Make sure there is not a broken ls alias in your environment.]) fi for am_try_res in $am_try_resolutions; do # Any one fine-grained sleep might happen to cross the boundary # between two values of a coarser actual resolution, but if we do # two fine-grained sleeps in a row, at least one of them will fall # entirely within a coarse interval. echo alpha > conftest.ts1 sleep $am_try_res echo beta > conftest.ts2 sleep $am_try_res echo gamma > conftest.ts3 # We assume that 'ls -t' will make use of high-resolution # timestamps if the operating system supports them at all. if (set X `ls -t conftest.ts?` && test "$[]2" = conftest.ts3 && test "$[]3" = conftest.ts2 && test "$[]4" = conftest.ts1); then # # Ok, ls -t worked. If we're at a resolution of 1 second, we're done, # because we don't need to test make. make_ok=true if test $am_try_res != 1; then # But if we've succeeded so far with a subsecond resolution, we # have one more thing to check: make. It can happen that # everything else supports the subsecond mtimes, but make doesn't; # notably on macOS, which ships make 3.81 from 2006 (the last one # released under GPLv2). https://bugs.gnu.org/68808 # # We test $MAKE if it is defined in the environment, else "make". # It might get overridden later, but our hope is that in practice # it does not matter: it is the system "make" which is (by far) # the most likely to be broken, whereas if the user overrides it, # probably they did so with a better, or at least not worse, make. # https://lists.gnu.org/archive/html/automake/2024-06/msg00051.html # # Create a Makefile (real tab character here): rm -f conftest.mk echo 'conftest.ts1: conftest.ts2' >conftest.mk echo ' touch conftest.ts2' >>conftest.mk # # Now, running # touch conftest.ts1; touch conftest.ts2; make # should touch ts1 because ts2 is newer. This could happen by luck, # but most often, it will fail if make's support is insufficient. So # test for several consecutive successes. # # (We reuse conftest.ts[12] because we still want to modify existing # files, not create new ones, per above.) n=0 make=${MAKE-make} until test $n -eq 3; do echo one > conftest.ts1 sleep $am_try_res echo two > conftest.ts2 # ts2 should now be newer than ts1 if $make -f conftest.mk | grep 'up to date' >/dev/null; then make_ok=false break # out of $n loop fi n=`expr $n + 1` done fi # if $make_ok; then # Everything we know to check worked out, so call this resolution good. am_cv_filesystem_timestamp_resolution=$am_try_res break # out of $am_try_res loop fi # Otherwise, we'll go on to check the next resolution. fi done rm -f conftest.ts? # (end _am_filesystem_timestamp_resolution) ])]) # AM_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], [AC_REQUIRE([_AM_FILESYSTEM_TIMESTAMP_RESOLUTION]) # This check should not be cached, as it may vary across builds of # different projects. AC_MSG_CHECKING([whether build environment is sane]) # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' ' case `pwd` in *[[\\\"\#\$\&\'\`$am_lf]]*) AC_MSG_ERROR([unsafe absolute working directory name]);; esac case $srcdir in *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);; esac # Do 'set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). am_build_env_is_sane=no am_has_slept=no rm -f conftest.file for am_try in 1 2; do echo "timestamp, slept: $am_has_slept" > conftest.file if ( set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$[]*" = "X"; then # -L didn't work. set X `ls -t "$srcdir/configure" conftest.file` fi test "$[]2" = conftest.file ); then am_build_env_is_sane=yes break fi # Just in case. sleep "$am_cv_filesystem_timestamp_resolution" am_has_slept=yes done AC_MSG_RESULT([$am_build_env_is_sane]) if test "$am_build_env_is_sane" = no; then AC_MSG_ERROR([newly created file is older than distributed files! Check your system clock]) fi # If we didn't sleep, we still need to ensure time stamps of config.status and # generated files are strictly newer. am_sleep_pid= AS_IF([test -e conftest.file || grep 'slept: no' conftest.file >/dev/null 2>&1],, [dnl ( sleep "$am_cv_filesystem_timestamp_resolution" ) & am_sleep_pid=$! ]) AC_CONFIG_COMMANDS_PRE( [AC_MSG_CHECKING([that generated files are newer than configure]) if test -n "$am_sleep_pid"; then # Hide warnings about reused PIDs. wait $am_sleep_pid 2>/dev/null fi AC_MSG_RESULT([done])]) rm -f conftest.file ]) # Copyright (C) 2009-2024 Free Software Foundation, Inc. # # 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. # _AM_SILENT_RULES # ---------------- # Enable less verbose build rules support. AC_DEFUN([_AM_SILENT_RULES], [AM_DEFAULT_VERBOSITY=1 AC_ARG_ENABLE([silent-rules], [dnl AS_HELP_STRING( [--enable-silent-rules], [less verbose build output (undo: "make V=1")]) AS_HELP_STRING( [--disable-silent-rules], [verbose build output (undo: "make V=0")])dnl ]) dnl dnl A few 'make' implementations (e.g., NonStop OS and NextStep) dnl do not support nested variable expansions. dnl See automake bug#9928 and bug#10237. am_make=${MAKE-make} AC_CACHE_CHECK([whether $am_make supports nested variables], [am_cv_make_support_nested_variables], [if AS_ECHO([['TRUE=$(BAR$(V)) BAR0=false BAR1=true V=1 am__doit: @$(TRUE) .PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then am_cv_make_support_nested_variables=yes else am_cv_make_support_nested_variables=no fi]) AC_SUBST([AM_V])dnl AM_SUBST_NOTMAKE([AM_V])dnl AC_SUBST([AM_DEFAULT_V])dnl AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl AC_SUBST([AM_DEFAULT_VERBOSITY])dnl AM_BACKSLASH='\' AC_SUBST([AM_BACKSLASH])dnl _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl dnl Delay evaluation of AM_DEFAULT_VERBOSITY to the end to allow multiple calls dnl to AM_SILENT_RULES to change the default value. AC_CONFIG_COMMANDS_PRE([dnl case $enable_silent_rules in @%:@ ((( yes) AM_DEFAULT_VERBOSITY=0;; no) AM_DEFAULT_VERBOSITY=1;; esac if test $am_cv_make_support_nested_variables = yes; then dnl Using '$V' instead of '$(V)' breaks IRIX make. AM_V='$(V)' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' else AM_V=$AM_DEFAULT_VERBOSITY AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY fi ])dnl ]) # AM_SILENT_RULES([DEFAULT]) # -------------------------- # Set the default verbosity level to DEFAULT ("yes" being less verbose, "no" or # empty being verbose). AC_DEFUN([AM_SILENT_RULES], [AC_REQUIRE([_AM_SILENT_RULES]) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1])]) # Copyright (C) 2001-2024 Free Software Foundation, Inc. # # 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. # AM_PROG_INSTALL_STRIP # --------------------- # One issue with vendor 'install' (even GNU) is that you can't # specify the program used to strip binaries. This is especially # annoying in cross-compiling environments, where the build's strip # is unlikely to handle the host's binaries. # Fortunately install-sh will honor a STRIPPROG variable, so we # always use install-sh in "make install-strip", and initialize # STRIPPROG with the value of the STRIP variable (set by the user). AC_DEFUN([AM_PROG_INSTALL_STRIP], [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl # Installed binaries are usually stripped using 'strip' when the user # run "make install-strip". However 'strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the 'STRIP' environment variable to overrule this program. dnl Don't test for $cross_compiling = yes, because it might be 'maybe'. if test "$cross_compiling" != no; then AC_CHECK_TOOL([STRIP], [strip], :) fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) # Copyright (C) 2006-2024 Free Software Foundation, Inc. # # 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. # _AM_SUBST_NOTMAKE(VARIABLE) # --------------------------- # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. # This macro is traced by Automake. AC_DEFUN([_AM_SUBST_NOTMAKE]) # AM_SUBST_NOTMAKE(VARIABLE) # -------------------------- # Public sister of _AM_SUBST_NOTMAKE. AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) # Check how to create a tarball. -*- Autoconf -*- # Copyright (C) 2004-2024 Free Software Foundation, Inc. # # 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. # _AM_PROG_TAR(FORMAT) # -------------------- # Check how to create a tarball in format FORMAT. # FORMAT should be one of 'v7', 'ustar', or 'pax'. # # Substitute a variable $(am__tar) that is a command # writing to stdout a FORMAT-tarball containing the directory # $tardir. # tardir=directory && $(am__tar) > result.tar # # Substitute a variable $(am__untar) that extract such # a tarball read from stdin. # $(am__untar) < result.tar # AC_DEFUN([_AM_PROG_TAR], [# Always define AMTAR for backward compatibility. Yes, it's still used # in the wild :-( We should find a proper way to deprecate it ... AC_SUBST([AMTAR], ['$${TAR-tar}']) # We'll loop over all known methods to create a tar archive until one works. _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' m4_if([$1], [v7], [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], [m4_case([$1], [ustar], [# The POSIX 1988 'ustar' format is defined with fixed-size fields. # There is notably a 21 bits limit for the UID and the GID. In fact, # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343 # and bug#13588). am_max_uid=2097151 # 2^21 - 1 am_max_gid=$am_max_uid # The $UID and $GID variables are not portable, so we need to resort # to the POSIX-mandated id(1) utility. Errors in the 'id' calls # below are definitely unexpected, so allow the users to see them # (that is, avoid stderr redirection). am_uid=`id -u || echo unknown` am_gid=`id -g || echo unknown` AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format]) if test x$am_uid = xunknown; then AC_MSG_WARN([ancient id detected; assuming current UID is ok, but dist-ustar might not work]) elif test $am_uid -le $am_max_uid; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) _am_tools=none fi AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format]) if test x$gm_gid = xunknown; then AC_MSG_WARN([ancient id detected; assuming current GID is ok, but dist-ustar might not work]) elif test $am_gid -le $am_max_gid; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) _am_tools=none fi], [pax], [], [m4_fatal([Unknown tar format])]) AC_MSG_CHECKING([how to create a $1 tar archive]) # Go ahead even if we have the value already cached. We do so because we # need to set the values for the 'am__tar' and 'am__untar' variables. _am_tools=${am_cv_prog_tar_$1-$_am_tools} for _am_tool in $_am_tools; do case $_am_tool in gnutar) for _am_tar in tar gnutar gtar; do AM_RUN_LOG([$_am_tar --version]) && break done am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' am__untar="$_am_tar -xf -" ;; plaintar) # Must skip GNU tar: if it does not support --format= it doesn't create # ustar tarball either. (tar --version) >/dev/null 2>&1 && continue am__tar='tar chf - "$$tardir"' am__tar_='tar chf - "$tardir"' am__untar='tar xf -' ;; pax) am__tar='pax -L -x $1 -w "$$tardir"' am__tar_='pax -L -x $1 -w "$tardir"' am__untar='pax -r' ;; cpio) am__tar='find "$$tardir" -print | cpio -o -H $1 -L' am__tar_='find "$tardir" -print | cpio -o -H $1 -L' am__untar='cpio -i -H $1 -d' ;; none) am__tar=false am__tar_=false am__untar=false ;; esac # If the value was cached, stop now. We just wanted to have am__tar # and am__untar set. test -n "${am_cv_prog_tar_$1}" && break # tar/untar a dummy directory, and stop if the command works. rm -rf conftest.dir mkdir conftest.dir echo GrepMe > conftest.dir/file AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) rm -rf conftest.dir if test -s conftest.tar; then AM_RUN_LOG([$am__untar /dev/null 2>&1 && break fi done rm -rf conftest.dir AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) AC_MSG_RESULT([$am_cv_prog_tar_$1])]) AC_SUBST([am__tar]) AC_SUBST([am__untar]) ]) # _AM_PROG_TAR # Autoconf support for the Vala compiler # Copyright (C) 2008-2024 Free Software Foundation, Inc. # # 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. # Search for a Vala compiler in PATH. If it is found, the variable VALAC is # set to point to it. Otherwise, it is simply set to 'valac'. This macro # takes three optional arguments. The first argument, if present, is the # minimum version of the Vala API required to compile this package. For Vala # releases, this is the same as the major and minor release number; e.g., when # `valac --version' reports 0.48.7, `valac --api-version' reports 0.48. If a # compiler is found and satisfies MINIMUM-VERSION, then ACTION-IF-FOUND is run # (this defaults to do nothing). Otherwise, ACTION-IF-NOT-FOUND is run. If # ACTION-IF-NOT-FOUND is not specified, the default value is to print a # warning in case no compiler is found, or if a too-old version of the # compiler is found. # # AM_PROG_VALAC([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # -------------------------------------------------------------------------- AC_DEFUN([AM_PROG_VALAC], [AC_PATH_PROG([VALAC], [valac], [valac]) AS_IF([test "$VALAC" != valac && test -n "$1"], [AC_MSG_CHECKING([whether $VALAC supports at least API version $1]) am__vala_version=`$VALAC --api-version` AS_VERSION_COMPARE([$1], ["$am__vala_version"], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]) VALAC=valac])]) if test "$VALAC" = valac; then m4_default([$3], [AC_MSG_WARN([Vala compiler not found or too old]) AC_MSG_WARN([you will not be able to compile Vala source files])]) else m4_default([$2], [:]) fi]) # Copyright (C) 2022-2024 Free Software Foundation, Inc. # # 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. # _AM_PROG_XARGS_N # ---------------- # Check whether 'xargs -n' works. It should work everywhere, so the fallback # is not optimized at all as we never expect to use it. AC_DEFUN([_AM_PROG_XARGS_N], [AC_CACHE_CHECK([xargs -n works], am_cv_xargs_n_works, [dnl AS_IF([test "`echo 1 2 3 | xargs -n2 echo`" = "1 2 3"], [am_cv_xargs_n_works=yes], [am_cv_xargs_n_works=no])]) AS_IF([test "$am_cv_xargs_n_works" = yes], [am__xargs_n='xargs -n'], [dnl am__xargs_n='am__xargs_n () { shift; sed "s/ /\\n/g" | while read am__xargs_n_arg; do "$@" "$am__xargs_n_arg"; done; }' ])dnl AC_SUBST(am__xargs_n) ]) m4_include([m4/ax_prog_cc_for_build.m4]) m4_include([m4/gettext.m4]) m4_include([m4/gtk-doc.m4]) m4_include([m4/ibuslocale.m4]) m4_include([m4/iconv.m4]) m4_include([m4/intlmacosx.m4]) m4_include([m4/introspection.m4]) m4_include([m4/lib-ld.m4]) m4_include([m4/lib-link.m4]) m4_include([m4/lib-prefix.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]) m4_include([m4/nls.m4]) m4_include([m4/pkg_config_for_build.m4]) m4_include([m4/po.m4]) m4_include([m4/progtest.m4]) m4_include([m4/vapigen.m4]) ibus-1.5.32/Makefile.in0000644000000000000000000011416314775216752010266 # Makefile.in generated by automake 1.17 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2024 Free Software Foundation, Inc. # This Makefile.in 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. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ # vim:set noet ts=4: # # ibus - The Input Bus # # Copyright (c) 2007-2016 Peng Huang # Copyright (c) 2015-2019 Takao Fujiwara # Copyright (c) 2007-2019 Red Hat, Inc. # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library 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 # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 # USA VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) am__rm_f = rm -f $(am__rm_f_notfound) am__rm_rf = rm -rf $(am__rm_f_notfound) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/ax_prog_cc_for_build.m4 \ $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gtk-doc.m4 \ $(top_srcdir)/m4/ibuslocale.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/intlmacosx.m4 \ $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/lib-ld.m4 \ $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.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)/m4/nls.m4 \ $(top_srcdir)/m4/pkg_config_for_build.m4 \ $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ $(top_srcdir)/m4/vapigen.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ $(am__configure_deps) $(am__DIST_COMMON) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno config.status.lineno mkinstalldirs = $(install_sh) -d CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = ibus-1.0.pc ibus.spec CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ ctags-recursive dvi-recursive html-recursive info-recursive \ install-data-recursive install-dvi-recursive \ install-exec-recursive install-html-recursive \ install-info-recursive install-pdf-recursive \ install-ps-recursive install-recursive installcheck-recursive \ installdirs-recursive pdf-recursive ps-recursive \ tags-recursive uninstall-recursive am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && echo $$files | $(am__xargs_n) 40 $(am__rm_f); }; \ } am__installdirs = "$(DESTDIR)$(pkgconfigdir)" DATA = $(pkgconfig_DATA) RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive am__recursive_targets = \ $(RECURSIVE_TARGETS) \ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ cscope distdir distdir-am dist dist-all distcheck am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \ config.h.in # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is # *not* preserved. am__uniquify_input = $(AWK) '\ BEGIN { nonempty = 0; } \ { items[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in items) print i; }; } \ ' # Make sure the list of sources is unique. This is necessary because, # e.g., the same source file might be shared among _SOURCES variables # for different programs/libraries. am__define_uniq_tagged_files = \ list='$(am__tagged_files)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` DIST_SUBDIRS = src bindings util conf client portal data m4 po engine \ ui tools bus ibus setup docs am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \ $(srcdir)/ibus-1.0.pc.in $(srcdir)/ibus.spec.in ABOUT-NLS \ AUTHORS COPYING ChangeLog INSTALL NEWS README compile \ config.guess config.rpath config.sub install-sh ltmain.sh \ missing DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) am__remove_distdir = \ if test -d "$(distdir)"; then \ find "$(distdir)" -type d ! -perm -700 -exec chmod u+rwx {} ';' \ ; rm -rf "$(distdir)" \ || { sleep 5 && rm -rf "$(distdir)"; }; \ else :; fi am__post_remove_distdir = $(am__remove_distdir) am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = -9 DIST_TARGETS = dist-gzip # Exists only to be overridden by the user if desired. AM_DISTCHECK_DVI_TARGET = dvi distuninstallcheck_listfiles = find . -type f -print am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' distcleancheck_listfiles = \ find . \( -type f -a \! \ \( -name .nfs* -o -name .smb* -o -name .__afs* \) \) -print ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BUILD_EXEEXT = @BUILD_EXEEXT@ BUILD_OBJEXT = @BUILD_OBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CC_FOR_BUILD = @CC_FOR_BUILD@ CFLAGS = @CFLAGS@ CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@ CPP_FOR_BUILD = @CPP_FOR_BUILD@ CSCOPE = @CSCOPE@ CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DATE_DISPLAY = @DATE_DISPLAY@ DBUSMENU_GLIB_CFLAGS = @DBUSMENU_GLIB_CFLAGS@ DBUSMENU_GLIB_LIBS = @DBUSMENU_GLIB_LIBS@ DBUSMENU_GTK3_CFLAGS = @DBUSMENU_GTK3_CFLAGS@ DBUSMENU_GTK3_LIBS = @DBUSMENU_GTK3_LIBS@ DBUS_CFLAGS = @DBUS_CFLAGS@ DBUS_LIBS = @DBUS_LIBS@ DBUS_PYTHON_CFLAGS = @DBUS_PYTHON_CFLAGS@ DBUS_PYTHON_LIBS = @DBUS_PYTHON_LIBS@ DCONF_CFLAGS = @DCONF_CFLAGS@ DCONF_LIBS = @DCONF_LIBS@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EMOJI_ANNOTATION_DIR = @EMOJI_ANNOTATION_DIR@ ENDIAN = @ENDIAN@ ENV_IBUS_TEST = @ENV_IBUS_TEST@ ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FILECMD = @FILECMD@ GDBUS_CODEGEN = @GDBUS_CODEGEN@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIO2_CFLAGS = @GIO2_CFLAGS@ GIO2_LIBS = @GIO2_LIBS@ GLIB2_CFLAGS = @GLIB2_CFLAGS@ GLIB2_LIBS = @GLIB2_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_CFLAGS_FOR_BUILD = @GLIB_CFLAGS_FOR_BUILD@ GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@ GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_LIBS = @GLIB_LIBS@ GLIB_LIBS_FOR_BUILD = @GLIB_LIBS_FOR_BUILD@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMSGFMT = @GMSGFMT@ GMSGFMT_015 = @GMSGFMT_015@ GOBJECT2_CFLAGS = @GOBJECT2_CFLAGS@ GOBJECT2_LIBS = @GOBJECT2_LIBS@ GOBJECT_QUERY = @GOBJECT_QUERY@ GREP = @GREP@ GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@ GTHREAD2_CFLAGS = @GTHREAD2_CFLAGS@ GTHREAD2_LIBS = @GTHREAD2_LIBS@ GTK2_CFLAGS = @GTK2_CFLAGS@ GTK2_IM_MODULEDIR = @GTK2_IM_MODULEDIR@ GTK2_LIBS = @GTK2_LIBS@ GTK3_CFLAGS = @GTK3_CFLAGS@ GTK3_IM_MODULEDIR = @GTK3_IM_MODULEDIR@ GTK3_LIBS = @GTK3_LIBS@ GTK4_CFLAGS = @GTK4_CFLAGS@ GTK4_IM_MODULEDIR = @GTK4_IM_MODULEDIR@ GTK4_LIBS = @GTK4_LIBS@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ IBUS_ABI_AGE = @IBUS_ABI_AGE@ IBUS_ABI_CURRENT = @IBUS_ABI_CURRENT@ IBUS_ABI_REVISION = @IBUS_ABI_REVISION@ IBUS_API_VERSION = @IBUS_API_VERSION@ IBUS_BINARY_VERSION = @IBUS_BINARY_VERSION@ IBUS_GIR_SCANNERFLAGS = @IBUS_GIR_SCANNERFLAGS@ IBUS_ICON_KEYBOARD = @IBUS_ICON_KEYBOARD@ IBUS_MAJOR_VERSION = @IBUS_MAJOR_VERSION@ IBUS_MICRO_VERSION = @IBUS_MICRO_VERSION@ IBUS_MINOR_VERSION = @IBUS_MINOR_VERSION@ IBUS_UI_WAYLAND_DESKTOP = @IBUS_UI_WAYLAND_DESKTOP@ IBUS_VERSION = @IBUS_VERSION@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ ISOCODES_CFLAGS = @ISOCODES_CFLAGS@ ISOCODES_LIBS = @ISOCODES_LIBS@ ISOCODES_PREFIX = @ISOCODES_PREFIX@ LD = @LD@ LDFLAGS = @LDFLAGS@ LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@ LIBDL = @LIBDL@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ LIBNOTIFY_CFLAGS = @LIBNOTIFY_CFLAGS@ LIBNOTIFY_LIBS = @LIBNOTIFY_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ LT_CURRENT_MINUS_AGE = @LT_CURRENT_MINUS_AGE@ LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ LT_VERSION_INFO = @LT_VERSION_INFO@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_FOR_BUILD = @PKG_CONFIG_FOR_BUILD@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POSUB = @POSUB@ PYTHON = @PYTHON@ PYTHON2 = @PYTHON2@ PYTHON_CFLAGS = @PYTHON_CFLAGS@ PYTHON_CONFIG = @PYTHON_CONFIG@ PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ PYTHON_INCLUDES = @PYTHON_INCLUDES@ PYTHON_LIBS = @PYTHON_LIBS@ PYTHON_PLATFORM = @PYTHON_PLATFORM@ PYTHON_PREFIX = @PYTHON_PREFIX@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ SYSTEMD_CFLAGS = @SYSTEMD_CFLAGS@ SYSTEMD_LIBS = @SYSTEMD_LIBS@ SYSTEMD_USER_UNIT_DIR = @SYSTEMD_USER_UNIT_DIR@ UCD_DIR = @UCD_DIR@ UNICODE_EMOJI_DIR = @UNICODE_EMOJI_DIR@ USE_NLS = @USE_NLS@ VALAC = @VALAC@ VALA_TARGET_GLIB_VERSION = @VALA_TARGET_GLIB_VERSION@ VAPIGEN = @VAPIGEN@ VAPIGEN_MAKEFILE = @VAPIGEN_MAKEFILE@ VAPIGEN_VAPIDIR = @VAPIGEN_VAPIDIR@ VERSION = @VERSION@ WAYLAND_CFLAGS = @WAYLAND_CFLAGS@ WAYLAND_IM_PRTCL_SUBDIR = @WAYLAND_IM_PRTCL_SUBDIR@ WAYLAND_LIBS = @WAYLAND_LIBS@ WAYLAND_PRTCLS_DIR = @WAYLAND_PRTCLS_DIR@ WAYLAND_SCANNER_CFLAGS = @WAYLAND_SCANNER_CFLAGS@ WAYLAND_SCANNER_LIBS = @WAYLAND_SCANNER_LIBS@ WAYLAND_TEXT_PRTCL_SUBDIR = @WAYLAND_TEXT_PRTCL_SUBDIR@ X11_CFLAGS = @X11_CFLAGS@ X11_LIBS = @X11_LIBS@ X11_LOCALEDATADIR = @X11_LOCALEDATADIR@ X11_PREFIX = @X11_PREFIX@ XFIXES_CFLAGS = @XFIXES_CFLAGS@ XFIXES_LIBS = @XFIXES_LIBS@ XGETTEXT = @XGETTEXT@ XGETTEXT_015 = @XGETTEXT_015@ XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ XIM_CLI_ARG = @XIM_CLI_ARG@ XKBCONFIG_BASE = @XKBCONFIG_BASE@ XKBCONFIG_CFLAGS = @XKBCONFIG_CFLAGS@ XKBCONFIG_LIBS = @XKBCONFIG_LIBS@ XTEST_CFLAGS = @XTEST_CFLAGS@ XTEST_LIBS = @XTEST_LIBS@ _GI_EXP_DATADIR = @_GI_EXP_DATADIR@ _GI_EXP_LIBDIR = @_GI_EXP_LIBDIR@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_CC_FOR_BUILD = @ac_ct_CC_FOR_BUILD@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__rm_f_notfound = @am__rm_f_notfound@ am__tar = @am__tar@ am__untar = @am__untar@ am__xargs_n = @am__xargs_n@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ gsettingsschemadir = @gsettingsschemadir@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ pkgpyexecdir = @pkgpyexecdir@ pkgpython2dir = @pkgpython2dir@ pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ py2overridesdir = @py2overridesdir@ pyexecdir = @pyexecdir@ pyoverridesdir = @pyoverridesdir@ pythondir = @pythondir@ runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ wayland_protocoldir = @wayland_protocoldir@ wayland_scanner = @wayland_scanner@ wayland_scanner_rules = @wayland_scanner_rules@ NULL = @ENABLE_UI_TRUE@UI_DIR = ui @ENABLE_ENGINE_TRUE@ENGINE_DIR = engine @ENABLE_SETUP_TRUE@SETUP_DIR = setup @ENABLE_PYTHON_LIBRARY_TRUE@PYTHON_LIB_DIRS = ibus @ENABLE_DAEMON_TRUE@DAEMON_DIR = \ @ENABLE_DAEMON_TRUE@ bus \ @ENABLE_DAEMON_TRUE@ $(NULL) SUBDIRS = \ src \ bindings \ util \ conf \ client \ portal \ data \ m4 \ po \ $(ENGINE_DIR) \ $(UI_DIR) \ tools \ $(DAEMON_DIR) \ $(PYTHON_LIB_DIRS) \ $(SETUP_DIR) \ docs \ $(NULL) ACLOCAL_AMFLAGS = -I m4 pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = ibus-@IBUS_API_VERSION@.pc ibus_pc_in = ibus-@IBUS_API_VERSION@.pc.in EXTRA_DIST = \ COPYING.unicode \ autogen.sh \ $(ibus_pc_in) \ ibus.spec.in \ python-config.py \ xinput-ibus \ $(NULL) noinst_DIST = \ $(NULL) DISTCLEANFILES = \ po/stamp-it \ $(NULL) DISTCHECK_CONFIGURE_FLAGS = \ --enable-gtk-doc \ --disable-schemas-install \ --enable-memconf \ $(NULL) MAINTAINERCLEANFILES = \ $(srcdir)/ChangeLog \ $(NULL) GITIGNOREFILES = \ INSTALL \ aclocal.m4 \ compile \ config.guess \ config.h.in \ config.sub \ depcomp \ gtk-doc.make \ install-sh \ ltmain.sh \ missing \ mkinstalldirs \ py-compile \ stamp-h* \ $(NULL) all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive .SUFFIXES: am--refresh: Makefile @: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \ $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ echo ' $(SHELL) ./config.status'; \ $(SHELL) ./config.status;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(SHELL) ./config.status --recheck $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) $(am__cd) $(srcdir) && $(AUTOCONF) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) $(am__aclocal_m4_deps): config.h: stamp-h1 @test -f $@ || rm -f stamp-h1 @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1 stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status $(AM_V_at)rm -f stamp-h1 $(AM_V_GEN)cd $(top_builddir) && $(SHELL) ./config.status config.h $(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) $(AM_V_GEN)($(am__cd) $(top_srcdir) && $(AUTOHEADER)) $(AM_V_at)rm -f stamp-h1 $(AM_V_at)touch $@ distclean-hdr: -rm -f config.h stamp-h1 ibus-1.0.pc: $(top_builddir)/config.status $(srcdir)/ibus-1.0.pc.in cd $(top_builddir) && $(SHELL) ./config.status $@ ibus.spec: $(top_builddir)/config.status $(srcdir)/ibus.spec.in cd $(top_builddir) && $(SHELL) ./config.status $@ mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs distclean-libtool: -rm -f libtool config.lt install-pkgconfigDATA: $(pkgconfig_DATA) @$(NORMAL_INSTALL) @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(pkgconfigdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \ done uninstall-pkgconfigDATA: @$(NORMAL_UNINSTALL) @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(pkgconfigdir)'; $(am__uninstall_files_from_dir) # This directory's subdirectories are mostly independent; you can cd # into them and run 'make' without going through this Makefile. # To change the values of 'make' variables: instead of editing Makefiles, # (1) if the variable is set in 'config.status', edit 'config.status' # (which will cause the Makefiles to be regenerated when you run 'make'); # (2) otherwise, pass the desired values on the 'make' command line. $(am__recursive_targets): @fail=; \ if $(am__make_keepgoing); then \ failcom='fail=yes'; \ else \ failcom='exit 1'; \ fi; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" ID: $(am__tagged_files) $(am__define_uniq_tagged_files); mkid -fID $$unique tags: tags-recursive TAGS: tags tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ $(am__define_uniq_tagged_files); \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: ctags-recursive CTAGS: ctags ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) $(am__define_uniq_tagged_files); \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" cscope: cscope.files test ! -s cscope.files \ || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS) clean-cscope: -rm -f cscope.files cscope.files: clean-cscope cscopelist cscopelist: cscopelist-recursive cscopelist-am: $(am__tagged_files) list='$(am__tagged_files)'; \ case "$(srcdir)" in \ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ *) sdir=$(subdir)/$(srcdir) ;; \ esac; \ for i in $$list; do \ if test -f "$$i"; then \ echo "$(subdir)/$$i"; \ else \ echo "$$sdir/$$i"; \ fi; \ done >> $(top_builddir)/cscope.files distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f cscope.out cscope.in.out cscope.po.out cscope.files distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am distdir-am: $(DISTFILES) $(am__remove_distdir) $(AM_V_at)$(MKDIR_P) "$(distdir)" @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ $(am__make_dryrun) \ || test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ dir1=$$subdir; dir2="$(top_distdir)"; \ $(am__relativize); \ new_top_distdir=$$reldir; \ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$new_top_distdir" \ distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$(top_distdir)" distdir="$(distdir)" \ dist-hook -test -n "$(am__skip_mode_fix)" \ || find "$(distdir)" -type d ! -perm -755 \ -exec chmod u+rwx,go+rx {} \; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r "$(distdir)" dist-gzip: distdir tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz $(am__post_remove_distdir) dist-bzip2: distdir tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 $(am__post_remove_distdir) dist-lzip: distdir tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz $(am__post_remove_distdir) dist-xz: distdir tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz $(am__post_remove_distdir) dist-zstd: distdir tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst $(am__post_remove_distdir) dist-tarZ: distdir @echo WARNING: "Support for distribution archives compressed with" \ "legacy program 'compress' is deprecated." >&2 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__post_remove_distdir) dist-shar: distdir @echo WARNING: "Support for shar distribution archives is" \ "deprecated." >&2 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz $(am__post_remove_distdir) dist-zip: distdir -rm -f $(distdir).zip zip -rq $(distdir).zip $(distdir) $(am__post_remove_distdir) dist dist-all: $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:' $(am__post_remove_distdir) # This target untars the dist file and tries a VPATH configuration. Then # it guarantees that the distribution is self-contained by making another # tarfile. distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ eval GZIP= gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.lz*) \ lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ *.tar.xz*) \ xz -dc $(distdir).tar.xz | $(am__untar) ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ eval GZIP= gzip -dc $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ *.tar.zst*) \ zstd -dc $(distdir).tar.zst | $(am__untar) ;;\ esac chmod -R a-w $(distdir) chmod u+w $(distdir) mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst chmod a-w $(distdir) test -d $(distdir)/_build || exit 0; \ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && am__cwd=`pwd` \ && $(am__cd) $(distdir)/_build/sub \ && ../../configure \ $(AM_DISTCHECK_CONFIGURE_FLAGS) \ $(DISTCHECK_CONFIGURE_FLAGS) \ --srcdir=../.. --prefix="$$dc_install_base" \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) $(AM_DISTCHECK_DVI_TARGET) \ && $(MAKE) $(AM_MAKEFLAGS) check \ && $(MAKE) $(AM_MAKEFLAGS) install \ && $(MAKE) $(AM_MAKEFLAGS) installcheck \ && $(MAKE) $(AM_MAKEFLAGS) uninstall \ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ distuninstallcheck \ && chmod -R a-w "$$dc_install_base" \ && ({ \ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ } || { rm -rf "$$dc_destdir"; exit 1; }) \ && rm -rf "$$dc_destdir" \ && $(MAKE) $(AM_MAKEFLAGS) dist \ && rm -rf $(DIST_ARCHIVES) \ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ && cd "$$am__cwd" \ || exit 1 $(am__post_remove_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' distuninstallcheck: @test -n '$(distuninstallcheck_dir)' || { \ echo 'ERROR: trying to run $@ with an empty' \ '$$(distuninstallcheck_dir)' >&2; \ exit 1; \ }; \ $(am__cd) '$(distuninstallcheck_dir)' || { \ echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ exit 1; \ }; \ test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n "$(DESTDIR)"; then \ echo " (check DESTDIR support)"; \ fi ; \ $(distuninstallcheck_listfiles) ; \ exit 1; } >&2 distcleancheck: distclean @if test '$(srcdir)' = . ; then \ echo "ERROR: distcleancheck can only run from a VPATH build" ; \ exit 1 ; \ fi @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left in build directory after distclean:" ; \ $(distcleancheck_listfiles) ; \ exit 1; } >&2 check-am: all-am check: check-recursive all-am: Makefile $(DATA) config.h installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(pkgconfigdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: distclean-generic: -$(am__rm_f) $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || $(am__rm_f) $(CONFIG_CLEAN_VPATH_FILES) -$(am__rm_f) $(DISTCLEANFILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." -$(am__rm_f) $(MAINTAINERCLEANFILES) clean: clean-recursive clean-am: clean-generic clean-libtool clean-local mostlyclean-am distclean: distclean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -f Makefile distclean-am: clean-am distclean-generic distclean-hdr \ distclean-libtool distclean-local distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-pkgconfigDATA @$(NORMAL_INSTALL) $(MAKE) $(AM_MAKEFLAGS) install-data-hook install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-pkgconfigDATA .MAKE: $(am__recursive_targets) all install-am install-data-am \ install-strip .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ am--refresh check check-am clean clean-cscope clean-generic \ clean-libtool clean-local cscope cscopelist-am ctags ctags-am \ dist dist-all dist-bzip2 dist-gzip dist-hook dist-lzip \ dist-shar dist-tarZ dist-xz dist-zip dist-zstd distcheck \ distclean distclean-generic distclean-hdr distclean-libtool \ distclean-local distclean-tags distcleancheck distdir \ distuninstallcheck dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am \ install-data-hook install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-pkgconfigDATA install-ps install-ps-am install-strip \ installcheck installcheck-am installdirs installdirs-am \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am uninstall-pkgconfigDATA .PRECIOUS: Makefile install-data-hook: $(MKDIR_P) $(DESTDIR)${pkgdatadir}/engine dist-hook: if test -d .git ; then \ git log --name-status --date=iso > $(distdir)/ChangeLog ; \ IBUS_PREV_MICRO_VERSION=`expr $(IBUS_MICRO_VERSION) - 1`; \ IBUS_PREV_VERSION=\ "$(IBUS_MAJOR_VERSION).$(IBUS_MINOR_VERSION).$$IBUS_PREV_MICRO_VERSION"; \ echo "Changes in IBus $(IBUS_VERSION)" > $(distdir)/NEWS; \ echo "" >> $(distdir)/NEWS; \ git shortlog $$IBUS_PREV_VERSION...$(IBUS_VERSION) \ >> $(distdir)/NEWS; \ echo "" >> $(distdir)/NEWS; \ git log $$IBUS_PREV_VERSION...$(IBUS_VERSION) --reverse \ --pretty=format:'%s (%an) %h' >> $(distdir)/NEWS; \ fi distclean-local: if test "x$(srcdir)" = "x."; then :; else \ rm -f ChangeLog; \ rm -f NEWS; \ fi rpm: dist @PACKAGE_NAME@.spec rpmbuild -bb \ --define "_sourcedir `pwd`" \ --define "_builddir `pwd`/rpm" \ --define "_srcrpmdir `pwd`/rpm" \ --define "_rpmdir `pwd`"/rpm \ --define "_specdir `pwd`/rpm" \ @PACKAGE_NAME@.spec srpm: dist @PACKAGE_NAME@.spec rpmbuild -bs \ --define "_sourcedir `pwd`" \ --define "_builddir `pwd`/rpm" \ --define "_srcrpmdir `pwd`/rpm" \ --define "_rpmdir `pwd`/rpm" \ --define "_specdir `pwd`/rpm" \ @PACKAGE_NAME@.spec @PACKAGE_NAME@-@PACKAGE_VERSION@.%.sum: @PACKAGE_NAME@-@PACKAGE_VERSION@.% f=`basename $@ .sum`; \ printf "cksum %s %s %s\n" `cksum $$f` > $@; \ printf "sha1sum %s %s\n" `sha1sum $$f` >> $@; \ printf "sha256sum %s %s\n" `sha256sum $$f` >> $@; \ printf "sha512sum %s %s\n" `sha512sum $$f` >> $@; \ $(NULL) clean-rpm: -$(RM) -r "`uname -i`" clean-local: clean-rpm git-tag: git tag -s @PACKAGE_VERSION@ git-clean-tree: git clean -d -f -x -include $(top_srcdir)/git.mk # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: # Tell GNU make to disable its built-in pattern rules. %:: %,v %:: RCS/%,v %:: RCS/% %:: s.% %:: SCCS/s.% ibus-1.5.32/config.h.in0000644000000000000000000001533214775216751010241 /* config.h.in. Generated from configure.ac by autoheader. */ /* Datadir. */ #undef DATADIR /* dconf is 0.13.4 or later */ #undef DCONF_0_13_4 /* Define to 1 if translation of program messages to the user's native language is requested. */ #undef ENABLE_NLS /* Enable key snooper */ #undef ENABLE_SNOOPER /* Enable surrounding-text support */ #undef ENABLE_SURROUNDING /* The prefix for out gettext translation domains. */ #undef GETTEXT_PACKAGE /* glib2 include errno.h */ #undef GLIB2_EMBED_ERRNO_H /* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the CoreFoundation framework. */ #undef HAVE_CFLOCALECOPYCURRENT /* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in the CoreFoundation framework. */ #undef HAVE_CFPREFERENCESCOPYAPPVALUE /* Define to 1 if you have the 'daemon' function. */ #undef HAVE_DAEMON /* Define if the GNU dcgettext() function is already present or preinstalled. */ #undef HAVE_DCGETTEXT /* Define to 1 if you have the header file. */ #undef HAVE_DLFCN_H /* Define if the GNU gettext() function is already present or preinstalled. */ #undef HAVE_GETTEXT /* Define if you have the iconv() function and it works. */ #undef HAVE_ICONV /* Define to 1 if you have the header file. */ #undef HAVE_INTTYPES_H /* Define to 1 if you have the header file. */ #undef HAVE_MINIX_CONFIG_H /* Define to 1 if you have the header file. */ #undef HAVE_STDINT_H /* Define to 1 if you have the header file. */ #undef HAVE_STDIO_H /* Define to 1 if you have the header file. */ #undef HAVE_STDLIB_H /* Define to 1 if you have the header file. */ #undef HAVE_STRINGS_H /* Define to 1 if you have the header file. */ #undef HAVE_STRING_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_PRCTL_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_STAT_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_TYPES_H /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H /* Define to 1 if you have the header file. */ #undef HAVE_WCHAR_H /* Define to 1 if you have the header file. */ #undef HAVE_X11_XKBLIB_H /* Define to enable XFixes */ #undef HAVE_XFIXES /* Define to enable XIM */ #undef HAVE_XIM /* The default socket directory to connect ibus-daemon. */ #undef IBUS_SOCKET_DIR /* Define the location where the catalogs will be installed */ #undef LOCALEDIR /* Define to the sub-directory where libtool stores uninstalled libraries. */ #undef LT_OBJDIR /* Does not enbale keyboard snooper in those applications */ #undef NO_SNOOPER_APPS /* Name of package */ #undef PACKAGE /* Define to the address where bug reports for this package should be sent. */ #undef PACKAGE_BUGREPORT /* Define to the full name of this package. */ #undef PACKAGE_NAME /* Define to the full name and version of this package. */ #undef PACKAGE_STRING /* Define to the one symbol short name of this package. */ #undef PACKAGE_TARNAME /* Define to the home page for this package. */ #undef PACKAGE_URL /* Define to the version of this package. */ #undef PACKAGE_VERSION /* Define to 1 if all of the C89 standard headers exist (not just the ones required in a freestanding environment). This macro is provided for backward compatibility; new code need not use it. */ #undef STDC_HEADERS /* Desktop filename of IBus Wayland UI. */ #undef UI_WAYLAND_DESKTOP /* Enable extensions on AIX, Interix, z/OS. */ #ifndef _ALL_SOURCE # undef _ALL_SOURCE #endif /* Enable general extensions on macOS. */ #ifndef _DARWIN_C_SOURCE # undef _DARWIN_C_SOURCE #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # undef __EXTENSIONS__ #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # undef _GNU_SOURCE #endif /* Enable X/Open compliant socket functions that do not require linking with -lxnet on HP-UX 11.11. */ #ifndef _HPUX_ALT_XOPEN_SOCKET_API # undef _HPUX_ALT_XOPEN_SOCKET_API #endif /* Identify the host operating system as Minix. This macro does not affect the system headers' behavior. A future release of Autoconf may stop defining this macro. */ #ifndef _MINIX # undef _MINIX #endif /* Enable general extensions on NetBSD. Enable NetBSD compatibility extensions on Minix. */ #ifndef _NETBSD_SOURCE # undef _NETBSD_SOURCE #endif /* Enable OpenBSD compatibility extensions on NetBSD. Oddly enough, this does nothing on OpenBSD. */ #ifndef _OPENBSD_SOURCE # undef _OPENBSD_SOURCE #endif /* Define to 1 if needed for POSIX-compatible behavior. */ #ifndef _POSIX_SOURCE # undef _POSIX_SOURCE #endif /* Define to 2 if needed for POSIX-compatible behavior. */ #ifndef _POSIX_1_SOURCE # undef _POSIX_1_SOURCE #endif /* Enable POSIX-compatible threading on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # undef _POSIX_PTHREAD_SEMANTICS #endif /* Enable extensions specified by ISO/IEC TS 18661-5:2014. */ #ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ # undef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ #endif /* Enable extensions specified by ISO/IEC TS 18661-1:2014. */ #ifndef __STDC_WANT_IEC_60559_BFP_EXT__ # undef __STDC_WANT_IEC_60559_BFP_EXT__ #endif /* Enable extensions specified by ISO/IEC TS 18661-2:2015. */ #ifndef __STDC_WANT_IEC_60559_DFP_EXT__ # undef __STDC_WANT_IEC_60559_DFP_EXT__ #endif /* Enable extensions specified by C23 Annex F. */ #ifndef __STDC_WANT_IEC_60559_EXT__ # undef __STDC_WANT_IEC_60559_EXT__ #endif /* Enable extensions specified by ISO/IEC TS 18661-4:2015. */ #ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__ # undef __STDC_WANT_IEC_60559_FUNCS_EXT__ #endif /* Enable extensions specified by C23 Annex H and ISO/IEC TS 18661-3:2015. */ #ifndef __STDC_WANT_IEC_60559_TYPES_EXT__ # undef __STDC_WANT_IEC_60559_TYPES_EXT__ #endif /* Enable extensions specified by ISO/IEC TR 24731-2:2010. */ #ifndef __STDC_WANT_LIB_EXT2__ # undef __STDC_WANT_LIB_EXT2__ #endif /* Enable extensions specified by ISO/IEC 24747:2009. */ #ifndef __STDC_WANT_MATH_SPEC_FUNCS__ # undef __STDC_WANT_MATH_SPEC_FUNCS__ #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # undef _TANDEM_SOURCE #endif /* Enable X/Open extensions. Define to 500 only if necessary to make mbstate_t available. */ #ifndef _XOPEN_SOURCE # undef _XOPEN_SOURCE #endif /* Version number of package */ #undef VERSION /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most significant byte first (like Motorola and SPARC, unlike Intel). */ #if defined AC_APPLE_UNIVERSAL_BUILD # if defined __BIG_ENDIAN__ # define WORDS_BIGENDIAN 1 # endif #else # ifndef WORDS_BIGENDIAN # undef WORDS_BIGENDIAN # endif #endif #ifndef GLIB2_EMBED_ERRNO_H # include #endif ibus-1.5.32/ibus-1.0.pc.in0000644000000000000000000000046114775216466010405 prefix=@prefix@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@ datadir=@datadir@ pkgdatadir=@datadir@/ibus Name: IBus Description: IBus Library Version: @VERSION@ Requires: gobject-2.0 gio-2.0 Libs: -L${libdir} -libus-@IBUS_API_VERSION@ Cflags: -I${includedir}/ibus-@IBUS_API_VERSION@ ibus-1.5.32/ibus.spec.in0000644000000000000000000002270014775216466010441 %{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} %{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")} %{!?gtk2_binary_version: %define gtk2_binary_version %(pkg-config --variable=gtk_binary_version gtk+-2.0)} %{!?gtk3_binary_version: %define gtk3_binary_version %(pkg-config --variable=gtk_binary_version gtk+-3.0)} # Build flags %define build_python_library 0 %define build_emoji_dictionary 1 %define glib_ver %([ -a %{_libdir}/pkgconfig/glib-2.0.pc ] && pkg-config --modversion glib-2.0 | cut -d. -f 1,2 || echo -n "999") %define gconf2_version 2.12.0 %define dbus_python_version 0.83.0 %define im_chooser_version 1.2.5 Name: ibus Version: @IBUS_VERSION@ Release: 1%{?dist} Summary: Intelligent Input Bus for Linux OS License: LGPLv2+ Group: System Environment/Libraries URL: https://github.com/ibus/ibus/wiki Source0: https://github.com/ibus/ibus/releases/download/%{version}/%{name}-%{version}.tar.gz Source1: xinput-ibus # Patch0: ibus-HEAD.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: cvs BuildRequires: gettext-devel BuildRequires: libtool BuildRequires: python BuildRequires: gtk2-devel BuildRequires: gtk3-devel BuildRequires: dbus-glib-devel BuildRequires: dbus-python-devel >= %{dbus_python_version} BuildRequires: desktop-file-utils BuildRequires: gtk-doc BuildRequires: GConf2-devel BuildRequires: dconf-devel BuildRequires: pygobject2-devel BuildRequires: intltool BuildRequires: iso-codes-devel %if %build_emoji_dictionary BuildRequires: nodejs-emojione BuildRequires: json-glib %endif Requires: %{name}-libs = %{version}-%{release} Requires: %{name}-gtk2 = %{version}-%{release} Requires: %{name}-gtk3 = %{version}-%{release} Requires: %{name}-conf = %{version}-%{release} Requires: pygtk2 Requires: iso-codes Requires: dbus-python >= %{dbus_python_version} Requires: im-chooser >= %{im_chooser_version} Requires: notify-python Requires: librsvg2 Requires(post): desktop-file-utils Requires(postun): desktop-file-utils Requires(post): %{_sbindir}/alternatives Requires(postun): %{_sbindir}/alternatives Obsoletes: ibus-qt < 1.1.0 %define _xinputconf %{_sysconfdir}/X11/xinit/xinput.d/ibus.conf %description IBus means Intelligent Input Bus. It is an input framework for Linux OS. %package libs Summary: IBus libraries Group: System Environment/Libraries Requires: glib2 >= %{glib_ver} Requires: dbus >= 1.2.4 %description libs This package contains the libraries for IBus %package gconf Summary: IBus configuration module using GConf Group: System Environment/Libraries Provides: %{name}-conf = %{version}-%{release} Requires: %{name} = %{version}-%{release} Requires: GConf2 >= %{gconf2_version} Requires(pre): GConf2 >= %{gconf2_version} Requires(post): GConf2 >= %{gconf2_version} Requires(preun): GConf2 >= %{gconf2_version} %description gconf This package contains ibus configuration module using GConf %package dconf Summary: IBus configuration module using DConf Group: System Environment/Libraries Provides: %{name}-conf = %{version}-%{release} Requires: %{name} = %{version}-%{release} Requires(posttrans): dconf %description dconf This package contains ibus configuration module using DConf %package gtk2 Summary: IBus im module for gtk2 Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} Requires(post): glib2 >= %{glib_ver} %description gtk2 This package contains ibus im module for gtk2 %package gtk3 Summary: IBus im module for gtk3 Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} Requires(post): glib2 >= %{glib_ver} %description gtk3 This package contains ibus im module for gtk3 %package devel Summary: Development tools for ibus Group: Development/Libraries Requires: %{name} = %{version}-%{release} Requires: glib2-devel Requires: dbus-devel %description devel The ibus-devel package contains the header files and developer docs for ibus. %package devel-docs Summary: Developer documents for ibus Group: Development/Libraries Requires: %{name} = %{version}-%{release} Requires: gtk-doc %description devel-docs The ibus-devel-docs package contains developer documentation for ibus %prep %setup -q # %patch0 -p1 %build OPTIONS="--disable-static --enable-gtk2 --enable-gtk3 --enable-xim --disable-gtk-doc --enable-introspection --enable-gconf" %if %{build_python_library} OPTIONS="$OPTIONS --enable-python-library" %else OPTIONS="$OPTIONS --disable-python-library" %endif %if %build_emoji_dictionary OPTIONS="$OPTIONS --enable-emoji-dict" %else OPTIONS="$OPTIONS --disable-emoji-dict" %endif %configure $OPTIONS # make -C po update-gmo make %{?_smp_mflags} %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install rm -f $RPM_BUILD_ROOT%{_libdir}/libibus-1.0.la rm -f $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/%{gtk2_binary_version}/immodules/im-ibus.la rm -f $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/%{gtk3_binary_version}/immodules/im-ibus.la # install xinput config file install -pm 644 -D %{SOURCE1} $RPM_BUILD_ROOT%{_xinputconf} # install .desktop files echo "NoDisplay=true" >> $RPM_BUILD_ROOT%{_datadir}/applications/ibus.desktop echo "NoDisplay=true" >> $RPM_BUILD_ROOT%{_datadir}/applications/ibus-setup.desktop desktop-file-install --delete-original \ --dir $RPM_BUILD_ROOT%{_datadir}/applications \ $RPM_BUILD_ROOT%{_datadir}/applications/* %find_lang %{name}10 %clean rm -rf $RPM_BUILD_ROOT %post # recreate icon cache touch --no-create %{_datadir}/icons/hicolor || : [ -x %{_bindir}/gtk-update-icon-cache ] && \ %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : %{_sbindir}/alternatives --install %{_sysconfdir}/X11/xinit/xinputrc xinputrc %{_xinputconf} 83 || : %post gconf export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` gconftool-2 --makefile-install-rule %{_sysconfdir}/gconf/schemas/ibus.schemas >& /dev/null || : %pre gconf if [ "$1" -gt 1 ]; then export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` gconftool-2 --makefile-uninstall-rule %{_sysconfdir}/gconf/schemas/ibus.schemas >& /dev/null || : fi %preun gconf if [ "$1" -eq 0 ]; then export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` gconftool-2 --makefile-uninstall-rule %{_sysconfdir}/gconf/schemas/ibus.schemas >& /dev/null || : fi %postun # recreate icon cache touch --no-create %{_datadir}/icons/hicolor || : [ -x %{_bindir}/gtk-update-icon-cache ] && \ %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : if [ "$1" = "0" ]; then %{_sbindir}/alternatives --remove xinputrc %{_xinputconf} || : # if alternative was set to manual, reset to auto [ -L %{_sysconfdir}/alternatives/xinputrc -a "`readlink %{_sysconfdir}/alternatives/xinputrc`" = "%{_xinputconf}" ] && %{_sbindir}/alternatives --auto xinputrc || : fi %postun dconf if [ "$1" -eq 0 ] ; then /usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || : rm -f %{_sysconfdir}/dconf/db/ibus fi %posttrans dconf /usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || : dconf update &> /dev/null || : %post libs -p /sbin/ldconfig %postun libs -p /sbin/ldconfig %post gtk2 %{_bindir}/update-gtk-immodules %{_host} %postun gtk2 %{_bindir}/update-gtk-immodules %{_host} %post gtk3 %{_bindir}/gtk-query-immodules-3.0-%{__isa_bits} --update-cache %postun gtk3 %{_bindir}/gtk-query-immodules-3.0-%{__isa_bits} --update-cache %files -f %{name}10.lang %defattr(-,root,root,-) %doc AUTHORS COPYING README %if %{build_python_library} %dir %{python_sitelib}/ibus %{python_sitelib}/ibus/* %endif %{python_sitearch}/gi/overrides/IBus.py* %dir %{_datadir}/ibus/ %{_bindir}/ibus %{_bindir}/ibus-daemon %{_bindir}/ibus-setup %{_datadir}/ibus/component/gtkpanel.xml %{_datadir}/ibus/component/simple.xml %if %build_emoji_dictionary %{_datadir}/ibus/dicts %endif %{_datadir}/ibus/keymaps/* %{_datadir}/ibus/setup/* %{_datadir}/applications/* %{_datadir}/icons/hicolor/*/apps/* %if %{build_python_library} %{_libexecdir}/ibus-ui-gtk %endif %{_libexecdir}/ibus-ui-gtk3 %{_libexecdir}/ibus-x11 %{_libexecdir}/ibus-engine-simple # %{_sysconfdir}/xdg/autostart/ibus.desktop %{_datadir}/bash-completion/completions/ibus.bash %config %{_xinputconf} %files libs %defattr(-,root,root,-) %{_libdir}/libibus-1.0.so.* %{_libdir}/girepository-1.0/IBus-1.0.typelib %files gconf %defattr(-,root,root,-) %{_datadir}/ibus/component/gconf.xml %{_libexecdir}/ibus-gconf %{_sysconfdir}/gconf/schemas/ibus.schemas %files dconf %defattr(-,root,root,-) %{_datadir}/ibus/component/dconf.xml %{_libexecdir}/ibus-dconf %{_sysconfdir}/dconf/db/ibus.d %{_sysconfdir}/dconf/profile/ibus %{_datadir}/GConf/gsettings/ibus.convert %{_datadir}/glib-2.0/schemas/org.freedesktop.ibus.gschema.xml %files gtk2 %defattr(-,root,root,-) %{_libdir}/gtk-2.0/%{gtk2_binary_version}/immodules/im-ibus.so %files gtk3 %defattr(-,root,root,-) %{_libdir}/gtk-3.0/%{gtk3_binary_version}/immodules/im-ibus.so %files devel %defattr(-,root,root,-) %{_libdir}/lib*.so %{_libdir}/pkgconfig/* %{_includedir}/* %{_datadir}/gir-1.0/IBus-1.0.gir %{_datadir}/vala/vapi/ibus-1.0.vapi %{_datadir}/vala/vapi/ibus-1.0.deps %files devel-docs %defattr(-,root,root,-) %{_datadir}/gtk-doc/html/* %changelog * @DATE_DISPLAY@ Peng Huang - @IBUS_VERSION@-1 - Current version. ibus-1.5.32/ABOUT-NLS0000644000000000000000000026747414775216740007463 1 Notes on the Free Translation Project *************************************** Free software is going international! The Free Translation Project is a way to get maintainers of free software, translators, and users all together, so that free software will gradually become able to speak many languages. A few packages already provide translations for their messages. If you found this 'ABOUT-NLS' file inside a distribution, you may assume that the distributed package does use GNU 'gettext' internally, itself available at your nearest GNU archive site. But you do _not_ need to install GNU 'gettext' prior to configuring, installing or using this package with messages translated. Installers will find here some useful hints. These notes also explain how users should proceed for getting the programs to use the available translations. They tell how people wanting to contribute and work on translations can contact the appropriate team. 1.1 INSTALL Matters =================== Some packages are "localizable" when properly installed; the programs they contain can be made to speak your own native language. Most such packages use GNU 'gettext'. Other packages have their own ways to internationalization, predating GNU 'gettext'. By default, this package will be installed to allow translation of messages. It will automatically detect whether the system already provides the GNU 'gettext' functions. Installers may use special options at configuration time for changing the default behaviour. The command: ./configure --disable-nls will _totally_ disable translation of messages. When you already have GNU 'gettext' installed on your system and run configure without an option for your new package, 'configure' will probably detect the previously built and installed 'libintl' library and will decide to use it. If not, you may have to to use the '--with-libintl-prefix' option to tell 'configure' where to look for it. Internationalized packages usually have many 'po/LL.po' files, where LL gives an ISO 639 two-letter code identifying the language. Unless translations have been forbidden at 'configure' time by using the '--disable-nls' switch, all available translations are installed together with the package. However, the environment variable 'LINGUAS' may be set, prior to configuration, to limit the installed set. 'LINGUAS' should then contain a space separated list of two-letter codes, stating which languages are allowed. 1.2 Using This Package ====================== As a user, if your language has been installed for this package, you only have to set the 'LANG' environment variable to the appropriate 'LL_CC' combination. If you happen to have the 'LC_ALL' or some other 'LC_xxx' environment variables set, you should unset them before setting 'LANG', otherwise the setting of 'LANG' will not have the desired effect. Here 'LL' is an ISO 639 two-letter language code, and 'CC' is an ISO 3166 two-letter country code. For example, let's suppose that you speak German and live in Germany. At the shell prompt, merely execute 'setenv LANG de_DE' (in 'csh'), 'export LANG; LANG=de_DE' (in 'sh') or 'export LANG=de_DE' (in 'bash'). This can be done from your '.login' or '.profile' file, once and for all. You might think that the country code specification is redundant. But in fact, some languages have dialects in different countries. For example, 'de_AT' is used for Austria, and 'pt_BR' for Brazil. The country code serves to distinguish the dialects. The locale naming convention of 'LL_CC', with 'LL' denoting the language and 'CC' denoting the country, is the one use on systems based on GNU libc. On other systems, some variations of this scheme are used, such as 'LL' or 'LL_CC.ENCODING'. You can get the list of locales supported by your system for your language by running the command 'locale -a | grep '^LL''. Not all programs have translations for all languages. By default, an English message is shown in place of a nonexistent translation. If you understand other languages, you can set up a priority list of languages. This is done through a different environment variable, called 'LANGUAGE'. GNU 'gettext' gives preference to 'LANGUAGE' over 'LANG' for the purpose of message handling, but you still need to have 'LANG' set to the primary language; this is required by other parts of the system libraries. For example, some Swedish users who would rather read translations in German than English for when Swedish is not available, set 'LANGUAGE' to 'sv:de' while leaving 'LANG' to 'sv_SE'. Special advice for Norwegian users: The language code for Norwegian bokma*l changed from 'no' to 'nb' recently (in 2003). During the transition period, while some message catalogs for this language are installed under 'nb' and some older ones under 'no', it's recommended for Norwegian users to set 'LANGUAGE' to 'nb:no' so that both newer and older translations are used. In the 'LANGUAGE' environment variable, but not in the 'LANG' environment variable, 'LL_CC' combinations can be abbreviated as 'LL' to denote the language's main dialect. For example, 'de' is equivalent to 'de_DE' (German as spoken in Germany), and 'pt' to 'pt_PT' (Portuguese as spoken in Portugal) in this context. 1.3 Translating Teams ===================== For the Free Translation Project to be a success, we need interested people who like their own language and write it well, and who are also able to synergize with other translators speaking the same language. Each translation team has its own mailing list. The up-to-date list of teams can be found at the Free Translation Project's homepage, 'http://translationproject.org/', in the "Teams" area. If you'd like to volunteer to _work_ at translating messages, you should become a member of the translating team for your own language. The subscribing address is _not_ the same as the list itself, it has '-request' appended. For example, speakers of Swedish can send a message to 'sv-request@li.org', having this message body: subscribe Keep in mind that team members are expected to participate _actively_ in translations, or at solving translational difficulties, rather than merely lurking around. If your team does not exist yet and you want to start one, or if you are unsure about what to do or how to get started, please write to 'coordinator@translationproject.org' to reach the coordinator for all translator teams. The English team is special. It works at improving and uniformizing the terminology in use. Proven linguistic skills are praised more than programming skills, here. 1.4 Available Packages ====================== Languages are not equally supported in all packages. The following matrix shows the current state of internationalization, as of Jun 2014. The matrix shows, in regard of each package, for which languages PO files have been submitted to translation coordination, with a translation percentage of at least 50%. Ready PO files af am an ar as ast az be bg bn bn_IN bs ca crh cs +---------------------------------------------------+ a2ps | [] [] [] | aegis | | anubis | | aspell | [] [] [] | bash | [] [] [] | bfd | | binutils | [] | bison | | bison-runtime | [] | buzztrax | [] | ccd2cue | | ccide | | cflow | | clisp | | coreutils | [] [] | cpio | | cppi | | cpplib | [] | cryptsetup | [] | datamash | | denemo | [] [] | dfarc | [] | dialog | [] [] [] | dico | | diffutils | [] | dink | [] | direvent | | doodle | [] | dos2unix | | dos2unix-man | | e2fsprogs | [] [] | enscript | [] | exif | [] | fetchmail | [] [] | findutils | [] | flex | [] | freedink | [] [] | fusionforge | | gas | | gawk | [] | gcal | [] | gcc | | gdbm | | gettext-examples | [] [] [] [] [] | gettext-runtime | [] [] [] | gettext-tools | [] [] | gjay | | glunarclock | [] [] [] | gnubiff | [] | gnubik | [] | gnucash | () () [] | gnuchess | | gnulib | [] | gnunet | | gnunet-gtk | | gold | | gphoto2 | [] | gprof | [] | gramadoir | | grep | [] [] [] | grub | [] | gsasl | | gss | | gst-plugins-bad | [] [] | gst-plugins-base | [] [] [] | gst-plugins-good | [] [] [] | gst-plugins-ugly | [] [] [] | gstreamer | [] [] [] [] | gtick | [] | gtkam | [] [] | gtkspell | [] [] [] [] [] | guix | | guix-packages | | gutenprint | [] | hello | [] | help2man | | help2man-texi | | hylafax | | idutils | | iso_15924 | [] | iso_3166 | [] [] [] [] [] [] [] [] [] [] | iso_3166_2 | | iso_4217 | [] | iso_639 | [] [] [] [] [] [] [] [] [] | iso_639_3 | [] [] | iso_639_5 | | jwhois | | kbd | [] | klavaro | [] [] [] [] [] | ld | [] | leafpad | [] [] [] [] | libc | [] [] [] | libexif | () | libextractor | | libgnutls | [] | libgphoto2 | [] | libgphoto2_port | [] | libgsasl | | libiconv | [] [] | libidn | [] | liferea | [] [] [] [] | lilypond | [] [] | lordsawar | [] | lprng | | lynx | [] [] | m4 | [] | mailfromd | | mailutils | | make | [] | man-db | [] [] | man-db-manpages | | midi-instruments | [] [] [] | minicom | [] | mkisofs | [] | myserver | [] | nano | [] [] [] | opcodes | | parted | [] | pies | | pnmixer | | popt | [] | procps-ng | | procps-ng-man | | psmisc | [] | pspp | [] | pushover | [] | pwdutils | | pyspread | | radius | [] | recode | [] [] [] | recutils | | rpm | | rush | | sarg | | sed | [] [] [] [] | sharutils | [] | shishi | | skribilo | | solfege | [] [] | solfege-manual | | spotmachine | | sudo | [] [] | sudoers | [] [] | sysstat | [] | tar | [] [] [] | texinfo | [] [] | texinfo_document | [] [] | tigervnc | [] | tin | | tin-man | | tracgoogleappsa... | | trader | | util-linux | [] | ve | | vice | | vmm | | vorbis-tools | [] | wastesedge | | wcd | | wcd-man | | wdiff | [] [] | wget | [] | wyslij-po | | xboard | | xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] | xkeyboard-config | [] [] [] | +---------------------------------------------------+ af am an ar as ast az be bg bn bn_IN bs ca crh cs 4 0 2 5 3 11 0 8 25 3 3 1 55 4 74 da de el en en_GB en_ZA eo es et eu fa fi fr +--------------------------------------------------+ a2ps | [] [] [] [] [] [] [] [] [] | aegis | [] [] [] [] | anubis | [] [] [] [] [] | aspell | [] [] [] [] [] [] [] | bash | [] [] [] | bfd | [] [] [] [] | binutils | [] [] [] | bison | [] [] [] [] [] [] [] [] | bison-runtime | [] [] [] [] [] [] [] [] | buzztrax | [] [] [] [] | ccd2cue | [] [] [] [] | ccide | [] [] [] [] [] [] | cflow | [] [] [] [] [] | clisp | [] [] [] [] [] | coreutils | [] [] [] [] [] | cpio | [] [] [] [] [] | cppi | [] [] [] [] [] | cpplib | [] [] [] [] [] [] | cryptsetup | [] [] [] [] [] | datamash | [] [] [] [] | denemo | [] | dfarc | [] [] [] [] [] [] | dialog | [] [] [] [] [] [] [] [] [] | dico | [] [] [] [] | diffutils | [] [] [] [] [] [] | dink | [] [] [] [] [] [] | direvent | [] [] [] [] | doodle | [] [] [] [] | dos2unix | [] [] [] [] [] | dos2unix-man | [] [] [] | e2fsprogs | [] [] [] [] [] | enscript | [] [] [] [] [] [] | exif | [] [] [] [] [] [] | fetchmail | [] () [] [] [] [] [] | findutils | [] [] [] [] [] [] [] [] | flex | [] [] [] [] [] [] | freedink | [] [] [] [] [] [] [] [] | fusionforge | [] [] [] | gas | [] [] [] | gawk | [] [] [] [] [] | gcal | [] [] [] [] | gcc | [] | gdbm | [] [] [] [] [] | gettext-examples | [] [] [] [] [] [] [] | gettext-runtime | [] [] [] [] [] [] | gettext-tools | [] [] [] [] [] | gjay | [] [] [] [] | glunarclock | [] [] [] [] [] | gnubiff | () [] [] () | gnubik | [] [] [] [] [] | gnucash | [] () () () () () () | gnuchess | [] [] [] [] | gnulib | [] [] [] [] [] [] [] | gnunet | [] | gnunet-gtk | [] | gold | [] [] [] | gphoto2 | [] () [] [] | gprof | [] [] [] [] [] [] | gramadoir | [] [] [] [] [] | grep | [] [] [] [] [] [] [] | grub | [] [] [] [] [] | gsasl | [] [] [] [] [] | gss | [] [] [] [] [] | gst-plugins-bad | [] [] [] | gst-plugins-base | [] [] [] [] [] [] | gst-plugins-good | [] [] [] [] [] [] [] | gst-plugins-ugly | [] [] [] [] [] [] [] [] | gstreamer | [] [] [] [] [] [] [] | gtick | [] () [] [] [] | gtkam | [] () [] [] [] [] | gtkspell | [] [] [] [] [] [] [] [] | guix | [] [] | guix-packages | | gutenprint | [] [] [] [] | hello | [] [] [] [] [] [] [] [] | help2man | [] [] [] [] [] [] [] | help2man-texi | [] [] [] | hylafax | [] [] | idutils | [] [] [] [] [] | iso_15924 | [] () [] [] () [] () | iso_3166 | [] () [] [] [] [] () [] () | iso_3166_2 | [] () () () | iso_4217 | [] () [] [] [] () [] () | iso_639 | [] () [] [] () [] () | iso_639_3 | () () () | iso_639_5 | () () () | jwhois | [] [] [] [] [] | kbd | [] [] [] [] [] [] | klavaro | [] [] [] [] [] [] [] | ld | [] [] [] [] | leafpad | [] [] [] [] [] [] [] [] | libc | [] [] [] [] [] | libexif | [] [] () [] [] | libextractor | [] | libgnutls | [] [] [] [] | libgphoto2 | [] () [] | libgphoto2_port | [] () [] [] [] [] | libgsasl | [] [] [] [] [] | libiconv | [] [] [] [] [] [] [] | libidn | [] [] [] [] [] | liferea | [] () [] [] [] [] [] | lilypond | [] [] [] [] [] [] | lordsawar | [] [] | lprng | | lynx | [] [] [] [] [] [] | m4 | [] [] [] [] [] [] | mailfromd | [] | mailutils | [] [] [] [] | make | [] [] [] [] [] | man-db | [] [] [] [] | man-db-manpages | [] [] | midi-instruments | [] [] [] [] [] [] [] [] [] | minicom | [] [] [] [] [] | mkisofs | [] [] [] | myserver | [] [] [] [] | nano | [] [] [] [] [] [] [] | opcodes | [] [] [] [] [] | parted | [] [] [] | pies | [] | pnmixer | [] [] | popt | [] [] [] [] [] [] | procps-ng | [] [] | procps-ng-man | [] [] | psmisc | [] [] [] [] [] [] [] | pspp | [] [] [] | pushover | () [] [] [] | pwdutils | [] [] [] | pyspread | [] [] [] | radius | [] [] | recode | [] [] [] [] [] [] [] | recutils | [] [] [] [] | rpm | [] [] [] [] [] | rush | [] [] [] | sarg | [] [] | sed | [] [] [] [] [] [] [] [] | sharutils | [] [] [] [] | shishi | [] [] [] | skribilo | [] [] [] | solfege | [] [] [] [] [] [] [] [] | solfege-manual | [] [] [] [] [] | spotmachine | [] [] [] [] [] | sudo | [] [] [] [] [] [] | sudoers | [] [] [] [] [] [] | sysstat | [] [] [] [] [] [] | tar | [] [] [] [] [] [] [] | texinfo | [] [] [] [] [] | texinfo_document | [] [] [] [] | tigervnc | [] [] [] [] [] [] | tin | [] [] [] [] | tin-man | [] | tracgoogleappsa... | [] [] [] [] [] | trader | [] [] [] [] [] [] | util-linux | [] [] [] [] | ve | [] [] [] [] [] | vice | () () () | vmm | [] [] | vorbis-tools | [] [] [] [] | wastesedge | [] | wcd | [] [] [] [] | wcd-man | [] | wdiff | [] [] [] [] [] [] [] | wget | [] [] [] [] [] [] | wyslij-po | [] [] [] [] | xboard | [] [] [] [] | xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] | xkeyboard-config | [] [] [] [] [] [] [] | +--------------------------------------------------+ da de el en en_GB en_ZA eo es et eu fa fi fr 119 131 32 1 6 0 94 95 22 13 4 102 139 ga gd gl gu he hi hr hu hy ia id is it ja ka kk +-------------------------------------------------+ a2ps | [] [] [] [] | aegis | [] | anubis | [] [] [] [] | aspell | [] [] [] [] [] | bash | [] [] [] [] | bfd | [] [] | binutils | [] [] [] | bison | [] | bison-runtime | [] [] [] [] [] [] [] [] | buzztrax | | ccd2cue | [] | ccide | [] [] | cflow | [] [] [] | clisp | | coreutils | [] [] | cpio | [] [] [] [] [] [] | cppi | [] [] [] [] [] | cpplib | [] [] | cryptsetup | [] | datamash | | denemo | [] | dfarc | [] [] [] | dialog | [] [] [] [] [] [] [] [] [] [] | dico | | diffutils | [] [] [] [] | dink | [] | direvent | [] | doodle | [] [] | dos2unix | [] [] | dos2unix-man | | e2fsprogs | [] [] | enscript | [] [] [] | exif | [] [] [] [] [] [] | fetchmail | [] [] [] | findutils | [] [] [] [] [] [] [] | flex | [] | freedink | [] [] [] [] | fusionforge | | gas | [] | gawk | [] () [] | gcal | | gcc | | gdbm | | gettext-examples | [] [] [] [] [] [] [] | gettext-runtime | [] [] [] [] [] [] [] | gettext-tools | [] [] [] | gjay | [] | glunarclock | [] [] [] [] [] [] | gnubiff | [] [] () | gnubik | [] [] [] | gnucash | () () () () () | gnuchess | | gnulib | [] [] [] [] [] | gnunet | | gnunet-gtk | | gold | [] [] | gphoto2 | [] [] [] [] | gprof | [] [] [] [] | gramadoir | [] [] [] | grep | [] [] [] [] [] [] [] | grub | [] [] [] | gsasl | [] [] [] [] [] | gss | [] [] [] [] [] | gst-plugins-bad | [] [] [] | gst-plugins-base | [] [] [] [] | gst-plugins-good | [] [] [] [] [] [] | gst-plugins-ugly | [] [] [] [] [] [] | gstreamer | [] [] [] [] [] | gtick | [] [] [] [] [] | gtkam | [] [] [] [] [] | gtkspell | [] [] [] [] [] [] [] [] [] [] | guix | | guix-packages | | gutenprint | [] [] [] | hello | [] [] [] [] [] | help2man | [] [] [] | help2man-texi | | hylafax | [] | idutils | [] [] | iso_15924 | [] [] [] [] [] [] | iso_3166 | [] [] [] [] [] [] [] [] [] [] [] [] [] | iso_3166_2 | [] [] | iso_4217 | [] [] [] [] [] [] | iso_639 | [] [] [] [] [] [] [] [] [] | iso_639_3 | [] [] | iso_639_5 | | jwhois | [] [] [] [] | kbd | [] [] [] | klavaro | [] [] [] [] [] | ld | [] [] [] [] | leafpad | [] [] [] [] [] [] [] () | libc | [] [] [] [] [] | libexif | [] | libextractor | | libgnutls | [] | libgphoto2 | [] [] | libgphoto2_port | [] [] | libgsasl | [] [] [] [] | libiconv | [] [] [] [] [] [] [] | libidn | [] [] [] [] | liferea | [] [] [] [] [] | lilypond | [] | lordsawar | | lprng | [] | lynx | [] [] [] [] | m4 | [] [] [] [] [] | mailfromd | | mailutils | | make | [] [] [] [] | man-db | [] [] | man-db-manpages | [] [] | midi-instruments | [] [] [] [] [] [] [] [] [] | minicom | [] [] [] | mkisofs | [] [] | myserver | [] | nano | [] [] [] [] [] [] | opcodes | [] [] [] | parted | [] [] [] [] [] | pies | | pnmixer | [] [] | popt | [] [] [] [] [] [] [] [] [] [] | procps-ng | | procps-ng-man | | psmisc | [] [] [] [] | pspp | [] [] | pushover | [] | pwdutils | [] | pyspread | | radius | [] | recode | [] [] [] [] [] [] [] | recutils | | rpm | [] | rush | [] | sarg | | sed | [] [] [] [] [] [] [] | sharutils | | shishi | | skribilo | [] | solfege | [] [] | solfege-manual | | spotmachine | | sudo | [] [] [] [] | sudoers | [] [] [] | sysstat | [] [] [] [] | tar | [] [] [] [] [] [] | texinfo | [] [] [] | texinfo_document | [] [] [] | tigervnc | | tin | | tin-man | | tracgoogleappsa... | [] [] [] [] | trader | [] [] | util-linux | [] | ve | [] | vice | () () | vmm | | vorbis-tools | [] [] | wastesedge | [] | wcd | | wcd-man | | wdiff | [] [] [] | wget | [] [] [] [] | wyslij-po | [] [] [] | xboard | | xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] [] | xkeyboard-config | [] [] [] [] [] [] | +-------------------------------------------------+ ga gd gl gu he hi hr hu hy ia id is it ja ka kk 35 2 47 4 8 2 60 71 2 6 81 11 87 57 0 3 kn ko ku ky lg lt lv mk ml mn mr ms mt nb ne nl +--------------------------------------------------+ a2ps | [] [] | aegis | [] | anubis | [] [] [] | aspell | [] [] | bash | [] [] | bfd | | binutils | | bison | [] | bison-runtime | [] [] [] [] [] [] | buzztrax | | ccd2cue | | ccide | [] [] | cflow | [] | clisp | [] | coreutils | [] [] | cpio | [] | cppi | | cpplib | [] | cryptsetup | [] | datamash | [] [] | denemo | | dfarc | [] [] | dialog | [] [] [] [] [] [] | dico | | diffutils | [] [] [] | dink | [] | direvent | [] | doodle | [] | dos2unix | [] [] | dos2unix-man | [] | e2fsprogs | [] | enscript | [] | exif | [] [] [] | fetchmail | [] | findutils | [] [] | flex | [] | freedink | [] [] | fusionforge | | gas | | gawk | [] | gcal | | gcc | | gdbm | | gettext-examples | [] [] [] [] [] [] | gettext-runtime | [] [] [] | gettext-tools | [] | gjay | | glunarclock | [] [] | gnubiff | [] | gnubik | [] [] | gnucash | () () () () () () () [] | gnuchess | [] [] | gnulib | [] | gnunet | | gnunet-gtk | | gold | | gphoto2 | [] | gprof | [] [] | gramadoir | [] | grep | [] [] | grub | [] [] [] | gsasl | [] | gss | | gst-plugins-bad | [] [] [] | gst-plugins-base | [] [] [] | gst-plugins-good | [] [] [] [] | gst-plugins-ugly | [] [] [] [] [] | gstreamer | [] [] [] | gtick | [] | gtkam | [] [] | gtkspell | [] [] [] [] [] [] [] | guix | | guix-packages | | gutenprint | [] | hello | [] [] [] | help2man | [] | help2man-texi | | hylafax | [] | idutils | [] | iso_15924 | () [] [] | iso_3166 | [] [] [] () [] [] [] [] [] [] | iso_3166_2 | () [] | iso_4217 | () [] [] [] | iso_639 | [] [] () [] [] [] [] | iso_639_3 | [] () [] | iso_639_5 | () | jwhois | [] [] | kbd | [] | klavaro | [] [] | ld | | leafpad | [] [] [] [] [] | libc | [] [] | libexif | [] | libextractor | [] | libgnutls | [] [] | libgphoto2 | [] | libgphoto2_port | [] | libgsasl | [] | libiconv | [] [] | libidn | [] | liferea | [] [] [] | lilypond | [] | lordsawar | | lprng | | lynx | [] | m4 | [] | mailfromd | | mailutils | | make | [] [] | man-db | [] | man-db-manpages | [] | midi-instruments | [] [] [] [] [] [] [] | minicom | [] | mkisofs | [] | myserver | | nano | [] [] [] | opcodes | [] | parted | [] [] | pies | | pnmixer | [] | popt | [] [] [] [] [] | procps-ng | | procps-ng-man | | psmisc | [] | pspp | [] [] | pushover | | pwdutils | [] | pyspread | | radius | [] | recode | [] [] | recutils | [] | rpm | [] | rush | [] | sarg | | sed | [] [] | sharutils | [] | shishi | | skribilo | | solfege | [] [] | solfege-manual | [] | spotmachine | [] | sudo | [] [] [] | sudoers | [] [] [] | sysstat | [] [] | tar | [] [] [] | texinfo | [] | texinfo_document | [] | tigervnc | [] | tin | | tin-man | | tracgoogleappsa... | [] [] [] | trader | [] | util-linux | [] | ve | [] | vice | [] | vmm | [] | vorbis-tools | [] | wastesedge | [] | wcd | [] | wcd-man | [] | wdiff | [] | wget | [] [] | wyslij-po | [] | xboard | [] | xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] | xkeyboard-config | [] [] [] | +--------------------------------------------------+ kn ko ku ky lg lt lv mk ml mn mr ms mt nb ne nl 5 15 4 6 0 13 23 3 3 3 4 11 2 42 1 125 nn or pa pl ps pt pt_BR ro ru rw sk sl sq sr +------------------------------------------------+ a2ps | [] [] [] [] [] [] [] | aegis | [] [] | anubis | [] [] [] | aspell | [] [] [] [] [] [] [] | bash | [] [] [] [] [] [] | bfd | [] [] | binutils | [] [] | bison | [] [] [] | bison-runtime | [] [] [] [] [] [] [] [] | buzztrax | [] | ccd2cue | [] [] | ccide | [] [] [] | cflow | [] [] [] | clisp | [] | coreutils | [] [] [] [] | cpio | [] [] [] | cppi | [] [] [] | cpplib | [] [] [] | cryptsetup | [] [] [] | datamash | [] [] | denemo | | dfarc | [] [] [] | dialog | [] [] [] [] [] [] [] | dico | [] | diffutils | [] [] [] | dink | | direvent | [] [] [] | doodle | [] [] | dos2unix | [] [] [] [] | dos2unix-man | [] [] | e2fsprogs | [] | enscript | [] [] [] [] [] [] | exif | [] [] [] [] [] [] | fetchmail | [] [] [] | findutils | [] [] [] [] [] [] | flex | [] [] [] [] [] | freedink | [] [] [] [] [] | fusionforge | | gas | | gawk | [] | gcal | | gcc | | gdbm | [] [] [] | gettext-examples | [] [] [] [] [] [] [] [] | gettext-runtime | [] [] [] [] [] [] [] [] [] | gettext-tools | [] [] [] [] [] [] [] | gjay | [] | glunarclock | [] [] [] [] [] [] | gnubiff | [] | gnubik | [] [] [] [] | gnucash | () () () () () [] | gnuchess | [] [] | gnulib | [] [] [] [] [] | gnunet | | gnunet-gtk | | gold | | gphoto2 | [] [] [] [] [] | gprof | [] [] [] [] | gramadoir | [] [] | grep | [] [] [] [] [] [] | grub | [] [] [] [] [] | gsasl | [] [] [] | gss | [] [] [] [] | gst-plugins-bad | [] [] [] [] [] | gst-plugins-base | [] [] [] [] [] [] | gst-plugins-good | [] [] [] [] [] [] [] | gst-plugins-ugly | [] [] [] [] [] [] [] | gstreamer | [] [] [] [] [] [] [] | gtick | [] [] [] [] [] | gtkam | [] [] [] [] [] [] | gtkspell | [] [] [] [] [] [] [] [] [] | guix | | guix-packages | | gutenprint | [] [] | hello | [] [] [] [] [] [] | help2man | [] [] [] [] | help2man-texi | [] | hylafax | | idutils | [] [] [] | iso_15924 | [] () [] [] [] [] | iso_3166 | [] [] [] [] () [] [] [] [] [] [] [] [] | iso_3166_2 | [] () [] | iso_4217 | [] [] () [] [] [] [] [] | iso_639 | [] [] [] () [] [] [] [] [] [] | iso_639_3 | [] () | iso_639_5 | () [] | jwhois | [] [] [] [] | kbd | [] [] | klavaro | [] [] [] [] [] | ld | | leafpad | [] [] [] [] [] [] [] [] | libc | [] [] [] | libexif | [] () [] | libextractor | [] | libgnutls | [] | libgphoto2 | [] | libgphoto2_port | [] [] [] [] [] | libgsasl | [] [] [] [] | libiconv | [] [] [] [] [] | libidn | [] [] [] | liferea | [] [] [] [] () [] [] | lilypond | | lordsawar | | lprng | [] | lynx | [] [] | m4 | [] [] [] [] [] | mailfromd | [] | mailutils | [] | make | [] [] [] | man-db | [] [] [] | man-db-manpages | [] [] [] | midi-instruments | [] [] [] [] [] [] [] [] | minicom | [] [] [] [] | mkisofs | [] [] [] | myserver | [] [] | nano | [] [] [] [] [] [] | opcodes | | parted | [] [] [] [] [] [] | pies | [] | pnmixer | [] | popt | [] [] [] [] [] [] | procps-ng | [] | procps-ng-man | [] | psmisc | [] [] [] [] | pspp | [] [] | pushover | | pwdutils | [] | pyspread | [] [] | radius | [] [] | recode | [] [] [] [] [] [] [] [] | recutils | [] [] | rpm | [] | rush | [] [] [] | sarg | [] [] | sed | [] [] [] [] [] [] [] [] | sharutils | [] [] [] | shishi | [] [] | skribilo | [] | solfege | [] [] [] | solfege-manual | [] [] | spotmachine | [] [] | sudo | [] [] [] [] [] [] | sudoers | [] [] [] [] | sysstat | [] [] [] [] [] | tar | [] [] [] [] [] | texinfo | [] [] [] | texinfo_document | [] [] | tigervnc | [] [] [] | tin | [] | tin-man | | tracgoogleappsa... | [] [] [] [] | trader | [] [] | util-linux | [] [] | ve | [] [] [] | vice | | vmm | | vorbis-tools | [] [] [] | wastesedge | | wcd | | wcd-man | | wdiff | [] [] [] [] [] | wget | [] [] [] [] [] | wyslij-po | [] [] [] [] | xboard | [] [] [] | xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] | xkeyboard-config | [] [] [] [] | +------------------------------------------------+ nn or pa pl ps pt pt_BR ro ru rw sk sl sq sr 7 3 6 114 1 12 88 32 82 3 40 45 7 101 sv sw ta te tg th tr uk ur vi wa wo zh_CN +----------------------------------------------+ a2ps | [] [] [] [] [] | aegis | [] | anubis | [] [] [] [] | aspell | [] [] [] [] [] | bash | [] [] [] [] | bfd | [] [] [] | binutils | [] [] [] | bison | [] [] [] [] | bison-runtime | [] [] [] [] [] [] | buzztrax | [] [] [] | ccd2cue | [] [] [] | ccide | [] [] [] [] | cflow | [] [] [] [] | clisp | | coreutils | [] [] [] | cpio | [] [] [] [] [] | cppi | [] [] [] [] | cpplib | [] [] [] [] [] | cryptsetup | [] [] [] | datamash | [] [] [] | denemo | [] | dfarc | [] [] | dialog | [] [] [] [] [] [] | dico | [] | diffutils | [] [] [] [] [] | dink | [] | direvent | [] [] | doodle | [] [] | dos2unix | [] [] [] [] | dos2unix-man | [] [] [] | e2fsprogs | [] [] [] [] | enscript | [] [] [] [] | exif | [] [] [] [] [] | fetchmail | [] [] [] [] | findutils | [] [] [] [] [] | flex | [] [] [] [] | freedink | [] [] [] | fusionforge | | gas | [] | gawk | [] [] [] | gcal | [] [] [] | gcc | [] | gdbm | [] [] | gettext-examples | [] [] [] [] [] | gettext-runtime | [] [] [] [] [] | gettext-tools | [] [] [] [] [] | gjay | [] [] [] | glunarclock | [] [] [] [] | gnubiff | [] [] | gnubik | [] [] [] [] | gnucash | () () () () [] | gnuchess | [] [] [] | gnulib | [] [] [] [] | gnunet | | gnunet-gtk | | gold | [] [] | gphoto2 | [] [] [] [] | gprof | [] [] [] [] | gramadoir | [] [] [] | grep | [] [] [] [] [] | grub | [] [] [] [] | gsasl | [] [] [] [] | gss | [] [] [] | gst-plugins-bad | [] [] [] [] [] | gst-plugins-base | [] [] [] [] [] | gst-plugins-good | [] [] [] [] [] | gst-plugins-ugly | [] [] [] [] [] | gstreamer | [] [] [] [] [] | gtick | [] [] [] | gtkam | [] [] [] [] | gtkspell | [] [] [] [] [] [] [] | guix | | guix-packages | | gutenprint | [] [] [] [] | hello | [] [] [] [] [] [] | help2man | [] [] [] | help2man-texi | [] | hylafax | [] | idutils | [] [] [] | iso_15924 | [] () [] [] () [] | iso_3166 | [] [] () [] [] () [] [] | iso_3166_2 | () [] [] () [] | iso_4217 | [] () [] [] () [] | iso_639 | [] [] [] () [] [] () [] [] | iso_639_3 | [] () [] [] () | iso_639_5 | () [] () | jwhois | [] [] [] [] | kbd | [] [] [] [] | klavaro | [] [] [] [] [] [] | ld | [] [] [] [] [] | leafpad | [] [] [] [] [] [] | libc | [] [] [] [] [] | libexif | [] [] () | libextractor | [] [] | libgnutls | [] [] [] [] | libgphoto2 | [] [] [] | libgphoto2_port | [] [] [] [] | libgsasl | [] [] [] [] | libiconv | [] [] [] [] [] | libidn | () [] [] [] | liferea | [] [] [] [] [] | lilypond | [] | lordsawar | | lprng | [] | lynx | [] [] [] [] | m4 | [] [] [] | mailfromd | [] [] | mailutils | [] | make | [] [] [] [] | man-db | [] [] [] | man-db-manpages | [] [] | midi-instruments | [] [] [] [] [] [] | minicom | [] [] | mkisofs | [] [] [] | myserver | [] | nano | [] [] [] [] | opcodes | [] [] [] | parted | [] [] [] [] [] | pies | [] [] | pnmixer | [] [] [] | popt | [] [] [] [] [] [] [] | procps-ng | [] [] | procps-ng-man | [] | psmisc | [] [] [] [] | pspp | [] [] [] | pushover | [] | pwdutils | [] [] | pyspread | [] | radius | [] [] | recode | [] [] [] [] | recutils | [] [] [] | rpm | [] [] [] [] | rush | [] [] | sarg | | sed | [] [] [] [] [] | sharutils | [] [] [] [] | shishi | [] [] | skribilo | [] [] | solfege | [] [] [] [] | solfege-manual | [] | spotmachine | [] [] [] | sudo | [] [] [] [] [] | sudoers | [] [] [] [] | sysstat | [] [] [] [] [] | tar | [] [] [] [] [] | texinfo | [] [] [] | texinfo_document | [] | tigervnc | [] [] [] | tin | [] | tin-man | | tracgoogleappsa... | [] [] [] [] [] | trader | [] | util-linux | [] [] [] [] | ve | [] [] [] [] | vice | () () | vmm | | vorbis-tools | [] [] | wastesedge | | wcd | [] [] [] | wcd-man | [] | wdiff | [] [] [] [] | wget | [] [] [] | wyslij-po | [] [] | xboard | [] [] | xdg-user-dirs | [] [] [] [] [] [] [] [] | xkeyboard-config | [] [] [] [] | +----------------------------------------------+ sv sw ta te tg th tr uk ur vi wa wo zh_CN 106 1 4 3 0 13 51 115 1 125 7 1 100 zh_HK zh_TW +-------------+ a2ps | | 30 aegis | | 9 anubis | | 19 aspell | | 29 bash | [] | 23 bfd | | 11 binutils | | 12 bison | [] | 18 bison-runtime | [] | 38 buzztrax | | 9 ccd2cue | | 10 ccide | | 17 cflow | | 16 clisp | | 10 coreutils | | 18 cpio | | 20 cppi | | 17 cpplib | [] | 19 cryptsetup | | 14 datamash | | 11 denemo | | 5 dfarc | | 17 dialog | [] | 42 dico | | 6 diffutils | | 22 dink | | 10 direvent | | 11 doodle | | 12 dos2unix | [] | 18 dos2unix-man | | 9 e2fsprogs | | 15 enscript | | 21 exif | | 27 fetchmail | | 19 findutils | | 29 flex | [] | 19 freedink | | 24 fusionforge | | 3 gas | | 5 gawk | | 13 gcal | | 8 gcc | | 2 gdbm | | 10 gettext-examples | [] [] | 40 gettext-runtime | [] [] | 35 gettext-tools | [] | 24 gjay | | 9 glunarclock | [] | 27 gnubiff | | 9 gnubik | | 19 gnucash | () | 6 gnuchess | | 11 gnulib | | 23 gnunet | | 1 gnunet-gtk | | 1 gold | | 7 gphoto2 | [] | 19 gprof | | 21 gramadoir | | 14 grep | [] | 31 grub | | 21 gsasl | [] | 19 gss | | 17 gst-plugins-bad | | 21 gst-plugins-base | | 27 gst-plugins-good | | 32 gst-plugins-ugly | | 34 gstreamer | [] | 32 gtick | | 19 gtkam | | 24 gtkspell | [] [] | 48 guix | | 2 guix-packages | | 0 gutenprint | | 15 hello | [] | 30 help2man | | 18 help2man-texi | | 5 hylafax | | 5 idutils | | 14 iso_15924 | [] | 23 iso_3166 | [] [] | 58 iso_3166_2 | | 9 iso_4217 | [] [] | 28 iso_639 | [] [] | 46 iso_639_3 | | 10 iso_639_5 | | 2 jwhois | [] | 20 kbd | | 17 klavaro | | 30 ld | [] | 15 leafpad | [] | 39 libc | [] | 24 libexif | | 10 libextractor | | 5 libgnutls | | 13 libgphoto2 | | 10 libgphoto2_port | [] | 19 libgsasl | | 18 libiconv | [] | 29 libidn | | 17 liferea | | 29 lilypond | | 11 lordsawar | | 3 lprng | | 3 lynx | | 19 m4 | [] | 22 mailfromd | | 4 mailutils | | 6 make | | 19 man-db | | 15 man-db-manpages | | 10 midi-instruments | [] | 43 minicom | [] | 17 mkisofs | | 13 myserver | | 9 nano | [] | 30 opcodes | | 12 parted | [] | 23 pies | | 4 pnmixer | | 9 popt | [] | 36 procps-ng | | 5 procps-ng-man | | 4 psmisc | [] | 22 pspp | | 13 pushover | | 6 pwdutils | | 8 pyspread | | 6 radius | | 9 recode | | 31 recutils | | 10 rpm | [] | 13 rush | | 10 sarg | | 4 sed | [] | 35 sharutils | | 13 shishi | | 7 skribilo | | 7 solfege | | 21 solfege-manual | | 9 spotmachine | | 11 sudo | | 26 sudoers | | 22 sysstat | | 23 tar | [] | 30 texinfo | | 17 texinfo_document | | 13 tigervnc | | 14 tin | [] | 7 tin-man | | 1 tracgoogleappsa... | [] | 22 trader | | 12 util-linux | | 13 ve | | 14 vice | | 1 vmm | | 3 vorbis-tools | | 13 wastesedge | | 3 wcd | | 8 wcd-man | | 3 wdiff | [] | 23 wget | | 21 wyslij-po | | 14 xboard | | 10 xdg-user-dirs | [] [] | 68 xkeyboard-config | [] | 28 +-------------+ 89 teams zh_HK zh_TW 166 domains 7 42 2809 Some counters in the preceding matrix are higher than the number of visible blocks let us expect. This is because a few extra PO files are used for implementing regional variants of languages, or language dialects. For a PO file in the matrix above to be effective, the package to which it applies should also have been internationalized and distributed as such by its maintainer. There might be an observable lag between the mere existence a PO file and its wide availability in a distribution. If Jun 2014 seems to be old, you may fetch a more recent copy of this 'ABOUT-NLS' file on most GNU archive sites. The most up-to-date matrix with full percentage details can be found at 'http://translationproject.org/extra/matrix.html'. 1.5 Using 'gettext' in new packages =================================== If you are writing a freely available program and want to internationalize it you are welcome to use GNU 'gettext' in your package. Of course you have to respect the GNU Lesser General Public License which covers the use of the GNU 'gettext' library. This means in particular that even non-free programs can use 'libintl' as a shared library, whereas only free software can use 'libintl' as a static library or use modified versions of 'libintl'. Once the sources are changed appropriately and the setup can handle the use of 'gettext' the only thing missing are the translations. The Free Translation Project is also available for packages which are not developed inside the GNU project. Therefore the information given above applies also for every other Free Software Project. Contact 'coordinator@translationproject.org' to make the '.pot' files available to the translation teams. ibus-1.5.32/AUTHORS0000644000000000000000000000263414775216466007272 Peng Huang Maintainers: ----------- Takao Fujiwara Translators: ----------- ar.po: muayyad.alsadi@ojuba.org as.po: Amitakhya Phukan bn_IN.po: Runa Bhattacharjee ca.po: Xavier Conde Rueda da.po: Kris Thomsen de.po: Fabian Affolter en_GB.po: Steven Panek es.po: Domingo Becker fr.po: Julroy67 gu.po: Sweta Kothari hi.po: Rajesh Ranjan hu.po: Sulyok Peti it.po: Milo Casagrande ja.po: UTUMI Hirosi kn.po: Shankar Prasad Venkateshbhat ko.po: Eun Ju Kim ml.po: Ani Peter mr.po: sandeep shedmake or.po: Manoj Giri pa.po: Amanpreet Singh pl.po: Piotr Drąg pt_BR.po: Glaucia Freitas ru.po: koterpillar sr.po sr@latin.po: Miloš Komarčević te.po krishna k ta.po: Felix vi.po: Lê Quốc Tuấn zh_CN.po: Peng Huang zh_HK.po: Caius "kaio" Chance zh_TW.po: Ding-Yi Chen ibus-1.5.32/COPYING0000644000000000000000000006350414775216466007260 GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 Copyright (C) 1991, 1999 Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. GNU LESSER GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library 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 Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! ibus-1.5.32/ChangeLog0000644000000000000000000420700414775217702007770 commit 0fd4e408a52d3d15179c643fd54d310aafd8875f Author: fujiwarat Date: 2025-03-19 13:18:04 +0900 Release 1.5.32-rc2 M configure.ac commit 48a882ebb112a04c303b118d6cd2702b65231626 Author: Temuri Doghonadze Date: 2025-03-19 12:12:57 +0900 po: Update translation (Georgian) Update po/ka.po at 51.4% https://translate.fedoraproject.org/projects/ibus/ibus/ka/ BUG=https://github.com/ibus/ibus/pull/2733 M po/ka.po commit f88cb1d369ebbf7701acbdaa9b475c2d83d06e3d Author: Weblate Translation Memory Date: 2025-03-19 12:12:52 +0900 po: Update translation (Georgian) Update po/ka.po at 51.3% https://translate.fedoraproject.org/projects/ibus/ibus/ka/ BUG=https://github.com/ibus/ibus/pull/2733 M po/ka.po commit 25ed1b9e91d4b287eef1b64c0de0259d5911fd13 Author: Rafael Fontenelle Date: 2025-03-19 12:12:51 +0900 po: Update translation (Portuguese (Brazil)) Update po/pt_BR.po at 93.2% https://translate.fedoraproject.org/projects/ibus/ibus/pt_BR/ BUG=https://github.com/ibus/ibus/pull/2733 M po/pt_BR.po commit 866c93573b66ae5b4b289f4b476562de5f95ae39 Author: fujiwarat Date: 2025-03-19 11:25:39 +0900 src/ibuskeyuni: Update Unicode table with keysym Update ibus_unicode_to_keyval() and ibus_keyval_to_unicode() BUG=https://github.com/ibus/ibus/issues/2728 M src/ibuskeys.h M src/ibuskeyuni.c commit 1f35eaa7789287e37838264b062e37cce34f01d3 Author: fujiwarat Date: 2025-03-19 11:17:10 +0900 client/wayland: Fix infinite Return key in xterm Currently the repeating key feature of IBus is disabled when the focus is changed but the feature of the Wayland compositor still happens in the Sway desktop session when invoke xterm by manual in foot. I think Sway should stop the repeating key feature when the focus is changed from the Wayland application to the non-Wayland application. I add a workaround to call `zwp_virtual_keyboard_v1_key()` with the `WL_KEYBOARD_KEY_STATE_RELEASED` flag to stop the feature of the Sway compositor after the IBus repeating key timeout. M client/wayland/ibuswaylandim.c commit 6ac61886389bc0d42be97148742805d04c493598 Author: fujiwarat Date: 2025-03-19 11:15:21 +0900 ui/gtk3: Fix time lag of CandidatePanel in X11 The timed `set_lookup_table()` is a workaround with the Wayland input-method protocol under the construction to stop the many D-Bus methods but it should not affect Xorg UI at least. Now `m_is_wayland flag` is inherited to the CandidatePanel and Switcher and add `m_first_set_lookup_table` flag newly to enhance the lag with the Wayland input-method protocol. Also fix compile warnings with `valac` in `xkblayout.vala`. Fixes: https://github.com/ibus/ibus/commit/d5e6e71 BUG=https://github.com/ibus/ibus/issues/2740 M ui/gtk3/candidatepanel.vala M ui/gtk3/panel.vala M ui/gtk3/switcher.vala M ui/gtk3/xkblayout.vala commit acccc9f44a7b9cf57ec8b48d33a854d611178ea1 Author: fujiwarat Date: 2025-03-19 10:42:48 +0900 bus/engineproxy: Clear object pointers with task free BUG=rhbz#2341930 M bus/engineproxy.c commit 0c086223862549efcfe440d47c9b7f5a56cea0c4 Author: fujiwarat Date: 2025-03-19 10:39:56 +0900 bus/engineproxy: Send FocusIn signal again after delayed FocusId property The FocusId D-Bus property is checked after both bus/EngineProxy and src/IBusEngine is generated with an idle then the first FocusIn D-Bus signal is sent without checking the FocusId property when ibus-daemon runs. The solution is to send the FocusIn signal again in case the FocusId property is TRUE. BUG=https://github.com/ibus/ibus/pull/2717 M bus/engineproxy.c commit 67fbd9ad005d6117ab5beeb6ed14c751db5c8d95 Author: Ludovico de Nittis Date: 2025-03-11 16:26:59 +0900 bus/inputcontext: Use the correct string marshaller As declared in the `g_signal_new()` function, the correct marshaller type should be `OBJECT__STRING`. BUG=https://github.com/ibus/ibus/pull/2737 M bus/inputcontext.c commit 646cf459902c35268901a8713cd7cd88a4cf7cf9 Author: fujiwarat Date: 2025-03-05 08:41:34 +0900 client/gtk2: Revert "Add a pad to the cursor height in Wayland" Fix the regression in gnome-shell. BUG=https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/8228 Fixes: https://github.com/ibus/ibus/commit/c38d82f M client/gtk2/ibusimcontext.c commit fcaecb72f99a94fbe200a1e50b5323dbba7a08cc Author: fujiwarat Date: 2025-02-27 23:00:10 +0900 Release 1.5.32-rc1 M configure.ac commit fb9769daa1b4d122b75ad110f221a46da1879fce Author: fujiwarat Date: 2025-02-27 22:59:30 +0900 engine: Update simple.xml with xkeyboard-config 2.44 M engine/simple.xml.in commit 083602062371123c51a896c8222826c3eeaeeae4 Author: Yuri Chornoivan Date: 2025-02-23 01:21:54 +0100 po: Update translation (Ukrainian) Update po/uk.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/uk/ BUG=https://github.com/ibus/ibus/pull/2721 M po/uk.po commit f02dfd4a353cd3c6c569c08c30e7ae9875acb1a6 Author: ButterflyOfFire Date: 2025-02-23 01:21:54 +0100 po: Update translation (Kabyle) Update po/kab.po at 5.3% https://translate.fedoraproject.org/projects/ibus/ibus/kab/ BUG=https://github.com/ibus/ibus/pull/2721 M po/kab.po commit 37348b10736470173d36c2024ae4392f35f33a6d Author: Salvatore Cocuzza Date: 2025-02-23 01:21:54 +0100 po: Update translation (Italian) Update po/it.po at 42.7% https://translate.fedoraproject.org/projects/ibus/ibus/it/ BUG=https://github.com/ibus/ibus/pull/2721 M po/it.po commit c66fdffba36281571069a7368a49e1871871db97 Author: joo es Date: 2025-02-23 01:21:54 +0100 po: Update translation (Arabic) Update po/ar.po at 8.7% https://translate.fedoraproject.org/projects/ibus/ibus/ar/ BUG=https://github.com/ibus/ibus/pull/2721 M po/ar.po commit 686479e6ae5b7ea5aca3bc24af6ec4f69549e9f3 Author: Piotr Drąg Date: 2025-02-23 01:21:54 +0100 po: Update translation (Polish) Update po/pl.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/pl/ BUG=https://github.com/ibus/ibus/pull/2721 M po/pl.po commit 52aabd74b82d7b2548d95570444857c7f0facaa8 Author: 김인수 Date: 2025-02-23 01:21:53 +0100 po: Update translation (Korean) Update po/ko.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/ko/ BUG=https://github.com/ibus/ibus/pull/2721 M po/ko.po commit 11cbe0419e943dd1eacdd1b7135d129d58b35cfd Author: Weblate Translation Memory Date: 2025-02-23 01:21:53 +0100 po: Update translation (Korean, Swedish) Update po/ko.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/ko/ Update po/sv.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/sv/ BUG=https://github.com/ibus/ibus/pull/2721 M po/ko.po M po/sv.po commit 29a9c609fddd9fef829720c3cfec70f6418d71ea Author: Luna Jernberg Date: 2025-02-23 01:21:53 +0100 po: Update translation (Swedish) Update po/sv.po at 98% https://translate.fedoraproject.org/projects/ibus/ibus/sv/ BUG=https://github.com/ibus/ibus/pull/2721 M po/sv.po commit 6b3800bbbbeb172bee379622bd50f7b753319162 Author: Mike FABIAN Date: 2025-02-23 01:21:53 +0100 po: Update translation (German) Update po/de.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/de/ BUG=https://github.com/ibus/ibus/pull/2721 M po/de.po commit 98a738492830143fa60f3b933c9399ed32f8ddad Author: fujiwarat Date: 2025-02-27 21:46:42 +0900 bindings/pygobject: Call IBus.init() importing IBus Importing Gtk calls gtk_init_check() which calls _gtk_ensure_resources() and IBus follows it. Importing IBus calls ibus_init() which calls _ibus_register_resource() which initializes EN compose file. M bindings/pygobject/gi/overrides/IBus.py commit 8490abc3c20d49e48cc5ea930ee853118e05858c Author: fujiwarat Date: 2025-02-27 21:46:33 +0900 src/ibusenginesimple: Generate EN compose in class method GtkIMContextSimple generates the EN compose table in the class method and IBus follows it. Fixes: https://github.com/ibus/ibus/commit/28b357d M src/ibuscomposetable.c M src/ibusenginesimple.c M src/ibusenginesimpleprivate.h commit 09ea06971d7f6dd50df57b29ada6c992026b5105 Author: fujiwarat Date: 2025-02-27 21:46:23 +0900 src: Revert "Do not load en-US compose table by default" GTK4 loads EN compose file by default actually and it was my fault. Fixes: https://github.com/ibus/ibus/commit/28b357d BUG=https://github.com/ibus/ibus/issues/2706 BUG=https://github.com/ibus/ibus/issues/2727 M src/gencomposetable.c M src/ibuscomposetable.c M src/ibuscomposetable.h M src/ibusenginesimple.c M src/ibusenginesimpleprivate.h M src/tests/ibus-compose.c commit b185b211244392519b615615653cf8c6640e7455 Author: fujiwarat Date: 2025-02-27 21:29:35 +0900 client/x11: Use gdk_init() instead of gtk_init() RSS can be reduced from about 28MB to 12MB in GNOME Wayland. BUG=https://github.com/ibus/ibus/issues/2547 M client/x11/main.c commit 719142e700efde84c9270f687be4337db126e0f8 Author: fujiwarat Date: 2025-02-27 21:29:26 +0900 tools: Fix infinite Return key with ibus exit in KDE Wayland Plasma compositor causes the key repeating if the KeyRelease is not received in Wayland and wait for 1 sec after Enter the `ibus exit` command in Plasma Wayland. BUG=rhbz#2267618 M tools/main.vala commit b835c0d1bcaa0182d34a871ec1b76f5c2afc4b6c Author: fujiwarat Date: 2025-02-27 21:29:14 +0900 client/wayland: Enable system xkb_keymap after IBus keymap An IBus global engine is sometimes configured before the Wayland system keymap is configured and need to fix the timing issue. Fixes: https://github.com/ibus/ibus/commit/3ea43b7 M client/wayland/ibuswaylandim.c commit c38d82fc4213e3d4a3acdbdb25ab3a4f1c50340f Author: fujiwarat Date: 2025-02-27 21:29:03 +0900 client/gtk2: Add a pad to the cursor height in Wayland This is a common issue in GTK3 and GTK4 and might be a regression anywhere. M client/gtk2/ibusimcontext.c commit 63edfd8900ae2ac8b71294985e0534a13d52f224 Author: fujiwarat Date: 2025-02-27 21:28:53 +0900 Build without X11 Run ./configure --disable-xim --disable-gtk2 BUG=https://github.com/ibus/ibus/issues/2726 M client/gtk2/ibusimcontext.c M configure.ac M ui/gtk3/Makefile.am M ui/gtk3/bindingcommon.vala M ui/gtk3/handle.vala M ui/gtk3/indicator.vala M ui/gtk3/keybindingmanager.vala M ui/gtk3/panel.vala M ui/gtk3/propertypanel.vala commit fb4d7baf7e45c84a6d2b1d8701e24087c742c285 Author: fujiwarat Date: 2025-02-19 01:18:39 +0900 ui/gtk3: Fix SEGV in Xorg without IBusWaylandIM M ui/gtk3/application.vala M ui/gtk3/candidatepanel.vala commit 338968012c3869bc5ce9eac6733f430a3fc69c79 Author: fujiwarat Date: 2025-02-14 12:59:41 +0900 tools: Fix ibus start with verbose typo Fixes: https://github.com/ibus/ibus/commit/c5748e6 BUG=rhbz#2342280 M tools/main.vala commit 70b96f9182f4b5d523b992425394e4fd7bf715a5 Author: fujiwarat Date: 2025-02-07 08:42:03 +0900 Release 1.5.32-beta2 M bus/ibusimpl.c M configure.ac M src/ibusbus.c M src/ibustypes.h commit 28b357d9d197318cb3219c9434bcc0d86bed1b8c Author: fujiwarat Date: 2025-02-06 23:43:05 +0900 src: Do not load en-US compose table by default GTK4 now does not load en-US compose table by default and the new keyword "include %L" can loads the en-US compose table. If the old compose cache version 4 is found, the compose file will be rewritten to add the line of "include %L". IBus also follows it. Fixes: https://gitlab.gnome.org/GNOME/gtk/-/commit/87e2a02 BUG=https://github.com/ibus/ibus/issues/2706 M src/gencomposetable.c M src/ibuscomposetable.c M src/ibuscomposetable.h M src/ibusenginesimple.c M src/ibusenginesimpleprivate.h M src/tests/ibus-compose.c commit 486799f2778297439acedb53e43ec92d51dd4f33 Author: fujiwarat Date: 2025-02-06 14:26:03 +0900 src/ibusenginesimple: Keep compose preedit with wrong sequence GTK4 keeps the compose preedit with the incompleted key event sequences and IBus also follows it. Fixes: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3799/diffs?commit_id=76d67b5 BUG=https://github.com/ibus/ibus/issues/2706 M src/ibusenginesimple.c commit 3d6d4b2eb69aba9768b9dcfa4691dcc55dca4e04 Author: fujiwarat Date: 2025-02-06 12:41:53 +0900 ui/gtk3: Update copyright in about dialog Also update the POT file. Fixes: https://github.com/ibus/ibus/commit/4043c4f Fixes: https://github.com/ibus/ibus/commit/33139a0 M po/ibus10.pot M ui/gtk3/panel.vala commit f4b4fd07f11acef16ccd589962eeab4bee6da966 Author: fujiwarat Date: 2025-02-06 12:40:55 +0900 po: Update translation (Japanese) Update po/ja.po at 99% https://translate.fedoraproject.org/projects/ibus/ibus/ja/ BUG=https://github.com/ibus/ibus/pull/2689 M po/ja.po commit 9d748f27416a553c3d7b7ce23304c98ed8051929 Author: Boyuan Yang <073plan@gmail.com> Date: 2025-02-06 12:25:17 +0900 po: Update translation (Chinese (Simplified) (zh_CN)) Update po/zh_CN.po at 97.6% https://translate.fedoraproject.org/projects/ibus/ibus/zh_CN/ BUG=https://github.com/ibus/ibus/pull/2689 M po/zh_CN.po commit 17476a994bc1972ca21e53da6326b8e9505fccce Author: Andika Triwidada Date: 2025-02-06 12:25:12 +0900 po: Update translation (Indonesian) Update po/id.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/id/ BUG=https://github.com/ibus/ibus/pull/2689 M po/id.po commit 04a70004369a977c8d92c264042194210e57a566 Author: ButterflyOfFire Date: 2025-02-06 12:24:58 +0900 po: Update translation (Kabyle) Update po/kab.po at 5.4% https://translate.fedoraproject.org/projects/ibus/ibus/kab/ BUG=https://github.com/ibus/ibus/pull/2689 M po/LINGUAS A po/kab.po commit 3ea43b744e0e1df78c2a92ba79e8a1a1dd2dc467 Author: fujiwarat Date: 2025-02-01 22:37:21 +0900 client/wayland: Copy system xkb_keymap for compose keys The Wayland input-method can receive the system xkb_keymap which is configured by the Wayland compositor. I could not find a clear way to extract the compose options from the system xkb_keymap or xkb_state and now refer the keyboard to check if a key is assigned to the compose key. Also now IBus refers XKB_DEFAULT_OPTIONS environment variable to relative with the struct xkb_rule_names.options. [1] [1] https://github.com/xkbcommon/libxkbcommon/blob/master/include/xkbcommon/xkbcommon.h#L393 BUG=https://github.com/ibus/ibus/issues/2579 M client/wayland/ibuswaylandim.c M ui/gtk3/xkblayout.vala commit c50d0d5c4304877c0474c2fc1adfbaaacd3a43ec Author: Diego Nieto Cid Date: 2025-02-01 22:20:45 +0900 src/tests/runtest: Use POSIX compliant redirection Replace `&> /dev/null` redirection with the standard variation `> /dev/null 2>&1` which avoids failure when running the script on dash. BUG=https://github.com/ibus/ibus/issues/2708 M src/tests/runtest commit 18bfdf4f9e921dfcb3057fa964fde371dbc50332 Author: Jules Bertholet Date: 2025-01-31 11:24:01 +0900 Add Overlay1_Enable to IBUS_COMPOSE_IGNORE_KEYLIST Follow-up to 6b80252 to ensure the `Overlay1_Enable` and `Overlay2_Enable` keys are also properly ignored. `Mode_switch` can be replaced with `ISO_Group_Shift`. Also updates the `repeat_ignore` list in `ibuswaylandim.c`, for consistency. Fixes: https://github.com/ibus/ibus/commit/6b80252 BUG=https://github.com/ibus/ibus/issues/2667 M client/wayland/ibuswaylandim.c M src/ibusaccelgroup.c M src/ibusenginesimple.h commit 414514d4f059dc450156203d8468e1abaaee4f3f Author: fujiwarat Date: 2025-01-30 19:29:58 +0900 github: Update latest issue template The template file at the root(.github/foo.md) is no longer used in GitHub issue. https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository M .github/ISSUE_TEMPLATE.md A .github/ISSUE_TEMPLATE/bug_report.yml commit 4364c53e2f9f8c6207a0c0210a023394172c7909 Author: fujiwarat Date: 2025-01-24 13:38:17 +0900 src/ibuskeysyms: Fix typo IBUS_KEY_Ukranian_je M src/ibuskeysyms.h commit d039b95b1af14fd34167a4ca038938cef2ea41ca Author: fujiwarat Date: 2025-01-24 10:01:11 +0900 util/IMdkit: Fix incompatible-pointer-types in TransportSW.checkAddr BUG=rhbz#2340629 M util/IMdkit/Xi18n.h M util/IMdkit/i18nMethod.c M util/IMdkit/i18nOffsetCache.c commit aac5446e8c98db934912b9b15a1ef92c3b7e4c8c Author: fujiwarat Date: 2025-01-24 09:40:31 +0900 src: Fix declaration errors with GCC 15 BUG=rhbz#2340629 M src/ibuscomposetable.c M src/ibusenginesimple.c commit c5748e6257e7f203595784e9a10e144e86379a80 Author: fujiwarat Date: 2025-01-21 20:37:20 +0900 client/wayland: Fix repeating key between focus M client/wayland/ibuswaylandim.c M tools/main.vala commit 6f6a5d94f4052d8cfd42f6b68268804f7d803aa4 Author: fujiwarat Date: 2025-01-13 17:21:23 +0900 Release 1.5.32-beta1 M configure.ac commit 6b80252afabc8d2a02ef2a53156015d088828a5f Author: Jules Bertholet Date: 2025-01-13 10:45:47 +0900 src: Ignore latch keys in accelerators and Compose The sticky shift key and etc should be ignored as the compose keys. Fixes: https://github.com/ibus/ibus/commit/47b8198 BUG=https://github.com/ibus/ibus/issues/2667 M src/ibusaccelgroup.c M src/ibusenginesimple.h commit 33139a0defead17efed19f2bee97afb5679b17b9 Author: fujiwarat Date: 2025-01-13 00:09:56 +0900 tools: Implement ibus start --type wayland option The option can run IBus with the Wayland input-method protocol version 2. M tools/Makefile.am M tools/main.vala commit 30e05980847a94f4babbc3325b2a87654bd9b24c Author: fujiwarat Date: 2025-01-13 00:09:33 +0900 github/workflows: Replace Fedora 40 with Fedora 42 Add wayland-protocols package in Fedora and Ubuntu M .github/workflows/main.yml commit c22d4123bf5dbb58c38a6332acc529508275c04a Author: fujiwarat Date: 2025-01-10 21:05:47 +0900 client/wayland: Save multiple seats Some privileged clients like WayVNC are even able to create a temporary wl_seat via ext-transient-seat protocol to represent remote input devices. Also call zwp_input_method_keyboard_grab_v2_release() in the input-method deactivation. Also sets "" to XKB options to fix SEGV in xkb_keymap_new_from_names() BUG=https://github.com/ibus/ibus/pull/2695#discussion_r1853344700 M client/wayland/ibuswaylandim.c commit 7b30d32d063043732a8a3abfb3c148279d6c70c0 Author: fujiwarat Date: 2025-01-10 21:05:39 +0900 client/wayland: Wayland protocol files in Makefile Get a request to make all protocol files with make command but @wayland_scanner_rules@ has a too wide pattern match and now it's deleted and each protocl files are described in Makefile. BUG=https://github.com/ibus/ibus/pull/2695#discussion_r1853370688 M client/wayland/Makefile.am M configure.ac commit da30e1d695b5bef7129d8b9917d8ffb2e0a51707 Author: fujiwarat Date: 2025-01-10 21:05:29 +0900 client/wayland: Fix unnecessary key repeat with XIM When a non-Wayland application likes xterm is invoked with CLI in a Wayland application likes gnome-terminal, the release key of Return key could be sent to the non-Wayland application and the press key could be be a key repeat. Check priv->ibuscontext to fix the issue. M client/wayland/ibuswaylandim.c commit a9916dc0e11fcbdb87551ec54908a7e3b184a773 Author: fujiwarat Date: 2025-01-10 21:05:12 +0900 ui/gtk3: Implement Super-space with XIM in Wayland Fix the third issue in 38ba099 for IME switcher to take the focus with XIM or GTK2 applications in Wayland. Send keyval and state in bus.global_shortcut_key_responded signal so that the focused IME switcher can get the release key of the modifier key. Use IBus.MODIFIER_FILTER instead of KeybindingManager.MODIFIER_FILTER Fixes: https://github.com/ibus/ibus/commit/38ba099 BUG=https://github.com/ibus/ibus/issues/2562 M ui/gtk3/application.vala M ui/gtk3/bindingcommon.vala M ui/gtk3/keybindingmanager.vala M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit a4c44797ff2cb28a1ac0af93ac397d53e8663d67 Author: fujiwarat Date: 2025-01-07 09:11:25 +0900 Change GlobalShortcutKeyResponded D-Bus signal for XIM in Wayland Send keyval and state of the active shortcut key of the IME switcher with the GlobalShortcutKeyResponded D-Bus signal in IBusImple and "global-shortcut-key-responded" GObject signal in IBusBus so that the focused IME switcher can handle the shortcut key in Wayland. Make a common const variable IBUS_MODIFIER_FILTER in ibustypes.h to get the user modifier key. BUG=https://github.com/ibus/ibus/issues/2562 M bus/ibusimpl.c M src/ibusbus.c M src/ibusengine.c M src/ibusmarshalers.list M src/ibustypes.h commit db6de3a04594dd261a0c45c5739a81a2d1c8d5b9 Author: fujiwarat Date: 2025-01-07 09:11:15 +0900 client/wayland: Implement key repeat in Wayland zwp_input_method_keyboard_grab_v2_listener.repeat_info() is available in the Wayland input-method protocol V2. wl_keyboard_listener.repeat_info() is also available in the Wayland input-method protocol V1 with the wl_keyboard version 4 but seems Plasma Wayland does not support the API yet so ibus-wayland sets the default delay = 600 milliseconds and rate = 25 milliseconds. ibus-wayland uses GTimeoutSource to implement the key repeat instead of the custom idling function. BUG=https://github.com/ibus/ibus/issues/2610 M client/wayland/ibuswaylandim.c M client/wayland/ibuswaylandim.h commit e5fc9e4e1c2d6c6aaf3bb33d36fee8561d8dce04 Author: fujiwarat Date: 2025-01-07 09:11:01 +0900 ui/gtk3: Enhance some key repeat issues in Wayland Add candidatepanel:m_prev_cursor to work with a space key repeat. Delete panel:m_switcher_waiting_release thread workaround since the key release issue is fixed for Switcher and not to hide Switcher with a timeout. check if the monitor is null before the switcher is shown. BUG=https://github.com/ibus/ibus/issues/2610 M ui/gtk3/candidatepanel.vala M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit d5e6e71afa3d0702c677923e62b467ae8978bcea Author: fujiwarat Date: 2025-01-06 20:37:58 +0900 ui/gtk3: Implement virtual Wayland input-method with XIM There were three issues. The first issue was D-Bus signals weren't sent to the IBus panel for the key release events of the shortcut key of the IME Switcher popup and updating preedit and lookup table when XIM or GTK2 applications are used, which don't support Wayland. Seems the problem is caused by adding IBusWaylandSource in ibus/client/wayland to use the duplicated event handling against glib2 and it's fixed to delete it. The second issue was how to implement Wayland with XIM and GTK2. I tried to handle the Wayland input-method activation/deactivation with creating another Wayland compositor and text-input protocols. But seems it needs to implement a custom wl_surface with the drawing input contexts and it's complicated for me at the moment while GNOME/mutter handles it with WL_SURFACE_ID environment but I cannot find ways for other Wayland desktop environments. Now XMODIFIERS=@im=ibus is used for X11 applications and GTK_IM_MODULE=ibus is for GTK2 applications and handles the key events in the IBus CandidatePanel UI and implements ibus_panel_service_forward_process_key_event(). The third issue was when non-supported Wayland applications likes XIM and GTK2 are used, the IBus CandidatePanel popup takes the focus as the normal application window in Wayland since the Wayland panel protocol requires the Wayland input-method activation. And if the popup is shown, it takes the focus and the active applications loose the input focus and the preedit text is cleared and it causes to close the CandidatePanel popup. I.e. the focus continues to be swapped between the application and the popup. Now ibus-daemon handles not to send focus-out events for the non-supported Wayland applications and IBus panel checks ibus-focus-out signal from ibus/client/wayland module if the current application supports the Wayland protocol and IBus engines handle a virtual input context to continue to update the preedit. BUG=https://github.com/ibus/ibus/issues/2562 BUG=https://github.com/ibus/ibus/issues/2617 M ui/gtk3/application.vala M ui/gtk3/candidatepanel.vala M ui/gtk3/panel.vala commit e27acd3339bbe385b680af546908aa988e4d696b Author: fujiwarat Date: 2024-12-29 08:59:09 +0900 bus: Implement ForwardProcessKeyEvent D-Bus signal IBus CandidatePanel has focus if the client application does not support the Wayland input-method protocol likes setting XMODIFIERS or GTK_IM_MODULE enviroment variable in Wayland. So if the focus-out is sent to the activated IBus engine, the engine may clear the preedit and try to hide the CandidatePanel. Also implements bus_input_context_is_extension_lookup_table() not to send unnecessary D-Bus methods to IBus Emojier. BUG=https://github.com/ibus/ibus/issues/2562 BUG=https://github.com/ibus/ibus/issues/2617 M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M bus/inputcontext.h M bus/panelproxy.c commit 15e02314606fdce4791f4924175cd52e15afaa30 Author: fujiwarat Date: 2024-12-29 08:59:01 +0900 bus/panelproxy: use va_marshaller to avoid GValue boxing #2 Building your own marshaller list is most of the way there to get better signal performance, but you can go a bit further by having it generate va_marshallers and set those too. Not only do va_marshallers allow you to avoid the GValue boxing, it allows you to also get better profiling data at runtime. Fixes: https://github.com/ibus/ibus/commit/c13c54e BUG=https://github.com/ibus/ibus/pull/2683 M bus/panelproxy.c commit 821cef0b705881ae562d7bbd1d9873489968ec28 Author: fujiwarat Date: 2024-12-29 08:58:52 +0900 src/ibuspanelservice: Add ibus_panel_service_forward_process_key_event() GTK popup window takes the focus in Wayland if the active application does not support the Wayland input-method protocl and this API can forward the key events on the popup to the active engine to handle the preedit and lookup table. BUG=https://github.com/ibus/ibus/issues/2562 M src/ibuspanelservice.c M src/ibuspanelservice.h commit 33da4b32faee108f26debbfe91bebc715936a1bb Author: fujiwarat Date: 2024-12-29 08:58:42 +0900 client/wayland: Enhance D-BUs handling and popup with XIM - Delete IBusWaylandSource in IBusWaylandIM class Seems IBusWaylandSource causes not to call GlobalShortcutKeyResponded D-Bus signal for the shortcut key release events and UpdateLookupTable D-Bus method to show the lookup table with XIM and GTK2 applications likes xterm. - Add "ibus-focus-in" and "ibus-focus-out" signals in IBusWaylandIM class The signals are used to check if the Wayland protocl calls the activation or deactivation because if the client does not support the Wayland input-method protocol, likes xterm and GTK2 applications, and the Wayland compositor does not draw the input context with wl_surface, the overlay panel surface does not work. BUG=https://github.com/ibus/ibus/issues/2562 BUG=https://github.com/ibus/ibus/issues/2617 M client/wayland/Makefile.am M client/wayland/ibuswaylandim.c M client/wayland/main.c commit 50611357b7e9ddfaad2d6316476c078f06937151 Author: fujiwarat Date: 2024-11-22 13:29:41 +0900 ui/gtk3: Update panel to work with Sway, Hyprland, COSMIC - Call 'realize-surface' signal with null before CandidatePanel and Switcher are hidden to destroy input_popup_surface in Wayland input-method V2. - Indicator.service_get_property() returns Error if IconPixmap is null. - Replace is_kde() with is_indicator() to support the general Wayland input-method version 2 desktop environments. The order of init_settings(), set_version(), check_wayland() and is_indicator() is important to set m_settings_general, inited_engines_order, m_is_indicator, init_indicator(). BUG=https://github.com/ibus/ibus/issues/2182 BUG=https://github.com/ibus/ibus/pull/2256 M ui/gtk3/candidatepanel.vala M ui/gtk3/indicator.vala M ui/gtk3/panel.vala commit 0d16a6e91fe92412313ebc73338477b953a4a68b Author: fujiwarat Date: 2024-11-22 12:58:34 +0900 client/wayland: Implement Wayland input-method unstable v2 in ibus-wayland - Share codes between the Wayland input-method protocol version 1 and 2 as much as possible. - zwp_input_method_v2.commit() needs to be called when a string is committed or a preedit and surrounding text is updated [1]. - zwp_input_popup_surface_v2 should be destroyed and cleared the pointer before wl_surface.destroy() is called due to `WAYLAND_DEBUG=1`. - zwp_input_method_keyboard_grab_v2_listener.key() can be called even if zwp_input_method_v2 is not activated and zwp_input_method_v2.commit_string() should not be used in such cases likes when non-supported applications(xterm, cosmic-term) are activated but zwp_virtual_keyboard_v1.key() just can be used instead. [1] https://gitlab.freedesktop.org/wlroots/wlroots/-/blob/master/protocol/input-method-unstable-v2.xml?ref_type=heads#L283 BUG=https://github.com/ibus/ibus/issues/2182 BUG=https://github.com/ibus/ibus/pull/2256 M client/wayland/Makefile.am M client/wayland/ibuswaylandim.c commit 59d50a7d6f87c8acfb58cfb941ae96102d666b72 Author: fujiwarat Date: 2024-11-01 19:58:53 +0900 client/wayland: Add Wayland input-method v2 and virtual-text v1 codes % wayland-scanner client-header ./input-method-unstable-v2.xml \ input-method-unstable-v2-client-protocol.h % wayland-scanner code ./input-method-unstable-v2.xml \ input-method-unstable-v2-protocol.c % wayland-scanner client-header ./virtual-keyboard-unstable-v1.xml \ virtual-keyboard-unstable-v1-client-protocol.h % wayland-scanner code ./virtual-keyboard-unstable-v1.xml \ virtual-keyboard-unstable-v1-protocol.c BUG=https://github.com/ibus/ibus/issues/2182 A client/wayland/input-method-unstable-v2-client-protocol.h A client/wayland/input-method-unstable-v2-protocol.c A client/wayland/virtual-keyboard-unstable-v1-client-protocol.h A client/wayland/virtual-keyboard-unstable-v1-protocol.c commit acaa66632e85ae99c592b8b53a73aacb991f5f9a Author: fujiwarat Date: 2024-11-01 19:49:36 +0900 client/wayland: Add input-method-unstable-v2.xml, virtual-keyboard-unstable-v1.xml Back up the private Wayland protocol files from the wlroots repository. https://gitlab.freedesktop.org/wlroots/wlroots/-/blob/master/protocol/input-method-unstable-v2.xml https://gitlab.freedesktop.org/wlroots/wlroots/-/blob/master/protocol/virtual-keyboard-unstable-v1.xml BUG=https://github.com/ibus/ibus/issues/2182 A client/wayland/input-method-unstable-v2.xml A client/wayland/virtual-keyboard-unstable-v1.xml commit b14a3e567150f520e1dcc2eacc6858c4cb6dc8fe Author: Manish Tiwari Date: 2024-12-06 20:25:30 +0900 src/ibusunicode: Free Unicode data list in async done BUG=https://github.com/ibus/ibus/issues/2687 M src/ibusunicode.c commit baeddb89a78d7ebb9eea384a07ea1af8bfa76e41 Author: fujiwarat Date: 2024-10-23 10:07:24 +0900 Release 1.5.31-rc1 M configure.ac commit 8b301caeb1c98e4a229a67dff897a23d5b19f80d Author: fujiwarat Date: 2024-10-23 08:30:36 +0900 src/compose: Update en-US compose with libX11 1.8.10 M src/compose/sequences-big-endian M src/compose/sequences-little-endian commit 4043c4f277f15af718244659649a8db626900f3d Author: fujiwarat Date: 2024-10-23 08:20:25 +0900 src: Update ibusunicodegen.h with Unicode 16.0.0 M src/ibusunicodegen.h commit 645154e20354a07005b067d11b47bf79fcd0c50d Author: fujiwarat Date: 2024-10-23 07:49:29 +0900 engine: Update simple.xml with xkeyboard-config 2.42 Seems now the `evdev.xml` file is too large and need to delete all the `` and `` items in the `evdev.xml` file to avoid the corrupted `simple.xml.in` file with a memory error. M engine/simple.xml.in commit e97d5a3d87414b3f321daf4201449b86f4d76372 Author: fujiwarat Date: 2024-10-22 23:24:24 +0900 src/tests: Use dbus_try_get_local_machine_id() in ibus-share Replace dbus_get_local_machine_id() with dbus_try_get_local_machine_id() to retrieve the DBUsError. BUG=https://github.com/ibus/ibus/issues/2686 M src/tests/ibus-share.c commit b2d42b3f54d9e17cdc3cbab0226b19bad9a35e75 Author: fujiwarat Date: 2024-10-22 21:28:29 +0900 po: Update translation (Japanese) Update po/ja.po at 99.0% https://translate.fedoraproject.org/projects/ibus/ibus/ja/ BUG=https://github.com/ibus/ibus/pull/2627 M po/ja.po commit 1f170a3fe26988dd7e5572cb9d386b8ff1fc42c9 Author: Julien Humbert Date: 2024-10-22 21:28:27 +0900 po: Update translation (French) Update po/fr.po at 97.6% https://translate.fedoraproject.org/projects/ibus/ibus/fr/ BUG=https://github.com/ibus/ibus/pull/2627 M po/fr.po commit 9432d08344e329558d8842fbacb83beb1b1088ee Author: Mike FABIAN Date: 2024-10-22 21:28:26 +0900 po: Update translation (German) Update po/de.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/de/ BUG=https://github.com/ibus/ibus/pull/2627 M po/de.po commit f5528bae38b1f4fb8a5700ae2389dffa3fa3b6c5 Author: Piotr Drąg Date: 2024-10-22 21:28:24 +0900 po: Update translation (Polish) Update po/pl.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/pl/ BUG=https://github.com/ibus/ibus/pull/2627 M po/pl.po commit 753019f8b2bb16a8a37dfa626fdf9d91cf965324 Author: Weblate Translation Memory Date: 2024-10-22 21:28:22 +0900 po: Update translation (French) Update po/fr.po at 97.5% https://translate.fedoraproject.org/projects/ibus/ibus/fr/ BUG=https://github.com/ibus/ibus/pull/2627 M po/fr.po M po/ja.po commit 9660b885ee4e240e976a24e39f237ae2f8d7031e Author: Giannis Antypas Date: 2024-10-22 21:28:20 +0900 po: Update translation (Greek) Update po/el.po at 24.2% https://translate.fedoraproject.org/projects/ibus/ibus/el/ BUG=https://github.com/ibus/ibus/pull/2627 M po/LINGUAS A po/el.po commit 3efe8795ece8f7db2fe751ee7754dc4b3516859c Author: Göran Uddeborg Date: 2024-10-22 21:28:16 +0900 po: Update translation (Swedish) Update po/sv.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/sv/ BUG=https://github.com/ibus/ibus/pull/2627 M po/sv.po commit f161d7852664d63de959e6e991e2af889a108f81 Author: 김인수 Date: 2024-10-22 21:28:14 +0900 po: Update translation (Korean) Update po/ko.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/ko/ BUG=https://github.com/ibus/ibus/pull/2627 M po/ko.po commit ba4fc0785fff216bbf62868bd7b208aba8428cd3 Author: Oğuz Ersen Date: 2024-10-22 21:28:11 +0900 po: Update translation (Turkish) Update po/tr.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/tr/ BUG=https://github.com/ibus/ibus/pull/2627 M po/tr.po commit b4c6f456be9c93ca2bb5185e0ee3497d6ef26be9 Author: Rafael Fontenelle Date: 2024-10-22 21:28:06 +0900 po: Update translation (Portuguese (Brazil)) Update po/pt_BR.po at 93.1% https://translate.fedoraproject.org/projects/ibus/ibus/pt_BR/ BUG=https://github.com/ibus/ibus/pull/2627 M po/pt_BR.po commit fb0f167fd3144b69b78051e6793c9baa37c07e48 Author: fujiwarat Date: 2024-10-19 23:04:23 +0900 src: Update keynamesprivate.h with GTK 4.16.3 M src/keynamesprivate.h commit 21effad97c3b8cef274dbbab46c41bb3d79e4e7f Author: fujiwarat Date: 2024-10-19 23:04:20 +0900 src: Rename files to follow GTK M po/POTFILES.in M src/Makefile.am R099 src/ibuskeynames.c src/ibuskeys.c R099 src/keyname-table.h src/keynamesprivate.h commit e01206354faee107c6e61b12480d87c85c9dcf96 Author: fujiwarat Date: 2024-10-19 23:03:10 +0900 src: Update ibuskeysyms.h with xorgproto https://gitlab.freedesktop.org/xorg/proto/xorgproto/-/commit/84986de Date: Tue Jul 7 09:43:53 2020 +0200 Add vietnamese dead accents https://gitlab.freedesktop.org/xorg/proto/xorgproto/-/commit/8cfcc91 Date: Wed Mar 22 16:14:34 2023 +0100 add correctly spelled names for the left and right guillemet https://gitlab.freedesktop.org/xorg/proto/xorgproto/-/commit/3ddfc98 Date: Wed Mar 22 16:22:04 2023 +0100 name the masculine ordinal indicator similar to feminine one https://gitlab.freedesktop.org/xorg/proto/xorgproto/-/commit/fca42f2 Author: Peter Hutterer Revert "keysymdef.h: delete fourteen long-deprecated symbol names" https://gitlab.freedesktop.org/xorg/proto/xorgproto/-/commit/e5cccec Date: Thu Apr 13 16:06:52 2023 +0200 add better names for the dead schwa and SCHWA symbols https://gitlab.freedesktop.org/xorg/proto/xorgproto/-/commit/b111529 Date: Thu Jul 6 12:08:27 2023 +0400 add dead_hamza symbol https://gitlab.freedesktop.org/xorg/proto/xorgproto/-/commit/704a75e Date: Wed Jul 19 21:27:27 2023 +0200 Improve comment of two keysyms https://gitlab.freedesktop.org/xorg/proto/xorgproto/-/commit/df4d063 Date: Thu Jul 20 16:54:29 2023 +0200 Make some aliases explicit M src/ibuskeysyms.h commit 8ac611cd9e2765b7d5bd6b9388f265c239ade93d Author: fujiwarat Date: 2024-10-18 15:03:41 +0900 github/workflows: Replace Fedora 39 with Fedora 41 M .github/workflows/main.yml commit cae7f46fbb1737059bf2aa105b4557fbb4948c95 Author: Manish Tiwari Date: 2024-10-18 14:49:18 +0900 src/ibusunicode: Correct Parent Class Reference in ibus_unicode_block_destroy() The ibus_unicode_block_destroy() was incorrectly using the parent class of IBusUnicodeData. Since this function is for the IBusUnicodeBlock class, the correct parent class should be ibus_unicode_block_parent_class. BUG=https://github.com/ibus/ibus/pull/2685 M src/ibusunicode.c commit 3ae59e8acc5f2d1268940af241970d0b8fdb47ce Author: fujiwarat Date: 2024-10-15 20:53:09 +0900 configure: Add --with-python-overrides-dir option The default GI directory is /usr in Flatpak but the directory is readonly with `flatpak-builder` and the Flatpak specific GI files are installed in /app GI directory. Fixes: https://github.com/ibus/ibus/commit/20b29c1 M configure.ac commit 2bfa558fbb5a1df13815869a1ad9e88c3b5fed64 Author: fujiwarat Date: 2024-10-15 17:44:00 +0900 ui/gtk3: Wait for hide-preedit-text signal for Emoji category IBusEngineSimple calls HidePreeditText D-Bus signal with focus-out signal so Emojier should wait for it before launch the dialog. BUG=rhbz#2310892 M ui/gtk3/panelbinding.vala commit c13c54ec14ebdc8b39dda09b636daedee3ea6458 Author: Christian Hergert Date: 2024-09-26 12:11:05 -0700 bus: use va_marshaller to avoid GValue boxing Building your own marshaller list is most of the way there to get better signal performance, but you can go a bit further by having it generate va_marshallers and set those too. Not only do va_marshallers allow you to avoid the GValue boxing, it allows you to also get better profiling data at runtime. BUG=https://github.com/ibus/ibus/pull/2683 M bus/Makefile.am M bus/dbusimpl.c M bus/engineproxy.c M bus/inputcontext.c commit fa10c116c2f0dad5026fa6665e9513cd5dcded75 Author: Benjamin Schaaf Date: 2024-09-08 09:13:40 +0900 src/ibusinputcontext: Fix memory leak of IBusText All branches of `ibus_input_context_set_surrounding_text` must handle the referenced `IBusText`, otherwise the text is leaked. This can happen if the text is the same as the existing `surrounding_text`. See `ibus_im_context_set_surrounding_with_selection` for the usage causing the leak. BUG=https://github.com/ibus/ibus/pull/2678 M src/ibusinputcontext.c commit 7db9d986a0f7c4040f12f31796efba2a9b4fee2e Author: Izumi Tsutsui Date: 2024-09-08 09:13:29 +0900 src/ibuscomposetable: Replace obsolete index(3) with strchr(3) BUG=https://github.com/ibus/ibus/pull/2676 M src/ibuscomposetable.c commit 21a18b68122134cc0e40b3366f85afa00526c97b Author: fujiwarat Date: 2024-08-25 08:12:19 +0900 Release 1.5.31-beta2 M configure.ac commit c4a3b52b11ab3a332b9942b65ce2037da3d86d9a Author: fujiwarat Date: 2024-08-23 08:31:51 +0900 src/tests: Fix some CI issues with busy TMT virtual session - Increase waiting time in ibus-compose-locales. - Wait for 3 secs after set-engine in ibus-compose to wait for the delayed focus-in/out events. - delete screendump option in ibus-desktop-testing.desktop not to support no display. - setlocale in ibus-engine-switch to get UTF-8 warnings. - Quote file names as shell syntax as much as possible. - Check file existent and do not use "rm -f" as much as possible. - Do not set GTK_IM_MODULE=ibus for Wayland. - Exclude sshd-session to check existent sessions. BUG=https://github.com/ibus/ibus/pull/2657 M src/tests/ibus-compose-locales.in M src/tests/ibus-compose.c M src/tests/ibus-desktop-testing-autostart.in M src/tests/ibus-desktop-testing-module M src/tests/ibus-desktop-testing.desktop.in M src/tests/ibus-engine-switch.c commit 081dae04366c0c5d39f407fdcad503b07b33faa1 Author: fujiwarat Date: 2024-08-23 08:31:48 +0900 src/tests: Fix ibus-compose for GNOME Wayland mutter calls meta_wayland_text_input_set_focus() after meta_window_show() and the delayed focus-in/out events are sent to IBusEngine. Now sleep() is added in ibus-compose because MetaWaylandInputMethod cannot know the application status while GTK application is already realized. Also GTK4 compose table supports 16bit compose keys only and it causes a warning with pt-BR and fi-FI compose tables but the warning is treated as a failure with g_test_init(). Set LANG=en_US.UTF-8 for thw workaround to test pt-BR and fi-FI IBus compose tables. BUG=https://github.com/ibus/ibus/pull/2657 M src/tests/ibus-compose.c commit 58d581c5ee14b947bf5a64c891bd22fbda0c9356 Author: fujiwarat Date: 2024-08-23 08:31:45 +0900 src/tests: Fix test cases in GNOME Xorg in ibus-compose "focus-in" signal is sent to IBus GtkIMModule with a delay in GNOME desktop session and the signal order is not fixed with GTK_PHASE_TARGET also "focus-in" signal is also sent with GtkText "realize"' signal. Now the test cases wait for GtkText 'realize' signal. This fixes the test cases in GNOME Xorg but there are still sone issues in GNOME Wayland. BUG=https://github.com/ibus/ibus/pull/2657 M src/tests/ibus-compose.c commit 15a9751ff120c665339ba146078c339a3b9a0209 Author: fujiwarat Date: 2024-08-23 08:31:42 +0900 src/tests: Enable GTK4 Seems GTK3 does not work in GNOME Wayland headless session to get GdkMonitor in gtk_init() and trying to migrate the test cases to GTK4. Calling ibus_init() twice with g_static_resource_init() causes a memory error and fix it. BUG=https://github.com/ibus/ibus/pull/2657 M configure.ac M src/tests/Makefile.am M src/tests/ibus-compose.c M src/tests/ibus-keypress.c commit ee6b673fbea00fa0f4d4671fd4eaea92739a2b5c Author: fujiwarat Date: 2024-08-23 08:31:38 +0900 Fix tests cases to be run in Wayland - Fix ibus-bus since ibus_bus_exit_async() does not work ibus-daemon with systemd and run `ibus restart` instead. - Fix ibus-compose-locales to wait for 1 sec between key event test cases to reset gnome-shell/mutter. - Fix ibus-compose to wait for commit-text event since the gnome-shell/mutter process is a bit slow and can reset the previous commit-text events before the previous events are not committed. - Fix counts in ibus-engine-switch. - Unref IBusEngineDesc in ibus-engine-switch. - Fix ibusimpl not to change the engine of the context when global-engine is enabled. - Check DISPLAY and setxkbmap in xkb-latin-layouts for Wayland BUG=https://github.com/ibus/ibus/pull/2657 M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M src/ibusshare.c M src/tests/ibus-bus.c M src/tests/ibus-compose.c M src/tests/ibus-engine-switch.c M src/tests/xkb-latin-layouts commit 92a55174e531d76ad1a4aeb7090fe2a4f56fc754 Author: fujiwarat Date: 2024-08-23 08:31:34 +0900 src/tests: Enable CI in GNOME Wayland - Implement headless desktop to test Wayland sessions - Implement ibus-desktop-testing-autostart to be executed in XDG autostart in GNOME Wayland - Move shared codes to ibus-desktop-testing-module between ibus-desktop-testing-runner and ibus-desktop-testing-autostart - Add --no-systemd option to enable the previous testing frame with running gnome-session directly - Rename --desktop option to --session - Move save_screen() from runner to module - Copy gnome-shell service file to user home for headless & virtual-monitor - Add --delete-tests option to clean up tests - Add AutostartCondition=if-exists in XDG autostart desktop file - Add 60 secs in ibus-compose-locales for systemd desktop sessions - Quote file names as much as possible. - Check file existant and not to use "rm -f" as much as possible - Do not set GTK_IM_MODULE=ibus for Wayland BUG=https://github.com/ibus/ibus/pull/2657 M src/tests/Makefile.am M src/tests/ibus-compose-locales.in D src/tests/ibus-desktop-testing-autostart A src/tests/ibus-desktop-testing-autostart.in A src/tests/ibus-desktop-testing-module M src/tests/ibus-desktop-testing-runner.in M src/tests/ibus-desktop-testing.desktop.in commit 14dd943de1bb2bc003cb01cdd9c94f4350db16e3 Author: fujiwarat Date: 2024-08-23 08:18:50 +0900 util/IMdkit: Revert to fix typing freeze with barcode reader The original barcode reader issue is fixed with libX11 1.8.10 and it's now available in Fedora. The typing freezing issue is no longer reproducible with the latest libX11 in Fedora 40. Now the previous change(b49f3a4736540f3cf2f7e7b3ac7f965970393c74) is reverted and I continue to trace the issue. Fixes: https://github.com/ibus/ibus/commit/b49f3a4 BUG=https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues/198 BUG=https://github.com/ibus/ibus/pull/2591 M util/IMdkit/i18nPtHdr.c commit 47b8198bc436cbc59e0e43266e1907e47e0678ae Author: fujiwarat Date: 2024-08-02 23:45:49 +0900 src: Ignore ISO level3/level5 keys in shortcut keys IBus compose tries to output Multi_key + IBUS_KEY_ISO_Level*_Lock as incompleted sequences so the ISO level 3 and 5 keys should be ignored as the modifier keys. Also those ISO keys are ignored in ibus_accelerator_valid(). BUG=https://github.com/ibus/ibus/issues/2667 M src/ibusaccelgroup.c M src/ibusenginesimple.h commit a1a2fe5d13ad76956a94c0695af15d76e3edfdca Author: fujiwarat Date: 2024-07-18 01:25:41 +0900 Fix memory leaks in error handlings - bus/ibusimpl: Free keys not in case of TYPE_IME_SWITCHER - src/ibuscomposetable: Correct handling G_MAXSIZE * G_MAXSIZE - src/ibuscomposetable: Fee ibus_compose_seqs in error handlings M bus/ibusimpl.c M src/ibuscomposetable.c commit af59cdf8e86955f0df650a89edb5c7da781ae0a4 Author: Florian Müllner Date: 2024-07-16 23:19:22 +0900 inputcontext: Fix typo BUG=https://github.com/ibus/ibus/pull/2664 M bus/inputcontext.c commit 7091f2caba24bb2c9539bf2d937ac71e13cffce8 Author: fujiwarat Date: 2024-07-12 22:36:20 +0900 Release 1.5.31-beta1 M configure.ac commit 9f50b46f82024efa59dd1d35a3d89c4350cd1cff Author: fujiwarat Date: 2024-07-12 21:18:07 +0900 Fix musical symbol compose keys - The musical symbol keysyms are included in en-US compose file and the flag 0x100000 should be checked. - The Unicode keysyms can be shown as the IBus preedit. - The duplicated keysyms in IBus compose table causes an unnecessary preedit text and they should be deleted. - IBUS_TYPE_EXTENSION_EVENT should be initialized to hide the emoji preedit with PanelExtensionReceived signal in IBusEngine. - Calling ibus_init() twice with g_static_resource_init() causes a memory error and fix it. Fixes: https://github.com/ibus/ibus/commit/e7329cb Fixes: https://github.com/ibus/ibus/commit/9a134e8 M src/ibuscomposetable.c M src/ibusenginesimple.c M src/ibusshare.c commit 1892b51a28387546c60e2596a049af565bd40754 Author: Wismill Date: 2024-06-26 19:20:02 +0900 src/tests/ibus-compose: Add some Unicode boundary tests BUG=https://github.com/ibus/ibus/pull/2649 M src/tests/ibus-compose.basic M src/tests/ibus-compose.emoji commit e7329cb14de4097ca894ce19d1903a7df28acd78 Author: fujiwarat Date: 2024-06-26 19:17:58 +0900 src/ibuscomposetable: Fix UFDD5 key for compose seq with fr(bepo_afnor) AltGr-t with fr(bepo_afnor) keymap has no keysym name but can be used in the compose key sequences. Most Unicode format (UXXXX) should be supported in the compose sequences in case they are not used in XKB options except for 'Pointer_*' XKB option names. Also refactor compose sequences with each range beyond U10000. Also update ibus_keyval_name() can output keysym names beyond U10000. BUG=https://github.com/ibus/ibus/issues/2646 Fixes: https://github.com/ibus/ibus/commit/ad883dc M src/ibuscomposetable.c M src/ibusenginesimpleprivate.h M src/ibuskeynames.c M src/tests/ibus-compose.basic commit 142744ffd4d9af78296c2a5ac99248e011ed3bad Author: fujiwarat Date: 2024-06-26 17:22:43 +0900 test: Add Flatpak build for Fedoraproejct platform A test/org.test.IBus.Fedoraproject.json commit 20b29c14c3203dd51ed7604c29daf58ea8030d4f Author: fujiwarat Date: 2024-06-26 17:18:21 +0900 Fix Flatpak build for dnf and pyoverridesdir `dnf` is not available during Flatpak builds with `flatpak-builder` and the steps are omitted in autogen.sh to check FLATPAK_ID environment variable. When IBus is built with the Json files in test directory, the build tries to install IBus.py file into pyoverridesdir likes /usr/lib*/python3.12/site-packages/gi/overrides But the directory is readonly with `flatpak-builder` and could be failed. Now `--disable-pygobject` option is added to `configure`. IBus modules are embedded in Flatpak platforms likes GNOME, Freedesktop and this issue might not happen in the platform builds since the pyoverridesdir does not exist yet so this might fix the build issues with Json files only in test directory. M autogen.sh M configure.ac M test/org.test.IBus.Freedesktop.json M test/org.test.IBus.GNOME.json commit 9dd47e5ae2acf6bf76bada26b8c3f99d8ed5f9d2 Author: fujiwarat Date: 2024-06-26 17:07:30 +0900 test: Rename Flatpak build files R100 test/org.test2.IBus.json test/org.test.IBus.Freedesktop.json R100 test/org.test.IBus.json test/org.test.IBus.GNOME.json commit 0b678100bc9c4aff65e94f08ac052f4d7d214b36 Author: fujiwarat Date: 2024-06-26 17:02:55 +0900 portal: Support new sync ibus_input_context_process_key_event() IBus clients have been enhanced with the new synchronous "ProcessKeyEvent" to fix the long-standing issues and ibus-portal also needs to support it. Fixes: https://github.com/ibus/ibus/commit/38f09c6 M portal/org.freedesktop.IBus.Portal.xml M portal/portal.c commit 7f44459f53ffbc94c300db96d34f5c02afd33b22 Author: fujiwarat Date: 2024-06-26 16:50:04 +0900 portal: Let Flatpak application accept new IBus unique name ibus-portal can accept the connection from IBUS_SERVICE_IBUS only but now the IBus unique name is changed to IBUS_NAME_OWNER_NAME as the D-Bus name owner and probably I think the name check is not needed and just delete it. BUG=https://github.com/ibus/ibus/issues/2639 Fixes: https://github.com/ibus/ibus/commit/2b14625 M portal/portal.c commit 2b146251a37dc8e590270f16a7f7c0be750c63d9 Author: fujiwarat Date: 2024-06-26 16:48:31 +0900 bus: Change IBus unique name to :1.0 from IBUS_SERVICE_IBUS According to the D-Bus specification, `org.freedesktop.DBus.GetNameOwner()` must return a unique name (i.e. one of the form `:1.23`). The only unique name which is allowed to not be in this form is `org.freedesktop.DBus`. The change in GLib 2.80.1 was to validate that the sender of every message is either a unique name (according to `g_dbus_is_unique_name()`), or the special name `org.freedesktop.DBus` to meet the specification. In the long term, it might be more robust to rework the code so that the mapping from `org.freedesktop.IBus` → a unique name is stored in `dbus->names` (in `dbusimpl.c`) like all the other requested names. However, handling for the `org.freedesktop.IBus` well-known name is hardcoded throughout `dbusimpl.c`, so porting this single bit of it to create a `BusNameService` would probably cause more problems. BUG=https://github.com/ibus/ibus/issues/2639 BUG=https://gitlab.gnome.org/GNOME/glib/-/issues/3268 BUG=https://github.com/advisories/GHSA-f632-c3rh-r2v2 M bus/connection.h M bus/dbusimpl.c M bus/ibusimpl.c M bus/inputcontext.c M bus/matchrule.c M bus/matchrule.h commit 927ce008e62c07c9f4928be441ce57d0d946ab6d Author: fujiwarat Date: 2024-06-26 16:43:01 +0900 bus: Reformat dbusimpl.c BUG=https://github.com/ibus/ibus/issues/2639 M bus/dbusimpl.c commit 9a134e8a0e37fdc4c5254e56388b30ac546625a8 Author: fujiwarat Date: 2024-06-26 14:28:08 +0900 src/ibusengine: Hide preedit text with PanelExtensionReceived signal IBusEngineSimple no longer calls to hide the preedit with the zero length to fix the slurring cursor position but the emoji preedit becomes not to be hidden with the preedit commit or escape events as a side effect. To fix the issue, IBusEngine needs to decide to clear or keep the preedit when the emoji mode is finished. BUG=https://github.com/ibus/ibus/issues/2536 Fixes: https://github.com/ibus/ibus/commit/a3a5a20a M src/ibusengine.c M src/ibusenginesimple.c commit 96a2d57f93eb6c20431604e469f59385f0fef620 Author: fujiwarat Date: 2024-06-26 12:57:00 +0900 ui/gtk3: Fix Super-space in Wayland ibus_bus_set_global_shortcut_keys_async() was not called in Plasma Wayland after "Fix to unref GdkDisplay in Wayland" patch was applied. Now it's called correctly and the event handler is disabled instead. BUG=rhbz#2290842 BUG=https://github.com/ibus/ibus/issues/2644 Fixes: https://github.com/ibus/ibus/commit/627e7cc M ui/gtk3/keybindingmanager.vala M ui/gtk3/panel.vala commit 627e7cc37d3bea4c288c932773f69fcee9ac773e Author: fujiwarat Date: 2024-05-24 16:28:40 +0900 ui/gtk3: Fix to unref GdkDisplay in Wayland Panel does not need to allocate the X11 display in Wayland but the check only. Vala codes need to set the unowned parameter. Also fixed a memory leak in the update preedit in daemon. BUG=rhbz#2252227 BUG=https://github.com/ibus/ibus/issues/2642 BUG=https://github.com/ibus/ibus/issues/2644 M bus/inputcontext.c M po/ibus10.pot M ui/gtk3/application.vala M ui/gtk3/bindingcommon.vala M ui/gtk3/handle.vala M ui/gtk3/panel.vala commit a3a5a20a30f2a8ecee4dc2aaa4fd48c62c91d768 Author: fujiwarat Date: 2024-05-24 16:18:03 +0900 src/ibusenginesimple: Do not update zero length preedit text Several engines can inherit IBusEngieSimple for the compose key support likes Anthy, Hangul, M17n and it could have the duplicated preedit text between the engine and the parent IBusEngineSimple and it could update the preedit text mutually by mistake. Then the preedit text should not be hidden for zero length at least. This update might not be enough but hope to fix the cursor position reset with hiding the preedit text against the reported issue with `m17n:sa:itrans` engine. BUG=https://github.com/ibus/ibus/issues/2536 M src/ibusenginesimple.c commit 48c4a9c900421b9e77be399a4792974f25a80be6 Author: fujiwarat Date: 2024-05-24 16:17:58 +0900 src/ibusenginesimple: Ignore Super modifier for compose keys Now IBus receives key events prior to the window manager and needs to ignore Super modifier since Super key has been already ignored for compose keys. BUG=https://gitlab.gnome.org/GNOME/mutter/-/issues/3128 M src/ibusenginesimple.c commit f190da19b53c267ca1c9730e18f1b53c089c0247 Author: fujiwarat Date: 2024-05-24 15:37:00 +0900 ui/gtk3: Configure initial keymaps with localectl in Wayland `setxkbmap -query` returns US layout with Xwayland and it does not correspond to the session keymaps so ibus-panel now uses `localectl status` in Wayland but it does not provide the session XKB options against `setxkbmap` command in Xorg. Need to think how to load or set the XKB options in Wayland later. BUG=rhbz#2267615 BUG=https://github.com/ibus/ibus/pull/2624 M src/tests/ibus-keypress.c M ui/gtk3/panel.vala M ui/gtk3/xkblayout.vala commit e39345af20c1dd9b18cdb6ccb5039b03e4135f73 Author: fujiwarat Date: 2024-05-24 13:18:42 +0900 src/tests: Fix ibus-daemon in ibus-desktop-testing-runner Some distributions do not need the IBus panel and gnome-shell also does not need it. Add --verbose option to get ibus-daemon error messages. Add vala check in autogen.sh since valac changes the source codes. M autogen.sh M src/tests/ibus-desktop-testing-runner.in commit 4059b9f43f4505c855677abde1b59fc13241ca58 Author: fujiwarat Date: 2024-04-02 23:34:07 +0900 Makefile: Add check sum file M Makefile.am commit c61f425dac186265677219b87f547a76c17f816c Author: fujiwarat Date: 2024-04-02 21:26:03 +0900 Release 1.5.30-rc3 M configure.ac commit cd2cde974cbd47b227b8ebc42859935ab52565dd Author: Jan Engelhardt Date: 2024-04-02 20:39:10 +0900 src/ibusservice: Fix unused variable ibusservice.c:676:9: warning: value computed is not used [-Wunused-value] 676 | *p++; BUG=https://github.com/ibus/ibus/pull/2630 M src/ibusservice.c commit 68217a05b13ab2f40d824b960e2bddd3739f89ee Author: Rafael Fontenelle Date: 2024-04-02 20:33:50 +0900 github/workflows: Update action/checkout version Node 16 has reached its end of life and Node.js 20 is available. rf. https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/ BUG=https://github.com/ibus/ibus/pull/2628 M .github/workflows/main.yml commit 707832954e1aaaae9a695d9771e84a21844be605 Author: Izumi Tsutsui Date: 2024-03-25 14:40:12 +0900 configure: Fix bash '=' operator for BSD BUG=https://github.com/ibus/ibus/pull/2626 M configure.ac commit 7f3bde01636213605e3b9c62d91b8f9b5635b9a6 Author: fujiwarat Date: 2024-03-23 13:09:26 +0900 src/ibusengine: Identify SUPER_MASK in GTK4 with MOD4_MASK Fix the regression not to save the changed modifiers. Fixes: https://github.com/ibus/ibus/commit/e4eaeb7 BUG=https://github.com/ibus/ibus/issues/2607 M src/ibusengine.c commit 5dad46871b2b62ba9f1b0f23c222efe37bb8c694 Author: fujiwarat Date: 2024-03-22 23:07:37 +0900 Release 1.5.30-rc2 M configure.ac commit 6df5e1e0f6b40497ddb166c73426415ec7233651 Author: Alan01 Date: 2024-03-22 21:09:00 +0900 po: Update translation (Danish) Update po/da.po at 100% https://translate.fedoraproject.org/projects/ibus/ibus/da/ BUG=https://github.com/ibus/ibus/pull/2615 M po/da.po commit ca907904b56c5c3e039c79d01d27f5f6560b71e3 Author: A S Alam Date: 2024-03-22 20:48:52 +0900 po: Update translation (Punjabi) Update po/pa.po at 48.5% https://translate.fedoraproject.org/projects/ibus/ibus/pa/ BUG=https://github.com/ibus/ibus/pull/2615 M po/pa.po commit dfbed6c6a8e9a1b041f31c2ca38ca4166d21fd2b Author: Weblate Translation Memory Date: 2024-03-22 20:45:05 +0900 po: Update translation (Georgian) Update po/ka.po at 51.1% https://translate.fedoraproject.org/projects/ibus/ibus/ka/ BUG=https://github.com/ibus/ibus/pull/2615 M po/ka.po commit 01e396478507593f2d3055bbadde21061a4b69d8 Author: Piotr Drąg Date: 2024-03-22 20:40:59 +0900 po: Update translation (Polish) Update po/pl.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/pl/ BUG=https://github.com/ibus/ibus/pull/2615 M po/pl.po commit 2a58178ee118bd247aeee08f08f18da398d86101 Author: Yuri Chornoivan Date: 2024-03-22 20:39:02 +0900 po: Update translation (Ukrainian) Update po/uk.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/uk/ BUG=https://github.com/ibus/ibus/pull/2615 M po/uk.po commit 841724a4d3591e8a3b9778dfaf82731f45c7db44 Author: Oğuz Ersen Date: 2024-03-22 20:37:54 +0900 po: Update translation (Turkish) Update po/tr.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/tr/ BUG=https://github.com/ibus/ibus/pull/2615 M po/tr.po commit 537d4d027f1432e5f4eda3f9e7039f26368ac093 Author: Luna Jernberg Date: 2024-03-22 20:30:02 +0900 po: Update translation (Swedish) Update po/sv.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/sv/ BUG=https://github.com/ibus/ibus/pull/2615 M po/sv.po commit 633b3c0f5251bb70583ade127aa3d4d001a3e877 Author: 김인수 Date: 2024-03-22 20:28:39 +0900 po: Update translation (Korean) Update po/ko.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/ko/ BUG=https://github.com/ibus/ibus/pull/2615 M po/ko.po commit 95bdbb27867c770116bafd070dd7799308214da3 Author: Mike FABIAN Date: 2024-03-22 20:26:14 +0900 po: Update translation (German) Update po/de.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/de/ BUG=https://github.com/ibus/ibus/pull/2615 M po/de.po commit b25643c81decf27f8847768b582b49ab550cf3fc Author: fujiwarat Date: 2024-03-22 19:31:05 +0900 ui/gtk3: Set Indicator status at launching time Panel.load_settings() is called before the "registered-status-notifier-item" signal is emitted in Indicator and the Indicator's status was always active at the launching time in the Plasma desktop session. Now it's fixed. Also the preferences menu in the activate menu is now shown in the Plasma Xorg desktop session too. BUG=https://github.com/ibus/ibus/issues/2463 M ui/gtk3/panel.vala commit b4b9c2e4b46552ecfddd8dcebc0e2fff2305ea91 Author: fujiwarat Date: 2024-03-17 09:28:08 +0900 ui/gtk3: Fix ibus-daemon timeout in Plasma Wayland ibus-wayland sometimes aborted with the timeout of 5 secs when ibus start/restart run it and ibus-daemon was alives without the parent ibus-wayland. Now delete the 5 secs and connect the IBusBus connected signal instead. Fixes: https://github.com/ibus/ibus/commit/ed552e8 M ui/gtk3/application.vala commit 5696033b31c9f0ffa889c1f88971c33b86efd969 Author: fujiwarat Date: 2024-03-17 08:41:27 +0900 tools: Fix ibus start/restart in Plasma Wayland ibus start/restart frequently failed because of the timeout. Now the command waits for the "/VirtualKeyboard" on "org.kde.kwin.VirtualKeyboard" D-Bus ack signal so that the "/kwinrc" on "org.kde.kconfig.notify" D-Bus signal is completed. Also use ibusinternal.h instead of dbus.h . Fixes: https://github.com/ibus/ibus/commit/74712fa M bindings/vala/dbus-1.vapi M tools/Makefile.am M tools/main.vala commit ca61d6e5e48cb2f28e91526cc47e6b99ca779eb4 Author: fujiwarat Date: 2024-03-14 23:27:25 +0900 src/ibusengine: Free names in ibus_engine_filter_key_event() M src/ibusengine.c commit c63cc6788ee5341a591dfe0612d60296a7a4a2ba Author: fujiwarat Date: 2024-03-14 20:02:34 +0900 ui/gtk3: Fix SEGV with Super-space in Wayland If only one engine is configured, IME swither popup should be disabled. M ui/gtk3/panel.vala commit e4eaeb74e580cbdc2949f3b1457ac6721cc56628 Author: fujiwarat Date: 2024-03-14 19:59:31 +0900 src/ibusengine: Identify SUPER_MASK in GTK4 with MOD4_MASK GTK4 now returns IBUS_SUPER_MASK for Super modifier key while others returns IBUS_MOD4_MASK. Now IBusEngine checks both modifier for Emoji and Unicode shortcut keys. BUG=https://github.com/ibus/ibus/issues/2607 M src/ibusengine.c commit 0f778adf8de0a98ad71092a7a0c9c512d7ac7427 Author: fujiwarat Date: 2024-02-28 20:14:36 +0900 Release 1.5.30-rc1 M configure.ac commit 746efa234fa5d37b2065e2347d0107774a0b0fa0 Author: fujiwarat Date: 2024-02-28 19:21:27 +0900 po: Update POT file I don't know why Weblate does not merge PO files with the POT file but let's update the date in the POT file again. BUG=https://github.com/ibus/ibus/pull/2559 M po/ibus10.pot commit dc27015c4ef66bd8157cffcbbba33bf7186eac4e Author: Rafael Fontenelle Date: 2024-02-28 19:03:14 +0900 po: Update translation (Portuguese (Brazil)) Update po/pt_BR.po at 93.0% https://translate.fedoraproject.org/projects/ibus/ibus/pt_BR/ BUG=https://github.com/ibus/ibus/pull/2559 M po/pt_BR.po commit 11804709372dd2f83527d25b2a274d0a662b23a5 Author: 김인수 Date: 2024-02-28 19:03:07 +0900 po: Update translation (Korean) Update po/ko.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/ko/ BUG=https://github.com/ibus/ibus/pull/2559 M po/ko.po commit 847a80ec2bea6359c7f74d38378a9a4222a01b1c Author: Liu Tao Date: 2024-02-28 19:03:02 +0900 po: Update translation (Chinese (Simplified) (zh_CN)) Update po/zh_CN.po at 94.5% https://translate.fedoraproject.org/projects/ibus/ibus/zh_CN/ BUG=https://github.com/ibus/ibus/pull/2559 M po/zh_CN.po commit 8e310326c5851de9d979953e5add86e201ac9418 Author: Oğuz Ersen Date: 2024-02-28 19:03:00 +0900 po: Update translation (Turkish) Update po/tr.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/tr/ BUG=https://github.com/ibus/ibus/pull/2559 M po/tr.po commit 82b56fd9c80f1f49e70b8856a56e83f9f8cb2b87 Author: A S Alam Date: 2024-02-28 19:02:57 +0900 po: Update translation (Punjabi) Update po/pa.po at 33.8% https://translate.fedoraproject.org/projects/ibus/ibus/pa/ BUG=https://github.com/ibus/ibus/pull/2559 M po/pa.po commit 68c1d6a083efbd601d14b7fd1739377fe341838c Author: Yaron Shahrabani Date: 2024-02-28 19:02:55 +0900 po: Update translation (Hebrew) Update po/he.po at 33.6% https://translate.fedoraproject.org/projects/ibus/ibus/he/ BUG=https://github.com/ibus/ibus/pull/2559 M po/he.po commit e513e26371e9bb0df3d611ad94db5ba8d4057bfe Author: Daniel Rusek Date: 2024-02-28 19:02:47 +0900 po: Update translation (Czech) Update po/cs.po at 84.1% https://translate.fedoraproject.org/projects/ibus/ibus/cs/ BUG=https://github.com/ibus/ibus/pull/2559 M po/cs.po commit 4620b3333a12c6ff981af5967b19366737ca38f5 Author: Krystof Cerny Date: 2024-02-28 19:02:45 +0900 po: Update translation (Czech) Update po/cs.po at 83.5% https://translate.fedoraproject.org/projects/ibus/ibus/cs/ BUG=https://github.com/ibus/ibus/pull/2559 M po/cs.po commit 92769c37e4f79341c4584b650ddd85565a0c6e6f Author: Cheng-Chia Tseng Date: 2024-02-28 19:02:40 +0900 po: Update translation (Chinese (Traditional) (zh_TW)) Update po/zh_TW.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/zh_TW/ BUG=https://github.com/ibus/ibus/pull/2559 M po/zh_TW.po commit 16ebd40a9a3676caaeaf4e95e044bdecb231b822 Author: Temuri Doghonadze Date: 2024-02-28 19:02:36 +0900 po: Update translation (Georgian) Update po/ka.po at 41.6% https://translate.fedoraproject.org/projects/ibus/ibus/ka/ BUG=https://github.com/ibus/ibus/pull/2559 M po/ka.po commit 7e2e8298f918c1c8139572570c3a5ea310b15dea Author: fujiwarat Date: 2024-02-28 19:02:28 +0900 po: Update translation (Japanese) Update po/ja.po at 99% https://translate.fedoraproject.org/projects/ibus/ibus/ja/ BUG=https://github.com/ibus/ibus/pull/2559 M po/ja.po commit 820fed3842dda80addcd674e9d4f8fddbfb6bd93 Author: fujiwarat Date: 2024-02-28 11:10:58 +0900 ui/gtk3: Fix Vala C format errors M ui/gtk3/application.vala M ui/gtk3/bindingcommon.vala M ui/gtk3/candidatearea.vala commit 228f0a77b2047ade54e132bab69c0c03f0f41aae Author: fujiwarat Date: 2024-02-28 11:06:51 +0900 src: Update ibusunicodegen.h with Unicode 15.1.0 M src/ibusunicodegen.h commit 1a17f88f99b43970fca6cc994ce8fe48b46c6cb5 Author: fujiwarat Date: 2024-02-28 11:04:56 +0900 engine: Update simple.xml with xkeyboard-config 2.41 M engine/simple.xml.in commit a69a449b5e54c8a1fa36c1bb8f4b92d336e8dda1 Author: fujiwarat Date: 2024-02-28 08:23:36 +0900 github/workflows: Replace Fedora 38 with Fedora 40 M .github/workflows/main.yml commit 43a6e38ec7158481a0bdcee10c970aac7f2dd73e Author: fujiwarat Date: 2024-02-27 23:24:57 +0900 client/gtk2: Free IBusText in ibus_im_context_clear_preedit_text() BUG=https://github.com/ibus/ibus/issues/2613 M client/gtk2/ibusimcontext.c commit cc46e6228cd9e7a00a550b9c23905c90c6ed1b2a Author: oreo639 Date: 2024-02-20 20:14:30 +0900 configure: Don't do AC_CHECK_FILE when cross compiling https://www.gnu.org/software/autoconf/manual/autoconf-2.67/html_node/Files.html BUG=https://github.com/ibus/ibus/pull/2606 M configure.ac commit d3d77627bdc98cc60b80e776f9e2288d99b6fee4 Author: Mike FABIAN Date: 2023-11-07 17:17:23 +0100 setup/enginedialog: Improve the search for engines - strip whitespace from the search entry - make the filter entry get focus after clicking on the view-more row - split the contents of the search entry into words and make the result True if all words match in any order. BUG=https://github.com/ibus/ibus/pull/2581 M setup/enginedialog.py commit fe4958b7ef52265842d90b8866514f84b05552f6 Author: fujiwarat Date: 2024-02-13 20:36:30 +0900 Release 1.5.30-beta1 M configure.ac commit b49f3a4736540f3cf2f7e7b3ac7f965970393c74 Author: fujiwarat Date: 2024-02-13 16:58:33 +0900 util/IMdkit: Fix typing freeze with barcode reader After libX11 is fixed about the XIM jumbled input issues, too quick focus change can causes a freeze with barcode reader. Seems the modifier key of Alt-Tab effects the input of the barcode reader but the new issue cannot be reproduced with debug messages. Hence the new issue could effect the machine spec and timing. I can avoid the new issue with adding sync() instead of a debug message. I don't understand the issue fully but hope this fix. BUG=https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues/198 BUG=https://github.com/ibus/ibus/issues/2560 M util/IMdkit/i18nPtHdr.c commit 3e7ee448d9ce8548f0fe9fa70d6e6164e72a795a Author: fujiwarat Date: 2024-02-13 16:25:43 +0900 ui/gtk3: Show preferences menu item in activate menu Currently middle click can toggle the activate menu and context menu in Plasma Wayland desktop session but probably a single menu is better at present. Now the preferences and emoji menu items are also shown in the activate menu so that users don't have to use the middle click. BUG=rhbz#2243610 M ui/gtk3/indicator.vala M ui/gtk3/panel.vala M ui/gtk3/propertypanel.vala commit e425bbf75c2ed0ba7db5a9adfa5568219f1d44b0 Author: fujiwarat Date: 2024-02-13 14:32:21 +0900 tools: Refactor ibus start/restart for Plasma Wayland glib 2.72.4 does not support g_string_free_and_steal() in Ubuntu 22.04 yet. Also merge codes of updating kwinrc for start and exit operations. BUG=https://github.com/ibus/ibus/actions/runs/7866683491/job/21461283635 M po/ibus10.pot M tools/krcfile.vala M tools/main.vala commit 74712fab5b51cd1b1e82b5a89745657e08abb24b Author: fujiwarat Date: 2024-02-12 11:42:56 +0900 tools: Implement `ibus start/restart` for Plasma Wayland ibus start command now can modifies the $HOME/.config/kwinrc file to update OSK for IBus Wayland. The kwinrc file includes special formats likes: [Tiling][12345678-9012-...] - special group name InputMethod[$e]=/usr/share/applications/foo.desktop - special language and GKeyFile does not support kwinrc and it's ported to the local KRcFile. M bindings/vala/Makefile.am M bindings/vala/config.vapi A bindings/vala/dbus-1.vapi M configure.ac M m4/ibuslocale.m4 M po/ibus10.pot M tools/Makefile.am A tools/krcfile.vala M tools/main.vala M ui/gtk3/Makefile.am commit 4872c1fcdc8bbe146e967d004edf63f5994b21f8 Author: fujiwarat Date: 2023-12-21 08:26:48 +0900 src/ibusenginesimple.c: Don't commit any characters Revert a part of the previous patch of #2495 because it explains "Super-space and space key can launch IBus Emojier." but I cannot remember what I tried to fix. IBus XKB engines should not commit any keysyms before the key event is sent to the application with IBUS_IGNORED_MASK flag even if the key is not an ASCII because any characters can be control characters by application. E.g. VIM cursor mode "hjkl" keys or game cursor keys with language layouts. Fixes: https://github.com/ibus/ibus/commit/ad883dc BUG=https://github.com/ibus/ibus/issues/2588 M client/gtk2/ibusimcontext.c M src/ibusenginesimple.c commit 8470873979e3435c29d98704f1ac7e1e47e9dc2f Author: fujiwarat Date: 2023-12-14 23:55:42 +0900 ui/gtk3: Fix some warnings - Try to disable Vala warnings with gtk_menu_shell_insert() workaround. - Stop string_slice() warning with different language lengths. M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit 2ede4a1f12d9ed827eb725181694092b3f3ea835 Author: fujiwarat Date: 2023-12-07 21:39:45 +0900 github/workflows: Add libgtk-4-dev to Ubuntu CI Now configure enables GTK4 by default. M .github/workflows/main.yml commit ac46d154e72fdc914e6d34ff1b251c8fcb70ce20 Author: fujiwarat Date: 2023-12-07 20:34:49 +0900 Refactor object initialization - client/wayland: Make sure IBusWaylandIM->ibuscontext is NULL when IBusWaylandIM->context is NULL. - configure: Set some default help messages. - ui/gtk3: Make sure to call an error message if display is NULL. M client/wayland/ibuswaylandim.c M configure.ac M ui/gtk3/panel.vala commit 719792d300579c1bfdf43251a83c6ed4e5594c07 Author: fujiwarat Date: 2023-12-05 23:13:25 +0900 src: Complete preedit signals for PostProcessKeyEvent I forgot to implement show-preedit-text and hide-preedit-text signals with PostProcessKeyEvent D-Bus signal in the client side. Fixes: https://github.com/ibus/ibus/commit/e059536 BUG=https://github.com/ibus/ibus/issues/2585 M src/ibusinputcontext.c commit 59944ddbfe915f195e757c509246b597048116cf Author: fujiwarat Date: 2023-11-25 13:42:31 +0900 client/wayland: Implement preedit color in Plasma Wayland Wayland input-method protocol version 1 supports the preedit style with text-input protocol version 1 in Plasma Wayland. GNOME Wayland uses text-input version 3 which deletes the preedit style. Now IBus supports the preedit color for anthy, hangul, table, typing-booster. This change now also supports ibus_engine_update_preedit_text_with_mode() Rf. https://github.com/ibus/ibus/wiki/Wayland-Colors BUG=rhbz#2237486 M client/wayland/Makefile.am M client/wayland/ibuswaylandim.c A client/wayland/text-input-unstable-v1-client-protocol.h M src/ibusattribute.h commit 0a7a4d1dfa580dfcc65d76a697f40094085e55a2 Author: fujiwarat Date: 2023-11-25 13:42:07 +0900 ui/gtk3: Error handling with display == null BUG=rhbz#2188800 M ui/gtk3/bindingcommon.vala M ui/gtk3/panel.vala commit 1be3e2f79b384a374b2a69a31c88a4f36e1dd868 Author: fujiwarat Date: 2023-11-15 17:19:02 +0900 client/gtk2: Call strdup() after g_return_if_fail() M client/gtk2/ibusimcontext.c commit 0ad8e77bd36545974ad8acd0a5283cf72bc7c8ad Author: fujiwarat Date: 2023-11-09 14:59:25 +0900 Release 1.5.29-rc2 M configure.ac commit 5bb4353b58f0e0278d112343165f3d5a7a2693b9 Author: fujiwarat Date: 2023-11-09 14:33:51 +0900 data/dconf: Update org.freedesktop.ibus.gschema.xml se(rus_nodeadkeys) is deleted with xkeyboard-config 2.40 Fixes: https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/-/commit/651f1c0 M data/dconf/org.freedesktop.ibus.gschema.xml commit 0c67ff63d2c1b7425c040ad75c7f4eebca64c2ee Author: fujiwarat Date: 2023-11-09 11:39:19 +0900 client/wayland: Translate keycodes with CapsLock Fix CapsLock and some Latin characters with fr(azerty) layout in Plasma Wayland. BUG=https://github.com/ibus/ibus/pull/2568 M client/wayland/ibuswaylandim.c commit 0fc744ad30db9588ded4174186e82138698586fb Author: fujiwarat Date: 2023-11-09 10:23:18 +0900 client/wayland: Tab should not be committed by IM Tab key has two meanings of inserting a Tab character and moving the input focus which is handled by each applications and the input method should forward the Tab key event to the application. IBus GTK module will be fixed later. BUG=rhbz#2247891 M client/wayland/ibuswaylandim.c commit e0595365c717cbc87ecb13bbf143fca2a64d1af1 Author: fujiwarat Date: 2023-11-09 10:09:01 +0900 src: Add preedit D-Bus signals to PostProcessKeyEvent ibus-hangul calls UpdatePreeditText signal during pressing Enter key to hide the current preedit text and this also causes the reorder issue in sync process-key-event and need to move the preedit signals to PostProcessKeyEvent. Also refactor PostProcessKeyEvent codes. Fixes: https://github.com/ibus/ibus/commit/38f09c6 BUG=https://github.com/ibus/ibus/pull/2575 M bus/inputcontext.c M src/ibusinputcontext.c commit 7650080736931ab178aebed8e2c9bf133f08ab56 Author: fujiwarat Date: 2023-11-09 10:08:59 +0900 src: Add DeleteSurroundingText to PostProcessKeyEvent DeleteSurroundingText also can be delayed sending to IBus clients. Now surrounding D-Bus methods are added to PostProcessKeyEvent. Fixes: https://github.com/ibus/ibus/commit/38f09c6 BUG=https://github.com/ibus/ibus/issues/2570 M bus/inputcontext.c M src/ibusinputcontext.c commit 197dba7aacd377b931925454128ffecc130bf204 Author: fujiwarat Date: 2023-11-09 10:08:57 +0900 autogen: Revert DNF for Fedora 39 Seems DNF5 is deleted by default. Fixes: https://github.com/ibus/ibus/commit/f05c12d BUG=https://github.com/ibus/ibus/pull/2569 M .github/workflows/main.yml M autogen.sh commit 18bfae07ae19ec0fcdca79228a1d1f3d008d3ecd Author: fujiwarat Date: 2023-09-07 13:39:52 +0900 github/hooks: Update ibus-commit-common Check ibus-commit-config file to works on other Git repositories. M .github/hooks/ibus-commit-common A .github/hooks/ibus-commit-config commit ea9d6cf877195787ad5e2e7f88a55a8382682bf2 Author: fujiwarat Date: 2023-08-24 17:35:46 +0900 github/hooks: Add ibus-commit-common You can copy .github/hooks/* file to .git/hooks/. with the file permission '0755'. This script is useful not to commit invalid commit IDs every time and leave a temporary version(1.5.00) in source files when a release is bumped. Now a tiny spell checking is also added to output a warning of possible typos but not an error. Fixes: https://github.com/ibus/ibus/commit/3bbec69 Fixes: https://github.com/ibus/ibus/commit/cac49dc Fixes: https://github.com/ibus/ibus/commit/5ed9f13 Fixes: https://github.com/ibus/ibus/commit/7c61e22 M .github/hooks/commit-msg A .github/hooks/ibus-commit-common M .github/hooks/post-merge commit 8991379c1d0b2da05eeb9b1e3e52faee4901e236 Author: fujiwarat Date: 2023-08-22 18:38:39 +0900 Release 1.5.29-rc1 M configure.ac M po/ibus10.pot commit 155c5845ae38f7e732266f2ff52217761475282a Author: fujiwarat Date: 2023-08-22 17:57:38 +0900 engine: Update simple.xml with xkeyboard-config 2.39 M engine/simple.xml.in commit cf3c5c00baa8b230ff1b846119f20ca28771c89a Author: fujiwarat Date: 2023-08-22 17:42:07 +0900 Set local PKG_CONFIG_PATH BUG=https://github.com/ibus/ibus/issues/2556 M bindings/vala/Makefile.am M engine/Makefile.am M tools/Makefile.am M ui/gtk3/Makefile.am commit 96a6850f96087d12f55b555c896aae537c435f0e Author: Temuri Doghonadze Date: 2023-08-22 10:28:40 +0900 po: Update translation (Georgian) Update po/ka.po at 40.5% https://translate.fedoraproject.org/projects/ibus/ibus/ka/ BUG=https://github.com/ibus/ibus/pull/2548 M po/ka.po commit 6b62480a4c97253540323f66ccda7604d0403ada Author: Luna Jernberg Date: 2023-08-22 10:28:38 +0900 po: Update translation (Swedish) Update po/sv.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/sv/ BUG=https://github.com/ibus/ibus/pull/2548 M po/sv.po commit 8d7067623c88dbf0f8342efca639fbd63f1be97e Author: 김인수 Date: 2023-08-22 10:28:35 +0900 po: Update translation (Korean) Update po/ko.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/ko/ BUG=https://github.com/ibus/ibus/pull/2548 M po/ko.po commit 2d841c7465680a61eed4b111e70ce33e4530d235 Author: Piotr Drąg Date: 2023-08-22 10:28:33 +0900 po: Update translation (Polish) Update po/pl.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/pl/ BUG=https://github.com/ibus/ibus/pull/2548 M po/pl.po commit fc59704645d546b3e7f571c7970b162a0a5973ac Author: Yuri Chornoivan Date: 2023-08-22 10:28:30 +0900 po: Update translation (Ukrainian) Update po/uk.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/uk/ BUG=https://github.com/ibus/ibus/pull/2548 M po/uk.po commit a474d6e2b9d9d51211ab972f0a5fa7173132c71d Author: Mike FABIAN Date: 2023-08-22 10:28:27 +0900 po: Update translation (German) Update po/de.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/de/ BUG=https://github.com/ibus/ibus/pull/2548 M po/de.po commit 86d9bb9a1cbd4ffbd6bc2a4de85cb76a43bc2ced Author: Peng Wu Date: 2023-07-24 14:04:12 +0800 client/gtk2: Update set_cursor_location function to use Gdk functions For ibus-gtk4, use the Gdk functions to get the inner cursor location. The inner cursor location is translated by XTranslateCoordinates for X Window. For ibus-gtk3, use gdk_window_get_root_coords function to translate the inner cursor location for X Window. In Wayland, the set_cursor_location_relative function is called. In X Window, the set_cursor_location function is called. Fixes: https://github.com/ibus/ibus/commit/d0a47c3 Fixes: https://github.com/ibus/ibus/commit/a823161 BUG=https://github.com/ibus/ibus/pull/2549 BUG=https://gitlab.gnome.org/GNOME/gtk/-/issues/3024#note_987835 M client/gtk2/ibusimcontext.c commit 7c61e224d161eed7ac02964005ba182a789de3df Author: fujiwarat Date: 2023-08-18 15:11:07 +0900 github/hooks: Add a workaround in post-merge Ignore the prevous wrong commit ID 39b6907 Fixes: https://github.com/ibus/ibus/commit/5ed9f13 M .github/hooks/post-merge commit 5ed9f13883af85378352e9d2cb49e574bd9548d3 Author: fujiwarat Date: 2023-08-17 17:36:10 +0900 github/hooks: Add post-merge You can copy this file to .git/hooks/post-merge with the file permission '0755'. This script is useful not to commit invalid commit IDs every time and leave a temporary version(1.5.00) in source files when a release is bumped. Unfortunately .git/hooks/pre-merge-commit does not run for git merge fast-forwarding and I use post-merge instead as a workaround but post-merge succeeds the last merge so need to run git reset --hard if this script outputs warnings. M .github/hooks/commit-msg A .github/hooks/post-merge commit f05c12dafef83cdd6b0f988d86e4411794c7e44f Author: fujiwarat Date: 2023-08-09 11:35:21 +0900 github/workflows: Fix Fedora 39 DNF - Check latest gnome-shell-extension-no-overview - Add various configure options M .github/workflows/main.yml M autogen.sh commit e225c1179f5fbd302ab0c4429efaf00fe12742ff Author: fujiwarat Date: 2023-08-08 22:36:32 +0900 Release 1.5.29-beta2 M configure.ac M src/ibusbus.h M src/ibusinputcontext.h commit ad883dc616e865c0b961c826e9e7cba9347a392d Author: fujiwarat Date: 2023-08-08 16:12:55 +0900 src: Distinguish Arabic XKB and Keypad XKB options Shift-NumLock keys provides U+FEF9 keysym in keypad:pointerkeys XKB options and Shift-t keys provides U+100FEF9 keysym with Arabic layout and IBus internal APIs handles guint16 and cannot recognize the difference. Now the APIs are updated to handle guint. Also libX11 compose file provides the 16bit key sequence only and IBus now provides a pad U+1000000 internally. Seems the pad is added when format is used in the compose file. Once the string sequence is converted to guint sequence, IBus hardly to find the padded keysym and IBus uses ibus_keyval_name() if the value has the keysym names or Unicode point but some code points have both keysymnames and Unicode and now IBus prohibits "Pointer_*" keysym names in compose file Add src/tests/ibus-compose.basic test case. To test U0227, Set SGS layout(Samogitian) in xkb/symbols/lt and set XKB option lv3:bksl_switch and Press backslash-a keys. BUG=https://github.com/ibus/ibus/issues/2495 M src/ibuscomposetable.c M src/ibusenginesimple.c M src/ibusenginesimpleprivate.h M src/tests/Makefile.am A src/tests/ibus-compose.basic M src/tests/ibus-compose.c M src/tests/ibus-compose.env M src/tests/runtest commit e6c436f8167cb9e8d8bf4971ca84ae30aeab4396 Author: fujiwarat Date: 2023-08-03 22:37:18 +0900 po: Update translation (Japanese) Update po/ja.po at 99% https://translate.fedoraproject.org/projects/ibus/ibus/ja/ BUG=https://github.com/ibus/ibus/pull/2548 M po/ja.po commit 56a6d2702b916b513c74853225f0e50a4d4965af Author: fujiwarat Date: 2023-08-03 22:34:05 +0900 po: Update POT file Reviewer: Yuri Chornoivan Reviewer: Adolfo Jayme Barrientos M data/dconf/org.freedesktop.ibus.gschema.xml M po/ibus10.pot commit 98c6ee7297a72b30e49431061b653ffba1bdbdf7 Author: Gunnar Hjalmarsson Date: 2023-08-02 16:56:59 +0200 Fix typo in src/ibusservice.h "class" seems to be a reserved name in C++, so to make it possible to build plasma-desktop, the name "class" in ibus_service_class_free_interfaces() is replaced with "klass" in the same way as in ibus_service_class_add_interfaces(). BUG=https://github.com/ibus/ibus/issues/2550 M src/ibusservice.h commit 4e644e8dff68c4f7d52c0fe5da8b3f3a89c74328 Author: fujiwarat Date: 2023-08-01 23:25:35 +0900 ui/gtk3: Fix configure --disable-appindicator Seems `automake` runs `valac` for all VALA files as the concept while I could not find such a documentation and I added "#if INDICATOR" in indicator.vala at the moment. BUG=https://github.com/ibus/ibus/issues/2543 M ui/gtk3/Makefile.am M ui/gtk3/indicator.vala M ui/gtk3/panel.vala commit d47dc5520145110acc5567e98cd3b0694aa13dde Author: fujiwarat Date: 2023-08-01 23:21:33 +0900 src/tests: Fix some tests - Delete ua(rstu) in org.freedesktop.ibus.gschema.xml ua(rstu) has been available in xkeyboard-config 2.38 but deleted in 2.39. - Use command -v rather than which in runtest Fixes: https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/-/commit/a9f7e47 BUG=https://github.com/ibus/ibus/issues/2542 BUG=https://github.com/ibus/ibus/issues/2544 M data/dconf/org.freedesktop.ibus.gschema.xml M src/tests/runtest commit cac49dc5623bf718d90a327272701c34133c0a9d Author: fujiwarat Date: 2023-08-01 22:50:42 +0900 github/hooks: Fix typo in commit-msg M .github/hooks/commit-msg commit 3bbec69dd25499c606eee9def40230f79d3e5765 Author: fujiwarat Date: 2023-08-01 21:15:01 +0900 github/hooks: Add commit-msg You can copy this file to .git/hooks/commit-msg with the file permission '0755'. This script is useful not to commit invalid commit IDs every time and leave a temporary version(1.5.00) in source files when a release is bumped. A .github/hooks/commit-msg commit dfad02bb00ecf24a0f3b403c0aa96ad4890bdcb1 Author: fujiwarat Date: 2023-07-28 21:04:05 +0900 Release 1.5.29-beta1 M configure.ac commit e9f59d646ed15418171916e52cf12141984de7dd Author: fujiwarat Date: 2023-07-28 00:24:59 +0900 po: Update translation (Japanese) Update po/ja.po at 99% https://translate.fedoraproject.org/projects/ibus/ibus/ja/ BUG=https://github.com/ibus/ibus/pull/2534 M po/ja.po commit 01f9a27fc5d1e06da3493d919cfcabf34aa9bf34 Author: Alan01 Date: 2023-07-28 00:24:54 +0900 po: Update translation (Danish) BUG=https://github.com/ibus/ibus/pull/2540 M po/da.po commit c2a15bc2665ac2d709e45c3bea7b41aa1a9d3034 Author: Temuri Doghonadze Date: 2023-07-28 00:24:48 +0900 po: Update translation (Georgian) Update po/ka.po at 40.8% https://translate.fedoraproject.org/projects/ibus/ibus/ka/ BUG=https://github.com/ibus/ibus/pull/2534 M po/ka.po commit e468c9e4b74003890f25da42bc35cf97bca2d765 Author: fujiwarat Date: 2023-07-27 23:39:18 +0900 po: Update POT file M po/ibus10.pot commit 2f40eea2a9988a005898b113c5ddbfe66e7d2c70 Author: fujiwarat Date: 2023-07-27 22:17:13 +0900 github/workflows: Add libdbusmenu-gtk3-devel dependency Replace Fedora 37 with Fedora 39 BUG=https://github.com/ibus/ibus/pull/2541 M .github/workflows/main.yml commit 4a15f66a69f2d1ef203233966fac6eebab909d6c Author: fujiwarat Date: 2023-07-27 17:34:34 +0900 ui/gtk3: Add notification popup for Plasma Wayland BUG=https://github.com/ibus/ibus/issues/2408 M ui/gtk3/application.vala M ui/gtk3/panel.vala commit 0251f2cbba027aba7e3a5822788466c107ec7588 Author: fujiwarat Date: 2023-07-26 23:35:01 +0900 Add Super-semicolon for Emojier shortcut key M data/dconf/org.freedesktop.ibus.gschema.xml M ui/gtk3/ibus-emoji.7.in commit 29520357374c15426ba177d120fe2313ebdd4b9a Author: fujiwarat Date: 2023-07-26 23:34:59 +0900 ui/gtk3: Fix Emojier on Plasma Wayland Using Wayland popup window requires to share the display with input-method protocol but merging ibus-ui-gtk3 and ibus-extension-gtk3 will causes several leaks and now IBus keeps to separate ibus-extension-gtk3 and the Emoji category dialog from ibus-ui-gtk3 at the moment. I'd like to fix several Emojier issues later. This way needs to remember the previous input context path before the Emojier is launched since the popup window takes the input focus in the Wayland desktop session but the Wayland input-method version 1 always remakes the input context by the focus change so the exact match of input context paths is deleted at the moment. Also Qt applications commit the preedit text with focus-out events so Emojier clears the preedit prefix "e" before Emojier is launched. BUG=https://github.com/ibus/ibus/issues/2408 M ui/gtk3/panelbinding.vala commit 7b83a1f0177e7adf54b442b35ec9607c73923992 Author: fujiwarat Date: 2023-07-27 22:15:36 +0900 client/wayland: Fix sync ibus_input_context_process_key_event() Fix the synchronous "ProcessKeyEvent" D-Bus method in ibus-wayland too. Also fix to send the correct keycode to ibus-hangul. Fixes: https://github.com/ibus/ibus/commit/38f09c6 BUG=https://github.com/ibus/ibus/issues/2486 M client/wayland/ibuswaylandim.c commit 281c9aeb0ad566b1500416ea56f740c1b15ed46f Author: fujiwarat Date: 2023-07-26 23:34:56 +0900 client/wayland: Implement new process_key_event Currently pressing Ctrl-p causes to infinite key events because the Wayland compositor sends the same key event again with `wl_keyboard_listener.key()` before the async `zwp_input_method_context_v1_key()` and `xkb_state_update_key()` are called. The hybrid async process_key_event will be ported from client/gtk4 to client/wayland to fix the issue. Fixes: https://github.com/ibus/ibus/commit/c957c5f BUG=https://github.com/ibus/ibus/issues/2408 M client/wayland/ibuswaylandim.c commit 42be272730ca8efc0ca0a1dc1c79cd48f839da34 Author: fujiwarat Date: 2023-07-26 23:34:54 +0900 bus: Handle IME switcher in BusIBusImpl IME Switcher is now managed with the activate input context only in Wayland since the global hotkey is not available and handling the shortcut keys is moved to ibus-daemon from ibus-ui-gtk3. "Since: 1.5.00" is added to C header files to avoid Vala build failures until IBus 1.5.29 will be released. BUG=https://github.com/ibus/ibus/issues/2408 M bindings/vala/Makefile.am A bindings/vala/glibmacro.vapi M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M bus/marshalers.list M src/ibusbus.c M src/ibusbus.h M src/ibusmarshalers.list M ui/gtk3/Makefile.am M ui/gtk3/application.vala M ui/gtk3/bindingcommon.vala M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit 8923456a5d924c640e70e3755ea60aea84246910 Author: fujiwarat Date: 2023-07-26 23:34:42 +0900 ui/gtk3: Enable libdbusmenu in Indicator IBus panel now uses libdbusmenu to settle the panel menu coordiantes in Plasma Wayland desktop session since the Wayland display is required to use the Wayland input-method protocol. Now g_bus_get (G_BUS_TYPE_SESSION) is moved to Indicator to follow the AppIndicator implementation strictly and a new API ibus_service_class_free_interfaces() is added in libibus.so in case IBusService constructor does not need GDBusConnection. Previously GtkMenu absolute cooridiantes are used with Xorg display and AppIndicator "Activate" and "ContextMenu" D-Bus methods are used but now the coordiates are transferred to libdbusmenu and "Menu" D-Bus method is available and the activate menu only is shown by default. The workaround is to use the middle mouse click to toggle the activate and context menus at the moment. BUG=https://github.com/ibus/ibus/issues/2408 M configure.ac M src/ibusservice.c M src/ibusservice.h M ui/gtk3/Makefile.am M ui/gtk3/indicator.vala M ui/gtk3/notification-item.xml M ui/gtk3/panel.vala M ui/gtk3/property.vala commit ed552e860c1ae2a5985606cfe02ef388c681e570 Author: fujiwarat Date: 2023-07-26 22:54:22 +0900 ui/gtk3: Add an option to run ibus-daemon Now ibus-ui-gtk3 has an option to launch ibus-daemon in case of no bus connections and also a feature to save a log file of $XDG_CACHE_HOME/wayland.log by default and an option of the verbose log. BUG=https://github.com/ibus/ibus/issues/2408 M client/wayland/ibuswaylandim.c M ui/gtk3/application.vala M ui/gtk3/ibus-ui-wayland.desktop.in commit b8ab8001cac770e2e2728761cea4c5b418429796 Author: fujiwarat Date: 2023-07-26 22:54:20 +0900 ui/gtk3: Make GtkMenu with GdkDisplayX11 Wayland does not support to put GtkMenu with a specific position but GtkStatusIcon or AppIndicator requires GtkMenu made with GdkDisplayX11 so that it's put at the panel icon. On the other hand, now GdkDisplayWayland is also required to get wl_display for input method protocol. Now GdkMenu is genrated with GdkDisplayX11 but GdkDevice pointer is made with GdkDisplayWayland and the menu is activated only when an input context is focused. So you might need to click a input context in an application window after you click the panel icon to show the panel menus unfortunately. We many need to separate the processes of IBus panel icon and the candidate popup to separate GdkDisplayWayland and GdkDisplayX11. BUG=https://github.com/ibus/ibus/issues/2408 M ui/gtk3/panel.vala commit b0f06aef3993796dc85cc8956c9a35e852fe184f Author: fujiwarat Date: 2023-07-26 22:54:18 +0900 client/gtk2: Connect global-engine-changed signal to switch XKB in Wayland BUG=https://github.com/ibus/ibus/issues/2408 M client/wayland/ibuswaylandim.c commit 3f3f0b6b38c227d6201f5d6fb6381923cd4c2ed1 Author: fujiwarat Date: 2023-07-26 22:54:17 +0900 ui/gtk3: Add desktop file for Plasma systemsettings5 systemsettings5 "Input Devices" -> "Virtual Keyboard" shows "IBus Wayland" icon in the Plasma Wayland desktop session to launch `ibus-ui-gtk3 --enable-wayland-im` and the panel can be launched with "Apply" button after `ibus-daemon --panel disable &` runs. BUG=https://github.com/ibus/ibus/issues/2408 M po/POTFILES.in M ui/gtk3/Makefile.am A ui/gtk3/ibus-ui-wayland.desktop.in commit 6ed5e45c87d1a8508c3a9c33b117e89a2bbb2c5c Author: fujiwarat Date: 2023-07-27 17:33:06 +0900 ui/gtk3: Call set_overlay_panel with realize signal set_overlay_panel() is available in Wayland input-method protocol and GdkWaylandWindow can provide wl_surface with the realize signal. BUG=https://github.com/ibus/ibus/issues/2408 M bindings/vala/gdk-wayland.vapi M client/wayland/Makefile.am A client/wayland/ibus-wayland-im-custom.vala M client/wayland/ibuswaylandim.c M client/wayland/ibuswaylandim.h M client/wayland/main.c M ui/gtk3/application.vala M ui/gtk3/bindingcommon.vala M ui/gtk3/candidatepanel.vala M ui/gtk3/emojier.vala M ui/gtk3/handle.vala M ui/gtk3/indicator.vala M ui/gtk3/keybindingmanager.vala M ui/gtk3/panel.vala M ui/gtk3/propertypanel.vala commit 494448b78511e306089ea172993910295e654219 Author: fujiwarat Date: 2023-07-27 22:02:06 +0900 client/wayland: Generate library to be imported by panel Wayland input-method protocol has set_overlay_panel to set the IBus lookup window near by the text input cursor and the calling Wayland APIs and calling GUI APIs need to be same PID. Now `configure --enable-wayland` by default to include ibuswaylandim.h in C files generated by Vala. BUG=https://github.com/ibus/ibus/issues/2408 A client/wayland/IBusWaylandIM-1.0.metadata M client/wayland/Makefile.am A client/wayland/ibuswaylandim.c A client/wayland/ibuswaylandim.h M client/wayland/main.c M configure.ac M ui/gtk3/Makefile.am M ui/gtk3/application.vala M ui/gtk3/keybindingmanager.vala M ui/gtk3/propertypanel.vala commit e379bafaf3c0ae8330c0acc0c30fd995e4fa2279 Author: fujiwarat Date: 2023-05-04 09:54:46 +0900 client/wayland: Update Wayland protocol 1.31 M client/wayland/input-method-unstable-v1-client-protocol.h M client/wayland/input-method-unstable-v1-protocol.c commit c3667366b03ef3c54060d6de6f961a87cddefd4e Author: fujiwarat Date: 2023-05-04 09:54:44 +0900 ui/gtk3: Revert to disable switching XKB layouts Fixes: https://github.com/ibus/ibus/commit/230fb22 Fixes: https://github.com/ibus/ibus/commit/9ad0637 BUG=https://github.com/ibus/ibus/issues/2408 M ui/gtk3/panel.vala commit 7502abbe7eb4289d0d727e53cdfac572baf405d5 Author: fujiwarat Date: 2023-07-12 07:52:21 +0900 client/x11: Fix sync ibus_input_context_process_key_event() Fix the synchronous "ProcessKeyEvent" D-Bus method in ibus-x11 too. Fixes: https://github.com/ibus/ibus/commit/38f09c6 BUG=https://github.com/ibus/ibus/issues/2486 M client/x11/main.c commit 38f09c657fd5713e39f698aae43a09a07574f1a6 Author: fujiwarat Date: 2023-07-12 07:50:22 +0900 src: Fix sync ibus_input_context_process_key_event() The synchronous "ProcessKeyEvent" D-Bus method cannot receive "CommitText" and "ForwardKeyEvent" D-Bus signals during calling the method. To resolve the issue, now ibus_input_context_set_post_process_key_event() and ibus_input_context_post_process_key_event() are added newly. ibus_input_context_post_process_key_event() retries "CommitText" and "ForwardKeyEvent" D-Bus signals during calling the "ProcessKeyEvent" D-Bus method and ibus-daemon does not handle those signals. "Since: 1.5.00" is added in header files to available APIs before 1.5.29 is released. Will think later how to convert the version comments together when the new version 1.5.29 is committed. BUG=https://github.com/ibus/ibus/issues/2486 M bus/inputcontext.c M client/gtk2/ibusimcontext.c M src/ibusinputcontext.c M src/ibusinputcontext.h commit 7237fcc62348a4fe2f4f1347fe62cd5c339a1900 Author: fujiwarat Date: 2023-07-12 07:39:27 +0900 bus: Apply code style to inputcontext.c M bus/inputcontext.c commit 580ea41b303d4f2dc5ccc64d39612c57cd7c5a0e Author: fujiwarat Date: 2023-07-14 10:51:41 +0900 bus: Fix to declare g_unix_signal_add with glib-unix.h Fixes: https://github.com/ibus/ibus/commit/25a2dfc BUG=https://github.com/ibus/ibus/pull/2499 M bus/main.c commit 431c72b2ea1282dace4bf1e332c7d1e7c988a9e3 Author: fujiwarat Date: 2023-07-05 19:05:39 +0900 github/workflows: Delete internal patch since gspawn is fixed BUG=https://github.com/orgs/community/discussions/39646 M .github/workflows/main.yml commit 692da9766d53c2467b937cff745ae23923462f1e Author: Matt Turner Date: 2023-07-05 13:42:08 +0900 github/workflows: Build with make -j$(nproc) Now that parallel make works, let's make sure it continues to do so. BUG=https://github.com/ibus/ibus/pull/2523 M .github/workflows/main.yml commit f25c48a1989be221e98b863c947e52eaf80dc4a3 Author: Matt Turner Date: 2023-07-05 13:41:33 +0900 src: Fix to build libibus-1.0.la twice The purpose of autotools is to automatically handle dependencies. By calling $(MAKE) manually and without specifying any dependencies below, we are going out of our way to prevent automake from doing its job. ibusunicodegen.h: $(MAKE) $(AM_MAKEFLAGS) dicts/unicode-blocks.dict This avoids a build error whereby libibus-1.0.la is built twice simultaneously, races with itself, and breaks the build. dicts/unicode-blocks.dict ibusunicodegen.h: unicode-parser The two build targets let `make ibusunicodegen.h` try to make `dicts/unicode-blocks.dict` and `ibusunicodegen.h` with unicode-parser. Unlike `ibusunicodegen.h`, we cannot add `ibusemojigen.h` to the rule that produces it (as a side-effect) because the rule is specified with GNU Make syntax: dicts/emoji-%.dict: emoji-parser and doing so yields an error: config.status: error: Something went wrong bootstrapping makefile fragments for automatic dependency tracking. If GNU make was not used, consider re-running the configure script with MAKE="gmake" (or whatever is necessary). You can also try re-running configure with the '--disable-dependency-tracking' option to at least be able to build the package (albeit without support for automatic dependency tracking). So instead, add a prerequisite to the rule. Both emoji-parser and unicode-parser has $(libibus) in LDADD and $(libibus) is built before emoji-parser and unicode-parser are built. BUG=https://github.com/ibus/ibus/pull/2523 M src/Makefile.am commit be1f1d0da86006b019aaf78781d8c0c9c68fd46d Author: Matt Turner Date: 2023-07-05 13:33:25 +0900 src: Fix missing ibusenumtypes.h with parallel build When `./autogen.sh && make -C src ibusresources.c -j2` runs, it causes a build failure due to no ibusenumtypes.h file. The chained dependencies are: ibusresources.c -> compose/sequences-$(ENDIAN)-endian -> gen-internal-compose-table -> gencomposetable.c gencomposetable.c includes ibus.h and it causes no ibusenumtypes.h with the parallel build with multi CPUs. ibusenumtypes.h is in BUILT_SOURCES so it is built (with other files in BUILT_SOURCES) before any other rules. But ibus.h is included by gencomposetable.c which is needed to generate ibusresources.c in BUILT_SOURCES. Since gencomposetable.c is an internal build source file and it doesn't have to include ibus.h but can include each ibus header files. Deleting ibus.h in gencomposetable.c can fix the build failure. BUG=https://github.com/ibus/ibus/pull/2523 M src/gencomposetable.c commit 25a2dfc12410fff5f32a3caf793a958d7e41dc4c Author: fujiwarat Date: 2023-07-04 22:46:31 +0900 bus: Avoid to hang the process with SIGUSR1 signal Seems multiple `Xephyr -query` to a remote GDM login session causes to leave the some processes of ibus-daemon even if the Xephyr sessions are terminated and the issue is caused by calling bus_server_quit() with SIGUSR1 signal. I cannot reproduce the issue but calling the unsafe code from a signal handler might lead to hangs and this is another signal connection not to hang ibus-daemon. BUG=https://github.com/ibus/ibus/pull/2499 M bus/main.c commit 18f0d9f5f245f92dee086ce57a5bb94e63f1c222 Author: oreo639 Date: 2023-06-18 11:08:59 +0900 configure: Fix cross compiling Use AX_PROG_CC_FOR_BUILD to get build CC/CFLAGS/LDFLAGS/etc. Use PKG_PROG_PKG_CONFIG_FOR_BUILD to find build pkg-config binary. https://sourceware.org/autobook/autobook/autobook_143.html#Supporting-Cross-Compiler-in-Make BUG=https://github.com/ibus/ibus/issues/2479 M configure.ac M m4/Makefile.am A m4/ax_prog_cc_for_build.m4 A m4/pkg_config_for_build.m4 M src/Makefile.am commit f0492c86f7c42d35bedff1a1910075617243d1f0 Author: Matt Turner Date: 2023-06-18 10:59:35 +0900 m4: Update m4 files - Revert .gitignore because m4 files cannot be added - Delete as-version.m4 which has been unused since 2010 - Update the latest introspection.m4 - Update the latest vapigen.m4 Fixes: https://github.com/ibus/ibus/commit/d23bbdd Fixes: https://github.com/ibus/ibus/commit/3b3f56d BUG=https://github.com/ibus/ibus/pull/2527 M .gitignore M m4/Makefile.am D m4/as-version.m4 M m4/introspection.m4 M m4/vapigen.m4 commit d23bbdd442e361006e434fff00b6bda3d418b893 Author: Matt Turner Date: 2023-06-11 19:59:20 +0900 Add a .gitignore file BUG=https://github.com/ibus/ibus/pull/2521 A .gitignore commit b97e6669ea8127dd50ce49d061edd4ce579bbb42 Author: Matt Turner Date: 2023-06-11 19:59:18 +0900 src/ibuscomposetable: Fix unaligned accesses Fixes: https://github.com/ibus/ibus/commit/19ca1065 BUG=https://github.com/ibus/ibus/issues/2518 M src/ibuscomposetable.c commit 76f2f4a3aa25b399d65c947d76d61d5ae4723bc7 Author: Matt Turner Date: 2023-06-11 19:59:17 +0900 configure: Run autoupdate Avoids these warnings when running autogen.sh: configure.ac:67: warning: The macro `AC_GNU_SOURCE' is obsolete. configure.ac:67: You should run autoupdate. ./lib/autoconf/specific.m4:311: AC_GNU_SOURCE is expanded from... configure.ac:67: the top level configure.ac:129: warning: The macro `AC_PROG_CC_STDC' is obsolete. configure.ac:129: You should run autoupdate. ./lib/autoconf/c.m4:1671: AC_PROG_CC_STDC is expanded from... configure.ac:129: the top level configure.ac:139: warning: The macro `AM_DISABLE_STATIC' is obsolete. configure.ac:139: You should run autoupdate. m4/ltoptions.m4:260: AM_DISABLE_STATIC is expanded from... configure.ac:139: the top level configure.ac:140: warning: The macro `AC_ISC_POSIX' is obsolete. configure.ac:140: You should run autoupdate. ./lib/autoconf/specific.m4:549: AC_ISC_POSIX is expanded from... configure.ac:140: the top level configure.ac:141: warning: The macro `AC_HEADER_STDC' is obsolete. configure.ac:141: You should run autoupdate. ./lib/autoconf/headers.m4:704: AC_HEADER_STDC is expanded from... configure.ac:141: the top level BUG=https://github.com/ibus/ibus/pull/2519 M configure.ac commit 4831ed595b346f1ab9224b44e571532785ca86c7 Author: fujiwarat Date: 2023-06-11 16:25:56 +0900 setup: Unselect Add button in Select Input Method dialog After click "More" ListBoxRow cell in the "Select an input method" dialog, "Add" button is sensitive but clicking "Add" button causes a SEGV in enginedialog.py:get_selected_engine() because the more cell has no engine memmber. BUG=rhbz#2213145 M setup/enginedialog.py commit 03a486c1ec98647e7f8c7dbb70e6e4d3898c9322 Author: Emil Velikov Date: 2023-06-11 16:16:40 +0900 makefile: manage the manpages via AC_CONFIG_FILES() The AC_CONFIG_FILES macro already known how to handle @VERSION@ substitution, while also ensuring the input files are in the tarball (EXTRA_DIST) and substituted files are removed on make distclean (CONFIG_CLEAN_FILES). BUG=https://github.com/ibus/ibus/pull/2514 M bus/Makefile.am M configure.ac M data/dconf/Makefile.am M setup/Makefile.am M tools/Makefile.am M ui/gtk3/Makefile.am commit 1a25975d9f55f18eab609e4d147dd32689e367f3 Author: Emil Velikov Date: 2023-06-11 16:16:35 +0900 makefile: don't gzip the man pages Drop the gzip step from the manpages - distributions already do that as needed. In addition this resolves the final reproducibility issue with ibus. BUG=https://github.com/ibus/ibus/pull/2514 M bus/Makefile.am M data/dconf/Makefile.am M setup/Makefile.am M tools/Makefile.am M ui/gtk3/Makefile.am commit 35d7438bbcbd3e30a3b38882e8cbbec8fa64312b Author: fujiwarat Date: 2023-05-12 07:57:45 +0900 po: Update translation (Japanese) https://translate.fedoraproject.org/projects/ibus/ibus/ja/ BUG=https://github.com/ibus/ibus/pull/2500 M po/ja.po commit 01c941e34b08ad069a244d38ed228ef0b34213a5 Author: fujiwarat Date: 2023-05-12 07:56:31 +0900 po: Update POT file M po/POTFILES.in M po/ibus10.pot commit fbbb76fd1665cc4a377043e74cb81afe607a26d4 Author: Andi Chandler Date: 2023-05-12 07:54:30 +0900 po: Update translation (English (United Kingdom)) Update po/en_GB.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/en_GB/ BUG=https://github.com/ibus/ibus/pull/2500 M po/en_GB.po commit 310c442b62b569255ffc39bca557920d06881ade Author: fujiwarat Date: 2023-05-02 10:00:03 +0900 ui/gtk3: Add workaround Emojier can be launched gnome-shell 44 prevents ibus from launching Emojier GUI. This workaround can launch the Emojier but still cannot output the selected emoji character to the focused application. So another workaround is needed with this patch. I.e. Type Ctrl-Shift-c keys to copy the seleted emoji instead of Enter key. BUG=https://github.com/ibus/ibus/issues/2509 BUG=https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6518 M ui/gtk3/emojier.vala commit 67a0f36de029fe3adc21c90c7fb8669d0d68cbe2 Author: fujiwarat Date: 2023-04-13 12:22:50 +0900 src: Generate ibusenumtypes.h for gen-internal-compose-table `make clean` deletes ibusenumtypes.h and ibus.h incudes ibusenumtypes.h and it's required by the gen-internal-compose-table build. BUG=https://github.com/ibus/ibus/issues/2501 M src/Makefile.am commit 630f3f73f62a121abb1af5b215d193aec4e0053c Author: fujiwarat Date: 2023-04-05 14:28:49 +0900 configure: Use AC_C_BIGENDIAN for BSD systems NetBSD does not define __BYTE_ORDER and use AC_C_BIGENDIAN instead. BUG=https://github.com/ibus/ibus/pull/2477 M configure.ac commit 9553dbf12ec42a58beb671a7039827fbd652e14d Author: Izumi Tsutsui Date: 2023-03-27 19:45:37 +0900 Portability fixes for preparation of NetBSD CI - Makefile: Ignore errors on $(RM) -r "`uname -i`" - autogen: Replace make with $MAKE - data/dconf: BSD does not support the --tmpdir long option in mktemp. Also add the cleanup function. BUG=https://github.com/ibus/ibus/pull/2482 M Makefile.am M autogen.sh M data/dconf/make-dconf-override-db.sh commit a4007f7d0bdfb98457487c85304188c411e6d991 Author: Sibo Dong <46512211+dongsibo@users.noreply.github.com> Date: 2023-03-23 13:08:12 +0900 ui/gtk3: Update Emoji shortcut key in ibus-emoji(7) The default Emoji shortcut key was changed but not updated in the ibus-emoji.7 man page. Fixes: https://github.com/ibus/ibus/commit/1520c39 BUG=https://github.com/ibus/ibus/pull/2475 M ui/gtk3/ibus-emoji.7.in commit 8f706d160631f1ffdbfa16543a38b9d5f91c16ad Author: fujiwarat Date: 2023-03-23 13:07:38 +0900 util/IMdkit: Disable while loop before call ForwardEventMessageProc() Seems ProcessQueue() had a wrong XFree() with async process-key-event. Fixes: https://github.com/ibus/ibus/commit/506ac99 BUG=https://github.com/ibus/ibus/issues/2484 M util/IMdkit/i18nPtHdr.c commit 497f0c74230a65309e22ce5569060ce48310406b Author: fujiwarat Date: 2023-03-23 13:07:30 +0900 client/x11: Fix Key typing order ibus-x11 now also uses the hybrid process key events with IBUS_ENABLE_SYNC_MODE=2 and it waits for the async API with GSource and g_main_context_iteration() in xim_forward_event(). But g_main_context_iteration() calls gdk_event_source_dispatch() and it can call another xim_forward_event() and the callbacks of ibus_input_context_process_key_event_async() can be nested. So if the forwarding API is called out of the callbacks of ibus_input_context_process_key_event_async(), the key events order is swapped due to the delayed return of g_main_context_iteration(). To resolve this issue, the forwarding API should be called in the callbacks of ibus_input_context_process_key_event_async(). Fixes: https://github.com/ibus/ibus/commit/506ac99 BUG=https://github.com/ibus/ibus/issues/2480 M client/x11/main.c commit ce5e2bb43ea4c2f5780f4a3bfd7509f812b60afa Author: Izumi Tsutsui Date: 2023-02-28 18:05:29 +0900 src: Define X11_LOCALEDATADIR for BSD Compose data FreeBSD and NetBSD have X11 locale Compose data directories in ${X11_PREFIX}/lib/X11/locale instead of ${X11_PREFIX}/share/X11/locale: https://github.com/freedesktop/xorg-lib-libX11/blob/20a3f99/configure.ac#L336-L340 BUG=https://github.com/ibus/ibus/pull/2478 M configure.ac M src/Makefile.am M src/gencomposetable.c M src/ibuscomposetable.c M src/ibusenginesimple.c M src/tests/Makefile.am M src/tests/ibus-compose.c commit 7c8abbe89403c2fcb08e3fda42049a97187e53ab Author: fujiwarat Date: 2023-02-28 17:46:10 +0900 src: Call IBUS_TYPE_EMOJI_DATA in ibus_init() Seems the evaluation of IBUS_EMOJI_DATA() depends on the compiler optimization. BUG=https://github.com/ibus/ibus/issues/2476 M src/ibusshare.c commit a140924e437346ebb7cd30c6e4d316ab5d447871 Author: Simon Deziel Date: 2023-02-22 19:05:17 +0900 src/services: use a shell exec in systemd service files exec sub-command avoids keeping the parent shell around. Refer sh(1) Fedora sh is bash. BUG=https://github.com/ibus/ibus/pull/2453 M bus/services/org.freedesktop.IBus.session.GNOME.service.in M bus/services/org.freedesktop.IBus.session.generic.service.in commit bc065f8ced797186dd5a6c2460eea6efe755b16d Author: fujiwarat Date: 2023-02-21 11:50:08 +0900 Release 1.5.28 BUG=https://github.com/ibus/ibus/milestone/13?closed=1 M configure.ac commit 3c51582f28d3e60e6a58faf2dc94d790d56f9324 Author: fujiwarat Date: 2023-02-21 11:32:19 +0900 data/dconf: Update org.freedesktop.ibus.gschema.xml Some variants are deleted with xkeyboard-config 2.38 Fixes: 594ec48cf80e8d2f62c5845f2ea0dbd0ebb0a1f8 M data/dconf/org.freedesktop.ibus.gschema.xml commit bf8848eb961b59e5f9ad5da78c3f25aa902fbde6 Author: fujiwarat Date: 2023-02-21 09:44:52 +0900 src/compose: Update en-US compose with libX11 1.8.4 M src/compose/sequences-big-endian M src/compose/sequences-little-endian commit 594ec48cf80e8d2f62c5845f2ea0dbd0ebb0a1f8 Author: fujiwarat Date: 2023-02-21 09:44:35 +0900 engine: Update simple.xml with xkeyboard-config 2.38-1 - Replace Tamil variants - Replace Indonesian variants M engine/simple.xml.in commit 8f00d67b809036b0b76ae257cfe7e102bc8f1dec Author: fujiwarat Date: 2023-02-21 09:44:24 +0900 src: Update ibusunicodegen.h with Unicode 15.0.0 M src/ibusunicodegen.h commit f6eabce4fe693b0716bdee76be5424c084c58c99 Author: Luis Pixeltux Date: 2023-02-21 09:03:09 +0900 po: Update translation (Italian) Update po/it.po at 34.0% https://translate.fedoraproject.org/projects/ibus/ibus/it/ BUG=https://github.com/ibus/ibus/pull/2444 M po/it.po commit 2f897b525df379e4e278161833586b3bb3a0bea3 Author: Julien Humbert Date: 2023-02-21 08:58:08 +0900 po: Update translation (French) Update po/fr.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/fr/ BUG=https://github.com/ibus/ibus/pull/2444 M po/fr.po commit 41e33c29154de491104ebdc4b9733ae314e9d442 Author: 김인수 Date: 2023-02-21 08:53:21 +0900 po: Update translation (Korean) Update po/ko.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/ko/ po: Update translation (Japanese) Update po/ja.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/ja/ Should not add English "Tangsa" to msgstr yet since the null msgstr is under consideration. Refer the comment line on the msgid. BUG=https://github.com/ibus/ibus/pull/2444 M po/ja.po M po/ko.po commit 4b0e4c57afc48ed96e3443d198f7cf2e0e816524 Author: Alexey Rubtsov Date: 2023-02-21 08:49:51 +0900 po: Update translation (Russian) Update po/ru.po at 99.4% https://translate.fedoraproject.org/projects/ibus/ibus/ru/ BUG=https://github.com/ibus/ibus/pull/2444 M po/ru.po commit f3a99839192b0db4a2b0438ac04cfd4cf94a862f Author: Oğuz Ersen Date: 2023-02-21 08:47:11 +0900 po: Update translation (Turkish) Update po/tr.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/tr/ BUG=https://github.com/ibus/ibus/pull/2444 M po/tr.po commit 8abf3ebdce4009d0c376d5486af48cdd26308e67 Author: Emilio Herrera Date: 2023-02-21 08:43:26 +0900 po: Update translation (Spanish) Update po/es.po at 98.3% https://translate.fedoraproject.org/projects/ibus/ibus/es/ BUG=https://github.com/ibus/ibus/pull/2444 M po/es.po commit 382c0349308b518a7a451f930afc6ba115b3e73a Author: Temuri Doghonadze Date: 2023-02-21 08:39:32 +0900 po: Update translation (Georgian) Update po/ka.po at 40.6% https://translate.fedoraproject.org/projects/ibus/ibus/ka/ BUG=https://github.com/ibus/ibus/pull/2444 M po/LINGUAS A po/ka.po commit ecfae1678b117c95264e062deddf9562f902c03d Author: fujiwarat Date: 2023-02-18 19:52:14 +0900 Return error if D-Bus set/get property method is failed D-Bus set/get property methods are called from GDBusConnection APIs invoke_set_property_in_idle_cb() and invoke_get_property_in_idle_cb() and the error values cannot be null if the methods are failed. BUG=rhbz#2169205 M bus/ibusimpl.c M bus/inputcontext.c M src/ibusengine.c M src/ibusenginesimple.c M src/ibusservice.c commit 2a235c8c33f1de56df4873fe3662d5beb1355715 Author: fujiwarat Date: 2023-01-25 15:10:50 +0900 Refactor surrounding text warning & free focus-id tables - Free engine_focus_id_table in bus_ibus_impl_destroy - It would be better to check the function return value at the first calling than the static variable for the surrounding text warnings - Add API comments Fixes: https://github.com/ibus/ibus/commit/39b6907 Fixes: https://github.com/ibus/ibus/commit/7bbcce6 Fixes: https://github.com/ibus/ibus/commit/19ca106 Fixes: https://github.com/ibus/ibus/commit/92771d0 M bus/ibusimpl.c M client/gtk2/ibusimcontext.c M src/ibuscomposetable.h M src/ibusengine.c commit bd24be4582f67e278fc85e843d39b81629bf7d9b Author: Philippe Rouquier Date: 2023-01-23 21:04:51 +0900 Add active-surrounding-text property to IBusEngine When this property is set to TRUE, ibus daemon will update surrounding text on every focus(in/out) event which makes ibus_engine_get_surrounding_text() calls from an engine code unnecessary. This property must be set at construct time. BUG=https://github.com/ibus/ibus/pull/2447 M bus/engineproxy.c M bus/ibusimpl.c M bus/ibusimpl.h M src/ibusengine.c commit d190bc32fe0fe780b66100e5461326973ac7a804 Author: Eberhard Beilharz Date: 2023-01-12 22:24:42 +0900 configure: Fix texts for surrounding text The options and corresponding texts for surrounding-text were mixed up. This change makes them consistent with the text for other options. BUG=https://github.com/ibus/ibus/pull/2438 M configure.ac commit ae696351c8a37ca15512b7fb9f4d5fe187890962 Author: fujiwarat Date: 2023-01-06 08:16:36 +0900 src/compose: Add en-US compose table with libX11 1.7.3.1 M src/compose/sequences-big-endian M src/compose/sequences-little-endian commit 19ca10651890ce0d88ec613de0e8930090105dc8 Author: fujiwarat Date: 2023-01-06 00:01:27 +0900 src: Convert gtk_compose_seqs_compact to GResource en-US Compose table had been a compact array with a special algorithm but now it's converted to the general compose table similar to other language compose tables and saved to GResource. M configure.ac M src/Makefile.am A src/compose/Makefile.am A src/compose/sequences-big-endian A src/compose/sequences-little-endian A src/gencomposetable.c D src/gtkimcontextsimpleseqs.h A src/ibus.gresources.xml.in M src/ibuscomposetable.c M src/ibuscomposetable.h M src/ibusenginesimple.c M src/ibusenginesimpleprivate.h M src/ibusshare.c commit f3a7772e47cefcaf839f11248aeb1349b4e36f68 Author: fujiwarat Date: 2023-01-06 00:00:23 +0900 github/workflows: Fix CI on PR M .github/workflows/main.yml M autogen.sh commit a3a9bd30f5d8658f4de2d30190f680e7636b3948 Author: fujiwarat Date: 2022-12-02 18:26:26 +0900 Add action file for CI Replace Travis CI with GitHub action CI. A .github/workflows/main.yml commit 2555fa9781ccb40445d8a344ec180ff654e0c5f1 Author: fujiwarat Date: 2022-12-02 13:41:39 +0900 src/tests: Fix Connection refused in ibus-bus ibus-bus is failed in Ubuntu 22.04 under GitHub action + Docer with the warning of: "Unable to connect to ibus: Could not connect: Connection refused" during ibus_bus_new_async()'s callback if IBus socket file is deleted after ibus_bus_exit_async()'s callback is called. M src/tests/ibus-bus.c commit 2719e936cc1f1f26f414b339a7f4f0e48331732f Author: fujiwarat Date: 2022-11-22 21:47:01 +0900 src/tests: Fallback gtk-query-immodules-3.0 for Ubuntu 22.04 M src/tests/runtest commit 506ac9993d5166196b7c4e9bfa9fb0f9d3792ffa Author: fujiwarat Date: 2022-11-10 18:38:05 +0900 client/x11: Implement new process_key_event for ibus-x11 The new process_key_event is ported from GTK4 to X11 because hangul maintainers wish to delete forward_key_event as much as possible and currently we could apply forward_key_event to the sync mode only and the new process_key_event is a new async key event process in X11 and hangul might disable forward_key_event by default. Now the definition of IBUS_CAP_SYNC_PROCESS_KEY_V2 capability is changed to set only if the sync mode. Also switch a heavy GMainLoop to the light GSource. Fixes: https://github.com/ibus/ibus/commit/c957c5f M client/gtk2/ibusimcontext.c M client/x11/main.c M src/ibustypes.h commit cd621f8b82c80a174cd880cb27f27d7ccb9cb4d4 Author: fujiwarat Date: 2022-11-03 08:36:17 +0900 ui/gtk3/switcher: Avoid to unref m_engines with double run m_engines could be a buffer overflow if switcher.run() is called again and m_engines is unrefed durling showing the swicher popup. BUG=rhbz#2081055 M ui/gtk3/switcher.vala commit ddead515d9d53fc692af252f610b009660494e21 Author: fujiwarat Date: 2022-09-21 21:08:33 +0900 client/gtk2: Update surrounding text properties by focus in ibus_input_context_set_surrounding_text() should be succeeded if input contexts are different so that ibus engines can update surrounding text properties with focus in event. When an input context is created newly, RequireSurroundingText D-Bus signal could not be received yet and set_surrounding_text() is failed. Now "require-surrounding-text" signal is added to IBusInputContext and clients can call set_surrounding_text() later. BUG=https://github.com/ibus/ibus/issues/2423 M client/gtk2/ibusimcontext.c M src/ibusinputcontext.c commit 781119be4f646f06197badb73398a41d5acca787 Author: fujiwarat Date: 2022-09-21 21:08:31 +0900 client/gtk2: Update capabilities if "retrieve-surrounding" is failed Some engine developers wish to update the capabilities if emitting "retrieve-surrounding" signal is failed so that engines disable the surrounding text feature but I had deleted the logic with #2054 since the second typing could be succeeded. Asking all applications the second typing would not be a good condition and the special issue should be fixed in firefox. Fixes: https://github.com/ibus/ibus/commit/7b3b8c8b0c BUG=https://github.com/ibus/ibus/issues/2054 BUG=https://github.com/ibus/ibus/issues/2354 M client/gtk2/ibusimcontext.c commit 8d0abbcbcef9a4fda706c70f12f4f596728bf90b Author: fujiwarat Date: 2022-09-21 21:08:29 +0900 client/gtk2: Stop many warnings of surrounding text Surrounding text is requested by ibus_im_context_filter_keypress() and the no supported warning could be output many times. Now the warning is output one time by input context but brower applicaations do not use GtkWidget for the input context so the warning is output by instance but not input context. BUG=https://github.com/ibus/ibus/issues/2418 M client/gtk2/ibusimcontext.c commit babad7839ba6d72609c717d647bb2928724b4cc3 Author: Izumi Tsutsui Date: 2022-09-06 17:08:43 +0900 tools: Check libdl for dlclose() properly in configure BUG=https://github.com/ibus/ibus/pull/2442 M configure.ac M tools/Makefile.am commit e144b12c1f18ec91ddcbb5d491387d78075318f4 Author: fujiwarat Date: 2022-08-23 00:29:37 +0900 Release 1.5.27 M configure.ac commit ef9bd3b1c8e2ed122b064abb59fc6e121e23bb59 Author: fujiwarat Date: 2022-08-23 00:26:57 +0900 engine: Update simple.xml with xkeyboard-config 2.36 M engine/simple.xml.in commit 1520c39d0d6036da725fcecd932883be3f3d3575 Author: fujiwarat Date: 2022-08-18 16:24:23 +0900 data/dconf: Revert Emoji shoftcut key to Super-space IBus provides the D-Bus method to override IBus emoji UI and i think Super-period is better than Ctrl-period for the emoji shortcut key to compare MS-Window, Macintosh. IBus emoji UI connects to the input method and provides the language emoji annotations. Seems moving GTK Cotrol-period to gnome-shell Suer-period is difficult at present. BUG=https://github.com/ibus/ibus/issues/2390 BUG=https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5728 M data/dconf/org.freedesktop.ibus.gschema.xml commit d47dbfada41aa4fb5df9f7cffe873786fc4849cc Author: fujiwarat Date: 2022-07-25 17:22:21 +0900 client/x11: Enhance Xutf8TextListToTextProperty XCompoundTextStyle depends on the current locale and some locales fail to to get the compound text style. If Xutf8TextListToTextProperty() fails, now ibus-x11 tries to get the compound text style with UTF-8 encoding. BUG=https://github.com/ibus/ibus/issues/2422 M client/x11/main.c commit 00a78d6d0bc1d964cdd50959bcc37f340678dab4 Author: fujiwarat Date: 2022-07-20 14:30:20 +0900 po: Update translation (Japanese) Update po/uk.po at 98.0% https://translate.fedoraproject.org/projects/ibus/ibus/ja/ BUG=https://github.com/ibus/ibus/pull/2416 M po/ja.po commit 742091bc69df68ee4d0e1d9c8faa4539c9201ed8 Author: Yuri Chornoivan Date: 2022-07-04 12:18:53 +0200 po: Update translation (Ukrainian) Update po/uk.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/uk/ BUG=https://github.com/ibus/ibus/pull/2416 M po/uk.po commit ced5bfb08d84c686fbee9f488f7787a2dd3aa9a5 Author: Oğuz Ersen Date: 2022-07-04 12:18:52 +0200 po: Update translation (Turkish) Update po/tr.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/tr/ BUG=https://github.com/ibus/ibus/pull/2416 M po/tr.po commit d8107131b936f82b103a0aad14fad457d66d77bc Author: 김인수 Date: 2022-07-04 12:18:52 +0200 po: Update translation (Korean) Update po/ko.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/ko/ BUG=https://github.com/ibus/ibus/pull/2416 M po/ko.po commit 1f4fe9f8cf97f6e8357c59f083c55cbd8670c4bf Author: Mike FABIAN Date: 2022-07-04 12:18:52 +0200 po: Update translation (German) Update po/de.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/de/ BUG=https://github.com/ibus/ibus/pull/2416 M po/de.po commit e78c545e490ba2b5869e733ae1ffa35b2be2d80e Author: Piotr Drąg Date: 2022-07-04 12:18:52 +0200 po: Update translation (Polish) Update po/pl.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/pl/ BUG=https://github.com/ibus/ibus/pull/2416 M po/pl.po commit e88651efc0ebaa0cbddb568fa400906e43fbb486 Author: H A Date: 2022-07-04 12:18:50 +0200 po: Update translation (Estonian) Update po/et.po at 27.0% https://translate.fedoraproject.org/projects/ibus/ibus/et/ BUG=https://github.com/ibus/ibus/pull/2416 M po/et.po commit db2ef5d08ec61df156ca13beb63df7f7fed38829 Author: fujiwarat Date: 2022-07-20 14:06:21 +0900 tools: Revise ibus im-module help message M po/ibus10.pot M tools/ibusimmodule.c commit 82e38d9e1c06e7fdc0816fe08f4021b8c1cdff10 Author: fujiwarat Date: 2022-07-20 11:25:26 +0900 engine: Delete xkb:latam:*:* in denylist.txt BUG=https://github.com/ibus/ibus/issues/2412 M engine/Makefile.am M engine/denylist.txt commit fee26c6b45de307cfdcb1bf9cc75e3df45ee82b2 Author: fujiwarat Date: 2022-07-20 11:10:11 +0900 tools: Fix to add -ldl LDADD -ldl option is needed for dlclose() in Ubuntu. Also move the docs build order to the last. Also unset G_MESSAGES_DEBUG for gsettings in xkb-latin-layouts. gsettings cannot get the key value when G_MESSAGES_DEBUG is enabled. M Makefile.am M src/tests/xkb-latin-layouts M tools/Makefile.am commit 92771d0e2cc7e5c12dc4312eff2a106b860deb77 Author: fujiwarat Date: 2022-07-19 22:58:33 +0900 src/ibusengine: Add focus_in_id()/focus_out_id() class methods IBusEngine constructor now has a 'has-focus-id' property and if it's %TRUE, IBusEngine::focus_in_id()/focus_out_id() are called instaed of IBusEngine::focus_in()/focus_out() and the class method has an object_path argument for the unique input context ID and a client argument for the client application type likes ibus-gtk, ibus-gtk4, xim. M bus/engineproxy.c M bus/engineproxy.h M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M src/ibusengine.c M src/ibusengine.h M src/ibusmarshalers.list commit c957c5f6ba07074a8fb56c978c27873c1cfe0783 Author: fujiwarat Date: 2022-07-19 22:58:24 +0900 client/gtk2: Implement new process_key_event for GTK4 M client/gtk2/ibusimcontext.c M src/ibustypes.h commit 965567d7fd26b6c045cc59adcccbe978abe1dfc4 Author: fujiwarat Date: 2022-07-19 22:58:15 +0900 tools: Add ibus im-module command ibus im-module command can retrive gtk-im-module value from an instance of GtkIMMultiContext. The GTK version can be specified by --type option and the default is --type=gtk3 and GTK3 im-ibus.so is dlopened. M client/gtk2/ibusim.c M client/gtk4/ibusim.c M po/ibus10.pot A tools/IBusIMModule-1.0.metadata M tools/Makefile.am M tools/ibus.1.in A tools/ibusimmodule.c A tools/ibusimmodule.h M tools/main.vala commit ab0d176477b17b1981879005846aaedc588f79cc Author: fujiwarat Date: 2022-07-19 22:58:09 +0900 tools: Enable ibus restart in GNOME desktop If ibus-daemon is called via systemd, IBus restart API cannot restart ibus-daemon but just terminates it. Now ibus restart command checks the systemd avaiability and restart ibus-daemon via systemd. ibus start command is also added to launch ibus-daemon with systemd. BUG=https://github.com/ibus/ibus/issues/2407 M po/ibus10.pot M tools/Makefile.am M tools/ibus.1.in M tools/main.vala commit 79e446ec99691d62ec2110c728e69da4c889eee2 Author: fujiwarat Date: 2022-07-19 22:40:39 +0900 travis: Move git master to main branch M .travis.yml commit b94f0c1cea5d0e423fef3bcc13b23f212f04c930 Author: fujiwarat Date: 2022-07-07 08:13:57 +0900 src: Add IBUS_CAP_OSK to IBusCapabilite Some IMEs' behavior is different between the on-screen keyboard and the direct physical keyboard and this flag is useful for the IMEs. Also fix src/ibusaccelgroup.c for gtkdoc-mkhtml. If the API comment of IBusCapabilite is updated, XML & HTML files are rebuilt and gtk-doc-1.33.2 no longer accepts HTML tags in the comments. M src/ibusaccelgroup.c M src/ibustypes.h commit 9ad063746ec3d919217ae18acce2d4768bcfca05 Author: fujiwarat Date: 2022-06-20 21:01:31 +0900 ui/gtk3: Hide XKB engine but enable it in Plasma Wayland IBus just cannot defer key events to the secondary input methods to switch XKB keymaps in Plasma Wayland because IBus has to handle the compose keys before defer the key events. Also update the POT file. BUG=rhbz#2088656 M data/dconf/org.freedesktop.ibus.gschema.xml M po/ibus10.pot M ui/gtk3/panel.vala commit ff99828cb60915318ed0f40998a1a23d5dea42c7 Author: Hollow Man Date: 2022-01-26 11:19:40 +0800 Add tooltip text for use custom icon and theme BUG=https://github.com/ibus/ibus/pull/2327 Signed-off-by: Hollow Man M setup/setup.ui commit addab9fdc7f98c172b6fcb1e24faa133368bdaf3 Author: Hollow Man Date: 2022-01-26 10:03:04 +0800 Revert support for choosing GTK themes dark variant So that the theme list won't get too messy BUG=https://github.com/ibus/ibus/pull/2327 Signed-off-by: Hollow Man M setup/main.py M ui/gtk3/bindingcommon.vala commit 233a3f4d4d3dc6782e74db5bf4e7c28fae729bc9 Author: Hollow Man Date: 2022-01-26 09:35:11 +0800 Add functionality to change IBus panel themes with available GTK themes To allow IBus to have their own control of themes. https://gitlab.gnome.org/GNOME/gnome-tweaks/-/blob/b9badc47b92dd73f8cedbd2efc66cbaf3ea25773/gtweak/tweaks/tweak_group_appearance.py#L69 BUG=https://github.com/ibus/ibus/pull/2327 Signed-off-by: Hollow Man M data/dconf/org.freedesktop.ibus.gschema.xml M setup/main.py M setup/setup.ui M ui/gtk3/bindingcommon.vala M ui/gtk3/panel.vala M ui/gtk3/panelbinding.vala commit 9f62a40b0ddf4413c4e2d5f7346a6ef09bc2f44e Author: Naïm Favier Date: 2022-06-03 15:15:59 +0900 configure: Use our own prefix to look up systemd user services dir BUG=https://github.com/ibus/ibus/pull/2388 BUG=https://github.com/NixOS/nixpkgs/pull/164105#discussion_r826011775 M configure.ac commit 16df64edadc21f50906e5442b73425b9256fbf65 Author: fujiwarat Date: 2022-05-25 23:07:33 +0900 src/tests: Add xkb-latin-layouts case BUG=https://github.com/ibus/ibus/issues/2404 M .travis.yml M src/tests/Makefile.am M src/tests/runtest A src/tests/xkb-latin-layouts commit bca7bf0f97230806a26f53c798050408108cfb3d Author: Mike FABIAN Date: 2022-05-25 23:07:24 +0900 data/dconf: Update xkb-latin-layouts in gschema Add more keyboard layouts which cannot produce ASCII to data/dconf/org.freedesktop.ibus.gschema.xml Remove "mal" and "mkd", there are no such layouts. BUG=https://github.com/ibus/ibus/issues/2404 M data/dconf/org.freedesktop.ibus.gschema.xml commit 3e5fab4991f4e2e22b56cf57d4dfb779a1d1977c Author: fujiwarat Date: 2022-05-20 20:54:59 +0900 client/gtk2: Revert CCedilla change for pt-BR gtk_im_context_simple_add_table() is deprecated in GTK4. I decide to delete gtk_im_context_simple_add_table() here because the change 03c9e591430c62354bbf26ef7bd4a2e6acfb7c8f is no longer needed because IBusEngineSimple has implemented to load pt_br compose key by locale. Fixes: 03c9e591430c62354bbf26ef7bd4a2e6acfb7c8f BUG=chromium-os:11421 BUG=http://codereview.appspot.com/3989060 M client/gtk2/ibusimcontext.c commit 8711dc83225a7fade3ba67ab796ecb03b38406ff Author: fujiwarat Date: 2022-05-20 20:54:58 +0900 client/gtk2/ibusimcontext: keycode - 8 for gtk3 keycode generation Since IBus keycode subtracts 8 from Linux keycode, keycodes from gdk_keymap_get_entries_for_keyval() also have to be subtracted 8. The keycodes will add 8 when they bring back the GDK event loop. M client/gtk2/ibusimcontext.c commit 47303a6f85a7d2601929bd3c87196d27243d2dd7 Author: fujiwarat Date: 2022-05-20 20:54:54 +0900 src/tests: Run ibus-daemon from CI even if GNOME desktop gnome-shell no longer launch ibus-daemon because gnome-session launches ibus-daemon with IBus systemd file. This is a workaround to call ibus-daemon after GNOME fails to launch ibus-daemon since CI does not use graphical-session.target systemd service. BUG=https://gitlab.gnome.org/GNOME/gdm/-/issues/777 M src/tests/ibus-desktop-testing-runner.in commit f3d7aa960b29dda7a5ace7a22ae6de33e2acdcaa Author: fujiwarat Date: 2022-05-05 00:19:27 +0900 po: Update translation (Japanese) Update po/uk.po at 98.0% https://translate.fedoraproject.org/projects/ibus/ibus/ja/ BUG=https://github.com/ibus/ibus/pull/2399 M po/ja.po commit 2c262cbdd016faca84bf7df9b11d443cd07308b4 Author: Yuri Chornoivan Date: 2022-05-04 23:35:49 +0900 po: Update translation (Ukrainian) Update po/uk.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/uk/ BUG=https://github.com/ibus/ibus/pull/2399 M po/uk.po commit 8ec7eff589328ca31f6ac06dbd011f750c9aea4a Author: Nathan Date: 2022-05-04 23:33:39 +0900 po: Update translation (Italian) Update po/it.po at 32.3% https://translate.fedoraproject.org/projects/ibus/ibus/it/ BUG=https://github.com/ibus/ibus/pull/2399 M po/it.po commit 5f85888daa35bd4d96b48f7e497079fb5a86f483 Author: A S Alam Date: 2022-05-04 23:31:10 +0900 po: Update translation (Punjabi) Update po/pa.po at 38.0% https://translate.fedoraproject.org/projects/ibus/ibus/pa/ BUG=https://github.com/ibus/ibus/pull/2399 M po/pa.po commit f7c045ec56606b72158addac55e6526bfba1327f Author: 김인수 Date: 2022-05-04 23:09:15 +0900 po: Update translation (Korean) Update po/ko.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/ko/ BUG=https://github.com/ibus/ibus/pull/2399 M po/ko.po commit b4723eb1688f396f6309d034b7c5d2815ead4b94 Author: fujiwarat Date: 2022-05-04 20:58:21 +0900 travis: Add libnotify-dev M .travis.yml commit 9d0f3c53f5ef1d6e4a62e99309b3af547e668366 Author: fujiwarat Date: 2022-05-04 19:14:57 +0900 po: Update POT file with unicode-ucd 14.0.0 XKB engine notification for Plasma Wayland is also added. M po/ibus10.pot M ui/gtk3/panel.vala commit 230fb226de17ddd1292e749df5b7a66bf1f1c23f Author: fujiwarat Date: 2022-05-04 19:14:51 +0900 ui/gtk3: Disable XKB engines in Plasma Wayland Currently ibus-ui-gtk3 runs the setxkbmap command internally to set the XKB keymaps from XKB engines but setxkbmap does not work in Wayland session. The IBus XKB engines are disabled at the moment in Plamsa Wayland and ibus-ui-gtk3 asks users to use systemsettings5. Will use libinput and libxkbcommon later but it would be better to implement IBus in Plamsa Wayland compositor. BUG=https://github.com/ibus/ibus/issues/2408 M configure.ac M ui/gtk3/Makefile.am M ui/gtk3/panel.vala commit f1c456d26053c32634ecf436bd0082a2910d0b9e Author: Mitsuya Shibata Date: 2022-04-10 17:10:01 +0900 bus/services: Fix bashisms in org.freedesktop.IBus.session.GNOME.service The "[[ ... ]]" is bash's compound command not in POSIX sh. This style is problematic in Xorg session in environments where sh is not bash, suach as Debian and Ubuntu. BUG=https://github.com/ibus/ibus/issues/2397 M bus/services/org.freedesktop.IBus.session.GNOME.service.in commit 17648f0522910480b6c5dd4f5356ca1f6c160bf5 Author: Carlos Garnacho Date: 2022-03-29 22:48:19 +0200 src: Fix refcounting issues Commit 5a455b1ead attempted to fix both GLib warnings around floating references and other presumed refcounting issues. However it missed 2 kinds of bugs: - The places that take an IBusText created from a static string were made to avoid freeing it afterwards, but the staticness refers to the string content, not the object itself. - The places that are documented to emit signals on floating object references used to do the following after signal emission: if (g_object_is_floating (object)) g_object_unref (object) And did possibly trigger GLib warnings were changed to: if (g_object_is_floating (object)) g_object_sink_ref (object); g_object_unref (object); Which fixes the GLib warning for floating references, but do unintendedly steal one reference away for non floating references. This commit is essentially a revert of commit 5a455b1ead, but addressing both things differently: - All label/tooltip/symbol IBusText properties in IBusProperty do now always sink the reference of the stored object. - All places documented as maybe using objects with a floating reference on signals changed to doing: if (g_object_is_floating (object)) { g_object_ref_sink (object); g_object_unref (object); } So the floating reference is owned and unreferenced without warnings, but already owned references are left unchanged. This addresses the possible GLib warnings, fixes the possible double unrefs happening on IBusText used in signals, and fixes the missing unrefs on IBusText objects created from static strings. BUG=https://github.com/ibus/ibus/issues/2393 BUG=https://github.com/ibus/ibus/issues/2387 M src/ibusinputcontext.c M src/ibusproperty.c commit 6a70ab0338206bd1c7d01a4e1874ea0ee5b3a9d3 Author: fujiwarat Date: 2022-03-14 14:13:26 +0900 Release 1.5.26 M configure.ac commit 20c5dc9c5d649357bb556b85e79f493b476c6622 Author: Zayed Al-Saidi Date: 2022-03-14 10:33:59 +0900 po: Update translation (Arabic) Update po/ar.po at 35.4% https://translate.fedoraproject.org/projects/ibus/ibus/ar/ BUG=https://github.com/ibus/ibus/pull/2338 M po/ar.po commit 0e522c40750a2bb1d58354469734c7681dd89bc8 Author: Abdullah Albaroty Date: 2022-03-14 10:33:56 +0900 po: Update translation (Arabic) Update po/ar.po at 35.4% https://translate.fedoraproject.org/projects/ibus/ibus/ar/ BUG=https://github.com/ibus/ibus/pull/2338 M po/ar.po commit a1528a0a46d45827e110f1fa6361cab7f0152f79 Author: Jordi Mas Date: 2022-03-14 10:33:54 +0900 po: Update translation (Catalan) Update po/ca.po at 88.0% https://translate.fedoraproject.org/projects/ibus/ibus/ca/ BUG=https://github.com/ibus/ibus/pull/2338 M po/ca.po commit 58fe1e56b270e80c3950a880090893b56f5e02ab Author: Oğuz Ersen Date: 2022-03-14 10:33:51 +0900 po: Update translation (Turkish) Update po/tr.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/tr/ BUG=https://github.com/ibus/ibus/pull/2338 M po/tr.po commit 0199dde0d9ba472e4611226cb61f15cfa9b52db5 Author: Dingzhong Chen Date: 2022-03-14 10:33:49 +0900 po: Update translation (Chinese (Simplified) (zh_CN)) Update po/zh_CN.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/zh_CN/ BUG=https://github.com/ibus/ibus/pull/2338 M po/zh_CN.po commit 6df55eb2d9cac7a34ddd934bb45aebb72bcd0ca0 Author: simmon Date: 2022-03-14 10:33:46 +0900 po: Update translation (Korean) Update po/ko.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/ko/ BUG=https://github.com/ibus/ibus/pull/2338 M po/ko.po commit e77f80cf7c8a9f9b759abc0da013020719e038db Author: Jan Kuparinen Date: 2022-03-14 10:33:43 +0900 po: Update translation (Finnish) Update po/fi.po at 20.7% https://translate.fedoraproject.org/projects/ibus/ibus/fi/ BUG=https://github.com/ibus/ibus/pull/2338 M po/fi.po commit 9bf9ef0126a6dd5b1d0de9ac3320eb030472631f Author: fujiwarat Date: 2022-03-14 10:33:40 +0900 src: Update ibusunicodegen.h with unicode-ucd 14.0.0 M src/ibusunicodegen.h commit a3c07241f3225f9259c8aa576fa0a3fa4ab3ca82 Author: fujiwarat Date: 2022-03-14 10:33:34 +0900 engine: Update simple.xml with xkeyboard-config 2.35.1 M engine/simple.xml.in commit 1f27521425051b5af74d0a74e8689b114d9e5903 Author: fujiwarat Date: 2022-03-14 10:31:21 +0900 ui/gtk3: Check XDG_SESSION_DESKTOP for Plasma desktop If ibus-dameon is launched from systemd, XDG_CURRENT_DESKTOP environment variable could be set after ibus-dameon would be launched and XDG_CURRENT_DESKTOP could be "(null)". But XDG_SESSION_DESKTOP can be set with systemd's PAM. M ui/gtk3/panel.vala commit df664b1f18a9c630ccd884f8ff698abf6cbb1578 Author: fujiwarat Date: 2022-03-01 19:23:25 +0900 src/ibusenginesimple: Support GTK4 coompose file Load $XDG_CONFIG_HOME/gtk-4.0/Compose M src/ibusenginesimple.c commit 19377ad22d8145ea431e5de51f047061c98f8d21 Author: fujiwarat Date: 2022-03-01 18:26:21 +0900 src/ibuscompose: Check algorithm dead key by 9 length This change fixes the D-Bus timeout by a long compose preedit text. check_normalize_nfc() calculates the factorical of the compse preedit length and assigne the value to an INT variable and it could excceed the MAX_INT. Probably I think the length of the compose algorizhm dead key would be enough 9. I.e. 9! == 46320 <= SHRT_MAX == 32767 BUG=https://github.com/ibus/ibus/issues/2385 M src/ibuscomposetable.c commit a82bda58a45470c4be0f3db21eaddc73a230807f Author: fujiwarat Date: 2022-02-18 12:04:09 +0900 src/tests: Fix typos - test_metas_in location - Check ibus processes in CI - Fix libexec path M src/tests/Makefile.am M src/tests/ibus-desktop-testing-autostart M src/tests/ibus-desktop-testing.desktop.in commit 5cfe838715097d61b50da55f80bcff2c698ca885 Author: Changwoo Ryu Date: 2022-02-18 09:07:02 +0900 client/gtk2/ibusimcontext: Fix forward key keycode for GTK4 When a keycode is provided (!= 0) for a forwarded key event, convert it to a GTK keycode before passing it to gtk_im_context_filter_key(). Also free GdkKeymapKey after gdk_display_map_keyval() is called. BUG=https://github.com/ibus/ibus/issues/2380 BUG=https://github.com/ibus/ibus/issues/2382 M client/gtk2/ibusimcontext.c commit b5423f0cff78e627fec12378bfcc70efa79e9379 Author: fujiwarat Date: 2022-02-17 20:15:38 +0900 src/services: Add org.freedesktop.IBus.session.generic.service Move bus/*.service.in & src/*.service.in into bus/services BUG=https://github.com/ibus/ibus/pull/2381 M bus/Makefile.am A bus/services/Makefile.am R100 bus/org.freedesktop.IBus.service.in bus/services/org.freedesktop.IBus.service.in R095 src/org.freedesktop.IBus.session.GNOME.service.in bus/services/org.freedesktop.IBus.session.GNOME.service.in A bus/services/org.freedesktop.IBus.session.generic.service.in M configure.ac M src/Makefile.am commit a076b388d856aeb4c8f8317dd6cd9dd6d61fe9ac Author: Carlos Garnacho Date: 2020-11-04 10:48:45 +0100 src, client/x11: Add systemd unit file This so far depends on GNOME targets, and is thus just usable there. Other DEs wishing to use systemd and ibus will need to add the necessary dependencies where applicable. There are 2 scenarios here: - On X11 sessions, ibus-daemon will be launched with --xim parameter, so ibus-x11 is started with it. - On Wayland sessions, ibus-daemon will be started without XIM support, ibus-x11 will be launched and tear down together with all other session X11 services while Xwayland is running. For the second part of the second situation, additionally install a script at /etc/xdg/Xwayland-session.d, which takes care of X11 service initialization together with the Xwayland instance. BUG=https://github.com/ibus/ibus/pull/2377 A client/x11/10-ibus-x11.in M client/x11/Makefile.am M configure.ac M src/Makefile.am A src/org.freedesktop.IBus.session.GNOME.service.in commit c69b61aa66239e1b13c9764b2d3bf6f02d086785 Author: fujiwarat Date: 2022-02-04 15:08:36 +0900 src: Fix ibus_key_event_from_string for gobject-introspection BUG=https://github.com/ibus/ibus/issues/2330 M src/ibusshare.h commit dfd3fbf26fa4b5ff20512b166a8dd321afc10344 Author: fujiwarat Date: 2022-02-03 17:31:08 +0900 bus: Do not mkdir abstract unix socket IBus ran mkdir for unix abstract sockets for --address=unix:abstract but should not need to mkdir. BUG=https://github.com/ibus/ibus/issues/2363 M bus/server.c commit 787b564982d17017cb35ab87b71b6a16d7440387 Author: fujiwarat Date: 2022-02-03 14:34:34 +0900 bus: mkdir socket dirs instead of socket paths IBus ran mkdir for socket paths for --address=unix:path but should does the socket directories instead. BUG=https://github.com/ibus/ibus/issues/2363 M bus/server.c commit 0f1485bfa687386f26ef5909c123e0ae2e3e11b9 Author: fujiwarat Date: 2022-02-03 14:03:30 +0900 src: Add IBUS_INPUT_HINT_PRIVATE for browser private mode GTK4 added GTK_INPUT_HINT_PRIVATE recently for Web brower private or guest mode. BUG=https://github.com/ibus/ibus/issues/2315 M src/ibustypes.h commit ad95015dc411f84dd9b8869e596e4707cd2ccd2b Author: Sibo Dong <46512211+dongsibo@users.noreply.github.com> Date: 2022-02-02 19:18:02 +0900 ui/gtk3: Update man page for Emoji shortcut key The default Emoji shortcut key was changed but not updated in the ibus-emoji.7 man page. BUG=https://github.com/ibus/ibus/pull/2353 M ui/gtk3/ibus-emoji.7.in commit 5a455b1ead5d72483952356ddfe25b9e3b637e6f Author: Eberhard Beilharz Date: 2021-10-13 19:00:47 +0200 Fix unref problems with floating references When running with debug-enabled GLIB there are several critical errors output: "A floating object ... was finalized. This means that someone called g_object_unref() on an object that had only a floating reference; the initial floating reference is not owned by anyone and must be removed with g_object_ref_sink()." This change fixes this by calling `g_object_ref_sink()` before `g_object_unref()` if we have a floating reference. It also fixes another related problem where we called `g_object_unref()` on a static IBusText string (created with `ibus_text_new_from_static_string()`) for which the API documentation says not to free. BUG=https://github.com/ibus/ibus/pull/2359 M src/ibusinputcontext.c M src/ibusproperty.c commit d9ff2bb6b04a7cf7d99f4e9832b4b8905858178c Author: fujiwarat Date: 2022-01-20 16:41:37 +0900 data/dconf: Add Ctrl-semicolon to Emoji shortcut key period key is needed Shift key in French keyboard and Ctrl-period does not work. Add Ctrl-semicolon in org.freedesktop.ibus.panel.emoji.hotkey to fix the problem. BUG=https://github.com/ibus/ibus/issues/2360 M data/dconf/org.freedesktop.ibus.gschema.xml commit 0e118e7e57caaa298e367ed99f2051ba47a35f81 Author: fujiwarat Date: 2022-01-20 16:33:11 +0900 data/dconf: Change XKB layout string color in panel Replace '#415099' with '#51a2da' in XKB layout string color BUG=https://github.com/ibus/ibus/issues/2364 M data/dconf/org.freedesktop.ibus.gschema.xml commit f5757ada54edaa7d2e3ea948d340cdf48064e30c Author: fujiwarat Date: 2022-01-06 11:20:26 +0900 ibusenginesimple: Fix to send char position at update_preedit_text ibus_engine_update_preedit_text() should send the character position instead of the byte position. BUG=https://github.com/ibus/ibus/issues/2368 M src/ibusenginesimple.c commit 675b94f63a2bce5554c9bb28a03462ed70933bec Author: fujiwarat Date: 2021-12-03 00:07:49 +0900 travis: Add autopint dependency M .travis.yml commit 104148bcdada1f8f22ef905c930f9944f3e99a63 Author: fujiwarat Date: 2021-12-02 23:53:28 +0900 src: Disable emoji shortcut key with no-emoji hint BUG=https://gitlab.gnome.org/GNOME/gtk/-/issues/4337 M src/ibusengine.c commit 2bc47f09832073c87ccdf1060bd93ff95878685a Author: fujiwarat Date: 2021-12-02 23:52:36 +0900 autogen: Delete gnome-autogen dependency You may like to call ./autogen.sh --enable-gtk-doc with your custom configure options. Also set SAVE_DIST_FILE=1 by default M .travis.yml M autogen.sh M src/Makefile.am commit be179342cc6273abb8710546a18e80afd69f3e86 Author: fujiwarat Date: 2021-12-02 23:39:57 +0900 travis: Fix bindings/pygobject/test-override-ibus.py Recently Travis default python was changed to version 2 in Ubuntu focal and I have to specify python3 in configure. M .travis.yml commit cfcc6f194cfc95ab0cf1b3b719d77321c249a83b Author: Naïm Favier Date: 2021-11-16 00:33:37 +0100 src/ibuscomposetable: invalidate cache based on symlink mtime too When the compose file is a symbolic link, take the link itself's modification time into account (in addition to its target's) in determining whether to invalidate the compose cache. This is useful e.g. on NixOS systems where the compose file might point to a store path with an irrelevant modification time, and we want the cache to expire when the symlink itself changes. BUG=https://github.com/ibus/ibus/pull/2362 M src/ibuscomposetable.c commit d53d31d2dbab00e13e23862cf2bf88da532b9465 Author: fujiwarat Date: 2021-11-17 22:54:00 +0900 travis: git config pull.rebase false `git pull` fails with local commits M .travis.yml commit 28acfd433b3df1673b7c7177915c027ce48c061e Author: fujiwarat Date: 2021-11-05 07:22:34 +0900 ui/gtk2: Deprecate gettext.bind_textdomain_codeset() since Python 3.8 setup/i18n.py is a symlink of ui/gtk2/i18n.py env PYTHONWARNINGS='d' ibus-setup BUG=https://github.com/ibus/ibus/issues/2276 M ui/gtk2/i18n.py commit acc5570511698c7b5cc037eb81be2c4be52a824f Author: fujiwarat Date: 2021-10-29 12:56:49 +0900 ui/gtk3: Erase Emojier preedit/lookup popup between applications It would be better to erase Emojier popup window when users change the input focus between applications. But it hasn't been implemented because the focus-out/in events also happen when the Emojier popup window is launching or rebuilding to the category list in GNOME Wayland. The focus-out/in events do not happen in Xorg desktops with the rebuilding GUI because GTK popup window causes focus-in/out evnets in Wayland. Now I'm convinced with several issues and added a little complicated logic to erase Emojier popup window with the focus changes between input contexts to handle focus-in/out events in Wayland. BUG=rhbz#1942970 M ui/gtk3/emojier.vala M ui/gtk3/emojierapp.vala M ui/gtk3/panelbinding.vala commit 51e3295659dd9178b98fb266da5abcb750805be8 Author: fujiwarat Date: 2021-09-10 00:39:25 +0900 src/tests: Add --screendump option in ibus-desktop-testing-runner The screendump is useful in CI to if check gnome-shell-extension-no-overview works. Also add ibus-desktop-testing-autostart to get the debug info in CI. You can copy ibus-desktop-testing.desktop to $HOME/.config/autostart if CI fails. M src/tests/Makefile.am A src/tests/ibus-desktop-testing-autostart M src/tests/ibus-desktop-testing-runner.in A src/tests/ibus-desktop-testing.desktop.in commit 6b979e7897c8c4316d0345c1ede5bcbcb5b64cd8 Author: fujiwarat Date: 2021-09-10 00:39:17 +0900 client/gtk2/ibusimcontext: Fix a key event loop with forwarding keys _ibus_context_forward_key_event_cb() caused a key event loop in _key_snooper_cb() with key release events. M client/gtk2/ibusimcontext.c commit fbea5441fc53ae1d5533bed1ee53009141cf905a Author: fujiwarat Date: 2021-09-10 00:09:26 +0900 Fix build errors in Ubuntu focal - Ubuntu focal uses glib 2.64.6 which does not include errno.h so config.h includes errno.h as the workaround. - make autogen.sh not to delete dist files in Travis - Call $(PYTHON) for gensimple.py for Ubuntu python3 - Add a code review in src/ibuscomposetable.c BUG=https://github.com/ibus/ibus/pull/2348 M .travis.yml M autogen.sh M configure.ac M engine/Makefile.am M src/ibuscomposetable.c M src/ibusregistry.c M src/ibusshare.c commit 4957d1468db4fc5ed30c3ae1f2afac9e51b329d6 Author: fujiwarat Date: 2021-09-06 20:25:52 +0900 client/gtk2/ibusimcontext: Calculate keycode from keysym in GTK3 forward-key-event IBus GTK3 mode also calculates keycode from keysym if keycode == 0 with forward-key-event signal to follow GTK4. M client/gtk2/ibusimcontext.c commit 5487a6baa4b22605ba8197ca1a0fa43c91d57786 Author: fujiwarat Date: 2021-09-06 20:23:59 +0900 client/gtk2/ibusimcontext: Implement clear preedit for GTK4 IBus IM module uses synchornized key processes for GTK4 and the timing of the GTK reset siginal may work with focus-in/out between windows. (I don't test GTK4 firefox and terminal yet and the verification is not completed.) So ibus_im_context_clear_preedit_text() is now called with the GTK4 reset siginal. ibus_im_context_clear_preedit_text() works with ibus-setup-anthy -> "Conversion" tab -> "Behavior on Focus Out" pull down menu. BUG=https://github.com/ibus/ibus/issues/2334 M client/gtk2/ibusimcontext.c commit ecca9db0d9750e8a4803758302510999084ff1b2 Author: Eberhard Beilharz Date: 2021-08-31 15:38:45 +0200 Update URLS IBus got moved to GitHub. This changes the remaining URLs that still pointed to the old site. Also fixed a typo. BUG=https://github.com/ibus/ibus/pull/2342 M bindings/vala/test/enchant.vala M setup/ibus-setup.1.in M src/tests/ibus-inputcontext.c M ui/gtk2/gtkpanel.xml.in M ui/gtk2/panel.py commit 936a0e76df79d92a8bdc03e9205330fb84a2083e Author: Alynx Zhou Date: 2021-09-01 12:04:12 +0900 client/gtk2/ibusimcontext: Fix wrong cursor location in gtk3 apps If you apply this patch in your tarball, please also apply this to client/gtk3/ibusimcontext.c besides client/gtk2/ibusimcontext.c . BUG=https://github.com/ibus/ibus/issues/2337 M client/gtk2/ibusimcontext.c commit cfb263f04f82a83dd94f6eedcd5017d40a4a1a05 Author: fujiwarat Date: 2021-08-20 09:44:49 +0900 Release 1.5.25 M configure.ac commit 5bd2ecc54d35be7724720eaa100349b58f8af109 Author: fujiwarat Date: 2021-08-20 09:42:15 +0900 src/ibuscomposetable: Do not output incompleted compose dead keys Incompleted dead keys are used in fi_FI compose. M src/ibuscomposetable.c M src/ibusenginesimple.c commit 238eb612b5e8faa96841006d863044fffac03eab Author: fujiwarat Date: 2021-08-20 09:42:12 +0900 engine: Update simple.xml with xkeyboard-config 2.33 M engine/simple.xml.in commit 934c456e612711940b29429bf6a52ff6cb4be0ab Author: fujiwarat Date: 2021-08-20 09:36:43 +0900 autogen: Check xkeyboard-config-devel for XKBCONFIG_BASE variable M autogen.sh commit bc265fb6c3792573db142c72cfcb36227c384d82 Author: user202729 <25191436+user202729@users.noreply.github.com> Date: 2021-08-18 16:24:34 +0900 src: Fix a typo in ibusenginesimple.h BUG=https://github.com/ibus/ibus/pull/2332 M src/ibusenginesimple.h commit e465011b48cbaca4f18a65cf7b23a1035cf6b105 Author: Gunnar Hjalmarsson Date: 2021-08-18 06:03:19 +0200 setup: Start ibus-daemon with the --daemonize option When starting ibus-daemon from IBus Preferences, it's started with the command "ibus-daemon --xim". However, ibus-daemon is killed once you close IBus Preferences. This commit adds the "--daemonize" option, so ibus-daemon keeps running also after IBus Preferences has been closed. BUG=https://github.com/ibus/ibus/issues/2316 M setup/main.py commit 32d54e0f07c945b906fa52d309879cfd60d8688d Author: JungHee Lee <36289819+MarongHappy@users.noreply.github.com> Date: 2021-08-18 16:00:51 +0900 po: Update translation (Korean) Update po/ko.po at 100.0% 기존 번역 입력 방식, 입력 방법, 입력기로 번역된 것을 입력기로 통일하였습니다. 새로 추가된 내용을 번역하였습니다. 기타 등등... BUG=https://github.com/ibus/ibus/pull/2318 M po/ko.po commit 904f162ee3170125b637fad76cfdde6542a37965 Author: Seong-ho Cho Date: 2021-08-18 13:10:29 +0900 po: Update translation (Korean) Update po/ko.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/ko/ BUG=https://github.com/ibus/ibus/pull/2305 M po/ko.po commit b85c399cc16d1d50b7077f9caf9906ee7e761e93 Author: simmon Date: 2021-08-18 13:08:00 +0900 po: Update translation (Japanese) (Korean) Update po/ja.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/ja/ Update po/ko.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/ko/ BUG=https://github.com/ibus/ibus/pull/2305 M po/ja.po M po/ko.po commit a7ebfc94627821ab6f1fd5943ac88971b01a81b3 Author: Alexey Rubtsov Date: 2021-08-18 13:06:58 +0900 po: Update translation (Russian) Update po/ru.po at 98.4% https://translate.fedoraproject.org/projects/ibus/ibus/ru/ BUG=https://github.com/ibus/ibus/pull/2305 M po/ru.po commit 883f517273fb5324002178540b58928023c84335 Author: Liu Tao Date: 2021-08-18 13:04:47 +0900 po: Update translation (Chinese (Simplified) (zh_CN)) Update po/zh_CN.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/zh_CN/ BUG=https://github.com/ibus/ibus/pull/2305 M po/zh_CN.po commit 6e1588d041326df1d38f87df583b5a0d4579553b Author: Quentin PAGÈS Date: 2021-08-18 13:04:05 +0900 po: Update translation (Occitan) Update po/oc.po at 52.6% https://translate.fedoraproject.org/projects/ibus/ibus/oc/ BUG=https://github.com/ibus/ibus/pull/2305 M po/LINGUAS A po/oc.po commit 3ceecf38cf6e2e6b0cd2972c58b0140708031f84 Author: Jan Kuparinen Date: 2021-08-18 13:02:47 +0900 po: Update translation (Finnish) Update po/fi.po at 20.3% https://translate.fedoraproject.org/projects/ibus/ibus/fi/ BUG=https://github.com/ibus/ibus/pull/2305 M po/fi.po commit 1239c930090ebbe8e4622ea4f3df5143b9a623ce Author: Abu Huraira Date: 2021-08-18 13:02:17 +0900 po: Update translation (Bengali) Update po/bn.po at 71.0% https://translate.fedoraproject.org/projects/ibus/ibus/bn/ BUG=https://github.com/ibus/ibus/pull/2305 M po/bn.po commit c0170aeac378dc966406c9a8a0e294c09b34049a Author: Emilio Herrera Date: 2021-08-18 13:01:21 +0900 po: Update translation (Spanish) Update po/es.po at 97.4% https://translate.fedoraproject.org/projects/ibus/ibus/es/ BUG=https://github.com/ibus/ibus/pull/2305 M po/es.po commit 71ca4a985966aa5a9dfbfb5c671fee841f8ee730 Author: Olivier Fourdan Date: 2021-08-18 11:54:31 +0900 client/x11: Add support for XFixes ClientDisconnectMode The Xserver itself is capable of terminating itself once all X11 clients are gone, yet in a typical full session, there are a number of X11 clients such as ibus-x11 running continuously. Those always-running clients will prevent the Xserver from terminating, because the actual number of X11 clients will never drop to 0. Use XFixes ClientDisconnectMode to inform the X11 server that it can terminate even if ibus-x11 is still running. That will allow Xwayland from terminating automatically when regular clients have quit. On plain Xorg servers, the lifetime of the session is usually tied to the session manager or window manager, and this change will have no effect. BUG=https://github.com/ibus/ibus/pull/2314 M client/x11/Makefile.am M client/x11/main.c M configure.ac commit a823161768c8f6916dbdebe73842a9fc04521369 Author: fujiwarat Date: 2021-08-09 12:36:40 +0900 client/gtk2/ibusimcontext: Enable sync process in GTK4 gtk_im_context_filter_key() does not forward control keys likes BackSpace, Return and change the process mode to the synchronization. BUG=https://gitlab.gnome.org/GNOME/gtk/-/issues/3465 M client/gtk2/ibusimcontext.c commit 17ae266cade41e795534532acefc85716bb309ef Author: fujiwarat Date: 2021-07-26 22:53:34 +0900 Code reviews - Use fstat() and fchmod() but not stat() and chmod() to fix race conditions - Avoid to use after free - Fix dereference of IBusComposeTable->priv - Fix to divide by zero M src/ibusbus.c M src/ibuscomposetable.c M src/tests/ibus-desktop-testing-runner.in commit 4259f16324d578aa2505cf50f2f23923d8d87e76 Author: fujiwarat Date: 2021-07-26 22:53:19 +0900 src/ibusenginesimple: Make Compose preedit less intrusive Tweak the preedit display for Compose sequences to be not so distracting. We only show the Compose key when it occurs in the middle of the sequence or is the only key so far. BUG=https://gitlab.gnome.org/GNOME/gtk/-/issues/3669 BUG=https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3220 BUG=https://blog.gtk.org/2021/03/24/input-revisited/ M src/ibuscomposetable.c M src/ibusenginesimple.c M src/ibusenginesimpleprivate.h commit df495660a6da492fe0cac8f7fe748f25a1c3217c Author: fujiwarat Date: 2021-07-26 22:52:23 +0900 src/ibusenginesimple: Change gint to int M src/ibuscomposetable.c M src/ibusenginesimple.c M src/ibusenginesimpleprivate.h commit 3e2609e68c9107ce7c65e2d5876bfdc9f0f8c854 Author: fujiwarat Date: 2021-07-26 22:52:21 +0900 src: Update ibuskeysyms.h for latest dead keys M src/ibuskeysyms.h commit 2fc1a028aa697f1320d85a76548cde12894bf9ab Author: fujiwarat Date: 2021-07-26 22:52:18 +0900 src/ibusenginesimple: Multi_key to 0xB7 Use · instead of ⎄ to display Multi_key in pre-edit. BUG=https://gitlab.gnome.org/GNOME/gtk/-/issues/3669 BUG=https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3220 M src/ibuscomposetable.c M src/ibusenginesimple.c commit 7e12d589ee4979fdd0f0b08f1bac9049741ec628 Author: fujiwarat Date: 2021-07-26 22:52:12 +0900 src/ibuscomposetable: Move ibus_compose_table_check - Move ibus_compose_table_check and ibus_compose_table_compact_check from ibusenginesimple.c to ibuscomposetable.c - Fix src/tests/ibus-compose.c to read compose sequences correctly. M src/ibuscomposetable.c M src/ibusenginesimple.c M src/ibusenginesimpleprivate.h M src/tests/Makefile.am M src/tests/ibus-compose.c commit a4939f67f9de8275219e2cfcd3873e0fbe59058f Author: fujiwarat Date: 2021-07-16 13:08:02 +0900 setup: Enhance engine search function ibus-setup can search both the language names and input method names in the top language list but when you search a language keyword in the language list and move to the input method list after click the hit language name, any input methods could not be shown because the language didn't hit in any input method names. In this enhancement, ibus-setup can show the input methods to hit the language names. M setup/enginedialog.py commit b952d30a1b7c741052c168fe1081ecb4d4b1c034 Author: fujiwarat Date: 2021-07-14 22:31:47 +0900 Change default Emoji shortcut key The shortcut key was Ctrl-Shit-e to follow Unicode code point shortcut key but now the shorcut key is changed to Ctrl-period to follow GTK. BUG=https://github.com/ibus/ibus/issues/2325 M data/dconf/org.freedesktop.ibus.gschema.xml commit ab6b9587a497e9662a2936df3dabed4582eeabdb Author: fujiwarat Date: 2021-06-29 12:40:20 +0900 src/tests: Delete G_MESSAGES_DEBUG in desktop-testing for gsettings G_MESSAGES_DEBUG message could be appended to the output of gsettings command and it's not useful to check the output. M src/tests/ibus-desktop-testing-runner.in commit 7f09379b3cb69c7de6d8d667ce398dcfc0000433 Author: lf- Date: 2021-06-24 16:10:12 +0900 src/ibuscomposetable: Fix a buffer overflow in compose handling I believe this has no security impact but it is making my Valgrind sad. Thanks to Omni for the help in finding the root cause of this. ~/.XCompose is: ``` : "η" : "ϑ" : "ɣ" ``` BUG=https://github.com/ibus/ibus/pull/2297 M src/ibuscomposetable.c commit a755d1601a730b5fa0d463e7820311c12b1f1661 Author: fujiwarat Date: 2021-06-18 15:39:50 +0900 src/ibuscomposetable: Do not include the same compose file BUG=https://github.com/ibus/ibus/pull/2296 M src/ibuscomposetable.c commit 9f9c88be46436b0a7aa8e09e044a2223356b46dc Author: lf- Date: 2021-06-18 15:39:19 +0900 src/ibuscomposetable: Add support for the include directive We also fix an issue with excess space at the start of lines stopping comments being recognized. BUG=https://github.com/ibus/ibus/pull/2296 M src/ibuscomposetable.c commit bc7811c6247b7bb8eba2f9f80c4f9f1510cd6b65 Author: fujiwarat Date: 2021-06-16 20:39:35 +0900 src/tests: Fix ibus-desktop-testing-runner to get gsettings result gsettings null string is '' and the quote mark needs to be parsed. Also no-overview gsetting should be changed before run gnome-session. M src/tests/ibus-desktop-testing-runner.in commit e9e1642870994abfdbd06b0138524ac231c159b8 Author: fujiwarat Date: 2021-06-16 18:00:31 +0900 Fix code reviews M bus/ibusimpl.c M bus/server.c M client/gtk2/ibusimcontext.c M client/wayland/main.c M client/x11/main.c M conf/dconf/main.c M portal/portal.c M setup/ibus-setup.in M src/emoji-parser.c M src/ibusaccelgroup.c M src/ibusbus.c M src/ibuscomposetable.c M src/ibusemoji.c M src/ibusenginesimple.c M src/ibushotkey.c M src/ibusregistry.c M src/ibusshare.c M src/ibustext.c M src/ibusunicode.c M src/tests/ibus-compose.c M src/tests/ibus-keypress.c M src/unicode-parser.c M util/IMdkit/FrameMgr.c M util/IMdkit/i18nIc.c M util/IMdkit/i18nMethod.c M util/IMdkit/i18nOffsetCache.c M util/IMdkit/i18nPtHdr.c M util/IMdkit/i18nUtil.c M util/IMdkit/i18nX.c commit d105a3941aad53b0c7470a1e9c1033987b029fb8 Author: fujiwarat Date: 2021-05-12 18:54:30 +0900 client/gtk2: Implement ibus_im_context_set_surrounding_with_selection() Selection bounds need to be re-calculated when pre-edit text is inserted and the selection position is changed. GTK4 has a new API GtkIMContext.set_surrounding_with_selection() to fix this issue and now IBus GTK module inherits the API. BUG=https://github.com/ibus/ibus/issues/2013 M client/gtk2/ibusimcontext.c commit 214b60a3af67b6e8dafdb8edba666a369f18be12 Author: fujiwarat Date: 2021-03-26 22:48:08 +0900 src/tests: Run gnome-session with no-overview mode gnome-shell 40 now shows the overview mode by login and gnome-desktop-testing-runner cannot get the input focus. Running gnome-session with no-overview shell extension can get the input focus or mutter is another option. The default may be changed to twm if mutter also will be changed not to accept the application focus in the future. Disable Tour dialog which prevent test application from getting the input focus. Don't output FAIL if the actual failure is 0 for Fedora CI. BUG=https://discourse.gnome.org/t/focus-on-autostart-application-by-login/5863 M src/tests/ibus-desktop-testing-runner.in commit 4d51b73b69de9003c0b7e8a2558d8666503b6f16 Author: fujiwarat Date: 2021-02-21 23:59:05 +0900 Release 1.5.24 M configure.ac commit 5012b69c7c0ee39c6be4d230a5f1e8a9fc22a17f Author: fujiwarat Date: 2021-02-21 23:27:26 +0900 engine: Update simple.xml M engine/simple.xml.in commit 72ca5c932e511f10dabe171572fb97eaec001e4b Author: Gunnar Hjalmarsson Date: 2021-02-21 22:03:42 +0900 setup: Hide IBus Preferences from AppStream BUG=https://github.com/ibus/ibus/issues/2286 M setup/ibus-setup.desktop commit 27baf2047ff5728cc7ae6806380541d038fcc99d Author: Takao Fujiwara Date: 2021-02-21 00:35:29 +0900 po: Update translation (Japanese) Update po/ja.po at 98.0% https://translate.fedoraproject.org/projects/ibus/ibus/ja/ BUG=https://github.com/ibus/ibus/pull/2266 M po/ja.po commit 583420539f9ff1a3419b906ca4fd9e26d2f1f3ec Author: Julien Humbert Date: 2021-02-21 00:35:23 +0900 po: Update translation (French) Update po/fr.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/fr/ BUG=https://github.com/ibus/ibus/pull/2266 M po/fr.po commit ef497424f5ca32b4b8749245a77d01c3bb6317de Author: Ricky Tigg Date: 2021-02-21 00:35:10 +0900 po: Update translation (Finnish) Update po/fi.po at 19.2% https://translate.fedoraproject.org/projects/ibus/ibus/fi/ BUG=https://github.com/ibus/ibus/pull/2266 M po/fi.po commit 1470078b9129753fb9f31e390336a423a489e4e8 Author: Jan Kuparinen Date: 2021-02-21 00:35:10 +0900 po: Update translation (Finnish) Update po/fi.po at 18.9% https://translate.fedoraproject.org/projects/ibus/ibus/fi/ BUG=https://github.com/ibus/ibus/pull/2266 M po/fi.po commit ceea02ef354a3583bf55701c2e6db718a5a90ab6 Author: Dingzhong Chen Date: 2021-02-21 00:35:06 +0900 po: Update translation (Chinese (Simplified) (zh_CN)) Update po/zh_CN.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/zh_CN/ BUG=https://github.com/ibus/ibus/pull/2266 M po/zh_CN.po commit 37ec7304a007231cdd3aa5ed9227e3faf861acde Author: Mike FABIAN Date: 2021-02-21 00:35:01 +0900 po: Update translation (German) Update po/de.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/de/ BUG=https://github.com/ibus/ibus/pull/2266 M po/de.po commit e9cd26d9a7ffc6900cd6062db2277f7bdb850d94 Author: Sebastian Rasmussen Date: 2021-02-21 00:34:58 +0900 po: Update translation (Swedish) Update po/sv.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/sv/ BUG=https://github.com/ibus/ibus/pull/2266 M po/sv.po commit 3af102b3871250ae855310f2337fc692905e8256 Author: Yuri Chornoivan Date: 2021-02-21 00:34:50 +0900 po: Update translation (Ukrainian) Update po/uk.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/uk/ BUG=https://github.com/ibus/ibus/pull/2266 M po/uk.po commit ceea329ab60a49905fac8b086f05d4033c114658 Author: Oğuz Ersen Date: 2021-02-21 00:34:39 +0900 po: Update translation (Turkish) Update po/tr.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/tr/ BUG=https://github.com/ibus/ibus/pull/2266 M po/tr.po commit fece06e271c8a734ebb261f6ddfa197646144c04 Author: Piotr Drąg Date: 2021-02-21 00:34:32 +0900 po: Update translation (Polish) Update po/pl.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/pl/ BUG=https://github.com/ibus/ibus/pull/2266 M po/pl.po commit 54652f5d8dc73ad27b5bf0a9a94731f6bcb61669 Author: Henrique Roberto Gattermann Mittelstaedt Date: 2021-02-21 00:34:10 +0900 po: Update translation (Portuguese (Brazil)) Update po/pt_BR.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/pt_BR/ BUG=https://github.com/ibus/ibus/pull/2266 M po/pt_BR.po commit 54224eee95f6cd7e4dc9ad86a3bc34b1f667a073 Author: Emilio Herrera Date: 2021-02-21 00:34:00 +0900 po: Update translation (Spanish) Update po/es.po at 96.5% https://translate.fedoraproject.org/projects/ibus/ibus/es/ BUG=https://github.com/ibus/ibus/pull/2266 M po/es.po commit c62043f4db825cfda57d2cb54e8d8a74d922cba3 Author: Adolfo Jayme Barrientos Date: 2021-02-21 00:33:56 +0900 po: Update translation (Spanish) Update po/es.po at 96.5% https://translate.fedoraproject.org/projects/ibus/ibus/es/ BUG=https://github.com/ibus/ibus/pull/2266 M po/es.po commit abca46492977e842e49434cb5b784bd829f3a527 Author: Tawsif Hossain Shafi Date: 2021-02-21 00:33:44 +0900 po: Update translation (Bengali) Update po/bn.po at 69.8% https://translate.fedoraproject.org/projects/ibus/ibus/bn/ BUG=https://github.com/ibus/ibus/pull/2266 M po/bn.po commit 2d4925645f6f08deef89cf7b8e2d2a9da80939b3 Author: scootergrisen Date: 2021-02-21 00:33:27 +0900 po: Update translation (Danish) Update po/da.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/da/ BUG=https://github.com/ibus/ibus/pull/2266 M po/da.po commit ef4c5c7ef790ce1f80e94a5463e110ed4bae254e Author: fujiwarat Date: 2021-01-20 17:26:47 +0900 setup: Search engine name directly Currently users can search language names only in the language list in ibus-setup. After a language is selected and open, engine names can be searched. Now engine names also can be searched in the language list. M setup/enginedialog.py commit d0a47c3c82b1a0c263ff8b95f9cf5c0a5d1f228d Author: fujiwarat Date: 2021-01-08 18:48:13 +0900 client/gtk2: Add XTranslateCoordinates for GTK4 X11 coordinate GdkWindow had the absolute coordiante in the private class in GTK3 but the absolute coordiane no longer exists in GTK4 for Wayland. Now get the toplevel window coordiante for the warkaround in GTK4 but the coordiante of the inner widgets is no longer available too. BUG=https://gitlab.gnome.org/GNOME/gtk/-/issues/3024#note_987835 M client/gtk2/ibusimcontext.c commit c7928b158741282e17a042f767bc5ae32c302c96 Author: fujiwarat Date: 2021-01-08 18:45:55 +0900 Add GTK4 IM module BUG=https://github.com/ibus/ibus/issues/2291 M client/Makefile.am M client/gtk2/ibusimcontext.c A client/gtk4/Makefile.am A client/gtk4/ibusim.c A client/gtk4/ibusimcontext.c A client/gtk4/ibusimcontext.h M configure.ac commit 30a3641e19c541924959a5770dd784b4424288d4 Author: fujiwarat Date: 2021-01-01 07:02:43 +0900 travis: Add CI A .travis.yml commit 29959e1d2521781c544879b284e03812a2a11b2e Author: fujiwarat Date: 2020-12-31 20:00:02 +0900 engine: Fix input in gensimple.py Replace datarootdir with XKBCONFIG_BASE. M configure.ac M engine/Makefile.am commit 5d68b00e0464d43ba2f77697f9dcfbff78d7b438 Author: fujiwarat Date: 2020-12-31 17:28:45 +0900 engine: Fix iso-path in gensimple.py Replace datarootdir with ISOCODES_PREFIX. M engine/Makefile.am commit aec2ac75ea673d3701904735378765476cad0f21 Author: Gunnar Hjalmarsson Date: 2020-12-11 16:27:36 +0900 ui/gtk3: Warning dialog for any deprecated IBus XKB engine This is a follow-up of commit 5322c447. That commit introduced a warning dialog in case of an empty engines list. This commit makes a differently worded warning dialog be shown in cases where the engines list is not empty but preload-engines includes at least one deprecated engine. It also fixes a variable confusion so a deprecated engine is mentioned in the first kind of warning dialog and not the US engine. BUG=https://github.com/ibus/ibus/issues/2274 M po/ibus10.pot M ui/gtk3/panel.vala commit 5322c447c74a10ee54b482d6eff6da6d16a7c9ce Author: fujiwarat Date: 2020-11-21 07:41:23 +0900 ui/gtk3: Warn deprecated IBus XKB engines /w dialog simple.xml is updated by IBus release and some XKB engines could be deprecated with xkeyboard-config updates. Now a warning dialog is launched when the deprecated engines are changed to xkb:us::eng engine. BUG=https://github.com/ibus/ibus/issues/2274 M po/ibus10.pot M ui/gtk3/panel.vala commit b72efea42d5f72e08e2774ae03027c246d41cab7 Author: fujiwarat Date: 2020-11-20 10:56:11 +0900 src: Update IBusInputPurpose and IBusInputHints in ibustypes.h Copy IBUS_INPUT_PURPOSE_TERMINAL, IBUS_INPUT_PURPOSE_PIN, IBUS_INPUT_PURPOSE_TERMINAL from GTK 3.24.14 M src/ibustypes.h commit aa558de80c224921753990806cf553428fbe7057 Author: fujiwarat Date: 2020-11-20 09:03:32 +0900 src: Fix to build emoji-*.dict in CLDR 38 root.xml and sr_Cyrl.xml have included no contents since cldr-emoji-annotation-38 and make install failed because of no emoji-root.dict and emoji-sr.Cyrl.dict. Now the build creates the no content files but remove those files in the install hook. BUG=rhbz#1898065 M src/Makefile.am M src/emoji-parser.c commit 02338ce751a1ed5b9b892fba530ec2fe211d314e Author: fujiwarat Date: 2020-11-20 08:58:52 +0900 docs: Fix make dist M docs/reference/ibus/Makefile.am commit dd4cc5b028c35f9bb8fa9d3bdc8f26bcdfc43d40 Author: fujiwarat Date: 2020-09-30 20:35:23 +0900 ui/gtk3: Fix arguments in GLib.DBusSignalCallback for Vala 0.50 BUG=https://github.com/ibus/ibus/issues/2265 M ui/gtk3/application.vala M ui/gtk3/extension.vala commit 447908702fda9f98bd696d680957f508395aac69 Author: fujiwarat Date: 2020-09-29 19:52:04 +0900 Release 1.5.23 M autogen.sh M configure.ac commit 9d386d939ae1b636c3e02b8cd6d3f187d7afa367 Author: scootergrisen Date: 2020-09-29 17:40:47 +0900 po: Update translation (Danish) Update po/da.po at 99.6% https://translate.fedoraproject.org/projects/ibus/ibus/da/ BUG=https://github.com/ibus/ibus/pull/2264 M po/da.po commit e4dd6d148c5bea7564b9dd052bde290d5434abcb Author: fujiwarat Date: 2020-09-25 21:45:27 +0900 engine: Delete xkb:in:tel-kagapa:tel in simple.xml.in tel-kagapa variant is duplicated in base.xml BUG=https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/-/issues/222 M engine/simple.xml.in commit 9a9f82841d8454065b8ac3203c83e6416f2c5b4f Author: fujiwarat Date: 2020-09-25 18:51:52 +0900 src: Update emoji-parser with CLDR emoji annotation release-31-0-1 cldr-emoji-annotation has no longer provided U+FE0F presentation since release-31-0-1 and emoji-parser needs to follow it. BUG=https://github.com/ibus/ibus/issues/2263 M src/emoji-parser.c commit aa3a9f0524ac0e4210c4e2eeb78196775dff8920 Author: fujiwarat Date: 2020-09-19 17:36:32 +0900 ui/gtk3: Delete deprecated ENABLE_APPINDICATOR_ENGINE_ICON check Now plasma-workspace 5.2 and qtbase 5.4 are deprecated and delete the version check. BUG=https://github.com/ibus/ibus/pull/2194 M configure.ac M ui/gtk3/Makefile.am M ui/gtk3/panel.vala commit cbc956bb4ccfc8fa6f0c11aca6b5080939683a0c Author: scootergrisen Date: 2020-09-18 17:12:45 +0900 po: Update translation (Danish) Update po/da.po at 98.5% https://translate.fedoraproject.org/projects/ibus/ibus/da/ BUG=https://github.com/ibus/ibus/pull/2259 M po/da.po commit 920fa490b349fa26d525fd1263a11b18e7daa5d7 Author: Changwoo Ryu Date: 2020-09-18 17:11:23 +0900 po: Update translation (Korean) BUG=https://github.com/ibus/ibus/pull/2198 M po/ko.po commit 38a729589f1ca636d12a39422cffbcc1386636de Author: scootergrisen Date: 2020-09-14 19:19:05 +0900 po: Update translation (Danish) Update po/da.po at 98.0% https://translate.fedoraproject.org/projects/ibus/ibus/da/ BUG=https://github.com/ibus/ibus/pull/2253 M po/da.po commit cd063958873b151e5f125da67eca20ed2d4abf02 Author: Göran Uddeborg Date: 2020-09-14 19:16:15 +0900 po: Update translation (Swedish) Update po/sv.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/sv/ BUG=https://github.com/ibus/ibus/pull/2253 M po/sv.po commit 8a40f5c9f195f3cb4a37c2c92e1f2c6481d461c2 Author: Oğuz Ersen Date: 2020-09-14 19:13:03 +0900 po: Update translation (Turkish) Update po/tr.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/tr/ BUG=https://github.com/ibus/ibus/pull/2253 M po/tr.po commit 9f455b48e30004dd194342bffeca424505c4c53c Author: Yaron Shahrabani Date: 2020-09-14 19:09:44 +0900 po: Update translation (Hebrew) Update po/he.po at 31.2% https://translate.fedoraproject.org/projects/ibus/ibus/he/ BUG=https://github.com/ibus/ibus/pull/2253 M po/he.po commit e491e20ff90d0ada8502fc486f88b994d914b28a Author: Emilio Herrera Date: 2020-09-14 19:06:49 +0900 po: Update translation (Spanish) Update po/es.po at 96.3% https://translate.fedoraproject.org/projects/ibus/ibus/es/ BUG=https://github.com/ibus/ibus/pull/2253 M po/es.po commit 6662b8e0b11d104e4ca1b384df0a1141a417a4dd Author: Mike FABIAN Date: 2020-09-14 19:03:18 +0900 po: Update translation (German) Update po/de.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/de/ BUG=https://github.com/ibus/ibus/pull/2253 M po/de.po commit 7e469b59fdfd5cab3462b91b43d5efde636fa796 Author: Piotr Drąg Date: 2020-09-14 18:59:57 +0900 po: Update translation (Polish) Update po/pl.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/pl/ BUG=https://github.com/ibus/ibus/pull/2253 M po/pl.po commit 700ef87ec3042a64fb726e1c32dcbc190d99945d Author: Yuri Chornoivan Date: 2020-09-14 18:55:36 +0900 po: Update translation (Ukrainian) Update po/uk.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/uk/ BUG=https://github.com/ibus/ibus/pull/2253 M po/uk.po commit ea27a8be47cec9adbd62fea3b8bc8810e9ff1c8d Author: Whired Planck Date: 2020-09-14 18:45:53 +0900 po: Update translation (Chinese (Simplified)) Update po/zh_CN.po at 47.7% https://translate.fedoraproject.org/projects/ibus/ibus/zh_CN/ BUG=https://github.com/ibus/ibus/pull/2253 M po/zh_CN.po commit 3b64d4ada8112bea7fcce40cac7b5d8bb215b89b Author: Tian Shixiong Date: 2020-09-14 18:45:44 +0900 po: Update translation (Chinese (Simplified)) Update po/zh_CN.po at 47.7% https://translate.fedoraproject.org/projects/ibus/ibus/zh_CN/ BUG=https://github.com/ibus/ibus/pull/2253 M po/zh_CN.po commit ce865f6735559eea76cd016dbed649f70e9e7be9 Author: fujiwarat Date: 2020-09-14 18:34:04 +0900 Update POT file Delete unused msgid M po/ibus10.pot commit 0d90da4c968b8f5603c0880e130058dd00af5aa7 Author: fujiwarat Date: 2020-09-09 18:49:20 +0900 engine: Update simple.xml.in with latest gensimple.py BUG=rhbz#1876877 M engine/simple.xml.in commit 3aa670e9f8319fe064ce7c45ce56304ca5af94dc Author: fujiwarat Date: 2020-09-09 18:42:10 +0900 engine: Fix to pull the correct language with no iso639 variants Some variants have iso639 but others do not in evdev.xml and gensimple.py have to fallback to the layout iso639. BUG=rhbz#1876877 M engine/gensimple.py commit a440942a62c46578377a8679c48146f597e338a4 Author: fujiwarat Date: 2020-09-09 18:36:18 +0900 ui/gtk3: Accept xdigits only for Unicode typing Ctrl-Shift-u behavior now follows GTK's one. BUG=https://github.com/ibus/ibus/issues/2249 M ui/gtk3/panelbinding.vala commit f8c468ab2726305a3a568d346e6f8b10d81ef3c5 Author: fujiwarat Date: 2020-09-04 11:47:04 +0900 Update translations Update po/bg.po po/ca.po po/cs.po po/da.po po/de.po po/es.po po/fr.po po/gu.po po/he.po po/hu.po po/ia.po po/id.po po/it.po po/ja.po po/kn.po po/ko.po po/ml.po po/mr.po po/nl.po po/pa.po po/pl.po po/pt.po po/pt_BR.po po/ru.po po/sv.po po/ta.po po/te.po po/tr.po po/uk.po po/vi.po po/zh_CN.po po/zh_HK.po po/zh_TW.po M po/bg.po M po/ca.po M po/cs.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/he.po M po/hu.po M po/ia.po M po/id.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/nl.po M po/pa.po M po/pl.po M po/pt.po M po/pt_BR.po M po/ru.po M po/sv.po M po/ta.po M po/te.po M po/tr.po M po/uk.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit 7caead10d3698ef1ecaa97e6e122e27a720d612e Author: fujiwarat Date: 2020-09-03 21:21:31 +0900 Fix string formats in translatable strings M autogen.sh M data/dconf/org.freedesktop.ibus.gschema.xml M po/ibus10.pot M setup/enginetreeview.py M setup/main.py M tools/main.vala commit 00adea6d16939e2da35ede7f2ecf3fe0a2156fa6 Author: ntfs.hard Date: 2020-09-03 14:59:35 +0900 Fix for several error spotted by static analyzer - ibuscomposetable.c, ibusxml.c: Check size before memory access - inputcontext.c: Use logical operator for bool type variables - config.c: Extra break removed BUG=https://github.com/ibus/ibus/pull/2242 M bus/inputcontext.c M conf/gconf/config.c M src/ibuscomposetable.c M src/ibusxml.c commit e938846b1624a9455128edb64f144b0a1181736c Author: fujiwarat Date: 2020-08-27 22:40:23 +0900 engine: Genarate simple.xml at build time The engine path of ibus-engine-simple should be decided in build time and simple.xml is renamed to simple.xml.in Also Revert 6879879002af47d49d8740ca383a048d2ac8e904 BUG=https://github.com/ibus/ibus/issues/2153 M engine/Makefile.am M src/tests/runtest commit ed7bc8dcded59fb391687e3e9b0676c77accf736 Author: fujiwarat Date: 2020-08-27 22:36:29 +0900 engine: Move simple.xml to simple.xml.in BUG=https://github.com/ibus/ibus/issues/2153 D engine/simple.xml M engine/simple.xml.in commit 394d9a83962225bff4c39ed3e9ddd5c3019a3936 Author: fujiwarat Date: 2020-08-27 11:52:16 +0900 data/dconf: Fix regression in make-dconf-override-db.sh M data/dconf/make-dconf-override-db.sh commit e5b014bb85c6dc2ad8ffa73af19a22aee2196849 Author: fujiwarat Date: 2020-08-27 11:18:50 +0900 po: Update translation (Japanese) Update po/ja.po at 95% https://translate.fedoraproject.org/projects/ibus/ibus/ja/ BUG=https://github.com/ibus/ibus/pull/2201 M po/ja.po commit e10fc89c5afa1941801429b3a653b3f83b5d3802 Author: fujiwarat Date: 2020-08-27 10:31:10 +0900 src: Update ibusunicodegen.h with unicode-ucd 13.0.0 M po/ibus10.pot M src/ibusunicodegen.h commit 5d67a28bd134bd97b6942bf5199da810b184f63d Author: fujiwarat Date: 2020-08-27 10:31:02 +0900 engine: Update simple.xml with xkeyboard-config 2.30 M engine/simple.xml commit 5959d6f1d40c06f57bd895cd84d2b84deb6b6d8d Author: fujiwarat Date: 2020-08-27 10:30:43 +0900 data/dconf: Fix rm $TMPDIR in make-dconf-override-db.sh dbus-launch and gsettings run /usr/lib*/gvfsd-fuse $TMPDIR/cache/gvfs -f via systemd since gvfs 1.45.90 in Fedora 33 M data/dconf/make-dconf-override-db.sh commit 3d636acbbe3a66b83d48b7cf917660522e745307 Author: Balázs Meskó Date: 2020-08-27 09:47:38 +0900 po: Update translation (Hungarian) Update po/hu.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/hu/ BUG=https://github.com/ibus/ibus/pull/2201 M po/hu.po commit 2858c2b6ed0657cfd360a99b29bc44337200f37c Author: scootergrisen Date: 2020-08-27 09:45:33 +0900 po: Update translation (Danish) Update po/da.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/da/ BUG=https://github.com/ibus/ibus/pull/2201 M po/da.po commit 3b089a477268caa65e1c0ceb1741260b39049ef6 Author: Jean-Baptiste Holcroft Date: 2020-08-27 09:42:31 +0900 po: Update translation (French) Update po/fr.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/fr/ BUG=https://github.com/ibus/ibus/pull/2201 M po/fr.po commit 55795f466a441e975b4cb0d1160bad7638e7ca00 Author: Shehroz Kaleem Date: 2020-08-27 09:37:23 +0900 po: Update translation (Urdu) Update po/ur.po at 0.5% https://translate.fedoraproject.org/projects/ibus/ibus/ur/ BUG=https://github.com/ibus/ibus/pull/2201 M po/ur.po commit 61feeedf217bedf0fd9c25138398d6dd89738c87 Author: Yaron Shahrabani Date: 2020-08-27 09:24:02 +0900 po: Update translation (Hebrew) Update po/he.po at 28.4% https://translate.fedoraproject.org/projects/ibus/ibus/he/ BUG=https://github.com/ibus/ibus/pull/2201 M po/he.po commit c1a8204e9d6e3d18fd749dd572b46fd768fe46a2 Author: Boyuan Yang <073plan@gmail.com> Date: 2020-08-27 08:56:04 +0900 po: Update translation (Chinese (Simplified)) Update po/zh_CN.po at 47.6% https://translate.fedoraproject.org/projects/ibus/ibus/zh_CN/ BUG=https://github.com/ibus/ibus/pull/2201 M po/zh_CN.po commit 5671a28d379c29b66702a42518528534c6e3d85f Author: Tian Shixiong Date: 2020-08-27 08:48:30 +0900 po: Update translation (Chinese (Simplified)) Update po/zh_CN.po at 47.2% https://translate.fedoraproject.org/projects/ibus/ibus/zh_CN/ BUG=https://github.com/ibus/ibus/pull/2201 M po/zh_CN.po commit 80f50a73b347146b381fe2145fd1d1a9c74ca848 Author: Yi-Jyun Pan Date: 2020-08-26 23:58:44 +0900 po: Update translation (Chinese (Traditional)) Update po/zh_TW.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/zh_TW/ BUG=https://github.com/ibus/ibus/pull/2201 M po/zh_TW.po commit 79f055780b43cb629f5fb98f618f774df4ab9484 Author: Allan Nordhøy Date: 2020-08-26 23:53:27 +0900 po: Update translation (Swedish) Update po/sv.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/sv/ BUG=https://github.com/ibus/ibus/pull/2201 M po/sv.po commit 372bc3b55b761948964716eb2e17a868989bf9b2 Author: Allan Nordhøy Date: 2020-08-26 23:53:20 +0900 po: Update translation (Norwegian Bokmål) Update po/nb.po at 14.1% https://translate.fedoraproject.org/projects/ibus/ibus/nb_NO/ BUG=https://github.com/ibus/ibus/pull/2201 M po/nb.po commit 39f67610be762cbb3c2dfd55849a4295b16727d2 Author: Ankit Behera Date: 2020-08-26 23:53:08 +0900 po: Update translation (Odia) Update po/or.po at 98.0% https://translate.fedoraproject.org/projects/ibus/ibus/or/ BUG=https://github.com/ibus/ibus/pull/2201 M po/or.po commit c17b51b201142c1b922b538461f5fe62e110b878 Author: Oğuz Ersen Date: 2020-08-26 23:20:19 +0900 po: Update translation (Turkish) Update po/tr.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/tr/ BUG=https://github.com/ibus/ibus/pull/2201 M po/tr.po commit e933cc95b5766953c6328c090baae3e1d2e7ff53 Author: Jiri Grönroos Date: 2020-08-26 23:14:52 +0900 po: Update translation (Finnish) Update po/fi.po at 52.2% https://translate.fedoraproject.org/projects/ibus/ibus/fi/ BUG=https://github.com/ibus/ibus/pull/2201 M po/fi.po commit 6ed34f3bbe978ab174b58cfdfe36a83870ed136a Author: fujiwarat Date: 2020-08-21 22:12:42 +0900 engine: Update simple.xml with layout_variant BUG=https://github.com/ibus/ibus/issues/2153 M engine/simple.xml commit 568d58dfadefa801b96058c1155daecff3d51605 Author: fujiwarat Date: 2020-08-21 22:07:31 +0900 engine: Add layout_variant in gensimple.py Missed to handle layout_variant and also add latam layouts to denylist BUG=https://github.com/ibus/ibus/issues/2153 M engine/denylist.txt M engine/gensimple.py commit 59b902a809ed628bb4d5bbad2b8bcb79a8a23208 Author: fujiwarat Date: 2020-08-21 09:46:46 +0900 src: Add file list in registry file Under Fedora Silverblue, st_mtime in /usr/share/ibus/component is 1 Jan 1970 even if ibus engines are installed and ibus-daemon cannot detect new engines. Now IBusObservedPath saves hashed file list besides st_mtime of the compnent directory to detect the installed engines newly. BUG=https://github.com/ibus/ibus/issues/2132 M src/ibuscomponent.c M src/ibusobservedpath.c M src/ibusregistry.c commit 6879879002af47d49d8740ca383a048d2ac8e904 Author: fujiwarat Date: 2020-08-21 09:15:14 +0900 src/tests: Fix runtest with simple.xml Now simple.xml.in is replaced with simple.xml and modify runtest to copy simple.xml. BUG=https://github.com/ibus/ibus/issues/2153 M src/tests/runtest commit 37db75bf59c31252db4c0657f31520f2a7e34a77 Author: fujiwarat Date: 2020-08-21 09:14:01 +0900 engine: Add simple.xml BUG=https://github.com/ibus/ibus/issues/2153 A engine/simple.xml commit 508527daaf90901b6a7fa062372516640f88aa75 Author: fujiwarat Date: 2020-08-21 09:07:39 +0900 engine: Generate simple.xml with denylist simple.xml was generated by allowlist (whitelist) and it will be done by denylist (blacklist). BUG=https://github.com/ibus/ibus/issues/2153 M engine/Makefile.am A engine/denylist.txt M engine/gensimple.py commit 60429741526dd63299a95c9c512cb615d3bc1e90 Author: fujiwarat Date: 2020-08-21 08:17:59 +0900 engine: Delete gensimple.py and update autogen.sh Will replace gensimple.py with the new one later. Also update autogen.sh to delete distro genaration files. M autogen.sh M conf/memconf/Makefile.am M engine/gensimple.py commit 79a09f1e75357a9f1b38e80717a59c19cca1645e Author: fujiwarat Date: 2020-08-18 13:45:38 +0900 setup: Add use-glyph-from-engine-lang The setting can revert the previous setting to choose glpyhs with the current locale on lookup window instead of the engine's language. BUG=https://github.com/ibus/ibus/issues/2238 M data/dconf/org.freedesktop.ibus.gschema.xml M setup/main.py M setup/setup.ui M ui/gtk3/panel.vala commit 3f098dc51a718f3bd427873607dcd47865523dce Author: Aaron Muir Hamilton Date: 2020-08-18 13:45:32 +0900 ui/gtk3: Tell Pango about the engine language in the candidate panel This helps Pango select the correct font variants for the engine language, which is especially important between languages based on han characters which have wildly different forms of the same character. BUG=https://github.com/ibus/ibus/issues/2238 M ui/gtk3/candidatearea.vala M ui/gtk3/candidatepanel.vala M ui/gtk3/panel.vala commit 0ad5e9a6b6611b53c63e635e89b42e30e43ac701 Author: fujiwarat Date: 2020-08-05 19:50:02 +0900 setup: Delete autostart setting BUG=https://github.com/ibus/ibus/pull/2224 M setup/main.py M setup/setup.ui commit 0da3cece88c8b94c0721aa7aca4f2d427aa22069 Author: Neil Shepperd Date: 2020-07-22 15:31:29 +0900 src: Skip parsing of compose sequence with invalid keysyms Instead of continuing with the keysym defaulted to , print a warning and skip the broken XCompose rule entirely. Fixes a bug where an ~/.XCompose file with a error breaks the delete key. Tested locally with the example from launchpad bug below: <\> <)> : "☭" # HAMMER AND SICKLE This is incorrect syntax as neither <\> nor <)> are correct keysym names. Before this patch, ibus-daemon -v prints a warning, but pressing delete twice produces ☭ instead of its normal function. After this patch, ibus-daemon -v prints a slightly better warning, and the delete key is unaffected. BUG=https://github.com/ibus/ibus/issues/2130 BUG=https://bugs.launchpad.net/ubuntu/+source/ibus/+bug/1849399 M src/ibuscomposetable.c commit f591381e3c892947ecaffe9131b9039ab9014498 Author: fujiwarat Date: 2020-05-14 16:02:00 +0900 bus: Fix SEGV in bus_dbus_impl_name_owner_changed() rhbz#1406699 SEGV in new_owner!=NULL in bus_dbus_impl_name_owner_changed() which is called by bus_name_service_remove_owner() If bus_connection_get_unique_name()==NULL, set new_owner="" in bus_name_service_remove_owner() rhbz#1432252 SEGV in old_owner!=NULL in bus_dbus_impl_name_owner_changed() which is called by bus_name_service_set_primary_owner() If bus_connection_get_unique_name()==NULL, set old_owner="" in bus_name_service_set_primary_owner() BUG=rhbz#1406699 BUG=rhbz#1432252 M bus/dbusimpl.c commit 02105c4d486283e6b561181d9c934d4d23f2d65e Author: fujiwarat Date: 2020-05-14 15:48:34 +0900 bus: Fix SEGV in bus_panel_proxy_focus_in() SEGV in BUS_IS_PANEL_PROXY() in bus_panel_proxy_focus_in() Check if GDBusConnect is closed before bus_panel_proxy_new() is called. BUG=rhbz#1349148 BUG=rhbz#1385349 M bus/ibusimpl.c commit 59d0de47a62395553734070b7d5f26349499bb38 Author: Changwoo Ryu Date: 2020-04-23 09:46:06 +0900 src: Build the Emoji dictionaries in parallel Instead of building Emoji dictionaries src/dicts/emoji-*.dict in sequence, a pattern rule is specified for them. The make -jN option builds the dictionaries in parallel. The GNU make extensions like pattern rule and patsubst function are used for it. But src/Makefile.am has had other GNU make extensions for a while, so using more extensions should not make portability worse. BUG=https://github.com/ibus/ibus/pull/2209 M src/Makefile.am commit 0b9d9365988a96a2bc31c48624f9c2b8081601b6 Author: fujiwarat Date: 2020-04-22 20:17:12 +0900 client/gtk2: Fix typo M client/gtk2/ibusim.c M src/tests/ibus-desktop-testing-runner.in commit 8da016764cee9616cca4658d1fb311d6b3bfc0df Author: fujiwarat Date: 2020-04-15 17:55:03 +0900 src/tests: Fix to get focus events with su in ibus-desktop-testing-runner GtkWindow haven't received focus events in any test cases since Fedora 31 whenever Ansible runs ibus-desktop-testing-runner after `su root`. Seems su command does not run systemd automatically and now systemd requires XDG_RUNTIME_DIR and Ansible requires root access with ssh. This fix requires to restart sshd with modified /etc/ssh/sshd_config with "PermitRootLogin yes" in order to run with su command. Ansible with ibus-desktop-testin-runner has worked fine if root console login is used without this patch because PAM runs systemd by login. M src/tests/ibus-desktop-testing-runner.in commit 5765bfd69fb2ab1174378fbb0d8cac7f2bd2610f Author: Changwoo Ryu Date: 2020-04-15 17:43:14 +0900 client/gtk2: Remove glib_check_version() in gtk immodule In the gtk2/gtk3 immodule, glib_check_version() is being used to make sure that the installed glib version is not older than the glib version which ibus is built with. But there is no reason why glib version is checked in runtime. Library compatibility is already being checked more precisely by packaging systems and linkers. This version check can break the ibus gtk immodule when used with an older but compatible version of glib, such as glib 2.62.x which is compatible with 2.64.x. BUG=https://github.com/ibus/ibus/issues/2200 M client/gtk2/ibusim.c commit 8ce25208c3f4adfd290a032c6aa739d2b7580eb1 Author: Carlos Garnacho Date: 2020-03-12 16:02:16 +0900 src: Use WAYLAND_DISPLAY on Wayland sessions to make up IBus socket name In Wayland sessions, GNOME Shell 3.36 is leveraging 2 X11 Display connections so one is used to set up all services for a "X11 session" before user applications connected to the other display might require it. This allows seamlessly starting Xwayland on demand to X11 user applications. IBus here belongs to the first described connection, it is started explicitly on that display by GNOME Shell as it is necessary to set up ibus-x11 before any other X11 client might want to use it. However the use of this "secondary" display results in IBus daemon left unable to talk to applications, as the socket name is dependent on the DISPLAY envvar and ibus/applications don't agree on its content. For wayland sessions, make it look for WAYLAND_DISPLAY, as that'll have the similar "per session bus" behavior that this seems to look after. BUG=https://gitlab.gnome.org/GNOME/gnome-shell/issues/2341 M src/ibusshare.c commit 7b0d091839a4f1315ba216175fb2787e86f7fa31 Author: fujiwarat Date: 2020-03-03 17:08:30 +0900 src/tests: Delete graves in substitution in ibus-desktop-testing-runner Delete the single quotations to enclose grave chracters because DASH saves the single quoted '`id -u`' as the raw string in the command substitution not to be extracted. BUG=https://github.com/ibus/ibus/issues/2189 M src/tests/ibus-desktop-testing-runner.in commit e3262f08b9e3efc57808700823b0622ec03a1b5f Author: fujiwarat Date: 2020-02-21 21:43:01 +0900 Release 1.5.22 M configure.ac commit 21f7b230896b5e8bc7e4a41bf9cc76fc68d723cb Author: Luigi Toscano Date: 2020-02-21 17:12:44 +0900 po: Update translation (Italian) Update po/it.po at 32.0% Translate-URL: https://translate.fedoraproject.org/projects/ibus/ibus/it/ BUG=https://github.com/ibus/ibus/pull/2174 M po/it.po commit 9e238a87d7adcf3d63b4a10d3ee6977f5ed4540b Author: Mike FABIAN Date: 2020-02-21 17:12:42 +0900 po: Update translation (German) Update po/de.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/de/ BUG=https://github.com/ibus/ibus/pull/2174 M po/de.po commit 16562d4c2ba5cba1488f793900e5809732d2c974 Author: Julien Humbert Date: 2020-02-21 17:12:40 +0900 po: Update translation (French) Update po/fr.po at 100.0% https://translate.fedoraproject.org/projects/ibus/ibus/fr/ BUG=https://github.com/ibus/ibus/pull/2174 M po/fr.po commit 5f4f1a8aa3694a129d18ca0dd22bbad016452385 Author: Antoni Bella Pérez Date: 2020-02-21 17:12:34 +0900 po: Update translation (Catalan) Update po/ca.po at 92.0% https://translate.stg.fedoraproject.org/projects/ibus/ibus/ca/ BUG=https://github.com/ibus/ibus/pull/2174 M po/ca.po commit 40f4a717d2299f4390343da054e4aec7b05e308e Author: Yuri Chornoivan Date: 2020-02-21 16:10:01 +0900 po: Update translation (Ukrainian) Update po/uk.po at 100.0% https://translate.stg.fedoraproject.org/projects/ibus/ibus/uk/ BUG=https://github.com/ibus/ibus/pull/2174 M po/uk.po commit ac3f5b7c4be1d292568952fbba53c552a8e1d315 Author: Ahmad Haghighi Date: 2020-02-21 16:01:46 +0900 po: Update translation (Persian) Update po/fa.po at 25.2% https://translate.stg.fedoraproject.org/projects/ibus/ibus/fa/ BUG=https://github.com/ibus/ibus/pull/2174 M po/fa.po commit a1705ad7e5f90cf8d87caf32d7b7acc7125e6778 Author: fujiwarat Date: 2020-02-13 16:49:12 +0900 bus: Fix recursive mkdir is failed in /var/lib/gdm/.cache/ibus If the parent directory (/var/lib/gdm/.cache) is not created, mkdir childdir (/var/lib/gdm/.cache/ibus) is failed by the parentdir with mode_t = 0. BUG=https://github.com/ibus/ibus/issues/2177 M bus/server.c commit cd4fef5a3290869fc1c36392f5d404fa09932926 Author: fujiwarat Date: 2020-01-31 15:35:02 +0900 src: Fix SEGV to access NULL GError when compose length is zero BUG=rhbz#1788754 M src/ibuscomposetable.c commit 74863851e83972e86a5bdb3da3d99784fc8d4955 Author: fujiwarat Date: 2020-01-28 18:46:13 +0900 src/tests: Increase sleep to 3 waiting for IBusConfig Sleep 1 would be too short for ibus-daemon which could run all components. ibus-config test requires the running IBusConfig and the test could fail in some slow systems. Sleep time will be increased to 3 to run all components. BUG=https://github.com/ibus/ibus/issues/2170 M src/tests/ibus-config.c M src/tests/ibus-desktop-testing-runner.in M src/tests/runtest commit afc0a89c74950351c32df3d60abb343a0dbc06cc Author: Alex Henrie Date: 2020-01-24 15:37:01 +0900 Handle small final sigma in ibus_keyval_convert_case lowercase: GREEK SMALL LETTER FINAL SIGMA (U+03C2) uppercase: GREEK CAPITAL LETTER SIGMA (U+03A3) This mapping was correct in UCSConvertCase, but the "legacy" mapping must also be correct for Caps Lock to work with the final sigma key. https://gitlab.freedesktop.org/xorg/lib/libx11/commit/7f46a38139 BUG=https://github.com/ibus/ibus/pull/2176 M src/ibuskeynames.c commit ecc3465a585448486b2ce68bcefc11d6aebae755 Author: fujiwarat Date: 2020-01-23 16:13:05 +0900 client/gtk2: Fix some format sentences M client/gtk2/ibusimcontext.c commit 687d026cc73b9991f6918604afc032c4c31ecb85 Author: fujiwarat Date: 2020-01-08 12:45:12 +0900 po: Add ibus10.pot A po/ibus10.pot commit 9a9e5db8d10fdb30e133c71358360c7bf5479df6 Author: Yuri Chornoivan Date: 2020-01-06 20:26:44 +0900 Translated using Weblate (Ukrainian) Currently translated at 100.0% (544 of 544 strings) Translation: ibus/ibus Translate-URL: https://translate.stg.fedoraproject.org/projects/ibus/ibus/uk/ M po/uk.po commit 6f7aceb4542dfb245548ca547df96d72feee4c92 Author: Balázs Meskó Date: 2020-01-06 20:26:05 +0900 Translated using Weblate (Hungarian) Currently translated at 100.0% (544 of 544 strings) Translation: ibus/ibus Translate-URL: https://translate.stg.fedoraproject.org/projects/ibus/ibus/hu/ M po/hu.po commit 4a3aa879959af968c7ae585e7fe4e56df489f36e Author: Yaron Shahrabani Date: 2020-01-06 20:25:19 +0900 Translated using Weblate (Hebrew) Currently translated at 100.0% (151 of 151 strings) Translation: ibus/ibus Translate-URL: https://translate.stg.fedoraproject.org/projects/ibus/ibus/he/ M po/he.po commit 22b4a08e2eb40960c533774b89d5d9f7eac71187 Author: Rafael Fontenelle Date: 2020-01-06 20:08:22 +0900 Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (544 of 544 strings) Translation: ibus/ibus Translate-URL: https://translate.stg.fedoraproject.org/projects/ibus/ibus/pt_BR/ M po/pt_BR.po commit d31e55e46c1b3bbaa5326109a174a9d592ce0933 Author: Piotr Drąg Date: 2020-01-06 20:07:28 +0900 Translated using Weblate (Polish) Currently translated at 100.0% (544 of 544 strings) Translation: ibus/ibus Translate-URL: https://translate.stg.fedoraproject.org/projects/ibus/ibus/pl/ M po/pl.po commit 7be961789113eb739916a65e5f6855cd7cdae4a9 Author: Jean-Baptiste Holcroft Date: 2020-01-06 20:06:05 +0900 Translated using Weblate (French) Currently translated at 100.0% (544 of 544 strings) Translation: ibus/ibus Translate-URL: https://translate.stg.fedoraproject.org/projects/ibus/ibus/fr/ M po/fr.po commit 2e41b2a626fa14a82a7dce4d7a928b8b30b56cd0 Author: Julien Humbert Date: 2020-01-06 19:41:23 +0900 Translated using Weblate (French) Currently translated at 100.0% (544 of 544 strings) Translation: ibus/ibus Translate-URL: https://translate.stg.fedoraproject.org/projects/ibus/ibus/fr/ M po/fr.po commit fc2328e7e39c8fc55a7950522aeb2798cf2750cc Author: Mike FABIAN Date: 2020-01-06 19:39:34 +0900 Translated using Weblate (German) Currently translated at 100.0% (514 of 514 strings) Translation: ibus/ibus Translate-URL: https://translate.stg.fedoraproject.org/projects/ibus/ibus/de/ M po/de.po commit 6f0fec0ff266d1cf7975f3691f2e1a23d4edad4a Author: Oğuz Ersen Date: 2020-01-06 19:39:30 +0900 Translated using Weblate (Turkish) Currently translated at 100.0% (544 of 544 strings) Translation: ibus/ibus Translate-URL: https://translate.stg.fedoraproject.org/projects/ibus/ibus/tr/ M po/tr.po commit c662a02bf3b50914c697af12fc152ee97e2df961 Author: fujiwarat Date: 2019-12-25 17:30:56 +0900 client/gtk2: Fix to connect button-press-event signal IBus clients do not connect button-press-event in some conditions and it will be fixed. BUG=https://github.com/ibus/ibus/issues/1980 M client/gtk2/ibusimcontext.c commit 25d11f5cfd4c39e53be11a1348da29a61593cc4c Author: fujiwarat Date: 2019-12-11 16:28:22 +0900 client/gtk2: Fix to set use_button_press_event after signals are connected _ibus_context_update_preedit_text_cb() can be called with reset signals before ibus_im_context_set_client_window() is called. Then use_button_press_event needs to be set only when the signals are connected. BUG=https://github.com/ibus/ibus/issues/1980 M client/gtk2/ibusimcontext.c commit 66141bbc5e68c5f221737282fc4f3d5e48ba6c69 Author: Changwoo Ryu Date: 2019-12-10 13:19:21 +0900 setup: Add NotShowIn and Keywords keys to the desktop entry BUG=https://github.com/ibus/ibus/pull/2162 M setup/ibus-setup.desktop commit d50627f0b7a000ee13ea6dcc02a4162be1fa853d Author: fujiwarat Date: 2019-12-03 21:42:49 +0900 src/tests: RHEL codereview #2 for ibus-desktop-testing-runner M src/tests/ibus-compose-locales.in M src/tests/ibus-desktop-testing-runner.in commit bccf94d5ec1c5fc80d5aeac622f2ab8007d5a28a Author: fujiwarat Date: 2019-11-29 20:28:49 +0900 src/tests: RHEL codereview for ibus-desktop-testing-runner M src/tests/ibus-desktop-testing-runner.in commit 2a08af4c979ac42aeb037bb86b7717f4272082b5 Author: Jason Date: 2019-11-25 18:58:04 +0900 Amend typos BUG=https://github.com/ibus/ibus/pull/2159 M bus/inputcontext.c M bus/panelproxy.c M engine/gensimple.py M src/ibusbus.c M src/ibusbus.h M src/ibusengine.h M src/ibusobject.h M src/ibusproperty.h M src/tests/ibus-bus.c M ui/gtk3/emojier.vala M ui/gtk3/ibusemojidialog.h M ui/gtk3/indicator.vala M ui/gtk3/keybindingmanager.vala commit 052994d153810c4307747fa954f87b2a09dd12f3 Author: pan93412 Date: 2019-11-25 18:56:59 +0900 Update translations Update po/zh_TW.po BUG=https://github.com/ibus/ibus/pull/2158 M po/zh_TW.po commit 76b1773c6ef529888bcd62c4f8207c89ba23503f Author: Frédéric Mangano-Tarumi Date: 2019-11-18 12:05:35 +0900 engine-simple: Add the French bepo_afnor layout BUG=https://github.com/ibus/ibus/pull/2155 M engine/simple.xml.in commit 26a8105b7003953e56bf04426ee89a93482a45c5 Author: fujiwarat Date: 2019-11-10 09:53:27 +0900 ui/gtk3: Fix to exit `ibus emoji` with Escape key When Escape key is pressed, the current ibus-ui-emojier should exit although another daemon one is alive. `ibus emoji` was used in Wayland desktop as a workaround but now IBus emoji functions are moved to the engine's pre-edit and the same function is available with Ctrl-Sfhit-e and space key so this problem would not be so visible. BUG=rhbz#1658187 M ui/gtk3/emojier.vala M ui/gtk3/emojierapp.vala commit efeb7b9689126e4f05bd1e10441cdc4a3720ff1c Author: Robert Hoffmann Date: 2019-11-01 21:55:13 +0900 bus: Fix restart crash with inotify read() Do not close inotify desciptors when restarting the server. This may lead to crashes in glib. Fixes crash in libglib/libgio with GLib-GIO-ERROR : inotify read(): Bad file descriptor See also src/tests/ibus-bus.c: start_exit_async(): /* When `./runtest ibus-bus` runs, ibus-daemon sometimes failed to * restart because closing a file descriptor was failed in * bus/server.c:_restart_server() with a following error: * "inotify read(): Bad file descriptor" Test plan: Run $ ibus restart several times. Without the patch ibus-daemon will crash occasionally. BUG=https://github.com/ibus/ibus/pull/2148 M bus/server.c commit 35863d81d15e3d3463cd5dafd0473afb193c57e3 Author: fujiwarat Date: 2019-10-30 17:29:25 +0900 Fix deprecated APIs - Fix deprecated gtk_misc_set_padding(), gtk_widget_set_margin_left(), gtk_widget_set_margin_right() in emojilang.py, enginedialog.py, setup.ui, candidatearea.vala, candidatepanel.vala, switcher.vala since GTK 3.12 - Fix g_new0() argument 1 range [18446744071562067968, 18446744073709551615] exceeds maximum object size 9223372036854775807 [-Walloc-size-larger-than=] by adding g_assert() in ibuscomposetable.c - Fix gdk_keymap_get_default() with gdk_keymap_get_for_display() in bindingcommon.vala - Fix string.utf8_offset() with string.next_char() in emojier.vala - Fix Posix.SIGUSR1 with Posix.Signal.USR1 in panel.vala M bus/ibusimpl.c M configure.ac M setup/emojilang.py M setup/enginedialog.py M setup/setup.ui M src/ibuscomposetable.c M ui/gtk3/bindingcommon.vala M ui/gtk3/candidatearea.vala M ui/gtk3/candidatepanel.vala M ui/gtk3/emojier.vala M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit 17f8a86ad3302d2df8c68726361f4e08b4e2861a Author: Changwoo Ryu Date: 2019-10-24 19:43:20 +0900 Update translations Update po/ko.po po/pt.po BUG=https://github.com/ibus/ibus/pull/2138 M po/LINGUAS M po/ko.po A po/pt.po commit d53401efd3ffb4a424a0b332ec65f1d461abbc33 Author: fujiwarat Date: 2019-10-24 18:24:12 +0900 Revert the commit 982c40fb819878a8131d2d4a4573d0073ef4d6cc Some IBus clients could access the ibus address file without using ibus_get_socket_path(). BUG=https://github.com/ibus/ibus/pull/2128 M src/ibusshare.c commit 745ffb807072b69f7566091855af9a20aabc854d Author: fujiwarat Date: 2019-10-24 18:11:38 +0900 src: Replace g_abort with abort in unicode-parser.c BUG=https://github.com/ibus/ibus/issues/2142 M src/unicode-parser.c commit 5742e1b399e5d50f34f35b1cda74e548b95554da Author: fujiwarat Date: 2019-10-02 16:41:27 +0900 Revert XDG_RUNTIME_DIR to XDG_CONFIG_HOME Some users failed to run ibus-daemon with XDG_RUNTIME_DIR because the directory is not created by `su` command. Now the IBus socket files will be generated in XDG_CACHE_HOME. BUG=https://github.com/ibus/ibus/issues/2135 M configure.ac M src/ibusshare.c commit 773420fad23078ceef83e8ae84bba4e139d0bea3 Author: fujiwarat Date: 2019-09-19 17:09:46 +0900 src: Fix to allocate compose output buffer with more than two chars If the compose output chars are more than two, IBusCompose calls g_renew() but the size is not enough to insert '\0'. BUG=https://github.com/ibus/ibus/issues/2123 M src/ibuscomposetable.c commit 982c40fb819878a8131d2d4a4573d0073ef4d6cc Author: Jason Date: 2019-09-13 20:27:43 +0900 src: Save address file in XDG_RUNTIME_DIR Currently the address file is saved in XDG_CONFIG_DIR, however since it is not a config or preferences file perhaps it should instead be saved to XDG_RUNTIME_DIR. BUG=https://github.com/ibus/ibus/pull/2128 M src/ibusshare.c commit a141a14102da038e3f35557ec42e14e322cfdff1 Author: fujiwarat Date: 2019-09-13 20:19:36 +0900 bus: Use XDG_RUNTIME_DIR for Unix socket directory g_dbus_server_new_sync() is failed with address "unix:tmpdir=/tmp/ibus" in BSD systems because BSD systems do not support abstract socket files and use the real files but no directory "/tmp/ibus". Now the default directory will be an unique "unix:tmpdir=$XDG_RUNTIME_DIR/ibus" by user in Linux and "unix:tmpdir=/tmp" in BSD and mkdir() runs with the directory mode 0700 not to modify by malicious users. BUG=https://github.com/ibus/ibus/issues/2116 M bus/global.c M bus/server.c M configure.ac commit 3d442dbf936d197aa11ca0a71663c2bc61696151 Author: fujiwarat Date: 2019-09-13 15:59:03 +0900 bus: Implement GDBusAuthObserver callback ibus uses a GDBusServer with G_DBUS_SERVER_FLAGS_AUTHENTICATION_ALLOW_ANONYMOUS, and doesn't set a GDBusAuthObserver, which allows anyone who can connect to its AF_UNIX socket to authenticate and be authorized to send method calls. It also seems to use an abstract AF_UNIX socket, which does not have filesystem permissions, so the practical effect might be that a local attacker can connect to another user's ibus service and make arbitrary method calls. BUGS=rhbz#1717958 M bus/server.c commit 48a8d7ed58bdfb02c24c8039bae1cb15d4fc1bce Author: fujiwarat Date: 2019-09-06 21:24:24 +0900 Delete deprecated g_type_class_add_private since glib 2.58 G_DEFINE_TYPE_WITH_PRIVATE() and G_ADD_PRIVATE() have been available since 2.38. IBusService has custom GBaseInitFunc and GBaseFinalizeFunc in ibus_service_get_type() and implements ibus_service_private_offset and ibus_service_get_instance_private() directly without G_DEFINE_TYPE_WITH_PRIVATE(). M bus/ibusimpl.c M src/ibusbus.c M src/ibuscomponent.c M src/ibusconfig.c M src/ibusemoji.c M src/ibusengine.c M src/ibusenginedesc.c M src/ibusenginesimple.c M src/ibusfactory.c M src/ibushotkey.c M src/ibusinputcontext.c M src/ibusobject.c M src/ibusobservedpath.c M src/ibusproperty.c M src/ibusregistry.c M src/ibusserializable.c M src/ibusservice.c M src/ibusunicode.c M src/ibusxevent.c commit bb638201599291f41cde84d6fe8d16f8d1e18268 Author: Jason Date: 2019-09-06 21:07:55 +0900 Make session file header comment more clear BUG=https://github.com/ibus/ibus/pull/2129 M src/ibusshare.c commit fcb2187dd46d71031867f3bd43196c2448693469 Author: fujiwarat Date: 2019-09-06 20:59:49 +0900 src/tests: Replace push with cd for Posix SH BUG=https://github.com/ibus/ibus/issues/2124 BUG=https://github.com/ibus/ibus/issues/2126 M src/tests/ibus-config.c M src/tests/runtest commit 71ee904f000f9335ceb6ece054ce18f1291a8490 Author: fujiwarat Date: 2019-08-29 13:26:58 +0900 ui/gtk3: Fix manpage-section-mismatch in ibus-emoji.7 BUG=https://github.com/ibus/ibus/issues/2119 M ui/gtk3/ibus-emoji.7.in commit ae0040c73466bb6e78fce5e669a55fcce6ffd16d Author: fujiwarat Date: 2019-08-23 19:47:18 +0900 build: Fix build errors with '-include' directive I forgot to test the Makefile with autoconf and also missed to add meta.test.in to EXTRA_DIST M client/wayland/Makefile.am M src/tests/Makefile.am commit 5744073a343fe34e309738915ad49e576f9fe8a5 Author: fujiwarat Date: 2019-08-23 14:01:00 +0900 Release 1.5.21 M configure.ac commit 7fc8943eee0aeff635deb1e4e4667fe9c2dd3e9f Author: fujiwarat Date: 2019-08-23 13:56:13 +0900 Fix some build errors with make dist The latest distcheck requires uninstall-hook for install-data-hook and missed wayland_scanner_rules with --disable-wayland. M bindings/pygobject/Makefile.am M configure.ac M data/its/Makefile.am commit b07b6b7731c3f9e37433d72be2f6d9f95399ba22 Author: fujiwarat Date: 2019-08-22 18:08:34 +0900 Update Translations Update po/es.po po/tr.po po/zh_CN.po M po/LINGUAS M po/es.po A po/tr.po M po/zh_CN.po commit ab56a27376f3b153233442c3697ad7d6502ed9fe Author: fujiwarat Date: 2019-08-21 17:25:41 +0900 client/wayland: Connect to "disconnected" signal ibus-wayland could terminate with "disconnected" signal. M client/wayland/main.c M client/x11/main.c commit b75847831958d5fcb822463e6c06bc47ae392d6a Author: fujiwarat Date: 2019-08-20 19:23:49 +0900 client/wayland: Update Wayland input-method protocol to unstable v1 Weston uses unstable v1 for input-method protocol. Unfortunately weston-terminal does not enable input method and tested the protocol with weston-editor: https://github.com/wayland-project/weston/blob/master/clients/editor.c BUG=https://github.com/ibus/ibus/issues/2030 M client/wayland/Makefile.am D client/wayland/input-method-client-protocol.h D client/wayland/input-method-protocol.c A client/wayland/input-method-unstable-v1-client-protocol.h A client/wayland/input-method-unstable-v1-protocol.c M client/wayland/main.c M configure.ac commit 28c10d64d282fa9fbc35a7bc44a096f6137d5e46 Author: fujiwarat Date: 2019-08-13 20:06:51 +0900 src/tests: Set XDG_SESSION_TYPE in ibus-desktop-testing-runner mutter 3.33.90 or later exits the session without loginctl. Now ibus-desktop-testing-runner has XDG_SESSION_TYPE forcibly not to exit gnome-shell. M src/tests/ibus-desktop-testing-runner.in commit 32645ca8070db1f8b6360b07b229829ed6033437 Author: Changwoo Ryu Date: 2019-08-06 19:32:11 +0900 Fix typos BUG=https://github.com/ibus/ibus/pull/2111 BUG=https://github.com/ibus/ibus/pull/2112 M bus/main.c M src/ibusobservedpath.c M tools/ibus.1.in commit 32572618cdcc36162b5769eb4c71964db9734061 Author: fujiwarat Date: 2019-08-06 18:55:14 +0900 bus: Exit ibus-daemon with parent's death ibus-daemon can be restarted unexpectedly during logging out the session and double ibus-x11 prevent from enabling XIM in XGetSelectionOwner() for the "ibus" atom. ibus-daemon always will exit the process when the parent process dies to avoid this problem. M bus/main.c M configure.ac commit 7dde99600777f195da614130950ecbd339439d35 Author: fujiwarat Date: 2019-07-31 16:27:49 +0900 src/tests: Fix wrong echo with direct runner in ibus-desktop-testing-runner The wrong echo prevent from counting the test results in the direct testing runner. M src/tests/ibus-desktop-testing-runner.in commit f4463c0433c5f48a4fb2830e8c2ae9619fbb18d1 Author: fujiwarat Date: 2019-07-29 19:05:43 +0900 src/tests: Fix a fatal error with g_warning I set g_log_set_always_fatal() before gtk_init() in ibus-compose for a compose warning of GtkIMContextSimple but actually the warning is output during gtk_main() due to GtkIMContextSimple.set_client_window() so I moved g_log_set_always_fatal() before gtk_main() in ibus-compose.c. Also set IFS in ibus-compose-locales to set the delimiter to '\n' for for-loop arguments. M src/tests/ibus-compose-locales.in M src/tests/ibus-compose.c commit 0c89a7ee33bfe5b403c798e0ddb39e4c05d0d971 Author: Hodong Kim Date: 2019-07-25 14:37:52 +0900 client/x11: Update LOCALES_STRING Update LOCALES_STRING in locales.h from /usr/share/i18n/SUPPORTED on Debian Buster. BUG=https://github.com/ibus/ibus/pull/2110 M client/x11/locales.h commit 05d03b9c89d5c4eeed2d437d41fb963439fdd472 Author: fujiwarat Date: 2019-07-25 13:17:29 +0900 Update translations Update po/da.po po/fr.po po/hu.po po/id.po po/ja.po po/nl.po po/pa.po po/pl.po po/pt_BR.po po/sv.po po/uk.po po/zh_TW.po M po/LINGUAS M po/da.po M po/fr.po M po/hu.po A po/id.po M po/ja.po M po/nl.po M po/pa.po M po/pl.po M po/pt_BR.po M po/sv.po M po/uk.po M po/zh_TW.po commit 85b647a1c57c206779eb0b4b15a734c1b1f29c10 Author: fujiwarat Date: 2019-07-24 17:27:37 +0900 src/tests: Fix IBus test cases for gnome-desktop-testing - dconf/config.c: Replaced dconf_client_write_fast() with dconf_client_write_sync() because dconf_client_write_fast() does not syn the data when ibus_config_get_values() is called immediately after ibus_config_set_value() is called. - ibus-compose-locales.in returns the return value of ibus-compose - ibus-compose: Set $NO_AT_BRIDGE to suppress a AT_SPI warning and call g_log_set_always_fatal() because GtkIMContextSimple does not support multiple compose outputs yet and the API can suppress a warning. - ibus-config: Delete async watch testings which causes several errors with gnome-shell testing and the testing is now deprecated and GSettings is recommended. - ibus-desktop-testing-runner.in: Support --output=log:stdout to cat the log to stdout and Use dbus-launch --exit-with-session instead of --sh-syntax and count PASS of test cases instead of PASS of gnome-desktop-testing and always run ibus exit and kill gnome-shell-calendar-server - ibus-engine-switch.c: Set xkb:jp::jpn if gnome-shell sets xkb:us::eng - ibus-inputcontext.c: Use ibus_bus_get_global_engine() instead of ibus_bus_list_active_engines() since ibus_bus_list_active_engines() does not work with gnome-shell and the API is now deprecated. - ibus-keypress.c: Set $NO_AT_BRIDGE to suppress a AT_SPI warning M conf/dconf/config.c M src/tests/Makefile.am M src/tests/ibus-compose-locales.in M src/tests/ibus-compose.c M src/tests/ibus-config.c M src/tests/ibus-desktop-testing-runner.in M src/tests/ibus-engine-switch.c M src/tests/ibus-inputcontext.c M src/tests/ibus-keypress.c commit fa081ac8ea37d2feb7c7f395ad66e7381b4cb65b Author: fujiwarat Date: 2019-07-12 21:20:32 +0900 src/tests: Use gnome-desktop-testing-runner M src/tests/Makefile.am M src/tests/ibus-desktop-testing-runner.in commit 2a4f9518d42b618d8111fa5f9f885757524758a0 Author: fujiwarat Date: 2019-07-12 21:12:40 +0900 src/tests: Rename test-console.sh to ibus-desktop-testing-runner M src/tests/Makefile.am R100 test/test-console.sh src/tests/ibus-desktop-testing-runner.in commit af00f4156b5c79c526eab18c49da80affd41ebee Author: fujiwarat Date: 2019-07-12 21:12:38 +0900 src/tests: Install IBus tests into gnome-desktop-testing M configure.ac M src/tests/Makefile.am A src/tests/ibus-compose-locales.in M src/tests/ibus-compose.c A src/tests/meta.test.in M src/tests/runtest commit 6bdc692e0dc72a9afae5407983859e88c16b4971 Author: fujiwarat Date: 2019-07-10 18:18:04 +0900 src: Support common_name in ISO 639 Nowadays "Bangla" is preferred to "Bengali" for BN language code and iso_639*.xml describes it in "common_name" tag. BUG=https://github.com/ibus/ibus/issues/2104 M src/ibusutil.c commit 76dec798d5cf6cdaa96c3373f9c0e1cd13eb31f5 Author: fujiwarat Date: 2019-06-28 21:28:32 +0900 src/tests: Use GTest for ibus-compose M src/tests/ibus-compose.c commit ac492f31b435b9464d591094d470bc94027168e8 Author: fujiwarat Date: 2019-06-28 21:15:07 +0900 src/tests: Fix ibus-compose for IBusComposeTableEx Recently IBusComposeTablEx has been integrated and the return value of ibus_compose_table_new_with_file() is also changed and ibus-compose needs to be updated. Clear IBusComposeTablePrivate in ibus_compose_table_list_add_array() for the ibus-compose testing. Clear compose_buffer in IBusEngineSimple. Use g_get_language_names_with_category instead() of g_get_locale_variants(). Add ibus-compose.emoji for the tests of long compose sequences and multiple compose output characters. IBUS_COMPOSE_CACHE_DIR variable is added for the temporary caches. M src/ibuscomposetable.c M src/ibuscomposetable.h M src/ibusenginesimple.c M src/tests/Makefile.am M src/tests/ibus-compose.c A src/tests/ibus-compose.emoji M src/tests/ibus-compose.env M src/tests/runtest M test/test-console.sh commit 69e443c07f944b3137aada31dcdbcb49728ff805 Author: fujiwarat Date: 2019-06-28 20:43:36 +0900 bus: Disable panel extension for gnome-initial-setup user gnome-initial-setup user is executed before the post setup is finished after the installation is finished. M bus/main.c commit 80254484071eb57e1152579b60ec8a95522ebc22 Author: fujiwarat Date: 2019-06-24 17:28:55 +0900 src: s/iso_639-3/iso_639_3/ in ibus_get_language_name() iso-codes 3.66 has iso_639_3.xml only but 3.67 has both iso_639_3.xml and iso_639-3.xml. RHEL 7 uses iso-codes 3.46. BUG=https://github.com/ibus/ibus/issues/2101 M ibus/lang.py M src/ibusutil.c commit 82a728de97308f6ce36c814e30a292f96e76cc13 Author: fujiwarat Date: 2019-05-29 17:37:35 +0900 src: Change a fixed compose buffer to a variable one Now the long key sequence of the compose key is supported in both system compose and user compose but the internal compose buffer is still a fixed size. The compose buffer size will be a variable size and the initial size will be 20 with this change. M src/ibusenginesimple.c commit 5b6ad433f79c2e4781688d4985a15836d81f0a72 Author: fujiwarat Date: 2019-05-24 14:34:05 +0900 src: Enable multiple compose output and long key sequences in user comopse Curently the max key sequences of user compose keys depends on the max key sequences of system compose keys, IBUS_MAX_COMPOSE_LEN. This change will have the max key sequences by user compose table and also will separate the user compose table with 16bit compose table and 32bit one to follow another change of system compose table to be able to output multiple compose outputs and 32bit compose ones likes emoji charaters. BUG=https://github.com/ibus/ibus/issues/1990 M src/ibuscomposetable.c M src/ibuscomposetable.h M src/ibusenginesimple.c M src/ibusenginesimple.h M src/ibusenginesimpleprivate.h commit b59f7f823b7b2051e4ca31834f9299a72f01b339 Author: fujiwarat Date: 2019-05-09 17:02:21 +0900 src: Support 32bit and multiple compose outputs Compose file in en_US.UTF-8 now includes wide codepoints more than U+FFFF likes ' : "🖕" U1F595' but the current gtk_compose_seqs_compact[] is a guint16 array. To support 32bit and multiple compose outputs, the array is now separated to 16bit and 32bit arrays and 32bit array is also separated to gtk_compose_seqs_compact_32bit_first[] for 16bit key sequences and gtk_compose_seqs_compact_32bit_second[] for 32bit output values. BUG=https://github.com/ibus/ibus/issues/2074 M src/gtkimcontextsimpleseqs.h M src/ibuscomposetable.h M src/ibusenginesimple.c M src/ibusenginesimpleprivate.h commit 651c997a2fc50b9dadc51d0f14f31e40f0cc05fc Author: fujiwarat Date: 2019-05-09 16:58:54 +0900 src: Support 32bit and multiple output characters in compose-parse.py M src/compose-parse.py commit 224716570c73115560000286d95894f5806f1e42 Author: fujiwarat Date: 2019-05-09 16:36:19 +0900 src: s/GDK_KEY/IBUS_KEY/ in compose-parse.py M src/compose-parse.py commit d25489ae53f061101e9f380196d393136bb4f0ec Author: fujiwarat Date: 2019-05-09 16:20:55 +0900 src: Copy compose-parse.py from gtk A src/compose-parse.py commit cebe7a9553de69943b955ec99285f74961c9ee4e Author: fujiwarat Date: 2019-05-09 15:49:21 +0900 client/gtk2: Keep preedit cursor_pos and visible in clearing preedit text Clear the preedit_string but keep the preedit_cursor_pos and preedit_visible because a time lag could happen, firefox commit the preedit text before the preedit text is cleared and it cause a double commits of the Hangul preedit in firefox if the preedit would be located on the URL bar and click on anywhere of firefox out of the URL bar. M client/gtk2/ibusimcontext.c commit 05a10950d635602fb3fcf4ed0021aa0b15dbd698 Author: fujiwarat Date: 2019-05-09 15:49:09 +0900 src: Make ISO 639 language names with title Danish translations are small in iso-codes-iso-639-2-da.po for the genral usage but the users ask the title format on UI. Now ibus_get_language_name() and ibus_get_untranslated_language_name() return the dynamic allocation instead of the static characters to make the capital character. BUG=https://github.com/ibus/ibus/issues/2079 M src/ibusutil.c M src/ibusutil.h commit 91a256163427f04eb7763196b4ffe553911d2e01 Author: Gunnar Hjalmarsson Date: 2019-05-07 19:42:28 +0900 bus: Indistinguishable address of ibus-daemon BUG=https://github.com/ibus/ibus/issues/2095 M bus/global.c commit 1c54fea645b2ec3a385d492e4ca30a70dbb87c3a Author: fujiwarat Date: 2019-04-23 18:44:45 +0900 data/its: Add ibus.its for IME's component files IBusEngineDesc has translatable strings in longname and description tags and they needs to be extracted by xgettext. After you install the ibus.[its|loc] to /usr/share/gettext/its, each engine's component file needs to renamed with '.inputMethod.xml' in the source directory suffix. E.g. Rename 'anthy.xml' to 'anthy.inputMethod.xml' and write the file path to the engine's POTFILES.in M configure.ac M data/Makefile.am A data/its/Makefile.am A data/its/ibus.its A data/its/ibus.loc commit cc849c20d4dff31f6f88f93789790759bf087b77 Author: fujiwarat Date: 2019-04-23 17:56:20 +0900 NEWS: Add shortlog Update Makefile.am to insert shortlog in NEWS Update po/Makevars to add multiple COPYRIGHT_HOLDER M Makefile.am M po/Makevars commit 1cb5032e85d85f496e349236d1b74f17fb8db966 Author: fujiwarat Date: 2019-04-23 15:40:45 +0900 configure: Move ibus-setup from configure.ac to Makefile.am @localedir@ can be extracted to ${datarootdir}/locale and it needs datarootdir=/usr/share in case configure.ac is used and deleting the datarootdir line caused a regression. All variables can be extracted in Makefile.am with sed. M configure.ac M setup/Makefile.am commit b497de5bc6525769e03b65c73fc991d4aa006223 Author: fujiwarat Date: 2019-03-20 17:44:26 +0900 test: Set GTK_IM_MODULE in test-console.sh M src/tests/Makefile.am M test/test-console.sh commit 6099a45f2e734458202383fdf157aea95b1f35a5 Author: fujiwarat Date: 2019-03-13 19:36:05 +0900 build: Delete built sources with MAINTAINERCLEANFILES BUG=https://github.com/ibus/ibus/issues/2082 M src/Makefile.am M ui/gtk3/Makefile.am commit 2825bfc13618d382444aa1f87be22cd86e9bba29 Author: fujiwarat Date: 2019-03-13 19:35:19 +0900 src: Update ibusunicodegen.h for Unicode UCD 12.0 M src/ibusunicodegen.h commit 026b19ef169dd9612d8a4a1ee34f7c42e7215c9a Author: fujiwarat Date: 2019-03-13 19:16:17 +0900 setup: Enable to run ibus-setup with a different python BUG=https://github.com/ibus/ibus/issues/2086 M setup/ibus-setup.in commit 407756521617f8514b65ddfa35512183fd22d38d Author: fujiwarat Date: 2019-03-01 17:54:39 +0900 Release 1.5.20 M configure.ac commit b1dd51c1935303dcf4f100f0a40d3d31177cfaa6 Author: fujiwarat Date: 2019-03-01 17:09:17 +0900 Update translations Update po/da.po po/fr.po po/hu.po po/ja.po po/nl.po po/pa.po po/pl.po po/sv.po po/uk.po po/zh_CN.po po/zh_TW.po M po/da.po M po/fr.po M po/hu.po M po/ja.po M po/nl.po M po/pa.po M po/pl.po M po/sv.po M po/uk.po M po/zh_CN.po M po/zh_TW.po commit 8375f391e1b9bfc048ff14fd458f689d853064ac Author: fujiwarat Date: 2019-02-28 15:26:11 +0900 ui/gtk3: Do not add emojis in compose category to emoji variants Any emojis in compose category have variants and should be shown by default. M bindings/vala/IBus-1.0-custom.vala M ui/gtk3/emojier.vala commit f5b282e8d2c82156738599ce00e148f512692531 Author: fujiwarat Date: 2019-02-27 12:02:11 +0900 src/ibusemojigen.h: Updated translatable emoji categories M src/ibusemojigen.h commit b30eb5de95413c3977899fdddd04de6872dae991 Author: fujiwarat Date: 2019-02-22 18:40:14 +0900 Delete underscore in _Name in *.desktop for gettext migration M po/Makevars M setup/Makefile.am M setup/ibus-setup.desktop M ui/gtk3/Makefile.am M ui/gtk3/ibus-extension-gtk3.desktop.in M ui/gtk3/ibus-ui-emojier.desktop.in commit 6aab10f2e5a8e10dac9b007eff19b26990461790 Author: fujiwarat Date: 2019-02-14 17:37:39 +0900 ui/gtk3: Fix assert with 16 candidates BUG=https://github.com/ibus/ibus/issues/2076 M ui/gtk3/candidatearea.vala commit 4d3a8ff3d0bf69508551e65ae2dae676919a728d Author: fujiwarat Date: 2019-02-13 16:00:42 +0900 Delete Super-space notification I'd assume most IBus 1.5.2 users are migrated to the latest 1.5.z now but the notification dialog gives much attention and could be deprecated. BUG=https://github.com/ibus/ibus/issues/2080 M configure.ac M ui/gtk3/Makefile.am M ui/gtk3/panel.vala commit 64f4e412d005d15a944ae92f78923371676a5be1 Author: scootergrisen Date: 2019-02-04 16:15:28 +0900 client/x11: typo: sevrer to server BUG=https://github.com/ibus/ibus/pull/2078 M client/x11/main.c commit 7a38e4d18ea4023f01948c6ce2fe303dbe4b3bd9 Author: Anton Mikhalev Date: 2019-02-04 16:07:02 +0900 bus: Allow using non-abstract UNIX domain sockets Previously, it was not possible to access ibus daemon from a separate network namespace because its socket resided in an abstract namespace, which is not shareable between network namespaces. Passing --address=unix:path=/run/user/1000/ibus to ibus-daemon allows clients running in containerized environment to communicate with daemon as long as /run/user/1000 is mounted within container. BUG=https://github.com/ibus/ibus/pull/2077 M bus/server.c commit 4592ce512fd830e646beec0f7aa21add739bb6fa Author: bmansurov <45986298+bmansurov@users.noreply.github.com> Date: 2019-01-29 18:02:04 +0900 engine: Add Uzbek layouts BUG=https://github.com/ibus/ibus/pull/2069 M engine/simple.xml.in commit 4d7c1e00e15921a0448947961183c1c124b6b49f Author: fujiwarat Date: 2019-01-29 17:57:16 +0900 Delete weak pointer in GList.SList for vala 0.43.4 Vala 0.43.4 does not allow to convert a weak pointer to the full one in SList. emojier.vala:424.36-425.73: error: Assignment: Cannot convert from `GLib.SList' to `GLib.SList?' emojier.vala:636.9-637.69: error: Assignment: Cannot convert from `GLib.SList' to `GLib.SList' panel.vala:526.36-526.65: error: Assignment: Cannot convert from `GLib.List' to `GLib.List?' M src/ibusbus.h M src/ibusemoji.h M src/ibusunicode.h M ui/gtk3/emojier.vala commit 0f5084e07c215d74adc4eeeda40b374855cce59a Author: fujiwarat Date: 2019-01-11 12:56:42 +0900 src/ibuscomposetable: Replace assert with warning for .XCompose BUG=rhbz#1470673 M src/ibuscomposetable.c commit be7fb813e530442897a9f9130b8a26380e5a12a1 Author: fujiwarat Date: 2019-01-08 12:02:37 +0900 client/gtk2: Fix Atom and Slack for Flatpak Seems Atom, slack, com.visualstudio.code does not enable gtk_key_snooper_install() and this issue causes to call gtk_im_context_filter_keypress instead of calling ibus APIs. BUG=https://github.com/ibus/ibus/issues/1991 M client/gtk2/ibusimcontext.c commit 60e246ef1593f599e2103070f8fa02649d60ada1 Author: fujiwarat Date: 2019-01-08 12:02:35 +0900 test: Add flatpak-builder file for org.freedesktop.Platform M test/org.test.IBus.json A test/org.test2.IBus.json commit 0fd043c3b4c90855bfb4fceed4bf2f3c3635a041 Author: fujiwarat Date: 2019-01-08 12:02:32 +0900 portal: Update APIs for Hangul preedit in Flatpak BUG=https://github.com/ibus/ibus/issues/1980 M portal/org.freedesktop.IBus.Portal.xml M portal/portal.c commit 4ef976a8b934bf76cfd855013b766f6492dc9e8a Author: Mathieu Bridon Date: 2019-01-07 21:15:35 +0900 introspection: Tell the GI scanner to include the C headers This adds the following line to the generated gir file: This is important, for example for Rust bindings generated from the gtk-rs tooling. BUG=https://github.com/ibus/ibus/pull/2071 M configure.ac commit 9ae2d4658fff3d1e7262fb4fb7ca9ce1af0a27ec Author: fujiwarat Date: 2018-12-20 16:40:31 +0900 client/gtk2: Use button-press-event only with IBUS_ENGINE_PREEDIT_COMMIT BUG=https://github.com/ibus/ibus/issues/1980 M client/gtk2/ibusimcontext.c commit 7b9c034f570bb1bf89569a01b98d6771b1596722 Author: fujiwarat Date: 2018-12-17 20:26:32 +0900 m4: Add ibuslocale.m4 to Makefile.am M m4/Makefile.am commit 1cd5254811259befe50c8bd81584d1bfe2c63ed0 Author: glasseyes Date: 2018-12-17 20:20:11 +0900 src: use iso 639-3 to have names for more languages Keyman and others support them so they shouldn't be in "Other" BUG=https://github.com/ibus/ibus/issues/2064 M ibus/lang.py M src/ibusutil.c commit a78e7f8deb51f01125325da868c8fc75f0436b3e Author: fujiwarat Date: 2018-12-17 20:10:34 +0900 configure: Generate ibus_localedir variable M configure.ac A m4/ibuslocale.m4 commit c7d8771cb9fc652cb638aa7cb8e10ea6b889509e Author: fujiwarat Date: 2018-12-11 19:16:10 +0900 client/gtk2: Fix SEGV on mouse clicks when ibus-daemon not running M client/gtk2/ibusimcontext.c commit 28b0744ad141bd76281025e9d0857d2182bc2a65 Author: fujiwarat Date: 2018-12-10 13:21:42 +0900 src: Clear preedit in IBusEngineSimple with focus changes BUG=https://github.com/ibus/ibus/issues/2063 M src/ibusenginesimple.c commit ba41173c45a4ba6e047f94ac53474433c7643591 Author: fujiwarat Date: 2018-12-07 17:38:09 +0900 src: Show compose preedit with custom compose file IBusEngineSimple is fixed for custom compose files - Show preeedit with custom compose file - Tentative compose preedit can be deleted by Backspace BUG=https://github.com/ibus/ibus/issues/2058 M src/ibusenginesimple.c commit 4c40afba9c862b4f6651b1b971553e5e89e83343 Author: fujiwarat Date: 2018-12-06 16:53:57 +0900 client/gtk2: Always reset and clear preedit on mouse click Thinking about the reset signal again, now I think it's good to emit the reset signal and clear the preedit on mouse click for any engines besides Hangul because the behavior could be handled by each engine with the reset signal. BUG=https://github.com/ibus/ibus/issues/1980 M client/gtk2/ibusimcontext.c commit 639960a827811200caaccb5afaee7d7b133e4876 Author: ZhaoQiang Date: 2018-12-03 18:11:32 +0900 src: Fix typos in comment lines BUG=https://github.com/ibus/ibus/pull/2059 M src/ibusbus.c M src/ibushotkey.c M src/ibusserializable.c M src/ibusservice.c M src/tests/ibus-bus.c commit 7b3b8c8b0c6a41ab524e0be9474825da9cba96ac Author: fujiwarat Date: 2018-11-13 14:27:52 +0900 client/gtk2: Do not delete IBUS_CAP_SURROUNDING_TEXT retrieve-surrounding signal could be failed with the first typing on firefox. It could be a bug in firefox but now IBusIMContext does not delete IBUS_CAP_SURROUNDING_TEXT in the capabilities as a workaround when retrieve-surrounding signal is failed. Also added retrieve-surrounding signal after some committing text. BUG=https://github.com/ibus/ibus/issues/2054 M client/gtk2/ibusimcontext.c commit a40631e166137c9042a68c2d76844e7afc53d388 Author: fujiwarat Date: 2018-11-09 14:49:44 +0900 Detect mouse click to commit Hangul preedit If preedit text is not committed with the mouse click, preedit text is moved to the new cursor position in Hangul typing. Since set_cursor_location() is received before the reset() signal is sent to ibus-daemon and commit_text() signal is received from ibus-daemon, UpdatePreeditTextWithMode D-Bus method is newly added and now ibus clients commit the preedit. BUG=https://github.com/ibus/ibus/issues/1980 M bus/ibusimpl.c M bus/inputcontext.c M bus/inputcontext.h M client/gtk2/ibusimcontext.c M src/ibusinputcontext.c M src/ibusinputcontext.h commit 3172c3b23faefe76b3b7adfc75f9be34a0fb2e02 Author: fujiwarat Date: 2018-10-31 17:42:38 +0900 RHEL code reviews M src/ibuskeymap.c M src/ibuspanelservice.c M src/tests/ibus-keypress.c M util/IMdkit/FrameMgr.c commit b6086665bcf12914e6e1ac99b606dc6dee363f26 Author: fujiwarat Date: 2018-10-30 11:57:19 +0900 data/dconf: Fix a typo M data/dconf/org.freedesktop.ibus.gschema.xml commit 3914d3a2b1aeda8779b2d8a9d91088802530b3a9 Author: fujiwarat Date: 2018-10-30 11:54:52 +0900 data/dconf: Add comments in org.freedesktop.ibus.gschema.xml M data/dconf/org.freedesktop.ibus.gschema.xml commit aa24a526dd7dec9a719e063fb35da90afb5dc5bf Author: fujiwarat Date: 2018-10-26 19:01:19 +0900 src/tests: Fix the location of org.freedesktop.ibus.gschema.xml The location has been changed since xgettext migration. M src/tests/runtest commit c1b55431c076dfa3fc26a3a998bfcf729e9ba602 Author: fujiwarat Date: 2018-10-26 18:44:35 +0900 src/tests: Fix make check in Fedora 29 ibus-bus and ibus-compose failed in Fedora 29. 1. In ibus-bus with runtest, ibus-daemon failed to restart in start_exit_async() because it seems to have conflicting IO with runtest and ibus-daemon failed to close a file descriptor in _restart_server(). The solution is to add a sleep in start_exit_async(). Also added ibus_get_address() in test_async_apis_finish() to check if ibus-daemon finished to restart. 2. In ibus-compose, the GTK application could not get the ibus module. The solution is to export GTK_IM_MODULE=ibus. 3. Added DISABLE_DAEMONIZE_IN_TESTS to get error messages in ibus-daemon. % make DISABLE_DAEMONIZE_IN_TESTS=1 check M bus/Makefile.am M src/tests/Makefile.am M src/tests/ibus-bus.c M src/tests/runtest commit a6710817b3d29d6a522f108f96ffe64d2f5367fe Author: fujiwarat Date: 2018-10-16 19:46:01 +0900 Gettext migration for gschema.xml file https://wiki.gnome.org/Initiatives/GnomeGoals/GettextMigration M bindings/vala/config.vapi M configure.ac M data/dconf/org.freedesktop.ibus.gschema.xml M po/Makevars M po/POTFILES.in M setup/Makefile.am R100 setup/ibus-setup.desktop.in setup/ibus-setup.desktop M src/ibusutil.c M src/keyname-table.h M tools/main.vala M ui/gtk3/Makefile.am M ui/gtk3/application.vala M ui/gtk3/emojierapp.vala M ui/gtk3/extension.vala R100 ui/gtk3/ibus-extension-gtk3.desktop.in.in ui/gtk3/ibus-extension-gtk3.desktop.in R100 ui/gtk3/ibus-ui-emojier.desktop.in.in ui/gtk3/ibus-ui-emojier.desktop.in commit 74a00cc93ba99367e175ad3d3415e585d453d17f Author: fujiwarat Date: 2018-10-16 18:17:41 +0900 data/dconf: Rename org.freedesktop.ibus.gschema.xml[.in] M data/dconf/Makefile.am R100 data/dconf/org.freedesktop.ibus.gschema.xml.in data/dconf/org.freedesktop.ibus.gschema.xml commit a8e8b694dcb52e4beb367dff1e8ecaaca4f63c00 Author: fujiwarat Date: 2018-10-03 17:01:59 +0900 data/dconf: Delete dconf dependencies gsettings-schema-convert has not worked with python3 since GConf has been deprecated since 2011 so we cannot disable python2 in canse GConf is enabled. I don't wish to maintain both ibus.schemas.in and org.freedesktop.ibus.gschema.xml.in and now decide to delete whole the GConf builds. gsettings is now stable and can be used instead. ibus-dconf will be deperecated in the near future. BUG=https://bugzilla.gnome.org/show_bug.cgi?id=759334 M conf/Makefile.am M configure.ac M data/Makefile.am M data/dconf/Makefile.am A data/dconf/org.freedesktop.ibus.gschema.xml.in commit 41c866868a25ec00482a000a18ac1ff3af1c494c Author: fujiwarat Date: 2018-10-03 16:30:26 +0900 src: Update translatable strings in ibusunicodegen.h M src/ibusunicodegen.h commit 6e315973f48574f7dcede1f1e8ca116e6a953ade Author: fujiwarat Date: 2018-09-25 15:42:20 +0900 ui/gtk3: Fix g_return_val_if_fail in ibus_emojier_clamp_page BUG=https://github.com/ibus/ibus/issues/2042 M ui/gtk3/emojier.vala commit 1c6565e205528a45e88a84ba2a328f9035875c8d Author: fujiwarat Date: 2018-09-14 16:15:41 +0900 ui/gtk3: Fix SEGV when commit an emoji on Emojier in Wayland Just pressing Space key without emoji annotations can launch Emojier popup and the popup takes a focus in Wayland and the chosen emoji is output when the original text application gets the focus after Emojier popup release the focus. Emojier disabled Ctrl-Shift-e after got the focus. But currently GNOME Wayland has a bug not to send focus-in until a key press or mouse click happens [1] and Emojier causes a SEGV. Now Emojier disables Ctrl-Shift-e immediately when an emoji is chosen whether focus-in comes or not and fixes the SEGV. [1] https://gitlab.gnome.org/GNOME/gnome-shell/issues/573 BUG=rhbz#1625187 M ui/gtk3/emojier.vala M ui/gtk3/emojierapp.vala M ui/gtk3/panelbinding.vala commit 809d880337e75b7cee429292a238bf53899bef6a Author: fujiwarat Date: 2018-08-30 12:58:57 +0900 ui/gtk3: Do not move Emojier popup with the active candidate in Xorg Probably I think it's not useful to change the popup position frequently. The popup size is always slightly changed with the emoji annotation length. M ui/gtk3/emojier.vala commit e6badb494e0a31b7aca3a5078a5dc5b27b83390d Author: fujiwarat Date: 2018-08-30 12:57:46 +0900 ui/gtk3: Support Shift-Space to insert a Space on Emojier preedit Implemented Shift-Space on preedit since Shift-Space had worked on Emojier's GtkEntry in the previous release. M ui/gtk3/panelbinding.vala commit 28d22176aee6be97d88dd6c60fa5395c79563ec0 Author: fujiwarat Date: 2018-08-30 12:57:33 +0900 ui/gtk3: Fix SEGV when type ASCII on emojier Emojier still included Gtk.Entry, accepted key events in Wayland, reset the lookup table and it caused SEGV because IBus.Text is NULL in the lookup table in Emojier.get_current_candidate(). Now Gtk.Entry is deleted completely. BUG=rhbz#1618682 M ui/gtk3/emojier.vala commit 7edaefdc1d80aefdbbc2dc52526c20715759da83 Author: fujiwarat Date: 2018-08-22 17:20:53 +0900 ui/gtk3: Do not clear unicode data when emoji annotation lang is changed M ui/gtk3/emojier.vala commit aa0f4252ff965729b871c91b4ed089bf98963c0b Author: fujiwarat Date: 2018-08-10 15:43:58 +0900 ui/gtk3: Check if gdk-wayland is installed BUG=https://github.com/ibus/ibus/issues/2035 M configure.ac M ui/gtk3/Makefile.am M ui/gtk3/panelbinding.vala commit fd9d4a927d91eb0c1349f001a4a773900357cbc7 Author: fujiwarat Date: 2018-08-08 15:41:41 +0900 Release 1.5.19 M configure.ac commit 999aee3f4bd99fb01f21f5e99d92d02e06a927d2 Author: fujiwarat Date: 2018-08-08 15:39:13 +0900 po: Update translations Update po/hu.po po/nl.po M po/hu.po M po/nl.po commit b94e8f2d993f2f24e9e977227eaae7d335fc478f Author: fujiwarat Date: 2018-08-07 20:33:32 +0900 src: Replace deprecated BOOL with BOOLEAN for glib-genmarshal M bus/ibusimpl.c M bus/inputcontext.c M bus/marshalers.list M src/ibusemojigen.h M src/ibusengine.c M src/ibusmarshalers.list M src/ibuspanelservice.c commit 5db6e7b40e7937a306411b152a1e39525351d988 Author: fujiwarat Date: 2018-08-07 20:33:26 +0900 src/tests: Ask --enable-memconf in make check instead of build order M Makefile.am M src/tests/Makefile.am M src/tests/runtest commit 269570867793df64aaefcac1963f2e973c1fb8ef Author: fujiwarat Date: 2018-08-07 16:34:18 +0900 src/tests: Fix make check to link src/libibus.so M bus/Makefile.am M bus/panelproxy.c M src/tests/Makefile.am M src/tests/runtest commit 428e64eac8f7dc3ff60234435fe5f34d50126432 Author: fujiwarat Date: 2018-08-06 15:59:06 +0900 src: Describe "default" layout in ibus_engine_desc_new() BUG=https://github.com/ibus/ibus/issues/2011 M src/ibusenginedesc.h commit dc5e7eeba30d0bc2327ffa562cdf6ca0ae23aecc Author: fujiwarat Date: 2018-08-06 15:26:42 +0900 ui/gtk3: Show previous emojis with "history" annotation M ui/gtk3/emojier.vala commit f328fd67f479faa46ca87bf3c85eed7080ec5ec0 Author: fujiwarat Date: 2018-08-06 12:33:44 +0900 client/gtk2: Add IBUS_DISCARD_PASSWORD for firefox and chrome popup window in firefox is closed in Xorg GNOME when password entry is focus on. It's caused by gnome-shell [1]. Now IBUS_DISCARD_PASSWORD and IBUS_DISCARD_PASSWORD_APPS enviroment variables are implemented in IBus GTK clients as a workaround. env IBUS_DISCARD_PASSWORD=1 firefox or export IBUS_DISCARD_PASSWORD_APPS='firefox,.*chrome.*' can discard typing characters on the password entries. [1] https://gitlab.gnome.org/GNOME/gnome-shell/issues/391 BUG=https://github.com/ibus/ibus/issues/2002 M client/gtk2/ibusimcontext.c commit 5f44e7307771685c70202f996e39e9aa68d48d2e Author: fujiwarat Date: 2018-08-03 14:58:10 +0900 data/dconf: Add man pages of 00-upstream-settings(5) and ibus(5) Also delete --mem-profile option in ibus-daemon(1) M bus/ibus-daemon.1.in A data/dconf/00-upstream-settings.5.in M data/dconf/Makefile.am A data/dconf/ibus.5.in M ui/gtk3/ibus-emoji.7.in commit be7554cea294aa13a65895b66b26e5f1fa4a1897 Author: Ryutaroh Matsumoto <36657667+ryutaroh-matsumoto@users.noreply.github.com> Date: 2018-08-02 08:10:04 +0900 option --monitor-timeout should be removed ibus-daemon(1) has explanation of --monitor-timeout, but main.c does not accept it and make an error. M bus/ibus-daemon.1.in commit 8d302c853f4e88f81652e0aeeca86ff1b5779ecb Author: fujiwarat Date: 2018-07-24 16:04:31 +0900 RHEL code reviews M client/x11/main.c M setup/enginetreeview.py M setup/ibus-setup.in M src/emoji-parser.c M src/ibusbus.c M src/ibuscomposetable.c M src/ibusenginesimple.c M src/ibushotkey.c M src/ibuskeymap.c M src/ibuskeynames.c M src/ibusregistry.c M src/ibusservice.c M src/ibusxml.c M src/unicode-parser.c M util/IMdkit/FrameMgr.c M util/IMdkit/IMConn.c M util/IMdkit/i18nClbk.c M util/IMdkit/i18nIc.c M util/IMdkit/i18nMethod.c M util/IMdkit/i18nOffsetCache.c M util/IMdkit/i18nPtHdr.c M util/IMdkit/i18nUtil.c M util/IMdkit/i18nX.c commit 0dde239a3c786dcc479e3103ccd49938fcb47191 Author: Kentaro Hayashi Date: 2018-07-24 15:20:51 +0900 bus: warn deprecated --mem-profile option Since GLib 2.46, memory profiling feature does not work anymore. GLib 2.46 or later means that Ubuntu 16.04 or later. Ubuntu 14.04 (trusty) are still supported as LTS phase, but it seems that GLib is old enough (2.40) to drop support. As a result: * older than GLib 2.46: Just drop support * GLib 2.46 or later: Show a warning message if --mem-profile is used. M bus/main.c M configure.ac commit 6b47e41d66497dd35752a89ea80e4bac55b64e45 Author: Takuro Ashie Date: 2018-07-20 12:30:09 +0900 Remove a misleading "const" modifier of a return value ibus_key_event_to_string() uses g_string_free(str, FALSE) to return a string so that users must free it. To clarify it, the const modifier should be removed. M src/ibuskeynames.c M src/ibusshare.h commit caffeaeee5be121713104fba331b9cf30726aa91 Author: fujiwarat Date: 2018-06-29 16:06:52 +0900 panelbinding: Fix SEGV in panel_binding_parse_accelerator panel_binding_parse_accelerator() could return NULL of the unowned IBus.ProcessKeyEventData with gcc optimization. Since Vala does not provice a static local variable, the variable is moved to the class member to fix this SEGV. Also fixed an infinite loop to show a compose preedit in xterm. Also a NULL preedit is fixed in the first emoji candidate from the emoji category window. M bus/inputcontext.c M bus/panelproxy.c M ui/gtk3/panelbinding.vala commit 3a68ded197b3ad2e45ac08fe52c0514aff987367 Author: fujiwarat Date: 2018-06-29 16:02:32 +0900 ibusenginesimple: Do not show combined character on compose preedit Some applications could combine their committed string with compose character on preedit. E.g. dead_grave after 'e' on firefox BUG=https://github.com/ibus/ibus/issues/1935 M src/ibusenginesimple.c commit f9e30359d328054793e1e225dcf2fe537e6c8c48 Author: fujiwarat Date: 2018-06-27 12:11:41 +0900 ibusenginesimple: Enable preedit for compose keys BUG=https://github.com/ibus/ibus/issues/1935 M src/ibusenginesimple.c commit c8a99943caa1adace0affc78ed5dbde3896f39c7 Author: fujiwarat Date: 2018-06-27 12:04:40 +0900 Update translations Update po/ca.po po/da.po po/es.po po/fr.po po/hu.po po/ja.po po/nl.po po/pl.po po/sv.po po/uk.po po/vi.po po/zh_TW.po M po/ca.po M po/da.po M po/es.po M po/fr.po M po/hu.po M po/ja.po M po/nl.po M po/pl.po M po/sv.po M po/uk.po M po/vi.po M po/zh_TW.po commit 7cef5bf572596361bc502e8fa917569676a80372 Author: fujiwarat Date: 2018-06-20 19:01:59 +0900 setup: Replace emoji font with Unicode font Now the font settings of emoji is configurable in the session base but not the application base and the current font setting on ibus-setup effects on Unicode characters. Also fixed the progress bar on Unicode candidate table. M setup/setup.ui M src/tests/runtest M ui/gtk3/emojier.vala commit 5ee3f48049ecf128391da6448ae7e74786bd171b Author: fujiwarat Date: 2018-06-18 12:46:11 +0900 Move input focus on Emojier to engines' preedit M bindings/vala/IBus-1.0-custom.vala M bindings/vala/Makefile.am A bindings/vala/gdk-wayland.vapi M bus/engineproxy.c M bus/engineproxy.h M bus/ibusimpl.c M bus/inputcontext.c M bus/inputcontext.h M bus/panelproxy.c M bus/panelproxy.h M data/ibus.schemas.in M setup/main.py M setup/setup.ui M src/ibusengine.c M src/ibuspanelservice.c M src/ibuspanelservice.h M src/ibusshare.h M src/ibusxevent.c M src/ibusxevent.h M ui/gtk3/Makefile.am M ui/gtk3/emojier.vala M ui/gtk3/emojierapp.vala M ui/gtk3/extension.vala M ui/gtk3/panel.vala M ui/gtk3/panelbinding.vala commit 37aa95f1adcdde82ef473936cadc0fa3fe8a4e44 Author: fujiwarat Date: 2018-06-15 19:23:27 +0900 setup: Replace GtkTable /w GtkGrid M setup/setup.ui commit ddc2284200971141947a37057356b4bbd84be7ce Author: fujiwarat Date: 2018-06-14 18:30:46 +0900 tools: Add ibus read-config --engine-id option for engine schemas Fixed ibus read-config and reset-config options and also added --engine-id sub option for engine schemas. E.g. % ibus read-config --engine-id anthy % ibus read-config --engine-id com.github.libpinyin.ibus-libpinyin.libpinyin M tools/main.vala commit cf4e2f1d815b700b0470380e0ff428ff266cc18a Author: fujiwarat Date: 2018-06-14 17:29:06 +0900 bus: Rename panel-extension to emoji-extension for CLI M bus/main.c commit a1f91b27145b046a112bb5eba2561880dae5d6a2 Author: fujiwarat Date: 2018-06-04 17:44:17 +0900 ui/gtk3: Get PangoAttrList of auxiliary text from IBusText Since IBus auxiliary text would be one line, it's better to show the character attributes likes color, italic, bold, on the auxiliary text. Also deleted the cursor width from the X position of CandidatePanel because IBus preedit overrides the original cursor of the applications. M ui/gtk3/candidatepanel.vala commit 8ab0b603ba1cd8701583aee46c712898d52005f1 Author: fujiwarat Date: 2018-05-23 19:20:10 +0900 bus: Fix a SEGV in bus_input_context_emit_signal IBus engines can call 'RequireSurroundingText' for a fake input context if there is no input focus. M bus/inputcontext.c commit 196216a89a9167425dd9b41f4f1d8a494d370249 Author: fujiwarat Date: 2018-05-11 19:13:03 +0900 src: Add ibus-keypress M configure.ac M src/tests/Makefile.am A src/tests/ibus-keypress.c M src/tests/runtest commit 886ad3651d16dd821e2526e8601c69738533a7e8 Author: fujiwarat Date: 2018-05-07 12:35:03 +0900 src: Fix SEGV in IBusEngine if no emoji shortcut keys BUG=https://github.com/ibus/ibus/issues/2005 M src/ibusengine.c commit d8f901f856ddd75baba5826038d1346c5a43d048 Author: fujiwarat Date: 2018-04-20 15:58:06 +0900 Replace OnlyShowIn= with NoDisplay=true BUG=rhbz#1567689 M ui/gtk3/ibus-extension-gtk3.desktop.in.in M ui/gtk3/ibus-ui-emojier.desktop.in.in commit 3280848b42b07afbac3d59066474c5f429de9182 Author: fujiwarat Date: 2018-04-17 14:43:02 +0900 bus: Enable sub package of gtkextension.xml and ibus-extension-gtk3 GNOME destkop asked not to install ibus-extension-gtk3 by default since the UI is not called by gnome-shell. BUG=rhbz#1567689 M bus/main.c commit 10cc30eac200d10b581d9d2122d5a732f4880943 Author: fujiwarat Date: 2018-04-17 14:00:20 +0900 src/tests: Enable GSettings in runtest M src/tests/runtest commit 7bc160f2139799b853678264c6b01277f0721336 Author: fujiwarat Date: 2018-04-13 19:39:09 +0900 bus: Add DISABLE_GUI_TESTS for test-stress M bus/Makefile.am commit 8d4c4738d07b6850e56ae74d46b7b13b7382f865 Author: fujiwarat Date: 2018-04-13 17:33:50 +0900 configure: Add --disable-python2 option M bindings/pygobject/Makefile.am M configure.ac commit 68bd2695c4cc6a06cb8a55a55fed2054d29f0995 Author: fujiwarat Date: 2018-04-13 16:31:29 +0900 src/tests: Fix a typo M src/tests/Makefile.am commit c360cbd830943a4bfb0ece9cc07b99a426dc2121 Author: fujiwarat Date: 2018-04-09 11:57:09 +0900 src/tests: Add ibus-compose.env A src/tests/ibus-compose.env commit 68e162a59c7943ee6207ff7d21f9a75d1e6f2f79 Author: fujiwarat Date: 2018-04-06 20:35:50 +0900 src/tests: Fix a typo in runtest M src/tests/runtest commit 32f2f2bab149ad766674e7421f7044ebe98bb0b6 Author: fujiwarat Date: 2018-04-06 20:24:08 +0900 tests: Added an automation testing on console test-console.sh runs /usr/bin/ibus-daemon on console after install ibus. Login as root --builddir /root/ibus/src/tests --srcdir /root/ibus/src/tests Also added DISABLE_GUI_TESTS parameters for make check. M bus/Makefile.am M src/tests/Makefile.am M src/tests/runtest A test/test-console.sh commit 28d0c1d4bc47beb38995d84cc4bb1d539c08a070 Author: Olivier Tilloy Date: 2018-04-06 16:02:11 +0900 src: Make the call to chmod in ibus_bus_init conditional BUG=https://github.com/ibus/ibus/issues/1996 M src/ibusbus.c commit 75a6667b6ad8c8cb801cb160b7b04625334f9094 Author: fujiwarat Date: 2018-04-05 16:54:41 +0900 src/tests: Fix ibus-compose for the latest GTK M src/tests/ibus-compose.c commit 5788be80685f397c3db3bdf4e672d67cfb9b3433 Author: Jeremy Bicha Date: 2018-03-30 12:37:27 +0900 Fix ucd directory override BUG=https://github.com/ibus/ibus/pull/1995 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/339450043 Patch from Jeremy Bicha . M configure.ac commit b184861396279d903e62bf6aad271a2205a79832 Author: fujiwarat Date: 2018-03-30 12:33:59 +0900 ui/gtk3: Sort Unicode candidates BUG=rhbz#1554714 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/339430043 M ui/gtk3/emojier.vala commit c6439d74d5472c95de4d5c2cdc6487bfd508e3d8 Author: fujiwarat Date: 2018-03-15 16:57:02 +0900 ui/gtk3: Add num pad Enter, Down, Up, Left, Right on Emojier BUG=rhbz#1554813 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/337690043 M ui/gtk3/emojier.vala commit 86963f2f94d1e4fc213b01c2bc2ba9dcf4b22219 Author: fujiwarat Date: 2018-03-02 15:31:12 +0900 Release 1.5.18 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/336630043 M configure.ac commit 73b420f49ba54b6eac74fb59cb3af948f3a592d6 Author: fujiwarat Date: 2018-03-01 15:51:00 +0900 Updated translations Updated po/ca.po po/da.po po/hu.po po/ja.po po/ko.po R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/340720043 M po/as.po M po/bn_IN.po M po/ca.po M po/cs.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/mr.po M po/nl.po M po/pl.po M po/pt_BR.po M po/sv.po M po/ta.po M po/te.po M po/uk.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit ece320bda762024541b23178a1b65c3ec968416f Author: fujiwarat Date: 2018-03-01 15:48:03 +0900 bus: Add liveuser to disabled panel extension R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/335610043 M bus/main.c commit afe60c12a0e5bf70344930c6769675a439dc82d2 Author: fujiwarat Date: 2018-03-01 15:42:03 +0900 ui/gtk3: Implement Page_Down, Page_Up on Unicode name list Page_Down and Page_Up are useful on Unicode name list since the names are many. Also add Ctrl-Shift-[n|p] for the same purpose. R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/340800043 M ui/gtk3/emojier.vala M ui/gtk3/ibus-emoji.7.in commit 56c67b1362344e2ab4a061bcc913c455b190ef20 Author: fujiwarat Date: 2018-03-01 15:37:15 +0900 ui/gtk3: Set title string in gnome-shell gnome-shell uses .desktop files to get the application title names. Probably the reason is to manage any windows and Xorg and Wayland. BUG=https://mail.gnome.org/archives/gtk-app-devel-list/2018-February/msg00027.html R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/338520043 M po/POTFILES.in M ui/gtk3/Makefile.am M ui/gtk3/emojierapp.vala M ui/gtk3/extension.vala A ui/gtk3/ibus-extension-gtk3.desktop.in.in A ui/gtk3/ibus-ui-emojier.desktop.in.in M ui/gtk3/panelbinding.vala commit c57b7c34d75871db172e023b0094b979000f62fc Author: fujiwarat Date: 2018-02-27 14:10:29 +0900 Enable emoji keybinding in Wayland XI2 keybinding does not work for the root window in Wayland because of a security issue maybe. Now I think to move the keybinding in ibus-extension-gtk3 to each IBusEngine. FIXME: Unfortunatelly gtk_get_current_event_time() cannot get time for the delayed DBus events and gtk_window_move() does not work for GtkDialog without a parent window in Wayland. R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/333700043 M bus/engineproxy.c M bus/ibusimpl.c M bus/inputcontext.c M src/Makefile.am M src/ibus.h A src/ibusaccelgroup.c A src/ibusaccelgroup.h M src/ibusengine.c M ui/gtk3/emojier.vala M ui/gtk3/extension.vala M ui/gtk3/panelbinding.vala commit 7ccbd21ca7d163cdd71dc6c0405d8a32d63d324d Author: fujiwarat Date: 2018-02-27 14:06:30 +0900 Disable panel extension for gdm user The gdm user's process is also running while the login user's process is running so the double panel extensions are better to be avoided for the memory usage. Review URL: https://codereview.appspot.com/340330044 M bus/main.c commit fc54b0c051c2eb4a2c1f836b1415def00314cfc1 Author: fujiwarat Date: 2018-02-21 12:17:31 +0900 ui/gtk3: Load Unicode data when open the dialog by default The emoji data requires about 10MB and the Unicode data requires about 15MB. Now the emoji data is loaded at the time of startup and the Unicode data is loaded if users open the dialog at the beginning. The settings can be customized with gsettings command and the keys of 'load-emoji-at-startup' and 'load-unicode-at-startup' in 'org.freedesktop.ibus.panel.emoji' schema. Review URL: https://codereview.appspot.com/340780043 M data/ibus.schemas.in M ui/gtk3/panelbinding.vala commit d1ebb3d77ebfe8f58188261c383d8122e2125fe6 Author: fujiwarat Date: 2018-02-21 12:12:11 +0900 ui/gtk3: Show code points on Unicode name list dialog The code points are useful since the list has many names. R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/340770043 M ui/gtk3/emojier.vala commit 366963d57d1468914611c71929cc64c83be9affd Author: Piotr Drąg Date: 2018-02-20 18:57:32 +0900 Fix typos in translatable strings BUG=https://github.com/ibus/ibus/pull/1983 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/333670043 Patch from Piotr Drąg . M data/ibus.schemas.in M ui/gtk3/emojierapp.vala commit fb07f64764f18f702221ff5574b2fd2193f051f0 Author: fujiwarat Date: 2018-02-20 17:25:07 +0900 Implement ibus-extension-gtk3 for the global keybinding Currently IBus panel (ibus-ui-gtk3) is not available in GNOME and Plasma so the emoji and unicode point typings are not available in GNOME and Plasma. The workaround `ibus emoji` command is available but it put the selected character into the copy buffer and users have to paste the character. Originaly the emoji feature was implemented in IBus GtkIMModule but it had several problems; the first is the keybinding is hard-coded and IBus GtkIMModule does not use GSettings for the customized settings. The second is the feature was available for GTK applications. The third is that XKB input sources uses gtk-im-context-simple but not ibus in GNOME desktop so users have to add an IM input sources to enable IBus for the XKB input sources. The fourth is the feature was available for IBusEngineSimple only and other IBus IMEs need to inherit that class to get the emoji feature. The fifth is that emoji typing is available for English only since IBusEngineSimple had the feature. The sixth is that the default one dimension lookup window was not useful to choose an emoji and needed two dimensions lookup window. And the implementation was moved from IBus GtkIMModule to IBus panel to fix above problems. But users have to use `ibus emoji` at present if ibus-ui-gtk3 is not available. Now I think to move the emoji feature from ibus-ui-gtk3 to another IBus component; ibus-extension-gtk3 which manages the Ctrl-Shift-e. GNOME and Plasma desktops still do not show the GUI menu but the shortcut key is available in this implementation. BUG=RHBZ#1430501 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/339300043 M bindings/vala/IBus-1.0-custom.vala M bus/Makefile.am M bus/ibusimpl.c M bus/main.c M bus/marshalers.list M bus/panelproxy.c M bus/panelproxy.h M src/Makefile.am M src/ibus.h M src/ibusmarshalers.list M src/ibuspanelservice.c M src/ibuspanelservice.h M src/ibusserializable.c M src/ibusserializable.h M src/ibusshare.c M src/ibusshare.h A src/ibusxevent.c A src/ibusxevent.h M src/tests/runtest M ui/gtk3/Makefile.am A ui/gtk3/bindingcommon.vala M ui/gtk3/candidatearea.vala A ui/gtk3/extension.vala A ui/gtk3/gtkextension.xml.in M ui/gtk3/iconwidget.vala M ui/gtk3/panel.vala A ui/gtk3/panelbinding.vala commit 9f2699c6023e37bd096484d36b2a83b1e680f1b3 Author: fujiwarat Date: 2018-02-08 11:59:59 +0900 Fix typo in ISSUE_TEMPLATE R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/340240043 M .github/ISSUE_TEMPLATE.md commit ff611a4bf2f74fcb7c3df3f57ba3bff4e50a16ff Author: fujiwarat Date: 2018-02-06 11:05:10 +0900 Add ISSUE_TEMPLATE BUG=https://github.com/blog/2111-issue-and-pull-request-templates Review URL: https://codereview.appspot.com/336540043 A .github/ISSUE_TEMPLATE.md commit 4cfd5ad7c6d071cfef6c7d678cc027ea480b8fc9 Author: fujiwarat Date: 2018-02-06 11:02:09 +0900 Fix typo in ibusunicode.c Review URL: https://codereview.appspot.com/340740043 M src/ibusunicode.c M ui/gtk3/emojier.vala commit e17c99859d06ab75326730e45072e1061f7d87c7 Author: fujiwarat Date: 2018-01-29 16:50:07 +0900 Implement Unicode choice on Emojier BUG=https://github.com/ibus/ibus/issues/1922 Review URL: https://codereview.appspot.com/340190043 M configure.ac M po/POTFILES.in M src/Makefile.am M src/emoji-parser.c M src/ibus.h A src/ibusunicode.c A src/ibusunicode.h A src/ibusunicodegen.h A src/unicode-parser.c M ui/gtk3/emojier.vala M ui/gtk3/emojierapp.vala M ui/gtk3/ibusemojidialog.h M ui/gtk3/panel.vala commit bfe57d20e9d39d52428e95e493d9af0bd034a82f Author: fujiwarat Date: 2018-01-15 14:44:07 +0900 Added DBus filtering against malware The proposal prevents non-ower of the GDBusConnection from accessing DBus methods against malicious usages. BUG=https://github.com/ibus/ibus/issues/1955 Review URL: https://codereview.appspot.com/335380043 M bus/inputcontext.c M src/ibusengine.c M src/ibuspanelservice.c commit 0ab0dd3149cbcf0a914a711ecf421ba32b1300c3 Author: Peng Wu Date: 2018-01-12 12:00:00 +0900 ui/gtk3: Translate input method name in ibus Translate input method name in ibus menu and switcher BUG= R=takao.fujiwara1@gmail.com Review URL: https://codereview.appspot.com/339170043 Patch from Peng Wu . M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit 88b9a93d61824ba8b18cc9fc943527937db5e40b Author: Aaron Muir Hamilton Date: 2017-11-17 12:27:30 +0900 src: Reintroduce the hex mode keybind with an environment variable This was removed by "Move emoji implementation from IBusEngineSimple to IBusPanel". Reintroduced here behind an environment variable. BUG=https://github.com/ibus/ibus/issues/1961 Review URL: https://codereview.appspot.com/335030043 Patch from Aaron Muir Hamilton . M src/ibusenginesimple.c commit a28fa740bfc64bfb65eab9c5fad8bb2086a1e45a Author: Danny Date: 2017-11-16 12:32:52 +0900 src: Add libgobject.so to LDADD for Debian libtool Debian libtool ignores dependency_libs in libibus.la for dlopen modules so need to add libraries in LDADD explicitly. https://www.mail-archive.com/libtool@gnu.org/msg11616.html BUG=https://github.com/ibus/ibus/issues/1952 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/334070043 Patch from Danny . M src/Makefile.am commit f5e0752fe345db2033a2b49de206dc62acd00a2b Author: fujiwarat Date: 2017-11-09 12:14:08 +0900 src: Added some error handlings from a code review Review URL: https://codereview.appspot.com/337900043 M src/ibuscomposetable.c M src/ibusenginesimple.c commit 1cbe86726d99b79201cf3735610524e9a49aa08b Author: Carlos Garnacho Date: 2017-10-31 13:17:16 +0900 src: Fix GVariant leaks g_task_propagate_pointer() gives ownership of the data to the caller, so the GVariants handed this way must be unref'ed after the contents have been extracted/copied. BUG=https://github.com/ibus/ibus/pull/1956 Review URL: https://codereview.appspot.com/330710043 Patch from Carlos Garnacho . M src/ibusbus.c commit c36081898d93c6256ee78fa94dccd769fffff41f Author: fujiwarat Date: 2017-10-26 11:03:18 +0900 tools: Do not change keymaps with 'use-system-keyboard-layout' BUG=https://github.com/ibus/ibus/issues/1951 Review URL: https://codereview.appspot.com/334890043 M tools/main.vala commit 4f9fa092924b75084b3b9e3fc368d0744db8ad2a Author: fujiwarat Date: 2017-10-22 19:25:55 +0900 Release 1.5.17 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/332030043 M configure.ac commit 8cb149bfed9938967af1e823c3a09284a9f2501c Author: fujiwarat Date: 2017-10-22 19:16:52 +0900 Update translations Update cs.po da.po es.po fr.po hu.po ja.po nl.po pl.po sv.po uk.po zh_TW.po R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/331040043 M po/cs.po M po/da.po M po/es.po M po/fr.po M po/hu.po M po/ja.po M po/nl.po M po/pl.po M po/sv.po M po/uk.po M po/zh_TW.po commit 53d1f9e92666c77ec13efaeb5f330d05332a8360 Author: fujiwarat Date: 2017-10-20 11:34:55 +0900 ui/gtk3: Increase timeout of window filter in PropertyPanel The latest Plasma desktop takes more time to generate _NET_WORKAREA atom and this patch increases the timeout from 1 minute to 5 minutes so that PropertyPanel locate within the workarea. Review URL: https://codereview.appspot.com/336840043 M ui/gtk3/propertypanel.vala commit dfe21a2729f13107ef28c4cd075ac81d501384ea Author: fujiwarat Date: 2017-10-19 10:53:27 +0900 ui/gtk3: Unref Panel and Indicator when double panels run If unref is not called properly, Panel.finalize() is not called and Gtk.StatusIcon won't be hidden with double panels. Review URL: https://codereview.appspot.com/329510043 M ui/gtk3/application.vala M ui/gtk3/indicator.vala M ui/gtk3/panel.vala commit 98f70ee5966cfe182a75c6cc6466032bf414c640 Author: fujiwarat Date: 2017-10-11 12:54:10 +0900 ui/gtk3: Do not activate emoji cells on mouse until mouse moves R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/324660043 M ui/gtk3/emojier.vala M ui/gtk3/emojierapp.vala M ui/gtk3/panel.vala commit d37c8bbdf9164ca76fb5ca513891e48273556881 Author: fujiwarat Date: 2017-09-26 11:42:23 +0900 ui/gtk3: Unset GDK_CORE_DEVICE_EVENTS Plasma deskop sets this variable and prevents Super-space and Ctrl-Shift-e when ibus-ui-gtk3 runs after the desktop is launched. Also fixed a SEGV in display.get_monitor_at_window() Regression from rhbz#226465 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/321710043 M ui/gtk3/application.vala M ui/gtk3/switcher.vala commit 4a541639f50f05bf01b1b84792a7f4039b88c296 Author: fujiwarat Date: 2017-09-15 17:49:57 +0900 ui/gtk3: Fix to enable menu button on PropertyPanel Review URL: https://codereview.appspot.com/330720043 M ui/gtk3/propertypanel.vala commit 0632cbbbb573749bbca96a416fde1490810e52d2 Author: fujiwarat Date: 2017-09-13 18:15:06 +0900 ui/gtk3: Fix PropertyPanel position in workarea gdk_screen_get_monitor_workarea() no longer return the correct area from "_NET_WORKAREA" atom in GTK 3.22 and now use gdk_monitor_get_workarea() instead. Use gdk_seat_grab() instead of deprecated gdk_device_grab(). Use gtk_menu_popup_at_rect() instead of deprecated gtk_menu_popup() and generate a new foreign GdkWindow with mouse cursor for the Qt Window. Also fixed some deprecated APIs. R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/330190043 M ui/gtk3/candidatepanel.vala M ui/gtk3/emojier.vala M ui/gtk3/handle.vala M ui/gtk3/indicator.vala M ui/gtk3/keybindingmanager.vala M ui/gtk3/panel.vala M ui/gtk3/propertypanel.vala M ui/gtk3/switcher.vala commit 79aebc5553adeb2beff924135ee3b7e4e6c7eb94 Author: fujiwarat Date: 2017-09-11 12:32:35 +0900 Remove debian directory upon the Debian's request Makefile.am is also modified to get rid of debian words. BUG=https://github.com/ibus/ibus/issues/1945 R=Shawn.P.Huang@gmail.com, osamu.aoki@gmail.com, shawn.p.huang@gmail.com Review URL: https://codereview.appspot.com/322670043 M Makefile.am D debian/README.source D debian/changelog.in D debian/clean D debian/compat D debian/control D debian/copyright D debian/docs D debian/ibus-daemon.1 D debian/ibus-gconf.1 D debian/ibus-gtk2.install D debian/ibus-gtk3.install D debian/ibus-setup.1 D debian/ibus-ui-gtk.1 D debian/ibus-x11.1 D debian/ibus.1 D debian/ibus.install D debian/ibus.manpages D debian/ibus.postinst D debian/ibus.prerm D debian/libibus-1.0-0.install D debian/libibus-1.0-0.symbols D debian/libibus-dev.install D debian/patches/00list D debian/python-ibus.install D debian/pyversions D debian/rules D debian/source/format D debian/watch D debian/xinput/ibus commit d784e04c38eeb069f9a8da8b30743f4463fa34c3 Author: fujiwarat Date: 2017-09-07 10:57:14 +0900 client/gtk2: Fix a build failure with GDK_MODIFIER_INTENT_NO_TEXT_INPUT BUG=https://github.com/ibus/ibus/issues/1942 Review URL: https://codereview.appspot.com/327300043 M client/gtk2/ibusimcontext.c commit bbfb3d738b9d61d1eb0658a9ce56e3cd8c111ac4 Author: fujiwarat Date: 2017-09-06 14:08:40 +0900 client/gtk2: Do not send key events to GtkIMContextSimple GtkIMContextSimple binds Ctrl-Shift-u but IBus clients do not now. BUG=https://github.com/ibus/ibus/issues/1889 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/327290043 M client/gtk2/ibusimcontext.c M src/ibusenginesimple.c M src/ibusenginesimple.h commit d788918b635275d0247e68f26f9c840100bca366 Author: fujiwarat Date: 2017-09-06 12:17:30 +0900 ui/gtk3: Switcher should ignore mouse until it moves BUG=https://github.com/ibus/ibus/issues/1929 Review URL: https://codereview.appspot.com/329100043 M ui/gtk3/switcher.vala commit 21bac4733684ca6a74ddb02f457c0fe19eb9180d Author: fujiwarat Date: 2017-09-06 12:11:01 +0900 ui/gtk3: Move ibus-emoji-dialog.vapi from ui/gtk3 to bindings/vala R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/322590043 R100 ui/gtk3/IBusEmojiDialog-1.0.metadata bindings/vala/IBusEmojiDialog-1.0.metadata M bindings/vala/Makefile.am R100 ui/gtk3/ibus-emoji-dialog-1.0.deps bindings/vala/ibus-emoji-dialog-1.0.deps M po/POTFILES.skip M ui/gtk3/Makefile.am M ui/gtk3/emojier.vala M ui/gtk3/ibusemojidialog.h commit 3e01bab972ad12b92c55a9dde554a0359c217290 Author: fujiwarat Date: 2017-09-06 12:04:52 +0900 portal: Add org.freedesktop.IBus.Portal.xml in EXTRA_DIST Review URL: https://codereview.appspot.com/325370043 M portal/Makefile.am commit 9937a0e4501ccf0cfd238ce7c97733c3099db3f7 Author: fujiwarat Date: 2017-09-04 12:19:07 +0900 bus: ibus-daemon activates ibus-portal When ibus-daemon restarts, ibus-portal exits with on_name_lost() and the clients wait for portal_name_appeared() until ibus-poral restarts. Now the clients can connect to ibus-daemon with this way and also they don't have to activate ibus-portal. BUG=https://github.com/flatpak/flatpak/issues/675 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/321530043 M bus/server.c M portal/portal.c commit 9772e800f3e6937510f2609c5ce9a6860c59cb81 Author: Alexander Larsson Date: 2017-09-04 12:02:17 +0900 test: Testing in flatpak Test with: flatpak-builder --force-clean app org.test.IBus.json flatpak-builder --run --nofilesystem=host app org.test.IBus.json zenity --entry BUG=https://github.com/flatpak/flatpak/issues/675 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/329090043 Patch from Alexander Larsson . A test/org.test.IBus.json commit 35ce62474fa97a5460d72c360943700a413a07ae Author: Alexander Larsson Date: 2017-08-31 12:03:37 +0900 Support the portal in the gtk im modules This adds a new way to create an IbusBus, ibus_bus_new_async_client(). This returns an object that is not guarantee to handle any calls that are not needed by a client, meaning CreateInputContext and handling the input context. If you are running in a flatpak, or if IBUS_USE_PORTAL is set, then instead of talking to the regular ibus bus we connect to org.freedesktop.portal.IBus on the session bus and use the limited org.freedesktop.IBus.Portal interface instead of the org.freedesktop.IBus interface. This allows flatpaks (or other sandbox systems) to safely use dbus clients (apps). BUG=https://github.com/flatpak/flatpak/issues/675 Review URL: https://codereview.appspot.com/328410043 Patch from Alexander Larsson . M client/gtk2/ibusimcontext.c M src/ibusbus.c M src/ibusbus.h M src/ibusinputcontext.c commit 203a3df5a239d644cf42b7bac03a268eb5babfc7 Author: Alexander Larsson Date: 2017-08-30 11:38:09 +0900 Initial version of ibus portal This adds a dbus service called org.freedesktop.portal.IBus on the session bus. It is a very limited service that only implements CreateInputContext and the InputContext interface (and Service.Destroy for lifetime access). It uses gdbus code generation for demarshalling the method calls which means it will verify that all arguments have the right type. Additionally all method calls to the input context object have to be from the client that created it, so each client is isolated. BUG=https://github.com/flatpak/flatpak/issues/675 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/326350043 Patch from Alexander Larsson . M Makefile.am M configure.ac A portal/Makefile.am A portal/org.freedesktop.IBus.Portal.xml A portal/org.freedesktop.portal.IBus.service.in A portal/portal.c M src/ibusshare.h commit c1b93f933f5cbd74f3e06575d26ed7432a5420fd Author: Mario Bodemann Date: 2017-08-15 12:10:56 +0900 Typo fix BUG=https://github.com/ibus/ibus/pull/1939 Review URL: https://codereview.appspot.com/327080043 Patch from Mario Bodemann . M ui/gtk3/ibus-emoji.7.in commit 6a3301db85e77e0652f7e00894cce493b6a942f6 Author: Xiang Fan Date: 2017-08-10 11:24:39 +0900 client/gtk2: include the scaling factor Scaling factor, which exists for HiDPI displays, needs to be included in the calculation of cursor location. This does not affect devices without a HiDPI display. Candidate windows would be misplaced to smaller coordinates without this patch. BUG=https://github.com/ibus/ibus/issues/1806 Review URL: https://codereview.appspot.com/328250043 Patch from Xiang Fan . M client/gtk2/ibusimcontext.c commit 91bebf01e41116d71e60876e793284cf9d8dc186 Author: fujiwarat Date: 2017-07-28 11:45:28 +0900 ui/gtk3: Fix SEGV of XKeysymToKeycode() on Wayland BUG=rhbz#1368593 BUG=rhbz#1446816 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/325120043 M ui/gtk3/application.vala commit bc0f91342c6f3a6e554493af9430d634d906ee19 Author: fujiwarat Date: 2017-07-25 12:00:14 +0900 ui/gtk3: Fix SEGV of IBusEmojier on de_DE.UTF-8 de's decimal_point is ',' instead of '.' and failed to load the CSS data in Gtk.CssProvider.load_from_data(), launched null window of emojis and finally caused a SEGV due to the null window. This also fixes some memory leaks. BUG=rhbz#1471079 Review URL: https://codereview.appspot.com/323310043 M src/ibusemoji.c M ui/gtk3/emojier.vala commit 56b5126f09887b41c2cc6cb97bfd72593b60732f Author: fujiwarat Date: 2017-07-25 11:55:08 +0900 po: Replace s/annotaions/annotations/ BUG=https://github.com/ibus/ibus/issues/1933 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/323330043 M data/ibus.schemas.in M po/cs.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/hu.po M po/ja.po M po/nl.po M po/pl.po M po/pt_BR.po M po/sv.po M po/uk.po M po/zh_TW.po M ui/gtk3/emojierapp.vala commit ad80999f5a10faee1a665a2232e1cf60be901cc8 Author: fujiwarat Date: 2017-05-29 12:03:41 +0900 Make all emoji dicts for fully qualified Currently only emoji-en.dict enables fully qualified since it imports emoji-test.txt and it causes to hardly compare emojis between emoji-en.dict and emoji-$lang.dict when m_show_emoji_variant is enabled. E.g. U+1F3CC-FE0F-200D-2642-FE0F Now emoji-$lang.dict also import emoji-test.txt and enables fully qualified. R=penghuang@google.com Review URL: https://codereview.appspot.com/323860043 M src/Makefile.am M src/emoji-parser.c M src/ibusemoji.c M ui/gtk3/emojier.vala commit 081d09f1a927f459dacda3bcc59a1678ca2f9a95 Author: fujiwarat Date: 2017-05-29 11:54:31 +0900 ui/gtk3: Emojier supports Ctrl-c,v,x and Ctrl-Shift-c Ctrl-[c|v|x] copy, paste, or cut the emoji annotatons. Ctrl-Shift-c copies the selected emoji. Also Ctrl-Backspace is implemented to delete an annotation word. Also updated ibus-emoji.7.in man page. R=penghuang@google.com Review URL: https://codereview.appspot.com/316650043 M ui/gtk3/emojier.vala M ui/gtk3/ibus-emoji.7.in commit 44d053577a6ac115f3fd3b7beb7bdd65da81aa64 Author: fujiwarat Date: 2017-05-24 11:52:19 +0900 engine: Add Malay and Mongolian keymaps R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/325790043 M engine/simple.xml.in commit 4fe3050efa7335f82870fb1d5a1d170d20afc160 Author: fujiwarat Date: 2017-05-22 12:04:28 +0900 configure: Change relative paths to absolute ones BUG=https://github.com/ibus/ibus/issues/1926 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/322990043 M configure.ac commit e6bab7ab78c69d238a70a64e60963dd5a6711ffe Author: Felix Yan Date: 2017-05-19 12:13:04 +0900 Fix a typo in configure.ac BUG=https://github.com/ibus/ibus/pull/1927 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/317640043 Patch from Felix Yan . M configure.ac commit ccc602d626b29fae805fae2d0995126afac6d9e6 Author: fujiwarat Date: 2017-05-15 16:03:34 +0900 Release 1.5.16 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/320550043 M configure.ac A po/fi.po A po/sq.po A po/sv.po commit 21e6c003e0d4b8d50b266c02495ad9d62f30e7b4 Author: fujiwarat Date: 2017-05-15 13:47:39 +0900 Update translations Update po/ca.po po/cs.po po/de.po po/es.po po/fi.po po/fr.po po/hu.po po/it.po po/ja.po po/nl.po po/pl.po po/pt_BR.po po/ru.po po/sq.po po/sv.po po/uk.po po/zh_CN.po po/zh_TW.po Review URL: https://codereview.appspot.com/320300043 M po/LINGUAS M po/ca.po M po/cs.po M po/de.po M po/es.po M po/fr.po M po/hu.po M po/it.po M po/ja.po M po/nl.po M po/pl.po M po/pt_BR.po M po/ru.po M po/ta.po M po/uk.po M po/zh_CN.po M po/zh_TW.po commit 086fc542a7a9b1313198ae60355e711da05f5ed8 Author: fujiwarat Date: 2017-05-15 13:32:08 +0900 ui/gtk3: Fix to focus Emojier when type Control-Shift-e twice Some window managers, e.g. MATE, GNOME, Plasma desktops, does not give the keyboard focus when Emojier is lauched twice with Ctrl-Shift-e via XIEvent, if present_with_time() is not applied. Also fix to type some of ASCII emoji annotations likes :D Also update ibus-emoji.7.in to describe Control-f,b,n,p BUG=https://mail.gnome.org/archives/gtk-devel-list/2017-May/msg00026.html Review URL: https://codereview.appspot.com/325750043 M ui/gtk3/emojier.vala M ui/gtk3/emojierapp.vala M ui/gtk3/ibus-emoji.7.in M ui/gtk3/ibusemojidialog.h M ui/gtk3/panel.vala commit f6c2e2dd6f42a43fe973cf40701ee7d61f637287 Author: fujiwarat Date: 2017-05-10 11:50:08 +0900 ui/gtk3: Rename ibus-emoji.1.in to ibus-emoji.7.in R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/321900043 M tools/ibus.1.in M ui/gtk3/Makefile.am R100 ui/gtk3/ibus-emoji.1.in ui/gtk3/ibus-emoji.7.in commit 1159093dea3fdb8ceb62157f06b3560f8fc28378 Author: fujiwarat Date: 2017-05-09 13:58:02 +0900 Update favorites category automatically by selecting emoji When you commit an emoji with Emojier, Favorite category will be shown on GUI. Now a custom annotation also can be assigned to a favorite emoji by gsetting command. R=penghuang@google.com Review URL: https://codereview.appspot.com/312660043 M data/ibus.schemas.in M src/ibusemoji.h M ui/gtk3/emojier.vala M ui/gtk3/emojierapp.vala M ui/gtk3/ibusemojidialog.h M ui/gtk3/panel.vala commit 5f653d3102ada9139a2bc7504d6beaee1bc9984b Author: fujiwarat Date: 2017-05-09 13:54:01 +0900 ui/gtk3: Add ibus-emoji man mapge R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/323810043 M setup/ibus-setup.1.in M tools/ibus.1.in M ui/gtk3/Makefile.am A ui/gtk3/ibus-emoji.1.in commit edcb4a0259d2833904e7d1aac7c74e1aa49cea5b Author: fujiwarat Date: 2017-05-08 12:25:54 +0900 ui/gtk3: Hide emoji variants by default The emoji variants, i.e. skin colors and additional items, would not be used in most cases and it is nice to hide it by default. Now added GtkMenu and changed GtkWindow to GtkApplicationWindow for the menu. R=penghuang@google.com Review URL: https://codereview.appspot.com/322970043 M ui/gtk3/emojier.vala commit 0836c3ffd6764969dfaa9953f52a24c1cbf2c983 Author: fujiwarat Date: 2017-05-06 00:22:50 +0900 Support to match emoji annotations with partial string Now ibus-setup has a new tab of "Emoji" and it provides the options to choose a condtion and length to match emoji annotations partically. R=alexepico@gmail.com, penghuang@google.com Review URL: https://codereview.appspot.com/319700043 M data/ibus.schemas.in M setup/main.py M setup/setup.ui M ui/gtk3/emojier.vala M ui/gtk3/emojierapp.vala M ui/gtk3/panel.vala commit 2f73064d03481c9f34d278dd19d1a4427d6ecb27 Author: fujiwarat Date: 2017-04-28 13:10:03 +0900 Change to use Unicode Emoji files instead of EmojiOne files EmojiOne Json file have changed the file format since 3.0 [1] Now IBus migrated to use Unicode Emoji files since the EmojiOne file had been used for the emoji categories but it can be done with Unicode emoji-test.txt [2] Use Unicode Emoji 4.0 until 5.0 will be released officially. Unicode Emoji 5.0 is available but fonts does not support it yet. [1] https://github.com/Ranks/emojione/releases/tag/v3.0.0 [2] http://www.unicode.org/Public/emoji/4.0/ Review URL: https://codereview.appspot.com/321860043 M bindings/vala/Makefile.am M configure.ac M data/annotations/Makefile.am A data/annotations/en_ascii.xml M po/POTFILES.in M po/POTFILES.skip M src/Makefile.am M src/emoji-parser.c M src/ibusemoji.c M src/ibusemoji.h A src/ibusemojigen.h M ui/gtk3/Makefile.am M ui/gtk3/emojier.vala commit 61fa8eabd812a75b3cadd883ad4a4e92cf6877d3 Author: fujiwarat Date: 2017-04-25 12:10:00 +0900 ui/gtk3: Get emoji font size from gsettings If Emojier CLI does not specify the font size likes --font 'Noto Emoji Color Regular', get the default size from GSettings. R=Shawn.P.Huang@gmail.com, alexepico@gmail.com Review URL: https://codereview.appspot.com/317540043 M setup/setup.ui M ui/gtk3/emojier.vala M ui/gtk3/emojierapp.vala M ui/gtk3/panel.vala commit aba81ace1487bea57e80406413ae31cbb37ac7d2 Author: fujiwarat Date: 2017-04-20 12:10:47 +0900 ui/gtk3: Fix build failures Add-on fix to 290f786 if /usr/share/vala*/vapi/ibus-emoji-dialog*.vapi does not exist. R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/323780043 M ui/gtk3/Makefile.am commit c6cdf21c7364cbb1e848e44cab0bff270e432e82 Author: fujiwarat Date: 2017-04-19 12:16:37 +0900 ui/gtk3: Change modal dialog to focused dialog There are several problems with the current emoji modal dialog. If keyboard is grabbed on the popup window, the focus out/in events cannot be detected so the dialog cannot be closed by the focus changes. If mouse operation is supported on the popup window, need a custom GtkHeaderBar with extended handle.vala but the behavior is unclear. [1] Also current popup window has several extensions for the keyboard grab. If the closed button is needed on the popup window since the focus events cannot be detected, I think there is no merit to use the popup window. Now IBusEmojier simply uses the focused window. [1] https://mail.gnome.org/archives/gtk-app-devel-list/2017-April/msg00017.html R=Shawn.P.Huang@gmail.com, alexepico@gmail.com Review URL: https://codereview.appspot.com/316510043 M ui/gtk3/emojier.vala M ui/gtk3/emojierapp.vala M ui/gtk3/ibusemojidialog.h M ui/gtk3/panel.vala commit 4b8d7baf627fb3fc9e4dde74ba33a867091f95b7 Author: fujiwarat Date: 2017-04-18 11:44:52 +0900 ui/gtk3: Mark LANG and FONT as translatable strings BUG=https://github.com/ibus/ibus/issues/1920 Review URL: https://codereview.appspot.com/322880043 M ui/gtk3/emojierapp.vala commit 290f786b82158e7c087b81946727606cd3424e94 Author: fujiwarat Date: 2017-04-17 16:00:26 +0900 ui/gtk3: Fix build failures ibus-ui-emoijer needs to be built at last in ui/gtk3 Also fixed po/POTFILES.in for `make dist` Now I moved libibusemojidialog.so and IBusEmojiDialog-1.0.[gir|typelib] and ibus-emoji-dialog-1.0.vapi to noinst because now ibus-ui-emojier is available and they are private libraries. R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/312610043 M po/POTFILES.in M tools/Makefile.am M ui/gtk3/Makefile.am M ui/gtk3/emojierapp.vala commit da33672bc738889dcd4ebbec51cb3aa67567f70c Author: Peng Wu Date: 2017-04-13 12:40:22 +0900 tools: spawn the process of ibus-ui-emojier BUG= R=Shawn.P.Huang@gmail.com, takao.fujiwara1@gmail.com Review URL: https://codereview.appspot.com/324770043 Patch from Peng Wu . M bindings/vala/config.vapi M tools/Makefile.am M tools/main.vala commit 2f8982a0a4b25f98c969c09b81724e44efc41c27 Author: Peng Wu Date: 2017-04-10 15:57:48 +0900 Make ibus emojier dialog as an unique application Forgot to commit ui/gtk3/emojierapp.vala from the previous commit. BUG= R=takao.fujiwara1@gmail.com Review URL: https://codereview.appspot.com/319650043 Patch from Peng Wu . A ui/gtk3/emojierapp.vala commit 648f58a361ea1407f229ed1682486240cc2e5026 Author: Peng Wu Date: 2017-04-10 14:54:08 +0900 Make ibus emojier dialog as an unique application Because wayland doesn't support clipboard persistence, just hide the dialog; will show the emojier dialog again, when run it again. In next patches, ibus emoji command will just spawn the process of ibus-ui-emojier. BUG= R=takao.fujiwara1@gmail.com Review URL: https://codereview.appspot.com/320450043 Patch from Peng Wu . M po/POTFILES.in M po/POTFILES.skip M ui/gtk3/Makefile.am commit cb0a36c254dc7a96b2a984e715f96cc2ec32e2d5 Author: fujiwarat Date: 2017-04-03 12:24:27 +0900 src: Enable unicode_alt in EmojiOne json file EmojiOne json file has unicode_alt property which includes emoji modifer characters. Review URL: https://codereview.appspot.com/316420043 M src/emoji-parser.c M src/ibusemoji.c M src/ibusemoji.h M ui/gtk3/emojier.vala commit 8b6f9fa531aa9d9b5d6c0184b2294d071f920d7f Author: fujiwarat Date: 2017-03-30 12:08:39 +0900 ui/gtk3: Enable to type multiple code points on Emojier - Can type multiple Unicode characters with digits and Shift-space keys. E.g. "1f468 1f468 1f466" - Always show Unicode points of the selected emoji - Removed a function to commit an emoji by typing a digit char since it conflicts with digit annotations, code points but it had enabled with single digits only so not so useful. R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/321820043 M ui/gtk3/emojier.vala commit c3168d4701eb4e89094249abaa4f0f83ab24149b Author: fujiwarat Date: 2017-03-29 13:01:28 +0900 Fix IBusEmojiDialog_1_0_gir_LIBS for --as-needed LDFLAGS The order gets omitted libibus-1.0.la BUG=https://github.com/ibus/ibus/issues/1917 Review URL: https://codereview.appspot.com/324720043 M ui/gtk3/Makefile.am commit 164300758c70fd3a590788e038de31b6c53d458a Author: fujiwarat Date: 2017-03-28 12:15:26 +0900 data: Fix a typo R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/321800043 M data/ibus.schemas.in commit 0efb1c503d5901bbddcdb6fa73007b364ba4368d Author: fujiwarat Date: 2017-03-27 15:12:42 +0900 Move language setting from IBusEmojier to ibus-setup The language setting of emoji annotations now can be saved with ibus-setup. Implement `ibus emoji [--font|--lang|--help]` R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/323720043 M data/ibus.schemas.in M setup/Makefile.am A setup/emojilang.py M setup/main.py M setup/setup.ui M tools/main.vala M ui/gtk3/emojier.vala M ui/gtk3/ibusemojidialog.h M ui/gtk3/panel.vala commit bd7e0ba297f72ae1e2989743f2426c44df29f3ec Author: fujiwarat Date: 2017-03-21 12:56:23 +0900 Make more readable error messages if emoji xml files are missed Also Fix CONFIG_CLEAN_FILES for autoreconf R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/320750043 M configure.ac M src/Makefile.am M src/emoji-parser.c M ui/gtk3/Makefile.am commit 50e344afaffc29e626dbc27747a1aeee6cccafdf Author: fujiwarat Date: 2017-03-17 12:08:50 +0900 ui/gtk3: Enable strcasecmp to match emoji annotation Users can type capital annotations. Also shows emoji annotations in the status bar if the typing unicode point matches a emoji character. Review URL: https://codereview.appspot.com/314640043 M ui/gtk3/emojier.vala commit 58f6140f427815adc947a5bb5c7dea4f3e315ae8 Author: fujiwarat Date: 2017-03-15 11:52:39 +0900 ui/gtk3: Implement shortcut keys on emoji dialog - Implement Ctrl-f, Ctrl-b, Ctrl-n, Ctrl-p, Ctrl-h, Ctrh-e for cursor movements; forward, back, next, previous, head, end on emoji grid. - Implement Ctrl-a and Shift+arrow for text selection on emoji annotation. - Implement Ctrl-u to delete text on emoji annotation. - Implement to delete a selected text on emoji annotation. - Change to show page indices to candidate indices on emoji. - Sorted emoji categories. - Added timeout of m_enter_notify_enable = false to bring back mouse. R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/315700043 M ui/gtk3/emojier.vala commit ab6c38c192cdf22356cbf254b98fb5b3d9d9a680 Author: fujiwarat Date: 2017-03-15 11:48:24 +0900 client/x11: Add XSetIOErrorHandler() for GNOME3 desktop When log into GNOME3 desktop immediately after the system is booted, ibus-daemon is sometimes alive but ibus-x11 is dead after log out the session. Because gdk_x_io_error() is called as the callback of XSetIOErrorHandler() in gtk/gdk/x11/gdkmain-x11.c in ibus-x11. Now I assume the callback is called in logout. BUG=https://github.com/ibus/ibus/issues/1907 Review URL: https://codereview.appspot.com/319490043 M client/x11/main.c commit fbe3de1789c73a8a175a451b2a6b967f5d3c6514 Author: fujiwarat Date: 2017-03-13 12:08:21 +0900 src: Update emoji-parser to treat tts as emoji description unicode annotation xml files have a 'tts' attribute and seem it is used as the emoji descriptions instead of emoji annotations. This can show the translated descriptions. R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/319480043 M src/emoji-parser.c M src/ibusemoji.c M src/ibusemoji.h M ui/gtk3/emojier.vala commit c580845167b54ccab76d8b72bdc797ef8d64d554 Author: fujiwarat Date: 2017-03-13 11:58:06 +0900 ui/gtk3: Fix emoji text entry cusor position Focus on emoji text entry by default Remove internal text buffer and use Gtk.Entry buffer instead. Implement cusor left, right, home, end on emoji annotation preedit. Review URL: https://codereview.appspot.com/313710043 M ui/gtk3/emojier.vala commit 31ed31e5303c3946f53b035a63d76f5c1e3cd84a Author: fujiwarat Date: 2017-03-13 11:43:09 +0900 src: Fix ibus_emoji_dict_load() R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/320350043 M configure.ac M src/emoji-parser.c M src/ibusemoji.c commit 9dbea347050ae2ad79d1b53f2ad62a7a2cafadc6 Author: fujiwarat Date: 2017-03-09 12:45:20 +0900 ui/gtk3: Get emoji colors from the theme Get selected and normal text color from the theme. Implement to activate an emoji with mouse motion. Create back button on emoji language chooser dialog. Set row_homogeneous on emoji table. R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/319470043 M ui/gtk3/Makefile.am M ui/gtk3/candidatearea.vala M ui/gtk3/emojier.vala commit 7e477d5e0ffe19b6c52558c5b37fdd9cb82c097a Author: fujiwarat Date: 2017-03-09 11:31:21 +0900 tools: Fix `ibus emoji` SEGV when language is changed. BUG=rhbz#1430290 Review URL: https://codereview.appspot.com/317410043 M tools/main.vala commit 4e02857ccb41e8e42310e2b1372cdc9248da667c Author: fujiwarat Date: 2017-03-08 11:57:27 +0900 bus: Add error messages for g_dbus_server_new_sync BUG=https://github.com/ibus/ibus/issues/1901 Review URL: https://codereview.appspot.com/319460043 M bus/server.c commit 641c3cb5dac87fef392e926b35e1b660c0d34c15 Author: fujiwarat Date: 2017-03-07 00:56:19 +0900 Fix a build failure with --disable-emoji-dict BUG=https://github.com/ibus/ibus/issues/1908 Review URL: https://codereview.appspot.com/313690043 M tools/Makefile.am M tools/main.vala commit f7f3bc82e480b0bd03ac42ac63baa8748053a819 Author: fujiwarat Date: 2017-03-06 18:31:08 +0900 Release 1.5.15 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/319420043 M configure.ac commit c37989acffed8dc66a95deb8b113ac7a1d84e6ee Author: fujiwarat Date: 2017-03-06 18:14:26 +0900 Add 'ibus emoji' command for no ibus panel desktops This utility can be used on GNOME desktop which shows a gnome-shell icon instead of running ibus-ui-gtk3. R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/318640043 M Makefile.am M tools/Makefile.am M tools/main.vala A ui/gtk3/IBusEmojiDialog-1.0.metadata M ui/gtk3/Makefile.am M ui/gtk3/emojier.vala A ui/gtk3/ibus-emoji-dialog-1.0.deps A ui/gtk3/ibusemojidialog.h M ui/gtk3/panel.vala commit 13bf5037c43c6762c29de2038b6abe28d27c5103 Author: fujiwarat Date: 2017-03-06 14:05:24 +0900 setup: Set emoji preview text on font setting R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/317400043 M setup/main.py commit 02d99aa00cb4a26a2cfb6098ea27e763e9bb2daa Author: fujiwarat Date: 2017-03-05 18:11:28 +0900 Move emoji implementation from IBusEngineSimple to IBusPanel Currently emoji shortcut key is not customizable and there is no menu item to access emoji typing without shortcut key. Once implementation is moved to IBusPanel, the emoji typing is now avaible for every engine without modifying its codes. R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/317370043 M bus/inputcontext.c M bus/inputcontext.h M bus/panelproxy.c M configure.ac M data/ibus.schemas.in M po/POTFILES.in M po/POTFILES.skip M setup/main.py M setup/setup.ui M src/Makefile.am M src/emoji-parser.c M src/ibus.h A src/ibusemoji.c A src/ibusemoji.h M src/ibusenginesimple.c M src/ibuspanelservice.c M src/ibuspanelservice.h M src/ibusutil.c M src/ibusutil.h M ui/gtk3/Makefile.am A ui/gtk3/emojier.vala M ui/gtk3/keybindingmanager.vala M ui/gtk3/panel.vala commit 0a244817338c943ffe03cd5b6ecf094ffd156f80 Author: Eric R. Schulz Date: 2017-03-01 13:25:56 +0900 Fix memory leak in IBus.Bus.get_global_engine() Fix the memory leak by setting the transfer mode annotation to full. BUG=https://github.com/ibus/ibus/pull/1899 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/312520043 Patch from Eric R. Schulz . M src/ibusbus.h commit 993289f4667bed50e8d552870df6f05f1eaf5e35 Author: Marc-Antoine Perennou Date: 2017-02-27 14:29:48 +0900 bus: fix service file when --disable-xim is specified BUG=https://github.com/ibus/ibus/pull/1897 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/319390043 Patch from Marc-Antoine Perennou . M bus/Makefile.am M bus/org.freedesktop.IBus.service.in M configure.ac commit fcb90f7a96d7b1b6be5b7e274a0ebe3058207b50 Author: fujiwarat Date: 2017-02-20 12:00:14 +0900 ui/gtk3: Fix typo in switcher.get_input_context_path() R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/318590043 M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit b498ff571049bec2b3f3bf6f1747f0af18ff4764 Author: fujiwarat Date: 2017-02-13 12:19:45 +0900 ui/gtk3: Refactor to set panel icon Fix panel icon with icon_prop_key when use_global_engine is false. Also enhance to set engines when type Super+space quickly. R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/314450043 M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit b8f55532704e256832b50e96efa5821b960a20a1 Author: fujiwarat Date: 2017-02-06 13:36:50 +0900 ui/gtk3: Free normal_color in CandidateArea R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/314410043 M ui/gtk3/candidatearea.vala commit bdc83bcbe3c9f07a267499c297db12c68af82fa2 Author: fujiwarat Date: 2017-01-27 14:42:33 +0900 ui/gtk3: Refactor color of a selected candidate on lookup window Recenly 'background-color' CSS property does not indicate the actual background color in GTK 3.22 and IBus uses '-gtk-secondary-caret-color' CSS property instead. But I found every themes do not have '-gtk-secondary-caret-color' CSS property even if the latest GTK is used. Some themes, e.g. distro themes or third party themes, uses 'background-color' CSS property for the background color of the selected text. This patch compares the colors of the normal 'background-color' and the selected 'background-color' and in case they are different, uses the selected 'background-color', otherwise the selected '-gtk-secondary-caret-color'. Also now IBus checks the colors of a dummy GtkTextView rather than ones of GtkLabel on the lookup window because some themes do not configure the selected bacground color in GtkLabel. BUG=https://github.com/ibus/ibus/issues/1871 Review URL: https://codereview.appspot.com/314280043 M ui/gtk3/candidatearea.vala commit 371535b981e5f99deeab9437e49eb7209b1a561a Author: fujiwarat Date: 2017-01-20 18:51:42 +0900 util/IMdkit: Fix the range of memset() in i18nIc.c BUG=https://github.com/ibus/ibus/issues/1891 Review URL: https://codereview.appspot.com/320010043 M util/IMdkit/i18nIc.c commit aacf5adbba9b9b34a1ec07005e670d209513fb5b Author: fujiwarat Date: 2017-01-11 12:16:59 +0900 ui/gtk3: Fix panel CSS format for GTK 3.22 GtkCssProvider no longer works with the Pango format in GTK 3.22 and need to use the CSS format. BUG=https://github.com/ibus/ibus/issues/1879 Review URL: https://codereview.appspot.com/319960043 M ui/gtk3/panel.vala commit f80dcc978fdc9a3d7853434e86f4ee02c2a92b33 Author: fujiwarat Date: 2017-01-11 12:11:22 +0900 src: Avoid emoji typing during Unicode typing If 'sk' layout is used, digit keys need Shift key and Unicode typing of U+1AE requires Shift key after Ctrl-Shift-u. This patch does not enable the emoji typing with Ctrl-Shift-e during Unicode typing. BUG=rhbz#1403985 Review URL: https://codereview.appspot.com/311510043 M src/ibusenginesimple.c commit 52b7272d97a881a8a6c872e28c1970ec47cb4337 Author: Peng Wu Date: 2016-10-12 15:17:24 +0900 ui/gtk3: support scroll event in candidates panel When press scroll button of mouse on candidates, automatically cursor up/cursor down. BUG= R=takao.fujiwara1@gmail.com Review URL: https://codereview.appspot.com/302700043 Patch from Peng Wu . M ui/gtk3/candidatearea.vala M ui/gtk3/panel.vala commit faf5e3c56d746d2f171618d552cff9149bb1d952 Author: fujiwarat Date: 2016-10-06 15:37:25 +0900 src: Enable PageUp, PageDown, CandidateClick buttons with emoji lookup BUG=rhbz#1380691 Review URL: https://codereview.appspot.com/312760043 M src/ibusenginesimple.c commit 4d86e59d0245df6d3a6aa1a32cdf7702b6dc7f0d Author: fujiwarat Date: 2016-10-06 15:35:03 +0900 src: Enable to type digit to commit emoji on lookup window Enables to commit an emoji on the lookup window by a digit key. Before this patch, Ctrl-Shift-U, "11" shows emojis of 11 clock. After this patch, Ctrl-Shift-U, "11" commits an emoji of 1 clock. Probably Ctrl-Shift-U, "clock" can be a workaround. BUG=rhbz#1380690 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/309640043 M src/ibusenginesimple.c commit e795eda1a3b054e6fdc921bfe04c83733761905f Author: fujiwarat Date: 2016-10-06 15:28:24 +0900 src: Hide lookup table if emoji annotation does not hit If emoji annotation hits "aaa" but not "aaab", hide the lookup window with "aaab". Also hide the lookup window with Escape key. BUG=rhbz#1380675 Review URL: https://codereview.appspot.com/307400043 M src/ibusenginesimple.c commit af66ace771fc16a23e7a5841d2f0bd79789e009d Author: fujiwarat Date: 2016-09-14 13:34:44 +0900 Fix warning messages during panel resizes Move gtk_window_resize(). Seems calling gtk_window_resize() is not good during gtk_widget_get_preferred_width/height() is called. Review URL: https://codereview.appspot.com/308320043 M ui/gtk3/candidatepanel.vala M ui/gtk3/propertypanel.vala commit 708e5e51da696f42f34d2921c83455f1824ea40f Author: fujiwarat Date: 2016-09-09 17:48:20 +0900 Update translations Update po/LINGUAS po/de.po po/es.po po/fr.po po/mn.po po/pl.po po/zh_HK.po po/zh_TW.po R=shawn.p.huang@gmail.com Review URL: https://codereview.appspot.com/302610043 M po/LINGUAS A po/cs.po M po/de.po M po/es.po M po/fr.po A po/mn.po M po/pl.po M po/pt_BR.po M po/zh_HK.po M po/zh_TW.po commit ceb6a9b47deaa898d8151606831669a7446ad382 Author: fujiwarat Date: 2016-09-06 13:05:35 +0900 ui/gtk3: Fix radio buttons on Property Panel Use gtk_container_remove() instead g_object_unref() because if an widget has a parent, it's not destroyed and the signal is not sent to the parent since the parent was destroyed. R=shawn.p.huang@gmail.com Review URL: https://codereview.appspot.com/302650043 M ui/gtk3/propertypanel.vala commit 997e5cb1b100c6af267b8121445db1db7e580d5f Author: Eric R. Schulz Date: 2016-08-18 11:17:11 +0900 Fix GVariant leaks The expectation is that g_dbus_message_set_body() takes ownership of the GVariant, but this does not happen if the BusInputContext connection is NULL. Call g_variant_unref() in that case to free the memory. Alternatively, a GVariantBuilder could be used. BUG=https://github.com/ibus/ibus/pull/1872 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/307050043 Patch from Eric R. Schulz . M bus/inputcontext.c commit c3ceed40f644f9fb0517a27592b6fd022d518e34 Author: fujiwarat Date: 2016-08-05 12:36:16 +0900 Release 1.5.14 R=shawn.p.huang@gmail.com Review URL: https://codereview.appspot.com/306860043 M configure.ac commit 239d3630abcaf624e3bacc2c5d1075a77a24a4b1 Author: fujiwarat Date: 2016-08-04 11:28:32 +0900 Replace deprecated GSimpleAsyncResult with GTask since GLib 2.46 Review URL: https://codereview.appspot.com/304310043 M bus/engineproxy.c M bus/inputcontext.c M src/ibusbus.c commit 028624f0bb100ab2689ef059b3afd45ed89ca3f1 Author: fujiwarat Date: 2016-08-02 11:54:07 +0900 Fix Croatian language code in simple.xml R=shawn.p.huang@gmail.com Review URL: https://codereview.appspot.com/302320044 M engine/simple.xml.in commit eee7a132d686cb8d9c36c632523649745487b503 Author: fujiwarat Date: 2016-07-27 11:25:32 +0900 Fix make dist 'make dist' has different directories between builddir and srcdir. src/tests/runtest gets the builddir of ibus-memconf from the srcdir of memconf.xml and the builddir of ibus-engine-simple from the srcdir of simple.xml. bindings/pygobject/test-override-ibus.py runs IBus.Keymap.new() and gets the path of keymaps from IBUS_KEYMAP_PATH variable. bindings/vala/ibus-1.0.vapi needs to be cleaned by 'make distclean'. R=shawn.p.huang@gmail.com Review URL: https://codereview.appspot.com/305950043 M Makefile.am M bindings/pygobject/Makefile.am M bindings/vala/Makefile.am M src/ibuskeymap.c M src/tests/runtest commit 20068d9d0731b580d6d8218b97c482c0558149dd Author: fujiwarat Date: 2016-07-25 11:42:37 +0900 tests/ibus-engine-switch: Don't try to remove non-existing GSource ibus-engine-switch schedules an idle doing an engine switch, and also schedules a timeout after 1 microsecond which exits the main loop. Both of these callbacks will return FALSE, which detaches the associated GSource from the mainloop and destroys it. As the only way to exit the mainloop is when the timeout callback runs, we should not try to run g_source_remove(timeout_id) as it will already be gone, and this causes a warning. This commit reorders a bit to make the ordering between the idle and timeout more obvious, and it gets rid of the calls to g_source_remove() as they are needed. BUG=https://github.com/ibus/ibus/issues/1868 Review URL: https://codereview.appspot.com/103100044 M bus/Makefile.am M src/tests/ibus-engine-switch.c M src/tests/runtest commit f88c48750538eaaf7c7b182ba3763b45c2745074 Author: fujiwarat Date: 2016-07-20 11:43:49 +0900 Fix typo in configure.ac R=shawn.p.huang@gmail.com Review URL: https://codereview.appspot.com/303110043 M configure.ac commit 0ee1896a2b3e75494f8f9fd9d04c27436f0877b8 Author: fujiwarat Date: 2016-07-07 12:47:34 +0900 engine: Use annotations/en.xml from unocode.org but not emoji-list.html Downloading emoji-list would cause a different build by build site. Now save annotations/en.xml from unicode.org and get emoji.json from Emoji One. en.xml is used for Unicode annotations and emoji.json is used for aliases_ascii, e.g. ":)", and category, e.g. "people". BUG=https://github.com/ibus/ibus/issues/1865 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/299530044 A COPYING.unicode M Makefile.am M configure.ac M data/Makefile.am A data/annotations/Makefile.am A data/annotations/en.xml M ibus.spec.in M src/Makefile.am M src/emoji-parser.c commit 0ed644cd2b6c1d15bdba0d1c6d45d162b9b34806 Author: fujiwarat Date: 2016-06-23 11:52:48 +0900 engine: Add emoji-list.html Now we copied http://unicode.org/emoji/charts/emoji-list.html to http://ibus.github.io/files/ibus/emoji-list.html and download the file in the build time. We don't save emoji-list.html in the tarball because the file size is more than 5MB. We always don't get the latest emoji-list.html to avoid the build error. BUG=https://github.com/ibus/ibus/pull/1864 R=shawn.p.huang@gmail.com Review URL: https://codereview.appspot.com/298580043 M src/Makefile.am commit 160d3c975af91eea6b8271b757be769b8ceef98d Author: fujiwarat Date: 2016-06-21 18:10:21 +0900 engine: Implement Emoji typing with XKB engines Now Ctrl+Shift+e can convert an Emoji annotation to the Emoji characters likes Ctrl+Shift+u. The annotations are described as "Keywords" in the Unicode Emoji Data: http://www.unicode.org/emoji/charts/emoji-list.html 'emoji-parser' compiles 'emoji-list.html' and generates 'emoji.dict' Review URL: https://codereview.appspot.com/295610043 M configure.ac M src/Makefile.am A src/emoji-parser.c M src/ibusenginesimple.c M src/ibusutil.c M src/ibusutil.h commit a598ae29223d1ca25e76bf7d7de9703f63ea337e Author: fujiwarat Date: 2016-06-03 19:44:11 +0900 ui/gtk3: Fix panel CSS format for GTK 3.20 CSS node names have been changed since GTK 3.20 and the font size and widget color no longer work with the previous node names. BUG=https://github.com/ibus/ibus/issues/1856 Review URL: https://codereview.appspot.com/297380043 M ui/gtk3/candidatearea.vala M ui/gtk3/handle.vala M ui/gtk3/panel.vala commit 3ef21fef0135f7b4fe9611d201f15611734f6c51 Author: fujiwarat Date: 2016-06-03 11:52:29 +0900 client/gtk2: Fix SEGV with Wayland display Delete gdk_display_get_name() in GTK clients because ibus-daemon does not use gdk_display_get_name(). GdkX11Dislay and GdkX11Window does not work with Wayland. BUG=https://github.com/ibus/ibus/issues/1859 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/301760043 M client/gtk2/ibusimcontext.c M setup/main.py commit a186059edc48b22e4adfc1878bb5fd0ee60d4fe0 Author: fujiwarat Date: 2016-05-26 12:22:53 +0900 conf/gconf: Fix SEGV in ibus_config_gconf_get_values BUG=https://github.com/ibus/ibus/issues/1858 R=shawn.p.huang@gmail.com Review URL: https://codereview.appspot.com/300810043 M conf/gconf/config.c commit b210c0d8c601f4b458b4f06937303e9479466fec Author: Marc-Antoine Perennou Date: 2016-05-26 12:17:50 +0900 configure: don't hardcode pkg-config BUG=https://github.com/ibus/ibus/pull/1860 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/299150043 Patch from Marc-Antoine Perennou . M configure.ac commit 84c18f1d382548c52138822a11473d2dac79e485 Author: Rui Matos Date: 2016-05-25 11:21:09 +0900 Install a DBus service file With the transition to user scoped DBus sessions (vs. login sessions) there's a need to start ibus-daemon via DBus activation so that the process gets properly tracked and disposed of when the login session ends. Otherwise the ibus-daemon process lingers on and keeps the whole login session up. We already connect and own a well known name on DBus. The remaining missing piece is the DBus service file which we introduce here. BUG=https://github.com/ibus/ibus/pull/1853 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/295340043 Patch from Rui Matos . M bus/Makefile.am A bus/org.freedesktop.IBus.service.in commit 0432aa66b8728bc266da3c2cca84587bc44b3557 Author: Matthias Clasen Date: 2016-03-08 11:16:24 +0900 Don't warn if DISPLAY is not set This is normal under Wayland, and not worth warning about. The warnings disrupt unit tests in GNOME continuous, which treat warnings as fatal. BUG=https://github.com/ibus/ibus/pull/1844 R=shawn.p.huang@gmail.com Review URL: https://codereview.appspot.com/289430043 Patch from Matthias Clasen . M src/ibusshare.c commit 0229c57773144f6f78ed568a0afc1999679c7d51 Author: fujiwarat Date: 2016-02-22 17:38:30 +0900 Release 1.5.13 Review URL: https://codereview.appspot.com/290840043 M configure.ac commit b51c6200686d5494f317f8675763bad5cdd442b2 Author: Daiki Ueno Date: 2016-02-17 16:29:03 +0900 Add SetCursorLocationRelative D-Bus method We have SetCursorLocation D-Bus method which takes the absolute coordinates of the screen, while on Wayland the coordinates are relative to the current input window and there is no way to calculate the absolute coordinates. That makes it impossible for the panel to position the lookup table correctly. This patch adds a new D-Bus method, SetCursorLocationRelative, which takes the relative coordinates, so that the panel implementation (typically the same process of Wayland compositor) can use that information. The counterpart of this changes is at: https://bugzilla.gnome.org/show_bug.cgi?id=753476 Unlike SetCursorLocation, SetCursorLocationRelative is not delivered to engines, since it is not very useful for the engines without knowing the current input window (which is also not accessible from a different process on Wayland). Co-authored-by: Rui Matos BUG= R=takao.fujiwara1@gmail.com Review URL: https://codereview.appspot.com/290780043 . M bus/inputcontext.c M bus/panelproxy.c M bus/panelproxy.h M client/gtk2/ibusimcontext.c M src/ibusinputcontext.c M src/ibusinputcontext.h M src/ibuspanelservice.c M src/ibuspanelservice.h commit 97e28cc04b4601295b22a0aa8e9e21ed4e0758a1 Author: fujiwarat Date: 2016-02-10 11:41:34 +0900 src: Use cache file for compose table for launching time Save the cache files of compose files under $HOME/.cache/ibus/compose for the performance. Load a compose file with the following order: 1. $HOME/.config/ibus/Compose 2. $HOME/.config/gtk-3.0/Compose 3. $HOME/.XCompose 4. /usr/share/X11/locale/$locale/Compose Check the system compose files of "el_GR", "fi_FI", "pt_BR" only for the performance because other compose files just load "en_US" compose file. BUG=https://bugzilla.gnome.org/show_bug.cgi?id=721120 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/286040043 M configure.ac M src/Makefile.am M src/ibuscomposetable.c M src/ibuscomposetable.h M src/ibusenginesimple.c commit 706ba01504a0c48391360a236d7c7aa8e0057753 Author: fujiwarat Date: 2016-02-01 11:26:23 +0900 src: Refactor ibuscomposetable.c Save raw integers of Unicode instead of code strings. Use g_warning() instead of g_set_error(). BUG=https://bugzilla.gnome.org/show_bug.cgi?id=721120 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/282390044 M src/ibuscomposetable.c commit d5bf50cbaf8901c4d32c212c5fea31419e1b4fb7 Author: fujiwarat Date: 2016-01-29 12:44:49 +0900 src: Change guint to guint16 in ibusenginesimple.c IBusComposeTable and IBusComposeTableCompact use guint16 for the data. BUG=https://bugzilla.gnome.org/show_bug.cgi?id=721120 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/282390043 M src/ibusenginesimple.c M src/ibusenginesimpleprivate.h commit 7241f66b05344b0b7caf2f83a23aa248233a955a Author: fujiwarat Date: 2016-01-29 11:54:42 +0900 src: Unify duplicated check_compact_table() and check_algorithmically() Clean up the duplicated APIs, check_compact_table() and check_algorithmically(), in ibuscomposetable.c and ibusenginesimple.c R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/286930043 M src/Makefile.am M src/ibuscomposetable.c M src/ibuscomposetable.h M src/ibusenginesimple.c M src/ibusenginesimple.h A src/ibusenginesimpleprivate.h commit 4b87be94e4e515c0437ec3f6a7f0dc93f2e5a3fc Author: fujiwarat Date: 2016-01-20 13:30:07 +0900 Release 1.5.12 (#2) Fix a build failure with make check. Review URL: https://codereview.appspot.com/285910043 M Makefile.am commit 350140e2db5af88c05a4de8a13ce0589c057424e Author: fujiwarat Date: 2016-01-19 13:24:51 +0900 Release 1.5.12 Review URL: https://codereview.appspot.com/285130043 M Makefile.am M configure.ac commit 8bc47907c3292c1f4ec6b8f101ea936c928c877a Author: fujiwarat Date: 2016-01-19 13:15:37 +0900 Update translations Update bn.po ca.po zh_CN.po zh_HK.po R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/272450043 M po/bn.po M po/ca.po M po/zh_CN.po M po/zh_HK.po commit 3af58fae1710ed3baf800c59da1ab918089c2a9b Author: fujiwarat Date: 2016-01-15 11:23:56 +0900 engine: Change language code from ISO 639-2 to ISO 639-1 in simple.xml BUG=https://github.com/ibus/ibus/issues/1834 Review URL: https://codereview.appspot.com/283040043 M engine/Makefile.am A engine/iso639converter.py M engine/simple.xml.in M ui/gtk3/switcher.vala commit 49f3a73bd658c39311afcbf2dcc0acf9faa59ea9 Author: fujiwarat Date: 2016-01-14 11:36:37 +0900 setup: Fix PyGIWarning: GdkX11 was imported without specifying a version R=shawn.p.huang@gmail.com Review URL: https://codereview.appspot.com/285830043 M setup/main.py commit 3ebeb6540ddfc75aeafdf87ccd6e4ae986e3e78d Author: fujiwarat Date: 2015-11-04 11:21:46 +0900 panel: Fix the default position of property panel with dual monitors "_NET_WORKAREA" Atom returns a big screen size including every monitors. Use Gdk.Screen.get_monitor_workarea() instead. Review URL: https://codereview.appspot.com/277760043 M ui/gtk3/propertypanel.vala commit 4a8024b0a3e5670dc5ad88a26b90b0a9801efcca Author: Alexey Kotlyarov Date: 2015-11-04 11:18:50 +0900 panel: Constrain the candidate area to the current monitor bounds If the second monitor has the different size, lookup window on the second monitor could not get the right size. BUG=https://github.com/ibus/ibus/issues/1594 Review URL: https://codereview.appspot.com/267710043 Patch from Alexey Kotlyarov . M ui/gtk2/candidatepanel.py M ui/gtk3/candidatepanel.vala commit 1d678673e18e132ed53df32502b779b0a56314d5 Author: fujiwarat Date: 2015-09-08 13:01:37 +0900 ibus-daemon update user cache when user observed path is updated After the system registry cache is generated by root, the cache remembers the observed path exists in /root == '~' but if a user updates the user observed path, the observed path exists in '~' and ibus-daemon cannot get the updated mtime because the cache refers the root directory but not the user directory. The patch tries to save '~' instead of the actual home dir in the cache. BUG=https://github.com/ibus/ibus/issues/1815 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/261040043 M configure.ac M src/ibusobservedpath.c M src/ibusregistry.c commit c0ced65ea1298e860c571cd9151d81e620834132 Author: Marc-Antoine Perennou Date: 2015-09-01 11:20:16 +0900 check for x11 for the ui too if built with --enable-ui --disable-xim it currently fails because X11_LIBS is empty BUG=https://github.com/ibus/ibus/pull/1812 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/264020043 Patch from Marc-Antoine Perennou . M configure.ac commit 173af53099633fa18713ac45f9f64b50607f83ff Author: fujiwarat Date: 2015-08-14 11:24:15 +0900 Add terminator in NO_SNOOPER_APPS terminator connects "key-press-event" signal in VTE and receives the KeyPress events and copies the events to the multiple terminals. If IBus uses snooper and IBusIMContext returns true, terminator cannot receive the IME events because VTE does not export IME "commit" signal. After move terminator in NO_SNOOPER_APPS, terminator can receive the KeyPress events from "key-press-event" signal before IBusIMContext key_press_event() class method receives the events. BUG=https://github.com/ibus/ibus/issues/1802 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/260120043 M configure.ac commit 8954a6f5ae4dd73e8189f5d52a7a378e8698c988 Author: Hodong Kim Date: 2015-07-21 11:39:25 +0900 client/x11: Remove an unused variable BUG=https://github.com/ibus/ibus/pull/1808 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/256010044 Patch from Hodong Kim . M client/x11/main.c commit 8d5640669a72a551f2b47521c9b945c0a3ae9057 Author: fujiwarat Date: 2015-07-16 14:12:52 +0900 Release 1.5.11 Review URL: https://codereview.appspot.com/242580043 M bindings/vala/Makefile.am M configure.ac commit e00cb92df5f14dc8e6cc11056ebc4d7dbff91250 Author: fujiwarat Date: 2015-07-16 13:50:55 +0900 Update translations Update po/ar.po po/as.po po/bg.po po/bn.po po/bn_IN.po po/ca.po po/da.po po/de.po po/en_GB.po po/es.po po/et.po po/eu.po po/fa.po po/fr.po po/gu.po po/he.po po/hi.po po/hu.po po/ia.po po/it.po po/ja.po po/kn.po po/ko.po po/lv.po po/ml.po po/mr.po po/nb.po po/nl.po po/or.po po/pa.po po/pl.po po/pt_BR.po po/ru.po po/sr.po po/sr@latin.po po/ta.po po/te.po po/tg.po po/uk.po po/ur.po po/vi.po po/zh_CN.po po/zh_HK.po po/zh_TW.po Review URL: https://codereview.appspot.com/241700043 M po/ar.po M po/as.po M po/bg.po M po/bn.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/en_GB.po M po/es.po M po/et.po M po/eu.po M po/fa.po M po/fr.po M po/gu.po M po/he.po M po/hi.po M po/hu.po M po/ia.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/lv.po M po/ml.po M po/mr.po M po/nb.po M po/nl.po M po/or.po M po/pa.po M po/pl.po M po/pt_BR.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/tg.po M po/uk.po M po/ur.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit 05f112adaa743cda35265a79622fc373d2331428 Author: fujiwarat Date: 2015-07-16 13:33:17 +0900 Fix GIR warnings about XMLNode with g-ir-scanner Fix: ibusxml.h:62: Warning: IBus: ibus_xml_parse_file: return value: Unresolved type: 'XMLNode*' R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/255210043 M src/ibusxml.c M src/ibusxml.h commit 91bb4a074772835c2c61c0152c13886fb3f91369 Author: fujiwarat Date: 2015-07-13 17:58:30 +0900 Fix doc builds Generate: html/IBusEngineSimple.html Fix: ibuscomponent.h:137: Warning: IBus: "@Varargs" parameter is deprecated, please use "@..." instead: * @Varargs: the NULL-terminated arguments of the properties and values. ibuscomponent.h:83: Warning: IBus: GTK-Doc tag "Description:" has been deprecated: * description: Detailed description of component. ../../../src/ibusenumtypes.h:13: warning: Section ibusenumtypes is not defined in the ibus-sections.txt file. ../../../src/ibusenginesimple.h:39: warning: Section ibussimpleengine is not defined in the ibus-sections.txt file. ../../../src/ibusinternal.h:35: warning: Section ibusinternal is not defined in the ibus-sections.txt file. ../../../src/ibusattribute.h:138: warning: Parameter description for ibus_attribute_new::returns is not used from source code comment block. ../../../src/ibusattribute.h:161: warning: Parameter description for ibus_attribute_get_value::attr is missing in source code comment block. ../../../src/ibuscomponent.h:145: warning: Parameter description for ibus_component_new_varargs::... is missing in source code comment block. ../../../src/ibusconfig.h:95: warning: Parameter description for ibus_config_new::cancellable is missing in source code comment block. html/IBusBus.html:3540: warning: no link for: 'ibus-bus-get-property-async' -> (ibus_bus_get_property_async()). html/api-index-full.html:2989: warning: no link for: 'ibus-ibuscomposetable' -> (ibuscomposetable). html/IBusAttribute.html:500: warning: no link for: 'FIXME:CAPS' -> (FIXME). html/ibus-ibuskeys.html:286: warning: no link for: 'IBUS-KEY-Enter' -> (IBUS_KEY_Enter). html/IBusPanelService.html:574: warning: no link for: 'cursor-down-lookup-table' -> (cursor_down_lookup_table()). html/IBusEngine.html:1190: warning: no link for: 'cancel-hand-writing' -> (cancel_hand_writing()). Review URL: https://codereview.appspot.com/247680043 M docs/reference/ibus/Makefile.am M docs/reference/ibus/ibus.types M src/ibusattribute.h M src/ibusattrlist.h M src/ibusbus.h M src/ibuscomponent.h M src/ibusconfig.h M src/ibusconfigservice.h M src/ibusdebug.h M src/ibusengine.c M src/ibusengine.h M src/ibusenginedesc.h M src/ibusenginesimple.h M src/ibusenumtypes.h.template M src/ibusfactory.h M src/ibushotkey.h M src/ibusinputcontext.h M src/ibusinternal.h M src/ibuskeymap.h M src/ibuskeys.h M src/ibuslookuptable.h M src/ibusobject.h M src/ibusobservedpath.h M src/ibuspanelservice.c M src/ibuspanelservice.h M src/ibusproperty.h M src/ibusproplist.h M src/ibusproxy.h M src/ibusregistry.h M src/ibusserializable.h M src/ibusservice.h M src/ibusshare.h M src/ibustext.h M src/ibusutil.h M src/ibusxml.h commit 3397fcabe28f6cbf19b698954f5260fed11261c6 Author: fujiwarat Date: 2015-07-03 11:24:26 +0900 Use LC_CTYPE in IBusEngineSimple until g_get_language_names() is fixed Review URL: https://codereview.appspot.com/249490043 M src/ibusenginesimple.c commit 845528b91bbccd691d75c931b1dffa304424831b Author: fujiwarat Date: 2015-06-29 11:54:17 +0900 Replace code.google.com with github.com R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/252740043 M bus/ibus-daemon.1.in M client/x11/main.c M conf/dconf/dconf.xml.in M conf/gconf/gconf.xml.in M conf/memconf/memconf.xml.in M engine/simple.xml.in M ibus.spec.in M setup/ibus-setup.1.in M src/ibuscomponent.h M src/tests/ibus-compose.c M tools/ibus.1.in M ui/gtk3/gtkpanel.xml.in commit 70a3b80b39850c289c4e45f702bfc6c3743d6afc Author: fujiwarat Date: 2015-06-22 11:34:32 +0900 Add maintainers R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/249800043 M AUTHORS M ui/gtk3/panel.vala commit 23c45b970b195008a54884a1a9d810e7f8b22c5c Author: fujiwarat Date: 2015-06-19 13:57:35 +0900 Enable to show a property on ibus panel icon If an engine sets the value of icon-prop-key of IBusEngineDesc to a property name of IBusProperty.key, the panel will show the engine property in the icon with a delayed time. This way can show both the engine icon and the engine mode in one icon. Review URL: https://codereview.appspot.com/248950043 M data/ibus.schemas.in M src/ibusenginedesc.c M src/ibusenginedesc.h M ui/gtk3/panel.vala commit 7fd6077f19a5a39cdcd9c7fde0d9c8234ae5592e Author: fujiwarat Date: 2015-06-15 11:19:28 +0900 Support vertical writing with IBUS_INPUT_HINT_VERTICAL_WRITING GTK_INPUT_HINT_VERTICAL_WRITING has been supported in gtk 3.18 Put the vertical lookup table at the left top of the cursor position in case of the vertical mode. Also the gtk client tries to get the character width not to overlap the character when the client window is moved to the screen left. BUG=https://code.google.com/p/ibus/issues/detail?id=1780 Review URL: https://codereview.appspot.com/242140043 M src/ibustypes.h M ui/gtk3/candidatearea.vala M ui/gtk3/candidatepanel.vala M ui/gtk3/panel.vala commit bd7673e73c2a8c54d2a827603a960d76dab7be1b Author: fujiwarat Date: 2015-06-12 11:43:56 +0900 Do not put lookup window at the minus position tweetdeck.twitter.com seems has hidden GdkWindow and does not provide the positive cursor position. BUG=https://github.com/ibus/ibus/issues/1801 Review URL: https://codereview.appspot.com/246010043 M ui/gtk3/candidatepanel.vala commit b0f2536b58dff885fa887230909718a69b571053 Author: fujiwarat Date: 2015-06-05 15:21:44 +0900 s/code.google.com/github.com/ in docs Review URL: https://codereview.appspot.com/241190043 M README M docs/reference/ibus/ibus-docs.sgml.in M setup/ibus-setup.1.in M setup/setup.ui M ui/gtk3/panel.vala commit 7c865d0d396a207e34f834a503410fca80911794 Author: fujiwarat Date: 2015-06-03 16:44:47 +0900 Delete gnome-do from NO_SNOOPER_APPS BUG=https://code.google.com/p/ibus/issues/detail?id=1433 R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/243820043 M configure.ac commit 64b8609b5f0f7e62e4730769b52eefd881a8cc8b Author: fujiwarat Date: 2015-05-25 11:00:57 +0900 ibus-ui-gtk3: radio and check menu items work with GTK 3.16 GTK 3.16 has cleared the radio buttons' state in gtk_radio_menu_item_set_group(): https://git.gnome.org/browse/gtk+/commit/?id=955aed9227 BUG=https://code.google.com/p/ibus/issues/detail?id=1784 TEST=ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/240100043 M ui/gtk3/property.vala commit b58351ec2f7c057dcfe0aff883064039702a56d7 Author: fujiwarat Date: 2015-05-22 11:37:11 +0900 Set sync process_key_event in ibus-x11 If X11 client application spend time during XNextEvent(), e.g. sleep(1), under async process_key_event(), X11 does not keep the event order. I don't know why the event order is broken but now set the sync mode. BUG=https://code.google.com/p/ibus/issues/detail?id=1697 TEST=client/x11/ibus-x11 Review URL: https://codereview.appspot.com/240860043 M client/x11/main.c commit 7ecbccc7164e1ad1c1d46f51d29f7be9cbec5d13 Author: fujiwarat Date: 2015-05-21 14:12:22 +0900 Enable null return in gobject-introspection TEST=src/IBus.gir bindings/vala/ibus.vapi Review URL: https://codereview.appspot.com/236410043 M engine/main.vala M src/ibusfactory.c M src/ibusservice.h M ui/gtk3/indicator.vala commit 0f9ea3d82a95f557acbe0e538a12dfd2f4ecd9c1 Author: fujiwarat Date: 2015-05-21 11:06:02 +0900 Fix SEGV of ibus-x11 on wayland In case that ibus-x11 is built with gtk3, GdkDisplay can be GdkWaylandDisplay but not GdkX11Display so GDK_DISPLAY_XDISPLAY() and GDK_WINDOW_XID() does not work in wayland. TEST=client/x11/ibus-x11 Review URL: https://codereview.appspot.com/234590043 M client/x11/main.c commit 85f5433c223118fa8f7e4f4bceafa372d8f1e880 Author: fujiwarat Date: 2015-05-21 11:00:20 +0900 Use GLib.Idle.add() when ibus-engine-simple loads compose tables TEST=engine/ibus-engine-simple Review URL: https://codereview.appspot.com/240820043 M engine/Makefile.am M engine/main.vala M src/ibuscomposetable.c M src/ibusenginesimple.h commit 7ae585ac21db4dfac8989887e1a5f97fb863fa17 Author: fujiwarat Date: 2015-05-18 11:54:38 +0900 Load locale compose files dynamically. $HOME/.XCompose is used for the customization of compose files. Now the static system locale data is dropped and load /usr/share/X11/locale/$LOCALE/Compose dynamically besides .XCompose. BUG=https://code.google.com/p/ibus/issues/detail?id=1728 TEST=src/libibus.so src/tests/ibus-compose engine/ibus-engine-simple Review URL: https://codereview.appspot.com/232440044 D bindings/vala/ibus-private.vapi M engine/Makefile.am M engine/main.vala D engine/test-compose.vala M src/Makefile.am R051 src/gencomposetable.c src/ibuscomposetable.c M src/ibuscomposetable.h M src/ibusenginesimple.c M src/ibusenginesimple.h M src/keyname-table.h M src/tests/Makefile.am A src/tests/ibus-compose.c M src/tests/runtest commit 55d62a172dc8776593da484399e2bd66d3d9f361 Author: fujiwarat Date: 2015-05-12 11:19:07 +0900 setup: Fix deprecated APIs since GTK 3.14 GtkAlignment and GtkMisc have been no longer available since GTK 3.14 and use gtk_widget_set_margin_*(). gtk_widget_set_margin_[start|end]() are new in GTK 3.12 so still use gtk_widget_set_margin_[left|right]() TEST=setup Review URL: https://codereview.appspot.com/226510043 M setup/setup.ui commit 1a45642e4e152516dc863717f13eb031138a3978 Author: fujiwarat Date: 2015-05-01 11:42:41 +0900 Update xinput-ibus to check Qt5 libraries besides Qt4 ones Now KDE5 is official and ibus-qt is not required since ibus-qt is used for Qt4. NOT_RUN=gnome3 is a variable for imsettings since gnome-shell runs ibus-daemon directly. BUG=rhbz#1217410 TEST=xinput-ibus Review URL: https://codereview.appspot.com/237810043 M xinput-ibus commit ffdcc6cd1368143b77e6f535e90974651575b02e Author: fujiwarat Date: 2015-04-30 11:10:09 +0900 Fix to get X11 display name on GTK3 applications in GNOME Wayland gdk_display_get_name() returns "Wayland" in GTK 3.16 but ibus-daemon uses DISPLAY variable for ibus_get_address() at present. https://git.gnome.org/browse/gtk+/tree/gdk/wayland/gdkdisplay-wayland.c#n332 BUG=https://code.google.com/p/ibus/issues/detail?id=1774 TEST=client/gtk3/im-ibus.so Review URL: https://codereview.appspot.com/229140045 M client/gtk2/ibusimcontext.c commit f6ba337abc2bad9f40aea89b6c38564c982031fe Author: Hodong Kim Date: 2015-04-28 11:32:56 +0900 Fix typo in util/IMdkit/IMdkit.h and Xi18n.h BUG=https://github.com/ibus/ibus/pull/20 TEST=util/IMdkit/libIMdkit.la Review URL: https://codereview.appspot.com/232980043 Patch from Hodong Kim . M util/IMdkit/IMdkit.h M util/IMdkit/Xi18n.h commit 5d9109b3c56bca60be441ad286688467c67664c8 Author: fujiwarat Date: 2015-04-21 11:26:04 +0900 Fix to show keyboard shortcuts in ibus-setup. BUG=http://code.google.com/p/ibus/issues/detail?id=1771 TEST=setup Review URL: https://codereview.appspot.com/233720043 M setup/keyboardshortcut.py commit c98f15629054cad791a4adb21735ee3797601aa5 Author: fujiwarat Date: 2015-04-15 10:22:21 +0900 Stop DBus warnings during restarting ibus-daemon ibus-ui-gtk3 outputs some warnings when restart ibus-daemon because some dbus metods are sent before dbus is closed. TEST=src/libibus.so ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/226140043 M src/ibusbus.c M ui/gtk3/panel.vala commit 4d49a664b9605690a6d0f7da6a0e21c92fb67028 Author: Marc-Antoine Perennou Date: 2015-04-13 11:59:26 +0900 xim: use gtk3 TEST=client/x11/ibus-x11 Review URL: https://codereview.appspot.com/225990043 Patch from Marc-Antoine Perennou . M client/x11/Makefile.am M client/x11/gdk-private.c M client/x11/main.c M configure.ac commit 25593ed7248b19ef1d3a0e1d75da8f3d26321bca Author: fujiwarat Date: 2015-04-13 11:55:05 +0900 ibus-ui-gtk3: Do not change buffered CairoSurface data twice in KDE5 Indicator.set_cairo_image_surface_full() receives the buffered CairoImageSurface and the data should not be modified in the API because the same data could be received twice. TEST=ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/224340043 M ui/gtk3/indicator.vala M ui/gtk3/panel.vala commit cb93cab84beea2074502b04580d33e51587da83e Author: fujiwarat Date: 2015-04-09 15:20:56 +0900 ibus-ui-gtk3: Support language icon in KDE5. TEST=ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/229740043 M ui/gtk3/indicator.vala M ui/gtk3/notification-item.xml M ui/gtk3/panel.vala commit 90252fa952da2b9a4a33e6f2c33f652d3e9cbbee Author: fujiwarat Date: 2015-04-03 13:01:15 +0900 Update translations. Update po/ca.po po/es.po po/pl.po po/uk.po Review URL: https://codereview.appspot.com/217680043 M po/ca.po M po/es.po M po/pl.po M po/uk.po commit 35d035bfc48e20eecb3b3b3b14712d73c5fc027b Author: fujiwarat Date: 2015-04-02 11:26:24 +0900 ibus-ui-gtk3: Enable absolute path of engine icon in KDE5 plasma-workspace 5.2 supports the icon full path. Now the build checks if qtbase-devel is 5.4 or later since there is no way to check the version of plasma-workspace. BUG=https://github.com/ibus/ibus/pull/17 TEST=ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/217310044 M configure.ac M ui/gtk3/Makefile.am M ui/gtk3/panel.vala commit cc88075ddae038f90039d58147bb3c9d7eb08364 Author: Hodong Kim Date: 2015-04-02 11:18:57 +0900 Fix compile error in client/x11/Makefile BUG=https://github.com/ibus/ibus/pull/18 TEST=client/x11/Makefile Review URL: https://codereview.appspot.com/217590043 Patch from Hodong Kim . M client/x11/Makefile.am commit 020bd45eda9e3a3a2836122fbe0437cafb71f163 Author: fujiwarat Date: 2015-04-01 11:42:34 +0900 ibus-ui-gtk3: Draw gray color on PropertyPanel handle Users can move the position of IBus PropertyPanel with the mouse but currently it is too hard to find the handle on the panel. Now the handle is drawn by the gray color for the visibility. TEST=ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/219520043 M ui/gtk3/handle.vala commit eb4ffa1d9aeccf31318afd1d24cbcbbefa79337b Author: fujiwarat Date: 2015-03-31 11:56:05 +0900 Put PropertyPanel at bottom right when desktop is KDE Monitor _NET_WORKAREA atom because PropertyPanel runs before KDE5 panel runs. Allocate button sizes on PropertyPanel correctly for KDE5. TEST=ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/220500043 M ui/gtk3/propertypanel.vala commit 02156038217e41ebd90e3d1ed4bb88b912a15a06 Author: fujiwarat Date: 2015-03-30 11:07:42 +0900 I18N for IBus engine about dialog in ibus-setup TEST=setup Review URL: https://codereview.appspot.com/219400043 M setup/engineabout.py commit 8b187598215e3af0481e0f9415fe6a21db682e6b Author: fujiwarat Date: 2015-03-25 13:55:50 +0900 I18N for engine longnames on ibus-setup New API ibus_get_untranslated_language_name(). Call bindtextdomain() for each textdomains. TEST=setup Review URL: https://codereview.appspot.com/218760043 M setup/enginedialog.py M setup/enginetreeview.py M setup/main.py M src/ibusutil.c M src/ibusutil.h M ui/gtk2/i18n.py M ui/gtk2/main.py commit 4a4bd5fd0cac63b73464039896df123efd372d4a Author: fujiwarat Date: 2015-03-18 13:47:07 +0900 Change ranks for minor keymaps in simple.xml TEST=engine/simple.xml Review URL: https://codereview.appspot.com/217900043 M engine/simple.xml.in commit f32e98fdacf50af70fe1e3198463fc75d9ead727 Author: Albert Veli Date: 2015-03-12 12:12:22 +0900 Add Swedish svdvorak in simple.xml TEST=engine/simple.xml Review URL: https://codereview.appspot.com/215730043 Patch from Albert Veli . M engine/simple.xml.in commit 0ba6452740ec6e76344afaa2a9887566d0b62a4d Author: Peng Wu Date: 2015-03-09 13:36:58 +0900 Add ibus_keyval_convert_case and ibus_keyval_to_upper/lower methods In some input method setup dialog, customization of shortcut keys are supported. But in python Gtk+, when grab the shortcut key, the gdk_keyval_to_lower method will be used. This patch adds ibus_keyval_convert_case and ibus_keyval_to_upper/lower methods, so ibus-libpinyin can drop the Gdk 3.x C++ dependency. BUG=https://code.google.com/p/ibus/issues/detail?id=1766 TEST= Review URL: https://codereview.appspot.com/213760043 Patch from Peng Wu . M src/ibuskeynames.c M src/ibuskeys.h commit 49ee54f83471542447e1121be15c27ff5d86600b Author: Colin Walters Date: 2015-02-27 11:32:41 +0900 dconf: Work around using dbus development builds and /etc/machine-id Recent DBus changed the way it reads /etc/machine-id to be more strict, and it turns out that this breaks the use of dbus-launch here. The *correct* fix is to use `dbus-run-session`, but not everyone has that yet. This is a quick hack that keeps the build going. BUG=https://github.com/ibus/ibus/pull/16 TEST=data/dconf/00-upstream-settings Review URL: https://codereview.appspot.com/209810043 Patch from Colin Walters . M data/dconf/make-dconf-override-db.sh commit db260a6f1f4ed0f6faba72cbb0d59c01799a319c Author: fujiwarat Date: 2015-02-25 12:56:28 +0900 Release 1.5.10 Review URL: https://codereview.appspot.com/199620043 M configure.ac commit 211483eae9cec8c4762dbb6714264084dc774c75 Author: fujiwarat Date: 2015-02-25 12:53:10 +0900 Update translations Update bn_IN.po ca.po es.po ja.po ko.po ml.po nl.po zh_TW.po Review URL: https://codereview.appspot.com/202150044 M po/bn_IN.po M po/ca.po M po/es.po M po/ja.po M po/ko.po M po/ml.po M po/nl.po M po/zh_TW.po commit aab56c25356e3d036db8d3ffcef272a2b69c17d3 Author: fujiwarat Date: 2015-02-19 19:37:55 +0900 Add ibus panel icon for plasma-desktop in KDE5 plasma-desktop does not provide notification area for GtkStatusIcon (QSystemTrayIcon too). KDE5 provides AppIndicator or KStatusNotifierItem. KStatusNotifierItem uses QT5 code and C++. AppIndicator is an instance using dbus methods of KStatusNotifierItem and it supports GTK3. This implements the dbus method names directly so that activate menu is supported. http://blog.martin-graesslin.com/blog/2014/06/where-are-my-systray-icons/ https://lists.fedoraproject.org/pipermail/devel/2014-June/199782.html http://comments.gmane.org/gmane.comp.kde.devel.core/81971 BUG=https://code.google.com/p/ibus/issues/detail?id=1749 TEST=ui/appindicator/ibus-ui-appindicator Review URL: https://codereview.appspot.com/189680044 M configure.ac M src/ibusservice.c M ui/gtk3/Makefile.am A ui/gtk3/indicator.vala A ui/gtk3/notification-item.xml A ui/gtk3/notification-watcher.xml M ui/gtk3/panel.vala commit e6c883269e00e2432109c639d696491034dde5d5 Author: fujiwarat Date: 2015-02-03 12:30:56 +0900 Release registry observed_paths and components if they are broken Registry caches might be broken in a disk. BUG=rhbz#1187956 TEST=src/libibus.so Review URL: https://codereview.appspot.com/200980043 M src/ibusregistry.c commit 38d3c5ccdfa53cb4028e1e03bb877494035cb5a8 Author: fujiwarat Date: 2015-01-06 13:46:14 +0900 gtk clients do not lose focus when chrome popup window takes the focus Do not call gtk_im_context_focus_out() in ibus_im_context_focus_in() for a workaround because chrome popup window does not release the focus. BUG=rhbz#1136623 TEST=client/gtk2/im-ibus.so Review URL: https://codereview.appspot.com/187710043 M client/gtk2/ibusimcontext.c commit 83451e476b5ec98aa38e333038077f9e5b2b087d Author: fujiwarat Date: 2015-01-06 12:03:07 +0900 Run ibus_bus_preload_engines_async 30 seconds later in ibus-ui-gtk3 Make sure to run the primary ibus engine at first to avoid the duplicated IO. TEST=ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/187700043 M ui/gtk3/panel.vala commit 1b668f667eaef08dfbbbdf04a0865ea086f4250a Author: fujiwarat Date: 2015-01-06 11:59:05 +0900 Increase dbus timeout to 15 seconds When log into XFCE session, ibus panel sometimes fails to run the primary ibus engine due to 5 seconds of the timeout. It could happen when I open gnome-terminal during launching ibus-daemon. TEST=bus/ibus-daemon, ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/192940043 M bus/global.c M bus/ibusimpl.c M bus/main.c M src/ibusshare.c commit 576ebc3633aa1fb3076ffac031255c3da4e2cd09 Author: Klemens Baum Date: 2014-12-18 16:27:23 +0900 IMdkit: Track window property offsets correctly The XIM specification requires that XIM tranports over 20 bytes in size be transferred via window properties. The sender calls XChangeProperty with PropModeAppend, and instructs the recipient via ClientMessage to call XGetWindowProperty with delete set to True. Naive implementations exhibit a race condition because the receiver could have written more data in the meantime, and XGetWindowProperty only deletes the property when bytes_after_return is zero. If bytes_after_return is non-zero, it is necessary to use an offset when reading from the property again. To ensure that the property data does not grow indefinitely, Xlib recycles 21 Atoms in round-robin fashion. Because the XIM specification does not limit the number of Atom names of the form "_clientXXX" to be used for data transfer over window properties, an XIM server should be able to keep of track any number of Atoms, remembering the offset into each property. This patch implements correct tracking of property offsets. Signed-off-by: Klemens Baum Reviewed-by: Keith Packard rhbz#1175595 BUG=https://code.google.com/p/ibus/issues/detail?id=1751 TEST=client/x11/ibus-x11 Review URL: https://codereview.appspot.com/176190044 Patch from Klemens Baum . M util/IMdkit/Makefile.am M util/IMdkit/Xi18n.h A util/IMdkit/i18nOffsetCache.c M util/IMdkit/i18nUtil.c M util/IMdkit/i18nX.c commit 8f471ce138a9dc10ab5b1e0c716bb48ca36fe12a Author: Doug Rintoul Date: 2014-12-08 12:52:00 +0900 Show language rather than layout in xkb panel icon BUG=https://code.google.com/p/ibus/issues/detail?id=1753 TEST=ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/184840043 Patch from Doug Rintoul . M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit 097715746da0f56b8b8c3ddae2da3442032bff0c Author: Rui Matos Date: 2014-12-05 20:25:44 +0900 Carry current context content type into fake context when switching When focus moves out of a context to the fake context we should keep the content type properties as they were in the focused out context. This allows panel implementations to show the proper UI while input focus moves away temporarily from a text entry. E.g. a password entry is focused and the user clicks on the panel UI. At this point ibus switches the currently focused context to the fake context and emits set-content-type with the fake context properties which are empty and thus the panel reacts to it. This isn't the intended behavior though since, from a user POV, the password entry is still the context that will be getting text input when the panel UI gets dismissed. R=shawn.p.huang@gmail.com BUG=https://bugzilla.gnome.org/show_bug.cgi?id=730628 Review URL: https://codereview.appspot.com/176260043 Patch from Rui Matos . M bus/ibusimpl.c M bus/inputcontext.c M bus/inputcontext.h commit f69ddc3952971c5599c92aee3dc1de6017d07f3c Author: Peng Wu Date: 2014-12-05 11:41:08 +0900 Fixes ibus_keyval_name method in c++ binding Add G_BEGIN_DECLS and G_END_DECLS macros in src/ibuskeys.h BUG= Review URL: https://codereview.appspot.com/185850043 Patch from Peng Wu . M src/ibuskeys.h commit a7abce698f40e60275c46f05967e8cc369769e4b Author: Peng Wu Date: 2014-11-19 18:10:05 +0900 Fixes ibus_engine_update_lookup_table_fast method gnome shell needs the previous page and next page to correctly show the page up/down arrows, send three pages instead of one page. URL: https://bugzilla.gnome.org/show_bug.cgi?id=703020 BUG= Review URL: https://codereview.appspot.com/164540045 Patch from Peng Wu . M src/ibusengine.c commit de3541d2a26c673f27c068559f6d363064e03760 Author: fujiwarat Date: 2014-11-13 11:28:43 +0900 Remove "Release" modifiers key on ibus-setup. BUG=https://code.google.com/p/ibus/issues/detail?id=1748 TEST=setup Review URL: https://codereview.appspot.com/167570043 M setup/keyboardshortcut.py commit e2507263817926ceb97511da3d617934d4b73443 Author: Osamu Aoki Date: 2014-11-13 11:23:38 +0900 ibus-setup tries C since en_US.UTF-8 is not installed in Debian by default. BUG=https://code.google.com/p/ibus/issues/detail?id=1747 TEST=setup Review URL: https://codereview.appspot.com/166420043 Patch from Osamu Aoki . M setup/enginecombobox.py M setup/enginedialog.py commit bb818e438599f080a0cffb0b7573d9a646cf3b1a Author: fujiwarat Date: 2014-10-28 11:28:46 +0900 Fix not to SEGV ibus-ui-gtk3 with wrong 'preload-engines' value. Fedora internal patch could save engines from the result of 'setxkbmap -query' but they do not exist in simple.xml likes 'xkb:cn::chi' while now the current implementation converts those engines to 'xkb:us::eng'. BUG=https://code.google.com/p/ibus/issues/detail?id=1744 TEST=ui/gtk3 Review URL: https://codereview.appspot.com/158640043 M ui/gtk3/panel.vala commit ab0be905a3c007b5ddec11ceada058879eca3b5c Author: fujiwarat Date: 2014-10-01 16:23:54 +0900 Updated translations. Updated gu.po kn.po mr.po ta.po te.po Review URL: https://codereview.appspot.com/151850043 M po/gu.po M po/kn.po M po/mr.po M po/ta.po M po/te.po commit f33e19bec6ab7d1a6133894c86fdeb5a81ce11f1 Author: fujiwarat Date: 2014-10-01 16:21:02 +0900 Fix to lose a focus when move the focus from the delayed focus-in/out. Some applications likes google-chrome URL entry could have the delayed focus-in and focus-out events and ibus fails to get the new focus. BUG=rhbz#919863, rhbz#1136623 Review URL: https://codereview.appspot.com/7725045 M bus/inputcontext.c commit 6c10ce4ee5d3b8a62879d559834d5a4fae242eef Author: fujiwarat Date: 2014-09-16 11:49:04 +0900 Release 1.5.9 Review URL: https://codereview.appspot.com/141950044 M configure.ac commit 86513b1ac9f6c3765df1aca8cd266aebba424388 Author: fujiwarat Date: 2014-09-16 11:44:34 +0900 Update translations. Update as.po ko.po pl.po Review URL: https://codereview.appspot.com/141980043 M po/as.po M po/ko.po M po/pl.po commit 6dcb2dd20d2ee3abd6e26f2aac7666bfedf352df Author: fujiwarat Date: 2014-09-08 12:03:40 +0900 Fix compose keys in French layout bepo variant. fr(bepo) sends dead_currency with Shift+AltGr+e and ibus should send currency with dead_currency+dead_currency but gtkimcontextsimpleseqs.h was not sorted in the descending order and failed to get dead_currency. Also need to add dead_stroke and dead_belowcomma for AltGr+l and Shift+AltGr+Cedilla BUG=https://code.google.com/p/ibus/issues/detail?id=1742 TEST=src/libibus.so Review URL: https://codereview.appspot.com/135470043 M src/gtkimcontextsimpleseqs.h M src/ibusenginesimple.c commit a78c0b8cb379a0799b1a28450af8ee9d07016709 Author: fujiwarat Date: 2014-09-03 14:09:33 +0900 Do not fail ibus-setup when en_US.UTF-8 is not installed. BUG=https://code.google.com/p/ibus/issues/detail?id=1740 TEST=setup Review URL: https://codereview.appspot.com/136080043 M setup/enginedialog.py commit 2e8de03a949bf1a7dabe8217d42017bf75685b1a Author: fujiwarat Date: 2014-08-07 11:45:00 +0900 Enable preedit color on external preedit window with x11 applications. BUG=http://code.google.com/p/ibus/issues/detail?id=1731 TEST=ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/119480043 M ui/gtk3/candidatepanel.vala commit 78dfe648c736d62921c77f2de931898762409b0e Author: fujiwarat Date: 2014-07-24 13:00:40 +0900 Release 1.5.8 Review URL: https://codereview.appspot.com/113280043 M configure.ac commit 54e01d4343766467269e0d0cb8b6f208bbb35c4c Author: fujiwarat Date: 2014-07-24 12:58:50 +0900 Update translations. Update ja.po Review URL: https://codereview.appspot.com/118890043 M po/ja.po commit 3e6178c04869cceba3e5d681c9827ab54098f3b4 Author: fujiwarat Date: 2014-07-18 13:00:50 +0900 Enhance UI to add engines on ibus-setup BUG=rhbz#803583 TEST=setup Review URL: https://codereview.appspot.com/118830043 M po/POTFILES.in M setup/Makefile.am A setup/enginedialog.py M setup/enginetreeview.py M setup/main.py commit 130d3108902ed3e7c61930e3a24ee957c3d3e658 Author: fujiwarat Date: 2014-07-17 12:41:36 +0900 Fix deprecated gtk3 GtkMisc, GtkAlignment and vala Gdk.X11Display gtk 3.13.4 warns GtkMisc and GtkAlignment vala 0.24 warns Gdk.X11Display https://git.gnome.org/browse/gtk+/commit/?id=ec0a60a248 https://git.gnome.org/browse/gtk+/commit/?id=04703689b8 https://git.gnome.org/browse/vala/commit/?id=b65e3dc87c TEST=make ui/gtk3 Review URL: https://codereview.appspot.com/114820044 M ui/gtk3/candidatearea.vala M ui/gtk3/candidatepanel.vala M ui/gtk3/keybindingmanager.vala M ui/gtk3/propertypanel.vala M ui/gtk3/switcher.vala commit 47a6b86f197918147693a7b4774d02a287950e6a Author: fujiwarat Date: 2014-07-14 18:00:51 +0900 Update translations. Update es.po fr.po ja.po ko.po pl.po pt_BR.po uk.po zh_TW.po Review URL: https://codereview.appspot.com/108480043 M po/es.po M po/fr.po M po/ja.po M po/ko.po M po/pl.po M po/pt_BR.po M po/uk.po M po/zh_TW.po commit 9b2004efcd26e11bbd56cf51656fe326fc11be8e Author: fujiwarat Date: 2014-07-14 11:45:25 +0900 Call GLib.set_prgname('ibus-setup') for ibus-setup main.py TEST=xlsclients Review URL: https://codereview.appspot.com/108550043 M setup/main.py commit b1b4e2946682e3d53aa396d8469c7fa16a2dbca8 Author: fujiwarat Date: 2014-07-11 11:50:04 +0900 Export the 'IBUS_SETUP_XID' environment variable for each engine setup. Follow GNOME_CONTROL_CENTER_XID. https://wiki.gnome.org/AllanDay/IMEGuidelines TEST=setup Review URL: https://codereview.appspot.com/112920044 M setup/main.py commit a17dc8e8bd288adedb77ae417d6825419337daae Author: fujiwarat Date: 2014-07-11 11:45:05 +0900 Fix deprecated warnings with python3-gobject 3.13.3. python3-gobject adds several warnings in gi/overrides/Gtk.py /usr/share/ibus/setup/main.py:74: PyGIDeprecationWarning: Using positional arguments with the GObject constructor has been deprecated. Please specify keyword(s) for "schema" or use a class specific constructor. See: https://wiki.gnome.org/PyGObject/InitializerDeprecations /usr/share/ibus/setup/main.py:364: PyGTKDeprecationWarning: The keyword(s) "type" have been deprecated in favor of "message_type" respectively. See: https://wiki.gnome.org/PyGObject/InitializerDeprecations TEST=setup Review URL: https://codereview.appspot.com/110990044 M setup/engineabout.py M setup/keyboardshortcut.py M setup/main.py M setup/setup.ui commit 10483bfebd1f51ffa52ad7d017193ae728f93bf5 Author: fujiwarat Date: 2014-07-10 11:54:30 +0900 Fix ibus-setup SEGV in enginetreeview.py When an engine is added on ibus-setup, enginetreeview.append_engine() calls self.__model.append(None) and it causes engine == None in __icon_cell_data_cb() and __name_cell_data_cb() in enginetreeview with python3-gobject 3.13.x which version has implemented several deprecated warnings in gi/overrides/Gtk.py . I think this problem also could happen in the old versions if the system would be slow. BUG=rhbz#1048429 TEST=setup in Fedora 21 Review URL: https://codereview.appspot.com/104620043 M setup/enginetreeview.py commit 9e5a2bd2c40f9eed8d99710b63b3dab737aa9b95 Author: fujiwarat Date: 2014-07-08 11:42:12 +0900 Update ibus(1) for read-config and reset-config. TEST=tools/ibus.1.gz Review URL: https://codereview.appspot.com/111900044 M tools/ibus.1.in commit 3dcf24742216d6234a45ace1b433b864efdf08a2 Author: fujiwarat Date: 2014-07-04 16:03:57 +0900 Add ibus reset-config and read-config sub-commands. BUG=rhbz#530711 TEST=tools/ibus Review URL: https://codereview.appspot.com/103670044 M tools/main.vala commit 14bd9381127e692b944eb31f56a2cc5b9de2e7a1 Author: fujiwarat Date: 2014-07-04 16:00:16 +0900 Run xmodmap after run setxkbmap -l layout. BUG=rhbz#750484 TEST=ui/gtk3/ibus-ui-gtk3 data/dconf/org.freedesktop.ibus.gschema.xml Review URL: https://codereview.appspot.com/101490043 M data/ibus.schemas.in M ui/gtk3/panel.vala M ui/gtk3/xkblayout.vala commit 8ef258ec31f12405e4f5ded6a7a4d80114a219d4 Author: Osamu Aoki Date: 2014-07-03 11:39:32 +0900 Use "keycode Linux_keycode = X11_keysym" format Delete non-Linux keyboard compatibility. These are tested for both PC and Mac. Using showkey and xev Notably: Hangul = Eisuu-on-mac-keyboard Hangul_Hanja = Kana/kana -on-mac-keyboard BUG=http://code.google.com/p/ibus/issues/detail?id=1724 TEST=data/keymaps/keycode.py Review URL: https://codereview.appspot.com/106250045 Patch from Osamu Aoki . M data/keymaps/jp commit a5300750e38b5327bdd255d777544d0c0ebcb4d9 Author: fujiwarat Date: 2014-06-24 11:24:40 +0900 Do not sort ibus engines when they are saved by ibus-setup. ibus 1.5 changes the engine order with Super+space shortcut key and now ibus-setup shows the sorted engines by longname on UI. This fixes not to save the sorted order with ibus-setup. TEST=setup Review URL: https://codereview.appspot.com/102610044 M setup/enginetreeview.py M setup/main.py commit 38fa3e8a57262e4d76afe9bc348d14cc37af5cfc Author: fujiwarat Date: 2014-06-23 15:19:03 +0900 Set up ibus engines when users log into the session for the first time. XKB engines are configured by the session XKB. IM engines are configured by the current locale and IBusEngineDesc.lang. Also append 'us' layout after non-ascii layout likes 'ara', 'ru'. BUG=rhbz#541492 TEST=ui/gtk3/ibus-ui-gtk3 data/dconf/org.freedesktop.ibus.gschema.xml Review URL: https://codereview.appspot.com/103440043 M data/ibus.schemas.in M ui/gtk3/Makefile.am M ui/gtk3/panel.vala A ui/gtk3/xkblayout.vala commit b6afffbd1a06ecf17af009f1de3e513988ecb92e Author: fujiwarat Date: 2014-06-18 11:42:34 +0900 Update ibuscomposetable.h for pt-br. pt_BR.UTF-8/Compose file is updated: http://cgit.freedesktop.org/xorg/lib/libX11/commit/?id=e3dc0d1733 TEST=engine/test-compose on pt_BR.UTF-8 Review URL: https://codereview.appspot.com/101330044 M src/gencomposetable.c M src/ibuscomposetable.h commit 9bad0c944162a1700dcb6615aab2a6a9cfd9eff5 Author: fujiwarat Date: 2014-06-12 11:38:43 +0900 Fix escape key with Ctrl+Shift+U ISO 14755. GtkIMContextSimple uses gdk_keymap_get_for_display() to check the readable hex codes but IBusEngineSimple ignored it because does not have the display argument. I added is_hex_keyval() to check the escape key and fix this bug. BUG=http://code.google.com/p/ibus/issues/detail?id=1715 TEST=src/libibus.so Review URL: https://codereview.appspot.com/101160044 M src/ibusenginesimple.c commit e46502f1d3a8c69e6e473cdb35e790e565d89705 Author: fujiwarat Date: 2014-06-10 11:41:23 +0900 Fix a typo in src/ibusinputcontext.c BUG=http://code.google.com/p/ibus/issues/detail?id=1717 Review URL: https://codereview.appspot.com/107860043 M src/ibusinputcontext.c commit 6291feb259cee5589683cf7ac1a87c44582ba3c0 Author: Christophe Fergeau Date: 2014-06-09 15:58:37 +0900 tests/ibus-config Fix timeout_id handling tests/ibus-config queues a timeout whose callback calls g_main_loop_quit() before returning FALSE. After exiting the mainloop, g_source_remove(timeout_id) is called, but if the mainloop was exited through the timeout callback, the source will already have been removed. This commit makes sure we only try to call g_source_remove() on that timeout if we did not exit the mainloop through the timeout callback. BUG=http://code.google.com/p/ibus/issues/detail?id=1712 Review URL: https://codereview.appspot.com/108730044 Patch from Christophe Fergeau . M src/tests/ibus-config.c commit ee4c5ec0a39b5ed4a22fe34307a44f3f9fa1303b Author: fujiwarat Date: 2014-06-06 17:38:08 +0900 Add Polish (qwertz) keymap in simple.xml BUG=http://code.google.com/p/ibus/issues/detail?id=1716 TEST=ibus-setup Review URL: https://codereview.appspot.com/102150045 M bus/ibusimpl.c M engine/simple.xml.in commit b07dedfb72eb65e4432efdd1348167db89c19639 Author: Christophe Fergeau Date: 2014-06-06 17:26:19 +0900 Fix GVariant leak in IBusService::GetValue When handling the DBus GetValue call, ibusconfigservice.c:ibus_config_service_service_method_call() gets a non-floating GVariant reference through IBusConfigService::get_value() but never unrefs it. Running ibus-dconf in valgrind and then running tests/ibus-config shows this leak: =28085== 232 (80 direct, 152 indirect) bytes in 2 blocks are definitely lost in loss record 2,025 of 2,121 ==28085== at 0x4A0645D: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==28085== by 0x56EDDF2: g_malloc (gmem.c:97) ==28085== by 0x570691C: g_slice_alloc (gslice.c:1007) ==28085== by 0x572E6D9: g_variant_get_child_value (gvariant-core.c:1009) ==28085== by 0x57261C0: g_variant_get_variant (gvariant.c:715) ==28085== by 0x4C1A732: gvdb_table_value_from_item (gvdb-reader.c:578) ==28085== by 0x4C1A7A1: gvdb_table_get_value (gvdb-reader.c:610) ==28085== by 0x4C1589C: dconf_engine_read (dconf-engine.c:528) ==28085== by 0x4C14A79: dconf_client_read (dconf-client.c:242) ==28085== by 0x40286F: ibus_config_dconf_get_value (config.c:378) ==28085== by 0x4E44F29: ibus_config_service_service_method_call (ibusconfigservice.c:194) ==28085== by 0x4E33249: ibus_service_service_method_call_cb (ibusservice.c:395) BUG=http://code.google.com/p/ibus/issues/detail?id=1712 Review URL: https://codereview.appspot.com/103100045 Patch from Christophe Fergeau . M src/ibusconfigservice.c commit 5d887bde04d2fcfeb18437bbf675baf4a21e31e2 Author: Christophe Fergeau Date: 2014-06-06 17:23:00 +0900 Fix GVariant leak in IBusService::SetValue When handling the DBus SetValue call, ibusconfigservice.c:ibus_config_service_service_method_call() gets a GVariant through g_variant_get("(&s&sv)") GVariant documentation says that: « Upon encountering a 'v', g_variant_get() takes a pointer to a (GVariant *) (ie: (GVariant **) ). It is set to a new reference to a GVariant instance containing the contents of the variant value. It is appropriate to free this reference using g_variant_unref(). » so we need to unreference it when we are done with it. Running ibus-dconf in valgrind and then running tests/ibus-config shows this leak: ==28085== 3,934 (1,520 direct, 2,414 indirect) bytes in 38 blocks are definitely lost in loss record 2,112 of 2,121 ==28085== at 0x4A0645D: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==28085== by 0x56EDDF2: g_malloc (gmem.c:97) ==28085== by 0x570691C: g_slice_alloc (gslice.c:1007) ==28085== by 0x572E6D9: g_variant_get_child_value (gvariant-core.c:1009) ==28085== by 0x57261C0: g_variant_get_variant (gvariant.c:715) ==28085== by 0x572BD03: g_variant_valist_get_nnp (gvariant.c:4794) ==28085== by 0x572C3F1: g_variant_valist_get_leaf (gvariant.c:4911) ==28085== by 0x572CAD4: g_variant_valist_get (gvariant.c:5092) ==28085== by 0x572CC59: g_variant_valist_get (gvariant.c:5127) ==28085== by 0x572D079: g_variant_get_va (gvariant.c:5354) ==28085== by 0x572CF9B: g_variant_get (gvariant.c:5301) ==28085== by 0x4E44E5B: ibus_config_service_service_method_call (ibusconfigservice.c:173) BUG=http://code.google.com/p/ibus/issues/detail?id=1712 Review URL: https://codereview.appspot.com/108740044 Patch from Christophe Fergeau . M src/ibusconfigservice.c commit 167d1d7841eb5dd3957ceb72c4dcce784ea46456 Author: Christophe Fergeau Date: 2014-06-06 17:20:38 +0900 Return non-floating ref from IBusConfigGConf::get_value Both IBusConfigDConf::get_value and IBusConfigMemconf::get_value return a non-floating reference, so we need to be consistent in the gconf backend and also return a non-floating reference. BUG=http://code.google.com/p/ibus/issues/detail?id=1712 Review URL: https://codereview.appspot.com/106830043 Patch from Christophe Fergeau . M conf/gconf/config.c commit 0d153293b7a7a69796a61cd87832bbb583351778 Author: Christophe Fergeau Date: 2014-06-06 17:17:11 +0900 dconf: Fix GVariant refcounting in watch_func() IBusConfigDConf::watch_func() is roughly doing: GVariant *variant = dconf_client_read(...) if (variant == NULL) { variant = g_variant_new(...); } ibus_config_service_value_changed(..., variant); g_variant_unref(variant); The problem with that is that the GVariant returned by dconf_client_read() is non-floating while the one returned by g_variant_new() is floating. Since ibus_config_service_value_changed() will take ownership of floating references, we should not unref 'variant' if it was created through g_variant_new(), but we must call it when 'variant' is created through dconf_client_read() or we will leak memory. This commit fixes that by making sure we sink the reference we got through g_variant_new(). This was sometimes causing crashes of ibus-dconf when repeatedly running tests/ibus-config: (ibus-dconf:24679): GLib-CRITICAL **: g_variant_unref: assertion 'value->ref_count > 0' failed ==24679== Invalid read of size 4 ==24679== at 0x572E140: g_variant_unref (gvariant-core.c:625) ==24679== by 0x572DBB3: g_variant_release_children (gvariant-core.c:257) ==24679== by 0x572E202: g_variant_unref (gvariant-core.c:640) ==24679== by 0x572DBB3: g_variant_release_children (gvariant-core.c:257) ==24679== by 0x572E202: g_variant_unref (gvariant-core.c:640) ==24679== by 0x518CFDE: g_dbus_message_finalize (gdbusmessage.c:534) ==24679== by 0x5459628: g_object_unref (gobject.c:3112) ==24679== by 0x519C911: message_to_write_data_free (gdbusprivate.c:898) ==24679== by 0x519D687: write_message_cb (gdbusprivate.c:1353) ==24679== by 0x510F7F2: g_simple_async_result_complete (gsimpleasyncresult.c:763) ==24679== by 0x519CEF2: write_message_continue_writing (gdbusprivate.c:1077) ==24679== by 0x519D040: write_message_async (gdbusprivate.c:1131) ==24679== Address 0x5d8c9c4 is 36 bytes inside a block of size 40 free'd ==24679== at 0x4A07577: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==24679== by 0x56EDF6B: g_free (gmem.c:190) ==24679== by 0x5706B53: g_slice_free1 (gslice.c:1112) ==24679== by 0x572E229: g_variant_unref (gvariant-core.c:643) ==24679== by 0x40240F: _watch_func (config.c:232) ==24679== by 0x3DEA605D8B: ffi_call_unix64 (in /usr/lib64/libffi.so.6.0.1) ==24679== by 0x3DEA6056BB: ffi_call (in /usr/lib64/libffi.so.6.0.1) ==24679== by 0x544EE88: g_cclosure_marshal_generic_va (gclosure.c:1541) ==24679== by 0x544D396: _g_closure_invoke_va (gclosure.c:831) ==24679== by 0x5468808: g_signal_emit_valist (gsignal.c:3215) ==24679== by 0x54699DF: g_signal_emit (gsignal.c:3363) ==24679== by 0x4C1478D: dconf_client_dispatch_change_signal (dconf-client.c:150) BUG=http://code.google.com/p/ibus/issues/detail?id=1712 Review URL: https://codereview.appspot.com/107800044 Patch from Christophe Fergeau . M conf/dconf/config.c commit 70ddaf10acce9eb96294a2513967042ecb2a91d4 Author: Christophe Fergeau Date: 2014-06-06 16:56:55 +0900 Fix GVariantBuilder leaks When using g_variant_builder_new(), we must call g_variant_builder_unref() to free it: "You should call g_variant_builder_unref() on the return value when it is no longer needed. The memory will not be automatically freed by any other call. In most cases it is easier to place a GVariantBuilder directly on the stack of the calling function and initialise it with g_variant_builder_init()." One of these leaks showed up in valgrind as: ==20702== 16,416 bytes in 114 blocks are definitely lost in loss record 2,114 of 2,115 ==20702== at 0x4A0645D: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==20702== by 0x56EDDF2: g_malloc (gmem.c:97) ==20702== by 0x570691C: g_slice_alloc (gslice.c:1007) ==20702== by 0x5729743: g_variant_builder_new (gvariant.c:3169) ==20702== by 0x40297B: ibus_config_dconf_get_values (config.c:413) ==20702== by 0x4E44FF2: ibus_config_service_service_method_call (ibusconfigservice.c:214) ==20702== by 0x4E33249: ibus_service_service_method_call_cb (ibusservice.c:395) ==20702== by 0x51880D8: call_in_idle_cb (gdbusconnection.c:4875) ==20702== by 0x56E81D7: g_idle_dispatch (gmain.c:5319) ==20702== by 0x56E58F1: g_main_dispatch (gmain.c:3064) ==20702== by 0x56E6667: g_main_context_dispatch (gmain.c:3663) ==20702== by 0x56E6859: g_main_context_iterate (gmain.c:3734) BUG=http://code.google.com/p/ibus/issues/detail?id=1712 Review URL: https://codereview.appspot.com/104850044 Patch from Christophe Fergeau . M bus/ibusimpl.c M bus/inputcontext.c M conf/dconf/config.c M conf/gconf/config.c M src/ibuscomponent.c M src/ibusengine.c commit 0d17c2507d38e62a149f3fe7d32e6c3e7c3bcd0e Author: Christophe Fergeau Date: 2014-06-06 16:51:52 +0900 tests/ibus-config: Fix typo in function name "success" was misspelt "sucess" BUG=http://code.google.com/p/ibus/issues/detail?id=1712 Review URL: https://codereview.appspot.com/102160043 Patch from Christophe Fergeau . M src/tests/ibus-config.c commit f4d7ceafb588737212a21216cb30ccdc9ff02cdf Author: Christophe Fergeau Date: 2014-06-06 16:47:20 +0900 Fix leak in ibus-engine-switch test BUG=http://code.google.com/p/ibus/issues/detail?id=1712 Review URL: https://codereview.appspot.com/104860043 Patch from Christophe Fergeau . M src/tests/ibus-engine-switch.c commit ca8cac8b95505140bc51d98d42c9af1122338920 Author: Christophe Fergeau Date: 2014-06-06 16:43:34 +0900 Fix GDBusNodeInfo leak in ibus_service_class_add_interfaces A call to g_dbus_node_info_unref was in place but commented out. This fixes: ==20039== 424 (40 direct, 384 indirect) bytes in 1 blocks are definitely lost in loss record 2,115 of 2,159 ==20039== at 0x4A081D4: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==20039== by 0x56ECE69: g_malloc0 (gmem.c:127) ==20039== by 0x56ED191: g_malloc0_n (gmem.c:362) ==20039== by 0x519FBF2: parse_data_get_node (gdbusintrospection.c:1171) ==20039== by 0x519FFE1: parser_start_element (gdbusintrospection.c:1290) ==20039== by 0x56E9C2E: emit_start_element (gmarkup.c:1048) ==20039== by 0x56EA7CB: g_markup_parse_context_parse (gmarkup.c:1395) ==20039== by 0x51A1082: g_dbus_node_info_new_for_xml (gdbusintrospection.c:1797) ==20039== by 0x4E33D38: ibus_service_class_add_interfaces (ibusservice.c:610) ==20039== by 0x4E32C24: ibus_service_class_init (ibusservice.c:213) ==20039== by 0x546EE85: type_class_init_Wm (gtype.c:2220) ==20039== by 0x5470586: g_type_class_ref (gtype.c:2935) ==20039== by 0x5470539: g_type_class_ref (gtype.c:2927) ==20039== by 0x5470539: g_type_class_ref (gtype.c:2927) ==20039== by 0x5454D21: g_object_new_valist (gobject.c:1906) ==20039== by 0x54543C9: g_object_new (gobject.c:1571) ==20039== by 0x402AF0: ibus_config_dconf_new (config.c:449) ==20039== by 0x401D59: ibus_dconf_start (main.c:61) ==20039== by 0x401E30: main (main.c:85) ==20039==~ BUG=http://code.google.com/p/ibus/issues/detail?id=1712 Review URL: https://codereview.appspot.com/100990043 Patch from Christophe Fergeau . M src/ibusservice.c commit d0aaf7763d315161085aeaa00b6cdfa0e2569071 Author: Christophe Fergeau Date: 2014-06-06 16:38:11 +0900 Fix GObject leaks in ibus_property_deserialize() BUG=http://code.google.com/p/ibus/issues/detail?id=1712 Review URL: https://codereview.appspot.com/103100043 Patch from Christophe Fergeau . M src/ibusproperty.c commit 18687d77de1ad755db022e7da565dc8ad44ae5ac Author: Christophe Fergeau Date: 2014-06-06 16:21:15 +0900 Fix g_dbus_proxy_get_name_owner() leaks BUG=http://code.google.com/p/ibus/issues/detail?id=1712 Review URL: https://codereview.appspot.com/105830043 Patch from Christophe Fergeau . M src/ibusconfig.c commit f3e8aaff559e56efe54c43af123e0ab87a17423b Author: Christophe Fergeau Date: 2014-06-06 16:17:19 +0900 Fix string leaks in deserialize vfuncs When an object contains char * properties, its deserialize function will overwrite these string values without freeing them first. They are not necessarily NULL as they can have (default) values set upon construction, so they need to be g_free'd before being overwritten. For example, IBusEngineDesc::longname, IBusEngineDesc::description, IBusEngineDesc::language, ... are all set to "" upon construction (instead of NULL), so the corresponding IBusEngineDesc fields must be freed before being overwritten during deserialization. This commit introduces a ibus_g_variant_get_child_string() to do this and set the string value. This leak was reported by valgrind: ==22163== 59 bytes in 59 blocks are definitely lost in loss record 1,633 of 2,720 ==22163== at 0x4A0645D: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==22163== by 0x56DFDF2: g_malloc (gmem.c:97) ==22163== by 0x56E011D: g_malloc_n (gmem.c:338) ==22163== by 0x56FAFCC: g_strdup (gstrfuncs.c:356) ==22163== by 0x546CDB8: g_value_dup_string (gvaluetypes.c:1136) ==22163== by 0x4E43A98: ibus_engine_desc_set_property (ibusenginedesc.c:385) ==22163== by 0x5446CA3: object_set_property (gobject.c:1378) ==22163== by 0x54484BB: g_object_constructor (gobject.c:2020) ==22163== by 0x4E24564: ibus_object_constructor (ibusobject.c:111) ==22163== by 0x5447577: g_object_new_with_custom_constructor (gobject.c:1645) ==22163== by 0x5447787: g_object_new_internal (gobject.c:1722) ==22163== by 0x5447C75: g_object_newv (gobject.c:1868) ==22163== by 0x544737A: g_object_new (gobject.c:1568) ==22163== by 0x4E2521C: ibus_serializable_deserialize (ibusserializable.c:292) ==22163== by 0x4E480E0: ibus_component_deserialize (ibuscomponent.c:408) ==22163== by 0x4E2523E: ibus_serializable_deserialize (ibusserializable.c:294) ==22163== by 0x4E4C1D1: ibus_registry_deserialize (ibusregistry.c:202) ==22163== by 0x4E4C95C: ibus_registry_load_cache_file (ibusregistry.c:362) ==22163== by 0x4E4C6A4: ibus_registry_load_cache (ibusregistry.c:302) ==22163== by 0x40EBCD: bus_ibus_impl_registry_init (ibusimpl.c:1871) ==22163== by 0x40C1D4: bus_ibus_impl_init (ibusimpl.c:424) ==22163== by 0x5460FCD: g_type_create_instance (gtype.c:1868) ==22163== by 0x5448466: g_object_constructor (gobject.c:2006) ==22163== by 0x4E24564: ibus_object_constructor (ibusobject.c:111) ==22163== by 0x5447577: g_object_new_with_custom_constructor (gobject.c:1645) ==22163== by 0x5447787: g_object_new_internal (gobject.c:1722) ==22163== by 0x54483C1: g_object_new_valist (gobject.c:1980) ==22163== by 0x54473C9: g_object_new (gobject.c:1571) ==22163== by 0x40E94A: bus_ibus_impl_get_default (ibusimpl.c:1807) ==22163== by 0x41D880: bus_server_init (server.c:100) ==22163== by 0x420E91: main (main.c:236) BUG=http://code.google.com/p/ibus/issues/detail?id=1712 Review URL: https://codereview.appspot.com/104850043 Patch from Christophe Fergeau . M src/ibuscomponent.c M src/ibusenginedesc.c M src/ibusinternal.h M src/ibusobservedpath.c M src/ibusproperty.c M src/ibusutil.c commit 87fb61f76fc0ffbac316b0090b206faadfbd82fd Author: Christophe Fergeau Date: 2014-06-06 15:42:47 +0900 Fix GVariant leaks BUG=http://code.google.com/p/ibus/issues/detail?id=1712 Review URL: https://codereview.appspot.com/109720043 Patch from Christophe Fergeau . M src/ibusbus.c commit 23c784d45cbab7ae7a12e7b3c02c4299a446e03b Author: Christophe Fergeau Date: 2014-06-06 15:38:47 +0900 Fix small typo in gtk-doc API doc BUG=http://code.google.com/p/ibus/issues/detail?id=1712 Review URL: https://codereview.appspot.com/108740043 Patch from Christophe Fergeau . M src/ibusbus.h commit e6ee958b0120c4445c06db24ed7ac8f87675646e Author: Christophe Fergeau Date: 2014-06-06 15:23:50 +0900 build-sys: Fix 'privite' typo in Makefile.am BUG=http://code.google.com/p/ibus/issues/detail?id=1712 Review URL: https://codereview.appspot.com/102140044 Patch from Christophe Fergeau . M src/Makefile.am commit 34692850bd58543e016e35ea7c863d311ca92519 Author: fujiwarat Date: 2014-05-09 11:40:21 +0900 Let ibus-ui-gtk3 not to show zero-lenght preedit text. preedit text is shown by ibus-ui-gtk3 on X11 applications and do not have to show it likes GTK+ when the lenght is zero. BUG=http://code.google.com/p/ibus/issues/detail?id=1709 TEST=ibus-ui-gtk3 with ibus-pinyin and x11 applications Review URL: https://codereview.appspot.com/93150043 M ui/gtk3/candidatepanel.vala commit 386bafb0b91a61d51385e0bba2b3fc4b1e2d9013 Author: Ryu Changwoo Date: 2014-05-08 11:23:14 +0900 Delete Korean keymap. BUG=http://code.google.com/p/ibus/issues/detail?id=1708 Review URL: https://codereview.appspot.com/92090043 Patch from Ryu Changwoo . M engine/simple.xml.in commit 318836a647460e28dcc682543a118567474f9854 Author: Eike Hein Date: 2014-05-08 11:16:02 +0900 Add the nodeadkeys variant of the German keyboard layout. BUG=http://code.google.com/p/ibus/issues/detail?id=1710 Review URL: https://codereview.appspot.com/96040043 Patch from Eike Hein . M engine/simple.xml.in commit 0be4664b2ea3071c01ff479443033eb1accdfb03 Author: fujiwarat Date: 2014-05-02 11:55:08 +0900 Set max-width-chars property in ibus-setup wrapped GtkLabel. If GtkWindow has 'resizable' property = FALSE, the wrap in GtkLabel is not done automatically and need to set 'max-width-chars' property. TEST=ibus-setup Review URL: https://codereview.appspot.com/92940043 M setup/setup.ui commit 15126830212fabfd5d6ec359a5d7554746462f4b Author: fujiwarat Date: 2014-04-30 15:03:48 +0900 Release 1.5.7 Review URL: https://codereview.appspot.com/96800043 M configure.ac commit 68fcd6f65b3e3af05e2c794b85827ad88c6f9281 Author: fujiwarat Date: 2014-04-30 15:01:15 +0900 Update translation zh_CN.po Review URL: https://codereview.appspot.com/96740044 M po/zh_CN.po commit 90d23e28e82dbcf08cb6d8e3779648731ff8cb40 Author: fujiwarat Date: 2014-04-28 11:17:09 +0900 Do not move property panel with focus-in in case panel is always shown. Review URL: https://codereview.appspot.com/98770043 M ui/gtk3/propertypanel.vala commit 98bf852afe1cedeaa256e6a9763a73bd3f78cbfd Author: fujiwarat Date: 2014-04-24 11:37:44 +0900 Do not show property panel by default. Property panel sometimes hides text entry box on firefox in case the mode is auto-hide because firefox does not provide the right cursor locations and firefox does not update cursor locales when preedit is updated so property panel hides text entry box for a while and auto-hide is not useful with firefox and thunderbird. TEST=gsettings reset org.freedesktop.ibus.panel show Review URL: https://codereview.appspot.com/90480043 M data/ibus.schemas.in M ui/gtk3/propertypanel.vala commit 8f4bd6d745707c26d7ccd66ae71e8f4833501b3c Author: fujiwarat Date: 2014-04-18 11:41:02 +0900 Change deprecated GtkHButtonBox to GtkButtonBox in ibus-setup. Review URL: https://codereview.appspot.com/88850043 M setup/setup.ui commit 274c4f21a56bc90e2c5666192c40c69c414d8ac7 Author: Christophe Fergeau Date: 2014-04-17 12:42:23 +0900 Fix leak in ibus_get_local_machine_id() If /var/lib/dbus/machine-id does not exist but /etc/machine-id exists, 'error' will be set but will never be freed. BUG=http://code.google.com/p/ibus/issues/detail?id=1701 Review URL: https://codereview.appspot.com/88770043 Patch from Christophe Fergeau . M src/ibusshare.c commit ca128d1eee6599263b5e43b087781a00ada2732c Author: Daiki Ueno Date: 2014-04-07 18:06:10 +0900 Keep track of content-type change after focus-in This is an amendment to 6ca5ddb3. As content-type (input-purpose and hints) can change after focus-in, we should monitor the changes. BUG= R=takao.fujiwara1@gmail.com Review URL: https://codereview.appspot.com/83920043 M bus/inputcontext.c M bus/marshalers.list M bus/panelproxy.c commit 6ca5ddb302c98e52c78326ed0dfaaf90481d4d8c Author: fujiwarat Date: 2014-04-03 12:19:47 +0900 Send panel input purpose. gnome-shell gets input purpose so that disables IME with password mode. Review URL: https://codereview.appspot.com/81770044 M bus/inputcontext.c M bus/inputcontext.h M bus/panelproxy.c M bus/panelproxy.h M src/ibuspanelservice.c M src/ibuspanelservice.h commit 18612e19fe4e9d3c89cbcf92c6562d48677412d6 Author: fujiwarat Date: 2014-03-18 11:49:08 +0900 Update supported vala version to 0.20. Review URL: https://codereview.appspot.com/76830043 M configure.ac commit 9782a20c544001a211a788975f55ded5064b7273 Author: fujiwarat Date: 2014-03-18 11:41:33 +0900 Add Czech (qwerty) keymap. BUG=rhbz#1074879 Review URL: https://codereview.appspot.com/74520044 M engine/simple.xml.in commit 2a75303fd88adfd8e041c90a3ecc0cc93a74aed3 Author: fujiwarat Date: 2014-03-07 13:56:37 +0900 Release 1.5.6 Review URL: https://codereview.appspot.com/68530043 M configure.ac commit 43719baaa67cf9f3832f5341776570cf161df9db Author: fujiwarat Date: 2014-03-07 13:51:59 +0900 Fix deprecated GtkHBox in setup.ui Review URL: https://codereview.appspot.com/72000043 M setup/setup.ui commit 427475201d351f5888fb6b4d90cf604514335707 Author: fujiwarat Date: 2014-03-06 11:50:10 +0900 Update translations. Update po/ja.po po/nl.po po/pl.po po/uk.po Review URL: https://codereview.appspot.com/69920043 M po/ja.po M po/nl.po M po/pl.po M po/uk.po commit 698e85bce8ec948c55997b0a59e0a59803a5a312 Author: fujiwarat Date: 2014-03-06 11:44:01 +0900 Fix python comment in escape sequence. Review URL: https://codereview.appspot.com/69840043 M setup/main.py commit 3e0abec1e26657316649ffc15415281890c2fde9 Author: Nilamdyuti Goswami Date: 2014-02-28 11:37:30 +0900 Add contextual information on translatable strings. Source String Contextualization Group (SSCG) is a Fedora SIG group initiated to provide meaningful descriptions of the source strings for translators to ensure the correctness and quality of the translations. https://fedoraproject.org/wiki/SSCG BUG=rhbz#1069594 Review URL: https://codereview.appspot.com/69010043 Patch from Nilamdyuti Goswami . M data/ibus.schemas.in M setup/main.py commit b233f5796aa7eec7555a31d51ea065c978429759 Author: fujiwarat Date: 2014-02-25 17:41:13 +0900 Use XKB layout string instead of ibus-keyboard icon on panel. Review URL: https://codereview.appspot.com/66330043 M data/ibus.schemas.in M ui/gtk3/Makefile.am M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit b300a7f747ddfa5146ff6edd23f8747e37d1de46 Author: fujiwarat Date: 2014-02-21 11:45:55 +0900 Fix a build error of Gdk.EventKey with vala 0.23.2 Review URL: https://codereview.appspot.com/66480044 M ui/gtk3/switcher.vala commit ee7f9147d6ec6e07023f6c4b84acafe3ef42a881 Author: Julien Humbert Date: 2014-02-21 11:42:17 +0900 Update french translation Review URL: https://codereview.appspot.com/66450044 Patch from Julien Humbert . M po/fr.po commit d5319e4f3ed5318e20a4a1556af657fd75792eeb Author: fujiwarat Date: 2014-02-18 18:01:25 +0900 Update translations. Merged GTK+ translations. Review URL: https://codereview.appspot.com/50490045 M po/LINGUAS M po/ar.po M po/as.po M po/bg.po M po/bn.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/en_GB.po M po/es.po M po/et.po M po/eu.po M po/fa.po M po/fr.po M po/gu.po A po/he.po M po/hi.po M po/hu.po M po/ia.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/lv.po M po/ml.po M po/mr.po M po/nb.po M po/nl.po M po/or.po M po/pa.po M po/pl.po M po/pt_BR.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/tg.po M po/uk.po A po/ur.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit 5c25f8c6218847f56829338479d4f1af866fa6f2 Author: fujiwarat Date: 2014-02-18 15:07:35 +0900 Fix deprecated GtkStock in ibus-setup Review URL: https://codereview.appspot.com/65300043 M setup/engineabout.py M setup/keyboardshortcut.py M setup/main.py commit 02f18ee424e14cbe592fbb293097fd8a7f0f0324 Author: fujiwarat Date: 2014-02-17 11:52:39 +0900 Fix deprecated GtkHBox, GtkVBox and GtkStock since GTK+ 3.10. Review URL: https://codereview.appspot.com/63750043 M setup/setup.ui M ui/gtk3/candidatearea.vala M ui/gtk3/candidatepanel.vala M ui/gtk3/iconwidget.vala M ui/gtk3/keybindingmanager.vala M ui/gtk3/panel.vala M ui/gtk3/property.vala M ui/gtk3/separator.vala commit 644a749ec444fcccff7dc5c0dff04c567dc0433c Author: fujiwarat Date: 2014-02-12 12:48:46 +0900 Do not let property panel follow cursor when it's always shown. Review URL: https://codereview.appspot.com/60560043 M data/ibus.schemas.in M po/POTFILES.in M po/POTFILES.skip M ui/gtk3/panel.vala M ui/gtk3/propertypanel.vala commit c5d86760da26cbce469b3ca4ed48fb6159613251 Author: fujiwarat Date: 2014-02-10 11:55:57 +0900 Fix to show Property Panel when the mode is auto hide. Property panel sometimes is not shown when the mode is auto hide and focus is changed between existent windows. It's a timing issue of PropertyPanel.set_properties(). Review URL: https://codereview.appspot.com/54300049 M ui/gtk3/propertypanel.vala commit 5b03cc67cc8a9c5ac4b907ff7e236b303e76454a Author: fujiwarat Date: 2014-02-04 14:02:26 +0900 Fix "RING ABOVE" key in the Finnish compose file. Recently fi_FI compose table was updated in xorg/lib/libX11. http://cgit.freedesktop.org/xorg/lib/libX11/commit/?id=20fdccd8 http://cgit.freedesktop.org/xorg/lib/libX11/commit/?id=aacf95da BUG=rhbz#1060180 Review URL: https://codereview.appspot.com/59540043 M src/ibuscomposetable.h commit 51cb6c01060bf5b41aba1317fae47204b015a5c3 Author: fujiwarat Date: 2014-02-03 13:07:40 +0900 Install pygtk2 libraries to python2 site-packages. Review URL: https://codereview.appspot.com/58930044 M bindings/pygobject/Makefile.am M configure.ac M ibus/Makefile.am M ibus/interface/Makefile.am commit a6f886a7279dd85b5b0d4caa709a222e34eaa3f7 Author: fujiwarat Date: 2014-02-03 11:18:24 +0900 Disable AC_MSG_ERROR if gsettings-schema-convert is not found. Reverted 729b0aa1febccbba97286f2aceb9044d907f9ffe data/dconf/org.freedesktop.ibus.gschema.xml.in is included in tarball so gsettings-schema-convert is not required. BUG=http://code.google.com/p/ibus/issues/detail?id=1650 Review URL: https://codereview.appspot.com/58870044 M configure.ac M data/dconf/Makefile.am commit e2cd8f0870d8b15af71e839f9035dce333af3c4e Author: fujiwarat Date: 2014-01-27 11:38:46 +0900 Install IBus.py in python2 gi.override. Review URL: https://codereview.appspot.com/56510043 M bindings/pygobject/Makefile.am M configure.ac commit 8468de2f165ca7dba45b13cec09fdcde83a88204 Author: fujiwarat Date: 2014-01-24 11:11:40 +0900 Enable python3 ibus-setup. The default uses 'python' and if the path of python 3 is 'python3', ./configure --with-python=python3 Review URL: https://codereview.appspot.com/54930043 M configure.ac M setup/enginecombobox.py M setup/enginetreeview.py M setup/keyboardshortcut.py M setup/main.py commit 5d94d8cc7b9a322f4639200c4a10076cb57a0294 Author: fujiwarat Date: 2014-01-23 15:34:31 +0900 Use LT_INIT instead of AM_PROG_LIBTOOL BUG=http://www.gnu.org/software/libtool/manual/html_node/LT_005fINIT.html Review URL: https://codereview.appspot.com/55480044 M configure.ac commit 65f583483529b98dc2bec96d3e6524629c585234 Author: fujiwarat Date: 2014-01-17 12:13:35 +0900 Fix the access out of bounds in gencomposetable TEST=src/gencomposetable Review URL: https://codereview.appspot.com/52670044 M src/gencomposetable.c commit e6ec45d64a32d16245770f8b80e795a63e6ad553 Author: Colin Walters Date: 2014-01-16 13:22:12 +0900 data/dconf: Don't run "dconf update" if $(DESTDIR) is set dconf changed as of https://git.gnome.org/browse/dconf/commit/?id=c211fc46496597c7ddabd73d623bae4037754916 to actually emit an error if /etc/dconf/db is empty. When building ibus in a system such as dpkg/rpm or gnome-continuous, there may actually be nothing in that directory in the buildroot. This will now cause "dconf update" as executed by this Makefile to fail. The fix is to just check $(DESTDIR), like we should do for all triggers (e.g. gtk-update-icon-cache too). It's never useful to execute these from per-component Makefiles if $(DESTDIR) is set. Instead, these meta-build systems (dpkg/rpm/jhbuild/Continuous) all take care of execution of triggers on their own. Review URL: https://codereview.appspot.com/51730044 Patch from Colin Walters . M data/dconf/Makefile.am commit 4e860c1ef4d056c91e63f3c39a67800ed3e8e5bc Author: fujiwarat Date: 2014-01-14 12:50:34 +0900 Release 1.5.5 Review URL: https://codereview.appspot.com/41200044 M configure.ac commit 7587b8e6a2f690dd52fcabc2e0da31062fb02128 Author: fujiwarat Date: 2014-01-08 16:36:47 +0900 Hide Property Panel when input cursor or preedit text is changed. BUG=http://code.google.com/p/ibus/issues/detail?id=1659 TEST=ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/45510043 M data/ibus.schemas.in M ui/gtk3/panel.vala M ui/gtk3/propertypanel.vala commit 8ce7ac6088e440ee539ed3299d9a219aac1c8089 Author: fujiwarat Date: 2013-12-18 11:39:40 +0900 Hide Property Panel if engines have no properties. If engines have no properites, Property Panel does not have to be shown. Also resize the topdevel window when engines are switched. TEST=ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/43260043 M ui/gtk3/propertypanel.vala commit dddd29edaf32d31e1c98047288c54a23edb5979b Author: fujiwarat Date: 2013-12-17 12:02:56 +0900 Add Property Panel to show IME properties. Currently GtkStatusIcon can show one icon only while GtkApplet shows multiple icons. IBus GTK Panel icon shows the IBus engine icon however each IBus engine provides the properties and currently it can be show only when users click the panel icon and show the activate menu. Users wish to know the some of the properties without clicking the icon. Property Panel offers a window which shows engine properties' icon at input cursor. It's similar to Language Panel in IBus 1.4. Property Panel is shown in only 3 seconds whenever client applications get focus-in event or any of engine properties are changed, e.g. InputMode is changed from Hiragana to Eisu, in case gsettings panel.show is AUTO_HIDE (by default). Property Panel is always hidden in case panel.show is DO_NOT_SHOW. Property Panel is always shown in case panel.show is ALWAYS. BUG=http://code.google.com/p/ibus/issues/detail?id=1659 TEST=ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/40870046 M data/ibus.schemas.in M setup/setup.ui M src/ibusattrlist.c M ui/gtk3/Makefile.am M ui/gtk3/panel.vala M ui/gtk3/property.vala A ui/gtk3/propertypanel.vala commit e0ca43cb4e72e1390750addf6407074ee32a955a Author: fujiwarat Date: 2013-12-13 11:56:41 +0900 Remove -Werror in autogen.sh since the build still have errors. Review URL: https://codereview.appspot.com/38250043 M autogen.sh commit e99a1b0fda7214ff9332a7619b02772a8ae38602 Author: fujiwarat Date: 2013-12-11 12:30:46 +0900 Update translations. Update po/bn.po po/bn_IN.po po/da.po po/de.po po/es.po po/fr.po po/ja.po po/kn.po po/ko.po po/nl.po po/pl.po po/ru.po po/ta.po po/te.po po/uk.po po/zh_CN.po Review URL: https://codereview.appspot.com/35340043 M po/LINGUAS A po/bn.po M po/bn_IN.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/ja.po M po/kn.po M po/ko.po M po/nl.po M po/pl.po M po/ru.po M po/ta.po M po/te.po M po/uk.po M po/zh_CN.po commit bf18adb00f2e6f656c35ab2ee169db6f38be5fbe Author: fujiwarat Date: 2013-12-06 11:45:04 +0900 Fix candidate panel not to be out of screen. BUG=http://code.google.com/p/ibus/issues/detail?id=1676 TEST=ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/35800045 M ui/gtk3/candidatepanel.vala commit 291bacf99d6da1e7f3952784e83d45400254b15b Author: fujiwarat Date: 2013-11-27 11:29:58 +0900 Delete the up/down button message on ibus-setup. BUG=http://code.google.com/p/ibus/issues/detail?id=1675 TEST=ibus-setup Review URL: https://codereview.appspot.com/32630043 M setup/setup.ui commit 4b20ca1b98265fde358a2863a954b49f61d79921 Author: Maroš Zaťko Date: 2013-11-26 14:10:03 +0900 simple.xml.in: add Slovak qwerty layout variant Review URL: https://codereview.appspot.com/32030043 Patch from Maroš Zaťko . M engine/simple.xml.in commit f35184a187b787e8507cb1e34b24dc0575fad838 Author: fujiwarat Date: 2013-11-05 18:12:41 +0900 Fix gir annotations. TEST=g-ir-scanner@src Review URL: https://codereview.appspot.com/18100044 M engine/Makefile.am M src/ibusattribute.h M src/ibusattrlist.h M src/ibuscomponent.h M src/ibusconfig.h M src/ibusconfigservice.h M src/ibusdebug.h M src/ibusengine.h M src/ibusenginedesc.h M src/ibusenumtypes.h.template M src/ibuserror.h M src/ibusfactory.h M src/ibushotkey.h M src/ibusinputcontext.c M src/ibuskeymap.h M src/ibuskeysyms-compat.h M src/ibuskeyuni.c M src/ibuslookuptable.h M src/ibusobject.c M src/ibusobject.h M src/ibusobservedpath.h M src/ibuspanelservice.c M src/ibusproplist.h M src/ibusproxy.h M src/ibusserializable.h M src/ibusservice.h M src/ibusshare.h M src/ibustext.h M src/ibustypes.h M src/ibusutil.h M src/ibusversion.h.in M src/ibusxml.h commit 6488b87792b81d20ceeb5f3f69381887e12bf4c7 Author: Eduardo Lima (Etrunko) Date: 2013-11-05 18:07:33 +0900 Wayland: Fix Small typo BUG=http://code.google.com/p/ibus/issues/detail?id=1671 TEST=client/wayland/ibus-wayland Review URL: https://codereview.appspot.com/18780044 Patch from Eduardo Lima (Etrunko) . M client/wayland/main.c commit e64b25c0ab8fadeae97fe78dcfcbc3a5d0869c6b Author: fujiwarat Date: 2013-11-01 11:19:39 +0900 Update en-us compose table and add locale tables for xkb engines. BUG=RH#1013651 TEST=engine/ibus-engine-simple, src/libibus.so Review URL: https://codereview.appspot.com/14465046 M bindings/vala/Makefile.am A bindings/vala/ibus-private.vapi M engine/Makefile.am M engine/main.vala A engine/test-compose.vala M src/Makefile.am A src/gencomposetable.c M src/gtkimcontextsimpleseqs.h A src/ibuscomposetable.h M src/ibusenginesimple.c M src/ibusenginesimple.h M src/ibuskeysyms.h M tools/main.vala commit 9596aea2e2df4cd3ac9b795ad9f354723cf83317 Author: fujiwarat Date: 2013-10-02 10:58:36 +0900 Always save the content-type cache for gnome-shell password. GDBusProxy updates the cache immediatelly with the first call only and has to save the next call in the cache by manual. BUG=RH#1013948 TEST=password on gnome-shell 3.10. Review URL: https://codereview.appspot.com/14196043 M bus/engineproxy.c commit b8f36164d9b405d95bdcb76e38daca6c531e7da5 Author: fujiwarat Date: 2013-10-02 10:55:09 +0900 Implement lookup-table-orientation in ibus-ui-gtk3. BUG=RH#1012781 TEST=ui/gtk3/ibus-ui-gtk3 Review URL: https://codereview.appspot.com/14198043 M ui/gtk3/panel.vala commit d41791da67ac66665868f18fc447f2fc2a6ce75a Author: fujiwarat Date: 2013-10-02 10:49:47 +0900 Replace datadir/man with mandir. BUG=http://code.google.com/p/ibus/issues/detail?id=1660 TEST=make install Review URL: https://codereview.appspot.com/14119043 M bus/Makefile.am M setup/Makefile.am M tools/Makefile.am commit a3f47e6509f19c6f11fca0328d63e973daec48ab Author: Julien Humbert Date: 2013-10-02 10:45:32 +0900 Add french layout variant oss to simple engine Review URL: https://codereview.appspot.com/14115044 Patch from Julien Humbert . M engine/simple.xml.in commit f4b09140783834cb19e3bd7dcf63671ec304b9dd Author: fujiwarat Date: 2013-09-20 11:39:25 +0900 Release 1.5.4 Review URL: https://codereview.appspot.com/13468047 M configure.ac commit 98c7bdc5d92d5d2f25eb5f81fe90397664c2d435 Author: fujiwarat Date: 2013-09-20 10:58:34 +0900 Fix no output when ibus-daemon is running on another display. Using ssh -X or another display, the hostname and display numbers can be different between the GTK clients and ibus-daemon. This patch fixes the output: "Events queue growing too big, will start to drop." BUG=RH#1004135 TEST=clients/gtk*/im-ibus.so Review URL: https://codereview.appspot.com/13707046 M client/gtk2/ibusimcontext.c commit 84f3510427398947c2f11bc17f3094ddbaea3598 Author: fujiwarat Date: 2013-09-17 12:15:17 +0900 Update translations. Update po/gu.po po/ml.po po/or.po po/pa.po Review URL: https://codereview.appspot.com/13514044 M po/gu.po M po/ml.po M po/or.po M po/pa.po commit e91f403a8e099ce26642eb58a105671ec730f277 Author: fujiwarat Date: 2013-09-06 13:24:34 +0900 Connect candidate-clicked signal on ibus-ui-gtk3 for mouse click. Review URL: https://codereview.appspot.com/13303049 M ui/gtk3/panel.vala commit 10b9225bb3ec9131c827cfad007bad65bc9f0b12 Author: fujiwarat Date: 2013-09-05 11:41:50 +0900 Implement show-icon-on-systray in ibus-ui-gtk3. BUG=http://code.google.com/p/ibus/issues/detail?id=1635 TEST="show icon on system tray" on ibus-setup Review URL: https://codereview.appspot.com/13514043 M ui/gtk3/panel.vala commit 729b0aa1febccbba97286f2aceb9044d907f9ffe Author: David King Date: 2013-09-02 11:19:06 +0900 Check for gsettings-schema-convert for dconf support BUG=http://code.google.com/p/ibus/issues/detail?id=1650 Review URL: https://codereview.appspot.com/13423043 Patch from David King . M configure.ac M data/dconf/Makefile.am commit 1e40a48cc47f2158d7ef45693158615b5f4ee029 Author: David King Date: 2013-09-02 11:15:13 +0900 Avoid compiler error in ibus_engine_dbus_property_changed Do not return a value in a function that returns void. BUG=http://code.google.com/p/ibus/issues/detail?id=1650 Review URL: https://codereview.appspot.com/13334044 Patch from David King . M src/ibusengine.c commit b24efef988af48cbf7defd8db10a25a77fa646c6 Author: fujiwarat Date: 2013-08-30 18:25:42 +0900 Call _set_content_type in _create_input_context_done in im-ibus.so TEST=password dialog in gnome-shell Review URL: https://codereview.appspot.com/13255047 M client/gtk2/ibusimcontext.c commit 47fbb130190f31e8a9e385c8b58718f999119b6c Author: fujiwarat Date: 2013-08-28 13:10:46 +0900 Implement IME state per window. BUG=http://code.google.com/p/ibus/issues/detail?id=1568 TEST=Disable global engine with ibus-setup. Review URL: https://codereview.appspot.com/12957046 M bus/ibusimpl.c M bus/panelproxy.c M bus/panelproxy.h M data/ibus.schemas.in M setup/setup.ui M src/ibuspanelservice.c M src/ibuspanelservice.h M ui/gtk3/panel.vala commit b4bb7c2d103170e30e86b55fb61a9344f62252bb Author: Julien Humbert Date: 2013-08-28 09:53:56 +0900 Update french translation Review URL: https://codereview.appspot.com/13260043 Patch from Julien Humbert . M po/fr.po commit e5ca9e5b4bf2ad2499ccbfad588342a143eba24e Author: fujiwarat Date: 2013-08-20 15:01:42 +0900 Use gsettings instead of ibus-config in ibus-setup and ibus-ui-gtk3. TEST=ibus-setup and ibus-ui-gtk3 Review URL: https://codereview.appspot.com/12442044 M setup/main.py M ui/gtk3/application.vala M ui/gtk3/panel.vala commit 4adc001208cec701ca8f5fe53154c2c1e93c851e Author: fujiwarat Date: 2013-08-15 15:18:21 +0900 Update translations Update po/LINGUAS po/as.po po/de.po po/es.po po/fr.po po/gu.po po/hi.po po/hu.po po/ia.po po/it.po po/ja.po po/kn.po po/ko.po po/ml.po po/mr.po po/nl.po po/or.po po/pa.po po/pl.po po/pt_BR.po po/ru.po po/uk.po po/ta.po po/te.po po/uk.po po/zh_CN.po po/zh_TW.po Review URL: https://codereview.appspot.com/12583045 M po/LINGUAS M po/as.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po A po/ia.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/nl.po M po/or.po M po/pa.po M po/pl.po M po/pt_BR.po M po/ru.po M po/ta.po M po/te.po M po/uk.po M po/zh_CN.po M po/zh_TW.po commit 3b3a7ceccbf75f36dee0df45589d79f7e96131f4 Author: Daiki Ueno Date: 2013-08-14 13:29:45 +0200 Notify engines of the content-type of input context Add a new D-Bus method SetContentType to InputContext and Engine, to notify engines of the content-type (primary purpose and hints) of input context. This is useful to implement intelligent features in engines, such as automatic input-mode switch and text prediction. The "purpose" and "hints" arguments are compatible with GtkInputPurpose and GtkInputHints: https://developer.gnome.org/gtk3/unstable/GtkEntry.html#GtkInputPurpose https://developer.gnome.org/gtk3/unstable/GtkEntry.html#GtkInputHints and the API is similar to the content_type event in the Wayland Input Method Framework: http://cgit.freedesktop.org/wayland/weston/tree/protocol/input-method.xml#n202 BUG= Review URL: https://codereview.appspot.com/11422043 M bus/engineproxy.c M bus/engineproxy.h M bus/inputcontext.c M client/gtk2/ibusimcontext.c M src/ibusengine.c M src/ibusengine.h M src/ibusinputcontext.c M src/ibusinputcontext.h M src/ibustypes.h commit 5136dbc59fd3048445826c534fd6b5f3f8ca6b1e Author: Jan Arne Petersen Date: 2013-08-13 10:30:52 +0200 wayland: Add wayland client This patch adds a new client which supports the Wayland input method protocol. Note that the support is disabled by default until the input method protocol becomes official in the Wayland upstream. Supply --enable-wayland to configure to try it. Also, you will need to set the executable path of ibus-wayland under the "input-method" section of weston.ini, like this: [input-method] path=.../libexec/ibus-wayland BUG=Issue#1617 Review URL: https://codereview.appspot.com/11320043 Patch from Jan Arne Petersen . M client/Makefile.am A client/wayland/Makefile.am A client/wayland/README A client/wayland/input-method-client-protocol.h A client/wayland/input-method-protocol.c A client/wayland/main.c M configure.ac commit 1bdcf218eeda728391b5b4e33d536d2debfef1bc Author: fujiwarat Date: 2013-08-09 13:48:17 +0900 Update source files with LGP 2.1 according to COPYING. BUG=http://code.google.com/p/ibus/issues/detail?id=1424 TEST=rpmlint Review URL: https://codereview.appspot.com/12526043 M Makefile.am M bindings/Makefile.am M bindings/pygobject/Makefile.am M bindings/pygobject/gi/__init__.py M bindings/pygobject/gi/overrides/IBus.py M bindings/pygobject/gi/overrides/__init__.py M bindings/pygobject/test-override-ibus.py M bindings/vala/Makefile.am M bus/Makefile.am M bus/component.c M bus/component.h M bus/connection.c M bus/connection.h M bus/dbusimpl.c M bus/dbusimpl.h M bus/engineproxy.c M bus/engineproxy.h M bus/factoryproxy.c M bus/factoryproxy.h M bus/global.c M bus/global.h M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M bus/inputcontext.h M bus/main.c M bus/matchrule.c M bus/matchrule.h M bus/panelproxy.c M bus/panelproxy.h M bus/server.c M bus/server.h M bus/test-client.c M bus/test-client.h M bus/test-stress.c M bus/types.h M client/Makefile.am M client/gtk2/Makefile.am M client/gtk2/ibusim.c M client/gtk2/ibusimcontext.c M client/gtk2/ibusimcontext.h M client/gtk3/Makefile.am M client/x11/Makefile.am M client/x11/gdk-private.c M client/x11/gdk-private.h M client/x11/main.c M conf/Makefile.am M conf/dconf/Makefile.am M conf/dconf/config-private.h M conf/dconf/config.c M conf/dconf/main.c M conf/gconf/Makefile.am M conf/memconf/Makefile.am M conf/memconf/config.c M conf/memconf/config.h M conf/memconf/main.c M configure.ac M data/Makefile.am M data/dconf/Makefile.am M data/icons/Makefile.am M data/keymaps/Makefile.am M docs/Makefile.am M docs/reference/Makefile.am M engine/Makefile.am M engine/main.vala M ibus/Makefile.am M ibus/__init__.py M ibus/_config.py.in M ibus/_gtk.py M ibus/application.py M ibus/attribute.py M ibus/bus.py M ibus/common.py M ibus/component.py M ibus/config.py M ibus/engine.py M ibus/enginedesc.py M ibus/exception.py M ibus/factory.py M ibus/inputcontext.py M ibus/interface/Makefile.am M ibus/interface/__init__.py M ibus/interface/iconfig.py M ibus/interface/iengine.py M ibus/interface/ienginefactory.py M ibus/interface/iibus.py M ibus/interface/iinputcontext.py M ibus/interface/inotifications.py M ibus/interface/ipanel.py M ibus/lang.py M ibus/lookuptable.py M ibus/modifier.py M ibus/notifications.py M ibus/object.py M ibus/observedpath.py M ibus/panel.py M ibus/property.py M ibus/serializable.py M ibus/text.py M ibus/utility.py M m4/Makefile.am M setup/Makefile.am M setup/engineabout.py M setup/enginecombobox.py M setup/enginetreeview.py M setup/ibus-setup.in M setup/icon.py M setup/keyboardshortcut.py M setup/main.py M src/Makefile.am M src/gtkimcontextsimpleseqs.h M src/ibus.h M src/ibusattribute.c M src/ibusattribute.h M src/ibusattrlist.c M src/ibusattrlist.h M src/ibusbus.c M src/ibusbus.h M src/ibuscomponent.c M src/ibuscomponent.h M src/ibusconfig.c M src/ibusconfig.h M src/ibusconfigservice.c M src/ibusconfigservice.h M src/ibusdebug.h M src/ibusengine.c M src/ibusengine.h M src/ibusenginedesc.c M src/ibusenginedesc.h M src/ibusenginesimple.c M src/ibusenginesimple.h M src/ibuserror.c M src/ibuserror.h M src/ibusfactory.c M src/ibusfactory.h M src/ibushotkey.c M src/ibushotkey.h M src/ibusinputcontext.c M src/ibusinputcontext.h M src/ibusinternal.h M src/ibuskeymap.c M src/ibuskeymap.h M src/ibuskeynames.c M src/ibuskeys.h M src/ibuskeysyms-compat.h M src/ibuskeysyms.h M src/ibuskeyuni.c M src/ibuslookuptable.c M src/ibuslookuptable.h M src/ibusobject.c M src/ibusobject.h M src/ibusobservedpath.c M src/ibusobservedpath.h M src/ibuspanelservice.c M src/ibuspanelservice.h M src/ibusproperty.c M src/ibusproperty.h M src/ibusproplist.c M src/ibusproplist.h M src/ibusproxy.c M src/ibusproxy.h M src/ibusregistry.c M src/ibusregistry.h M src/ibusserializable.c M src/ibusserializable.h M src/ibusservice.c M src/ibusservice.h M src/ibusshare.c M src/ibusshare.h M src/ibustext.c M src/ibustext.h M src/ibustypes.h M src/ibusutil.c M src/ibusutil.h M src/ibusversion.h.in M src/ibusxml.c M src/ibusxml.h M src/tests/Makefile.am M src/tests/ibus-inputcontext-create.c M src/tests/ibus-inputcontext.c M tools/Makefile.am M tools/ibus.bash M tools/main.vala M ui/Makefile.am M ui/gtk2/Makefile.am M ui/gtk2/candidatepanel.py M ui/gtk2/engineabout.py M ui/gtk2/handle.py M ui/gtk2/i18n.py M ui/gtk2/ibus-ui-gtk.in M ui/gtk2/icon.py M ui/gtk2/languagebar.py M ui/gtk2/main.py M ui/gtk2/menu.py M ui/gtk2/notifications.py M ui/gtk2/panel.py M ui/gtk2/propitem.py M ui/gtk2/toolitem.py M ui/gtk3/Makefile.am M ui/gtk3/application.vala M ui/gtk3/candidatearea.vala M ui/gtk3/candidatepanel.vala M ui/gtk3/handle.vala M ui/gtk3/iconwidget.vala M ui/gtk3/panel.vala M ui/gtk3/pango.vala M ui/gtk3/property.vala M ui/gtk3/separator.vala M ui/gtk3/switcher.vala M util/IMdkit/Makefile.am M util/Makefile.am commit 1f2a94e0519021131cef2e509cfa11a0c6c3a291 Author: Daiki Ueno Date: 2013-08-02 10:33:21 +0200 tool: add "address" command to print D-Bus address This would be helpful to debug with dbus-monitor. Instead of: $ . .config/ibus/bus/* $ dbus-monitor --address $IBUS_ADDRESS ... one can do: $ dbus-monitor --address $(ibus address) ... This patch also adds help message to each sub-command. BUG= Review URL: https://codereview.appspot.com/11901044 M tools/ibus.1.in M tools/main.vala commit 3b013c9ee3e071a83351eb1bff59697b770f8b3a Author: fujiwarat Date: 2013-07-31 09:59:26 +0900 Remove IBUS_IS_ENGINE_DESC for freed pointer in ibus-bus.c BUG=http://code.google.com/p/ibus/issues/detail?id=1646 TEST=src/tests/ibus-bus.c Review URL: https://codereview.appspot.com/12093043 M src/tests/ibus-bus.c commit f16865829ff3dcc3fe835be1d40fd22322500d36 Author: fujiwarat Date: 2013-07-26 17:18:24 +0900 Release 1.5.3 Review URL: https://codereview.appspot.com/11708043 M README M configure.ac M src/ibusfactory.c commit bc2d0010ed29cb85e5507f2d91488bf1afab102c Author: fujiwarat Date: 2013-07-26 10:00:46 +0900 Add Norwegian keyboard in engine/simple.xml.in BUG=RH#987222 Review URL: https://codereview.appspot.com/11805043 M engine/simple.xml.in commit 583bfe6d59e9b5a8514bc250fcccb9cb793d8a02 Author: Daiki Ueno Date: 2013-07-25 18:12:26 +0900 daemon: fix PropertiesChanged signal emission This fixes a few problems of PropertiesChanged signal emission. First, it should be sent only when the properties have changed. Second, invalidated_properties should be set when the properties have been reset, not on error. Finally, the sender should be "org.freedesktop.IBus" rather than "org.freedesktop.DBus". BUG= R=takao.fujiwara1@gmail.com Review URL: https://codereview.appspot.com/11465045 M bus/ibusimpl.c commit 77189092184d00f4ae1838e422026da0d0d96ae2 Author: Eduardo Lima (Etrunko) Date: 2013-07-23 10:43:36 +0900 Remove reference to primary owner on ReleaseName BUG=http://code.google.com/p/ibus/issues/detail?id=1636 TEST=src/tests/ibus-bus.c Review URL: https://codereview.appspot.com/11004043 Patch from Eduardo Lima (Etrunko) . M bus/dbusimpl.c M src/tests/ibus-bus.c commit ee6b756b9b89af0343ebcb5f60d6f49ac1813f94 Author: fujiwarat Date: 2013-07-19 18:19:07 +0900 Remove arrow buttons in ibus-setup, which no longer work. BUG=RH#851758 TEST=ibus-setup Review URL: https://codereview.appspot.com/6475068 M setup/enginetreeview.py M setup/setup.ui commit 5f356a34e88ccdd316a960fcb33703aacf28ff09 Author: Osamu Aoki Date: 2013-07-19 18:14:19 +0900 Fix error with gcc -Wformat -Werror=format-security BUG=http://code.google.com/p/ibus/issues/detail?id=1638 TEST=bus/ibusimpl.c Review URL: https://codereview.appspot.com/11471044 Patch from Osamu Aoki . M bus/ibusimpl.c commit 7fdcd865f14d5de6a276e71c2ed958a736dc34db Author: Peter Michael Green Date: 2013-07-19 18:09:43 +0900 Fix error with gcc -Wformat -Werror=format-security BUG=http://code.google.com/p/ibus/issues/detail?id=1638 TEST=src/ibusfactory.c Review URL: https://codereview.appspot.com/11503043 Patch from Peter Michael Green . M autogen.sh M src/ibusfactory.c commit f64d4fdf43a17dc39132354ffdb1060a185fa715 Author: fujiwarat Date: 2013-07-17 11:50:25 +0900 Remove ibus_bus_list_active_engines in bus/test-client.c BUG=http://code.google.com/p/ibus/issues/detail?id=1637 TEST=bus/test-client.c Review URL: https://codereview.appspot.com/11336044 M bus/test-client.c commit 632a5c13072312015226c408ddb3d4eb478abe6f Author: Daiki Ueno Date: 2013-07-12 18:39:54 +0900 registry: use binary format instead of XML for cache Currently the registry cache is in the XML format, that may cause unnecessary parsing overhead on ibus-daemon startup. This patch changes the format to GVariant based binary representation. BUG= R=takao.fujiwara1@gmail.com Review URL: https://codereview.appspot.com/9963043 M src/ibusregistry.c M src/ibusregistry.h M src/ibusshare.c M tools/main.vala commit 9037ffe0f3ab419554903de6f12d00ee74f2f3ff Author: Daiki Ueno Date: 2013-07-12 18:05:06 +0900 build: fix make check This contains several fixes to the current tests: - Remove glib mem profiler call from src/tests, which is known not to work with the latest glib release: https://bugzilla.gnome.org/show_bug.cgi?id=701694 valgrind could be used instead. - Replace g_type_init() call in tests with ibus_init(). - Fix ibus-bus test after the DBus property change (commit 458945e7). no global engine may be set in the test environment. Also add more assertions to check the return values. - Fix pygobject test to use LOG_COMPILER and move sys.path adjustment into the test script itself. - Add new files to po/POTFILES.in. BUG= R=takao.fujiwara1@gmail.com Review URL: https://codereview.appspot.com/11156043 M bindings/pygobject/Makefile.am M bindings/pygobject/gi/__init__.py M bindings/pygobject/gi/overrides/__init__.py M bindings/pygobject/test-override-ibus.py M po/POTFILES.in M po/POTFILES.skip M src/tests/ibus-bus.c M src/tests/ibus-configservice.c M src/tests/ibus-engine.c M src/tests/ibus-factory.c M src/tests/ibus-global-engine.c M src/tests/ibus-inputcontext-create.c M src/tests/ibus-inputcontext.c M src/tests/ibus-keymap.c M src/tests/ibus-keynames.c M src/tests/ibus-proxy.c M src/tests/ibus-registry.c M src/tests/ibus-serializable.c M src/tests/ibus-share.c commit ecced4f45a46cb7557717b04e1ce1b284a397b8c Author: fujiwarat Date: 2013-07-12 10:41:38 +0900 Delete xdg in ibus-setup. Review URL: https://codereview.appspot.com/11100044 M setup/main.py commit 88ce21749e84cc92cbc91c919d27721c0f2e1ceb Author: fujiwarat Date: 2013-07-10 16:55:19 +0900 Load the system registry cache prior to the user one. gnome-settings-daemon runs ibus-daemon after the user configures any input method engines and causes a delay to show the engines on UI because no cache exists for ibus-daemon. The system cache can avoid the user timing. Review URL: https://codereview.appspot.com/10364043 M bus/Makefile.am M bus/dbusimpl.c M bus/ibus-daemon.1.in M bus/ibusimpl.c M bus/ibusimpl.h M bus/main.c D bus/registry.c D bus/registry.h D bus/test-registry.c M docs/reference/ibus/ibus-docs.sgml.in M docs/reference/ibus/ibus.types M src/Makefile.am M src/ibus.h A src/ibusregistry.c A src/ibusregistry.h M src/tests/Makefile.am A src/tests/ibus-registry.c M tools/ibus.1.in M tools/main.vala commit 5ed2b8c8253717b6c26281a8721403b006db04e6 Author: fujiwarat Date: 2013-07-05 13:03:49 +0900 Delete the python xdg dependency. BUG=RH#980749 Review URL: https://codereview.appspot.com/10930043 M debian/control M ibus.spec.in M ibus/common.py M setup/main.py commit 458945e7308ab2661355edbf6880102c5f628dbe Author: fujiwarat Date: 2013-06-14 12:13:13 +0900 Refactor old getter and setter to dbus property in bus/ibusimpl.c Review URL: https://codereview.appspot.com/9477043 M bus/ibusimpl.c M src/Makefile.am M src/ibusbus.c M src/ibusbus.h M src/ibusshare.h M src/tests/Makefile.am M src/tests/ibus-bus.c commit c9ba5e1d155ab711c68f18d26de38bdba3128f03 Author: Daiki Ueno Date: 2013-06-14 11:01:08 +0900 Make ibus-config tests side effect free Previously we assumed that test cases are executed in the order of registration. This is no longer true after glib change 89aa9dbd which fixed test case grouping. Clear the default match rule in each test case to avoid side effect. BUG= Review URL: https://codereview.appspot.com/10069045 M src/tests/ibus-config.c commit 7b9633ab6e20920710cd1f422bd4e6d18a363f35 Author: fujiwarat Date: 2013-06-11 12:46:02 +0900 Modify valac --target-glib. valac --ccode --target-glib=2.36 can disable g_type_init in the generated C files since g_type_init is deprecated in glib 2.36. But ibus tarball includes C files so that users do not require vala and vala versions are different between dist and build. If dist could have glib 2.36 to generate the ibus tarball but a user build would have glib 2.34, the user build would be failed because glib 2.34 requires g_type_init. This change makes sure the target-glib is minimum of the glib version for ibus. Review URL: https://codereview.appspot.com/10156044 M configure.ac M engine/Makefile.am M tools/Makefile.am M ui/gtk3/Makefile.am commit 4a68e97e32cc58baf233a8357d423614def3aac0 Author: fujiwarat Date: 2013-06-11 12:42:16 +0900 Fix an error message of gnome-autogen in autogen.sh BUG=http://code.google.com/p/ibus/issues/detail?id=1631 Review URL: https://codereview.appspot.com/10167044 M autogen.sh commit 5f78b55ee930a671c8ef63435925dcef9cd0ab5c Author: Daiki Ueno Date: 2013-06-10 11:22:39 +0900 Suppress warnings with Automake 1.13 The make variable INCLUDES is now obsoleted by AM_CPPFLAGS. BUG= R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/9915054 M bus/Makefile.am M client/gtk2/Makefile.am M client/gtk3/Makefile.am M engine/Makefile.am M src/tests/Makefile.am M tools/Makefile.am M ui/gtk3/Makefile.am commit 2a34936437e5c3c3e5e7f3621cf92fa94eaa466a Author: Daiki Ueno Date: 2013-06-07 13:01:44 +0900 build: improve test harness Run each test in isolated directory so it can run in parallel. Also improve the test wrapper and rename it to a better name. BUG= Review URL: https://codereview.appspot.com/9937047 M autogen.sh M configure.ac M src/tests/Makefile.am A src/tests/runtest D src/tests/setupenv commit 7ff8271dee2e3f5a9f65f64ee5ba798f4aa00b84 Author: fujiwarat Date: 2013-06-04 11:12:53 +0900 Remove g_type_init() calls. https://git.gnome.org/browse/glib/commit/?id=1dc774a653e992e1153fbed16f90097fa8db467f https://git.gnome.org/browse/vala/commit/?id=f1fbafdfdc91fadaa57d2e073fc29cc6804d6ae3 Review URL: https://codereview.appspot.com/9727047 M bus/dbusimpl.c M bus/test-matchrule.c M bus/test-registry.c M configure.ac M engine/Makefile.am M po/POTFILES.in M src/ibusshare.c M src/ibusshare.h M src/tests/ibus-bus.c M src/tests/ibus-config.c M src/tests/ibus-configservice.c M src/tests/ibus-engine-switch.c M src/tests/ibus-engine.c M src/tests/ibus-factory.c M src/tests/ibus-global-engine.c M src/tests/ibus-inputcontext-create.c M src/tests/ibus-inputcontext.c M src/tests/ibus-keymap.c M src/tests/ibus-keynames.c M src/tests/ibus-proxy.c M src/tests/ibus-serializable.c M src/tests/ibus-share.c M tools/Makefile.am M ui/gtk3/Makefile.am commit 5bb877682c218a5c0cd41e86a80655a7fd2269b9 Author: Colin Walters Date: 2013-05-29 10:56:17 +0900 Delete ibus.desktop This is not an actual application, it just starts the daemon in the background. That's not something that should be in the application list. It should be started in the background when necessary. BUG=http://code.google.com/p/ibus/issues/detail?id=1628 Review URL: https://codereview.appspot.com/9833043 Patch from Colin Walters . M bus/Makefile.am D bus/ibus.desktop.in commit 62f07b7a6904b8b03a59f3baf413becb2d5d9e14 Author: fujiwarat Date: 2013-05-17 12:12:54 +0900 Let users know the default hotkey is Super+space with libnotify. Review URL: https://codereview.appspot.com/9407043 M configure.ac M data/ibus.schemas.in M ui/gtk3/Makefile.am M ui/gtk3/panel.vala commit 3c96d67404da274c34631ad821da736cf55a2b62 Author: fujiwarat Date: 2013-05-15 12:03:54 +0900 Add man files of /usr/bin files. Review URL: https://codereview.appspot.com/9413043 M bus/Makefile.am A bus/ibus-daemon.1.in M setup/Makefile.am A setup/ibus-setup.1.in M tools/Makefile.am A tools/ibus.1.in commit f3d80dc026853c1024cdf6bda31b1496939cb095 Author: fujiwarat Date: 2013-05-13 16:36:19 +0900 Defalut triggers key is changed to space. We have been used space as the default triggers key. GNOME3 and Windows7 applied space as the default trigger key and IBus follows it for the consistent key between desktops. BUG=RH#953404 Review URL: https://codereview.appspot.com/9081043 M data/ibus.schemas.in M setup/main.py M ui/gtk3/panel.vala commit 927e9f58da9b4a9898403c8e339109e2ad2fa966 Author: Daiki Ueno Date: 2013-05-13 11:47:29 +0900 Check GtkIMContext:input-purpose to disable IM on lock screen Recent GtkIMContext has "input-purpose" property, which can be used to check if the target widget is a password entry, in a more reliable way. BUG=none R=Shawn.P.Huang@gmail.com Review URL: https://codereview.appspot.com/7064059 M client/gtk2/ibusimcontext.c commit 667b7f0b96e5a7e1190e606a9c680bcbda8c2a88 Author: fujiwarat Date: 2013-04-30 21:46:02 +0900 Implement embed_preedit_text. BUG=http://code.google.com/p/ibus/issues/detail?id=1606 Review URL: https://codereview.appspot.com/8112044 M bus/ibusimpl.c M src/ibusbus.c M src/ibusbus.h M ui/gtk3/panel.vala commit 4e175e3337337f2c261088d4576ea63a144cee3a Author: fujiwarat Date: 2013-04-24 13:44:35 +0900 Use EXTRA_DIST instead of DIST_SOURCES. Review URL: https://codereview.appspot.com/8698047 M bindings/vala/Makefile.am commit 0b612dfb8ab52a61896b9079acd2d76a360f8666 Author: fujiwarat Date: 2013-04-22 20:16:31 +0900 Fix make dist errors. Review URL: https://codereview.appspot.com/8850043 M bindings/pygobject/Makefile.am M bindings/vala/Makefile.am commit fe321d51ee5f7f4e7f3886ef6f55e4820a92675f Author: fujiwarat Date: 2013-04-17 09:57:33 +0900 Release 1.5.2 Review URL: https://codereview.appspot.com/7530044 M configure.ac commit 261bc3046f1e5deb5879bac23900ff7dbfa5a20d Author: Peng Huang Date: 2013-03-26 06:55:09 -0400 Draw highlight for focused IME in IME switcher. BUG=None TEST=Manual Review URL: https://codereview.appspot.com/7689046 M ui/gtk3/switcher.vala commit af1f409a3eace2ea9a063957a8797a50a77d131a Author: Peng Huang Date: 2013-03-26 06:54:43 -0400 Fix build error and warnings in Fedora 18. BUG=None TEST=Manual Review URL: https://codereview.appspot.com/7531047 M bus/dbusimpl.c M bus/main.c M client/gtk2/ibusimcontext.c M configure.ac M ibus.spec.in commit 928351ee88778cf97136d1a7dbc940390c23ddfc Merge: 175df226 4d7f4ad5 Author: Peng Huang Date: 2013-03-25 07:29:41 -0700 Merge pull request #6 from maxiaojun/master Show all g-ir-scanner warnings commit 175df2261b431eff65349b47bc6bd086051cde41 Author: fujiwarat Date: 2013-03-21 11:13:52 +0900 Move ibus.bash script from /etc to /usr/share BUG=RH#922996 Review URL: https://codereview.appspot.com/7863045 M tools/Makefile.am commit 2e7ece775f5412ab8e83a11e4d423b32a6114159 Author: Ville Skyttä Date: 2013-03-12 11:17:59 +0900 bash completion: No need to install it as executable. BUG=http://code.google.com/p/ibus/issues/detail?id=1601 Review URL: https://codereview.appspot.com/7696043 Patch from Ville Skyttä . M tools/Makefile.am commit 42dd60fe1fcdce11e7ac517786b398eba0cb9e17 Author: Daiki Ueno Date: 2013-03-12 06:41:43 +0900 Add textdomain property to IBusEngineDesc BUG=Issue#1580 Review URL: https://codereview.appspot.com/7692043 M bindings/pygobject/gi/overrides/IBus.py M src/ibusenginedesc.c M src/ibusenginedesc.h commit 69b48942e8ac9d39afeadfd9eb34f83247e8082a Author: Daiki Ueno Date: 2013-03-10 14:55:42 +0900 Simplify component xml generation using sed BUG=none Review URL: https://codereview.appspot.com/7445048 M conf/dconf/Makefile.am R080 conf/dconf/dconf.xml.in.in conf/dconf/dconf.xml.in M conf/gconf/Makefile.am R080 conf/gconf/gconf.xml.in.in conf/gconf/gconf.xml.in M conf/memconf/Makefile.am R080 conf/memconf/memconf.xml.in.in conf/memconf/memconf.xml.in M configure.ac M engine/Makefile.am M engine/gensimple.py R099 engine/simple.xml.in.in engine/simple.xml.in M ui/gtk2/Makefile.am R090 ui/gtk2/gtkpanel.xml.in.in ui/gtk2/gtkpanel.xml.in M ui/gtk3/Makefile.am R080 ui/gtk3/gtkpanel.xml.in.in ui/gtk3/gtkpanel.xml.in commit cff35929a9330081db25a86a8258489a27d4bdd5 Author: fujiwarat Date: 2013-03-08 11:21:25 +0900 Launch the second ibus engine too to reduce the launching time. Currently the first ibus engine only is running but the second engine is also frequently used. It is good to run the second engine before user types Ctrl+space. BUG=RH#838734 TEST=src/tests/ibus-bus Review URL: https://codereview.appspot.com/7433049 M bus/ibusimpl.c M src/ibusbus.c M src/ibusbus.h M src/tests/ibus-bus.c M ui/gtk3/panel.vala commit 5fa461889939a91fecff89a67630076b8cb987b2 Author: fujiwarat Date: 2013-03-07 13:16:10 +0900 Change set_use_system_keyboard_layout() timing. Call set_use_system_keyboard_layout() before update_engines() is called in panel.vala because update_engines() calls switch_engine(). BUG=http://code.google.com/p/ibus/issues/detail?id=1558#c43 Review URL: https://codereview.appspot.com/7559043 M ui/gtk3/panel.vala commit 4b2f6a477019b50375aba2e5f9c43e618b6905ad Author: fujiwarat Date: 2013-03-04 10:10:53 +0900 Implement use-system-keyboard-layout BUG=http://code.google.com/p/ibus/issues/detail?id=1558 Review URL: https://codereview.appspot.com/7414045 M data/ibus.schemas.in M ui/gtk3/panel.vala commit e0878144a704e9bfd0f5a60e6894b1de272aaa7b Author: Daiki Ueno Date: 2013-02-27 07:12:09 +0900 Fix make rpm errors due to ibus-dconf and pygobject override BUG=Issue#1600 Review URL: https://codereview.appspot.com/7404047 M ibus.spec.in commit f9ddda1e2d867b96889f80d9d30c0e88d3ec11b9 Author: Daiki Ueno Date: 2013-02-26 07:42:14 +0900 daemon: allow "eavesdrop" match rule Recent dbus-monitor supplies "eavesdrop" match rule which ibus-daemon does not accept. This patch silently ignores the rule so ibus-daemon behave the same as before. BUG=none Review URL: https://codereview.appspot.com/7225062 M bus/matchrule.c M bus/test-matchrule.c commit c79789fa1b5fd49a53b16e87813b88122168ff73 Author: fujiwarat Date: 2013-02-21 12:41:08 +0900 Fix annotation in ibus_bus_create_input_context BUG=http://code.google.com/p/ibus/issues/detail?id=1593 Review URL: https://codereview.appspot.com/7368044 M src/ibusbus.h M src/ibusinputcontext.h M src/ibuspanelservice.h commit 4d7f4ad5b5d6b29bb50cc9bf5b1442e3766151d9 Author: Ma Xiaojun Date: 2013-02-19 19:31:54 +0800 Show all GIR warnings M configure.ac commit 7e07299d17156e52b0b60b2cc50a82e29ef4f550 Author: fujiwarat Date: 2013-02-15 12:28:25 +0900 Fix no rule to make target test-override-ibus.py BUG=http://code.google.com/p/ibus/issues/detail?id=1592 Review URL: https://codereview.appspot.com/7332043 M bindings/pygobject/Makefile.am commit 62cd0492e3459416e1775aedc327bced53f66828 Author: Rui Matos Date: 2013-01-09 10:14:55 -0500 client: Queue events while the IBus context isn't ready There are actually 3 patches here. --- client: Queue events while the IBus context isn't ready We may lose events that ought to be processed while the IBus context isn't ready or if the connection to IBus isn't fully established yet. To avoid that, enqueue events to be processed later when the IBus context creation finishes. --- client: Don't cancel an ongoing create input context on another request This would only add more delays. --- client: Cancel any ongoing create input context request on finalize BUG= Review URL: https://codereview.appspot.com/6988047 Patch from Rui Matos . M client/gtk2/ibusimcontext.c commit 8ac534fc002356b93e2015a8866f1ea89e3895f9 Author: fujiwarat Date: 2012-12-15 17:40:18 +0900 Use Variant.unpack() instead of Variant.dup_strv(). Variant.dup_strv() returns a tuple in pygobject 3.2, e.g. (['space'], 1L), and a list in pygobject 3.4, e.g. ['space'] . BUG=RH#887153 Review URL: https://codereview.appspot.com/6941051 M setup/main.py commit d8c7e73464bdc65d7b96d7f0591aab608f66d0ea Author: fujiwarat Date: 2012-12-11 22:35:21 +0900 Release 1.5.1 BUG= Review URL: https://codereview.appspot.com/6925045 M configure.ac commit 346b83e3e015497f6ac2ec7fe8697bea175c2d25 Author: fujiwarat Date: 2012-12-11 22:32:06 +0900 Add fr(bepo) XKB engine. BUG=http://code.google.com/p/ibus/issues/detail?id=1558 Review URL: https://codereview.appspot.com/6926044 M engine/simple.xml.in.in commit 438e7d1d8586258cade509afb7de45327e953031 Author: fujiwarat Date: 2012-12-11 08:20:50 +0900 Fix IBus.py errors. BUG=http://code.google.com/p/ibus/issues/detail?id=1559 TEST=ibus-anthy Review URL: https://codereview.appspot.com/6867085 M bindings/pygobject/gi/overrides/IBus.py commit 9046f458ca817002e347275906555071b7d411d1 Author: Peng Huang Date: 2012-12-07 18:02:23 -0500 Relase 1.5.0 BUG=None Review URL: https://codereview.appspot.com/6906048 M configure.ac commit 76817548683606113dbf9d4dccec33555b9a65dc Author: fujiwarat Date: 2012-12-08 06:43:00 +0900 Remove transfer container in ibus_engine_simple_add_table. Review URL: https://codereview.appspot.com/6909049 M engine/main.vala M src/ibusenginesimple.c M src/ibusenginesimple.h commit 9e24b05ee36ca8edab72d9accc32460fae8eed55 Author: fujiwarat Date: 2012-12-07 11:18:20 +0900 Update translations. Update po/LINGUAS po/as.po po/bg.po po/bn_IN.po po/es.po po/et.po po/eu.po po/fr.po po/gu.po po/hi.po po/hu.po po/ja.po po/ko.po po/ml.po po/nl.po po/or.po po/pa.po po/pl.po po/ta.po po/te.po po/uk.po po/zh_CN.po po/zh_TW.po Review URL: https://codereview.appspot.com/6896046 M po/LINGUAS M po/as.po A po/bg.po M po/bn_IN.po M po/es.po A po/et.po A po/eu.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/ja.po M po/ko.po M po/ml.po M po/mr.po A po/nb.po M po/nl.po M po/or.po M po/pa.po M po/pl.po M po/ta.po M po/te.po M po/uk.po M po/zh_CN.po M po/zh_TW.po commit 7198fed9f3dac572726f12aaae92a6972c7b11b4 Author: Daiki Ueno Date: 2012-12-07 06:21:56 +0900 Revert required valac version to 0.14. BUG=none Review URL: https://codereview.appspot.com/6905045 M configure.ac commit e7aa18c06be43e61776ca71815871f2c3ca7d61f Author: fujiwarat Date: 2012-12-06 11:51:09 +0900 Hide some unused settings on ibus-setup. Review URL: https://codereview.appspot.com/6873058 M setup/setup.ui commit 9b4e665262048d7119aff3a1ef02ab79490e74e2 Author: Evan Nemerson Date: 2012-12-05 12:18:51 +0900 build: quote $@ in autogen.sh BUG=http://code.google.com/p/ibus/issues/detail?id=1556 Review URL: https://codereview.appspot.com/6867067 Patch from Evan Nemerson . M autogen.sh commit e038d1c0084f1070afc2ff3652374c24e49faff6 Author: fujiwarat Date: 2012-12-05 12:00:30 +0900 Change the default config to ibus-dconf. Review URL: https://codereview.appspot.com/6849070 M configure.ac A m4/gconf-2.m4 commit a1840c00fad1798e7b62f469286415e8458125c4 Author: fujiwarat Date: 2012-12-05 11:20:37 +0900 Add Ctrl+space customization. Review URL: https://codereview.appspot.com/6822102 M data/ibus.schemas.in M setup/keyboardshortcut.py M setup/main.py M setup/setup.ui M ui/gtk3/panel.vala commit 58accdcb3075beec8a8fedb5b07562eea4fdd848 Author: Daiki Ueno Date: 2012-12-05 06:11:54 +0900 Modernize vala binding generation Use vapigen.m4 and Makefile.vapigen from vala to handle vapi file generation. Also generate vapi always when gir is updated. BUG=none Review URL: https://codereview.appspot.com/6849132 M bindings/Makefile.am M bindings/vala/Makefile.am M configure.ac M m4/Makefile.am A m4/vapigen.m4 commit 0639472efba34707d6f2d91511fc4c59c5255611 Author: Mike FABIAN Date: 2012-12-04 10:50:40 -0500 Fix red colour in rgb value in pango.vala The red part of the rgb value was always passed as 0 to Pango.attr_foreground_new(r, g, b) and Pango.attr_background_new(r, g, b). BUG= Review URL: https://codereview.appspot.com/6874050 Patch from Mike FABIAN . M ui/gtk3/pango.vala commit 098bc1f5871241fec93831bc37715e45cc4182d6 Author: Colin Walters Date: 2012-12-03 23:36:10 +0530 IBusFactory: Fix syntax of gtk-doc comment This was always invalid, but older versions of gobject-introspection accepted it. BUG=https://bugzilla.gnome.org/show_bug.cgi?id=689354 Review URL: https://codereview.appspot.com/6846138 Patch from Colin Walters . M src/ibusfactory.c commit ae98b5a58846e1326550027dc8d2a773ed8a24c5 Author: fujiwarat Date: 2012-11-30 11:43:43 +0900 Fix xmllint errors. Review URL: https://codereview.appspot.com/6842115 M conf/dconf/dconf.xml.in.in M conf/gconf/gconf.xml.in.in M conf/memconf/memconf.xml.in.in M ui/gtk3/gtkpanel.xml.in.in commit 0e8a207fff98c008b298acd0e6d7d96f3c4f263c Author: Daiki Ueno Date: 2012-11-23 11:14:48 +0900 Fix out-of-tree build Also cleanup Makefiles and fix build error with older valac. BUG=none Review URL: https://codereview.appspot.com/6782099 M bindings/vala/Makefile.am M docs/reference/ibus/Makefile.am M engine/main.vala M src/Makefile.am M src/tests/Makefile.am commit 0057397548a354b7eb359e5d45201db4077074e2 Author: Daiki Ueno Date: 2012-11-23 08:17:23 +0900 Install pygobject override To mitigate the gap between the old python binding and pygobject, add wrapper to some classes. BUG=none Review URL: https://codereview.appspot.com/6842079 M bindings/Makefile.am A bindings/pygobject/Makefile.am A bindings/pygobject/gi/__init__.py A bindings/pygobject/gi/overrides/IBus.py A bindings/pygobject/gi/overrides/__init__.py A bindings/pygobject/test-override-ibus.py M configure.ac commit dd6acfa5013b35b61aeb4085eef7da63f581f2f8 Author: fujiwarat Date: 2012-11-22 15:07:12 +0900 Remove gnome-icon-theme-legacy dependency. gtk_image_set_from_icon_name() accesses the icon_name only but gtk_image_set_from_stock() can fallback the stock name to the real name. E.g. "gtk-about.png" is the symlink of "help-about.png" and "gtk-about.png" is included in gnome-icon-theme-legacy package in Fedora. Review URL: https://codereview.appspot.com/6846058 M setup/engineabout.py M setup/enginecombobox.py M setup/enginetreeview.py M setup/icon.py M ui/gtk3/iconwidget.vala M ui/gtk3/panel.vala M ui/gtk3/property.vala M ui/gtk3/switcher.vala commit 11a83ef32c7c73f0feb48fd36cc9f33abaa8024a Author: fujiwarat Date: 2012-11-19 11:58:35 +0900 Add cedilla_compose_seqs table for pt_BR compose keys. Review URL: https://codereview.appspot.com/6814119 M engine/main.vala M src/ibusengine.h M src/ibusenginesimple.h commit e129cf261f18935f073ce083169c7168bc60ff06 Author: fujiwarat Date: 2012-11-15 16:58:06 +0900 Change the default icon to ibus-keyboard due to gnome ibus integration. Review URL: https://codereview.appspot.com/6851051 M configure.ac commit 15f3ccb38474c6bb206a2158d86171c93d6ec6a5 Author: fujiwarat Date: 2012-11-13 12:05:07 +0900 Update simple.xml to enable layout_variant tag. Review URL: https://codereview.appspot.com/6820129 M engine/simple.xml.in.in commit dce22003c388a7274dc148161cf0e02f44d29ad6 Author: fujiwarat Date: 2012-11-09 10:26:23 +0900 Disable IME switcher window when switcher-delay-time is less than 0 Review URL: https://codereview.appspot.com/6818102 M data/ibus.schemas.in M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit 2ad1813370111608491e22e444bffe3607519652 Author: Daiki Ueno Date: 2012-11-06 17:31:55 +0900 gtk3: use different prev/next icons depending on orientation Use rotated icons for prev/next buttons on lookup table. BUG=none Review URL: https://codereview.appspot.com/6815080 M ui/gtk3/candidatearea.vala commit ebfb9ae7fe2af60f9c2b1c1bd56739316c01d097 Author: Peng Huang Date: 2012-11-05 09:24:15 -0500 Fix some build warnings. BUG=None Review URL: https://codereview.appspot.com/6775097 M bus/dbusimpl.c M tools/main.vala M ui/gtk3/candidatearea.vala M ui/gtk3/candidatepanel.vala M ui/gtk3/keybindingmanager.vala commit 4b044a05047dc897c8556f7c8856c53f6f4ea266 Author: fujiwarat Date: 2012-11-05 14:28:02 +0900 Add some milliseconds interval before IME switcher is shown. Review URL: https://codereview.appspot.com/6826045 M data/ibus.schemas.in M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit 1e6c42fa4fb42513ee9ae03b8534bce99dc02d73 Author: Daiki Ueno Date: 2012-10-26 16:56:34 +0900 ibus-daemon: use GFileMonitor instead of polling BUG=Issue#1514 Review URL: https://codereview.appspot.com/6589065 M bus/global.c M bus/global.h M bus/ibusimpl.c M bus/main.c M bus/registry.c M bus/registry.h M bus/server.c M src/ibuscomponent.c M src/ibuscomponent.h M src/ibusobservedpath.c M src/ibusobservedpath.h commit 16295679bd6f74e5884e5872c524374945c40a05 Author: Daiki Ueno Date: 2012-10-23 13:35:24 +0900 ibus-daemon: ignore standard component path if IBUS_COMPONENT_PATH is set Don't load components from /usr/share/ibus/components if IBUS_COMPONENT_PATH is set. Currently the envvar is only useful for testing and appending the standard path makes little sense. BUG=none Review URL: https://codereview.appspot.com/6753044 M bus/registry.c commit cf5de7501e28fe929ff86d9b1d7689e15bc1cc4a Author: fujiwarat Date: 2012-10-20 11:45:05 +0900 Add version property in IBusEngineDesc. BUG=http://code.google.com/p/ibus/issues/detail?id=1524 TEST=Manually Review URL: https://codereview.appspot.com/6736043 M ibus/enginedesc.py M src/ibusenginedesc.c M src/ibusenginedesc.h commit afdb7f6c33fda44c2ad4054b7c23523d59218f47 Author: fujiwarat Date: 2012-10-16 10:28:26 +0900 Add layout_variant and layout_option in IBusEngineDesc for XKB. TEST=Manually Review URL: https://codereview.appspot.com/6586075 M ibus/enginedesc.py M src/ibusenginedesc.c M src/ibusenginedesc.h M src/ibusserializable.h M tools/main.vala M ui/gtk3/panel.vala commit f9059d696390c01564a196dd4a5b2cd39ef6d7ac Author: fujiwarat Date: 2012-10-15 11:45:30 +0900 Fix fallback 'C' locale in ibus-setup. BUG=RH#863673 TEST=Manually Review URL: https://codereview.appspot.com/6649043 M setup/main.py commit 41c5f3d13c306a9d3e7fe969df4c50eeaddb4c0a Author: fujiwarat Date: 2012-10-15 11:39:42 +0900 Fix a typo. TEST=Manually Review URL: https://codereview.appspot.com/6651061 M bus/engineproxy.c M setup/main.py commit ead48c8748521537beb0fbbe4af95c6b9a99a8af Author: fujiwarat Date: 2012-10-12 11:31:35 +0900 Fix typo in data/dconf/profile/ibus http://git.gnome.org/browse/gdm/commit/?id=aa25b559c6e907485cc9e I copied the typo by mitake. dconf_engine_source_new() supports "user-db" or "system-db". http://git.gnome.org/browse/dconf/tree/engine/dconf-engine-source.c#n75 TEST=Manually Review URL: https://codereview.appspot.com/6640058 M data/dconf/profile/ibus commit 469438987c6aa3b87aa215648d55a7c5e0e01451 Author: fujiwarat Date: 2012-10-08 13:00:21 +0900 Fix make dist in the latet doc build. TEST=Manually Review URL: https://codereview.appspot.com/6615051 M docs/reference/ibus/Makefile.am commit af3da0f1f0441615db89116c7a4ae065afa210ca Author: Peng Huang Date: 2012-10-05 12:21:05 -0400 Fix wrong return from key snooper. BUG=None Review URL: https://codereview.appspot.com/6623048 M client/gtk2/ibusimcontext.c commit c66a26a0e5b6909c0726ed46f0e7c3651fc38b3e Author: Daiki Ueno Date: 2012-10-05 09:50:38 +0900 tests: set LC_ALL to C instead of en_US.Utf-8 If LC_* is not "C" and there is no translation found in the current locale, gettext honors the LANGUAGE envvar. BUG=Issue#1515 Review URL: https://codereview.appspot.com/6592074 M src/tests/ibus-util.c commit e97056e15badac9c0578a89d0085bfcb57ff7a2e Author: fujiwarat Date: 2012-10-03 11:48:20 +0900 Fix SIGABRT by finalized IBusIMContext during _request_surrounding_text BUG=RH#859879 TEST=Manually Review URL: https://codereview.appspot.com/6573051 M client/gtk2/ibusimcontext.c commit a541503e53616e4fddda59986023e7c20a198d56 Author: Peng Huang Date: 2012-09-28 10:11:01 -0400 Fix wrong size of switcher window after removing some engines. BUG=None Review URL: https://codereview.appspot.com/6560060 M ui/gtk3/switcher.vala commit defa8ee66d4a1a780bad0e6799ed0bb166d69eba Author: fujiwarat Date: 2012-09-27 10:11:34 +0900 Fix IBus.Bus.get_config is null. Now im-ibus.so uses ibus_bus_new_async() instead of ibus_bus_new() and then if ibus-setup-anthy calls GTK+ UI before ibus_bus_new(), the async function is called instead and the delay is happened with the latest ibus 1.5. The fix is to call ibus_bus_new() before GTK+. BUG=RH#859585 TEST=Manually Review URL: https://codereview.appspot.com/6566053 M setup/main.py commit 1f66434b9cea881de0f14de105763dc650351aea Author: fujiwarat Date: 2012-09-26 10:16:32 +0900 Fix a docs build error with the latest libxslt-1.1.27. TEST=manually Review URL: https://codereview.appspot.com/6570048 M docs/reference/ibus/ibus-docs.sgml.in M src/ibusobservedpath.h M src/ibusproperty.h commit b4fb74727f39697ce94c2c8a37f46044f357e17e Author: fujiwarat Date: 2012-09-17 12:12:15 +0900 Fix SIGABRT in bus_panel_proxy_register_properties TEST=Manually Review URL: https://codereview.appspot.com/6499112 M bus/engineproxy.c commit ea36002109cfaba8e78265a4398c17a1114fd3fe Author: fujiwarat Date: 2012-09-17 12:09:31 +0900 Fix make dist. TEST=Manually Review URL: https://codereview.appspot.com/6492121 M po/POTFILES.skip M src/tests/Makefile.am commit 75826b04b90f78e5c1cb94bfd429b5fc88c1de67 Author: fujiwarat Date: 2012-09-14 11:24:30 +0900 Add IBusProperty.symbol for the short label. IBusProperty.label had been shared between the panel menu label and language-bar button label so the label is too short against the panel menu. Now we redefines IBusProperty.label as the long label and the new IBusProperty.symbol is defined as the short label for the language-bar and the panel status icon. TEST=Manually Review URL: https://codereview.appspot.com/6495117 M ibus/property.py M src/ibusproperty.c M src/ibusproperty.h commit 7ab4c75aa8fb180ff7e26b60561753701581b90a Author: Daiki Ueno Date: 2012-09-12 10:06:57 +0900 ibus-daemon: trigger engine to send RegisterProperties when panel appears BUG=none Review URL: https://codereview.appspot.com/6506094 M bus/engineproxy.c M bus/engineproxy.h M bus/ibusimpl.c commit 8166b0b98bfe0d70c03fa26bb5e721a357ad4ef8 Author: Peng Huang Date: 2012-09-11 11:21:58 -0400 Use gdk_threads_add_idle_full() in gtkimmodule to avoid race condition in some multi-threaded apps. BUG=http://code.google.com/p/ibus/issues/detail?id=1505 Review URL: https://codereview.appspot.com/6488104 M client/gtk2/ibusimcontext.c commit b1bd749c0030d1822bb3b3dd096d071cc697d81e Author: Daiki Ueno Date: 2012-09-07 11:55:09 +0900 Prevent IME menu being empty when focus out Previously ibus-daemon did not make fake_context focused when focus-out, while it is supposed to do. BUG=none Review URL: https://codereview.appspot.com/6492086 M bus/ibusimpl.c commit 0ec6166efe8f74bf8e2c3a447cfd05700c23423d Author: Daiki Ueno Date: 2012-09-06 11:06:35 +0900 gtk3: Call XIGrabKeycode directly from Vala Port the logic of grabkeycode.c into Vala. This will make it easier to implement XI2 GenericEvent handling in KeybindingManager. BUG=none Review URL: https://codereview.appspot.com/6501080 M bindings/vala/Makefile.am A bindings/vala/xi.vapi M ui/gtk3/Makefile.am D ui/gtk3/grabkeycode.c M ui/gtk3/keybindingmanager.vala commit 489941fa3385b476a8c2daffe8d1805004349e04 Author: Daiki Ueno Date: 2012-09-03 12:53:18 +0900 Cleanup the vala code of gtk3 panel and tool by: - using config.vapi - omitting unnecessary "using X" Also localize ibus tool and make the argument handling better. BUG=none Review URL: https://codereview.appspot.com/6496066 M bindings/vala/Makefile.am A bindings/vala/config.vapi M tools/Makefile.am M tools/main.vala M ui/gtk3/Makefile.am M ui/gtk3/application.vala M ui/gtk3/candidatearea.vala M ui/gtk3/candidatepanel.vala M ui/gtk3/handle.vala M ui/gtk3/iconwidget.vala M ui/gtk3/keybindingmanager.vala M ui/gtk3/panel.vala M ui/gtk3/pango.vala M ui/gtk3/property.vala M ui/gtk3/separator.vala M ui/gtk3/switcher.vala commit 1961c2b2fc012988b0d7663c79787ab5b739c7b4 Author: Daiki Ueno Date: 2012-08-24 23:13:41 +0900 tests: fix "make check" with dash /bin/dash does not support ERR trap signal and ">&" redirect. Also fix copying non-existing component file. BUG=none Review URL: https://codereview.appspot.com/6478058 M src/tests/setupenv commit 738582c0cc4ef54e828209ba2c5d010e9a292679 Author: Daiki Ueno Date: 2012-08-24 21:52:06 +0900 Fix the last commit. Forgot to git add ibus-engine-switch.c. Review URL: https://codereview.appspot.com/6480052 A src/tests/ibus-engine-switch.c commit 69970b68c025a04f6ac557f8b196f2d5d3fe858e Author: Daiki Ueno Date: 2012-08-24 21:48:56 +0900 tests: add engine-switch test Moved engine specific test from ibus-bus.c to a separate file, so that it can be conditionally built depending on --enable-engine. Also do not register duplicate engine when loading component files. This is for the case when two engine descs with the same name are in different directories in IBUS_COMPONENT_PATH. BUG=none Review URL: https://codereview.appspot.com/6480052 M bus/registry.c M src/tests/Makefile.am M src/tests/ibus-bus.c commit 6bd9e0d2d49205fda366b20b18c7b20636993776 Author: fujiwarat Date: 2012-08-20 10:14:01 +0900 Fix to load the system gvdb with $DCONF_PROFILE in dconf 0.13.4 BUG=RH#844580 TEST=Manually Review URL: https://codereview.appspot.com/6446145 M conf/dconf/main.c M data/dconf/profile/ibus commit 2e81378f2251b2e5affd01b874fb0b59abd99240 Author: Daiki Ueno Date: 2012-08-20 10:00:17 +0900 engine: delay D-Bus name request after factory creation BUG=none Review URL: https://codereview.appspot.com/6441157 M engine/main.vala M src/tests/ibus-bus.c commit dd6a55663040eb34486d737cb62d9aa93f789c82 Author: Peng Huang Date: 2012-08-16 15:26:39 -0400 Do not use deprecated glib function g_atexit(). BUG=http://code.google.com/p/ibus/issues/detail?id=1489 Review URL: https://codereview.appspot.com/6454158 M client/x11/main.c commit 72ecfb351a1fe56cd23f9dc1db0a1c56ce7e65d3 Author: Daiki Ueno Date: 2012-08-09 10:58:47 +0900 Fix testcase failure when IBus is not installed. BUG=none Review URL: https://codereview.appspot.com/6455068 M bus/registry.c M src/tests/Makefile.am M src/tests/ibus-inputcontext.c A src/tests/setupenv commit bed48104cc27c4820b956f62cb853abadf8801a4 Author: Daiki Ueno Date: 2012-08-08 12:33:15 +0900 conf: always build ibus-memconf for testing BUG=none Review URL: https://codereview.appspot.com/6457087 M conf/Makefile.am M conf/memconf/Makefile.am commit bd4e87f39069331791da09649eb7bf1e675cfefa Author: Daiki Ueno Date: 2012-08-08 12:24:12 +0900 conf: cleanup GError usage - there are missing g_error_free - some code assume error != NULL when setting *error - src/tests/ibus-config.c has unconditional "unset" but it checks the return value BUG=none Review URL: https://codereview.appspot.com/6449103 M conf/dconf/config.c M conf/gconf/config.c M conf/gconf/main.c M conf/memconf/config.c M src/tests/ibus-config.c commit 644caf4add148deff0f697d2f48409145e414751 Author: Daiki Ueno Date: 2012-08-03 11:34:08 +0900 Set proper error code when config daemon is not running. BUG=none Review URL: https://codereview.appspot.com/6453076 M src/ibusconfig.c M src/ibustypes.h commit c013bbe9ac06c3418ca4d55c0302bcfb13d2977c Author: Daiki Ueno Date: 2012-08-01 10:26:48 +0900 Fix double-unref when looping over attachment. BUG=none Review URL: https://codereview.appspot.com/6445057 M src/ibusserializable.c commit a454448111650c3e92fc9ba65c26a57adc9c3c6c Author: fujiwarat Date: 2012-07-19 09:57:01 +0900 Support dconf 0.13.4 TEST=Manually Review URL: https://codereview.appspot.com/6426044 M conf/dconf/Makefile.am R091 conf/dconf/config.h conf/dconf/config-private.h M conf/dconf/config.c M conf/dconf/main.c M configure.ac commit f453bf83f502d8b1e2b6f07cf669c14cbcfe008e Author: Peng Huang Date: 2012-07-12 16:41:30 -0400 IBusBus: honor new connect-async prop in the socket monitor callback I think we should make use of the async connection here if the property is set. But we also need a new flag for ongoing async connection attempts because the socket monitor callback may be called several times before the connection is established. BUG=http://code.google.com/p/ibus/issues/detail?id=1482 TEST= Review URL: https://codereview.appspot.com/6346090 M src/ibusbus.c commit 636dda476734869c0e1fbf4d0464779a4c6fe667 Author: Rui Matos Date: 2012-07-12 11:11:23 -0400 bus: Own a name on the DBus session bus This makes it easier for third parties to track the ibus-daemon life cycle. BUG=http://code.google.com/p/ibus/issues/detail?id=1476 TEST= Review URL: https://codereview.appspot.com/6374058 Patch from Rui Matos . M bus/server.c commit 22ebca106794af153c01eae7e0175eb9f1a27648 Author: Peng Huang Date: 2012-06-08 10:28:33 -0400 Fix issue - keybinding with Super, Hyper and Meta Modifiers does not work. BUG=None TEST=Manually Review URL: https://codereview.appspot.com/6302047 M ui/gtk3/grabkeycode.c M ui/gtk3/keybindingmanager.vala M ui/gtk3/panel.vala commit 1ed8daa432f3fd922f26dac396f9cec1ad228f14 Author: Peng Huang Date: 2012-06-08 10:12:54 -0400 Refine IME switch keybinding related code. BUG=None TEST=Manually Review URL: https://codereview.appspot.com/6295047 M ui/gtk3/keybindingmanager.vala M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit d4f7a90936960ba3618cb621766e993951ed20de Author: Peng Huang Date: 2012-06-05 09:59:06 -0400 Use IM icon in switcher dialog. BUG=None TEST=Manually Review URL: https://codereview.appspot.com/6274044 M ui/gtk3/Makefile.am M ui/gtk3/switcher.vala commit 39522cfd9ffdcf7fce1b73e8228d271828dfe55f Author: fujiwarat Date: 2012-05-31 11:45:15 +0900 Enhance ibus-ui-gtk3 switcher labels. TEST=Linux desktop Review URL: https://codereview.appspot.com/5956045 M ui/gtk3/switcher.vala commit c3688a9849e588e17db825dc24e6dde86d61a77a Author: fujiwarat Date: 2012-05-31 11:38:40 +0900 Fix a SEGV when close the shortcutkey dialog and update mnemonic. TEST=Manually Review URL: https://codereview.appspot.com/6256068 M setup/keyboardshortcut.py commit 1fc1dc476ddc65e55fa2834c13b42bdb5880d52d Author: Peng Huang Date: 2012-05-30 11:38:40 -0400 Change engines order when global_engine is changed. BUG=http://code.google.com/p/ibus/issues/detail?id=1464 TEST=Manually Review URL: https://codereview.appspot.com/6249064 M ui/gtk3/panel.vala commit 095e8232b871738ff2d22f33e70c4b1199ea6b4f Author: Peng Huang Date: 2012-05-30 07:42:51 -0400 Update setup ui file to gtk 3.0 and remove a debug print. BUG=None TEST=Manually Review URL: https://codereview.appspot.com/6244057 M setup/enginecombobox.py M setup/setup.ui commit 82e628c3cb911e078cfe95a226ddb88cf75b1257 Author: Daiki Ueno Date: 2012-05-28 10:59:22 +0900 dconf: don't regenerate 00-upstream-settings after intltool-merge BUG=https://codereview.appspot.com/6215062/#msg10 TEST=manually with make distcheck Review URL: https://codereview.appspot.com/6245050 M data/dconf/Makefile.am commit 83397c256ff39da5c03cc9bdf935883046083f8f Author: Peng Huang Date: 2012-05-27 21:45:58 -0400 Refine inline document of ibus_engine_update_preedit_text_with_mode() BUG=http://code.google.com/p/ibus/issues/detail?id=1045 TEST=None Review URL: https://codereview.appspot.com/6249058 M src/ibusengine.h commit b745ea21b1ed6cbcec6614f957d1bd9c731f88c2 Author: Daiki Ueno Date: 2012-05-23 09:55:38 +0900 gtk3: don't show "missing" icon for each submenu BUG=none TEST=manually Review URL: https://codereview.appspot.com/6211072 M ui/gtk3/property.vala commit 4bee2863e8d2e51b185b6d149e6259848d8c0cb6 Author: Daiki Ueno Date: 2012-05-20 15:01:01 +0900 dconf: use text-based key file and dconf update BUG=none TEST=manually Review URL: https://codereview.appspot.com/6215062 M data/dconf/Makefile.am M data/dconf/make-dconf-override-db.sh commit 32533c72be144e0a26902e11ed0b967208a17317 Author: Peng Huang Date: 2012-05-17 11:08:14 -0400 Don't not set orientation when hide lookup table to improve UI performance. BUG=http://code.google.com/p/ibus/issues/detail?id=1461 TEST=manually Review URL: https://codereview.appspot.com/6203085 M ui/gtk3/candidatepanel.vala commit 6422f056a7e5946c59f105aabfc1bc724d13fc5a Author: Daiki Ueno Date: 2012-05-16 16:23:55 +0900 Improved the language of a couple of dialogs. Also update all po files. BUG=https://github.com/ibus/ibus/pull/4 TEST=manually Review URL: https://codereview.appspot.com/6212048 M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/en_GB.po M po/es.po M po/fa.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/lv.po M po/ml.po M po/mr.po M po/nl.po M po/or.po M po/pa.po M po/pl.po M po/pt_BR.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/tg.po M po/uk.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/main.py commit 1fbf1695a873e8deb80c032d467aaaa806ee6c4d Author: Jason Conti Date: 2012-05-14 13:55:30 -0400 Fix IBusBus gobject introspection by connecting in the constructor. BUG=http://code.google.com/p/ibus/issues/detail?id=1452 TEST=Manually Review URL: https://codereview.appspot.com/6210055 Patch from Jason Conti . M src/ibusbus.c commit 99cbfbdd6f6e5ebd570d2a4b983ea3561980f7a3 Author: Kim, Seung Won Date: 2012-05-09 10:05:59 -0400 Fix a typo. BUG=None TEST=None Review URL: https://codereview.appspot.com/6188057 Patch from Kim, Seung Won . M src/ibusbus.c commit bbbdd2efb005b77282311d8dd1536ed6a2bf32ac Author: Jason Conti Date: 2012-05-09 09:29:30 -0400 Add tests for ibus_bus_new_async BUG=http://code.google.com/p/ibus/issues/detail?id=1452 Review URL: https://codereview.appspot.com/6200055 Patch from Jason Conti . M src/tests/ibus-bus.c commit 7ca7db00f8d8feb5d68873089ac3418c795a0c15 Author: Jason Conti Date: 2012-05-08 15:42:38 -0400 Use ibus_bus_new_async in gtk2 client. BUG=http://code.google.com/p/ibus/issues/detail?id=1452 TEST=Manually Review URL: https://codereview.appspot.com/6198052 Patch from Jason Conti . M client/gtk2/ibusimcontext.c commit a78a254715fb410d4c2f7fd274894e51d74bc9bb Author: Jason Conti Date: 2012-05-08 14:01:57 -0400 Add function ibus_bus_new_async to create a new IBusBus object and asynchronously connect to the IBus daemon. BUG=http://code.google.com/p/ibus/issues/detail?id=1452 TEST=Manually Review URL: https://codereview.appspot.com/6159047 Patch from Jason Conti . M src/ibusbus.c M src/ibusbus.h commit e9f682d4c6bf90ba8c40e2920d24d7bbba449e8f Author: fujiwarat Date: 2012-05-08 10:44:36 +0900 Fix GtkBuilder bindtextdomain in ibus-setup. The patch was provided by Akio Obata BUG=http://code.google.com/p/ibus/issues/detail?id=1453 TEST=Linux desktop Review URL: https://codereview.appspot.com/6203045 M ui/gtk2/i18n.py commit c333b7604437d10b30e8e33ef18c276c11119394 Author: fujiwarat Date: 2012-04-27 11:42:00 +0900 Fix some test codes. BUG=http://code.google.com/p/ibus/issues/detail?id=1438 TEST=Linux desktop Review URL: https://codereview.appspot.com/6121053 M bus/test-client.c M bus/test-stress.c commit d0df8d3a62fd156029fb1422cd786d3f351b17fe Author: fujiwarat Date: 2012-04-27 11:27:03 +0900 Enable to fall back /etc/machine-id http://cgit.freedesktop.org/dbus/dbus/commit/dbus/dbus-sysdeps-unix.c?id=66e52541d5bdd4927a5c702963749760643313f4 BUG=http://code.google.com/p/ibus/issues/detail?id=1389 TEST=Linux desktop Review URL: https://codereview.appspot.com/6111060 M src/ibusshare.c commit b8fe4d782db37385246f651493f9d935dd58c301 Author: Daiki Ueno Date: 2012-04-18 10:37:07 +0900 Fix make check. The make variable TESTS is reserved by automake: https://www.gnu.org/software/automake/manual/automake.html#index-TESTS-832 and thus it causes error when make check: make[4]: Entering directory `/home/ueno/devel/ibus/src' /bin/sh: line 9: ./tests: Is a directory FAIL: tests BUG=none TEST=manually Review URL: https://codereview.appspot.com/6056043 M src/Makefile.am commit f2e266da9e60bc5318ea98ad40c8f83a8bb06026 Author: fujiwarat Date: 2012-04-17 10:25:58 +0900 Add options to disable to build UI and engines. TEST=Linux desktop Review URL: https://codereview.appspot.com/6031059 M Makefile.am M configure.ac commit 75df361698c7be58e33993784f2d6b9b0957fd44 Author: fujiwarat Date: 2012-04-16 10:19:57 +0900 Fix the order of arguments in NameOwnerChanged BUG=RH#799571 TEST=Linux desktop Review URL: https://codereview.appspot.com/6022044 M ui/gtk3/application.vala commit 6c5e5d09cb13989e21c7d533e9c0332feb3f0208 Author: fujiwarat Date: 2012-04-10 11:31:49 +0900 Ignore mouse masks in ui/gtk3/keybindingmanager for accessibility. TEST=Linux desktop Review URL: https://codereview.appspot.com/5975069 M ui/gtk3/keybindingmanager.vala commit 991eebc31aa605fbce03edda6eaecfd06c2fcb1b Author: fujiwarat Date: 2012-04-06 12:11:35 +0900 Fix ibus-x11 SEGV in _process_key_event_done. IMForwardEvent() calls _Xi18nFindClient() and it could return NULL. Maybe the connect_id would be disconnected during the async process_key_event. This fix checks XIM_DISCONNECT in ims_protocol_handler() to cancel IMForwardEvent() in _process_key_event_done(). BUG=RH#769135 TEST=Linux desktop Review URL: https://codereview.appspot.com/5498090 M client/x11/main.c commit b620e0bcda97934d6927b7cdde300598ac5de45f Author: fujiwarat Date: 2012-04-05 10:44:26 +0900 Fix ibus-setup SEGV on C locale. TEST=Linux desktop Review URL: https://codereview.appspot.com/5976076 M setup/enginecombobox.py commit 6ec73515cb040be531107b70705659a2668f0965 Author: Yusuke Sato Date: 2012-04-03 18:31:47 +0900 Fix typo in ibusfactory.c. BUG=None TEST=None Review URL: https://codereview.appspot.com/5969068 M src/ibusfactory.c commit ceaeb86d9b7c5d8674151c863551564a15c0924f Author: fujiwarat Date: 2012-03-23 11:40:29 +0900 Enable bindtextdomain in ibus-ui-gtk3. TEST=Linux desktop Review URL: https://codereview.appspot.com/5876049 M configure.ac M ui/gtk3/Makefile.am M ui/gtk3/application.vala commit b8c12964e9d14b8a15ef55b2f9ae23bf1592d6ee Author: fujiwarat Date: 2012-03-23 11:25:28 +0900 Add --help in ibus tool. TEST=Linux desktop Review URL: https://codereview.appspot.com/5868046 M tools/Makefile.am M tools/main.vala commit 99f6b739f3dd9d7448c5e546da1195a901881752 Author: fujiwarat Date: 2012-03-20 14:25:56 +0900 Set the custom font in ui.gtk3.CandidatePanel. BUG=RH#803250 TEST=Linux desktop Review URL: https://codereview.appspot.com/5845047 M ui/gtk3/panel.vala commit 942718e3a3177c33be2b04cf526c20be4ed227f6 Author: fujiwarat Date: 2012-03-19 16:20:55 +0900 Show language id on ibus-ui-gtk3.switcher window. BUG=RH#803177 TEST=Linux desktop Review URL: https://codereview.appspot.com/5843059 M ui/gtk3/switcher.vala commit 69902696928e6acb953ab30b1f70e462b5994272 Author: Daiki Ueno Date: 2012-03-15 14:42:43 +0900 ibus-daemon: make sure to focus out engine when unset. BUG=none TEST=manual Review URL: https://codereview.appspot.com/5824046 M bus/inputcontext.c commit 865488566851107a69c315ad7d1cf01496c5e019 Author: Daiki Ueno Date: 2012-03-15 13:21:08 +0900 gtk3: show language name on the IME menu. BUG=https://bugzilla.redhat.com/show_bug.cgi?id=803177 TEST=manual Review URL: https://codereview.appspot.com/5819049 M src/ibusutil.c M ui/gtk3/panel.vala commit ace5cdedf80608fb3524e643195c608543cf7a09 Author: Daiki Ueno Date: 2012-03-14 11:07:47 +0900 gtk3: honor lookup table labels and orientation BUG=none TEST=manual Review URL: https://codereview.appspot.com/5798074 M ui/gtk3/candidatearea.vala M ui/gtk3/candidatepanel.vala commit e38ff0fd94ae653eb0a39dde00712f809ef92654 Author: Peng Huang Date: 2012-03-13 12:02:15 -0400 libibus: Fix a refcount issue in ibus_prop_list_deserialize() BUG=None TEST=Linux desktop Review URL: https://codereview.appspot.com/5796079 M src/ibusproplist.c commit 3179c4fa298a89d2902842ccd30f475e012157b3 Author: fujiwarat Date: 2012-03-12 10:29:23 +0900 Fix to ungrab ui/gtk3/switcher for GTK 3.3.18 and GLib 2.31.20 BUG=RH#800897 TEST=Linux desktop Review URL: https://codereview.appspot.com/5795048 M ui/gtk3/switcher.vala commit af87f5ee161f1cfeab85cd0e19e8c77f6b89ee76 Author: Peng Huang Date: 2012-03-07 00:41:14 -0500 Remove some unused code. BUG=None TEST=Make Review URL: https://codereview.appspot.com/5756061 M bus/ibusimpl.c M client/x11/gdk-private.c M src/ibuscomponent.c M src/ibusconfigservice.c M src/ibusshare.c commit c1b7d86c3fc12274a569d0227877a53819927f25 Author: Peng Huang Date: 2012-03-07 00:40:47 -0500 Refine coding style. BUG=None TEST=Manually Review URL: https://codereview.appspot.com/5753058 M ui/gtk3/handle.vala commit 24ea6f7077c4f44be5fca392160d44c73f03133a Author: Peng Huang Date: 2012-03-07 00:39:17 -0500 Shrink the IME switcher window size if necessary. BUG=None TEST=Manually Review URL: https://codereview.appspot.com/5753056 M ui/gtk3/switcher.vala commit bef66b7ce2344dd0a4c72a6738e99a05ca2d9e56 Author: Daiki Ueno Date: 2012-03-06 10:03:25 +0900 Restrict config notification to panel. BUG=none TEST=manual Review URL: https://codereview.appspot.com/5729064 M ui/gtk3/panel.vala commit f1c010f6b5a56e21b78e5ea97aea263b95d7e540 Author: fujiwarat Date: 2012-03-05 13:25:53 +0900 Fix python library to load libibus.so.Y TEST=Linux desktop Review URL: https://codereview.appspot.com/5731060 M ibus/_config.py.in M ibus/common.py M ui/gtk3/Makefile.am commit e786c06a6676c46dff74c2fcdd81948226625a42 Author: fujiwarat Date: 2012-03-05 10:19:05 +0900 Enhance make dist TEST=Linux desktop Review URL: https://codereview.appspot.com/5730046 M Makefile.am M autogen.sh M bus/Makefile.am M configure.ac M po/POTFILES.in A po/POTFILES.skip M src/Makefile.am M ui/gtk3/Makefile.am commit b7fb2107ca35662a92fe6b4964cade367a07c4c1 Author: fujiwarat Date: 2012-03-05 10:14:07 +0900 Revert Gdk.DeviceManager.list_devices to work with vala 0.15 Fixed a build error in ui/gtk3 with vala 0.15 TEST=Linux desktop Review URL: https://codereview.appspot.com/5720068 M ui/gtk3/switcher.vala commit f1c82fbc0681b471056b74f51b1fda71fc210e78 Author: Daiki Ueno Date: 2012-03-02 15:58:36 +0900 ibus-setup: improve ibus-daemon auto start Instead of repeatedly launch the daemon and wait, start it once and wait for IBusBus::connected signal for 5 seconds. BUG=none TEST=manually on Fedora 17 Review URL: https://codereview.appspot.com/5716045 M setup/main.py commit e2191142be323934b1c2dafc16736ff9999541f7 Author: fujiwarat Date: 2012-03-02 11:18:38 +0900 Change LT_VERSION_INFO so that SONAME is changed for ibus 1.5. TEST=Linux desktop Review URL: https://codereview.appspot.com/5707059 M configure.ac commit 07ec3b4c930445731708c2006a65dda11acfcc78 Author: Daiki Ueno Date: 2012-03-02 10:27:47 +0900 ibus-setup: minor typo fixes of GI enum names BUG=none TEST=manual Review URL: https://codereview.appspot.com/5710049 M setup/enginetreeview.py M setup/main.py commit 0c044387fe874fe403c27a50792c2c3720665bbe Author: fujiwarat Date: 2012-03-01 12:09:07 +0900 Fix build errors in ui/gtk3 with vala-0.15.1 and gtk3-3.3.14 TEST=Linux desktop Review URL: https://codereview.appspot.com/5704053 M ui/gtk3/candidatepanel.vala M ui/gtk3/handle.vala commit 991166db3bbcaf8c76569a368dcaaf4dd7c263d8 Author: fujiwarat Date: 2012-03-01 11:55:48 +0900 Fix no gconf engines_order and the engine setup button on ibus-setup. TEST=Linux desktop Review URL: https://codereview.appspot.com/5702057 M data/ibus.schemas.in M setup/main.py commit 25d05c609e0500dd2d51e946c672bc051a30972a Author: fujiwarat Date: 2012-03-01 11:38:15 +0900 Fix to launch ibus-setup without running ibus-daemon. BUG=RH#796070 TEST=Linux desktop Review URL: https://codereview.appspot.com/5704054 M setup/main.py commit 5af76e815d4680b16d297eb66bd3b5486a501802 Author: fujiwarat Date: 2012-03-01 11:33:52 +0900 Fix page_up and page_down signals in ibus-ui-gtk3 BUG=RH#796555 TEST=Linux desktop Review URL: https://codereview.appspot.com/5705050 M ui/gtk3/panel.vala commit d91bdc01d58629f65d6be01665f54767b1bd7f0e Author: Daiki Ueno Date: 2012-03-01 10:50:37 +0900 Simplify ibus_config_watch tests using fixtures. BUG=none TEST=manual Review URL: https://codereview.appspot.com/5702058 M src/tests/Makefile.am M src/tests/ibus-config.c commit 57846a1016a395f06e9b8fe8db1c537f791a6018 Author: Daiki Ueno Date: 2012-02-29 17:00:32 +0900 Add ibus_config_watch/unwatch. Currently IBusConfig proxy is notified every config value change. e.g. ibus-m17n will get notified even when ibus-anthy's config values are changed. With this patch, IBusConfig proxy will be able to restrict notification by calling ibus_config_watch(). For example, after: ibus_config_watch (config, "engine/M17N/hi/inscript", NULL); it will be notified value changes only under "engine/M17N/hi/inscript" section. BUG=none TEST=manually with modified ibus-m17n Review URL: https://codereview.appspot.com/5091045 M src/ibusbus.c M src/ibusconfig.c M src/ibusconfig.h M src/ibusinternal.h M src/tests/Makefile.am M src/tests/ibus-config.c commit 87863d575856768517f8f6bd8119eaea2b8e7c49 Author: fujiwarat Date: 2012-02-29 15:44:00 +0900 Fix to return false in ibus_simple_engine_process_key_event IM clients expect filter_keypress returns FALSE when IME is disabled. Now we use the simple engine instead of the disabled state so it would be better that process_key_event returns FALSE for ASCII. BUG=RH#769133 TEST=Linux desktop Review URL: https://codereview.appspot.com/5707057 M src/ibusenginesimple.c commit d050c5ba6c8a6546cb7855a3eff9a9c1f048b977 Author: Daiki Ueno Date: 2012-02-29 12:58:46 +0900 dconf: remove workaround for self-write notification. BUG=none TEST=manual Review URL: https://codereview.appspot.com/5709051 M conf/dconf/config.c commit 4fe94aee0d3099060433189f3457df3df6b89bea Author: Peng Huang Date: 2012-02-27 10:28:18 -0500 Remove redefinition of typedef IBusEngineSimplePrivate. BUG=None TEST=Make on Linux desktop Review URL: https://codereview.appspot.com/5699087 M src/ibusenginesimple.c commit 947ea295e8e9a75a4add59434677912e603bd6d0 Author: Peng Huang Date: 2012-02-27 09:57:47 -0500 Refine inline doc and test for ibus_bus_get_engines_by_names(). BUG=None TEST=Manually Review URL: https://codereview.appspot.com/5697067 M src/ibusbus.h M src/tests/ibus-bus.c commit 7d1df0e8aa0e630c6959061e1f49f296424982dd Author: Daiki Ueno Date: 2012-02-27 13:34:15 +0900 Fix build with vala 0.14.2. BUG=none TEST=manual Review URL: https://codereview.appspot.com/5697071 M ui/gtk3/switcher.vala commit 99e4d9d7af0bdeaf396bbd26cac949eca7cdfe1d Merge: 1b5b4067 7975fa01 Author: Peng Huang Date: 2012-02-26 16:28:40 -0500 Merge remote-tracking branch 'origin/devel' TEST=Linux Desktop Review URL: https://codereview.appspot.com/5517048 commit 1b5b4067486212d5cf5d937d40eb18da6941acee Author: fujiwarat Date: 2012-02-23 12:07:44 +0900 Add ibus_unset_log_handler to remove the handler in ibus_set_log_handler TEST=Linux desktop Review URL: https://codereview.appspot.com/5690064 M src/ibusshare.c M src/ibusshare.h commit 7975fa01ae1cc1294b878681463e030fdd0de2bd Author: Peng Huang Date: 2012-01-31 10:40:40 -0500 ibus-engine-simple: Use icon ibus-keyboard for xkb layouts. M engine/gensimple.py M engine/simple.xml.in.in commit daf63a8db3293324245d918aec25f8c9ff58c359 Author: Peng Huang Date: 2012-01-27 10:18:59 -0500 vala: Fix vala binding M engine/main.vala commit 30d217ac85265a9913e2fdfd266b48c679882daa Author: Peng Huang Date: 2012-01-27 09:51:26 -0500 ibus-ui-gtk3: Add quit item in menu. M tools/main.vala M ui/gtk3/panel.vala commit ff9556cc215d7bf8319bea81e60ce22ea67566a9 Author: Peng Huang Date: 2012-01-24 12:15:40 -0500 ibus-ui-gtk3: Use longname in IME switch UI. M ui/gtk3/panel.vala commit 07f48ddfccaddad79dfd48b382b3e04f2705c09c Author: Peng Huang Date: 2012-01-24 12:15:13 -0500 libibus: Fix some reference issues. M src/ibusattrlist.c M src/ibusbus.c M src/ibusproplist.c commit c5721c6292dd9b23a425fc3bca01128e2d4bd382 Author: Peng Huang Date: 2012-01-23 14:21:42 -0500 libibus: add test case for ibus_bus_get_engines_by_names. M src/tests/ibus-bus.c commit 006f386313365154976134d9dfce4b4afe3d9b91 Author: Peng Huang Date: 2012-01-23 13:59:24 -0500 libibus: Fix annotation of ibus_bus_get_engines_by_names. M src/ibusbus.c M src/ibusbus.h commit 39422b6224ce511bd11093bf57af4b1bc163a181 Author: Peng Huang Date: 2012-01-23 13:27:59 -0500 ibus-ui-gtk2: Do not release gtk2 ui in tarball but keep them in repo. M configure.ac M ui/Makefile.am commit 9c6018bf91e4f288585c478ea566a0c7ec271a56 Author: Peng Huang Date: 2012-01-23 12:27:10 -0500 Fix review issues. M bus/Makefile.am M bus/component.c M bus/dbusimpl.c M bus/engineproxy.c M bus/factoryproxy.c M bus/global.c M bus/global.h M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M bus/inputcontext.h M bus/main.c M bus/matchrule.c M bus/matchrule.h D bus/option.h M bus/panelproxy.c M bus/registry.c M bus/server.c M bus/test-client.c M bus/test-matchrule.c M configure.ac M src/gtkimcontextsimpleseqs.h M src/ibusenginesimple.c M src/ibuskeynames.c M src/ibuskeysyms-compat.h M src/ibuskeysyms.h M src/ibusutil.c M src/ibusxml.c commit f70cd8e334fed1020d0a03e8dc0f6bc2c50b23cb Author: Peng Huang Date: 2012-01-13 11:52:53 -0500 ibus-ui-gtk3: Disable panel when Panel name owership is lost. M ui/gtk3/application.vala M ui/gtk3/panel.vala commit 389ad09a6fff55652fd30159c1008018187e4d77 Author: Peng Huang Date: 2012-01-13 11:29:49 -0500 ibus-daemon: Fix a matchrule parse issue. M bus/matchrule.c M bus/test-matchrule.c commit 55a9300f49ea5b711dbbf78870f3d9d400e3b662 Author: Peng Huang Date: 2012-01-12 10:41:00 -0500 ibus-ui-gtk3: Fix hotkey issue when xkb -option ctrl:swapcap is using. M ui/gtk3/switcher.vala commit 3df2d9f52efe96a7d4d484860c81d2ed38a061f7 Author: Peng Huang Date: 2012-01-12 10:12:44 -0500 ibus-ui-gtk3: Hide the candidate window during starting up. M ui/gtk3/candidatepanel.vala M ui/gtk3/panel.vala commit a14ff9ea9e6168fd48071c45b8fbfdc5d1182b9a Author: Peng Huang Date: 2012-01-12 10:05:37 -0500 ibus-ui-gtk3: Fix a crash when config module is not ready. M ui/gtk3/panel.vala commit 1537971b607190eee248cf82020075ef6fecbc3c Author: Peng Huang Date: 2012-01-11 22:18:10 -0500 Rename xinput-ibus.in to xinput-ibus M Makefile.am M configure.ac R073 xinput-ibus.in xinput-ibus commit ab6b68c2d273336ead3492954844ce244e15480a Author: Peng Huang Date: 2012-01-11 20:41:16 -0500 ibus-daemon: Move global variables into separated files. A bus/global.c A bus/global.h commit 05af2cf44375d560f7340151738d25ed156aa67a Author: Peng Huang Date: 2012-01-11 17:27:01 -0500 Do not create IBusInputContext in focus_in virtual function M ui/gtk3/panel.vala commit 3981f1e46d14b37012aaa138d1681f196c0cfebd Author: Peng Huang Date: 2012-01-11 17:26:44 -0500 Reenable test casues for ibus-daemon M bus/Makefile.am M bus/inputcontext.c M bus/main.c M bus/test-client.c M bus/test-matchrule.c M bus/test-stress.c commit 985dadc47c09460db4e812f9d2b539aefab34ac8 Author: Peng Huang Date: 2012-01-11 17:25:59 -0500 Fix match rule parsing bug. M bus/matchrule.c commit 6d6f93858b59948f747b9d42cd529e72d3db0deb Author: Peng Huang Date: 2012-01-11 11:20:36 -0500 Ignore some unused bits in modifiers M ui/gtk3/keybindingmanager.vala commit 0bbb10e9fbdd42eefdc731b6bb81589bbb6678d1 Author: Peng Huang Date: 2012-01-06 15:17:32 -0500 Refine ibus_get_language_name() test case M src/tests/ibus-util.c commit fccbddcc3553fde537ee61545f95487cd8a3f4b2 Author: Peng Huang Date: 2012-01-06 14:52:40 -0500 Remove some unused code and fix a focus issue M bus/ibusimpl.c M bus/inputcontext.c commit d7dbac12fd428ec55e36f8fa163729149cdb56b8 Author: Peng Huang Date: 2012-01-06 14:52:18 -0500 Create __languages_dict with g_hash_table_new_full M src/ibusutil.c commit 25a884b6afab4bc6ee3f97704608e352e4e1163a Author: Peng Huang Date: 2012-01-06 12:28:42 -0500 Fix a bug in simple.xml.in.in M engine/gensimple.py M engine/simple.xml.in.in commit f80d56d7599dd7f31ecba28d7c8d9df162006287 Author: Peng Huang Date: 2012-01-06 12:17:04 -0500 Move current language to the first place in the IME combobox M setup/enginecombobox.py commit 48276af4f487c0c27d5b1a0f6cf9224aa72e35b3 Author: Peng Huang Date: 2012-01-06 11:55:24 -0500 Fix a bug in ibus_get_language_name and add a unit test M setup/enginecombobox.py M src/ibusutil.c M src/tests/Makefile.am A src/tests/ibus-util.c commit c5421afdd1357f4599367b048be89818dc2630b3 Author: Peng Huang Date: 2012-01-06 11:07:15 -0500 Fix a build error M bus/ibusimpl.c commit 661bb47f98f82c8887b11d3ad1f6c7ac8e546f2c Author: Peng Huang Date: 2012-01-06 10:57:31 -0500 Remove some useless xkb layout M bus/ibusimpl.c M engine/gensimple.py M engine/simple.xml.in.in M ui/gtk3/panel.vala commit fc72d2f6b11595e38216fbffd1048e2ba07d524d Author: Peng Huang Date: 2012-01-05 17:34:30 -0500 refine code for reviewing M bus/Makefile.am M bus/ibusimpl.c M engine/gensimple.py commit 2872ba0f68bc960668eddabd00c39529235919d6 Author: Peng Huang Date: 2012-01-05 15:11:14 -0500 Execute ibus-setup in panel correctly M ui/gtk3/panel.vala commit 866efc43a4ae8a91956fe1d9d252eb5963d3170a Author: Peng Huang Date: 2012-01-05 14:59:35 -0500 WIP M configure.ac M engine/gensimple.py M src/ibusutil.c D ui/gtk3/gtkpanel.xml.in M ui/gtk3/panel.vala commit 369a7906fb980ba5d2b69d2ac0bffcc9951b83fe Author: Peng Huang Date: 2012-01-05 14:34:59 -0500 Escape some desc M engine/gensimple.py M engine/simple.xml.in.in commit 9a8ce1b1a97063aed41ac9bfdbf98721ed38cf20 Author: Peng Huang Date: 2012-01-05 14:27:58 -0500 Generate simple.xml.in.in from xkb layouts A engine/gensimple.py M engine/simple.xml.in.in commit 1cf24fbfd61a5fc7bd1286b34f60656015d2dba8 Author: Peng Huang Date: 2012-01-04 17:41:21 -0500 Deprecated ibus python library. M ibus/__init__.py commit 64f8274b599a4caa3e501e3a06cf8082db1d5475 Author: Peng Huang Date: 2012-01-04 17:08:03 -0500 WIP add gtkpanel.xml for gtk3 ui M configure.ac M ui/gtk3/Makefile.am A ui/gtk3/gtkpanel.xml.in A ui/gtk3/gtkpanel.xml.in.in commit a773bc6313763d828de015fcfd2b44ec10fb733b Author: Peng Huang Date: 2012-01-04 16:48:16 -0500 WIP Disable gtk2 ui in rpm spec file. M ibus.spec.in commit 7520633eac6a773c7b53bb51ccc062890811edbc Author: Peng Huang Date: 2012-01-04 16:02:20 -0500 WIP add --enable-python-library M Makefile.am M configure.ac M ui/Makefile.am M ui/gtk3/property.vala commit 3bb751415b4337ef2479ae7553afad3d883d7afe Author: Peng Huang Date: 2012-01-04 15:35:00 -0500 WIP IME and sys menus. M ui/gtk3/Makefile.am M ui/gtk3/panel.vala M ui/gtk3/property.vala commit 3b96fd09796b311699dad881737000b2ff503561 Author: Peng Huang Date: 2012-01-04 10:52:28 -0500 Add restart and exit commands in ibus tools M tools/ibus.bash M tools/main.vala commit 55492f4491972c0cbc1f082540f639b79484269e Author: Peng Huang Date: 2011-12-22 11:25:17 -0500 Make registered IME visible to panel. M bus/ibusimpl.c commit 96201f111217b064317606cc9adb67cc1dfe2535 Author: Peng Huang Date: 2011-12-19 16:18:40 -0500 Change IME icon on systray. M ui/gtk3/panel.vala commit ad17864ed34d00b65ae40ff69bd2c133addaebcf Author: Peng Huang Date: 2011-12-19 15:36:59 -0500 Delay showing switch popup window to avoid annonying. M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit 303308e397f409e3c74be72eaf307efc2a7cb832 Author: Peng Huang Date: 2011-12-17 15:20:29 -0500 WIP move all conf components into conf dir M Makefile.am A conf/Makefile.am R100 dconf/Makefile.am conf/dconf/Makefile.am R100 dconf/config.c conf/dconf/config.c R100 dconf/config.h conf/dconf/config.h R100 dconf/dconf.xml.in.in conf/dconf/dconf.xml.in.in R100 dconf/main.c conf/dconf/main.c R100 gconf/Makefile.am conf/gconf/Makefile.am R100 gconf/config.c conf/gconf/config.c R100 gconf/config.h conf/gconf/config.h R100 gconf/gconf.xml.in.in conf/gconf/gconf.xml.in.in R100 gconf/main.c conf/gconf/main.c R100 memconf/Makefile.am conf/memconf/Makefile.am R100 memconf/config.c conf/memconf/config.c R100 memconf/config.h conf/memconf/config.h R100 memconf/main.c conf/memconf/main.c R100 memconf/memconf.xml.in.in conf/memconf/memconf.xml.in.in M configure.ac commit 07c3d35786349db0f0b561e4ccb5051b71c8b0ed Author: Peng Huang Date: 2011-12-17 15:07:07 -0500 WIP fix gtk3 setup issues M setup/enginetreeview.py M setup/main.py commit e1d9ff1dbd0a5169dd685027c31f843ac1636f57 Author: Peng Huang Date: 2011-12-17 10:55:26 -0500 WIP fix some issues with gtk3 and gi M setup/enginetreeview.py M setup/icon.py M setup/keyboardshortcut.py M setup/main.py commit 9983fbfb473347669b058254c55537ce707f7c2a Author: Peng Huang Date: 2011-12-16 18:02:54 -0500 WIP port setup ui to gtk3 M setup/engineabout.py M setup/enginecombobox.py M setup/enginetreeview.py M setup/icon.py M setup/keyboardshortcut.py M setup/main.py M setup/setup.ui commit c2f197c6fc7626857a59f2d3a0fd7d889742a939 Author: Peng Huang Date: 2011-12-16 15:11:49 -0500 WIP port enginecombobox.py icon.py to gtk3 M setup/engineabout.py M setup/enginecombobox.py M setup/icon.py commit ee6d61921d92bc5657634d57c51d6efbbf0fd348 Author: Peng Huang Date: 2011-12-16 14:44:11 -0500 WIP port engineabout.py to gtk3 T setup/engineabout.py commit dcf309af71d23d8c3dd94ba0b009c5e2b39008cc Author: Peng Huang Date: 2011-12-16 14:10:51 -0500 Remove some unused module in py file M setup/main.py commit ba24671167c1b4b632771b3146448485489bbbf8 Author: Peng Huang Date: 2011-12-16 13:25:41 -0500 Comment out all debug log in ibusenginesimple.c M src/ibusenginesimple.c commit 51ee0ae762ff8d9c7c76d1669012f63928327737 Author: Peng Huang Date: 2011-12-16 11:39:57 -0500 Refine ibus.bash M tools/ibus.bash commit 205dfcbff7473b760966145f5bf316650d63f918 Author: Peng Huang Date: 2011-12-15 18:38:53 -0500 Use xkb:layout:us as default engine. M bus/ibusimpl.c commit 1ddca02cd9c86e55ec6742716459cf6a66bf5ede Author: Peng Huang Date: 2011-12-15 18:27:18 -0500 set xkblayout in 'ibus engine' command M tools/main.vala commit aae1c575e4f42805b7d44c269c3721afa189bbc2 Author: Peng Huang Date: 2011-12-15 18:14:45 -0500 Fix bash completion issue M tools/ibus.bash commit 72dcb202700c74ed2ff971e46d124152f665754d Author: Peng Huang Date: 2011-12-15 17:56:16 -0500 WIP app ibus bash completion script and fix rpmbuild M ibus.spec.in M setup/engineabout.py M setup/i18n.py M tools/Makefile.am A tools/ibus.bash M tools/main.vala commit a91abfb49fa7c68229f72ca920031800eb815828 Author: Peng Huang Date: 2011-12-15 12:29:30 -0500 WIP add ibus switch-engine command M tools/main.vala commit ba7496ec4bb4c1ed16e450bf7344addc3dfad24d Author: Peng Huang Date: 2011-12-15 12:05:49 -0500 WIP ibus list-engine command M tools/main.vala commit 3e114c4cbbebbfdf89fd36dc74ed4cdb6f5004c2 Author: Peng Huang Date: 2011-12-14 16:35:04 -0500 WIP add a shell tool. M Makefile.am M configure.ac A tools/Makefile.am A tools/main.vala M ui/gtk3/property.vala commit 0fb7788fb103da00d38f69b44ee63f78f3cda14e Author: Peng Huang Date: 2011-12-14 15:21:49 -0500 Rename ui/gtk to ui/gtk2 M configure.ac M ui/Makefile.am R100 ui/gtk/Makefile.am ui/gtk2/Makefile.am R100 ui/gtk/candidatepanel.py ui/gtk2/candidatepanel.py R100 ui/gtk/engineabout.py ui/gtk2/engineabout.py R100 ui/gtk/gtkpanel.xml.in.in ui/gtk2/gtkpanel.xml.in.in R100 ui/gtk/handle.py ui/gtk2/handle.py R100 ui/gtk/i18n.py ui/gtk2/i18n.py R100 ui/gtk/ibus-ui-gtk.in ui/gtk2/ibus-ui-gtk.in R100 ui/gtk/icon.py ui/gtk2/icon.py R100 ui/gtk/languagebar.py ui/gtk2/languagebar.py R100 ui/gtk/main.py ui/gtk2/main.py R100 ui/gtk/menu.py ui/gtk2/menu.py R100 ui/gtk/notifications.py ui/gtk2/notifications.py R100 ui/gtk/panel.py ui/gtk2/panel.py R100 ui/gtk/propitem.py ui/gtk2/propitem.py R100 ui/gtk/toolitem.py ui/gtk2/toolitem.py commit ca0d5c22eb78e4cdce79f573374ef3d339740d6d Author: Peng Huang Date: 2011-12-14 12:54:39 -0500 Bump the version and fix rpmbuild script M configure.ac M ibus.spec.in M ui/Makefile.am M ui/gtk3/Makefile.am commit 53d83b393061ae25d829f9d825197c52f878ec55 Author: Peng Huang Date: 2011-12-14 12:52:22 -0500 Do not release remote InputContext. M ui/gtk3/panel.vala commit a13c4b978c835349f6df52719edfb0040fed5708 Author: Peng Huang Date: 2011-12-13 12:06:49 -0500 Save and load engines order. M ui/gtk3/panel.vala commit 78fab6af0f6843a3b5de7b9800896c18f5ab25d7 Author: Peng Huang Date: 2011-12-12 18:10:15 -0500 Handle preload_engines config changes. M ui/gtk3/panel.vala commit 65d88f8797f67027380dc0b09c658422159b7488 Author: Peng Huang Date: 2011-12-12 16:57:36 -0500 Fix radio menu group and keybinding problems. M ui/gtk3/keybindingmanager.vala M ui/gtk3/panel.vala M ui/gtk3/property.vala M ui/gtk3/switcher.vala commit dd4e001ac71e6c933fc5bf5745515eb161dbc2ac Author: Peng Huang Date: 2011-12-05 16:47:10 -0500 wip M ui/gtk3/panel.vala commit 229d5431b16de7257deb6c8244f2c6258211c91d Author: Peng Huang Date: 2011-12-05 15:57:06 -0500 Add xkb layouts switch support and add three demo xkb layouts. M bus/ibusimpl.c M engine/simple.xml.in.in M src/ibusenginesimple.c M ui/gtk3/panel.vala commit 29312ba148c8e43e1b8cb4d9abc433d7404a0965 Author: Peng Huang Date: 2011-12-05 14:21:00 -0500 Create simple engine M Makefile.am M configure.ac A engine/Makefile.am A engine/main.vala A engine/simple.xml.in.in M src/ibusfactory.c commit 436516f78b26c5e2201e35f0af6fa60745a84dd0 Author: Peng Huang Date: 2011-11-30 16:37:39 -0500 Use g_list_free_full to simplified some code. M bus/connection.c M bus/dbusimpl.c M bus/ibusimpl.c M bus/registry.c M src/ibuscomponent.c M src/ibusfactory.c M src/ibusxml.c commit 1983e58d9f4f7471bcd1e59b2ef7729ca3fecc25 Author: Peng Huang Date: 2011-11-30 15:46:52 -0500 Port gtk_im_context_simple_add_table to libibus. M src/ibusenginesimple.c M src/ibusenginesimple.h commit 76c804e3c99af12dd918983df71cc06a57a62d1a Author: Peng Huang Date: 2011-11-30 15:01:34 -0500 Integrate IBusEngineSimple from ibus-xkb project. M src/Makefile.am A src/gtkimcontextsimpleseqs.h M src/ibus.h M src/ibusengine.c A src/ibusenginesimple.c A src/ibusenginesimple.h commit abf2bbe61071f27a7993e08e6022e8bc4cca5e53 Author: Peng Huang Date: 2011-11-28 18:25:10 -0500 wip M ui/gtk3/panel.vala M ui/gtk3/property.vala commit 9d5f0ace3f3b9d8aeaaeb409b61991446ac480b4 Author: Peng Huang Date: 2011-11-28 18:08:27 -0500 WIP implement register_properties and set_property M ui/gtk3/Makefile.am M ui/gtk3/panel.vala A ui/gtk3/property.vala commit 32cff2880506b0c2249ad38c50e15331d22ace80 Author: Peng Huang Date: 2011-11-28 11:55:29 -0500 Fix a valac warning M ui/gtk3/keybindingmanager.vala M ui/gtk3/panel.vala commit 2af1fcdd8626fa04c8736d5e3076e9dbd6381c43 Author: Peng Huang Date: 2011-11-28 11:30:22 -0500 Remove switchertest.vala M ui/gtk3/Makefile.am D ui/gtk3/switchertest.vala commit b97ab9f70b033fd53fbc62c2173db7f318c660c4 Author: Peng Huang Date: 2011-11-27 19:57:08 -0500 WIP make engine switch hotkey work M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit dece8ebebf771193ca071329919e35dc122a2b4f Author: Peng Huang Date: 2011-11-27 00:21:02 -0500 WIP implement engine switcher popup ui M src/ibusbus.c M src/ibusbus.h M ui/gtk3/Makefile.am M ui/gtk3/candidatepanel.vala M ui/gtk3/grabkeycode.c M ui/gtk3/keybindingmanager.vala M ui/gtk3/panel.vala M ui/gtk3/switcher.vala M ui/gtk3/switchertest.vala commit c9700e577276328adbbb4d1afde26a61079dd10b Author: Peng Huang Date: 2011-11-25 17:28:31 -0500 wip M ui/gtk3/application.vala M ui/gtk3/panel.vala M ui/gtk3/switcher.vala commit b935e9ca9eb5bf1ca6d32a22d385cf782336e3ee Author: Peng Huang Date: 2011-11-25 14:17:51 -0500 Use XI2 in keybindingmanager. M ui/gtk3/Makefile.am M ui/gtk3/application.vala A ui/gtk3/grabkeycode.c M ui/gtk3/keybindingmanager.vala M ui/gtk3/panel.vala M ui/gtk3/switcher.vala M ui/gtk3/switchertest.vala commit bcac07401ab4df6157097fee53de3ab887011fe0 Author: Peng Huang Date: 2011-11-24 18:13:00 -0500 wip M ui/gtk3/Makefile.am M ui/gtk3/keybindingmanager.vala A ui/gtk3/switcher.vala A ui/gtk3/switchertest.vala commit 89dfb1f4f0b18d684ffc3bb2bcee4683416c23e8 Author: Peng Huang Date: 2011-11-24 13:27:44 -0500 Fix src/Makefile.am to install ibuskeysym-compat.h M src/Makefile.am commit 7446203bcd7ce8b6f075e960e4c1653e62e82ecd Author: Peng Huang Date: 2011-11-24 11:55:26 -0500 Rename ibus keysyms. M bus/Makefile.am M bus/engineproxy.c M bus/inputcontext.c M src/ibus.h M src/ibushotkey.c M src/ibuskeymap.c M src/ibuskeynames.c A src/ibuskeysyms-compat.h M src/ibuskeysyms-update.pl M src/ibuskeysyms.h M src/tests/ibus-keynames.c M ui/gtk3/Makefile.am commit 53d33ec4e6ad41a116f25cfa7ce12e04f6f93752 Author: Peng Huang Date: 2011-08-16 07:26:42 -0400 Remove enable status of input context and hotkey logic in ibus-daemon M autogen.sh M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M bus/inputcontext.h M bus/panelproxy.c M client/gtk2/ibusimcontext.c M configure.ac M ibus/bus.py M ibus/inputcontext.py M ibus/interface/iibus.py M ibus/interface/iinputcontext.py M src/ibusbus.c M src/ibusbus.h M src/ibusinputcontext.c M src/ibusinputcontext.h M src/tests/ibus-inputcontext.c M ui/Makefile.am M ui/gtk/candidatepanel.py M ui/gtk/languagebar.py M ui/gtk/panel.py A ui/gtk3/Makefile.am A ui/gtk3/application.vala A ui/gtk3/candidatearea.vala A ui/gtk3/candidatepanel.vala A ui/gtk3/handle.vala A ui/gtk3/iconwidget.vala A ui/gtk3/keybindingmanager.vala A ui/gtk3/panel.vala A ui/gtk3/pango.vala A ui/gtk3/separator.vala commit 60587bf804feb7ed4dcb8c1731f115420ca28b49 Author: fujiwarat Date: 2012-02-16 13:04:05 +0900 Fix gir annotations. - It seems python does not allow to use 'exec' as a variable. Renamed 'exec' property so that the constructor in IBus.Component is used. - It seems the python virtual method is available when the function is described in header files in case that annotations are needed so the signal function ibus_factory_create_engine is added newly. TEST=Linux desktop Review URL: https://codereview.appspot.com/5649082 M src/ibusattribute.h M src/ibuscomponent.c M src/ibuscomponent.h M src/ibusfactory.c M src/ibusfactory.h commit 3b8d6ee8fbd42a8daf3b544e8d0ba17a198a9acf Author: Daiki Ueno Date: 2012-02-14 10:45:20 +0900 Fix typoes in gtk-doc comments. BUG=none TEST=manually Review URL: https://codereview.appspot.com/5645095 M src/ibusbus.h M src/ibusconfig.h M src/ibusengine.h M src/ibushotkey.h M src/ibusinputcontext.h M src/ibusserializable.h M src/ibusshare.h commit a5b51c91cb1185f35f3315ad35e1e03b84264faf Author: fujiwarat Date: 2012-02-13 16:03:13 +0900 Fix typo. BUG=http://code.google.com/p/ibus/issues/detail?id=1388 TEST=Linux desktop Review URL: https://codereview.appspot.com/5652077 M configure.ac commit 3862735d41168a87d9b77e9ce78ddf228212e015 Author: Daiki Ueno Date: 2012-02-13 13:56:44 +0900 Don't look for ibus-1.0.pc when generating GIR. BUG=http://lists.alioth.debian.org/pipermail/pkg-ime-devel/2012-February/001778.html TEST=manually Review URL: https://codereview.appspot.com/5653072 M src/Makefile.am commit 91dd6724035bf89eb843b7d147e08794a35a569a Author: Peng Huang Date: 2012-02-05 09:04:22 -0500 Release 1.4.1. BUG=None TEST=Make dist Review URL: https://codereview.appspot.com/5602056 M configure.ac commit 185dd51b595bdeedf8d86eb1214466e2de93f5f3 Author: Peng Huang Date: 2012-02-02 00:28:42 -0500 Fix typoes and remove Encoding from desktop files. BUG=None TEST=None Review URL: https://codereview.appspot.com/5618046 M bus/ibus.desktop.in M client/x11/main.c M setup/ibus-setup.desktop.in commit 6c777b2d17cbbbf84cddebec0da980374774542b Author: Daiki Ueno Date: 2012-02-01 10:00:42 +0900 Minor fixes related to git.mk. Remove .gitignore files from the git repo, define GITIGNOREFILES in some Makefiles, and update git.mk from the Behdad upstream. BUG=none TEST=manually Review URL: https://codereview.appspot.com/5581057 D .gitignore M Makefile.am D bus/.gitignore D client/x11/.gitignore D data/.gitignore M data/dconf/Makefile.am D debian/.gitignore D docs/.gitignore D docs/reference/ibus/.gitignore D gconf/.gitignore M git.mk D ibus/.gitignore D m4/.gitignore M m4/Makefile.am D po/.gitignore D setup/.gitignore D src/.gitignore D src/tests/.gitignore D ui/gtk/.gitignore commit cbdd673a040c95ba42f33c0c3884319b37155b46 Author: Daiki Ueno Date: 2012-02-01 09:59:37 +0900 Generate vapi from gir instead of gi. BUG=none TEST=manually on Fedora 16 Review URL: https://codereview.appspot.com/5599052 A bindings/vala/IBus-1.0-custom.vala A bindings/vala/IBus-1.0.metadata M bindings/vala/Makefile.am D bindings/vala/ibus-1.0.vapi D bindings/vala/ibus-1.0/ibus-1.0-custom.vala D bindings/vala/ibus-1.0/ibus-1.0.defines D bindings/vala/ibus-1.0/ibus-1.0.excludes D bindings/vala/ibus-1.0/ibus-1.0.files D bindings/vala/ibus-1.0/ibus-1.0.gi D bindings/vala/ibus-1.0/ibus-1.0.metadata D bindings/vala/ibus-1.0/ibus-1.0.namespace M configure.ac commit deaa090367c89128490a9247a7d0fd5d1b21149c Author: Daiki Ueno Date: 2012-01-31 12:56:27 +0900 Minor fixes when generating GIR. BUG=none TEST=manually Review URL: https://codereview.appspot.com/5600052 M src/Makefile.am M src/ibusengine.h M src/ibusfactory.h commit eb1dbdce044f43a1064179c4ee2591cff0f74aad Author: Daiki Ueno Date: 2012-01-30 12:29:48 +0900 dconf: preserve names under /desktop/ibus/engine/bopomofo. BUG=none TEST=manually on Fedora 16 Review URL: https://codereview.appspot.com/5595047 M data/ibus.schemas.in commit 3e363af1c526a92456df5d1597763d175cd7ba7d Author: fujiwarat Date: 2012-01-29 10:32:01 +0900 Fix the GIR annotation of ibus_bus_get_global_engine #2. BUG=none TEST=Linux desktop Review URL: https://codereview.appspot.com/5578054 M src/ibusbus.h commit d380b11952513f3862be4d91d2c2042d76621ee3 Author: fujiwarat Date: 2012-01-27 11:16:52 +0900 Fix the GIR annotation of ibus_bus_get_global_engine. BUG=none TEST=Linux_desktop Review URL: https://codereview.appspot.com/5576048 M src/ibusbus.h commit d3610308ed0d1d722de061d3957dcef55bcf7448 Author: fujiwarat Date: 2012-01-26 11:09:33 +0900 Fix the return value in IBusEngine.process_key_event with signal. BUG=none TEST=Linux_desktop Review URL: https://codereview.appspot.com/5569061 M src/ibusengine.c commit 90e971bdbb0d46ad474d3e952286fb40f3d04bfe Author: Daiki Ueno Date: 2012-01-26 10:27:27 +0900 Add a dconf option to inhibit dconf name conversion. BUG=https://code.google.com/p/ibus/issues/detail?id=1395 TEST=manually with ibus-hangul and ibus-skk on Fedora 16 Review URL: https://codereview.appspot.com/5570062 M data/ibus.schemas.in M dconf/config.c commit 50491822d6bc6738a5f565360b14a6913059b006 Author: fujiwarat Date: 2012-01-24 11:06:19 +0900 Rename ibus_engine_new_type with ibus_engine_new_with_type. seed assigns GType in IBus.Engine.type and also assignes "*_new_foo" method in IBus.Engine.foo so renamed the function. BUG=http://code.google.com/p/ibus/issues/detail?id=1397 TEST=Linux_desktop with seed and gjs Review URL: https://codereview.appspot.com/5572046 M src/ibusengine.c M src/ibusengine.h M src/ibusfactory.c commit 64c5f3d8667f26cd44ed35c229a8983ba75c6eff Author: Peng Huang Date: 2012-01-06 10:17:10 -0500 Add G_GNUC_PRINTF for function ibus_text_new_from_printf(), so compiler can check arguments. BUG=None TEST=Manually Review URL: http://codereview.appspot.com/5519047 M src/ibustext.h commit f25acc22028e3dd98d8482e58c3925d2611683b9 Author: fujiwarat Date: 2011-12-31 09:55:20 +0900 Fix g-ir-scanner errors in ibusproperty.h and ibustext.h. BUG=none TEST=Linux desktop Review URL: http://codereview.appspot.com/5498091 M src/ibusproperty.h M src/ibustext.h commit 4d1f38314b3a9c3dc1683053cda10cfa36fd9019 Author: Peng Huang Date: 2011-12-22 09:59:05 -0500 Fix a typo in docs/references/ibus/Makefile BUG=None TEST=make Review URL: http://codereview.appspot.com/5496079 M docs/reference/ibus/Makefile.am commit df10a24f905c8eea420a5fd33eff78417312410c Author: Peng Huang Date: 2011-12-22 09:57:23 -0500 Add ibus_text_set_attributes for scipt language bindings. BUG=None TEST=Linux desktop Review URL: http://codereview.appspot.com/5500067 M src/ibustext.c M src/ibustext.h commit ee9c4fba4535e85bd1f02743cab8914dd84e6178 Author: Peng Huang Date: 2011-12-22 09:57:01 -0500 Make all fields of IBusProperty as gobject property. BUG=http://code.google.com/p/ibus/issues/detail?id=1383 TEST=Linux desktop Review URL: http://codereview.appspot.com/5500066 M src/ibusproperty.c M src/ibusproperty.h commit fd07a5a761fe1c242ba8babaab1060d5679a3618 Author: fujiwarat Date: 2011-12-20 13:46:45 +0900 Fix a SEGV if ibusimcontext->ibuscontext is null. BUG= TEST=Linux desktop Review URL: http://codereview.appspot.com/5489086 M client/gtk2/ibusimcontext.c commit 028e2dca75f6cf12c589216b4f156aa10ffdd2bb Author: fujiwarat Date: 2011-12-14 09:55:26 +0900 Update translations. po/LINGUAS: Updated po/ ca.po da.po de.po es.po fr.po hu.po ja.po pa.po te.po zh_TW.po: Updated po/ fa.po lv.po tg.po: Added BUG= TEST=Linux desktop Review URL: http://codereview.appspot.com/5483055 M po/LINGUAS M po/ca.po M po/da.po M po/de.po M po/es.po A po/fa.po M po/fr.po M po/hu.po M po/ja.po A po/lv.po M po/pa.po M po/te.po A po/tg.po M po/zh_TW.po commit 5236e2159f2e6184c18df9a9ecbb05bfb09106d4 Author: fujiwarat Date: 2011-11-30 12:28:22 +0900 Add the engine preference button on ibus-setup The new preference button launches $libexecdir/ibus-setup- + engine.name by default. The engine is IBusEngineDesc. If engine.setup has a value, the button launches it instead. BUG=RH#618229 TEST=Linux desktop Review URL: http://codereview.appspot.com/5437062 M ibus/enginedesc.py M setup/ibus-setup.in M setup/main.py M setup/setup.ui M src/ibusenginedesc.c M src/ibusenginedesc.h commit 5d2ac19e1524b1802f5298eedff1ba52423c847f Author: Daiki Ueno Date: 2011-11-30 09:40:15 +0900 Disable surrounding-text when retrieve-surrounding signal is not handled in GTK. BUG=https://code.google.com/p/ibus/issues/detail?id=1358 TEST=On Fedora with ibus-m17n tis820 Review URL: http://codereview.appspot.com/5431086 M client/gtk2/ibusimcontext.c commit 23abee88ca1a234d0ed549489a505cd2a07a9a5c Author: fujiwarat Date: 2011-11-21 11:06:21 +0900 Use ibus_input_context_process_key_event_async in ibus-x11 ibus-hangul calls ibus_commit_text() in process_key_event with returing FALSE. ibus_commit_text() is async API and there is a time issue in ibus_commit_text() and returning process_key_event. This fix adds async in ibus-x11 process_key_event too. BUG=RH#753781 TEST=Linux desktop Review URL: http://codereview.appspot.com/5417044 M client/x11/main.c commit 613e01520f27a53c947fed476d99aeb8ae1ae39b Author: fujiwarat Date: 2011-11-08 10:48:42 +0900 Fixed fallback icons. 1. Set 'ibus-keyboard' icon for IME off in non-GNOME theme. People would think the application icon for non-GNONE classic desktop. The themed icon is applied for GNOME icon theme only. 2. Set gtk-fallback-icon-theme as 'gnome' ibus gtk panel needs gtk stock icons but some desktop does not load GNOME icon theme. I assigned 'gnome' for gtk-fallback-icon-theme if it's none. 3. Use 'gtk-dialog-info' if 'gtk-info' is not found. It seems the latest gtk2 does not have 'gtk-info' icon via pygtk2. BUG=RH#711632 TEST=Linux desktop Review URL: http://codereview.appspot.com/5320066 M ibus/_config.py.in M ui/gtk/main.py M ui/gtk/panel.py commit 02893693fc0a8692a6242b0be6dc8f09e14c1c54 Author: fujiwarat Date: 2011-11-02 14:17:50 +0900 Rerotate next/previous engines without global engine. BUG=http://code.google.com/p/ibus/issues/detail?id=1331 TEST=Linux desktop Review URL: http://codereview.appspot.com/5321067 M bus/ibusimpl.c commit cca4fd8993613a6993965c3120323e43c4647ef5 Author: Daiki Ueno Date: 2011-10-28 15:42:08 +0900 Don't set focus on GTK password entry. For an old bug: https://bugzilla.redhat.com/show_bug.cgi?id=484643 Input method should be disabled on password entry for security reason. BUG=none TEST=manually with gtk-demo "Entry Buffer" example Review URL: http://codereview.appspot.com/5319053 M client/gtk2/ibusimcontext.c commit 910f8a64098d89b04c50056f621ec1a49dd3e7ea Author: fujiwarat Date: 2011-10-25 10:50:34 +0900 Fix previous_engine without global engine. BUG=http://code.google.com/p/ibus/issues/detail?id=1331 TEST=Linux desktop Review URL: http://codereview.appspot.com/5297047 M bus/ibusimpl.c commit ee966e327cc3b1b4bba40379bc0fbb3d46c38239 Author: fujiwarat Date: 2011-10-25 10:37:22 +0900 Add ibusutil.h in ibus.h BUG=http://code.google.com/p/ibus/issues/detail?id=1338 TEST=Linux desktop Review URL: http://codereview.appspot.com/5294054 M src/ibus.h commit d19018b8709847009d2e0836c942dd9f1385e7cb Author: Yusuke Sato Date: 2011-10-09 13:52:42 +0900 Always consume a hotkey press BUG=1324 Review URL: http://codereview.appspot.com/5242044 M bus/ibusimpl.c commit cb519c852dfc7a652df1768c81974d750ef48f58 Author: Daiki Ueno Date: 2011-09-29 12:24:53 +0900 Fix hiding button items in GTK panel. BUG=none TEST=manual Review URL: http://codereview.appspot.com/5148041 M ui/gtk/toolitem.py commit 600fd9ab1607a6d5780fb07a6cd49290ca85c4fc Author: Peng Huang Date: 2011-09-23 11:11:24 -0400 Release 1.4.0 BUG=None TEST=make dist Review URL: http://codereview.appspot.com/5106043 M configure.ac commit a5aadb62244d699fa38f6699cf38faf71a7c24c0 Author: Peng Huang Date: 2011-09-23 11:10:53 -0400 Fix make distcheck error BUG=None TEST=make distcheck Review URL: http://codereview.appspot.com/5113041 M po/POTFILES.in commit 55cb3cd2e398169a1335564e3e95003df469dd66 Author: Daiki Ueno Date: 2011-09-21 10:00:17 +0900 Fix dconf profile installation. BUG=none TEST=manual Review URL: http://codereview.appspot.com/5077042 M data/dconf/Makefile.am commit e42dda581368a77e2f6f87caee1b9355f7f725fa Author: Peng Huang Date: 2011-09-18 10:39:09 -0400 Add some warning message in ibustext.c BUG=None TEST=Linux desktop Review URL: http://codereview.appspot.com/5051043 M src/ibustext.c commit 235ef3ae4a0796bc03f2265b15e9a0a7a39b892c Author: Peng Huang Date: 2011-09-18 10:36:02 -0400 Refine configure.ac and fix make distcheck errors. BUG=None TEST=Test on Linux desktop Review URL: http://codereview.appspot.com/5045043 M configure.ac M docs/reference/ibus/.gitignore M docs/reference/ibus/Makefile.am M ibus.spec.in M src/Makefile.am commit 6c474596e43c932467d4d35afa23db59a71093f5 Author: fujiwarat Date: 2011-09-16 23:36:44 +0900 Add get methods for the members in IBusAttribute for non-C language. TEST=Linux desktop Review URL: http://codereview.appspot.com/4956068 M src/ibusattribute.c M src/ibusattribute.h commit 4438c043aafa301579737094dbccc02c9ef8c2c1 Author: Daiki Ueno Date: 2011-09-16 10:22:38 +0900 Implement org.freedesktop.DBus.StartServiceByName. BUG=none TEST=tested with https://github.com/ueno/ibus-gucharmap/tree/charmap-service Review URL: http://codereview.appspot.com/4960060 M bus/dbusimpl.c M ibus/bus.py M src/ibustypes.h commit 02604ac968d6f0c6064b4620f8a65148a178eacd Author: Peng Huang Date: 2011-09-09 09:47:37 -0400 Fix make dist error if dsettings does not exist. BUG=make dist failed without gsettings TEST=make dist Review URL: http://codereview.appspot.com/4994043 M data/dconf/Makefile.am commit 19a504a62574b9f2d1ef9f61bedfbac2819d8c8b Author: Peng Huang Date: 2011-09-08 22:09:26 -0400 Do not send surrounding text to ibus-daemon if engine does not need surrounding text. BUG=None TEST=Linux desktop Review URL: http://codereview.appspot.com/4977058 M src/ibusinputcontext.c commit 894ecc8e16b01d5594ef9b8f9c5530bb2e9d0502 Author: fujiwarat Date: 2011-08-25 09:59:42 +0900 Add Disable signal when bus_ibus_impl_set_context_engine_from_desc is called. BUG=#1261 TEST=Linux desktop Review URL: http://codereview.appspot.com/4875049 M bus/inputcontext.c commit adcf71e6e5de45530a09e7b9f310f2e489cd9631 Author: fujiwarat Date: 2011-08-24 11:44:21 +0900 Check if BusInputContext has an enabled engine in global input method. BUG=RH#731610 TEST=Linux desktop Review URL: http://codereview.appspot.com/4917041 M bus/ibusimpl.c commit ac9dfac13cef34288440a2ecdf067cd827fb2f8f Author: Peng Huang Date: 2011-08-19 08:23:33 -0400 Use GVariant as attachment for IBusSerializable. BUG=None TEST=Linux desktop Review URL: http://codereview.appspot.com/4902051 M src/ibusserializable.c M src/ibusserializable.h M src/tests/ibus-serializable.c commit 9614076737ee88c092af209485d1d65d2269f4ad Author: Tsuyoshi Horo Date: 2011-08-18 11:48:30 -0400 Fix for ibus_serializable_{get,set}_attachment. TEST=Linux desktop Review URL: http://codereview.appspot.com/4905054 Patch from Tsuyoshi Horo . M src/ibusserializable.c M src/ibusserializable.h M src/tests/ibus-serializable.c commit 97afd4854b0af0483539d2ab8f0e6f15309d1ec4 Author: fujiwarat Date: 2011-08-14 08:56:31 +0900 Add create-engine signal in IBusFactory for non-C applications. TEST=Linux desktop Separated from CL #4853041. Review URL: http://codereview.appspot.com/4801081 M src/ibusfactory.c M src/ibusfactory.h M src/ibusmarshalers.list M src/ibusservice.h commit 02a4f3e8ab4bb0f4c7310b5e654bec1fb1892f56 Author: Peng Huang Date: 2011-08-11 21:13:28 -0400 Port keyval and unicode converting functions from gtk. BUG=None TEST=None Review URL: http://codereview.appspot.com/4870042 M src/Makefile.am M src/ibus.h M src/ibuskeymap.c A src/ibuskeys.h A src/ibuskeyuni.c M src/ibusshare.h commit 2ed0adc7a238d5a19f8b01cdcd165a34608bf9f3 Author: Seigo Nonaka Date: 2011-08-11 20:53:13 -0400 Support selection text retrival. This patch enable us to get selection text on client application. Currently only GtkTextView widget can get them in gtk application. BUG=None TEST=manually done.(By gedit text editor) Review URL: http://codereview.appspot.com/4844041 Patch from Seigo Nonaka . M bus/engineproxy.c M bus/engineproxy.h M bus/inputcontext.c M client/gtk2/ibusimcontext.c M ibus/engine.py M ibus/inputcontext.py M ibus/interface/iengine.py M ibus/interface/iinputcontext.py M src/ibusengine.c M src/ibusengine.h M src/ibusinputcontext.c M src/ibusinputcontext.h M src/ibusmarshalers.list commit 6ec33ea8cdf16c6225896351a59ac9a01d5e36ca Author: Peng Huang Date: 2011-08-11 20:23:18 -0400 Add missing config.h in gdk-private.c Forget include config.h in gdk-private.c. So the HAVE_X11_XKBLIB_H is always undefined, and ibux-x11 can not get correct group from x key event. BUG=ibus-x11 can not handle group correctly TEST=Linux desktop Review URL: http://codereview.appspot.com/4865041 M client/x11/gdk-private.c commit 4980dab52ca40b5b6904f9e9df397ac6dfa57ded Author: Peng Huang Date: 2011-08-10 21:46:27 -0400 Fix make rpm errors BUG=make rpm failed in fedora TEST=make rpm in fedora Review URL: http://codereview.appspot.com/4862041 M configure.ac M docs/reference/ibus/.gitignore M ibus.spec.in commit 0cb912cfe5664714e612206d955d458532adc707 Author: Peng Huang Date: 2011-07-23 09:23:41 +0800 Always enable the new focused BusInputContext BUG=http://crosbug.com/17013 TEST=On ChromeOS Review URL: http://codereview.appspot.com/4816047 M bus/ibusimpl.c commit 51fe80487d523243d1eaaa9cf5da566184fcd654 Author: Daiki Ueno Date: 2011-07-18 18:44:23 +0900 Add ibus-dconf. BUG=https://code.google.com/p/ibus/issues/detail?id=1235 TEST=manually with "make check" and interactive testing Review URL: http://codereview.appspot.com/4750041 M Makefile.am M configure.ac M data/Makefile.am A data/dconf/Makefile.am A data/dconf/ibus.convert A data/dconf/make-dconf-override-db.sh A data/dconf/profile/ibus M data/ibus.schemas.in A dconf/Makefile.am A dconf/config.c A dconf/config.h A dconf/dconf.xml.in.in A dconf/main.c commit 88a44759ce5d3d785c7be96525130c67e8c63e1e Author: Daiki Ueno Date: 2011-07-15 09:51:07 +0900 Fix GObject ref/unref issues. BUG=none TEST=manual Review URL: http://codereview.appspot.com/4700048 M bus/registry.c M bus/test-client.c commit 48cc200d7dbe999f92b05507a7c59bea42ac6f1c Author: fujiwarat Date: 2011-07-12 15:14:59 +0900 Fixed an error in IBus.Bus.register_component TEST=Linux desktop Review URL: http://codereview.appspot.com/4668060 M ibus/component.py commit 290a37e1d4e3ec44dfea4b99744520f781c92592 Author: Yusuke Sato Date: 2011-07-12 14:04:30 +0900 Use g_variant_dup_string for consistency. This fix is similar to https://github.com/ibus/ibus/commit/624c4451da2bd171bd8ac53a9b9dd2a4227ef67f . BUG=None TEST=None Review URL: http://codereview.appspot.com/4641101 M bus/ibusimpl.c commit 55a5652ac7d91fb319ef6576500e421eb53e80f4 Author: Yusuke Sato Date: 2011-07-11 11:55:19 +0900 Remove the callback on destroy. BUG=crosbug.com/17293 TEST=src/tests/ibus-bus.c Review URL: http://codereview.appspot.com/4675074 M src/ibusbus.c M src/tests/ibus-bus.c commit 624c4451da2bd171bd8ac53a9b9dd2a4227ef67f Author: Peng Huang Date: 2011-07-07 12:42:52 -0400 Fix several GVariant related issues. And remove a wrong unref. BUG=None TEST=Linux desktop Review URL: http://codereview.appspot.com/4667067 M bus/ibusimpl.c M bus/inputcontext.c M src/ibusconfig.c commit ed2a89506271e4ed6cd20568a0e6aa32cc5d5cce Author: Peng Huang Date: 2011-07-05 13:11:41 -0400 Fix SEGV in ibus_keymap_lookup_keysym TEST=Linux desktop Review URL: http://codereview.appspot.com/4636083 M bus/engineproxy.c commit b9cfc5eb2e0b33d866301de7b6724b7f134ffae5 Author: Peng Huang Date: 2011-07-05 10:45:20 -0400 Add org.freedesktop.IBus.Config.GetValues to get all values in one RPC. BUG=http://crosbug.com/16287 TEST=Linux desktop Review URL: http://codereview.appspot.com/4667056 M debian/control M debian/libibus-1.0-0.symbols M gconf/config.c M ibus/config.py M ibus/interface/iconfig.py M memconf/config.c M src/ibusconfig.c M src/ibusconfig.h M src/ibusconfigservice.c M src/ibusconfigservice.h M src/tests/ibus-config.c commit 0e315c18c79c02cb5ea88c8b966cee0d70bedbf0 Author: Peng Huang Date: 2011-07-04 12:26:03 +0800 Fix make dpkg errors. BUG=None TEST=Make dpkg Review URL: http://codereview.appspot.com/4673041 A debian/ibus-gtk3.install M debian/libibus-1.0-0.symbols M debian/rules M docs/reference/ibus/.gitignore M docs/reference/ibus/Makefile.am commit 83d4b3ac538320bfb8e872dd9282ca5bbedf4652 Author: Peng Huang Date: 2011-07-04 03:27:23 +0800 Fix BusEngineProxy instance leak. BUG=none TEST=manually with / without global-engine setting Review URL: http://codereview.appspot.com/4662043 M bus/engineproxy.c M bus/inputcontext.c commit 8677fac588f4189d59c95e6dbead9fd9c5152871 Author: Peng Huang Date: 2011-07-04 03:24:47 +0800 Add icon_symbol property in IBusEngineDesc. TEST=Linux desktop Review URL: http://codereview.appspot.com/4648050 M ibus/enginedesc.py M src/ibusenginedesc.c M src/ibusenginedesc.h commit 508f6a11d39860f4fdb005e8a54574a5fba52e9d Author: Kazuhiro Inaba Date: 2011-06-18 00:10:36 -0400 Store capabilities when ibuscontext is not ready yet. Due to the asynchronous creation of contexts, gtk_im_set_use_preedit may be called before the context is ready. This patch is to record the change of capability flag and enables to set it later in _create_input_context_done. BUG=http://crosbug.com/16500 TEST=ChromeOS Cr-48 Review URL: http://codereview.appspot.com/4635049 Patch from Kazuhiro Inaba . M client/gtk2/ibusimcontext.c commit aec97ac090980dfcd7eeef55c1755f6cd3f87a01 Author: Daiki Ueno Date: 2011-06-18 00:03:07 -0400 Simplify surrounding-text initialization. Currently the immodule tries to retrieve surrounding-text unconditionally on focus_in and enabled. These calls could be eliminated if engine were able to proclaim that it will need surrounding-text. This patch extends ibus_engine_get_surrounding_text() to allow this. Engines that need surrounding-text are expected to have: /* Indicate we will use surrounding-text. */ ibus_engine_get_surrounding_text (engine, NULL, NULL); in their enable() method. This would work because enable() is called before SetCapabilities DBus call. BUG=none TEST=manually with ibus-m17n, with the above change. Review URL: http://codereview.appspot.com/4613043 Patch from Daiki Ueno . M client/gtk2/ibusimcontext.c M src/ibusengine.c M src/ibusengine.h commit 92b30f09885a91cd74840677aab46159a23192c6 Author: Peng Huang Date: 2011-06-17 23:46:31 -0400 Restore cursor location when a new IBusInputContext is created. BUG=http://crosbug.com/16500 TEST=Linux desktop Review URL: http://codereview.appspot.com/4635044 M client/gtk2/ibusimcontext.c commit 1da68ecf2fd4aca41e90715822a9902f4e8162f6 Author: Peng Huang Date: 2011-06-16 15:46:46 -0400 Fix some fuction signatures to make ibus g-i firendly. BUG=None TEST=Test on Linux desktop Review URL: http://codereview.appspot.com/4517146 M client/gtk2/ibusimcontext.c M src/ibusinputcontext.c M src/ibusinputcontext.h M src/tests/ibus-bus.c M src/tests/ibus-inputcontext-create.c M src/tests/ibus-inputcontext.c commit e73de0283f14fa1207b5cfc35dc43c1cf1d78d40 Author: Peng Huang Date: 2011-06-16 13:13:01 -0400 Fix make dpkg errors. BUG=make dpkg failed TEST=make dpkg Review URL: http://codereview.appspot.com/4629044 M debian/libibus-1.0-0.symbols commit 45ed668b8099a6e2dfcbeefeba36125c515241e6 Author: Yusuke Sato Date: 2011-06-17 01:12:06 +0900 Check IBUS_CONFIG_HOME environment variable when reading/writing the socket file. BUG=crosbug.com/16501 TEST=export IBUS_CONFIG_HOME=/tmp, start Chrome on Chromium OS, verify an empty dir /tmp/ibus/bus exists with mode 0700, log in, enable IME, verify IME works, verify the socket file is created in /tmp/ibus/bus. Review URL: http://codereview.appspot.com/4621043 M src/ibusshare.c commit fc9dedec30f724e91e7b3bb9111177e96b58ee43 Author: Peng Huang Date: 2011-06-15 10:38:17 -0400 Add IBUS_ERROR domain and reply IBUS_ERROR_NO_ENGINE in org.freedesktop.IBus.InputContext.GetEngine BUG=None TEST=Manually Review URL: http://codereview.appspot.com/4528140 M bus/inputcontext.c M src/Makefile.am M src/ibus.h A src/ibuserror.c A src/ibuserror.h M src/ibusinputcontext.c M src/ibusshare.c M src/ibustypes.h A src/tests/ibus-gi-inputcontext.py commit 59ce675e335e599ed18d74ab8849b9a5fe75d4be Author: Peng Huang Date: 2011-06-13 13:18:29 -0400 Fix some race condition between idle and timeout events. Also fix a memory leak. BUG=http://crosbug.com/16387 TEST=Linux desktop Review URL: http://codereview.appspot.com/4568072 M bus/engineproxy.c commit 7dd0436e19663475de6444c5e1c82b8372db50bf Author: Peng Huang Date: 2011-06-08 21:11:28 -0400 Add functions for creating IBusConfig asynchronously. BUG=http://crosbug.com/13245 TEST=make check Review URL: http://codereview.appspot.com/4581041 M src/ibusconfig.c M src/ibusconfig.h M src/tests/.gitignore M src/tests/Makefile.am A src/tests/ibus-config.c commit cdcf5c74d348432415326ab42696e8b23f06c3b4 Merge: 52425daa d0591328 Author: Peng Huang Date: 2011-06-08 07:21:50 -0700 Merge pull request #2 from ryoqun/master ibus python binding wasn't working due to incorrect forward-key-event signature commit 52425daa537a32bed1781958e1ef62dbf199ad8b Author: Peng Huang Date: 2011-06-06 09:30:27 -0400 Fix Python input context binding. Export "forward-key-event" and "delete-surrounding-text" signals to Python; clear __needs_surrounding_text property on "enabled" and "disabled" signals. BUG=none TEST=briefly tested, at least I don't see any regression Review URL: http://codereview.appspot.com/4437062 M ibus/inputcontext.py M ibus/interface/iinputcontext.py commit 4d15995dc22f4ec3006e40586f86d0e2a5447af6 Author: Peng Huang Date: 2011-06-02 08:30:34 -0400 Fix build warnings with gcc 4.6 BUG=Build warnings with gcc 4.6 TEST=Manually Review URL: http://codereview.appspot.com/4517127 M client/x11/main.c M src/ibusconfig.c commit d3e750eab6db7035f494fcdb328b87b2923e33a2 Author: Yusuke Sato Date: 2011-06-01 23:37:14 +0900 Send the new capabilities to ibus-daemon in ibus_im_context_set_use_preedit. BUG=none TEST=none Review URL: http://codereview.appspot.com/4529103 M client/gtk2/ibusimcontext.c commit 5aea31b733334fbf24879549a901bc6212155c3b Author: fujiwarat Date: 2011-05-16 14:51:45 +0900 Update translations. Update da.po ja.po nl.po pl.po te.po uk.po zh_CN.po M po/da.po M po/ja.po M po/nl.po M po/pl.po M po/te.po M po/uk.po M po/zh_CN.po commit d059132885d3c90647f08f3083e39daa9f82b700 Author: Ryo Onodera Date: 2011-05-17 20:07:40 +0900 fix wrong forward key event signature M ibus/engine.py M ibus/interface/iengine.py commit 75db3e14c75a70dcacb2b8d5f95d2463218e86db Author: Peng Huang Date: 2011-05-10 21:59:15 -0400 Fix build warnings with gcc 4.6 BUG=crosbug.com/15039 TEST=Linux desktop Review URL: http://codereview.appspot.com/4518042 M src/ibusshare.c commit 27a66ea2e434b2e23f6fbba29251ef7b8ed2c20a Author: Julien Humbert Date: 2011-04-08 00:45:46 +0200 Update name M po/fr.po commit fe118688698e774ec4dc20fb7205e459df89adaf Author: Espreon Date: 2011-04-30 01:20:06 -0400 Added British English translation. M AUTHORS M po/LINGUAS A po/en_GB.po commit 2371d4fde2df1d0582603fd9d10098384a4523ce Author: Peng Huang Date: 2011-05-03 09:55:39 -0400 Fix make dpkg errors, and add gtk3 support for debian BUG=None TEST=Linux desktop Review URL: http://codereview.appspot.com/4436076 M Makefile.am M debian/control R100 debian/ibus-gtk.install debian/ibus-gtk2.install M debian/libibus-1.0-0.symbols M debian/rules M debian/xinput/ibus commit 80e5bd0785ca91a70f0b5fe511a3bd8e143d8d05 Author: Takao Fujiwara Date: 2011-04-27 07:48:50 -0400 Fix the zombie process of ibus-gconf when ibus-daemon restarts. - Fix the typo in bus_dbus_impl_destroy() (dbusimpl.c) - Modify bus_server_run() and _ibus_exit() (ibusimpl.c, server.c) bus_ibus_impl_destroy() needs to be called so that waitpid() prevents processes from becoming zombie. - Change the declaration of bus_server_quit(). (server.h) BUG=redhat#697471 TEST=Linux desktop Review URL: http://codereview.appspot.com/4440059 Patch from Takao Fujiwara . M bus/dbusimpl.c M bus/ibusimpl.c M bus/server.c M bus/server.h M src/ibusbus.c commit 9af7672d3ed9b7354f17025e1d05b554ce05470b Author: Yusuke Sato Date: 2011-04-22 20:17:14 +0900 Fix SEGV in im-ibus.so on Chromium OS Review URL: http://codereview.appspot.com/4440060 M client/gtk2/ibusimcontext.c commit c2c8a023a9f14aafb4010ed5f0d8c40fa14dc54f Author: Yusuke Sato Date: 2011-04-22 20:07:43 +0900 Add org.freedesktop.IBus.InputContext.ProcessHandWritingEvent and CancelHandWriting to support a handwriting engine. Review URL: http://codereview.appspot.com/4433059 M bus/engineproxy.c M bus/engineproxy.h M bus/inputcontext.c M src/ibusengine.c M src/ibusengine.h M src/ibusinputcontext.c M src/ibusinputcontext.h M src/ibusmarshalers.list commit 5cb14a2d82efc3a2011011581936ef278c8d495c Author: Daiki Ueno Date: 2011-04-18 17:09:10 -0400 Export input context surrounding-text API to Python. BUG=none TEST=manual Review URL: http://codereview.appspot.com/4442059 Patch from Daiki Ueno . M ibus/inputcontext.py commit e3957545d18900109e19d607ad17eac136a38d1c Author: Peng Huang Date: 2011-04-18 11:18:27 -0400 Use g_initable_new to create BusFactoryProxy. BUG=none TEST=Linux desktop Review URL: http://codereview.appspot.com/4446051 M bus/factoryproxy.c commit 0838133ce617c6113574f12ab1ba6a8bb90aaf43 Author: Peng Huang Date: 2011-04-08 23:29:23 -0400 Revert "Change default values of some config." This change was commited by mistake. This reverts commit ed4775b5fec355c1ccb13947d03dcac0aaaeb47f. M bus/ibusimpl.c commit 0f08033ed8ea8fc494a459909722b19eb6e53427 Author: Peng Huang Date: 2011-04-08 09:45:18 -0400 Fix problem in creating IBusPoxy in synchronous mode. M src/ibusproxy.c commit 2f358544a1fcc9c8c3924a722b38a86d297c9da1 Author: Peng Huang Date: 2011-04-08 09:49:20 -0400 Refine RequestName code and fix make dpkg errors. BUG=none TEST=Linux Desktop Review URL: http://codereview.appspot.com/4368056 M bus/connection.c M bus/connection.h M bus/dbusimpl.c M bus/ibusimpl.c M debian/libibus-1.0-0.symbols M ibus/common.py M src/ibusutil.c M src/ibusutil.h M ui/gtk/Makefile.am M ui/gtk/main.py commit 782566b452ca688e619bc66015bf9e8b0685ef41 Author: Peng Huang Date: 2011-04-08 09:19:13 -0400 Fix focus issue when reconnect to ibus-daemon BUG=none TEST=Linux desktop Review URL: http://codereview.appspot.com/4365049 M bus/inputcontext.c M bus/inputcontext.h M client/gtk2/ibusimcontext.c commit 37e6e58792bef4284653e4d8f4c93c901780eafd Author: Takao Fujiwara Date: 2011-04-08 09:18:23 -0400 Implement APIs for another non-Python panel. 1. Support icon and prop_list = null in ibus_property_new with GIR. 2. Add getter methods in IBusText and IBusProperty since GJS cannot access the members in C-Structure. 3. Add ibus_get_language_name() since GIR libxml2 does not provide the useful APIs. 4. Implement flags in ibus_bus_request_name() to follow DBus RequestName signal spec. http://dbus.freedesktop.org/doc/dbus-specification.html#message-bus-names This is needed to terminate the current IBus panel. E.g. IBus GTK panel is launched by ibus-daemon but another panel is launched by gnome-shell. 5. Support IBUS_BUS_NAME_FLAG_ALLOW_REPLACEMENT in ui/gtk/main.py 6. Fix bus_component_set_factory() not to call bus_component_factory_destroy_cb() twice. 7. Hide ibus_text_new_from_static_string() for GIR. 8. Add ibus_is_running_gnome_shell() for ibus-ui-gtk because gnome-shell runs earlier than ibus-ui-gtk. Review URL: http://codereview.appspot.com/4279042 Patch from Takao Fujiwara . M bus/component.c M bus/connection.c M bus/connection.h M bus/dbusimpl.c M bus/ibusimpl.c M bus/marshalers.list M ibus/bus.py M ibus/common.py M src/Makefile.am M src/ibusbus.c M src/ibusbus.h M src/ibusproperty.c M src/ibusproperty.h M src/ibustext.c M src/ibustext.h M src/ibustypes.h A src/ibusutil.c A src/ibusutil.h M ui/gtk/main.py M ui/gtk/panel.py commit ac30990eddbe9e4a0f9b08cc86155654d8fb3c3d Author: Daiki Ueno Date: 2011-04-08 10:11:39 +0900 Export surrounding-text API to Python. BUG=none TEST=manually with modified ibus-anthy https://github.com/ueno/ibus-anthy/commit/2303095f Review URL: http://codereview.appspot.com/4377045 M ibus/engine.py M ibus/interface/iengine.py commit 65c5465863bc4d9408cbec5ac0ef7f98d5db779f Author: Peng Huang Date: 2011-04-05 10:27:32 -0400 Fix make dpkg errors. BUG=none TEST=make dpkg Review URL: http://codereview.appspot.com/4324047 M debian/libibus-1.0-0.symbols M debian/rules commit 06e6abee9f221bdf7c277538ce136154465619d7 Author: Daiki Ueno Date: 2011-04-05 10:11:49 -0400 Support surrounding-text retrieval. Unlike the GtkIMContext API, IBus automatically retrieves surrounding-text when certain events occurred to the client ("before filter_keypress", for example). This makes the engine API simpler but causes periodical emission of D-Bus signals for updating surrounding-text information, which is unwanted for typical engines. For this reason, the surrounding-text support is currently disabled by default. To enable it, pass --enable-surrounding-text to configure. Also, even surrounding-text support is compiled in, IBus does not start polling until an engine requests surrounding-text using ibus_engine_get_surrounding_text(). To make the function work for the first time, clients should retrieve initial surrounding-text when the engine is enabled (see ibus_im_context_focus_in() and _ibus_context_enabled_cb() in client/gtk2/ibusimcontext.c). BUG=Issue#778 TEST=manual Review URL: http://codereview.appspot.com/4276082 Patch from Daiki Ueno . M bus/engineproxy.c M bus/engineproxy.h M bus/inputcontext.c M client/gtk2/ibusimcontext.c M configure.ac M ibus/engine.py M ibus/interface/iengine.py M ibus/interface/iinputcontext.py M src/ibusengine.c M src/ibusengine.h M src/ibusinputcontext.c M src/ibusinputcontext.h M src/ibusmarshalers.list commit 6a39a86f84fb59c06a246c1bb3f50abbf6c9f8d1 Author: Peng Huang Date: 2011-04-05 10:08:34 -0400 Fix a crash during creating IBusProxy asynchronously BUG=chromium-os:13629 TEST=Linux desktop Review URL: http://codereview.appspot.com/4344061 M src/ibusbus.c M src/ibusproxy.c M src/tests/.gitignore M src/tests/Makefile.am A src/tests/ibus-inputcontext-create.c commit 15e29ac3ad45c1b909fc532fe98cf3b09dfb6426 Author: fujiwarat Date: 2011-04-04 19:33:47 +0900 Update translations. Update ar.po as.po da.po es.po fr.po gu.po hi.po kn.po mr.po nl.po or.po pa.po pl.po pt_BR.po ta.po te.po uk.po zh_CN.po zh_TW.po and LINGUAS. M po/LINGUAS M po/ar.po M po/as.po M po/da.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/kn.po M po/mr.po A po/nl.po M po/or.po M po/pa.po M po/pl.po M po/pt_BR.po M po/ta.po M po/te.po A po/uk.po M po/zh_CN.po M po/zh_TW.po commit 1428a361cd3b416c4e4da7839f4a3ec23a67eb12 Author: fujiwarat Date: 2011-03-31 12:56:45 +0900 Use ibus panel icon from the desktop theme instead of ibus-keyboard. M configure.ac M ibus/_config.py.in M ui/gtk/panel.py commit ed4775b5fec355c1ccb13947d03dcac0aaaeb47f Author: James Su Date: 2010-05-12 15:38:42 -0700 Change default values of some config. This CL changes the default value of use_global_engine, enable_by_default and use_sys_layout to TRUE. And also removes the default trigger key. BUG=none TEST=none Review URL: http://codereview.chromium.org/2008016 M bus/ibusimpl.c commit ef2be0415bbe948ce4be39b8a5d2bc60c3384bb2 Author: Daiki Ueno Date: 2011-03-29 09:39:44 -0400 Use gtk_status_icon_set_name() only if it is available. gtk_status_icon_set_name() is not exported to python through pygtk2 <= 2.17, which is the version from Debian sid and Fedora 14. >>> import gtk >>> gtk.pygtk_version (2, 17, 0) >>> hasattr(gtk.StatusIcon, 'set_name') False This patch checks the availability. BUG=none TEST=manual Review URL: http://codereview.appspot.com/4327042 Patch from Daiki Ueno . M ui/gtk/panel.py commit 5ef29602141945ed1255662576c2e8194af78325 Author: fujiwarat Date: 2011-03-25 13:57:31 +0900 Set WM_CLASS name instead of main.py M ui/gtk/panel.py commit 637947404f977b830e2bd9719a292ad48d0dac5b Author: Daiki Ueno Date: 2011-03-25 11:16:18 -0400 Add "in" keymap which maps Alt_R to AltGr. BUG=none TEST=manually with ibus-m17n Review URL: http://codereview.appspot.com/4273109 Patch from Daiki Ueno . M data/keymaps/Makefile.am A data/keymaps/in commit ee54659184e384b25b7ee5016a12e1b81415fe66 Author: Peng Huang Date: 2011-03-25 11:07:38 -0400 Verify global engine after changing preload_engines BUG=http://crosbug.com/13406 TEST=Linux desktop Review URL: http://codereview.appspot.com/4273111 M bus/ibusimpl.c commit 7903a536375936efb6b8a38fd8f44b8d2ac6a837 Author: Peng Huang Date: 2011-03-23 09:44:20 -0400 Fix make debian package errors. BUG=none TEST=make dpkg Review URL: http://codereview.appspot.com/4279068 M debian/libibus-1.0-0.symbols commit cff009de738fe0a6cb0cfdd725952b928afc6c58 Author: Peng Huang Date: 2011-03-23 09:44:06 -0400 Fix typos in IBusInputContext document BUG=none TEST=Linux desktop Review URL: http://codereview.appspot.com/4273094 M src/ibusinputcontext.h commit 0514dc88147f7f178325f546bf073d0e1a261ddb Author: Peng Huang Date: 2011-03-23 09:43:43 -0400 Use $(SED) to replace sed BUG=none TEST=Linux desktop Review URL: http://codereview.appspot.com/4280059 M docs/reference/ibus/Makefile.am commit 597820e6ad9f59f596aec6f714ca6b37f2a991c6 Author: Yusuke Sato Date: 2011-03-22 22:36:52 +0900 Link appropriate libraries to ibus-scan. TEST=git clone the clean tree, ran ./autogen.sh --enable-gtk-doc, then ran make. Review URL: http://codereview.appspot.com/4289060 M docs/reference/ibus/Makefile.am commit 0929e30b91dbb7955c9f90e058bb644ff946298d Author: Yusuke Sato Date: 2011-03-22 14:09:34 +0900 Add asynchronous InputContext.IsEnabled and InputContext.GetEngine APIs. * Added asynchronous InputContext.IsEnabled and InputContext.GetEngine APIs. Now all InputContext IPCs can be async. * Added comments to src/ibusinputcontext.h. * Moved input context tests from ibus-bus.c to ibus-inputcontext.c (new file), and fixed flaky tests. * Fixed typos in bus/. BUG=http://code.google.com/p/ibus/issues/detail?id=1215 TEST=ran the new test Review URL: http://codereview.appspot.com/4298049 M bus/ibusimpl.c M bus/inputcontext.c M src/ibusinputcontext.c M src/ibusinputcontext.h M src/tests/.gitignore M src/tests/Makefile.am M src/tests/ibus-bus.c A src/tests/ibus-inputcontext.c commit 8306617bc88fc85d818af749ee23ff115c3de5f8 Author: Peng Huang Date: 2011-03-18 09:24:18 -0400 Create a separate test case for ibus_bus_create_input_context_async(). Create a separate test case for ibus_bus_create_input_context_async(), so we can use `ibus-bus -p /ibus/create-input-context' to test and debug ibus_bus_create_input_context_async() only. BUG=none TEST=make check Review URL: http://codereview.appspot.com/4298045 M src/tests/ibus-bus.c commit 1861184a71b1210d7e07a19fdf90ecc4ce0be7b9 Author: Peng Huang Date: 2011-03-17 10:52:38 -0400 Refine document and coding style in ibusbus.[ch] and trim some private structs and api from document BUG=none TEST=make Review URL: http://codereview.appspot.com/4290053 M .gitignore M docs/reference/ibus/.gitignore M docs/reference/ibus/Makefile.am A docs/reference/ibus/trim.sed M src/.gitignore M src/ibusbus.c M src/ibusbus.h commit 13697b0aec5efcb999d02720170fe968ac6dfaba Author: Peng Huang Date: 2011-03-17 10:49:03 -0400 Do not block UI in IBusIMContext anymore. Replace some block IPC calls with async IPC calls, and then IBusIMContext will not block UI anymore. BUG=http://crosbug.com/12310 TEST=Linux desktop Review URL: http://codereview.appspot.com/4287054 M bus/ibusimpl.c M bus/inputcontext.c M client/gtk2/ibusimcontext.c M debian/libibus-1.0-0.symbols M src/ibusbus.c M src/ibusbus.h M src/ibusinputcontext.c M src/ibusinputcontext.h M src/tests/ibus-bus.c commit b9b2c42596e1a7394e89c11025074aed2fcb099a Author: Peng Huang Date: 2011-03-16 10:02:47 -0400 Fix issue of InputContext.SetEngine. InputContext.SetEngine returns error sometimes, because "request-engine" signal handler calls an async function to set the engine of the context. So checking context->engine != NULL just after emiting "request-engine" signal is not correct. BUG=none TEST=Linux desktop Review URL: http://codereview.appspot.com/4287049 M bus/ibusimpl.c M bus/inputcontext.c M bus/marshalers.list commit 14b7d1a071c08c327ab836a2b7bd3e3b2ab7d1af Author: Peng Huang Date: 2011-03-16 10:01:18 -0400 Add git.mk from gtk+ project, Use it to update .gitignore BUG=none TEST=make Review URL: http://codereview.appspot.com/4280050 M .gitignore M Makefile.am M bindings/Makefile.am M bindings/vala/Makefile.am M bus/.gitignore M bus/Makefile.am M client/Makefile.am M client/gtk2/Makefile.am M client/gtk3/Makefile.am M client/x11/.gitignore M client/x11/Makefile.am M data/.gitignore M data/Makefile.am M data/icons/Makefile.am M data/keymaps/Makefile.am A debian/.gitignore M docs/.gitignore M docs/Makefile.am M docs/reference/Makefile.am M docs/reference/ibus/.gitignore M docs/reference/ibus/Makefile.am M gconf/.gitignore M gconf/Makefile.am A git.mk M ibus/.gitignore M ibus/Makefile.am M ibus/interface/Makefile.am M m4/.gitignore M m4/Makefile.am M memconf/Makefile.am M po/.gitignore M setup/.gitignore M setup/Makefile.am M src/.gitignore M src/Makefile.am M src/tests/.gitignore M src/tests/Makefile.am M ui/Makefile.am M ui/gtk/.gitignore M ui/gtk/Makefile.am M util/IMdkit/Makefile.am M util/Makefile.am commit 596680ba3cfd5aa8e4c2ef4bd5905a25c4c855b0 Author: Peng Huang Date: 2011-03-15 13:32:55 -0400 Update gtk-doc BUG= TEST=Linux documemt Review URL: http://codereview.appspot.com/4277054 M docs/reference/ibus/Makefile.am D docs/reference/ibus/ibus-sections.txt M src/ibusbus.h commit 71bcf46f2aac7a81291bf2782915b8bf4cc36edf Author: Zach Kuznia Date: 2011-03-14 15:42:32 +0900 This can cause crashes on cleanup when multiple components are implemented in the same process. Review URL: http://codereview.appspot.com/4241058 Patch from Zach Kuznia . M src/ibusservice.c commit 26084822d7ac9395b4553a7852a78d6d0d4bed0f Author: fujiwarat Date: 2011-03-11 15:53:53 +0900 Fix preedit_string = NULL in ibus-x11 _free_ic() M client/x11/main.c commit 5617ef1553bccb4894ef2e83f2021fda7ca6b815 Author: Peng Huang Date: 2011-03-11 10:37:40 -0500 Fix make check error BUG=none TEST=make check Review URL: http://codereview.appspot.com/4250077 M po/POTFILES.in commit 57eee844b6087c188be1c7f8676d2c5acdf89a7d Author: Yusuke Sato Date: 2011-03-10 08:44:38 +0900 Update symbols file. ./autogen.sh ./configure --enable-gtk-doc make dpkg cp ppa/ibus-1.3.99.20110309/debian/libibus-1.0-0/DEBIAN/symbols debian/libibus-1.0-0.symbols vi debian/libibus-1.0-0.symbols # remove "-1phuang1~maverick1" make dpkg # confirm that lintian does not report an error. Review URL: http://codereview.appspot.com/4253068 M debian/libibus-1.0-0.symbols commit 32367ad614c9f4bceb55eb812860ea8ae674925e Author: Yusuke Sato Date: 2010-09-15 12:25:17 +0900 Fix issues of the "previous_engine" hotkey. Check global_previous_engine_name when the previous engine is requested and rewrite it if necessary. This change ensures that the "previous_engine" hotkey (Ctrl+space on Chrome OS) always works whenever two or more engines are preloaded. Currently, Ctrl+space could become NOP by the following scenarios (http://crosbug.com/6609): (1) 1. preload engines A, B, C. 2. switch to A. 3. switch to B. 4. at this point, ctrl+space works fine. It selectes A and B alternately. 5. switch to A. 6. remove B from the preloaded engline list. 7. at this point, ctrl+space suddenly becomes NOP although C is still preloaded. This is because the callback function of ctrl+space detects global_previous_engine_name (i.e. B) is removed and automatically selects A (not C) as a global_previous_engine_name. (2) 1. preload engines A, B. 2. switch to A. 3. switch to B. 4. at this point, ctrl+space works fine. It selectes A and B alternately. 5. switch to A. 6. remove B from the preloaded engline list. 7. press ctrl+space several times, confirm that nothing happens (this is expected since only one engine, A, is preloaded). 8. preload additional engine, C. 9. at this point, ctrl+space is still NOP although two engines, A and C, are preloaded. M bus/ibusimpl.c commit 2fbbf4312d4b33885aa36df7b8d966c6ebf698c6 Author: James Su Date: 2010-05-26 22:31:06 -0700 If the current engine is removed, then switch to another engine automatically. BUG=http://crosbug.com/3577 TEST=manual test. Review URL: http://codereview.chromium.org/2259004 M bus/ibusimpl.c commit f4eae684f5e83af489b3d36662f9eddb79a0cc8e Author: Yusuke Sato Date: 2011-03-08 21:57:10 +0900 Remove -Wall warnings. Review URL: http://codereview.appspot.com/4261056 M client/gtk2/ibusimcontext.c M src/tests/ibus-bus.c commit 3980dd91d097a009e0967a122f284e5e4cfd07c6 Author: Yusuke Sato Date: 2011-03-08 00:55:36 +0900 Add asynchronous APIs to ibusbus.h Modified src/tests/ibus-bus.c so that it could be compiled with ibus-1.3.99 as well. BUG=chromium-os:12581 TEST=added async api tests to the src/tests/ibus-bus.c and ran it locally. Review URL: http://codereview.appspot.com/4179061 M src/ibusbus.c M src/ibusbus.h M src/tests/ibus-bus.c commit fbdd157b2ab1e6e873818132530dd9e55e4f94dd Author: Peng Huang Date: 2011-03-07 10:26:04 -0500 Move gtk_key_snooper_remove from function object_fini to class_fini. BUG=http://crosbug.com/12803 TEST=Linux desktop Review URL: http://codereview.appspot.com/4267044 M client/gtk2/ibusimcontext.c commit 279ee5d5b3697b427cc22cd99a55f4e611318e25 Author: Peng Huang Date: 2011-03-01 15:34:37 -0500 Optimize focus_in to avoid call some UI blocking functions. focus_in calls some X blocking functions. It will block UI. This change delays the X blocking calls to idle callback, to avoid blocking UI. BUG=http://crbug.com/74237 TEST=Linux desktop Review URL: http://codereview.appspot.com/4254048 M client/gtk2/ibusimcontext.c commit 690be230c116afd52a6002d2ef92b56e28d829b1 Author: Peng Huang Date: 2011-02-28 15:57:47 -0500 Unify async and sync function names. BUG=none TEST=Linux desktop Review URL: http://codereview.appspot.com/4246042 M client/gtk2/ibusimcontext.c M client/x11/main.c M debian/libibus-1.0-0.symbols M src/ibusinputcontext.c M src/ibusinputcontext.h commit 31b3b6a9577bb4c2787c73675f53ba38647a1501 Author: Peng Huang Date: 2011-02-28 10:25:54 -0500 Fix a race problem in SetGlobalEngine and add set_global_engine in python library The race problem: 1. global engine == A 2. call SetGlobalEngine(B) asynchronously 3. call SetGlobalEngine(A) immediately 3.1 Because step 2 is not finished, so the global engine is still A, and SetGlobalEngine(A) returns sucessfully. 4. SetGlobalEngine(B) is completed and the global engine becomes B BUG=http://crosbug.com/12414 TEST=Linux desktop Review URL: http://codereview.appspot.com/4250041 M bus/ibusimpl.c M ibus/bus.py M ibus/interface/iibus.py commit 8ebad5f07b1ba821e278d4d04ab74e2d31a40139 Author: fujiwarat Date: 2011-02-19 04:52:40 +0900 Call gtk_key_snooper_remove when GTK IM client is switched. M client/gtk2/ibusimcontext.c commit fb153c2a95746fde7a166775c65d281cb757cbfa Author: Peng Huang Date: 2011-02-18 10:59:49 -0500 Fix make dpkg errors. BUG=none TEST=make dpkg Review URL: http://codereview.appspot.com/4184055 M debian/libibus-1.0-0.symbols commit 0b02c819eee5d7cf9b7be449887677af76ee4731 Author: Peng Huang Date: 2011-02-18 10:59:06 -0500 Add enable_conditional and disable_conditional in gconf schemas file BUG=none TEST=manual Review URL: http://codereview.appspot.com/4183057 M data/ibus.schemas.in commit d68f26bd70933df9d18d88e98c2079ce8c2f3dc2 Author: Peng Huang Date: 2011-02-18 10:58:27 -0500 Fix crash when turn off "use global engine" option BUG=none TEST=Linux desktop Review URL: http://codereview.appspot.com/4170061 M bus/ibusimpl.c commit ff5db2e177944df295cf370ee066812223a75b0e Author: Peng Huang Date: 2011-02-18 09:08:41 -0500 Destroy IBusInputContext correctly in ibus-x11 BUG=none TEST=Linux desktop Review URL: http://codereview.appspot.com/4178062 M client/x11/main.c commit 5bd623d697da442c9107bcb8ecd9012d2e3f8731 Author: fujiwarat Date: 2011-02-17 15:08:37 +0900 s/LC_MESSAGES/LC_CTYPE/ in set_default_preload_engines. M bus/ibusimpl.c commit 9edd39912564e07dc734b5101b2c9995389aa234 Author: Peng Huang Date: 2011-02-16 15:49:09 -0500 Do not create GSimpleAsyncResult in ibus_input_context_process_key_event This change also fixes memory leak of simple result object BUG=none TEST=Linux desktop Review URL: http://codereview.appspot.com/4175051 M src/ibusinputcontext.c commit d0755b083d954383a791256b2db4f1b3d1f0a001 Author: Yusuke Sato Date: 2011-02-16 23:42:27 +0900 Add async version of set_global_engine. Patch from Zach Kuznia , modified by Yusuke Sato . Review URL: http://codereview.appspot.com/4175047 M src/ibusbus.c M src/ibusbus.h commit d9f8ed3e18338afefe4cf0ec2c12ca6d6e76e3b6 Author: Yusuke Sato Date: 2011-02-16 15:45:29 +0900 Implement async version of ibus_config_set_value. BUG=crosbug.com/11903 Review URL: http://codereview.appspot.com/4185041 M src/ibusconfig.c M src/ibusconfig.h commit 07877cf6f15d4d222738ab18cb9860083581ca82 Author: Yusuke Sato Date: 2011-02-15 16:44:05 +0900 Add engine_name parameter to the global-engine-changed signal. This makes it possible for a client to know the current global engine w/o issuing GetGlobalEngine reqeust. BUG=chromium-os:11908 Review URL: http://codereview.appspot.com/4177045 M bus/ibusimpl.c M src/ibusbus.c commit 661f1e860ea0d5145485a3c141c811e999f522a4 Author: Yusuke Sato Date: 2011-02-15 10:27:03 +0900 Use LC_MESSAGES instead of LC_ALL in bus_ibus_impl_set_default_preload_engines. This is a fix for https://bugs.launchpad.net/ubuntu/+source/ibus/+bug/716314. Calling setlocale(LC_ALL, NULL); in the function seems not to be a good idea since the function could return a complex string like "LC_CTYPE=ja_JP.UTF-8;LC_NUMERIC=C;LC..." when two or more values are used for LC_xxx variables (e.g. ja_JP.UTF-8 and C.) BUG=1204 Review URL: http://codereview.appspot.com/4160046 M bus/ibusimpl.c commit 5743b6da70f7722792c21ec50415dce4f1790af5 Author: Yusuke Sato Date: 2011-02-15 10:24:20 +0900 Never use ibus's US keymap in bus_input_context_filter_key, and use the keyval from X as-is. I think this is important for supporting non-US keyboards like a Japanese-106 keyboard correctly. Currently, when use_sys_layout config is unchecked (the default), ibus-daemon discards a keyval being passed from X, and regenerates a keyval from a keycode assuming the US layout. However, I believe this behavior is not good for non-US keyboard layout users (e.g. Japanese or Korean keyboard users.) For example, the Japanese 106 keyboard has a key called Zenkaku_Hankaku (全角_半角, whose keycode is 49) on the left hand of the '1' key, and most users want to use the key for toggling IME. But, even if a user set 'Zenkaku_Hankaku' as the toggle hotkey using ibus-setup, the user cannot toggle IME unless the 'Use system keyboard layout' option is explicitly turned on. This is because when use_sys_layout is unchecked, ibus-daemon treats the Zenkaku_Hankaku key press (keycode=49) as tilde (~) key press (remember that the tilde's keycode is also 49 in the US keyboard layout.) This is very inconvenient and confusing. Please also note that the hotkey configuration tool in ibus-setup always respects a keyval from X, and never checks the use_sys_layout value. Review URL: http://codereview.appspot.com/4173046 M bus/inputcontext.c commit c394fea7874df0173cf07d891976086ab343bead Author: Yusuke Sato Date: 2011-02-15 10:22:48 +0900 Always call g_simple_async_result_complete in ibus_input_context_process_key_event_done in order to handle IPC errors correctly. Review URL: http://codereview.appspot.com/4171049 M src/ibusinputcontext.c commit b2c7173b30fb41925dbef8355477497fba43d887 Author: Ahmad Sharif Date: 2011-02-12 23:38:35 +0900 Fix compiler warnings in util/IMdkit/. BUG=1201 Review URL: http://codereview.appspot.com/4171046 Patch from Ahmad Sharif . M util/IMdkit/i18nPtHdr.c M util/IMdkit/i18nX.c commit 753835819886f7a46f938826632b123287f589f0 Author: Yusuke Sato Date: 2011-02-12 22:56:49 +0900 Ran 'make update-po' in po/. BUG=1173 Review URL: http://codereview.appspot.com/4181044 M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/pt_BR.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit b66b337e9a30d55542fbae4611565e47e932ce0a Author: Yusuke Sato Date: 2011-02-11 23:53:34 +0900 Reimplement ibus_bus_watch_dbus_signal for GDBus and export it. BUG=crosbug.com/11479 Review URL: http://codereview.appspot.com/4186041 M src/ibusbus.c M src/ibusbus.h commit e3140b7206d409419faa0c8bfa50f25ad3644cd0 Author: Yusuke Sato Date: 2011-02-11 23:48:42 +0900 Support enable/disable hotkeys that enable or disable ibus unconditionally (i.e. not toggle.) I'll update ibus/po/*po files if the change looks good to you. BUG=http://code.google.com/p/ibus/issues/detail?id=1173 TEST=manually Review URL: http://codereview.appspot.com/3807047 M bus/ibusimpl.c M ibus/common.py M setup/main.py M setup/setup.ui commit 377c06515e792c2da4f4cf342ba5faa26eac5170 Author: phuang Date: 2011-02-09 21:02:44 +0900 Fix ibus-daemon deadlock in engineproxy.c. How to reproduce the deadlock on a desktop Linux like Ubuntu Maverick: 1. Add 20 seconds sleep in the beginning of the main() function of an engine (e.g. ibus-engine-mozc). See http://crosbug.com/11379#c16 . 2. Set preload_engines to "mozc" using ibus-setup. 3. Start ibus-daemon. 4. press the trigger hotkey twice within the 20 seconds. Expected: The second trigger hotkey press cancels the bus_engine_proxy_new operation started by the first one. Actual: ibus-daemon freezes. Stack trace: http://crosbug.com/11379#c20 BUG=http://crosbug.com/11379 TEST=see the steps above. Review URL: http://codereview.appspot.com/4125053 Patch from phuang . M bus/engineproxy.c M bus/inputcontext.c commit 0501756a1e51469849eca064aeb1e340afbf8be2 Author: fujiwarat Date: 2011-02-09 00:51:39 +0900 Add pkgdatadir in ibus-1.0.pc.in M ibus-1.0.pc.in commit 8199abcde4175971da78141b680eb9bb80fc2ad2 Author: fujiwarat Date: 2011-02-09 00:50:44 +0900 Add GTK3 definitions. M client/gtk2/ibusimcontext.c commit 31d1e1c41cc644d3c3c9da2e076728134d3b7439 Author: fujiwarat Date: 2011-02-09 00:50:56 +0900 Fix typo. M client/gtk2/ibusimcontext.c commit 03c9e591430c62354bbf26ef7bd4a2e6acfb7c8f Author: Yusuke Sato Date: 2011-02-03 10:15:24 +0900 Overwrite Gtk+'s default compose table to fix crosbug.com/11421. BUG=chromium-os:11421 TEST=manually done on Chrome OS. Review URL: http://codereview.appspot.com/3989060 M client/gtk2/ibusimcontext.c commit 0e6fa20c2521c5e23fe2f5bdd17bcbdfcf227da8 Author: Peng Huang Date: 2011-01-27 18:01:34 -0500 Fix build debian package error. BUG= TEST=make dpkg Review URL: http://codereview.appspot.com/4013046 M debian/libibus-1.0-0.symbols commit af0c9bcf7483a3d1f4520526f6d08222ae21ec1b Author: Peng Huang Date: 2011-01-27 10:06:09 -0500 Export async version ibus_input_context_process_key_event. Some application may want to integrate with ibus directly, and want to use async mode for processing key events. So I make ibus_input_context_process_key_event to be an async function, and also added ibus_input_context_process_key_event_sync. Fix problem in introspection of Engine. BUG=none TEST=Tested in Ubuntu 10.10 Review URL: http://codereview.appspot.com/4032044 M client/gtk2/ibusimcontext.c M client/x11/main.c M debian/libibus-1.0-0.symbols M src/ibusinputcontext.c M src/ibusinputcontext.h commit 8f3bd1b11df8806c596b9b311997f24cbfec1e66 Author: Peng Huang Date: 2011-01-26 19:18:05 -0500 Fix problem in introspection of Engine. BUG=http://code.google.com/p/ibus/issues/detail?id=1194 TEST=Tested in Ubuntu 10.10 Review URL: http://codereview.appspot.com/4084046 M src/ibusengine.c commit ea3917659bb7be5ee93ced938d5b522a468f7677 Author: fujiwarat Date: 2011-01-26 13:15:08 +0900 Fix introspection definitions. M src/ibusbus.h M src/ibusinputcontext.h commit cc1d776aeb65b481b1bd93e1f7acfbe4fea8e1f2 Author: fujiwarat Date: 2011-01-26 14:01:25 +0900 Set QT_IM_MODULE=xim in case of no ibus-qt. M xinput-ibus.in commit 73135d06d2195cee5630918e48003347315eb653 Author: fujiwarat Date: 2011-01-26 14:01:17 +0900 Add signals in IBusPanelService for non-C classes. M src/ibuspanelservice.c M src/ibuspanelservice.h commit f28d3e30cb04dc0eee5a657469f2c8d49d7056e0 Author: fujiwarat Date: 2011-01-24 12:25:48 +0900 Set GdkEventKey time for gdk_event_put with IBUS_FORWARD_MASK. M client/gtk2/ibusimcontext.c commit d26f418a3df4a9ad78dd952d997e028ba24c88f9 Author: Yusuke Sato Date: 2011-01-24 10:56:05 +0900 Add to introspection_xml in src/ibusconfigservice.c. I don't think that GDBus library in glib-2.26.[01] uses the information to filter out undefined signals, but just in case. BUG=none TEST=manually Review URL: http://codereview.appspot.com/4015043 M src/ibusconfigservice.c commit e1e72a2052ea3c869002bbba9055eab4a9e88aaa Author: Peng Huang Date: 2011-01-21 10:57:54 -0500 Fix some race conditions during create engine, also fix dpkg build error. BUG=chromium-os:10750 TEST=on Linux desktop Review URL: http://codereview.appspot.com/3970044 M bus/engineproxy.c M debian/libibus-1.0-0.symbols commit 683e301b689f3fe74769f4a7f2ad1b159e54790d Author: Yusuke Sato Date: 2011-01-21 21:03:23 +0900 Emit the connected signal after setting up the connection. Otherwise, we might miss the first a few DBus and IBus signals. BUG=http://crosbug.com/11144 TEST=see the bug. Review URL: http://codereview.appspot.com/4029043 M src/ibusbus.c commit b5382549a2f4009e0e4da20c7491ba28e7cca60f Author: Yusuke Sato Date: 2011-01-19 10:55:16 +0900 Fix race condition between ibus_bus_set_global_engine() and ibus_bus_get_global_engine(). If focus moves between the two API calls, ibus_bus_get_global_engine() might return an unexpected engine name: 1. context A is focused, and the current global engine is "X". 2. ibus_bus_set_global_engine("Y") is called. 3. a user moves the focus from A to B. First, A's engine is set to NULL in bus_ibus_impl_set_focused_context(). Then, in the same function, B's engine is set to "X" (not "Y") since the _ibus_set_global_engine asynchronous call is not finished yet. 4. ibus_bus_set_global_engine("Y") async call successfully finishes. Context A's (not B's) engine is set to "Y", but context B, which has a focus, is not updated. 5. ibus_bus_get_global_engine() is called. expected: Y is returned. actual: X is returned. Since the context B has a focus, and B's engine is X. BUG=http://crosbug.com/11031 TEST=see the bug Review URL: http://codereview.appspot.com/4063041 M bus/ibusimpl.c commit e194133baa0afc7fdb1befc18c2c1f516979a9be Author: Yusuke Sato Date: 2011-01-19 10:18:13 +0900 Do not allow clients to destroy the server-side config service for safety. Unset the own flag of priv->config so that the config proxy object never destroys the config service even if a client wrongly unref()s the priv->config object. BUG=none TEST=manually Review URL: http://codereview.appspot.com/4060041 M src/ibusbus.h M src/ibusconfig.c commit 302c85138bac23e7e5faf223119df0d5d04f9b0d Author: Yusuke Sato Date: 2011-01-18 22:00:57 +0900 Fix possible SEGV in ibus_bus_get_global_engine. The g_variant_get returns NULL when the IPC call times out. BUG=none TEST=none Review URL: http://codereview.appspot.com/3974043 M src/ibusbus.c commit 6b4874283c510869080eed2c63d61e54f8beeba8 Author: Yusuke Sato Date: 2011-01-18 21:51:40 +0900 Handle GlobalEngineChanged signals from ibus-daemon. BUG=http://crosbug.com/11011 TEST=manually Review URL: http://codereview.appspot.com/4037042 M src/ibusbus.c M src/ibusbus.h commit 469bfe396a0fa680ade8536b9bd9829918be2994 Author: Yusuke Sato Date: 2011-01-18 10:33:48 +0900 On ChromeOS, we don't have to (and don't want to) set default preload engines. BUG=none TEST=manually Review URL: http://codereview.appspot.com/4054041 M bus/ibusimpl.c commit 6a5c7666e1194e8ac8a3d0c3f680269b42fe80c2 Author: Daiki Ueno Date: 2011-01-17 14:22:18 +0900 Set nonzero serial number for RegistryChanged / EngineChanged signals. libdbus expects each message serial is greater than 0. https://code.google.com/p/ibus/issues/detail?id=1186 BUG=none TEST=manual test described in the issue#1186 Review URL: http://codereview.appspot.com/4050041 M bus/ibusimpl.c commit 990ff3920657584d356c48bebde031405285bf80 Author: Yusuke Sato Date: 2011-01-16 11:35:09 +0900 Fix typo in the default configuration of the trigger hotkeys. According to setup/keyboardshortcut.py, "Control" seems to be correct. BUG=none TEST=compile ibus with --enable-memconf, start ibus-daemon, start ibus-setup, click "..." button for the "Enable or disable" hotkey, then verify that the "Control" checkbox in the pop-up dialog is checked from the beginning. Review URL: http://codereview.appspot.com/4017042 M ibus/common.py commit ee6abd76f7b0f0fc8e1a8b6964f4d8216a3b6618 Author: Yusuke Sato Date: 2011-01-16 11:34:34 +0900 Set correct g-flags to proxy objects. This change is similar to https://github.com/ibus/ibus/commit/19247aac5a348185a0e180f254ab3858c5f85703. The flag can prevent unnecessary communications between ibus-daemon and e.g. engines like this: $ . ~/.config/ibus/bus/*-unix-0 ; dbus-monitor --address $IBUS_ADDRESS 2>&1 | tee /tmp/ibus.log ... method call sender=org.freedesktop.DBus -> dest=(null destination) serial=3 path=/org/freedesktop/IBus/Factory; interface=org.freedesktop.IBus.Factory; member=CreateEngine string "mozc-jp" method return sender=:1.15 -> dest=org.freedesktop.DBus reply_serial=3 object path "/org/freedesktop/IBus/Engine/1" method call sender=org.freedesktop.DBus -> dest=(null destination) serial=4 path=/org/freedesktop/IBus/Engine/1; interface=org.freedesktop.DBus.Properties; member=GetAll string "org.freedesktop.IBus.Engine" method return sender=:1.15 -> dest=org.freedesktop.DBus reply_serial=4 array [ ] Calling an engine's org.freedesktop.DBus.Properties.GetAll method when the engine is created is unnecessary for ibus-daemon, while it's not harmful though. BUG=none TEST=verified using dbus-monitor that ibus-daemon does not call GetAll anymore. Review URL: http://codereview.appspot.com/4036041 M bus/engineproxy.c M bus/factoryproxy.c M bus/panelproxy.c commit ca4909cc8349a9931958c3010f965cf19bf23cd7 Author: Yusuke Sato Date: 2011-01-12 22:44:08 +0900 Fix a gcc warning seen in Chromium OS build. Please note that gcc's warn_unused_result check is enforced on the build environment. Anyway, I believe it's good to check the return value in this case. BUG=none TEST=ran emerge-x86-generic ibus. Review URL: http://codereview.appspot.com/3904044 M bus/registry.c commit 199f80396f2c3db4953bac36c953742ece2d2270 Author: Yusuke Sato Date: 2011-01-12 22:43:16 +0900 Remove a gcc warning. ibusxml.c: In function 'ibus_xml_parse_file': ibusxml.c:213: error: 'retval' may be used uninitialized in this function BUG=none TEST=ran make CFLAGS="-Wall -O2" Review URL: http://codereview.appspot.com/3858044 M src/ibusxml.c commit 1403dc6abe87bd649c95b2454b49af2deba63461 Author: Yusuke Sato Date: 2011-01-12 22:42:24 +0900 Fix typo in ibus_bus_exit. BUG=none TEST=ran make CFLAGS="-Wall -O2" Review URL: http://codereview.appspot.com/3900045 M src/ibusbus.c commit 411d8c5f21ea0d3f65bfc0cbdc98733af360b441 Author: Yusuke Sato Date: 2011-01-10 14:25:07 +0900 Fix the return value of ibus_bus_register_component so it returns TRUE on success. Do the same for ibus_bus_set_global_engine as well. Currently it always returns TRUE regardless of the result of the method call. BUG=none TEST=manually Review URL: http://codereview.appspot.com/3902043 M src/ibusbus.c commit 783905fd6e6c8983237745ba90e05070559e0458 Author: Yusuke Sato Date: 2011-01-09 15:12:11 +0900 Change the return type of ibus_bus_exit to make it compatible with ibus-1.3 API. BUG=none TEST=manually Review URL: http://codereview.appspot.com/3923042 M src/ibusbus.c M src/ibusbus.h commit d5bdf851d25b07062ecb2ea932b91317b1d9e72a Author: Daiki Ueno Date: 2011-01-07 10:42:44 +0900 Set correct sender and interface when sending org.freedesktop.IBus signals. BUG=none TEST=manual Review URL: http://codereview.appspot.com/3775042 M bus/dbusimpl.c M bus/ibusimpl.c M bus/inputcontext.c commit b24b403295a655e0c5644c5ddca1cf3488a938ce Author: Yusuke Sato Date: 2011-01-07 01:38:23 +0900 Set the "g-default-timeout" property for ibusconfig, ibusinputcontext, and ibusbus objects. The GDBus default timeout (25 seconds) seems to be too long for IBus. BUG=none TEST=manually, with IBUS_BUS_TIMEOUT=-3,-2,-1,0,1,1000,6000,abc,1abc,abc1 Review URL: http://codereview.appspot.com/3799049 M src/ibusbus.c M src/ibusconfig.c M src/ibusinputcontext.c M src/ibusshare.c M src/ibusshare.h commit 144272e3a8b56cc9e9cec3f09688ae47c6166032 Author: Yusuke Sato Date: 2011-01-06 12:28:54 +0900 Use the G_DBUS_CALL_FLAGS_NO_AUTO_START flag just in case. BUG=none TEST=manually on Chromium OS. Review URL: http://codereview.appspot.com/3774043 M src/ibusbus.c commit dd4a4c1a7f64a9a7737171d7aeb8272de130475e Author: Yusuke Sato Date: 2011-01-06 12:24:36 +0900 Do not write empty string to "preload_engines" for safety. Without the change, bus_ibus_impl_set_default_preload_engines() might erase an existing preload_engines config when --timeout option for ibus-daemon is too short for ibus_config_get() to success. BUG=none TEST=manually with 'ibus-daemon --timeout=1' Review URL: http://codereview.appspot.com/3789046 M bus/ibusimpl.c commit 44e94a3d0c7812fd24bd0548601682a1c0b043d7 Author: Yusuke Sato Date: 2011-01-06 08:44:49 +0900 Call ibus_hotkey_profile_remove_hotkey_by_event in bus_ibus_impl_set_trigger before registering the fallback hotkey, just in case. Probably it's better to call the remove function in bus_ibus_impl_set_trigger just as bus_ibus_impl_set_hotkey already does, so that a wierd error message like 'IBUS-CRITICAL **: ...: file ibushotkey.c: line 381 (ibus_hotkey_profile_add_hotkey): should not be reached' will not be shown. The fallback hotkey could be registered twice, via bus_ibus_impl_init and _dbus_name_owner_changed_cb, if the --timeout parameter is too small to talk to the configuration daemon, for example. BUG=none TEST=ran ibus-daemon with --timeout=1 and verified that the IBUS-CRITICAL message above was not shown. Review URL: http://codereview.appspot.com/3796044 M bus/ibusimpl.c commit af1460aea63a65877544e65a335398bd670ad6ee Author: Yusuke Sato Date: 2011-01-06 08:25:47 +0900 Replace g_return_if_fail with g_warning since the error message 'desc != NULL' seems confusing. BUG=none TEST=manually. removed all engines using ibus-setup and ran ibus-daemon, then press a trigger hot-key. Review URL: http://codereview.appspot.com/3786047 M bus/ibusimpl.c commit c6e273c0ee91858bf5af2a87048f9d2977d368d5 Author: Yusuke Sato Date: 2011-01-06 08:22:38 +0900 Fix --timeout command line option of ibus-daemon. On 1.3.99, currently the option is just ignored and '-1' (i.e. the default timeout of gdbus which is 25 seconds in glib-2.26.1) is always used. We should fix this since the default, 25 secs, is too long for some platforms like Chromium OS. BUG=none TEST=manually Review URL: http://codereview.appspot.com/3784047 M bus/engineproxy.c M bus/engineproxy.h M bus/factoryproxy.c M bus/ibusimpl.c M bus/inputcontext.c M bus/main.c M bus/option.h M bus/panelproxy.c commit 2f0877decf4adde5d4779a13ab15c40c41985525 Author: Yusuke Sato Date: 2011-01-01 17:34:37 +0900 Support hotkeys that use Super/Hyper modifiers. BUG=1175 TEST=checked that Super+space and Hyper+space work as intended with and without the use_sys_layout option enabled. Review URL: http://codereview.appspot.com/3856041 M src/ibushotkey.c M src/ibuskeynames.c commit f4075519710719aa245ed8421f0219a129152fdb Author: Peng Huang Date: 2010-12-28 16:44:16 -0700 Reply an error message to sender, if ibus-daemon can not forward method call message successfully. BUG=none TEST=manually Review URL: http://codereview.appspot.com/3825042 M bus/dbusimpl.c commit 017077ceb9ec2f26a8c524f3794a832164f21768 Author: Daiki Ueno Date: 2010-12-28 12:46:25 +0900 Fix g_variant_get() call in DeleteSurroundingText signal handler. BUG=none TEST=manual Review URL: http://codereview.appspot.com/3820042 M src/ibusinputcontext.c commit 61f0894c3555478117e9d5f286d0085bd5afdad3 Author: Yusuke Sato Date: 2010-12-27 07:58:29 +0900 Fix API compatibility issue in ibus_config_new. On ibus-1.3, ibus_config_new returns NULL when ibus-gconf is not started yet, but on 1.4 it returns a valid, non-NULL IBusConfig object. This patch fixes the discrepancy by changing the behavior of ibus_config_new of 1.4. If we don't return NULL when ibus-gconf does not exist, successive calls e.g. ibus_config_set_value will fail with a cryptic error message like 'IBUS-WARNING **: org.freedesktop.IBus.Config.SetValue: Cannot invoke method; proxy is for a well-known name without an owner and proxy was constructed with the G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag'. I believe returning NULL makes it easier to use the ibusconfig.h APIs. Please note that this patch is particularly important for Chromium OS. Since ibus_config_new is called shortly after ibus-daemon starts on the OS, ibus_config_new is sometimes called before ibus-memconf starts actually. This change helps the glue between chrome and ibus-daemon to remain clean. BUG=none TEST=manually on Chromium OS Review URL: http://codereview.appspot.com/3784043 M src/ibusconfig.c commit 19247aac5a348185a0e180f254ab3858c5f85703 Author: Yusuke Sato Date: 2010-12-27 07:57:09 +0900 Create an instance of GDBusProxy with G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES flag. Without the flag, on_name_owner_changed() in glib-2.26.x/gio/gdbusproxy.c might invoke a remote method named GetAll in org.freedesktop.DBus.Properties interface, but the method is not implemented in ibus-daemon. Since ibus-daemon ignores the method call, the caller, which is UI thread of Chrome on Chromium OS, will block for 25 seconds (i.e. the default timeout of GDBus) waiting for a reply. BUG=none TEST=manually Review URL: http://codereview.appspot.com/3836042 M src/ibusconfig.c M src/ibusinputcontext.c commit 7a8b3d722b83221168a339f46c7e8a617c735ade Author: Peng Huang Date: 2010-12-25 22:05:13 -0700 Fix Alt+Shift hotkey issue for chrome os BUG=chromium-os:6225 TEST=manual Review URL: http://codereview.appspot.com/3741043 M src/ibushotkey.c commit 911490b3f8adac433a91153000a63a0a7143fff2 Author: Yusuke Sato Date: 2010-12-22 23:03:03 +0900 Fix hot-key handling in inputcontext.c. Without the fix, some key combinations might not trigger a hot-key event. For example, one of Chrome OS hot-keys, "press Shift, then press Alt, then release Alt", does not work without the fix. BUG=none TEST=manually checked using ChromeOS and IBus-1.4 Review URL: http://codereview.appspot.com/3828041 M bus/inputcontext.c commit 2c3021469f770666e54e72bf8e6c306c7dd3a046 Author: Yusuke Sato Date: 2010-12-21 01:04:49 +0900 Add comments to ibusproxy.[ch] and related functions. BUG=none TEST=none Review URL: http://codereview.appspot.com/3802042 M bus/ibusimpl.c M src/ibusproxy.c M src/ibusproxy.h commit e4d8612776dbb5eca85ab35d9ad71ddd68db63e4 Author: Yusuke Sato Date: 2010-12-21 01:04:05 +0900 Fix ibus_input_context_get_input_context() so IBus.Service.Destroy will not be called when the returned object is disposed. BUG=none TEST=verified that calling g_object_unref(the_returned_object) does not result in the remote method call. Review URL: http://codereview.appspot.com/3803041 M src/ibusinputcontext.c M src/ibusproxy.c M src/ibusproxy.h commit fb0aee6d9f04e2b9e3177cfbd6cff359d40af879 Author: Daiki Ueno Date: 2010-12-20 18:19:04 +0900 Don't call nonexistent org.freedesktop.IBus.InputContext.Destroy. BUG=none TEST=manual Review URL: http://codereview.appspot.com/3800041 M ibus/inputcontext.py commit 7ca2d0f5b8fe5eb395fdff850d482d44b6216300 Author: Yusuke Sato Date: 2010-12-20 15:02:20 +0900 Fix typo in introspection_xml[] for InputContext. https://github.com/ibus/ibus/commit/ed778cd7cfc78eb39fc74167f2169b69f4d72a6b was incomplete, sorry. BUG=none TEST=verified that properties can be changed via input context on Chrome OS. Review URL: http://codereview.appspot.com/3795041 M bus/inputcontext.c commit 6a8b35d0d0ffd4c130a849a86e8c3e50cbeba14a Author: Daiki Ueno Date: 2010-12-15 18:33:33 +0900 Init GError before calling g_dbus_proxy_call*(). BUG=none TEST=manual Review URL: http://codereview.appspot.com/3669041 M src/ibusinputcontext.c commit c3c20f8e45c27440e188e2bac3baca05cc966d71 Author: Daiki Ueno Date: 2010-12-15 18:32:17 +0900 Fix gtk version check for deprecated keysyms. From the git log of gtk3, they started adding _KEY from 2.91.0 not 2.90.0. BUG=none TEST=manual Review URL: http://codereview.appspot.com/3670041 M client/gtk2/ibusimcontext.c commit bd5ead57debd3165d7dd89b099a1faadaa223eb3 Author: Peng Huang Date: 2010-12-15 17:04:43 +0800 Disconnect closed signal from GDBusConnection before creating a new connection. BUG=none TEST=manual Review URL: http://codereview.appspot.com/3668041 M src/ibusbus.c commit 4de438c3dbb35399b479b78ada3398c5319fb7ba Author: Yusuke Sato Date: 2010-12-15 15:13:00 +0900 Fix assertion failure in ibusbus.c. The following code does not work since the underlying connection for IBus-1.4 is not a sub class of IBusObject. ibus_object_destroy ((IBusObject *)priv->connection); g_assert (priv->connection == NULL); BUG=none TEST=ran Chrome for Chrome OS. Review URL: http://codereview.appspot.com/3658041 M src/ibusbus.c commit 872aec110599de061e587746e8500e98f59feed9 Author: Yusuke Sato Date: 2010-12-15 14:36:19 +0900 Fix type mismatch in src/ibuspanelservice.c. BUG=none TEST=ran candidate_window for Chrome OS. Review URL: http://codereview.appspot.com/3661041 M src/ibuspanelservice.c commit ed778cd7cfc78eb39fc74167f2169b69f4d72a6b Author: Yusuke Sato Date: 2010-12-15 14:09:20 +0900 Use unsigned for the parameter of the PropertyActivate message. unsigned would be better since the Python binding and engine proxy use unsigned for this purpose. BUG=none TEST=ran Chrome for Chrome OS. Review URL: http://codereview.appspot.com/3660041 M bus/inputcontext.c M src/ibusinputcontext.c M src/ibusinputcontext.h commit 2ce1bd05306e416d243c49eed5608b18b12f62cf Author: Yusuke Sato Date: 2010-12-15 11:55:16 +0900 Fix type mismatch in the PropertyActivate message. src/ibusinputcontext.c sends the massage with "(si)" but the daemon use the massage as "(&su)". This triggers assertion failure on Chrome OS. BUG=none TEST=change ibus-mozc's property on Chrome OS via the IME menu. Review URL: http://codereview.appspot.com/3636041 M bus/inputcontext.c commit c2c4c6df3c0b650406be0615adb738540ebaf7af Author: Peng Huang Date: 2010-12-02 13:12:53 +0800 Fix crash in im-ibus.so BUG=chromium-os:9868 TEST=manual Review URL: http://codereview.appspot.com/3401041 M client/gtk2/ibusimcontext.c commit e0b882f5fb5e274f8ae909c2b2c3b634890c31b5 Author: Peng Huang Date: 2010-11-21 19:26:18 +0900 Focus out/in fake input context if the input window changed. BUG=chromium-os:8855 TEST=manual Review URL: http://codereview.appspot.com/3199042 M client/gtk2/ibusimcontext.c commit 93ceb44131ad5cef4691dae151259f268f3ba986 Author: Peng Huang Date: 2010-12-14 10:16:32 +0800 Focus out the fake context in im-ibus.so, when a real context gets the focus. BUG=none TEST=manual Review URL: http://codereview.appspot.com/3561042 M client/gtk2/ibusimcontext.c commit 856bd2ea703a27fb88a82022392dbcd366a56d95 Author: Peng Huang Date: 2010-12-14 10:14:45 +0800 Add fake context back in IBusIMContext. The fake context is removed by mistake in ibus-1.4. It is necessary for Chrome OS. BUG=none TEST=manual Review URL: http://codereview.appspot.com/3574042 M client/gtk2/ibusimcontext.c commit ac1be736ab513b46c642e9ceb8bfc3bf4dc50de4 Author: Peng Huang Date: 2010-12-13 17:37:09 +0800 Fix typo and annotation. Fix typo in IBusEngineDesc:rank doc and GI transfer mode for ibus_component_get_engines(). BUG=none TEST=manual Review URL: http://codereview.appspot.com/3614041 M src/ibuscomponent.h M src/ibusenginedesc.c commit 98419a4133f6358ec2e8ad56c62aacf3e3754c3e Author: Peng Huang Date: 2010-12-08 16:37:42 +0800 Fix GI transfer mode annotation in ibus_bus_list_*engines() comment. See https://bugzilla.gnome.org/show_bug.cgi?id=635248. Also, do not mark those functions as "not implemented", since they are apparently implemented. BUG=none TEST=manual Review URL: http://codereview.appspot.com/3274044 M src/ibusbus.h commit 9b0e04d311f9e3e65cbdd245332502a7d36e9739 Author: Yusuke Sato Date: 2010-12-03 00:42:45 +0900 Add #include to ibus.h. Add #include to ibus.h so an external project (e.g. Chromium OS project) could implement its own panel component in C/C++. Review URL: http://codereview.appspot.com/3411041 M src/ibus.h commit 036554a6106ba28bf2282ad63711a277c0abfe85 Author: Yusuke Sato Date: 2010-12-03 00:41:15 +0900 Remove unused header file, src/ibusconfigprivate.h Review URL: http://codereview.appspot.com/3412041 M src/Makefile.am D src/ibusconfigprivate.h commit 4f1f7e241edf9c41bc158c1367380e5b0da9a670 Author: Yusuke Sato Date: 2010-12-01 22:00:44 +0900 Fix compile errors on Chromium OS. This is for the master branch of ibus. BUG=crosbug.com/9685 TEST=ran emerge-x86-generic ibus. Review URL: http://codereview.appspot.com/3368041 M bus/inputcontext.c commit 50ceef360174ab6709a4215706ea527735f10c7e Author: Yusuke Sato Date: 2010-11-29 12:04:27 +0900 Do not call g_critical when ibus->config is NULL since it's not an error. The change is originally for chromeos branch of ibus (http://codereview.appspot.com/3304043/) but I believe this is also good for the master branch of ibus. BUG=none TEST=manually Review URL: http://codereview.appspot.com/3269043 M bus/ibusimpl.c commit cf2c9302528b9ece00eb3430600e8391f05f2a5c Author: Yusuke Sato Date: 2010-11-26 16:07:56 +0900 Add the "destroy" signal handler back following Peng's suggestion at http://codereview.appspot.com/3293042/. BUG=none TEST=manually Review URL: http://codereview.appspot.com/3335041 M bus/panelproxy.c commit 85b5e0e92104d921f161bac22349db7f1f89790a Author: Yusuke Sato Date: 2010-11-26 10:15:08 +0900 Add function comments to bus/panelproxy.[ch]. BUG=none TEST=none Review URL: http://codereview.appspot.com/3293042 M bus/panelproxy.c M bus/panelproxy.h commit ede7506ad1e69092a334bbd5b90a9f4b6c6349df Author: Yusuke Sato Date: 2010-11-25 17:54:19 +0900 Fix unexpected client capabilities in ibus-daemon. BUG=none TEST=manually Review URL: http://codereview.appspot.com/3323041 M bus/inputcontext.c M src/ibusinputcontext.h commit a902bf42cb1bb8ce2ba9db147435cb52228281b4 Author: Yusuke Sato Date: 2010-11-25 17:40:43 +0900 Change the order of engine method calls for consistency. BUG=none TEST=manually Review URL: http://codereview.appspot.com/3304042 M bus/inputcontext.c commit 9ff18b80fdb3be5ed1209698c9f22d06cad4dc47 Author: Yusuke Sato Date: 2010-11-25 16:55:04 +0900 Add function comments to bus/inputcontext.[ch] and bus/engineproxy.[ch]. Removed a temporary hack for PREEDIT_CONDITION by adding bus_ibus_impl_is_embed_preedit_text function to ibusimpl.c. BUG=none TEST=manually Review URL: http://codereview.appspot.com/3321041 M bus/engineproxy.c M bus/engineproxy.h M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M bus/inputcontext.h commit 21c14908e7f274c32d1e454e57cd51840b15ed14 Author: Yusuke Sato Date: 2010-11-24 18:50:57 +0900 Re-enable the use_sys_layout feature. Currently use_sys_layout cannot be disabled. BUG=none TEST=manually Review URL: http://codereview.appspot.com/3306041 M bus/engineproxy.c M bus/ibusimpl.c M bus/inputcontext.c commit 5d4f22c81caad3ea6503fa8e0862aacf7fc2107a Author: Peng Huang Date: 2010-11-24 17:46:12 +0900 Pass cancellable object to bus_factory_proxy_create_engine BUG=none TEST=manual Review URL: http://codereview.appspot.com/3304041 M bus/engineproxy.c commit 5f1d5dd0089094f4ace175b451387d646ce81877 Author: Peng Huang Date: 2010-11-24 11:33:10 +0900 Clean up the code of focus switch logic, and fix a crash when focused context is destroyed. BUG=none TEST=manual Review URL: http://codereview.appspot.com/3192042 M bus/ibusimpl.c M bus/inputcontext.c commit b483041c3b8b01ccc6a11dd97d313d191cb11093 Author: Peng Huang Date: 2010-11-24 11:29:19 +0900 Fix some crashs when engine processes are killed. BUG=none TEST=manual Review URL: http://codereview.appspot.com/3152042 M bus/component.c M bus/engineproxy.c M bus/ibusimpl.c M bus/registry.c M client/gtk2/ibusimcontext.c M src/ibusobject.h M src/ibusproxy.c commit ee09d6331a4816044da78d8f5394da2b9d318989 Author: Peng Huang Date: 2010-11-24 10:29:26 +0900 Use g_object_add_weak_pointer to make code simpler. BUG=none TEST=none Review URL: http://codereview.appspot.com/3252041 M client/gtk2/ibusimcontext.c commit 3460cc569fc5e58ed538c23b23582166ed796fba Author: Jim Huang Date: 2010-11-22 01:37:04 +0800 Add generated files into .gitignore M .gitignore M bus/.gitignore A src/tests/.gitignore commit 50c0d8399e7f31135647999fc9cd78f8a888264a Author: Jim Huang Date: 2010-11-22 01:24:08 +0800 Avoid comparison of unsigned expression comparison of unsigned expression < 0 is always false M src/ibuskeymap.c commit 5fc6d9b8459ce47634012a42a638b6a091c205ee Author: Jim Huang Date: 2010-11-22 01:15:25 +0800 Add assertions to connection_destroy callback M bus/inputcontext.c commit be50bec410f0b4730dd80c69c4037521eceae9d9 Author: Peng Huang Date: 2010-11-21 19:13:34 +0900 Remove some unused header files. BUG=none TEST=manual Review URL: http://codereview.appspot.com/3218041 M client/gtk2/ibusim.c M client/gtk2/ibusimcontext.c commit 4830992d531347f6cd464c384364e9b2cf7e96a6 Author: fujiwarat Date: 2010-11-18 12:23:45 +0900 Fix NULL of focused input context M bus/inputcontext.c commit b1b50dbbf0d3117da388e8035b490fb4c3e19ab2 Author: Yusuke Sato Date: 2010-11-17 19:15:38 +0900 Add comments to bus/connection.[ch]. BUG=none TEST=none Review URL: http://codereview.appspot.com/3164041 M bus/connection.c M bus/connection.h commit 96cc5ab07c5c84e9807f3fb195166b7a5b09f2f5 Author: Yusuke Sato Date: 2010-11-17 19:14:44 +0900 Add comments to bus/factoryproxy.[ch]. BUG=none TEST=none Review URL: http://codereview.appspot.com/3163041 M bus/factoryproxy.c M bus/factoryproxy.h commit f8416ad2ed6bf581a1f746b4205eda25804ee9b9 Author: Yusuke Sato Date: 2010-11-17 17:34:29 +0900 Add comments to bus/registry.[ch]. BUG=none TEST=none Review URL: http://codereview.appspot.com/3162041 M bus/registry.c M bus/registry.h commit 2242d0279e7cc71c653c673acaedd4c47305ec17 Author: Yusuke Sato Date: 2010-11-17 17:12:32 +0900 Add comments about thread safety. BUG=none TEST=none Review URL: http://codereview.appspot.com/3156041 M bus/dbusimpl.c commit a632d5e774eef4f5384f62580a682192c46ac9a9 Author: Yusuke Sato Date: 2010-11-17 16:01:17 +0900 Add comments to bus/component.[ch]. BUG=none TEST=none Review URL: http://codereview.appspot.com/3161041 M bus/component.c M bus/component.h commit e237282d262d27d97c441885c62aaacc4ae90f76 Author: Yusuke Sato Date: 2010-11-17 13:49:55 +0900 Add comments to bus/ibusimpl.[ch]. BUG=none TEST=none Review URL: http://codereview.appspot.com/3154041 M bus/ibusimpl.c M bus/ibusimpl.h commit 90305393b3862fdb9d5860fa81aab59bb5d1eccc Author: fujiwarat Date: 2010-11-16 18:11:37 +0900 Fix no defined '_' in EngineAbout M ui/gtk/engineabout.py commit 60c0bc54c0654ac89b56e94b756bbba95e8f3521 Author: Peng Huang Date: 2010-11-16 17:59:48 +0900 Add introspection data for org.freedesktop.IBus.Panel and remove Destroy method. Add introspection data for org.freedesktop.IBus.Panel interface. And remove Destroy method from Panel interface, because it is moved to org.freedesktop.IBus.Service interface. BUG=none TEST=none Review URL: http://codereview.appspot.com/3137041 M src/ibuspanelservice.c M src/ibuspanelservice.h commit 217d2b49264d5335f8a0b5e8c70ff417547364aa Author: Yusuke Sato Date: 2010-11-16 15:43:12 +0900 Add comments to bus/dbusimpl.[ch]. BUG=none TEST=none Review URL: http://codereview.appspot.com/3132041 M bus/dbusimpl.c M bus/dbusimpl.h commit 7ccb594a14ff3e2f189af80a34c92e6b1113f577 Author: Peng Huang Date: 2010-11-16 14:22:23 +0900 Make sure send the reply of method IBus.Exit out before the daemon exits. BUG=none TEST=manual Review URL: http://codereview.appspot.com/3133041 M bus/ibusimpl.c commit ac3ff55b7e4c23dd6ccd634b5b5eda683c0b2f43 Author: Peng Huang Date: 2010-11-16 14:02:34 +0900 Add global variable DOMAINNAME to replace "ibus10" in everywhere. BUG=none TEST=manual Review URL: http://codereview.appspot.com/3093042 M setup/main.py M ui/gtk/i18n.py commit 97fe1c47e189178b10c23fb18b575813f60fe72a Author: fujiwarat Date: 2010-11-16 12:08:53 +0900 Fix ibus_version in configure and translation domain in ibus-setup. M configure.ac M setup/main.py commit 6e848591c101cbf6e14ed12f0e50deac7a486d71 Author: fujiwarat Date: 2010-11-11 18:09:52 +0900 Always read Window as 32 bits integer to fix problem in ppc64. M client/x11/main.c commit a72b99373425872bc7a0a4b2659ac8cb5ccb546e Author: Yusuke Sato Date: 2010-11-16 11:17:33 +0900 Use "org.freedesktop.IBus" instead of "org.freedesktop.DBus" for the well-known bus name for the input context proxy. Though "org.freedesktop.DBus" works fine, since bus_dbus_impl_connection_filter_cb in bus/dbusimpl.c treats the two bus names equally, "org.freedesktop.IBus" which matches the interface name looks more natural. BUG=none TEST=manually done Review URL: http://codereview.appspot.com/3128041 M src/ibusinputcontext.c commit 5e823fcbff6b29286babc99e783d13af7ba505b3 Author: Peng Huang Date: 2010-11-16 10:24:03 +0900 Remove block call in ibus-daemon, and use async call instead and clean up code. 1. Do not use poll factory of a component. Sometime, it will cause a dead lock of ibus: ibus-daemon are waiting reply from engine, and engine are also waiting for reply from ibus-daemon. 2. Move some API from IBusComponent to BusComponent, Because of those API is for internal using only 3. Add a fake input context in server side to support switching input method when no context has focus. 4. Remove fake input context in imcontext, because we added the server side fake context BUG=none TEST=manual Review URL: http://codereview.appspot.com/3077042 M bindings/vala/test/Makefile M bus/Makefile.am A bus/component.c A bus/component.h M bus/engineproxy.c M bus/engineproxy.h M bus/factoryproxy.c M bus/factoryproxy.h M bus/ibusimpl.c M bus/inputcontext.c M bus/inputcontext.h M bus/main.c M bus/registry.c M bus/registry.h M client/gtk2/ibusimcontext.c M debian/libibus-1.0-0.symbols M src/ibuscomponent.c M src/ibuscomponent.h M src/ibusconfig.c M src/ibusconfig.h M src/ibusenginedesc.h M src/ibusproxy.h commit 911a104d0597435fb090d6079b60b47863c3ea0b Author: Yusuke Sato Date: 2010-11-15 17:39:51 +0900 Add function comments to bus/server.[ch] BUG=none TEST=none Review URL: http://codereview.appspot.com/3040041 M bus/server.c M bus/server.h commit 2ba1c99304b1b91a1b533a222b160febe650003f Author: Yusuke Sato Date: 2010-11-15 13:05:27 +0900 Add function comments to bus/main.c. BUG=none TEST=none Review URL: http://codereview.appspot.com/3036041 M bus/main.c commit d495f82052dda24cb96181aa42e1a0d2e82b08f9 Author: Yusuke Sato Date: 2010-11-15 13:02:23 +0900 Delete src/ibusserver.[ch] that are no longer used. BUG=none TEST=none Review URL: http://codereview.appspot.com/3018042 D src/ibusserver.c D src/ibusserver.h D src/tests/ibus-server.c commit 4bddbd04d850ad7891ad3620f8ce0d7e34070ecd Author: Peng Huang Date: 2010-11-12 10:12:22 +0900 Disable snooper in chromium, chrome, firefox and gnome-do Those applications has problems with snooper enabled. So update the NO_SNOOPER_APPS to disable snooper for those applications by default. BUG=ibus:1140 TEST=manual M configure.ac commit 26f62c002fcc9f7c8cc00a735dc78e6d74eb7924 Author: Peng Huang Date: 2010-11-04 12:58:13 +0900 Remove a debug output M client/gtk2/ibusimcontext.c commit 420b7b4a80d37b1fb277d1922d3a669f28bb5a9d Author: fujiwarat Date: 2010-11-02 14:12:06 +0900 Remove GDK_DISPLAY, this macro has been removed in gtk3 http://live.gnome.org/GnomeGoals/RemoveDeprecatedSymbols/GTK%2B M client/x11/main.c commit 6670716f7307084972796b00feb0781827f6636c Author: Peng Huang Date: 2010-11-04 12:05:39 +0900 Update python test scripts for gobject-introspection M src/python/ibus.py M src/python/test.py commit 5d8096b8464f98038827f71429c489ae2aae49f7 Author: fujiwarat Date: 2010-11-04 11:07:36 +0900 Remove the ability to attach to a status icon with libnotify 0.7.0 M ui/gtk/main.py commit 071dab2be51ae1142a75adc7a595a3ee9ef4230a Author: Peng Huang Date: 2010-11-04 09:38:23 +0900 Refine some code and remove some dead code. M bus/ibusimpl.c M src/ibusinputcontext.c commit c464170208fee4abfb577bfaa8585b6f45d5c7ee Author: Peng Huang Date: 2010-11-03 13:37:57 +0900 Fix some issues within codereview. M bus/connection.c M bus/dbusimpl.c M bus/dbusimpl.h M bus/engineproxy.c M bus/factoryproxy.h M bus/ibusimpl.c M bus/inputcontext.c M bus/main.c M bus/matchrule.c M bus/registry.c M bus/server.c M bus/server.h M bus/test-client.c M client/gtk2/ibusimcontext.c M debian/rules M docs/reference/ibus/ibus-sections.txt M gconf/config.c M memconf/config.c M src/ibusbus.c M src/ibusconfigservice.c M src/ibusengine.c M src/ibusfactory.c M src/ibuspanelservice.c M src/ibusservice.c commit f1c4fcb0e0cd7427999c5c97e47d85a60544a4be Author: Peng Huang Date: 2010-11-02 20:30:02 +0900 Fix crash when icon of property is Null M bus/factoryproxy.c M src/ibusproperty.c commit a0e4923aa8c3dd3865bac7ba67b9a3979432c7fb Author: fujiwarat Date: 2010-11-01 18:16:25 +0900 Fix UnsetValue name. M ibus/config.py M ibus/interface/iconfig.py commit 2cac54a2a77459ec5f3e0fdbed376249fee0d2a4 Author: fujiwarat Date: 2010-11-01 16:13:55 +0900 Fix serialized order. M src/ibusenginedesc.c commit 7fa9f32f3157176a90505749426416d440e39a69 Author: Peng Huang Date: 2010-11-01 15:05:29 +0900 Rename ibus_engine_desc_new2 and ibus_component_new2 to *_new_varargs. wip. M debian/libibus-1.0-0.symbols M src/ibuscomponent.c M src/ibuscomponent.h M src/ibusenginedesc.c M src/ibusenginedesc.h commit 0a0668a92a5710435e93587bb5534f25a04ab120 Author: Peng Huang Date: 2010-11-01 14:03:17 +0900 Fix a typo. M ibus/common.py commit 8d8ea067c7809bd95ee69401af9960a5ea05c71e Author: Peng Huang Date: 2010-10-29 17:28:13 +0900 Fix a typo in client/gtk3/Makefile.am M client/gtk3/Makefile.am commit 7e07c6d87e3e9b7612d74c1ba4a71bdb3fa4565f Author: Peng Huang Date: 2010-10-29 17:08:38 +0900 Fix some problems in debian packages. M debian/control R100 debian/libibus1.install debian/libibus-1.0-0.install R099 debian/libibus1.symbols debian/libibus-1.0-0.symbols M debian/rules commit d00fb1d1ce308f4848ede89ca4ff3cd3994923d6 Author: Peng Huang Date: 2010-10-29 14:25:50 +0900 Add i18n.py. A setup/i18n.py A ui/gtk/i18n.py commit 841f83c9918c2cd44d3054d1e9742be98fbd5f22 Author: Peng Huang Date: 2010-10-29 12:16:52 +0900 Fix some merge failed. M src/tests/ibus-global-engine.c commit 955c2c2df5516aeba951a91c607d0705dd1c877f Author: Peng Huang Date: 2010-10-28 13:00:54 +0900 Rewrite memconf in c languages. M gconf/Makefile.am M gconf/config.c M gconf/config.h M memconf/Makefile.am A memconf/config.c D memconf/config.cc M memconf/config.h R050 memconf/main.cc memconf/main.c M src/Makefile.am commit a9b24316d5deb7a1358885ea37f76cd1dc68ef13 Author: Peng Huang Date: 2010-10-27 14:36:30 +0900 Emit NameOwnerChanged signal with non-zero serial to make libdbus happy. M bus/dbusimpl.c commit e4044fa0a00e7d7fa8f691fbbb727f25edf514aa Author: Peng Huang Date: 2010-10-27 14:35:36 +0900 Add metadata file to fix some object ownership correctly M bindings/vala/Makefile.am M bindings/vala/ibus-1.0.vapi M bindings/vala/ibus-1.0/ibus-1.0.metadata M bindings/vala/test/config.vala commit 21185b24f07b1757960fec383b5db4edbda4695d Author: Peng Huang Date: 2010-10-26 13:50:36 +0900 Add vala test for config module M bindings/vala/test/Makefile A bindings/vala/test/config.vala M memconf/main.cc commit 7a0f88ca2e4d841cd65a67d150b3b892a4bb5a95 Author: Peng Huang Date: 2010-10-21 21:03:37 +0900 Fix vala and gir build issues. M bindings/vala/Makefile.am M bindings/vala/test/enchant.vala M src/Makefile.am M src/ibusconfigservice.h commit 8854d5039f25bf791731c5e3f125a6100a9374ef Author: Peng Huang Date: 2010-10-20 20:48:07 +0900 Remove ibusdbus.h M bindings/vala/ibus-1.0.vapi M bindings/vala/ibus-1.0/ibus-1.0.gi M src/Makefile.am D src/ibusdbus.h commit 16304d0882068d01f897a64451041aebc389d045 Author: Peng Huang Date: 2010-10-20 19:48:01 +0900 wip. M bindings/vala/Makefile.am A bindings/vala/ibus-1.0.deps M bindings/vala/ibus-1.0.vapi A bindings/vala/ibus-1.0/ibus-1.0.defines M bindings/vala/ibus-1.0/ibus-1.0.files M bindings/vala/ibus-1.0/ibus-1.0.gi M bindings/vala/ibus-1.0/ibus-1.0.metadata M bindings/vala/test/enchant.vala commit f85753ee33d44b805a956d283079ef41189f9d8c Author: Peng Huang Date: 2010-10-20 17:15:56 +0900 wip. M bindings/vala/test/Makefile R097 bindings/vala/test/test.vala bindings/vala/test/enchant.vala commit 3b2bf6f4a389fb2a10d9da9a9a55430ebfca882d Author: Peng Huang Date: 2010-10-19 21:19:06 +0900 Fix some runtime errors. M bus/dbusimpl.c M bus/engineproxy.c M bus/factoryproxy.c M bus/ibusimpl.c M bus/matchrule.c M bus/panelproxy.c M bus/registry.c M bus/server.c M debian/rules M gconf/config.c M gconf/main.c M ibus/interface/iengine.py M ibus/interface/ipanel.py M setup/Makefile.am M setup/enginecombobox.py M setup/enginetreeview.py M setup/keyboardshortcut.py M setup/main.py M src/ibuscomponent.c M src/ibusconfig.c M src/ibusengine.c M src/ibuspanelservice.c M src/ibuspanelservice.h M src/ibusservice.c M src/ibusxml.c M ui/gtk/candidatepanel.py M ui/gtk/languagebar.py M ui/gtk/main.py M ui/gtk/panel.py commit 3b3f56d0248d9772c581e42d7efadfd7ac223874 Author: Peng Huang Date: 2010-10-19 18:23:19 +0900 Change version to 1.3.99 M Makefile.am M bindings/vala/Makefile.am R100 bindings/vala/ibus-2.0.vapi bindings/vala/ibus-1.0.vapi R100 bindings/vala/ibus-2.0/ibus-2.0-custom.vala bindings/vala/ibus-1.0/ibus-1.0-custom.vala R100 bindings/vala/ibus-2.0/ibus-2.0.excludes bindings/vala/ibus-1.0/ibus-1.0.excludes R100 bindings/vala/ibus-2.0/ibus-2.0.files bindings/vala/ibus-1.0/ibus-1.0.files R100 bindings/vala/ibus-2.0/ibus-2.0.gi bindings/vala/ibus-1.0/ibus-1.0.gi R098 bindings/vala/ibus-2.0/ibus-2.0.metadata bindings/vala/ibus-1.0/ibus-1.0.metadata R100 bindings/vala/ibus-2.0/ibus-2.0.namespace bindings/vala/ibus-1.0/ibus-1.0.namespace M bindings/vala/test/Makefile M bus/Makefile.am M client/gtk2/Makefile.am M client/x11/Makefile.am M configure.ac M debian/clean M debian/control R100 debian/libibus2.install debian/libibus1.install A debian/libibus1.symbols D debian/libibus2.symbols M debian/rules M docs/reference/ibus/Makefile.am M gconf/Makefile.am R064 ibus-2.0.pc.in ibus-1.0.pc.in M ibus/_config.py.in M ibus/common.py M memconf/Makefile.am M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/pt_BR.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M src/Makefile.am M src/ibusversion.h.in M src/tests/Makefile.am M ui/gtk/Makefile.am M ui/gtk/candidatepanel.py M ui/gtk/engineabout.py M ui/gtk/languagebar.py M ui/gtk/main.py M ui/gtk/notifications.py M ui/gtk/panel.py commit eb0c12036b8806c1e0587dba1744cd4998f66d4e Author: Peng Huang Date: 2010-10-19 10:26:08 +0900 Use va_list in IBusEngineDesc and IBusComponent for back compatibility. Provided by fujiwarat Conflicts: bus/engineproxy.c bus/factoryproxy.c bus/ibusimpl.c src/ibuscomponent.c src/ibusenginedesc.c src/test-bus.c src/tests/ibus-global-engine.c M bus/engineproxy.c M bus/factoryproxy.c M bus/ibusimpl.c M bus/registry.c M ibus/component.py M ibus/enginedesc.py M src/ibuscomponent.c M src/ibuscomponent.h M src/ibusenginedesc.c M src/ibusenginedesc.h M src/tests/ibus-global-engine.c commit 164fc1f12467a73c32552292076fd8226873252e Author: Peng Huang Date: 2010-06-16 23:47:09 +0800 Use gdbus in glib, and get rid of libdbus M Makefile.am M autogen.sh M bindings/vala/Makefile.am D bindings/vala/ibus-1.0/ibus-1.0-custom.vala R100 bindings/vala/ibus-1.0.vapi bindings/vala/ibus-2.0.vapi A bindings/vala/ibus-2.0/ibus-2.0-custom.vala R100 bindings/vala/ibus-1.0/ibus-1.0.excludes bindings/vala/ibus-2.0/ibus-2.0.excludes R100 bindings/vala/ibus-1.0/ibus-1.0.files bindings/vala/ibus-2.0/ibus-2.0.files R100 bindings/vala/ibus-1.0/ibus-1.0.gi bindings/vala/ibus-2.0/ibus-2.0.gi R100 bindings/vala/ibus-1.0/ibus-1.0.metadata bindings/vala/ibus-2.0/ibus-2.0.metadata R100 bindings/vala/ibus-1.0/ibus-1.0.namespace bindings/vala/ibus-2.0/ibus-2.0.namespace M bindings/vala/test/Makefile M bus/Makefile.am M bus/connection.c M bus/connection.h M bus/dbusimpl.c M bus/dbusimpl.h M bus/engineproxy.c M bus/engineproxy.h M bus/factoryproxy.c M bus/factoryproxy.h M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M bus/inputcontext.h M bus/main.c A bus/marshalers.list M bus/matchrule.c M bus/matchrule.h M bus/option.h M bus/panelproxy.c M bus/panelproxy.h M bus/registry.c M bus/registry.h M bus/server.c M bus/server.h M bus/test-matchrule.c A bus/types.h M client/gtk2/Makefile.am M client/gtk2/ibusim.c M client/gtk2/ibusimcontext.c M client/gtk3/Makefile.am M client/x11/Makefile.am M configure.ac M debian/libibus-dev.install M debian/libibus2.install M debian/libibus2.symbols M debian/rules M docs/reference/ibus/Makefile.am M docs/reference/ibus/ibus-sections.txt M docs/reference/ibus/ibus.types M gconf/Makefile.am M gconf/config.c M gconf/config.h M gconf/main.c R060 ibus-1.0.pc.in ibus-2.0.pc.in M ibus.spec.in M ibus/common.py A m4/introspection.m4 M memconf/main.cc M po/POTFILES.in M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/pt_BR.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M src/Makefile.am M src/ibus.h M src/ibusattribute.c M src/ibusattribute.h M src/ibusattrlist.c M src/ibusattrlist.h M src/ibusbus.c M src/ibusbus.h M src/ibuscomponent.c M src/ibuscomponent.h M src/ibusconfig.c M src/ibusconfig.h M src/ibusconfigprivate.h M src/ibusconfigservice.c M src/ibusconfigservice.h D src/ibusconnection.c D src/ibusconnection.h M src/ibusdbus.h M src/ibusdebug.h M src/ibusengine.c M src/ibusengine.h M src/ibusenginedesc.c M src/ibusenginedesc.h M src/ibusenumtypes.c.template D src/ibuserror.c D src/ibuserror.h M src/ibusfactory.c M src/ibusfactory.h M src/ibushotkey.c M src/ibushotkey.h M src/ibusinputcontext.c M src/ibusinputcontext.h D src/ibusinternal.c M src/ibusinternal.h M src/ibuskeymap.c M src/ibuskeymap.h M src/ibuskeysyms.h M src/ibuslookuptable.c M src/ibuslookuptable.h D src/ibusmainloop.c D src/ibusmainloop.h M src/ibusmarshalers.list D src/ibusmessage.c D src/ibusmessage.h M src/ibusobject.c M src/ibusobject.h M src/ibusobservedpath.c M src/ibusobservedpath.h M src/ibuspanelservice.c M src/ibuspanelservice.h D src/ibuspendingcall.c D src/ibuspendingcall.h M src/ibusproperty.c M src/ibusproperty.h M src/ibusproplist.c M src/ibusproplist.h M src/ibusproxy.c M src/ibusproxy.h M src/ibusserializable.c M src/ibusserializable.h M src/ibusserver.c M src/ibusservice.c M src/ibusservice.h M src/ibusshare.c M src/ibusshare.h M src/ibustext.c M src/ibustext.h M src/ibustypes.h M src/ibusxml.h D src/test-attribute.c D src/test-bus.c D src/test-keynames.c D src/test-lookuptable.c D src/test-text.c A src/tests/Makefile.am A src/tests/ibus-bus.c A src/tests/ibus-configservice.c R100 src/test-engine.c src/tests/ibus-engine.c A src/tests/ibus-factory.c R098 src/test-global-engine.c src/tests/ibus-global-engine.c R100 src/test-keymap.c src/tests/ibus-keymap.c A src/tests/ibus-keynames.c R100 src/test-proxy.c src/tests/ibus-proxy.c A src/tests/ibus-serializable.c R100 src/test-server.c src/tests/ibus-server.c A src/tests/ibus-share.c commit 0f6fd61b6ee06e070a739e5315318e6af2b72ddd Author: fujiwarat Date: 2010-11-02 11:21:24 +0900 Replace s/gdk_drawable_get_size/gdk_window_get_height/ for GTK3. M client/gtk2/ibusimcontext.c commit fd7e899c327ba9e1bf33fa79ce6027e35ac3bccc Author: Peng Huang Date: 2010-10-29 18:46:07 +0900 Use block mode of g_main_context_iteration to avoid consuming too much cpu time. BUG=none TEST=manual Review URL: http://codereview.appspot.com/2768043 M bus/ibusimpl.c commit 9cf6eed3c3fc7a40d0c6f75117fd2c4784b60536 Author: Peng Huang Date: 2010-10-26 19:27:56 +0900 Use the automake 1.10 in autogen.sh BUG=ibus:1039 TEST=manual Review URL: http://codereview.appspot.com/2746041 M autogen.sh commit f0ee4f8e8460e234cabafc8cb76df6de05d65761 Author: Peng Wu Date: 2010-10-25 14:52:21 +0800 sort combo box by locale strcoll M setup/enginecombobox.py M setup/main.py commit 243211310fb771ba55453a1b4e101490597e2397 Author: fujiwarat Date: 2010-10-26 11:49:48 +0900 Fix s/python/@PYTHON@/ in libexec scripts. The patch is provided by federico.schwindt@google.com M setup/ibus-setup.in M ui/gtk/ibus-ui-gtk.in commit 537b4dc1b8c20ec5cc5a03ce949b807035a65880 Author: fujiwarat Date: 2010-10-26 11:45:29 +0900 Fix ENV value for NetBSD M bus/Makefile.am M configure.ac M setup/Makefile.am commit 5f5017accfb859cac8829ef9d8b19547b5cc1c41 Author: Peng Huang Date: 2010-10-22 15:15:39 +0900 Bump the version to 1.3.8 M configure.ac commit 4ed0cee9a76e1123fc116ba4a251c8cfba407990 Author: Peng Huang Date: 2010-10-22 15:15:12 +0900 Comment out test-keymap test case. Comment out test-keymap test case, because it is not automatic test case. it will cause make distcheck failed. BUG=none TEST=manual Review URL: http://codereview.appspot.com/2667041 M src/test-keymap.c commit 2b1fa3dc2a2cb57484de5506f4081f933ba1c0a4 Author: Peng Huang Date: 2010-10-22 14:56:12 +0900 Limit typing rate to 800 hits/minutes, and fix make distcheck error. The old version test-stress will send key events to ibus-daemon as fast as possible. It will take all CPU resources, and the daemon, UI and input methods will not get enouch CPU resources to process those events. So all key events will be putted in the buffer. It will causes out of system memory. So I add a limitation of typing rate as 800 hits/minute. BUG=none TEST=manual Review URL: http://codereview.appspot.com/2662042 M bus/Makefile.am M bus/test-stress.c commit 74cf9101c7d1700d6add470df9db59fe3593f3a1 Author: Peng Huang Date: 2010-10-22 12:27:37 +0900 Catch exceptions from os.kill. BUG=none TEST=manual Review URL: http://codereview.appspot.com/2659042 M ui/gtk/panel.py commit acf2a46cdce536945d56ecc2a581fda38470dfe5 Author: fujiwarat Date: 2010-10-21 18:44:40 +0900 Fix CPU 100% usage with signal.SIGCHLD M client/gtk2/ibusimcontext.c M ui/gtk/panel.py commit 15db48fc217cb6e91c91e1819f2347dfdac905e0 Author: fujiwarat Date: 2010-10-21 17:30:42 +0900 Fix keyval and state in __keycode_button_clicked_cb M data/ibus.schemas.in M setup/keyboardshortcut.py commit 96b64a2eff1fb4c9bec4e712b47b23a7900f44e7 Author: Peng Huang Date: 2010-10-21 17:27:12 +0900 Destroy existing connection before creating a new connection, and only create the fake context once. BUG=chromium-os:7998 TEST=manual Review URL: http://codereview.appspot.com/2640041 M client/gtk2/ibusimcontext.c M src/ibusbus.c commit 8c131cfee02c9104495f11456eb40dc162458a2f Author: Yusuke Sato Date: 2010-10-21 13:27:06 +0900 Move the candidate window just above the cursor when the window and a preedit string overlap. BUG=http://code.google.com/p/ibus/issues/detail?id=1106 TEST=manually done. Review URL: http://codereview.appspot.com/2599041 M ui/gtk/candidatepanel.py M ui/gtk/panel.py commit 1c2b65dd3fde6891eff44b7b3bf3371897e3a582 Author: Yusuke Sato Date: 2010-10-21 10:35:07 +0900 Remove compiler warnings. BUG=none TEST=checked by ./autogen.sh && make Review URL: http://codereview.appspot.com/2632041 M bus/ibusimpl.c commit 9ae13a3d95c7dc775084c58339e42375622df83e Author: Yusuke Sato Date: 2010-10-20 22:21:00 +0900 Enable key snooper by default again, except Chrome/Chromium browsers, to fix application compatibility issues like 1068. This change is logically a revert of http://github.com/ibus/ibus/commit/7e715146794d5fa5324885f8d1dcebb8805bc31b The new behavior is: 1) If IBUS_DISABLE_SNOOPER environment variable is set, and the value of the variable is "" (an empty string) or "0" or "false" or "False" or "FALSE", key snooper is enabled. 2) If IBUS_DISABLE_SNOOPER environment variable is set, and the value of the variable is other than the 5 above, e.g. "1", "true", .., key snooper is disabled. 3) If IBUS_DISABLE_SNOOPER environment variable is not set, and ibus-daemon is explicitly configured with --disable-key-snooper, key snooper is disabled. 4) If IBUS_DISABLE_SNOOPER environment variable is not set, and ibus-daemon is not configured with --disable-key-snooper, the GTK_IM_MODULE, im-ibus.so, checks IBUS_NO_SNOOPER_APPS environment variable: 4-a) if IBUS_NO_SNOOPER_APPS environment variable is not set, and the application name matches ".*chrome", key snooper is disabled. 4-b) if IBUS_NO_SNOOPER_APPS environment variable, which should be comma-separated regexps, is set, and one of the regexps matches the application name, key snooper is disabled. 4-c) otherwise, key snooper is enabled. Please note that when no configure options nor no environment variables are set, key snooper is enabled on all applications except Chrome/Chromium web browsers. For example, key snooper would be enabled on xchat and gedit by default. I believe the new default behavior would satisfy both Linux desktop and Chromium OS requirements. Test: - With ibus built without --disable-key-snooper: yusukes@harapeko:~$ gedit # snoop yusukes@harapeko:~$ IBUS_DISABLE_SNOOPER= gedit # snoop yusukes@harapeko:~$ IBUS_DISABLE_SNOOPER=0 gedit # snoop yusukes@harapeko:~$ IBUS_DISABLE_SNOOPER="0" gedit # snoop yusukes@harapeko:~$ IBUS_DISABLE_SNOOPER="false" gedit # snoop yusukes@harapeko:~$ IBUS_DISABLE_SNOOPER="False" gedit # snoop yusukes@harapeko:~$ IBUS_DISABLE_SNOOPER="FALSE" gedit # snoop yusukes@harapeko:~$ IBUS_DISABLE_SNOOPER="1" gedit # no-snoop yusukes@harapeko:~$ IBUS_DISABLE_SNOOPER="true" gedit # no-snoop yusukes@harapeko:~$ IBUS_DISABLE_SNOOPER="unknownstring" gedit # no-snoop yusukes@harapeko:~$ IBUS_NO_SNOOPER_APPS=gedit gedit # no-snoop yusukes@harapeko:~$ IBUS_NO_SNOOPER_APPS='g.*dit' gedit # no-snoop yusukes@harapeko:~$ IBUS_NO_SNOOPER_APPS='foobar,g.*dit' gedit # no-snoop yusukes@harapeko:~$ IBUS_NO_SNOOPER_APPS=foobar gedit # snoop yusukes@harapeko:~$ google-chrome # no-snoop yusukes@harapeko:~$ IBUS_NO_SNOOPER_APPS=foobar google-chrome # snoop - With ibus built with --disable-key-snooper: yusukes@harapeko:~$ gedit # no-snoop yusukes@harapeko:~$ IBUS_DISABLE_SNOOPER="false" gedit # snoop yusukes@harapeko:~$ IBUS_DISABLE_SNOOPER="true" gedit # no-snoop yusukes@harapeko:~$ IBUS_DISABLE_SNOOPER="unknownstring" gedit # no-snoop yusukes@harapeko:~$ IBUS_NO_SNOOPER_APPS=foobar gedit # no-snoop, because IBUS_NO_SNOOPER_APPS is ignored when --disable-key-snooper is specified. BUG=http://code.google.com/p/ibus/issues/detail?id=1068 TEST=manually done. see above. Review URL: http://codereview.appspot.com/2568043 M client/gtk2/ibusimcontext.c M configure.ac commit 4be55968e7f98d1b042068b47be82395715bf9bc Author: Peng Huang Date: 2010-10-20 20:53:36 +0900 Always consume the hotkey, even if the hotkey associated engine already activated. BUG=6376 TEST=manual Review URL: http://codereview.appspot.com/2596042 M bus/ibusimpl.c commit 2100c1f781fec3a2157e57514d413a977042d84c Author: Yusuke Sato Date: 2010-10-19 20:30:09 +0900 Fix race condition in bus_ibus_impl_create_engine() If the bus_ibus_impl_create_engine() function is called right after an ibus_component_start() call, the function might fail getting a factory object. To avoid the problem, we should use the busy-wait logic even when ibus_component_is_running() returns true. BUG=http://crosbug.com/7244 TEST=see the bug (comment #4,7,9) Review URL: http://codereview.appspot.com/2562041 M bus/ibusimpl.c commit 65fb5ea4f009d29c688b2be6d87849209beb77fa Author: fujiwarat Date: 2010-10-13 14:05:02 +0900 Fix a build error of IBus-1.0.gir with gobject-introspection 0.9.6 M bus/dbusimpl.h M bus/main.c M bus/matchrule.c M bus/matchrule.h M bus/server.c M configure.ac M src/Makefile.am M src/ibusdbus.h M src/ibusenumtypes.c.template M src/ibuserror.c M src/ibuserror.h M src/ibusmessage.h M src/ibuspendingcall.h commit 27d8ca4935b75269ca9480806942819381f5a140 Author: Peng Huang Date: 2010-10-13 08:14:58 +0900 Fix a typo. M ibus/property.py commit 53e303cf41236186b43e4e9c9e90c52582c020c0 Author: Peng Huang Date: 2010-10-08 10:41:41 +0800 Remove unused dbus-1 package in gir includes BUG=none TEST=manual Review URL: http://codereview.appspot.com/2331041 M src/Makefile.am commit bcfa545f0789573e805f721a953c6864f1f62a1b Author: Hirotake Kobayashi Date: 2010-10-02 00:45:49 +0900 Implement stress tool for ibus. A test-stress.c sends key message each time by client. Client.h and client.c store modifier key and send key event. They check ibus-daemon and engine is alive. Review URL: http://codereview.appspot.com/2204051 Patch from Hirotake Kobayashi . M bus/Makefile.am A bus/test-client.c A bus/test-client.h A bus/test-stress.c commit 92f838c697ff9470d403537b22e15d55a403c6e0 Author: fujiwarat Date: 2010-09-30 10:58:31 +0900 Fix a build error with GTK3 gdkkeysyms.h M client/gtk2/ibusimcontext.c commit cf48af79ba606352d22238f556cb667c62b4258e Author: Peng Huang Date: 2010-09-21 06:57:10 +0800 Update gu.po from Sweta Kothari M po/gu.po commit a0694521739f91666f663e5538f06462e49eef3f Author: Yusuke Sato Date: 2010-09-17 22:26:50 +0900 Fix g_assertion failure in bus_ibus_impl_{load,save}_global_engine_name functions. Add NULL checks to the functions so they don't abort with assertion failure even if the functions are called before the ibus configuration daemon gets ready. See http://code.google.com/p/chromium-os/issues/detail?id=6689#c27 for details. M bus/ibusimpl.c commit 1396c4649255efb8c48abe39bf09ef7ffbbed7af Author: Peng Huang Date: 2010-09-10 19:04:25 +0800 Add some comments about registry BUG=none TEST=built fine Review URL: http://codereview.appspot.com/2159046 M bus/ibusimpl.c M bus/registry.c commit 37ed695bfcaa764c6fd80d4f3d29f3df9032f83f Author: Satoru Takabayashi Date: 2010-09-09 13:24:42 +0900 Add Emacs modeline for .c and .h files. /* -*- mode: C; c-basic-offset: 4; indent-tabs-mode: nil; -*- */ TEST=confirmed that the modelines for vim and emacs both worked. BUG=none Review URL: http://codereview.appspot.com/2168042 M bus/connection.c M bus/connection.h M bus/dbusimpl.c M bus/dbusimpl.h M bus/engineproxy.c M bus/engineproxy.h M bus/factoryproxy.c M bus/factoryproxy.h M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M bus/inputcontext.h M bus/main.c M bus/matchrule.c M bus/matchrule.h M bus/option.h M bus/panelproxy.c M bus/panelproxy.h M bus/registry.c M bus/registry.h M bus/server.c M bus/server.h M bus/test-matchrule.c M bus/test-registry.c M client/gtk2/ibusim.c M client/gtk2/ibusimcontext.c M client/gtk2/ibusimcontext.h M client/x11/gdk-private.c M client/x11/gdk-private.h M client/x11/locales.h M client/x11/main.c M gconf/config.c M gconf/config.h M gconf/main.c M memconf/config.h M src/ibus.h M src/ibusattribute.c M src/ibusattribute.h M src/ibusattrlist.c M src/ibusattrlist.h M src/ibusbus.c M src/ibusbus.h M src/ibuscomponent.c M src/ibuscomponent.h M src/ibusconfig.c M src/ibusconfig.h M src/ibusconfigprivate.h M src/ibusconfigservice.c M src/ibusconfigservice.h M src/ibusconnection.c M src/ibusconnection.h M src/ibusdbus.h M src/ibusdebug.h M src/ibusengine.c M src/ibusengine.h M src/ibusenginedesc.c M src/ibusenginedesc.h M src/ibuserror.c M src/ibuserror.h M src/ibusfactory.c M src/ibusfactory.h M src/ibushotkey.c M src/ibushotkey.h M src/ibusinputcontext.c M src/ibusinputcontext.h M src/ibusinternal.c M src/ibusinternal.h M src/ibuskeymap.c M src/ibuskeymap.h M src/ibuskeynames.c M src/ibuskeysyms.h M src/ibuslookuptable.c M src/ibuslookuptable.h M src/ibusmainloop.c M src/ibusmainloop.h M src/ibusmessage.c M src/ibusmessage.h M src/ibusobject.c M src/ibusobject.h M src/ibusobservedpath.c M src/ibusobservedpath.h M src/ibuspanelservice.c M src/ibuspanelservice.h M src/ibuspendingcall.c M src/ibuspendingcall.h M src/ibusproperty.c M src/ibusproperty.h M src/ibusproplist.c M src/ibusproplist.h M src/ibusproxy.c M src/ibusproxy.h M src/ibusserializable.c M src/ibusserializable.h M src/ibusserver.c M src/ibusserver.h M src/ibusservice.c M src/ibusservice.h M src/ibusshare.c M src/ibusshare.h M src/ibustext.c M src/ibustext.h M src/ibustypes.h M src/ibusxml.c M src/ibusxml.h M src/test-attribute.c M src/test-bus.c M src/test-engine.c M src/test-global-engine.c M src/test-keymap.c M src/test-keynames.c M src/test-lookuptable.c M src/test-proxy.c M src/test-server.c M src/test-text.c commit a751fd3ee3d0273a70d09a616d62b1dbbf3e4cbb Author: Satoru Takabayashi Date: 2010-09-09 11:05:55 +0900 Move the log handler code from bus/main.cc to src/ibusshare.cc. The log handler is useful for IBus client programs. For instance, the log handler was used inside the chromium browser for debugging IBus startup issue: http://code.google.com/p/chromium-os/issues/detail?id=6375#c29 (chrome:11824): IBUS-DEBUG: 00:00:46.929430: The socket file is now created (monitoring done). BUG=none TEST=manually ran ibus-daemon with and without -v Review URL: http://codereview.appspot.com/2122047 M bus/main.c M src/ibusshare.c M src/ibusshare.h commit 7c5f46e3e8580d080aac0a25d8e97a0fc7fc70a7 Author: Satoru Takabayashi Date: 2010-09-08 15:58:31 +0900 Add codereview.settings. This is for us to use codereview.appspot.com for code reviews. Instructions to use codereview.appspot.com: 1. Get depot_tools and add PATH to the directory http://dev.chromium.org/developers/how-tos/depottools 2. In your local IBus git repository, % git checkout master % git checkout -b somefix make changes % git cl upload do code reviews at codereview.appspot.com once it's done, run "git cl push" if you can commit. otherwise, ask committers to commit on behalf. Review URL: http://codereview.appspot.com/2166043 A codereview.settings commit f0f50b5b003adfc062fef5781a9646e9eea67d78 Author: Peng Huang Date: 2010-09-07 08:35:03 +0800 Add time info in log message from satorux@chromium.org M bus/main.c commit 888189eba783ac014e7c367004a70dad6f7b8ac0 Author: Peng Huang Date: 2010-09-06 17:17:24 +0800 Fix memory leak in ibus_input_context_process_key_event by Fujiwarat M src/ibusinputcontext.c commit 85565b7a146e5ccbd484273b647b6195b6c08b03 Author: fujiwarat Date: 2010-09-02 12:58:42 +0900 Fix segv in bus_engine_proxy_process_key_event_reply_cb M bus/engineproxy.c commit 0b8d9594d5fb3afa6e988e321d5d124e5da1eee2 Author: Peng Huang Date: 2010-09-06 16:16:51 +0800 Set CFLAGS to "-Wall -Werror" in autogen.sh M autogen.sh commit c8794994fde7f52dc29a7b9ebea926e66cf093da Author: Peng Huang Date: 2010-08-12 15:22:00 +0800 Fix property issue. M bus/inputcontext.c commit 9bb5c58da874dcd3293476726201a54498fc92e1 Author: Peng Huang Date: 2010-08-06 14:02:25 +0800 Update fr.po M po/fr.po commit 733a0b12388aa4cc4092a4f9b4f2cce9e0fd7383 Author: Peng Huang Date: 2010-08-05 17:13:56 +0800 Fix a build warning M bus/ibusimpl.c commit 19d03011e00db27753aa874c1404a858605b4a87 Author: Peng Huang Date: 2010-08-03 16:59:32 +0800 Release 1.3.7 M configure.ac commit b0a71e50d6e343c8a8ad3385a49087ba695ebc78 Author: Peng Huang Date: 2010-08-03 14:43:42 +0800 Update ko.po M po/ko.po commit 14aa3cc0d4fd12a9aa0ee4db3dfc085b77672811 Author: Peng Huang Date: 2010-08-03 10:04:19 +0800 Update po files. M po/bn_IN.po M po/ml.po commit 8706da8a65274da26ac3b593501ff3d44e81087a Author: James Su Date: 2010-06-28 19:39:31 -0700 Make sure that we won't wrongly match a hotkey after losing and getting focus. BUG=http://crosbug.com/3892 TEST=manually Review URL: http://codereview.chromium.org/2884006 M bus/inputcontext.c commit b2fcd7eeb13676b0cbffeca37bfcfb142bcac3f6 Author: satorux Date: 2010-05-26 18:03:29 +0900 When the previous engine name is unknown, switch to the next engine in menu. Before the change, hitting the "previous-engine" key does nothing if the previous engine name is unknown. The behavior is not good for users as they think the hot key is not working. TEST=manually on the netbook BUG=3579 Review URL: http://codereview.chromium.org/2255002 M bus/ibusimpl.c commit e2793f52bf3da7a22321f053f3ba8154026fd6fa Author: James Su Date: 2010-05-11 13:41:59 -0700 Support engine specific hotkey. BUG=http://crosbug.com/2543 TEST=none With this CL, each engine can specify one or more special activation hotkeys. This CL doesn't support customizing global hotkeys per engine. I'd still prefer to customize the global hotkeys based on current locale rather than input method engine. Add hotkeys property to IBusEngineDesc, so that each engine can specify their own special hotkeys. This is useful for input methods that have dedicated hotkeys, such as Japanese input methods, which has a dedicated hotkey key: Kana. Review URL: http://codereview.chromium.org/1702015 M bus/ibusimpl.c M bus/ibusimpl.h M ibus/component.py M ibus/enginedesc.py M src/ibusenginedesc.c M src/ibusenginedesc.h M src/ibushotkey.c M src/ibushotkey.h commit 1350806a4d1a23036ea7e4dac9e0169b77127cb1 Author: Peng Huang Date: 2010-07-30 23:32:20 +0800 Update po files. M po/hi.po M po/ja.po commit beedeb4e19409555b4bc2cff98fb0be1976a04f6 Author: Peng Huang Date: 2010-07-30 07:12:15 +0800 Fake IC does not grab focus, if other real IC has focus. M bus/inputcontext.c commit 353d36626f81389d0e70fea3ed58a65d367e6115 Author: Peng Huang Date: 2010-07-27 15:57:05 +0800 Keep input window for fake IC M client/gtk2/ibusimcontext.c commit 519e649849d7ce1f1550f5a653238080f3b0f67e Author: Peng Huang Date: 2010-07-23 16:11:22 +0800 Support switching keyboard by hotkey without input focus Add fake input context in im module. The fake input context will hold the focus if no other input context has focus. This change for fixing input method switch issue if no focus input context. BUG=http://crosbug.com/4381 Review URL: http://codereview.chromium.org/3052003 M bus/inputcontext.c M bus/inputcontext.h M client/gtk2/ibusimcontext.c commit 3609568f318b0d6ae831d0d4eb2a24398f81531f Author: Peng Huang Date: 2010-07-23 11:41:44 +0800 Add memcomf/main.cc A memconf/main.cc commit d400b92229e7c03d7a893bc8ed33382c933e32d3 Author: Peng Huang Date: 2010-07-23 15:25:45 +0800 Fix a problem in build script of memconf M Makefile.am M memconf/config.cc commit 810037e12a5b00712e5d01c576deca4a36c18527 Author: Yusuke Sato Date: 2010-03-30 13:45:19 +0900 Reimplement ibus-gconf so it does not depend on GConf-2 database. (Please review the README.chromium first.) BUG=crosbug.com/1638 TEST=run autotest/files/config/site_tests/desktopui_IBusTest Review URL: http://codereview.chromium.org/1539001 M Makefile.am M configure.ac A memconf/Makefile.am A memconf/config.cc A memconf/config.h A memconf/memconf.xml.in.in commit 6372ea214bc0c3d60f7059727b4848b809257f7e Author: Peng Huang Date: 2010-07-30 17:46:51 +0800 Update po files. M po/te.po commit 565a01828be2837c8de1d2b16c8a7232355bb734 Author: Peng Huang Date: 2010-07-30 17:34:41 +0800 Update po files M po/or.po M po/ta.po commit bd86020a1e5f545db666c24fda837fff7361f704 Author: Peng Huang Date: 2010-07-30 11:55:03 +0800 Update po files. M po/ja.po M po/mr.po M po/pt_BR.po M po/ru.po M po/zh_CN.po commit 81562759e8ad57e6d2ac71188369d0e991514428 Author: Peng Huang Date: 2010-07-30 07:15:30 +0800 Update po files. M po/de.po M po/it.po commit 8c764551ff81b084d0595922f840544a374c5ca2 Author: Peng Huang Date: 2010-07-29 21:25:52 +0800 Update po files. M po/gu.po M po/kn.po commit 652cd0ca10ce9a203ab578e24847aa52f4b6c4b8 Author: Peng Huang Date: 2010-07-27 11:23:30 +0800 Add pt_BR.po from Glaucia Freitas M AUTHORS M po/LINGUAS A po/pt_BR.po commit d9923c07be7248f1fc7d8458c9025df8cf8e282d Author: Peng Huang Date: 2010-07-15 15:04:25 +0800 Fix a memory leak in IBusConfigService. M src/ibusconfigservice.c commit eca8735df7909cffba4184eef8bafdb0d3a37142 Author: Peng Huang Date: 2010-07-13 13:57:40 +0800 Add a new ibus-daemon option to set cache mode. --cache=[auto/refresh/none] auto: Loads registry from cache. If the cache does not exist or the cache is outdated, ibus-daemon will recreate the cache. refresh: Does not load the cache, force load components information from /usr/share/ibus/components/*.xml and write registry to cache file. none: Always loads components from /usr/share/ibus/components/*.xml, does not read or write cache. M bus/main.c M bus/option.h M bus/registry.c commit 4a7dff9b49d7305312c0167027b281d3d533765f Author: Peng Huang Date: 2010-07-08 18:01:38 +0800 Use dbus.Interface. M ibus/bus.py M ibus/config.py M ibus/inputcontext.py commit 674bc53c30c8ac40e021da660f2af533ab015587 Author: Daiki Ueno Date: 2010-06-30 12:05:32 +0900 Fix "Show language panel: Embedded in menu" behavior. Signed-off-by: Daiki Ueno M ui/gtk/languagebar.py M ui/gtk/menu.py commit f7ad6dfbff87a138d4857d7cfc9520b8541456e2 Author: Peng Huang Date: 2010-07-05 13:44:22 +0800 Release 1.3.6 M configure.ac commit 22c3c5f1077130f5da2cb17e774755ba90fdf4d1 Author: Peng Huang Date: 2010-07-05 13:42:38 +0800 Set interface for config and inputcontext proxy M src/ibusconfig.c M src/ibusinputcontext.c commit 6c5945fb67f098be70e1a28eb5accc2b580b2427 Author: Peng Huang Date: 2010-07-05 13:42:27 +0800 Update gtk-doc M docs/reference/ibus/ibus-sections.txt commit 179e1642186dcddf877871f66521978c3a08005c Author: Peng Huang Date: 2010-07-05 13:42:10 +0800 Update libibus2.symbols M debian/libibus2.symbols commit c9ab368469d2fbf54f723c74295d2a6abefa3f35 Author: Peng Huang Date: 2010-07-05 13:10:00 +0800 Remove some patches. M debian/patches/00list D debian/patches/01_ubuntu_desktop.dpatch commit 887aa04857544e98b1f7a0b380349483e6a60733 Author: Peng Huang Date: 2010-07-01 11:52:30 +0800 Update es.po from daniel cabrera M po/es.po commit e54703b537d3b94b3c2a7c5e77b6837da87ef303 Author: Peng Huang Date: 2010-06-28 13:16:02 +0800 Update zh_TW.po from Tseng, Cheng-Chia M po/zh_TW.po commit 817399605bdeeb83fa4729018b2b17ad7870576d Author: Peng Huang Date: 2010-06-24 11:11:51 +0800 Fix next_engine & prev_engine settings problems. M bus/ibusimpl.c M setup/main.py commit 2e19fbadd285ae2d81d3ba5612da4d7357bb5139 Author: Peng Huang Date: 2010-06-23 13:35:00 +0800 Update po files M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit 8b6cc2e285655471cc340e15bc3871a3043d59a6 Author: Peng Huang Date: 2010-06-23 13:32:04 +0800 Update desktop files. M bus/ibus.desktop.in M setup/ibus-setup.desktop.in commit 06114fef552bc5ec3f94704580d59e926d04a43d Author: Peng Huang Date: 2010-06-23 10:35:32 +0800 fill right value of GdkEventKey::is_modifier M client/gtk2/ibusimcontext.c commit a25970bc951768c44271b7e6c2b54ef22c49d76c Author: Peng Huang Date: 2010-06-20 08:02:58 +0800 workaround for applications do not set client window and refine code. M client/gtk2/ibusimcontext.c commit f16baaffebe6af29f23ef537c071150acf2397bc Author: Peng Huang Date: 2010-06-18 09:14:18 +0800 Check gtk2 too if configure with --enable-xim M configure.ac commit 9bc7166f81cf77b369f9610166839c0ae1aa953b Author: Peng Huang Date: 2010-06-17 20:19:23 +0800 Use IBUS_TYPE_OBJECT_PATH for return value of CurrentInputContext M bus/ibusimpl.c M ibus/interface/iibus.py M src/ibusbus.c commit cad8e70c3928eec31837215696dfa40ec3475734 Author: Peng Huang Date: 2010-06-15 17:02:31 +0800 Preload all values. M gconf/config.c commit 92949de6497247add592a4a790bddda439791fc3 Author: Peng Huang Date: 2010-06-15 16:21:29 +0800 Fix conflict between --restart and --replace M bus/main.c commit a842158b3dc01855cb1ad194dd8b75f744f7d037 Author: Peng Huang Date: 2010-06-15 16:18:10 +0800 Set release = 0 M configure.ac commit c7608cb5dfa683328d8f0ce9c2e16283464e36b0 Author: Peng Huang Date: 2010-06-15 00:23:44 +0800 Update es.po from daniel cabrera M po/es.po commit 9d99fa7db69e81e05164d55bf20fbf265ea1c03c Author: Peng Huang Date: 2010-06-14 22:47:21 +0800 Add --restart option by satorux@chromium.org M bus/main.c M src/ibuscomponent.c M src/ibuscomponent.h commit 2dfd255535c8367d210409b3a16ddbba1dbb166a Author: Peng Huang Date: 2010-06-12 09:00:00 +0800 read env IBUS_SNOOPER_APPS M client/gtk2/ibusimcontext.c commit 7e715146794d5fa5324885f8d1dcebb8805bc31b Author: Peng Huang Date: 2010-06-12 08:53:43 +0800 Disable snooper by default. M client/gtk2/ibusimcontext.c M configure.ac commit 79438c1322520b3a468bba296512972c16d60f7b Author: Peng Huang Date: 2010-06-12 08:10:25 +0800 prepare to release 1.3.5 M configure.ac commit 3234f71aa8c00fcbb3eaa43b06032784ed480ac6 Author: Peng Huang Date: 2010-06-12 08:06:22 +0800 Update ibus.spec.in M ibus.spec.in commit 49a848a70cc1e0393438fe7cfb3b118d1de24476 Author: Peng Huang Date: 2010-06-12 07:50:22 +0800 Use regex for no snooper applications, and disable snooper in chrome M client/gtk2/ibusimcontext.c M configure.ac commit e3b576d1bd8255eaef153e69996665a7eef75b55 Author: Peng Huang Date: 2010-06-10 14:43:44 +0800 Update document of ibus_bus_new M src/ibusbus.h commit 07e9d903c1856d8379da29c7966c040b8aaf34a0 Author: Peng Huang Date: 2010-06-10 07:09:02 +0800 Check connection state before call ibus_connection_call M src/ibusproxy.c commit a30e416bfac3915858626a122c0b1688f0ea5df8 Author: Peng Huang Date: 2010-06-09 07:16:33 +0800 Emit FORWARD_KEY_EVENT signal correctly M client/x11/main.c M src/ibusinputcontext.c commit 46a8b5a1bc9f2024beab573ef141bd2bc9a6565c Author: Peng Huang Date: 2010-06-09 00:09:51 +0800 Update debian build scripts M debian/ibus.install commit d34559042ddd44a64dc415426ea9ef581cf50469 Author: Peng Huang Date: 2010-06-08 22:16:53 +0800 Refine coding style M client/gtk2/ibusim.c M client/gtk2/ibusimcontext.c commit 7606b92e05e3216d09bc4b96c2efcbc5560134cb Author: Peng Huang Date: 2010-06-08 21:43:55 +0800 Fix problem of create GdkEventKey from keyval keycode and state M client/gtk2/ibusimcontext.c commit d8a4d1d348184d6e7c96fcb46ab431d9a020c61f Author: Peng Huang Date: 2010-06-08 21:16:15 +0800 Ignore handled key event in xim server M client/x11/main.c commit ca20ca904fb0264f9b8ac7da97ca4e782ed31ab1 Author: Peng Huang Date: 2010-06-08 20:55:27 +0800 Fix keycode in xim server M client/x11/main.c commit 92f8191f2b0f4186131ce13c6b42ff2ec68a9412 Author: Peng Huang Date: 2010-06-08 16:17:15 +0800 Unify compare expression in configure.ac M configure.ac commit b921d7b7f7299356ae0984ad6d526a2cb0339f6d Author: Peng Huang Date: 2010-06-08 10:58:53 +0800 Refine log message of configure. M configure.ac commit 5f4506ee2f61f66cce877ac44316c11b8a4d6326 Author: Peng Huang Date: 2010-06-07 15:10:06 +0800 Only test global-engine, when global-engine is enabled. M src/test-global-engine.c commit d1238aedeb8c2f5a55bc118691862ff8a7044fa3 Author: Peng Huang Date: 2010-06-07 15:08:55 +0800 Update debian build scripts M configure.ac M debian/control M debian/libibus-dev.install M debian/libibus2.install commit bc341df136da59524e97693078019ba7100f779d Author: Peng Huang Date: 2010-06-07 08:49:56 +0800 Update vala demo engine M bindings/vala/test/Makefile M bindings/vala/test/test.vala commit 35e3104bc4f67fe327e6e9e6c3454163eb6821e7 Author: Peng Huang Date: 2010-06-07 07:53:57 +0800 Add Makefile A bindings/vala/test/Makefile commit c4728ba8399d25812d53ff7ca176253758cfcc4f Author: Peng Huang Date: 2010-06-06 20:25:11 +0800 Refine demo engine M bindings/vala/test/test.vala commit 48c4e43560e0a7990922ca4d610bff49095bd109 Author: Peng Huang Date: 2010-06-06 19:37:38 +0800 Regenerate vapi from header files. M bindings/vala/ibus-1.0.vapi M bindings/vala/ibus-1.0/ibus-1.0.files M bindings/vala/ibus-1.0/ibus-1.0.gi commit d3f227722f621feced89c453fdb701188469f1fc Author: Peng Huang Date: 2010-06-06 19:37:28 +0800 Add a demo vala engine A bindings/vala/test/test.vala commit 4b976f8b048dfb10fb86368d59c09bb84f60190d Author: Peng Huang Date: 2010-06-06 18:29:00 +0800 Fix ibus_service_get_connections in vala binding M bindings/vala/ibus-1.0.vapi M bindings/vala/ibus-1.0/ibus-1.0.metadata commit a8a6709da393b4d61203f0811be35cc8455d48a5 Author: Peng Huang Date: 2010-06-06 16:31:25 +0800 Fix coding style M src/ibusinputcontext.h commit 0ef49cb255babb6845db6120fd41332d8c02b95a Author: Peng Huang Date: 2010-06-06 16:26:38 +0800 Update vala files M bindings/vala/ibus-1.0.vapi M bindings/vala/ibus-1.0/ibus-1.0.metadata commit 2743296f5a52f723334a8c09b0812944526563ee Author: Peng Huang Date: 2010-06-06 16:02:38 +0800 Add some annotation for g-ir-scanner M src/ibusattrlist.h M src/ibusbus.h M src/ibuscomponent.h M src/ibuslookuptable.h M src/ibusproplist.h M src/ibusproxy.h M src/ibusservice.h commit e84375407a6675890113cffec81837b8c289dc60 Author: Peng Huang Date: 2010-06-06 14:42:29 +0800 Fix problem in ibus_bus_get_name_owner M src/ibusbus.c commit 42b5828d2aa0057b6a6979e8f93148a25d00be51 Author: Peng Huang Date: 2010-06-06 13:44:07 +0800 Add --disable-vala in configure M Makefile.am M bindings/Makefile.am M configure.ac D ibus.sh commit 230c5b4439d765acc3a4e1064ff66e6800af8b81 Author: Peng Huang Date: 2010-06-06 13:35:51 +0800 Add ibus-1.0-custom.vala M bindings/vala/Makefile.am M bindings/vala/ibus-1.0/ibus-1.0-custom.vala commit c4c565dc706a0c262beba447095950485a4d6a55 Author: Peng Huang Date: 2010-06-06 13:24:27 +0800 Add vala in rpm spec file M Makefile.am M ibus.spec.in commit 85231d5f85f298bfbb2805f6f1f851e82fb75a66 Author: Peng Huang Date: 2010-06-06 12:30:06 +0800 Add vala support M bindings/Makefile.am A bindings/vala/Makefile.am A bindings/vala/ibus-1.0.vapi A bindings/vala/ibus-1.0/ibus-1.0-custom.vala A bindings/vala/ibus-1.0/ibus-1.0.excludes A bindings/vala/ibus-1.0/ibus-1.0.files A bindings/vala/ibus-1.0/ibus-1.0.gi A bindings/vala/ibus-1.0/ibus-1.0.metadata A bindings/vala/ibus-1.0/ibus-1.0.namespace M configure.ac commit 1b06b1f9b1ae304d82a5658a6e2dfb92b51da481 Author: Peng Huang Date: 2010-06-06 11:14:42 +0800 Remove python in bindings M bindings/Makefile.am D bindings/python/Makefile.am D bindings/python/common.h D bindings/python/gendefs.sh D bindings/python/ibus-types.defs D bindings/python/ibus-virtual-methods.defs D bindings/python/ibus.defs D bindings/python/ibus.override D bindings/python/ibusmodule.c commit ea2e5113453f6cef5d93ff3b7e533d62fbc3c115 Author: Peng Huang Date: 2010-06-05 21:44:54 +0800 Update rpm spec file. M ibus.spec.in commit cbe5540dd8c8a1b25522c1592d076ed3ffe0bfa4 Author: Peng Huang Date: 2010-06-05 21:28:04 +0800 Support gtk3 M Makefile.am M client/Makefile.am M client/gtk2/Makefile.am A client/gtk3/Makefile.am A client/gtk3/ibusim.c A client/gtk3/ibusimcontext.c A client/gtk3/ibusimcontext.h M configure.ac M debian/control M ibus.spec.in M util/Makefile.am commit e9bf772df8cdb3c06520dcc0e0dccee067e3a776 Author: Peng Huang Date: 2010-06-05 20:44:32 +0800 Repace some deprecated macros to fix build errors with gtk3 M client/gtk2/ibusimcontext.h commit 190074f40707c0a2aa8ba7156217121a3d5023bd Merge: 2d6eeb67 683f8d03 Author: Peng Huang Date: 2010-06-05 09:41:30 +0800 Merge branch 'async_process_key_event' commit 2d6eeb67267c65a9bc7c537d80a6970121af714a Merge: 3f640787 9dabf25c Author: Peng Huang Date: 2010-06-05 09:41:10 +0800 Merge branch 'singleton_bus' commit 683f8d03ecbf6de5a031fdec3bc89999db857faa Author: Peng Huang Date: 2010-06-04 19:40:59 +0800 Set keycode in GdkEvent correctly. M client/gtk2/ibusimcontext.c commit 3f6407877244f390fc3f4c3da4c2d279983795c4 Author: Julien Humbert Date: 2010-06-04 12:07:42 +0200 Minor changes to the previous commited translation M po/fr.po commit 637fc2473c80f44cf6bbb760e90fae2370c4c660 Author: Julien Humbert Date: 2010-06-04 12:01:15 +0200 Update French tranlation M po/fr.po commit 72b07456b95198201fae43c222a8aaecad453ab9 Merge: 42b31b80 978325de Author: Julien Humbert Date: 2010-06-04 11:26:07 +0200 Merge branch 'master' of git://github.com/phuang/ibus commit 554e35e6dcbee874fbcaebd81b7558ca4ff48d5d Author: Peng Huang Date: 2010-06-04 15:04:12 +0800 Make ibus_input_context_process_key_event in async mode M src/ibusinputcontext.c commit 978325de556641717f4d75d3f58053d9747a977d Author: Peng Huang Date: 2010-06-03 23:16:46 +0800 Remove unused define in ibusxml.c M src/ibusxml.c commit 9dabf25c5a9265523b96d517a4d39753f679898c Author: Peng Huang Date: 2010-06-03 18:12:26 +0800 Share one IBusBus instance in whole process. M src/ibusbus.c commit 0ac0c0a91d5a50f8286b9aff662a46e51cc8ae6e Author: Peng Huang Date: 2010-06-03 18:13:14 +0800 Use g_assert to check if connection is alive M src/ibusconnection.c commit 9d9b4e240a34b31daea7a73f4b3ec5d75920f68c Author: Peng Huang Date: 2010-06-03 23:12:13 +0800 Fix function name typo M src/ibusxml.c commit 54fa37f9b1497a380ce10c140c1c992b3e6c8786 Author: Peng Huang Date: 2010-06-03 21:18:50 +0800 Add all classes in ibus.py M src/python/ibus.py commit adda25656efac6357ff1f1f3d697fec5cf26b21b Author: Peng Huang Date: 2010-06-03 17:52:32 +0800 Fix document of IBusConfig M src/ibusconfig.c commit efad0c3e731da7a3ca46a68d04ffb60614752fa5 Author: Peng Huang Date: 2010-06-03 08:43:08 +0800 Add a small test code for gir A src/python/ibus.py A src/python/test.py commit 5d7869453a1c2305291bedcb2edf5e567bbcb5b8 Author: Peng Huang Date: 2010-06-02 21:19:48 +0800 Add --version -V option for ibus-daemon M bus/main.c commit ad3e270a3e1f3d56b824fad4ab4b4f40a8979649 Author: Peng Huang Date: 2010-06-02 14:17:57 +0800 Fix build warnings M src/ibusproxy.h commit dab9563a6fb8a70b916fe565c97f73990eea86c4 Author: Peng Huang Date: 2010-06-02 14:14:00 +0800 Remove _DummyStruct M src/ibusdbus.h commit 28b8525b00107c04a52254e26082a43d713a5920 Author: Peng Huang Date: 2010-06-02 10:37:59 +0800 Update zh_TW.po from Tseng, Cheng-Chia M po/zh_TW.po commit ef3bc4281040a29be58b58e697362a8c05d575be Author: Peng Huang Date: 2010-06-01 21:40:47 +0800 Fix coding style. M src/ibusenginedesc.h commit 2f7901c539ce97b718b002f39c8398179225026b Author: Peng Huang Date: 2010-06-01 21:36:08 +0800 Remove dbus in pc file, and fix spec file. M configure.ac M ibus-1.0.pc.in M ibus.spec.in commit 45834ea4cb7f2900c847e97ff86391bc4a50780f Author: Peng Huang Date: 2010-06-01 20:40:25 +0800 Require gobject-introspection 0.6.9 M configure.ac commit 741867f30c3e4586f17816176c696f2024872cc2 Author: Peng Huang Date: 2010-06-01 19:47:19 +0800 Fix build errors M bus/dbusimpl.c M bus/engineproxy.c M bus/factoryproxy.c M bus/ibusimpl.c M bus/inputcontext.c M bus/matchrule.c M bus/panelproxy.c M bus/test-matchrule.c M gconf/config.c commit 23825e6f50f41f9e0eeb40f067153bdebe57b7fa Author: Peng Huang Date: 2010-06-01 19:17:46 +0800 Add annotation for some return types M src/ibusbus.h M src/ibuscomponent.h M src/ibusobservedpath.h M src/ibusservice.h commit d91324c034e83e17715cfa5aa9f8434aacd05a23 Author: Peng Huang Date: 2010-06-01 18:37:09 +0800 Add gobject-introspection support M configure.ac M src/Makefile.am M src/ibusattrlist.c M src/ibusbus.c M src/ibusbus.h M src/ibuscomponent.c M src/ibusconfig.c M src/ibusconfigservice.c M src/ibusconnection.c M src/ibusconnection.h A src/ibusdbus.h M src/ibusengine.c M src/ibusengine.h M src/ibuserror.c M src/ibuserror.h M src/ibusfactory.c M src/ibusfactory.h M src/ibushotkey.c M src/ibusinputcontext.c M src/ibusinternal.c M src/ibusinternal.h M src/ibuskeymap.c M src/ibuskeymap.h M src/ibuslookuptable.c M src/ibusmainloop.h M src/ibusmessage.c M src/ibusmessage.h M src/ibuspanelservice.c M src/ibuspendingcall.c M src/ibuspendingcall.h M src/ibusproplist.c M src/ibusproxy.c M src/ibusproxy.h M src/ibusserializable.c M src/ibusserver.c M src/ibusserver.h M src/ibusservice.c M src/ibusservice.h M src/test-lookuptable.c commit b899ae494cc354c2748762b9de31abfebc41e873 Author: Peng Huang Date: 2010-06-01 16:39:39 +0800 refine coding style M src/ibusproxy.h commit 7842b20b3e268227826dd4249f6c1e73a5d71248 Author: Peng Huang Date: 2010-06-01 20:50:19 +0800 Fix problem in ibus_engine_update_lookup_table_fast. M src/ibusengine.c commit 42b31b806fc86f04a4810c5819ad2ec7ca75e1da Author: Julien Humbert Date: 2010-06-01 12:38:23 +0200 Updated French translation M po/fr.po commit a7b42886ca6a8dba90fd9387bca585f8e5388aaf Author: Peng Huang Date: 2010-06-01 14:28:18 +0800 Update po files. M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit 6cd06247077cdec320f32e1891cbfe6c4156079a Author: James Su Date: 2010-05-26 20:34:16 -0700 Add a test for global engine related functions in ibusbus.c. M src/Makefile.am A src/test-global-engine.c commit 389f6704d3950174fec78c1f22304edd9de11fc6 Author: James Su Date: 2010-05-26 20:06:53 -0700 Add "global-engine-changed" signal. M src/ibusbus.c commit b606f91b1f455ce7bae8d4e4904dd9ce922a9fa1 Author: James Su Date: 2010-05-26 19:17:03 -0700 Fix global engine related functions. M src/ibusbus.c commit c5705b4c037d7fc14bd38ded069a8437f1256250 Author: James Su Date: 2010-05-21 14:56:36 -0700 Implement the ability to manipulate the global engine. lib parth. M src/ibusbus.c M src/ibusbus.h M src/test-bus.c commit 9aacf3588d39400ab75a481ff9ada5bb868fc460 Author: James Su Date: 2010-05-21 14:53:36 -0700 Implement the ability to manipulate the global engine, daemon part. M bus/ibusimpl.c commit d2e8791f78227058e211c6b7db338ec521cb6c22 Author: James Su Date: 2010-05-03 21:34:57 -0700 Part 1 of XKB support. This change includes: 1. Adds hotkey for switching to previous engine (renaming the old unused "prev_engine" to previous_engine). 2. Renames next_engine hotkey to next_engine_in_menu. 3. Saves/loads current and previous global engine names to/from config. 4. Adds enable_by_default config to enable the input method by default. 5. Moves hotkey filter function from inputcontext.c into ibusimpl.c. M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M data/ibus.schemas.in commit 99f9e06bb995b406ad3d4498971bec2c58878f16 Author: Peng Huang Date: 2010-06-01 11:37:18 +0800 Fix some exceptions in setup ui M setup/keyboardshortcut.py commit 6c32af7c6f151aad64f339abdecfce10498ea701 Author: Peng Huang Date: 2010-05-31 16:42:36 +0800 Fix problem in ibus_lookup_table_set_label M src/ibuslookuptable.c commit 5da6aa482b5429da2162921a3893b14bcebf7b22 Author: Peng Huang Date: 2010-05-29 07:34:06 +0800 Update po files. M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit 61f0c9611c37a189681f2e1b3a8f896e83a52009 Author: Peng Huang Date: 2010-05-29 06:44:16 +0800 Release 1.3.4 M configure.ac commit 7af503aaba624c26aff791943490f2aee410cd99 Author: Peng Huang Date: 2010-05-28 16:38:01 +0800 Add include M bus/ibusimpl.c commit 9372a7c64bea26f19ae6bcda9395aa86da60071b Author: Peng Huang Date: 2010-05-28 16:37:50 +0800 Remove changelog D debian/changelog commit aec6c3a1fb241810e0dc9e58d7da34299eb0f200 Author: Peng Huang Date: 2010-05-28 10:18:24 +0800 Add ppa target to generate debian source package. M Makefile.am M configure.ac A debian/README.source M debian/changelog A debian/changelog.in M debian/clean M debian/control D debian/libibus1.symbols R100 debian/libibus1.install debian/libibus2.install A debian/libibus2.symbols A debian/patches/00list A debian/patches/01_ubuntu_desktop.dpatch M debian/rules A debian/source/format M debian/xinput/ibus commit dc1e9d38ce4612ee7fb05a39f25ae5dfb499dd4a Author: Peng Huang Date: 2010-05-27 06:47:34 +0800 Remove some unused variables. M src/ibusbus.c M src/ibusconnection.c commit 7912b45a0526f78467098b36022adfb203d587b0 Author: Peng Huang Date: 2010-05-26 12:20:29 +0800 Fix restart problem when the image file is removed. M bus/ibusimpl.c commit e502b41e2fedd11bccd739ed9d7257d88073904e Author: James Su Date: 2010-05-26 15:38:37 -0700 Change ibus_bus_hello() to return const gchar*. M src/ibusbus.c M src/ibusbus.h commit c91d8429a01725dd881abe7014fbf5c1fdba07d6 Author: James Su Date: 2010-05-26 14:56:15 -0700 Fix memory issues in ibusconnection.* and ibusproxy.c M src/ibusconnection.c M src/ibusconnection.h M src/ibusproxy.c commit 1c50507a2f0a0bfcc74d99dec3706605d211119d Author: James Su Date: 2010-05-26 12:41:43 -0700 Fix memory issues in ibusbus.c M src/ibusbus.c M src/ibusbus.h M src/test-bus.c commit 0ba0b49831c38772884cdad787a596c4ddc23a23 Author: James Su Date: 2010-05-21 14:44:41 -0700 Fix typos in ibus_bus_current_input_context(). M src/ibusbus.c M src/test-bus.c commit 3c491bce532059391429c17c46a96f723a0a1270 Author: fujiwarat Date: 2010-05-17 18:17:57 +0900 Fix not to emit property-activate when state is not changed. M ui/gtk/menu.py M ui/gtk/toolitem.py commit 5326f3c05c4ef69cbf88ca8e3d91f9eb3efc1f96 Author: Peng Huang Date: 2010-05-15 20:05:51 +0800 Update pl.po from Piotr Drąg M po/pl.po commit 9026db8da82df0229cd3c7f9055bccad338f6a91 Author: Peng Huang Date: 2010-05-15 20:02:19 +0800 Refine some build options. M Makefile.am M client/Makefile.am M configure.ac M gconf/Makefile.am M ibus/Makefile.am M ibus/interface/Makefile.am M setup/Makefile.am M ui/Makefile.am M ui/gtk/Makefile.am M util/Makefile.am commit c75f40f35168f752ba5380e229d889bfb7bf4074 Author: Peng Huang Date: 2010-05-15 19:48:37 +0800 Add --disable-clients to disable gtk x11 clients M client/Makefile.am M configure.ac commit 1477bcd22f7a9896348d6f67a4f98af0e829ed66 Author: Peng Huang Date: 2010-05-14 20:52:53 +0800 Add ibus_lookup_table_set_label. M src/ibuslookuptable.c M src/ibuslookuptable.h commit 86d4cf8b4e1d8485952172ebcda455d64351f575 Author: Peng Huang Date: 2010-05-10 09:09:42 +0800 Make version in ibus-docs configurable. M configure.ac R098 docs/reference/ibus/ibus-docs.sgml docs/reference/ibus/ibus-docs.sgml.in commit facc441f48a9f6ed385578106daa1eef7e1cd8c5 Author: Peng Huang Date: 2010-05-07 22:13:46 +0800 Update kn.po from Shankar Prasad Venkateshbhat M po/kn.po commit a847b223c4b220ae36ba3f565df3de5c93857dcc Author: Peng Huang Date: 2010-05-07 15:35:36 +0800 Update zh_TW.po from Tseng, Cheng-Chia M po/zh_TW.po commit 19a8c3ae2e11005bb20c1dd98e4ffe5b02d5c06d Author: Peng Huang Date: 2010-05-06 16:44:49 +0800 Update hi.po from Rajesh Ranjan M po/hi.po commit 4be5b98dab33b351bc22d91e3f6cfa5e1c5787fd Author: Peng Huang Date: 2010-05-06 16:35:04 +0800 Update ja.po from Kiyoto James Hashida M po/ja.po commit 1ce102f4e3ee675f8d3a2329db52da81a09e4b72 Author: Peng Huang Date: 2010-05-06 16:04:05 +0800 Update ml.po from Ani Peter M po/ml.po commit ddf4c9462a044561cbb4632f722c52bf9c28a2a5 Author: Peng Huang Date: 2010-05-06 15:05:43 +0800 Update mr.po from sandeep shedmake M po/mr.po commit 704747b00f8b41d1099574c856e55d4c7f29016d Author: Peng Huang Date: 2010-05-06 10:32:20 +0800 Update ru.po from Yulia Poyarkova M po/ru.po commit 93b3ab9b433fa9540af140a08ae6f81eec5ae531 Author: Peng Huang Date: 2010-05-06 10:31:19 +0800 Update te.po from Krishnababu Krothapalli M po/te.po commit c924bf47d4f227baf4fe4938a4467d26c2d633b7 Author: Peng Huang Date: 2010-05-05 19:09:39 +0800 Fix a typo in setup.ui M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/setup.ui commit 6b76860b86cfb45aedf8a010a4af45335396441c Author: Peng Huang Date: 2010-05-05 19:03:19 +0800 Update pa.po from Jaswinder Singh M po/pa.po commit 74e5fcace7101354b560e0aa2bc0c0d2b91d5fc3 Author: Peng Huang Date: 2010-05-04 13:33:46 +0800 Release 1.3.3 M configure.ac commit fd5289885358aebcffac82a71494bcb72193aded Author: Peng Huang Date: 2010-05-04 11:16:31 +0800 Revert "Remove dbus library from ibus-1.0.pc" This reverts commit 1a60516d29bae164213c2337e4d877079b1c3ba0. M ibus-1.0.pc.in commit d8d386f6bd2823e96e0380e065ccc0b522b7e9e6 Merge: 1a60516d 80c35b5f Author: Peng Huang Date: 2010-05-04 07:29:45 +0800 Merge branch 'no_snooper_apps' commit 80c35b5fc53672a0791f847d811c71843e1c7156 Author: Peng Huang Date: 2010-05-04 07:27:53 +0800 Add configure --disable-key-snooper M client/gtk2/ibusimcontext.c M configure.ac commit 1a60516d29bae164213c2337e4d877079b1c3ba0 Author: Peng Huang Date: 2010-05-03 17:45:05 +0800 Remove dbus library from ibus-1.0.pc M ibus-1.0.pc.in commit 550d0adb701d456c1097be805cd010b95e60f9c8 Author: Peng Huang Date: 2010-05-02 15:44:13 +0800 ibus-x11 does not call g_error, when it connects to ibus-daemon failed. M client/x11/main.c commit aab40e06078512c7a70b071e3eb5acfe47921ca4 Author: Peng Huang Date: 2010-05-01 20:58:36 +0800 Refine comments M configure.ac commit 180371b895cc9217710220e1a2dce5d91f86cf2b Author: Peng Huang Date: 2010-05-01 17:22:46 +0800 add configure option to disable keyboard snooper in some applications M client/gtk2/ibusimcontext.c M configure.ac commit 14bf7bdb80920c7cf8f4fd38aabfa8c5b6deee33 Author: Peng Huang Date: 2010-05-01 09:00:27 +0800 include ignore and handled mask in IBUS_MODIFIER_MASK M src/ibustypes.h commit 9111a6cfcd6b1357a4c288366661faef7d757add Author: Peng Huang Date: 2010-04-30 15:05:29 +0800 Check if client connection is alive, when engine replies the process_key_event M bus/inputcontext.c commit 670693885a114ba3c3455db695dee52edfc605d8 Author: Peng Huang Date: 2010-04-29 17:09:58 +0800 mark ibus_free_strv as depracated M src/ibusshare.c M src/ibusshare.h commit 479ef38a166a8e9fe72fdc52024b3676deedf16d Author: Peng Huang Date: 2010-04-27 07:37:42 +0800 Update es.po from daniel cabrera M po/es.po commit f823193fb424797554cc4953807f65bf038b10a9 Author: Julien Humbert Date: 2010-04-26 13:30:38 +0200 Updated French translation M po/fr.po commit 5d699f3d6d530cc5a709530c28fef3cedc086cb9 Author: Peng Huang Date: 2010-04-26 09:00:47 +0800 Remove option [Never] for language bar. M data/ibus.schemas.in M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/main.py M setup/setup.ui M ui/gtk/languagebar.py M ui/gtk/panel.py commit 269a0bb0ad207fc484b1867c53bc72f200a7cc15 Author: Peng Huang Date: 2010-04-24 08:18:58 +0800 Update kn.po from Shankar Prasad Venkateshbhat M po/kn.po commit e2c1359c02f975ea5cb7a51c7baa313b27b2e6c7 Author: Peng Huang Date: 2010-04-24 08:16:16 +0800 Add librsvg2 as requires in rpm spec file. M ibus.spec.in commit c0f4071d17351e4076fdbe476fff7030bfd1d3a9 Author: fujiwarat Date: 2010-04-23 16:02:54 +0900 Update ja.po M po/ja.po commit 633f5d03fcdd1206855a3a4071ee75d37829e619 Author: Peng Huang Date: 2010-04-22 16:54:03 +0800 Update API references of IBusEngine M src/ibusengine.c commit c0fe2773c4c750c871785e3ca07745fe76d51faf Author: Peng Huang Date: 2010-04-21 22:06:23 +0800 Update es.po from daniel cabrera M po/es.po commit a48386426142a6645b9beae712572dc1adfc082a Author: Peng Huang Date: 2010-04-21 13:19:23 +0800 Release 1.3.2 M configure.ac commit 4cd33ff5d4c8adcde22364365f0d892f013e5b01 Author: Peng Huang Date: 2010-04-21 13:18:34 +0800 workaround: set focus if context does not have focus. M bus/inputcontext.c commit 416f9ac05d2edab41379dad40315c0feb2d47406 Author: Peng Huang Date: 2010-04-21 11:04:43 +0800 Update string in UI M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/setup.ui commit caefdc15452b63e87e5816c888b86be72feb5a56 Author: Peng Huang Date: 2010-04-21 10:56:19 +0800 Update po files. M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit 943df5a35b5fa73f6195b362993a479b611116bb Author: Peng Huang Date: 2010-04-21 10:44:32 +0800 Fix issue - application does not response key events randomly. M bus/inputcontext.c commit fd38e7622440cbd7c78ba62fe92281edcea6a76e Author: Peng Huang Date: 2010-04-21 10:42:40 +0800 Add iso-codes-dev as BR in spec file. M ibus.spec.in commit 5be6364bb79d77fc21c799ea728be7d6ff24de5e Author: Peng Huang Date: 2010-04-20 17:58:05 +0800 Adjust setup dialog for better looking M setup/setup.ui commit 74f8f71853b215c3d2e9945be60f5c9ff6285415 Author: Peng Huang Date: 2010-04-20 17:21:41 +0800 Fix crash in registry M bus/registry.c M src/ibuscomponent.c commit e74ec5611e26b509c990024e919de21ec33976b5 Author: Peng Huang Date: 2010-04-15 17:06:55 +0800 Update or.po from Manoj Giri M po/or.po commit b69765ccf8417413678ad35e3e41710e8ed6d37b Author: Peng Huang Date: 2010-04-12 06:42:13 +0800 Fix some mistakes M po/zh_CN.po commit 473da4136f36dc344033723b8217a7b3003b6827 Author: Peng Huang Date: 2010-04-11 20:48:59 +0800 Fix mistakes in zh_CN.po M po/zh_CN.po commit 6d7f49c57e7013dabcd88c810eaa2fc49f94c87d Author: Peng Huang Date: 2010-04-11 17:48:49 +0800 Do not hardcode iso-codes anymore M configure.ac M ibus/_config.py.in M ibus/lang.py commit 064eb48804f34f1c2249d93b5df4b129d536febd Author: Peng Huang Date: 2010-04-11 17:04:19 +0800 Fix build warnings M src/test-bus.c commit 3b2f45a9abeffebdb4f583ce6ddfed674e74b4c6 Author: Peng Huang Date: 2010-04-11 17:02:55 +0800 Add X11_CFLAGS and X11_LIBS M client/x11/Makefile.am M util/IMdkit/Makefile.am commit 292c62c32e8e71383fafe09881c2ff247d460bb7 Author: Peng Huang Date: 2010-04-11 16:41:03 +0800 Fix make distcheck errors. M Makefile.am M configure.ac M gconf/Makefile.am M ibus/Makefile.am M ibus/interface/Makefile.am M po/POTFILES.in M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/Makefile.am M src/test-bus.c M ui/gtk/Makefile.am commit 271f02d9ee09477f61dcec43196c52768665f062 Author: Peng Huang Date: 2010-04-11 11:39:48 +0800 Use = in shell test expression M configure.ac commit 4d791dd6846f7610c0797f508d9760df49c710dd Author: Peng Huang Date: 2010-04-10 07:15:04 +0800 Update es.po from daniel cabrera M po/es.po commit eee4f66a4557dfb825b1ba3dac1cf021699d4e5d Author: Peng Huang Date: 2010-04-09 18:44:35 +0800 Update mr.po from sandeep shedmake M po/mr.po commit c1697ada529e5cf2dcf8c6292f6e3bef6ccbb5b2 Author: Peng Huang Date: 2010-04-09 12:01:19 +0800 Fix two build warnings M bus/registry.c M src/ibusbus.c commit 616c07538b3ea8cf0d5979bb4a22afa8e9d9220a Author: Peng Huang Date: 2010-04-09 11:30:50 +0800 Add some git targets M Makefile.am commit 39bf9044019b342380c32986c12ffc5a41ac29f3 Author: Peng Huang Date: 2010-04-09 11:23:42 +0800 Update some strings and po files. M data/ibus.schemas.in M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/setup.ui M ui/gtk/languagebar.py commit 1dfaf677e210452056569ccfb0d47ef236771254 Author: Peng Huang Date: 2010-04-09 11:05:57 +0800 Update ru.po from Yulia Poyarkova M po/ru.po commit f7fe659fc8bd974fb609d66784e301cf3efca590 Author: Peng Huang Date: 2010-04-09 09:27:57 +0800 Fix AM_CONDITIONAL error in configure.ac M configure.ac commit 8db336807712dba41cbf3de37ae87a3fb084d39e Author: fujiwarat Date: 2010-04-08 18:40:54 +0900 Narrow the width of ibus-setup for ja M setup/setup.ui commit ff8cdb6f36a6f1024c3295ca75be6c444209d407 Author: Peng Huang Date: 2010-04-08 17:47:31 +0800 Clear the code for preedit text mode M bus/engineproxy.c M bus/engineproxy.h M bus/inputcontext.c M bus/inputcontext.h M src/ibusmarshalers.list commit e4d02bb966788291168e51225aaeab24f80ff424 Author: fujiwarat Date: 2010-04-08 16:09:00 +0900 Commit preedit text when bus_input_context_disable is called. M bus/inputcontext.c commit 56968f1b9560298667d95908f2773ddec2c04c2a Author: Peng Huang Date: 2010-04-08 11:10:02 +0800 Try to create dir $(HOME)/.config/ibus/bus every time to avoid apps wake up once per second. M src/ibusbus.c M src/ibusshare.c M src/ibusshare.h commit 413afeb66e23acf06ffd8819b74895582c8d68a7 Author: Peng Huang Date: 2010-04-08 10:37:10 +0800 Insensitive 'Turn off input methon' menu item if ic is disabled already. M ui/gtk/panel.py commit 619283cc93725cfbfff598013671da0e6a2c3728 Author: Peng Huang Date: 2010-03-31 17:48:45 +0800 Update pa.po from Jaswinder Singh M po/pa.po commit fc59bca7eb6606abac94ffa5a3b4638edf87b22b Author: Peng Huang Date: 2010-03-31 12:26:40 +0800 Update po files. M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit dc505c75ae1eb182a0376b959ce4330628f06b54 Author: Peng Huang Date: 2010-03-31 12:26:24 +0800 Update ko.po from Hyunsok Oh M po/ko.po commit 11a4055f2050019266516c4b83b7c671144189e4 Author: Peng Huang Date: 2010-03-30 12:55:27 +0800 Release 1.3.1 M configure.ac commit 06b8aeabdbd347396ea5526abca70229cb2a47e9 Merge: 39782a6a 2b25925d Author: Peng Huang Date: 2010-03-30 12:49:27 +0800 Merge remote branch 'origin/master' into 1.3.y commit 2b25925df7c193731afeb43fbee777a2fa9c2d13 Author: Peng Huang Date: 2010-03-29 15:28:26 +0800 Add configure option --disable-gconf M Makefile.am M configure.ac commit 39782a6a4ae6221868e2430d9085dacba98b8548 Author: Peng Huang Date: 2010-03-26 15:32:23 +0800 Set lookup table's orientation before updating candidates. M ui/gtk/candidatepanel.py commit 24e6c7643157440d3ad78fb07e140cd305683f35 Author: Peng Huang Date: 2010-03-26 09:24:18 +0800 Update from "Runa Bhattacharjee" M po/bn_IN.po commit 3154257e4335e92e47f7305f6ce43c2167a4abbd Author: Peng Huang Date: 2010-03-24 19:28:32 +0800 Update ml.po from Ani Peter M po/ml.po commit 487546090ad6ccff09b17e6d42395dc8ea7198bd Author: Peng Huang Date: 2010-03-26 15:32:23 +0800 Set lookup table's orientation before updating candidates. M ui/gtk/candidatepanel.py commit f509f658aa24b50426eaa0b34850a9153e6a7c63 Author: Peng Huang Date: 2010-03-23 14:41:50 +0800 Update gu.po from Sweta Kothari M po/gu.po commit b84c2405f6fcd22576950cebe1d56ab7a06bc85e Author: Peng Huang Date: 2010-03-26 09:24:18 +0800 Update from "Runa Bhattacharjee" M po/bn_IN.po commit 86e48f31bce0faa4ef8310b63a501b2bfc2f2de5 Author: Peng Huang Date: 2010-03-25 10:29:44 +0800 Always setup ibus_datedisplay M configure.ac commit e321f2844feeaa303f26b0072c508db26e065cbf Author: Peng Huang Date: 2010-03-25 10:29:44 +0800 Always setup ibus_datedisplay M configure.ac commit 70e975d44532ff706fb563c4d93afa66afeb4862 Author: Peng Huang Date: 2010-03-24 19:28:32 +0800 Update ml.po from Ani Peter M po/ml.po commit 468f7cca1e53e6db3b2b2ef002010bc5c334a9da Author: Peng Huang Date: 2010-03-23 17:10:02 +0800 Make make output look's better M docs/reference/ibus/Makefile.am M gconf/Makefile.am M src/Makefile.am M ui/gtk/Makefile.am commit 69e4a62041dbf8f78bc73a58ebd38a4ab78af72d Author: Peng Huang Date: 2010-03-23 16:30:19 +0800 Refine coding style and change source file header. M src/ibusinternal.c commit 8e2e49dd0a5a4560f10fb13fa660c28345d17195 Author: Peng Huang Date: 2010-03-23 15:02:33 +0800 Add configure --disable-python to disable build for python modules. M Makefile.am M configure.ac commit 1217396567a9b8dbbdf9efecb7c0550df57371ae Author: Peng Huang Date: 2010-03-23 14:41:50 +0800 Update gu.po from Sweta Kothari M po/gu.po commit 219adb293a275b4e02e21e7bc2111a0706ad99a2 Author: Peng Huang Date: 2010-03-22 21:21:36 +0800 Add AM_SILENT_RULES([yes]) M configure.ac commit a0988fc77bf1ba472c7b75b0321f1550f3e824c7 Merge: 6af061df 1d01af4b Author: Peng Huang Date: 2010-03-22 16:12:00 +0800 Merge branch '1.3.y' commit 1d01af4bba89868b5803a20f6d6c77474dabfec2 Author: Peng Huang Date: 2010-03-22 16:11:37 +0800 Does not check glib micro version anymore. M client/gtk2/ibusim.c commit 6af061df3987cf8f50870f28a6666dbd24d6e0b2 Author: Peng Huang Date: 2010-03-22 10:22:53 +0800 Set release to 0 M configure.ac commit 4e4d859a55236b670245a734c4a9a873d37e9b15 Author: Peng Huang Date: 2010-03-22 10:20:41 +0800 Bump version to 1.3.0 M configure.ac commit f41d86de36a38356d8ae3f1f9ee1035ef786545e Author: Peng Huang Date: 2010-03-22 10:07:32 +0800 Change version number in api document. M docs/reference/ibus/ibus-docs.sgml commit 0f2f4b7a8b30470b6f1c5e019e0af6de28e36dd1 Author: Peng Huang Date: 2010-03-22 09:52:14 +0800 ibus setup will execute ibus-daemon with --xim M setup/main.py commit f74809323895668329088ad2e627a62e90eb8b99 Author: Peng Huang Date: 2010-03-22 09:20:15 +0800 Fix deb build problem. M debian/libibus1.install commit 4a57966042e142a643bd5e9b7939fa8880d0a6c6 Author: Peng Huang Date: 2010-03-19 11:06:45 +0800 Avoid crash if the engine is destroyed M bus/ibusimpl.c M bus/inputcontext.c commit ebc47d54bf5be8bbbaf2ec523ad7f82abf44f0c8 Author: Peng Huang Date: 2010-03-17 13:50:22 +0800 Always put setup dialog in center of screen. M setup/setup.ui commit 0211cdaa80721aac1aade8c76c90ace9c9ccce3d Author: Peng Huang Date: 2010-03-16 15:45:00 +0800 Call ibus_engine_update_preedit_text_with_mode in ibus_engine_update_preedit_text M src/ibusengine.c commit 8ee38642d8e0b861cf03d60374a3462de201d16a Author: fujiwarat Date: 2010-03-16 16:33:26 +0900 Add ibus_engine_update_preedit_text_with_mode M bus/engineproxy.c M bus/engineproxy.h M bus/inputcontext.c M ibus/common.py M ibus/engine.py M ibus/interface/iengine.py M src/ibusengine.c M src/ibusengine.h M src/ibustypes.h commit 701265d6db597388b7ad7dfa697aa55de29ebd08 Author: Peng Huang Date: 2010-03-16 10:32:06 +0800 Add Categories in ibus.desktop M bus/ibus.desktop.in commit 8ba5979f404725b684a005ab747c0fbf5baced87 Author: fujiwarat Date: 2010-03-12 10:55:34 +0900 Update ja.po M po/ja.po commit 43b68f70dc10a493b011bf106a40ce3318dab9cf Author: Peng Huang Date: 2010-03-10 10:24:01 +0800 Update version in document M docs/reference/ibus/ibus-docs.sgml commit 53a04bfb66c316df74132c0c1bcc1f97cbb26788 Author: Peng Huang Date: 2010-02-28 10:22:51 +0800 Update zh_TW.po from Tseng, Cheng-Chia M po/zh_TW.po commit 314eb4a1a31fd7fc1bd6769c7f7b92afe6622e00 Author: Peng Huang Date: 2010-02-28 10:19:16 +0800 Update pl.po from Piotr Drąg M po/pl.po commit be47cfcceb6352001877e79d530514baa299d08e Author: Peng Huang Date: 2010-02-24 16:07:06 +0800 Remove unused code. M ui/gtk/panel.py commit f6aee0a3605f44336f881a3d133d176e6f890518 Author: Peng Huang Date: 2010-02-24 09:57:41 +0800 Refine inline document M src/ibusproxy.h commit 12d98ba000f29027b2d33cdef719906bbcb0e0b8 Merge: 80077fe1 54547855 Author: Peng Huang Date: 2010-02-23 13:27:29 +0800 Merge remote branch 'epico/master' commit 80077fe1eae883bf5ae12e38a216dd1634c2db01 Author: Peng Huang Date: 2010-02-23 13:19:57 +0800 Fix a typo in API document M src/ibusproxy.h commit 54547855ee226bab4e7593acbc670496202013a7 Author: Peng Wu Date: 2010-02-23 12:41:37 +0800 change gtk-im client name. M client/gtk2/ibusimcontext.c commit b6567c635ccad90f3d669577f51074530f33c02d Author: Peng Huang Date: 2010-02-23 08:10:28 +0800 Remove the occurence of dbus_message_iter_get_array_len() due to its obsolescence. In Header #ifndef DBUS_DISABLE_DEPRECATED /* This function returns the wire protocol size of the array in bytes, * you do not want to know that probably */ DBUS_DEPRECATED int dbus_message_iter_get_array_len (DBusMessageIter *iter); #endif M src/ibusbus.c commit 6a546df559a59ba02ff0c59fa47bea8417f63355 Author: Peng Huang Date: 2010-02-19 13:51:53 +0800 Use G_N_ELEMENTS in for loop M bus/ibusimpl.c M bus/panelproxy.c M src/ibuspanelservice.c commit 5380820cb5da1c63799115141aae55e32d5e9139 Author: Peng Huang Date: 2010-02-15 19:39:17 +0800 Remove --rebuild-sections M docs/reference/ibus/Makefile.am commit dabf52c07a80e04f12ad72dd972558130f164f68 Author: Peng Huang Date: 2010-02-15 19:36:57 +0800 Fix cursor location problem. M client/gtk2/ibusimcontext.c commit 200de0a7c338149afac26fcba46949103f1f70ba Author: Peng Huang Date: 2010-02-15 17:43:45 +0800 Close child process in IBusComponent.Destroy M src/ibuscomponent.c M src/ibuscomponent.h commit 173b2e830201e837185aa06df9394ab0bc0cea5e Author: Peng Wu Date: 2010-02-11 11:12:11 +0800 update zh_CN.po for embedding preedit. M po/zh_CN.po commit fb8f42382426f11a6bf0b52f0eb4b8775c4afc56 Author: Peng Huang Date: 2010-02-11 10:37:53 +0800 Change the default setting of use_global_engine, and remove some unused code. M bus/ibusimpl.c M bus/ibusimpl.h M data/ibus.schemas.in commit ef68517390c94d254458097ee3c6bd3849e93b4f Author: Peng Huang Date: 2010-02-11 10:24:51 +0800 Upddate es.po from daniel cabrera M po/es.po commit 4e8235543be28d8e4c06e7af236da3aceed85839 Author: Peng Huang Date: 2010-02-10 14:52:01 +0800 Make sure the engine was not destroyed before real set the global engine. M bus/ibusimpl.c commit 31d31a736d818c2ed04fdc7f60b64ccc96f6b723 Author: fujiwarat Date: 2010-02-10 12:06:24 +0900 Fix default use_system_keyboard_layout M setup/main.py commit 115eedaa73e1880ac10991fbdc7dfa7ff0fb29e4 Author: Peng Huang Date: 2010-02-09 17:07:49 +0800 simplify preedit condition M bus/inputcontext.c commit ea9b9f21ae1a29224169e8f95f4a5e7fbd8c83e2 Author: Peng Wu Date: 2010-02-09 10:26:20 +0800 Add embed_preedit support to ibus. M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M data/ibus.schemas.in M setup/main.py M setup/setup.ui commit 51f8f4fb734292e568650464c2ba645bed21d988 Author: Peng Huang Date: 2010-02-05 08:08:28 +0800 Fix gtk-doc problems. M docs/reference/ibus/.gitignore M docs/reference/ibus/Makefile.am A docs/reference/ibus/ibus-sections.txt M src/ibuscomponent.h M src/ibusconfig.h M src/ibusconnection.h M src/ibusengine.h M src/ibusenginedesc.h M src/ibusfactory.h M src/ibusinternal.h M src/ibuskeymap.h M src/ibuskeysyms.h M src/ibusobject.h M src/ibuspendingcall.h M src/ibusproperty.h M src/ibusproplist.h commit 43e5004f54dc4dc3e1b2cad4836eab0d8357501d Author: Peng Wu Date: 2010-02-03 11:41:39 +0800 fixes a typo. M bus/ibusimpl.c commit d6bbeabf9d9e77a19a8f310bcf2573a24037096f Author: Peng Huang Date: 2010-02-03 07:29:51 +0800 Update es.po from Daniel Cabrera M po/es.po commit 85faf60e2981ce49bc88a3ba15ac81f919f370f4 Author: Peng Huang Date: 2010-02-02 10:21:20 +0800 Add property connection and fix crash in IBusFactory M src/ibusfactory.c commit 05ea126837cd4b879a2c0ada29f0f1db8fa9172d Author: Peng Huang Date: 2010-02-02 08:40:56 +0800 Remove duplication g_object_ref in ibus_keymap_get M src/ibuskeymap.c commit 813d0c5feb5d5750057ea92631e999bcb6c502bb Author: Peng Huang Date: 2010-02-02 08:25:57 +0800 Refine ibus_keymap_get M src/ibuskeymap.c commit 4966dfdd9637dc1e18f00ae9b5e4248de863d56f Author: Peng Huang Date: 2010-02-02 08:20:29 +0800 Refine ibus_connection_open M src/ibusconnection.c commit 71e91075c4ce4e11867cba84939b668112bb35eb Author: Peng Huang Date: 2010-02-02 08:15:39 +0800 Does not increase references in ibus_keymap_get M src/ibuskeymap.c commit d7d8096d71073e30652774efffe45a92d5178c3d Author: Peng Huang Date: 2010-02-01 18:23:11 +0800 Fix a type in comment M bus/inputcontext.c commit d11c577d31ab92e859cf6e01ae24105f6fb12d3c Author: Peng Huang Date: 2010-02-01 17:40:30 +0800 Update so version in common.py M ibus/common.py commit 9befb29b0e1a356b069ebc80cfe8813179bf5914 Author: Peng Huang Date: 2010-02-01 15:09:14 +0800 Bump version and so version M configure.ac commit ea5f939ccb49c58af28337a707e7e81e9a458b55 Author: Peng Huang Date: 2010-02-01 13:02:28 +0800 Add G_GNUC_DEPRECATED mark on ibus_keymap_new M src/ibuskeymap.c M src/ibuskeymap.h commit 3aec8b5cc40ac1552472aa23468f54093fb64765 Author: Peng Huang Date: 2010-01-31 11:03:10 +0800 Workaround for cursor following problem in some Java applications. M ui/gtk/candidatepanel.py commit f73d06cc030e0ecef761cd0862deccecfce2baa9 Author: Peng Huang Date: 2010-01-31 09:21:21 +0800 Workaround for autohide problem with metacity M ui/gtk/languagebar.py commit 7b7e338cf52578a24b6f50fbcfd80e1ced4dce1d Author: Peng Huang Date: 2010-01-31 09:19:13 +0800 Update fr.po from julroy67 M po/fr.po commit 44ef7c2035502f17c8bfb608d2d8c4eb672adc27 Author: Peng Huang Date: 2010-01-30 23:19:32 +0800 Use G_DEFINE_TYPE to simplify code. M bus/connection.c M bus/dbusimpl.c M bus/engineproxy.c M bus/factoryproxy.c M bus/ibusimpl.c M bus/inputcontext.c M bus/matchrule.c M bus/registry.c M bus/server.c M src/ibusattribute.c M src/ibusattrlist.c M src/ibusbus.c M src/ibuscomponent.c M src/ibusconnection.c M src/ibusengine.c M src/ibusenginedesc.c M src/ibusfactory.c M src/ibusinputcontext.c M src/ibuskeymap.c M src/ibuslookuptable.c M src/ibusobject.c M src/ibusobservedpath.c M src/ibuspanelservice.c M src/ibusproperty.c M src/ibusproplist.c M src/ibusproxy.c M src/ibusserializable.c M src/ibusserver.c M src/ibusservice.c M src/ibustext.c commit d48116864621e93072b4fb9ff60198f27bd201c5 Author: Peng Huang Date: 2010-01-30 22:22:30 +0800 Refine comment in configure.ac M configure.ac commit 9e1ffbf2b3b4d43d4f299db73068875bda6846cc Author: Peng Huang Date: 2010-01-28 16:06:30 +0800 Fix some problems of sharing global engine among contexts. M bus/ibusimpl.c commit c4f538017f8e1589c204688c2a4e20450db399a6 Author: Peng Huang Date: 2010-01-28 06:41:58 +0800 Attach/Detach global engine when switch focus. M bus/engineproxy.c M bus/engineproxy.h M bus/ibusimpl.c M bus/inputcontext.c commit 85c107194f3f99be7ad5bbd986c71abc71ba6975 Author: Peng Huang Date: 2010-01-27 17:11:59 +0800 Add global engine in setup UI from Su Zhe. M data/ibus.schemas.in M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/main.py M setup/setup.ui commit cb216cedd6ee92c18384eded25766dee47d941a1 Author: Peng Huang Date: 2010-01-27 17:09:15 +0800 Support share global engine in all input context from Su Zhe. M bus/engineproxy.c M bus/engineproxy.h M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M bus/inputcontext.h commit 501b24ed272993838d7c774275feb9a1d2efb403 Author: Peng Huang Date: 2010-01-30 08:27:05 +0800 Fix a typo M debian/changelog commit cda6b25a135f964304aa328f0cb3bad473d9cac6 Author: Peng Huang Date: 2010-01-30 08:12:54 +0800 Update debian pacakge scripts M debian/changelog M debian/libibus1.symbols commit 90a9b33c336dcd067b9289de11f5f33c5bde2c19 Merge: b873dec8 80f5d321 Author: Peng Huang Date: 2010-01-29 21:15:20 +0800 Merge branch 'G_DEFINE_TYPE' commit b873dec849e758dc376ad2a5588c6b3fefd6daa4 Author: Peng Huang Date: 2010-01-29 21:07:43 +0800 Refine API document of IBusInputContext M src/ibusinputcontext.c commit 80f5d32159e53623da82c868304f7bb23e9b1a02 Author: Peng Huang Date: 2010-01-29 20:48:17 +0800 Use G_DEFINE_TYPE to simplified code. M bus/inputcontext.c M bus/matchrule.c M bus/registry.c M bus/server.c commit f0a7973f66a2031a7a02c65659402d13ed6b689e Author: Peng Huang Date: 2010-01-29 20:34:05 +0800 Use G_DEFINE_TYPE to simplified code. M bus/connection.c M bus/dbusimpl.c M bus/engineproxy.c M bus/factoryproxy.c M bus/ibusimpl.c M bus/panelproxy.c commit ba48d22a1441c5b55efd4162b4447acdb65c3c7e Author: Peng Huang Date: 2010-01-29 19:58:38 +0800 Fix typo in API document M src/ibusengine.h commit 11099ced762a498d3a805264431a6fe8cf6fd6ac Author: Peng Huang Date: 2010-01-29 19:49:44 +0800 Refine API document for IBusEngine M src/ibusengine.h commit 8fd4a54b11c5bf9cd279bebed229d65124969303 Author: Peng Huang Date: 2010-01-28 07:35:22 +0800 Release floating objects in IBusEngine M src/ibusengine.c commit 93726dd3d8eade4c05d0d620110dccc3fc3b95b2 Author: Peng Huang Date: 2010-01-26 21:22:06 +0800 Use GInitiallyUnowned correctly M bus/Makefile.am M bus/dbusimpl.c M bus/engineproxy.c M bus/factoryproxy.c M bus/ibusimpl.c M bus/inputcontext.c M bus/matchrule.c M bus/panelproxy.c M bus/registry.c M client/gtk2/ibusimcontext.c M src/ibusattrlist.c M src/ibuscomponent.c M src/ibusconfigservice.c M src/ibusconnection.c M src/ibusengine.c M src/ibusfactory.c M src/ibusinputcontext.c M src/ibuskeymap.c M src/ibuskeymap.h M src/ibuslookuptable.c M src/ibusobservedpath.c M src/ibuspanelservice.c M src/ibusproperty.c M src/ibusproplist.c M src/ibusproxy.c M src/ibusserver.c M src/ibusservice.c M src/ibustext.c M src/test-keymap.c commit bfdbf9855dea8a53ad47f4cf04f971335a73de9e Author: Peng Huang Date: 2010-01-28 09:03:31 +0800 Fix a typo. M bus/inputcontext.c M bus/panelproxy.c commit 07f8e8a54ca676f7b0cc8ee489a15044205f280d Author: Peng Huang Date: 2010-01-28 08:59:35 +0800 Fix typos. M bus/ibusimpl.c M bus/inputcontext.c M bus/panelproxy.c commit 0ba7c1ddc696ea7042657a0084c60a5e2961bfa5 Author: Peng Huang Date: 2010-01-28 08:42:47 +0800 Use G_N_ELEMENTS. M bus/ibusimpl.c M bus/inputcontext.c M bus/panelproxy.c commit 90553c93bb21387b257ce3e36ff8f6bfed521146 Merge: 7c842d9a 59b2900f Author: Peng Huang Date: 2010-01-27 14:26:02 +0800 Merge branch 'master' of github.com:phuang/ibus commit 7c842d9a3e0db5ce6349b3b5bb003c95db8aa97f Author: Ding-Yi Chen Date: 2010-01-27 10:17:11 +1000 Fix some APIDOC M src/ibusbus.h M src/ibusfactory.h M src/ibusinputcontext.h M src/ibusinternal.h M src/ibusservice.h commit 59b2900f7336082b5690db4195e939b99a009a1f Author: fujiwarat Date: 2010-01-26 12:35:16 +0900 Fix destroy about menu item M ui/gtk/languagebar.py commit 0caac1e5fbb85d11b51c01ee8e4f826219faefa4 Author: Peng Huang Date: 2010-01-25 16:20:16 +0800 Show recommended engines with bold font M setup/enginecombobox.py commit 331e34332e9099121cfac689f40f71e3ca98f72b Author: Peng Huang Date: 2010-01-25 16:19:33 +0800 Only enable engines with rank > 0 at frist time startup M bus/ibusimpl.c commit 482be2ae0b50f423f1d172b4c13dcdad1beafea4 Author: Peng Huang Date: 2010-01-19 16:11:35 +0800 Show properties on systray menu by Fujiwara M setup/setup.ui M ui/gtk/languagebar.py M ui/gtk/panel.py commit 425bd8288079e58314c935a46c5920c3118ac25a Author: Peng Huang Date: 2010-01-19 13:25:22 +0800 Remove some symbols for debian package. M debian/libibus1.symbols commit ba13596c99ead9f24afd334552f8710edc5cad7e Author: Peng Huang Date: 2010-01-15 14:56:59 +0800 Unify the help message. M bus/main.c commit dbc992ba0bab3253032fbcd9fc1a477dec80b855 Author: Peng Huang Date: 2010-01-15 14:55:25 +0800 Check argument to avoid crash M gconf/config.c commit 157598a25f7c493313482868af9b800e6951ff14 Author: Peng Huang Date: 2010-01-15 14:35:15 +0800 Fix typo. M ibus/enginedesc.py commit 883bc5ed5ddfd96e0f8a15abc9748f06d2fbd86b Author: Peng Huang Date: 2010-01-14 08:31:37 +0800 Fix coding style M ui/gtk/candidatepanel.py commit 02ceec9193952243f0e05e3c2a25284600dba9b9 Author: Peng Huang Date: 2010-01-12 21:56:58 +0800 Change Title of IBusAttrList and IBusPropList M src/ibusattrlist.h M src/ibusproplist.h commit 54cc7180226dc93466ba9b69e2bbc5499ca7645b Author: Peng Huang Date: 2010-01-12 21:46:29 +0800 Fix gtk-doc issues. M docs/reference/ibus/Makefile.am M src/ibusmessage.h M src/ibuspendingcall.h commit c35651093e7e647c64dc2d54e870c4b8ddf6bc8b Author: Peng Huang Date: 2010-01-12 21:05:02 +0800 Fix gtk-doc problems. M src/ibusattrlist.h M src/ibusobject.h M src/ibusproperty.h M src/ibusproplist.h commit 07becd621cbf54bbc6faddf268a7d6e798ce6d69 Author: Peng Huang Date: 2010-01-12 20:27:11 +0800 Ignore some header files. M docs/reference/ibus/Makefile.am M docs/reference/ibus/ibus-docs.sgml commit 7e3e5d22c637de28cda17d8179b0c4edc80d93aa Author: Peng Huang Date: 2010-01-12 18:32:56 +0800 Separate IBusProperty and IBusPropList. M src/Makefile.am M src/ibus.h M src/ibusengine.h M src/ibusinputcontext.c M src/ibuspanelservice.h M src/ibusproperty.c M src/ibusproperty.h A src/ibusproplist.c A src/ibusproplist.h commit 6b1acacb23c8bef1fbf34197fb0fcb43774c03c0 Author: Peng Huang Date: 2010-01-12 18:08:42 +0800 include ibusattrlist.h in ibus.h M src/ibus.h commit 75c5ea98a9c67f616a8f252b8eff795ba18c7203 Author: Peng Huang Date: 2010-01-12 18:06:45 +0800 Separate IBusAttribute and IBusAttrList M src/Makefile.am M src/ibusattribute.c M src/ibusattribute.h A src/ibusattrlist.c A src/ibusattrlist.h M src/ibustext.h commit 7e7a45b333ae667e79647842d3e8c3e6412c33d7 Author: Peng Huang Date: 2010-01-12 17:07:21 +0800 Remove Class IBusFactoryInfo M docs/reference/ibus/ibus.types M src/ibusfactory.c M src/ibusfactory.h commit 6de5677aec441c30f52a7b0cf3a573571145b8b4 Author: Peng Huang Date: 2010-01-12 16:27:43 +0800 remove IBusFactoryInfo M src/ibusfactory.c M src/ibusfactory.h commit 8c7c06ecc3932f048a4961a9cce401073e9ee0df Author: Peng Huang Date: 2010-01-11 14:06:34 +0800 Fix string M po/zh_CN.po commit 70d202a8fa75f3ae246435fe041664cc33623c2c Author: Peng Huang Date: 2010-01-11 13:26:19 +0800 Update pl.po by Piotr Drąg M po/pl.po commit 1df86898b54fcacfa6a14039a3fe46b4cbef1631 Author: Peng Huang Date: 2010-01-10 05:31:40 +0800 Refine coding style M src/ibusconfigservice.c M src/ibusconfigservice.h commit 1cbdea8d5f3183cc51c1d96e57ea9add4efcdfc3 Author: Peng Huang Date: 2010-01-10 05:20:27 +0800 Try Cython M ui/gtk/main.py commit 7f93fe7650a6721aaf8ccecf3803ca00bb7075ff Author: Peng Huang Date: 2010-01-10 03:29:59 +0800 Update copyright. M Makefile.am M bindings/Makefile.am M bindings/python/Makefile.am M bus/Makefile.am M bus/connection.c M bus/connection.h M bus/dbusimpl.c M bus/dbusimpl.h M bus/engineproxy.c M bus/engineproxy.h M bus/factoryproxy.c M bus/factoryproxy.h M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M bus/inputcontext.h M bus/main.c M bus/matchrule.c M bus/matchrule.h M bus/option.h M bus/panelproxy.c M bus/panelproxy.h M bus/registry.c M bus/registry.h M bus/server.c M bus/server.h M client/Makefile.am M client/gtk2/Makefile.am M client/gtk2/ibusim.c M client/gtk2/ibusimcontext.c M client/gtk2/ibusimcontext.h M client/x11/Makefile.am M client/x11/main.c M configure.ac M data/Makefile.am M data/icons/Makefile.am M data/keymaps/Makefile.am M docs/Makefile.am M docs/reference/Makefile.am M gconf/Makefile.am M ibus/Makefile.am M ibus/__init__.py M ibus/_config.py.in M ibus/_gtk.py M ibus/application.py M ibus/attribute.py M ibus/bus.py M ibus/common.py M ibus/component.py M ibus/config.py M ibus/engine.py M ibus/enginedesc.py M ibus/exception.py M ibus/factory.py M ibus/inputcontext.py M ibus/interface/Makefile.am M ibus/interface/__init__.py M ibus/interface/iconfig.py M ibus/interface/iengine.py M ibus/interface/ienginefactory.py M ibus/interface/iibus.py M ibus/interface/iinputcontext.py M ibus/interface/inotifications.py M ibus/interface/ipanel.py M ibus/lang.py M ibus/lookuptable.py M ibus/modifier.py M ibus/notifications.py M ibus/object.py M ibus/observedpath.py M ibus/panel.py M ibus/property.py M ibus/serializable.py M ibus/text.py M ibus/utility.py M m4/Makefile.am M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/Makefile.am M setup/enginecombobox.py M setup/enginetreeview.py M setup/ibus-setup.in M setup/icon.py M setup/keyboardshortcut.py M setup/main.py M src/Makefile.am M src/ibus.h M src/ibusattribute.c M src/ibusattribute.h M src/ibusbus.c M src/ibusbus.h M src/ibuscomponent.c M src/ibuscomponent.h M src/ibusconfig.c M src/ibusconfig.h M src/ibusconfigprivate.h M src/ibusconfigservice.c M src/ibusconfigservice.h M src/ibusconnection.c M src/ibusconnection.h M src/ibusdebug.h M src/ibusengine.c M src/ibusengine.h M src/ibusenginedesc.c M src/ibusenginedesc.h M src/ibuserror.c M src/ibuserror.h M src/ibusfactory.c M src/ibusfactory.h M src/ibushotkey.c M src/ibushotkey.h M src/ibusinputcontext.c M src/ibusinputcontext.h M src/ibusinternal.h M src/ibuskeymap.c M src/ibuskeymap.h M src/ibuskeysyms-update.pl M src/ibuskeysyms.h M src/ibuslookuptable.c M src/ibuslookuptable.h M src/ibusmainloop.c M src/ibusmainloop.h M src/ibusmessage.c M src/ibusmessage.h M src/ibusobject.c M src/ibusobject.h M src/ibusobservedpath.c M src/ibusobservedpath.h M src/ibuspendingcall.c M src/ibuspendingcall.h M src/ibusproperty.c M src/ibusproperty.h M src/ibusproxy.c M src/ibusproxy.h M src/ibusserializable.c M src/ibusserializable.h M src/ibusserver.c M src/ibusserver.h M src/ibusservice.c M src/ibusservice.h M src/ibusshare.c M src/ibusshare.h M src/ibustext.c M src/ibustext.h M src/ibustypes.h M src/ibusversion.h.in M src/ibusxml.c M src/ibusxml.h M ui/Makefile.am M ui/gtk/Makefile.am M ui/gtk/candidatepanel.py M ui/gtk/engineabout.py M ui/gtk/handle.py M ui/gtk/ibus-ui-gtk.in M ui/gtk/icon.py M ui/gtk/languagebar.py M ui/gtk/main.py M ui/gtk/menu.py M ui/gtk/notifications.py M ui/gtk/panel.py M ui/gtk/propitem.py M ui/gtk/toolitem.py M util/IMdkit/Makefile.am M util/Makefile.am commit 344ed80466ddd0be3735bdcc5877cf703efb89c2 Author: Peng Huang Date: 2010-01-09 18:04:14 +0800 Adjust pad to avoid break ABI M src/ibusconfigservice.h commit d61d13cbc8ae7fba461cfde1bc7e256bf9c96c7f Author: Daiki Ueno Date: 2010-01-07 18:06:48 +0900 Add IBusConfigService#unset(). Add a new method unset() to IBusConfigService, which removes existing entry to a configuration option. This also adds ibus.Config.unset() to the Python API and ibus_config_unset() to the C API. M gconf/config.c M ibus/config.py M src/ibusconfig.c M src/ibusconfig.h M src/ibusconfigservice.c M src/ibusconfigservice.h commit 515fcdb8e57d493ea06ac97111165d5b607a9090 Author: Peng Huang Date: 2010-01-09 17:36:14 +0800 Do not store arguments in global vars. M client/x11/main.c commit 6510918a09d502f9449288cc70fb20d892890396 Author: Peng Huang Date: 2010-01-09 17:12:56 +0800 Fix problems in XIM server. M client/x11/main.c commit f5519ff8f096e470780e70bfe6fcd5d24ecc2d0c Author: Peng Huang Date: 2010-01-07 14:39:18 +0800 Add ibus_input_context_property_activate by Yusuke M bus/inputcontext.c M src/ibusinputcontext.h commit 363e7f76183473943199575db128deaa12936a20 Author: Peng Huang Date: 2010-01-07 13:02:44 +0800 Only install signal handler for NORMAL, RADIO and TOGGLE M ui/gtk/menu.py commit ab1267e1f2b3c578e513423d8370a120ed609521 Author: Peng Huang Date: 2010-01-07 12:51:00 +0800 Fix a typo. M ui/gtk/menu.py commit 3bd1ea69cb0eb6fc730c2a0aebad05d483e4df26 Author: Peng Huang Date: 2010-01-07 12:25:04 +0800 Fix PROP_MENU problem. Patch from Fujiwara-san M ui/gtk/menu.py commit b501b31efda5f925d40ae04f102b5e006e0fdecf Author: Peng Huang Date: 2010-01-05 15:50:23 +0800 Add ibus_engine_delete_surrounding_text in ibusengine.h M src/ibusengine.h commit 71643e6f699ac4e60f41bd8e1739b4dea90ccd86 Author: Peng Huang Date: 2010-01-05 14:06:32 +0800 Use 5 scounds as default dbus reply timeout M bus/main.c commit 066d8ae1246002d051c0015ed2b46478c3a9eeed Author: Peng Huang Date: 2010-01-01 20:54:22 +0800 Do not update lookup table in recreate_ui M ui/gtk/candidatepanel.py commit c637c6f4bcc9df92571f26580a225e23d0ab27ba Author: Peng Huang Date: 2010-01-01 20:53:36 +0800 Refine code of update_lookup_table M ui/gtk/candidatepanel.py commit fd001d559a7af08ac1da54daad6c3da48d90e86e Author: Peng Huang Date: 2010-01-01 20:47:59 +0800 Remove gproperties from CandidatePanel M ui/gtk/candidatepanel.py commit 1b0f7f2093990ab829b826a4ab592856bac4770f Author: Peng Huang Date: 2010-01-01 19:28:27 +0800 Refine some code M ibus/lookuptable.py commit 15bc382dd95e7bb4cee52b45022f5fb89c652d1f Author: Peng Huang Date: 2010-01-01 19:25:54 +0800 Use ibus.ORIENTATION_* in panel.py M ui/gtk/panel.py commit 59106caf2ce397ab8f42278336a283eddfb3fcf7 Author: Peng Huang Date: 2010-01-01 18:58:40 +0800 Remove some unused code. M ui/gtk/candidatepanel.py commit acdc9fbefb6435678587674a5a0c83c227875447 Author: Peng Huang Date: 2010-01-01 16:46:05 +0800 Rename system_orientation to orientation, and use current_orientation M ui/gtk/candidatepanel.py M ui/gtk/panel.py commit f094435f25e900d66f8a7ea6dea401eef5064bad Author: Peng Huang Date: 2010-01-01 16:39:17 +0800 Use ibus.ORENTATION_* M ui/gtk/candidatepanel.py commit 6814942030df916a425838d6d8169b2781dbca18 Author: Daiki Ueno Date: 2010-01-01 13:22:58 +0900 Apply CandidatePanel orientation change request from IME. This version also saves the system orientation setting for a later IME switch. M ui/gtk/candidatepanel.py M ui/gtk/panel.py commit d8273edce75cf5a0b37b444efceef0ea5ac932ef Author: Peng Huang Date: 2010-01-01 16:17:09 +0800 Fix bug in ibus_engine_update_lookup_table_fast. M src/ibusengine.c commit 0531502772192aa442f2fd3fe2057797970bc197 Author: Peng Huang Date: 2010-01-01 16:16:37 +0800 Add getter and setter methods of orientation. M src/ibuslookuptable.c M src/ibuslookuptable.h commit 4c97ef4ee02866c5b2fe44e5a5b15bd85cb9be97 Author: Daiki Ueno Date: 2009-12-31 15:04:51 +0900 Merge double-defined im_ibus_la_LIBADD. M client/gtk2/Makefile.am commit 85ec75bba808580c6dd86f9a335eb7d910760d8c Author: Daiki Ueno Date: 2009-12-31 15:03:16 +0900 Set CFLAGS/LDADD for test-matchrule properly. M bus/Makefile.am commit 205d07ca2928e798ad303daa59a0481674424eb8 Author: Peng Huang Date: 2009-12-31 07:03:25 +0800 Fix typo. M client/x11/main.c commit 1277dca5b68853712026b837c3ce257cd8f96861 Author: Peng Huang Date: 2009-12-30 10:19:51 +0800 Currect use of autotools: Use *_LIBADD and *_LDADD to replace some *_LDFLAGS. M bus/Makefile.am M client/gtk2/Makefile.am M client/x11/Makefile.am M gconf/Makefile.am M src/Makefile.am commit 84229373ed5ac6dbb132f6bd83260b6378437530 Author: Peng Huang Date: 2009-12-30 10:06:09 +0800 Fix _FORTIFY_SOURCE warnings, from galtgendo M client/x11/main.c commit 89ff52ef5492bb1b767faf3c9eaac49913285322 Author: Peng Huang Date: 2009-12-27 18:34:07 +0800 Fix link errors in Ubuntu M bus/Makefile.am M client/x11/Makefile.am M gconf/Makefile.am M src/Makefile.am commit 3b140a91098560f569fe62b89895a9d5850a6845 Author: Peng Huang Date: 2009-12-27 09:53:27 +0800 Fix rpmlint warnings in spec file. M ibus.spec.in commit 7182448378b644bfe12e778c71333975055322bd Author: Peng Huang Date: 2009-12-25 08:33:11 +0800 Catch KeyboardInterrupt Exception M ui/gtk/main.py commit b0f395d7039bf29d87437b2d272ad67e486a3182 Author: Peng Huang Date: 2009-12-25 08:24:30 +0800 Change pinyin.xml to gtkpanel.xml M ui/gtk/gtkpanel.xml.in.in commit f167b19216dd3845674155169ecc2eeaa41c0e75 Author: Peng Huang Date: 2009-12-24 17:19:51 +0800 Process engine method call correctly. M src/ibusengine.c M src/ibusinputcontext.c commit 252e0e4217cf81903bb121bb0af804d810c43cf4 Author: Peng Huang Date: 2009-12-24 16:49:17 +0800 Fix coding style. M ibus/enginedesc.py commit d00778b6842e24da83f590130bec5c55e97147ab Author: Peng Huang Date: 2009-12-24 15:02:31 +0800 Fix some typos. M setup/enginecombobox.py M setup/enginetreeview.py M setup/main.py commit 043f6fe0b41e5c29d5e6bd7760ff2e301c00bf73 Author: Peng Huang Date: 2009-12-24 14:18:20 +0800 Sort engines in setup ui. M ibus/enginedesc.py M setup/enginecombobox.py M src/ibusenginedesc.c commit ae0a66775f2ce27c4355739167aca1f4e3b9faa1 Author: Peng Huang Date: 2009-12-24 14:05:14 +0800 Use 2 xpad in engine combobox M setup/enginecombobox.py commit 94c9b7a07a9f6eab6c02376d614768391e008943 Author: Peng Huang Date: 2009-12-24 13:59:27 +0800 Fix coding style and remove useless line. M setup/enginecombobox.py commit 1c02e76a0f5cca127fd34cad63aecce7b686e8c2 Author: Peng Huang Date: 2009-12-24 10:42:23 +0800 Make some buttons disabled, when they are not useful. M setup/enginecombobox.py M setup/enginetreeview.py M setup/main.py M setup/setup.ui commit d789a01a2c6cb13e088b1bf7ea04a530c42cd070 Author: Peng Huang Date: 2009-12-24 10:41:19 +0800 Update UI. M setup/setup.ui commit 4ec2a988a6546a73b92c8c6eed7985e19d550ce2 Author: Peng Huang Date: 2009-12-23 15:55:49 +0800 Do not init gthread if undefine G_THREADS_ENABLED. M bus/main.c commit f580326150d486f9dd86961d1bcb80daa4612519 Author: Peng Huang Date: 2009-12-23 15:39:17 +0800 Poll engine changes in different thread. M bus/Makefile.am M bus/ibusimpl.c M bus/main.c M bus/registry.c M bus/registry.h M configure.ac commit d3f11c5b489b63d26a8cc9c6c4fb6dba9881e53a Author: Peng Huang Date: 2009-12-22 17:56:31 +0800 ibus will poll changes of engines, and show notification to user. M bus/ibusimpl.c M bus/main.c M bus/registry.c M bus/registry.h M ibus/bus.py M ibus/interface/iibus.py M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M ui/gtk/main.py commit ea664de646e5d1d24ecb4ba465279861f77bdafd Author: Peng Huang Date: 2009-12-20 18:40:42 +0800 Remove space before and after = M xinput-ibus.in commit 69b0425825bce479cfb9923934f24c2e382231c8 Author: Peng Huang Date: 2009-12-20 18:37:21 +0800 Fix build rpm errors. M configure.ac R070 xinput-ibus xinput-ibus.in commit 8b0d36cf4202b79d965095817c04354e069e25eb Author: Peng Huang Date: 2009-12-20 18:16:15 +0800 Fix build errors if ./configure is not executed in top src dir. M bus/Makefile.am M client/gtk2/Makefile.am M client/x11/Makefile.am M docs/reference/ibus/Makefile.am M gconf/Makefile.am commit d0d97b819cd64e4693bdac1124e15a2cc2c379f5 Author: Peng Huang Date: 2009-12-17 07:35:09 +0800 Use bold style to display current engine in engine menu. M ui/gtk/panel.py commit 5cfbb5077f51397d30b271946f81bb05dbf3f067 Author: Peng Huang Date: 2009-12-16 20:35:17 +0800 Do not use sub menu to list input methods. M ui/gtk/panel.py commit d23e87402abe96659cd402cdfd8db9417a4c1a40 Author: Peng Huang Date: 2009-12-16 07:37:58 +0800 Update es.po from daniel cabrera M po/es.po commit f869a58793c4b760173e5423e60ee1982b9d893b Author: Peng Huang Date: 2009-12-15 17:16:39 +0800 Fix a problem in document M src/ibusmessage.h commit fd395556c82b954d05029457f85e4640b65326d6 Author: Peng Huang Date: 2009-12-14 17:16:06 +0800 Remove comment M data/keymaps/kr commit f47f619901639955c6e084138925282e90f912d6 Author: Peng Huang Date: 2009-12-14 17:13:37 +0800 Define hangul and hanja key M data/keymaps/kr commit f20212a9c7444aa5835f542620352d04f44beaac Merge: 7645a2f4 abac005c Author: Peng Huang Date: 2009-12-14 16:41:37 +0800 Merge remote branch 'definite/master' commit abac005cc73683ecf638b33fb30ebaec4e6d82d1 Author: Ding-Yi Chen Date: 2009-12-14 18:11:03 +1000 Modify zh_TW.po APIDOC: new: ibusenumtypes,ibuspanelservice ibusshare, ibusservice, ibus-type, ibus-version, ibusxml revised: ibusconfig, ibusmessage, ibusoproxy, ibustext M docs/reference/ibus/Makefile.am M docs/reference/ibus/ibus-docs.sgml M docs/reference/ibus/ibus.types M po/zh_TW.po M src/ibusconfig.c M src/ibusconfig.h M src/ibusenumtypes.h.template M src/ibusmessage.h M src/ibuspanelservice.h M src/ibusproxy.h M src/ibusservice.c M src/ibusservice.h M src/ibusshare.h M src/ibustext.h M src/ibusversion.h.in M src/ibusxml.h commit 7645a2f493a84fd01c4e3ca394a0b4cb0272ffd9 Author: Peng Huang Date: 2009-12-14 16:00:04 +0800 Fix some problems in document M src/ibuslookuptable.h M src/ibuspanelservice.h commit 34609d92c063f55c94cf9ac59af13825a97b5b5b Author: Peng Huang Date: 2009-12-14 15:14:51 +0800 Move specification from doc to docs R100 doc/specification docs/specification commit 49524f3ee29c0560656ada984e49b0a9643c75d7 Author: Peng Huang Date: 2009-12-13 13:12:16 +0800 Add a script for get keycode in Xorg A data/keymaps/keycode.py commit e1313c472472757131bdcf3f00ccafbd5f7b2f4f Author: Peng Huang Date: 2009-12-13 12:56:06 +0800 Add kr keymap M data/keymaps/Makefile.am A data/keymaps/kr commit 3e84effb5930c75d2fe566cd8e6ff9f8d5933244 Author: Peng Huang Date: 2009-12-13 09:59:00 +0800 Remove qt immodule source code D client/qt3/ibus-client.cpp D client/qt3/ibus-client.h D client/qt3/ibus-input-context.cpp D client/qt3/ibus-input-context.h D client/qt3/im-ibus-qt.cpp D client/qt4/.gitignore D client/qt4/Makefile.am D client/qt4/ibus-client.cpp D client/qt4/ibus-client.h D client/qt4/ibus-input-context.cpp D client/qt4/ibus-input-context.h D client/qt4/ibus.pro D client/qt4/im-ibus-qt.cpp M configure.ac M ibus.spec.in commit 1259c054ab4e1bd37b348d43325738de6b8bbdf2 Author: Peng Huang Date: 2009-12-12 14:30:56 +0800 Add ibus.pot into gitignore M po/.gitignore commit 7f7a29a70f3bff0a968fdefc94903e8a58418cf9 Author: Peng Huang Date: 2009-12-12 14:29:21 +0800 Add property orientation of IBusLookupTable. M ibus/common.py M ibus/lookuptable.py M src/ibuslookuptable.c M src/ibuslookuptable.h M src/ibustypes.h commit 2effc2aa01d1dd99f736075c12b5de15d070e8bf Author: Peng Huang Date: 2009-12-12 13:34:57 +0800 Use g_assert to replace some g_return_ M src/ibusattribute.c M src/ibusproperty.c commit 233d33874f8105a9656b235d6e3b07b76fcf7803 Author: Peng Huang Date: 2009-12-12 13:25:55 +0800 Use g_assert to replace some g_return_if_fail M src/ibuslookuptable.c commit 485502020a18870fb83717d3ff45c499fadf2a57 Author: Peng Huang Date: 2009-12-12 13:23:49 +0800 Add setter and getter for IBusLookupTable->round M src/ibuslookuptable.c M src/ibuslookuptable.h commit 52f4a8ee785ccd6a1e2e3eec72305d9b6f50af67 Author: Peng Huang Date: 2009-12-11 22:35:33 +0800 Update es.po from daniel cabrera M po/es.po commit 07f37d27a7f5a5d93f9d690e123592ff9fa37d90 Author: Peng Huang Date: 2009-12-11 20:47:15 +0800 Update as.po from Amitakhya Phukan M po/as.po commit 8f3bb8e840941448c03dbde0c7fa99f3b6f5be4a Author: Peng Huang Date: 2009-12-11 15:46:56 +0800 Use gettext replace locale M ui/gtk/Makefile.am M ui/gtk/ibus-ui-gtk.in M ui/gtk/main.py commit 1e150708c942de094ca7d1582546b36ddcc17d05 Author: Peng Huang Date: 2009-12-11 15:29:59 +0800 Add ibus_lookup_table_get_number_of_candidates M src/ibuslookuptable.c M src/ibuslookuptable.h commit 5c41d02dfa9b17457d0dc77ab31785cf0441d3bd Author: Peng Huang Date: 2009-12-11 15:29:45 +0800 Fix build error in bsd M bus/main.c commit 4a950b9e63775beaa12f24d1cd3c43f8bbbf7f3b Author: Peng Huang Date: 2009-12-11 15:11:35 +0800 Fix typo. M ibus/_config.py.in M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit 6c2fb8c081d936d1bc2ceb26f2111fd7ec7b0de9 Author: Peng Huang Date: 2009-12-10 20:15:16 +0800 Update kn.po from Shankar Prasad Venkateshbhat M po/kn.po commit c27745189ba77a29be1cfff5a6ef848551c8d3d9 Author: Peng Huang Date: 2009-12-10 16:31:18 +0800 Change file mode. M debian/rules commit 36a7755099d3888105b1a156b82e3c40e66410fc Author: Peng Huang Date: 2009-12-10 16:30:36 +0800 Use correct GType to replace gint M src/ibusconfigprivate.h commit ed0623375526ca560b93f273aeaae592c78054c8 Author: Peng Huang Date: 2009-12-10 16:18:05 +0800 Remove ibus.pot file. D po/ibus.pot commit 7b1954516aa7c048ef7914d3516b75b72810bbf2 Author: Peng Huang Date: 2009-12-10 16:16:21 +0800 Touch ChangeLog in autogen.sh. M autogen.sh commit 4a6b0fc71454c495be7480fb8016b5965d66fa35 Author: Peng Huang Date: 2009-12-10 15:24:38 +0800 Update te.po from Krishnababu Krothapalli M po/te.po commit f1053036156245887fd9e031d9d5427dd146ddb3 Author: Peng Huang Date: 2009-12-10 07:54:49 +0800 Update de.po from Hedda Peters M po/de.po commit f5be96a8ad885d38598ea95dd46d8e4f6b9c3b04 Author: Peng Huang Date: 2009-12-10 07:37:52 +0800 Update it.po from Francesco Valente M po/it.po commit e400f03d84a17896d2ecb98fc6b88399ff808cff Author: Peng Huang Date: 2009-12-09 21:52:44 +0800 Update mr.po from sandeep shedmake M po/mr.po commit 80de02f3825df95f2e85481a66531c8ca4f4b21b Author: Peng Huang Date: 2009-12-09 21:51:00 +0800 Fix build error for rpm M src/Makefile.am commit cae9cf027e0b52411c3e27304a30b5826f7f523d Author: Peng Huang Date: 2009-12-09 21:47:09 +0800 Fix some warnings in ibus document M src/ibusinputcontext.h M src/ibuspanelservice.h commit 87523477c2ad6375ce6cb898fa74eb7f6592ace6 Author: Peng Huang Date: 2009-12-09 21:33:07 +0800 Add document about IBUS_CAP_SURROUNDING_TEXT M src/ibustypes.h commit 71286a807c8d0d2d9cd2808461ae332edbf9f8f0 Author: Peng Huang Date: 2009-12-09 21:33:00 +0800 Fix build warning M src/test-bus.c commit a872035ff00d05309b6b1545f7f62c521f53cabc Author: Peng Huang Date: 2009-12-09 19:29:08 +0800 Update ta.po from Felix M po/ta.po commit 953551a3bd5ae8e9b6b83fcd06799944ff231cb2 Author: Peng Huang Date: 2009-12-09 13:18:17 +0800 Update pa.po from Jaswinder Singh M po/pa.po commit 057b75f8160e3a2ff840ea21fce0084758681850 Author: Peng Huang Date: 2009-12-09 06:44:46 +0800 Update vi.po Lê Quốc Tuấn M po/vi.po commit 83129254fac22bdb62037d34eea7386a5b5ccd33 Author: Peng Huang Date: 2009-12-08 17:29:14 +0800 Implemented some methods of IBusBus and IBusInputContext from yusukes@chromium.org M src/Makefile.am M src/ibusbus.c M src/ibusinputcontext.c M src/ibusinputcontext.h M src/test-bus.c commit 129c6d6d5c96a1c3beff1a3c1920a262186658b7 Author: Peng Huang Date: 2009-12-08 16:11:57 +0800 Update hi.po from Rajesh Ranjan M po/hi.po commit 31ab5a5fea9ab3bcf9801408ea48aa1a91b739ed Author: Peng Huang Date: 2009-12-08 11:16:40 +0800 Update bn_IN.po from Runa Bhattacharjee M po/bn_IN.po commit 80e2e6b89c00837437d0c19b9b6481cda53d4d5a Author: Peng Huang Date: 2009-12-07 19:07:55 +0800 Update gu.po from Sweta Kothari M po/gu.po commit 08c2118064163dcacee738c903fb12df5a246469 Author: Peng Huang Date: 2009-12-07 06:51:42 +0800 Update po files. M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/ibus.pot M po/it.po M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit c97856b3d6368f7029c9f1bd578af087dbaf99d2 Author: Peng Huang Date: 2009-12-07 06:51:23 +0800 Update es.po from Domingo Becker M po/es.po commit cd492ae8be91a7dbb9e9d62ee10d2fe564545a82 Author: Peng Huang Date: 2009-12-07 06:49:40 +0800 Fix the typo. M data/ibus.schemas.in commit 8b2fce304a55cb07da51bb0198abfb90fc010daa Author: Peng Huang Date: 2009-12-06 08:11:57 +0800 Avoid calling ibus_message_is_signal in loop. M bus/engineproxy.c commit 1bafbd10fc15ba3a53a317a9899b139145ce29b4 Author: Peng Huang Date: 2009-12-06 08:00:59 +0800 Refine code, and remove goto statements. M src/ibusengine.c commit ce4873dd2c9349e0fa31efdbf3c113237fa21393 Author: Peng Huang Date: 2009-12-05 19:42:46 +0800 Do not use deprecated Tooltips M po/ibus.pot M po/zh_CN.po M ui/gtk/candidatepanel.py commit 918d0b4dc706c230f42909a2410f1d646d57f3ef Author: Peng Huang Date: 2009-12-05 19:31:31 +0800 Fix a typo. M src/ibusinputcontext.c commit 837692d4a6d09c0142a5eedd20faf8fa7bc1f1a4 Author: Peng Huang Date: 2009-12-05 19:22:22 +0800 Change lib version info back. M configure.ac commit e643c74f5df52c7b51e3ba4f01801c78f4b038fc Author: Peng Huang Date: 2009-12-05 15:44:34 +0800 Use offset of member function in IBusPanelServiceClass. M src/ibuspanelservice.c commit 01d50beafcbb2cf404c128c8478a1dbbc670f6ca Author: Peng Huang Date: 2009-12-05 15:16:02 +0800 Add panel class from Satoru M src/Makefile.am A src/ibuspanelservice.c A src/ibuspanelservice.h commit 8c29821f9fea969f1979406221ad42d43baa4b2d Author: Peng Huang Date: 2009-12-05 18:30:44 +0800 Remove some goto statement M src/ibusconnection.c M src/ibusengine.c M src/ibusinputcontext.c M src/ibusxml.c commit 348b8c98eb7e509549c7d012bd221f6b01d5f1af Author: Peng Huang Date: 2009-12-05 17:17:33 +0800 Adjust the condition test order to get better performance M src/ibusengine.c M src/ibusinputcontext.c commit b3d54e82d4bca1420cbcae20dc8a15844655b0c0 Author: Peng Huang Date: 2009-12-05 17:08:03 +0800 Avoid using ibus_message_is in loop to get better performance. M src/ibusengine.c M src/ibusinputcontext.c commit 51a6ff5d19e1639592e2b41fdbb0da749502e660 Author: Peng Huang Date: 2009-12-05 16:55:31 +0800 Fix typo M src/ibusmessage.h commit b57aac8eb2157a3720c36f9a2de81409c6d234ca Author: Peng Huang Date: 2009-12-05 12:21:28 +0800 Add age of lib version M configure.ac commit 89521b240ca3ff519488fbcb0c4f04c7d3ea83c1 Merge: 7a9f000a c57f7dd9 Author: Peng Huang Date: 2009-12-05 12:15:00 +0800 Merge remote branch 'hindlemail/master' commit c57f7dd9dc06512ac3ab1a6792afe1e0c294dca2 Author: tom hindle Date: 2009-12-04 18:38:48 -0700 Added python client code for CurrentInputContext method M ibus/bus.py M ibus/interface/iibus.py commit 33a07df73f4cdf48cd4b979c4ef2333554466bd4 Author: tom hindle Date: 2009-12-04 18:38:41 -0700 Added c client side code for CurrentInputContext method M src/ibusbus.c M src/ibusbus.h commit 1c10d9fca8759495c7d6b6e1b2630a6fdee3d6ce Author: tom hindle Date: 2009-12-04 18:38:20 -0700 Added CurrentInputContext method M bus/ibusimpl.c commit 7a9f000aa6b4d8677179a17b1a61ccc94d9d1808 Author: Peng Huang Date: 2009-12-05 08:42:28 +0800 Update fr.po from Julroy67 M po/fr.po commit 6ff956dc491cec33d0059ad16f93671a6c0c6222 Author: Peng Huang Date: 2009-12-04 23:05:19 +0800 Refine coding style. M src/ibusengine.c commit 97ff497f1a40f2d7b3d63a0fc8c87019b90ae6b8 Author: Peng Huang Date: 2009-12-04 15:52:57 +0800 Move panel into the screen if the screen become small. M ui/gtk/languagebar.py M ui/gtk/panel.py commit d2792de2f01bae5bf380dba02636d73cc967f3e1 Author: Peng Huang Date: 2009-12-04 11:27:39 +0800 Fix problem with forward key event M client/x11/main.c commit 0dbc1252cd6e723cad776a5d76861c08d4ba2133 Author: Peng Huang Date: 2009-12-04 11:24:24 +0800 Add it.po from Milo Casagrande M AUTHORS M po/LINGUAS A po/it.po commit bbd1d1d8573ac14bc73b4a0df639f71aae066bae Author: Peng Huang Date: 2009-12-04 10:28:21 +0800 Add delete surrounding text feature. Fix forward key event. Developed by Doug Rintoul Thanks for Doug Rintoul M bus/engineproxy.c M bus/inputcontext.c M client/gtk2/ibusimcontext.c M client/x11/main.c M src/ibusengine.c M src/ibusinputcontext.c M src/ibusmarshalers.list M src/ibustypes.h commit 80946b75ffa111de77d6c83d70373296bbce77f0 Author: Peng Huang Date: 2009-11-30 10:34:43 +0800 Remove tooltip for AuxString M ui/gtk/candidatepanel.py commit 0cee090020bb71156a11d8f8f85514de30ea9734 Author: Peng Huang Date: 2009-11-29 22:51:51 +0800 Return correct address in _ibus_get_address M bus/ibusimpl.c commit 4294a7a6351cb0b3ca7ce97d14da68ebda93f9fb Author: Peng Huang Date: 2009-11-29 22:43:31 +0800 Remove unused code. M src/ibusbus.c commit 819199427fecd2c03557b36404d3fe63ce2ad8d5 Author: Peng Huang Date: 2009-11-28 15:45:50 +0800 Update translate msgs M data/ibus.schemas.in M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/ibus.pot M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit 89a1e54e0761d7d4d0bb5c3ac3dd6c6893ab2c68 Author: Peng Huang Date: 2009-11-28 15:38:41 +0800 Remember panel position M data/ibus.schemas.in M setup/main.py M setup/setup.ui M ui/gtk/languagebar.py M ui/gtk/panel.py commit 234e7f3768e8f4e8252bcf473fc199af971f0b9d Author: Peng Huang Date: 2009-11-27 16:45:58 +0800 Update ja.po by Fujiwarat M po/ja.po commit a1508b9d78311e9cf23bcdf07b00441186030864 Author: Peng Huang Date: 2009-11-25 12:49:24 +0800 Do not set engine if focus_ic is None M ui/gtk/panel.py commit 4d66a8cb4c8b2462cb9621401454d7b7369b758c Author: Peng Huang Date: 2009-11-24 11:10:57 +0800 Adjust some code order. M src/ibusconnection.c commit a3098789ff716ccc0c4b6c6211492ff586066158 Author: Peng Huang Date: 2009-11-24 11:06:06 +0800 Do not crash when bus is disconnected. M src/ibusbus.c commit cfcc63c927502501b069ca8a0556c636e61a5598 Author: Peng Huang Date: 2009-11-24 10:56:03 +0800 Do not abort when connection is closed. M src/ibusconnection.c commit d8541c58f5564f7f766ade13f6366de3017707d6 Author: Peng Huang Date: 2009-11-16 15:18:40 +1000 Update te.po from Krishnababu Krothapalli M po/te.po commit d8c129b99a8d459765a120c30b79906610aa21c9 Author: Peng Huang Date: 2009-11-16 15:17:31 +1000 Update hi.po from Rajesh Ranjan M po/hi.po commit c9584c322f56cff832050d3c1ff04839ec1dfbdd Author: Peng Huang Date: 2009-11-16 15:16:27 +1000 Update or.po from Manoj Giri M po/or.po commit d53ceb0123e158849f57a3c181853a2387877665 Author: Peng Huang Date: 2009-11-16 15:14:57 +1000 Update ta.po by Felix M po/ta.po commit 2fcf990fd447a9cb9a7a1a5b49d1365f8e8142bb Author: Peng Huang Date: 2009-11-12 18:17:29 +1000 Fix compile error. M src/ibusbus.c commit 5b358d8f1ddf425278706171d321b5dc2a5f8e94 Author: Peng Huang Date: 2009-11-12 14:31:09 +1000 Check CREATED event M src/ibusbus.c commit 0058d0f6a91b78845b3a9831b74a7fd2050a5ccf Merge: 4b2c6ed7 d494b47e Author: Peng Huang Date: 2009-11-12 08:38:08 +1000 Merge remote branch 'XueWei/master' commit d494b47eea331b8bc06c03dd06be24adb72149ce Author: william Date: 2009-11-12 00:08:26 +0800 Fixed on Solaris cannot re-connect after ibus-daemon restart. M src/ibusbus.c commit 4b2c6ed7c52e24f019e9ea6167c0d570be781c65 Author: Peng Huang Date: 2009-10-25 07:44:01 +0800 Update es.po from Domingo Becker M po/es.po commit 29a2503e4b47f41e4596fbc2124d425f789ca368 Author: Peng Huang Date: 2009-10-24 11:23:29 +0800 Fix problem in POTFILES.in M po/POTFILES.in M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/ibus.pot M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit 1da3d970c145e4b10059346754851afcacb5d10d Author: Peng Huang Date: 2009-10-24 11:16:29 +0800 Add mkinstalldirs in .gitingore M .gitignore commit 67939f0b1d678bcbbeaf510b0f8d368f438b11b9 Author: Peng Huang Date: 2009-10-24 07:30:07 +0800 Update pl.po from Piotr Drąg M po/pl.po commit 2a2566b68d671469e7291306185c9ef1180ff139 Author: Peng Huang Date: 2009-10-23 15:58:14 +0800 Modify copying information M AUTHORS M README M client/qt4/ibus.pro M configure.ac M doc/specification M ibus/_config.py.in M po/Makevars M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/ibus.pot M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/ibus-setup.in M src/ibuskeysyms-update.pl M src/ibusversion.h.in M ui/gtk/ibus-ui-gtk.in commit 8b2b2613e13258d7535bf09e818aebe9361ba52b Author: Peng Huang Date: 2009-10-23 14:42:16 +0800 Add Copying for Red Hat M Makefile.am M bindings/Makefile.am M bindings/python/Makefile.am M bus/Makefile.am M bus/connection.c M bus/connection.h M bus/dbusimpl.c M bus/dbusimpl.h M bus/engineproxy.c M bus/engineproxy.h M bus/factoryproxy.c M bus/factoryproxy.h M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M bus/inputcontext.h M bus/main.c M bus/matchrule.c M bus/matchrule.h M bus/option.h M bus/panelproxy.c M bus/panelproxy.h M bus/registry.c M bus/registry.h M bus/server.c M bus/server.h M client/Makefile.am M client/gtk2/Makefile.am M client/gtk2/ibusim.c M client/gtk2/ibusimcontext.c M client/gtk2/ibusimcontext.h M client/qt4/Makefile.am M client/qt4/ibus-client.cpp M client/qt4/ibus-client.h M client/qt4/ibus-input-context.cpp M client/qt4/ibus-input-context.h M client/qt4/im-ibus-qt.cpp M client/x11/Makefile.am M client/x11/gdk-private.c M client/x11/gdk-private.h M client/x11/main.c M data/Makefile.am M data/icons/Makefile.am M data/keymaps/Makefile.am M docs/Makefile.am M docs/reference/Makefile.am M gconf/Makefile.am M ibus/Makefile.am M ibus/__init__.py M ibus/_config.py.in M ibus/_gtk.py M ibus/application.py M ibus/attribute.py M ibus/bus.py M ibus/common.py M ibus/component.py M ibus/config.py M ibus/engine.py M ibus/enginedesc.py M ibus/exception.py M ibus/factory.py M ibus/inputcontext.py M ibus/interface/Makefile.am M ibus/interface/__init__.py M ibus/interface/iconfig.py M ibus/interface/iengine.py M ibus/interface/ienginefactory.py M ibus/interface/iibus.py M ibus/interface/iinputcontext.py M ibus/interface/inotifications.py M ibus/interface/ipanel.py M ibus/lang.py M ibus/lookuptable.py M ibus/modifier.py M ibus/notifications.py M ibus/object.py M ibus/observedpath.py M ibus/panel.py M ibus/property.py M ibus/serializable.py M ibus/text.py M ibus/utility.py M m4/Makefile.am M setup/Makefile.am M setup/enginecombobox.py M setup/enginetreeview.py M setup/icon.py M setup/keyboardshortcut.py M setup/main.py M src/Makefile.am M src/ibus.h M src/ibusattribute.c M src/ibusattribute.h M src/ibusbus.c M src/ibusbus.h M src/ibuscomponent.c M src/ibuscomponent.h M src/ibusconfig.c M src/ibusconfig.h M src/ibusconfigprivate.h M src/ibusconfigservice.c M src/ibusconfigservice.h M src/ibusconnection.c M src/ibusconnection.h M src/ibusdebug.h M src/ibusengine.c M src/ibusengine.h M src/ibusenginedesc.c M src/ibusenginedesc.h M src/ibuserror.c M src/ibuserror.h M src/ibusfactory.c M src/ibusfactory.h M src/ibushotkey.c M src/ibushotkey.h M src/ibusinputcontext.c M src/ibusinputcontext.h M src/ibusinternal.h M src/ibuskeymap.c M src/ibuskeymap.h M src/ibuskeysyms.h M src/ibuslookuptable.c M src/ibuslookuptable.h M src/ibusmainloop.c M src/ibusmainloop.h M src/ibusmessage.c M src/ibusmessage.h M src/ibusobject.c M src/ibusobject.h M src/ibusobservedpath.c M src/ibusobservedpath.h M src/ibuspendingcall.c M src/ibuspendingcall.h M src/ibusproperty.c M src/ibusproperty.h M src/ibusproxy.c M src/ibusproxy.h M src/ibusserializable.c M src/ibusserializable.h M src/ibusserver.c M src/ibusserver.h M src/ibusservice.c M src/ibusservice.h M src/ibusshare.c M src/ibusshare.h M src/ibustext.c M src/ibustext.h M src/ibustypes.h M src/ibusxml.c M src/ibusxml.h M ui/Makefile.am M ui/gtk/Makefile.am M ui/gtk/candidatepanel.py M ui/gtk/engineabout.py M ui/gtk/handle.py M ui/gtk/icon.py M ui/gtk/languagebar.py M ui/gtk/main.py M ui/gtk/menu.py M ui/gtk/notifications.py M ui/gtk/panel.py M ui/gtk/propitem.py M ui/gtk/toolitem.py M util/IMdkit/Makefile.am M util/Makefile.am commit 95493e7c2a24898d5eaafd9c5cb2177afb2fec29 Author: Peng Huang Date: 2009-10-23 14:17:30 +0800 Change file header M Makefile.am M bindings/Makefile.am M bindings/python/Makefile.am M bus/Makefile.am M bus/connection.c M bus/connection.h M bus/dbusimpl.c M bus/dbusimpl.h M bus/engineproxy.c M bus/engineproxy.h M bus/factoryproxy.c M bus/factoryproxy.h M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M bus/inputcontext.h M bus/main.c M bus/matchrule.c M bus/matchrule.h M bus/option.h M bus/panelproxy.c M bus/panelproxy.h M bus/registry.c M bus/registry.h M bus/server.c M bus/server.h M client/Makefile.am M client/gtk2/Makefile.am M client/gtk2/ibusim.c M client/gtk2/ibusimcontext.c M client/gtk2/ibusimcontext.h M client/qt4/Makefile.am M client/qt4/ibus-client.cpp M client/qt4/ibus-client.h M client/qt4/ibus-input-context.cpp M client/qt4/ibus-input-context.h M client/qt4/im-ibus-qt.cpp M client/x11/Makefile.am M client/x11/gdk-private.c M client/x11/gdk-private.h M client/x11/main.c M data/Makefile.am M data/icons/Makefile.am M data/keymaps/Makefile.am M docs/Makefile.am M docs/reference/Makefile.am M gconf/Makefile.am M ibus/Makefile.am M ibus/__init__.py M ibus/_config.py.in M ibus/_gtk.py M ibus/application.py M ibus/attribute.py M ibus/bus.py M ibus/common.py M ibus/component.py M ibus/config.py M ibus/engine.py M ibus/enginedesc.py M ibus/exception.py M ibus/factory.py M ibus/inputcontext.py M ibus/interface/Makefile.am M ibus/interface/__init__.py M ibus/interface/iconfig.py M ibus/interface/iengine.py M ibus/interface/ienginefactory.py M ibus/interface/iibus.py M ibus/interface/iinputcontext.py M ibus/interface/inotifications.py M ibus/interface/ipanel.py M ibus/lang.py M ibus/lookuptable.py M ibus/modifier.py M ibus/notifications.py M ibus/object.py M ibus/observedpath.py M ibus/panel.py M ibus/property.py M ibus/serializable.py M ibus/text.py M ibus/utility.py M m4/Makefile.am M po/POTFILES.in M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/ibus.pot M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/Makefile.am M setup/enginecombobox.py M setup/enginetreeview.py M setup/icon.py M setup/keyboardshortcut.py M setup/main.py M src/Makefile.am M src/ibus.h M src/ibusattribute.c M src/ibusattribute.h M src/ibusbus.c M src/ibusbus.h M src/ibuscomponent.c M src/ibuscomponent.h M src/ibusconfig.c M src/ibusconfig.h M src/ibusconfigprivate.h M src/ibusconfigservice.c M src/ibusconfigservice.h M src/ibusconnection.c M src/ibusconnection.h M src/ibusdebug.h M src/ibusengine.c M src/ibusengine.h M src/ibusenginedesc.c M src/ibusenginedesc.h M src/ibuserror.c M src/ibuserror.h M src/ibusfactory.c M src/ibusfactory.h M src/ibushotkey.c M src/ibushotkey.h M src/ibusinputcontext.c M src/ibusinputcontext.h M src/ibusinternal.h M src/ibuskeymap.c M src/ibuskeymap.h M src/ibuskeysyms.h M src/ibuslookuptable.c M src/ibuslookuptable.h M src/ibusmainloop.c M src/ibusmainloop.h M src/ibusmessage.c M src/ibusmessage.h M src/ibusobject.c M src/ibusobject.h M src/ibusobservedpath.c M src/ibusobservedpath.h M src/ibuspendingcall.c M src/ibuspendingcall.h M src/ibusproperty.c M src/ibusproperty.h M src/ibusproxy.c M src/ibusproxy.h M src/ibusserializable.c M src/ibusserializable.h M src/ibusserver.c M src/ibusserver.h M src/ibusservice.c M src/ibusservice.h M src/ibusshare.c M src/ibusshare.h M src/ibustext.c M src/ibustext.h M src/ibustypes.h M src/ibusxml.c M src/ibusxml.h M ui/Makefile.am M ui/gtk/Makefile.am M ui/gtk/candidatepanel.py M ui/gtk/engineabout.py M ui/gtk/handle.py M ui/gtk/icon.py M ui/gtk/languagebar.py M ui/gtk/main.py M ui/gtk/menu.py M ui/gtk/notifications.py M ui/gtk/panel.py M ui/gtk/propitem.py M ui/gtk/toolitem.py M util/IMdkit/Makefile.am M util/Makefile.am commit 921b29ef089c8cb9fb3fc60b8177ba479e0fb174 Author: Peng Huang Date: 2009-10-20 14:45:28 +0800 Update es.po by Domingo Becker M po/es.po commit 50ad31397479119c02fce6892cd7cb6a6de06531 Author: Peng Huang Date: 2009-10-16 07:58:48 +0800 Change tooltip of shortcut keys. M setup/main.py commit 916f2eb94c56d9f699578a2630b4e20c1b3843fb Author: Peng Huang Date: 2009-10-16 07:22:55 +0800 Update some English strings. M data/ibus.schemas.in M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/ibus.pot M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/setup.ui commit c592ccade047fe82e149399132bd70e7fc05f8f3 Author: Peng Huang Date: 2009-10-15 07:08:23 +0800 Update es.po from daniel cabrera M po/es.po commit dfa70649d00084de5cbb29a1613817d9cb5bbcbc Author: Peng Huang Date: 2009-10-14 14:12:33 +0800 Update ru.po from Alexey Kotlyarov M po/ru.po commit a3a2bc47fb1da462f4df17b9c7bb4c311f832483 Author: Peng Huang Date: 2009-10-14 13:11:38 +0800 Update po files. M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/ibus.pot M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/ru.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit 3b8770ec863615b67d410abc34e379f0b44de259 Author: Peng Huang Date: 2009-10-14 13:11:21 +0800 Update some descriptions text M data/ibus.schemas.in M setup/setup.ui commit 36c6dc76bd83eb4c2fa7f39f00d486a03aeca9f5 Author: Peng Huang Date: 2009-10-14 10:59:16 +0800 Fix show icon on systray option M setup/main.py commit fe6bb742651bc50bae0c26dd80073d0442bd4042 Author: Peng Huang Date: 2009-10-14 09:32:41 +0800 Update ja.po M po/ja.po commit e3955616b1fb15152478dc99a8b81c6b9b345212 Author: Peng Huang Date: 2009-10-14 09:26:18 +0800 Update fr.po from julroy67 M po/fr.po commit 3de9055a53185309885ede71824677fc78fa3aee Author: Peng Huang Date: 2009-10-13 14:15:57 +0800 Dont need set "" to icon anymore. M src/ibusproperty.c commit 18d497a03d58b694f5713be41dc8cdef705a0326 Author: Peng Huang Date: 2009-10-13 14:11:46 +0800 Do not crash if append NULL string to IBusMessage. M src/ibusenginedesc.c M src/ibusmessage.c commit 563b82f8ea37bbcda78d40701dec667137e3c234 Author: Peng Huang Date: 2009-10-13 10:22:06 +0800 Update some icons. R100 data/icons/16/ibus-off.png data/icons/16/ibus-keyboard.png R100 data/icons/22/ibus-off.png data/icons/22/ibus-keyboard.png R100 data/icons/24/ibus-off.png data/icons/24/ibus-keyboard.png R100 data/icons/32/ibus-off.png data/icons/32/ibus-keyboard.png R100 data/icons/48/ibus-off.png data/icons/48/ibus-keyboard.png M data/icons/Makefile.am D data/icons/ibus-off.svg R100 data/icons/ibus-engine.svg data/icons/scalable/ibus-engine.svg R100 data/icons/scalable/ibus-off.svg data/icons/scalable/ibus-keyboard.svg R100 data/icons/ibus-setup.svg data/icons/scalable/ibus-setup.svg R100 data/icons/ibus.svg data/icons/scalable/ibus.svg M ibus.spec.in M setup/setup.ui M ui/gtk/panel.py commit 9c81b2d7974a135075aa9be4d5dcdb49bc9bbb4f Author: Peng Huang Date: 2009-10-13 10:03:34 +0800 Update some icons. M data/icons/ibus-engine.svg M data/icons/ibus-setup.svg commit e00cf06ca3248478b6b98bc24edea695d3c38e2b Author: Peng Huang Date: 2009-10-13 08:30:29 +0800 Update po files M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/ibus.pot M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit 9d6faacab96ec30678556ddc7a8670306855b09d Author: Peng Huang Date: 2009-10-13 08:30:17 +0800 Add ru.po from koterpillar M AUTHORS M po/LINGUAS A po/ru.po commit 289c8fd7480c05eac28cc806099202676f461d55 Author: Peng Huang Date: 2009-10-10 16:06:21 +0800 Use ibus-engine as default icon for engine M setup/enginecombobox.py M setup/enginetreeview.py M ui/gtk/engineabout.py commit ecc591e78defcf65b7ec073c3c2f2d10ff7f10b6 Author: Peng Huang Date: 2009-10-10 16:01:49 +0800 Update ibus-engine.svg M data/icons/ibus-engine.svg commit 4d50b88437ab9f503724f8278c7fc08e2077ee94 Author: Peng Huang Date: 2009-10-10 15:57:49 +0800 Update ibus-setup.svg T data/icons/ibus-setup.svg commit 520ece79238373d87480cd15bafdde2568a44b6e Author: Peng Huang Date: 2009-10-10 13:48:59 +0800 Remove unused code. M setup/main.py commit 7aef3c3efb2653af2ecc93f8350f9c5c95e92ac7 Author: Peng Huang Date: 2009-10-10 13:47:33 +0800 Remove setup.glade M setup/Makefile.am D setup/setup.glade commit 2806c626f47bd15c4cf8168166d66aa9d2f86a61 Author: Peng Huang Date: 2009-10-10 13:44:33 +0800 Use gnome-autogen.sh M autogen.sh M configure.ac M src/Makefile.am commit 9c98bfc23772bd92388c94c23f3ee90c0e4dd82a Author: Peng Huang Date: 2009-10-10 13:37:04 +0800 Update po files. M po/POTFILES.in M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/ibus.pot M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit 1a6b0f4b13b055571a54daa6c3fd121f534011bf Author: Peng Huang Date: 2009-10-10 11:34:30 +0800 Fix some problems. M setup/main.py M setup/setup.ui commit 5c64d26273fae00360347e9da1efa486396be1f8 Author: Xingshen Luo Date: 2009-10-10 11:29:35 +0800 migrate from libglade to libgtkbuilder M setup/main.py A setup/setup.ui commit c8f1385638e66e7c96fce82988ee1dd7995efde8 Author: Peng Huang Date: 2009-10-10 07:53:47 +0800 Change .ibus to ibus M bus/registry.c commit 0cecc08f0dc547f1431d0e1d4efe2fbb66d1f672 Author: Peng Huang Date: 2009-10-10 07:47:01 +0800 use XDG floder. M bus/registry.c commit 7366591b9673450315efc97d1b5000a2628137ea Author: Peng Huang Date: 2009-10-10 07:23:54 +0800 Move all tmp file to ~/.config/ibus M src/ibusshare.c commit 797248a19b88833fe00a46a0c8c926a15df093c5 Author: Peng Huang Date: 2009-10-09 19:30:10 +0800 Update zh_CN.po M po/zh_CN.po commit 8dd8a11667e1dd5e2c1f821a70fb3c6d99f8c784 Author: Peng Huang Date: 2009-10-09 07:35:00 +0800 Add option to show/hide icon on system tray M data/ibus.schemas.in M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/ibus.pot M po/ja.po M po/kn.po M po/ko.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/main.py M setup/setup.glade M ui/gtk/panel.py commit ee8685e8b7c71a7b3fc3551e0590d9d0835e64a1 Author: Peng Huang Date: 2009-10-04 08:03:02 +0800 Put all files in $(HOME)/.ibus M bus/registry.c M src/ibusshare.c commit 55971a86028f3d3856cac8508db9b88a9502dc1f Author: Peng Huang Date: 2009-10-04 07:19:15 +0800 Update pl.po from Piotr Drąg M po/pl.po commit 9df6be63e0aa76867ce81b5e383d23b737167709 Author: Peng Huang Date: 2009-10-03 10:12:46 +0800 Use 2 second as default timeout M bus/main.c commit 8d630d2c1725264056adf0a07683cff5035536ad Author: Peng Huang Date: 2009-10-03 10:11:59 +0800 Add --timeout option. M bus/Makefile.am M bus/engineproxy.c M bus/factoryproxy.c M bus/ibusimpl.c M bus/main.c A bus/option.h M bus/registry.c commit 90bd8060ecb83a86dccc8662389736e12563cbe0 Author: Peng Huang Date: 2009-10-03 06:54:44 +0800 Build rpm in subfolder M .gitignore M Makefile.am commit ad718c65b5088308036baf50079ef8c753f3abdc Author: Peng Huang Date: 2009-09-30 13:38:58 +0800 Restore ibus.pot A po/ibus.pot commit fd1fe90c0d71f5e721efbf69a6630542afc9176c Author: Peng Huang Date: 2009-09-30 13:36:19 +0800 Update debian packaging scripts from ubuntu D debian/README.Debian M debian/changelog A debian/clean M debian/compat M debian/control M debian/copyright D debian/cron.d.ex D debian/dirs M debian/docs D debian/emacsen-install.ex D debian/emacsen-remove.ex D debian/emacsen-startup.ex A debian/ibus-daemon.1 D debian/ibus-default.ex A debian/ibus-gconf.1 A debian/ibus-gtk.install A debian/ibus-setup.1 A debian/ibus-ui-gtk.1 A debian/ibus-x11.1 A debian/ibus.1 D debian/ibus.doc-base.EX A debian/ibus.install A debian/ibus.manpages A debian/ibus.postinst A debian/ibus.prerm D debian/im-switch/ibus D debian/init.d.ex D debian/init.d.lsb.ex A debian/libibus-dev.install A debian/libibus1.install A debian/libibus1.symbols D debian/manpage.1.ex D debian/manpage.sgml.ex D debian/manpage.xml.ex D debian/menu.ex D debian/postinst D debian/postinst.ex D debian/postrm.ex D debian/preinst.ex D debian/prerm D debian/prerm.ex A debian/python-ibus.install A debian/pyversions M debian/rules A debian/watch D debian/watch.ex A debian/xinput/ibus D po/ibus.pot commit 9c96cfcd5c94125cc2ff84830748bec876dd11cb Author: Ding-Yi Chen Date: 2009-09-28 09:47:48 +1000 Update zh_TW.po M po/zh_TW.po commit 08289ea083a0793ce7818b27ae2910e704d80ccc Author: Peng Huang Date: 2009-09-16 15:33:24 +0800 Restore ibus.pot A po/ibus.pot commit c03249bd8ac36b542ab93fd767a6e7bc9d2359d5 Author: Ding-Yi Chen Date: 2009-08-31 18:09:49 +1000 Modify APIDOC chapters. APIDOC IBusServer D po/ibus.pot commit c51a34c296b23e8a2607c056ee0d046fd3269d78 Author: Peng Huang Date: 2009-09-27 15:06:00 +0800 Update zh_TW.po M po/zh_TW.po commit a2a5aa15bd38dd7d0ab43c9e4b464861977074a9 Author: Peng Huang Date: 2009-09-27 13:33:49 +0800 Write empty string instead "(null) in xml. M src/ibusenginedesc.c commit dbe90576e6980b05c8777c79719c2c80c96cd9b3 Author: Peng Huang Date: 2009-09-25 14:17:53 +0800 Update pa.po from A S Alam M po/pa.po commit 1674211fc8b5fe8ec3ecebf20d89c0ca3fba5f99 Author: Peng Huang Date: 2009-09-24 15:45:53 +0800 Update zh_CN.po M po/zh_CN.po commit 8b97e9ecbad917af69fd4f70af7ad305d44e48ee Author: Peng Huang Date: 2009-09-22 13:01:42 +0800 Fix restart problem in Unix M bus/Makefile.am M bus/ibusimpl.c commit 68206ef43cd0e7b7b441821bacf85da4774bb0d5 Author: Peng Huang Date: 2009-09-20 07:54:25 +0800 Update ca.po by Xavi Conde M po/ca.po commit a58dbb8b6ef693a086006a797c569571dfa61b9d Author: Peng Huang Date: 2009-09-19 15:17:35 +0800 Update one string. M po/zh_CN.po commit 8e465a32567bc16eae33e56fbd75f8bb41d037d8 Author: Peng Huang Date: 2009-09-16 16:09:45 +0800 Supports G_TYPE_LONG and G_TYPE_ULONG in ibus_message_iter_get M src/ibusmessage.c commit d922542114b11a2489967e34ceb66a610e43b453 Author: Peng Huang Date: 2009-09-16 15:33:24 +0800 Restore ibus.pot A po/ibus.pot commit bbc1f736a4ab818b45e2c3a19d45f100d3e45802 Author: Ding-Yi Chen Date: 2009-09-15 17:55:39 +1000 Correct keymaps/commons: Add KP_Decimal and KP_Divide M data/keymaps/common commit cf28ece8b12de5fe3acf673a7f9a7a5f8b313fae Author: Ding-Yi Chen Date: 2009-08-31 18:09:49 +1000 Modify APIDOC chapters. APIDOC IBusServer M docs/reference/ibus/ibus-docs.sgml D po/ibus.pot M src/ibusmainloop.h M src/ibusserver.c M src/ibusserver.h commit c2157aceb20024b61b22cd27691432ce3925f7a7 Author: Peng Huang Date: 2009-09-12 17:49:37 +0800 Add error underline. M ibus/attribute.py M src/ibusattribute.h commit b559c801479bab0baf3586e3c78bc47f58624526 Author: Peng Huang Date: 2009-09-12 12:53:09 +0800 Update test_client.py M ibus/inputcontext.py M test/test_client.py commit fa348d0a4691ede253d3a203e20498d7bcb973b8 Author: Peng Huang Date: 2009-09-11 11:41:20 +0800 Use GInitiallyUnowned as super parent M src/ibusobject.c M src/ibusobject.h commit 186e0ba948f3070ca52a7ab1eca13331e1c5a8c9 Author: Peng Huang Date: 2009-09-11 06:31:28 +0800 Add ko.po by Eun Ju Kim M AUTHORS M po/LINGUAS A po/ko.po commit 3f570085e9e8cecc74341d47ad07f27569d19290 Author: Peng Huang Date: 2009-09-10 16:40:59 +0800 Rix memory leak in toolitem.py M ui/gtk/toolitem.py commit 36cc87ec7c896708c3cc67dc3573f043a54fa2e4 Author: Peng Huang Date: 2009-09-10 09:09:37 +0800 Update te.po by Krishnababu Krothapalli M po/te.po commit ee19dd0b9a1ea9d11c936796f8f9f5dc4b47eaac Author: Peng Huang Date: 2009-09-09 14:52:35 +0800 Use system layout setting by default. M data/ibus.schemas.in commit b7d9d063ec5ff9b161f13628a649f304db469364 Author: Peng Huang Date: 2009-09-09 14:44:31 +0800 Use defualt icon for some engine without icon M ui/gtk/engineabout.py commit 9331a2a452f5ed2026f9e704c0edd52e952c2649 Author: Peng Huang Date: 2009-09-09 07:12:16 +0800 Update bn_IN.po by Runa Bhattacharjee M po/bn_IN.po commit 464e3736a0211ea6fe0709b4d7550d2008bd6709 Author: Peng Huang Date: 2009-09-08 17:32:16 +0800 Update ja.po M po/ja.po commit bfd5227bbc987c348a122b5ef2774f81d649c2e3 Author: Peng Huang Date: 2009-09-08 16:59:34 +0800 Update ja.po by Fujiwarat M po/ja.po commit 5bb8423124c09f023feb21a200235b97aab21d85 Author: Peng Huang Date: 2009-09-07 19:34:53 +0800 Update kn.po Shankar Prasad Venkateshbhat M po/kn.po commit 194441146c603f530e4d4523b9944afd7d8ee87d Author: Peng Huang Date: 2009-09-04 13:47:12 +0800 Update hi.po by Rajesh Ranjan M po/hi.po commit 51bc1d2bbbefde9906fd26fdef13ca19f5387d49 Author: Peng Huang Date: 2009-09-04 12:05:10 +0800 Add new icons. A data/icons/16/ibus-off.png A data/icons/22/ibus-off.png A data/icons/24/ibus-off.png A data/icons/32/ibus-off.png A data/icons/48/ibus-off.png M data/icons/Makefile.am A data/icons/scalable/ibus-off.svg M ibus.spec.in commit ced70161303a54c02dbb78215918887edab82262 Author: Peng Huang Date: 2009-09-03 21:30:01 +0800 Update gu.po by Sweta Kothari M po/gu.po commit a84a051d9d8d106ab47b96ab073032719b05240c Author: Peng Huang Date: 2009-09-03 21:27:47 +0800 Update ml.po by Ani Peter M po/ml.po commit f774c0d184a9583dc540e969f87bfca3a32c70a6 Author: Peng Huang Date: 2009-09-03 10:22:07 +0800 Update ja.po by Fujiwarat M po/ja.po commit cae9d409e38d7fe3137f9c469a27a76aae8d94ac Author: Peng Huang Date: 2009-09-03 07:09:29 +0800 Update or.po by Manoj Giri M po/or.po commit 75cee9fb96e32766bfb33e4b0e5d7791631a191a Author: Peng Huang Date: 2009-09-02 19:28:47 +0800 Update ta.py by Felix M po/ta.po commit 2ea7f145bda36e72432e0829fa3407adc23b4564 Author: Peng Huang Date: 2009-09-02 16:30:57 +0800 Remove '_' from begin of some keynames start with numbers M ibus/keysyms.py commit 606210b7cf9f8d024a301fd0a21a7f64fb259dd8 Author: Peng Huang Date: 2009-09-02 09:12:16 +0800 Update mr.po by sandeep shedmake M po/mr.po commit d84054c330a0562d8d7f4bd0fe52fac156be07c0 Author: Peng Huang Date: 2009-09-01 13:00:58 +0800 Update vi.po by Lê Quốc Tuấn M po/vi.po commit 1254a61a2c9d5cddb79d77293f365c75a0065e81 Author: Peng Huang Date: 2009-09-01 11:00:54 +0800 Update pl.po by Piotr Drąg M po/pl.po commit a893830a35d2ddc4466d3088caa966dc8cfcbf55 Author: Peng Huang Date: 2009-08-31 15:08:19 +0800 Does not include bindings folder. M Makefile.am M configure.ac commit 58c9159a3db6222f1acdbb9fcf4120f14e0be632 Author: Peng Huang Date: 2009-08-31 15:08:00 +0800 Set icon of about dialog. M ui/gtk/panel.py commit b09f27f817ebd2871cea4fac60473d5d43048c6a Author: Peng Huang Date: 2009-08-31 07:07:28 +0800 Update es.po by Domingo Becker M po/es.po commit c6e4ffeda1a40f985dd3f176f69d495050b4052a Author: Peng Huang Date: 2009-08-31 07:04:31 +0800 Update fr.po by julroy67 M po/fr.po commit b7f4da664ae7ae299d35b8a4c0303473acd8d9c3 Author: Peng Huang Date: 2009-08-29 08:18:37 +0800 Change ibus.svg path in xinput-ibus M xinput-ibus commit f4ee9d7f299b08480831036c973119f52ec4b173 Author: Peng Huang Date: 2009-08-29 08:14:46 +0800 Update po files. M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/ibus.pot M po/ja.po M po/kn.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit faa86f388b5dcc1536431e5478618ab3bbfe21d7 Author: Peng Huang Date: 2009-08-29 08:14:08 +0800 Unify some describions. M data/ibus.schemas.in commit c49067cb890a58250f9e77aeef34261578d42f5b Author: Peng Huang Date: 2009-08-29 06:39:03 +0800 Change timeout of engine reply M bus/engineproxy.c M bus/factoryproxy.c commit f7815b0c66dda855cc229ae2593498620338006c Author: Peng Huang Date: 2009-08-28 18:44:49 +0800 Fix a memory leak. M bus/engineproxy.c commit 99328a4f4ba501e1aed7604c9c687eb9e567738c Author: Peng Huang Date: 2009-08-28 16:58:21 +0800 Add an popup menu when no input window M po/ibus.pot M po/zh_CN.po M ui/gtk/panel.py commit ca911d79e22bf318754f28cfb6104a96f772090d Author: Peng Huang Date: 2009-08-28 16:31:07 +0800 Fix build warnings M src/ibusproperty.c commit 644fb9e22b252c0ef5f0331999b4db40e8d7c9a4 Author: Peng Huang Date: 2009-08-28 16:29:13 +0800 Update inline API document. M src/ibusattribute.h M src/ibuslookuptable.h M src/ibusproperty.h commit cf994c799fad1ef7b29575798d7232bfd309fff2 Author: Peng Huang Date: 2009-08-28 12:55:28 +0800 Remove empty line M src/ibusinputcontext.c commit d8dbd7cda906805c65d8f45c198984db54b428d7 Author: Peng Huang Date: 2009-08-28 11:36:28 +0800 Fix memory leak in ibus-daemon M bus/engineproxy.c commit 4da6b8628e65ced954b0ed5f5c3220194591e106 Author: Peng Huang Date: 2009-08-28 11:36:13 +0800 Fix memory leak in libibus.so M src/ibusattribute.c M src/ibustext.c commit b4acd49576acce9bc73a67dcb8e90d5aacf5f4f4 Author: Peng Huang Date: 2009-08-28 10:55:17 +0800 Fix typos. M ibus/inputcontext.py commit 93e07d55c0094005e5077c8a865cf7112a95a8f1 Author: Peng Huang Date: 2009-08-28 07:19:47 +0800 Add method in inputcontext.py to detach signals. M ibus/inputcontext.py commit 026fd461fcd7f6d7165be8b1198198ab75540fcf Author: Peng Huang Date: 2009-08-27 06:23:37 +0800 Update es.po by Domingo Becker M po/es.po commit 65c0269615e5f2596601dd9c1d2f4e2d170f28c9 Author: Peng Huang Date: 2009-08-26 17:25:29 +0800 Update po files. M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/ibus.pot M po/ja.po M po/kn.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/setup.glade commit 4d7d493e5035f58efeaca2d59253aed456593be5 Author: Peng Huang Date: 2009-08-26 16:57:40 +0800 Rename icon ibus-keyboard to ibus-off M data/icons/Makefile.am R100 data/icons/ibus-keyboard.svg data/icons/ibus-off.svg M ui/gtk/panel.py commit e10aff2bd97dee1cdbc738500936ef2e39132702 Author: Peng Huang Date: 2009-08-26 15:53:29 +0800 Use icon name instead of the icon path in source code. M data/icons/Makefile.am R100 data/icons/engine-default.svg data/icons/ibus-engine.svg M ui/gtk/panel.py commit a2e981a07dde4a7a36a88df452d43ccb31cbfeef Author: Peng Huang Date: 2009-08-26 11:07:15 +0800 Update all po files by 'make update-po' M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/ja.po M po/kn.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/vi.po M po/zh_HK.po M po/zh_TW.po commit b88474d59fd13ef21257230707ccd5fe3754bfc6 Author: Peng Huang Date: 2009-08-26 11:06:42 +0800 Update the label "No input method" M po/.gitignore A po/ibus.pot M ui/gtk/panel.py commit cefdc5806d333fbaab89a7cb0ba607796e1bb24c Author: Peng Huang Date: 2009-08-26 11:03:50 +0800 Update zh_CN.po M po/zh_CN.po commit 418b49dfa47e7711254e34000549e23f83a918cc Author: Peng Huang Date: 2009-08-25 07:26:03 +0800 Update ca.po M po/ca.po commit 168c58770d274d80b8d457b7b55330849424ddfa Author: Peng Huang Date: 2009-08-24 21:24:52 +0800 Fix build error on freebsd M src/test-keymap.c commit 7444c329d719687059280259b12d7bce95150c3d Merge: c06938c8 cca94cfa Author: Peng Huang Date: 2009-08-24 16:11:07 +0800 Merge commit 'definite/master' commit cca94cfa8938e7b07f84ba402a6e33db45b7ea5b Author: Ding-Yi Chen Date: 2009-08-24 17:55:57 +1000 APIDOC: New: IBusSerializable. Revised: IBusAttribute, IBusFactory, IBusObject, IBusObservedPath, IBusProperty M src/ibusattribute.h M src/ibusfactory.h M src/ibusobject.h M src/ibusobservedpath.h M src/ibusproperty.h M src/ibusserializable.c M src/ibusserializable.h commit c06938c850ee199d258a18b63cbaa6d7c186052e Author: Peng Huang Date: 2009-08-24 13:44:59 +0800 Use a symbol link for ibus-keyboard.svg T data/icons/ibus-keyboard.svg commit 8b5ee69eb13365493172257ecf26e566144420d4 Author: Ding-Yi Chen Date: 2009-08-05 17:33:35 +1000 APIDOC IBusPendingCall M src/ibuspendingcall.h commit f2452bfeedf06b4548b3d905a18e3147358eb13a Author: Ding-Yi Chen Date: 2009-08-03 18:06:06 +1000 APIDOC: IBusObject IBusObservedPath M src/ibusobject.c M src/ibusobject.h M src/ibusobservedpath.h commit 7518126ca57c1a10b19d8e9264a14f55d2e1189a Author: Peng Huang Date: 2009-08-20 15:39:51 +0800 call bindtextdomain to resolve i18n issue. M setup/Makefile.am M setup/ibus-setup.in M setup/main.py commit d44f4585a63b2aa4a05ba9a4daab9185b3361191 Author: Peng Huang Date: 2009-08-20 10:07:19 +0800 Update es.po - Domingo Becker M po/es.po commit 75401a434a0034f7b85f8fc2e25b6c9fd12126ad Author: Peng Huang Date: 2009-08-19 10:31:36 +0800 Watch on the right socket file. M src/ibusbus.c commit 3ec0f62c97d18473397dba62bc9f6f5f6a07d4c3 Author: Peng Huang Date: 2009-08-18 17:27:03 +0800 Add some setter functions for IBusProperty M src/ibusproperty.c M src/ibusproperty.h commit 4078e209d00748a57a2dc0683320de63b8c7d911 Author: Peng Huang Date: 2009-08-17 10:12:03 +0800 Fix segment fault in ibus_hotkey_profile_destroy. M src/ibushotkey.c commit 943a75b343c398ee6d45cd4d66a8f0bdfec777d7 Author: Peng Huang Date: 2009-08-14 08:01:14 +0800 Add * in default locales of ibus gtk immodule M client/gtk2/ibusim.c commit 8bbe9f77257508af7593ea4ca1c7102d53fc3333 Author: Peng Huang Date: 2009-08-13 15:44:14 +0800 Comment test-registry M bus/Makefile.am commit dc86b755b60a55d76585cab79f99699e046d851f Author: Peng Huang Date: 2009-08-13 15:41:54 +0800 Disable qt im module. M client/Makefile.am M configure.ac commit 276353d1e882a29325680e672320ef964d816c0b Author: Peng Huang Date: 2009-08-12 09:30:54 +0800 Fix some build warnings. M bus/server.c M src/ibusbus.c M src/ibusshare.c commit c3fa97f4172d9b490ea0d1060d151eb5d6df9fe2 Author: Peng Huang Date: 2009-08-12 09:23:24 +0800 Duplicate address. M src/ibusshare.c commit 38e28e06c2b8a34e5a12aabb3ff8e849865976f4 Author: Peng Huang Date: 2009-08-12 09:06:30 +0800 Only connect to the exist bus if the ibus_get_address return != NULL M bus/main.c commit b0899c2f7f27aa14a64e8ac85197e7a6ae9b923a Author: Peng Huang Date: 2009-08-12 08:31:38 +0800 Use one fprintf. M src/ibusshare.c commit a08eafeffd5aa889b2d7276d48af84aa546c1b58 Author: Peng Huang Date: 2009-08-12 07:51:41 +0800 Use %ld for pid M src/ibusshare.c commit e319143f168fb6c248ff691a18760f7cae8a9124 Author: Peng Huang Date: 2009-08-12 07:44:55 +0800 call g_unlink before write address. M src/ibusshare.c commit 049ca9f0830304bfb0907071804c2bc40942c86e Author: Peng Huang Date: 2009-08-12 07:43:59 +0800 Check if the daemon is alive in ibus_get_socket_address M src/ibusshare.c commit 33f77a4980486ade7bb0194ccfe79477814e3b14 Author: Peng Huang Date: 2009-08-12 07:33:31 +0800 Write IBUS_DAEMON_PID in address file. M src/ibusshare.c commit 5ec6b95170f15f66a553a97c02cb94cc3c3e6b91 Author: Peng Huang Date: 2009-08-11 17:23:04 +0800 Disable mkdir code in ibusbus.c M src/ibusbus.c commit 05e3fe4d90826c7b0234e17f691e6bb0734c1faf Author: Peng Huang Date: 2009-08-11 17:20:06 +0800 Create right path in ibusbus.c M src/ibusbus.c commit 669ff970d226e9dc8da6afa51e916c85d98bc8b2 Author: Peng Huang Date: 2009-08-11 17:01:31 +0800 Remove ibus_get_socket_folder M src/ibusshare.c M src/ibusshare.h commit 332b49d1ae363a85321b553d9e3ea5e9e8e745da Author: Peng Huang Date: 2009-08-11 16:57:03 +0800 Do not mkdir in ibusbus.c M src/ibusbus.c commit 74b5b2007b28341db2c7997824a7322fc9d0a336 Author: Peng Huang Date: 2009-08-10 13:57:52 +0800 Add argument --mem-profile to get memory profile of ibus-daemon M bus/main.c commit ab37f4ad671049bd5b24da6500b9727ccf61e3d6 Author: Peng Huang Date: 2009-08-10 13:29:46 +0800 Fix soem typos. M src/ibushotkey.c commit 7096cb14e2b9fb659ab79ab1d2b65e55493d3e19 Author: Peng Huang Date: 2009-08-10 13:26:45 +0800 Make code more readable. M src/ibuslookuptable.c commit f1cc9bb311d3ea765541e208b7f629e44e4c5e31 Author: Peng Huang Date: 2009-08-10 13:25:55 +0800 Remove some unused variables. M src/ibusbus.c M src/ibuskeymap.c commit 7c09e3922851d153887b9e3bf531d05661ef0877 Author: Peng Huang Date: 2009-08-10 13:25:19 +0800 Make code more readable. M src/ibushotkey.c commit 42c766c1c293e8b2ff8d191de927b462abcb3411 Author: Peng Huang Date: 2009-08-10 13:08:16 +0800 Fix error in ibus_prop_list_destroy function. M src/ibusproperty.c commit 605f48bbe15d79e7c3af0bb6fdf632f8d395034b Author: Peng Huang Date: 2009-08-10 13:05:47 +0800 Fix memory leak in ibusproperty.c M src/ibusproperty.c commit 43b532911e600a6d31b35777c747a65b8a4fd140 Author: Peng Huang Date: 2009-08-10 12:38:07 +0800 Disable memory debug. M src/ibusobject.c commit 6cdc132b142f9c8ef17c20b4f78201b2b21c8223 Author: Peng Huang Date: 2009-08-10 12:36:30 +0800 Fix memory leak in ibuslookuptable.c M src/ibuslookuptable.c commit 2f32f8c0f8c3c9719aad120bb83650d093cbdc5f Author: Peng Huang Date: 2009-08-10 12:36:21 +0800 Count all objects. M src/ibusobject.c commit b248c2ad1a63902caddbf4b046347919c366c3e9 Author: Peng Huang Date: 2009-08-10 12:31:17 +0800 Add code to debug memory M src/ibusobject.c commit 27dabca24a4e10670960c5c820df44da139471ee Author: Peng Huang Date: 2009-08-10 11:23:06 +0800 Remove some debug output. M bus/dbusimpl.c commit 49df5913820f47c4918c4001e9dea8c264106367 Author: Peng Huang Date: 2009-08-10 10:05:51 +0800 Fix numlock problem. M src/ibuskeymap.c commit 955c700f193571a58f391b06106d37bee0c50b2c Author: Peng Huang Date: 2009-08-10 09:47:40 +0800 Remove some debug verbose. M bus/ibusimpl.c commit 70a720de606721687f1c995ea50692d58bb3d101 Author: Peng Huang Date: 2009-08-07 14:34:43 +0800 Do not emit preedit changed signal if preedit text is still invisible M client/gtk2/ibusimcontext.c commit c11f58727996c134a4e27bd7c7c360320c7f6927 Author: Peng Huang Date: 2009-08-07 11:15:52 +0800 Fix a bug in name_to_keycode M ibus/keysyms.py commit c5ad08e89cf0c64f35ee1081d44a0f76246b4447 Author: Peng Huang Date: 2009-08-06 11:13:50 +0800 Include org.freedesktop.{DBus,IBus} in ListNames' return M bus/dbusimpl.c commit 3d30c8a28b27aac298bbdeb81488dfec1ca27df0 Author: Peng Huang Date: 2009-08-06 11:10:20 +0800 Change the order of the unique names and well know names. M bus/dbusimpl.c commit 2f4bfb99dc9e21a74ebc98961186cde240c75ca1 Author: Peng Huang Date: 2009-08-06 11:09:07 +0800 Use macros. M bus/dbusimpl.c commit e58348a1cba659b448ce04bc2c3ad8c032a64803 Author: Peng Huang Date: 2009-08-06 11:04:13 +0800 Do not allow RequstName org.freedesktop.{IBus, DBus} M bus/dbusimpl.c commit b6a8fa25027df23090e5d6f21017fa8df43fa1fc Author: Peng Huang Date: 2009-08-06 10:54:08 +0800 Fix bug in org.freedesktop.DBus.ListNames. M bus/dbusimpl.c commit c8f92c1d9c1bdc61413fa7f6fba62aa9e2da6358 Author: Peng Huang Date: 2009-08-04 18:26:48 +0800 Reduce size of keysyms.py M ibus/keysyms.py commit 6ee8bb59c4485d054017feb60eecfae06fe1a6df Author: Peng Huang Date: 2009-08-03 14:47:50 +0800 Fix bug in keymap: Press number with Shift & CapsLock modifiers. M data/keymaps/common M src/ibuskeymap.c M src/ibuskeymap.h commit 4b607482f562f4a2306d3b3e659bd1350395911c Author: Peng Huang Date: 2009-07-28 14:38:36 +0800 Change summary for for ibus-devel.rpm M ibus.spec.in commit 5be7c11bf6664d810300bb3965039a8c4c1201f2 Author: Peng Huang Date: 2009-07-27 17:57:14 +0800 set QT_IM_MODULE=ibus if the qt ibus im module exist M xinput-ibus commit 56b73694a90215618f00ec3233acd7548ff8af1e Author: Peng Huang Date: 2009-07-23 08:07:25 +0800 Fix dead loop in _from_dbus_value M src/ibusconfigprivate.h M src/ibusmessage.c commit 4b09c335f61a280a6b84331bbeb74a4132f2442e Author: Peng Huang Date: 2009-07-21 10:44:06 +0800 Use libibus.so.1 replace libibus.so M ibus/common.py commit 53ad8d6cb7ba02de86814a28564e764a5874a078 Author: Peng Huang Date: 2009-07-21 10:43:58 +0800 Fix typo. M bus/ibusimpl.c commit 01b3391e99f63762e3498f901d65d70c65d72352 Merge: 306f615f 708737a8 Author: Peng Huang Date: 2009-07-21 10:42:39 +0800 Merge branch 'master' of git@github.com:phuang/ibus commit 708737a8a15a9aaf0b158fd110e6f2a72790812f Author: Peng Huang Date: 2009-07-19 12:50:22 +0800 Fix some build warnings. M src/ibusshare.c commit e35f363a366d5fc78d7f0851348f8cc86924cce5 Merge: cf56e576 2ec3479e Author: Peng Huang Date: 2009-07-19 09:40:42 +0800 Merge branch 'master' of git@github.com:phuang/ibus commit cf56e576fde975606f709cc731d2b256c45a15b4 Author: Peng Huang Date: 2009-07-18 08:39:50 +0800 Fix a typo. M bus/inputcontext.c commit 306f615f4d5b5e8ce32a734d899acde76134c8f2 Author: Peng Huang Date: 2009-07-17 10:35:18 +0800 Add gitignore M .gitignore M bus/.gitignore M bus/ibusimpl.c A data/.gitignore A docs/.gitignore M po/.gitignore M src/.gitignore commit 2ec3479e1647d7cfb5cf60043a94a5d546c90032 Author: Peng Huang Date: 2009-07-17 06:47:01 +0800 Add include to fix build warning. M src/ibusshare.c commit fbcc20f320a0ebba9b95658f7efa8cc52cf1476e Author: Peng Huang Date: 2009-07-16 10:37:32 +0800 Add introspect_dbus method. M ibus/bus.py commit a1da7b9ad9af3144911d145334d8eec49c9b4c88 Author: Peng Huang Date: 2009-07-16 10:36:53 +0800 Remove unimplemented methods and signals from DBus.Introspect return data M bus/dbusimpl.c commit 3beb987781d921902b4e20d9c844b75a9e962abe Author: Peng Huang Date: 2009-07-15 18:04:11 +0800 Use c version ibus_get_address in python directly M ibus/common.py M src/ibusshare.c commit d2ed9a3740a8b9e809615f99318ee14132a3159a Author: Peng Huang Date: 2009-07-15 16:31:09 +0800 Use abstract socket in ibus-daemon M bus/server.c M ibus/application.py M ibus/bus.py M ibus/common.py M src/ibusbus.c M src/ibusshare.c M src/ibusshare.h commit b3160e0b563c132347b1c97ce91d3d3882041fca Author: Peng Huang Date: 2009-07-15 11:19:08 +0800 Add ibus_get_local_machine_id function M src/ibusshare.c M src/ibusshare.h commit 1a007604992f4e2cb58e0d9eb5d37b8086445bf4 Author: Peng Huang Date: 2009-07-15 08:21:23 +0800 Update ml.po by Ani Peter M po/ml.po commit 780752efb2ca64ce4e87f28b85394ab1cef13b70 Author: Peng Huang Date: 2009-07-14 16:30:50 +0800 Remove debug output M bus/ibusimpl.c commit 4e7a1f9dfb0dfbe1310422bc322ea97b19bd3664 Author: Peng Huang Date: 2009-07-10 11:00:41 +0800 Fix a typo, Add introspect method. M bus/inputcontext.c M ibus/inputcontext.py commit f22552752d3ffdb693c223c61679061528a84fff Author: Peng Huang Date: 2009-07-10 10:48:39 +0800 Implement Introspect in inputcontext.c M bus/ibusimpl.c M bus/inputcontext.c M ibus/interface/iinputcontext.py commit fdebe6da41d3ad4a347d64cfa30a14a92446c3fb Author: Peng Huang Date: 2009-07-09 17:38:16 +0800 Add introspect_ibus M ibus/bus.py commit bbc54dcc2d1a3ece69ff191b4818aa549f27309e Author: Peng Huang Date: 2009-07-09 17:37:18 +0800 Add args' names, and remove out arg of org.freedesktop.IBus.Exit M bus/ibusimpl.c commit f5cb3df2a2c31c54a9e3b97ac32ecbbb933bcda3 Author: Peng Huang Date: 2009-07-09 17:09:37 +0800 Remove some deprecated methods. M ibus/interface/iibus.py commit 8fedd83a82049427c241d8dd8687ba75429b7111 Author: Peng Huang Date: 2009-07-09 17:09:03 +0800 Implemented Introspect of /org/freedesktop/IBus M bus/ibusimpl.c commit 3dbc3d46bb1166115ba40a6ef6ab98042b1c14f5 Author: Peng Huang Date: 2009-07-09 11:29:46 +0800 Implememnt org.freedesktop.IBus.Ping method. M bus/ibusimpl.c M ibus/bus.py M ibus/serializable.py M src/ibusattribute.c M src/ibuscomponent.c M src/ibusenginedesc.c M src/ibusfactory.c M src/ibushotkey.c M src/ibuslookuptable.c M src/ibusmessage.c M src/ibusmessage.h M src/ibusobservedpath.c M src/ibusproperty.c M src/ibusserializable.c M src/ibustext.c commit a25038fd60358cf06905ffd535eba2d2f2737efe Author: Peng Huang Date: 2009-07-08 11:43:22 +0800 Fix some typoes. M ibus/bus.py M ibus/interface/iibus.py commit ad8b19522dd6851d9854f7bdcc04441a1925b5d9 Author: Peng Huang Date: 2009-07-08 11:32:01 +0800 Add ibus_message_iter_copy method; Add Ping method of org.freedesktop.IBus interface. M bus/ibusimpl.c M ibus/bus.py M ibus/interface/iibus.py M src/ibusmessage.c M src/ibusmessage.h commit ec640a5e4658419e1183b14e89f3419e5735a742 Author: Ding-Yi Chen Date: 2009-07-08 16:58:36 +1000 APIDOC: Revised IBusMessage M src/ibusmessage.h commit da8f546d010bff2298eda65d75c44f6fcf5992b6 Author: Ding-Yi Chen Date: 2009-07-07 18:07:54 +1000 APIDOC: completed IBusMessage. M docs/reference/ibus/ibus-docs.sgml M src/ibuskeymap.h M src/ibusmessage.h commit 7a1cb83c9812107334f82b59e1092fe670e9ef3a Author: Ding-Yi Chen Date: 2009-07-06 18:09:22 +1000 APIDOC continuing IBusMessage M src/ibusmessage.h commit 3b8b42bf79a4e780947af1b67e7f28f866de7a30 Author: Ding-Yi Chen Date: 2009-07-03 18:03:17 +1000 APIDOC: completed: IBusInternal, IBusKeymap. starts: IBusMessage M src/ibusinternal.h M src/ibuskeymap.h M src/ibuskeysyms.h M src/ibusmainloop.h M src/ibusmessage.h commit 9c6b7e75a45ccc88c26c35fc7958e2f92931748f Author: Ding-Yi Chen Date: 2009-07-01 18:07:54 +1000 APIDOC: IBusKeymap M src/ibuskeymap.h commit 2cbd86e10a9f823cf4de47d5a95555cc45ca7776 Author: Ding-Yi Chen Date: 2009-06-30 18:07:12 +1000 APIDOC: IBusInternal, IBusKeymap M src/ibusinternal.c M src/ibusinternal.h M src/ibuskeymap.h commit 1ad3051b149bbc5e916ec794f7638be7f5563e59 Author: Peng Huang Date: 2009-07-01 12:32:08 +0800 Update buttons' states correctly M setup/keyboardshortcut.py commit 59d99c2e73f4c0d54967e4f9291cb0cfc4c4a923 Author: Peng Huang Date: 2009-07-01 12:17:18 +0800 Add PY prefix in gtype names. M ibus/attribute.py M ibus/bus.py M ibus/component.py M ibus/config.py M ibus/enginedesc.py M ibus/factory.py M ibus/inputcontext.py M ibus/lookuptable.py M ibus/object.py M ibus/observedpath.py M ibus/property.py M ibus/serializable.py M ibus/text.py commit a1a43490c284f40b7b2135b4346aeb80dbea5708 Author: Peng Huang Date: 2009-07-01 12:11:38 +0800 Update Add & Apply buttons' states on time. M setup/keyboardshortcut.py commit 4ffd3c3fb6b51da9c18f2b2a45325ade08ce9c0d Author: Peng Huang Date: 2009-06-30 16:45:45 +0800 Use MetaClass to register serializable classes automatically M ibus/attribute.py M ibus/component.py M ibus/enginedesc.py M ibus/factory.py M ibus/lookuptable.py M ibus/observedpath.py M ibus/property.py M ibus/serializable.py M ibus/text.py commit 1abb0f892a0429aafb42dbca09bd1e4b90f8081a Author: Peng Huang Date: 2009-06-30 10:54:16 +0800 Fix some coding style problems. M ui/gtk/notifications.py M ui/gtk/panel.py M ui/gtk/propitem.py M ui/gtk/toolitem.py commit 6cf406a376a88e8360fe5b073a481f31af06878a Author: Peng Huang Date: 2009-06-30 10:42:05 +0800 Fix CheckMenuItem problems and some coding style problems. M ui/gtk/menu.py commit 6138aab2d1c6209feddc5c65de8b844aff220cd1 Author: Peng Huang Date: 2009-06-30 07:40:37 +0800 Change some classes' name M ui/gtk/candidatepanel.py M ui/gtk/languagebar.py M ui/gtk/panel.py commit 34596d74e4ddcafe0b038d4600508806e569c8a1 Author: Peng Huang Date: 2009-06-30 07:19:22 +0800 Add __gtype_name__ for some gobject classes M ibus/attribute.py M ibus/bus.py M ibus/component.py M ibus/config.py M ibus/enginedesc.py M ibus/factory.py M ibus/inputcontext.py M ibus/lookuptable.py M ibus/object.py M ibus/observedpath.py M ibus/property.py M ibus/serializable.py M ibus/text.py commit 0eafa5985555827818b0fd8de58a01d672151934 Author: Peng Huang Date: 2009-06-29 20:49:32 +0800 Use __gtype_name__ to replace gobject.type_register M ui/gtk/candidatepanel.py M ui/gtk/handle.py M ui/gtk/languagebar.py M ui/gtk/menu.py M ui/gtk/panel.py M ui/gtk/toolitem.py commit 15ce741d370b815047e3ad06d9806131acbb40c0 Author: Peng Huang Date: 2009-06-29 17:57:47 +0800 Remove useless code. M ui/gtk/candidatepanel.py commit fb13ca28b412a15691ee2ab2bafd5b10df453c9b Author: Peng Huang Date: 2009-06-25 16:03:26 +0800 Modify introspect interface. M bus/ibusimpl.c commit 0c1e0848a2a20b4bc9d48f33830001ffc10e0fe0 Author: Ding-Yi Chen Date: 2009-06-25 17:58:08 +1000 APIDOC: Completed IBusInputContext Revised IBusBus, IBusConnection, IBusProxy, IBusService Keymap: Add dvorak, dvorak-classic, and dvorak-programmer A data/keymaps/dvorak-common A data/keymaps/us-dvorak A data/keymaps/us-dvorak-classic A data/keymaps/us-dvorak-programmer D po/ibus.pot M src/ibusbus.c M src/ibusconnection.c M src/ibusengine.c M src/ibusinputcontext.c M src/ibusinputcontext.h M src/ibusproxy.c M src/ibusservice.c commit 00b32660ee5552ff804c99c990ec0fe1278d6e8a Author: Ding-Yi Chen Date: 2009-06-24 18:04:56 +1000 APIDOC: revised IBusEngine, IBusLookupTable. continuing IBusInputContext M src/ibusengine.c M src/ibusinputcontext.c M src/ibusinputcontext.h M src/ibuslookuptable.h commit d72689240398232387187e383938186cda47ff99 Author: Ding-Yi Chen Date: 2009-06-22 18:08:55 +1000 APIDOC: revised IBusEngine, IBusInputContext M ibus.spec.in M src/ibusengine.c M src/ibusinputcontext.h commit 5a026c6221286139cae08b5799bc80fe1d1c9444 Author: Peng Huang Date: 2009-06-25 09:48:37 +0800 Add keycode argument in forward_key_event signal. M bus/engineproxy.c M bus/inputcontext.c M src/ibusengine.c M src/ibusengine.h M src/ibusinputcontext.c commit 64c7a4f4ed05010d32b521660302b5a85e083c35 Author: Peng Huang Date: 2009-06-24 07:49:50 +0800 Disable qt4 im module. M configure.ac commit 3193a8747492eccac75a245e5075644469cfbfef Author: Peng Huang Date: 2009-06-24 07:34:17 +0800 Add ibusversion.h.in M configure.ac M src/Makefile.am M src/ibus.h A src/ibusversion.h.in commit a79c7e87ee9ff80c673ce43bf2b0aa65775e8e07 Author: Peng Huang Date: 2009-06-24 07:33:53 +0800 Remove private struct in ibus-daemon. M bus/connection.c M bus/connection.h M bus/inputcontext.c M bus/inputcontext.h M bus/panelproxy.c M bus/panelproxy.h commit 96f502bcfb6d23a2adc2b28d7bcd52fb01a9407e Author: Peng Huang Date: 2009-06-18 10:17:42 +0800 Fix a typo. M ui/gtk/engineabout.py commit 16fe6e02256a88d83be5bb59515fde86d20f4e12 Author: Peng Huang Date: 2009-06-18 09:53:58 +0800 Hide keyboard layout column in setup UI M setup/enginetreeview.py commit f435a80cee0877c2cee3dcd1920984deab2f51ff Author: Peng Huang Date: 2009-06-17 19:21:10 +0800 Avoid block in bus_factory_proxy_create_engine. M bus/factoryproxy.c commit 7606df8212c436c04044f3e0f864e37333540942 Author: Peng Huang Date: 2009-06-17 17:58:10 +0800 Add setup/enginetreeview.py into po/POTFILES.in M po/POTFILES.in commit 358008baa4777cd3eecf4aff5111bdbabb875ffc Author: Peng Huang Date: 2009-06-17 17:03:02 +0800 Remove IBUS_SESSION_ID from xinput-ibus M xinput-ibus commit a567430e1e2b61d0872bad3503041424d4832e16 Author: Peng Huang Date: 2009-06-17 15:42:06 +0800 Add --enable-gtk-doc in autogen.sh M autogen.sh commit 65b2fdeafc00bae17bddfc366a2cd1a012b85abc Author: Peng Huang Date: 2009-06-17 15:40:57 +0800 Fix problems for 'make rpm' M Makefile.am M ibus.spec.in commit 77c8da8df0ccde997b896338f2adf501e1576976 Author: Peng Huang Date: 2009-06-17 11:34:15 +0800 Remove two useless lines. M data/keymaps/common commit 4875bab43ca75f656268cd74d9ec629657d58ff2 Author: Peng Huang Date: 2009-06-17 10:41:00 +0800 Add configure item for keyboard layout M bus/engineproxy.c M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M data/ibus.schemas.in M setup/enginetreeview.py M setup/main.py M setup/setup.glade commit 9bf091463fc7084bee3733ab2c91bb0f1cfe6f9d Author: Peng Huang Date: 2009-06-16 11:00:52 +0800 Remove altgr in jp keymap M data/keymaps/jp commit a634c759b6d5588c1922db1c16fc635cc25410ca Author: Peng Huang Date: 2009-06-16 10:52:57 +0800 Fix problems in jp keymap. keycode 124 = yen M data/keymaps/jp commit 0f66ccbb471efed568f67dcaf5f2ce3f04aaf170 Author: Peng Huang Date: 2009-06-16 07:36:04 +0800 Fix build warnings. M client/gtk2/ibusimcontext.c M src/ibusconnection.c M src/ibusmainloop.c M src/ibusserver.c commit e7c0f1b4e4730a97431f4835606a9278a914a43a Author: Peng Huang Date: 2009-06-16 07:27:37 +0800 Add translation in pl.po M po/pl.po commit 114fb2cbe792d6dac360875cc60d6895b7af9d64 Author: Peng Huang Date: 2009-06-15 19:02:25 +0800 Add code to handle changing of engine's layout M setup/enginetreeview.py commit 0264e1e0c2615c2b17893ef95fe355b2170d5b50 Author: Peng Huang Date: 2009-06-15 16:34:26 +0800 Translate some messages. M po/zh_CN.po commit 94cedd30a5a67ab3558e822eb3621ba4ee630541 Author: Peng Huang Date: 2009-06-15 16:20:26 +0800 Fix some typos M po/zh_CN.po commit 73456141387d7d88e639978a091ea46380f243f4 Author: Peng Huang Date: 2009-06-15 16:18:57 +0800 Update ibus.pot M po/ibus.pot commit 186977b7abfeffc45157c02a9a586458a3f76c58 Author: Peng Huang Date: 2009-06-15 15:20:59 +0800 Update messages in zh_CN.po M po/zh_CN.po commit 6683283f521535710311ce2ec91ba4525a56a6a0 Author: Peng Huang Date: 2009-06-15 15:10:10 +0800 Add some tooltips in setup dialog. M setup/setup.glade commit b6b278d02c3ceb15581fbc6385a6e15a91079422 Author: Peng Huang Date: 2009-06-15 15:00:12 +0800 Show engines' keyboard layout in setup UI M setup/enginetreeview.py M setup/main.py M ui/gtk/engineabout.py commit 21d4b09a3b0f130af963fcfc6481ffc059b869ff Author: Peng Huang Date: 2009-06-15 06:50:12 +0800 Remove some 'shift keycode' item in common M data/keymaps/common commit e9cbd9bf8d74820ae4b1d02f13a547b5ed2a0f8f Author: Peng Huang Date: 2009-06-15 06:44:14 +0800 Autogen the ChangeLog from git D ChangeLog M Makefile.am M autogen.sh commit b389f0dcf7aff8e506a264500d0b5a95170c2254 Author: Peng Huang Date: 2009-06-15 06:11:08 +0800 Fix error in keymap M bus/inputcontext.c M data/keymaps/modifiers M src/ibuskeymap.c commit f19db832c2f3b9a5887712688b0f63618d79715d Author: Peng Huang Date: 2009-06-15 05:23:05 +0800 Fix some keycode error in common keymap. M data/keymaps/common commit c59be8eeb10b38bea8126986b652102045ea3dc7 Author: Peng Huang Date: 2009-06-14 14:29:27 +0800 Implement keymaps, merged keymaps branch M bus/engineproxy.c M bus/engineproxy.h M bus/ibusimpl.c M bus/ibusimpl.h M bus/inputcontext.c M client/gtk2/ibusimcontext.c M client/x11/main.c M configure.ac M data/Makefile.am A data/keymaps/Makefile.am A data/keymaps/ar A data/keymaps/common A data/keymaps/da A data/keymaps/de A data/keymaps/de-ch A data/keymaps/en-gb A data/keymaps/es A data/keymaps/et A data/keymaps/fi A data/keymaps/fo A data/keymaps/fr A data/keymaps/fr-be A data/keymaps/fr-ca A data/keymaps/fr-ch A data/keymaps/hr A data/keymaps/hu A data/keymaps/is A data/keymaps/it A data/keymaps/jp A data/keymaps/lt A data/keymaps/lv A data/keymaps/mk A data/keymaps/modifiers A data/keymaps/nl A data/keymaps/nl-be A data/keymaps/no A data/keymaps/pl A data/keymaps/pt A data/keymaps/pt-br A data/keymaps/ru A data/keymaps/sl A data/keymaps/sv A data/keymaps/th A data/keymaps/tr A data/keymaps/us M ibus/engine.py M ibus/inputcontext.py M ibus/interface/iengine.py M src/Makefile.am M src/ibus.h M src/ibusengine.c M src/ibusengine.h M src/ibusinputcontext.c M src/ibusinputcontext.h A src/ibuskeymap.c A src/ibuskeymap.h M src/ibusmarshalers.list A src/test-keymap.c commit 0c1592432090cd232c8a0367ae5a853ffdf66ea9 Author: Peng Huang Date: 2009-06-14 14:19:33 +0800 Fix a typo in src/Makefile.am M src/Makefile.am commit 95e3cc13377467b00c183a8c21d2f84b3b30d622 Author: Peng Huang Date: 2009-06-13 06:10:44 +0800 Do not restore states when focus_in, if the enable is disabled. M bus/inputcontext.c commit 7cd6ba06d9a19c663d123982245947162441f8d6 Author: Peng Huang Date: 2009-06-13 05:27:51 +0800 Update da.po. M po/da.po commit a296b6a82b445dfb5ba7f213c4490b960092132e Author: Peng Huang Date: 2009-06-12 14:43:32 +0800 Add vi.po M AUTHORS M po/LINGUAS A po/vi.po commit 59500bdeb5ecaa7324c8a910fe633e6a25dc7252 Author: Peng Huang Date: 2009-06-12 09:54:47 +0800 Support mouse click on lookup table. M bus/engineproxy.c M bus/engineproxy.h M bus/inputcontext.c M bus/inputcontext.h M bus/panelproxy.c M bus/panelproxy.h M ibus/engine.py M ibus/interface/iengine.py M ibus/interface/ipanel.py M ibus/panel.py M src/ibusengine.c M src/ibusengine.h M src/ibusmarshalers.list M ui/gtk/candidatepanel.py M ui/gtk/panel.py commit eeed16080380d7e206f46a26cec8635e2b651e8b Author: Peng Huang Date: 2009-06-11 10:31:10 +0800 Redefine the arrow buttons meaning as PageUp & PageDown. M ui/gtk/candidatepanel.py M ui/gtk/panel.py commit 05c7deef8a7deb3ffd1b66ceefa044d61e511337 Author: Peng Huang Date: 2009-06-09 18:24:03 +0800 Add source files into POTFILES.in M po/POTFILES.in commit 8bd33642e1e95107f48206a95ef9a99e07149f44 Author: Peng Huang Date: 2009-06-09 15:42:36 +0800 Update kn.po M po/kn.po commit 5ade818e2724c763c85be4ff8ee1ebfeb38459d4 Author: Peng Huang Date: 2009-06-09 09:10:35 +0800 Add show_im_name schema in ibus.shemas.in M data/ibus.schemas.in commit be5bebbff7aa3de6f656a97ba34d10afd75f6dff Author: Peng Huang Date: 2009-06-09 09:08:04 +0800 Show im name on languagebar M setup/main.py M setup/setup.glade M ui/gtk/languagebar.py M ui/gtk/panel.py commit df464d2b06026dcfcb0d215238333d40bcecd29e Author: Peng Huang Date: 2009-06-08 16:52:38 +0800 Filter release key events follow the hotkey. M bus/inputcontext.c commit a556c9d0eda7a4118ea14e66ce5bfd4175f5f90c Author: Peng Huang Date: 2009-06-08 16:22:50 +0800 Update hi.po M po/hi.po commit d295fde64a1a95de3df72a0dc918be9e8432c37f Author: Peng Huang Date: 2009-06-07 11:32:20 +0800 Add About button in language bar. M ui/gtk/languagebar.py M ui/gtk/panel.py commit 1d58c734d7d2f649786078f3158ee2999c5347a2 Author: Peng Huang Date: 2009-06-07 10:58:57 +0800 Move engineabout dialog into a new python file. M setup/Makefile.am A setup/engineabout.py M setup/main.py M ui/gtk/Makefile.am A ui/gtk/engineabout.py commit e61302623e9315bea1b71d45d6f547ac17bd3a55 Author: Peng Huang Date: 2009-06-05 20:34:35 +0800 Fix some build warnings. M bus/connection.c M bus/dbusimpl.c M bus/ibusimpl.c M client/gtk2/ibusimcontext.c M client/x11/main.c M src/ibus.h M src/ibushotkey.c M src/ibusproperty.c commit 8317b65c5e45e3a4385d08bdd2047e9c04ee414a Author: Peng Huang Date: 2009-06-04 15:24:42 +0800 Update as.po. M po/as.po commit 943d46f3b9c0a2d2ac63bbc6ffd08d822bd990ea Author: Peng Huang Date: 2009-06-04 15:13:33 +0800 Use custom dialog to display engine information M setup/main.py M setup/setup.glade commit eb329bbb039cd0af2f0c53ca4ed8679b387495af Author: Peng Huang Date: 2009-06-04 10:19:55 +0800 Set the default candidates' label to '1234567890abcdef' M ui/gtk/candidatepanel.py commit 548a1c3a72d2ba9e01872a690b9cbd78f84be9d1 Author: Peng Huang Date: 2009-06-04 10:08:45 +0800 Update doc for ibus_lookup_table_new M src/ibuslookuptable.h commit b3691888a8686f53529f4faa66d8f51c2a89b98d Author: Peng Huang Date: 2009-06-04 10:04:16 +0800 Add labels attribute in LookupTable object. M ibus/lookuptable.py M src/ibuslookuptable.c M src/ibuslookuptable.h M ui/gtk/candidatepanel.py commit f5d64481c00aeaa11680a0b95a08d1eef8e8e512 Author: Peng Huang Date: 2009-06-03 16:08:29 +0800 Add help button for showing help message for input method. M setup/enginetreeview.py M setup/main.py M setup/setup.glade commit d2e8f17929a047177e16f4295d957565efc2c3fa Author: Peng Huang Date: 2009-06-02 19:49:34 +0800 Catch exception __sigchld_cb in panel.py M ui/gtk/panel.py commit 523f3fdd19f65195ed39aee7857871bfb9b9b72b Author: Ding-Yi Chen Date: 2009-06-01 18:21:05 +1000 APIDOC: Finished IBusConnection, IBusHotKey, IBusProxy Started IBusInputContext Revised IBusAttribute IBusBus IBusConfigServices, IBusEngine, .. M docs/reference/ibus/Makefile.am M docs/reference/ibus/ibus-docs.sgml M docs/reference/ibus/ibus.types M src/ibusattribute.h M src/ibusbus.c M src/ibusconfigservice.c M src/ibusconfigservice.h M src/ibusconnection.c M src/ibusconnection.h M src/ibusengine.c M src/ibuserror.h M src/ibusfactory.h M src/ibushotkey.c M src/ibushotkey.h M src/ibusinputcontext.h M src/ibusproxy.c M src/ibusproxy.h M src/ibusservice.c M src/ibusservice.h commit bcf7868d4a42de8b7c2a54b74615dbe54e83e00d Author: Peng Huang Date: 2009-05-31 11:13:11 +0800 Add verbose argument for ibus_component_start function Do not use g_usleep M bus/ibusimpl.c M bus/main.c M src/ibuscomponent.c M src/ibuscomponent.h commit 01736b4eb9069045e2ec3fc34c295594836726e6 Author: Peng Huang Date: 2009-05-31 10:33:47 +0800 Update pa.po by A S Alam M po/pa.po commit 6878a785ebdb1a16ba3f243e9781d067ee861172 Author: Peng Huang Date: 2009-05-30 15:54:46 +0800 Update or.po by Manoj Giri M po/or.po commit de063eadad301d28901aad9563791436f4611010 Author: Peng Huang Date: 2009-05-26 19:47:11 +0800 Update mr.po & te.po M po/mr.po M po/te.po commit ec1b33141d583c384a655e03d330a4436ff0179f Author: Peng Huang Date: 2009-05-26 15:07:05 +0800 Update bn_IN.po by Runa Bhattacharjee M po/bn_IN.po commit 04cf7519643521fe013b9c82991c87935a924032 Author: Peng Huang Date: 2009-05-26 14:57:58 +0800 Update gu.po by Sweta Kothari M po/gu.po commit f7a607cd69526beec4b174d067dbd5c685474e0f Author: Peng Huang Date: 2009-05-26 08:17:42 +0800 Add information label in setup dailog to tell user the top one is the default M po/ar.po M po/as.po M po/bn_IN.po M po/ca.po M po/da.po M po/de.po M po/es.po M po/fr.po M po/gu.po M po/hi.po M po/hu.po M po/ibus.pot M po/ja.po M po/kn.po M po/ml.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/sr.po M po/sr@latin.po M po/ta.po M po/te.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/setup.glade commit 7ea778e4466087fe20d0e8a30d72dd369a226662 Author: Peng Huang Date: 2009-05-25 16:08:23 +0800 Raise set dialog when click preference in menu. M setup/main.py M ui/gtk/panel.py commit fef66db0cc4784d8cddec6df48fed12bc262a27f Author: Peng Huang Date: 2009-05-25 15:34:54 +0800 Show default IME with BOLD font. M setup/enginetreeview.py commit fd6aa7466f47efb9821333fd52a4a0870a0ac060 Author: Peng Huang Date: 2009-05-25 15:09:05 +0800 Append engine as last one in the engines list. M setup/enginetreeview.py M setup/main.py commit 18760665f021d57d27395275fac729f4f8b3ffff Author: Peng Huang Date: 2009-05-22 11:03:28 +0800 Remove prop copy in inputcontext, to fix properties bug. M bus/inputcontext.c commit affec926199d46d524c32cd144d13893078207fe Author: Peng Huang Date: 2009-05-19 11:30:30 +0800 Make code more readable. M bus/inputcontext.c commit e7136ceb43c16c6553baffba668f1c9c8f00b7ff Author: Peng Huang Date: 2009-05-08 14:25:12 +0800 Keep same order of shortcut keys list. M setup/keyboardshortcut.py M setup/main.py commit 374d4c6ece04c39bc3e828fa19c580a2af9da309 Author: Peng Huang Date: 2009-05-08 14:11:19 +0800 Add git-tag target in Makefile.am M Makefile.am commit 9175186092778e081ea68c732bfd9618221a71a5 Author: Peng Huang Date: 2009-05-08 13:19:10 +0800 Remove old locales define in main.c M client/x11/main.c commit d4a2cd3562bb475c8b70742df9443cad5ed8c2ed Author: Peng Huang Date: 2009-05-08 13:12:46 +0800 Update locale and add --locale-append argument of ibus-x11 M client/x11/Makefile.am A client/x11/locales.h M client/x11/main.c commit 196dac356027448f6128bf94104ba98d9b9de84a Author: Peng Huang Date: 2009-05-08 09:31:53 +0800 Refine coding style. M bus/main.c commit 656299118952511397240102445272fd04d79555 Author: Peng Huang Date: 2009-05-07 12:38:41 +0800 Only print out debug and warning messages when with --verbose M bus/main.c commit 840b71c45255c2b2824b3c6f9449b2e9a87d0d1c Author: Peng Huang Date: 2009-05-07 12:02:24 +0800 Replace strcmp with g_strcmp0 M bus/main.c commit b26f7ed2ac38ff31e805ad0a6706c5ac743d5bbf Author: Peng Huang Date: 2009-05-06 09:18:43 +0800 Update fr.po by julroy67 M po/fr.po commit b61cabbccb496efcd54b82564fbc74100a9d7b1b Author: Peng Huang Date: 2009-04-30 15:43:50 +0800 Destroy the BusServer during exit. M bus/ibusimpl.c commit cb57c882840036ccc2d357e5cdd8a4d58db40f9f Author: Peng Huang Date: 2009-04-30 11:09:41 +0800 Make main loop setupable. M src/Makefile.am M src/ibus.h M src/ibusconnection.c A src/ibusmainloop.c A src/ibusmainloop.h M src/ibusserver.c commit fd9b6b854b310ddcc4d54d5ef6d83f0aea0a57de Author: Peng Huang Date: 2009-04-28 15:43:45 +0800 Add zh_TW.po by Ding-Yi Chen M AUTHORS M po/LINGUAS M po/zh_TW.po commit b666ce4f9dfedffbfc16561948cf550f5e356764 Merge: 3b3f6ac8 88257549 Author: Peng Huang Date: 2009-04-28 15:40:24 +0800 Merge commit 'definite/master' commit 3b3f6ac869f364a09233f9d2ef963a4fe6899484 Author: Peng Huang Date: 2009-04-28 15:36:12 +0800 Fix wrong args of trigger signal callbacks M src/ibushotkey.c M src/ibushotkey.h commit 4c11520ea2bb118ce66b97a214bb835b32de70e9 Author: Peng Huang Date: 2009-04-28 15:30:02 +0800 Fix wrong argument when emit IBusHotkeyProfile::trigger signal M src/ibushotkey.c commit 88257549f3ee87c8c935b1792eac92bc0bb0d7e5 Author: Ding-Yi Chen Date: 2009-04-28 14:15:53 +1000 Add back zh_TW.po A po/zh_TW.po commit 17d438103bf4c52ebb20f2b545dd40c2b894060f Author: Peng Huang Date: 2009-04-28 08:28:25 +0800 Add document for IBusModifiersType. M src/ibustypes.h commit 871ed0c8ef5da7eb3c71b51b669cb059d36aa4f4 Author: Peng Huang Date: 2009-04-28 08:22:34 +0800 Refine coding style in ibusinternal.c M src/ibusinternal.c commit 09cc67f8ac7caa624d57d11593de991bc4342088 Author: Peng Huang Date: 2009-04-27 07:43:21 +0800 Update fr.po by Charles-Antoine (cacouret@wanadoo.fr) M po/fr.po commit f9d3b06fbb591093b4df522b8c8e7ab3792bee85 Author: Peng Huang Date: 2009-04-23 10:45:18 +0800 Fix preedit problem in evolution M client/gtk2/ibusimcontext.c commit 0568e398bcd2e6996f900d12c3c61063a8350784 Author: Peng Huang Date: 2009-04-22 13:52:01 +0800 Read the iso_639_2 codes from iso-codes. M ibus/lang.py commit 471683a787afbfa18750e40ea0861349cf20e2c5 Author: Peng Huang Date: 2009-04-21 17:13:03 +0800 Add ml.po by Ani Peter M AUTHORS M po/LINGUAS A po/ml.po commit 2fa0dbb207f5f7d0fac83ab3a052a5245625255b Author: Peng Huang Date: 2009-04-21 14:48:56 +0800 Support drag and drop in engines view. M setup/enginetreeview.py commit 50696ba1d755363ed1f0c07dd44b6bf6fa53b8fb Author: Peng Huang Date: 2009-04-21 07:03:41 +0800 Update ca.po by Xavier Conde Rueda M po/ca.po commit 0c000dab6c34d865eba45723e1706204a753deb1 Author: Peng Huang Date: 2009-04-20 17:31:09 +0800 Check ownership of socket file. M src/ibusbus.c commit c6abf0ef1a84e35fd88e31f4626ee70f6b650d2c Author: Peng Huang Date: 2009-04-20 16:07:22 +0800 Check socket's ownership when client connects to the daemon M src/ibusbus.c M src/ibusconnection.c M src/ibusshare.c M src/ibusshare.h commit 164626ec6ff95341acbdbaef96f9e48016f0fe85 Author: Peng Huang Date: 2009-04-20 15:00:19 +0800 Add authentication code. Only allow root & same user connect to ibus-daemon. M bus/connection.c M bus/server.c M src/ibusconnection.c M src/ibusconnection.h M src/ibusmarshalers.list M src/ibusserver.c M src/ibusserver.h commit 1e4f119f94e8f3a7016500586480b7d292a21223 Author: Peng Huang Date: 2009-04-20 11:02:13 +0800 Remove ibusenumtypes.[ch], they are generated during make. D src/ibusenumtypes.c D src/ibusenumtypes.h commit 97aa04260e00f62f005e420aa601b7e1f43891b8 Author: Peng Huang Date: 2009-04-20 10:50:37 +0800 Create an new engine in bus_input_context_enable if the engine == NULL M bus/inputcontext.c commit 2eb2b3debaff98a6d077186deee5e5f6fcd9ae87 Author: Peng Huang Date: 2009-04-20 10:28:58 +0800 If im is not active, ibus will do nothing when prev engine hotkey is pressed. M bus/inputcontext.c commit fdb88e36b31dd943093a948999bf9eaabd2786fa Author: Peng Huang Date: 2009-04-17 19:04:19 +0800 Add de.po by Fabian Affolter M AUTHORS M po/LINGUAS A po/de.po commit 44e599c7014ec357777b2c61d264515321457fb2 Author: Peng Huang Date: 2009-04-17 18:41:42 +0800 Extend tab to spaces. M docs/reference/ibus/Makefile.am commit 606a6386a9fa56cde3204108dd580a1e1aafb3bb Author: Peng Huang Date: 2009-04-17 18:40:29 +0800 Fix 'make distcheck' errors. M docs/reference/ibus/Makefile.am commit 2a9be24af686724b33520dbaea0b00a4397ae5c7 Author: Peng Huang Date: 2009-04-17 17:12:14 +0800 Change the logic for add & apply buttons. M setup/keyboardshortcut.py commit eb83881e9b8299165f0f113e4f62e133f8a9cf69 Author: Peng Huang Date: 2009-04-17 16:23:08 +0800 Add scrolledwindow for shortcut key list. M setup/keyboardshortcut.py commit f94a7a084edfd08362cca8692826baf24ba06d69 Author: Peng Huang Date: 2009-04-17 14:29:39 +0800 Remove zh_TW.po M po/LINGUAS commit a40e368ccc4c413094ac090d02d4fe8e7eac065f Author: Peng Huang Date: 2009-04-17 14:26:54 +0800 Update coding style. M src/ibusengine.h commit a52bf160d5545c54537ce6fd15e1595b5852a7f0 Merge: a4f5ccb5 912f742d Author: Peng Huang Date: 2009-04-17 14:19:05 +0800 Merge commit 'definite/master' commit 912f742d1224bd02167c3da707a3167767e22bc4 Author: dchen@redhat.com Date: 2009-04-17 16:10:21 +1000 API DOC-new: ibusdebug IBusError IBusFactory; and revised. M docs/reference/ibus/Makefile.am M src/ibusbus.c M src/ibusconfigservice.h M src/ibusconnection.c M src/ibusconnection.h M src/ibusdebug.h M src/ibusengine.c M src/ibuserror.h M src/ibusfactory.h commit a4f5ccb5db331e12edba798499315b569764233e Author: Peng Huang Date: 2009-04-17 13:56:11 +0800 Do nothing if the IM is not active. M bus/inputcontext.c commit 9b823482f4c60ac98e7509eb638c62b1019f4fa8 Author: Peng Huang Date: 2009-04-17 10:27:23 +0800 Change ibus startup phrase to Applications. M bus/ibus.desktop.in commit 03aa34685379928ba07ce354db8de272d1d87183 Author: dchen@redhat.com Date: 2009-04-15 18:38:51 +1000 API DOC for IBusConnection. M docs/reference/ibus/Makefile.am M src/ibusconnection.c M src/ibusconnection.h commit fc560cda9aa9f6f75c681c21c925a4fea8e4723a Author: dchen@redhat.com Date: 2009-04-15 10:11:36 +1000 Translation zh_TW updated; API DOC for IBusConfigServices; Modify Makefile.am for gtk-doc Surpress tmpl-build.stamp and trim ibus-sections.txt, so no need to keep ibus-sections.txt now. Revised some API DOC, Fix the API DOC of IBusEngine Add zh_TW translation, Add back some API DOC Add back some APIDOC API-DOC IBusBus IBusComponent IBusConfig IBusLookupTable Corrected spelling in ibuscompnent.[ch] Add documentation of ibusbus.c M docs/reference/ibus/.gitignore M docs/reference/ibus/Makefile.am D docs/reference/ibus/ibus-sections.txt M ibus.spec.in M po/LINGUAS M src/ibusbus.c M src/ibusbus.h M src/ibuscomponent.c M src/ibuscomponent.h M src/ibusconfig.c M src/ibusconfig.h M src/ibusconfigservice.c M src/ibusconfigservice.h M src/ibusconnection.c M src/ibusconnection.h M src/ibusengine.c M src/ibusengine.h M src/ibuslookuptable.h M src/ibusobject.h M src/ibusproperty.c M src/ibusservice.h M src/ibustypes.h commit e451b44e05244c673638cf9f54af4252adca55a8 Author: Peng Huang Date: 2009-04-15 11:29:20 +0800 Use mktemp replace $RANDOM M xinput-ibus commit 304e55afe5987e447941cb6aa5ba99c631801b8c Author: Peng Huang Date: 2009-04-15 11:09:07 +0800 Set $IBUS_SESSION_ID if it does not exsit. M xinput-ibus commit a18ca6fecb3180a188bb3571fbb67e6b72b30c67 Author: Peng Huang Date: 2009-04-15 11:02:27 +0800 Fix some problem when use IBUS_SESSION_ID M bus/server.c M src/ibusbus.c M src/ibusshare.c M xinput-ibus commit e61932c0922b189d8680b8cdc6e12d1881c98528 Author: Peng Huang Date: 2009-04-15 10:15:10 +0800 Add $IBUS_SESSION_ID in socket path. M bus/server.c M ibus/common.py M src/ibusbus.c M src/ibusshare.c M src/ibusshare.h commit 25ffd2b7f1952e07a072d94d6ab3409f82d3e8f0 Author: Peng Huang Date: 2009-04-15 07:54:28 +0800 Update te.po by krishna k M po/te.po commit cb890ef456badacbb72f19155b78e7c91f665f27 Author: Peng Huang Date: 2009-04-15 07:52:35 +0800 Add Alt+Release+Alt_R as trigger for Korean people. M data/ibus.schemas.in commit fd94b969dc64594a2d0d7af0518540bc742f65da Author: Peng Huang Date: 2009-04-15 07:50:09 +0800 Add HANDLED_MASK and IGNORED_MASK in python lib M ibus/modifier.py commit 590bb3a8993b029a4b4e46e05c2bfed7d200a8b4 Author: Peng Huang Date: 2009-04-15 07:48:06 +0800 Add IBUS_IGNORED_MASK and IBUS_HANDLED_MASK. M client/gtk2/ibusimcontext.c M src/ibusenumtypes.c M src/ibusinputcontext.c M src/ibustypes.h commit 44fe66329502e318d2a7fd78f80303b122c8def6 Author: Peng Huang Date: 2009-04-15 07:47:34 +0800 Add release mask if the hotkey is a signal key. M setup/keyboardshortcut.py commit 350be1a2e35669a483843fd2a3c9cc86415b3f11 Author: Peng Huang Date: 2009-04-14 18:42:38 +0800 Add IBUS_FORWARD_MASK for ignored key events. M client/gtk2/ibusimcontext.c commit 4332069bdd62573f6411c4912c7a0e15730e9f9b Author: Peng Huang Date: 2009-04-14 17:26:19 +0800 Add break in switch block M client/gtk2/ibusimcontext.c commit 1a0b3f8392ca94099534fc1e6ebcbc66d5d2f443 Author: Peng Huang Date: 2009-04-14 17:06:24 +0800 Add as.po by Amitakhya Phukan M po/as.po commit e1f5dc528e9063b9fbab8c01c2e1a2f313a9bced Author: Peng Huang Date: 2009-04-13 18:52:41 +0800 Change socket file permission to avoid securty issues. M bus/server.c commit 39ae49d1da9de17794021e5f118a7253f1897914 Author: Peng Huang Date: 2009-04-13 15:23:55 +0800 Fix a typo. M client/gtk2/ibusimcontext.c commit 9a69d238ff4ef62cbaeed2627a82e234b7cb5ad8 Merge: 9149a03e 584c5c27 Author: Peng Huang Date: 2009-04-13 12:34:14 +0800 Merge commit 'iwaim/master' commit 9149a03e72629e77f676552bda7feb3a4293340f Author: Peng Huang Date: 2009-04-13 12:29:35 +0800 Add hu.po by Sulyok Peti M AUTHORS M po/LINGUAS A po/hu.po commit 15767b6c2ee265ea92b9bd17e52d91c1c960664d Author: Peng Huang Date: 2009-04-13 12:27:10 +0800 Store prev_key event in inputcontext object. M bus/inputcontext.c commit 584c5c27c739a5c759d8e62865d40c4bb618492b Author: IWAI, Masaharu Date: 2009-04-11 03:33:11 +0900 update ja.po M po/ja.po commit 0d0dfd5f17b5b947a8b66dc9f10464bb386e1516 Author: Peng Huang Date: 2009-04-09 13:30:38 +0800 Add as.po by Amitakhya Phukan M AUTHORS M po/LINGUAS A po/as.po commit 6553465ac314dd5d10703bc3bacb61a9bdb715ef Author: Peng Huang Date: 2009-04-09 12:22:45 +0800 Add ta.po by Felix M AUTHORS M po/LINGUAS A po/ta.po commit dab4cf2ae4c17a5de7603de88d57446b0b7ce6e4 Merge: 34db2e09 88e85a79 Author: Peng Huang Date: 2009-04-08 17:15:51 +0800 Merge commit 'origin/master' commit 34db2e09f5f1460e567e61060a6b6a86da750709 Author: Peng Huang Date: 2009-04-08 17:13:37 +0800 Rename te_IN.po to te.po. M AUTHORS M po/LINGUAS R100 po/te_IN.po po/te.po commit 88e85a79259c463ec40536b3c9a962fd44a751a0 Author: Peng Huang Date: 2009-04-08 11:25:20 +0800 Update pl.po by Piotr Drąg M po/pl.po commit 1e989dfd70001fb19d0e35ac8700b270ad23fdf7 Author: Peng Huang Date: 2009-04-08 11:23:54 +0800 Update or.po by Manoj Giri M po/or.po commit e47c703020e3cb3291ca04b256c108c68e796fa4 Author: Peng Huang Date: 2009-04-07 18:29:53 +0800 Make lookup table vertical for all locales. M data/ibus.schemas.in commit e25cd87e8b2aed89e687cdf971e25523c93a5165 Author: Peng Huang Date: 2009-04-07 18:01:56 +0800 Update kn.po by Shankar Prasad Venkateshbhat M po/kn.po commit b64ba0bbd722f4ff117c56cc9b9e6958f4d5afbf Author: Peng Huang Date: 2009-04-07 17:56:02 +0800 Add Telugu translation by krishna k M AUTHORS M po/LINGUAS A po/te_IN.po commit 53dd4d5ff8d749cf407f7ae20782064561f2dfc9 Author: Peng Huang Date: 2009-04-07 17:41:26 +0800 Do not crash when ibus-daemon is not running. M client/gtk2/ibusimcontext.c commit 6a2b633a718e16fe7a20c469d715120142b05f28 Author: Peng Huang Date: 2009-04-07 15:43:56 +0800 Update default trigger & next engine hotkeys. M data/ibus.schemas.in commit 2604910179fc49b17075d8440611fd33dc2780de Author: Peng Huang Date: 2009-04-07 15:42:10 +0800 Add zh_HK.po by cchance@redhat.com M AUTHORS M po/LINGUAS A po/zh_HK.po commit 62305a25fcd96bab55c4b91c0b8cc542b2b1d28a Author: Peng Huang Date: 2009-04-07 15:38:13 +0800 Add bn_IN.po by Runa Bhattacharjee M AUTHORS M po/LINGUAS A po/bn_IN.po commit bd9ed2c374711cc8c2958e8f46cf36da02dbf744 Author: Peng Huang Date: 2009-04-07 10:45:42 +0800 Rename gu_in to gu M AUTHORS M po/LINGUAS R100 po/gu_IN.po po/gu.po commit 9e3211bb4773c604c6b2b2f69732731df47f85f0 Author: Peng Huang Date: 2009-04-07 10:44:57 +0800 Update mr.po M po/mr.po commit 46e24a871d03179e4525fc420a044855512d55aa Author: Peng Huang Date: 2009-04-07 10:41:02 +0800 Add Hindi translation by Rajesh Ranjan M AUTHORS M po/LINGUAS A po/hi.po commit 45aba8bcc27b8ff47d8ca1e4cf9835491e107c17 Author: Peng Huang Date: 2009-04-07 10:38:36 +0800 Update da.po by Kris Thomsen M po/da.po commit 01d5412ba373ae545be55ba35c49e2692537ee6b Author: Peng Huang Date: 2009-04-07 10:37:02 +0800 Add ar.po by muayyad.alsadi@ojuba.org M AUTHORS M po/LINGUAS A po/ar.po commit 646193035b3754997db71b9d97756b2a70879731 Author: Peng Huang Date: 2009-04-07 10:33:18 +0800 Update mr.po by sandeep shedmake M po/mr.po commit 2690a3c1bea2453c90e4ff841e0e8193452d16a5 Author: Peng Huang Date: 2009-04-06 15:09:07 +0800 Do not translate '[Control+space]' M po/ca.po commit ebfac70977b6f4d368f919f0f2d4561862deeeac Author: Peng Huang Date: 2009-04-06 15:07:46 +0800 Add gujarati translation by Sweta Kothari M AUTHORS M po/LINGUAS A po/gu_IN.po commit 16b03eb2c9973c0f2f5b96842687c96b6218f98b Author: Peng Huang Date: 2009-04-06 11:59:29 +0800 Add catalan translation by Xavier Conde Rueda M AUTHORS M po/LINGUAS A po/ca.po commit 7e78500ba5dd76387dcf58c65be68fd75f02317a Author: Peng Huang Date: 2009-04-06 11:47:44 +0800 Update po files. M po/da.po M po/es.po M po/fr.po M po/ibus.pot M po/ja.po M po/kn.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/sr.po M po/sr@latin.po M po/zh_CN.po commit 8af16adfcc0d83af6c2cb528dd79db815281c99d Author: Peng Huang Date: 2009-04-06 11:44:45 +0800 Make desktop files translated M bus/ibus.desktop.in M setup/ibus-setup.desktop.in commit 9d0b73db025e460eb289a887ab66d3d2f2714431 Author: Peng Huang Date: 2009-04-06 11:33:44 +0800 Use 'Shift+space' in ko locale as trigger. M data/ibus.schemas.in commit 777c42af86476706d56b40d787d6fd1bd891d8a0 Author: Peng Huang Date: 2009-04-06 11:26:58 +0800 Add 'Alt+Zenkaku_Hankaku' and 'Alt+grave' as trigger in ja locale. M data/ibus.schemas.in commit c5f6c7b041051eeecbdb02d2480e72e62ac598e9 Author: Peng Huang Date: 2009-04-06 09:40:04 +0800 Change "previous input method:" to "Previous input method:" in setup. M po/da.po M po/es.po M po/fr.po M po/ibus.pot M po/ja.po M po/kn.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/sr.po M po/sr@latin.po M po/zh_CN.po M setup/setup.glade commit 46780949a15c4e2e525dabb6e54b0ff0c1a2c737 Author: Peng Huang Date: 2009-04-06 09:35:58 +0800 Change 'engine' to 'input method' in language panel. M po/da.po M po/es.po M po/fr.po M po/ibus.pot M po/ja.po M po/kn.po M po/mr.po M po/or.po M po/pa.po M po/pl.po M po/sr.po M po/sr@latin.po M po/zh_CN.po M setup/main.py M ui/gtk/languagebar.py commit 40b52f16b54171492ba76bb257f544b8122fd3a4 Author: Peng Huang Date: 2009-04-05 23:10:18 +0800 Update pl.po by Piotr Drąg M po/pl.po commit 87ca08bfacb5af34df40594dba2b79fe81503676 Author: Peng Huang Date: 2009-04-04 13:39:31 +0800 Change the comment of Modifiers mask M src/ibustypes.h commit a5bc4b13cbc22baecb41836e643abdc9e2faeaf2 Author: Peng Huang Date: 2009-04-04 13:28:08 +0800 Fix crash when engine is destroyed. M src/ibusfactory.c commit 23a12b33ad321da4db75a058b9d5010f8190f1ca Author: Peng Huang Date: 2009-04-04 13:00:43 +0800 Just call ibus_input_context_process_key_event in snooper callback. M client/gtk2/ibusimcontext.c commit f6cc29cabc88f968ff9a8196e135934e7b3ca83e Author: Peng Huang Date: 2009-04-04 09:24:56 +0800 Update fr.po by julroy67 M po/fr.po commit 4429e4d1bb6de1c6aea5c5080b346ce8bdd51713 Author: Peng Huang Date: 2009-04-03 20:16:20 +0800 Add Kannada translation by Shankar Prasad Venkateshbhat M AUTHORS M po/LINGUAS A po/kn.po commit 1104f938d8906688e2a32c9204d7205e90803225 Author: Peng Huang Date: 2009-04-03 16:19:30 +0800 Does not translate [Control+space] M po/sr.po M po/sr@latin.po commit f89a71220141320b4f5f59268ee19a25b3c5208d Author: Peng Huang Date: 2009-04-03 16:15:19 +0800 Add Danish translation by Kris Thomsen M AUTHORS M po/LINGUAS A po/da.po commit 5ec29c3ddc44816f932ab1ae57ba4b1ce8695cfd Author: Peng Huang Date: 2009-04-03 13:13:06 +0800 Fix crash when ibus-daemon shutdown or restart M client/gtk2/ibusimcontext.c M src/ibusbus.c commit aa0a469afe49da00dc1be96809df91fc74dc60e9 Author: Peng Huang Date: 2009-04-03 10:48:50 +0800 In ko locale, the lookup table will be vertical by default M data/ibus.schemas.in commit c3177a4b9d3fd2ca4150dcca96225df9303d96d0 Author: Peng Huang Date: 2009-04-03 10:39:22 +0800 Add Spanish translation by Domingo Becker M AUTHORS M po/LINGUAS A po/es.po commit e2194783810fc3b572a419ea3027a938f7357959 Author: Peng Huang Date: 2009-04-03 10:23:19 +0800 Use 'make update-po' to update po files. M po/fr.po M po/ja.po M po/pa.po M po/pl.po commit 11d929a343036a33d62a04ee865e18774b154e13 Author: Peng Huang Date: 2009-04-03 10:21:56 +0800 Tranlsate some msg in zh_CN.po M po/zh_CN.po commit 457bd430bf8f6f0338cc3ded1cfc61fb53c63ce6 Author: Peng Huang Date: 2009-04-03 10:10:11 +0800 Add Polish translation by Piotr Drąg M AUTHORS M po/LINGUAS A po/pl.po commit cae3c41d789705c814dd0cd15c9d9a559fec7ba0 Author: Peng Huang Date: 2009-04-03 10:03:46 +0800 Add Oriya translation by Manoj Giri M AUTHORS M po/LINGUAS A po/or.po commit c964bc75c2308ad4355b753e256f4aa0684f0050 Author: Peng Huang Date: 2009-04-02 15:16:07 +0800 Add mr.po by sandeep shedmake M AUTHORS M po/LINGUAS A po/mr.po commit 68ce68c02044cbb50fa970dc3dec668954ebec35 Author: Peng Huang Date: 2009-04-02 15:14:23 +0800 Add ibus.pot M po/.gitignore A po/ibus.pot commit cc84817859e933d8728ec773898737d07786cd72 Author: Peng Huang Date: 2009-04-02 15:09:12 +0800 Add Serbian translations by Miloš Komarčević M AUTHORS M po/LINGUAS A po/sr.po A po/sr@latin.po commit 86be0ab7838a9b00ebf6c26675aa01007020bf43 Author: Peng Huang Date: 2009-04-02 15:04:50 +0800 Remove some useless code. M src/keyname-table.h commit ec032b9d8a80bb313ea10f13fd161b4022c2899a Author: Peng Huang Date: 2009-04-02 14:57:57 +0800 Update pa.po by A S Alam . M po/pa.po commit bff536620bd48884160f0186ee048d98feddf725 Author: Peng Huang Date: 2009-03-31 11:13:03 +0800 Fix make distcheck errors. M bus/Makefile.am M data/Makefile.am M po/POTFILES.in M po/fr.po M po/ja.po M po/pa.po M po/zh_CN.po M setup/Makefile.am commit 9397b0a70a8b645da67f7aab3d1c113c1b21ecf6 Author: Peng Huang Date: 2009-03-30 21:15:33 +0800 Use a global focus_im_context to track the focus, and deliver the key event to the focus_im_context. M client/gtk2/ibusimcontext.c commit d6ffbc6f62d9599a710801d3dc6c5132f1b5cccb Author: Peng Huang Date: 2009-03-30 17:43:29 +0800 Update po files. M po/fr.po M po/ja.po M po/pa.po M po/zh_CN.po commit ccf200f97d67716f5cab683f6c035bf9a089a542 Author: Peng Huang Date: 2009-03-30 17:41:35 +0800 Localize desktop files and gconf schemas file. M autogen.sh M bus/Makefile.am R100 bus/ibus.desktop bus/ibus.desktop.in M configure.ac M data/Makefile.am R066 data/ibus.schemas data/ibus.schemas.in M setup/Makefile.am R100 setup/ibus-setup.desktop setup/ibus-setup.desktop.in commit 2456d5b4d3a3d2dc97411551b871e6de1fd3e506 Author: Peng Huang Date: 2009-03-30 16:09:59 +0800 Fix indent problem in ibus.schemas. M data/ibus.schemas commit 0a16fb72e94db3115796db65afff10aad141371b Author: Peng Huang Date: 2009-03-30 14:47:09 +0800 Fix problem when create socket address. M client/gtk2/ibusimcontext.c M src/ibusshare.c commit aab43511420f04c37d96c39b6b807fe799036b9c Author: Peng Huang Date: 2009-03-30 14:31:15 +0800 Get display name from gdk_display_get_name M client/gtk2/ibusimcontext.c M src/ibusshare.c M src/ibusshare.h commit 81963e23e2688f28ef0acbdbf72d831be097bd62 Author: Peng Huang Date: 2009-03-30 14:13:30 +0800 Use "unix" as hostname if hostname is empty. M ibus/common.py M src/ibusshare.c commit 15e6b996bc63dcc6cf97802ce1905d2aa582144c Author: Peng Huang Date: 2009-03-30 14:07:27 +0800 Does not include X screen number in socket address. M ibus/common.py M src/ibusshare.c commit 7600d42c7cb5ccd91f1da694e8196fc8f57cba7d Author: Peng Huang Date: 2009-03-29 13:44:25 +0800 Use gtk key snooper to get the key events. M client/gtk2/ibusimcontext.c commit a3b47259c4bf15d5e0afb759acb2a68ebb7724b4 Author: Peng Huang Date: 2009-03-29 09:25:39 +0800 Change ibuscontext => ibusimcontext; ibus_context => ibuscontext M client/gtk2/ibusimcontext.c commit e48dfe9377db9c40fbfdf81515e730072cef362a Author: Peng Huang Date: 2009-03-29 09:15:10 +0800 Remove private struct. M client/gtk2/ibusimcontext.c M client/gtk2/ibusimcontext.h commit 0236cd777e6088296a2ac51caf8d859eeac5d557 Author: Peng Huang Date: 2009-03-29 08:27:11 +0800 Emit preedit-start & preedit-end signals. M client/gtk2/ibusimcontext.c commit 56760794ebe6bb23e2fe2fdc5e3dca825be54df7 Author: Peng Huang Date: 2009-03-28 12:12:47 +0800 exit 1 when some command failed. M autogen.sh commit 483ebd376b30e905998c72c4e9c3dd095707d63e Author: dchen@redhat.com Date: 2009-03-27 14:19:04 +1000 Add ibus-sections.txt as gtk-doc needs it to show the title correctly. A docs/reference/ibus/ibus-sections.txt commit e3fe226e2ddbe7754ed9cb0c60301e4959075eb1 Author: dchen@redhat.com Date: 2009-03-27 14:17:35 +1000 API-DOC and Fix iBus Google issue 320. M .gitignore M configure.ac M docs/reference/ibus/.gitignore M docs/reference/ibus/Makefile.am M docs/reference/ibus/ibus-docs.sgml M ibus.spec.in M src/ibusattribute.h M src/ibusconnection.h M src/ibusengine.c M src/ibusenginedesc.h M src/ibusobject.h M src/ibusproperty.h M src/ibustext.h M src/ibustypes.h commit 7c6b337ece598b5c0cf9c92b0888b45f8770ff83 Author: Peng Huang Date: 2009-03-26 14:20:08 +0800 Fix problem when remove all hotkeys. M setup/main.py commit 11e8e771f4de51fabfed74f1b2e9a66215751da0 Author: Peng Huang Date: 2009-03-23 14:51:06 +0800 Set cursor pos to zero in ibus_lookup_table_clear. M src/ibuslookuptable.c commit 3dc5912b21668edb0c7f9656b40c2c4586f75557 Author: Peng Huang Date: 2009-03-23 10:17:04 +0800 Check reply of ProcessKeyEvent. M bus/engineproxy.c commit 2bd2d52476f4828f915ee54182cc0a654f05af53 Author: Huang Peng Date: 2009-03-22 20:31:06 +0800 Add method ibus_engine_update_lookup_table_fast, it only sends current page. M src/ibusengine.c M src/ibusengine.h commit bdb7e54c92b6a111a69889b85a17452b6e9d9abf Author: Huang Peng Date: 2009-03-22 19:22:32 +0800 Use GO_DOWN & GO_UP icons when candidates window is horizontal M ui/gtk/candidatepanel.py commit 4ecbd9354383b58a6345e3f3ac43552112c42897 Author: Huang Peng Date: 2009-03-22 09:30:34 +0800 Fix a typo. M bus/inputcontext.c commit 1b8433a38bb1bca0b2378a6a06568b73fc307991 Author: Huang Peng Date: 2009-03-20 18:34:05 +0800 Update fr.po by Julien M po/fr.po commit 203bc91e596a24d3935ace3f8f6827eace79b58e Author: Huang Peng Date: 2009-03-20 17:25:42 +0800 Open a new line after M src/ibusenginedesc.c commit ab417dd043ee6ba338518758c1c833f6ccbb7bdf Author: Huang Peng Date: 2009-03-20 11:24:27 +0800 Update ja.po by iwaim.sub M po/ja.po commit bf9ed69bfa4ee7c82397ba28b18869e1c80cc1a7 Author: Huang Peng Date: 2009-03-20 09:52:51 +0800 Change "Dynamically" to "When active" in setup window. M po/fr.po M po/ja.po M po/pa.po M po/zh_CN.po M setup/setup.glade commit 4b3a45829005626d9f6e23dfde97731b70e2bdeb Author: Huang Peng Date: 2009-03-11 15:56:47 +0800 Remove is_press argument from gtk im module. M client/gtk2/ibusimcontext.c commit 9f2ca25b5638cc1e3f10a2671472dbd72e45e479 Author: Huang Peng Date: 2009-03-11 15:54:39 +0800 Remove is_press from ForwardKeyEvent signal. M src/ibusinputcontext.c commit 6af7e9f2f1ff18e4a6334d15f14c27e3edf2111c Author: Huang Peng Date: 2009-03-11 15:51:34 +0800 Implement ibus_engine_forward_event_key function. M src/ibusengine.c M src/ibusengine.h commit 3a560b8f18128c28fa759eb32d10bee7fd86e008 Author: Huang Peng Date: 2009-03-11 14:39:30 +0800 Update po files. M po/fr.po M po/ja.po M po/pa.po M po/zh_CN.po commit 0dc9376baaf67e8fcb363b1c9623bd634e35ccff Author: Huang Peng Date: 2009-03-11 14:38:14 +0800 Fix problems during making distcheck M src/Makefile.am commit 09c1fe4ecaf790633d76408c4754ce535da6f4c5 Author: Huang Peng Date: 2009-03-11 14:28:50 +0800 Fix translation msg in zh_CN.po. M po/zh_CN.po commit a8f1c7d06886f282ceeb2637a843935287eaa46e Author: Huang Peng Date: 2009-03-11 14:18:11 +0800 Change sensitive of custom font label. M setup/main.py M setup/setup.glade commit cd8f83a89ae5f80a60fe344a56ef82206dc45725 Author: Huang Peng Date: 2009-03-11 14:14:27 +0800 Update setup ui, follow gnome UI guidelines. M po/fr.po M po/ja.po M po/pa.po M po/zh_CN.po M setup/main.py M setup/setup.glade commit edbab2fa45e5775249e426309cee6b5254ab0342 Author: Huang Peng Date: 2009-03-09 17:23:50 +0800 Remove some debug output. M bus/matchrule.c commit 21b79630873c79ced591cf5e909660cf4c1bda69 Author: Huang Peng Date: 2009-03-09 17:21:45 +0800 Implement ibus_bus_get_config function. M bus/dbusimpl.c M bus/matchrule.c M src/ibusbus.c M src/ibusbus.h M src/ibusproxy.c M src/ibusproxy.h M src/test-proxy.c commit a1ac8682c81051518ad0ff613958a0b96054091c Author: Huang Peng Date: 2009-03-06 10:42:28 +0800 Implement language panel: Always hide feature. M data/ibus.schemas M po/fr.po M po/ja.po M po/pa.po M po/zh_CN.po M setup/main.py M setup/setup.glade M ui/gtk/languagebar.py M ui/gtk/panel.py commit d415e945d62d69c097cf6aae701f42806529dfb7 Author: Huang Peng Date: 2009-03-05 14:39:12 +0800 Process release key event correctly. M bus/inputcontext.c M src/ibushotkey.c M src/ibushotkey.h commit 740acea3c7103af63f4e572c4e4c3ae39153430e Author: Huang Peng Date: 2009-03-05 14:26:10 +0800 Fix name error. M src/ibuskeynames.c commit 5b4fafc09b31022d8eb031faf40692007e49e319 Author: Huang Peng Date: 2009-03-05 13:18:40 +0800 Do not restore preedit in _enabled_cb. M client/gtk2/ibusimcontext.c commit 57f551e57f9cc8c11a8e572f1db73036ad0e4d2b Author: Huang Peng Date: 2009-03-05 13:16:06 +0800 Save lookup table in input context. M bus/inputcontext.c commit 839bc5b981f72e391c1e33bda9a12d37d17a0d7f Author: Huang Peng Date: 2009-03-04 18:16:05 +0800 Store and restore properties for input context. M bus/inputcontext.c commit fa8b528ae670b04ec75f3c634dec032e7eee0cca Author: Huang Peng Date: 2009-03-04 18:11:55 +0800 Implement ibus_prop_list_update_property. M src/ibusproperty.c M src/ibusproperty.h commit 2fd4b2e2a4c53fb51e3c9b2a2909e1425bcd3252 Author: Huang Peng Date: 2009-03-04 17:27:12 +0800 Save and restore status of InputContext in focus_in & out. M bus/inputcontext.c commit 9f58762089f0a4b5ec887cd972b4762e7e46455b Author: Huang Peng Date: 2009-03-02 13:29:32 +0800 Limit numeber of hotkey. M setup/keyboardshortcut.py commit 9c00f8f1d762db1cd61dd1a758e587df6c7dde96 Author: Huang Peng Date: 2009-03-02 13:13:09 +0800 Refine coding style. M bus/main.c commit e1c8775b084f3c5080e185a94d0e41f185526eba Author: Huang Peng Date: 2009-03-02 13:05:22 +0800 Fix some compile problems with Sun C compiler. M bus/Makefile.am M bus/main.c M client/x11/main.c M configure.ac M src/ibushotkey.c M src/ibusmessage.c M src/ibuspendingcall.c M util/IMdkit/i18nX.c commit cd4d9b6ebfa4a66ba6bd89c5b7d2b34eb25864af Author: Huang Peng Date: 2009-02-28 21:42:11 +0800 Assert input of ibus_text_new_* M src/ibustext.c commit 3ff6035410d535ec17e5049be43c09dcd229e7b9 Author: Huang Peng Date: 2009-02-28 19:15:49 +0800 Sort the languages in input methods combobox. M setup/enginecombobox.py commit c28cb8a517b8edb835b5d4b37c914ce6b93e39bd Author: Huang Peng Date: 2009-02-28 19:08:12 +0800 Clear preedit when input context is disabled. M client/gtk2/ibusimcontext.c commit 0b8d0067b475aade2bf5f8de7db5dd47d8a59b5e Author: Huang Peng Date: 2009-02-28 18:32:59 +0800 Fix make distcheck failed. M Makefile.am M data/Makefile.am M ibus/Makefile.am commit a5087b245906efd4f63800a6f5e701f84c218d6e Author: Huang Peng Date: 2009-02-28 18:27:36 +0800 Fix compile warnings. M bus/server.c commit 0eea8dfe33c68589406f71d411875b862ddfb377 Author: Huang Peng Date: 2009-02-27 16:55:26 +0800 Load default input method engine in right moment. M bus/dbusimpl.c M bus/ibusimpl.c commit be022f73729a0405d1bdba7fb3ef2549ff418977 Author: Peng Huang Date: 2009-02-27 13:46:06 +0800 Close all fds before restart M bus/ibusimpl.c commit 23c1bfcf064909af2075ebc02fc0772fb07a5a1f Author: Huang Peng Date: 2009-02-27 09:37:49 +0800 Add data/Makefile.am. A data/Makefile.am commit 8db276818d12776ba0cd7819972fa5ce30005164 Author: Huang Peng Date: 2009-02-27 09:07:18 +0800 Move icons to data/icons. Install schemas. M Makefile.am M configure.ac R100 setup/ibus.schemas data/ibus.schemas R100 icons/Makefile.am data/icons/Makefile.am R100 icons/engine-default.svg data/icons/engine-default.svg R100 icons/ibus-help.png data/icons/ibus-help.png R100 icons/ibus-keyboard.svg data/icons/ibus-keyboard.svg R100 icons/ibus-locale.svg data/icons/ibus-locale.svg R100 icons/ibus-setup.svg data/icons/ibus-setup.svg R100 icons/ibus-zh.svg data/icons/ibus-zh.svg R100 icons/ibus.svg data/icons/ibus.svg commit fc9e5a5b087f68dc1239ad7629a1575fb83510ac Author: Huang Peng Date: 2009-02-27 08:11:05 +0800 Add lookup_table_oritation schema. M setup/ibus.schemas commit dbf277afecb71c3117f4c4280a30c11b7febddba Author: Huang Peng Date: 2009-02-27 07:58:56 +0800 Fix indent of ibus.schemas. M setup/ibus.schemas commit e899ad130ee90887c5d3b3e59417d18c5d5c041c Author: Huang Peng Date: 2009-02-27 07:56:23 +0800 Fix a typo in ibus.schemas. M setup/ibus.schemas commit 7bfdbbc429dbbb02ef7b38d0381ef578e6252509 Author: Peng Huang Date: 2009-02-27 07:51:06 +0800 Add ibus.schemas for gconf A setup/ibus.schemas commit 6e92cdd6c64954f5d21e9c73f444b0ca3ecdd9ec Author: Peng Huang Date: 2009-02-27 07:01:02 +0800 Change some methods of matchrule M bus/dbusimpl.c M bus/matchrule.c M bus/matchrule.h commit 7e8d1bfad188854ad45550a2c2467b5caf83923c Author: Huang Peng Date: 2009-02-27 06:29:26 +0800 Check dbus-python in configure.ac. M configure.ac commit f3eb21d578df711c707a333714d7e05a50d7e39c Author: Huang Peng Date: 2009-02-25 18:32:49 +0800 Check ucs4 and unichar when create IBusText object. M src/ibustext.c commit 1afc03e795559a06be1ed117fa2e8c52db016b66 Author: Huang Peng Date: 2009-02-25 14:37:09 +0800 Change title of API docs. M docs/reference/ibus/ibus-docs.sgml commit 9620c9eecd4b435ec1f3434a43e4d06807275f82 Author: Huang Peng Date: 2009-02-25 11:24:50 +0800 Update po files. M po/fr.po M po/ja.po M po/pa.po M po/zh_CN.po commit e21e45aee092fa6681aafeea9c30013977a88deb Author: Peng Huang Date: 2009-02-25 11:11:24 +0800 Give out more information when server listens failed. M bus/server.c M src/ibusserver.c commit 957b778d361fa270e37bc403c2640698f4718e29 Author: Peng Huang Date: 2009-02-25 11:03:31 +0800 Check current uid during startup. M bus/main.c commit 9ec145ef02562f9f42618e86c751141d860d3db6 Author: Peng Huang Date: 2009-02-25 10:30:03 +0800 Refine coding style. M src/ibusserver.c commit d9d401145a59e095753e86d05c55bd57e3735596 Author: Huang Peng Date: 2009-02-24 17:04:27 +0800 Replace priority in EngineDesc with rank. M bus/ibusimpl.c M src/ibusenginedesc.c M src/ibusenginedesc.h commit 8df6310b6eaf26d31daf6d4fdf4d4c41265e64ec Author: Huang Peng Date: 2009-02-24 16:50:13 +0800 Fix typo. M src/ibusenginedesc.c commit add104e86d0c4c53d5eea3f5b4dcc9db95b0f604 Author: Huang Peng Date: 2009-02-24 16:38:47 +0800 Sort the default preload engines by priority. M bus/ibusimpl.c commit 388debd8ad1fdaefd2ad42c872f9d7c5577fb73c Author: Huang Peng Date: 2009-02-24 16:38:22 +0800 Add priority in IBusEngineDesc. M src/ibusenginedesc.c M src/ibusenginedesc.h commit db492c157773af0a932ca1fe6b9a6b8b977e6194 Author: Huang Peng Date: 2009-02-24 16:28:22 +0800 Enable default engines by locale name. M bus/ibusimpl.c M bus/registry.c M bus/registry.h commit 0ea4adadcba4a81bfca597d6aa587d461c3c6644 Author: Huang Peng Date: 2009-02-24 08:27:55 +0800 Fix crash when parse component. M src/ibuscomponent.c commit f0409715607bd13f9c0819e59fe19f3ae8864bc4 Author: Huang Peng Date: 2009-02-24 08:21:56 +0800 Update ibus.desktop. M bus/ibus.desktop commit 9265deb7c084c5e37b8402de8d38c0e7b0671e2b Author: Huang Peng Date: 2009-02-24 08:13:18 +0800 implement next_engine & prev_engine hotkeys. M bus/ibusimpl.c M bus/inputcontext.c M bus/inputcontext.h commit cc16419cf27d12f2be12774d71399fd82cf497e3 Author: Peng Huang Date: 2009-02-23 19:08:47 +0800 Hide "Auto start ibus on login" checkbox. M setup/setup.glade commit 1e554a00e8bbdc363246b1fbb7261810bce1b819 Author: Peng Huang Date: 2009-02-23 18:49:28 +0800 Do not install ibus.sh. M Makefile.am commit 035272400f729b04e7be439974d6cc1b9eb4a005 Author: Peng Huang Date: 2009-02-23 18:45:31 +0800 Install ibus.desktop in $(sysconfdir/xdg/autostart M bus/Makefile.am M bus/ibus.desktop commit 7ba4f03df637ff1df2b441c5f754917b334130f7 Author: Peng Huang Date: 2009-02-23 16:36:20 +0800 Install ibus.sh to /etc/X11/xinitrc.d. M Makefile.am A ibus.sh commit 72c1294372247736f566ed35cee45710d738a5fd Author: Peng Huang Date: 2009-02-23 15:17:58 +0800 Use "Input Methods" replace "Engines" in setup ui. M setup/setup.glade commit 1e9afd4067805cb1f2bbdfd64f1b0d93e6e39692 Author: Peng Huang Date: 2009-02-23 15:09:11 +0800 Use "No input method" replace "Disable" in im menu. M ui/gtk/panel.py commit f86438bf0ee2f83f4744226e4d640503ff985b12 Author: Peng Huang Date: 2009-02-23 15:05:50 +0800 Add Disable menu item on Input Menu. Use it to disable InputContext. M bus/inputcontext.c M ibus/inputcontext.py M ibus/interface/iinputcontext.py M ui/gtk/panel.py commit 4c180f55b8e485aa0ac1bc1af2aa0d1b99886470 Author: Peng Huang Date: 2009-02-23 14:37:19 +0800 Update tooltip of status icon. M po/zh_CN.po M ui/gtk/panel.py commit 65672c00388ba8c3e98a39e700d097c9c7472172 Author: Peng Huang Date: 2009-02-23 14:23:47 +0800 Change default valut of panel/auto_hide to True. M setup/main.py commit 72effa14e025424caad3e94c4b76408c803f27be Author: Peng Huang Date: 2009-02-23 14:19:57 +0800 Auto hide panel by default. M ui/gtk/panel.py commit 7720f5b1cb5f32776938dd79424d5c443c1bd7fd Author: Peng Huang Date: 2009-02-23 14:17:21 +0800 ./configure will be failed when miss gconf-2.0 M configure.ac commit 77085349e1145913b0e162c9676b5852fa7878a0 Author: Peng Huang Date: 2009-02-23 11:30:00 +0800 Only export symbols start with ibus_ M src/Makefile.am commit d7d49a217a5d2b11487a09d38c12fb34b487827d Author: Peng Huang Date: 2009-02-23 11:18:36 +0800 Remove unused dependence pygobject M configure.ac commit af0e05bbd5590fcb8b5255ab30ca0b109ba31f09 Author: Huang Peng Date: 2009-02-18 17:50:16 +0800 Show IM language & name in engine list. M setup/enginetreeview.py commit 1e13b3091c7b474c8b51c46eae83074002c0c0cf Author: Huang Peng Date: 2009-02-18 17:26:19 +0800 Show default icon on language bar for engine without icon. M ui/gtk/panel.py commit fb135922afab3b86365a251ea708cb4108f93835 Author: Huang Peng Date: 2009-02-18 16:37:19 +0800 Call ibus_object_destroy in bus_input_context_unset_engine. M bus/inputcontext.c commit 3e72c5d339c5ca998bf06f0ebc91466dd90c16e6 Author: Huang Peng Date: 2009-02-18 16:21:26 +0800 Fix BusEngineProxy leak. M bus/ibusimpl.c commit b680ae1c4bcd1ed2ce72ee8e0bfcae4d929be64d Author: Huang Peng Date: 2009-02-18 12:54:16 +0800 Remove unused code in ibusconfig.c M src/ibusconfig.c commit b88b8cecf5c0bbfacad2d0ca24c5af2b4b6a1915 Author: Huang Peng Date: 2009-02-18 11:25:13 +0800 Change the title fo setup dialog. M setup/setup.glade commit 7e2c540cf96674b14db24ab8763654a915a590a1 Author: Huang Peng Date: 2009-02-18 11:16:08 +0800 Hide about tab in setup dialog. M setup/setup.glade commit 4899394c4fe37bf17551c8b153f9bd9d8a08cfaf Author: Huang Peng Date: 2009-02-18 11:14:22 +0800 Adjust setup UI. M setup/setup.glade commit 02600a546271422a3c679f3344073412755f60c4 Author: Huang Peng Date: 2009-02-18 10:53:08 +0800 Change title of ibus-setup dialog. M setup/setup.glade commit 07b85f13393332b60d785a2f41c3222e0f4b25b7 Author: Huang Peng Date: 2009-02-17 17:52:16 +0800 Update po files. M po/fr.po M po/ja.po M po/pa.po commit bef0025c90f721937bcd98d354974f0082026ed6 Author: Huang Peng Date: 2009-02-17 17:47:47 +0800 Add ibus-docs.sgml. M docs/reference/ibus/.gitignore M docs/reference/ibus/Makefile.am A docs/reference/ibus/ibus-docs.sgml commit d509f1529f316165e239ac49caaaa05c08d6853c Author: Huang Peng Date: 2009-02-17 16:06:22 +0800 Update zh_CN.po. M po/zh_CN.po commit be16cc6eb48ea98e1104abf77f2adb85e5976493 Author: Huang Peng Date: 2009-02-17 16:05:30 +0800 Add setup/enginecombobox.py. M po/POTFILES.in commit b5596bae0e81ccdd023999fbc15e7976ad88abbe Author: Huang Peng Date: 2009-02-17 13:19:47 +0800 Use engine-default.svg for IM without icon M ui/gtk/icon.py M ui/gtk/panel.py commit 65188367b7ae20b0c7a79d8c3dc9649e76ea433c Author: Huang Peng Date: 2009-02-17 12:55:12 +0800 Show 'Select an input method' in Engine select ComboBox. M setup/enginecombobox.py commit 2a608292745a8caedbb1b19e019346e27c535725 Author: Huang Peng Date: 2009-02-17 12:45:30 +0800 Use right icon for engine without icon. M setup/enginecombobox.py M setup/enginetreeview.py commit d19d55944eed84a32a874b6e9b080f9bddb67a5b Author: Huang Peng Date: 2009-02-17 09:51:24 +0800 Use DBUS_INTROSPECT_1_0_XML_DOCTYPE_DECL_NODE in introspect. M bus/inputcontext.c commit 180f762a1b0a6a4caedec37e126376008e46da19 Author: Huang Peng Date: 2009-02-16 14:18:01 +0800 Fix typo. M src/ibusengine.c M src/ibusmarshalers.list commit fcf4af4736529e4a65f3213cd1f1157b7c258811 Author: Peng Huang Date: 2009-02-17 09:37:35 +0800 Use NULL to replace 0 as the last argument of g_object_new. M src/ibusattribute.c M src/ibusfactory.c M src/ibushotkey.c M src/ibusproperty.c M src/ibusserializable.c M src/ibustext.c commit 50453e4380288f343af04e02bf9e50ea438f198c Author: Huang Peng Date: 2009-02-16 13:55:12 +0800 Disable inputcontext when the engine is destroyed. M bus/inputcontext.c commit 57d3b559648c3674a64a8031d30456c69cb29eae Author: Huang Peng Date: 2009-02-16 13:26:55 +0800 Use guint to replace gint for state argument of property_activate method. M src/ibusengine.c M src/ibusengine.h commit 0228a5cf757e59fda62e32cfd91282b74d258605 Author: Huang Peng Date: 2009-02-16 13:22:01 +0800 Use ibus_message_new_error_printf correctly in ibusengine.c M src/ibusengine.c commit be4490a1893be27c65c35285776644902f466310 Author: Huang Peng Date: 2009-02-16 12:47:48 +0800 Create PROPERTY_* signals correctly and refine coding style. M src/ibusengine.c commit aa46b3e3a1956074ce4ddbb22dae1af25f3f094e Author: Huang Peng Date: 2009-02-16 10:36:03 +0800 Fix compile warnings. M client/x11/main.c commit a8869d09f5764d1bf2d37ef6c4d90caa1dc35c11 Author: Huang Peng Date: 2009-02-16 10:35:37 +0800 Do not call ibus_connection_flush in ibus_bus_exit to avoid crash. M src/ibusbus.c commit f77a0cb12e8349e097d7869528f57c29d05d02d9 Author: Huang Peng Date: 2009-02-15 16:31:26 +0800 Add --copy arguments on gtkdocize command. M autogen.sh commit 227f950b2fae0ff5c37d773cb41f864a15138967 Author: Huang Peng Date: 2009-02-15 16:28:26 +0800 Move ldconfig from main to libs rpm. M ibus.spec.in commit 6b7c922f315c7817a6c64533f8b8eed7946eaa3d Author: Huang Peng Date: 2009-02-15 16:11:30 +0800 Refine coding style. M bus/ibusimpl.c M bus/main.c M src/ibusbus.c commit c4d1ac55757c91abb56682a4c349abe2711d0cea Author: Huang Peng Date: 2009-02-15 15:59:50 +0800 Adjust the languagebar extend policy. M ui/gtk/languagebar.py commit 27600c499fdf8a57ffa4e27f436099ad4eaa89f0 Author: Huang Peng Date: 2009-02-15 15:51:16 +0800 Update rpm spec to move libibus.so to ibu-libs.rpm. M ibus.spec.in commit 2cc05f88271b213d98b6fada10283f1a2fe39caa Author: Huang Peng Date: 2009-02-15 15:40:54 +0800 Make language transparent when inactivate. M ui/gtk/languagebar.py M ui/gtk/panel.py commit 05f1fc037cd2113da03315fb863352f6cdfceee6 Author: Huang Peng Date: 2009-02-15 15:09:53 +0800 Make language bar left extend when language is close to right edge of screen. M ui/gtk/languagebar.py commit 06c4f228a3176b88947523bf635d49e0fee9b978 Author: Huang Peng Date: 2009-02-15 14:51:41 +0800 Not call FocusIn & FocusOut methods of engines, if input context is disabled. M bus/inputcontext.c commit be18567eac632c9fd6ef6ff14576d43b02f67d17 Author: Huang Peng Date: 2009-02-15 14:41:23 +0800 Remove gnome-python2-gconf from requires in spec. M ibus.spec.in commit 5eb52e011238028cb81e7c71e39b4d506c34e96e Author: Huang Peng Date: 2009-02-15 14:27:37 +0800 Fix a typo, and create the engine after create the input context. M bus/engineproxy.c M bus/ibusimpl.c commit fc855ccfe89d59d2d5a1dc401ef6b1074a6a74c6 Author: Huang Peng Date: 2009-02-15 14:27:03 +0800 Add SetCapabilities on org.freedesktop.IBus.Engine interface. M ibus/engine.py M ibus/interface/iengine.py commit 3693f5e4e4066ca76cb3412ad5ddfb58b3e0994d Author: Huang Peng Date: 2009-02-15 14:25:38 +0800 Implement several methods of IBusLookupTable. M src/ibuslookuptable.c M src/ibuslookuptable.h commit fa8ead03037eb3cd5a522db1452a847fcd32ac57 Author: Huang Peng Date: 2009-02-14 20:24:45 +0800 Refine code. M bus/inputcontext.c commit 47c8a11d3a781478dc0f3d3f0e1d565ec63dd429 Author: Huang Peng Date: 2009-02-14 19:45:24 +0800 Use --xim replace -x. M xinput-ibus commit 916f4a43c33d922a39e98f082214f04c36604806 Author: Huang Peng Date: 2009-02-14 19:44:32 +0800 Add G_MOSULE_EXPORT on some functions. M client/gtk2/ibusim.c commit a871e41e512c4a977d9b6504e0f166ed08c0f216 Author: Huang Peng Date: 2009-02-14 19:41:56 +0800 Add API: ibus_lookup_table_{page,cursor}_{down,up}. M src/ibuslookuptable.c M src/ibuslookuptable.h commit 0e4911f38f34f5580748f6cb4b5fd584d712ef8f Author: Huang Peng Date: 2009-02-14 09:22:00 +0800 Fix typo. M configure.ac commit ef5485bd1e53fb2fbce13827928f7eecb2ea75ef Author: Peng Huang Date: 2009-02-13 14:10:57 +0800 Flush connection to make sure IBus.Exit has been sent before process exiting. M src/ibusbus.c commit 748b6b1f6c181a72daadbf137f1c29d77b499f2a Author: Huang Peng Date: 2009-02-13 09:37:34 +0800 set cursor location in bus_input_context_set_engine. M bus/inputcontext.c commit 21ae0e4f8af46aa6beec24da4b8e0278d4acc1a1 Author: Huang Peng Date: 2009-02-12 13:24:42 +0800 Update .gitignore files. M gconf/.gitignore M po/.gitignore M src/.gitignore M ui/gtk/.gitignore commit 0bc9cf6403282a4c10e9331e67be92072cf5c5c2 Author: Peng Huang Date: 2009-02-12 13:25:01 +0800 Fix restart problem M bus/ibusimpl.c commit 5ae50478381f53431a04e662a78d9e9db91a540e Author: Peng Huang Date: 2009-02-12 13:15:03 +0800 Try to make all child processes finished before ibus-daemon exits. M bus/ibusimpl.c M bus/main.c commit dcd4ceb33c2865ef3636565c68d97ee05ea6b1e3 Author: Peng Huang Date: 2009-02-12 11:26:04 +0800 Use label.text instead of lable to fix problem. M ui/gtk/menu.py M ui/gtk/panel.py M ui/gtk/toolitem.py commit ff57aab1e19c7f89ebb6b924165f5c6ced2a2201 Author: Peng Huang Date: 2009-02-12 10:58:50 +0800 Disconnect engine handlers before context destruction. M bus/inputcontext.c commit 24e64aa743b4be78bfffab01b69a4ee1e65918cc Author: Peng Huang Date: 2009-02-12 09:50:44 +0800 Set cursor location for engine after create a new engine. M bus/inputcontext.c commit 0250e8b54cf320535d218ecbc799c70dba757250 Author: Peng Huang Date: 2009-02-11 17:33:38 +0800 Add --replace option for ibus-daemon command. M bus/main.c commit 52289db46af40821eb9092ce02a3c82f02170e74 Author: Peng Huang Date: 2009-02-11 17:33:12 +0800 Fix a typo (Change Kill to Exit). M src/ibusbus.c commit 34b2d2f3508866ad53579e4d65af27776187ec69 Author: Peng Huang Date: 2009-02-11 14:31:44 +0800 Update po files. M po/fr.po M po/ja.po M po/pa.po M po/zh_CN.po commit 923217b4ed5aeca6950d0d56b0baa88efb13eac0 Author: Peng Huang Date: 2009-02-11 14:23:43 +0800 Make languagebar extend to left. M ui/gtk/handle.py M ui/gtk/languagebar.py commit e24356351f817c873273d11a2efbdc4e47189fff Author: Peng Huang Date: 2009-02-11 09:05:23 +0800 Rename iBus to IBus. M client/gtk2/ibusim.c M debian/control M po/fr.po M po/ja.po M po/pa.po M po/zh_CN.po M setup/setup.glade M ui/gtk/panel.py commit 46dee933ac3c2b140a6d65056a5ed5876302cd25 Author: Peng Huang Date: 2009-02-10 18:02:13 +0800 Fix crash problems. M bus/inputcontext.c M src/ibusconnection.c M src/ibusmessage.c commit 1e931b56967fd7f589fab3c8081b3bdf13c49f1a Author: Peng Huang Date: 2009-02-10 17:30:27 +0800 Fix compile warnings. M bus/engineproxy.c M bus/inputcontext.c M client/gtk2/ibusimcontext.c M client/x11/main.c M src/ibushotkey.c commit b12ce003bc273f678b5249399e515ff78af1a582 Author: Peng Huang Date: 2009-02-10 16:55:38 +0800 Fix problem on x86_64 platform. M bus/engineproxy.c M bus/panelproxy.c M src/ibusbus.c commit 637b346b1697e2d1285a6a727b2ec8455cf3e0f5 Author: Peng Huang Date: 2009-02-10 16:53:00 +0800 Fix crash on x86_64 platform. M bus/factoryproxy.c M src/ibusengine.c commit 4fdeceb51956a114a684c7a9b75db4db459c5ee4 Author: Huang Peng Date: 2009-02-10 11:24:51 +0800 Fix problem with desktop files. M bus/Makefile.am A bus/ibus.desktop M configure.ac M setup/Makefile.am R062 setup/ibus-setup.desktop.in setup/ibus-setup.desktop commit 566270731276e9028350dd90b6982c865490f243 Author: Huang Peng Date: 2009-02-10 10:17:01 +0800 Do not use glib main loop in ibus_input_context_process_key function. M src/ibusconnection.c M src/ibusconnection.h M src/ibusinputcontext.c commit 30bff4867177ec439cb210a016e2dd416ebab963 Author: Huang Peng Date: 2009-02-09 10:28:19 +0800 Add round lookup table support. M ibus/lookuptable.py M src/ibuslookuptable.c M src/ibuslookuptable.h M src/test-lookuptable.c commit c9dab029a3f84fe529c0c90dcf8571f1c0c16d85 Author: Huang Peng Date: 2009-02-06 17:23:57 +0800 Change rescan to re-scan M bus/main.c commit 2b30fe871a569b8d33d9fa2e97307f9ef6224c0d Author: Huang Peng Date: 2009-02-06 17:22:33 +0800 Implement --rescan option for ibus-daemon. M bus/main.c M bus/registry.c commit 7818373100d18f04dc049a466f9f30bb32965176 Author: Huang Peng Date: 2009-02-06 14:54:00 +0800 Add restart menu item in system menu. M bus/dbusimpl.c M bus/dbusimpl.h M bus/ibusimpl.c M bus/main.c M bus/matchrule.c M bus/matchrule.h M bus/registry.c M bus/registry.h M bus/server.c M bus/server.h M client/x11/main.c M ibus/bus.py M ibus/interface/iibus.py M src/ibusbus.c M src/ibusbus.h M src/ibusobject.h M ui/gtk/panel.py M xinput-ibus commit 5014bc1a8e8544ec087b631b55fc4d6907051c13 Author: Huang Peng Date: 2009-02-06 10:11:28 +0800 Add French translation provided by Julroy67. M AUTHORS M po/LINGUAS A po/fr.po commit 142d69b5ff54f203bc29a3e439061a3d4726c120 Author: Huang Peng Date: 2009-02-06 09:32:50 +0800 Fix issue http://code.google.com/p/ibus/issues/detail?id=241. M configure.ac M gconf/Makefile.am R090 gconf/gconf.xml.in gconf/gconf.xml.in.in M ui/gtk/Makefile.am R089 ui/gtk/gtkpanel.xml.in ui/gtk/gtkpanel.xml.in.in commit 0bcd2dd9d08f2ac57121c283a63180f92a735338 Author: Huang Peng Date: 2009-02-06 08:10:19 +0800 Run ibus-daemon instead of ibus. M setup/main.py commit 33aa241841500c0b59204d905e05d55fb273486c Merge: aaa9a8ce a07a51ff Author: Huang Peng Date: 2009-02-05 11:03:39 +0800 Merge branch 'master' into c_impl Conflicts: po/ja.po po/pa.po po/zh_CN.po commit aaa9a8cea3a23bca6444221192ffc52ccbff3cb8 Author: Huang Peng Date: 2009-02-05 10:48:58 +0800 Add gconf/config.h A gconf/config.h commit aedad1ea0a7fef604aa27f4b58433fd8f2ece29e Author: Huang Peng Date: 2009-02-05 10:39:56 +0800 re-implement ibus in c language. M .gitignore M Makefile.am M autogen.sh R098 lib/Makefile.am bindings/Makefile.am A bindings/python/Makefile.am A bindings/python/common.h A bindings/python/gendefs.sh A bindings/python/ibus-types.defs A bindings/python/ibus-virtual-methods.defs A bindings/python/ibus.defs A bindings/python/ibus.override A bindings/python/ibusmodule.c A bus/.gitignore A bus/Makefile.am A bus/connection.c A bus/connection.h A bus/dbusimpl.c A bus/dbusimpl.h A bus/engineproxy.c A bus/engineproxy.h A bus/factoryproxy.c A bus/factoryproxy.h A bus/ibusimpl.c A bus/ibusimpl.h A bus/inputcontext.c A bus/inputcontext.h A bus/main.c A bus/matchrule.c A bus/matchrule.h A bus/panelproxy.c A bus/panelproxy.h A bus/registry.c A bus/registry.h A bus/server.c A bus/server.h A bus/test-matchrule.c A bus/test-registry.c M client/Makefile.am M client/gtk2/Makefile.am M client/gtk2/ibusim.c M client/gtk2/ibusimcontext.c A client/x11/.gitignore M client/x11/Makefile.am M client/x11/main.c M configure.ac D daemon/.gitignore D daemon/Makefile.am D daemon/_dbus.py D daemon/bus.py D daemon/config.py D daemon/connection.py D daemon/contextmanager.py D daemon/engine.py D daemon/enginefactory.py D daemon/factorymanager.py D daemon/ibusdaemon.py D daemon/inputcontext.py D daemon/lookuptable.py D daemon/notifications.py D daemon/panel.py D daemon/register.py R090 gconf/ibus-gconf.in docs/Makefile.am R086 daemon/ibus-daemon.in docs/reference/Makefile.am A docs/reference/ibus/.gitignore A docs/reference/ibus/Makefile.am A docs/reference/ibus/ibus.types A gconf/.gitignore M gconf/Makefile.am A gconf/config.c D gconf/config.py A gconf/gconf.xml.in A gconf/main.c D gconf/main.py A ibus-1.0.pc.in M ibus.spec.in A ibus/.gitignore M ibus/Makefile.am M ibus/__init__.py R095 ibus/gtk.py ibus/_gtk.py M ibus/attribute.py M ibus/bus.py M ibus/common.py A ibus/component.py M ibus/config.py M ibus/engine.py A ibus/enginedesc.py M ibus/factory.py A ibus/inputcontext.py M ibus/interface/Makefile.am M ibus/interface/__init__.py M ibus/interface/iconfig.py M ibus/interface/iengine.py M ibus/interface/ienginefactory.py M ibus/interface/iibus.py A ibus/interface/iinputcontext.py M ibus/interface/inotifications.py M ibus/interface/ipanel.py M ibus/lookuptable.py M ibus/notifications.py M ibus/object.py A ibus/observedpath.py M ibus/panel.py M ibus/property.py A ibus/serializable.py A ibus/text.py D launcher/Makefile.am D launcher/ibus.desktop.in D launcher/ibus.in D lib/gtk2/Makefile.am D lib/gtk2/ibusattribute.c D lib/gtk2/ibusattribute.h D lib/gtk2/ibusimclient.c D lib/gtk2/ibusimclient.h D lib/gtk2/ibusmarshalers.list M po/.gitignore M po/POTFILES.in M po/ja.po M po/pa.po M po/zh_CN.po M setup/.gitignore M setup/Makefile.am A setup/enginecombobox.py A setup/enginetreeview.py A setup/icon.py M setup/keyboardshortcut.py M setup/main.py M setup/setup.glade A src/.gitignore A src/Makefile.am A src/ibus.h A src/ibusattribute.c A src/ibusattribute.h A src/ibusbus.c A src/ibusbus.h A src/ibuscomponent.c A src/ibuscomponent.h A src/ibusconfig.c A src/ibusconfig.h A src/ibusconfigprivate.h A src/ibusconfigservice.c A src/ibusconfigservice.h A src/ibusconnection.c A src/ibusconnection.h A src/ibusdebug.h A src/ibusengine.c A src/ibusengine.h A src/ibusenginedesc.c A src/ibusenginedesc.h A src/ibusenumtypes.c A src/ibusenumtypes.c.template A src/ibusenumtypes.h A src/ibusenumtypes.h.template A src/ibuserror.c A src/ibuserror.h A src/ibusfactory.c A src/ibusfactory.h A src/ibushotkey.c A src/ibushotkey.h A src/ibusinputcontext.c A src/ibusinputcontext.h A src/ibusinternal.c A src/ibusinternal.h A src/ibuskeynames.c A src/ibuskeysyms-update.pl A src/ibuskeysyms.h A src/ibuslookuptable.c A src/ibuslookuptable.h A src/ibusmarshalers.list A src/ibusmessage.c A src/ibusmessage.h A src/ibusobject.c A src/ibusobject.h A src/ibusobservedpath.c A src/ibusobservedpath.h A src/ibuspendingcall.c A src/ibuspendingcall.h A src/ibusproperty.c A src/ibusproperty.h A src/ibusproxy.c A src/ibusproxy.h A src/ibusserializable.c A src/ibusserializable.h A src/ibusserver.c A src/ibusserver.h A src/ibusservice.c A src/ibusservice.h A src/ibusshare.c A src/ibusshare.h A src/ibustext.c A src/ibustext.h A src/ibustypes.h A src/ibusxml.c A src/ibusxml.h A src/keyname-table.h A src/test-attribute.c A src/test-bus.c A src/test-engine.c A src/test-keynames.c A src/test-lookuptable.c A src/test-proxy.c A src/test-server.c A src/test-text.c M ui/gtk/.gitignore M ui/gtk/Makefile.am M ui/gtk/candidatepanel.py A ui/gtk/gtkpanel.xml.in M ui/gtk/icon.py M ui/gtk/languagebar.py M ui/gtk/main.py M ui/gtk/menu.py M ui/gtk/notifications.py M ui/gtk/panel.py M ui/gtk/propitem.py M ui/gtk/toolitem.py M util/Makefile.am D util/gconf/Makefile.am D util/gconf/gconf-arg-types.py D util/gconf/gconf-fixes.c D util/gconf/gconf-fixes.h D util/gconf/gconf-types.c D util/gconf/gconf-types.h D util/gconf/gconf.defs D util/gconf/gconf.override D util/gconf/gconfmodule.c D util/gconf/wscript M xinput-ibus commit a07a51ff63d323a7b742e30ad5368371023b4265 Author: Huang Peng Date: 2009-02-03 16:10:06 +0800 Update po files. M po/ja.po M po/pa.po M po/zh_CN.po commit 41ad46305a88637dd99f00a2d2a3f455505d357b Author: Huang Peng Date: 2009-02-03 15:07:30 +0800 Set default next_engine hot key to empty. M ibus/common.py commit f4f4c847df58ec69f1564be082f37ee980c23896 Author: Huang Peng Date: 2009-02-03 11:08:10 +0800 Fix crash in x86_64 platform. M client/gtk2/ibusimcontext.c M client/gtk2/ibusimcontext.h commit 08470bed58fc80d186f4641817cb1dad1847fc8c Author: Huang Peng Date: 2008-11-23 20:59:14 +0800 Fix problem introduced by last commit. M ui/gtk/panel.py commit 45726ffaf0e79e9d9421cb184be412df0997b319 Author: Huang Peng Date: 2008-11-23 13:50:58 +0800 Handle SIGCHLD in ibus-ui-gtk to fix issue 191. M ui/gtk/panel.py commit 28dc3faad2df6dd3eb6b9f7539e3f118ef94fe42 Author: LI Daobing Date: 2008-11-04 19:32:09 +0800 fix typo in Makefile.am M ibus/Makefile.am commit ee9926f9f3da539c4b29ef81bc1e0b4dd7e551f0 Author: Huang Peng Date: 2008-11-01 13:34:21 +0800 Request glib2 >= 2.16 M configure.ac commit dd5d87e261ef846ebf8a311910d9de3b347277ac Author: Huang Peng Date: 2008-10-25 13:22:24 +0800 Change email address for pa.po file. M AUTHORS commit 6cc8017cffa65234c7016fcfb797e307cadbfd4d Author: Huang Peng Date: 2008-10-25 10:04:47 +0800 Add Punjabi (pa.po) Translation by A S Brar M AUTHORS M po/LINGUAS A po/pa.po commit 42740b6eb84e1c8013d762c05c1ff8e5248db44e Author: Huang Peng Date: 2008-10-23 14:15:24 +0800 Update po files. M po/ja.po M po/zh_CN.po commit 45922c236364606be6d91dba30e8a54886648759 Author: Huang Peng Date: 2008-10-21 15:32:02 +0800 Get unique_name in ibus.Bus.__init__ M ibus/bus.py commit 7f88a36c28d60f3dbe231dd76d2e0c04ca740e89 Author: Huang Peng Date: 2008-10-20 13:43:25 +0800 Use UInt32 for property. M ibus/property.py commit e3b4a0aa8e0074de826702df3b014dd27a4c2ec5 Author: Huang Peng Date: 2008-10-19 09:50:05 +0800 Do not expend icons. M setup/main.py commit 9c72c9235e37bad755174b6eeed0cf96a42d9b94 Author: Huang Peng Date: 2008-10-16 10:15:18 +0800 Fix coding style. M util/IMdkit/Xi18n.h M util/IMdkit/i18nX.c commit feb1d8f1ca5befeb66e57af86366920f0f538426 Merge: 998cdda7 3439d61d Author: Huang Peng Date: 2008-10-16 09:59:56 +0800 Merge branch 'master' into fix_xim_bug commit 3439d61d0403f18b3ede55678f7ed70a9864a3a0 Author: Huang Peng Date: 2008-10-16 09:59:28 +0800 Use LOG replace g_debug M client/x11/main.c commit 998cdda74071af6027ae5b0f2a094150343c489a Author: Huang Peng Date: 2008-10-15 22:20:47 +0800 Do not discard unread data from XGetWindowProperty M util/IMdkit/Xi18n.h M util/IMdkit/i18nUtil.c M util/IMdkit/i18nX.c commit b3960020e4053ea003ef46cd98e195247cefda67 Author: Huang Peng Date: 2008-10-15 22:19:57 +0800 Revert "Do not discard unread data from XGetWindowProperty" This reverts commit 6ad5307d585930c79feaf5d8aaf791277df067c9. M util/IMdkit/Xi18n.h M util/IMdkit/i18nUtil.c M util/IMdkit/i18nX.c commit 6ad5307d585930c79feaf5d8aaf791277df067c9 Author: Huang Peng Date: 2008-10-15 22:17:53 +0800 Do not discard unread data from XGetWindowProperty M util/IMdkit/Xi18n.h M util/IMdkit/i18nUtil.c M util/IMdkit/i18nX.c commit c56d1b3bf2a2bf9eb6de4bbb985c6ba58c166a04 Author: Huang Peng Date: 2008-10-15 07:56:03 +0800 Fix keyboard shortcut setup problems M daemon/bus.py M setup/main.py commit 5a2f8e1d9d0f14651d9dbd711b77e5f36756fde4 Author: Huang Peng Date: 2008-10-12 09:30:20 +0800 Convert IBusAttribute for au to (uuuu) M client/x11/Makefile.am M ibus/attribute.py M ibus/interface/iengine.py commit f0ef83c293511c947033e803345892ac8c4ca56e Author: Huang Peng Date: 2008-10-12 09:28:51 +0800 Convert IBusAttribute to (uuuu) M lib/gtk2/ibusattribute.c M lib/gtk2/ibusattribute.h M lib/gtk2/ibusimclient.c commit 2b6cf32ad9f44a6c0b49b76687b78b30a138c707 Author: Huang Peng Date: 2008-10-09 11:42:11 +0800 Update translations. M po/ja.po M po/zh_CN.po commit a6e244cb8897de2059b938d56396415f4e8ada42 Author: Huang Peng Date: 2008-10-09 11:26:07 +0800 Modify setup ui to be consonant with GNOME HIG. M setup/setup.glade commit 6d9c8c192da47c66090694540644b626ccfb9ced Author: Huang Peng Date: 2008-10-09 09:02:33 +0800 Add ICON for im-chooser. M xinput-ibus commit 76ae87c4634e7f8594fd663e6c05b369fda4948b Author: Huang Peng Date: 2008-10-07 18:48:00 +0800 Fix problem when org.freedesktop.Notifications does not exist. M ui/gtk/notifications.py commit 796614baeb0002f77522b196e974e68f37b16646 Author: Huang Peng Date: 2008-10-07 18:42:04 +0800 Fix a typo. M daemon/config.py commit a62abdb0bfe51e7cd09328682d2091ac37eb4987 Author: Huang Peng Date: 2008-10-07 18:32:09 +0800 Add Requries: notification-daemon in ibus.spec.in M ibus.spec.in commit a643a4369cdc80699f20c90c1cb059aab1551bcc Author: Huang Peng Date: 2008-10-07 13:28:07 +0800 wip. M daemon/bus.py commit 22e958627cc8216b77ce19ebebf6087d254f12a5 Author: Huang Peng Date: 2008-10-07 12:59:46 +0800 Change summary in ibus.spec M ibus.spec.in commit aeff3850e2e75bd2cdba7f18efbb964935782c81 Author: Huang Peng Date: 2008-10-07 12:27:08 +0800 Refine spec file for fedora. M ibus.spec.in commit cd5dc96daa4cd80f1985a74a9641d82848081e10 Author: Huang Peng Date: 2008-10-07 11:12:22 +0800 Refine .desktop files. M launcher/ibus.desktop.in M setup/ibus-setup.desktop.in commit 0bb06d38664d0045e7294e4091f385fbcad723c9 Author: Huang Peng Date: 2008-10-06 18:15:42 +0800 Remove unused variable. M gconf/main.py commit 01754e6aa58a834f6ee4f443d45d1b4e45380de4 Author: Huang Peng Date: 2008-10-06 18:14:31 +0800 Refine messages. M daemon/bus.py M po/ja.po M po/zh_CN.po commit 0132624bd496ab37c96bf371eb828d258ca678f1 Author: Huang Peng Date: 2008-10-06 17:45:33 +0800 Add daemon/notifications.py A daemon/notifications.py commit aa445d730491d08cb29c39f02d97f0d2c4e8b91a Author: Huang Peng Date: 2008-10-06 16:17:57 +0800 Fix make rpm error. M ibus.spec.in commit 1d677534e8efa847464325766684c6378cdb073b Author: Huang Peng Date: 2008-10-06 16:13:50 +0800 Complete Noifications module. M daemon/bus.py M daemon/panel.py M ibus/interface/ipanel.py M ibus/panel.py M po/ja.po M po/zh_CN.po M ui/gtk/panel.py commit 7ab63e10f58b5c9c902e9f49250339a3ccc30ebf Author: Huang Peng Date: 2008-10-06 16:04:22 +0800 WIP M gconf/config.py M ibus/notifications.py M ui/gtk/notifications.py commit d64996654cc58db9d33896e265a73e097fc2701b Author: Huang Peng Date: 2008-10-06 15:53:17 +0800 WIP. M daemon/bus.py commit fd4df98ed4985767d95f2d7cdef9d89fad87894d Author: Huang Peng Date: 2008-10-06 15:24:59 +0800 WIP M daemon/Makefile.am M daemon/bus.py M daemon/config.py M daemon/panel.py commit 59a0435b1a8fbb2e2f80bfe79057cbd5eb3da815 Author: Huang Peng Date: 2008-10-06 15:00:01 +0800 WIP. M ui/gtk/main.py M ui/gtk/notifications.py M ui/gtk/panel.py commit 61c603838a15b01011093090065ed33116cdda13 Author: Huang Peng Date: 2008-10-06 14:47:06 +0800 WIP. M ui/gtk/notifications.py commit d4bb8eb1c6c36e43a5a9504717aeb64832c66538 Author: Huang Peng Date: 2008-10-06 14:29:37 +0800 Add notifications M ibus/__init__.py M ui/gtk/Makefile.am A ui/gtk/notifications.py D ui/gtk/notify.py commit 6fcaef161510134118d935f0240e4d719ba43a7a Author: Huang Peng Date: 2008-10-06 14:14:21 +0800 Add notifications.py M ibus/Makefile.am M ibus/common.py A ibus/notifications.py commit 6a06d45e1d3956670ca9006ddfa380c176c1146f Author: Huang Peng Date: 2008-10-06 14:04:28 +0800 Refine coding style. M ibus/interface/__init__.py M ibus/interface/iconfig.py M ibus/interface/iengine.py M ibus/interface/ienginefactory.py M ibus/interface/iibus.py M ibus/interface/ipanel.py commit a715f71bc4171298f8e57d1b9b3f8eb42ade1938 Author: Huang Peng Date: 2008-10-06 13:59:52 +0800 Add INotifications interface. M ibus/interface/Makefile.am A ibus/interface/inotifications.py commit bb1339b4e2a4dd5af95bc594b4d35b83fdcbbd5f Author: Huang Peng Date: 2008-10-06 11:23:17 +0800 Fix a typo. M ui/gtk/Makefile.am commit f754f7dca2dbf6fcb3cd1bc8e313c5539e8ce50c Author: Huang Peng Date: 2008-10-06 10:39:43 +0800 Change COPYING from LGPL 2.0 to LGPL 2.1 M COPYING commit 8a6e14d84fe318a7a2efd66d453c2b99a6299d5b Author: Huang Peng Date: 2008-10-06 10:24:21 +0800 ellipsize engine name in ibus-setup. M setup/main.py commit c3d16cbe31c681001eb18191dc69368342b96b3b Author: Huang Peng Date: 2008-10-06 07:41:26 +0800 Change panel path in POFILES.in. M po/POTFILES.in M po/ja.po M po/zh_CN.po commit 50d772447ab3589ff02c7e10486d11d3572c0efe Author: Huang Peng Date: 2008-10-05 22:28:22 +0800 Update .gitignore M ui/gtk/.gitignore commit cf8d326d0839501e0ee9eb180cddb5ca670edd85 Author: Huang Peng Date: 2008-10-05 22:24:21 +0800 Add notify in ui/gtk/Makefile.am M ui/gtk/Makefile.am commit 8a4eb40abff0441c015f15fa864967e106868f52 Author: Huang Peng Date: 2008-10-05 22:23:42 +0800 Move notify from daemon to ui/gtk M daemon/Makefile.am R100 daemon/notify.py ui/gtk/notify.py commit 3d36b0eb76eafcda76082baecf34a48d6cbb0319 Author: Huang Peng Date: 2008-10-05 22:16:30 +0800 Move panel into ui folder, and rename panel to gtk. M Makefile.am M configure.ac M launcher/ibus.in A ui/Makefile.am R100 panel/.gitignore ui/gtk/.gitignore R092 panel/Makefile.am ui/gtk/Makefile.am R100 panel/candidatepanel.py ui/gtk/candidatepanel.py R100 panel/handle.py ui/gtk/handle.py R094 panel/ibus-panel.in ui/gtk/ibus-ui-gtk.in R100 panel/icon.py ui/gtk/icon.py R100 panel/languagebar.py ui/gtk/languagebar.py R100 panel/main.py ui/gtk/main.py R100 panel/menu.py ui/gtk/menu.py R100 panel/panel.py ui/gtk/panel.py R100 panel/propitem.py ui/gtk/propitem.py R100 panel/toolitem.py ui/gtk/toolitem.py commit 249722e4aa36837b6ff5fd1436387bc66b482228 Author: Huang Peng Date: 2008-10-05 17:34:05 +0800 Specify qt4 make flags when generate Makefile from .pro file. M client/qt4/Makefile.am commit adc508ea4bf5c14c7f20591b4a93b5fbb18904ea Author: Huang Peng Date: 2008-10-05 17:24:31 +0800 Handle XIM_GET_IC_VALUES event. M client/x11/main.c commit 87f481a427702e932026fe86487679e4381d4c63 Author: Huang Peng Date: 2008-10-05 17:10:16 +0800 Fix XIM freezing problem. M client/x11/main.c commit 9691862da2d96d009e39435dc5fc88225a92569f Author: Huang Peng Date: 2008-10-05 15:35:13 +0800 Remove debug output for japan_groups. M lib/gtk2/ibusimclient.c commit 601e1c4a77145144ca62d7565d834add2bdb287d Author: LI Daobing Date: 2008-10-04 22:04:05 +0800 fix desktop file format This desktop entry lists a category that is not one of the registered Main or Additional Categories in the FreeDesktop specification. Refer to http://standards.freedesktop.org/menu-spec/1.0/apa.html for details. M launcher/ibus.desktop.in M setup/ibus-setup.desktop.in commit 4b413844a94df44174147a50becfeaf1c8d537ca Author: LI Daobing Date: 2008-10-04 21:58:42 +0800 fix typo in README M README commit ec98987a0e306bdad4ffe17e74b7d87f31ea5f7f Author: Huang Peng Date: 2008-10-04 10:29:48 +0800 Fix `make distcheck` errors. M po/POTFILES.in M po/ja.po M po/zh_CN.po commit 96bc3c966179e1f816681bb6a1d02133d040e2cd Author: Huang Peng Date: 2008-10-04 10:20:04 +0800 Refine coding style. M ibus/bus.py commit 397ff9ca92a2eaf8469b757243813849804f9290 Author: Huang Peng Date: 2008-10-04 08:51:39 +0800 WIP. M daemon/_dbus.py M daemon/config.py M gconf/config.py M ibus/bus.py M ibus/common.py M ibus/config.py commit d362fe98b9b428e21324a32e922529c8f9ac3837 Author: Huang Peng Date: 2008-10-04 07:51:38 +0800 Fix problem in ibus-setup M setup/main.py commit ca93a90da1f2ea506f36e4ada7bd2b300e4d41e2 Author: Huang Peng Date: 2008-10-03 23:58:31 +0800 WIP. M ibus/bus.py M launcher/ibus.in commit 0d2c788dfdd7a00f1ca2310a846357f485aa2432 Author: Huang Peng Date: 2008-10-03 23:50:55 +0800 WIP. M ibus/bus.py M ibus/common.py M launcher/ibus.in commit 6515cb122eea13c16d5f936a346acbc1369b2d64 Author: Huang Peng Date: 2008-10-03 20:19:03 +0800 WIP. M daemon/Makefile.am M daemon/bus.py M daemon/config.py M daemon/connection.py D daemon/defaultconfig.py M daemon/ibusdaemon.py M gconf/config.py M gconf/main.py M ibus/bus.py M ibus/interface/iibus.py commit 09a7df4511f12e447d1f43ad485b375a3e5b26c6 Author: Huang Peng Date: 2008-10-03 19:16:56 +0800 Fix a typo. M ibus/config.py commit 1fa35a56275196483ff939aa1b6f3042780d8ead Author: Huang Peng Date: 2008-10-03 19:15:36 +0800 Add config.py M ibus/__init__.py A ibus/config.py D ibus/config.py.in commit 386c0bf61c1ce647e3792af88ee1adab8393aedd Author: Huang Peng Date: 2008-10-03 19:12:15 +0800 Rename config.py.in to _config.py.in M configure.ac M ibus/Makefile.am M ibus/__init__.py A ibus/_config.py.in commit ecb3f104ef07e1d08b1562396a1d57cb89945d4f Merge: 368ff211 221f2c6b Author: Huang Peng Date: 2008-10-03 17:53:41 +0800 Merge branch 'master' into modify_config_interface commit 221f2c6bdba92669b98cee65616d8f3837ff1a2c Author: Huang Peng Date: 2008-10-03 17:52:09 +0800 Return 0 when XIM_GET_IC_VALUES is received. M client/x11/main.c commit 368ff2110216b6f968631bfa671aa1ef7de7b7b9 Author: Huang Peng Date: 2008-10-03 17:28:00 +0800 WIP. M daemon/bus.py M gconf/config.py M ibus/interface/iibus.py commit b940644dbeaec464c0dfb25948f67162fc2a2f45 Author: Huang Peng Date: 2008-10-03 17:07:29 +0800 Change interface for config. M daemon/bus.py M daemon/config.py M daemon/ibusdaemon.py M gconf/config.py M ibus/bus.py M ibus/interface/iconfig.py M panel/panel.py M setup/main.py commit 141bb4e5635d4302598fd1b4204a332a2d780d6a Author: Huang Peng Date: 2008-10-03 12:34:12 +0800 Return 0 if ibus does not handle xim event. M client/x11/main.c commit 43471e1c3ffcc592f760d54ec35c99903032fbc4 Author: Huang Peng Date: 2008-10-03 12:21:43 +0800 Remove _is_attr. M client/x11/main.c commit bc9dbaa52ac8e4de2651eb2dd1658d731dd487f5 Author: Huang Peng Date: 2008-10-03 12:18:33 +0800 Refine debug output. M client/x11/main.c commit 7ff16d509e2e077ac2e26de146dbc4a7e34748a6 Author: Huang Peng Date: 2008-10-03 10:30:08 +0800 Fix problem in ibus_attr_list_copy. M lib/gtk2/ibusattribute.c commit 927200df0bb7f559110dd624d2e52412220447d8 Author: Huang Peng Date: 2008-10-03 00:08:18 +0800 Refine coding style. M lib/gtk2/ibusattribute.c commit 6f23b8b88dc103021f301a0e889739081547cf94 Author: Huang Peng Date: 2008-10-03 00:06:11 +0800 Fix typo. M lib/gtk2/ibusimclient.c commit f0591a6909d68572422eb518ee13ad5a216c788d Author: Huang Peng Date: 2008-10-03 00:04:00 +0800 Use ibus_attribute_new to create IBusAttribute M lib/gtk2/ibusimclient.c commit c1d8fdc166365afe79cf3652f156b42315440e32 Author: Huang Peng Date: 2008-10-02 20:15:13 +0800 Fix problems in ibus-x11. M client/x11/main.c commit 624fcc1ac58ba932ea4d3418c4c79bdf991c4a18 Author: Huang Peng Date: 2008-10-02 20:15:01 +0800 Fix problem in gtk im module. M client/gtk2/ibusimcontext.c commit 4d9df1bea69f7d943565fbb4bb290fa08eeca821 Author: Huang Peng Date: 2008-10-02 20:08:51 +0800 Remove debug output. M lib/gtk2/ibusattribute.c commit d74ac7f45da5d97966d1953ccd700001c5f66d3d Author: Huang Peng Date: 2008-10-02 19:59:01 +0800 Put languagebar in right bottom of root window. M panel/languagebar.py commit 7a3a662e068029be7759d35166711702ba5290ac Author: Huang Peng Date: 2008-10-02 19:46:40 +0800 Use IBusAttribute in ibus-x11. M client/x11/main.c commit 1e40616f330b25266aa4794c27136fabab7e23eb Author: Huang Peng Date: 2008-10-02 19:26:23 +0800 Use IBusAttribut replace PangoAttribute. M client/gtk2/ibusimcontext.c M lib/gtk2/ibusattribute.c M lib/gtk2/ibusimclient.c commit 8647538dd30ee392d9ac093b088019abcd0a656f Author: Huang Peng Date: 2008-10-02 19:00:55 +0800 Implement IBusAttribute & IBusAttrList. M lib/gtk2/Makefile.am A lib/gtk2/ibusattribute.c M lib/gtk2/ibusattribute.h commit 0394896c4eaed931eaba4c444cb3a3c58a23271a Author: Huang Peng Date: 2008-10-01 14:07:03 +0800 Free preedit_string & preedit_attrs. M client/x11/main.c commit f33d3aac4c3d6dfea5775238128278443ce2d678 Author: Huang Peng Date: 2008-10-01 12:43:50 +0800 Support input style. M client/x11/main.c commit 21bacd40b5f6c45e137b6b3e7d6b00d8fbe96634 Author: Huang Peng Date: 2008-10-01 12:39:52 +0800 WIP. M client/x11/main.c commit 295919568bad10b35c9013df19f9550efa06469f Author: Huang Peng Date: 2008-10-01 11:58:34 +0800 WIP. M client/x11/main.c commit 8bd15c58cc3cb2e3b547f1ab1b415c529f5fc794 Author: Huang Peng Date: 2008-09-30 18:23:50 +0800 Remove commentted code. M ibus/bus.py M ibus/interface/iibus.py commit 52e1f3d8a448ebf25b75bef2c1e51b9f69b5cf31 Author: Huang Peng Date: 2008-09-30 08:26:02 +0800 Update ibus.sepc.in. M ibus.spec.in commit 143c3a4a3f523c503f46b62a6fa7a5711de4b462 Author: Huang Peng Date: 2008-09-30 08:14:14 +0800 Update po files. M po/ja.po M po/zh_CN.po commit 08c01a29e7096a1e9b6c553d5eaca995af48a26b Author: Huang Peng Date: 2008-09-30 08:13:55 +0800 Fix make dist error. M util/gconf/Makefile.am commit bd27a75a0bf7120b1bdc280fda0bed9e8abdce75 Author: Huang Peng Date: 2008-09-28 15:39:46 +0800 Remove unused import M daemon/config.py M daemon/factorymanager.py M daemon/panel.py commit 351224c9ef40beca8c72a4c79e68d2bde17ab727 Author: Huang Peng Date: 2008-09-28 12:57:58 +0800 Comment register_panel method. M ibus/bus.py commit 8787bfa04f567c14afd34dea1efb8394824b42ae Author: Huang Peng Date: 2008-09-28 12:56:17 +0800 Comment RegisterPanel method. M ibus/interface/iibus.py commit 0a19866bcc57beb1d15bfe996b7c58fd054abdbc Author: Huang Peng Date: 2008-09-28 10:56:11 +0800 Change Panel interface. M daemon/_dbus.py M daemon/bus.py M ibus/panel.py M panel/main.py M panel/panel.py commit 7e28ed0209cc811b7443e15304174a730f75f8d5 Author: Huang Peng Date: 2008-09-27 19:00:53 +0800 WIP. M daemon/_dbus.py M ibus/bus.py M ibus/panel.py commit f5d073b53bff179858a0175b9e4948efad138696 Author: Huang Peng Date: 2008-09-27 17:48:05 +0800 Refine error message. M daemon/_dbus.py commit c9d39cd617e3b766e3d0750a110d3753958a417f Author: Huang Peng Date: 2008-09-27 15:23:12 +0800 Support MatchRule M daemon/_dbus.py commit 0b0ded27bda2a2c9ffdff6395018341d193d0f42 Author: Huang Peng Date: 2008-09-27 14:06:01 +0800 Add message routing feature for ibus. M daemon/_dbus.py M daemon/connection.py commit 4b20a204d7ce986f2ef407374320c8a3617ce582 Merge: 593ad430 7f04c700 Author: Huang Peng Date: 2008-09-27 11:40:03 +0800 Merge branch 'master' into implement_dbus commit 7f04c7006bbe8d1526e2a32886947abbf02f1256 Author: Huang Peng Date: 2008-09-27 11:39:34 +0800 Change internal gconf install location. M gconf/config.py M util/gconf/Makefile.am commit 593ad4302ffb76aa148dd64da8df490c710b88c5 Author: Huang Peng Date: 2008-09-27 11:38:58 +0800 Change dbus message handle order. M daemon/connection.py commit 76840784c9ccb4c5e6cabc37d67ae3d1acbfdab9 Merge: 8414a128 9b481260 Author: Huang Peng Date: 2008-09-27 10:57:13 +0800 Merge branch 'master' into implement_dbus commit 9b481260aaa102070f0377050914d2e4d0031bbc Author: Huang Peng Date: 2008-09-27 10:24:02 +0800 stop_emission dbus-signal when signal be handled. M daemon/config.py M daemon/connection.py M daemon/enginefactory.py M daemon/panel.py commit c44fd10f2fdf5018238e52f3e932883c403b3eea Author: Huang Peng Date: 2008-09-25 17:14:29 +0800 Fix problem when works with imsettings. M client/x11/main.c commit 8414a1287dfcf1d0179fb09911a99657588bd4e4 Author: Huang Peng Date: 2008-09-25 17:09:02 +0800 Fix problem in org.freedesktop.DBus.GetNameOwner() M daemon/_dbus.py commit 2408a45e9b58da644df9a893df1b4b9ca5d8b957 Merge: d59183cb 659e44fb Author: Huang Peng Date: 2008-09-25 16:04:03 +0800 Merge branch 'master' into implement_dbus commit 659e44fb534ee96487d8f22598ece1a0ff1066b2 Author: Huang Peng Date: 2008-09-25 16:03:22 +0800 Update po files. M po/ja.po M po/zh_CN.po commit d59183cbe87fe4eb5d9d014efc254a8163b97fb3 Merge: 7e77e8d4 9b8c9a85 Author: Huang Peng Date: 2008-09-25 13:48:50 +0800 Merge branch 'master' into implement_dbus commit 9b8c9a850f271f22eb70c3ae19b202753f6c919b Author: Huang Peng Date: 2008-09-25 13:46:37 +0800 Fix problem in non-UTF8 locale. M ibus/lang.py M panel/main.py M setup/main.py commit 791de25117257159a981d3220e492f17ff808186 Author: Huang Peng Date: 2008-09-25 10:53:16 +0800 Use gettext.dgettext replace locale.dgettext M ibus/lang.py commit 7e77e8d4528f7516a50fbf5b41576d06f84d526e Merge: b2c95f23 70ba17bd Author: Huang Peng Date: 2008-09-24 18:51:16 +0800 Merge branch 'master' into implement_dbus commit 70ba17bd9056014ce62948ba25a5e6579e724b7d Author: Huang Peng Date: 2008-09-24 18:49:18 +0800 Renove unused import M daemon/engine.py commit b2c95f23a30d636c162fab27566d5e0c0aa11519 Author: Huang Peng Date: 2008-09-24 18:29:18 +0800 Fix some problems. M daemon/_dbus.py commit 500d101d8e7016a3a81685304f7524ac884848e4 Author: Huang Peng Date: 2008-09-24 17:58:59 +0800 Fix problem in test task in Makefile.am M daemon/Makefile.am commit 743c41803aa27d5a9f2dee257f9831fe7239ab59 Merge: f0113220 025371da Author: Huang Peng Date: 2008-09-24 17:51:02 +0800 Merge branch 'master' into implement_dbus commit 025371daba5b8e51c78eff8da15bebab3c7a2e03 Author: Huang Peng Date: 2008-09-24 17:50:20 +0800 Remove commetted line M debian/rules commit ff35f467c8ad3c71cae7ca351a0c31bf05f5d244 Author: Huang Peng Date: 2008-09-24 17:49:37 +0800 Remove --with-gtk-im-module-dir in debian build script. M debian/rules commit f62802b72d8244e33babe2d5ac660979f534d653 Author: Huang Peng Date: 2008-09-24 17:44:28 +0800 Install gtk im module in ${libdir}/gtk-2.0/${gtk_binary_version}/immodules. M configure.ac M ibus.spec.in commit f011322081b6e3e932f954fc1aab3f44441a01bb Author: Huang Peng Date: 2008-09-24 17:26:38 +0800 wip. M daemon/_dbus.py M daemon/connection.py commit 5a13c1a773c9205172e21fb2834d31681edc09dc Author: Huang Peng Date: 2008-09-24 13:13:08 +0800 Remove pynotify. M daemon/bus.py commit 16bda71dacd1c084393ad98e88e060e20708291c Author: Huang Peng Date: 2008-09-24 13:03:14 +0800 Refine coding style. M daemon/_dbus.py commit a4e7629627be3793e58c458de1f300c3425d4bf9 Author: Huang Peng Date: 2008-09-23 14:40:48 +0800 Add notify.py M daemon/Makefile.am M daemon/bus.py A daemon/notify.py commit bc4d2db0ea4c00d2f5a5547de01603a1e13eec90 Author: Huang Peng Date: 2008-09-23 11:29:40 +0800 Fix problem when context focus out. M daemon/bus.py commit ffcba4bfdc940e94efafa464201892a69c3cbddf Author: Huang Peng Date: 2008-09-23 11:25:16 +0800 Retrun 0 if can not find ic. M client/x11/main.c commit a69071d7991b7de8f7dc29940fe55430d99a430f Author: Huang Peng Date: 2008-09-22 13:21:24 +0800 Fix warning when load setup.glade M setup/setup.glade commit 1d8ef89e2382392333327e1136f5eab1f917f497 Author: Huang Peng Date: 2008-09-21 19:16:37 +0800 Remove _focus_ic. M client/x11/main.c commit 899c7c56c7e37e78c907a85199a353354efc4d10 Author: Huang Peng Date: 2008-09-21 17:32:14 +0800 Implementing DBus. M daemon/_dbus.py M daemon/bus.py M daemon/ibusdaemon.py commit ae0f70a239508b5be11a73dfe8747531a840836e Author: Huang Peng Date: 2008-09-21 16:42:12 +0800 split DBus object from ibusdaemon.py M daemon/Makefile.am A daemon/_dbus.py M daemon/ibusdaemon.py commit 53b7c849475d589d31500953ef4544945c824add Author: Huang Peng Date: 2008-09-21 13:27:13 +0800 Implement org.freedesktop.DBus methods. M daemon/ibusdaemon.py M doc/specification commit 6789a1f6f8bb59037206f46cbeed1a5bc552b1ea Author: Huang Peng Date: 2008-09-20 11:14:36 +0800 set_capabilities when frontend establishs ibus connection. M client/gtk2/ibusimcontext.c M client/qt4/ibus-input-context.cpp M client/qt4/ibus-input-context.h commit 54c52e2f73805029cecf34c5af5e577ba5845ab8 Author: Huang Peng Date: 2008-09-20 11:02:17 +0800 Define CAPS. M daemon/inputcontext.py commit bac2b876fe4d18448b0491babb0d5ed3bdf56102 Author: Huang Peng Date: 2008-09-20 09:37:56 +0800 Add new IBUS_CAP_FOCUS capability for input context. M client/gtk2/ibusimcontext.c M client/qt4/ibus-client.h M client/qt4/ibus-input-context.cpp M client/x11/main.c M daemon/bus.py M daemon/inputcontext.py M lib/gtk2/ibusimclient.c M lib/gtk2/ibusimclient.h commit 92a40e0b50c24a97d1da46c1de41e4409f7508cb Author: Huang Peng Date: 2008-09-20 09:06:53 +0800 Set focus if ic without focus. M client/x11/main.c commit b2353c87b6eb4008c50988d253f2677c1443a95d Author: Huang Peng Date: 2008-09-19 09:57:33 +0800 Create symbol links for qt3. A client/qt3/ibus-client.cpp A client/qt3/ibus-client.h A client/qt3/ibus-input-context.cpp A client/qt3/ibus-input-context.h A client/qt3/im-ibus-qt.cpp commit 730db205f55cb34d620fca839673a5a98f6494c1 Author: Huang Peng Date: 2008-09-19 08:42:28 +0800 Output warn message if iso-codes can not be found. M configure.ac commit 5bc961ecd47c0fdde5dba8a782d3c38cd571ef4c Author: Huang Peng Date: 2008-09-18 19:58:59 +0800 Add --disable-iso-codes-check in spec file. M ibus.spec.in commit 0eb21f88906efd292b4ed892698f9c17c265ae8e Author: Huang Peng Date: 2008-09-18 19:57:59 +0800 Refine error message in configure. M configure.ac commit 67813eb809537db4ef862822f691f9da5eb976f8 Author: Huang Peng Date: 2008-09-18 19:48:44 +0800 Check iso-codes in configure. M configure.ac commit 5e233e2d3efc5f961cad1c57071363c8f990eecc Author: Huang Peng Date: 2008-09-18 19:16:11 +0800 Get language names from iso-codes. M ibus.spec.in M ibus/lang.py M panel/panel.py M po/ja.po M po/zh_CN.po M setup/main.py commit b43b31301d336ee16f6a0b178879f8759136f6ed Author: Huang Peng Date: 2008-09-18 07:21:19 +0800 Make size of StatusIcon fixed. M panel/panel.py commit bd19dac2aa62ae94f8f03088abf9b361c1c24c82 Author: Huang Peng Date: 2008-09-17 21:59:21 +0800 Fix a problem in configure.ac. M configure.ac commit 3fe32053f9d17ca1bdc3c7c3c6c46c63e5eefe4d Author: Huang Peng Date: 2008-09-17 21:43:56 +0800 Do install pygconf files without --enable-pygconf M util/gconf/Makefile.am commit 79423852b295eef874c23c63162523db1c36da40 Author: Huang Peng Date: 2008-09-17 21:28:16 +0800 Add DISTCHECK_CONFIGURE_FLAGS M Makefile.am commit 869cecf8429101df1bcfd026db5f1ee3feb56673 Author: Huang Peng Date: 2008-09-17 21:00:42 +0800 Add --enable-pygconf option. M configure.ac M util/gconf/Makefile.am commit ef96e9fec0699a8107c3f0e91956dd2738ebe46a Author: Huang Peng Date: 2008-09-17 20:24:27 +0800 Include gconf python binding from gnome-python2. M client/x11/gdk-private.c M configure.ac M util/Makefile.am A util/gconf/Makefile.am A util/gconf/gconf-arg-types.py A util/gconf/gconf-fixes.c A util/gconf/gconf-fixes.h A util/gconf/gconf-types.c A util/gconf/gconf-types.h A util/gconf/gconf.defs A util/gconf/gconf.override A util/gconf/gconfmodule.c A util/gconf/wscript commit 99f3479b93f98a65e88f394c50f861a1bfb31693 Author: Huang Peng Date: 2008-09-17 19:21:22 +0800 Refine coding style. M client/qt4/im-ibus-qt.cpp commit cd515c85466049b8871737e5ad97fbe7c21a69bd Author: Huang Peng Date: 2008-09-17 19:17:38 +0800 Refine coding style. M client/qt4/ibus-input-context.cpp commit 947225c69112e37f945b6eae5360b95f98675930 Author: Huang Peng Date: 2008-09-17 19:15:14 +0800 Refine coding style. M client/qt4/ibus-client.cpp M client/qt4/ibus-input-context.cpp commit a738027852be62ca871e2065428d6ab8052703a0 Author: Huang Peng Date: 2008-09-17 18:54:22 +0800 Refine code. M client/qt4/ibus-client.cpp commit 1ca5958dd3afa1241eb88cc93873d1d5ddbd8824 Author: Huang Peng Date: 2008-09-17 10:42:59 +0800 Use g_fprintf M client/gtk2/ibusim.c commit 7988b3a775c382f6a94c6c1b01192451649ccd76 Author: Huang Peng Date: 2008-09-17 10:41:39 +0800 Use g_strcmp0 replace strcmp M client/gtk2/ibusim.c commit 323b91ee7fc07a788bc17a58c6fd44dd3a9f6f95 Author: Huang Peng Date: 2008-09-17 10:41:31 +0800 Refine coding style. M client/gtk2/ibusimcontext.c commit 60de77374517c3a717d9ed01d6283aebdae23d17 Author: Huang Peng Date: 2008-09-17 09:01:33 +0800 Move IBUS_FORWARD_MASH from .c to .h. M lib/gtk2/ibusimclient.c M lib/gtk2/ibusimclient.h commit c82dca7c51c11c7eaf73a89a08581b7e823bd682 Author: Huang Peng Date: 2008-09-17 08:59:58 +0800 Add forward mask. M lib/gtk2/ibusimclient.c commit 4cd3b0419cd99394fad4c445153970321b0d8c6d Author: Huang Peng Date: 2008-09-17 08:53:41 +0800 Refine coding style. M lib/gtk2/ibusimclient.c commit 24d8be5ecf2a89ef0523c7002ef2e82c133778f2 Author: Huang Peng Date: 2008-09-16 17:28:14 +0800 Use g_slice_new to replace g_new for better performance. M client/x11/main.c M lib/gtk2/ibusimclient.c commit e528c0fd57d7afd37c6e5d27c535689bd56fd8b2 Author: Huang Peng Date: 2008-09-16 16:52:15 +0800 Don't use send_event field in GdkEventKey. And fixed some compile warnings. M client/gtk2/ibusimcontext.c M client/gtk2/ibusimcontext.h M client/x11/gdk-private.c M client/x11/main.c M lib/gtk2/ibusimclient.c commit 2440d29dc75cf21a0a21fe7f2ad36a345941d917 Author: Huang Peng Date: 2008-09-16 16:21:48 +0800 Fix mem leak. M client/x11/gdk-private.c commit d07849ff3ef4cfd8ee59eb7a01bdcb6173e788f0 Author: Huang Peng Date: 2008-09-16 12:34:27 +0800 Call setFocusWidget to replace focusOut M client/qt4/ibus-input-context.cpp commit d0dde689e9462a2ae5708c4e881c4b4ec29643ac Author: Huang Peng Date: 2008-09-16 09:51:04 +0800 FocusOut widget when widgetDestroyed. M client/qt4/ibus-input-context.cpp commit 33906829dbed822ce1d9c02caaf1e547f59b5d53 Author: Huang Peng Date: 2008-09-16 09:44:00 +0800 Remove slot setFocus. M client/qt4/ibus-input-context.cpp M client/qt4/ibus-input-context.h commit b995b397b904844e737e4bd0af84743e6a6ba381 Author: Huang Peng Date: 2008-09-15 18:01:04 +0800 Update po files. M po/ja.po M po/zh_CN.po commit 9077c76e0c531f119fb5c98d57c368e7179df479 Author: Huang Peng Date: 2008-09-15 16:34:08 +0800 Free map return by XGetKeyboardMapping. M client/qt4/ibus-client.cpp commit c241fb6e7d9035db1b89135ddb0f2dfd2eed95db Author: Huang Peng Date: 2008-09-15 16:31:35 +0800 Hack japan [yen bar] key for qt immodule. M client/qt4/Makefile.am M client/qt4/ibus-client.cpp M client/qt4/ibus-client.h M client/qt4/ibus-input-context.cpp M client/qt4/ibus.pro commit 2508a1dd29e6ce8696efac8b74f4fd4517a4d96d Author: Huang Peng Date: 2008-09-15 15:30:37 +0800 Use guint for japen groups mask. M lib/gtk2/ibusimclient.c commit ec0e311ae0311e4959acca4ff1dc823ceab642e7 Author: Huang Peng Date: 2008-09-15 15:25:14 +0800 Use default cursor location. M client/gtk2/ibusimcontext.c commit 38c50d3093978570c9b53284cd8cb56b12a3360d Author: Huang Peng Date: 2008-09-15 11:09:01 +0800 Does not process key event if context does not have focus. M client/gtk2/ibusimcontext.c commit f5c66bd6ac878f3b00c5117eb0e696b351439ee4 Author: Huang Peng Date: 2008-09-15 10:53:49 +0800 Workaround for increase search for treeview. M client/gtk2/ibusimcontext.c commit 8d5a013a8a1f66f5071d2ebbfce78ed433fb2872 Author: Huang Peng Date: 2008-09-15 03:24:20 +0800 Fix problem when kill some engines. M daemon/bus.py commit 0cdd8d3d49c0806b2fd8e625475f9f2c416d3ee4 Author: Huang Peng Date: 2008-09-14 23:14:34 +0800 Use g_signal_emit to replace g_signal_emit_by_name for better performance. M client/gtk2/ibusimcontext.c commit 10a973c3450a736ed739d71e70bc4d4a93c475c2 Author: Huang Peng Date: 2008-09-14 22:39:23 +0800 Forward event directly. M client/gtk2/ibusimcontext.c commit da8819e7b93a080fc82de3d4d011f8c8389a9655 Author: Huang Peng Date: 2008-09-14 22:31:45 +0800 Use G_SIGNAL_TYPE_STATIC_SCOPE mask to avoid copying data for better performance. M lib/gtk2/ibusimclient.c commit d8cfebe8dc401c588c0bf3d6fc66f711ac2049d5 Author: Huang Peng Date: 2008-09-14 15:56:49 +0800 Update compile option for USE_DBUS_SESSION_BUS. M lib/gtk2/ibusimclient.c commit 2798e96ae5c31f0328c31b7640097b1e36f08e22 Merge: ad00c89c 1aecce03 Author: Huang Peng Date: 2008-09-12 09:59:16 +0800 Merge branch 'ubuntu' commit ad00c89cd9c4f975b2124e857fdbe24214cfd8cd Author: Huang Peng Date: 2008-09-12 08:42:37 +0800 Fix problem when start a program with usermode-helper. M client/qt4/ibus-client.cpp M lib/gtk2/ibusimclient.c commit bd9b695b5c81130f04f7315fcbef8a56a3c8291e Author: Huang Peng Date: 2008-09-12 08:09:49 +0800 Add debug code to output environ. M client/gtk2/ibusim.c commit 1aecce03340cdf1292c0d0ee50f5d665f4a0f5df Author: Huang Peng Date: 2008-09-11 18:47:23 +0800 Import debian packaging files by 一叶 . A debian/README.Debian A debian/changelog A debian/compat A debian/control A debian/copyright A debian/cron.d.ex A debian/dirs A debian/docs A debian/emacsen-install.ex A debian/emacsen-remove.ex A debian/emacsen-startup.ex A debian/ibus-default.ex A debian/ibus.doc-base.EX A debian/im-switch/ibus A debian/init.d.ex A debian/init.d.lsb.ex A debian/manpage.1.ex A debian/manpage.sgml.ex A debian/manpage.xml.ex A debian/menu.ex A debian/postinst A debian/postinst.ex A debian/postrm.ex A debian/preinst.ex A debian/prerm A debian/prerm.ex A debian/rules A debian/watch.ex commit e76fbfa8b7f5dbafb532e361feec25b7ca6150e7 Author: Huang Peng Date: 2008-09-10 18:22:27 +0800 Fix problem when locale is 'C' M daemon/register.py commit 70bb0ed90060130cad4512201e3a16517531a3d8 Author: Huang Peng Date: 2008-09-10 10:11:25 +0800 Add --force opt. M autogen.sh commit 2be1293b9da7f52910969e4a7de04f1fa6b14f6b Author: Huang Peng Date: 2008-09-09 15:37:06 +0800 Add -Wl,--no-undefined in CFLAGS. M autogen.sh commit e3d960312eb0b3e272eb3194c43a1d1b94f6fb07 Author: Huang Peng Date: 2008-09-08 22:37:59 +0800 WIP. M test/test_client.py commit 3c0955994e98a8c0bf06d4f7e4ee06587fff1234 Author: Huang Peng Date: 2008-09-08 21:10:03 +0800 Display message in state pad. M test/test_client.py commit 1c8ccb2cb582a71a4892b81820aff95402e8f02d Author: Huang Peng Date: 2008-09-08 21:06:07 +0800 Update demo code with curses. M test/test_client.py commit 78bc232a82e8a9f4e175c2503c133961b1efd66e Author: Huang Peng Date: 2008-09-08 21:05:44 +0800 Fix some typos. M daemon/inputcontext.py M ibus/bus.py commit b29d6d19386286d13ff207ea05ef0d44260882a7 Author: Huang Peng Date: 2008-09-08 15:02:05 +0800 Fix porblems when focus_in and focus_out. M panel/languagebar.py commit fb038069124a1a3ad892cbd86696f963e92ad384 Author: Huang Peng Date: 2008-09-08 14:57:46 +0800 Save languagebar position. M panel/languagebar.py commit 265a40f29c791a3345a8a2cae8b4174c465199e5 Author: Huang Peng Date: 2008-09-08 09:25:04 +0800 handle aus string related signals. M test/test_client.py commit c019af0f2d155ed2edaf600732218057cabc441e Author: Huang Peng Date: 2008-09-08 09:21:41 +0800 Add test_client.py. A test/test_client.py commit 2874498ce5c5f59fd87e25eeff174c47047d9482 Author: Huang Peng Date: 2008-09-08 09:16:14 +0800 Work on client signals. M daemon/inputcontext.py M ibus/bus.py commit 0e5753be1b726908911a3cfea65fe14c64c00898 Author: Huang Peng Date: 2008-09-07 22:56:29 +0800 Implement signals. M ibus/bus.py commit acdcbf3bcb6d4630367ee15a706effeac6d1e397 Author: Huang Peng Date: 2008-09-07 22:39:50 +0800 Define signals for im clients. M ibus/bus.py commit db47f81d0a04a079047a29e4a05a118bcbd1af0f Author: Huang Peng Date: 2008-09-07 19:30:25 +0800 Add two capabilities for fbterm. M daemon/inputcontext.py commit 9efb21471f2ff947d085cbbea4584b15bcb1be51 Author: Huang Peng Date: 2008-09-06 17:55:31 +0800 Update ibus.svg. M icons/ibus.svg commit 9616f9713f9590a20df14b23155c477f560ed50a Author: Huang Peng Date: 2008-09-06 13:27:52 +0800 Convert Text to Path in ibus.svg. M icons/ibus.svg commit f11370650438e486c425da5a4c7be08160ff81ab Author: Huang Peng Date: 2008-09-06 11:30:31 +0800 Fix a typo. M lib/gtk2/ibusimclient.c commit 9900f05e538e71a0c37b0cfc5eae0c1585ec6486 Author: Huang Peng Date: 2008-09-06 11:23:14 +0800 Include gdk/gdk.h M client/x11/main.c commit 3377100d05cd3f483b202c8e0ce5540e7c679ee4 Author: Huang Peng Date: 2008-09-06 11:21:34 +0800 Include gdk/gdk.h M lib/gtk2/ibusimclient.c commit 133bbf36741ab640cf0984d590671519b5914981 Author: Huang Peng Date: 2008-09-06 10:45:52 +0800 Fix sudo problem. M client/qt4/ibus-client.cpp M lib/gtk2/ibusimclient.c commit d96f994a9dbfee936f3a065b8611ec6d043f7be8 Author: Huang Peng Date: 2008-09-06 10:29:59 +0800 Fix bugs if system does not have XKB. M lib/gtk2/ibusimclient.c commit 206b91fe7614dd3a1a40567f4b54c80a7cb327ed Author: Huang Peng Date: 2008-09-06 10:12:58 +0800 Rename function and remove unused code. M lib/gtk2/ibusimclient.c commit dec9b8052f3384ee2a01a82a38d947a57e8e22c9 Author: Huang Peng Date: 2008-09-06 10:04:23 +0800 Hack Japan [yen bar] & [backslash underbar] keys. M client/x11/gdk-private.c M configure.ac M lib/gtk2/Makefile.am M lib/gtk2/ibusimclient.c commit ab07888604b9e7993ba05eace36e49e495c7e74d Author: Huang Peng Date: 2008-09-03 22:56:28 +0800 Use g_dgettext when glib2 >= 2.18.0 M client/gtk2/ibusimcontext.c commit 89fb436bf12a6525f4b7a87464a27acc7479bba7 Author: Huang Peng Date: 2008-09-03 20:51:53 +0800 Fix problem in nautilus. M client/gtk2/ibusimcontext.c commit b7f8c1b9ad312450f73bbb64eee46eb8f0c63d77 Author: Huang Peng Date: 2008-09-02 21:16:04 +0800 Remove IBusClient::slotFileChanged. M client/qt4/ibus-client.h commit 0e1a1f5316d102c65af1dc02440ba1bb7985c32f Author: Huang Peng Date: 2008-09-02 21:10:29 +0800 Add x11 in CONFIG. To let qt im module built with x11 libraries. M client/qt4/ibus.pro commit 21092ef6492e6a3186891bd4661ded0178b315d5 Author: Huang Peng Date: 2008-09-02 08:08:58 +0800 Fix email_hook and url_hook problem. M panel/panel.py commit 17eeeb8dd2ba385b1a9e67beb386abc83852a7c1 Author: Huang Peng Date: 2008-08-31 22:38:05 +0800 Modify categories of *.desktop M launcher/ibus.desktop.in M setup/ibus-setup.desktop.in commit 676c1b9653c9333d0e5354f9eb4b9de703da970d Author: Huang Peng Date: 2008-08-31 13:26:16 +0800 Use ibus gtk im module for ja, ko, zh. M client/gtk2/ibusim.c commit 5b198f92c2c409b3c972ed605d7d425d3eac4eed Author: Huang Peng Date: 2008-08-31 11:45:31 +0800 Remove empty lines. M ibus/keysyms.py commit aeb7032c694cae6fd8e86a236e95e938ce0f0ac4 Author: Huang Peng Date: 2008-08-31 11:22:49 +0800 Use name_to_keycode to convert name to keyval. M daemon/bus.py M setup/keyboardshortcut.py commit fd0e130388b93cf6c8729d88d5642060c3ec1c15 Author: Huang Peng Date: 2008-08-31 10:36:27 +0800 Fix candidates window position problem. M panel/candidatepanel.py commit 5211d6ecc020e33a213c4d11cac1a7d2cd130a8b Author: Huang Peng Date: 2008-08-31 10:19:28 +0800 Fix a typo. M ibus/lookuptable.py commit 1f9addc9fe67d1e41bb35395de78ac98d8b9e553 Author: Huang Peng Date: 2008-08-31 10:11:55 +0800 Refine coding style. M ibus/lookuptable.py commit 440ff6e5aca11074575a6f19b8c846225f2798e6 Author: Huang Peng Date: 2008-08-31 09:33:08 +0800 Update README. M README commit 3137dc3e04e61162b520f473a8e70034b2f4f395 Author: Huang Peng Date: 2008-08-30 23:14:54 +0800 Add ibus/config.py.in. A ibus/config.py.in commit 5ee51286a53a7c4d79d28f6280e90778535595bd Author: Huang Peng Date: 2008-08-30 23:13:44 +0800 Set hooks for about dialog. M panel/panel.py commit 05cb5b1b3bed10be70016b47bb0817a2c25be9a4 Author: Huang Peng Date: 2008-08-30 22:01:27 +0800 Update Translation. M panel/panel.py M po/ja.po M po/zh_CN.po commit 2fdde080559a8b39fe2d92359ed2e125abb516d3 Author: Huang Peng Date: 2008-08-30 21:52:06 +0800 Add about dialog in ibus menu. M client/gtk2/ibusimcontext.c M configure.ac M ibus/Makefile.am M ibus/__init__.py M panel/panel.py M po/ja.po M po/zh_CN.po M setup/setup.glade commit ff15b28272e8930f512a9f098b6c9970e4ae12e4 Author: Huang Peng Date: 2008-08-30 19:21:06 +0800 Save default input engine and restore it when start ibus. M daemon/bus.py M daemon/factorymanager.py M daemon/ibusdaemon.py commit dc0cf118d0ec4733ce9b12244a2e40f271195278 Author: Huang Peng Date: 2008-08-30 18:15:23 +0800 Update default factory when press Ctrl + Shift. M daemon/bus.py commit 9f986d3f219a0e492a6c8a06673190de9c005603 Author: Huang Peng Date: 2008-08-30 16:24:38 +0800 Set default_factory when user choice a engine in im menu. M daemon/bus.py M daemon/factorymanager.py commit 248018e9a73da7c088bf80d16b9fbc32e35f51ab Author: Huang Peng Date: 2008-08-30 16:09:51 +0800 Remove unused code. M setup/main.py commit c8f995a05d1366096f0d1c95d6bae6ee18c1d83b Author: Huang Peng Date: 2008-08-30 16:07:27 +0800 Remoce unused code. M daemon/bus.py commit 9f4887f8fad3b40887a99aafcf741731bc2dabef Author: Huang Peng Date: 2008-08-30 10:00:17 +0800 Fix a typo. M lib/gtk2/ibusimclient.c commit 7e095605e42a5a614fcfb1c0d34bebcb40222ec6 Author: Huang Peng Date: 2008-08-30 08:53:46 +0800 Fix segfault when connection is broken. M lib/gtk2/ibusimclient.c commit 7eac7f7367a926c24461a6185d70b744c764aaa2 Author: Huang Peng Date: 2008-08-30 07:51:11 +0800 Translate im menu. M client/qt4/ibus-input-context.cpp M client/qt4/ibus-input-context.h M panel/panel.py commit 825d1bfb60879f3b4c728d485df18d133c24ce58 Author: Huang Peng Date: 2008-08-29 21:15:13 +0800 reset panel when switch engine. M daemon/bus.py commit 7759c0be236eba32bab76f5352ef3733a99ca347 Author: Huang Peng Date: 2008-08-29 20:36:28 +0800 Translate "Keyboard shortcuts" M setup/keyboardshortcut.py commit 162e8b5cac46c2c10d167437c4b4774f8f9e581b Author: Huang Peng Date: 2008-08-29 20:33:32 +0800 Translate "Switch engine". M launcher/ibus.in M panel/languagebar.py M po/ja.po M po/zh_CN.po commit 96fe474472fee96070763602c44c711d90dcab5f Author: Huang Peng Date: 2008-08-29 07:21:40 +0800 Update ja.po by UTUMI Hirosi . M po/ja.po commit 04e253668b792455afe722fc8ed849f663976e35 Author: Huang Peng Date: 2008-08-28 19:02:04 +0800 Change defaul keyboard shortcuts M daemon/bus.py M ibus/common.py M po/ja.po M po/zh_CN.po M setup/main.py commit 4a2a57d638f497c8d1366faceb800cf4117aeb77 Author: Huang Peng Date: 2008-08-27 18:45:50 +0800 Auto hide language bar when disable input method. M panel/languagebar.py M panel/panel.py commit 63c08d5a33e830edfe056ef22a0e802ea61e4ed3 Author: Huang Peng Date: 2008-08-27 18:02:57 +0800 Use 0 for timestamp of XEvent. M client/x11/main.c commit 079027556e845b04343432ccf9fcf092527c986f Author: Huang Peng Date: 2008-08-27 17:46:48 +0800 Update translation problems. M po/ja.po M po/zh_CN.po M setup/main.py commit 64a8ed4ca32aaf70c9289fd2a91ff485936f2ea1 Author: Huang Peng Date: 2008-08-27 17:27:56 +0800 Chang the order of LINGUAS. M po/LINGUAS commit 5be35d26b5931a6aba2bb450cf0d100485d854ce Author: Huang Peng Date: 2008-08-27 17:26:32 +0800 Replace Divehi with Dhivehi M ibus/lang.py commit f8f5fda5d8a80617db1907df0dabe2f1b07391bf Author: Huang Peng Date: 2008-08-27 17:25:51 +0800 Replace Divehi with Dhivehi. M po/ja.po M po/zh_CN.po commit 4957c09a85fb06b24a64f146977b860122431bb1 Author: Huang Peng Date: 2008-08-27 17:22:14 +0800 Update AUTHORS. M AUTHORS commit 51feae5b105db1ad8b9f5036482166bbf22f7938 Author: Huang Peng Date: 2008-08-27 17:19:09 +0800 Add ja.po by UTUMI Hirosi . M po/LINGUAS A po/ja.po commit 34e648b843985c58b52251c72a7622175134a2f7 Author: Huang Peng Date: 2008-08-27 17:16:53 +0800 Make gettext work for message. M setup/main.py commit a5fba23b3d7c51db9c6d735104fbd3459253f7fd Author: Huang Peng Date: 2008-08-27 17:09:11 +0800 Fix selection problem in gedit. M client/gtk2/ibusimcontext.c commit e86a77c238e631be9b91f836937bafbbdc714128 Author: Huang Peng Date: 2008-08-27 12:57:39 +0800 Request reload_engines. M setup/main.py commit a6cba87494079c5d6f3b1006ddd8eafb0fa23d9e Author: Huang Peng Date: 2008-08-27 12:57:22 +0800 Remove unused check. M configure.ac commit 767c03c78771ee4e7464c2c5f481a317d7da336f Author: Huang Peng Date: 2008-08-27 12:08:20 +0800 Do not print backtrace. M daemon/ibusdaemon.py commit f9022457cbfe1f8d4341fbab45eafa74fea78c2a Author: Huang Peng Date: 2008-08-25 22:57:24 +0800 Update the context_name of im info. M client/gtk2/ibusim.c commit 3ecd768dd15a5cc3db4e2b0bd8b0d2a7b1c26c4b Author: Huang Peng Date: 2008-08-25 22:41:01 +0800 Update headers. M client/gtk2/ibusimcontext.c M client/gtk2/ibusimcontext.h M lib/gtk2/ibusimclient.c M lib/gtk2/ibusimclient.h commit 883c83211bee60ed07ad5cec63a2f7df40e89cec Author: Huang Peng Date: 2008-08-25 22:40:52 +0800 Replase "The Input Bus" with iBus M client/gtk2/ibusim.c commit 75fbad459b3bcab30820ac065d412c52412abd4f Author: Huang Peng Date: 2008-08-25 14:37:30 +0800 Fix problem in KDE. M client/qt4/ibus-client.cpp commit 7e5848808ce6540325a80bef699f791501bc91d4 Author: Huang Peng Date: 2008-08-25 11:27:55 +0800 Update po files. M po/zh_CN.po commit 4036e16e79183d314f77e565e2727f6627aaedf2 Author: Huang Peng Date: 2008-08-25 11:26:09 +0800 Makedirs if ~/.config/autostart is not exist. M setup/main.py commit d1c1ea222a0dcfd966ccb6fa51f348f80e2e1a6f Author: Huang Peng Date: 2008-08-25 10:32:01 +0800 Fix problem in config_set_value M gconf/config.py commit 03470e3a7d7c5c610ce9e6c6ddc1607d33fe3280 Author: Huang Peng Date: 2008-08-25 09:28:39 +0800 Fix problem when font_name contains unicode chars. M gconf/config.py commit f25b1350150f0b2db51115362bbb4d3da3a8ef08 Author: Huang Peng Date: 2008-08-25 08:34:01 +0800 Fix problem when font_name has unicode char. M panel/panel.py M setup/main.py commit caf982d0574f27b66d1e8bc8362ee9b94c79611f Author: Huang Peng Date: 2008-08-25 06:22:39 +0800 Fix a typo. M ibus/factory.py commit e71343d96e959eba99f880144610e3e8919c32f7 Author: Huang Peng Date: 2008-08-24 16:27:06 +0800 WIP. M setup/setup.glade commit dbf0ed9245e21a057b918d01a74d60bcece3e85d Author: Huang Peng Date: 2008-08-24 16:24:16 +0800 Change the UI. M setup/setup.glade commit f08468fa7bbabd000d8308c2f32525764bb424cd Author: Huang Peng Date: 2008-08-24 11:46:05 +0800 Translate some msg. M panel/panel.py M po/zh_CN.po commit 905076b0976d2cb2aa8daac7f3d6de58f31f86b7 Author: Huang Peng Date: 2008-08-24 10:12:12 +0800 Refine code. M panel/panel.py commit b16711ce6ea5e94a0e001ea8446b469a42046dc5 Author: Huang Peng Date: 2008-08-24 10:07:58 +0800 Support auto hide M panel/languagebar.py M panel/panel.py commit 99261ce1e497fbd6dc20a3b61a30bb3b60bcc3eb Author: Huang Peng Date: 2008-08-24 10:00:42 +0800 Support custom font. M panel/candidatepanel.py M panel/panel.py commit b512009d51575fa189ef46eaf21b36ea951d492a Author: Huang Peng Date: 2008-08-24 08:54:42 +0800 Add custom_font and auto_hide configure items. M setup/main.py M setup/setup.glade commit ce853e02294d8d432187c2e989e165fe043e1818 Author: Huang Peng Date: 2008-08-23 09:08:50 +0800 Create engine folder in install-data-hook. M Makefile.am M ibus.spec.in commit 0bc1bab541e702d9ce438bd487260275ff8a5e53 Author: Huang Peng Date: 2008-08-23 08:29:59 +0800 Require Qt >= 4.4.0 M configure.ac commit 938981abbe11994677fc646d7146ac1d9a9413f3 Author: Huang Peng Date: 2008-08-22 16:42:36 +0800 Refine Makefile.am M client/gtk2/Makefile.am M client/x11/Makefile.am M po/zh_CN.po commit 0ac5c124f8cea65f5cde563c44190e8e84063421 Author: Huang Peng Date: 2008-08-22 16:31:16 +0800 Add header. M util/IMdkit/Makefile.am commit eab834d3bfc704c4e2f80200914c32696177b120 Author: Huang Peng Date: 2008-08-22 12:01:56 +0800 internationalize engine's name M daemon/register.py M ibus/interface/iibus.py M po/zh_CN.po M setup/main.py M setup/setup.glade commit 8bb2ae1cd7a80d7d9a9fbeb9317ca302b202e10a Author: Huang Peng Date: 2008-08-22 10:56:11 +0800 Fix gettext problem M setup/keyboardshortcut.py commit 3d68f2129245cb03b485836ad94c30c5ba5afb2b Author: Huang Peng Date: 2008-08-22 10:55:16 +0800 Update translation. M po/POTFILES.in M po/zh_CN.po M setup/main.py commit 9554d5fe1775c74b13c2027557795e7723593778 Author: Huang Peng Date: 2008-08-22 10:46:44 +0800 Translate some msg. M po/zh_CN.po commit c4a1a72e576f268382a355ccd66b9d717aaf555f Author: Huang Peng Date: 2008-08-22 10:41:44 +0800 Fix problem when restart ibus-daemon. M client/qt4/ibus-client.cpp M client/qt4/ibus-client.h M client/qt4/ibus-input-context.cpp commit 659f9387df90ebb90a9d832f8d4d86aac28573a6 Author: Huang Peng Date: 2008-08-22 10:11:01 +0800 Use QString::isEmpty() replace QString::isNull() to avoiding some problems. M client/qt4/ibus-client.cpp commit ec7331b6388817ff79860bbbac799c3fd4f97f2f Author: Huang Peng Date: 2008-08-21 18:19:11 +0800 Ignore NumLock mask. M daemon/bus.py commit c77adbb5dea1bfd4fe275c9789623a0360677c9e Author: Huang Peng Date: 2008-08-21 13:49:34 +0800 Add configure items for keyboard shortcuts. M daemon/bus.py M ibus/modifier.py M setup/keyboardshortcut.py M setup/setup.glade commit 766f22120dfeaa883ef0c3346898d9a7a690dd11 Author: Huang Peng Date: 2008-08-21 11:40:05 +0800 WIP. M client/gtk2/ibusimcontext.c M daemon/bus.py M lib/gtk2/ibusimclient.c M setup/main.py commit 6a605c9f5fa77ab32dc74fd91afd4c46d8d92c2e Author: Huang Peng Date: 2008-08-21 11:17:06 +0800 Check CreateInputContext's return value. M client/qt4/ibus-client.cpp commit ad31ce022214af66889f0700e617f1d2f99c2c5c Author: Huang Peng Date: 2008-08-21 11:14:36 +0800 Test CreateInputContext's return value. M client/x11/main.c commit 9dc63065ea6b6365eccbb9ba180af4cf4f0a0d7c Author: Huang Peng Date: 2008-08-21 11:13:04 +0800 Fix segfault when starting ibus. M client/gtk2/ibusimcontext.c commit e6f53ea154b1f155b9c448f96d8374f665ee2c87 Author: Huang Peng Date: 2008-08-21 08:59:12 +0800 Add keyboardshortcut.py in Makefile.am M setup/Makefile.am commit 3e6fc7dde3feda5c11d67b15be3c765e15f1ea2d Author: Huang Peng Date: 2008-08-21 08:18:48 +0800 WIP. M setup/keyboardshortcut.py M setup/main.py M setup/setup.glade commit feef446a21ea0e701de13d301dbe64877a91e79c Author: Huang Peng Date: 2008-08-21 07:19:36 +0800 WIP. M setup/main.py M setup/setup.glade commit cc9d726edeb71d3b002bc5a08277680516bf7191 Author: Huang Peng Date: 2008-08-20 23:34:40 +0800 WIP. M setup/setup.glade commit 61d73891928050c071966c896de2967d5d2341ef Author: Huang Peng Date: 2008-08-20 20:23:15 +0800 Fix problem when delete a keyboard shortcut. M setup/keyboardshortcut.py commit ff2602cfc356474d23e4aadde00ea71e482d4731 Author: Huang Peng Date: 2008-08-20 15:08:18 +0800 Add add_shortcut method M setup/keyboardshortcut.py commit 1ea2187d6c06f5a277149d9a6e53aa3f9c83ba2d Author: Huang Peng Date: 2008-08-20 14:57:31 +0800 WIP. M setup/keyboardshortcut.py commit f72d9cbdc9a3a73ca39858503fcb862fdaf01661 Author: Huang Peng Date: 2008-08-20 11:14:58 +0800 Add border for the shortcut view. M setup/keyboardshortcut.py commit 3a6a1951171016cb888817d2c8c03d6e2347a694 Author: Huang Peng Date: 2008-08-20 11:04:31 +0800 WIP. A setup/keyboardshortcut.py commit 26097461cb2428f7c594c11fd12123705bbbbc39 Author: Huang Peng Date: 2008-08-19 22:05:49 +0800 Add code to work around bug http://code.google.com/p/ibus/issues/detail?id=25. M client/gtk2/ibusimcontext.c M client/x11/main.c M lib/gtk2/ibusimclient.c M lib/gtk2/ibusimclient.h commit 628a3d8eea5bb38beae3022cf594212e803f0d22 Author: Huang Peng Date: 2008-08-19 13:56:28 +0800 Add get_labels for lookuptable M ibus/lookuptable.py commit 8c6fae5ec47bb0684c88e891e66ea070b1d0af58 Author: Huang Peng Date: 2008-08-19 12:58:06 +0800 Refine code of attribue.py M ibus/attribute.py M ibus/gtk.py commit 7ce436b2e33f078c3a0628aa5c06e824b81ce302 Author: Huang Peng Date: 2008-08-19 11:07:22 +0800 Fix Ctrl + Shift problem. M daemon/bus.py commit 4d34dbaff9e0163ce9c1005dac11797e5ca6b7ca Author: Huang Peng Date: 2008-08-19 09:23:37 +0800 Refine code. M ibus/property.py commit 539913da27823ee2884b60db92ae87a94d654069 Author: Huang Peng Date: 2008-08-19 09:21:05 +0800 Translate str to unicode. M ibus/property.py commit ec51a56f8e2e788f303e687186ffe402729081d9 Author: Huang Peng Date: 2008-08-19 09:08:38 +0800 Fix a typo. M panel/toolitem.py commit 399e48ae1a550a3cf3977ee62adc8a46d07c6d02 Author: Huang Peng Date: 2008-08-19 09:05:29 +0800 Refine code. M panel/menu.py commit 865fc381d2210ed095bb156acdba1a6dc0fc6709 Author: Huang Peng Date: 2008-08-19 08:54:37 +0800 Refine code. M panel/languagebar.py M panel/propitem.py M panel/toolitem.py commit d451a893a8e330253d8d71983874d9b5887d9064 Author: Huang Peng Date: 2008-08-19 08:44:23 +0800 Refine code. M ibus/property.py commit d3cf780b44c7a2d7d32b8173f1edc2a5fe527ece Author: Huang Peng Date: 2008-08-18 14:24:42 +0800 Disable some debug output. M client/qt4/ibus-input-context.cpp commit db0290859be1708a2d78636820eb52f2c3bfbe67 Author: Huang Peng Date: 2008-08-18 10:12:27 +0800 Fix cursor pos problem M client/qt4/ibus-input-context.cpp M client/qt4/ibus-input-context.h commit f1390a784766ccfc5903d54e9ae03553dac5273f Author: Huang Peng Date: 2008-08-18 10:01:36 +0800 Fix some problems. M client/qt4/ibus-client.cpp M client/qt4/ibus-client.h M client/qt4/ibus-input-context.cpp M client/qt4/ibus-input-context.h commit 8b5edb3da30ec604d1de12ea7e2bff47c4b2f6b1 Author: Huang Peng Date: 2008-08-18 09:15:52 +0800 Fix focus problem in qt im module. M client/qt4/ibus-input-context.cpp commit 4d2fd6e6455a5b9d06e7af71d8778b6c08adbcca Author: Huang Peng Date: 2008-08-18 09:00:27 +0800 Refine code. M lib/gtk2/ibusimclient.c commit 470f774fe3b1123070e791d5a4e241bbaeb83af3 Author: Huang Peng Date: 2008-08-18 08:45:52 +0800 Refine code. M lib/gtk2/ibusimclient.c commit 57719972b69573b3fc2836c6c42d000900625c50 Author: Huang Peng Date: 2008-08-17 23:38:45 +0800 Add Separator in sys menu. M panel/panel.py commit f5ee0db1fe8add2f787efc9f208738436097fcfc Author: Huang Peng Date: 2008-08-17 22:33:30 +0800 Panel supports changing orientation of candidates window. M panel/panel.py commit c6412523c4921b238dff38493cb84ebe1c76f0ba Author: Huang Peng Date: 2008-08-17 22:23:59 +0800 Watch config changed. M setup/main.py commit 7b47c05b0b9cae55eb818a765dcd3aaee57d16e8 Author: Huang Peng Date: 2008-08-17 22:15:56 +0800 Add lookup table orientation configure item. M setup/Makefile.am M setup/ibus-setup.in M setup/main.py M setup/setup.glade commit 95a6289bcd2c2e7ddba727d82da0fe992208c487 Author: Huang Peng Date: 2008-08-17 20:38:36 +0800 Add register_reload_engines method. M daemon/bus.py M daemon/register.py M ibus/bus.py M ibus/interface/iibus.py commit 17782215f92846ae69a0782cf9a3ffeb246f97d7 Author: Huang Peng Date: 2008-08-17 13:20:43 +0800 Add ibusattribute.h. A lib/gtk2/ibusattribute.h commit 45592707639a54c731f1310398467d9d7664d739 Author: Huang Peng Date: 2008-08-17 12:00:24 +0800 Check event.window when forward events. M client/gtk2/ibusimcontext.c commit d4dc319c0ce2b2e79563a23e3e12ffdeb024e2d7 Author: Huang Peng Date: 2008-08-17 11:54:55 +0800 Fix some compile warnings. Update time of forward key events. M client/gtk2/ibusimcontext.c commit e9c171c4c01b985ec931333cfdb4fffa0a4ecc89 Author: Huang Peng Date: 2008-08-17 11:45:54 +0800 Refine code. M lib/gtk2/ibusimclient.c commit 6827f1360b83d70fc0834d5129fc171e6085ba31 Author: Huang Peng Date: 2008-08-17 11:44:18 +0800 Use BOXED for PangoAttrList. M lib/gtk2/ibusimclient.c M lib/gtk2/ibusmarshalers.list commit 43d427e7cbbebcb0ff95dd6945602a670fdc9757 Author: Huang Peng Date: 2008-08-17 11:40:30 +0800 Fix segment fault when start or close ibus daemon. M client/gtk2/ibusimcontext.c M client/gtk2/ibusimcontext.h commit ce45fdc0def7c877e26136e8630601679d347529 Author: Huang Peng Date: 2008-08-17 11:17:10 +0800 Change parent of IBusIMClient. M lib/gtk2/Makefile.am M lib/gtk2/ibusimclient.c M lib/gtk2/ibusimclient.h commit 41de863a20f4bb9795818c29284b32c9c0f5b474 Author: Huang Peng Date: 2008-08-16 21:07:17 +0800 set cursor location when forward key. M client/x11/main.c commit fc4485f5d6bcaa150279420ee53ba4dda0b00707 Author: Huang Peng Date: 2008-08-16 20:34:23 +0800 WIP. M client/x11/main.c M lib/gtk2/ibusimclient.c commit 5c5f5077439017b3e4d795fedc34e51053ba6d89 Author: Huang Peng Date: 2008-08-16 19:09:42 +0800 Fix wrong cursor position. M client/x11/main.c commit b9af24711bc445854fdde8aaecf78ed2cb93c802 Author: Huang Peng Date: 2008-08-16 18:15:10 +0800 Fix some typos in Makefile.am M client/gtk2/Makefile.am M ibus.spec.in commit 889e2190c68a4e2a4a8dce9f654d36d9ec06f138 Author: Huang Peng Date: 2008-08-16 17:52:07 +0800 Fix bug when do not install ibus in /usr M daemon/ibus-daemon.in M daemon/register.py D gconf/ibus-gconf commit 16d674dd9f2561328ab7e1a5a42d32c12d11ec5f Author: Huang Peng Date: 2008-08-16 17:35:51 +0800 Fix make distcheck error. M client/gtk2/Makefile.am commit e3b577660fbd74f7170c92e0f4f741f40b294d05 Author: Huang Peng Date: 2008-08-16 17:31:41 +0800 WIP. M client/x11/main.c M lib/gtk2/ibusimclient.c M lib/gtk2/ibusmarshalers.list commit 66a206b56a573e0059254261d37d64204f57c6cf Author: Huang Peng Date: 2008-08-16 15:48:23 +0800 Fix mem leak, when finalize a ibus im context. M client/gtk2/ibusimcontext.c commit dd63a1fc039d3751bd864a8af0a4e3128a91fb4f Author: Huang Peng Date: 2008-08-16 15:46:21 +0800 ibus-x11 can work now. M Makefile.am M client/x11/Makefile.am M client/x11/main.c M configure.ac R100 client/x11/IMdkit/FrameMgr.c util/IMdkit/FrameMgr.c R100 client/x11/IMdkit/FrameMgr.h util/IMdkit/FrameMgr.h R100 client/x11/IMdkit/IMConn.c util/IMdkit/IMConn.c R100 client/x11/IMdkit/IMMethod.c util/IMdkit/IMMethod.c R100 client/x11/IMdkit/IMValues.c util/IMdkit/IMValues.c R100 client/x11/IMdkit/IMdkit.h util/IMdkit/IMdkit.h R100 client/x11/IMdkit/Makefile.am util/IMdkit/Makefile.am R100 client/x11/IMdkit/Xi18n.h util/IMdkit/Xi18n.h R100 client/x11/IMdkit/Xi18nX.h util/IMdkit/Xi18nX.h R100 client/x11/IMdkit/XimFunc.h util/IMdkit/XimFunc.h R100 client/x11/IMdkit/XimProto.h util/IMdkit/XimProto.h R100 client/x11/IMdkit/Xtrans.h util/IMdkit/Xtrans.h R100 client/x11/IMdkit/i18nAttr.c util/IMdkit/i18nAttr.c R100 client/x11/IMdkit/i18nClbk.c util/IMdkit/i18nClbk.c R100 client/x11/IMdkit/i18nIMProto.c util/IMdkit/i18nIMProto.c R100 client/x11/IMdkit/i18nIc.c util/IMdkit/i18nIc.c R100 client/x11/IMdkit/i18nMethod.c util/IMdkit/i18nMethod.c R100 client/x11/IMdkit/i18nPtHdr.c util/IMdkit/i18nPtHdr.c R100 client/x11/IMdkit/i18nUtil.c util/IMdkit/i18nUtil.c R100 client/x11/IMdkit/i18nX.c util/IMdkit/i18nX.c A util/Makefile.am commit 4f6dd0f14758d8002cb32751c5e2aeb23ed3062f Author: Huang Peng Date: 2008-08-16 14:58:21 +0800 WIP. M client/gtk2/Makefile.am commit 312499e2448ba96313ec90246c0cbe6d2b9a8c4c Author: Huang Peng Date: 2008-08-16 14:54:28 +0800 gtk im module can work now. M client/gtk2/ibusimcontext.c commit 81c8e05c3e4dd888d1db2f4c696fe11e6246cd64 Author: Huang Peng Date: 2008-08-16 14:43:15 +0800 WIP. M client/gtk2/Makefile.am M client/gtk2/ibusimcontext.c commit eea4913d52c8f4fc1ebf3173688305380e32d836 Author: Huang Peng Date: 2008-08-16 14:13:19 +0800 WIP. M client/gtk2/ibusim.c M client/gtk2/ibusimcontext.c M lib/gtk2/ibusimclient.c M lib/gtk2/ibusimclient.h commit 5f630039085256b53f9935d4d5a94de56c0deec8 Author: Huang Peng Date: 2008-08-16 13:41:26 +0800 Remove engine dir. M configure.ac commit 7cf0c05d10bfb465765e439cca299b8eca8d6bcb Author: Huang Peng Date: 2008-08-16 13:41:07 +0800 WIP. M Makefile.am M lib/gtk2/ibusimclient.c commit ad42625677ac6ed3b43598fe71dfe92232f11fed Author: Huang Peng Date: 2008-08-16 13:40:58 +0800 Remove engine folder.. D engine/Makefile.am commit 44dce73dae56c19e6f21caa4bb022dba0996ff9e Author: Huang Peng Date: 2008-08-16 13:03:05 +0800 WIP. M lib/gtk2/Makefile.am commit 51176a19e373c178174a6a6360ed9db3e81fba1b Author: Huang Peng Date: 2008-08-16 12:53:58 +0800 WIP. M client/gtk2/Makefile.am D client/gtk2/ibusimclient.c D client/gtk2/ibusimclient.h D client/gtk2/ibusmarshalers.list commit 931f116d5fee25f22a48cf50b13323f3bd89180b Author: Huang Peng Date: 2008-08-16 12:51:47 +0800 WIP. M Makefile.am A client/Makefile.am A client/gtk2/Makefile.am R095 gtk2/ibusim.c client/gtk2/ibusim.c R098 gtk2/ibusimclient.c client/gtk2/ibusimclient.c R095 gtk2/ibusimclient.h client/gtk2/ibusimclient.h R100 gtk2/ibusimcontext.c client/gtk2/ibusimcontext.c R100 gtk2/ibusimcontext.h client/gtk2/ibusimcontext.h R100 gtk2/ibusmarshalers.list client/gtk2/ibusmarshalers.list R100 qt4/.gitignore client/qt4/.gitignore R100 qt4/Makefile.am client/qt4/Makefile.am R100 qt4/ibus-client.cpp client/qt4/ibus-client.cpp R100 qt4/ibus-client.h client/qt4/ibus-client.h R100 qt4/ibus-input-context.cpp client/qt4/ibus-input-context.cpp R100 qt4/ibus-input-context.h client/qt4/ibus-input-context.h R100 qt4/ibus.pro client/qt4/ibus.pro R100 qt4/im-ibus-qt.cpp client/qt4/im-ibus-qt.cpp R100 x11/IMdkit/FrameMgr.c client/x11/IMdkit/FrameMgr.c R100 x11/IMdkit/FrameMgr.h client/x11/IMdkit/FrameMgr.h R100 x11/IMdkit/IMConn.c client/x11/IMdkit/IMConn.c R100 x11/IMdkit/IMMethod.c client/x11/IMdkit/IMMethod.c R100 x11/IMdkit/IMValues.c client/x11/IMdkit/IMValues.c R100 x11/IMdkit/IMdkit.h client/x11/IMdkit/IMdkit.h R100 x11/IMdkit/Makefile.am client/x11/IMdkit/Makefile.am R100 x11/IMdkit/Xi18n.h client/x11/IMdkit/Xi18n.h R100 x11/IMdkit/Xi18nX.h client/x11/IMdkit/Xi18nX.h R100 x11/IMdkit/XimFunc.h client/x11/IMdkit/XimFunc.h R100 x11/IMdkit/XimProto.h client/x11/IMdkit/XimProto.h R100 x11/IMdkit/Xtrans.h client/x11/IMdkit/Xtrans.h R100 x11/IMdkit/i18nAttr.c client/x11/IMdkit/i18nAttr.c R100 x11/IMdkit/i18nClbk.c client/x11/IMdkit/i18nClbk.c R100 x11/IMdkit/i18nIMProto.c client/x11/IMdkit/i18nIMProto.c R100 x11/IMdkit/i18nIc.c client/x11/IMdkit/i18nIc.c R100 x11/IMdkit/i18nMethod.c client/x11/IMdkit/i18nMethod.c R100 x11/IMdkit/i18nPtHdr.c client/x11/IMdkit/i18nPtHdr.c R100 x11/IMdkit/i18nUtil.c client/x11/IMdkit/i18nUtil.c R100 x11/IMdkit/i18nX.c client/x11/IMdkit/i18nX.c R100 x11/Makefile.am client/x11/Makefile.am R100 x11/gdk-private.c client/x11/gdk-private.c R100 x11/gdk-private.h client/x11/gdk-private.h R100 x11/main.c client/x11/main.c M configure.ac A lib/Makefile.am R079 gtk2/Makefile.am lib/gtk2/Makefile.am A lib/gtk2/ibusimclient.c A lib/gtk2/ibusimclient.h A lib/gtk2/ibusmarshalers.list commit 6a820938ed75a8c87ba223e248cba0d552bcb8b1 Author: Huang Peng Date: 2008-08-16 12:28:16 +0800 WIP. M gtk2/ibusim.c M gtk2/ibusimclient.c M gtk2/ibusimclient.h M gtk2/ibusmarshalers.list commit ada53aa8f62f7e3bb8f635add2bccff0c4ce17f4 Author: Huang Peng Date: 2008-08-16 11:12:13 +0800 WIP. M gtk2/Makefile.am M gtk2/ibusimclient.c M gtk2/ibusimclient.h A gtk2/ibusmarshalers.list M x11/main.c commit fd4699471ad0ab77b7eac8dff83f9c8fb11d9fed Author: Huang Peng Date: 2008-08-15 09:44:23 +0800 Set XErrorHandler. M gtk2/ibusimcontext.c M x11/main.c commit 242ea90f5c49b83e2b7333bacba8dea37c5af7d0 Author: Huang Peng Date: 2008-08-14 22:53:39 +0800 Fix X error with rxvt. M x11/main.c commit 2b49eee7367483a3530d6a4b321f65d33f6d1801 Author: Huang Peng Date: 2008-08-14 21:47:20 +0800 Default will show cursor in lookup table M ibus/lookuptable.py commit 4fed7048a96fa0980c85c3fe216b457b79bb1a48 Author: Huang Peng Date: 2008-08-14 21:33:58 +0800 Fix problem when lookup_table without show cursor. M panel/candidatepanel.py M panel/languagebar.py M panel/toolitem.py commit b5adf2c75dc7033590596bbc7c1c0adf35810b32 Author: Huang Peng Date: 2008-08-14 21:33:08 +0800 Add CFLAGS & CXXFLAGS. M autogen.sh commit 16bd435bfc26799784aa62a7d94816d371b28e33 Author: Huang Peng Date: 2008-08-14 21:31:54 +0800 Fix segfault when use ibus with urxvt. M x11/main.c commit d0c61308117651a6c55ff5c1475d5c352a1244b1 Author: Huang Peng Date: 2008-08-14 07:39:41 +0800 Fix compile warning. M x11/main.c commit b8f1b34019318db89e21361896e704f22273ca85 Author: Huang Peng Date: 2008-08-14 07:37:32 +0800 Fix compile warning. M autogen.sh M gtk2/ibusimclient.c M gtk2/ibusimcontext.c commit 68039d1e60dfe2c3a66fddba94157b72c61fde5a Author: Huang Peng Date: 2008-08-14 07:25:16 +0800 Fix compile warning. M x11/IMdkit/i18nAttr.c commit 5bc672a6c0c5ea120af9c36729f107c950c969e2 Author: Huang Peng Date: 2008-08-14 07:20:52 +0800 Fix compile warning. M gtk2/ibusimclient.c M gtk2/ibusimcontext.c commit b234b2be1580dac4e9cb9783ea01365c36557c52 Author: Huang Peng Date: 2008-08-14 07:11:50 +0800 Use g_new0 replace g_malloc0 M x11/main.c commit b4a425733ba6e4882283f2e6fcc618348536bd67 Author: Huang Peng Date: 2008-08-14 07:09:27 +0800 Change header of main.c M x11/main.c commit ba6433adcd67e075df3fa435ae9596ee676d62af Author: Huang Peng Date: 2008-08-14 07:07:48 +0800 Change header of gdk-private.{c,h} M x11/gdk-private.c M x11/gdk-private.h commit 7f9193b9655be9eb9cec927285eea9dac954c083 Author: Huang Peng Date: 2008-08-14 07:06:42 +0800 Change header for gdk-private.{c,h} M x11/gdk-private.c M x11/gdk-private.h commit eb9731484bc370552f9c5701023a424a4b5841fe Author: Huang Peng Date: 2008-08-13 22:42:40 +0800 Translate all texts. M po/zh_CN.po M setup/main.py commit 553775b68973f3ce7449d700a34932306d3a0f15 Author: Huang Peng Date: 2008-08-13 22:37:33 +0800 Add *.po file in spec. M ibus.spec.in commit 767258ca50b3d5c854db5003ada1fd7b5d8dd13b Author: Huang Peng Date: 2008-08-13 22:35:42 +0800 Translate all msg. M po/zh_CN.po commit 7074df9900c035927b1b955ed677b8652f0a445c Author: Huang Peng Date: 2008-08-13 22:32:32 +0800 Add zh_CN.po A po/LINGUAS A po/zh_CN.po commit ff6087669a7a17dcff1f997138b1c9aa28d4de5b Author: Huang Peng Date: 2008-08-13 22:06:08 +0800 i18n WIP. M po/POTFILES.in commit 12911afd7cd03e7eaf660e5e4911bef181d7035e Author: Huang Peng Date: 2008-08-13 16:12:16 +0800 Fix wrong path in ibus.in M launcher/ibus.in commit ce831f93fe3fb94aac7251511d484bead784364d Author: Huang Peng Date: 2008-08-13 16:09:09 +0800 Install programs in @bindir@ M daemon/Makefile.am M gconf/Makefile.am M ibus.spec.in M panel/Makefile.am M x11/Makefile.am commit a5f1cd6816b4179f8e236b6b8cc9aca374bfe76c Author: Huang Peng Date: 2008-08-13 15:42:26 +0800 Fix problem in archlinux. M configure.ac M launcher/ibus.in commit 1b0b4528869fe3b1a46e49a38385226dba228491 Author: Huang Peng Date: 2008-08-13 15:15:09 +0800 Use libexecdir M setup/ibus-setup.in M setup/main.py commit 9e2c9217c60ca9c58b5071ec8a0da1a4abfef2d5 Author: Huang Peng Date: 2008-08-13 11:04:32 +0800 Refine launcher code. M ibus/common.py M launcher/ibus.in commit cb0293353d50fc3c9bd38f06f9a052cd6405924f Author: Huang Peng Date: 2008-08-13 10:26:12 +0800 Use g_atexit replace atexit. M x11/main.c commit 180fd76c6ec30aa7b67d13237aaea4ca0fb7960d Author: Huang Peng Date: 2008-08-13 10:13:33 +0800 Refine ibus launcer code. M launcher/ibus.in commit e9e8eae8b3aa14110680da08fa79ba71547bc2c3 Author: Huang Peng Date: 2008-08-12 15:14:58 +0800 Add Requires gnome-python2-gconf in spec file. M ibus.spec.in commit a47f242de14f0599c3129ba76522853231202758 Author: Huang Peng Date: 2008-08-12 14:46:22 +0800 Change ibus_micro_version to 1. M configure.ac commit fd9924aaa1263c1f60e4a82903c6a8e1159e0c9b Author: Huang Peng Date: 2008-08-12 14:13:44 +0800 Do support move candidate window. M panel/candidatepanel.py commit f864ac2b98ad6b51ed1ed0f1d0b4505968e56983 Author: Huang Peng Date: 2008-08-12 14:12:00 +0800 Rename StringList to CandidateList. M ibus/lookuptable.py commit be9a339ffd21f2d333d1174e6d4171941064edbc Author: Huang Peng Date: 2008-08-12 14:10:16 +0800 Add __getslice__ method for StringList. M ibus/lookuptable.py commit 28aa9fed6a3893af6aaa3d75aa7f9150a5fa8fa5 Author: Huang Peng Date: 2008-08-11 21:03:45 +0800 Hide preedit when disable input method. M daemon/inputcontext.py commit 22bc732fe637b2a94fc6494ec3ec9fb7ad158d4b Author: Huang Peng Date: 2008-08-11 17:49:55 +0800 Fix a problem when press Ctrl-Shift M daemon/factorymanager.py commit 9862c178ee34df60fde6e8c7865de2aa2f8affb6 Author: Huang Peng Date: 2008-08-11 17:44:43 +0800 Change candidates' attributes. M ibus/attribute.py M panel/candidatepanel.py commit 721a884b76c2958f3e144e1e2e9799f11e50e5a3 Author: Huang Peng Date: 2008-08-11 17:06:54 +0800 Use Viewport in candidate window. M panel/candidatepanel.py commit 9abe8be7da1d7a43871bfb2854088442d7023e13 Author: Huang Peng Date: 2008-08-11 09:08:21 +0800 Add hotkey in README. M README commit 0f93a53484ae632df1c70005c03397710c791137 Author: Huang Peng Date: 2008-08-11 01:15:22 +0800 opt lookup_table transport performance. M ibus/engine.py M ibus/lookuptable.py commit ddb16588289a33eac2c52d48ac1ffd25bab04fa0 Author: Huang Peng Date: 2008-08-11 00:35:28 +0800 Fix problem when unfocused context calls set_cursor_position. M daemon/bus.py commit 80a1b629e9380b4ea24be437bad6ff0a0e5518c0 Author: Huang Peng Date: 2008-08-10 18:17:03 +0800 Remove docs. D doc/interfaces M doc/specification commit 47e653067ba8f9146586df549ed7ce0ba590e552 Author: Huang Peng Date: 2008-08-10 18:14:14 +0800 Fix problem when restart ibus daemon. M daemon/bus.py commit 26259dbd71e104ce70a28bc6cbe603b2c50806e0 Author: Huang Peng Date: 2008-08-10 18:08:59 +0800 Focus in when reconnect to ibus. M gtk2/ibusimcontext.c commit 8c3015afa0d86007c37ad64f1da71d8b7c62167d Author: Huang Peng Date: 2008-08-10 17:55:14 +0800 Add C-Shift for next factory. M daemon/bus.py commit 34eb3a7d807a30e66a10006cc6e3071632d012f4 Author: Huang Peng Date: 2008-08-10 13:56:06 +0800 WIP. M icons/ibus.svg commit dfb1168993f6717e8b328ac5e3da103b09a0b2bb Author: Huang Peng Date: 2008-08-10 13:42:49 +0800 WIP. M x11/main.c commit 4990988646b89535286a3fed3dc3a6840845d027 Author: Huang Peng Date: 2008-08-10 13:32:52 +0800 Use old engine-default.svg M icons/engine-default.svg commit c6a545fd69f9ffac1b731344878d9fdb9f118584 Author: Huang Peng Date: 2008-08-10 13:26:07 +0800 Modify icon. M icons/ibus.svg commit cd3e61c3fcf08aecfdaf78c8e1bb43931c8c07a6 Author: Huang Peng Date: 2008-08-10 13:23:34 +0800 Use ibus icon replace engine-default. M panel/languagebar.py M panel/panel.py commit e23221cea1e9fb568f8b6dcec18fc570419a09c8 Author: Huang Peng Date: 2008-08-10 13:03:55 +0800 Use ibus.svg as ibus-setup.svg. T icons/ibus-setup.svg commit 59238ae457f850ed2feecdb94ad9d7af9146be2b Author: Huang Peng Date: 2008-08-10 09:04:16 +0800 Change color of icons. M icons/engine-default.svg commit 0f634129e935f4320bad58bf5e84f98761d9f327 Author: Huang Peng Date: 2008-08-09 23:12:06 +0800 Resume cursor_position if context has focus when reconnect to ibus. M gtk2/ibusimcontext.c M gtk2/ibusimcontext.h commit a436714004455529d6cbe00bf64c2f911e2a490c Author: Huang Peng Date: 2008-08-09 22:57:04 +0800 Refine code and fix some compile warnings. M gtk2/ibusim.c M gtk2/ibusimclient.c commit 57421462edc62256018c4ba00be26a7b531bb44f Author: Huang Peng Date: 2008-08-09 22:27:44 +0800 Remove debug output. M panel/panel.py commit 9532e04a817cd2e42be910d6273a22d51bfa04d5 Author: Huang Peng Date: 2008-08-09 20:42:32 +0800 Chang color of icons. M icons/engine-default.svg commit f167995d016658aed1e6cd08615c3820bd59a35e Author: Huang Peng Date: 2008-08-09 19:19:06 +0800 Change icons. M icons/engine-default.svg M icons/ibus.svg commit 04b81eae7c7de532b80ed68fb6e43f2554c56ce5 Author: Huang Peng Date: 2008-08-09 17:09:50 +0800 Refine code. M x11/main.c commit 8cebcc82b2b20a35da332db29f7ea70f2d5be6dc Author: Huang Peng Date: 2008-08-09 11:33:41 +0800 Fix cursor position problem M gtk2/ibusimcontext.c commit a422f497ceae8930405c51221aa6146899c67b8a Author: Huang Peng Date: 2008-08-09 08:30:10 +0800 Refine coding style. M configure.ac M launcher/ibus.in commit c9c0d1f87e5c28b42d9b5c2422057d88d6083f37 Author: Huang Peng Date: 2008-08-08 17:20:15 +0800 Modify for packaging review. M ibus.spec.in commit 007c8c1a495a44b2791663485c486da45f322779 Author: Huang Peng Date: 2008-08-08 17:15:15 +0800 Remove unused dependences. M configure.ac M ibus.spec.in commit ea852dbea85043bf36faeb2c0c43a5e6413c25a8 Author: Huang Peng Date: 2008-08-08 15:12:22 +0800 Use LGPLv2. M COPYING commit 3cb4c5c7813d5cb5dc593c9e1db5f8a285cb3649 Author: Huang Peng Date: 2008-08-08 12:03:35 +0800 Refine doc. M README commit 2116f41641d605e05bd0ff4ac1f69cfce14ee319 Author: Huang Peng Date: 2008-08-08 12:01:47 +0800 Refine doc for rpm review. M README M ibus.spec.in commit 6aef6260e00c70dd3f56f6c4af186b70929e3048 Author: Huang Peng Date: 2008-08-08 10:50:50 +0800 Use atexit to kill daemon M x11/main.c commit 0d5249970d95047e329bb44c371b488463fd167f Author: Huang Peng Date: 2008-08-08 08:02:10 +0800 Fix refresh problem. M panel/Makefile.am M panel/candidatepanel.py M panel/panel.py commit f64adc44249c776fbece34d3e5c50b47eebc3ddd Author: Huang Peng Date: 2008-08-07 18:02:08 +0800 Sleep for every. M xinput-ibus commit 707cd300159b6ccfde2162d6e64e259a7b134a9f Author: Huang Peng Date: 2008-08-07 15:46:24 +0800 Remove python_sitearch. M ibus.spec.in commit d79633dc99cd8d94fc9655f38d27193c97d99b26 Author: Huang Peng Date: 2008-08-07 14:53:12 +0800 Handler X IO Error. M launcher/ibus.in M x11/main.c commit 131fbdd6c108f0931ae9a655690202ec150af81f Author: Huang Peng Date: 2008-08-07 14:15:11 +0800 Use sleep as fake xim server. M xinput-ibus commit c40012c674f7d3a5fb9c519f0be63fa6427d9c77 Author: Huang Peng Date: 2008-08-07 13:29:32 +0800 Use cat as a fake XIM server. M xinput-ibus commit 20376165d63220dbea7f8d3d1bee6f5a0e9ec61c Author: Huang Peng Date: 2008-08-07 13:00:10 +0800 Fix rpmlint errors. M ibus.spec.in commit 9bb9a4691dca85f57ce8a7eb8e229238c4f0adb5 Author: Huang Peng Date: 2008-08-07 10:52:10 +0800 Kill daemon when ibus-x11 exit. M gtk2/ibusimclient.c M gtk2/ibusimclient.h M launcher/ibus.in M x11/main.c commit 50060320ffb1a03c08e1f88690c3670c51c7ec66 Author: Huang Peng Date: 2008-08-07 10:27:51 +0800 Check exist ibus, before start a new ibus. M launcher/ibus.in commit 825081a3d719d9816e323325fabb33b0f0f36598 Author: Huang Peng Date: 2008-08-07 10:15:05 +0800 Implement auto start ibus. M setup/main.py M setup/setup.glade commit c93bd8b15a6368ac4aadb17e527f63c9e724f3c4 Author: Huang Peng Date: 2008-08-07 09:33:21 +0800 Fix typos. M panel/panel.py commit 69c9064465e0e7f0f1a52f73cdc4358dbeabfec8 Author: Huang Peng Date: 2008-08-07 09:22:51 +0800 Add IBUS_PREFIX env in start scripts. M daemon/ibus-daemon.in M gconf/ibus-gconf M gconf/ibus-gconf.in M setup/ibus-setup.in commit 5d1c2f9487462405ddb5a70cfc113c39e06a5da5 Author: Huang Peng Date: 2008-08-07 09:19:54 +0800 Add preferences item in sys menu, and implement handler function. M panel/ibus-panel.in M panel/panel.py commit 8895d15e6a26a37b31bc6e8451b6fe8351efdcc9 Author: Huang Peng Date: 2008-08-07 09:01:01 +0800 Edit ibus desktop items. M launcher/ibus.desktop.in M setup/ibus-setup.desktop.in commit afe55e0c6245ed0e17f1ed62b489fb94dff7543c Author: Huang Peng Date: 2008-08-07 07:25:10 +0800 Add sys menu for panel. M panel/panel.py commit f5ebcc85fdc233796fc181a63795045a7a8867d5 Author: Huang Peng Date: 2008-08-06 23:55:24 +0800 Kill: do reply before kill self. M daemon/bus.py commit beea0f5f37ed291184ef83d710e378ded8b3d8f9 Author: Huang Peng Date: 2008-08-06 23:53:53 +0800 Change Kill to async method. M ibus/interface/iibus.py commit afe9f55197bc506ba3ba4bee5198cc3914d751e7 Author: Huang Peng Date: 2008-08-06 23:52:47 +0800 Close ibus-xim when connection be closed. M x11/main.c commit e9e84025b433278c35ca151d6ab9fa16ae148183 Author: Huang Peng Date: 2008-08-06 23:45:47 +0800 Add connected & disconnected signal. M gtk2/ibusimclient.c M gtk2/ibusimclient.h commit a9db37d1fa7347475d0a85c18e62e65292c2379e Author: Huang Peng Date: 2008-08-06 23:22:09 +0800 Implement kill in ibus-daemon. M daemon/bus.py commit e580d117d8f8b20b081ed4dad1065fa8be7c5b5f Author: Huang Peng Date: 2008-08-06 23:18:52 +0800 Add kill method. M ibus/bus.py commit 7753b354edde682500595dbf8766751a97ce225d Author: Huang Peng Date: 2008-08-06 23:18:18 +0800 Rename IIBus.Destroy to IIBus.Kill. M ibus/interface/iibus.py commit 49f95590fbaf72045c76846d8de08e13b488ce90 Author: Huang Peng Date: 2008-08-06 23:16:54 +0800 Add Destroy method for IBus. M ibus/interface/iibus.py commit 910d645f07033860e9d52806b9667d915b93c2f6 Author: Huang Peng Date: 2008-08-06 23:13:35 +0800 Refine messages. M setup/main.py commit 9dcfd4267e36c30d85a815e72f0c950146f30d0a Author: Huang Peng Date: 2008-08-06 23:10:52 +0800 Add information dialog. M setup/main.py commit 1a8fcb322556d258ee3323d062ebd467dce9ff97 Author: Huang Peng Date: 2008-08-06 23:03:14 +0800 Add start ibus code. M setup/main.py M setup/setup.glade commit 91fe33f5bea02a6b6fa68c37e88cc8cfd55997cc Author: Huang Peng Date: 2008-08-06 22:34:27 +0800 Do not start ibus in xinitrc. M xinput-ibus commit bb9aab042d50a17f142120a0c00a7201f443924c Author: Huang Peng Date: 2008-08-06 22:32:04 +0800 Fix problem when start ibus with a window manager. M configure.ac M icons/Makefile.am M launcher/Makefile.am A launcher/ibus.desktop.in M launcher/ibus.in M panel/handle.py M panel/languagebar.py commit aa9ad606487ac6730837f95c2c7e215329ac649d Author: Huang Peng Date: 2008-08-06 21:58:22 +0800 Use gtk_main to replace g_main_loop. M x11/main.c commit 42d39a995de0cb14e566753fad273d38a3094c51 Author: Huang Peng Date: 2008-08-06 19:06:39 +0800 Change XIM. M xinput-ibus commit 26a9f1aa0cc1c74304bce2a3e35055e5933666b5 Author: Huang Peng Date: 2008-08-06 13:59:55 +0800 Scale icon size. M setup/main.py commit 2fad828d8e377597da641f71bd58108c0360d8e5 Author: Huang Peng Date: 2008-08-06 13:45:36 +0800 Support path as icon. M setup/main.py commit 80bad58466cf570fb53438eb3da853912df5ad82 Author: Huang Peng Date: 2008-08-06 13:02:43 +0800 Fix make dist error. M configure.ac commit 441b1524f9fbebaa2b01968289333a39de4faa89 Author: Huang Peng Date: 2008-08-06 13:02:30 +0800 Add pixmaps. M ibus.spec.in commit bc8142802793feabab406c39891bdfeaf3963d5c Author: Huang Peng Date: 2008-08-06 10:14:47 +0800 Edit README. M README commit 519697b564d2daeaf2d9c2a241cf64b3c66f26e0 Author: Huang Peng Date: 2008-08-06 10:13:07 +0800 Fix configure bug of check qt. M configure.ac M gconf/ibus-gconf commit 1c41efd75961c60a9da0a27991ff0333d29965c2 Author: Huang Peng Date: 2008-08-06 08:13:02 +0800 Show warning message in MessageDialog when can not connect to ibus-daemon. M setup/main.py commit 9a475c6a8d89a1ebe3ee5b6a01a19f1d4b4332c7 Author: Huang Peng Date: 2008-08-06 07:13:20 +0800 Exit when can not connect to ibus-daemon. M setup/main.py commit eef1e0fc612342fabae4ff8a815863e3b942569a Author: Huang Peng Date: 2008-08-06 06:55:34 +0800 Refine code of creating ibus address string. M gtk2/ibusimclient.c M qt4/ibus-client.cpp M qt4/ibus-client.h commit 1843f0adcf792b7eae7a11ac6787d8dfd51df72b Author: Huang Peng Date: 2008-08-05 20:47:10 +0800 Remove AC_SUBST(IBUS_BUILD_QT4) M configure.ac commit 17e95380ba43e90fc69eea24916226ff677de38a Author: Huang Peng Date: 2008-08-05 20:44:13 +0800 Add --disable-qt4-immodule to configure. M configure.ac M gconf/ibus-gconf M gtk2/Makefile.am M qt4/Makefile.am commit 19d25b587099e06c7294ae62add8b5081bae2522 Author: Huang Peng Date: 2008-08-05 19:07:03 +0800 Use checking QtDBus & QtCore to replace checking Qt. M configure.ac commit 4c9599380234ea684316ce368feff4227ce712b6 Author: Huang Peng Date: 2008-08-05 19:06:23 +0800 Check reply message. M qt4/ibus-client.cpp commit 79d89c498a426eca51dbb021c72c3a75aca9b0ef Author: Huang Peng Date: 2008-08-05 18:28:14 +0800 Set the icon for setup dialog. M setup/setup.glade commit 4ca407b92cc7c1b350b61accbc6924c8b8e79ce4 Author: Huang Peng Date: 2008-08-05 18:18:41 +0800 Add ibus-setup.svg. M icons/Makefile.am A icons/ibus-setup.svg commit 2c436563f43482bc4ce62eee45acd8b84f8a19bd Author: Huang Peng Date: 2008-08-05 15:05:11 +0800 Use {show,hide}_all. M panel/panel.py commit b856a258e4d5b9c3d3e7ccf1a0e08ef8dd7d92a6 Author: Huang Peng Date: 2008-08-05 13:51:39 +0800 catch exception throw from os.getlogin(). M ibus/common.py commit fff9bf7070374ffb83181fd1590154a4a8090f10 Author: Huang Peng Date: 2008-08-05 12:45:41 +0800 Get usernmae form getlogin, $LOGNAME, $USER, $LNAME and $USERNAME. M ibus/common.py commit 342e7786b0855a9ed8b8b07862761c0456cd952a Author: Huang Peng Date: 2008-08-04 21:15:51 +0800 focus_out the input context when input context is destroyed. M daemon/bus.py M setup/setup.glade commit 66d293363d06253f7d34040219e316dc3c5816d5 Author: Huang Peng Date: 2008-08-04 21:04:48 +0800 get username from getlogin(), $LOGNAME, $USER, $LNAME, $USERNAME. M gtk2/ibusimclient.c M qt4/ibus-client.cpp commit b5bd6f1aad49da1bd16b14c60bc2e037713e322a Author: Huang Peng Date: 2008-08-04 11:31:08 +0800 Refine the Makefile.am. M x11/Makefile.am commit bba038e56f54721cb7438c282697d54af5f4640e Author: Huang Peng Date: 2008-08-04 11:23:02 +0800 Add dependancies of ibus-x11. M x11/Makefile.am commit 6ef8d2e67ad4ee0086a0edf15a4d417ede9a3607 Author: Huang Peng Date: 2008-08-04 10:45:33 +0800 Fix ibus.spec problem. M ibus.spec.in M icons/Makefile.am commit 8d79e6f788d17cb77a77ba46d71b0e0b80b68ea8 Author: Huang Peng Date: 2008-08-04 10:44:29 +0800 Fix build problem. M gtk2/Makefile.am commit 3720675bc9a6c8790b0e64a0b330d9550f24d41c Author: Huang Peng Date: 2008-08-04 09:15:47 +0800 Use getlogin to get login user name. M gtk2/ibusimclient.c M qt4/ibus-client.cpp commit 5632447a202ef3a83e5b96d11cbbc653fafac99b Author: Huang Peng Date: 2008-08-04 09:07:09 +0800 Use os.getlogin to get login user name. M ibus/common.py commit 86a5955a6f2c3b36ede74c67332a6100d8e81593 Author: Huang Peng Date: 2008-08-03 20:06:48 +0800 Fix xim protocol bug. M x11/IMdkit/i18nIMProto.c commit b3bbfb23e37d4500df2b544ae5646abc400e1648 Author: Huang Peng Date: 2008-08-02 16:28:52 +0800 Fix build error. M gtk2/Makefile.am commit 65ebed064c3c5ed83b9d4cd3feee0273a7a0fe20 Author: Huang Peng Date: 2008-08-01 23:00:36 +0800 Fix bug when set an empty list. M gconf/config.py commit db891751d98c86b2ca8a996b4b8d2a9dafc840cd Author: Huang Peng Date: 2008-08-01 22:54:13 +0800 Add config_set_list method. M ibus/bus.py M setup/main.py commit a1ad647148a673f9e84f9d8ef2078eb3eb04e145 Author: Huang Peng Date: 2008-08-01 22:37:19 +0800 Fix bug when unset a config key. M gconf/config.py commit bc962489b97edc1a84c04728ccc3f43391c28542 Author: Huang Peng Date: 2008-08-01 22:08:02 +0800 FIx a typo. M setup/main.py commit c398123436beabd26f891df230261acfe6a250bf Author: Huang Peng Date: 2008-08-01 22:06:57 +0800 Refine coding style. M setup/main.py commit e4daf0310d30de9bb6d90e0d91f3117dcbc856b1 Author: Huang Peng Date: 2008-08-01 22:06:22 +0800 Change some const values' name. M setup/main.py commit 2e3000526080563a6988b1cb820f4d312eeb0f17 Author: Huang Peng Date: 2008-08-01 22:02:30 +0800 Save preload engines. M setup/main.py commit befb997c85c4dea40d05f90a90822fc3595d1269 Author: Huang Peng Date: 2008-08-01 19:05:04 +0800 Add preload column in setup dailog. M setup/main.py commit 3217d7d3b4dba90f47784729a4306ef6463a2edc Author: Huang Peng Date: 2008-07-31 20:14:11 +0800 Fix typos. M gconf/config.py commit 6f2354d049e7c39223700cd1d0e511e135f0ba77 Author: Huang Peng Date: 2008-07-31 20:12:06 +0800 Fix config bug. M daemon/bus.py M daemon/connection.py commit dda9227c7c81260395a8eeecce054bd211da2118 Author: Huang Peng Date: 2008-07-31 20:01:07 +0800 Rename get_conn to get_dbusconn. M ibus/bus.py M ibus/engine.py M ibus/factory.py M ibus/panel.py commit 74b3f65af54cd383f3d7a64afedb99ccf6a1453f Author: Huang Peng Date: 2008-07-31 16:12:01 +0800 Add Config{Add,Remove}Watch methods. M daemon/bus.py M daemon/panel.py M gconf/config.py M ibus/bus.py M ibus/interface/iibus.py commit 708442bf3056513db933fdf37dd8b0f475bca83e Author: Huang Peng Date: 2008-07-31 13:02:08 +0800 Rename IBus to Bus. M gconf/main.py M ibus/bus.py M ibus/engine.py M ibus/factory.py M ibus/panel.py M panel/main.py M panel/panel.py commit 67bb63aa51963b487037de820c32e3986832a309 Author: Huang Peng Date: 2008-07-31 12:09:04 +0800 Make ibus inherit from ibus.Object. M gconf/config.py M gconf/main.py M ibus/bus.py M ibus/engine.py M ibus/factory.py M ibus/panel.py M panel/main.py commit 211e3f2a79e99b105ea06280c14b8a5ca9380782 Author: Huang Peng Date: 2008-07-30 19:12:02 +0800 focus in the engine, after enable the engine. M daemon/inputcontext.py commit 23a468d8b07c995b3b29ed98d1999da7a8ac6554 Author: Huang Peng Date: 2008-07-30 17:26:22 +0800 Remove some debug print. M gconf/config.py commit ed955da75b4c52f735a4555d8366b0f7bb3fb2aa Author: Huang Peng Date: 2008-07-30 17:26:09 +0800 Rename preload_engines to general/preload_engines. M daemon/ibusdaemon.py commit 94e0692d566e21ce5a59ca94725b4c9d2f87800f Author: Huang Peng Date: 2008-07-30 17:12:04 +0800 Fix error when get_value from a unexist key. M gconf/config.py commit 3d02c0e3cc32030ec93177ee6a8c39ade3554c31 Author: Huang Peng Date: 2008-07-30 17:11:19 +0800 Rename auto_enable_engine to preload_engines. M daemon/ibusdaemon.py commit d2f199adc1a56b7d078ab8ca6eb1a013a305b892 Author: Huang Peng Date: 2008-07-30 17:05:26 +0800 Implement Server.connection_removed M daemon/ibusdaemon.py commit 4e2adddf79bbfcfc42720c0a52c6a6a741fb1ebe Author: Huang Peng Date: 2008-07-30 15:57:03 +0800 Test bool at first. M gconf/config.py commit 950a0a8bd7b088cd50f8c60434c562044778d6fc Author: Huang Peng Date: 2008-07-30 15:12:24 +0800 WIP. M daemon/ibusdaemon.py commit dfde1ca606366e3df40ad6cf3b258db44071ca0e Author: Huang Peng Date: 2008-07-30 15:11:27 +0800 WIP. M daemon/bus.py M daemon/ibusdaemon.py commit 9a7b369ee6b87e122ade4b6af06ed0ae8609756d Author: Huang Peng Date: 2008-07-30 15:06:58 +0800 Test unicode in to_gconf_value. M gconf/config.py commit 06a6c3a8bf671e013296a044b625a558fa6bfd09 Author: Huang Peng Date: 2008-07-30 15:04:17 +0800 Fix typos. M daemon/config.py M daemon/ibusdaemon.py commit cc7f9b0590321b9aa8fefd2f3d10b703da8e5d03 Author: Huang Peng Date: 2008-07-30 14:43:08 +0800 Fix problem if pass None as reply_handler or error_handler to config_set_value. M daemon/config.py commit 12afe7c562211c255cccf29091fe4ac3d7d7f0c5 Author: Huang Peng Date: 2008-07-30 13:16:44 +0800 Fix a typo. M gconf/config.py commit d77ada2151191b819d01cbb1a3736ba13c2ad3cb Author: Huang Peng Date: 2008-07-30 13:14:48 +0800 Fix a typo. M ibus/bus.py commit ee5a1a54e1cd29ee87587abf9fdd150d21d200ab Author: Huang Peng Date: 2008-07-30 13:10:59 +0800 Fix a typo. M daemon/bus.py commit 6c22fecaf26a1298dc57fa62394d455c704ec70a Author: Huang Peng Date: 2008-07-30 12:09:50 +0800 Add ConfigReload signal. M daemon/bus.py M ibus/interface/iibus.py commit 7eb2ceebfd6c7b9521996cf58cd6b7c1ce139aaa Author: Huang Peng Date: 2008-07-30 12:04:50 +0800 Refactory bus.py. M daemon/bus.py M daemon/ibusdaemon.py commit 13a4d66dbf0f29cff78c9633123b483041c527be Author: Huang Peng Date: 2008-07-30 12:04:33 +0800 Don't launch ibus-gconf. M launcher/ibus.in commit 1e09758b224ec0ff1b98f08429a52fe92d703105 Author: Huang Peng Date: 2008-07-30 11:37:27 +0800 Make gconf as DefaultConfig. M daemon/Makefile.am M daemon/bus.py M daemon/config.py M gconf/config.py commit 1cc99dd2714e92d93a0fde0042d108f0b432b33a Author: Huang Peng Date: 2008-07-30 11:07:13 +0800 Fix problem in config.Destroy. M gconf/config.py commit 57881cd0347f38cd6923cf5c96450c7e3bbd87fe Author: Huang Peng Date: 2008-07-30 11:01:50 +0800 Add defaultconfig.py A daemon/defaultconfig.py commit c6c4a2151e3418d2f448138ad9e06d54dfc9bb02 Author: Huang Peng Date: 2008-07-30 10:37:25 +0800 Remove {get,set}{string,int,bool} M gconf/config.py M ibus/bus.py M ibus/interface/iconfig.py M ibus/interface/iibus.py commit 11b9b08a25f3a6e16173e813315cdd68c36c1cb7 Author: Huang Peng Date: 2008-07-30 10:27:49 +0800 Remove {get,set}_{string,bool,int} methods. M daemon/bus.py M daemon/config.py commit 89e9effbf085a19581e2aaf8a4d2da6bbf2187ef Author: Huang Peng Date: 2008-07-30 09:24:19 +0800 Add {Get,Set}value interfaces. M ibus/bus.py commit 655f07ae5274ccbc4894651a2557f2ae06274bc6 Author: Huang Peng Date: 2008-07-30 09:22:01 +0800 Refine coding style. M ibus/interface/iibus.py commit 070435e6d826b87dbcf8c7f6b3833a03f21ea575 Author: Huang Peng Date: 2008-07-30 09:21:17 +0800 Add {Get,Set}Value methods. M daemon/bus.py M daemon/config.py commit e7f1fdccdd9a7df42eb2edc15efb1c1b2508cc3e Author: Huang Peng Date: 2008-07-30 09:13:34 +0800 Refine coding style. M ibus/interface/iconfig.py commit cc152299d39d52727dcb2977c1438876e9ec6b45 Author: Huang Peng Date: 2008-07-30 09:12:16 +0800 Add {Get, Set}Value. M ibus/interface/iconfig.py commit 5bc357fad0c96e3d8d6356525230b3e869746efa Author: Huang Peng Date: 2008-07-29 20:56:41 +0800 WIP. M setup/main.py M setup/setup.glade commit 616216fefd6e208141e95564698e3716b275ca05 Author: Huang Peng Date: 2008-07-29 19:23:27 +0800 Raise Exception when receive unsupport type. M gconf/config.py commit 03758f5cab74f7e1bba3383c48eb30616aa555da Author: Huang Peng Date: 2008-07-29 19:19:31 +0800 Support all type value of gconf. M gconf/config.py commit 13968a0afff59950f288fb45c453bb80a70720d1 Author: Huang Peng Date: 2008-07-29 12:50:17 +0800 Make Config supports async and sync call M daemon/config.py commit f9efa76f89029b43fc8f2498a4fb69679d9bfc4f Author: Huang Peng Date: 2008-07-28 14:59:17 +0800 Add Destroy for config. M gconf/config.py M gconf/main.py M ibus/interface/iconfig.py commit 0514cc8f4599954fa2ef0cd88e8cf6737ca9ea56 Author: Huang Peng Date: 2008-07-28 14:53:46 +0800 Remove gtk. M gconf/main.py commit e5e9f635f396f243d59afd153b131fbf6e7a69dc Author: Huang Peng Date: 2008-07-28 14:29:05 +0800 Use IBus replace Connection. M panel/main.py M panel/panel.py commit 7ee9eed921aed351408c480cab42aea50dee1aa2 Author: Huang Peng Date: 2008-07-28 14:28:16 +0800 Use IBus replace Connection. M ibus/bus.py M ibus/engine.py M ibus/factory.py commit 26a689fab7847801790ec9cfe621f237f75c0f3c Author: Huang Peng Date: 2008-07-28 14:02:39 +0800 Wrap methods of ibus. M ibus/bus.py commit 3663f94338e1fe1a4daf55a6bffbc9e427c42463 Author: Huang Peng Date: 2008-07-28 13:44:09 +0800 Rename connection to bus M ibus/Makefile.am M ibus/__init__.py R100 ibus/connection.py ibus/bus.py commit be431e9dbd8846d9620eb12e540eb1d772768337 Author: Huang Peng Date: 2008-07-28 13:37:08 +0800 Fix a typo. M daemon/bus.py commit 400cf58d6af004333172c8a9699438f1c7201b5f Author: Huang Peng Date: 2008-07-28 11:45:16 +0800 Add header. M gconf/config.py commit 4ae2941be4132110f30473c938ef04a25b4adaf1 Author: Huang Peng Date: 2008-07-28 11:44:09 +0800 Refine coding style. Refine structure. M gconf/config.py M gconf/main.py commit f2c7968945fc7adcef23cafc1916f37766fc8b09 Author: Huang Peng Date: 2008-07-28 11:38:15 +0800 Change config path. M gconf/main.py commit 9ff51991372df5700b8d4e706cd33a3e92c3b0d5 Author: Huang Peng Date: 2008-07-28 11:37:17 +0800 Refine coding style. M gconf/main.py commit 0dc44f16c8cc65e9beaec20230e0bcbec5758bb8 Author: Huang Peng Date: 2008-07-28 11:36:07 +0800 Remove dbus related code. M gconf/main.py commit 854ebc3e032ca21e3fd55d5398949a478116fcde Author: Huang Peng Date: 2008-07-28 11:32:11 +0800 Remove dbus related code. M panel/main.py commit ec621c984200ebbd157e3a6cd9e910138a3cf669 Author: Huang Peng Date: 2008-07-28 11:31:51 +0800 Set dbus mainloop. M ibus/connection.py commit ebcd8084a5328de997bf98e06c600283d374339b Author: Huang Peng Date: 2008-07-25 16:57:35 +0800 Add register method for EngineFactoryBase class. M ibus/factory.py commit a7d461484d8876c04db27a7b6469b35d37ce6f50 Author: Huang Peng Date: 2008-07-25 15:02:01 +0800 Refine coding style. M daemon/config.py M daemon/connection.py M daemon/engine.py M daemon/factorymanager.py M daemon/ibusdaemon.py M daemon/panel.py M daemon/register.py commit 2cc8ae3671a46a2f7b58ed16e09ccb1d92c560ea Author: Huang Peng Date: 2008-07-25 14:51:33 +0800 Refine coding style. M daemon/bus.py M daemon/inputcontext.py commit d2ad570e65e6178e4d9ff75f2a8522ff36c9ef99 Author: Huang Peng Date: 2008-07-25 14:50:03 +0800 Fix a typo. M ibus/engine.py commit ebeca2a8f74e78c55cad36dd0ac820abb0202b42 Author: Huang Peng Date: 2008-07-24 13:44:31 +0800 Support filename as icon for menu. M panel/menu.py M panel/panel.py commit 9b009e1a08bc76274f47ce4d64d0c186b63061d9 Author: Huang Peng Date: 2008-07-24 13:34:10 +0800 Support file as icon for StatusIcon. M panel/panel.py commit 975ea39af250fee96d8dbe2991ecaef094484ab7 Author: Huang Peng Date: 2008-07-23 16:43:06 +0800 Remove preedit related functions. M x11/main.c commit 8aeddd1ae12262fcb3be4e41dd2c763890844970 Author: Huang Peng Date: 2008-07-23 16:36:31 +0800 Refine coding style. M x11/main.c commit 7fdd7ed8c2e38070603da034cd9019aad1e01faa Author: Huang Peng Date: 2008-07-23 16:08:42 +0800 Start ibus-x11 in ibus script. M launcher/ibus.in commit 35db4e965c5f795ef7dea405a07ed4e0f77f53cf Author: Huang Peng Date: 2008-07-23 16:08:19 +0800 Remove some output. M x11/main.c commit 8cf5d261c1f545ca84ea2f1118510a05e02172b1 Author: Huang Peng Date: 2008-07-23 15:12:48 +0800 Support set_use_preedit M daemon/bus.py M daemon/inputcontext.py M gtk2/ibusimclient.c M gtk2/ibusimclient.h M gtk2/ibusimcontext.c M ibus/interface/iibus.py commit 4004fd1f9d97d5bef6fa3d8650d1873ad28242b0 Author: Huang Peng Date: 2008-07-23 14:57:23 +0800 Add preedit code. M daemon/inputcontext.py M ibus/panel.py M x11/main.c commit 4aff5583f058796a8bc233e6d391a82f2a0dbfe0 Author: Huang Peng Date: 2008-07-23 14:54:52 +0800 Fix typo. M panel/panel.py commit 450003e4be40a802c95adeb7d616d577664c74bf Author: Huang Peng Date: 2008-07-23 14:25:56 +0800 Forward key event. M x11/Makefile.am M x11/main.c commit 2751028842c63c346d87b608b14ce99f5f7ac266 Author: Huang Peng Date: 2008-07-23 14:14:39 +0800 Remove python xim sources. D x11/IMdkit.i D x11/test.py commit cb388f451b8d4f9bd9e4133e73c0c98aed325692 Author: Huang Peng Date: 2008-07-23 14:13:37 +0800 Implement ibus xim agent. M Makefile.am M configure.ac M daemon/Makefile.am M x11/Makefile.am A x11/gdk-private.c A x11/gdk-private.h A x11/main.c commit 90f1e606a70588a425bc7ff9ec6169aae847b6ec Author: Huang Peng Date: 2008-07-23 14:12:55 +0800 Modify type_register functions. M gtk2/ibusimclient.c M gtk2/ibusimcontext.c commit 34dda8e8dba47ca0fdff0ff0504893d8abefbc6e Author: Huang Peng Date: 2008-07-23 13:42:05 +0800 Build libibus-gtk.la. M gtk2/Makefile.am commit 380c5cd1ee10431de9b4ff8b572d25776cb0a176 Author: Huang Peng Date: 2008-07-23 09:25:55 +0800 Set default icon. M panel/toolitem.py commit 5f23560b18b7c1a28949dec7f56ef165bbd17552 Author: Huang Peng Date: 2008-07-22 23:15:01 +0800 Rename image.py to icon.py. Use set_icon_widget to replace set_icon_name. M panel/Makefile.am R052 panel/image.py panel/icon.py M panel/toolitem.py commit e0eca135a0e541e2097075c548fadf01d4fbd8c0 Author: Huang Peng Date: 2008-07-22 12:51:04 +0800 Add ATTR_UNDERLINE_*. M ibus/attribute.py commit c97e02d2acf1297072b3bc33ab25d23eae205803 Author: Huang Peng Date: 2008-07-22 11:54:38 +0800 Remove useless import. M panel/languagebar.py commit 8c410eb52de12e9ea4dd9e9e934fff726b6d2fd3 Author: Huang Peng Date: 2008-07-22 11:54:16 +0800 Refine coding style. M panel/toolitem.py commit ce961a7daa53442c2e2f2adf5956c2a45362a6c4 Author: Huang Peng Date: 2008-07-22 10:23:40 +0800 Init cursor area. M gtk2/ibusimcontext.c commit de91ed4103c78fa19998ddcab27619fb2e33de97 Author: Huang Peng Date: 2008-07-22 09:53:08 +0800 Remove &. M gtk2/ibusimclient.c M gtk2/ibusimcontext.c M panel/Makefile.am commit 6173092852804f560b839c508fe811bf9f2938e2 Author: Huang Peng Date: 2008-07-21 09:30:32 +0800 Set cursro_location when focus_in. M gtk2/ibusimcontext.c commit 15ab82f103d051a853adafb0a0cfe49ab663e527 Author: Huang Peng Date: 2008-07-21 09:26:06 +0800 Keep candidate window in screen. M panel/candidatepanel.py M panel/panel.py commit 804a3b32cb2df4a3f2aa0a0357cb29b98e09fa63 Author: Huang Peng Date: 2008-07-20 12:55:10 +0800 WIP. M qt4/ibus-client.cpp M qt4/ibus-client.h M qt4/ibus-input-context.cpp M qt4/ibus-input-context.h commit 780d259ef70abc42395cd796315344fa535979c2 Author: Huang Peng Date: 2008-07-20 12:42:57 +0800 WIP. M daemon/inputcontext.py M gtk2/ibusimclient.c M gtk2/ibusimcontext.c M gtk2/ibusimcontext.h commit 991e01f1500ef0b4c5cd4cb38144bbb51b8478d7 Author: Huang Peng Date: 2008-07-20 12:42:28 +0800 WIP. M panel/candidatepanel.py M panel/panel.py commit 67f88397717ee114b0ebe751aa140b442b9fd859 Author: Huang Peng Date: 2008-07-20 12:04:59 +0800 WIP. M daemon/inputcontext.py M ibus/panel.py M panel/candidatepanel.py M panel/panel.py commit fb84b51ed59f87393788f9d900e4a6c160f06379 Author: Huang Peng Date: 2008-07-20 11:44:38 +0800 WIP. M daemon/bus.py M daemon/inputcontext.py commit e06cde77fd4fc60073405e9e752261a92518b18e Author: Huang Peng Date: 2008-07-20 11:24:26 +0800 Fix typos. M ibus/engine.py M ibus/interface/iengine.py commit 2b3142d0a30d3324c2de29dd0ba8d09cca1c1b57 Author: Huang Peng Date: 2008-07-20 11:21:51 +0800 Add interfaces. M daemon/bus.py M daemon/engine.py M daemon/panel.py commit 492c222924bac40f218015d07bcad037f6168341 Author: Huang Peng Date: 2008-07-20 11:02:29 +0800 Add some interface. M ibus/engine.py M ibus/interface/iengine.py M ibus/interface/ipanel.py M ibus/panel.py commit 3aafb8f024f73d32284304948d548964d6021082 Author: Huang Peng Date: 2008-07-20 10:34:29 +0800 Remove PanelProxy class. M panel/panel.py commit 77b410766411ebbc98566462f63efc6cddde6681 Author: Huang Peng Date: 2008-07-20 10:33:18 +0800 Add PanelBase class. M ibus/__init__.py M ibus/panel.py M panel/candidatepanel.py M panel/panel.py commit 77429921c052a624cf092652ed7233a4873a182e Author: Huang Peng Date: 2008-07-20 10:27:39 +0800 Refine coding style. M ibus/interface/ipanel.py commit e3e2d7de9cfccf74f9dd4fe212e9969f9a97a49f Author: Huang Peng Date: 2008-07-20 09:29:19 +0800 Refine coding style. M panel/main.py M panel/panel.py commit a5c552594fec65a234e8da5ea2bfbcf8fd9e1819 Author: Huang Peng Date: 2008-07-20 09:23:15 +0800 Refine coding style. M panel/handle.py commit da338c8ebf41ceecd21dcc7e96aa68868ecc422c Author: Huang Peng Date: 2008-07-20 09:21:06 +0800 Refine coding style M panel/image.py commit 316b2feb16705b6c24ffd706713b8e4777efa219 Author: Huang Peng Date: 2008-07-20 09:20:09 +0800 Refine coding style. M panel/languagebar.py commit 547ac28e3b9cf3a34126a626814faf18d86cd507 Author: Huang Peng Date: 2008-07-20 09:16:59 +0800 Change backgroud color of focus candidates. Refine coding style. M panel/candidatepanel.py commit fa835c5f3c1b4a7674d62a5eea7f2c86ff8b619e Author: Huang Peng Date: 2008-07-18 16:25:30 +0800 Refine coding style. M ibus/lookuptable.py commit ffc1b7f91f265d52efa4b4bd971075cde4350459 Author: Huang Peng Date: 2008-07-18 11:18:37 +0800 Accept None Attrs. M ibus/engine.py commit 06a117ae199284429820fa49d1a9fd7a3e3bf42f Author: Huang Peng Date: 2008-07-18 10:01:11 +0800 Fix typos. M daemon/inputcontext.py M ibus/engine.py commit 1ba0a79b174a66da5da594f672078fd063cbf676 Author: Huang Peng Date: 2008-07-18 09:55:21 +0800 Fix a typo. M ibus/engine.py commit 5280df255b7ecbd22a2c3b89bc172e2125272ce8 Author: Huang Peng Date: 2008-07-18 09:53:25 +0800 Fix some errors. M ibus/engine.py M ibus/factory.py M ibus/object.py commit 729551728c88a7d403b1fbe8b759e1f03d1a1ac5 Author: Huang Peng Date: 2008-07-18 09:23:43 +0800 Replase SetEnable with Enable & Disable. M daemon/engine.py commit 2a15c5efb3d63fc52f5976f3228e4a91aa66b352 Author: Huang Peng Date: 2008-07-18 09:22:26 +0800 Remove type_register for EngineBase and EngineFactoryBase. M ibus/engine.py M ibus/factory.py commit ab2954ae676dffec3428f4b7e915472e9ee39d00 Author: Huang Peng Date: 2008-07-18 09:20:55 +0800 Add EngineFactory class. M ibus/Makefile.am M ibus/__init__.py A ibus/factory.py commit ace0f62168e5a53ea08ed35ed6d89597155c3ff9 Author: Huang Peng Date: 2008-07-18 09:05:16 +0800 Add EngineBase class. M ibus/Makefile.am A ibus/engine.py M ibus/interface/iengine.py commit 375101f77e4e6b4bb614440b429c078de8b975e9 Author: Huang Peng Date: 2008-07-18 07:15:00 +0800 Fix a typo. M ibus/utility.py commit a06d9be885258697cf578e6b1d85cdb13f8eac45 Author: Huang Peng Date: 2008-07-17 07:54:25 +0800 Add utility.py. M ibus/Makefile.am M ibus/__init__.py A ibus/utility.py commit d2b2c06d75ba08b4705e5973586fde0b3d64beb5 Author: Huang Peng Date: 2008-07-17 07:48:02 +0800 Add ascii.py. M ibus/Makefile.am A ibus/ascii.py commit 159194306ed250f54b4c5b189def3908acbbf8c1 Author: Huang Peng Date: 2008-07-16 18:36:24 +0800 do not output message without ibus. M gtk2/ibusimclient.c commit 4f671c27e7710ebdf57bd0000c28c1f7419eaa95 Author: Huang Peng Date: 2008-07-16 18:28:55 +0800 clean code. M gtk2/ibusim.c M gtk2/ibusimclient.c commit 3ab14d2ab01cecb552a87d8f700eada58feb61ac Author: Huang Peng Date: 2008-07-16 17:01:05 +0800 Fix error when restart ibus. M gtk2/ibusimclient.c M gtk2/ibusimcontext.c commit a1f880ae4c346d154a7777462db8208556c60309 Author: Huang Peng Date: 2008-07-16 16:53:51 +0800 Separate ic. M gtk2/ibusim.c M gtk2/ibusimclient.c M gtk2/ibusimclient.h M gtk2/ibusimcontext.c M gtk2/ibusimcontext.h commit 193650d3868a927884f6573fee07d39d859e528c Author: Huang Peng Date: 2008-07-16 08:12:52 +0800 Adjust methods for new dbus-python API. M daemon/bus.py M daemon/ibusdaemon.py commit 60d6bf1163b0745af65dc9e33901fe0b6ce3159c Author: Huang Peng Date: 2008-07-15 16:57:18 +0800 Replace tab with spaces in python source code. M daemon/bus.py M daemon/config.py M daemon/connection.py M daemon/contextmanager.py M daemon/engine.py M daemon/enginefactory.py M daemon/factorymanager.py M daemon/ibusdaemon.py M daemon/inputcontext.py M daemon/lookuptable.py M daemon/panel.py M daemon/register.py M gconf/config.py M gconf/main.py M ibus/__init__.py M ibus/application.py M ibus/attribute.py M ibus/common.py M ibus/connection.py M ibus/exception.py M ibus/gtk.py M ibus/interface/__init__.py M ibus/interface/iconfig.py M ibus/interface/iengine.py M ibus/interface/ienginefactory.py M ibus/interface/iibus.py M ibus/interface/ipanel.py M ibus/keysyms.py M ibus/lang.py M ibus/lookuptable.py M ibus/modifier.py M ibus/object.py M ibus/panel.py M ibus/property.py M panel/candidatepanel.py M panel/handle.py M panel/image.py M panel/languagebar.py M panel/main.py M panel/menu.py M panel/panel.py M panel/propitem.py M panel/toolitem.py M setup/main.py M x11/test.py commit 7155f30d2e075bbb8c23b17e3926da6301babaa0 Author: Huang Peng Date: 2008-07-15 16:37:07 +0800 Refine coding style. M setup/main.py commit b92c71a7d004766256333870525a00faea87b722 Author: Huang Peng Date: 2008-07-15 16:35:28 +0800 Extend tab to spaces. M setup/main.py commit 29e1458ef0f5b35b6ea6a37989972b4011427046 Author: Huang Peng Date: 2008-07-15 15:31:12 +0800 Add ibus-setup.desktop.in. M configure.ac M icons/Makefile.am A icons/ibus.svg M setup/Makefile.am A setup/ibus-setup.desktop.in commit c512bc6f2841fc66b4dfec7c09cf837c2e240a9d Author: Huang Peng Date: 2008-07-15 14:10:11 +0800 Refine coding style. M launcher/ibus.in commit 615ff80fb8d863c489c73147b02dd2bcc07864a0 Author: Huang Peng Date: 2008-07-15 13:22:54 +0800 focus in engine, when create a new engine for a input context. M daemon/bus.py commit 28113e00a1dc26b29b2c09a2d70c03e22d99bcc6 Author: Huang Peng Date: 2008-07-15 13:04:52 +0800 Fix typo. M ibus/connection.py M ibus/property.py commit 1f755d9d31b145fe93e793e8cf7a269e4cdb71e5 Author: Huang Peng Date: 2008-07-15 13:03:21 +0800 Refine coding style of perperty.py M ibus/property.py commit 1ee87eeb90d1e81a9dfe89c25d98cde5a8cba462 Author: Huang Peng Date: 2008-07-15 13:00:53 +0800 Refine coding style of panel.py M ibus/panel.py commit 1fafc43ab9ee1166a3561e9d0f908fe5613b5f5f Author: Huang Peng Date: 2008-07-15 13:00:33 +0800 Refine coding style of object.py M ibus/object.py commit 627ea998108bd446009e2d61567fbc701c61bc0b Author: Huang Peng Date: 2008-07-15 12:59:48 +0800 Refine coding style of modifier.py M ibus/modifier.py commit ba194c2de0e98e1d1a2da82c8f4d79a68f51bf6b Author: Huang Peng Date: 2008-07-15 12:58:30 +0800 Refine coding style of lookuptable.py M ibus/lookuptable.py commit f8f7b4e9e16c2466cd35b0943bf2a78ff3473a0e Author: Huang Peng Date: 2008-07-15 12:56:05 +0800 Refine coding style of lang.py M ibus/lang.py commit 168fe67515c172bbe67e42d69701c283b0c4b74e Author: Huang Peng Date: 2008-07-15 12:55:27 +0800 Refine coding style of exception.py M ibus/exception.py commit e4d9614ee21f946f16c90d017da865f1817a389b Author: Huang Peng Date: 2008-07-15 12:54:39 +0800 Refine coding style of gtk.py M ibus/gtk.py commit 3acfcd1e1aa5129e4c8981269edced2eeaafbb02 Author: Huang Peng Date: 2008-07-15 11:50:45 +0800 Refine coding style of common.py M ibus/common.py commit 35b29c814444526280f9a301c1310546c9e72217 Author: Huang Peng Date: 2008-07-15 11:50:21 +0800 Refine coding style of connection.py M ibus/connection.py commit 22d750f4b1f99e1fa291b7b113702e2467c47e41 Author: Huang Peng Date: 2008-07-15 11:46:51 +0800 Create DBus object for new connection. M daemon/ibusdaemon.py commit 79ed2426c242a5d1d5d15fde43b5d5ad262db1d6 Author: Huang Peng Date: 2008-07-15 11:41:01 +0800 Refine coding style of register.py M daemon/register.py commit 3f12e83421859aeb408810758d873d8577956b5d Author: Huang Peng Date: 2008-07-15 11:38:40 +0800 Refine coding style of panel.py M daemon/panel.py commit def0b9a207053c5f206797a6b04d55b44c18ab54 Author: Huang Peng Date: 2008-07-15 11:37:13 +0800 Refine coding style of lookuptable.py M daemon/lookuptable.py commit 86834bb4e912c2021de561412d0077bcb5ee7239 Author: Huang Peng Date: 2008-07-15 11:36:07 +0800 Refine coding style of inputcontext.py M daemon/inputcontext.py commit 7bf8b4112a5d180d30dcb998012ea58b48392be2 Author: Huang Peng Date: 2008-07-15 11:34:11 +0800 Refine coding style of ibusdaemon.py M daemon/factorymanager.py M daemon/ibusdaemon.py commit 45da4ba549e312680838bf67e27eb79ff6f09a08 Author: Huang Peng Date: 2008-07-15 11:30:50 +0800 Refine coding style of factorymanager.py M daemon/factorymanager.py commit fd7ac7a6d95cb3e26c2ffac653c40c75bc02814d Author: Huang Peng Date: 2008-07-15 11:29:49 +0800 Refine coding style of engine.py M daemon/engine.py commit f92cd418e57c2a75936acdb11eaa9d26b3037c56 Author: Huang Peng Date: 2008-07-15 11:27:53 +0800 Refine coding style of enginefactory.py M daemon/enginefactory.py commit 0379f83eab1863249f0633383376ec2a8cdbedd6 Author: Huang Peng Date: 2008-07-15 11:19:15 +0800 Refine coding style of contextmanager.py M daemon/contextmanager.py commit a40b567469921f109fd2a0628e212fb82e4bc4a2 Author: Huang Peng Date: 2008-07-15 11:17:59 +0800 Refine coding style of connection.py M daemon/connection.py commit 16e68adb9dfd8f67f80fa3e8f0e94742741a1b77 Author: Huang Peng Date: 2008-07-15 11:14:56 +0800 Refine coding stype of config.py M daemon/config.py commit 007ad5cf9f3680259c9d3c9c4198f0836469c565 Author: Huang Peng Date: 2008-07-15 11:12:20 +0800 Remve unused module weakref. M daemon/bus.py commit b1461aa128c60284c39d4c413308c6c4bc93d85c Author: Huang Peng Date: 2008-07-15 11:11:07 +0800 Refine coding style. M daemon/bus.py commit d614cd6153fcb9905efe0aad5c1d6909a2167a81 Author: Huang Peng Date: 2008-07-15 11:01:36 +0800 Port ibus to new dbus server api. M daemon/bus.py M daemon/connection.py M daemon/ibusdaemon.py commit 70bde6191d3485c544fba8619921c85ae1d4791f Author: Huang Peng Date: 2008-07-15 10:23:41 +0800 Add Makefile.am A setup/Makefile.am commit 63275489401fc52aab444967a52ed8134ca9cea7 Author: Huang Peng Date: 2008-07-10 18:31:04 +0800 Enable engine when set a new factory. M daemon/bus.py commit ea489e313260d8c66075c8dcb5a73450d58aa682 Author: Huang Peng Date: 2008-07-10 18:10:28 +0800 Fix a problem in UpdateProperty M daemon/config.py M panel/menu.py M panel/toolitem.py commit e5d5a690e8c846ce8f6ff3bd110b9cb210cf8881 Author: Huang Peng Date: 2008-07-10 17:45:11 +0800 use spaw replace fork. M launcher/ibus.in commit 643ea31cccee823c7e9e1021fca142b3825f9d8f Author: Huang Peng Date: 2008-07-10 17:26:13 +0800 Adjust UI. M setup/main.py commit 8a87df7500767f3e6a01b0b00b402a6de228411c Author: Huang Peng Date: 2008-07-10 17:26:00 +0800 Handle SIGCHLD. M daemon/register.py commit 21abc04361b5f420ac1ca4d76f9c7a8511cc845a Author: Huang Peng Date: 2008-07-10 16:59:31 +0800 WIP. M setup/main.py M setup/setup.glade commit 22087645ee691c82b7fa1e9750efcf02a0624076 Author: Huang Peng Date: 2008-07-10 15:34:03 +0800 WIP. setup ui M Makefile.am M configure.ac M daemon/Makefile.am M daemon/bus.py M daemon/register.py M ibus.spec.in M ibus/Makefile.am M ibus/__init__.py M ibus/connection.py M ibus/interface/iibus.py R099 panel/lang.py ibus/lang.py M panel/Makefile.am M panel/main.py M panel/panel.py A setup/.gitignore A setup/ibus-setup.in A setup/main.py A setup/setup.glade commit 10596931b2900101b3b81743f3af204b9765a1b6 Author: Huang Peng Date: 2008-07-10 12:13:44 +0800 Add connection.py M ibus/Makefile.am M ibus/__init__.py A ibus/connection.py commit 6418dec86abb9b2213bb30accd9c2045cd07bc79 Author: Huang Peng Date: 2008-07-09 22:44:22 +0800 Add register.py. A daemon/register.py commit ba66910dd4308e49c9fc75d14326fc0f1da9309f Author: Huang Peng Date: 2008-07-08 18:08:13 +0800 Add some BuildRequires in ibus.spec.in M ibus.spec.in commit 2b00952f26f2915cc2ff07d0140d51c492a6fda2 Author: Huang Peng Date: 2008-07-08 17:24:31 +0800 Add ibus launcher program. M Makefile.am M configure.ac M ibus.spec.in A launcher/Makefile.am A launcher/ibus.in M xinput-ibus commit 5175a113e99a86085d754ebc44e68bb8167d0df9 Author: Huang Peng Date: 2008-07-08 09:58:23 +0800 Make labels as same size in candidates window. M panel/candidatepanel.py commit cd34aa1c1667d4c41cd9af280d168b9abe00e64a Author: Huang Peng Date: 2008-07-08 08:30:12 +0800 Add gconf in ibus.sepc.in. M ibus.spec.in commit aed67f949bc3e3501c5b78d0027dbc7fa51def51 Author: Huang Peng Date: 2008-07-08 08:25:55 +0800 Add config.py. A daemon/config.py commit 98f48d016bac316bf219114595d99954d2da4a6f Author: Huang Peng Date: 2008-07-07 08:06:36 +0800 Remove useless python source files in Makefile.am. M gconf/Makefile.am commit 8a51627f9d3c9449b989c2b9352edb08a57ee7f4 Author: Huang Peng Date: 2008-07-06 20:53:28 +0800 Fix a typo. M gconf/main.py commit cfffe17c7d23944ca3c788cb4c65fd354cc6d201 Author: Huang Peng Date: 2008-07-05 18:24:12 +0800 WIP. config. M gconf/main.py commit ad49e0ef819d4a7ccc71e5a831230319be4dae4a Author: Huang Peng Date: 2008-07-05 18:23:54 +0800 WIP. config. M daemon/bus.py M daemon/connection.py commit c15cf8786dfdd7789897e2294bf345bc33833e34 Author: Huang Peng Date: 2008-07-05 10:02:01 +0800 Include config.py in Makefile.am M daemon/Makefile.am commit f4348f4d6fffb101f5176174698aa0dd1617eebc Author: Huang Peng Date: 2008-07-05 09:18:11 +0800 WIP. config. M Makefile.am M configure.ac M ibus/interface/__init__.py M ibus/interface/iconfig.py M ibus/interface/iibus.py commit 2266e16f4fed8dde3b8c0414731937eefc631ef8 Author: Huang Peng Date: 2008-07-05 09:17:58 +0800 Add gconf module. A gconf/Makefile.am A gconf/config.py A gconf/ibus-gconf A gconf/ibus-gconf.in A gconf/main.py commit 7cc23bb2ce8ca9b4c8c4f39c135ae774c33e6425 Author: Huang Peng Date: 2008-07-04 21:46:15 +0800 WIP. add config. M daemon/bus.py commit 95ead02b889d151b21edfe91492168bb820005de Author: Huang Peng Date: 2008-07-04 11:09:07 +0800 Add exec in shell script. M daemon/ibus-daemon.in M panel/ibus-panel.in commit 1dbd39908d7467e1c11129fa1cd9640a0d8056a0 Author: Huang Peng Date: 2008-07-04 11:08:52 +0800 Disable x11. M Makefile.am M configure.ac commit c736942c60ae64f5837df7d5f71a572a2b895cef Author: Huang Peng Date: 2008-07-04 11:08:27 +0800 Fix issue if display is not end with .x M ibus/common.py commit ab8751691075f72608767392826840c54b50c514 Author: Huang Peng Date: 2008-07-04 10:17:33 +0800 WIP x11. M Makefile.am M configure.ac A x11/IMdkit.i A x11/Makefile.am A x11/test.py commit 0d21f10b5c33a499071c2b61bc8e80800f4ad4b5 Author: Huang Peng Date: 2008-07-03 19:12:19 +0800 Import IMdkit. A x11/IMdkit/FrameMgr.c A x11/IMdkit/FrameMgr.h A x11/IMdkit/IMConn.c A x11/IMdkit/IMMethod.c A x11/IMdkit/IMValues.c A x11/IMdkit/IMdkit.h A x11/IMdkit/Makefile.am A x11/IMdkit/Xi18n.h A x11/IMdkit/Xi18nX.h A x11/IMdkit/XimFunc.h A x11/IMdkit/XimProto.h A x11/IMdkit/Xtrans.h A x11/IMdkit/i18nAttr.c A x11/IMdkit/i18nClbk.c A x11/IMdkit/i18nIMProto.c A x11/IMdkit/i18nIc.c A x11/IMdkit/i18nMethod.c A x11/IMdkit/i18nPtHdr.c A x11/IMdkit/i18nUtil.c A x11/IMdkit/i18nX.c commit 5555f96654ea8bf71d09f4e5a32e7b4772c5b400 Author: Huang Peng Date: 2008-07-03 18:44:22 +0800 Remove noreplace mask. M ibus.spec.in commit 65a9ccd12e5b3cd903f248c36b1a685802163910 Author: Huang Peng Date: 2008-07-03 18:33:24 +0800 Add xinput-ibus. M ibus.spec.in A xinput-ibus commit 8a151897a5b36bc9e133e49416865951c6e6df43 Author: Huang Peng Date: 2008-07-02 22:41:09 +0800 Fix an issue. M panel/panel.py commit 1d27b805d226ab2a806f748519039a1a46093bdb Author: Huang Peng Date: 2008-07-02 19:29:17 +0800 Add N_ around lang name. M panel/lang.py commit 3440d89e8cea73838b75b08e0d78a83e5556ecb4 Author: Huang Peng Date: 2008-07-02 19:27:39 +0800 Group input methods and translate lang to readable text. M panel/lang.py M panel/panel.py commit 6e1dba85c39034562529142e333c8236ac229519 Author: Huang Peng Date: 2008-07-02 18:12:13 +0800 Add Destroy method of IEngineFactory interface. M ibus/interface/ienginefactory.py commit bbb8dff42d4e22809c7a2eeb15dff1e016b4a602 Author: Huang Peng Date: 2008-07-01 23:28:55 +0800 Fix problem when page size == 10. M panel/candidatepanel.py commit e8339cbb37356712dacc60310e335b29560675aa Author: Huang Peng Date: 2008-07-01 23:28:35 +0800 Add __len__ method for LookupTable. M ibus/lookuptable.py commit b94fe41ae0e8210b4e99170353f0fae90a3995d2 Author: Huang Peng Date: 2008-07-01 23:14:30 +0800 Fix language bar size issue. M panel/languagebar.py commit 1863cf894c96a917840876449e5c852609f27691 Author: Huang Peng Date: 2008-07-01 20:16:40 +0800 Set Toolbar's style to 'icons only'. M panel/languagebar.py commit cd5e23be561e80618d36d9b631c22d5af11695f7 Author: Huang Peng Date: 2008-07-01 19:45:36 +0800 Remove debug output. M daemon/bus.py commit 1f5a6e9df918ada15624d3edbbd1cf9fe92947f7 Author: Huang Peng Date: 2008-07-01 19:41:23 +0800 Fix crash in x86_64 arch. M daemon/bus.py M gtk2/ibusimclient.c commit c580f1e64f97658c03aeef09df726bb3298db6b4 Author: Huang Peng Date: 2008-07-01 17:26:52 +0800 Fix rpm error in on x86_64 arch. M ibus.spec.in commit f77f28aa82dd1dbff06a44f4e4a1466b3ca7675f Author: Huang Peng Date: 2008-06-30 22:22:28 +0800 Add keycode & name convert function. M ibus/keysyms.py commit 91a8a4b8e3359601ca29067a105c142a6e871826 Author: Huang Peng Date: 2008-06-30 22:22:04 +0800 Fix a typo. M ibus/interface/iconfig.py commit 462564eb711a203282ac8d18bd6d1e96c775e84d Author: Huang Peng Date: 2008-06-30 08:57:20 +0800 Remove engines. M configure.ac M engine/Makefile.am D engine/anthy/.gitignore D engine/anthy/Makefile.am D engine/anthy/anthy.i D engine/anthy/engine.py D engine/anthy/factory.py D engine/anthy/ibus-engine-anthy.in D engine/anthy/main.py D engine/anthy/tables.py D engine/anthy/test.py D engine/enchant/.gitignore D engine/enchant/Makefile.am D engine/enchant/engine.py D engine/enchant/factory.py D engine/enchant/ibus-engine-enchant.in D engine/enchant/main.py M ibus.spec.in M icons/Makefile.am D icons/ibus-anthy.png commit be0db1b2879211e0f7825f8f5e78b3f7606282e6 Author: Huang Peng Date: 2008-06-29 21:01:22 +0800 Return empty if factory is "". M panel/panel.py commit d5c579a88728ee460d4a3659e4c1b5116ce332c3 Author: Huang Peng Date: 2008-06-29 19:02:32 +0800 Fix output argment in anthy.i. M engine/anthy/Makefile.am M engine/anthy/anthy.i M engine/anthy/engine.py commit fd61091e46909c9d43f76bba4344d978b8b59881 Author: Huang Peng Date: 2008-06-29 16:20:23 +0800 Update Headers. M Makefile.am M m4/Makefile.am commit ed6e1911da0b08df1c32e5259eee0de5c7d252c3 Author: Huang Peng Date: 2008-06-28 09:05:21 +0800 Add motheds of IConfig interface. M ibus/interface/iconfig.py commit 26c4f00c471df6cb35c1f5daaf95afbacc924616 Author: Huang Peng Date: 2008-06-27 22:00:39 +0800 Add config interface. M ibus/common.py M ibus/interface/Makefile.am A ibus/interface/iconfig.py commit 4461bafa4ce442cc79ee73d74cb0ed7bd93614e4 Author: Huang Peng Date: 2008-06-27 21:43:32 +0800 WIP. M daemon/bus.py M daemon/panel.py M engine/anthy/engine.py M ibus/interface/iengine.py M ibus/interface/iibus.py M ibus/property.py M panel/Makefile.am M panel/languagebar.py M panel/menu.py M panel/panel.py A panel/propitem.py M panel/toolitem.py commit f0089093bf2a012094956aa6f66c3f3cb8442ab2 Author: Huang Peng Date: 2008-06-27 15:09:38 +0800 WIP. M panel/languagebar.py M panel/panel.py M panel/toolitem.py commit daecff5078ffdda3f89aacf79d228cc498cdefb8 Author: Huang Peng Date: 2008-06-27 15:09:09 +0800 Add WideLatin Input Mode. M engine/anthy/engine.py commit dad14cfdd17e838decc31bf16d03a2e68ca66552 Author: Huang Peng Date: 2008-06-27 15:07:09 +0800 Set engine before set enable. M daemon/bus.py commit 1a2802e5cbb87f71cb0d3c01df1c8a02aac52c13 Author: Huang Peng Date: 2008-06-25 20:31:09 +0800 Does not popup IME menu if does not have focus context. M panel/panel.py commit 2c39917c980fcc5afd4fb493124183530ce00a52 Author: Huang Peng Date: 2008-06-25 20:28:20 +0800 Add focus_in & focus_out methods of languagebar M panel/languagebar.py M panel/panel.py commit 748dc32d6536fcc764e2f2ae71472ee119d13952 Author: Huang Peng Date: 2008-06-25 20:25:06 +0800 Add ibus.spec in .gitignore. M .gitignore commit 5aa529e3e975f4c5f1fc2968b8aa748475d72de4 Author: Huang Peng Date: 2008-06-25 20:24:31 +0800 WIP. M daemon/bus.py M daemon/engine.py M daemon/inputcontext.py M daemon/panel.py M ibus/interface/iibus.py M ibus/interface/ipanel.py M panel/languagebar.py M panel/panel.py commit ddf5afabb2489de425c9a51f08c79e4ba0f57ada Author: Huang Peng Date: 2008-06-25 15:53:40 +0800 WIP. M configure.ac commit 743b92036463d241b1684d6371d70b90a785fdca Author: Huang Peng Date: 2008-06-25 15:53:28 +0800 Remove rpms when make clean. M Makefile.am commit 7f512b1a5043d9eef95cba91d05003f9d2afe954 Author: Huang Peng Date: 2008-06-25 10:51:52 +0800 Refine coding style. M gtk2/ibusimclient.c commit 350e2a097b56e197c8382bf6215b785692ca8dde Author: Huang Peng Date: 2008-06-25 10:42:42 +0800 Refine coding style. M daemon/enginefactory.py commit 1c3371e3c3e6fc6d1697aac8899ed733d37ab71e Author: Huang Peng Date: 2008-06-25 10:41:59 +0800 Rename folder ibusdaemon to daemon. M Makefile.am M configure.ac R100 ibusdaemon/.gitignore daemon/.gitignore R096 ibusdaemon/Makefile.am daemon/Makefile.am R100 ibusdaemon/bus.py daemon/bus.py R100 ibusdaemon/connection.py daemon/connection.py R100 ibusdaemon/contextmanager.py daemon/contextmanager.py R100 ibusdaemon/engine.py daemon/engine.py R100 ibusdaemon/enginefactory.py daemon/enginefactory.py R100 ibusdaemon/factorymanager.py daemon/factorymanager.py R093 ibusdaemon/ibus-daemon.in daemon/ibus-daemon.in R100 ibusdaemon/ibusdaemon.py daemon/ibusdaemon.py R100 ibusdaemon/inputcontext.py daemon/inputcontext.py R100 ibusdaemon/lookuptable.py daemon/lookuptable.py R100 ibusdaemon/panel.py daemon/panel.py M ibus.spec.in commit 3a89b79bb898eb1c6a5fc52c3e16ff6cd4bcde87 Author: Huang Peng Date: 2008-06-25 01:30:44 +0800 Define mod_path in spec file. M ibus.spec.in commit 8182da43cba2464f159be169b7db452e79cd5aac Author: Huang Peng Date: 2008-06-25 01:27:46 +0800 Run update-gtk-immodules `uname -i` in rpm post script. M ibus.spec.in commit b54f0964dad543609f8562a575179a712652ccb0 Author: Huang Peng Date: 2008-06-25 01:12:28 +0800 Add rpm build scripts. M Makefile.am M configure.ac A ibus.spec.in commit 24f671458272d15043f590d3b053b4da342d95e6 Author: Huang Peng Date: 2008-06-24 21:22:38 +0800 Refine coding style. M gtk2/Makefile.am commit 4e8f4cfbe00a92b8fb8c1634599faa4167100cd1 Author: Huang Peng Date: 2008-06-24 21:11:30 +0800 Remove useless code. M ibus/gtk.py commit d53909ddd273744dc990ee97d32bd1a37bfe9822 Author: Huang Peng Date: 2008-06-24 21:10:36 +0800 Set default value of InputMode. M engine/anthy/engine.py commit d423d92baf556315b43705c2094a27f9ff35e593 Author: Huang Peng Date: 2008-06-24 17:08:11 +0800 Remove m17n/Makefile.am D engine/m17n/Makefile.am commit 1f13effe2af355ac0845be53c23cb1171efc5d5a Author: Huang Peng Date: 2008-06-24 17:06:59 +0800 Refine coding style M Makefile.am M engine/m17n/Makefile.am M gtk2/Makefile.am commit d64a28ddc80141f411918b81eabdc3be306d6e77 Author: Huang Peng Date: 2008-06-24 17:04:04 +0800 Refine coding style. M gtk2/Makefile.am commit 17dadd61a27e02b31f3906c1f3542e5e93c32e94 Author: Huang Peng Date: 2008-06-24 16:41:44 +0800 Add PropertyShow & PropertyHide methods. M ibus/interface/iengine.py M ibus/interface/ipanel.py M ibusdaemon/bus.py M ibusdaemon/engine.py M ibusdaemon/inputcontext.py M ibusdaemon/panel.py commit 796828b62ea3e3004e48775691096f0ba7cd1ee5 Author: Huang Peng Date: 2008-06-24 15:03:48 +0800 Rm anthy_wrap.* when make clean. M engine/anthy/Makefile.am commit e7b785688258e1ef2fff582e7c84509afd8bd9ed Author: Huang Peng Date: 2008-06-24 14:31:29 +0800 Add task all to test task's dependence M gtk2/Makefile.am commit 812f1bbeb460bb74d1335c10e286325eae532ca5 Author: Huang Peng Date: 2008-06-24 14:30:56 +0800 Add test task in Makefile.am M qt4/Makefile.am commit 600eb61816314b59cf0889b09cf0b0651830dddb Author: Huang Peng Date: 2008-06-24 14:26:02 +0800 Add test task in Makefile.am M gtk2/Makefile.am commit d2b75d0fcc145ec1b699e592584922ee0aaf12d4 Author: Huang Peng Date: 2008-06-24 14:25:47 +0800 Add tooltip M engine/anthy/engine.py commit 68245ce2365d4d0d359d7baa2392754d3c1fe90d Author: Huang Peng Date: 2008-06-24 14:25:30 +0800 Rename _tip to _tooltip M ibus/property.py commit ddec84165853148bea190ccdff1466970bd68f9f Author: Huang Peng Date: 2008-06-24 14:21:03 +0800 WIP panel. M ibus/property.py M panel/languagebar.py M panel/menu.py M panel/toolitem.py commit 5963367438651a3ad2bf9420b05fea9ecc331324 Author: Huang Peng Date: 2008-06-24 13:27:35 +0800 WIP panel. M panel/languagebar.py M panel/panel.py M panel/toolitem.py commit 2c21d0c0f3b56ac7a831c71ff5958d74fad04576 Author: Huang Peng Date: 2008-06-24 10:33:03 +0800 Add test property. M engine/anthy/engine.py commit e78200efea42e564d5aefef76627450a7988024f Author: Huang Peng Date: 2008-06-24 10:32:48 +0800 WIP property. M panel/languagebar.py M panel/menu.py M panel/toolitem.py commit 15770e7875d9ab79d950f0e1828f9e9e3ff8e16b Author: Huang Peng Date: 2008-06-24 08:39:20 +0800 Add toolitem.py M panel/Makefile.am M panel/languagebar.py A panel/toolitem.py commit 2b6ed52cd97a1e66a6b68f5ebebc490fdcf5b946 Author: Huang Peng Date: 2008-06-23 20:14:32 +0800 Add menu.py M panel/Makefile.am M panel/languagebar.py A panel/menu.py M panel/panel.py commit 57877ac31e28b94cacb5c4b45974bed1b1381f7b Author: Huang Peng Date: 2008-06-23 19:59:04 +0800 Position the popup menu. M panel/languagebar.py M panel/panel.py commit 29a69894d260214d57b93d4ea534a6ec23807297 Author: Huang Peng Date: 2008-06-23 19:47:47 +0800 Does not exit when catch except reply. M ibus/common.py commit 39480c25c45771e4fcd2b2ffc662abae2a461386 Author: Huang Peng Date: 2008-06-23 18:30:12 +0800 WIP property. M engine/anthy/engine.py M ibusdaemon/bus.py M ibusdaemon/engine.py M ibusdaemon/inputcontext.py M ibusdaemon/panel.py M panel/languagebar.py M panel/panel.py commit c380db468f4e1f6276e19604e38b9db137d7a40f Author: Huang Peng Date: 2008-06-23 18:29:48 +0800 Add prop_state arg in PropertyActivate. And add PROP_TYPE_MENU M ibus/interface/iengine.py M ibus/interface/ipanel.py M ibus/property.py commit 19f10da3a3a680269f51554a3a5b98ef2a7e3c7e Author: Huang Peng Date: 2008-06-23 12:20:18 +0800 Add some debug code. M qt4/ibus-input-context.cpp commit e2da599389bef2878ae83b4b1a318926fe97edf9 Author: Huang Peng Date: 2008-06-22 21:59:56 +0800 Add __all__ in ibus source files to limit the exported objects. M ibus/attribute.py M ibus/common.py M ibus/exception.py M ibus/gtk.py M ibus/interface/iengine.py M ibus/interface/ienginefactory.py M ibus/interface/iibus.py M ibus/interface/ipanel.py M ibus/lookuptable.py M ibus/object.py M ibus/panel.py M ibus/property.py commit ac95983afa62e6960bdf674bbe9d393e67a6fded Author: Huang Peng Date: 2008-06-22 17:01:44 +0800 Add license headers. M engine/anthy/ibus-engine-anthy.in M engine/enchant/ibus-engine-enchant.in M ibusdaemon/ibus-daemon.in M panel/ibus-panel.in commit 4379f12111d279675de8d050ad1da99fa8f401aa Author: Huang Peng Date: 2008-06-20 17:44:31 +0800 remove themes. D panel/themes/default/Arrows/arrow-down.png D panel/themes/default/Arrows/arrow-insens.png D panel/themes/default/Arrows/arrow-left.png D panel/themes/default/Arrows/arrow-right.png D panel/themes/default/Arrows/arrow-up.png D panel/themes/default/Buttons/button-insensitive.png D panel/themes/default/Buttons/button-normal.png D panel/themes/default/Buttons/button-prelight.png D panel/themes/default/Check-Radio/check1.png D panel/themes/default/Check-Radio/check2.png D panel/themes/default/Check-Radio/check3.png D panel/themes/default/Check-Radio/check4.png D panel/themes/default/Check-Radio/check5.png D panel/themes/default/Check-Radio/check6.png D panel/themes/default/Check-Radio/option1.png D panel/themes/default/Check-Radio/option2.png D panel/themes/default/Check-Radio/option3.png D panel/themes/default/Check-Radio/option4.png D panel/themes/default/Check-Radio/option5.png D panel/themes/default/Check-Radio/option6.png D panel/themes/default/Frame-Gap/frame-gap-end.png D panel/themes/default/Frame-Gap/frame-gap-start.png D panel/themes/default/Frame-Gap/frame.png D panel/themes/default/Handles/handle-h.png D panel/themes/default/Handles/handle-v.png D panel/themes/default/Lines/line-h.png D panel/themes/default/Lines/line-v.png D panel/themes/default/ListHeaders/list_header-insens.png D panel/themes/default/ListHeaders/list_header-prelight.png D panel/themes/default/ListHeaders/list_header-pressed.png D panel/themes/default/ListHeaders/list_header.png D panel/themes/default/Menu-Menubar/menu.png D panel/themes/default/Menu-Menubar/menubar-item-active.png D panel/themes/default/Menu-Menubar/menubar-item.png D panel/themes/default/Menu-Menubar/menubar.png D panel/themes/default/Others/null.png D panel/themes/default/Others/ruler.png D panel/themes/default/Panel/panel-bg.png D panel/themes/default/ProgressBar/progressbar-horiz.png D panel/themes/default/ProgressBar/trough-progressbar-horiz.png D panel/themes/default/Range/slider-horiz-prelight.png D panel/themes/default/Range/slider-horiz.png D panel/themes/default/Range/slider-vert-prelight.png D panel/themes/default/Range/slider-vert.png D panel/themes/default/Range/trough-horizontal.png D panel/themes/default/Range/trough-vertical.png D panel/themes/default/Scrollbars/scroll-thumb-horiz-pre.png D panel/themes/default/Scrollbars/scroll-thumb-horiz.png D panel/themes/default/Scrollbars/scroll-thumb-vert-pre.png D panel/themes/default/Scrollbars/scroll-thumb-vert.png D panel/themes/default/Scrollbars/slider-horiz-pre.png D panel/themes/default/Scrollbars/slider-horiz.png D panel/themes/default/Scrollbars/slider-vert-pre.png D panel/themes/default/Scrollbars/slider-vert.png D panel/themes/default/Scrollbars/stepper-down-prelight.png D panel/themes/default/Scrollbars/stepper-down.png D panel/themes/default/Scrollbars/stepper-left-prelight.png D panel/themes/default/Scrollbars/stepper-left.png D panel/themes/default/Scrollbars/stepper-right-prelight.png D panel/themes/default/Scrollbars/stepper-right.png D panel/themes/default/Scrollbars/stepper-up-prelight.png D panel/themes/default/Scrollbars/stepper-up.png D panel/themes/default/Scrollbars/trough-scrollbar-horiz.png D panel/themes/default/Scrollbars/trough-scrollbar-vert.png D panel/themes/default/Shadows/shadow-in.png D panel/themes/default/Shadows/shadow-out.png D panel/themes/default/Shadows/text-.png D panel/themes/default/Shadows/text-entry.png D panel/themes/default/Spin/spin-down-disable.png D panel/themes/default/Spin/spin-down-prelight.png D panel/themes/default/Spin/spin-down.png D panel/themes/default/Spin/spin-up-disable.png D panel/themes/default/Spin/spin-up-prelight.png D panel/themes/default/Spin/spin-up.png D panel/themes/default/Tabs/gap-bottom-left.png D panel/themes/default/Tabs/gap-bottom-right.png D panel/themes/default/Tabs/gap-left-bottom.png D panel/themes/default/Tabs/gap-left-top.png D panel/themes/default/Tabs/gap-right-bottom.png D panel/themes/default/Tabs/gap-right-top.png D panel/themes/default/Tabs/gap-top-current.png D panel/themes/default/Tabs/gap-top-left.png D panel/themes/default/Tabs/gap-top-right.png D panel/themes/default/Tabs/notebook.png D panel/themes/default/Tabs/tab-bottom-active.png D panel/themes/default/Tabs/tab-bottom.png D panel/themes/default/Tabs/tab-left-active.png D panel/themes/default/Tabs/tab-left.png D panel/themes/default/Tabs/tab-right-active.png D panel/themes/default/Tabs/tab-right.png D panel/themes/default/Tabs/tab-top-active.png D panel/themes/default/Tabs/tab-top.png D panel/themes/default/Toolbar/toolbar.png D panel/themes/default/gtkrc D panel/themes/default/panel.rc D panel/themes/icons/gnome-dev-keyboard.svg D panel/themes/icons/keyboard.svg commit b934c65c3be8e2800ffe6a39b7d7dc380bb665fa Author: Huang Peng Date: 2008-06-20 14:13:29 +0800 Add argument --daemonize M engine/anthy/ibus-engine-anthy.in M engine/anthy/main.py M engine/enchant/ibus-engine-enchant.in M engine/enchant/main.py commit 9379f9100cf1bff08c0c997212e0b400ac8a970a Author: Huang Peng Date: 2008-06-20 14:12:25 +0800 Fix a typo. M engine/enchant/Makefile.am commit dc88529bb57ac78a3d22e8a7d85478d32cbafd69 Author: Huang Peng Date: 2008-06-20 13:31:29 +0800 Add arguments for panel. M panel/ibus-panel.in M panel/main.py commit 0dad9dcb3357223527537a952d4b0e59644cb852 Author: Huang Peng Date: 2008-06-20 13:28:39 +0800 Fix a typo. M ibusdaemon/ibusdaemon.py commit b40deb0d335c55469dcf3a2113fb683cdbc12742 Author: Huang Peng Date: 2008-06-20 13:20:06 +0800 Fix a typo. M ibusdaemon/lookuptable.py commit d7bf6871f3174c40787cc9963b40e1029bb0d292 Author: Huang Peng Date: 2008-06-20 13:19:01 +0800 Add argument -d -h. M ibusdaemon/ibus-daemon.in M ibusdaemon/ibusdaemon.py commit b38bdde765e29e76c542b3ed61442d5b7761045e Author: Huang Peng Date: 2008-06-19 22:49:36 +0800 Rename qt to qt4 M Makefile.am M configure.ac R100 qt/.gitignore qt4/.gitignore R100 qt/Makefile.am qt4/Makefile.am R100 qt/ibus-client.cpp qt4/ibus-client.cpp R100 qt/ibus-client.h qt4/ibus-client.h R100 qt/ibus-input-context.cpp qt4/ibus-input-context.cpp R100 qt/ibus-input-context.h qt4/ibus-input-context.h R100 qt/ibus.pro qt4/ibus.pro R100 qt/im-ibus-qt.cpp qt4/im-ibus-qt.cpp commit 819860b4b071d07820ac311ff155029e48efbbc7 Author: Huang Peng Date: 2008-06-19 22:45:08 +0800 Add ibus-*.tar.* in .gitignore. M .gitignore commit 18dca249278f17fda46926efdb2ab398ed42792e Author: Huang Peng Date: 2008-06-19 22:43:36 +0800 Add ibus-engine-anthy in engine/anthy/.gitignore. M engine/anthy/.gitignore commit 2802bffb5a073016f885af8c206eff142f6e2a80 Author: Huang Peng Date: 2008-06-19 22:42:42 +0800 Add generated script files in .gitignore. A engine/enchant/.gitignore A ibusdaemon/.gitignore A panel/.gitignore commit cb4157a5ef5756d215e7315a691a80bb8f54a1d5 Author: Huang Peng Date: 2008-06-19 22:40:19 +0800 Install launch scripts in libexec dir. M engine/anthy/Makefile.am M engine/enchant/Makefile.am M ibusdaemon/Makefile.am M panel/Makefile.am commit bc5a5356e27aaf10139dc68ebe61fcf46a451b9a Author: Huang Peng Date: 2008-06-19 22:29:43 +0800 Add lunch shell scripts. M configure.ac M engine/anthy/Makefile.am A engine/anthy/ibus-engine-anthy.in M engine/enchant/Makefile.am A engine/enchant/ibus-engine-enchant.in M ibusdaemon/Makefile.am A ibusdaemon/ibus-daemon.in M panel/Makefile.am A panel/ibus-panel.in commit 7c9c51f4f51b7ccd0f60f8c4fa72fb89d938943f Author: Huang Peng Date: 2008-06-19 22:09:44 +0800 Set icon search path. M panel/languagebar.py M panel/panel.py commit 40ff040364f2cbee2ce1741cb3f2d4fa75e955f0 Author: Huang Peng Date: 2008-06-19 21:11:19 +0800 Add python-config.py in dist tarball. M Makefile.am commit bd1f6c4638661aadbadd5efbd9e5fa20d14b8ec9 Author: Huang Peng Date: 2008-06-19 18:38:44 +0800 Dist with autogen.sh. M Makefile.am commit dd4d6a195e6da2adb51c7ea6ff771d070ee3d896 Author: Huang Peng Date: 2008-06-19 18:37:35 +0800 Add opt --enable-maintainer-mode in autogen.sh. M autogen.sh commit fb2326cb8804e92e26588cb4f4d4703fe890841e Author: Huang Peng Date: 2008-06-19 18:33:43 +0800 Add CLEANFILES = *.pyc in Makefile.am. M engine/anthy/Makefile.am M engine/enchant/Makefile.am M ibus/Makefile.am M ibus/interface/Makefile.am M ibusdaemon/Makefile.am M panel/Makefile.am commit 036965377041ad9ba1df0755449108af0f07280b Author: Huang Peng Date: 2008-06-19 18:30:26 +0800 Add header for sources. M Makefile.am M configure.ac M engine/Makefile.am M engine/anthy/Makefile.am M engine/anthy/anthy.i M engine/anthy/engine.py M engine/anthy/factory.py M engine/anthy/main.py M engine/anthy/tables.py M engine/enchant/Makefile.am M engine/enchant/engine.py M engine/enchant/factory.py M engine/enchant/main.py M gtk2/Makefile.am M ibus/Makefile.am M ibus/__init__.py M ibus/application.py M ibus/attribute.py M ibus/common.py M ibus/exception.py M ibus/gtk.py M ibus/interface/Makefile.am M ibus/interface/__init__.py M ibus/interface/iengine.py M ibus/interface/ienginefactory.py M ibus/interface/iibus.py M ibus/interface/ipanel.py M ibus/keysyms.py M ibus/lookuptable.py M ibus/modifier.py M ibus/object.py M ibus/panel.py M ibus/property.py M ibusdaemon/Makefile.am M ibusdaemon/bus.py M ibusdaemon/connection.py M ibusdaemon/contextmanager.py M ibusdaemon/engine.py M ibusdaemon/enginefactory.py M ibusdaemon/factorymanager.py M ibusdaemon/ibusdaemon.py M ibusdaemon/inputcontext.py M ibusdaemon/lookuptable.py M ibusdaemon/panel.py M icons/Makefile.am M panel/Makefile.am M panel/candidatepanel.py M panel/handle.py M panel/image.py M panel/lang.py M panel/languagebar.py M panel/main.py M panel/panel.py M qt/Makefile.am M qt/ibus-client.cpp M qt/ibus-client.h M qt/ibus-input-context.cpp M qt/ibus-input-context.h M qt/ibus.pro M qt/im-ibus-qt.cpp commit fdbbcd9fe7af509a17eea1fcd3d78a5a013c6971 Author: Huang Peng Date: 2008-06-19 15:48:09 +0800 Rename gik to ibus. M gtk2/Makefile.am D gtk2/gikimclient.h D gtk2/gikimcontext.c R073 gtk2/gikim.c gtk2/ibusim.c R082 gtk2/gikimclient.c gtk2/ibusimclient.c A gtk2/ibusimclient.h A gtk2/ibusimcontext.c R064 gtk2/gikimcontext.h gtk2/ibusimcontext.h commit afb1e11faa1a0a93cc8b0d2a52dffb1ee4c8af57 Author: Huang Peng Date: 2008-06-19 14:11:15 +0800 Refactory {install, remove}_engine_handlers methods. M ibusdaemon/inputcontext.py commit e9e130ecfd8702687d0043b52b79a15ffbf9d987 Author: Huang Peng Date: 2008-06-19 08:40:50 +0800 Only set cursor location when the location being changed. M qt/ibus-input-context.cpp M qt/ibus-input-context.h commit d60595118882bd7e1f6246a74d463dae6ae89725 Author: Huang Peng Date: 2008-06-19 08:38:11 +0800 call update after commitString. M qt/ibus-input-context.cpp commit 22da0011ec7afa66c9ed83d23273842668476076 Author: Huang Peng Date: 2008-06-19 08:36:35 +0800 call update method after sendEvent. M qt/ibus-input-context.cpp M qt/ibus-input-context.h commit 5a821997586865384e47611ffd9dad070629bf53 Author: Huang Peng Date: 2008-06-18 18:38:05 +0800 Add test task in Makefile.ams. M engine/anthy/Makefile.am M engine/enchant/Makefile.am M ibusdaemon/Makefile.am M panel/Makefile.am commit ab6ad5f76f826fa07f82bde964541fe80a9b562a Author: Huang Peng Date: 2008-06-18 18:37:53 +0800 Check prog env. M configure.ac commit c159c5a0846a6a77ec624213da2b0551bedcda1b Author: Huang Peng Date: 2008-06-18 17:41:41 +0800 Add {install, remove}_focused_context_handlers methods. M ibusdaemon/bus.py commit b79cab04739d6896f62e8257a0155b9c2a1193ce Author: Huang Peng Date: 2008-06-18 17:40:51 +0800 Only send destroy signal one time. M ibus/object.py commit 69150f225cd8de1886b82e103dd196677706cfeb Author: Huang Peng Date: 2008-06-18 17:39:58 +0800 Remove gtk-doc. M autogen.sh M configure.ac commit 173f54b593b4a683298624f803cd65b134ef3196 Author: Huang Peng Date: 2008-06-18 14:17:37 +0800 make configure failed if swig does not exist. M configure.ac commit 253db3e406c4d6d3eead03f0decf08299ff906b9 Author: Huang Peng Date: 2008-06-18 12:31:33 +0800 Make languagebar sticks with workarea borders. M panel/handle.py commit 6f4ba2dca549d03f87915b267a27a4ec228d72aa Author: Huang Peng Date: 2008-06-18 12:04:27 +0800 Set languagebar's position M panel/languagebar.py commit 15284824d4e598b933faed15d729a460ce11fba3 Author: Huang Peng Date: 2008-06-18 11:40:38 +0800 qt im module wip. M qt/ibus-input-context.cpp M qt/ibus-input-context.h commit 6ce07c96045f595dc7f1dd9d2c01307df67136fa Author: Huang Peng Date: 2008-06-18 10:30:49 +0800 Destroy InputContext when connection lost. M ibusdaemon/inputcontext.py commit 2e838808127c563d4baedcd20a939f826351a7f2 Author: Huang Peng Date: 2008-06-18 10:30:28 +0800 Fix cursor position problem. M qt/ibus-input-context.cpp commit a213f10ebae03a8b6e32891c2a18525302763d82 Author: Huang Peng Date: 2008-06-18 09:23:27 +0800 Fix anthy engine make distcheck errors. M engine/anthy/Makefile.am commit 104780dae25ca04a9bac7ea821797d5943c49429 Author: Huang Peng Date: 2008-06-17 23:41:24 +0800 Add Makefile.am for icons. M Makefile.am M configure.ac M engine/anthy/Makefile.am M engine/enchant/Makefile.am M ibusdaemon/Makefile.am A icons/Makefile.am M icons/ibus-help.png M panel/Makefile.am commit 3c7d7469cc16f9c93a7a1d569a6191685d24da30 Author: Huang Peng Date: 2008-06-17 19:00:20 +0800 Update .gitignore. M .gitignore commit 82fcafad447d3dae0b4e18c13e34af761d6984e6 Author: Huang Peng Date: 2008-06-17 18:59:41 +0800 Update .gitignore files. M .gitignore A engine/anthy/.gitignore A qt/.gitignore commit 36f67d071148e4e162f4c5dec04e2d192b959090 Author: Huang Peng Date: 2008-06-17 18:22:49 +0800 Fix make distcheck problems. M qt/Makefile.am commit 7d4541f8e6c2ff14262e2cc9d9e019591d0c9475 Author: Huang Peng Date: 2008-06-17 18:15:48 +0800 Fix make install & uninstall M qt/Makefile.am commit 13be881c74e9f3a76be57c7827b99c889ddd4bef Author: Huang Peng Date: 2008-06-17 18:11:01 +0800 Add Makefile.am for qt. M Makefile.am M configure.ac M engine/anthy/Makefile.am A qt/Makefile.am commit 558775dbaf9ddf72e3bee5234780c71119e82589 Author: Huang Peng Date: 2008-06-17 17:10:36 +0800 Check swig in configure. M configure.ac M engine/anthy/Makefile.am commit 57522e42d54375596542c98de0bd3be344d744fa Author: Huang Peng Date: 2008-06-17 16:46:55 +0800 WIP. M configure.ac D engine/anthy/Makefile M engine/anthy/Makefile.am D engine/enchant/Makefile A python-config.py commit eb28cd1b6d495e61b757991657da0804f097760c Author: Huang Peng Date: 2008-06-17 16:26:29 +0800 Add Makefile.am M Makefile.am M configure.ac A engine/Makefile.am M engine/anthy/Makefile M engine/anthy/Makefile.am M engine/enchant/Makefile A engine/enchant/Makefile.am A engine/m17n/Makefile.am commit 43b3212a6f553bf147365336adc9ade244994e59 Author: Huang Peng Date: 2008-06-17 16:19:45 +0800 Remove Makefile, add Makefile.am in panel. D panel/Makefile A panel/Makefile.am commit 60db8bfaf381049e43082d17fed3db627040cb3e Author: Huang Peng Date: 2008-06-17 16:17:32 +0800 Remove Makefile, add Makefile.am D ibusdaemon/Makefile A ibusdaemon/Makefile.am commit 6d76df52a0a56acb9ee6376ac2b01c0bd48dd353 Author: Huang Peng Date: 2008-06-17 16:04:45 +0800 Remove test tasks in Makefile.am. M ibus/Makefile.am commit 0205c3c3a2e30f33e2f862a89c4a9fdd18c323af Author: Huang Peng Date: 2008-06-17 16:01:00 +0800 Remove Makefile in ibus. D ibus/Makefile M ibus/Makefile.am commit a3c38529d9fe6e0bbad0d4da8df38fadbd1b29d3 Author: Huang Peng Date: 2008-06-17 16:00:14 +0800 Add Makefile.am in ibus M Makefile.am M configure.ac A ibus/Makefile.am A ibus/interface/Makefile.am commit 90f8e91d834398baa506079e2f51c0bc328bb7c9 Author: Huang Peng Date: 2008-06-17 15:36:11 +0800 Move modifier masks from keysyms to modifier. Remove debug output. M engine/enchant/engine.py M ibusdaemon/bus.py M ibusdaemon/ibusdaemon.py commit 8b050bc561113774f4a7292f805937379e510dab Author: Huang Peng Date: 2008-06-17 15:31:10 +0800 Move modifer masks from keysyms to modifier M ibus/keysyms.py A ibus/modifier.py commit 7c64ff857ad3a4a5d75a7fbd6585b9d0c62399df Author: Huang Peng Date: 2008-06-17 15:25:10 +0800 Modify the project file to support 'make install'. M qt/ibus.pro M qt/im-ibus-qt.cpp commit 299fbcf8810eaac00b6bf29560100edea8638c8a Author: Huang Peng Date: 2008-06-17 15:08:24 +0800 Reset panel when focused_context be destroyed M ibusdaemon/bus.py M ibusdaemon/contextmanager.py M ibusdaemon/inputcontext.py commit c3840b20c247dc6596a6905839c48ec0ca306aab Author: Huang Peng Date: 2008-06-17 14:23:38 +0800 qt im module wip. M ibus/interface/iibus.py M ibusdaemon/bus.py M qt/ibus-client.cpp M qt/ibus-client.h M qt/ibus-input-context.cpp M qt/ibus-input-context.h commit bae64c7dda7f82f98a61e2e6fb11ffde1a76a040 Author: Huang Peng Date: 2008-06-16 21:30:01 +0800 qt im module WIP. M qt/ibus-client.cpp commit 52f013d698240f6ee9b7267dfc5945a1443b107e Author: Huang Peng Date: 2008-06-16 20:28:44 +0800 qt module WIP. M ibusdaemon/contextmanager.py M ibusdaemon/ibusdaemon.py M qt/ibus-client.cpp M qt/ibus-client.h M qt/ibus-input-context.cpp M qt/ibus-input-context.h commit a84a555a4955fb3ade7de1228b715dae14dcaa74 Author: Huang Peng Date: 2008-06-15 22:29:43 +0800 WIP qt immodule. M qt/ibus-client.cpp M qt/ibus-client.h M qt/ibus-input-context.cpp M qt/ibus-input-context.h M qt/im-ibus-qt.cpp commit 4cef3e4d8d4742f2497bb9db7ea2ed7131105624 Author: Huang Peng Date: 2008-06-15 13:35:17 +0800 qt immdouel WIP. M qt/ibus-input-context.cpp M qt/ibus-input-context.h M qt/im-ibus-qt.cpp commit cc1ab071e8df14999203855a7072880010672e65 Author: Huang Peng Date: 2008-06-14 15:04:54 +0800 Qt immoduel WIP. M qt/ibus-input-context.cpp M qt/ibus-input-context.h M qt/im-ibus-qt.cpp commit 9a08cdb39f707192e64525931f33b51917fcaf95 Author: Huang Peng Date: 2008-06-14 14:47:56 +0800 Add qt im module. A qt/ibus-client.cpp A qt/ibus-client.h A qt/ibus-input-context.cpp A qt/ibus-input-context.h A qt/ibus.pro M qt/im-ibus-qt.cpp commit c8d37e33e4f4598f434dd3d04fdfb990bda36a22 Author: Huang Peng Date: 2008-06-14 13:58:33 +0800 Add im-ibus-qt.cpp. A qt/im-ibus-qt.cpp commit a9123f28b410713b91a605f059a0c08a14315563 Author: Huang Peng Date: 2008-06-14 13:49:20 +0800 Add DBus object. M ibusdaemon/bus.py M ibusdaemon/ibusdaemon.py commit 1549532ea1b838c2ef3be63005aa699ced883cfb Author: Huang Peng Date: 2008-06-14 09:48:40 +0800 Make one connection can create many inputcontext. M gtk2/gikimclient.c M ibus/interface/iibus.py M ibusdaemon/bus.py D ibusdaemon/clientmanager.py A ibusdaemon/contextmanager.py R091 ibusdaemon/client.py ibusdaemon/inputcontext.py M panel/panel.py commit d60756e7cd6bfb3b3db892114ba9c77b66d07f8b Author: Huang Peng Date: 2008-06-14 00:30:55 +0800 Modify im menu position function. M panel/panel.py commit 7753e6ded2fa21b10418cf5efdf7bc53499335cb Author: Huang Peng Date: 2008-06-14 00:26:27 +0800 Modify position function of im menu. M panel/panel.py commit ad600ae81ce32bde12ce6d08ed415abdbeaa4e87 Author: Huang Peng Date: 2008-06-14 00:17:14 +0800 WIP. M engine/anthy/main.py M engine/enchant/main.py M ibus/common.py commit 5448bc0e1bb7eb94f2df67832d38fccd6307c8ad Author: Huang Peng Date: 2008-06-14 00:04:42 +0800 Make all remote methods async. M ibusdaemon/engine.py M ibusdaemon/panel.py commit d71e1f65fb0b64613e8700b517611d449e4fb173 Author: Huang Peng Date: 2008-06-13 23:57:45 +0800 make panel's methods async. M ibusdaemon/panel.py commit 1cff797c23c984789baac0dc65196af3c8bf4697 Author: Huang Peng Date: 2008-06-13 23:57:22 +0800 Reset panel when factory is changed. M ibusdaemon/bus.py commit 7577caffd66046824597af77ff2c9c3bf71bf51e Author: Huang Peng Date: 2008-06-13 23:46:56 +0800 Add im menu in languagebar. M panel/languagebar.py M panel/panel.py commit ecf8d4bc816e77a0d3805c66e0129dfc5ebee3d6 Author: Huang Peng Date: 2008-06-13 20:53:44 +0800 Add zh_CN. M panel/lang.py commit 904ef3e0b3e2b2310f6be6a77dc48297d7837f70 Author: Huang Peng Date: 2008-06-13 20:38:30 +0800 Fix a problem when changing the orientation M panel/candidatepanel.py commit 65a7cb50001076766533fd99184831f5192fff54 Author: Huang Peng Date: 2008-06-13 20:34:47 +0800 Remove CandidateWindow. M panel/candidatepanel.py D panel/candidatewindow.py M panel/languagebar.py M panel/panel.py commit c38278a1e72a24022a03fe12335908e2f39b25df Author: Huang Peng Date: 2008-06-13 20:34:19 +0800 Remove unused methods. M panel/candidatewindow.py commit 374d2fe3af161428e6a1881f0adb8fcc39fc2235 Author: Huang Peng Date: 2008-06-13 20:16:44 +0800 Rename demo to enchant. M engine/enchant/factory.py commit 47220bdb6953f755794a6ec581c40d46e1971027 Author: Huang Peng Date: 2008-06-13 20:14:56 +0800 Remove LanguageBarWindow. M panel/languagebar.py M panel/panel.py commit b999d701d28c2709b9a28168a674c947a13d1062 Author: Huang Peng Date: 2008-06-13 09:35:21 +0800 Rename demo engine to enchant. R100 engine/demo/Makefile engine/enchant/Makefile R100 engine/demo/engine.py engine/enchant/engine.py R100 engine/demo/factory.py engine/enchant/factory.py R100 engine/demo/main.py engine/enchant/main.py commit 50acf73936343cc32fc20c97dcfb3193faf5bc37 Author: Huang Peng Date: 2008-06-13 08:19:06 +0800 Add icons. A icons/ibus-anthy.png A icons/ibus-help.png A icons/ibus-locale.svg A icons/ibus-zh.svg commit 42dddc6caae6015611dfd0bd1b2b860c6bf9872b Author: Huang Peng Date: 2008-06-13 08:12:58 +0800 Update lookup table when change orientation of candidate panel. M panel/candidatepanel.py commit 77737f7599eed37cd1a7753f686ba0e3d0d84f65 Author: Huang Peng Date: 2008-06-12 19:44:41 +0800 Add StatusIcon and engine menu. M engine/anthy/factory.py M ibus/gtk.py M ibus/interface/iibus.py M ibusdaemon/bus.py M ibusdaemon/factorymanager.py A panel/lang.py M panel/main.py M panel/panel.py commit c12e5619750194d267105aa062867bd990e2f5d8 Author: Huang Peng Date: 2008-06-12 15:11:12 +0800 Commit string if use press common key in convert mode. M engine/anthy/engine.py M ibus/gtk.py commit acea89868ab61dd6946121619b304c1258c81dd0 Author: Huang Peng Date: 2008-06-12 13:10:31 +0800 Use unicode string. M engine/demo/engine.py commit 09dc7d343658f80e5515ef9c523d4468de189fc6 Author: Huang Peng Date: 2008-06-12 10:58:03 +0800 Change preedit's background color. M engine/anthy/engine.py M ibus/interface/iengine.py commit 6d40b1e5f171368f030f00985db9e5c60aeb23f6 Author: Huang Peng Date: 2008-06-12 10:52:17 +0800 Change background color for convert mode. M engine/anthy/engine.py commit 9760293c5ddff4f7a18843fee7f7e852094d671a Author: Huang Peng Date: 2008-06-12 10:44:06 +0800 WIP. M gtk2/gikimclient.c commit fc2c64dcd3a31d620717a40d007a8a056ee01331 Author: Huang Peng Date: 2008-06-12 10:00:44 +0800 Convert offset in PangoAttrList M ibus/gtk.py M panel/candidatepanel.py commit ac3e3a1cf72611cba09fbccd2faf0c6d0cbf884a Author: Huang Peng Date: 2008-06-12 09:47:11 +0800 Convert bytes offset to characters offset. M engine/anthy/engine.py commit d1405d1ccb75f2733c0c641bda5c4c8700beafb6 Author: Huang Peng Date: 2008-06-12 09:46:40 +0800 Convert characters offset to bytes offset. M gtk2/gikimclient.c commit c48a5ae2627a78bf67f652d8c3fc4feafc259216 Author: Huang Peng Date: 2008-06-12 06:01:40 +0800 Handle Delete key. M engine/anthy/engine.py commit d4285d92f6b69fcd00bbb7603a029318831f4ca3 Author: Huang Peng Date: 2008-06-12 05:56:44 +0800 rm *.pyc in clean task. M engine/anthy/Makefile commit 7f34028935e5cea892121ca974e56c3237727096 Author: Huang Peng Date: 2008-06-12 05:55:31 +0800 Fix bug when pressing backspace M engine/anthy/engine.py commit 39fc5412500087774b658b2d7217254526e410b7 Author: Huang Peng Date: 2008-06-11 22:59:15 +0800 Add main.py for anthy engine. A engine/anthy/main.py commit 9c1e6130739313152d3c921067d0ffffa3ac673d Author: Huang Peng Date: 2008-06-11 22:44:03 +0800 Clean preedit when engine is lost M ibusdaemon/client.py commit 4b166dc64c28a89246d9ec3c87b1a41e7e6220a3 Author: Huang Peng Date: 2008-06-11 22:18:26 +0800 WIP anthy engine. M engine/anthy/engine.py M ibus/lookuptable.py commit 924e244fff3a48eea3aa742bfbe0885c62f93d71 Author: Huang Peng Date: 2008-06-11 18:01:32 +0800 WIP anthy engine. M engine/anthy/Makefile A engine/anthy/engine.py A engine/anthy/factory.py A engine/anthy/tables.py commit e5cdfb21fde5c4f7028ec5ceb6ed44aac769feb3 Author: Huang Peng Date: 2008-06-11 18:00:52 +0800 WIP. M ibusdaemon/client.py M ibusdaemon/engine.py commit 58bb35853d8a5ba128c827afb307b2ead467f6c8 Author: Huang Peng Date: 2008-06-11 14:57:22 +0800 Add anthy engine A engine/anthy/Makefile A engine/anthy/Makefile.am A engine/anthy/anthy.i A engine/anthy/test.py commit b4ae75975083abb847a654edb0d48d888056d0e5 Author: Huang Peng Date: 2008-06-11 10:59:56 +0800 WIP property. M engine/demo/engine.py M ibus/interface/ipanel.py M ibusdaemon/bus.py M ibusdaemon/client.py M ibusdaemon/panel.py M panel/candidatepanel.py M panel/languagebar.py commit 324a1a8c565e01f1e09ca0e3cf8dff2e0b61765f Author: Huang Peng Date: 2008-06-10 23:41:26 +0800 WIP property. M engine/demo/engine.py M ibusdaemon/bus.py M ibusdaemon/client.py M panel/languagebar.py M panel/panel.py commit b2a99e8c5315e8bf8954e1094fc5a5930789da4f Author: Huang Peng Date: 2008-06-10 23:24:23 +0800 Import property in __init__.py M ibus/__init__.py commit 74466037d16c274cd0b39c3aa6c838c7d23af7e6 Author: Huang Peng Date: 2008-06-10 22:21:14 +0800 Add __iter__ method for PropList object. M ibus/property.py commit 0265d139308e0232f7c08ad43b5a09e5f3c83ba1 Author: Huang Peng Date: 2008-06-10 20:21:09 +0800 Property WIP. M ibus/interface/iengine.py M ibus/interface/ipanel.py M ibusdaemon/bus.py M ibusdaemon/client.py M ibusdaemon/engine.py M ibusdaemon/panel.py M panel/languagebar.py M panel/panel.py commit 90915751f000327f43fd2a5c1d1556e16efb1a74 Author: Huang Peng Date: 2008-06-10 15:58:01 +0800 Add is_same mothod. M ibus/property.py commit 28ccfb07466686d723e97ad227a57c5b591f4f85 Author: Huang Peng Date: 2008-06-10 14:53:34 +0800 Fix typo. M panel/panel.py commit a98b627b68de2b1c1c8d57ca1f5c91cbc720ab2a Author: Huang Peng Date: 2008-06-10 13:48:34 +0800 Does not commit space when user uses 1~5 to select candidate. M engine/demo/engine.py commit f55614858ef52f3a7f0c06fe9192b311f998eeb5 Author: Huang Peng Date: 2008-06-10 13:43:34 +0800 Fix some mistakes of register-properties & update-property. M ibusdaemon/bus.py M ibusdaemon/client.py M ibusdaemon/engine.py commit 91722b9e1c4a01d4f961934e6916c5f5766b9a41 Author: Huang Peng Date: 2008-06-10 13:36:56 +0800 Modified engine & panel interfaces. M ibus/interface/iengine.py M ibus/interface/ipanel.py M ibusdaemon/bus.py M ibusdaemon/engine.py M ibusdaemon/panel.py M panel/panel.py commit cd8f5c99c0fd48a5c7c498b5378c1985184dd91f Author: Huang Peng Date: 2008-06-10 11:07:56 +0800 Handle escape key. M engine/demo/engine.py commit de3aeeb1b0aa5ad91fb2802059034d5a7b737eca Author: Huang Peng Date: 2008-06-10 11:05:43 +0800 Fix a bug of lookuptable.page_down M ibus/lookuptable.py commit e29878b94ee711e8f3c6d0489140cdf858b1826f Author: Huang Peng Date: 2008-06-06 12:38:56 +0800 Use host and X display id in ibus address. M gtk2/gikimclient.c M ibus/common.py commit d8b3fa89cc3452595fc1fcc2014398be1f7999b6 Author: Huang Peng Date: 2008-06-06 11:32:12 +0800 Add dbusconn in GetFactoryInfo method. M ibus/interface/iibus.py commit e719c375cd808204761843ce493dd1ae37562c03 Author: Huang Peng Date: 2008-06-06 11:27:30 +0800 Fix build error in Solaris. M gtk2/gikimclient.c commit f9e7b06008c6c6d5fe5bd03c7e6b0d9d6c4a1e54 Author: Huang Peng Date: 2008-06-05 22:01:10 +0800 Add UpdateProperties in panel. M ibus/interface/iengine.py M ibus/interface/ienginefactory.py M ibus/interface/iibus.py M ibusdaemon/bus.py M panel/panel.py commit 2475acd6decd8c6866029ebd7761778a3563b04b Author: Huang Peng Date: 2008-06-05 15:31:38 +0800 Modify some interface. M ibusdaemon/bus.py M ibusdaemon/lookuptable.py commit e5ca9c4a0a1e1ef45c6cd52984b87412c3f41764 Author: Huang Peng Date: 2008-06-05 15:29:22 +0800 Add property. M ibus/interface/iengine.py M ibus/interface/ipanel.py M ibusdaemon/bus.py M ibusdaemon/client.py M ibusdaemon/engine.py M ibusdaemon/panel.py M panel/languagebar.py commit ff7292352b7d4b1609f077c3650d94a3c83051fc Author: Huang Peng Date: 2008-06-04 18:06:32 +0800 Add property.py. A ibus/property.py commit 7509893db5888b62da22bfa27e17653cdb9dc052 Author: Huang Peng Date: 2008-06-04 11:35:45 +0800 Fix bugs when moving languagebar. M panel/handle.py commit e6a8e9fb9d429497862d3a89ed433c4aabffe182 Author: Huang Peng Date: 2008-06-04 08:55:08 +0800 Fix problem when a new panel replacing the old one. M ibusdaemon/bus.py commit 3d2f237c3e410888635c5402b0ca4c6c6223dd83 Author: Huang Peng Date: 2008-06-03 22:13:22 +0800 quit mainloop, when the Panel object be destroyed. M panel/panel.py commit 267a9135667e88f1e775a8078420a949dacc1a7b Author: Huang Peng Date: 2008-06-03 22:07:43 +0800 Try to use custom icons. M panel/languagebar.py M panel/panel.py commit a3d2228e48f324eaed1bb1fece6fd0c6bd5c6763 Author: Huang Peng Date: 2008-06-03 13:49:31 +0800 Rename keyboard icon. R100 icons/keyboard.svg icons/ibus-keyboard.svg commit 7da7fb8cce0ec32f54da58b1cc3b64d69faef617 Author: Huang Peng Date: 2008-06-03 13:48:32 +0800 Fix segfault when delete an im client object. M gtk2/gikimclient.c commit 5020e3a144975b89c03cd83972ec181bf4df45f2 Author: Huang Peng Date: 2008-06-03 13:19:16 +0800 Add keyboard icon. A icons/keyboard.svg commit f57ae92a8452b03f759ed3a3d7e7c5def6354366 Author: Huang Peng Date: 2008-06-03 12:59:15 +0800 Add an icon for default engine. A icons/engine-default.svg commit 983e5ff3c2f740308647380cd3174a43e54d1acd Author: Huang Peng Date: 2008-06-03 12:50:18 +0800 Specify the idle's priority. M engine/demo/engine.py commit a53f178a7d120342e7c500f8e2ae30298cad957a Author: Huang Peng Date: 2008-06-03 12:44:50 +0800 Add invalidate method. M engine/demo/engine.py commit f40165d862431b8490ee5daea8ca070274a3b76c Author: Huang Peng Date: 2008-06-02 19:20:26 +0800 Set im client to disable when lost ibus connection. M gtk2/gikimclient.c commit 9823c20eb65c7eb0d9a38398a0a4a3ab9a845b66 Author: Huang Peng Date: 2008-06-02 19:17:29 +0800 Check inotify in configure, and make code works without inotify. M configure.ac M gtk2/gikimclient.c commit f604a9438485277e3832086db2afd9bb2819dfa0 Author: Huang Peng Date: 2008-06-02 10:35:03 +0800 Replace DEPRECATED dbus_message_iter_get_array_len. M gtk2/gikimclient.c commit ddfcc89ecfb00aa0286dc8114fa1c531668444ad Author: Huang Peng Date: 2008-06-02 08:55:40 +0800 Clean preedit when connection is disconnected, and emit preedit-changed signal. M gtk2/gikimclient.c commit 32f14ccbdcdc32fa8c096be4a24d7a875b3cf96b Author: Huang Peng Date: 2008-06-02 08:50:59 +0800 Add dummy methods for DummyPanel M ibusdaemon/panel.py commit 56c9a736712924c6ac5f58f627b082646f9964fd Author: Huang Peng Date: 2008-06-02 00:14:19 +0800 Create /tmp/ibus-$HOME before create listen server. M ibusdaemon/ibusdaemon.py commit 6c51b70fe97fc27c2531dba42ab06e8cba8f9cd3 Author: Huang Peng Date: 2008-06-02 00:09:41 +0800 Fix a bug when a client focus out. M ibusdaemon/bus.py commit 0a8823e129767605b09a74c19db4b307167fe3bc Author: Huang Peng Date: 2008-06-02 00:04:52 +0800 Set mix size of state label. M panel/candidatepanel.py commit fcc2b1668e1e558e61beab7e0059efdac58344c2 Author: Huang Peng Date: 2008-06-02 00:02:16 +0800 Use inotify to create ibus connection. M gtk2/gikimclient.c M gtk2/gikimcontext.c M ibus/common.py commit e911456cf2c1f4e17c5ccf909e4fb80e4fccb780 Author: Huang Peng Date: 2008-05-30 17:55:14 +0800 Modifid IPanel and IEngine interfaces. M engine/demo/engine.py M gtk2/gikimclient.c M ibus/interface/iengine.py M ibus/interface/ipanel.py M ibusdaemon/bus.py M ibusdaemon/client.py M ibusdaemon/engine.py M ibusdaemon/panel.py M panel/candidatepanel.py M panel/candidatewindow.py M panel/languagebar.py M panel/panel.py commit aaff3dcec05b80a53e274c05fae04632e93cbde8 Author: Huang Peng Date: 2008-05-30 13:39:49 +0800 Add {cursor, page}-{up, down} support for panel. M engine/demo/engine.py M ibus/interface/iengine.py M ibus/interface/ipanel.py M ibusdaemon/bus.py M ibusdaemon/client.py M ibusdaemon/engine.py M ibusdaemon/panel.py M panel/candidatepanel.py M panel/candidatewindow.py M panel/panel.py commit dc19d9166b4263da9fb2915a5763173e11f909ee Author: Huang Peng Date: 2008-05-30 11:07:41 +0800 Remove underline attribute of aux string. Process symbols as commit key. M engine/demo/engine.py commit 15a2da35dc7da7e649f96d8d5276f5a02a2c29d5 Author: Huang Peng Date: 2008-05-30 11:06:19 +0800 Fix crash when recieve an empty dbus array. Remove spaces. M gtk2/gikimclient.c commit e8328f343e0617e224966b7a274e1d0bdc4f3be6 Author: Huang Peng Date: 2008-05-29 21:35:20 +0800 Update .gitignore. M .gitignore commit 300087621c17048752816b5de4bb52a6132a5355 Author: Huang Peng Date: 2008-05-29 21:29:18 +0800 Add .gitignore in po folder A po/.gitignore commit 134bab40bff7d9e5e1c6e59b27e40398bbcb8156 Author: Huang Peng Date: 2008-05-29 21:26:14 +0800 Update .gitignore Remove tabs. M .gitignore M panel/languagebar.py commit aec48ebe3b0431fe39e3f59dc92b8e66eaddb318 Author: Huang Peng Date: 2008-05-29 21:21:03 +0800 Add languagebar.py A panel/languagebar.py commit 0c249dc5ccad40182e2bc6fa54cc9101a3ee4c30 Author: Huang Peng Date: 2008-05-29 21:20:39 +0800 Add two lack files. A ibus/interface/ienginefactory.py A ibus/panel.py commit af1638a9d44f234f0d39ec2b1140c670b968c3d1 Author: Huang Peng Date: 2008-05-29 21:09:39 +0800 ibus almost works. M engine/demo/engine.py M ibus/attribute.py M ibus/gtk.py M ibus/keysyms.py M ibus/lookuptable.py M ibusdaemon/bus.py M panel/candidatepanel.py M panel/panel.py commit 9d1864aea72f05e39703bb414d318265494135c7 Author: Huang Peng Date: 2008-05-29 17:22:46 +0800 WIP. M engine/demo/engine.py M gtk2/gikimclient.c M ibus/attribute.py M ibus/gtk.py M ibus/interface/iengine.py M ibus/interface/ipanel.py M ibusdaemon/bus.py M ibusdaemon/client.py M ibusdaemon/engine.py M ibusdaemon/panel.py M panel/Makefile M panel/candidatepanel.py M panel/candidatewindow.py M panel/main.py M panel/panel.py commit 44c293eb46964b9878a23165ce093b00f3a33d64 Author: Huang Peng Date: 2008-05-29 11:56:57 +0800 split interface.py to several source files. D ibus/interface.py A ibus/interface/__init__.py A ibus/interface/iengine.py A ibus/interface/iibus.py A ibus/interface/ipanel.py commit d92da3d2a855ca4927363401f53214d445ad6da3 Author: Huang Peng Date: 2008-05-29 11:08:46 +0800 WIP. M ibusdaemon/bus.py M ibusdaemon/client.py M ibusdaemon/engine.py M ibusdaemon/enginefactory.py M ibusdaemon/panel.py M panel/candidatewindow.py commit 221a099a790009fc5930b287ec943f2b90af916a Author: Huang Peng Date: 2008-05-29 11:04:25 +0800 Remove locale panel. M engine/demo/engine.py commit 9c36a867314fcbf41b1cf998c260922d7c96cfc0 Author: Huang Peng Date: 2008-05-28 17:59:16 +0800 Remove tabs. M engine/demo/engine.py commit 80b4de2fc0535a94d51d2c5f0192b950c9e8979b Author: Huang Peng Date: 2008-05-28 17:57:17 +0800 Refactory Panel interface. M ibus/interface.py commit 53c6e1f1d0939b4c585301427920e0cf1dd9e341 Author: Huang Peng Date: 2008-05-28 16:14:04 +0800 Remove tabs. M panel/main.py commit 37615f1c45902eb5e0509cb22e38dec5877a05c2 Author: Huang Peng Date: 2008-05-28 16:13:28 +0800 Rename CandidatesArea to CandidateArea. M panel/candidatepanel.py commit 26bb4e59b7bb9b2670689e695f9050526d731a16 Author: Huang Peng Date: 2008-05-28 14:42:10 +0800 WIP M panel/candidatewindow.py commit a1a4425f1634287d3c81693d96a1bf0944992ede Author: Huang Peng Date: 2008-05-28 14:41:48 +0800 Add CandidatesArea class. M panel/candidatepanel.py commit 206643ccc4adeb22538e29a9a9c57e14af82c7e6 Author: Huang Peng Date: 2008-05-28 11:10:32 +0800 Add .gitignore in m4. A m4/.gitignore commit 4a74903fcc1639153e662d2353087754b4c6ce70 Author: Huang Peng Date: 2008-05-28 11:05:54 +0800 Add .gitignore. A .gitignore commit 58565069d099ce922b5bbf0809276bafc125662c Author: Huang Peng Date: 2008-05-28 11:02:14 +0800 Add AttributeUnderline Remove AttributeDecoration M ibus/attribute.py commit 6e4c093eb2ab9e302587b51b0daa1d3d87b78702 Author: Huang Peng Date: 2008-05-28 11:01:40 +0800 Remove AttributeDecoration Add AttributeUnderline A ibus/gtk.py commit 3fe2020754aa3a2256c3df52d84dbd0654d2e212 Author: Huang Peng Date: 2008-05-28 11:01:01 +0800 Add test-candidate rename test-engine to test-panel M panel/Makefile commit 1eb62dcfccb4e4296fbde5ad3f809c68dca6d8a7 Author: Huang Peng Date: 2008-05-28 11:00:25 +0800 Split CandidatePanel from candidatewindow.py. A panel/candidatepanel.py M panel/candidatewindow.py commit 5a331e972f472d61b335bb2fd9148d9d71eaf197 Author: Huang Peng Date: 2008-05-28 09:30:52 +0800 WIP. A ibusdaemon/lookuptable.py A panel/handle.py A panel/image.py A panel/themes/icons/gnome-dev-keyboard.svg A panel/themes/icons/keyboard.svg commit ca8b2bc823155ee97236670699b2222eef5f2d29 Author: Huang Peng Date: 2008-05-27 22:46:40 +0800 WIP. M ibus/interface.py M ibusdaemon/client.py M ibusdaemon/engine.py commit 12d99cbc6cd09215245ccd0d6ba5eeb600b571e8 Author: Huang Peng Date: 2008-05-27 22:45:51 +0800 Fix a bug in get_candidates_in_current_page. M ibus/lookuptable.py commit 17598bcad02e559b57d0c25f4cbb572a830e357a Author: Huang Peng Date: 2008-05-27 22:44:29 +0800 Add tips in candidatewindow.py. M panel/candidatewindow.py commit 86992b281d6945feb443e5c1d0e3c9af8bd1ce58 Author: Huang Peng Date: 2008-05-27 22:21:30 +0800 WIP. M panel/main.py M panel/panel.py commit 5ebe14a6a207c1afe327a0acadf219873aadb15e Author: Huang Peng Date: 2008-05-27 22:21:15 +0800 Modify default theme. M panel/themes/default/Toolbar/toolbar.png M panel/themes/default/gtkrc M panel/themes/default/panel.rc commit a314e5d281382815f30eae8db8dd8b1e365d5c76 Author: Huang Peng Date: 2008-05-27 22:21:03 +0800 Add candidatewindow.py A panel/candidatewindow.py commit 00447b4dac6095281bb18cada5452ed9d54e8677 Author: Huang Peng Date: 2008-05-23 16:04:21 +0800 Add a default theme. A panel/themes/default/Arrows/arrow-down.png A panel/themes/default/Arrows/arrow-insens.png A panel/themes/default/Arrows/arrow-left.png A panel/themes/default/Arrows/arrow-right.png A panel/themes/default/Arrows/arrow-up.png A panel/themes/default/Buttons/button-insensitive.png A panel/themes/default/Buttons/button-normal.png A panel/themes/default/Buttons/button-prelight.png A panel/themes/default/Check-Radio/check1.png A panel/themes/default/Check-Radio/check2.png A panel/themes/default/Check-Radio/check3.png A panel/themes/default/Check-Radio/check4.png A panel/themes/default/Check-Radio/check5.png A panel/themes/default/Check-Radio/check6.png A panel/themes/default/Check-Radio/option1.png A panel/themes/default/Check-Radio/option2.png A panel/themes/default/Check-Radio/option3.png A panel/themes/default/Check-Radio/option4.png A panel/themes/default/Check-Radio/option5.png A panel/themes/default/Check-Radio/option6.png A panel/themes/default/Frame-Gap/frame-gap-end.png A panel/themes/default/Frame-Gap/frame-gap-start.png A panel/themes/default/Frame-Gap/frame.png A panel/themes/default/Handles/handle-h.png A panel/themes/default/Handles/handle-v.png A panel/themes/default/Lines/line-h.png A panel/themes/default/Lines/line-v.png A panel/themes/default/ListHeaders/list_header-insens.png A panel/themes/default/ListHeaders/list_header-prelight.png A panel/themes/default/ListHeaders/list_header-pressed.png A panel/themes/default/ListHeaders/list_header.png A panel/themes/default/Menu-Menubar/menu.png A panel/themes/default/Menu-Menubar/menubar-item-active.png A panel/themes/default/Menu-Menubar/menubar-item.png A panel/themes/default/Menu-Menubar/menubar.png A panel/themes/default/Others/null.png A panel/themes/default/Others/ruler.png A panel/themes/default/Panel/panel-bg.png A panel/themes/default/ProgressBar/progressbar-horiz.png A panel/themes/default/ProgressBar/trough-progressbar-horiz.png A panel/themes/default/Range/slider-horiz-prelight.png A panel/themes/default/Range/slider-horiz.png A panel/themes/default/Range/slider-vert-prelight.png A panel/themes/default/Range/slider-vert.png A panel/themes/default/Range/trough-horizontal.png A panel/themes/default/Range/trough-vertical.png A panel/themes/default/Scrollbars/scroll-thumb-horiz-pre.png A panel/themes/default/Scrollbars/scroll-thumb-horiz.png A panel/themes/default/Scrollbars/scroll-thumb-vert-pre.png A panel/themes/default/Scrollbars/scroll-thumb-vert.png A panel/themes/default/Scrollbars/slider-horiz-pre.png A panel/themes/default/Scrollbars/slider-horiz.png A panel/themes/default/Scrollbars/slider-vert-pre.png A panel/themes/default/Scrollbars/slider-vert.png A panel/themes/default/Scrollbars/stepper-down-prelight.png A panel/themes/default/Scrollbars/stepper-down.png A panel/themes/default/Scrollbars/stepper-left-prelight.png A panel/themes/default/Scrollbars/stepper-left.png A panel/themes/default/Scrollbars/stepper-right-prelight.png A panel/themes/default/Scrollbars/stepper-right.png A panel/themes/default/Scrollbars/stepper-up-prelight.png A panel/themes/default/Scrollbars/stepper-up.png A panel/themes/default/Scrollbars/trough-scrollbar-horiz.png A panel/themes/default/Scrollbars/trough-scrollbar-vert.png A panel/themes/default/Shadows/shadow-in.png A panel/themes/default/Shadows/shadow-out.png A panel/themes/default/Shadows/text-.png A panel/themes/default/Shadows/text-entry.png A panel/themes/default/Spin/spin-down-disable.png A panel/themes/default/Spin/spin-down-prelight.png A panel/themes/default/Spin/spin-down.png A panel/themes/default/Spin/spin-up-disable.png A panel/themes/default/Spin/spin-up-prelight.png A panel/themes/default/Spin/spin-up.png A panel/themes/default/Tabs/gap-bottom-left.png A panel/themes/default/Tabs/gap-bottom-right.png A panel/themes/default/Tabs/gap-left-bottom.png A panel/themes/default/Tabs/gap-left-top.png A panel/themes/default/Tabs/gap-right-bottom.png A panel/themes/default/Tabs/gap-right-top.png A panel/themes/default/Tabs/gap-top-current.png A panel/themes/default/Tabs/gap-top-left.png A panel/themes/default/Tabs/gap-top-right.png A panel/themes/default/Tabs/notebook.png A panel/themes/default/Tabs/tab-bottom-active.png A panel/themes/default/Tabs/tab-bottom.png A panel/themes/default/Tabs/tab-left-active.png A panel/themes/default/Tabs/tab-left.png A panel/themes/default/Tabs/tab-right-active.png A panel/themes/default/Tabs/tab-right.png A panel/themes/default/Tabs/tab-top-active.png A panel/themes/default/Tabs/tab-top.png A panel/themes/default/Toolbar/toolbar.png A panel/themes/default/gtkrc A panel/themes/default/panel.rc commit 28db4525339ffdbcdd3d0e0d9822714995e6211d Author: Huang Peng Date: 2008-05-21 15:58:47 +0800 WIP. M ibus/interface.py M ibusdaemon/bus.py M ibusdaemon/engine.py M ibusdaemon/factorymanager.py M ibusdaemon/panel.py commit 9f06b8c51d47cd37ae925c164b07dcb96fb19edc Author: Huang Peng Date: 2008-05-20 15:57:00 +0800 Add panel. A panel/Makefile A panel/main.py A panel/panel.py commit 5b59a973b7fdb3ab125d08910abdcf405583a210 Author: Huang Peng Date: 2008-05-20 10:52:03 +0800 Add application.py A ibus/application.py commit f3bbca058655c155758519064b16372e6589d2e6 Author: Huang Peng Date: 2008-05-19 22:14:16 +0800 WIP. M gtk2/Makefile.am M ibus/__init__.py M ibus/attribute.py M ibus/interface.py M ibus/lookuptable.py M ibusdaemon/bus.py M ibusdaemon/engine.py M ibusdaemon/panel.py commit 82b3002e5860094118c43ecb390a2bf9497fe1fc Author: Huang Peng Date: 2008-05-19 22:13:51 +0800 Add panel.py. A ibusdaemon/panel.py commit ef38e2326c802cc9a25d0873b31869aad1bfe498 Author: Huang Peng Date: 2008-05-19 21:52:49 +0800 Remove lookuptable.py D engine/demo/lookuptable.py commit 87805e2558089e68cd198987123355f1da9f3ca9 Author: Huang Peng Date: 2008-05-19 18:19:39 +0800 Add lookuptabel.py and add {to,from}_dbus_value to Attribute and AttrList classes. M ibus/attribute.py M ibus/interface.py A ibus/lookuptable.py commit 39d382372f1461f18e207a0f4d81c5613e4d293b Author: Huang Peng Date: 2008-05-19 10:44:00 +0800 Move EngineFactory from engine.py to a new file. M ibusdaemon/engine.py A ibusdaemon/enginefactory.py commit 164a20434e452091585646a9042d371785c300f7 Author: Huang Peng Date: 2008-05-19 10:27:49 +0800 Remove driver.py D ibus/driver.py commit 1b731d1cae251cf6841e906fd35779053d79a06f Author: Huang Peng Date: 2008-05-19 10:19:22 +0800 Remove x property from bus.py and ibusdaemon.py M ibusdaemon/bus.py M ibusdaemon/ibusdaemon.py commit dc8a0dd5a153b86458cc0d46bc0c07996c635c91 Author: Huang Peng Date: 2008-05-19 09:57:47 +0800 Remove -x property from driver.py. M ibus/driver.py commit 2a863969bc557ba3847062558b349f7976ae42fc Author: Huang Peng Date: 2008-05-18 23:00:43 +0800 WIP. M engine/demo/Makefile D engine/demo/eng_demo.py A engine/demo/engine.py A engine/demo/factory.py A engine/demo/lookuptable.py A engine/demo/main.py M ibus/common.py M ibus/interface.py commit 3c627611dc49468d1d2ff9485c98a71666c78226 Author: Huang Peng Date: 2008-05-15 11:19:26 +0800 transplate x, y, if client window is not NULL. M gtk2/gikimcontext.c commit c2c0a2f04d5b48f6d9325a96f4644b098ff36565 Author: Huang Peng Date: 2008-05-15 11:06:07 +0800 Fix a typo. M gtk2/gikimclient.c commit f69e6240f54a3c5d5a23dafb88e71c46f7cec948 Author: Huang Peng Date: 2008-05-13 11:28:23 +0800 Move demo engine to engine/demo. Add Makefile in ibusdaemon. A engine/demo/Makefile R098 ibus/eng_demo.py engine/demo/eng_demo.py A ibusdaemon/Makefile commit 14a08bc34acab200f891c880b3f3f31751d5800f Author: Huang Peng Date: 2008-05-13 10:51:18 +0800 Split ibusdaemon from ibus. M ibus/__init__.py D ibus/server.py R095 ibus/bus.py ibusdaemon/bus.py R100 ibus/client.py ibusdaemon/client.py R088 ibus/clientmanager.py ibusdaemon/clientmanager.py R100 ibus/connection.py ibusdaemon/connection.py R100 ibus/engine.py ibusdaemon/engine.py R096 ibus/factorymanager.py ibusdaemon/factorymanager.py R096 ibus/ibusdaemon.py ibusdaemon/ibusdaemon.py commit 4d313651ea8de6a554ae1f5009687e66803b99c4 Author: Huang Peng Date: 2008-05-13 10:24:10 +0800 Revert to "Add clean task in Makefile." D src/ibus/__init__.py D src/ibus/common.py D src/ibus/exception.py D src/ibus/keysyms.py D src/ibus/object.py commit 93734d0f06c7ed2db406155bf229517a8cb766b1 Author: Huang Peng Date: 2008-05-13 10:19:29 +0800 Revert "Add clean task in Makefile." This reverts commit 6bfa30ff14c5e91df9574a11637e99124e39f926. Conflicts: A src/ibus/__init__.py A src/ibus/common.py A src/ibus/exception.py A src/ibus/keysyms.py A src/ibus/object.py commit 6bfa30ff14c5e91df9574a11637e99124e39f926 Author: Huang Peng Date: 2008-05-13 10:06:51 +0800 Add clean task in Makefile. M ibus/Makefile commit c25a24ae2e40a39db61fcd6f80d76469daa49a28 Author: Huang Peng Date: 2008-05-12 15:18:48 +0800 import ibus A AUTHORS A COPYING A ChangeLog A Makefile.am A NEWS A README A autogen.sh A configure.ac A doc/interfaces A doc/specification A gtk2/Makefile.am A gtk2/gikim.c A gtk2/gikimclient.c A gtk2/gikimclient.h A gtk2/gikimcontext.c A gtk2/gikimcontext.h A ibus/Makefile A ibus/__init__.py A ibus/attribute.py A ibus/bus.py A ibus/client.py A ibus/clientmanager.py A ibus/common.py A ibus/connection.py A ibus/driver.py A ibus/eng_demo.py A ibus/engine.py A ibus/exception.py A ibus/factorymanager.py A ibus/ibusdaemon.py A ibus/interface.py A ibus/keysyms.py A ibus/object.py A ibus/server.py A m4/Makefile.am A m4/as-version.m4 A po/Makevars A po/POTFILES.in ibus-1.5.32/INSTALL0000644000000000000000000003777114775216752007263 Installation Instructions ************************* Basic Installation ================== The following shell commands: test -f configure || ./bootstrap ./configure make make install should configure, build, and install this package. The first line, which bootstraps, is intended for developers; when building from distribution tarballs it does nothing and can be skipped. The following more-detailed instructions are generic; see the ‘README’ file for instructions specific to this package. Some packages provide this ‘INSTALL’ file but do not implement all of the features documented below. The lack of an optional feature in a given package is not necessarily a bug. More recommendations for GNU packages can be found in the GNU Coding Standards. Many packages have scripts meant for developers instead of ordinary builders, as they may use developer tools that are less commonly installed, or they may access the network, which has privacy implications. If the ‘bootstrap’ shell script exists, it attempts to build the ‘configure’ shell script and related files, possibly using developer tools or the network. Because the output of ‘bootstrap’ is system-independent, it is normally run by a package developer so that its output can be put into the distribution tarball and ordinary builders and users need not run ‘bootstrap’. Some packages have commands like ‘./autopull.sh’ and ‘./autogen.sh’ that you can run instead of ‘./bootstrap’, for more fine-grained control over bootstrapping. The ‘configure’ shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses those values to create a ‘Makefile’ in each directory of the package. It may also create one or more ‘.h’ files containing system-dependent definitions. Finally, it creates a shell script ‘config.status’ that you can run in the future to recreate the current configuration, and a file ‘config.log’ containing output useful for debugging ‘configure’. It can also use an optional file (typically called ‘config.cache’ and enabled with ‘--cache-file=config.cache’ or simply ‘-C’) that saves the results of its tests to speed up reconfiguring. Caching is disabled by default to prevent problems with accidental use of stale cache files. If you need to do unusual things to compile the package, please try to figure out how ‘configure’ could check whether to do them, and mail diffs or instructions to the address given in the ‘README’ so they can be considered for the next release. If you are using the cache, and at some point ‘config.cache’ contains results you don’t want to keep, you may remove or edit it. The ‘autoconf’ program generates ‘configure’ from the file ‘configure.ac’. Normally you should edit ‘configure.ac’ instead of editing ‘configure’ directly. The simplest way to compile this package is: 1. ‘cd’ to the directory containing the package’s source code. 2. If this is a developer checkout and file ‘configure’ does not yet exist, type ‘./bootstrap’ to create it. You may need special developer tools and network access to bootstrap, and the network access may have privacy implications. 3. Type ‘./configure’ to configure the package for your system. This might take a while. While running, ‘configure’ prints messages telling which features it is checking for. 4. Type ‘make’ to compile the package. 5. Optionally, type ‘make check’ to run any self-tests that come with the package, generally using the just-built uninstalled binaries. 6. Type ‘make install’ to install the programs and any data files and documentation. When installing into a prefix owned by root, it is recommended that the package be configured and built as a regular user, and only the ‘make install’ phase executed with root privileges. 7. Optionally, type ‘make installcheck’ to repeat any self-tests, but this time using the binaries in their final installed location. This target does not install anything. Running this target as a regular user, particularly if the prior ‘make install’ required root privileges, verifies that the installation completed correctly. 8. You can remove the program binaries and object files from the source code directory by typing ‘make clean’. To also remove the files that ‘configure’ created (so you can compile the package for a different kind of computer), type ‘make distclean’. There is also a ‘make maintainer-clean’ target, but that is intended mainly for the package’s developers. If you use it, you may have to bootstrap again. 9. If the package follows the GNU Coding Standards, you can type ‘make uninstall’ to remove the installed files. Compilers and Options ===================== Some systems require unusual options for compilation or linking that the ‘configure’ script does not know about. Run ‘./configure --help’ for details on some of the pertinent environment variables. You can give ‘configure’ initial values for configuration parameters by setting variables in the command line or in the environment. Here is an example: ./configure CC=gcc CFLAGS=-g LIBS=-lposix See “Defining Variables” for more details. Compiling For Multiple Architectures ==================================== You can compile the package for more than one kind of computer at the same time, by placing the object files for each system in their own directory. To do this, you can use GNU ‘make’. ‘cd’ to the directory where you want the object files and executables to go and run the ‘configure’ script. ‘configure’ automatically checks for the source code in the directory that ‘configure’ is in and in ‘..’. This is known as a “VPATH” build. With a non-GNU ‘make’, it is safer to compile the package for one system at a time in the source code directory. After you have installed the package for one system, use ‘make distclean’ before reconfiguring for another system. Some platforms, notably macOS, support “fat” or “universal” binaries, where a single binary can execute on different architectures. On these platforms you can configure and compile just once, with options specific to that platform. Installation Names ================== By default, ‘make install’ installs the package’s commands under ‘/usr/local/bin’, include files under ‘/usr/local/include’, etc. You can specify an installation prefix other than ‘/usr/local’ by giving ‘configure’ the option ‘--prefix=PREFIX’, where PREFIX must be an absolute file name. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you pass the option ‘--exec-prefix=PREFIX’ to ‘configure’, the package uses PREFIX as the prefix for installing programs and libraries. Documentation and other data files still use the regular prefix. In addition, if you use an unusual directory layout you can give options like ‘--bindir=DIR’ to specify different values for particular kinds of files. Run ‘configure --help’ for a list of the directories you can set and what kinds of files go in them. In general, the default for these options is expressed in terms of ‘${prefix}’, so that specifying just ‘--prefix’ will affect all of the other directory specifications that were not explicitly provided. The most portable way to affect installation locations is to pass the correct locations to ‘configure’; however, many packages provide one or both of the following shortcuts of passing variable assignments to the ‘make install’ command line to change installation locations without having to reconfigure or recompile. The first method involves providing an override variable for each affected directory. For example, ‘make install prefix=/alternate/directory’ will choose an alternate location for all directory configuration variables that were expressed in terms of ‘${prefix}’. Any directories that were specified during ‘configure’, but not in terms of ‘${prefix}’, must each be overridden at install time for the entire installation to be relocated. The approach of makefile variable overrides for each directory variable is required by the GNU Coding Standards, and ideally causes no recompilation. However, some platforms have known limitations with the semantics of shared libraries that end up requiring recompilation when using this method, particularly noticeable in packages that use GNU Libtool. The second method involves providing the ‘DESTDIR’ variable. For example, ‘make install DESTDIR=/alternate/directory’ will prepend ‘/alternate/directory’ before all installation names. The approach of ‘DESTDIR’ overrides is not required by the GNU Coding Standards, and does not work on platforms that have drive letters. On the other hand, it does better at avoiding recompilation issues, and works well even when some directory options were not specified in terms of ‘${prefix}’ at ‘configure’ time. Optional Features ================= If the package supports it, you can cause programs to be installed with an extra prefix or suffix on their names by giving ‘configure’ the option ‘--program-prefix=PREFIX’ or ‘--program-suffix=SUFFIX’. Some packages pay attention to ‘--enable-FEATURE’ and ‘--disable-FEATURE’ options to ‘configure’, where FEATURE indicates an optional part of the package. They may also pay attention to ‘--with-PACKAGE’ and ‘--without-PACKAGE’ options, where PACKAGE is something like ‘gnu-ld’. ‘./configure --help’ should mention the ‘--enable-...’ and ‘--with-...’ options that the package recognizes. Some packages offer the ability to configure how verbose the execution of ‘make’ will be. For these packages, running ‘./configure --enable-silent-rules’ sets the default to minimal output, which can be overridden with ‘make V=1’; while running ‘./configure --disable-silent-rules’ sets the default to verbose, which can be overridden with ‘make V=0’. Specifying a System Type ======================== By default ‘configure’ builds for the current system. To create binaries that can run on a different system type, specify a ‘--host=TYPE’ option along with compiler variables that specify how to generate object code for TYPE. For example, to create binaries intended to run on a 64-bit ARM processor: ./configure --host=aarch64-linux-gnu \ CC=aarch64-linux-gnu-gcc \ CXX=aarch64-linux-gnu-g++ If done on a machine that can execute these binaries (e.g., via ‘qemu-aarch64’, ‘$QEMU_LD_PREFIX’, and Linux’s ‘binfmt_misc’ capability), the build behaves like a native build. Otherwise it is a cross-build: ‘configure’ will make cross-compilation guesses instead of running test programs, and ‘make check’ will not work. A system type can either be a short name like ‘mingw64’, or a canonical name like ‘x86_64-pc-linux-gnu’. Canonical names have the form CPU-COMPANY-SYSTEM where SYSTEM is either OS or KERNEL-OS. To canonicalize and validate a system type, you can run the command ‘config.sub’, which is often squirreled away in a subdirectory like ‘build-aux’. For example: $ build-aux/config.sub arm64-linux aarch64-unknown-linux-gnu $ build-aux/config.sub riscv-lnx Invalid configuration 'riscv-lnx': OS 'lnx' not recognized You can look at the ‘config.sub’ file to see which types are recognized. If the file is absent, this package does not need the system type. If ‘configure’ fails with the diagnostic “cannot guess build type”. ‘config.sub’ did not recognize your system’s type. In this case, first fetch the newest versions of these files from the GNU config package (https://savannah.gnu.org/projects/config). If that fixes things, please report it to the maintainers of the package containing ‘configure’. Otherwise, you can try the configure option ‘--build=TYPE’ where TYPE comes close to your system type; also, please report the problem to . For more details about configuring system types, see the Autoconf documentation. Sharing Defaults ================ If you want to set default values for ‘configure’ scripts to share, you can create a site shell script called ‘config.site’ that gives default values for variables like ‘CC’, ‘cache_file’, and ‘prefix’. ‘configure’ looks for ‘PREFIX/share/config.site’ if it exists, then ‘PREFIX/etc/config.site’ if it exists. Or, you can set the ‘CONFIG_SITE’ environment variable to the location of the site script. A warning: not all ‘configure’ scripts look for a site script. Defining Variables ================== Variables not defined in a site shell script can be set in the environment passed to ‘configure’. However, some packages may run configure again during the build, and the customized values of these variables may be lost. In order to avoid this problem, you should set them in the ‘configure’ command line, using ‘VAR=value’. For example: ./configure CC=/usr/local2/bin/gcc causes the specified ‘gcc’ to be used as the C compiler (unless it is overridden in the site shell script). Unfortunately, this technique does not work for ‘CONFIG_SHELL’ due to an Autoconf limitation. Until the limitation is lifted, you can use this workaround: CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash ‘configure’ Invocation ====================== ‘configure’ recognizes the following options to control how it operates. ‘--help’ ‘-h’ Print a summary of all of the options to ‘configure’, and exit. ‘--help=short’ ‘--help=recursive’ Print a summary of the options unique to this package’s ‘configure’, and exit. The ‘short’ variant lists options used only in the top level, while the ‘recursive’ variant lists options also present in any nested packages. ‘--version’ ‘-V’ Print the version of Autoconf used to generate the ‘configure’ script, and exit. ‘--cache-file=FILE’ Enable the cache: use and save the results of the tests in FILE, traditionally ‘config.cache’. FILE defaults to ‘/dev/null’ to disable caching. ‘--config-cache’ ‘-C’ Alias for ‘--cache-file=config.cache’. ‘--srcdir=DIR’ Look for the package’s source code in directory DIR. Usually ‘configure’ can determine that directory automatically. ‘--prefix=DIR’ Use DIR as the installation prefix. See “Installation Names” for more details, including other options available for fine-tuning the installation locations. ‘--host=TYPE’ Build binaries for system TYPE. See “Specifying a System Type”. ‘--enable-FEATURE’ ‘--disable-FEATURE’ Enable or disable the optional FEATURE. See “Optional Features”. ‘--with-PACKAGE’ ‘--without-PACKAGE’ Use or omit PACKAGE when building. See “Optional Features”. ‘--quiet’ ‘--silent’ ‘-q’ Do not print messages saying which checks are being made. To suppress all normal output, redirect it to ‘/dev/null’ (any error messages will still be shown). ‘--no-create’ ‘-n’ Run the configure checks, but stop before creating any output files. ‘configure’ also recognizes several environment variables, and accepts some other, less widely useful, options. Run ‘configure --help’ for more details. Copyright notice ================ Copyright © 1994–1996, 1999–2002, 2004–2017, 2020–2024 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without warranty of any kind. ibus-1.5.32/NEWS0000644000000000000000000002140514775217702006710 Changes in IBus 1.5.32 Andika Triwidada (1): po: Update translation (Indonesian) Boyuan Yang (1): po: Update translation (Chinese (Simplified) (zh_CN)) ButterflyOfFire (2): po: Update translation (Kabyle) po: Update translation (Kabyle) Diego Nieto Cid (1): src/tests/runtest: Use POSIX compliant redirection Jules Bertholet (2): src: Ignore latch keys in accelerators and Compose Add Overlay1_Enable to IBUS_COMPOSE_IGNORE_KEYLIST Ludovico de Nittis (1): bus/inputcontext: Use the correct string marshaller Luna Jernberg (1): po: Update translation (Swedish) Manish Tiwari (1): src/ibusunicode: Free Unicode data list in async done Mike FABIAN (1): po: Update translation (German) Piotr Drąg (1): po: Update translation (Polish) Rafael Fontenelle (1): po: Update translation (Portuguese (Brazil)) Salvatore Cocuzza (1): po: Update translation (Italian) Temuri Doghonadze (1): po: Update translation (Georgian) Weblate Translation Memory (2): po: Update translation (Korean, Swedish) po: Update translation (Georgian) Yuri Chornoivan (1): po: Update translation (Ukrainian) fujiwarat (49): client/wayland: Add input-method-unstable-v2.xml, virtual-keyboard-unstable-v1.xml client/wayland: Add Wayland input-method v2 and virtual-text v1 codes client/wayland: Implement Wayland input-method unstable v2 in ibus-wayland ui/gtk3: Update panel to work with Sway, Hyprland, COSMIC client/wayland: Enhance D-BUs handling and popup with XIM src/ibuspanelservice: Add ibus_panel_service_forward_process_key_event() bus/panelproxy: use va_marshaller to avoid GValue boxing #2 bus: Implement ForwardProcessKeyEvent D-Bus signal ui/gtk3: Implement virtual Wayland input-method with XIM ui/gtk3: Enhance some key repeat issues in Wayland client/wayland: Implement key repeat in Wayland Change GlobalShortcutKeyResponded D-Bus signal for XIM in Wayland ui/gtk3: Implement Super-space with XIM in Wayland client/wayland: Fix unnecessary key repeat with XIM client/wayland: Wayland protocol files in Makefile client/wayland: Save multiple seats github/workflows: Replace Fedora 40 with Fedora 42 tools: Implement ibus start --type wayland option Release 1.5.32-beta1 client/wayland: Fix repeating key between focus src: Fix declaration errors with GCC 15 util/IMdkit: Fix incompatible-pointer-types in TransportSW.checkAddr src/ibuskeysyms: Fix typo IBUS_KEY_Ukranian_je github: Update latest issue template client/wayland: Copy system xkb_keymap for compose keys po: Update translation (Japanese) ui/gtk3: Update copyright in about dialog src/ibusenginesimple: Keep compose preedit with wrong sequence src: Do not load en-US compose table by default Release 1.5.32-beta2 tools: Fix ibus start with verbose typo ui/gtk3: Fix SEGV in Xorg without IBusWaylandIM Build without X11 client/gtk2: Add a pad to the cursor height in Wayland client/wayland: Enable system xkb_keymap after IBus keymap tools: Fix infinite Return key with ibus exit in KDE Wayland client/x11: Use gdk_init() instead of gtk_init() src: Revert "Do not load en-US compose table by default" src/ibusenginesimple: Generate EN compose in class method bindings/pygobject: Call IBus.init() importing IBus engine: Update simple.xml with xkeyboard-config 2.44 Release 1.5.32-rc1 client/gtk2: Revert "Add a pad to the cursor height in Wayland" bus/engineproxy: Send FocusIn signal again after delayed FocusId property bus/engineproxy: Clear object pointers with task free ui/gtk3: Fix time lag of CandidatePanel in X11 client/wayland: Fix infinite Return key in xterm src/ibuskeyuni: Update Unicode table with keysym Release 1.5.32-rc2 joo es (1): po: Update translation (Arabic) 김인수 (1): po: Update translation (Korean) src/ibusunicode: Free Unicode data list in async done (Manish Tiwari) b14a3e56 client/wayland: Add input-method-unstable-v2.xml, virtual-keyboard-unstable-v1.xml (fujiwarat) acaa6663 client/wayland: Add Wayland input-method v2 and virtual-text v1 codes (fujiwarat) 59d50a7d client/wayland: Implement Wayland input-method unstable v2 in ibus-wayland (fujiwarat) 0d16a6e9 ui/gtk3: Update panel to work with Sway, Hyprland, COSMIC (fujiwarat) 50611357 client/wayland: Enhance D-BUs handling and popup with XIM (fujiwarat) 33da4b32 src/ibuspanelservice: Add ibus_panel_service_forward_process_key_event() (fujiwarat) 821cef0b bus/panelproxy: use va_marshaller to avoid GValue boxing #2 (fujiwarat) 15e02314 bus: Implement ForwardProcessKeyEvent D-Bus signal (fujiwarat) e27acd33 ui/gtk3: Implement virtual Wayland input-method with XIM (fujiwarat) d5e6e71a ui/gtk3: Enhance some key repeat issues in Wayland (fujiwarat) e5fc9e4e client/wayland: Implement key repeat in Wayland (fujiwarat) db6de3a0 Change GlobalShortcutKeyResponded D-Bus signal for XIM in Wayland (fujiwarat) a4c44797 ui/gtk3: Implement Super-space with XIM in Wayland (fujiwarat) a9916dc0 client/wayland: Fix unnecessary key repeat with XIM (fujiwarat) da30e1d6 client/wayland: Wayland protocol files in Makefile (fujiwarat) 7b30d32d client/wayland: Save multiple seats (fujiwarat) c22d4123 github/workflows: Replace Fedora 40 with Fedora 42 (fujiwarat) 30e05980 tools: Implement ibus start --type wayland option (fujiwarat) 33139a0d src: Ignore latch keys in accelerators and Compose (Jules Bertholet) 6b80252a Release 1.5.32-beta1 (fujiwarat) 6f6a5d94 client/wayland: Fix repeating key between focus (fujiwarat) c5748e62 src: Fix declaration errors with GCC 15 (fujiwarat) aac5446e util/IMdkit: Fix incompatible-pointer-types in TransportSW.checkAddr (fujiwarat) d039b95b src/ibuskeysyms: Fix typo IBUS_KEY_Ukranian_je (fujiwarat) 4364c53e github: Update latest issue template (fujiwarat) 414514d4 Add Overlay1_Enable to IBUS_COMPOSE_IGNORE_KEYLIST (Jules Bertholet) 18bfdf4f src/tests/runtest: Use POSIX compliant redirection (Diego Nieto Cid) c50d0d5c client/wayland: Copy system xkb_keymap for compose keys (fujiwarat) 3ea43b74 po: Update translation (Kabyle) (ButterflyOfFire) 04a70004 po: Update translation (Indonesian) (Andika Triwidada) 17476a99 po: Update translation (Chinese (Simplified) (zh_CN)) (Boyuan Yang) 9d748f27 po: Update translation (Japanese) (fujiwarat) f4b4fd07 ui/gtk3: Update copyright in about dialog (fujiwarat) 3d6d4b2e src/ibusenginesimple: Keep compose preedit with wrong sequence (fujiwarat) 486799f2 src: Do not load en-US compose table by default (fujiwarat) 28b357d9 Release 1.5.32-beta2 (fujiwarat) 70b96f91 tools: Fix ibus start with verbose typo (fujiwarat) 33896801 ui/gtk3: Fix SEGV in Xorg without IBusWaylandIM (fujiwarat) fb4d7baf Build without X11 (fujiwarat) 63edfd89 client/gtk2: Add a pad to the cursor height in Wayland (fujiwarat) c38d82fc client/wayland: Enable system xkb_keymap after IBus keymap (fujiwarat) b835c0d1 tools: Fix infinite Return key with ibus exit in KDE Wayland (fujiwarat) 719142e7 client/x11: Use gdk_init() instead of gtk_init() (fujiwarat) b185b211 src: Revert "Do not load en-US compose table by default" (fujiwarat) 09ea0697 src/ibusenginesimple: Generate EN compose in class method (fujiwarat) 8490abc3 bindings/pygobject: Call IBus.init() importing IBus (fujiwarat) 98a73849 po: Update translation (German) (Mike FABIAN) 6b3800bb po: Update translation (Swedish) (Luna Jernberg) 29a9c609 po: Update translation (Korean, Swedish) (Weblate Translation Memory) 11cbe041 po: Update translation (Korean) (김인수) 52aabd74 po: Update translation (Polish) (Piotr Drąg) 686479e6 po: Update translation (Arabic) (joo es) c66fdffb po: Update translation (Italian) (Salvatore Cocuzza) 37348b10 po: Update translation (Kabyle) (ButterflyOfFire) f02dfd4a po: Update translation (Ukrainian) (Yuri Chornoivan) 08360206 engine: Update simple.xml with xkeyboard-config 2.44 (fujiwarat) fb9769da Release 1.5.32-rc1 (fujiwarat) fcaecb72 client/gtk2: Revert "Add a pad to the cursor height in Wayland" (fujiwarat) 646cf459 bus/inputcontext: Use the correct string marshaller (Ludovico de Nittis) 67fbd9ad bus/engineproxy: Send FocusIn signal again after delayed FocusId property (fujiwarat) 0c086223 bus/engineproxy: Clear object pointers with task free (fujiwarat) acccc9f4 ui/gtk3: Fix time lag of CandidatePanel in X11 (fujiwarat) 6ac61886 client/wayland: Fix infinite Return key in xterm (fujiwarat) 1f35eaa7 src/ibuskeyuni: Update Unicode table with keysym (fujiwarat) 866c9357 po: Update translation (Portuguese (Brazil)) (Rafael Fontenelle) 25ed1b9e po: Update translation (Georgian) (Weblate Translation Memory) f88cb1d3 po: Update translation (Georgian) (Temuri Doghonadze) 48a882eb Release 1.5.32-rc2 (fujiwarat) 0fd4e408ibus-1.5.32/README0000644000000000000000000000101614775216466007073 IBus - Input Bus Introduction === IBus is an Intelligent Input Bus. It is a new input framework for Linux OS. It provides full featured and user friendly input method user interface. It also may help developers to develop input method easily. How to build & test IBus === ibus-setup: It is a gtk program to enable and configure ibus. ibus: It is ibus daemon. hotkeys: Super + Space: Change input method. For more detail please refer to https://github.com/ibus/ibus/wiki/ReadMe . Peng Huang ibus-1.5.32/compile0000755000000000000000000001670514775216752007602 #! /bin/sh # Wrapper for compilers which do not understand '-c -o'. scriptversion=2024-06-19.01; # UTC # Copyright (C) 1999-2024 Free Software Foundation, Inc. # Written by Tom Tromey . # # 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, 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, see . # 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. # This file is maintained in Automake, please report # bugs to or send patches to # . nl=' ' # We need space, tab and new line, in precisely that order. Quoting is # there to prevent tools from complaining about whitespace usage. IFS=" "" $nl" file_conv= # func_file_conv build_file lazy # Convert a $build file to $host form and store it in $file # Currently only supports Windows hosts. If the determined conversion # type is listed in (the comma separated) LAZY, no conversion will # take place. func_file_conv () { file=$1 case $file in / | /[!/]*) # absolute file, and not a UNC file if test -z "$file_conv"; then # lazily determine how to convert abs files case `uname -s` in MINGW*) file_conv=mingw ;; CYGWIN* | MSYS*) file_conv=cygwin ;; *) file_conv=wine ;; esac fi case $file_conv/,$2, in *,$file_conv,*) ;; mingw/*) file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` ;; cygwin/* | msys/*) file=`cygpath -m "$file" || echo "$file"` ;; wine/*) file=`winepath -w "$file" || echo "$file"` ;; esac ;; esac } # func_cl_dashL linkdir # Make cl look for libraries in LINKDIR func_cl_dashL () { func_file_conv "$1" if test -z "$lib_path"; then lib_path=$file else lib_path="$lib_path;$file" fi linker_opts="$linker_opts -LIBPATH:$file" } # func_cl_dashl library # Do a library search-path lookup for cl func_cl_dashl () { lib=$1 found=no save_IFS=$IFS IFS=';' for dir in $lib_path $LIB do IFS=$save_IFS if $shared && test -f "$dir/$lib.dll.lib"; then found=yes lib=$dir/$lib.dll.lib break fi if test -f "$dir/$lib.lib"; then found=yes lib=$dir/$lib.lib break fi if test -f "$dir/lib$lib.a"; then found=yes lib=$dir/lib$lib.a break fi done IFS=$save_IFS if test "$found" != yes; then lib=$lib.lib fi } # func_cl_wrapper cl arg... # Adjust compile command to suit cl func_cl_wrapper () { # Assume a capable shell lib_path= shared=: linker_opts= for arg do if test -n "$eat"; then eat= else case $1 in -o) # configure might choose to run compile as 'compile cc -o foo foo.c'. eat=1 case $2 in *.o | *.lo | *.[oO][bB][jJ]) func_file_conv "$2" set x "$@" -Fo"$file" shift ;; *) func_file_conv "$2" set x "$@" -Fe"$file" shift ;; esac ;; -I) eat=1 func_file_conv "$2" mingw set x "$@" -I"$file" shift ;; -I*) func_file_conv "${1#-I}" mingw set x "$@" -I"$file" shift ;; -l) eat=1 func_cl_dashl "$2" set x "$@" "$lib" shift ;; -l*) func_cl_dashl "${1#-l}" set x "$@" "$lib" shift ;; -L) eat=1 func_cl_dashL "$2" ;; -L*) func_cl_dashL "${1#-L}" ;; -static) shared=false ;; -Wl,*) arg=${1#-Wl,} save_ifs="$IFS"; IFS=',' for flag in $arg; do IFS="$save_ifs" linker_opts="$linker_opts $flag" done IFS="$save_ifs" ;; -Xlinker) eat=1 linker_opts="$linker_opts $2" ;; -*) set x "$@" "$1" shift ;; *.cc | *.CC | *.cxx | *.CXX | *.[cC]++) func_file_conv "$1" set x "$@" -Tp"$file" shift ;; *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO]) func_file_conv "$1" mingw set x "$@" "$file" shift ;; *) set x "$@" "$1" shift ;; esac fi shift done if test -n "$linker_opts"; then linker_opts="-link$linker_opts" fi exec "$@" $linker_opts exit 1 } eat= case $1 in '') echo "$0: No command. Try '$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: compile [--help] [--version] PROGRAM [ARGS] Wrapper for compilers which do not understand '-c -o'. Remove '-o dest.o' from ARGS, run PROGRAM with the remaining arguments, and rename the output as expected. If you are trying to build a whole package this is not the right script to run: please start by reading the file 'INSTALL'. Report bugs to . GNU Automake home page: . General help using GNU software: . EOF exit $? ;; -v | --v*) echo "compile (GNU Automake) $scriptversion" exit $? ;; cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \ clang-cl | *[/\\]clang-cl | clang-cl.exe | *[/\\]clang-cl.exe | \ icl | *[/\\]icl | icl.exe | *[/\\]icl.exe ) func_cl_wrapper "$@" # Doesn't return... ;; esac ofile= cfile= for arg do if test -n "$eat"; then eat= else case $1 in -o) # configure might choose to run compile as 'compile cc -o foo foo.c'. # So we strip '-o arg' only if arg is an object. eat=1 case $2 in *.o | *.obj) ofile=$2 ;; *) set x "$@" -o "$2" shift ;; esac ;; *.c) cfile=$1 set x "$@" "$1" shift ;; *) set x "$@" "$1" shift ;; esac fi shift done if test -z "$ofile" || test -z "$cfile"; then # If no '-o' option was seen then we might have been invoked from a # pattern rule where we don't need one. That is ok -- this is a # normal compilation that the losing compiler can handle. If no # '.c' file was seen then we are probably linking. That is also # ok. exec "$@" fi # Name of file we expect compiler to create. cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'` # Create the lock directory. # Note: use '[/\\:.-]' here to ensure that we don't use the same name # that we are using for the .o file. Also, base the name on the expected # object file name, since that is what matters with a parallel build. lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d while true; do if mkdir "$lockdir" >/dev/null 2>&1; then break fi sleep 1 done # FIXME: race condition here if user kills between mkdir and trap. trap "rmdir '$lockdir'; exit 1" 1 2 15 # Run the compile. "$@" ret=$? if test -f "$cofile"; then test "$cofile" = "$ofile" || mv "$cofile" "$ofile" elif test -f "${cofile}bj"; then test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile" fi rmdir "$lockdir" exit $ret # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: ibus-1.5.32/config.guess0000755000000000000000000014307214775216752010542 #!/usr/bin/sh # Attempt to guess a canonical system name. # Copyright 1992-2024 Free Software Foundation, Inc. # shellcheck disable=SC2006,SC2268 # see below for rationale timestamp='2024-07-27' # This file 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 3 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, see . # # 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. This Exception is an additional permission under section 7 # of the GNU General Public License, version 3 ("GPLv3"). # # Originally written by Per Bothner; maintained since 2000 by Ben Elliston. # # You can get the latest version of this script from: # https://git.savannah.gnu.org/cgit/config.git/plain/config.guess # # Please send patches to . # The "shellcheck disable" line above the timestamp inhibits complaints # about features and limitations of the classic Bourne shell that were # superseded or lifted in POSIX. However, this script identifies a wide # variety of pre-POSIX systems that do not have POSIX shells at all, and # even some reasonably current systems (Solaris 10 as case-in-point) still # have a pre-POSIX /bin/sh. me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] Output the configuration name of the system '$me' is run on. Options: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.guess ($timestamp) Originally written by Per Bothner. Copyright 1992-2024 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try '$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit ;; --version | -v ) echo "$version" ; exit ;; --help | --h* | -h ) echo "$usage"; exit ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" >&2 exit 1 ;; * ) break ;; esac done if test $# != 0; then echo "$me: too many arguments$help" >&2 exit 1 fi # Just in case it came from the environment. GUESS= # CC_FOR_BUILD -- compiler used by this script. Note that the use of a # compiler to aid in system detection is discouraged as it requires # temporary files to be created and, as you can see below, it is a # headache to deal with in a portable fashion. # Historically, 'CC_FOR_BUILD' used to be named 'HOST_CC'. We still # use 'HOST_CC' if defined, but it is deprecated. # Portable tmp directory creation inspired by the Autoconf team. tmp= # shellcheck disable=SC2172 trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15 set_cc_for_build() { # prevent multiple calls if $tmp is already set test "$tmp" && return 0 : "${TMPDIR=/tmp}" # shellcheck disable=SC2039,SC3028 { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } || { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } || { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } dummy=$tmp/dummy case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in ,,) echo "int x;" > "$dummy.c" for driver in cc gcc c17 c99 c89 ; do if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then CC_FOR_BUILD=$driver break fi done if test x"$CC_FOR_BUILD" = x ; then CC_FOR_BUILD=no_compiler_found fi ;; ,,*) CC_FOR_BUILD=$CC ;; ,*,*) CC_FOR_BUILD=$HOST_CC ;; esac } # This is needed to find uname on a Pyramid OSx when run in the BSD universe. # (ghazi@noc.rutgers.edu 1994-08-24) if test -f /.attbin/uname ; then PATH=$PATH:/.attbin ; export PATH fi UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown case $UNAME_SYSTEM in Linux|GNU|GNU/*) LIBC=unknown set_cc_for_build cat <<-EOF > "$dummy.c" #if defined(__ANDROID__) LIBC=android #else #include #if defined(__UCLIBC__) LIBC=uclibc #elif defined(__dietlibc__) LIBC=dietlibc #elif defined(__GLIBC__) LIBC=gnu #elif defined(__LLVM_LIBC__) LIBC=llvm #else #include /* First heuristic to detect musl libc. */ #ifdef __DEFINED_va_list LIBC=musl #endif #endif #endif EOF cc_set_libc=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` eval "$cc_set_libc" # Second heuristic to detect musl libc. if [ "$LIBC" = unknown ] && command -v ldd >/dev/null && ldd --version 2>&1 | grep -q ^musl; then LIBC=musl fi # If the system lacks a compiler, then just pick glibc. # We could probably try harder. if [ "$LIBC" = unknown ]; then LIBC=gnu fi ;; esac # Note: order is significant - the case branches are not exclusive. case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in *:NetBSD:*:*) # NetBSD (nbsd) targets should (where applicable) match one or # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently # switched to ELF, *-*-netbsd* would select the old # object file format. This provides both forward # compatibility and a consistent mechanism for selecting the # object file format. # # Note: NetBSD doesn't particularly care about the vendor # portion of the name. We always set it to "unknown". UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ /sbin/sysctl -n hw.machine_arch 2>/dev/null || \ /usr/sbin/sysctl -n hw.machine_arch 2>/dev/null || \ echo unknown)` case $UNAME_MACHINE_ARCH in aarch64eb) machine=aarch64_be-unknown ;; armeb) machine=armeb-unknown ;; arm*) machine=arm-unknown ;; sh3el) machine=shl-unknown ;; sh3eb) machine=sh-unknown ;; sh5el) machine=sh5le-unknown ;; earmv*) arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'` endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'` machine=${arch}${endian}-unknown ;; *) machine=$UNAME_MACHINE_ARCH-unknown ;; esac # The Operating System including object format, if it has switched # to ELF recently (or will in the future) and ABI. case $UNAME_MACHINE_ARCH in earm*) os=netbsdelf ;; arm*|i386|m68k|ns32k|sh3*|sparc|vax) set_cc_for_build if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ELF__ then # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). # Return netbsd for either. FIX? os=netbsd else os=netbsdelf fi ;; *) os=netbsd ;; esac # Determine ABI tags. case $UNAME_MACHINE_ARCH in earm*) expr='s/^earmv[0-9]/-eabi/;s/eb$//' abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"` ;; esac # The OS release # Debian GNU/NetBSD machines have a different userland, and # thus, need a distinct triplet. However, they do not need # kernel version information, so it can be replaced with a # suitable tag, in the style of linux-gnu. case $UNAME_VERSION in Debian*) release='-gnu' ;; *) release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2` ;; esac # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: # contains redundant information, the shorter form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. GUESS=$machine-${os}${release}${abi-} ;; *:Bitrig:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` GUESS=$UNAME_MACHINE_ARCH-unknown-bitrig$UNAME_RELEASE ;; *:OpenBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` GUESS=$UNAME_MACHINE_ARCH-unknown-openbsd$UNAME_RELEASE ;; *:SecBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/SecBSD.//'` GUESS=$UNAME_MACHINE_ARCH-unknown-secbsd$UNAME_RELEASE ;; *:LibertyBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` GUESS=$UNAME_MACHINE_ARCH-unknown-libertybsd$UNAME_RELEASE ;; *:MidnightBSD:*:*) GUESS=$UNAME_MACHINE-unknown-midnightbsd$UNAME_RELEASE ;; *:ekkoBSD:*:*) GUESS=$UNAME_MACHINE-unknown-ekkobsd$UNAME_RELEASE ;; *:SolidBSD:*:*) GUESS=$UNAME_MACHINE-unknown-solidbsd$UNAME_RELEASE ;; *:OS108:*:*) GUESS=$UNAME_MACHINE-unknown-os108_$UNAME_RELEASE ;; macppc:MirBSD:*:*) GUESS=powerpc-unknown-mirbsd$UNAME_RELEASE ;; *:MirBSD:*:*) GUESS=$UNAME_MACHINE-unknown-mirbsd$UNAME_RELEASE ;; *:Sortix:*:*) GUESS=$UNAME_MACHINE-unknown-sortix ;; *:Twizzler:*:*) GUESS=$UNAME_MACHINE-unknown-twizzler ;; *:Redox:*:*) GUESS=$UNAME_MACHINE-unknown-redox ;; mips:OSF1:*.*) GUESS=mips-dec-osf1 ;; alpha:OSF1:*:*) # Reset EXIT trap before exiting to avoid spurious non-zero exit code. trap '' 0 case $UNAME_RELEASE in *4.0) UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` ;; *5.*) UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` ;; esac # According to Compaq, /usr/sbin/psrinfo has been available on # OSF/1 and Tru64 systems produced since 1995. I hope that # covers most systems running today. This code pipes the CPU # types through head -n 1, so we only detect the type of CPU 0. ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` case $ALPHA_CPU_TYPE in "EV4 (21064)") UNAME_MACHINE=alpha ;; "EV4.5 (21064)") UNAME_MACHINE=alpha ;; "LCA4 (21066/21068)") UNAME_MACHINE=alpha ;; "EV5 (21164)") UNAME_MACHINE=alphaev5 ;; "EV5.6 (21164A)") UNAME_MACHINE=alphaev56 ;; "EV5.6 (21164PC)") UNAME_MACHINE=alphapca56 ;; "EV5.7 (21164PC)") UNAME_MACHINE=alphapca57 ;; "EV6 (21264)") UNAME_MACHINE=alphaev6 ;; "EV6.7 (21264A)") UNAME_MACHINE=alphaev67 ;; "EV6.8CB (21264C)") UNAME_MACHINE=alphaev68 ;; "EV6.8AL (21264B)") UNAME_MACHINE=alphaev68 ;; "EV6.8CX (21264D)") UNAME_MACHINE=alphaev68 ;; "EV6.9A (21264/EV69A)") UNAME_MACHINE=alphaev69 ;; "EV7 (21364)") UNAME_MACHINE=alphaev7 ;; "EV7.9 (21364A)") UNAME_MACHINE=alphaev79 ;; esac # A Pn.n version is a patched version. # A Vn.n version is a released version. # A Tn.n version is a released field test version. # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. OSF_REL=`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` GUESS=$UNAME_MACHINE-dec-osf$OSF_REL ;; Amiga*:UNIX_System_V:4.0:*) GUESS=m68k-unknown-sysv4 ;; *:[Aa]miga[Oo][Ss]:*:*) GUESS=$UNAME_MACHINE-unknown-amigaos ;; *:[Mm]orph[Oo][Ss]:*:*) GUESS=$UNAME_MACHINE-unknown-morphos ;; *:OS/390:*:*) GUESS=i370-ibm-openedition ;; *:z/VM:*:*) GUESS=s390-ibm-zvmoe ;; *:OS400:*:*) GUESS=powerpc-ibm-os400 ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) GUESS=arm-acorn-riscix$UNAME_RELEASE ;; arm*:riscos:*:*|arm*:RISCOS:*:*) GUESS=arm-unknown-riscos ;; SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) GUESS=hppa1.1-hitachi-hiuxmpp ;; Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. case `(/bin/universe) 2>/dev/null` in att) GUESS=pyramid-pyramid-sysv3 ;; *) GUESS=pyramid-pyramid-bsd ;; esac ;; NILE*:*:*:dcosx) GUESS=pyramid-pyramid-svr4 ;; DRS?6000:unix:4.0:6*) GUESS=sparc-icl-nx6 ;; DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) case `/usr/bin/uname -p` in sparc) GUESS=sparc-icl-nx7 ;; esac ;; s390x:SunOS:*:*) SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` GUESS=$UNAME_MACHINE-ibm-solaris2$SUN_REL ;; sun4H:SunOS:5.*:*) SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` GUESS=sparc-hal-solaris2$SUN_REL ;; sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` GUESS=sparc-sun-solaris2$SUN_REL ;; i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) GUESS=i386-pc-auroraux$UNAME_RELEASE ;; i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) set_cc_for_build SUN_ARCH=i386 # If there is a compiler, see if it is configured for 64-bit objects. # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. # This test works for both compilers. if test "$CC_FOR_BUILD" != no_compiler_found; then if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ (CCOPTS="" $CC_FOR_BUILD -m64 -E - 2>/dev/null) | \ grep IS_64BIT_ARCH >/dev/null then SUN_ARCH=x86_64 fi fi SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` GUESS=$SUN_ARCH-pc-solaris2$SUN_REL ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize # SunOS6. Hard to guess exactly what SunOS6 will be like, but # it's likely to be more like Solaris than SunOS4. SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` GUESS=sparc-sun-solaris3$SUN_REL ;; sun4*:SunOS:*:*) case `/usr/bin/arch -k` in Series*|S4*) UNAME_RELEASE=`uname -v` ;; esac # Japanese Language versions have a version number like '4.1.3-JL'. SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/'` GUESS=sparc-sun-sunos$SUN_REL ;; sun3*:SunOS:*:*) GUESS=m68k-sun-sunos$UNAME_RELEASE ;; sun*:*:4.2BSD:*) UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3 case `/bin/arch` in sun3) GUESS=m68k-sun-sunos$UNAME_RELEASE ;; sun4) GUESS=sparc-sun-sunos$UNAME_RELEASE ;; esac ;; aushp:SunOS:*:*) GUESS=sparc-auspex-sunos$UNAME_RELEASE ;; # The situation for MiNT is a little confusing. The machine name # can be virtually everything (everything which is not # "atarist" or "atariste" at least should have a processor # > m68000). The system name ranges from "MiNT" over "FreeMiNT" # to the lowercase version "mint" (or "freemint"). Finally # the system name "TOS" denotes a system which is actually not # MiNT. But MiNT is downward compatible to TOS, so this should # be no problem. atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) GUESS=m68k-atari-mint$UNAME_RELEASE ;; atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) GUESS=m68k-atari-mint$UNAME_RELEASE ;; *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) GUESS=m68k-atari-mint$UNAME_RELEASE ;; milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) GUESS=m68k-milan-mint$UNAME_RELEASE ;; hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) GUESS=m68k-hades-mint$UNAME_RELEASE ;; *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) GUESS=m68k-unknown-mint$UNAME_RELEASE ;; m68k:machten:*:*) GUESS=m68k-apple-machten$UNAME_RELEASE ;; powerpc:machten:*:*) GUESS=powerpc-apple-machten$UNAME_RELEASE ;; RISC*:Mach:*:*) GUESS=mips-dec-mach_bsd4.3 ;; RISC*:ULTRIX:*:*) GUESS=mips-dec-ultrix$UNAME_RELEASE ;; VAX*:ULTRIX*:*:*) GUESS=vax-dec-ultrix$UNAME_RELEASE ;; 2020:CLIX:*:* | 2430:CLIX:*:*) GUESS=clipper-intergraph-clix$UNAME_RELEASE ;; mips:*:*:UMIPS | mips:*:*:RISCos) set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #ifdef __cplusplus #include /* for printf() prototype */ int main (int argc, char *argv[]) { #else int main (argc, argv) int argc; char *argv[]; { #endif #if defined (host_mips) && defined (MIPSEB) #if defined (SYSTYPE_SYSV) printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_SVR4) printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0); #endif #endif exit (-1); } EOF $CC_FOR_BUILD -o "$dummy" "$dummy.c" && dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` && SYSTEM_NAME=`"$dummy" "$dummyarg"` && { echo "$SYSTEM_NAME"; exit; } GUESS=mips-mips-riscos$UNAME_RELEASE ;; Motorola:PowerMAX_OS:*:*) GUESS=powerpc-motorola-powermax ;; Motorola:*:4.3:PL8-*) GUESS=powerpc-harris-powermax ;; Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) GUESS=powerpc-harris-powermax ;; Night_Hawk:Power_UNIX:*:*) GUESS=powerpc-harris-powerunix ;; m88k:CX/UX:7*:*) GUESS=m88k-harris-cxux7 ;; m88k:*:4*:R4*) GUESS=m88k-motorola-sysv4 ;; m88k:*:3*:R3*) GUESS=m88k-motorola-sysv3 ;; AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110 then if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \ test "$TARGET_BINARY_INTERFACE"x = x then GUESS=m88k-dg-dgux$UNAME_RELEASE else GUESS=m88k-dg-dguxbcs$UNAME_RELEASE fi else GUESS=i586-dg-dgux$UNAME_RELEASE fi ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) GUESS=m88k-dolphin-sysv3 ;; M88*:*:R3*:*) # Delta 88k system running SVR3 GUESS=m88k-motorola-sysv3 ;; XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) GUESS=m88k-tektronix-sysv3 ;; Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) GUESS=m68k-tektronix-bsd ;; *:IRIX*:*:*) IRIX_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/g'` GUESS=mips-sgi-irix$IRIX_REL ;; ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. GUESS=romp-ibm-aix # uname -m gives an 8 hex-code CPU id ;; # Note that: echo "'`uname -s`'" gives 'AIX ' i*86:AIX:*:*) GUESS=i386-ibm-aix ;; ia64:AIX:*:*) if test -x /usr/bin/oslevel ; then IBM_REV=`/usr/bin/oslevel` else IBM_REV=$UNAME_VERSION.$UNAME_RELEASE fi GUESS=$UNAME_MACHINE-ibm-aix$IBM_REV ;; *:AIX:2:3) if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #include int main () { if (!__power_pc()) exit(1); puts("powerpc-ibm-aix3.2.5"); exit(0); } EOF if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` then GUESS=$SYSTEM_NAME else GUESS=rs6000-ibm-aix3.2.5 fi elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then GUESS=rs6000-ibm-aix3.2.4 else GUESS=rs6000-ibm-aix3.2 fi ;; *:AIX:*:[4567]) IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then IBM_ARCH=rs6000 else IBM_ARCH=powerpc fi if test -x /usr/bin/lslpp ; then IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | \ awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` else IBM_REV=$UNAME_VERSION.$UNAME_RELEASE fi GUESS=$IBM_ARCH-ibm-aix$IBM_REV ;; *:AIX:*:*) GUESS=rs6000-ibm-aix ;; ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*) GUESS=romp-ibm-bsd4.4 ;; ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and GUESS=romp-ibm-bsd$UNAME_RELEASE # 4.3 with uname added to ;; # report: romp-ibm BSD 4.3 *:BOSX:*:*) GUESS=rs6000-bull-bosx ;; DPX/2?00:B.O.S.:*:*) GUESS=m68k-bull-sysv3 ;; 9000/[34]??:4.3bsd:1.*:*) GUESS=m68k-hp-bsd ;; hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) GUESS=m68k-hp-bsd4.4 ;; 9000/[34678]??:HP-UX:*:*) HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'` case $UNAME_MACHINE in 9000/31?) HP_ARCH=m68000 ;; 9000/[34]??) HP_ARCH=m68k ;; 9000/[678][0-9][0-9]) if test -x /usr/bin/getconf; then sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` case $sc_cpu_version in 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 532) # CPU_PA_RISC2_0 case $sc_kernel_bits in 32) HP_ARCH=hppa2.0n ;; 64) HP_ARCH=hppa2.0w ;; '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 esac ;; esac fi if test "$HP_ARCH" = ""; then set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #define _HPUX_SOURCE #include #include int main () { #if defined(_SC_KERNEL_BITS) long bits = sysconf(_SC_KERNEL_BITS); #endif long cpu = sysconf (_SC_CPU_VERSION); switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0"); break; case CPU_PA_RISC1_1: puts ("hppa1.1"); break; case CPU_PA_RISC2_0: #if defined(_SC_KERNEL_BITS) switch (bits) { case 64: puts ("hppa2.0w"); break; case 32: puts ("hppa2.0n"); break; default: puts ("hppa2.0"); break; } break; #else /* !defined(_SC_KERNEL_BITS) */ puts ("hppa2.0"); break; #endif default: puts ("hppa1.0"); break; } exit (0); } EOF (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"` test -z "$HP_ARCH" && HP_ARCH=hppa fi ;; esac if test "$HP_ARCH" = hppa2.0w then set_cc_for_build # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler # generating 64-bit code. GNU and HP use different nomenclature: # # $ CC_FOR_BUILD=cc ./config.guess # => hppa2.0w-hp-hpux11.23 # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess # => hppa64-hp-hpux11.23 if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | grep -q __LP64__ then HP_ARCH=hppa2.0w else HP_ARCH=hppa64 fi fi GUESS=$HP_ARCH-hp-hpux$HPUX_REV ;; ia64:HP-UX:*:*) HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'` GUESS=ia64-hp-hpux$HPUX_REV ;; 3050*:HI-UX:*:*) set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #include int main () { long cpu = sysconf (_SC_CPU_VERSION); /* The order matters, because CPU_IS_HP_MC68K erroneously returns true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct results, however. */ if (CPU_IS_PA_RISC (cpu)) { switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; default: puts ("hppa-hitachi-hiuxwe2"); break; } } else if (CPU_IS_HP_MC68K (cpu)) puts ("m68k-hitachi-hiuxwe2"); else puts ("unknown-hitachi-hiuxwe2"); exit (0); } EOF $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` && { echo "$SYSTEM_NAME"; exit; } GUESS=unknown-hitachi-hiuxwe2 ;; 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*) GUESS=hppa1.1-hp-bsd ;; 9000/8??:4.3bsd:*:*) GUESS=hppa1.0-hp-bsd ;; *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) GUESS=hppa1.0-hp-mpeix ;; hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*) GUESS=hppa1.1-hp-osf ;; hp8??:OSF1:*:*) GUESS=hppa1.0-hp-osf ;; i*86:OSF1:*:*) if test -x /usr/sbin/sysversion ; then GUESS=$UNAME_MACHINE-unknown-osf1mk else GUESS=$UNAME_MACHINE-unknown-osf1 fi ;; parisc*:Lites*:*:*) GUESS=hppa1.1-hp-lites ;; C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) GUESS=c1-convex-bsd ;; C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi exit ;; C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) GUESS=c34-convex-bsd ;; C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) GUESS=c38-convex-bsd ;; C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) GUESS=c4-convex-bsd ;; CRAY*Y-MP:*:*:*) CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` GUESS=ymp-cray-unicos$CRAY_REL ;; CRAY*[A-Z]90:*:*:*) echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ -e 's/\.[^.]*$/.X/' exit ;; CRAY*TS:*:*:*) CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` GUESS=t90-cray-unicos$CRAY_REL ;; CRAY*T3E:*:*:*) CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` GUESS=alphaev5-cray-unicosmk$CRAY_REL ;; CRAY*SV1:*:*:*) CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` GUESS=sv1-cray-unicos$CRAY_REL ;; *:UNICOS/mp:*:*) CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` GUESS=craynv-cray-unicosmp$CRAY_REL ;; F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'` GUESS=${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL} ;; 5000:UNIX_System_V:4.*:*) FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` GUESS=sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL} ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) GUESS=$UNAME_MACHINE-pc-bsdi$UNAME_RELEASE ;; sparc*:BSD/OS:*:*) GUESS=sparc-unknown-bsdi$UNAME_RELEASE ;; *:BSD/OS:*:*) GUESS=$UNAME_MACHINE-unknown-bsdi$UNAME_RELEASE ;; arm:FreeBSD:*:*) UNAME_PROCESSOR=`uname -p` set_cc_for_build if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_PCS_VFP then FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabi else FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabihf fi ;; *:FreeBSD:*:*) UNAME_PROCESSOR=`uname -p` case $UNAME_PROCESSOR in amd64) UNAME_PROCESSOR=x86_64 ;; i386) UNAME_PROCESSOR=i586 ;; esac FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL ;; i*:CYGWIN*:*) GUESS=$UNAME_MACHINE-pc-cygwin ;; *:MINGW64*:*) GUESS=$UNAME_MACHINE-pc-mingw64 ;; *:MINGW*:*) GUESS=$UNAME_MACHINE-pc-mingw32 ;; *:MSYS*:*) GUESS=$UNAME_MACHINE-pc-msys ;; i*:PW*:*) GUESS=$UNAME_MACHINE-pc-pw32 ;; *:SerenityOS:*:*) GUESS=$UNAME_MACHINE-pc-serenity ;; *:Interix*:*) case $UNAME_MACHINE in x86) GUESS=i586-pc-interix$UNAME_RELEASE ;; authenticamd | genuineintel | EM64T) GUESS=x86_64-unknown-interix$UNAME_RELEASE ;; IA64) GUESS=ia64-unknown-interix$UNAME_RELEASE ;; esac ;; i*:UWIN*:*) GUESS=$UNAME_MACHINE-pc-uwin ;; amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) GUESS=x86_64-pc-cygwin ;; prep*:SunOS:5.*:*) SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` GUESS=powerpcle-unknown-solaris2$SUN_REL ;; *:GNU:*:*) # the GNU system GNU_ARCH=`echo "$UNAME_MACHINE" | sed -e 's,[-/].*$,,'` GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's,/.*$,,'` GUESS=$GNU_ARCH-unknown-$LIBC$GNU_REL ;; *:GNU/*:*:*) # other systems with GNU libc and userland GNU_SYS=`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"` GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` GUESS=$UNAME_MACHINE-unknown-$GNU_SYS$GNU_REL-$LIBC ;; x86_64:[Mm]anagarm:*:*|i?86:[Mm]anagarm:*:*) GUESS="$UNAME_MACHINE-pc-managarm-mlibc" ;; *:[Mm]anagarm:*:*) GUESS="$UNAME_MACHINE-unknown-managarm-mlibc" ;; *:Minix:*:*) GUESS=$UNAME_MACHINE-unknown-minix ;; aarch64:Linux:*:*) set_cc_for_build CPU=$UNAME_MACHINE LIBCABI=$LIBC if test "$CC_FOR_BUILD" != no_compiler_found; then ABI=64 sed 's/^ //' << EOF > "$dummy.c" #ifdef __ARM_EABI__ #ifdef __ARM_PCS_VFP ABI=eabihf #else ABI=eabi #endif #endif EOF cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | sed 's, ,,g'` eval "$cc_set_abi" case $ABI in eabi | eabihf) CPU=armv8l; LIBCABI=$LIBC$ABI ;; esac fi GUESS=$CPU-unknown-linux-$LIBCABI ;; aarch64_be:Linux:*:*) UNAME_MACHINE=aarch64_be GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in EV5) UNAME_MACHINE=alphaev5 ;; EV56) UNAME_MACHINE=alphaev56 ;; PCA56) UNAME_MACHINE=alphapca56 ;; PCA57) UNAME_MACHINE=alphapca56 ;; EV6) UNAME_MACHINE=alphaev6 ;; EV67) UNAME_MACHINE=alphaev67 ;; EV68*) UNAME_MACHINE=alphaev68 ;; esac objdump --private-headers /bin/sh | grep -q ld.so.1 if test "$?" = 0 ; then LIBC=gnulibc1 ; fi GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; arc:Linux:*:* | arceb:Linux:*:* | arc32:Linux:*:* | arc64:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; arm*:Linux:*:*) set_cc_for_build if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_EABI__ then GUESS=$UNAME_MACHINE-unknown-linux-$LIBC else if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_PCS_VFP then GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabi else GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabihf fi fi ;; avr32*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; cris:Linux:*:*) GUESS=$UNAME_MACHINE-axis-linux-$LIBC ;; crisv32:Linux:*:*) GUESS=$UNAME_MACHINE-axis-linux-$LIBC ;; e2k:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; frv:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; hexagon:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; i*86:Linux:*:*) GUESS=$UNAME_MACHINE-pc-linux-$LIBC ;; ia64:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; k1om:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; kvx:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; kvx:cos:*:*) GUESS=$UNAME_MACHINE-unknown-cos ;; kvx:mbr:*:*) GUESS=$UNAME_MACHINE-unknown-mbr ;; loongarch32:Linux:*:* | loongarch64:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; m32r*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; m68*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; mips:Linux:*:* | mips64:Linux:*:*) set_cc_for_build IS_GLIBC=0 test x"${LIBC}" = xgnu && IS_GLIBC=1 sed 's/^ //' << EOF > "$dummy.c" #undef CPU #undef mips #undef mipsel #undef mips64 #undef mips64el #if ${IS_GLIBC} && defined(_ABI64) LIBCABI=gnuabi64 #else #if ${IS_GLIBC} && defined(_ABIN32) LIBCABI=gnuabin32 #else LIBCABI=${LIBC} #endif #endif #if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 CPU=mipsisa64r6 #else #if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 CPU=mipsisa32r6 #else #if defined(__mips64) CPU=mips64 #else CPU=mips #endif #endif #endif #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) MIPS_ENDIAN=el #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) MIPS_ENDIAN= #else MIPS_ENDIAN= #endif #endif EOF cc_set_vars=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'` eval "$cc_set_vars" test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; } ;; mips64el:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; openrisc*:Linux:*:*) GUESS=or1k-unknown-linux-$LIBC ;; or32:Linux:*:* | or1k*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; padre:Linux:*:*) GUESS=sparc-unknown-linux-$LIBC ;; parisc64:Linux:*:* | hppa64:Linux:*:*) GUESS=hppa64-unknown-linux-$LIBC ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in PA7*) GUESS=hppa1.1-unknown-linux-$LIBC ;; PA8*) GUESS=hppa2.0-unknown-linux-$LIBC ;; *) GUESS=hppa-unknown-linux-$LIBC ;; esac ;; ppc64:Linux:*:*) GUESS=powerpc64-unknown-linux-$LIBC ;; ppc:Linux:*:*) GUESS=powerpc-unknown-linux-$LIBC ;; ppc64le:Linux:*:*) GUESS=powerpc64le-unknown-linux-$LIBC ;; ppcle:Linux:*:*) GUESS=powerpcle-unknown-linux-$LIBC ;; riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; s390:Linux:*:* | s390x:Linux:*:*) GUESS=$UNAME_MACHINE-ibm-linux-$LIBC ;; sh64*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; sh*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; sparc:Linux:*:* | sparc64:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; tile*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; vax:Linux:*:*) GUESS=$UNAME_MACHINE-dec-linux-$LIBC ;; x86_64:Linux:*:*) set_cc_for_build CPU=$UNAME_MACHINE LIBCABI=$LIBC if test "$CC_FOR_BUILD" != no_compiler_found; then ABI=64 sed 's/^ //' << EOF > "$dummy.c" #ifdef __i386__ ABI=x86 #else #ifdef __ILP32__ ABI=x32 #endif #endif EOF cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | sed 's, ,,g'` eval "$cc_set_abi" case $ABI in x86) CPU=i686 ;; x32) LIBCABI=${LIBC}x32 ;; esac fi GUESS=$CPU-pc-linux-$LIBCABI ;; xtensa*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. # earlier versions are messed up and put the nodename in both # sysname and nodename. GUESS=i386-sequent-sysv4 ;; i*86:UNIX_SV:4.2MP:2.*) # Unixware is an offshoot of SVR4, but it has its own version # number series starting with 2... # I am not positive that other SVR4 systems won't match this, # I just have to hope. -- rms. # Use sysv4.2uw... so that sysv4* matches it. GUESS=$UNAME_MACHINE-pc-sysv4.2uw$UNAME_VERSION ;; i*86:OS/2:*:*) # If we were able to find 'uname', then EMX Unix compatibility # is probably installed. GUESS=$UNAME_MACHINE-pc-os2-emx ;; i*86:XTS-300:*:STOP) GUESS=$UNAME_MACHINE-unknown-stop ;; i*86:atheos:*:*) GUESS=$UNAME_MACHINE-unknown-atheos ;; i*86:syllable:*:*) GUESS=$UNAME_MACHINE-pc-syllable ;; i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) GUESS=i386-unknown-lynxos$UNAME_RELEASE ;; i*86:*DOS:*:*) GUESS=$UNAME_MACHINE-pc-msdosdjgpp ;; i*86:*:4.*:*) UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'` if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then GUESS=$UNAME_MACHINE-univel-sysv$UNAME_REL else GUESS=$UNAME_MACHINE-pc-sysv$UNAME_REL fi ;; i*86:*:5:[678]*) # UnixWare 7.x, OpenUNIX and OpenServer 6. case `/bin/uname -X | grep "^Machine"` in *486*) UNAME_MACHINE=i486 ;; *Pentium) UNAME_MACHINE=i586 ;; *Pent*|*Celeron) UNAME_MACHINE=i686 ;; esac GUESS=$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} ;; i*86:*:3.2:*) if test -f /usr/options/cb.name; then UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ && UNAME_MACHINE=i586 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ && UNAME_MACHINE=i686 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ && UNAME_MACHINE=i686 GUESS=$UNAME_MACHINE-pc-sco$UNAME_REL else GUESS=$UNAME_MACHINE-pc-sysv32 fi ;; pc:*:*:*) # Left here for compatibility: # uname -m prints for DJGPP always 'pc', but it prints nothing about # the processor, so we play safe by assuming i586. # Note: whatever this is, it MUST be the same as what config.sub # prints for the "djgpp" host, or else GDB configure will decide that # this is a cross-build. GUESS=i586-pc-msdosdjgpp ;; Intel:Mach:3*:*) GUESS=i386-pc-mach3 ;; paragon:*:*:*) GUESS=i860-intel-osf1 ;; i860:*:4.*:*) # i860-SVR4 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then GUESS=i860-stardent-sysv$UNAME_RELEASE # Stardent Vistra i860-SVR4 else # Add other i860-SVR4 vendors below as they are discovered. GUESS=i860-unknown-sysv$UNAME_RELEASE # Unknown i860-SVR4 fi ;; mini*:CTIX:SYS*5:*) # "miniframe" GUESS=m68010-convergent-sysv ;; mc68k:UNIX:SYSTEM5:3.51m) GUESS=m68k-convergent-sysv ;; M680?0:D-NIX:5.3:*) GUESS=m68k-diab-dnix ;; M68*:*:R3V[5678]*:*) test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) OS_REL='' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4; exit; } ;; NCR*:*:4.2:* | MPRAS*:*:4.2:*) OS_REL='.3' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) GUESS=m68k-unknown-lynxos$UNAME_RELEASE ;; mc68030:UNIX_System_V:4.*:*) GUESS=m68k-atari-sysv4 ;; TSUNAMI:LynxOS:2.*:*) GUESS=sparc-unknown-lynxos$UNAME_RELEASE ;; rs6000:LynxOS:2.*:*) GUESS=rs6000-unknown-lynxos$UNAME_RELEASE ;; PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) GUESS=powerpc-unknown-lynxos$UNAME_RELEASE ;; SM[BE]S:UNIX_SV:*:*) GUESS=mips-dde-sysv$UNAME_RELEASE ;; RM*:ReliantUNIX-*:*:*) GUESS=mips-sni-sysv4 ;; RM*:SINIX-*:*:*) GUESS=mips-sni-sysv4 ;; *:SINIX-*:*:*) if uname -p 2>/dev/null >/dev/null ; then UNAME_MACHINE=`(uname -p) 2>/dev/null` GUESS=$UNAME_MACHINE-sni-sysv4 else GUESS=ns32k-sni-sysv fi ;; PENTIUM:*:4.0*:*) # Unisys 'ClearPath HMP IX 4000' SVR4/MP effort # says GUESS=i586-unisys-sysv4 ;; *:UNIX_System_V:4*:FTX*) # From Gerald Hewes . # How about differentiating between stratus architectures? -djm GUESS=hppa1.1-stratus-sysv4 ;; *:*:*:FTX*) # From seanf@swdc.stratus.com. GUESS=i860-stratus-sysv4 ;; i*86:VOS:*:*) # From Paul.Green@stratus.com. GUESS=$UNAME_MACHINE-stratus-vos ;; *:VOS:*:*) # From Paul.Green@stratus.com. GUESS=hppa1.1-stratus-vos ;; mc68*:A/UX:*:*) GUESS=m68k-apple-aux$UNAME_RELEASE ;; news*:NEWS-OS:6*:*) GUESS=mips-sony-newsos6 ;; R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) if test -d /usr/nec; then GUESS=mips-nec-sysv$UNAME_RELEASE else GUESS=mips-unknown-sysv$UNAME_RELEASE fi ;; BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. GUESS=powerpc-be-beos ;; BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. GUESS=powerpc-apple-beos ;; BePC:BeOS:*:*) # BeOS running on Intel PC compatible. GUESS=i586-pc-beos ;; BePC:Haiku:*:*) # Haiku running on Intel PC compatible. GUESS=i586-pc-haiku ;; ppc:Haiku:*:*) # Haiku running on Apple PowerPC GUESS=powerpc-apple-haiku ;; *:Haiku:*:*) # Haiku modern gcc (not bound by BeOS compat) GUESS=$UNAME_MACHINE-unknown-haiku ;; SX-4:SUPER-UX:*:*) GUESS=sx4-nec-superux$UNAME_RELEASE ;; SX-5:SUPER-UX:*:*) GUESS=sx5-nec-superux$UNAME_RELEASE ;; SX-6:SUPER-UX:*:*) GUESS=sx6-nec-superux$UNAME_RELEASE ;; SX-7:SUPER-UX:*:*) GUESS=sx7-nec-superux$UNAME_RELEASE ;; SX-8:SUPER-UX:*:*) GUESS=sx8-nec-superux$UNAME_RELEASE ;; SX-8R:SUPER-UX:*:*) GUESS=sx8r-nec-superux$UNAME_RELEASE ;; SX-ACE:SUPER-UX:*:*) GUESS=sxace-nec-superux$UNAME_RELEASE ;; Power*:Rhapsody:*:*) GUESS=powerpc-apple-rhapsody$UNAME_RELEASE ;; *:Rhapsody:*:*) GUESS=$UNAME_MACHINE-apple-rhapsody$UNAME_RELEASE ;; arm64:Darwin:*:*) GUESS=aarch64-apple-darwin$UNAME_RELEASE ;; *:Darwin:*:*) UNAME_PROCESSOR=`uname -p` case $UNAME_PROCESSOR in unknown) UNAME_PROCESSOR=powerpc ;; esac if command -v xcode-select > /dev/null 2> /dev/null && \ ! xcode-select --print-path > /dev/null 2> /dev/null ; then # Avoid executing cc if there is no toolchain installed as # cc will be a stub that puts up a graphical alert # prompting the user to install developer tools. CC_FOR_BUILD=no_compiler_found else set_cc_for_build fi if test "$CC_FOR_BUILD" != no_compiler_found; then if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ grep IS_64BIT_ARCH >/dev/null then case $UNAME_PROCESSOR in i386) UNAME_PROCESSOR=x86_64 ;; powerpc) UNAME_PROCESSOR=powerpc64 ;; esac fi # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ grep IS_PPC >/dev/null then UNAME_PROCESSOR=powerpc fi elif test "$UNAME_PROCESSOR" = i386 ; then # uname -m returns i386 or x86_64 UNAME_PROCESSOR=$UNAME_MACHINE fi GUESS=$UNAME_PROCESSOR-apple-darwin$UNAME_RELEASE ;; *:procnto*:*:* | *:QNX:[0123456789]*:*) UNAME_PROCESSOR=`uname -p` if test "$UNAME_PROCESSOR" = x86; then UNAME_PROCESSOR=i386 UNAME_MACHINE=pc fi GUESS=$UNAME_PROCESSOR-$UNAME_MACHINE-nto-qnx$UNAME_RELEASE ;; *:QNX:*:4*) GUESS=i386-pc-qnx ;; NEO-*:NONSTOP_KERNEL:*:*) GUESS=neo-tandem-nsk$UNAME_RELEASE ;; NSE-*:NONSTOP_KERNEL:*:*) GUESS=nse-tandem-nsk$UNAME_RELEASE ;; NSR-*:NONSTOP_KERNEL:*:*) GUESS=nsr-tandem-nsk$UNAME_RELEASE ;; NSV-*:NONSTOP_KERNEL:*:*) GUESS=nsv-tandem-nsk$UNAME_RELEASE ;; NSX-*:NONSTOP_KERNEL:*:*) GUESS=nsx-tandem-nsk$UNAME_RELEASE ;; *:NonStop-UX:*:*) GUESS=mips-compaq-nonstopux ;; BS2000:POSIX*:*:*) GUESS=bs2000-siemens-sysv ;; DS/*:UNIX_System_V:*:*) GUESS=$UNAME_MACHINE-$UNAME_SYSTEM-$UNAME_RELEASE ;; *:Plan9:*:*) # "uname -m" is not consistent, so use $cputype instead. 386 # is converted to i386 for consistency with other x86 # operating systems. if test "${cputype-}" = 386; then UNAME_MACHINE=i386 elif test "x${cputype-}" != x; then UNAME_MACHINE=$cputype fi GUESS=$UNAME_MACHINE-unknown-plan9 ;; *:TOPS-10:*:*) GUESS=pdp10-unknown-tops10 ;; *:TENEX:*:*) GUESS=pdp10-unknown-tenex ;; KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) GUESS=pdp10-dec-tops20 ;; XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) GUESS=pdp10-xkl-tops20 ;; *:TOPS-20:*:*) GUESS=pdp10-unknown-tops20 ;; *:ITS:*:*) GUESS=pdp10-unknown-its ;; SEI:*:*:SEIUX) GUESS=mips-sei-seiux$UNAME_RELEASE ;; *:DragonFly:*:*) DRAGONFLY_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` GUESS=$UNAME_MACHINE-unknown-dragonfly$DRAGONFLY_REL ;; *:*VMS:*:*) UNAME_MACHINE=`(uname -p) 2>/dev/null` case $UNAME_MACHINE in A*) GUESS=alpha-dec-vms ;; I*) GUESS=ia64-dec-vms ;; V*) GUESS=vax-dec-vms ;; esac ;; *:XENIX:*:SysV) GUESS=i386-pc-xenix ;; i*86:skyos:*:*) SKYOS_REL=`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'` GUESS=$UNAME_MACHINE-pc-skyos$SKYOS_REL ;; i*86:rdos:*:*) GUESS=$UNAME_MACHINE-pc-rdos ;; i*86:Fiwix:*:*) GUESS=$UNAME_MACHINE-pc-fiwix ;; *:AROS:*:*) GUESS=$UNAME_MACHINE-unknown-aros ;; x86_64:VMkernel:*:*) GUESS=$UNAME_MACHINE-unknown-esx ;; amd64:Isilon\ OneFS:*:*) GUESS=x86_64-unknown-onefs ;; *:Unleashed:*:*) GUESS=$UNAME_MACHINE-unknown-unleashed$UNAME_RELEASE ;; *:Ironclad:*:*) GUESS=$UNAME_MACHINE-unknown-ironclad ;; esac # Do we have a guess based on uname results? if test "x$GUESS" != x; then echo "$GUESS" exit fi # No uname command or uname output not recognized. set_cc_for_build cat > "$dummy.c" < #include #endif #if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) #if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) #include #if defined(_SIZE_T_) || defined(SIGLOST) #include #endif #endif #endif int main () { #if defined (sony) #if defined (MIPSEB) /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, I don't know.... */ printf ("mips-sony-bsd\n"); exit (0); #else #include printf ("m68k-sony-newsos%s\n", #ifdef NEWSOS4 "4" #else "" #endif ); exit (0); #endif #endif #if defined (NeXT) #if !defined (__ARCHITECTURE__) #define __ARCHITECTURE__ "m68k" #endif int version; version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; if (version < 4) printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); else printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); exit (0); #endif #if defined (MULTIMAX) || defined (n16) #if defined (UMAXV) printf ("ns32k-encore-sysv\n"); exit (0); #else #if defined (CMU) printf ("ns32k-encore-mach\n"); exit (0); #else printf ("ns32k-encore-bsd\n"); exit (0); #endif #endif #endif #if defined (__386BSD__) printf ("i386-pc-bsd\n"); exit (0); #endif #if defined (sequent) #if defined (i386) printf ("i386-sequent-dynix\n"); exit (0); #endif #if defined (ns32000) printf ("ns32k-sequent-dynix\n"); exit (0); #endif #endif #if defined (_SEQUENT_) struct utsname un; uname(&un); if (strncmp(un.version, "V2", 2) == 0) { printf ("i386-sequent-ptx2\n"); exit (0); } if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ printf ("i386-sequent-ptx1\n"); exit (0); } printf ("i386-sequent-ptx\n"); exit (0); #endif #if defined (vax) #if !defined (ultrix) #include #if defined (BSD) #if BSD == 43 printf ("vax-dec-bsd4.3\n"); exit (0); #else #if BSD == 199006 printf ("vax-dec-bsd4.3reno\n"); exit (0); #else printf ("vax-dec-bsd\n"); exit (0); #endif #endif #else printf ("vax-dec-bsd\n"); exit (0); #endif #else #if defined(_SIZE_T_) || defined(SIGLOST) struct utsname un; uname (&un); printf ("vax-dec-ultrix%s\n", un.release); exit (0); #else printf ("vax-dec-ultrix\n"); exit (0); #endif #endif #endif #if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) #if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) #if defined(_SIZE_T_) || defined(SIGLOST) struct utsname *un; uname (&un); printf ("mips-dec-ultrix%s\n", un.release); exit (0); #else printf ("mips-dec-ultrix\n"); exit (0); #endif #endif #endif #if defined (alliant) && defined (i860) printf ("i860-alliant-bsd\n"); exit (0); #endif exit (1); } EOF $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`"$dummy"` && { echo "$SYSTEM_NAME"; exit; } # Apollos put the system type in the environment. test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; } echo "$0: unable to guess system type" >&2 case $UNAME_MACHINE:$UNAME_SYSTEM in mips:Linux | mips64:Linux) # If we got here on MIPS GNU/Linux, output extra information. cat >&2 <&2 <&2 </dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` /bin/uname -X = `(/bin/uname -X) 2>/dev/null` hostinfo = `(hostinfo) 2>/dev/null` /bin/universe = `(/bin/universe) 2>/dev/null` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` /bin/arch = `(/bin/arch) 2>/dev/null` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` UNAME_MACHINE = "$UNAME_MACHINE" UNAME_RELEASE = "$UNAME_RELEASE" UNAME_SYSTEM = "$UNAME_SYSTEM" UNAME_VERSION = "$UNAME_VERSION" EOF fi exit 1 # Local variables: # eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: ibus-1.5.32/config.rpath0000755000000000000000000004421614775216740010527 #! /bin/sh # Output a system dependent set of variables, describing how to set the # run time search path of shared libraries in an executable. # # Copyright 1996-2016 Free Software Foundation, Inc. # Taken from GNU libtool, 2001 # Originally 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. # # The first argument passed to this file is the canonical host specification, # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM # or # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM # The environment variables CC, GCC, LDFLAGS, LD, with_gnu_ld # should be set by the caller. # # The set of defined variables is at the end of this script. # Known limitations: # - On IRIX 6.5 with CC="cc", the run time search patch must not be longer # than 256 bytes, otherwise the compiler driver will dump core. The only # known workaround is to choose shorter directory names for the build # directory and/or the installation directory. # All known linkers require a '.a' archive for static linking (except MSVC, # which needs '.lib'). libext=a shrext=.so host="$1" host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` # Code taken from libtool.m4's _LT_CC_BASENAME. for cc_temp in $CC""; do case $cc_temp in compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; \-*) ;; *) break;; esac done cc_basename=`echo "$cc_temp" | sed -e 's%^.*/%%'` # Code taken from libtool.m4's _LT_COMPILER_PIC. wl= if test "$GCC" = yes; then wl='-Wl,' else case "$host_os" in aix*) wl='-Wl,' ;; mingw* | cygwin* | pw32* | os2* | cegcc*) ;; hpux9* | hpux10* | hpux11*) wl='-Wl,' ;; irix5* | irix6* | nonstopux*) wl='-Wl,' ;; linux* | k*bsd*-gnu | kopensolaris*-gnu) case $cc_basename in ecc*) wl='-Wl,' ;; icc* | ifort*) wl='-Wl,' ;; lf95*) wl='-Wl,' ;; nagfor*) wl='-Wl,-Wl,,' ;; pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) wl='-Wl,' ;; ccc*) wl='-Wl,' ;; xl* | bgxl* | bgf* | mpixl*) wl='-Wl,' ;; como) wl='-lopt=' ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ F* | *Sun*Fortran*) wl= ;; *Sun\ C*) wl='-Wl,' ;; esac ;; esac ;; newsos6) ;; *nto* | *qnx*) ;; osf3* | osf4* | osf5*) wl='-Wl,' ;; rdos*) ;; solaris*) case $cc_basename in f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) wl='-Qoption ld ' ;; *) wl='-Wl,' ;; esac ;; sunos4*) wl='-Qoption ld ' ;; sysv4 | sysv4.2uw2* | sysv4.3*) wl='-Wl,' ;; sysv4*MP*) ;; sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) wl='-Wl,' ;; unicos*) wl='-Wl,' ;; uts4*) ;; esac fi # Code taken from libtool.m4's _LT_LINKER_SHLIBS. hardcode_libdir_flag_spec= hardcode_libdir_separator= hardcode_direct=no hardcode_minus_L=no 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 ;; esac ld_shlibs=yes if test "$with_gnu_ld" = yes; then # 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. # Unlike libtool, we use -rpath here, not --rpath, since the documented # option of GNU ld is called -rpath, not --rpath. hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' case "$host_os" in aix[3-9]*) # On AIX/PPC, the GNU linker is very broken if test "$host_cpu" != ia64; then ld_shlibs=no fi ;; amigaos*) case "$host_cpu" in powerpc) ;; m68k) hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes ;; esac ;; beos*) if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then : else ld_shlibs=no fi ;; cygwin* | mingw* | pw32* | cegcc*) # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. hardcode_libdir_flag_spec='-L$libdir' if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then : else ld_shlibs=no fi ;; haiku*) ;; interix[3-9]*) hardcode_direct=no hardcode_libdir_flag_spec='${wl}-rpath,$libdir' ;; gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then : else ld_shlibs=no fi ;; netbsd*) ;; solaris*) if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then ld_shlibs=no elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then : else ld_shlibs=no fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) case `$LD -v 2>&1` in *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*) ld_shlibs=no ;; *) if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`' else ld_shlibs=no fi ;; esac ;; sunos4*) hardcode_direct=yes ;; *) if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then : else ld_shlibs=no fi ;; esac if test "$ld_shlibs" = no; then hardcode_libdir_flag_spec= fi else case "$host_os" in aix3*) # Note: this linker hardcodes the directories in LIBPATH if there # are no directories specified by -L. hardcode_minus_L=yes if test "$GCC" = yes; then # Neither direct hardcoding nor static linking is supported with a # broken collect2. hardcode_direct=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 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 if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then aix_use_runtimelinking=yes break fi done ;; esac fi hardcode_direct=yes hardcode_libdir_separator=':' if test "$GCC" = yes; then case $host_os in aix4.[012]|aix4.[012].*) 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 hardcode_direct=unsupported hardcode_minus_L=yes hardcode_libdir_flag_spec='-L$libdir' hardcode_libdir_separator= fi ;; esac fi # Begin _LT_AC_SYS_LIBPATH_AIX. echo 'int main () { return 0; }' > conftest.c ${CC} ${LDFLAGS} conftest.c -o conftest aix_libpath=`dump -H conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` fi if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib" fi rm -f conftest.c conftest # End _LT_AC_SYS_LIBPATH_AIX. if test "$aix_use_runtimelinking" = yes; then hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" else if test "$host_cpu" = ia64; then hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' else hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" fi fi ;; amigaos*) case "$host_cpu" in powerpc) ;; m68k) hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes ;; esac ;; bsdi[45]*) ;; 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. hardcode_libdir_flag_spec=' ' libext=lib ;; darwin* | rhapsody*) hardcode_direct=no if { case $cc_basename in ifort*) true;; *) test "$GCC" = yes;; esac; }; then : else ld_shlibs=no fi ;; dgux*) hardcode_libdir_flag_spec='-L$libdir' ;; freebsd2.[01]*) hardcode_direct=yes hardcode_minus_L=yes ;; freebsd* | dragonfly*) hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes ;; hpux9*) hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' hardcode_libdir_separator=: hardcode_direct=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes ;; hpux10*) if test "$with_gnu_ld" = no; then hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' hardcode_libdir_separator=: hardcode_direct=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes fi ;; hpux11*) if test "$with_gnu_ld" = no; then hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' hardcode_libdir_separator=: case $host_cpu in hppa*64*|ia64*) hardcode_direct=no ;; *) hardcode_direct=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes ;; esac fi ;; irix5* | irix6* | nonstopux*) hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator=: ;; netbsd*) hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes ;; newsos6) hardcode_direct=yes hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator=: ;; *nto* | *qnx*) ;; openbsd*) if test -f /usr/libexec/ld.so; then hardcode_direct=yes if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then hardcode_libdir_flag_spec='${wl}-rpath,$libdir' else case "$host_os" in openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) hardcode_libdir_flag_spec='-R$libdir' ;; *) hardcode_libdir_flag_spec='${wl}-rpath,$libdir' ;; esac fi else ld_shlibs=no fi ;; os2*) hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes ;; osf3*) hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator=: ;; osf4* | osf5*) if test "$GCC" = yes; then hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' else # Both cc and cxx compiler support -rpath directly hardcode_libdir_flag_spec='-rpath $libdir' fi hardcode_libdir_separator=: ;; solaris*) hardcode_libdir_flag_spec='-R$libdir' ;; sunos4*) hardcode_libdir_flag_spec='-L$libdir' hardcode_direct=yes hardcode_minus_L=yes ;; sysv4) case $host_vendor in sni) hardcode_direct=yes # is this really true??? ;; siemens) hardcode_direct=no ;; motorola) hardcode_direct=no #Motorola manual says yes, but my tests say they lie ;; esac ;; sysv4.3*) ;; sysv4*MP*) if test -d /usr/nec; then ld_shlibs=yes fi ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) ;; sysv5* | sco3.2v5* | sco5v6*) hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`' hardcode_libdir_separator=':' ;; uts4*) hardcode_libdir_flag_spec='-L$libdir' ;; *) ld_shlibs=no ;; esac fi # Check dynamic linker characteristics # Code taken from libtool.m4's _LT_SYS_DYNAMIC_LINKER. # Unlike libtool.m4, here we don't care about _all_ names of the library, but # only about the one the linker finds when passed -lNAME. This is the last # element of library_names_spec in libtool.m4, or possibly two of them if the # linker has special search rules. library_names_spec= # the last element of library_names_spec in libtool.m4 libname_spec='lib$name' case "$host_os" in aix3*) library_names_spec='$libname.a' ;; aix[4-9]*) library_names_spec='$libname$shrext' ;; amigaos*) case "$host_cpu" in powerpc*) library_names_spec='$libname$shrext' ;; m68k) library_names_spec='$libname.a' ;; esac ;; beos*) library_names_spec='$libname$shrext' ;; bsdi[45]*) library_names_spec='$libname$shrext' ;; cygwin* | mingw* | pw32* | cegcc*) shrext=.dll library_names_spec='$libname.dll.a $libname.lib' ;; darwin* | rhapsody*) shrext=.dylib library_names_spec='$libname$shrext' ;; dgux*) library_names_spec='$libname$shrext' ;; freebsd[23].*) library_names_spec='$libname$shrext$versuffix' ;; freebsd* | dragonfly*) library_names_spec='$libname$shrext' ;; gnu*) library_names_spec='$libname$shrext' ;; haiku*) library_names_spec='$libname$shrext' ;; hpux9* | hpux10* | hpux11*) case $host_cpu in ia64*) shrext=.so ;; hppa*64*) shrext=.sl ;; *) shrext=.sl ;; esac library_names_spec='$libname$shrext' ;; interix[3-9]*) library_names_spec='$libname$shrext' ;; irix5* | irix6* | nonstopux*) library_names_spec='$libname$shrext' case "$host_os" in irix5* | nonstopux*) libsuff= shlibsuff= ;; *) case $LD in *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= ;; *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 ;; *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 ;; *) libsuff= shlibsuff= ;; esac ;; esac ;; linux*oldld* | linux*aout* | linux*coff*) ;; linux* | k*bsd*-gnu | kopensolaris*-gnu) library_names_spec='$libname$shrext' ;; knetbsd*-gnu) library_names_spec='$libname$shrext' ;; netbsd*) library_names_spec='$libname$shrext' ;; newsos6) library_names_spec='$libname$shrext' ;; *nto* | *qnx*) library_names_spec='$libname$shrext' ;; openbsd*) library_names_spec='$libname$shrext$versuffix' ;; os2*) libname_spec='$name' shrext=.dll library_names_spec='$libname.a' ;; osf3* | osf4* | osf5*) library_names_spec='$libname$shrext' ;; rdos*) ;; solaris*) library_names_spec='$libname$shrext' ;; sunos4*) library_names_spec='$libname$shrext$versuffix' ;; sysv4 | sysv4.3*) library_names_spec='$libname$shrext' ;; sysv4*MP*) library_names_spec='$libname$shrext' ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) library_names_spec='$libname$shrext' ;; tpf*) library_names_spec='$libname$shrext' ;; uts4*) library_names_spec='$libname$shrext' ;; esac sed_quote_subst='s/\(["`$\\]\)/\\\1/g' escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"` shlibext=`echo "$shrext" | sed -e 's,^\.,,'` escaped_libname_spec=`echo "X$libname_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` escaped_library_names_spec=`echo "X$library_names_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` LC_ALL=C sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <. # # 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. This Exception is an additional permission under section 7 # of the GNU General Public License, version 3 ("GPLv3"). # Please send patches to . # # Configuration subroutine to validate and canonicalize a configuration type. # Supply the specified configuration type as an argument. # If it is invalid, we print an error message on stderr and exit with code 1. # Otherwise, we print the canonical config type on stdout and succeed. # You can get the latest version of this script from: # https://git.savannah.gnu.org/cgit/config.git/plain/config.sub # This file is supposed to be the same for all GNU packages # and recognize all the CPU types, system types and aliases # that are meaningful with *any* GNU software. # Each package is responsible for reporting which valid configurations # it does not support. The user should be able to distinguish # a failure to support a valid configuration from a meaningless # configuration. # The goal of this file is to map all the various variations of a given # machine specification into a single specification in the form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM # or in some cases, the newer four-part form: # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM # It is wrong to echo any other type of specification. # The "shellcheck disable" line above the timestamp inhibits complaints # about features and limitations of the classic Bourne shell that were # superseded or lifted in POSIX. However, this script identifies a wide # variety of pre-POSIX systems that do not have POSIX shells at all, and # even some reasonably current systems (Solaris 10 as case-in-point) still # have a pre-POSIX /bin/sh. me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS Canonicalize a configuration name. Options: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.sub ($timestamp) Copyright 1992-2024 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try '$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit ;; --version | -v ) echo "$version" ; exit ;; --help | --h* | -h ) echo "$usage"; exit ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" >&2 exit 1 ;; *local*) # First pass through any local machine types. echo "$1" exit ;; * ) break ;; esac done case $# in 0) echo "$me: missing argument$help" >&2 exit 1;; 1) ;; *) echo "$me: too many arguments$help" >&2 exit 1;; esac # Split fields of configuration type saved_IFS=$IFS IFS="-" read field1 field2 field3 field4 <&2 exit 1 ;; *-*-*-*) basic_machine=$field1-$field2 basic_os=$field3-$field4 ;; *-*-*) # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two # parts maybe_os=$field2-$field3 case $maybe_os in cloudabi*-eabi* \ | kfreebsd*-gnu* \ | knetbsd*-gnu* \ | kopensolaris*-gnu* \ | linux-* \ | managarm-* \ | netbsd*-eabi* \ | netbsd*-gnu* \ | nto-qnx* \ | os2-emx* \ | rtmk-nova* \ | storm-chaos* \ | uclinux-gnu* \ | uclinux-uclibc* \ | windows-* ) basic_machine=$field1 basic_os=$maybe_os ;; android-linux) basic_machine=$field1-unknown basic_os=linux-android ;; *) basic_machine=$field1-$field2 basic_os=$field3 ;; esac ;; *-*) case $field1-$field2 in # Shorthands that happen to contain a single dash convex-c[12] | convex-c3[248]) basic_machine=$field2-convex basic_os= ;; decstation-3100) basic_machine=mips-dec basic_os= ;; *-*) # Second component is usually, but not always the OS case $field2 in # Do not treat sunos as a manufacturer sun*os*) basic_machine=$field1 basic_os=$field2 ;; # Manufacturers 3100* \ | 32* \ | 3300* \ | 3600* \ | 7300* \ | acorn \ | altos* \ | apollo \ | apple \ | atari \ | att* \ | axis \ | be \ | bull \ | cbm \ | ccur \ | cisco \ | commodore \ | convergent* \ | convex* \ | cray \ | crds \ | dec* \ | delta* \ | dg \ | digital \ | dolphin \ | encore* \ | gould \ | harris \ | highlevel \ | hitachi* \ | hp \ | ibm* \ | intergraph \ | isi* \ | knuth \ | masscomp \ | microblaze* \ | mips* \ | motorola* \ | ncr* \ | news \ | next \ | ns \ | oki \ | omron* \ | pc533* \ | rebel \ | rom68k \ | rombug \ | semi \ | sequent* \ | siemens \ | sgi* \ | siemens \ | sim \ | sni \ | sony* \ | stratus \ | sun \ | sun[234]* \ | tektronix \ | tti* \ | ultra \ | unicom* \ | wec \ | winbond \ | wrs) basic_machine=$field1-$field2 basic_os= ;; zephyr*) basic_machine=$field1-unknown basic_os=$field2 ;; *) basic_machine=$field1 basic_os=$field2 ;; esac ;; esac ;; *) # Convert single-component short-hands not valid as part of # multi-component configurations. case $field1 in 386bsd) basic_machine=i386-pc basic_os=bsd ;; a29khif) basic_machine=a29k-amd basic_os=udi ;; adobe68k) basic_machine=m68010-adobe basic_os=scout ;; alliant) basic_machine=fx80-alliant basic_os= ;; altos | altos3068) basic_machine=m68k-altos basic_os= ;; am29k) basic_machine=a29k-none basic_os=bsd ;; amdahl) basic_machine=580-amdahl basic_os=sysv ;; amiga) basic_machine=m68k-unknown basic_os= ;; amigaos | amigados) basic_machine=m68k-unknown basic_os=amigaos ;; amigaunix | amix) basic_machine=m68k-unknown basic_os=sysv4 ;; apollo68) basic_machine=m68k-apollo basic_os=sysv ;; apollo68bsd) basic_machine=m68k-apollo basic_os=bsd ;; aros) basic_machine=i386-pc basic_os=aros ;; aux) basic_machine=m68k-apple basic_os=aux ;; balance) basic_machine=ns32k-sequent basic_os=dynix ;; blackfin) basic_machine=bfin-unknown basic_os=linux ;; cegcc) basic_machine=arm-unknown basic_os=cegcc ;; cray) basic_machine=j90-cray basic_os=unicos ;; crds | unos) basic_machine=m68k-crds basic_os= ;; da30) basic_machine=m68k-da30 basic_os= ;; decstation | pmax | pmin | dec3100 | decstatn) basic_machine=mips-dec basic_os= ;; delta88) basic_machine=m88k-motorola basic_os=sysv3 ;; dicos) basic_machine=i686-pc basic_os=dicos ;; djgpp) basic_machine=i586-pc basic_os=msdosdjgpp ;; ebmon29k) basic_machine=a29k-amd basic_os=ebmon ;; es1800 | OSE68k | ose68k | ose | OSE) basic_machine=m68k-ericsson basic_os=ose ;; gmicro) basic_machine=tron-gmicro basic_os=sysv ;; go32) basic_machine=i386-pc basic_os=go32 ;; h8300hms) basic_machine=h8300-hitachi basic_os=hms ;; h8300xray) basic_machine=h8300-hitachi basic_os=xray ;; h8500hms) basic_machine=h8500-hitachi basic_os=hms ;; harris) basic_machine=m88k-harris basic_os=sysv3 ;; hp300 | hp300hpux) basic_machine=m68k-hp basic_os=hpux ;; hp300bsd) basic_machine=m68k-hp basic_os=bsd ;; hppaosf) basic_machine=hppa1.1-hp basic_os=osf ;; hppro) basic_machine=hppa1.1-hp basic_os=proelf ;; i386mach) basic_machine=i386-mach basic_os=mach ;; isi68 | isi) basic_machine=m68k-isi basic_os=sysv ;; m68knommu) basic_machine=m68k-unknown basic_os=linux ;; magnum | m3230) basic_machine=mips-mips basic_os=sysv ;; merlin) basic_machine=ns32k-utek basic_os=sysv ;; mingw64) basic_machine=x86_64-pc basic_os=mingw64 ;; mingw32) basic_machine=i686-pc basic_os=mingw32 ;; mingw32ce) basic_machine=arm-unknown basic_os=mingw32ce ;; monitor) basic_machine=m68k-rom68k basic_os=coff ;; morphos) basic_machine=powerpc-unknown basic_os=morphos ;; moxiebox) basic_machine=moxie-unknown basic_os=moxiebox ;; msdos) basic_machine=i386-pc basic_os=msdos ;; msys) basic_machine=i686-pc basic_os=msys ;; mvs) basic_machine=i370-ibm basic_os=mvs ;; nacl) basic_machine=le32-unknown basic_os=nacl ;; ncr3000) basic_machine=i486-ncr basic_os=sysv4 ;; netbsd386) basic_machine=i386-pc basic_os=netbsd ;; netwinder) basic_machine=armv4l-rebel basic_os=linux ;; news | news700 | news800 | news900) basic_machine=m68k-sony basic_os=newsos ;; news1000) basic_machine=m68030-sony basic_os=newsos ;; necv70) basic_machine=v70-nec basic_os=sysv ;; nh3000) basic_machine=m68k-harris basic_os=cxux ;; nh[45]000) basic_machine=m88k-harris basic_os=cxux ;; nindy960) basic_machine=i960-intel basic_os=nindy ;; mon960) basic_machine=i960-intel basic_os=mon960 ;; nonstopux) basic_machine=mips-compaq basic_os=nonstopux ;; os400) basic_machine=powerpc-ibm basic_os=os400 ;; OSE68000 | ose68000) basic_machine=m68000-ericsson basic_os=ose ;; os68k) basic_machine=m68k-none basic_os=os68k ;; paragon) basic_machine=i860-intel basic_os=osf ;; parisc) basic_machine=hppa-unknown basic_os=linux ;; psp) basic_machine=mipsallegrexel-sony basic_os=psp ;; pw32) basic_machine=i586-unknown basic_os=pw32 ;; rdos | rdos64) basic_machine=x86_64-pc basic_os=rdos ;; rdos32) basic_machine=i386-pc basic_os=rdos ;; rom68k) basic_machine=m68k-rom68k basic_os=coff ;; sa29200) basic_machine=a29k-amd basic_os=udi ;; sei) basic_machine=mips-sei basic_os=seiux ;; sequent) basic_machine=i386-sequent basic_os= ;; sps7) basic_machine=m68k-bull basic_os=sysv2 ;; st2000) basic_machine=m68k-tandem basic_os= ;; stratus) basic_machine=i860-stratus basic_os=sysv4 ;; sun2) basic_machine=m68000-sun basic_os= ;; sun2os3) basic_machine=m68000-sun basic_os=sunos3 ;; sun2os4) basic_machine=m68000-sun basic_os=sunos4 ;; sun3) basic_machine=m68k-sun basic_os= ;; sun3os3) basic_machine=m68k-sun basic_os=sunos3 ;; sun3os4) basic_machine=m68k-sun basic_os=sunos4 ;; sun4) basic_machine=sparc-sun basic_os= ;; sun4os3) basic_machine=sparc-sun basic_os=sunos3 ;; sun4os4) basic_machine=sparc-sun basic_os=sunos4 ;; sun4sol2) basic_machine=sparc-sun basic_os=solaris2 ;; sun386 | sun386i | roadrunner) basic_machine=i386-sun basic_os= ;; sv1) basic_machine=sv1-cray basic_os=unicos ;; symmetry) basic_machine=i386-sequent basic_os=dynix ;; t3e) basic_machine=alphaev5-cray basic_os=unicos ;; t90) basic_machine=t90-cray basic_os=unicos ;; toad1) basic_machine=pdp10-xkl basic_os=tops20 ;; tpf) basic_machine=s390x-ibm basic_os=tpf ;; udi29k) basic_machine=a29k-amd basic_os=udi ;; ultra3) basic_machine=a29k-nyu basic_os=sym1 ;; v810 | necv810) basic_machine=v810-nec basic_os=none ;; vaxv) basic_machine=vax-dec basic_os=sysv ;; vms) basic_machine=vax-dec basic_os=vms ;; vsta) basic_machine=i386-pc basic_os=vsta ;; vxworks960) basic_machine=i960-wrs basic_os=vxworks ;; vxworks68) basic_machine=m68k-wrs basic_os=vxworks ;; vxworks29k) basic_machine=a29k-wrs basic_os=vxworks ;; xbox) basic_machine=i686-pc basic_os=mingw32 ;; ymp) basic_machine=ymp-cray basic_os=unicos ;; *) basic_machine=$1 basic_os= ;; esac ;; esac # Decode 1-component or ad-hoc basic machines case $basic_machine in # Here we handle the default manufacturer of certain CPU types. It is in # some cases the only manufacturer, in others, it is the most popular. w89k) cpu=hppa1.1 vendor=winbond ;; op50n) cpu=hppa1.1 vendor=oki ;; op60c) cpu=hppa1.1 vendor=oki ;; ibm*) cpu=i370 vendor=ibm ;; orion105) cpu=clipper vendor=highlevel ;; mac | mpw | mac-mpw) cpu=m68k vendor=apple ;; pmac | pmac-mpw) cpu=powerpc vendor=apple ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) cpu=m68000 vendor=att ;; 3b*) cpu=we32k vendor=att ;; bluegene*) cpu=powerpc vendor=ibm basic_os=cnk ;; decsystem10* | dec10*) cpu=pdp10 vendor=dec basic_os=tops10 ;; decsystem20* | dec20*) cpu=pdp10 vendor=dec basic_os=tops20 ;; delta | 3300 | delta-motorola | 3300-motorola | motorola-delta | motorola-3300) cpu=m68k vendor=motorola ;; # This used to be dpx2*, but that gets the RS6000-based # DPX/20 and the x86-based DPX/2-100 wrong. See # https://oldskool.silicium.org/stations/bull_dpx20.htm # https://www.feb-patrimoine.com/english/bull_dpx2.htm # https://www.feb-patrimoine.com/english/unix_and_bull.htm dpx2 | dpx2[23]00 | dpx2[23]xx) cpu=m68k vendor=bull ;; dpx2100 | dpx21xx) cpu=i386 vendor=bull ;; dpx20) cpu=rs6000 vendor=bull ;; encore | umax | mmax) cpu=ns32k vendor=encore ;; elxsi) cpu=elxsi vendor=elxsi basic_os=${basic_os:-bsd} ;; fx2800) cpu=i860 vendor=alliant ;; genix) cpu=ns32k vendor=ns ;; h3050r* | hiux*) cpu=hppa1.1 vendor=hitachi basic_os=hiuxwe2 ;; hp3k9[0-9][0-9] | hp9[0-9][0-9]) cpu=hppa1.0 vendor=hp ;; hp9k2[0-9][0-9] | hp9k31[0-9]) cpu=m68000 vendor=hp ;; hp9k3[2-9][0-9]) cpu=m68k vendor=hp ;; hp9k6[0-9][0-9] | hp6[0-9][0-9]) cpu=hppa1.0 vendor=hp ;; hp9k7[0-79][0-9] | hp7[0-79][0-9]) cpu=hppa1.1 vendor=hp ;; hp9k78[0-9] | hp78[0-9]) # FIXME: really hppa2.0-hp cpu=hppa1.1 vendor=hp ;; hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) # FIXME: really hppa2.0-hp cpu=hppa1.1 vendor=hp ;; hp9k8[0-9][13679] | hp8[0-9][13679]) cpu=hppa1.1 vendor=hp ;; hp9k8[0-9][0-9] | hp8[0-9][0-9]) cpu=hppa1.0 vendor=hp ;; i*86v32) cpu=`echo "$1" | sed -e 's/86.*/86/'` vendor=pc basic_os=sysv32 ;; i*86v4*) cpu=`echo "$1" | sed -e 's/86.*/86/'` vendor=pc basic_os=sysv4 ;; i*86v) cpu=`echo "$1" | sed -e 's/86.*/86/'` vendor=pc basic_os=sysv ;; i*86sol2) cpu=`echo "$1" | sed -e 's/86.*/86/'` vendor=pc basic_os=solaris2 ;; j90 | j90-cray) cpu=j90 vendor=cray basic_os=${basic_os:-unicos} ;; iris | iris4d) cpu=mips vendor=sgi case $basic_os in irix*) ;; *) basic_os=irix4 ;; esac ;; miniframe) cpu=m68000 vendor=convergent ;; *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*) cpu=m68k vendor=atari basic_os=mint ;; news-3600 | risc-news) cpu=mips vendor=sony basic_os=newsos ;; next | m*-next) cpu=m68k vendor=next ;; np1) cpu=np1 vendor=gould ;; op50n-* | op60c-*) cpu=hppa1.1 vendor=oki basic_os=proelf ;; pa-hitachi) cpu=hppa1.1 vendor=hitachi basic_os=hiuxwe2 ;; pbd) cpu=sparc vendor=tti ;; pbb) cpu=m68k vendor=tti ;; pc532) cpu=ns32k vendor=pc532 ;; pn) cpu=pn vendor=gould ;; power) cpu=power vendor=ibm ;; ps2) cpu=i386 vendor=ibm ;; rm[46]00) cpu=mips vendor=siemens ;; rtpc | rtpc-*) cpu=romp vendor=ibm ;; sde) cpu=mipsisa32 vendor=sde basic_os=${basic_os:-elf} ;; simso-wrs) cpu=sparclite vendor=wrs basic_os=vxworks ;; tower | tower-32) cpu=m68k vendor=ncr ;; vpp*|vx|vx-*) cpu=f301 vendor=fujitsu ;; w65) cpu=w65 vendor=wdc ;; w89k-*) cpu=hppa1.1 vendor=winbond basic_os=proelf ;; none) cpu=none vendor=none ;; leon|leon[3-9]) cpu=sparc vendor=$basic_machine ;; leon-*|leon[3-9]-*) cpu=sparc vendor=`echo "$basic_machine" | sed 's/-.*//'` ;; *-*) saved_IFS=$IFS IFS="-" read cpu vendor <&2 exit 1 ;; esac ;; esac # Here we canonicalize certain aliases for manufacturers. case $vendor in digital*) vendor=dec ;; commodore*) vendor=cbm ;; *) ;; esac # Decode manufacturer-specific aliases for certain operating systems. if test x"$basic_os" != x then # First recognize some ad-hoc cases, or perhaps split kernel-os, or else just # set os. obj= case $basic_os in gnu/linux*) kernel=linux os=`echo "$basic_os" | sed -e 's|gnu/linux|gnu|'` ;; os2-emx) kernel=os2 os=`echo "$basic_os" | sed -e 's|os2-emx|emx|'` ;; nto-qnx*) kernel=nto os=`echo "$basic_os" | sed -e 's|nto-qnx|qnx|'` ;; *-*) saved_IFS=$IFS IFS="-" read kernel os <&2 fi ;; *) echo "Invalid configuration '$1': OS '$os' not recognized" 1>&2 exit 1 ;; esac case $obj in aout* | coff* | elf* | pe*) ;; '') # empty is fine ;; *) echo "Invalid configuration '$1': Machine code format '$obj' not recognized" 1>&2 exit 1 ;; esac # Here we handle the constraint that a (synthetic) cpu and os are # valid only in combination with each other and nowhere else. case $cpu-$os in # The "javascript-unknown-ghcjs" triple is used by GHC; we # accept it here in order to tolerate that, but reject any # variations. javascript-ghcjs) ;; javascript-* | *-ghcjs) echo "Invalid configuration '$1': cpu '$cpu' is not valid with os '$os$obj'" 1>&2 exit 1 ;; esac # As a final step for OS-related things, validate the OS-kernel combination # (given a valid OS), if there is a kernel. case $kernel-$os-$obj in linux-gnu*- | linux-android*- | linux-dietlibc*- | linux-llvm*- \ | linux-mlibc*- | linux-musl*- | linux-newlib*- \ | linux-relibc*- | linux-uclibc*- | linux-ohos*- ) ;; uclinux-uclibc*- | uclinux-gnu*- ) ;; managarm-mlibc*- | managarm-kernel*- ) ;; windows*-msvc*-) ;; -dietlibc*- | -llvm*- | -mlibc*- | -musl*- | -newlib*- | -relibc*- \ | -uclibc*- ) # These are just libc implementations, not actual OSes, and thus # require a kernel. echo "Invalid configuration '$1': libc '$os' needs explicit kernel." 1>&2 exit 1 ;; -kernel*- ) echo "Invalid configuration '$1': '$os' needs explicit kernel." 1>&2 exit 1 ;; *-kernel*- ) echo "Invalid configuration '$1': '$kernel' does not support '$os'." 1>&2 exit 1 ;; *-msvc*- ) echo "Invalid configuration '$1': '$os' needs 'windows'." 1>&2 exit 1 ;; kfreebsd*-gnu*- | knetbsd*-gnu*- | netbsd*-gnu*- | kopensolaris*-gnu*-) ;; vxworks-simlinux- | vxworks-simwindows- | vxworks-spe-) ;; nto-qnx*-) ;; os2-emx-) ;; rtmk-nova-) ;; *-eabi*- | *-gnueabi*-) ;; none--*) # None (no kernel, i.e. freestanding / bare metal), # can be paired with an machine code file format ;; -*-) # Blank kernel with real OS is always fine. ;; --*) # Blank kernel and OS with real machine code file format is always fine. ;; *-*-*) echo "Invalid configuration '$1': Kernel '$kernel' not known to work with OS '$os'." 1>&2 exit 1 ;; esac # Here we handle the case where we know the os, and the CPU type, but not the # manufacturer. We pick the logical manufacturer. case $vendor in unknown) case $cpu-$os in *-riscix*) vendor=acorn ;; *-sunos* | *-solaris*) vendor=sun ;; *-cnk* | *-aix*) vendor=ibm ;; *-beos*) vendor=be ;; *-hpux*) vendor=hp ;; *-mpeix*) vendor=hp ;; *-hiux*) vendor=hitachi ;; *-unos*) vendor=crds ;; *-dgux*) vendor=dg ;; *-luna*) vendor=omron ;; *-genix*) vendor=ns ;; *-clix*) vendor=intergraph ;; *-mvs* | *-opened*) vendor=ibm ;; *-os400*) vendor=ibm ;; s390-* | s390x-*) vendor=ibm ;; *-ptx*) vendor=sequent ;; *-tpf*) vendor=ibm ;; *-vxsim* | *-vxworks* | *-windiss*) vendor=wrs ;; *-aux*) vendor=apple ;; *-hms*) vendor=hitachi ;; *-mpw* | *-macos*) vendor=apple ;; *-*mint | *-mint[0-9]* | *-*MiNT | *-MiNT[0-9]*) vendor=atari ;; *-vos*) vendor=stratus ;; esac ;; esac echo "$cpu-$vendor${kernel:+-$kernel}${os:+-$os}${obj:+-$obj}" exit # Local variables: # eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: ibus-1.5.32/install-sh0000755000000000000000000003611514775216752010225 #!/bin/sh # install - install a program, script, or datafile scriptversion=2024-06-19.01; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the # following copyright and license. # # Copyright (C) 1994 X Consortium # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to # deal in the Software without restriction, including without limitation the # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or # sell copies of the Software, and to permit persons to whom the Software is # furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE # X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- # TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # # Except as contained in this notice, the name of the X Consortium shall not # be used in advertising or otherwise to promote the sale, use or other deal- # ings in this Software without prior written authorization from the X Consor- # tium. # # # FSF changes to this file are in the public domain. # # Calling this script install-sh is preferred over install.sh, to prevent # 'make' implicit rules from creating a file called install from it # when there is no Makefile. # # This script is compatible with the BSD install script, but was written # from scratch. tab=' ' nl=' ' IFS=" $tab$nl" # Set DOITPROG to "echo" to test this script. doit=${DOITPROG-} doit_exec=${doit:-exec} # Put in absolute file names if you don't have them in your path; # or use environment vars. chgrpprog=${CHGRPPROG-chgrp} chmodprog=${CHMODPROG-chmod} chownprog=${CHOWNPROG-chown} cmpprog=${CMPPROG-cmp} cpprog=${CPPROG-cp} mkdirprog=${MKDIRPROG-mkdir} mvprog=${MVPROG-mv} rmprog=${RMPROG-rm} stripprog=${STRIPPROG-strip} posix_mkdir= # Desired mode of installed file. mode=0755 # Create dirs (including intermediate dirs) using mode 755. # This is like GNU 'install' as of coreutils 8.32 (2020). mkdir_umask=22 backupsuffix= chgrpcmd= chmodcmd=$chmodprog chowncmd= mvcmd=$mvprog rmcmd="$rmprog -f" stripcmd= src= dst= dir_arg= dst_arg= copy_on_change=false is_target_a_directory=possibly usage="\ Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE or: $0 [OPTION]... SRCFILES... DIRECTORY or: $0 [OPTION]... -t DIRECTORY SRCFILES... or: $0 [OPTION]... -d DIRECTORIES... In the 1st form, copy SRCFILE to DSTFILE. In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. In the 4th, create DIRECTORIES. Options: --help display this help and exit. --version display version info and exit. -c (ignored) -C install only if different (preserve data modification time) -d create directories instead of installing files. -g GROUP $chgrpprog installed files to GROUP. -m MODE $chmodprog installed files to MODE. -o USER $chownprog installed files to USER. -p pass -p to $cpprog. -s $stripprog installed files. -S SUFFIX attempt to back up existing files, with suffix SUFFIX. -t DIRECTORY install into DIRECTORY. -T report an error if DSTFILE is a directory. Environment variables override the default commands: CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG By default, rm is invoked with -f; when overridden with RMPROG, it's up to you to specify -f if you want it. If -S is not specified, no backups are attempted. Report bugs to . GNU Automake home page: . General help using GNU software: ." while test $# -ne 0; do case $1 in -c) ;; -C) copy_on_change=true;; -d) dir_arg=true;; -g) chgrpcmd="$chgrpprog $2" shift;; --help) echo "$usage"; exit $?;; -m) mode=$2 case $mode in *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*) echo "$0: invalid mode: $mode" >&2 exit 1;; esac shift;; -o) chowncmd="$chownprog $2" shift;; -p) cpprog="$cpprog -p";; -s) stripcmd=$stripprog;; -S) backupsuffix="$2" shift;; -t) is_target_a_directory=always dst_arg=$2 # Protect names problematic for 'test' and other utilities. case $dst_arg in -* | [=\(\)!]) dst_arg=./$dst_arg;; esac shift;; -T) is_target_a_directory=never;; --version) echo "$0 (GNU Automake) $scriptversion"; exit $?;; --) shift break;; -*) echo "$0: invalid option: $1" >&2 exit 1;; *) break;; esac shift done # We allow the use of options -d and -T together, by making -d # take the precedence; this is for compatibility with GNU install. if test -n "$dir_arg"; then if test -n "$dst_arg"; then echo "$0: target directory not allowed when installing a directory." >&2 exit 1 fi fi if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then # When -d is used, all remaining arguments are directories to create. # When -t is used, the destination is already specified. # Otherwise, the last argument is the destination. Remove it from $@. for arg do if test -n "$dst_arg"; then # $@ is not empty: it contains at least $arg. set fnord "$@" "$dst_arg" shift # fnord fi shift # arg dst_arg=$arg # Protect names problematic for 'test' and other utilities. case $dst_arg in -* | [=\(\)!]) dst_arg=./$dst_arg;; esac done fi if test $# -eq 0; then if test -z "$dir_arg"; then echo "$0: no input file specified." >&2 exit 1 fi # It's OK to call 'install-sh -d' without argument. # This can happen when creating conditional directories. exit 0 fi if test -z "$dir_arg"; then if test $# -gt 1 || test "$is_target_a_directory" = always; then if test ! -d "$dst_arg"; then echo "$0: $dst_arg: Is not a directory." >&2 exit 1 fi fi fi if test -z "$dir_arg"; then do_exit='(exit $ret); exit $ret' trap "ret=129; $do_exit" 1 trap "ret=130; $do_exit" 2 trap "ret=141; $do_exit" 13 trap "ret=143; $do_exit" 15 # Set umask so as not to create temps with too-generous modes. # However, 'strip' requires both read and write access to temps. case $mode in # Optimize common cases. *644) cp_umask=133;; *755) cp_umask=22;; *[0-7]) if test -z "$stripcmd"; then u_plus_rw= else u_plus_rw='% 200' fi cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;; *) if test -z "$stripcmd"; then u_plus_rw= else u_plus_rw=,u+rw fi cp_umask=$mode$u_plus_rw;; esac fi for src do # Protect names problematic for 'test' and other utilities. case $src in -* | [=\(\)!]) src=./$src;; esac if test -n "$dir_arg"; then dst=$src dstdir=$dst test -d "$dstdir" dstdir_status=$? # Don't chown directories that already exist. if test $dstdir_status = 0; then chowncmd="" fi else # Waiting for this to be detected by the "$cpprog $src $dsttmp" command # might cause directories to be created, which would be especially bad # if $src (and thus $dsttmp) contains '*'. if test ! -f "$src" && test ! -d "$src"; then echo "$0: $src does not exist." >&2 exit 1 fi if test -z "$dst_arg"; then echo "$0: no destination specified." >&2 exit 1 fi dst=$dst_arg # If destination is a directory, append the input filename. if test -d "$dst"; then if test "$is_target_a_directory" = never; then echo "$0: $dst_arg: Is a directory" >&2 exit 1 fi dstdir=$dst dstbase=`basename "$src"` case $dst in */) dst=$dst$dstbase;; *) dst=$dst/$dstbase;; esac dstdir_status=0 else dstdir=`dirname "$dst"` test -d "$dstdir" dstdir_status=$? fi fi case $dstdir in */) dstdirslash=$dstdir;; *) dstdirslash=$dstdir/;; esac obsolete_mkdir_used=false if test $dstdir_status != 0; then case $posix_mkdir in '') # With -d, create the new directory with the user-specified mode. # Otherwise, rely on $mkdir_umask. if test -n "$dir_arg"; then mkdir_mode=-m$mode else mkdir_mode= fi posix_mkdir=false # The $RANDOM variable is not portable (e.g., dash). Use it # here however when possible just to lower collision chance. tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ trap ' ret=$? rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null exit $ret ' 0 # Because "mkdir -p" follows existing symlinks and we likely work # directly in world-writable /tmp, make sure that the '$tmpdir' # directory is successfully created first before we actually test # 'mkdir -p'. if (umask $mkdir_umask && $mkdirprog $mkdir_mode "$tmpdir" && exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1 then if test -z "$dir_arg" || { # Check for POSIX incompatibility with -m. # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or # other-writable bit of parent directory when it shouldn't. # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. test_tmpdir="$tmpdir/a" ls_ld_tmpdir=`ls -ld "$test_tmpdir"` case $ls_ld_tmpdir in d????-?r-*) different_mode=700;; d????-?--*) different_mode=755;; *) false;; esac && $mkdirprog -m$different_mode -p -- "$test_tmpdir" && { ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"` test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" } } then posix_mkdir=: fi rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" else # Remove any dirs left behind by ancient mkdir implementations. rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null fi trap '' 0;; esac if $posix_mkdir && ( umask $mkdir_umask && $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" ) then : else # mkdir does not conform to POSIX, # or it failed possibly due to a race condition. Create the # directory the slow way, step by step, checking for races as we go. case $dstdir in /*) prefix='/';; [-=\(\)!]*) prefix='./';; *) prefix='';; esac oIFS=$IFS IFS=/ set -f set fnord $dstdir shift set +f IFS=$oIFS prefixes= for d do test X"$d" = X && continue prefix=$prefix$d if test -d "$prefix"; then prefixes= else if $posix_mkdir; then (umask $mkdir_umask && $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break # Don't fail if two instances are running concurrently. test -d "$prefix" || exit 1 else case $prefix in *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; *) qprefix=$prefix;; esac prefixes="$prefixes '$qprefix'" fi fi prefix=$prefix/ done if test -n "$prefixes"; then # Don't fail if two instances are running concurrently. (umask $mkdir_umask && eval "\$doit_exec \$mkdirprog $prefixes") || test -d "$dstdir" || exit 1 obsolete_mkdir_used=true fi fi fi if test -n "$dir_arg"; then { test -z "$chowncmd" || $doit $chowncmd "$dst"; } && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } && { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false || test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1 else # Make a couple of temp file names in the proper directory. dsttmp=${dstdirslash}_inst.$$_ rmtmp=${dstdirslash}_rm.$$_ # Trap to clean up those temp files at exit. trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 # Copy the file name to the temp name. (umask $cp_umask && { test -z "$stripcmd" || { # Create $dsttmp read-write so that cp doesn't create it read-only, # which would cause strip to fail. if test -z "$doit"; then : >"$dsttmp" # No need to fork-exec 'touch'. else $doit touch "$dsttmp" fi } } && $doit_exec $cpprog "$src" "$dsttmp") && # and set any options; do chmod last to preserve setuid bits. # # If any of these fail, we abort the whole thing. If we want to # ignore errors from any of these, just make sure not to ignore # errors from the above "$doit $cpprog $src $dsttmp" command. # { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } && { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } && # If -C, don't bother to copy if it wouldn't change the file. if $copy_on_change && old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && set -f && set X $old && old=:$2:$4:$5:$6 && set X $new && new=:$2:$4:$5:$6 && set +f && test "$old" = "$new" && $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 then rm -f "$dsttmp" else # If $backupsuffix is set, and the file being installed # already exists, attempt a backup. Don't worry if it fails, # e.g., if mv doesn't support -f. if test -n "$backupsuffix" && test -f "$dst"; then $doit $mvcmd -f "$dst" "$dst$backupsuffix" 2>/dev/null fi # Rename the file to the real destination. $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null || # The rename failed, perhaps because mv can't rename something else # to itself, or perhaps because mv is so ancient that it does not # support -f. { # Now remove or move aside any old file at destination location. # We try this two ways since rm can't unlink itself on some # systems and the destination file might be busy for other # reasons. In this case, the final cleanup might fail but the new # file should still install successfully. { test ! -f "$dst" || $doit $rmcmd "$dst" 2>/dev/null || { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && { $doit $rmcmd "$rmtmp" 2>/dev/null; :; } } || { echo "$0: cannot unlink or rename $dst" >&2 (exit 1); exit 1 } } && # Now rename the file to the real destination. $doit $mvcmd "$dsttmp" "$dst" } fi || exit 1 trap '' 0 fi done # Local variables: # eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: ibus-1.5.32/ltmain.sh0000644000000000000000000122264714775216745010053 #! /usr/bin/env sh ## DO NOT EDIT - This file generated from ./build-aux/ltmain.in ## by inline-source v2019-02-19.15 # libtool (GNU libtool) 2.5.4 # Provide generalized library-building support services. # Written by Gordon Matzigkeit , 1996 # Copyright (C) 1996-2019, 2021-2024 Free Software Foundation, Inc. # This is free software; see the source for copying conditions. There is NO # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # 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 this program. If not, see . PROGRAM=libtool PACKAGE=libtool VERSION=2.5.4 package_revision=2.5.4 ## ------ ## ## Usage. ## ## ------ ## # Run './libtool --help' for help with using this script from the # command line. ## ------------------------------- ## ## User overridable command paths. ## ## ------------------------------- ## # After configure completes, it has a better idea of some of the # shell tools we need than the defaults used by the functions shared # with bootstrap, so set those here where they can still be over- # ridden by the user, but otherwise take precedence. : ${AUTOCONF="autoconf"} : ${AUTOMAKE="automake"} ## -------------------------- ## ## Source external libraries. ## ## -------------------------- ## # Much of our low-level functionality needs to be sourced from external # libraries, which are installed to $pkgauxdir. # Set a version string for this script. scriptversion=2019-02-19.15; # UTC # General shell script boiler plate, and helper functions. # Written by Gary V. Vaughan, 2004 # This is free software. There is NO warranty; not even for # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # # Copyright (C) 2004-2019, 2021, 2023-2024 Bootstrap Authors # # This file is dual licensed under the terms of the MIT license # , and GPL version 2 or later # . You must apply one of # these licenses when using or redistributing this software or any of # the files within it. See the URLs above, or the file `LICENSE` # included in the Bootstrap distribution for the full license texts. # Please report bugs or propose patches to: # ## ------ ## ## Usage. ## ## ------ ## # Evaluate this file near the top of your script to gain access to # the functions and variables defined here: # # . `echo "$0" | ${SED-sed} 's|[^/]*$||'`/build-aux/funclib.sh # # If you need to override any of the default environment variable # settings, do that before evaluating this file. ## -------------------- ## ## Shell normalisation. ## ## -------------------- ## # Some shells need a little help to be as Bourne compatible as possible. # Before doing anything else, make sure all that help has been provided! DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in *posix*) set -o posix ;; esac fi # NLS nuisances: We save the old values in case they are required later. _G_user_locale= _G_safe_locale= for _G_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES do eval "if test set = \"\${$_G_var+set}\"; then save_$_G_var=\$$_G_var $_G_var=C export $_G_var _G_user_locale=\"$_G_var=\\\$save_\$_G_var; \$_G_user_locale\" _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\" fi" done # These NLS vars are set unconditionally (bootstrap issue #24). Unset those # in case the environment reset is needed later and the $save_* variant is not # defined (see the code above). LC_ALL=C LANGUAGE=C export LANGUAGE LC_ALL # Make sure IFS has a sensible default sp=' ' nl=' ' IFS="$sp $nl" # There are apparently some systems that use ';' as a PATH separator! if test "${PATH_SEPARATOR+set}" != set; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi # func_unset VAR # -------------- # Portably unset VAR. # In some shells, an 'unset VAR' statement leaves a non-zero return # status if VAR is already unset, which might be problematic if the # statement is used at the end of a function (thus poisoning its return # value) or when 'set -e' is active (causing even a spurious abort of # the script in this case). func_unset () { { eval $1=; (eval unset $1) >/dev/null 2>&1 && eval unset $1 || : ; } } # Make sure CDPATH doesn't cause `cd` commands to output the target dir. func_unset CDPATH # Make sure ${,E,F}GREP behave sanely. func_unset GREP_OPTIONS ## ------------------------- ## ## Locate command utilities. ## ## ------------------------- ## # func_executable_p FILE # ---------------------- # Check that FILE is an executable regular file. func_executable_p () { test -f "$1" && test -x "$1" } # func_path_progs PROGS_LIST CHECK_FUNC [PATH] # -------------------------------------------- # Search for either a program that responds to --version with output # containing "GNU", or else returned by CHECK_FUNC otherwise, by # trying all the directories in PATH with each of the elements of # PROGS_LIST. # # CHECK_FUNC should accept the path to a candidate program, and # set $func_check_prog_result if it truncates its output less than # $_G_path_prog_max characters. func_path_progs () { _G_progs_list=$1 _G_check_func=$2 _G_PATH=${3-"$PATH"} _G_path_prog_max=0 _G_path_prog_found=false _G_save_IFS=$IFS; IFS=${PATH_SEPARATOR-:} for _G_dir in $_G_PATH; do IFS=$_G_save_IFS test -z "$_G_dir" && _G_dir=. for _G_prog_name in $_G_progs_list; do for _exeext in '' .EXE; do _G_path_prog=$_G_dir/$_G_prog_name$_exeext func_executable_p "$_G_path_prog" || continue case `"$_G_path_prog" --version 2>&1` in *GNU*) func_path_progs_result=$_G_path_prog _G_path_prog_found=: ;; *) $_G_check_func $_G_path_prog func_path_progs_result=$func_check_prog_result ;; esac $_G_path_prog_found && break 3 done done done IFS=$_G_save_IFS test -z "$func_path_progs_result" && { echo "no acceptable sed could be found in \$PATH" >&2 exit 1 } } # We want to be able to use the functions in this file before configure # has figured out where the best binaries are kept, which means we have # to search for them ourselves - except when the results are already set # where we skip the searches. # Unless the user overrides by setting SED, search the path for either GNU # sed, or the sed that truncates its output the least. test -z "$SED" && { _G_sed_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ for _G_i in 1 2 3 4 5 6 7; do _G_sed_script=$_G_sed_script$nl$_G_sed_script done echo "$_G_sed_script" 2>/dev/null | sed 99q >conftest.sed _G_sed_script= func_check_prog_sed () { _G_path_prog=$1 _G_count=0 printf 0123456789 >conftest.in while : do cat conftest.in conftest.in >conftest.tmp mv conftest.tmp conftest.in cp conftest.in conftest.nl echo '' >> conftest.nl "$_G_path_prog" -f conftest.sed conftest.out 2>/dev/null || break diff conftest.out conftest.nl >/dev/null 2>&1 || break _G_count=`expr $_G_count + 1` if test "$_G_count" -gt "$_G_path_prog_max"; then # Best one so far, save it but keep looking for a better one func_check_prog_result=$_G_path_prog _G_path_prog_max=$_G_count fi # 10*(2^10) chars as input seems more than enough test 10 -lt "$_G_count" && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out } func_path_progs "sed gsed" func_check_prog_sed "$PATH:/usr/xpg4/bin" rm -f conftest.sed SED=$func_path_progs_result } # Unless the user overrides by setting GREP, search the path for either GNU # grep, or the grep that truncates its output the least. test -z "$GREP" && { func_check_prog_grep () { _G_path_prog=$1 _G_count=0 _G_path_prog_max=0 printf 0123456789 >conftest.in while : do cat conftest.in conftest.in >conftest.tmp mv conftest.tmp conftest.in cp conftest.in conftest.nl echo 'GREP' >> conftest.nl "$_G_path_prog" -e 'GREP$' -e '-(cannot match)-' conftest.out 2>/dev/null || break diff conftest.out conftest.nl >/dev/null 2>&1 || break _G_count=`expr $_G_count + 1` if test "$_G_count" -gt "$_G_path_prog_max"; then # Best one so far, save it but keep looking for a better one func_check_prog_result=$_G_path_prog _G_path_prog_max=$_G_count fi # 10*(2^10) chars as input seems more than enough test 10 -lt "$_G_count" && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out } func_path_progs "grep ggrep" func_check_prog_grep "$PATH:/usr/xpg4/bin" GREP=$func_path_progs_result } ## ------------------------------- ## ## User overridable command paths. ## ## ------------------------------- ## # All uppercase variable names are used for environment variables. These # variables can be overridden by the user before calling a script that # uses them if a suitable command of that name is not already available # in the command search PATH. : ${CP="cp -f"} : ${ECHO="printf %s\n"} : ${EGREP="$GREP -E"} : ${FGREP="$GREP -F"} : ${LN_S="ln -s"} : ${MAKE="make"} : ${MKDIR="mkdir"} : ${MV="mv -f"} : ${RM="rm -f"} : ${SHELL="${CONFIG_SHELL-/bin/sh}"} ## -------------------- ## ## Useful sed snippets. ## ## -------------------- ## sed_dirname='s|/[^/]*$||' sed_basename='s|^.*/||' # 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. sed_double_quote_subst='s/\(["`\\]\)/\\\1/g' # Sed substitution that turns a string into a regex matching for the # string literally. sed_make_literal_regex='s|[].[^$\\*\/]|\\&|g' # Sed substitution that converts a w32 file name or path # that contains forward slashes, into one that contains # (escaped) backslashes. A very naive implementation. sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' # Re-'\' parameter expansions in output of sed_double_quote_subst that # were '\'-ed in input to the same. If an odd number of '\' preceded a # '$' in input to sed_double_quote_subst, that '$' was protected from # expansion. Since each input '\' is now two '\'s, look for any number # of runs of four '\'s followed by two '\'s and then a '$'. '\' that '$'. _G_bs='\\' _G_bs2='\\\\' _G_bs4='\\\\\\\\' _G_dollar='\$' sed_double_backslash="\ s/$_G_bs4/&\\ /g s/^$_G_bs2$_G_dollar/$_G_bs&/ s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g s/\n//g" # require_check_ifs_backslash # --------------------------- # Check if we can use backslash as IFS='\' separator, and set # $check_ifs_backshlash_broken to ':' or 'false'. require_check_ifs_backslash=func_require_check_ifs_backslash func_require_check_ifs_backslash () { _G_save_IFS=$IFS IFS='\' _G_check_ifs_backshlash='a\\b' for _G_i in $_G_check_ifs_backshlash do case $_G_i in a) check_ifs_backshlash_broken=false ;; '') break ;; *) check_ifs_backshlash_broken=: break ;; esac done IFS=$_G_save_IFS require_check_ifs_backslash=: } ## ----------------- ## ## Global variables. ## ## ----------------- ## # Except for the global variables explicitly listed below, the following # functions in the '^func_' namespace, and the '^require_' namespace # variables initialised in the 'Resource management' section, sourcing # this file will not pollute your global namespace with anything # else. There's no portable way to scope variables in Bourne shell # though, so actually running these functions will sometimes place # results into a variable named after the function, and often use # temporary variables in the '^_G_' namespace. If you are careful to # avoid using those namespaces casually in your sourcing script, things # should continue to work as you expect. And, of course, you can freely # overwrite any of the functions or variables defined here before # calling anything to customize them. EXIT_SUCCESS=0 EXIT_FAILURE=1 EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. # Allow overriding, eg assuming that you follow the convention of # putting '$debug_cmd' at the start of all your functions, you can get # bash to show function call trace with: # # debug_cmd='eval echo "${FUNCNAME[0]} $*" >&2' bash your-script-name debug_cmd=${debug_cmd-":"} exit_cmd=: # By convention, finish your script with: # # exit $exit_status # # so that you can set exit_status to non-zero if you want to indicate # something went wrong during execution without actually bailing out at # the point of failure. exit_status=$EXIT_SUCCESS # Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh # is ksh but when the shell is invoked as "sh" and the current value of # the _XPG environment variable is not equal to 1 (one), the special # positional parameter $0, within a function call, is the name of the # function. progpath=$0 # The name of this program. progname=`$ECHO "$progpath" |$SED "$sed_basename"` # Make sure we have an absolute progpath for reexecution: case $progpath in [\\/]*|[A-Za-z]:\\*) ;; *[\\/]*) progdir=`$ECHO "$progpath" |$SED "$sed_dirname"` progdir=`cd "$progdir" && pwd` progpath=$progdir/$progname ;; *) _G_IFS=$IFS IFS=${PATH_SEPARATOR-:} for progdir in $PATH; do IFS=$_G_IFS test -x "$progdir/$progname" && break done IFS=$_G_IFS test -n "$progdir" || progdir=`pwd` progpath=$progdir/$progname ;; esac ## ----------------- ## ## Standard options. ## ## ----------------- ## # The following options affect the operation of the functions defined # below, and should be set appropriately depending on run-time para- # meters passed on the command line. opt_dry_run=false opt_quiet=false opt_verbose=false # Categories 'all' and 'none' are always available. Append any others # you will pass as the first argument to func_warning from your own # code. warning_categories= # By default, display warnings according to 'opt_warning_types'. Set # 'warning_func' to ':' to elide all warnings, or func_fatal_error to # treat the next displayed warning as a fatal error. warning_func=func_warn_and_continue # Set to 'all' to display all warnings, 'none' to suppress all # warnings, or a space delimited list of some subset of # 'warning_categories' to display only the listed warnings. opt_warning_types=all ## -------------------- ## ## Resource management. ## ## -------------------- ## # This section contains definitions for functions that each ensure a # particular resource (a file, or a non-empty configuration variable for # example) is available, and if appropriate to extract default values # from pertinent package files. Call them using their associated # 'require_*' variable to ensure that they are executed, at most, once. # # It's entirely deliberate that calling these functions can set # variables that don't obey the namespace limitations obeyed by the rest # of this file, in order that that they be as useful as possible to # callers. # require_term_colors # ------------------- # Allow display of bold text on terminals that support it. require_term_colors=func_require_term_colors func_require_term_colors () { $debug_cmd test -t 1 && { # COLORTERM and USE_ANSI_COLORS environment variables take # precedence, because most terminfo databases neglect to describe # whether color sequences are supported. test -n "${COLORTERM+set}" && : ${USE_ANSI_COLORS="1"} if test 1 = "$USE_ANSI_COLORS"; then # Standard ANSI escape sequences tc_reset='' tc_bold=''; tc_standout='' tc_red=''; tc_green='' tc_blue=''; tc_cyan='' else # Otherwise trust the terminfo database after all. test -n "`tput sgr0 2>/dev/null`" && { tc_reset=`tput sgr0` test -n "`tput bold 2>/dev/null`" && tc_bold=`tput bold` tc_standout=$tc_bold test -n "`tput smso 2>/dev/null`" && tc_standout=`tput smso` test -n "`tput setaf 1 2>/dev/null`" && tc_red=`tput setaf 1` test -n "`tput setaf 2 2>/dev/null`" && tc_green=`tput setaf 2` test -n "`tput setaf 4 2>/dev/null`" && tc_blue=`tput setaf 4` test -n "`tput setaf 5 2>/dev/null`" && tc_cyan=`tput setaf 5` } fi } require_term_colors=: } ## ----------------- ## ## Function library. ## ## ----------------- ## # This section contains a variety of useful functions to call in your # scripts. Take note of the portable wrappers for features provided by # some modern shells, which will fall back to slower equivalents on # less featureful shells. # func_append VAR VALUE # --------------------- # Append VALUE onto the existing contents of VAR. # We should try to minimise forks, especially on Windows where they are # unreasonably slow, so skip the feature probes when bash or zsh are # being used: if test set = "${BASH_VERSION+set}${ZSH_VERSION+set}"; then : ${_G_HAVE_ARITH_OP="yes"} : ${_G_HAVE_XSI_OPS="yes"} # The += operator was introduced in bash 3.1 case $BASH_VERSION in [12].* | 3.0 | 3.0*) ;; *) : ${_G_HAVE_PLUSEQ_OP="yes"} ;; esac fi # _G_HAVE_PLUSEQ_OP # Can be empty, in which case the shell is probed, "yes" if += is # usable or anything else if it does not work. test -z "$_G_HAVE_PLUSEQ_OP" \ && (eval 'x=a; x+=" b"; test "a b" = "$x"') 2>/dev/null \ && _G_HAVE_PLUSEQ_OP=yes if test yes = "$_G_HAVE_PLUSEQ_OP" then # This is an XSI compatible shell, allowing a faster implementation... eval 'func_append () { $debug_cmd eval "$1+=\$2" }' else # ...otherwise fall back to using expr, which is often a shell builtin. func_append () { $debug_cmd eval "$1=\$$1\$2" } fi # func_append_quoted VAR VALUE # ---------------------------- # Quote VALUE and append to the end of shell variable VAR, separated # by a space. if test yes = "$_G_HAVE_PLUSEQ_OP"; then eval 'func_append_quoted () { $debug_cmd func_quote_arg pretty "$2" eval "$1+=\\ \$func_quote_arg_result" }' else func_append_quoted () { $debug_cmd func_quote_arg pretty "$2" eval "$1=\$$1\\ \$func_quote_arg_result" } fi # func_append_uniq VAR VALUE # -------------------------- # Append unique VALUE onto the existing contents of VAR, assuming # entries are delimited by the first character of VALUE. For example: # # func_append_uniq options " --another-option option-argument" # # will only append to $options if " --another-option option-argument " # is not already present somewhere in $options already (note spaces at # each end implied by leading space in second argument). func_append_uniq () { $debug_cmd eval _G_current_value='`$ECHO $'$1'`' _G_delim=`expr "$2" : '\(.\)'` case $_G_delim$_G_current_value$_G_delim in *"$2$_G_delim"*) ;; *) func_append "$@" ;; esac } # func_arith TERM... # ------------------ # Set func_arith_result to the result of evaluating TERMs. test -z "$_G_HAVE_ARITH_OP" \ && (eval 'test 2 = $(( 1 + 1 ))') 2>/dev/null \ && _G_HAVE_ARITH_OP=yes if test yes = "$_G_HAVE_ARITH_OP"; then eval 'func_arith () { $debug_cmd func_arith_result=$(( $* )) }' else func_arith () { $debug_cmd func_arith_result=`expr "$@"` } fi # func_basename FILE # ------------------ # Set func_basename_result to FILE with everything up to and including # the last / stripped. if test yes = "$_G_HAVE_XSI_OPS"; then # If this shell supports suffix pattern removal, then use it to avoid # forking. Hide the definitions single quotes in case the shell chokes # on unsupported syntax... _b='func_basename_result=${1##*/}' _d='case $1 in */*) func_dirname_result=${1%/*}$2 ;; * ) func_dirname_result=$3 ;; esac' else # ...otherwise fall back to using sed. _b='func_basename_result=`$ECHO "$1" |$SED "$sed_basename"`' _d='func_dirname_result=`$ECHO "$1" |$SED "$sed_dirname"` if test "X$func_dirname_result" = "X$1"; then func_dirname_result=$3 else func_append func_dirname_result "$2" fi' fi eval 'func_basename () { $debug_cmd '"$_b"' }' # func_dirname FILE APPEND NONDIR_REPLACEMENT # ------------------------------------------- # Compute the dirname of FILE. If nonempty, add APPEND to the result, # otherwise set result to NONDIR_REPLACEMENT. eval 'func_dirname () { $debug_cmd '"$_d"' }' # 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 returned in "$func_basename_result" # For efficiency, we do not delegate to the functions above but instead # duplicate the functionality here. eval 'func_dirname_and_basename () { $debug_cmd '"$_b"' '"$_d"' }' # func_echo ARG... # ---------------- # Echo program name prefixed message. func_echo () { $debug_cmd _G_message=$* func_echo_IFS=$IFS IFS=$nl for _G_line in $_G_message; do IFS=$func_echo_IFS $ECHO "$progname: $_G_line" done IFS=$func_echo_IFS } # func_echo_all ARG... # -------------------- # Invoke $ECHO with all args, space-separated. func_echo_all () { $ECHO "$*" } # func_echo_infix_1 INFIX ARG... # ------------------------------ # Echo program name, followed by INFIX on the first line, with any # additional lines not showing INFIX. func_echo_infix_1 () { $debug_cmd $require_term_colors _G_infix=$1; shift _G_indent=$_G_infix _G_prefix="$progname: $_G_infix: " _G_message=$* # Strip color escape sequences before counting printable length for _G_tc in "$tc_reset" "$tc_bold" "$tc_standout" "$tc_red" "$tc_green" "$tc_blue" "$tc_cyan" do test -n "$_G_tc" && { _G_esc_tc=`$ECHO "$_G_tc" | $SED "$sed_make_literal_regex"` _G_indent=`$ECHO "$_G_indent" | $SED "s|$_G_esc_tc||g"` } done _G_indent="$progname: "`echo "$_G_indent" | $SED 's|.| |g'`" " ## exclude from sc_prohibit_nested_quotes func_echo_infix_1_IFS=$IFS IFS=$nl for _G_line in $_G_message; do IFS=$func_echo_infix_1_IFS $ECHO "$_G_prefix$tc_bold$_G_line$tc_reset" >&2 _G_prefix=$_G_indent done IFS=$func_echo_infix_1_IFS } # func_error ARG... # ----------------- # Echo program name prefixed message to standard error. func_error () { $debug_cmd $require_term_colors func_echo_infix_1 " $tc_standout${tc_red}error$tc_reset" "$*" >&2 } # func_fatal_error ARG... # ----------------------- # Echo program name prefixed message to standard error, and exit. func_fatal_error () { $debug_cmd func_error "$*" exit $EXIT_FAILURE } # func_grep EXPRESSION FILENAME # ----------------------------- # Check whether EXPRESSION matches any line of FILENAME, without output. func_grep () { $debug_cmd $GREP "$1" "$2" >/dev/null 2>&1 } # func_len STRING # --------------- # Set func_len_result to the length of STRING. STRING may not # start with a hyphen. test -z "$_G_HAVE_XSI_OPS" \ && (eval 'x=a/b/c; test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ && _G_HAVE_XSI_OPS=yes if test yes = "$_G_HAVE_XSI_OPS"; then eval 'func_len () { $debug_cmd func_len_result=${#1} }' else func_len () { $debug_cmd func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` } fi # func_mkdir_p DIRECTORY-PATH # --------------------------- # Make sure the entire path to DIRECTORY-PATH is available. func_mkdir_p () { $debug_cmd _G_directory_path=$1 _G_dir_list= if test -n "$_G_directory_path" && test : != "$opt_dry_run"; then # Protect directory names starting with '-' case $_G_directory_path in -*) _G_directory_path=./$_G_directory_path ;; esac # While some portion of DIR does not yet exist... while test ! -d "$_G_directory_path"; do # ...make a list in topmost first order. Use a colon delimited # list in case some portion of path contains whitespace. _G_dir_list=$_G_directory_path:$_G_dir_list # If the last portion added has no slash in it, the list is done case $_G_directory_path in */*) ;; *) break ;; esac # ...otherwise throw away the child directory and loop _G_directory_path=`$ECHO "$_G_directory_path" | $SED -e "$sed_dirname"` done _G_dir_list=`$ECHO "$_G_dir_list" | $SED 's|:*$||'` func_mkdir_p_IFS=$IFS; IFS=: for _G_dir in $_G_dir_list; do IFS=$func_mkdir_p_IFS # mkdir can fail with a 'File exist' error if two processes # try to create one of the directories concurrently. Don't # stop in that case! $MKDIR "$_G_dir" 2>/dev/null || : done IFS=$func_mkdir_p_IFS # Bail out if we (or some other process) failed to create a directory. test -d "$_G_directory_path" || \ func_fatal_error "Failed to create '$1'" fi } # func_mktempdir [BASENAME] # ------------------------- # Make a temporary directory that won't clash with other running # libtool processes, and avoids race conditions if possible. If # given, BASENAME is the basename for that directory. func_mktempdir () { $debug_cmd _G_template=${TMPDIR-/tmp}/${1-$progname} if test : = "$opt_dry_run"; then # Return a directory name, but don't create it in dry-run mode _G_tmpdir=$_G_template-$$ else # If mktemp works, use that first and foremost _G_tmpdir=`mktemp -d "$_G_template-XXXXXXXX" 2>/dev/null` if test ! -d "$_G_tmpdir"; then # Failing that, at least try and use $RANDOM to avoid a race _G_tmpdir=$_G_template-${RANDOM-0}$$ func_mktempdir_umask=`umask` umask 0077 $MKDIR "$_G_tmpdir" umask $func_mktempdir_umask fi # If we're not in dry-run mode, bomb out on failure test -d "$_G_tmpdir" || \ func_fatal_error "cannot create temporary directory '$_G_tmpdir'" fi $ECHO "$_G_tmpdir" } # func_normal_abspath PATH # ------------------------ # Remove doubled-up and trailing slashes, "." path components, # and cancel out any ".." path components in PATH after making # it an absolute path. func_normal_abspath () { $debug_cmd # These SED scripts presuppose an absolute path with a trailing slash. _G_pathcar='s|^/\([^/]*\).*$|\1|' _G_pathcdr='s|^/[^/]*||' _G_removedotparts=':dotsl s|/\./|/|g t dotsl s|/\.$|/|' _G_collapseslashes='s|/\{1,\}|/|g' _G_finalslash='s|/*$|/|' # Start from root dir and reassemble the path. func_normal_abspath_result= func_normal_abspath_tpath=$1 func_normal_abspath_altnamespace= case $func_normal_abspath_tpath in "") # Empty path, that just means $cwd. func_stripname '' '/' "`pwd`" func_normal_abspath_result=$func_stripname_result return ;; # The next three entries are used to spot a run of precisely # two leading slashes without using negated character classes; # we take advantage of case's first-match behaviour. ///*) # Unusual form of absolute path, do nothing. ;; //*) # Not necessarily an ordinary path; POSIX reserves leading '//' # and for example Cygwin uses it to access remote file shares # over CIFS/SMB, so we conserve a leading double slash if found. func_normal_abspath_altnamespace=/ ;; /*) # Absolute path, do nothing. ;; *) # Relative path, prepend $cwd. func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath ;; esac # Cancel out all the simple stuff to save iterations. We also want # the path to end with a slash for ease of parsing, so make sure # there is one (and only one) here. func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ -e "$_G_removedotparts" -e "$_G_collapseslashes" -e "$_G_finalslash"` while :; do # Processed it all yet? if test / = "$func_normal_abspath_tpath"; then # If we ascended to the root using ".." the result may be empty now. if test -z "$func_normal_abspath_result"; then func_normal_abspath_result=/ fi break fi func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ -e "$_G_pathcar"` func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ -e "$_G_pathcdr"` # Figure out what to do with it case $func_normal_abspath_tcomponent in "") # Trailing empty path component, ignore it. ;; ..) # Parent dir; strip last assembled component from result. func_dirname "$func_normal_abspath_result" func_normal_abspath_result=$func_dirname_result ;; *) # Actual path component, append it. func_append func_normal_abspath_result "/$func_normal_abspath_tcomponent" ;; esac done # Restore leading double-slash if one was found on entry. func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result } # func_notquiet ARG... # -------------------- # Echo program name prefixed message only when not in quiet mode. func_notquiet () { $debug_cmd $opt_quiet || func_echo ${1+"$@"} # A bug in bash halts the script if the last line of a function # fails when set -e is in force, so we need another command to # work around that: : } # func_relative_path SRCDIR DSTDIR # -------------------------------- # Set func_relative_path_result to the relative path from SRCDIR to DSTDIR. func_relative_path () { $debug_cmd func_relative_path_result= func_normal_abspath "$1" func_relative_path_tlibdir=$func_normal_abspath_result func_normal_abspath "$2" func_relative_path_tbindir=$func_normal_abspath_result # Ascend the tree starting from libdir while :; do # check if we have found a prefix of bindir case $func_relative_path_tbindir in $func_relative_path_tlibdir) # found an exact match func_relative_path_tcancelled= break ;; $func_relative_path_tlibdir*) # found a matching prefix func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" func_relative_path_tcancelled=$func_stripname_result if test -z "$func_relative_path_result"; then func_relative_path_result=. fi break ;; *) func_dirname $func_relative_path_tlibdir func_relative_path_tlibdir=$func_dirname_result if test -z "$func_relative_path_tlibdir"; then # Have to descend all the way to the root! func_relative_path_result=../$func_relative_path_result func_relative_path_tcancelled=$func_relative_path_tbindir break fi func_relative_path_result=../$func_relative_path_result ;; esac done # Now calculate path; take care to avoid doubling-up slashes. func_stripname '' '/' "$func_relative_path_result" func_relative_path_result=$func_stripname_result func_stripname '/' '/' "$func_relative_path_tcancelled" if test -n "$func_stripname_result"; then func_append func_relative_path_result "/$func_stripname_result" fi # Normalisation. If bindir is libdir, return '.' else relative path. if test -n "$func_relative_path_result"; then func_stripname './' '' "$func_relative_path_result" func_relative_path_result=$func_stripname_result fi test -n "$func_relative_path_result" || func_relative_path_result=. : } # func_quote_portable EVAL ARG # ---------------------------- # Internal function to portably implement func_quote_arg. Note that we still # keep attention to performance here so we as much as possible try to avoid # calling sed binary (so far O(N) complexity as long as func_append is O(1)). func_quote_portable () { $debug_cmd $require_check_ifs_backslash func_quote_portable_result=$2 # one-time-loop (easy break) while true do if $1; then func_quote_portable_result=`$ECHO "$2" | $SED \ -e "$sed_double_quote_subst" -e "$sed_double_backslash"` break fi # Quote for eval. case $func_quote_portable_result in *[\\\`\"\$]*) # Fallback to sed for $func_check_bs_ifs_broken=:, or when the string # contains the shell wildcard characters. case $check_ifs_backshlash_broken$func_quote_portable_result in :*|*[\[\*\?]*) func_quote_portable_result=`$ECHO "$func_quote_portable_result" \ | $SED "$sed_quote_subst"` break ;; esac func_quote_portable_old_IFS=$IFS for _G_char in '\' '`' '"' '$' do # STATE($1) PREV($2) SEPARATOR($3) set start "" "" func_quote_portable_result=dummy"$_G_char$func_quote_portable_result$_G_char"dummy IFS=$_G_char for _G_part in $func_quote_portable_result do case $1 in quote) func_append func_quote_portable_result "$3$2" set quote "$_G_part" "\\$_G_char" ;; start) set first "" "" func_quote_portable_result= ;; first) set quote "$_G_part" "" ;; esac done done IFS=$func_quote_portable_old_IFS ;; *) ;; esac break done func_quote_portable_unquoted_result=$func_quote_portable_result case $func_quote_portable_result in # double-quote args containing shell metacharacters to delay # word splitting, command substitution and variable expansion # for a subsequent eval. # many bourne shells cannot handle close brackets correctly # in scan sets, so we specify it separately. *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") func_quote_portable_result=\"$func_quote_portable_result\" ;; esac } # func_quotefast_eval ARG # ----------------------- # Quote one ARG (internal). This is equivalent to 'func_quote_arg eval ARG', # but optimized for speed. Result is stored in $func_quotefast_eval. if test xyes = `(x=; printf -v x %q yes; echo x"$x") 2>/dev/null`; then printf -v _GL_test_printf_tilde %q '~' if test '\~' = "$_GL_test_printf_tilde"; then func_quotefast_eval () { printf -v func_quotefast_eval_result %q "$1" } else # Broken older Bash implementations. Make those faster too if possible. func_quotefast_eval () { case $1 in '~'*) func_quote_portable false "$1" func_quotefast_eval_result=$func_quote_portable_result ;; *) printf -v func_quotefast_eval_result %q "$1" ;; esac } fi else func_quotefast_eval () { func_quote_portable false "$1" func_quotefast_eval_result=$func_quote_portable_result } fi # func_quote_arg MODEs ARG # ------------------------ # Quote one ARG to be evaled later. MODEs argument may contain zero or more # specifiers listed below separated by ',' character. This function returns two # values: # i) func_quote_arg_result # double-quoted (when needed), suitable for a subsequent eval # ii) func_quote_arg_unquoted_result # has all characters that are still active within double # quotes backslashified. Available only if 'unquoted' is specified. # # Available modes: # ---------------- # 'eval' (default) # - escape shell special characters # 'expand' # - the same as 'eval'; but do not quote variable references # 'pretty' # - request aesthetic output, i.e. '"a b"' instead of 'a\ b'. This might # be used later in func_quote to get output like: 'echo "a b"' instead # of 'echo a\ b'. This is slower than default on some shells. # 'unquoted' # - produce also $func_quote_arg_unquoted_result which does not contain # wrapping double-quotes. # # Examples for 'func_quote_arg pretty,unquoted string': # # string | *_result | *_unquoted_result # ------------+-----------------------+------------------- # " | \" | \" # a b | "a b" | a b # "a b" | "\"a b\"" | \"a b\" # * | "*" | * # z="${x-$y}" | "z=\"\${x-\$y}\"" | z=\"\${x-\$y}\" # # Examples for 'func_quote_arg pretty,unquoted,expand string': # # string | *_result | *_unquoted_result # --------------+---------------------+-------------------- # z="${x-$y}" | "z=\"${x-$y}\"" | z=\"${x-$y}\" func_quote_arg () { _G_quote_expand=false case ,$1, in *,expand,*) _G_quote_expand=: ;; esac case ,$1, in *,pretty,*|*,expand,*|*,unquoted,*) func_quote_portable $_G_quote_expand "$2" func_quote_arg_result=$func_quote_portable_result func_quote_arg_unquoted_result=$func_quote_portable_unquoted_result ;; *) # Faster quote-for-eval for some shells. func_quotefast_eval "$2" func_quote_arg_result=$func_quotefast_eval_result ;; esac } # func_quote MODEs ARGs... # ------------------------ # Quote all ARGs to be evaled later and join them into single command. See # func_quote_arg's description for more info. func_quote () { $debug_cmd _G_func_quote_mode=$1 ; shift func_quote_result= while test 0 -lt $#; do func_quote_arg "$_G_func_quote_mode" "$1" if test -n "$func_quote_result"; then func_append func_quote_result " $func_quote_arg_result" else func_append func_quote_result "$func_quote_arg_result" fi shift done } # func_stripname PREFIX SUFFIX NAME # --------------------------------- # strip PREFIX and SUFFIX from NAME, and store in func_stripname_result. # 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). if test yes = "$_G_HAVE_XSI_OPS"; then eval 'func_stripname () { $debug_cmd # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are # positional parameters, so assign one to ordinary variable first. func_stripname_result=$3 func_stripname_result=${func_stripname_result#"$1"} func_stripname_result=${func_stripname_result%"$2"} }' else func_stripname () { $debug_cmd case $2 in .*) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%\\\\$2\$%%"`;; *) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%$2\$%%"`;; esac } fi # func_show_eval CMD [FAIL_EXP] # ----------------------------- # Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is # not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP # is given, then evaluate it. func_show_eval () { $debug_cmd _G_cmd=$1 _G_fail_exp=${2-':'} func_quote_arg pretty,expand "$_G_cmd" eval "func_notquiet $func_quote_arg_result" $opt_dry_run || { eval "$_G_cmd" _G_status=$? if test 0 -ne "$_G_status"; then eval "(exit $_G_status); $_G_fail_exp" fi } } # func_show_eval_locale CMD [FAIL_EXP] # ------------------------------------ # Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is # not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP # is given, then evaluate it. Use the saved locale for evaluation. func_show_eval_locale () { $debug_cmd _G_cmd=$1 _G_fail_exp=${2-':'} $opt_quiet || { func_quote_arg expand,pretty "$_G_cmd" eval "func_echo $func_quote_arg_result" } $opt_dry_run || { eval "$_G_user_locale $_G_cmd" _G_status=$? eval "$_G_safe_locale" if test 0 -ne "$_G_status"; then eval "(exit $_G_status); $_G_fail_exp" fi } } # func_tr_sh # ---------- # Turn $1 into a string suitable for a shell variable name. # Result is stored in $func_tr_sh_result. All characters # not in the set a-zA-Z0-9_ are replaced with '_'. Further, # if $1 begins with a digit, a '_' is prepended as well. func_tr_sh () { $debug_cmd case $1 in [0-9]* | *[!a-zA-Z0-9_]*) func_tr_sh_result=`$ECHO "$1" | $SED -e 's/^\([0-9]\)/_\1/' -e 's/[^a-zA-Z0-9_]/_/g'` ;; * ) func_tr_sh_result=$1 ;; esac } # func_verbose ARG... # ------------------- # Echo program name prefixed message in verbose mode only. func_verbose () { $debug_cmd $opt_verbose && func_echo "$*" : } # func_warn_and_continue ARG... # ----------------------------- # Echo program name prefixed warning message to standard error. func_warn_and_continue () { $debug_cmd $require_term_colors func_echo_infix_1 "${tc_red}warning$tc_reset" "$*" >&2 } # func_warning CATEGORY ARG... # ---------------------------- # Echo program name prefixed warning message to standard error. Warning # messages can be filtered according to CATEGORY, where this function # elides messages where CATEGORY is not listed in the global variable # 'opt_warning_types'. func_warning () { $debug_cmd # CATEGORY must be in the warning_categories list! case " $warning_categories " in *" $1 "*) ;; *) func_internal_error "invalid warning category '$1'" ;; esac _G_category=$1 shift case " $opt_warning_types " in *" $_G_category "*) $warning_func ${1+"$@"} ;; esac } # func_sort_ver VER1 VER2 # ----------------------- # 'sort -V' is not generally available. # Note this deviates from the version comparison in automake # in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a # but this should suffice as we won't be specifying old # version formats or redundant trailing .0 in bootstrap.conf. # If we did want full compatibility then we should probably # use m4_version_compare from autoconf. func_sort_ver () { $debug_cmd printf '%s\n%s\n' "$1" "$2" \ | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 8,8n -k 9,9n } # func_lt_ver PREV CURR # --------------------- # Return true if PREV and CURR are in the correct order according to # func_sort_ver, otherwise false. Use it like this: # # func_lt_ver "$prev_ver" "$proposed_ver" || func_fatal_error "..." func_lt_ver () { $debug_cmd test "x$1" = x`func_sort_ver "$1" "$2" | $SED 1q` } # Local variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" # time-stamp-time-zone: "UTC" # End: #! /bin/sh # A portable, pluggable option parser for Bourne shell. # Written by Gary V. Vaughan, 2010 # This is free software. There is NO warranty; not even for # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # # Copyright (C) 2010-2019, 2021, 2023-2024 Bootstrap Authors # # This file is dual licensed under the terms of the MIT license # , and GPL version 2 or later # . You must apply one of # these licenses when using or redistributing this software or any of # the files within it. See the URLs above, or the file `LICENSE` # included in the Bootstrap distribution for the full license texts. # Please report bugs or propose patches to: # # Set a version string for this script. scriptversion=2019-02-19.15; # UTC ## ------ ## ## Usage. ## ## ------ ## # This file is a library for parsing options in your shell scripts along # with assorted other useful supporting features that you can make use # of too. # # For the simplest scripts you might need only: # # #!/bin/sh # . relative/path/to/funclib.sh # . relative/path/to/options-parser # scriptversion=1.0 # func_options ${1+"$@"} # eval set dummy "$func_options_result"; shift # ...rest of your script... # # In order for the '--version' option to work, you will need to have a # suitably formatted comment like the one at the top of this file # starting with '# Written by ' and ending with '# Copyright'. # # For '-h' and '--help' to work, you will also need a one line # description of your script's purpose in a comment directly above the # '# Written by ' line, like the one at the top of this file. # # The default options also support '--debug', which will turn on shell # execution tracing (see the comment above debug_cmd below for another # use), and '--verbose' and the func_verbose function to allow your script # to display verbose messages only when your user has specified # '--verbose'. # # After sourcing this file, you can plug in processing for additional # options by amending the variables from the 'Configuration' section # below, and following the instructions in the 'Option parsing' # section further down. ## -------------- ## ## Configuration. ## ## -------------- ## # You should override these variables in your script after sourcing this # file so that they reflect the customisations you have added to the # option parser. # The usage line for option parsing errors and the start of '-h' and # '--help' output messages. You can embed shell variables for delayed # expansion at the time the message is displayed, but you will need to # quote other shell meta-characters carefully to prevent them being # expanded when the contents are evaled. usage='$progpath [OPTION]...' # Short help message in response to '-h' and '--help'. Add to this or # override it after sourcing this library to reflect the full set of # options your script accepts. usage_message="\ --debug enable verbose shell tracing -W, --warnings=CATEGORY report the warnings falling in CATEGORY [all] -v, --verbose verbosely report processing --version print version information and exit -h, --help print short or long help message and exit " # Additional text appended to 'usage_message' in response to '--help'. long_help_message=" Warning categories include: 'all' show all warnings 'none' turn off all the warnings 'error' warnings are treated as fatal errors" # Help message printed before fatal option parsing errors. fatal_help="Try '\$progname --help' for more information." ## ------------------------- ## ## Hook function management. ## ## ------------------------- ## # This section contains functions for adding, removing, and running hooks # in the main code. A hook is just a list of function names that can be # run in order later on. # func_hookable FUNC_NAME # ----------------------- # Declare that FUNC_NAME will run hooks added with # 'func_add_hook FUNC_NAME ...'. func_hookable () { $debug_cmd func_append hookable_fns " $1" } # func_add_hook FUNC_NAME HOOK_FUNC # --------------------------------- # Request that FUNC_NAME call HOOK_FUNC before it returns. FUNC_NAME must # first have been declared "hookable" by a call to 'func_hookable'. func_add_hook () { $debug_cmd case " $hookable_fns " in *" $1 "*) ;; *) func_fatal_error "'$1' does not accept hook functions." ;; esac eval func_append ${1}_hooks '" $2"' } # func_remove_hook FUNC_NAME HOOK_FUNC # ------------------------------------ # Remove HOOK_FUNC from the list of hook functions to be called by # FUNC_NAME. func_remove_hook () { $debug_cmd eval ${1}_hooks='`$ECHO "\$'$1'_hooks" |$SED "s| '$2'||"`' } # func_propagate_result FUNC_NAME_A FUNC_NAME_B # --------------------------------------------- # If the *_result variable of FUNC_NAME_A _is set_, assign its value to # *_result variable of FUNC_NAME_B. func_propagate_result () { $debug_cmd func_propagate_result_result=: if eval "test \"\${${1}_result+set}\" = set" then eval "${2}_result=\$${1}_result" else func_propagate_result_result=false fi } # func_run_hooks FUNC_NAME [ARG]... # --------------------------------- # Run all hook functions registered to FUNC_NAME. # It's assumed that the list of hook functions contains nothing more # than a whitespace-delimited list of legal shell function names, and # no effort is wasted trying to catch shell meta-characters or preserve # whitespace. func_run_hooks () { $debug_cmd case " $hookable_fns " in *" $1 "*) ;; *) func_fatal_error "'$1' does not support hook functions." ;; esac eval _G_hook_fns=\$$1_hooks; shift for _G_hook in $_G_hook_fns; do func_unset "${_G_hook}_result" eval $_G_hook '${1+"$@"}' func_propagate_result $_G_hook func_run_hooks if $func_propagate_result_result; then eval set dummy "$func_run_hooks_result"; shift fi done } ## --------------- ## ## Option parsing. ## ## --------------- ## # In order to add your own option parsing hooks, you must accept the # full positional parameter list from your hook function. You may remove # or edit any options that you action, and then pass back the remaining # unprocessed options in '_result', escaped # suitably for 'eval'. # # The '_result' variable is automatically unset # before your hook gets called; for best performance, only set the # *_result variable when necessary (i.e. don't call the 'func_quote' # function unnecessarily because it can be an expensive operation on some # machines). # # Like this: # # my_options_prep () # { # $debug_cmd # # # Extend the existing usage message. # usage_message=$usage_message' # -s, --silent don'\''t print informational messages # ' # # No change in '$@' (ignored completely by this hook). Leave # # my_options_prep_result variable intact. # } # func_add_hook func_options_prep my_options_prep # # # my_silent_option () # { # $debug_cmd # # args_changed=false # # # Note that, for efficiency, we parse as many options as we can # # recognise in a loop before passing the remainder back to the # # caller on the first unrecognised argument we encounter. # while test $# -gt 0; do # opt=$1; shift # case $opt in # --silent|-s) opt_silent=: # args_changed=: # ;; # # Separate non-argument short options: # -s*) func_split_short_opt "$_G_opt" # set dummy "$func_split_short_opt_name" \ # "-$func_split_short_opt_arg" ${1+"$@"} # shift # args_changed=: # ;; # *) # Make sure the first unrecognised option "$_G_opt" # # is added back to "$@" in case we need it later, # # if $args_changed was set to 'true'. # set dummy "$_G_opt" ${1+"$@"}; shift; break ;; # esac # done # # # Only call 'func_quote' here if we processed at least one argument. # if $args_changed; then # func_quote eval ${1+"$@"} # my_silent_option_result=$func_quote_result # fi # } # func_add_hook func_parse_options my_silent_option # # # my_option_validation () # { # $debug_cmd # # $opt_silent && $opt_verbose && func_fatal_help "\ # '--silent' and '--verbose' options are mutually exclusive." # } # func_add_hook func_validate_options my_option_validation # # You'll also need to manually amend $usage_message to reflect the extra # options you parse. It's preferable to append if you can, so that # multiple option parsing hooks can be added safely. # func_options_finish [ARG]... # ---------------------------- # Finishing the option parse loop (call 'func_options' hooks ATM). func_options_finish () { $debug_cmd func_run_hooks func_options ${1+"$@"} func_propagate_result func_run_hooks func_options_finish } # func_options [ARG]... # --------------------- # All the functions called inside func_options are hookable. See the # individual implementations for details. func_hookable func_options func_options () { $debug_cmd _G_options_quoted=false for my_func in options_prep parse_options validate_options options_finish do func_unset func_${my_func}_result func_unset func_run_hooks_result eval func_$my_func '${1+"$@"}' func_propagate_result func_$my_func func_options if $func_propagate_result_result; then eval set dummy "$func_options_result"; shift _G_options_quoted=: fi done $_G_options_quoted || { # As we (func_options) are top-level options-parser function and # nobody quoted "$@" for us yet, we need to do it explicitly for # caller. func_quote eval ${1+"$@"} func_options_result=$func_quote_result } } # func_options_prep [ARG]... # -------------------------- # All initialisations required before starting the option parse loop. # Note that when calling hook functions, we pass through the list of # positional parameters. If a hook function modifies that list, and # needs to propagate that back to rest of this script, then the complete # modified list must be put in 'func_run_hooks_result' before returning. func_hookable func_options_prep func_options_prep () { $debug_cmd # Option defaults: opt_verbose=false opt_warning_types= func_run_hooks func_options_prep ${1+"$@"} func_propagate_result func_run_hooks func_options_prep } # func_parse_options [ARG]... # --------------------------- # The main option parsing loop. func_hookable func_parse_options func_parse_options () { $debug_cmd _G_parse_options_requote=false # this just eases exit handling while test $# -gt 0; do # Defer to hook functions for initial option parsing, so they # get priority in the event of reusing an option name. func_run_hooks func_parse_options ${1+"$@"} func_propagate_result func_run_hooks func_parse_options if $func_propagate_result_result; then eval set dummy "$func_parse_options_result"; shift # Even though we may have changed "$@", we passed the "$@" array # down into the hook and it quoted it for us (because we are in # this if-branch). No need to quote it again. _G_parse_options_requote=false fi # Break out of the loop if we already parsed every option. test $# -gt 0 || break # We expect that one of the options parsed in this function matches # and thus we remove _G_opt from "$@" and need to re-quote. _G_match_parse_options=: _G_opt=$1 shift case $_G_opt in --debug|-x) debug_cmd='set -x' func_echo "enabling shell trace mode" >&2 $debug_cmd ;; --no-warnings|--no-warning|--no-warn) set dummy --warnings none ${1+"$@"} shift ;; --warnings|--warning|-W) if test $# = 0 && func_missing_arg $_G_opt; then _G_parse_options_requote=: break fi case " $warning_categories $1" in *" $1 "*) # trailing space prevents matching last $1 above func_append_uniq opt_warning_types " $1" ;; *all) opt_warning_types=$warning_categories ;; *none) opt_warning_types=none warning_func=: ;; *error) opt_warning_types=$warning_categories warning_func=func_fatal_error ;; *) func_fatal_error \ "unsupported warning category: '$1'" ;; esac shift ;; --verbose|-v) opt_verbose=: ;; --version) func_version ;; -\?|-h) func_usage ;; --help) func_help ;; # Separate optargs to long options (plugins may need this): --*=*) func_split_equals "$_G_opt" set dummy "$func_split_equals_lhs" \ "$func_split_equals_rhs" ${1+"$@"} shift ;; # Separate optargs to short options: -W*) func_split_short_opt "$_G_opt" set dummy "$func_split_short_opt_name" \ "$func_split_short_opt_arg" ${1+"$@"} shift ;; # Separate non-argument short options: -\?*|-h*|-v*|-x*) func_split_short_opt "$_G_opt" set dummy "$func_split_short_opt_name" \ "-$func_split_short_opt_arg" ${1+"$@"} shift ;; --) _G_parse_options_requote=: ; break ;; -*) func_fatal_help "unrecognised option: '$_G_opt'" ;; *) set dummy "$_G_opt" ${1+"$@"}; shift _G_match_parse_options=false break ;; esac if $_G_match_parse_options; then _G_parse_options_requote=: fi done if $_G_parse_options_requote; then # save modified positional parameters for caller func_quote eval ${1+"$@"} func_parse_options_result=$func_quote_result fi } # func_validate_options [ARG]... # ------------------------------ # Perform any sanity checks on option settings and/or unconsumed # arguments. func_hookable func_validate_options func_validate_options () { $debug_cmd # Display all warnings if -W was not given. test -n "$opt_warning_types" || opt_warning_types=" $warning_categories" func_run_hooks func_validate_options ${1+"$@"} func_propagate_result func_run_hooks func_validate_options # Bail if the options were screwed! $exit_cmd $EXIT_FAILURE } ## ----------------- ## ## Helper functions. ## ## ----------------- ## # This section contains the helper functions used by the rest of the # hookable option parser framework in ascii-betical order. # func_fatal_help ARG... # ---------------------- # Echo program name prefixed message to standard error, followed by # a help hint, and exit. func_fatal_help () { $debug_cmd eval \$ECHO \""Usage: $usage"\" eval \$ECHO \""$fatal_help"\" func_error ${1+"$@"} exit $EXIT_FAILURE } # func_help # --------- # Echo long help message to standard output and exit. func_help () { $debug_cmd func_usage_message $ECHO "$long_help_message" exit 0 } # func_missing_arg ARGNAME # ------------------------ # Echo program name prefixed message to standard error and set global # exit_cmd. func_missing_arg () { $debug_cmd func_error "Missing argument for '$1'." exit_cmd=exit } # func_split_equals STRING # ------------------------ # Set func_split_equals_lhs and func_split_equals_rhs shell variables # after splitting STRING at the '=' sign. test -z "$_G_HAVE_XSI_OPS" \ && (eval 'x=a/b/c; test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ && _G_HAVE_XSI_OPS=yes if test yes = "$_G_HAVE_XSI_OPS" then # This is an XSI compatible shell, allowing a faster implementation... eval 'func_split_equals () { $debug_cmd func_split_equals_lhs=${1%%=*} func_split_equals_rhs=${1#*=} if test "x$func_split_equals_lhs" = "x$1"; then func_split_equals_rhs= fi }' else # ...otherwise fall back to using expr, which is often a shell builtin. func_split_equals () { $debug_cmd func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'` func_split_equals_rhs= test "x$func_split_equals_lhs=" = "x$1" \ || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'` } fi #func_split_equals # func_split_short_opt SHORTOPT # ----------------------------- # Set func_split_short_opt_name and func_split_short_opt_arg shell # variables after splitting SHORTOPT after the 2nd character. if test yes = "$_G_HAVE_XSI_OPS" then # This is an XSI compatible shell, allowing a faster implementation... eval 'func_split_short_opt () { $debug_cmd func_split_short_opt_arg=${1#??} func_split_short_opt_name=${1%"$func_split_short_opt_arg"} }' else # ...otherwise fall back to using expr, which is often a shell builtin. func_split_short_opt () { $debug_cmd func_split_short_opt_name=`expr "x$1" : 'x\(-.\)'` func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'` } fi #func_split_short_opt # func_usage # ---------- # Echo short help message to standard output and exit. func_usage () { $debug_cmd func_usage_message $ECHO "Run '$progname --help |${PAGER-more}' for full usage" exit 0 } # func_usage_message # ------------------ # Echo short help message to standard output. func_usage_message () { $debug_cmd eval \$ECHO \""Usage: $usage"\" echo $SED -n 's|^# || /^Written by/{ x;p;x } h /^Written by/q' < "$progpath" echo eval \$ECHO \""$usage_message"\" } # func_version # ------------ # Echo version message to standard output and exit. # The version message is extracted from the calling file's header # comments, with leading '# ' stripped: # 1. First display the progname and version # 2. Followed by the header comment line matching /^# Written by / # 3. Then a blank line followed by the first following line matching # /^# Copyright / # 4. Immediately followed by any lines between the previous matches, # except lines preceding the intervening completely blank line. # For example, see the header comments of this file. func_version () { $debug_cmd printf '%s\n' "$progname $scriptversion" $SED -n ' /^# Written by /!b s|^# ||; p; n :fwd2blnk /./ { n b fwd2blnk } p; n :holdwrnt s|^# || s|^# *$|| /^Copyright /!{ /./H n b holdwrnt } s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2| G s|\(\n\)\n*|\1|g p; q' < "$progpath" exit $? } # Local variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-pattern: "30/scriptversion=%:y-%02m-%02d.%02H; # UTC" # time-stamp-time-zone: "UTC" # End: # Set a version string. scriptversion='(GNU libtool) 2.5.4' # func_version # ------------ # Echo version message to standard output and exit. func_version () { $debug_cmd year=`date +%Y` cat < This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Originally written by Gordon Matzigkeit, 1996 (See AUTHORS for complete contributor listing) EOF exit $? } # func_echo ARG... # ---------------- # Libtool also displays the current mode in messages, so override # funclib.sh func_echo with this custom definition. func_echo () { $debug_cmd _G_message=$* func_echo_IFS=$IFS IFS=$nl for _G_line in $_G_message; do IFS=$func_echo_IFS $ECHO "$progname${opt_mode+: $opt_mode}: $_G_line" done IFS=$func_echo_IFS } ## ---------------- ## ## Options parsing. ## ## ---------------- ## # Hook in the functions to make sure our own options are parsed during # the option parsing loop. usage='$progpath [OPTION]... [MODE-ARG]...' # Short help message in response to '-h'. usage_message="Options: --config show all configuration variables --debug enable verbose shell tracing -n, --dry-run display commands without modifying any files --features display basic configuration information --finish use operation '--mode=finish' --mode=MODE use operation mode MODE --no-finish don't update shared library cache --no-quiet, --no-silent print default informational messages --no-warnings equivalent to '-Wnone' --preserve-dup-deps don't remove duplicate dependency libraries --quiet, --silent don't print informational messages --reorder-cache=DIRS reorder shared library cache for preferred DIRS --tag=TAG use configuration variables from tag TAG -v, --verbose print more informational messages than default --version print version information -W, --warnings=CATEGORY report the warnings falling in CATEGORY [all] -h, --help, --help-all print short, long, or detailed help message " # Additional text appended to 'usage_message' in response to '--help'. func_help () { $debug_cmd func_usage_message $ECHO "$long_help_message MODE must be one of the following: clean remove files from the build directory compile compile a source file into a libtool object execute automatically set library path, then run a program finish complete the installation of libtool libraries install install libraries or executables link create a library or an executable uninstall remove libraries from an installed directory MODE-ARGS vary depending on the MODE. When passed as first option, '--mode=MODE' may be abbreviated as 'MODE' or a unique abbreviation of that. Try '$progname --help --mode=MODE' for a more detailed description of MODE. When reporting a bug, please describe a test case to reproduce it and include the following information: host-triplet: $host shell: $SHELL compiler: $LTCC compiler flags: $LTCFLAGS linker: $LD (gnu? $with_gnu_ld) version: $progname $scriptversion automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q` autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q` Report bugs to . GNU libtool home page: . General help using GNU software: ." exit 0 } # func_lo2o OBJECT-NAME # --------------------- # Transform OBJECT-NAME from a '.lo' suffix to the platform specific # object suffix. lo2o=s/\\.lo\$/.$objext/ o2lo=s/\\.$objext\$/.lo/ if test yes = "$_G_HAVE_XSI_OPS"; then eval 'func_lo2o () { case $1 in *.lo) func_lo2o_result=${1%.lo}.$objext ;; * ) func_lo2o_result=$1 ;; esac }' # func_xform LIBOBJ-OR-SOURCE # --------------------------- # Transform LIBOBJ-OR-SOURCE from a '.o' or '.c' (or otherwise) # suffix to a '.lo' libtool-object suffix. eval 'func_xform () { func_xform_result=${1%.*}.lo }' else # ...otherwise fall back to using sed. func_lo2o () { func_lo2o_result=`$ECHO "$1" | $SED "$lo2o"` } func_xform () { func_xform_result=`$ECHO "$1" | $SED 's|\.[^.]*$|.lo|'` } fi # func_fatal_configuration ARG... # ------------------------------- # Echo program name prefixed message to standard error, followed by # a configuration failure hint, and exit. func_fatal_configuration () { func_fatal_error ${1+"$@"} \ "See the $PACKAGE documentation for more information." \ "Fatal configuration error." } # func_config # ----------- # Display the configuration for all the tags in this script. func_config () { re_begincf='^# ### BEGIN LIBTOOL' re_endcf='^# ### END LIBTOOL' # Default configuration. $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath" # Now print the configurations for the tags. for tagname in $taglist; do $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath" done exit $? } # func_features # ------------- # Display the features supported by this script. func_features () { echo "host: $host" if test yes = "$build_libtool_libs"; then echo "enable shared libraries" else echo "disable shared libraries" fi if test yes = "$build_old_libs"; then echo "enable static libraries" else echo "disable static libraries" fi exit $? } # func_enable_tag TAGNAME # ----------------------- # Verify that TAGNAME is valid, and either flag an error and exit, or # enable the TAGNAME tag. We also add TAGNAME to the global $taglist # variable here. func_enable_tag () { # Global variable: tagname=$1 re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" sed_extractcf=/$re_begincf/,/$re_endcf/p # Validate tagname. case $tagname in *[!-_A-Za-z0-9,/]*) func_fatal_error "invalid tag name: $tagname" ;; esac # Don't test for the "default" C tag, as we know it's # there but not specially marked. case $tagname in CC) ;; *) if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then taglist="$taglist $tagname" # Evaluate the configuration. Be careful to quote the path # and the sed script, to avoid splitting on whitespace, but # also don't use non-portable quotes within backquotes within # quotes we have to do it in 2 steps: extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` eval "$extractedcf" else func_error "ignoring unknown tag $tagname" fi ;; esac } # func_check_version_match # ------------------------ # Ensure that we are using m4 macros, and libtool script from the same # release of libtool. func_check_version_match () { if test "$package_revision" != "$macro_revision"; then if test "$VERSION" != "$macro_version"; then if test -z "$macro_version"; then cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, but the $progname: definition of this LT_INIT comes from an older release. $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION $progname: and run autoconf again. _LT_EOF else cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, but the $progname: definition of this LT_INIT comes from $PACKAGE $macro_version. $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION $progname: and run autoconf again. _LT_EOF fi else cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision, $progname: but the definition of this LT_INIT comes from revision $macro_revision. $progname: You should recreate aclocal.m4 with macros from revision $package_revision $progname: of $PACKAGE $VERSION and run autoconf again. _LT_EOF fi exit $EXIT_MISMATCH fi } # libtool_options_prep [ARG]... # ----------------------------- # Preparation for options parsed by libtool. libtool_options_prep () { $debug_mode # Option defaults: opt_config=false opt_dlopen= opt_dry_run=false opt_help=false opt_mode= opt_reorder_cache=false opt_preserve_dup_deps=false opt_quiet=false opt_finishing=true opt_warning= nonopt= preserve_args= _G_rc_lt_options_prep=: # Shorthand for --mode=foo, only valid as the first argument case $1 in clean|clea|cle|cl) shift; set dummy --mode clean ${1+"$@"}; shift ;; compile|compil|compi|comp|com|co|c) shift; set dummy --mode compile ${1+"$@"}; shift ;; execute|execut|execu|exec|exe|ex|e) shift; set dummy --mode execute ${1+"$@"}; shift ;; finish|finis|fini|fin|fi|f) shift; set dummy --mode finish ${1+"$@"}; shift ;; install|instal|insta|inst|ins|in|i) shift; set dummy --mode install ${1+"$@"}; shift ;; link|lin|li|l) shift; set dummy --mode link ${1+"$@"}; shift ;; uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) shift; set dummy --mode uninstall ${1+"$@"}; shift ;; *) _G_rc_lt_options_prep=false ;; esac if $_G_rc_lt_options_prep; then # Pass back the list of options. func_quote eval ${1+"$@"} libtool_options_prep_result=$func_quote_result fi } func_add_hook func_options_prep libtool_options_prep # libtool_parse_options [ARG]... # --------------------------------- # Provide handling for libtool specific options. libtool_parse_options () { $debug_cmd _G_rc_lt_parse_options=false # Perform our own loop to consume as many options as possible in # each iteration. while test $# -gt 0; do _G_match_lt_parse_options=: _G_opt=$1 shift case $_G_opt in --dry-run|--dryrun|-n) opt_dry_run=: ;; --config) func_config ;; --dlopen|-dlopen) opt_dlopen="${opt_dlopen+$opt_dlopen }$1" shift ;; --preserve-dup-deps) opt_preserve_dup_deps=: ;; --features) func_features ;; --finish) set dummy --mode finish ${1+"$@"}; shift ;; --help) opt_help=: ;; --help-all) opt_help=': help-all' ;; --mode) test $# = 0 && func_missing_arg $_G_opt && break opt_mode=$1 case $1 in # Valid mode arguments: clean|compile|execute|finish|install|link|relink|uninstall) ;; # Catch anything else as an error *) func_error "invalid argument '$1' for $_G_opt" exit_cmd=exit ;; esac shift ;; --no-finish) opt_finishing=false func_append preserve_args " $_G_opt" ;; --no-silent|--no-quiet) opt_quiet=false func_append preserve_args " $_G_opt" ;; --no-warnings|--no-warning|--no-warn) opt_warning=false func_append preserve_args " $_G_opt" ;; --no-verbose) opt_verbose=false func_append preserve_args " $_G_opt" ;; --reorder-cache) opt_reorder_cache=true shared_lib_dirs=$1 if test -n "$shared_lib_dirs"; then case $1 in # Must begin with /: /*) ;; # Catch anything else as an error (relative paths) *) func_error "invalid argument '$1' for $_G_opt" func_error "absolute paths are required for $_G_opt" exit_cmd=exit ;; esac fi shift ;; --silent|--quiet) opt_quiet=: opt_verbose=false func_append preserve_args " $_G_opt" ;; --tag) test $# = 0 && func_missing_arg $_G_opt && break opt_tag=$1 func_append preserve_args " $_G_opt $1" func_enable_tag "$1" shift ;; --verbose|-v) opt_quiet=false opt_verbose=: func_append preserve_args " $_G_opt" ;; # An option not handled by this hook function: *) set dummy "$_G_opt" ${1+"$@"} ; shift _G_match_lt_parse_options=false break ;; esac $_G_match_lt_parse_options && _G_rc_lt_parse_options=: done if $_G_rc_lt_parse_options; then # save modified positional parameters for caller func_quote eval ${1+"$@"} libtool_parse_options_result=$func_quote_result fi } func_add_hook func_parse_options libtool_parse_options # func_warning ARG... # ------------------- # Libtool warnings are not categorized, so override funclib.sh # func_warning with this simpler definition. func_warning () { if $opt_warning; then $debug_cmd $warning_func ${1+"$@"} fi } # libtool_validate_options [ARG]... # --------------------------------- # Perform any sanity checks on option settings and/or unconsumed # arguments. libtool_validate_options () { # save first non-option argument if test 0 -lt $#; then nonopt=$1 shift fi # preserve --debug test : = "$debug_cmd" || func_append preserve_args " --debug" # Keeping compiler generated duplicates in $postdeps and $predeps is not # harmful, and is necessary in a majority of systems that use it to satisfy # symbol dependencies. opt_duplicate_compiler_generated_deps=: $opt_help || { # Sanity checks first: func_check_version_match test yes != "$build_libtool_libs" \ && test yes != "$build_old_libs" \ && func_fatal_configuration "not configured to build any kind of library" # Darwin sucks eval std_shrext=\"$shrext_cmds\" # Only execute mode is allowed to have -dlopen flags. if test -n "$opt_dlopen" && test execute != "$opt_mode"; then func_error "unrecognized option '-dlopen'" $ECHO "$help" 1>&2 exit $EXIT_FAILURE fi # Change the help message to a mode-specific one. generic_help=$help help="Try '$progname --help --mode=$opt_mode' for more information." } # Pass back the unparsed argument list func_quote eval ${1+"$@"} libtool_validate_options_result=$func_quote_result } func_add_hook func_validate_options libtool_validate_options # Process options as early as possible so that --help and --version # can return quickly. func_options ${1+"$@"} eval set dummy "$func_options_result"; shift ## ----------- ## ## Main. ## ## ----------- ## magic='%%%MAGIC variable%%%' magic_exe='%%%MAGIC EXE variable%%%' # Global variables. extracted_archives= extracted_serial=0 # If this variable is set in any of the actions, the command in it # will be execed at the end. This prevents here-documents from being # left over by shells. exec_cmd= # A function that is used when there is no print builtin or printf. func_fallback_echo () { eval 'cat <<_LTECHO_EOF $1 _LTECHO_EOF' } # func_generated_by_libtool # True iff stdin has been generated by Libtool. This function is only # a basic sanity check; it will hardly flush out determined imposters. func_generated_by_libtool_p () { $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 } # func_lalib_p file # True iff FILE is a libtool '.la' library or '.lo' object file. # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_lalib_p () { test -f "$1" && $SED -e 4q "$1" 2>/dev/null | func_generated_by_libtool_p } # func_lalib_unsafe_p file # True iff FILE is a libtool '.la' library or '.lo' object file. # This function implements the same check as func_lalib_p without # resorting to external programs. To this end, it redirects stdin and # closes it afterwards, without saving the original file descriptor. # As a safety measure, use it only where a negative result would be # fatal anyway. Works if 'file' does not exist. func_lalib_unsafe_p () { lalib_p=no if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then for lalib_p_l in 1 2 3 4 do read lalib_p_line case $lalib_p_line in \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; esac done exec 0<&5 5<&- fi test yes = "$lalib_p" } # func_ltwrapper_script_p file # True iff FILE is a libtool wrapper script # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_ltwrapper_script_p () { test -f "$1" && $lt_truncate_bin < "$1" 2>/dev/null | func_generated_by_libtool_p } # func_ltwrapper_executable_p file # True iff FILE is a libtool wrapper executable # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_ltwrapper_executable_p () { func_ltwrapper_exec_suffix= case $1 in *.exe) ;; *) func_ltwrapper_exec_suffix=.exe ;; esac $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1 } # func_ltwrapper_scriptname file # Assumes file is an ltwrapper_executable # uses $file to determine the appropriate filename for a # temporary ltwrapper_script. func_ltwrapper_scriptname () { func_dirname_and_basename "$1" "" "." func_stripname '' '.exe' "$func_basename_result" func_ltwrapper_scriptname_result=$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper } # func_ltwrapper_p file # True iff FILE is a libtool wrapper script or wrapper executable # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_ltwrapper_p () { func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" } # func_execute_cmds commands fail_cmd # Execute tilde-delimited COMMANDS. # If FAIL_CMD is given, eval that upon failure. # FAIL_CMD may read-access the current command in variable CMD! func_execute_cmds () { $debug_cmd save_ifs=$IFS; IFS='~' for cmd in $1; do IFS=$sp$nl eval cmd=\"$cmd\" IFS=$save_ifs func_show_eval "$cmd" "${2-:}" done IFS=$save_ifs } # func_source file # Source FILE, adding directory component if necessary. # Note that it is not necessary on cygwin/mingw to append a dot to # FILE even if both FILE and FILE.exe exist: automatic-append-.exe # behavior happens only for exec(3), not for open(2)! Also, sourcing # 'FILE.' does not work on cygwin managed mounts. func_source () { $debug_cmd case $1 in */* | *\\*) . "$1" ;; *) . "./$1" ;; esac } # func_resolve_sysroot PATH # Replace a leading = in PATH with a sysroot. Store the result into # func_resolve_sysroot_result func_resolve_sysroot () { func_resolve_sysroot_result=$1 case $func_resolve_sysroot_result in =*) func_stripname '=' '' "$func_resolve_sysroot_result" func_resolve_sysroot_result=$lt_sysroot$func_stripname_result ;; esac } # func_replace_sysroot PATH # If PATH begins with the sysroot, replace it with = and # store the result into func_replace_sysroot_result. func_replace_sysroot () { case $lt_sysroot:$1 in ?*:"$lt_sysroot"*) func_stripname "$lt_sysroot" '' "$1" func_replace_sysroot_result='='$func_stripname_result ;; *) # Including no sysroot. func_replace_sysroot_result=$1 ;; esac } # func_infer_tag arg # Infer tagged configuration to use if any are available and # if one wasn't chosen via the "--tag" command line option. # Only attempt this if the compiler in the base compile # command doesn't match the default compiler. # arg is usually of the form 'gcc ...' func_infer_tag () { $debug_cmd if test -n "$available_tags" && test -z "$tagname"; then CC_quoted= for arg in $CC; do func_append_quoted CC_quoted "$arg" done CC_expanded=`func_echo_all $CC` CC_quoted_expanded=`func_echo_all $CC_quoted` case $@ in # Blanks in the command may have been stripped by the calling shell, # but not from the CC environment variable when configure was run. " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) ;; # Blanks at the start of $base_compile will cause this to fail # if we don't check for them as well. *) for z in $available_tags; do if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then # Evaluate the configuration. eval "`$SED -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" CC_quoted= for arg in $CC; do # Double-quote args containing other shell metacharacters. func_append_quoted CC_quoted "$arg" done CC_expanded=`func_echo_all $CC` CC_quoted_expanded=`func_echo_all $CC_quoted` case "$@ " in " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) # The compiler in the base compile command matches # the one in the tagged configuration. # Assume this is the tagged configuration we want. tagname=$z break ;; esac fi done # If $tagname still isn't set, then no tagged configuration # was found and let the user know that the "--tag" command # line option must be used. if test -z "$tagname"; then func_echo "unable to infer tagged configuration" func_fatal_error "specify a tag with '--tag'" # else # func_verbose "using $tagname tagged configuration" fi ;; esac fi } # func_write_libtool_object output_name pic_name nonpic_name # Create a libtool object file (analogous to a ".la" file), # but don't create it if we're doing a dry run. func_write_libtool_object () { write_libobj=$1 if test yes = "$build_libtool_libs"; then write_lobj=\'$2\' else write_lobj=none fi if test yes = "$build_old_libs"; then write_oldobj=\'$3\' else write_oldobj=none fi $opt_dry_run || { cat >${write_libobj}T </dev/null` if test "$?" -eq 0 && test -n "$func_convert_core_file_wine_to_w32_tmp"; then func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" | $SED -e "$sed_naive_backslashify"` else func_convert_core_file_wine_to_w32_result= fi fi } # end: func_convert_core_file_wine_to_w32 # func_convert_core_path_wine_to_w32 ARG # Helper function used by path conversion functions when $build is *nix, and # $host is mingw, windows, cygwin, or some other w32 environment. Relies on a # correctly configured wine environment available, with the winepath program # in $build's $PATH. Assumes ARG has no leading or trailing path separator # characters. # # ARG is path to be converted from $build format to win32. # Result is available in $func_convert_core_path_wine_to_w32_result. # Unconvertible file (directory) names in ARG are skipped; if no directory names # are convertible, then the result may be empty. func_convert_core_path_wine_to_w32 () { $debug_cmd # unfortunately, winepath doesn't convert paths, only file names func_convert_core_path_wine_to_w32_result= if test -n "$1"; then oldIFS=$IFS IFS=: for func_convert_core_path_wine_to_w32_f in $1; do IFS=$oldIFS func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f" if test -n "$func_convert_core_file_wine_to_w32_result"; then if test -z "$func_convert_core_path_wine_to_w32_result"; then func_convert_core_path_wine_to_w32_result=$func_convert_core_file_wine_to_w32_result else func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result" fi fi done IFS=$oldIFS fi } # end: func_convert_core_path_wine_to_w32 # func_cygpath ARGS... # Wrapper around calling the cygpath program via LT_CYGPATH. This is used when # when (1) $build is *nix and Cygwin is hosted via a wine environment; or (2) # $build is MSYS and $host is Cygwin, or (3) $build is Cygwin. In case (1) or # (2), returns the Cygwin file name or path in func_cygpath_result (input # file name or path is assumed to be in w32 format, as previously converted # from $build's *nix or MSYS format). In case (3), returns the w32 file name # or path in func_cygpath_result (input file name or path is assumed to be in # Cygwin format). Returns an empty string on error. # # ARGS are passed to cygpath, with the last one being the file name or path to # be converted. # # Specify the absolute *nix (or w32) name to cygpath in the LT_CYGPATH # environment variable; do not put it in $PATH. func_cygpath () { $debug_cmd if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null` if test "$?" -ne 0; then # on failure, ensure result is empty func_cygpath_result= fi else func_cygpath_result= func_error "LT_CYGPATH is empty or specifies non-existent file: '$LT_CYGPATH'" fi } #end: func_cygpath # func_convert_core_msys_to_w32 ARG # Convert file name or path ARG from MSYS format to w32 format. Return # result in func_convert_core_msys_to_w32_result. func_convert_core_msys_to_w32 () { $debug_cmd # awkward: cmd appends spaces to result func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null | $SED -e 's/[ ]*$//' -e "$sed_naive_backslashify"` } #end: func_convert_core_msys_to_w32 # func_convert_file_check ARG1 ARG2 # Verify that ARG1 (a file name in $build format) was converted to $host # format in ARG2. Otherwise, emit an error message, but continue (resetting # func_to_host_file_result to ARG1). func_convert_file_check () { $debug_cmd if test -z "$2" && test -n "$1"; then func_error "Could not determine host file name corresponding to" func_error " '$1'" func_error "Continuing, but uninstalled executables may not work." # Fallback: func_to_host_file_result=$1 fi } # end func_convert_file_check # func_convert_path_check FROM_PATHSEP TO_PATHSEP FROM_PATH TO_PATH # Verify that FROM_PATH (a path in $build format) was converted to $host # format in TO_PATH. Otherwise, emit an error message, but continue, resetting # func_to_host_file_result to a simplistic fallback value (see below). func_convert_path_check () { $debug_cmd if test -z "$4" && test -n "$3"; then func_error "Could not determine the host path corresponding to" func_error " '$3'" func_error "Continuing, but uninstalled executables may not work." # Fallback. This is a deliberately simplistic "conversion" and # should not be "improved". See libtool.info. if test "x$1" != "x$2"; then lt_replace_pathsep_chars="s|$1|$2|g" func_to_host_path_result=`echo "$3" | $SED -e "$lt_replace_pathsep_chars"` else func_to_host_path_result=$3 fi fi } # end func_convert_path_check # func_convert_path_front_back_pathsep FRONTPAT BACKPAT REPL ORIG # Modifies func_to_host_path_result by prepending REPL if ORIG matches FRONTPAT # and appending REPL if ORIG matches BACKPAT. func_convert_path_front_back_pathsep () { $debug_cmd case $4 in $1 ) func_to_host_path_result=$3$func_to_host_path_result ;; esac case $4 in $2 ) func_append func_to_host_path_result "$3" ;; esac } # end func_convert_path_front_back_pathsep # func_convert_delimited_path PATH ORIG_DELIMITER NEW_DELIMITER # Replaces a delimiter for a given path. func_convert_delimited_path () { converted_path=`$ECHO "$1" | $SED "s#$2#$3#g"` } # end func_convert_delimited_path ################################################## # $build to $host FILE NAME CONVERSION FUNCTIONS # ################################################## # invoked via '$to_host_file_cmd ARG' # # In each case, ARG is the path to be converted from $build to $host format. # Result will be available in $func_to_host_file_result. # func_to_host_file ARG # Converts the file name ARG from $build format to $host format. Return result # in func_to_host_file_result. func_to_host_file () { $debug_cmd $to_host_file_cmd "$1" } # end func_to_host_file # func_to_tool_file ARG LAZY # converts the file name ARG from $build format to toolchain format. Return # result in func_to_tool_file_result. If the conversion in use is listed # in (the comma separated) LAZY, no conversion takes place. func_to_tool_file () { $debug_cmd case ,$2, in *,"$to_tool_file_cmd",*) func_to_tool_file_result=$1 ;; *) $to_tool_file_cmd "$1" func_to_tool_file_result=$func_to_host_file_result ;; esac } # end func_to_tool_file # func_convert_file_noop ARG # Copy ARG to func_to_host_file_result. func_convert_file_noop () { func_to_host_file_result=$1 } # end func_convert_file_noop # func_convert_file_msys_to_w32 ARG # Convert file name ARG from (mingw) MSYS to (mingw) w32 format; automatic # conversion to w32 is not available inside the cwrapper. Returns result in # func_to_host_file_result. func_convert_file_msys_to_w32 () { $debug_cmd func_to_host_file_result=$1 if test -n "$1"; then func_convert_core_msys_to_w32 "$1" func_to_host_file_result=$func_convert_core_msys_to_w32_result fi func_convert_file_check "$1" "$func_to_host_file_result" } # end func_convert_file_msys_to_w32 # func_convert_file_cygwin_to_w32 ARG # Convert file name ARG from Cygwin to w32 format. Returns result in # func_to_host_file_result. func_convert_file_cygwin_to_w32 () { $debug_cmd func_to_host_file_result=$1 if test -n "$1"; then # because $build is cygwin, we call "the" cygpath in $PATH; no need to use # LT_CYGPATH in this case. func_to_host_file_result=`cygpath -m "$1"` fi func_convert_file_check "$1" "$func_to_host_file_result" } # end func_convert_file_cygwin_to_w32 # func_convert_file_nix_to_w32 ARG # Convert file name ARG from *nix to w32 format. Requires a wine environment # and a working winepath. Returns result in func_to_host_file_result. func_convert_file_nix_to_w32 () { $debug_cmd func_to_host_file_result=$1 if test -n "$1"; then func_convert_core_file_wine_to_w32 "$1" func_to_host_file_result=$func_convert_core_file_wine_to_w32_result fi func_convert_file_check "$1" "$func_to_host_file_result" } # end func_convert_file_nix_to_w32 # func_convert_file_msys_to_cygwin ARG # Convert file name ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. # Returns result in func_to_host_file_result. func_convert_file_msys_to_cygwin () { $debug_cmd func_to_host_file_result=$1 if test -n "$1"; then func_convert_core_msys_to_w32 "$1" func_cygpath -u "$func_convert_core_msys_to_w32_result" func_to_host_file_result=$func_cygpath_result fi func_convert_file_check "$1" "$func_to_host_file_result" } # end func_convert_file_msys_to_cygwin # func_convert_file_nix_to_cygwin ARG # Convert file name ARG from *nix to Cygwin format. Requires Cygwin installed # in a wine environment, working winepath, and LT_CYGPATH set. Returns result # in func_to_host_file_result. func_convert_file_nix_to_cygwin () { $debug_cmd func_to_host_file_result=$1 if test -n "$1"; then # convert from *nix to w32, then use cygpath to convert from w32 to cygwin. func_convert_core_file_wine_to_w32 "$1" func_cygpath -u "$func_convert_core_file_wine_to_w32_result" func_to_host_file_result=$func_cygpath_result fi func_convert_file_check "$1" "$func_to_host_file_result" } # end func_convert_file_nix_to_cygwin ############################################# # $build to $host PATH CONVERSION FUNCTIONS # ############################################# # invoked via '$to_host_path_cmd ARG' # # In each case, ARG is the path to be converted from $build to $host format. # The result will be available in $func_to_host_path_result. # # Path separators are also converted from $build format to $host format. If # ARG begins or ends with a path separator character, it is preserved (but # converted to $host format) on output. # # All path conversion functions are named using the following convention: # file name conversion function : func_convert_file_X_to_Y () # path conversion function : func_convert_path_X_to_Y () # where, for any given $build/$host combination the 'X_to_Y' value is the # same. If conversion functions are added for new $build/$host combinations, # the two new functions must follow this pattern, or func_init_to_host_path_cmd # will break. # func_init_to_host_path_cmd # Ensures that function "pointer" variable $to_host_path_cmd is set to the # appropriate value, based on the value of $to_host_file_cmd. to_host_path_cmd= func_init_to_host_path_cmd () { $debug_cmd if test -z "$to_host_path_cmd"; then func_stripname 'func_convert_file_' '' "$to_host_file_cmd" to_host_path_cmd=func_convert_path_$func_stripname_result fi } # func_to_host_path ARG # Converts the path ARG from $build format to $host format. Return result # in func_to_host_path_result. func_to_host_path () { $debug_cmd func_init_to_host_path_cmd $to_host_path_cmd "$1" } # end func_to_host_path # func_convert_path_noop ARG # Copy ARG to func_to_host_path_result. func_convert_path_noop () { func_to_host_path_result=$1 } # end func_convert_path_noop # func_convert_path_msys_to_w32 ARG # Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic # conversion to w32 is not available inside the cwrapper. Returns result in # func_to_host_path_result. func_convert_path_msys_to_w32 () { $debug_cmd func_to_host_path_result=$1 if test -n "$1"; then # Remove leading and trailing path separator characters from ARG. MSYS # behavior is inconsistent here; cygpath turns them into '.;' and ';.'; # and winepath ignores them completely. func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" func_to_host_path_result=$func_convert_core_msys_to_w32_result func_convert_path_check : ";" \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" fi } # end func_convert_path_msys_to_w32 # func_convert_path_cygwin_to_w32 ARG # Convert path ARG from Cygwin to w32 format. Returns result in # func_to_host_file_result. func_convert_path_cygwin_to_w32 () { $debug_cmd func_to_host_path_result=$1 if test -n "$1"; then # See func_convert_path_msys_to_w32: func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_to_host_path_result=`cygpath -m -p "$func_to_host_path_tmp1"` func_convert_path_check : ";" \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" fi } # end func_convert_path_cygwin_to_w32 # func_convert_path_nix_to_w32 ARG # Convert path ARG from *nix to w32 format. Requires a wine environment and # a working winepath. Returns result in func_to_host_file_result. func_convert_path_nix_to_w32 () { $debug_cmd func_to_host_path_result=$1 if test -n "$1"; then # See func_convert_path_msys_to_w32: func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" func_to_host_path_result=$func_convert_core_path_wine_to_w32_result func_convert_path_check : ";" \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" fi } # end func_convert_path_nix_to_w32 # func_convert_path_msys_to_cygwin ARG # Convert path ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. # Returns result in func_to_host_file_result. func_convert_path_msys_to_cygwin () { $debug_cmd func_to_host_path_result=$1 if test -n "$1"; then # See func_convert_path_msys_to_w32: func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" func_cygpath -u -p "$func_convert_core_msys_to_w32_result" func_to_host_path_result=$func_cygpath_result func_convert_path_check : : \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" : "$1" fi } # end func_convert_path_msys_to_cygwin # func_convert_path_nix_to_cygwin ARG # Convert path ARG from *nix to Cygwin format. Requires Cygwin installed in a # a wine environment, working winepath, and LT_CYGPATH set. Returns result in # func_to_host_file_result. func_convert_path_nix_to_cygwin () { $debug_cmd func_to_host_path_result=$1 if test -n "$1"; then # Remove leading and trailing path separator characters from # ARG. msys behavior is inconsistent here, cygpath turns them # into '.;' and ';.', and winepath ignores them completely. func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result" func_to_host_path_result=$func_cygpath_result func_convert_path_check : : \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" : "$1" fi } # end func_convert_path_nix_to_cygwin # func_dll_def_p FILE # True iff FILE is a Windows DLL '.def' file. # Keep in sync with _LT_DLL_DEF_P in libtool.m4 func_dll_def_p () { $debug_cmd func_dll_def_p_tmp=`$SED -n \ -e 's/^[ ]*//' \ -e '/^\(;.*\)*$/d' \ -e 's/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p' \ -e q \ "$1"` test DEF = "$func_dll_def_p_tmp" } # func_reorder_shared_lib_cache DIRS # Reorder the shared library cache by unconfiguring previous shared library cache # and configuring preferred search directories before previous search directories. # Previous shared library cache: /usr/lib /usr/local/lib # Preferred search directories: /tmp/testing # Reordered shared library cache: /tmp/testing /usr/lib /usr/local/lib func_reorder_shared_lib_cache () { $debug_cmd case $host_os in openbsd*) get_search_directories=`PATH="$PATH:/sbin" ldconfig -r | $GREP "search directories" | $SED "s#.*search directories:\ ##g"` func_convert_delimited_path "$get_search_directories" ':' '\ ' save_search_directories=$converted_path func_convert_delimited_path "$1" ':' '\ ' # Ensure directories exist for dir in $converted_path; do # Ensure each directory is an absolute path case $dir in /*) ;; *) func_error "Directory '$dir' is not an absolute path" exit $EXIT_FAILURE ;; esac # Ensure no trailing slashes func_stripname '' '/' "$dir" dir=$func_stripname_result if test -d "$dir"; then if test -n "$preferred_search_directories"; then preferred_search_directories="$preferred_search_directories $dir" else preferred_search_directories=$dir fi else func_error "Directory '$dir' does not exist" exit $EXIT_FAILURE fi done PATH="$PATH:/sbin" ldconfig -U $save_search_directories PATH="$PATH:/sbin" ldconfig -m $preferred_search_directories $save_search_directories get_search_directories=`PATH="$PATH:/sbin" ldconfig -r | $GREP "search directories" | $SED "s#.*search directories:\ ##g"` func_convert_delimited_path "$get_search_directories" ':' '\ ' reordered_search_directories=$converted_path $ECHO "Original: $save_search_directories" $ECHO "Reordered: $reordered_search_directories" exit $EXIT_SUCCESS ;; *) func_error "--reorder-cache is not supported for host_os=$host_os." exit $EXIT_FAILURE ;; esac } # end func_reorder_shared_lib_cache # func_mode_compile arg... func_mode_compile () { $debug_cmd # Get the compilation command and the source file. base_compile= srcfile=$nonopt # always keep a non-empty value in "srcfile" suppress_opt=yes suppress_output= arg_mode=normal libobj= later= pie_flag= for arg do case $arg_mode in arg ) # do not "continue". Instead, add this to base_compile lastarg=$arg arg_mode=normal ;; target ) libobj=$arg arg_mode=normal continue ;; normal ) # Accept any command-line options. case $arg in -o) test -n "$libobj" && \ func_fatal_error "you cannot specify '-o' more than once" arg_mode=target continue ;; -pie | -fpie | -fPIE) func_append pie_flag " $arg" continue ;; -shared | -static | -prefer-pic | -prefer-non-pic) func_append later " $arg" continue ;; -no-suppress) suppress_opt=no continue ;; -Xcompiler) arg_mode=arg # the next one goes into the "base_compile" arg list continue # The current "srcfile" will either be retained or ;; # replaced later. I would guess that would be a bug. -Wc,*) func_stripname '-Wc,' '' "$arg" args=$func_stripname_result lastarg= save_ifs=$IFS; IFS=, for arg in $args; do IFS=$save_ifs func_append_quoted lastarg "$arg" done IFS=$save_ifs func_stripname ' ' '' "$lastarg" lastarg=$func_stripname_result # Add the arguments to base_compile. func_append base_compile " $lastarg" continue ;; *) # Accept the current argument as the source file. # The previous "srcfile" becomes the current argument. # lastarg=$srcfile srcfile=$arg ;; esac # case $arg ;; esac # case $arg_mode # Aesthetically quote the previous argument. func_append_quoted base_compile "$lastarg" done # for arg case $arg_mode in arg) func_fatal_error "you must specify an argument for -Xcompile" ;; target) func_fatal_error "you must specify a target with '-o'" ;; *) # Get the name of the library object. test -z "$libobj" && { func_basename "$srcfile" libobj=$func_basename_result } ;; esac # Recognize several different file suffixes. # If the user specifies -o file.o, it is replaced with file.lo case $libobj in *.[cCFSifmso] | \ *.ada | *.adb | *.ads | *.asm | \ *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \ *.[fF][09]? | *.for | *.java | *.go | *.obj | *.sx | *.cu | *.cup) func_xform "$libobj" libobj=$func_xform_result ;; esac case $libobj in *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;; *) func_fatal_error "cannot determine name of library object from '$libobj'" ;; esac func_infer_tag $base_compile for arg in $later; do case $arg in -shared) test yes = "$build_libtool_libs" \ || func_fatal_configuration "cannot build a shared library" build_old_libs=no continue ;; -static) build_libtool_libs=no build_old_libs=yes continue ;; -prefer-pic) pic_mode=yes continue ;; -prefer-non-pic) pic_mode=no continue ;; esac done func_quote_arg pretty "$libobj" test "X$libobj" != "X$func_quote_arg_result" \ && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ && func_warning "libobj name '$libobj' may not contain shell special characters." func_dirname_and_basename "$obj" "/" "" objname=$func_basename_result xdir=$func_dirname_result lobj=$xdir$objdir/$objname test -z "$base_compile" && \ func_fatal_help "you must specify a compilation command" # Delete any leftover library objects. if test yes = "$build_old_libs"; then removelist="$obj $lobj $libobj ${libobj}T" else removelist="$lobj $libobj ${libobj}T" fi # On Cygwin there's no "real" PIC flag so we must build both object types case $host_os in cygwin* | mingw* | windows* | pw32* | os2* | cegcc*) pic_mode=default ;; esac if test no = "$pic_mode" && test pass_all != "$deplibs_check_method"; then # non-PIC code in shared libraries is not supported pic_mode=default fi # Calculate the filename of the output object if compiler does # not support -o with -c if test no = "$compiler_c_o"; then output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.$objext lockfile=$output_obj.lock else output_obj= need_locks=no lockfile= fi # Lock this critical section if it is needed # We use this script file to make the link, it avoids creating a new file if test yes = "$need_locks"; then until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do func_echo "Waiting for $lockfile to be removed" sleep 2 done elif test warn = "$need_locks"; then if test -f "$lockfile"; then $ECHO "\ *** ERROR, $lockfile exists and contains: `cat $lockfile 2>/dev/null` This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because your compiler does not support '-c' and '-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." $opt_dry_run || $RM $removelist exit $EXIT_FAILURE fi func_append removelist " $output_obj" $ECHO "$srcfile" > "$lockfile" fi $opt_dry_run || $RM $removelist func_append removelist " $lockfile" trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15 func_to_tool_file "$srcfile" func_convert_file_msys_to_w32 srcfile=$func_to_tool_file_result func_quote_arg pretty "$srcfile" qsrcfile=$func_quote_arg_result # Only build a PIC object if we are building libtool libraries. if test yes = "$build_libtool_libs"; then # Without this assignment, base_compile gets emptied. fbsd_hideous_sh_bug=$base_compile if test no != "$pic_mode"; then command="$base_compile $qsrcfile $pic_flag" else # Don't build PIC code command="$base_compile $qsrcfile" fi func_mkdir_p "$xdir$objdir" if test -z "$output_obj"; then # Place PIC objects in $objdir func_append command " -o $lobj" fi func_show_eval_locale "$command" \ 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' if test warn = "$need_locks" && test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then $ECHO "\ *** ERROR, $lockfile contains: `cat $lockfile 2>/dev/null` but it should contain: $srcfile This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because your compiler does not support '-c' and '-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." $opt_dry_run || $RM $removelist exit $EXIT_FAILURE fi # Just move the object if needed, then go on to compile the next one if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then func_show_eval '$MV "$output_obj" "$lobj"' \ 'error=$?; $opt_dry_run || $RM $removelist; exit $error' fi # Allow error messages only from the first compilation. if test yes = "$suppress_opt"; then suppress_output=' >/dev/null 2>&1' fi fi # Only build a position-dependent object if we build old libraries. if test yes = "$build_old_libs"; then if test yes != "$pic_mode"; then # Don't build PIC code command="$base_compile $qsrcfile$pie_flag" else command="$base_compile $qsrcfile $pic_flag" fi if test yes = "$compiler_c_o"; then func_append command " -o $obj" fi # Suppress compiler output if we already did a PIC compilation. func_append command "$suppress_output" func_show_eval_locale "$command" \ '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' if test warn = "$need_locks" && test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then $ECHO "\ *** ERROR, $lockfile contains: `cat $lockfile 2>/dev/null` but it should contain: $srcfile This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because your compiler does not support '-c' and '-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." $opt_dry_run || $RM $removelist exit $EXIT_FAILURE fi # Just move the object if needed if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then func_show_eval '$MV "$output_obj" "$obj"' \ 'error=$?; $opt_dry_run || $RM $removelist; exit $error' fi fi $opt_dry_run || { func_write_libtool_object "$libobj" "$objdir/$objname" "$objname" # Unlock the critical section if it was locked if test no != "$need_locks"; then removelist=$lockfile $RM "$lockfile" fi } exit $EXIT_SUCCESS } $opt_help || { test compile = "$opt_mode" && func_mode_compile ${1+"$@"} } func_mode_help () { # We need to display help for each of the modes. case $opt_mode in "") # Generic help is extracted from the usage comments # at the start of this file. func_help ;; clean) $ECHO \ "Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... Remove files from the build directory. RM is the name of the program to use to delete files associated with each FILE (typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed to RM. If FILE is a libtool library, object or program, all the files associated with it are deleted. Otherwise, only FILE itself is deleted using RM." ;; compile) $ECHO \ "Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE Compile a source file into a libtool library object. This mode accepts the following additional options: -o OUTPUT-FILE set the output file name to OUTPUT-FILE -no-suppress do not suppress compiler output for multiple passes -prefer-pic try to build PIC objects only -prefer-non-pic try to build non-PIC objects only -shared do not build a '.o' file suitable for static linking -static only build a '.o' file suitable for static linking -Wc,FLAG -Xcompiler FLAG pass FLAG directly to the compiler COMPILE-COMMAND is a command to be used in creating a 'standard' object file from the given SOURCEFILE. The output file name is determined by removing the directory component from SOURCEFILE, then substituting the C source code suffix '.c' with the library object suffix, '.lo'." ;; execute) $ECHO \ "Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]... Automatically set library path, then run a program. This mode accepts the following additional options: -dlopen FILE add the directory containing FILE to the library path This mode sets the library path environment variable according to '-dlopen' flags. If any of the ARGS are libtool executable wrappers, then they are translated into their corresponding uninstalled binary, and any of their required library directories are added to the library path. Then, COMMAND is executed, with ARGS as arguments." ;; finish) $ECHO \ "Usage: $progname [OPTION]... --mode=finish [LIBDIR]... Complete the installation of libtool libraries. Each LIBDIR is a directory that contains libtool libraries. The commands that this mode executes may require superuser privileges. Use the '--dry-run' option if you just want to see what would be executed." ;; install) $ECHO \ "Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND... Install executables or libraries. INSTALL-COMMAND is the installation command. The first component should be either the 'install' or 'cp' program. The following components of INSTALL-COMMAND are treated specially: -inst-prefix-dir PREFIX-DIR Use PREFIX-DIR as a staging area for installation The rest of the components are interpreted as arguments to that command (only BSD-compatible install options are recognized)." ;; link) $ECHO \ "Usage: $progname [OPTION]... --mode=link LINK-COMMAND... Link object files or libraries together to form another library, or to create an executable program. LINK-COMMAND is a command using the C compiler that you would use to create a program from several object files. The following components of LINK-COMMAND are treated specially: -all-static do not do any dynamic linking at all -avoid-version do not add a version suffix if possible -bindir BINDIR specify path to binaries directory (for systems where libraries must be found in the PATH setting at runtime) -dlopen FILE '-dlpreopen' FILE if it cannot be dlopened at runtime -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) -export-symbols SYMFILE try to export only the symbols listed in SYMFILE -export-symbols-regex REGEX try to export only the symbols matching REGEX -LLIBDIR search LIBDIR for required installed libraries -lNAME OUTPUT-FILE requires the installed library libNAME -module build a library that can dlopened -no-fast-install disable the fast-install mode -no-install link a not-installable executable -no-undefined declare that a library does not refer to external symbols -o OUTPUT-FILE create OUTPUT-FILE from the specified objects -objectlist FILE use a list of object files found in FILE to specify objects -os2dllname NAME force a short DLL name on OS/2 (no effect on other OSes) -precious-files-regex REGEX don't remove output files matching REGEX -release RELEASE specify package release information -rpath LIBDIR the created library will eventually be installed in LIBDIR -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries -shared only do dynamic linking of libtool libraries -shrext SUFFIX override the standard shared library file extension -static do not do any dynamic linking of uninstalled libtool libraries -static-libtool-libs do not do any dynamic linking of libtool libraries -version-info CURRENT[:REVISION[:AGE]] specify library version info [each variable defaults to 0] -weak LIBNAME declare that the target provides the LIBNAME interface -Wc,FLAG -Xcompiler FLAG pass linker-specific FLAG directly to the compiler -Wa,FLAG -Xassembler FLAG pass linker-specific FLAG directly to the assembler -Wl,FLAG -Xlinker FLAG pass linker-specific FLAG directly to the linker -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC) All other options (arguments beginning with '-') are ignored. Every other argument is treated as a filename. Files ending in '.la' are treated as uninstalled libtool libraries, other files are standard or library object files. If the OUTPUT-FILE ends in '.la', then a libtool library is created, only library objects ('.lo' files) may be specified, and '-rpath' is required, except when creating a convenience library. If OUTPUT-FILE ends in '.a' or '.lib', then a standard library is created using 'ar' and 'ranlib', or on Windows using 'lib'. If OUTPUT-FILE ends in '.lo' or '.$objext', then a reloadable object file is created, otherwise an executable program is created." ;; uninstall) $ECHO \ "Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... Remove libraries from an installation directory. RM is the name of the program to use to delete files associated with each FILE (typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed to RM. If FILE is a libtool library, all the files associated with it are deleted. Otherwise, only FILE itself is deleted using RM." ;; *) func_fatal_help "invalid operation mode '$opt_mode'" ;; esac echo $ECHO "Try '$progname --help' for more information about other modes." } # Now that we've collected a possible --mode arg, show help if necessary if $opt_help; then if test : = "$opt_help"; then func_mode_help else { func_help noexit for opt_mode in compile link execute install finish uninstall clean; do func_mode_help done } | $SED -n '1p; 2,$s/^Usage:/ or: /p' { func_help noexit for opt_mode in compile link execute install finish uninstall clean; do echo func_mode_help done } | $SED '1d /^When reporting/,/^Report/{ H d } $x /information about other modes/d /more detailed .*MODE/d s/^Usage:.*--mode=\([^ ]*\) .*/Description of \1 mode:/' fi exit $? fi # If option '--reorder-cache', reorder the shared library cache and exit. if $opt_reorder_cache; then func_reorder_shared_lib_cache $shared_lib_dirs fi # func_mode_execute arg... func_mode_execute () { $debug_cmd # The first argument is the command name. cmd=$nonopt test -z "$cmd" && \ func_fatal_help "you must specify a COMMAND" # Handle -dlopen flags immediately. for file in $opt_dlopen; do test -f "$file" \ || func_fatal_help "'$file' is not a file" dir= case $file in *.la) func_resolve_sysroot "$file" file=$func_resolve_sysroot_result # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$file" \ || func_fatal_help "'$lib' is not a valid libtool archive" # Read the libtool library. dlname= library_names= func_source "$file" # Skip this library if it cannot be dlopened. if test -z "$dlname"; then # Warn if it was a shared library. test -n "$library_names" && \ func_warning "'$file' was not linked with '-export-dynamic'" continue fi func_dirname "$file" "" "." dir=$func_dirname_result if test -f "$dir/$objdir/$dlname"; then func_append dir "/$objdir" else if test ! -f "$dir/$dlname"; then func_fatal_error "cannot find '$dlname' in '$dir' or '$dir/$objdir'" fi fi ;; *.lo) # Just add the directory containing the .lo file. func_dirname "$file" "" "." dir=$func_dirname_result ;; *) func_warning "'-dlopen' is ignored for non-libtool libraries and objects" continue ;; esac # Get the absolute pathname. absdir=`cd "$dir" && pwd` test -n "$absdir" && dir=$absdir # Now add the directory to shlibpath_var. if eval "test -z \"\$$shlibpath_var\""; then eval "$shlibpath_var=\"\$dir\"" else eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" fi done # This variable tells wrapper scripts just to set shlibpath_var # rather than running their programs. libtool_execute_magic=$magic # Check if any of the arguments is a wrapper script. args= for file do case $file in -* | *.la | *.lo ) ;; *) # Do a test to see if this is really a libtool program. if func_ltwrapper_script_p "$file"; then func_source "$file" # Transform arg to wrapped name. file=$progdir/$program elif func_ltwrapper_executable_p "$file"; then func_ltwrapper_scriptname "$file" func_source "$func_ltwrapper_scriptname_result" # Transform arg to wrapped name. file=$progdir/$program fi ;; esac # Quote arguments (to preserve shell metacharacters). func_append_quoted args "$file" done if $opt_dry_run; then # Display what would be done. if test -n "$shlibpath_var"; then eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" echo "export $shlibpath_var" fi $ECHO "$cmd$args" exit $EXIT_SUCCESS else if test -n "$shlibpath_var"; then # Export the shlibpath_var. eval "export $shlibpath_var" fi # Restore saved environment variables for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES do eval "if test \"\${save_$lt_var+set}\" = set; then $lt_var=\$save_$lt_var; export $lt_var else $lt_unset $lt_var fi" done # Now prepare to actually exec the command. exec_cmd=\$cmd$args fi } test execute = "$opt_mode" && func_mode_execute ${1+"$@"} # func_mode_finish arg... func_mode_finish () { $debug_cmd libs= libdirs= admincmds= for opt in "$nonopt" ${1+"$@"} do if test -d "$opt"; then func_append libdirs " $opt" elif test -f "$opt"; then if func_lalib_unsafe_p "$opt"; then func_append libs " $opt" else func_warning "'$opt' is not a valid libtool archive" fi else func_fatal_error "invalid argument '$opt'" fi done if test -n "$libs"; then if test -n "$lt_sysroot"; then sysroot_regex=`$ECHO "$lt_sysroot" | $SED "$sed_make_literal_regex"` sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;" else sysroot_cmd= fi # Remove sysroot references if $opt_dry_run; then for lib in $libs; do echo "removing references to $lt_sysroot and '=' prefixes from $lib" done else tmpdir=`func_mktempdir` for lib in $libs; do $SED -e "$sysroot_cmd s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ > $tmpdir/tmp-la mv -f $tmpdir/tmp-la $lib done ${RM}r "$tmpdir" fi fi if test -n "$finish_cmds$finish_eval" && test -n "$libdirs" && $opt_finishing; then for libdir in $libdirs; do if test -n "$finish_cmds"; then # Do each command in the finish commands. func_execute_cmds "$finish_cmds" 'admincmds="$admincmds '"$cmd"'"' fi if test -n "$finish_eval"; then # Do the single finish_eval. eval cmds=\"$finish_eval\" $opt_dry_run || eval "$cmds" || func_append admincmds " $cmds" fi done fi # Exit here if they wanted silent mode. $opt_quiet && exit $EXIT_SUCCESS if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then echo "----------------------------------------------------------------------" echo "Libraries have been installed in:" for libdir in $libdirs; do $ECHO " $libdir" done if test "false" = "$opt_finishing"; then echo echo "NOTE: finish_cmds were not executed during testing, so you must" echo "manually run ldconfig to add a given test directory, LIBDIR, to" echo "the search path for generated executables." fi echo echo "If you ever happen to want to link against installed libraries" echo "in a given directory, LIBDIR, you must either use libtool, and" echo "specify the full pathname of the library, or use the '-LLIBDIR'" echo "flag during linking and do at least one of the following:" if test -n "$shlibpath_var"; then echo " - add LIBDIR to the '$shlibpath_var' environment variable" echo " during execution" fi if test -n "$runpath_var"; then echo " - add LIBDIR to the '$runpath_var' environment variable" echo " during linking" fi if test -n "$hardcode_libdir_flag_spec"; then libdir=LIBDIR eval flag=\"$hardcode_libdir_flag_spec\" $ECHO " - use the '$flag' linker flag" fi if test -n "$admincmds"; then $ECHO " - have your system administrator run these commands:$admincmds" fi if test -f /etc/ld.so.conf; then echo " - have your system administrator add LIBDIR to '/etc/ld.so.conf'" fi echo echo "See any operating system documentation about shared libraries for" case $host in solaris2.[6789]|solaris2.1[0-9]) echo "more information, such as the ld(1), crle(1) and ld.so(8) manual" echo "pages." ;; *) echo "more information, such as the ld(1) and ld.so(8) manual pages." ;; esac echo "----------------------------------------------------------------------" fi exit $EXIT_SUCCESS } test finish = "$opt_mode" && func_mode_finish ${1+"$@"} # func_mode_install arg... func_mode_install () { $debug_cmd # There may be an optional sh(1) argument at the beginning of # install_prog (especially on Windows NT). if test "$SHELL" = "$nonopt" || test /bin/sh = "$nonopt" || # Allow the use of GNU shtool's install command. case $nonopt in *shtool*) :;; *) false;; esac then # Aesthetically quote it. func_quote_arg pretty "$nonopt" install_prog="$func_quote_arg_result " arg=$1 shift else install_prog= arg=$nonopt fi # The real first argument should be the name of the installation program. # Aesthetically quote it. func_quote_arg pretty "$arg" func_append install_prog "$func_quote_arg_result" install_shared_prog=$install_prog case " $install_prog " in *[\\\ /]cp\ *) install_cp=: ;; *) install_cp=false ;; esac # We need to accept at least all the BSD install flags. dest= files= opts= prev= install_type= isdir=false stripme= no_mode=: for arg do arg2= if test -n "$dest"; then func_append files " $dest" dest=$arg continue fi case $arg in -d) isdir=: ;; -f) if $install_cp; then :; else prev=$arg fi ;; -g | -m | -o) prev=$arg ;; -s) stripme=" -s" continue ;; -*) ;; *) # If the previous option needed an argument, then skip it. if test -n "$prev"; then if test X-m = "X$prev" && test -n "$install_override_mode"; then arg2=$install_override_mode no_mode=false fi prev= else dest=$arg continue fi ;; esac # Aesthetically quote the argument. func_quote_arg pretty "$arg" func_append install_prog " $func_quote_arg_result" if test -n "$arg2"; then func_quote_arg pretty "$arg2" fi func_append install_shared_prog " $func_quote_arg_result" done test -z "$install_prog" && \ func_fatal_help "you must specify an install program" test -n "$prev" && \ func_fatal_help "the '$prev' option requires an argument" if test -n "$install_override_mode" && $no_mode; then if $install_cp; then :; else func_quote_arg pretty "$install_override_mode" func_append install_shared_prog " -m $func_quote_arg_result" fi fi if test -z "$files"; then if test -z "$dest"; then func_fatal_help "no file or destination specified" else func_fatal_help "you must specify a destination" fi fi # Strip any trailing slash from the destination. func_stripname '' '/' "$dest" dest=$func_stripname_result # Check to see that the destination is a directory. test -d "$dest" && isdir=: if $isdir; then destdir=$dest destname= else func_dirname_and_basename "$dest" "" "." destdir=$func_dirname_result destname=$func_basename_result # Not a directory, so check to see that there is only one file specified. set dummy $files; shift test "$#" -gt 1 && \ func_fatal_help "'$dest' is not a directory" fi case $destdir in [\\/]* | [A-Za-z]:[\\/]*) ;; *) for file in $files; do case $file in *.lo) ;; *) func_fatal_help "'$destdir' must be an absolute directory name" ;; esac done ;; esac # This variable tells wrapper scripts just to set variables rather # than running their programs. libtool_install_magic=$magic staticlibs= future_libdirs= current_libdirs= for file in $files; do # Do each installation. case $file in *.$libext) # Do the static libraries later. func_append staticlibs " $file" ;; *.la) func_resolve_sysroot "$file" file=$func_resolve_sysroot_result # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$file" \ || func_fatal_help "'$file' is not a valid libtool archive" library_names= old_library= relink_command= func_source "$file" # Add the libdir to current_libdirs if it is the destination. if test "X$destdir" = "X$libdir"; then case "$current_libdirs " in *" $libdir "*) ;; *) func_append current_libdirs " $libdir" ;; esac else # Note the libdir as a future libdir. case "$future_libdirs " in *" $libdir "*) ;; *) func_append future_libdirs " $libdir" ;; esac fi func_dirname "$file" "/" "" dir=$func_dirname_result func_append dir "$objdir" if test -n "$relink_command"; then # Strip any trailing slash from the destination. func_stripname '' '/' "$libdir" destlibdir=$func_stripname_result func_stripname '' '/' "$destdir" s_destdir=$func_stripname_result # Determine the prefix the user has applied to our future dir. inst_prefix_dir=`$ECHO "X$s_destdir" | $Xsed -e "s%$destlibdir\$%%"` # Don't allow the user to place us outside of our expected # location b/c this prevents finding dependent libraries that # are installed to the same prefix. # At present, this check doesn't affect windows .dll's that # are installed into $libdir/../bin (currently, that works fine) # but it's something to keep an eye on. test "$inst_prefix_dir" = "$destdir" && \ func_fatal_error "error: cannot install '$file' to a directory not ending in $libdir" if test -n "$inst_prefix_dir"; then # Stick the inst_prefix_dir data into the link command. relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` else relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"` fi func_warning "relinking '$file'" func_show_eval "$relink_command" \ 'func_fatal_error "error: relink '\''$file'\'' with the above command before installing it"' fi # See the names of the shared library. set dummy $library_names; shift if test -n "$1"; then realname=$1 shift srcname=$realname test -n "$relink_command" && srcname=${realname}T # Install the shared library and build the symlinks. func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \ 'exit $?' tstripme=$stripme case $host_os in cygwin* | mingw* | windows* | pw32* | cegcc*) case $realname in *.dll.a) tstripme= ;; esac ;; os2*) case $realname in *_dll.a) tstripme= ;; esac ;; esac if test -n "$tstripme" && test -n "$striplib"; then func_show_eval "$striplib $destdir/$realname" 'exit $?' fi if test "$#" -gt 0; then # Delete the old symlinks, and create new ones. # Try 'ln -sf' first, because the 'ln' binary might depend on # the symlink we replace! Solaris /bin/ln does not understand -f, # so we also need to try rm && ln -s. for linkname do test "$linkname" != "$realname" \ && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })" done fi # Do each command in the postinstall commands. lib=$destdir/$realname func_execute_cmds "$postinstall_cmds" 'exit $?' fi # Install the pseudo-library for information purposes. func_basename "$file" name=$func_basename_result instname=$dir/${name}i func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' # Maybe install the static library, too. test -n "$old_library" && func_append staticlibs " $dir/$old_library" ;; *.lo) # Install (i.e. copy) a libtool object. # Figure out destination file name, if it wasn't already specified. if test -n "$destname"; then destfile=$destdir/$destname else func_basename "$file" destfile=$func_basename_result destfile=$destdir/$destfile fi # Deduce the name of the destination old-style object file. case $destfile in *.lo) func_lo2o "$destfile" staticdest=$func_lo2o_result ;; *.$objext) staticdest=$destfile destfile= ;; *) func_fatal_help "cannot copy a libtool object to '$destfile'" ;; esac # Install the libtool object if requested. test -n "$destfile" && \ func_show_eval "$install_prog $file $destfile" 'exit $?' # Install the old object if enabled. if test yes = "$build_old_libs"; then # Deduce the name of the old-style object file. func_lo2o "$file" staticobj=$func_lo2o_result func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?' fi exit $EXIT_SUCCESS ;; *) # Figure out destination file name, if it wasn't already specified. if test -n "$destname"; then destfile=$destdir/$destname else func_basename "$file" destfile=$func_basename_result destfile=$destdir/$destfile fi # If the file is missing, and there is a .exe on the end, strip it # because it is most likely a libtool script we actually want to # install stripped_ext= case $file in *.exe) if test ! -f "$file"; then func_stripname '' '.exe' "$file" file=$func_stripname_result stripped_ext=.exe fi ;; esac # Do a test to see if this is really a libtool program. case $host in *cygwin* | *mingw* | *windows*) if func_ltwrapper_executable_p "$file"; then func_ltwrapper_scriptname "$file" wrapper=$func_ltwrapper_scriptname_result else func_stripname '' '.exe' "$file" wrapper=$func_stripname_result fi ;; *) wrapper=$file ;; esac if func_ltwrapper_script_p "$wrapper"; then notinst_deplibs= relink_command= func_source "$wrapper" # Check the variables that should have been set. test -z "$generated_by_libtool_version" && \ func_fatal_error "invalid libtool wrapper script '$wrapper'" finalize=: for lib in $notinst_deplibs; do # Check to see that each library is installed. libdir= if test -f "$lib"; then func_source "$lib" fi libfile=$libdir/`$ECHO "$lib" | $SED 's%^.*/%%g'` if test -n "$libdir" && test ! -f "$libfile"; then func_warning "'$lib' has not been installed in '$libdir'" finalize=false fi done relink_command= func_source "$wrapper" outputname= if test no = "$fast_install" && test -n "$relink_command"; then $opt_dry_run || { if $finalize; then tmpdir=`func_mktempdir` func_basename "$file$stripped_ext" file=$func_basename_result outputname=$tmpdir/$file # Replace the output file specification. relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` $opt_quiet || { func_quote_arg expand,pretty "$relink_command" eval "func_echo $func_quote_arg_result" } if eval "$relink_command"; then : else func_error "error: relink '$file' with the above command before installing it" $opt_dry_run || ${RM}r "$tmpdir" continue fi file=$outputname else func_warning "cannot relink '$file'" fi } else # Install the binary that we compiled earlier. file=`$ECHO "$file$stripped_ext" | $SED "s%\([^/]*\)$%$objdir/\1%"` fi fi # remove .exe since cygwin /usr/bin/install will append another # one anyway case $install_prog,$host in */usr/bin/install*,*cygwin*) case $file:$destfile in *.exe:*.exe) # this is ok ;; *.exe:*) destfile=$destfile.exe ;; *:*.exe) func_stripname '' '.exe' "$destfile" destfile=$func_stripname_result ;; esac ;; esac func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?' $opt_dry_run || if test -n "$outputname"; then ${RM}r "$tmpdir" fi ;; esac done for file in $staticlibs; do func_basename "$file" name=$func_basename_result # Set up the ranlib parameters. oldlib=$destdir/$name func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 tool_oldlib=$func_to_tool_file_result func_show_eval "$install_prog \$file \$oldlib" 'exit $?' if test -n "$stripme" && test -n "$old_striplib"; then func_show_eval "$old_striplib $tool_oldlib" 'exit $?' fi # Do each command in the postinstall commands. func_execute_cmds "$old_postinstall_cmds" 'exit $?' done test -n "$future_libdirs" && \ func_warning "remember to run '$progname --finish$future_libdirs'" if test -n "$current_libdirs"; then # Maybe just do a dry run. $opt_dry_run && current_libdirs=" -n$current_libdirs" exec_cmd='$SHELL "$progpath" $preserve_args --finish$current_libdirs' else exit $EXIT_SUCCESS fi } test install = "$opt_mode" && func_mode_install ${1+"$@"} # func_generate_dlsyms outputname originator pic_p # Extract symbols from dlprefiles and create ${outputname}S.o with # a dlpreopen symbol table. func_generate_dlsyms () { $debug_cmd my_outputname=$1 my_originator=$2 my_pic_p=${3-false} my_prefix=`$ECHO "$my_originator" | $SED 's%[^a-zA-Z0-9]%_%g'` my_dlsyms= if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then if test -n "$NM" && test -n "$global_symbol_pipe"; then my_dlsyms=${my_outputname}S.c else func_error "not configured to extract global symbols from dlpreopened files" fi fi if test -n "$my_dlsyms"; then case $my_dlsyms in "") ;; *.c) # Discover the nlist of each of the dlfiles. nlist=$output_objdir/$my_outputname.nm func_show_eval "$RM $nlist ${nlist}S ${nlist}T" # Parse the name list into a source file. func_verbose "creating $output_objdir/$my_dlsyms" $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\ /* $my_dlsyms - symbol resolution table for '$my_outputname' dlsym emulation. */ /* Generated by $PROGRAM (GNU $PACKAGE) $VERSION */ #ifdef __cplusplus extern \"C\" { #endif #if defined __GNUC__ && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)) #pragma GCC diagnostic ignored \"-Wstrict-prototypes\" #endif /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE /* DATA imports from DLLs on WIN32 can't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */ # define LT_DLSYM_CONST #elif defined __osf__ /* This system does not cope well with relocations in const data. */ # define LT_DLSYM_CONST #else # define LT_DLSYM_CONST const #endif #define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) /* External symbol declarations for the compiler. */\ " if test yes = "$dlself"; then func_verbose "generating symbol list for '$output'" $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist" # Add our own program objects to the symbol list. progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP` for progfile in $progfiles; do func_to_tool_file "$progfile" func_convert_file_msys_to_w32 func_verbose "extracting global C symbols from '$func_to_tool_file_result'" $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'" done if test -n "$exclude_expsyms"; then $opt_dry_run || { eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' eval '$MV "$nlist"T "$nlist"' } fi if test -n "$export_symbols_regex"; then $opt_dry_run || { eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' eval '$MV "$nlist"T "$nlist"' } fi # Prepare the list of exported symbols if test -z "$export_symbols"; then export_symbols=$output_objdir/$outputname.exp $opt_dry_run || { $RM $export_symbols eval "$SED -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' case $host in *cygwin* | *mingw* | *windows* | *cegcc* ) eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' ;; esac } else $opt_dry_run || { eval "$SED -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' eval '$MV "$nlist"T "$nlist"' case $host in *cygwin* | *mingw* | *windows* | *cegcc* ) eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' ;; esac } fi fi for dlprefile in $dlprefiles; do func_verbose "extracting global C symbols from '$dlprefile'" func_basename "$dlprefile" name=$func_basename_result case $host in *cygwin* | *mingw* | *windows* | *cegcc* ) # if an import library, we need to obtain dlname if func_win32_import_lib_p "$dlprefile"; then func_tr_sh "$dlprefile" eval "curr_lafile=\$libfile_$func_tr_sh_result" dlprefile_dlbasename= if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then # Use subshell, to avoid clobbering current variable values dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"` if test -n "$dlprefile_dlname"; then func_basename "$dlprefile_dlname" dlprefile_dlbasename=$func_basename_result else # no lafile. user explicitly requested -dlpreopen . $sharedlib_from_linklib_cmd "$dlprefile" dlprefile_dlbasename=$sharedlib_from_linklib_result fi fi $opt_dry_run || { if test -n "$dlprefile_dlbasename"; then eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"' else func_warning "Could not compute DLL name from $name" eval '$ECHO ": $name " >> "$nlist"' fi func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 case $host in i[3456]86-*-mingw32*) eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe | $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'" ;; *) eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe | $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/__nm_//' >> '$nlist'" ;; esac } else # not an import lib $opt_dry_run || { eval '$ECHO ": $name " >> "$nlist"' func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" } fi ;; *) $opt_dry_run || { eval '$ECHO ": $name " >> "$nlist"' func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" } ;; esac done $opt_dry_run || { # Make sure we have at least an empty file. test -f "$nlist" || : > "$nlist" if test -n "$exclude_expsyms"; then $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T $MV "$nlist"T "$nlist" fi # Try sorting and uniquifying the output. if $GREP -v "^: " < "$nlist" | if sort -k 3 /dev/null 2>&1; then sort -k 3 else sort +2 fi | uniq > "$nlist"S; then : else $GREP -v "^: " < "$nlist" > "$nlist"S fi if test -f "$nlist"S; then eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"' else echo '/* NONE */' >> "$output_objdir/$my_dlsyms" fi func_show_eval '$RM "${nlist}I"' if test -n "$global_symbol_to_import"; then eval "$global_symbol_to_import"' < "$nlist"S > "$nlist"I' fi echo >> "$output_objdir/$my_dlsyms" "\ /* The mapping between symbol names and symbols. */ typedef struct { const char *name; void *address; } lt_dlsymlist; extern LT_DLSYM_CONST lt_dlsymlist lt_${my_prefix}_LTX_preloaded_symbols[];\ " if test -s "$nlist"I; then echo >> "$output_objdir/$my_dlsyms" "\ static void lt_syminit(void) { LT_DLSYM_CONST lt_dlsymlist *symbol = lt_${my_prefix}_LTX_preloaded_symbols; for (; symbol->name; ++symbol) {" $SED 's/.*/ if (STREQ (symbol->name, \"&\")) symbol->address = (void *) \&&;/' < "$nlist"I >> "$output_objdir/$my_dlsyms" echo >> "$output_objdir/$my_dlsyms" "\ } }" fi echo >> "$output_objdir/$my_dlsyms" "\ LT_DLSYM_CONST lt_dlsymlist lt_${my_prefix}_LTX_preloaded_symbols[] = { {\"$my_originator\", (void *) 0}," if test -s "$nlist"I; then echo >> "$output_objdir/$my_dlsyms" "\ {\"@INIT@\", (void *) <_syminit}," fi case $need_lib_prefix in no) eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms" ;; *) eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms" ;; esac echo >> "$output_objdir/$my_dlsyms" "\ {0, (void *) 0} }; /* This works around a problem in FreeBSD linker */ #ifdef FREEBSD_WORKAROUND static const void *lt_preloaded_setup() { return lt_${my_prefix}_LTX_preloaded_symbols; } #endif #ifdef __cplusplus } #endif\ " } # !$opt_dry_run pic_flag_for_symtable= case "$compile_command " in *" -static "*) ;; *) case $host in # compiling the symbol table file with pic_flag works around # a FreeBSD bug that causes programs to crash when -lm is # linked before any other PIC object. But we must not use # pic_flag when linking with -static. The problem exists in # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. *-*-freebsd2.*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;; *-*-hpux*) pic_flag_for_symtable=" $pic_flag" ;; *) $my_pic_p && pic_flag_for_symtable=" $pic_flag" ;; esac ;; esac symtab_cflags= for arg in $LTCFLAGS; do case $arg in -pie | -fpie | -fPIE) ;; *) func_append symtab_cflags " $arg" ;; esac done # Now compile the dynamic symbol file. func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' # Clean up the generated files. func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T" "${nlist}I"' # Transform the symbol file into the correct name. symfileobj=$output_objdir/${my_outputname}S.$objext case $host in *cygwin* | *mingw* | *windows* | *cegcc* ) if test -f "$output_objdir/$my_outputname.def"; then compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` else compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` fi ;; *) compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` ;; esac ;; *) func_fatal_error "unknown suffix for '$my_dlsyms'" ;; esac else # We keep going just in case the user didn't refer to # lt_preloaded_symbols. The linker will fail if global_symbol_pipe # really was required. # Nullify the symbol file. compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"` finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"` fi } # func_cygming_gnu_implib_p ARG # This predicate returns with zero status (TRUE) if # ARG is a GNU/binutils-style import library. Returns # with nonzero status (FALSE) otherwise. func_cygming_gnu_implib_p () { $debug_cmd func_to_tool_file "$1" func_convert_file_msys_to_w32 func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'` test -n "$func_cygming_gnu_implib_tmp" } # func_cygming_ms_implib_p ARG # This predicate returns with zero status (TRUE) if # ARG is an MS-style import library. Returns # with nonzero status (FALSE) otherwise. func_cygming_ms_implib_p () { $debug_cmd func_to_tool_file "$1" func_convert_file_msys_to_w32 func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'` test -n "$func_cygming_ms_implib_tmp" } # func_win32_libid arg # return the library type of file 'arg' # # Need a lot of goo to handle *both* DLLs and import libs # Has to be a shell function in order to 'eat' the argument # that is supplied when $file_magic_command is called. # Despite the name, also deal with 64 bit binaries. func_win32_libid () { $debug_cmd win32_libid_type=unknown win32_fileres=`file -L $1 2>/dev/null` case $win32_fileres in *ar\ archive\ import\ library*) # definitely import win32_libid_type="x86 archive import" ;; *ar\ archive*) # could be an import, or static # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64|pe-aarch64)' >/dev/null; then case $nm_interface in "MS dumpbin") if func_cygming_ms_implib_p "$1" || func_cygming_gnu_implib_p "$1" then win32_nmres=import else win32_nmres= fi ;; *) func_to_tool_file "$1" func_convert_file_msys_to_w32 win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" | $SED -n -e ' 1,100{ / I /{ s|.*|import| p q } }'` ;; esac case $win32_nmres in import*) win32_libid_type="x86 archive import";; *) win32_libid_type="x86 archive static";; esac fi ;; *DLL*) win32_libid_type="x86 DLL" ;; *executable*) # but shell scripts are "executable" too... case $win32_fileres in *MS\ Windows\ PE\ Intel*) win32_libid_type="x86 DLL" ;; esac ;; esac $ECHO "$win32_libid_type" } # func_cygming_dll_for_implib ARG # # Platform-specific function to extract the # name of the DLL associated with the specified # import library ARG. # Invoked by eval'ing the libtool variable # $sharedlib_from_linklib_cmd # Result is available in the variable # $sharedlib_from_linklib_result func_cygming_dll_for_implib () { $debug_cmd sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"` } # func_cygming_dll_for_implib_fallback_core SECTION_NAME LIBNAMEs # # The is the core of a fallback implementation of a # platform-specific function to extract the name of the # DLL associated with the specified import library LIBNAME. # # SECTION_NAME is either .idata$6 or .idata$7, depending # on the platform and compiler that created the implib. # # Echos the name of the DLL associated with the # specified import library. func_cygming_dll_for_implib_fallback_core () { $debug_cmd match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"` $OBJDUMP -s --section "$1" "$2" 2>/dev/null | $SED '/^Contents of section '"$match_literal"':/{ # Place marker at beginning of archive member dllname section s/.*/====MARK====/ p d } # These lines can sometimes be longer than 43 characters, but # are always uninteresting /:[ ]*file format pe[i]\{,1\}-/d /^In archive [^:]*:/d # Ensure marker is printed /^====MARK====/p # Remove all lines with less than 43 characters /^.\{43\}/!d # From remaining lines, remove first 43 characters s/^.\{43\}//' | $SED -n ' # Join marker and all lines until next marker into a single line /^====MARK====/ b para H $ b para b :para x s/\n//g # Remove the marker s/^====MARK====// # Remove trailing dots and whitespace s/[\. \t]*$// # Print /./p' | # we now have a list, one entry per line, of the stringified # contents of the appropriate section of all members of the # archive that possess that section. Heuristic: eliminate # all those that have a first or second character that is # a '.' (that is, objdump's representation of an unprintable # character.) This should work for all archives with less than # 0x302f exports -- but will fail for DLLs whose name actually # begins with a literal '.' or a single character followed by # a '.'. # # Of those that remain, print the first one. $SED -e '/^\./d;/^.\./d;q' } # func_cygming_dll_for_implib_fallback ARG # Platform-specific function to extract the # name of the DLL associated with the specified # import library ARG. # # This fallback implementation is for use when $DLLTOOL # does not support the --identify-strict option. # Invoked by eval'ing the libtool variable # $sharedlib_from_linklib_cmd # Result is available in the variable # $sharedlib_from_linklib_result func_cygming_dll_for_implib_fallback () { $debug_cmd if func_cygming_gnu_implib_p "$1"; then # binutils import library sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"` elif func_cygming_ms_implib_p "$1"; then # ms-generated import library sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"` else # unknown sharedlib_from_linklib_result= fi } # func_extract_an_archive dir oldlib func_extract_an_archive () { $debug_cmd f_ex_an_ar_dir=$1; shift f_ex_an_ar_oldlib=$1 if test yes = "$lock_old_archive_extraction"; then lockfile=$f_ex_an_ar_oldlib.lock until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do func_echo "Waiting for $lockfile to be removed" sleep 2 done fi func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \ 'stat=$?; rm -f "$lockfile"; exit $stat' if test yes = "$lock_old_archive_extraction"; then $opt_dry_run || rm -f "$lockfile" fi if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then : else func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" fi } # func_extract_archives gentop oldlib ... func_extract_archives () { $debug_cmd my_gentop=$1; shift my_oldlibs=${1+"$@"} my_oldobjs= my_xlib= my_xabs= my_xdir= for my_xlib in $my_oldlibs; do # Extract the objects. case $my_xlib in [\\/]* | [A-Za-z]:[\\/]*) my_xabs=$my_xlib ;; *) my_xabs=`pwd`"/$my_xlib" ;; esac func_basename "$my_xlib" my_xlib=$func_basename_result my_xlib_u=$my_xlib while :; do case " $extracted_archives " in *" $my_xlib_u "*) func_arith $extracted_serial + 1 extracted_serial=$func_arith_result my_xlib_u=lt$extracted_serial-$my_xlib ;; *) break ;; esac done extracted_archives="$extracted_archives $my_xlib_u" my_xdir=$my_gentop/$my_xlib_u func_mkdir_p "$my_xdir" case $host in *-darwin*) func_verbose "Extracting $my_xabs" # Do not bother doing anything if just a dry run $opt_dry_run || { darwin_orig_dir=`pwd` cd $my_xdir || exit $? darwin_archive=$my_xabs darwin_curdir=`pwd` func_basename "$darwin_archive" darwin_base_archive=$func_basename_result darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true` if test -n "$darwin_arches"; then darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'` darwin_arch= func_verbose "$darwin_base_archive has multiple architectures $darwin_arches" for darwin_arch in $darwin_arches; do func_mkdir_p "unfat-$$/$darwin_base_archive-$darwin_arch" $LIPO -thin $darwin_arch -output "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" "$darwin_archive" cd "unfat-$$/$darwin_base_archive-$darwin_arch" func_extract_an_archive "`pwd`" "$darwin_base_archive" cd "$darwin_curdir" $RM "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" done # $darwin_arches ## Okay now we've a bunch of thin objects, gotta fatten them up :) darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$sed_basename" | sort -u` darwin_file= darwin_files= for darwin_file in $darwin_filelist; do darwin_files=`find unfat-$$ -name $darwin_file -print | sort | $NL2SP` $LIPO -create -output "$darwin_file" $darwin_files done # $darwin_filelist $RM -rf unfat-$$ cd "$darwin_orig_dir" else cd $darwin_orig_dir func_extract_an_archive "$my_xdir" "$my_xabs" fi # $darwin_arches } # !$opt_dry_run ;; *) func_extract_an_archive "$my_xdir" "$my_xabs" ;; esac my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP` done func_extract_archives_result=$my_oldobjs } # func_emit_wrapper [arg=no] # # Emit a libtool wrapper script on stdout. # Don't directly open a file because we may want to # incorporate the script contents within a cygwin/mingw/windows # wrapper executable. Must ONLY be called from within # func_mode_link because it depends on a number of variables # set therein. # # ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR # variable will take. If 'yes', then the emitted script # will assume that the directory where it is stored is # the $objdir directory. This is a cygwin/mingw/windows-specific # behavior. func_emit_wrapper () { func_emit_wrapper_arg1=${1-no} $ECHO "\ #! $SHELL # $output - temporary wrapper script for $objdir/$outputname # Generated by $PROGRAM (GNU $PACKAGE) $VERSION # # The $output program cannot be directly executed until all the libtool # libraries that it depends on are installed. # # This wrapper script should never be moved out of the build directory. # If it is, it will not operate correctly. # Sed substitution that helps us do robust quoting. It backslashifies # metacharacters that are still active within double-quoted strings. sed_quote_subst='$sed_quote_subst' # Be Bourne compatible if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which # is contrary to our usage. Disable this feature. alias -g '\${1+\"\$@\"}'='\"\$@\"' setopt NO_GLOB_SUBST else case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac fi BIN_SH=xpg4; export BIN_SH # for Tru64 DUALCASE=1; export DUALCASE # for MKS sh # 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 relink_command=\"$relink_command\" # This environment variable determines our operation mode. if test \"\$libtool_install_magic\" = \"$magic\"; then # install mode needs the following variables: generated_by_libtool_version='$macro_version' notinst_deplibs='$notinst_deplibs' else # When we are sourced in execute mode, \$file and \$ECHO are already set. if test \"\$libtool_execute_magic\" != \"$magic\"; then file=\"\$0\"" func_quote_arg pretty "$ECHO" qECHO=$func_quote_arg_result $ECHO "\ # A function that is used when there is no print builtin or printf. func_fallback_echo () { eval 'cat <<_LTECHO_EOF \$1 _LTECHO_EOF' } ECHO=$qECHO fi # Very basic option parsing. These options are (a) specific to # the libtool wrapper, (b) are identical between the wrapper # /script/ and the wrapper /executable/ that is used only on # windows platforms, and (c) all begin with the string "--lt-" # (application programs are unlikely to have options that match # this pattern). # # There are only two supported options: --lt-debug and # --lt-dump-script. There is, deliberately, no --lt-help. # # The first argument to this parsing function should be the # script's $0 value, followed by "$@". lt_option_debug= func_parse_lt_options () { lt_script_arg0=\$0 shift for lt_opt do case \"\$lt_opt\" in --lt-debug) lt_option_debug=1 ;; --lt-dump-script) lt_dump_D=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%/[^/]*$%%'\` test \"X\$lt_dump_D\" = \"X\$lt_script_arg0\" && lt_dump_D=. lt_dump_F=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%^.*/%%'\` cat \"\$lt_dump_D/\$lt_dump_F\" exit 0 ;; --lt-*) \$ECHO \"Unrecognized --lt- option: '\$lt_opt'\" 1>&2 exit 1 ;; esac done # Print the debug banner immediately: if test -n \"\$lt_option_debug\"; then echo \"$outputname:$output:\$LINENO: libtool wrapper (GNU $PACKAGE) $VERSION\" 1>&2 fi } # Used when --lt-debug. Prints its arguments to stdout # (redirection is the responsibility of the caller) func_lt_dump_args () { lt_dump_args_N=1; for lt_arg do \$ECHO \"$outputname:$output:\$LINENO: newargv[\$lt_dump_args_N]: \$lt_arg\" lt_dump_args_N=\`expr \$lt_dump_args_N + 1\` done } # Core function for launching the target application func_exec_program_core () { " case $host in # Backslashes separate directories on plain windows *-*-mingw* | *-*-windows* | *-*-os2* | *-cegcc*) $ECHO "\ if test -n \"\$lt_option_debug\"; then \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir\\\\\$program\" 1>&2 func_lt_dump_args \${1+\"\$@\"} 1>&2 fi exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} " ;; *) $ECHO "\ if test -n \"\$lt_option_debug\"; then \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir/\$program\" 1>&2 func_lt_dump_args \${1+\"\$@\"} 1>&2 fi exec \"\$progdir/\$program\" \${1+\"\$@\"} " ;; esac $ECHO "\ \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2 exit 1 } # A function to encapsulate launching the target application # Strips options in the --lt-* namespace from \$@ and # launches target application with the remaining arguments. func_exec_program () { case \" \$* \" in *\\ --lt-*) for lt_wr_arg do case \$lt_wr_arg in --lt-*) ;; *) set x \"\$@\" \"\$lt_wr_arg\"; shift;; esac shift done ;; esac func_exec_program_core \${1+\"\$@\"} } # Parse options func_parse_lt_options \"\$0\" \${1+\"\$@\"} # Find the directory that this script lives in. thisdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*$%%'\` test \"x\$thisdir\" = \"x\$file\" && thisdir=. # Follow symbolic links until we get to the real thisdir. file=\`ls -ld \"\$file\" | $SED -n 's/.*-> //p'\` while test -n \"\$file\"; do destdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*\$%%'\` # If there was a directory component, then change thisdir. if test \"x\$destdir\" != \"x\$file\"; then case \"\$destdir\" in [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; *) thisdir=\"\$thisdir/\$destdir\" ;; esac fi file=\`\$ECHO \"\$file\" | $SED 's%^.*/%%'\` file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\` done # Usually 'no', except on cygwin/mingw/windows when embedded into # the cwrapper. WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1 if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then # special case for '.' if test \"\$thisdir\" = \".\"; then thisdir=\`pwd\` fi # remove .libs from thisdir case \"\$thisdir\" in *[\\\\/]$objdir ) thisdir=\`\$ECHO \"\$thisdir\" | $SED 's%[\\\\/][^\\\\/]*$%%'\` ;; $objdir ) thisdir=. ;; esac fi # Try to get the absolute directory name. absdir=\`cd \"\$thisdir\" && pwd\` test -n \"\$absdir\" && thisdir=\"\$absdir\" " if test yes = "$fast_install"; then $ECHO "\ program=lt-'$outputname'$exeext progdir=\"\$thisdir/$objdir\" if test ! -f \"\$progdir/\$program\" || { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | $SED 1q\`; \\ test \"X\$file\" != \"X\$progdir/\$program\"; }; then file=\"\$\$-\$program\" if test ! -d \"\$progdir\"; then $MKDIR \"\$progdir\" else $RM \"\$progdir/\$file\" fi" $ECHO "\ # relink executable if necessary if test -n \"\$relink_command\"; then if relink_command_output=\`eval \$relink_command 2>&1\`; then : else \$ECHO \"\$relink_command_output\" >&2 $RM \"\$progdir/\$file\" exit 1 fi fi $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || { $RM \"\$progdir/\$program\"; $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; } $RM \"\$progdir/\$file\" fi" else $ECHO "\ program='$outputname' progdir=\"\$thisdir/$objdir\" " fi $ECHO "\ if test -f \"\$progdir/\$program\"; then" # fixup the dll searchpath if we need to. # # Fix the DLL searchpath if we need to. Do this before prepending # to shlibpath, because on Windows, both are PATH and uninstalled # libraries must come first. if test -n "$dllsearchpath"; then $ECHO "\ # Add the dll search path components to the executable PATH PATH=$dllsearchpath:\$PATH " fi # Export our shlibpath_var if we have one. if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then $ECHO "\ # Add our own library path to $shlibpath_var $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" # Some systems cannot cope with colon-terminated $shlibpath_var # The second colon is a workaround for a bug in BeOS R4 sed $shlibpath_var=\`\$ECHO \"\$$shlibpath_var\" | $SED 's/::*\$//'\` export $shlibpath_var " fi $ECHO "\ if test \"\$libtool_execute_magic\" != \"$magic\"; then # Run the actual program with our arguments. func_exec_program \${1+\"\$@\"} fi else # The program doesn't exist. \$ECHO \"\$0: error: '\$progdir/\$program' does not exist\" 1>&2 \$ECHO \"This script is just a wrapper for \$program.\" 1>&2 \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2 exit 1 fi fi\ " } # func_emit_cwrapperexe_src # emit the source code for a wrapper executable on stdout # Must ONLY be called from within func_mode_link because # it depends on a number of variable set therein. func_emit_cwrapperexe_src () { cat < #include #if defined _WIN32 && !defined __GNUC__ # include # include # include #else # include # include # ifdef __CYGWIN__ # include # endif #endif #include #include #include #include #include #include #include #include #define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) /* declarations of non-ANSI functions */ #if defined __MINGW32__ # ifdef __STRICT_ANSI__ _CRTIMP int __cdecl _putenv (const char *); # endif #elif defined __CYGWIN__ # ifdef __STRICT_ANSI__ char *realpath (const char *, char *); int putenv (char *); int setenv (const char *, const char *, int); # endif /* #elif defined other_platform || defined ... */ #endif /* portability defines, excluding path handling macros */ #if defined _MSC_VER # define setmode _setmode # define stat _stat # define chmod _chmod # define getcwd _getcwd # define putenv _putenv # define S_IXUSR _S_IEXEC #elif defined __MINGW32__ # define setmode _setmode # define stat _stat # define chmod _chmod # define getcwd _getcwd # define putenv _putenv #elif defined __CYGWIN__ # define HAVE_SETENV # define FOPEN_WB "wb" /* #elif defined other platforms ... */ #endif #if defined PATH_MAX # define LT_PATHMAX PATH_MAX #elif defined MAXPATHLEN # define LT_PATHMAX MAXPATHLEN #else # define LT_PATHMAX 1024 #endif #ifndef S_IXOTH # define S_IXOTH 0 #endif #ifndef S_IXGRP # define S_IXGRP 0 #endif /* path handling portability macros */ #ifndef DIR_SEPARATOR # define DIR_SEPARATOR '/' # define PATH_SEPARATOR ':' #endif #if defined _WIN32 || defined __MSDOS__ || defined __DJGPP__ || \ defined __OS2__ # define HAVE_DOS_BASED_FILE_SYSTEM # define FOPEN_WB "wb" # ifndef DIR_SEPARATOR_2 # define DIR_SEPARATOR_2 '\\' # endif # ifndef PATH_SEPARATOR_2 # define PATH_SEPARATOR_2 ';' # endif #endif #ifndef DIR_SEPARATOR_2 # define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) #else /* DIR_SEPARATOR_2 */ # define IS_DIR_SEPARATOR(ch) \ (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) #endif /* DIR_SEPARATOR_2 */ #ifndef PATH_SEPARATOR_2 # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) #else /* PATH_SEPARATOR_2 */ # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) #endif /* PATH_SEPARATOR_2 */ #ifndef FOPEN_WB # define FOPEN_WB "w" #endif #ifndef _O_BINARY # define _O_BINARY 0 #endif #define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) #define XFREE(stale) do { \ if (stale) { free (stale); stale = 0; } \ } while (0) #if defined LT_DEBUGWRAPPER static int lt_debug = 1; #else static int lt_debug = 0; #endif const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */ void *xmalloc (size_t num); char *xstrdup (const char *string); const char *base_name (const char *name); char *find_executable (const char *wrapper); char *chase_symlinks (const char *pathspec); int make_executable (const char *path); int check_executable (const char *path); char *strendzap (char *str, const char *pat); void lt_debugprintf (const char *file, int line, const char *fmt, ...); void lt_fatal (const char *file, int line, const char *message, ...); static const char *nonnull (const char *s); static const char *nonempty (const char *s); void lt_setenv (const char *name, const char *value); char *lt_extend_str (const char *orig_value, const char *add, int to_end); void lt_update_exe_path (const char *name, const char *value); void lt_update_lib_path (const char *name, const char *value); char **prepare_spawn (char **argv); void lt_dump_script (FILE *f); EOF cat <= 0) && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))) return 1; else return 0; } int make_executable (const char *path) { int rval = 0; struct stat st; lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n", nonempty (path)); if ((!path) || (!*path)) return 0; if (stat (path, &st) >= 0) { rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR); } return rval; } /* Searches for the full path of the wrapper. Returns newly allocated full path name if found, NULL otherwise Does not chase symlinks, even on platforms that support them. */ char * find_executable (const char *wrapper) { int has_slash = 0; const char *p; const char *p_next; /* static buffer for getcwd */ char tmp[LT_PATHMAX + 1]; size_t tmp_len; char *concat_name; lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n", nonempty (wrapper)); if ((wrapper == NULL) || (*wrapper == '\0')) return NULL; /* Absolute path? */ #if defined HAVE_DOS_BASED_FILE_SYSTEM if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':') { concat_name = xstrdup (wrapper); if (check_executable (concat_name)) return concat_name; XFREE (concat_name); } else { #endif if (IS_DIR_SEPARATOR (wrapper[0])) { concat_name = xstrdup (wrapper); if (check_executable (concat_name)) return concat_name; XFREE (concat_name); } #if defined HAVE_DOS_BASED_FILE_SYSTEM } #endif for (p = wrapper; *p; p++) if (*p == '/') { has_slash = 1; break; } if (!has_slash) { /* no slashes; search PATH */ const char *path = getenv ("PATH"); if (path != NULL) { for (p = path; *p; p = p_next) { const char *q; size_t p_len; for (q = p; *q; q++) if (IS_PATH_SEPARATOR (*q)) break; p_len = (size_t) (q - p); p_next = (*q == '\0' ? q : q + 1); if (p_len == 0) { /* empty path: current directory */ if (getcwd (tmp, LT_PATHMAX) == NULL) lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", nonnull (strerror (errno))); tmp_len = strlen (tmp); concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); memcpy (concat_name, tmp, tmp_len); concat_name[tmp_len] = '/'; strcpy (concat_name + tmp_len + 1, wrapper); } else { concat_name = XMALLOC (char, p_len + 1 + strlen (wrapper) + 1); memcpy (concat_name, p, p_len); concat_name[p_len] = '/'; strcpy (concat_name + p_len + 1, wrapper); } if (check_executable (concat_name)) return concat_name; XFREE (concat_name); } } /* not found in PATH; assume curdir */ } /* Relative path | not found in path: prepend cwd */ if (getcwd (tmp, LT_PATHMAX) == NULL) lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", nonnull (strerror (errno))); tmp_len = strlen (tmp); concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); memcpy (concat_name, tmp, tmp_len); concat_name[tmp_len] = '/'; strcpy (concat_name + tmp_len + 1, wrapper); if (check_executable (concat_name)) return concat_name; XFREE (concat_name); return NULL; } char * chase_symlinks (const char *pathspec) { #ifndef S_ISLNK return xstrdup (pathspec); #else char buf[LT_PATHMAX]; struct stat s; char *tmp_pathspec = xstrdup (pathspec); char *p; int has_symlinks = 0; while (strlen (tmp_pathspec) && !has_symlinks) { lt_debugprintf (__FILE__, __LINE__, "checking path component for symlinks: %s\n", tmp_pathspec); if (lstat (tmp_pathspec, &s) == 0) { if (S_ISLNK (s.st_mode) != 0) { has_symlinks = 1; break; } /* search backwards for last DIR_SEPARATOR */ p = tmp_pathspec + strlen (tmp_pathspec) - 1; while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) p--; if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) { /* no more DIR_SEPARATORS left */ break; } *p = '\0'; } else { lt_fatal (__FILE__, __LINE__, "error accessing file \"%s\": %s", tmp_pathspec, nonnull (strerror (errno))); } } XFREE (tmp_pathspec); if (!has_symlinks) { return xstrdup (pathspec); } tmp_pathspec = realpath (pathspec, buf); if (tmp_pathspec == 0) { lt_fatal (__FILE__, __LINE__, "could not follow symlinks for %s", pathspec); } return xstrdup (tmp_pathspec); #endif } char * strendzap (char *str, const char *pat) { size_t len, patlen; assert (str != NULL); assert (pat != NULL); len = strlen (str); patlen = strlen (pat); if (patlen <= len) { str += len - patlen; if (STREQ (str, pat)) *str = '\0'; } return str; } void lt_debugprintf (const char *file, int line, const char *fmt, ...) { va_list args; if (lt_debug) { (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line); va_start (args, fmt); (void) vfprintf (stderr, fmt, args); va_end (args); } } static void lt_error_core (int exit_status, const char *file, int line, const char *mode, const char *message, va_list ap) { fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode); vfprintf (stderr, message, ap); fprintf (stderr, ".\n"); if (exit_status >= 0) exit (exit_status); } void lt_fatal (const char *file, int line, const char *message, ...) { va_list ap; va_start (ap, message); lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap); va_end (ap); } static const char * nonnull (const char *s) { return s ? s : "(null)"; } static const char * nonempty (const char *s) { return (s && !*s) ? "(empty)" : nonnull (s); } void lt_setenv (const char *name, const char *value) { lt_debugprintf (__FILE__, __LINE__, "(lt_setenv) setting '%s' to '%s'\n", nonnull (name), nonnull (value)); { #ifdef HAVE_SETENV /* always make a copy, for consistency with !HAVE_SETENV */ char *str = xstrdup (value); setenv (name, str, 1); #else size_t len = strlen (name) + 1 + strlen (value) + 1; char *str = XMALLOC (char, len); sprintf (str, "%s=%s", name, value); if (putenv (str) != EXIT_SUCCESS) { XFREE (str); } #endif } } char * lt_extend_str (const char *orig_value, const char *add, int to_end) { char *new_value; if (orig_value && *orig_value) { size_t orig_value_len = strlen (orig_value); size_t add_len = strlen (add); new_value = XMALLOC (char, add_len + orig_value_len + 1); if (to_end) { strcpy (new_value, orig_value); strcpy (new_value + orig_value_len, add); } else { strcpy (new_value, add); strcpy (new_value + add_len, orig_value); } } else { new_value = xstrdup (add); } return new_value; } void lt_update_exe_path (const char *name, const char *value) { lt_debugprintf (__FILE__, __LINE__, "(lt_update_exe_path) modifying '%s' by prepending '%s'\n", nonnull (name), nonnull (value)); if (name && *name && value && *value) { char *new_value = lt_extend_str (getenv (name), value, 0); /* some systems can't cope with a ':'-terminated path #' */ size_t len = strlen (new_value); while ((len > 0) && IS_PATH_SEPARATOR (new_value[len-1])) { new_value[--len] = '\0'; } lt_setenv (name, new_value); XFREE (new_value); } } void lt_update_lib_path (const char *name, const char *value) { lt_debugprintf (__FILE__, __LINE__, "(lt_update_lib_path) modifying '%s' by prepending '%s'\n", nonnull (name), nonnull (value)); if (name && *name && value && *value) { char *new_value = lt_extend_str (getenv (name), value, 0); lt_setenv (name, new_value); XFREE (new_value); } } EOF case $host_os in mingw* | windows*) cat <<"EOF" /* Prepares an argument vector before calling spawn(). Note that spawn() does not by itself call the command interpreter (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") : ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); GetVersionEx(&v); v.dwPlatformId == VER_PLATFORM_WIN32_NT; }) ? "cmd.exe" : "command.com"). Instead it simply concatenates the arguments, separated by ' ', and calls CreateProcess(). We must quote the arguments since Win32 CreateProcess() interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a special way: - Space and tab are interpreted as delimiters. They are not treated as delimiters if they are surrounded by double quotes: "...". - Unescaped double quotes are removed from the input. Their only effect is that within double quotes, space and tab are treated like normal characters. - Backslashes not followed by double quotes are not special. - But 2*n+1 backslashes followed by a double quote become n backslashes followed by a double quote (n >= 0): \" -> " \\\" -> \" \\\\\" -> \\" */ #define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" #define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" char ** prepare_spawn (char **argv) { size_t argc; char **new_argv; size_t i; /* Count number of arguments. */ for (argc = 0; argv[argc] != NULL; argc++) ; /* Allocate new argument vector. */ new_argv = XMALLOC (char *, argc + 1); /* Put quoted arguments into the new argument vector. */ for (i = 0; i < argc; i++) { const char *string = argv[i]; if (string[0] == '\0') new_argv[i] = xstrdup ("\"\""); else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL) { int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL); size_t length; unsigned int backslashes; const char *s; char *quoted_string; char *p; length = 0; backslashes = 0; if (quote_around) length++; for (s = string; *s != '\0'; s++) { char c = *s; if (c == '"') length += backslashes + 1; length++; if (c == '\\') backslashes++; else backslashes = 0; } if (quote_around) length += backslashes + 1; quoted_string = XMALLOC (char, length + 1); p = quoted_string; backslashes = 0; if (quote_around) *p++ = '"'; for (s = string; *s != '\0'; s++) { char c = *s; if (c == '"') { unsigned int j; for (j = backslashes + 1; j > 0; j--) *p++ = '\\'; } *p++ = c; if (c == '\\') backslashes++; else backslashes = 0; } if (quote_around) { unsigned int j; for (j = backslashes; j > 0; j--) *p++ = '\\'; *p++ = '"'; } *p = '\0'; new_argv[i] = quoted_string; } else new_argv[i] = (char *) string; } new_argv[argc] = NULL; return new_argv; } EOF ;; esac cat <<"EOF" void lt_dump_script (FILE* f) { EOF func_emit_wrapper yes | $SED -n -e ' s/^\(.\{79\}\)\(..*\)/\1\ \2/ h s/\([\\"]\)/\\\1/g s/$/\\n/ s/\([^\n]*\).*/ fputs ("\1", f);/p g D' cat <<"EOF" } EOF } # end: func_emit_cwrapperexe_src # func_win32_import_lib_p ARG # True if ARG is an import lib, as indicated by $file_magic_cmd func_win32_import_lib_p () { $debug_cmd case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in *import*) : ;; *) false ;; esac } # func_suncc_cstd_abi # !!ONLY CALL THIS FOR SUN CC AFTER $compile_command IS FULLY EXPANDED!! # Several compiler flags select an ABI that is incompatible with the # Cstd library. Avoid specifying it if any are in CXXFLAGS. func_suncc_cstd_abi () { $debug_cmd case " $compile_command " in *" -compat=g "*|*\ -std=c++[0-9][0-9]\ *|*" -library=stdcxx4 "*|*" -library=stlport4 "*) suncc_use_cstd_abi=no ;; *) suncc_use_cstd_abi=yes ;; esac } # func_mode_link arg... func_mode_link () { $debug_cmd case $host in *-*-cygwin* | *-*-mingw* | *-*-windows* | *-*-pw32* | *-*-os2* | *-cegcc*) # It is impossible to link a dll without this setting, and # we shouldn't force the makefile maintainer to figure out # what system we are compiling for in order to pass an extra # flag for every libtool invocation. # allow_undefined=no # FIXME: Unfortunately, there are problems with the above when trying # to make a dll that has undefined symbols, in which case not # even a static library is built. For now, we need to specify # -no-undefined on the libtool link line when we can be certain # that all symbols are satisfied, otherwise we get a static library. allow_undefined=yes ;; *) allow_undefined=yes ;; esac libtool_args=$nonopt base_compile="$nonopt $@" compile_command=$nonopt finalize_command=$nonopt compile_rpath= compile_rpath_tail= finalize_rpath= compile_shlibpath= finalize_shlibpath= convenience= old_convenience= deplibs= old_deplibs= compiler_flags= linker_flags= dllsearchpath= lib_search_path=`pwd` inst_prefix_dir= new_inherited_linker_flags= avoid_version=no bindir= dlfiles= dlprefiles= dlself=no export_dynamic=no export_symbols= export_symbols_regex= generated= libobjs= ltlibs= module=no no_install=no objs= os2dllname= non_pic_objects= precious_files_regex= prefer_static_libs=no preload=false prev= prevarg= release= rpath= xrpath= perm_rpath= temp_rpath= temp_rpath_tail= thread_safe=no vinfo= vinfo_number=no weak_libs= rpath_arg= single_module=$wl-single_module func_infer_tag $base_compile # We need to know -static, to get the right output filenames. for arg do case $arg in -shared) test yes != "$build_libtool_libs" \ && func_fatal_configuration "cannot build a shared library" build_old_libs=no break ;; -all-static | -static | -static-libtool-libs) case $arg in -all-static) if test yes = "$build_libtool_libs" && test -z "$link_static_flag"; then func_warning "complete static linking is impossible in this configuration" fi if test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi prefer_static_libs=yes ;; -static) if test -z "$pic_flag" && test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi prefer_static_libs=built ;; -static-libtool-libs) if test -z "$pic_flag" && test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi prefer_static_libs=yes ;; esac build_libtool_libs=no build_old_libs=yes break ;; esac done # See if our shared archives depend on static archives. test -n "$old_archive_from_new_cmds" && build_old_libs=yes # Go through the arguments, transforming them on the way. while test "$#" -gt 0; do arg=$1 shift func_quote_arg pretty,unquoted "$arg" qarg=$func_quote_arg_unquoted_result func_append libtool_args " $func_quote_arg_result" # If the previous option needs an argument, assign it. if test -n "$prev"; then case $prev in output) func_append compile_command " @OUTPUT@" func_append finalize_command " @OUTPUT@" ;; esac case $prev in bindir) bindir=$arg prev= continue ;; dlfiles|dlprefiles) $preload || { # Add the symbol object into the linking commands. func_append compile_command " @SYMFILE@" func_append finalize_command " @SYMFILE@" preload=: } case $arg in *.la | *.lo) ;; # We handle these cases below. force) if test no = "$dlself"; then dlself=needless export_dynamic=yes fi prev= continue ;; self) if test dlprefiles = "$prev"; then dlself=yes elif test dlfiles = "$prev" && test yes != "$dlopen_self"; then dlself=yes else dlself=needless export_dynamic=yes fi prev= continue ;; *) if test dlfiles = "$prev"; then func_append dlfiles " $arg" else func_append dlprefiles " $arg" fi prev= continue ;; esac ;; expsyms) export_symbols=$arg test -f "$arg" \ || func_fatal_error "symbol file '$arg' does not exist" prev= continue ;; expsyms_regex) export_symbols_regex=$arg prev= continue ;; framework) case $host in *-*-darwin*) case "$deplibs " in *" $qarg.ltframework "*) ;; *) func_append deplibs " $qarg.ltframework" # this is fixed later ;; esac ;; esac prev= continue ;; inst_prefix) inst_prefix_dir=$arg prev= continue ;; mllvm) # Clang does not use LLVM to link, so we can simply discard any # '-mllvm $arg' options when doing the link step. prev= continue ;; objectlist) if test -f "$arg"; then save_arg=$arg moreargs= for fil in `cat "$save_arg"` do # func_append moreargs " $fil" arg=$fil # A libtool-controlled object. # Check to see that this really is a libtool object. if func_lalib_unsafe_p "$arg"; then pic_object= non_pic_object= # Read the .lo file func_source "$arg" if test -z "$pic_object" || test -z "$non_pic_object" || test none = "$pic_object" && test none = "$non_pic_object"; then func_fatal_error "cannot find name of object for '$arg'" fi # Extract subdirectory from the argument. func_dirname "$arg" "/" "" xdir=$func_dirname_result if test none != "$pic_object"; then # Prepend the subdirectory the object is found in. pic_object=$xdir$pic_object if test dlfiles = "$prev"; then if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then func_append dlfiles " $pic_object" prev= continue else # If libtool objects are unsupported, then we need to preload. prev=dlprefiles fi fi # CHECK ME: I think I busted this. -Ossama if test dlprefiles = "$prev"; then # Preload the old-style object. func_append dlprefiles " $pic_object" prev= fi # A PIC object. func_append libobjs " $pic_object" arg=$pic_object fi # Non-PIC object. if test none != "$non_pic_object"; then # Prepend the subdirectory the object is found in. non_pic_object=$xdir$non_pic_object # A standard non-PIC object func_append non_pic_objects " $non_pic_object" if test -z "$pic_object" || test none = "$pic_object"; then arg=$non_pic_object fi else # If the PIC object exists, use it instead. # $xdir was prepended to $pic_object above. non_pic_object=$pic_object func_append non_pic_objects " $non_pic_object" fi else # Only an error if not doing a dry-run. if $opt_dry_run; then # Extract subdirectory from the argument. func_dirname "$arg" "/" "" xdir=$func_dirname_result func_lo2o "$arg" pic_object=$xdir$objdir/$func_lo2o_result non_pic_object=$xdir$func_lo2o_result func_append libobjs " $pic_object" func_append non_pic_objects " $non_pic_object" else func_fatal_error "'$arg' is not a valid libtool object" fi fi done else func_fatal_error "link input file '$arg' does not exist" fi arg=$save_arg prev= continue ;; os2dllname) os2dllname=$arg prev= continue ;; precious_regex) precious_files_regex=$arg prev= continue ;; release) release=-$arg prev= continue ;; rpath | xrpath) # We need an absolute path. case $arg in [\\/]* | [A-Za-z]:[\\/]*) ;; *) func_fatal_error "argument to -rpath is not absolute: $arg" ;; esac if test rpath = "$prev"; then case "$rpath " in *" $arg "*) ;; *) func_append rpath " $arg" ;; esac else case "$xrpath " in *" $arg "*) ;; *) func_append xrpath " $arg" ;; esac fi prev= continue ;; shrext) shrext_cmds=$arg prev= continue ;; weak) func_append weak_libs " $arg" prev= continue ;; xassembler) func_append compiler_flags " -Xassembler $qarg" prev= func_append compile_command " -Xassembler $qarg" func_append finalize_command " -Xassembler $qarg" continue ;; xcclinker) func_append linker_flags " $qarg" func_append compiler_flags " $qarg" prev= func_append compile_command " $qarg" func_append finalize_command " $qarg" continue ;; xcompiler) func_append compiler_flags " $qarg" prev= func_append compile_command " $qarg" func_append finalize_command " $qarg" continue ;; xlinker) func_append linker_flags " $qarg" func_append compiler_flags " $wl$qarg" prev= func_append compile_command " $wl$qarg" func_append finalize_command " $wl$qarg" continue ;; *) eval "$prev=\"\$arg\"" prev= continue ;; esac fi # test -n "$prev" prevarg=$arg case $arg in -all-static) if test -n "$link_static_flag"; then # See comment for -static flag below, for more details. func_append compile_command " $link_static_flag" func_append finalize_command " $link_static_flag" fi continue ;; -allow-undefined) # FIXME: remove this flag sometime in the future. func_fatal_error "'-allow-undefined' must not be used because it is the default" ;; -avoid-version) avoid_version=yes continue ;; -bindir) prev=bindir continue ;; -dlopen) prev=dlfiles continue ;; -dlpreopen) prev=dlprefiles continue ;; -export-dynamic) export_dynamic=yes continue ;; -export-symbols | -export-symbols-regex) if test -n "$export_symbols" || test -n "$export_symbols_regex"; then func_fatal_error "more than one -exported-symbols argument is not allowed" fi if test X-export-symbols = "X$arg"; then prev=expsyms else prev=expsyms_regex fi continue ;; -framework) prev=framework continue ;; -inst-prefix-dir) prev=inst_prefix continue ;; # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* # so, if we see these flags be careful not to treat them like -L -L[A-Z][A-Z]*:*) case $with_gcc/$host in no/*-*-irix* | /*-*-irix*) func_append compile_command " $arg" func_append finalize_command " $arg" ;; esac continue ;; -L*) func_stripname "-L" '' "$arg" if test -z "$func_stripname_result"; then if test "$#" -gt 0; then func_fatal_error "require no space between '-L' and '$1'" else func_fatal_error "need path for '-L' option" fi fi func_resolve_sysroot "$func_stripname_result" dir=$func_resolve_sysroot_result # We need an absolute path. case $dir in [\\/]* | [A-Za-z]:[\\/]*) ;; *) absdir=`cd "$dir" && pwd` test -z "$absdir" && \ func_fatal_error "cannot determine absolute directory name of '$dir'" dir=$absdir ;; esac case "$deplibs " in *" -L$dir "* | *" $arg "*) # Will only happen for absolute or sysroot arguments ;; *) # Preserve sysroot, but never include relative directories case $dir in [\\/]* | [A-Za-z]:[\\/]* | =*) func_append deplibs " $arg" ;; *) func_append deplibs " -L$dir" ;; esac func_append lib_search_path " $dir" ;; esac case $host in *-*-cygwin* | *-*-mingw* | *-*-windows* | *-*-pw32* | *-*-os2* | *-cegcc*) testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'` case :$dllsearchpath: in *":$dir:"*) ;; ::) dllsearchpath=$dir;; *) func_append dllsearchpath ":$dir";; esac case :$dllsearchpath: in *":$testbindir:"*) ;; ::) dllsearchpath=$testbindir;; *) func_append dllsearchpath ":$testbindir";; esac ;; esac continue ;; -l*) if test X-lc = "X$arg" || test X-lm = "X$arg"; then case $host in *-*-cygwin* | *-*-mingw* | *-*-windows* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) # These systems don't actually have a C or math library (as such) continue ;; *-*-os2*) # These systems don't actually have a C library (as such) test X-lc = "X$arg" && continue ;; *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-midnightbsd*) # Do not include libc due to us having libc/libc_r. test X-lc = "X$arg" && continue ;; *-*-rhapsody* | *-*-darwin1.[012]) # Rhapsody C and math libraries are in the System framework func_append deplibs " System.ltframework" continue ;; *-*-sco3.2v5* | *-*-sco5v6*) # Causes problems with __ctype test X-lc = "X$arg" && continue ;; *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) # Compiler inserts libc in the correct place for threads to work test X-lc = "X$arg" && continue ;; esac elif test X-lc_r = "X$arg"; then case $host in *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-midnightbsd*) # Do not include libc_r directly, use -pthread flag. continue ;; esac fi func_append deplibs " $arg" continue ;; -mllvm) prev=mllvm continue ;; -module) module=yes continue ;; # Tru64 UNIX uses -model [arg] to determine the layout of C++ # classes, name mangling, and exception handling. # Darwin uses the -arch flag to determine output architecture. # -q