ibus-pinyin-1.5.0/0000775000175000017500000000000012064356726011001 500000000000000ibus-pinyin-1.5.0/compile0000755000175000017500000001615212063702757012300 00000000000000#! /bin/sh # Wrapper for compilers which do not understand '-c -o'. scriptversion=2012-03-05.13; # UTC # Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009, 2010, 2012 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*) 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/*) 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 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 | *.[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 . EOF exit $? ;; -v | --v*) echo "compile $scriptversion" exit $? ;; cl | *[/\\]cl | cl.exe | *[/\\]cl.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 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: ibus-pinyin-1.5.0/py-compile0000755000175000017500000001040012063702757012714 00000000000000#!/bin/sh # py-compile - Compile a Python program scriptversion=2011-06-08.12; # UTC # Copyright (C) 2000, 2001, 2003, 2004, 2005, 2008, 2009, 2011 Free # Software Foundation, Inc. # 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 # . if [ -z "$PYTHON" ]; then PYTHON=python fi me=py-compile usage_error () { echo "$me: $*" >&2 echo "Try \`$me --help' for more information." >&2 exit 1 } basedir= destdir= while test $# -ne 0; do case "$1" in --basedir) if test $# -lt 2; then usage_error "option '--basedir' requires an argument" else basedir=$2 fi shift ;; --destdir) if test $# -lt 2; then usage_error "option '--destdir' requires an argument" else destdir=$2 fi shift ;; -h|--help) cat <<\EOF Usage: py-compile [--help] [--version] [--basedir DIR] [--destdir DIR] FILES..." Byte compile some python scripts FILES. Use --destdir to specify any leading directory path to the FILES that you don't want to include in the byte compiled file. Specify --basedir for any additional path information you do want to be shown in the byte compiled file. Example: py-compile --destdir /tmp/pkg-root --basedir /usr/share/test test.py test2.py Report bugs to . EOF exit $? ;; -v|--version) echo "$me $scriptversion" exit $? ;; --) shift break ;; -*) usage_error "unrecognized option '$1'" ;; *) break ;; esac shift done files=$* if test -z "$files"; then usage_error "no files given" fi # if basedir was given, then it should be prepended to filenames before # byte compilation. if [ -z "$basedir" ]; then pathtrans="path = file" else pathtrans="path = os.path.join('$basedir', file)" fi # if destdir was given, then it needs to be prepended to the filename to # byte compile but not go into the compiled file. if [ -z "$destdir" ]; then filetrans="filepath = path" else filetrans="filepath = os.path.normpath('$destdir' + os.sep + path)" fi $PYTHON -c " import sys, os, py_compile files = '''$files''' sys.stdout.write('Byte-compiling python modules...\n') for file in files.split(): $pathtrans $filetrans if not os.path.exists(filepath) or not (len(filepath) >= 3 and filepath[-3:] == '.py'): continue sys.stdout.write(file) sys.stdout.flush() py_compile.compile(filepath, filepath + 'c', path) sys.stdout.write('\n')" || exit $? # this will fail for python < 1.5, but that doesn't matter ... $PYTHON -O -c " import sys, os, py_compile files = '''$files''' sys.stdout.write('Byte-compiling python modules (optimized versions) ...\n') for file in files.split(): $pathtrans $filetrans if not os.path.exists(filepath) or not (len(filepath) >= 3 and filepath[-3:] == '.py'): continue sys.stdout.write(file) sys.stdout.flush() py_compile.compile(filepath, filepath + 'o', path) sys.stdout.write('\n')" 2>/dev/null || : # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: ibus-pinyin-1.5.0/aclocal.m40000664000175000017500000020670212063705662012564 00000000000000# generated automatically by aclocal 1.11.6 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005, 2006, 2007, 2008, 2009, 2010, 2011 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_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],, [m4_warning([this file was generated for autoconf 2.68. 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'.])]) # Copyright (C) 1995-2002 Free Software Foundation, Inc. # Copyright (C) 2001-2003,2004 Red Hat, Inc. # # This file is free software, distributed under the terms of the GNU # General Public License. As a special exception to the GNU General # Public License, this file may be distributed as part of a program # that contains a configuration script generated by Autoconf, under # the same distribution terms as the rest of that program. # # This file can be copied and used freely without restrictions. It can # be used in projects which are not available under the GNU Public License # but which still want to provide support for the GNU gettext functionality. # # Macro to add for using GNU gettext. # Ulrich Drepper , 1995, 1996 # # Modified to never use included libintl. # Owen Taylor , 12/15/1998 # # Major rework to remove unused code # Owen Taylor , 12/11/2002 # # Added better handling of ALL_LINGUAS from GNU gettext version # written by Bruno Haible, Owen Taylor 5/30/3002 # # Modified to require ngettext # Matthias Clasen 08/06/2004 # # We need this here as well, since someone might use autoconf-2.5x # to configure GLib then an older version to configure a package # using AM_GLIB_GNU_GETTEXT AC_PREREQ(2.53) dnl dnl We go to great lengths to make sure that aclocal won't dnl try to pull in the installed version of these macros dnl when running aclocal in the glib directory. dnl m4_copy([AC_DEFUN],[glib_DEFUN]) m4_copy([AC_REQUIRE],[glib_REQUIRE]) dnl dnl At the end, if we're not within glib, we'll define the public dnl definitions in terms of our private definitions. dnl # GLIB_LC_MESSAGES #-------------------- glib_DEFUN([GLIB_LC_MESSAGES], [AC_CHECK_HEADERS([locale.h]) if test $ac_cv_header_locale_h = yes; then AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, [AC_TRY_LINK([#include ], [return LC_MESSAGES], am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) if test $am_cv_val_LC_MESSAGES = yes; then AC_DEFINE(HAVE_LC_MESSAGES, 1, [Define if your file defines LC_MESSAGES.]) fi fi]) # GLIB_PATH_PROG_WITH_TEST #---------------------------- dnl GLIB_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) glib_DEFUN([GLIB_PATH_PROG_WITH_TEST], [# 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. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in ifelse([$5], , $PATH, [$5]); do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if [$3]; then ac_cv_path_$1="$ac_dir/$ac_word" break fi fi 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 ]) # GLIB_WITH_NLS #----------------- glib_DEFUN([GLIB_WITH_NLS], dnl NLS is obligatory [USE_NLS=yes AC_SUBST(USE_NLS) gt_cv_have_gettext=no CATOBJEXT=NONE XGETTEXT=: INTLLIBS= AC_CHECK_HEADER(libintl.h, [gt_cv_func_dgettext_libintl="no" libintl_extra_libs="" # # First check in libc # AC_CACHE_CHECK([for ngettext in libc], gt_cv_func_ngettext_libc, [AC_TRY_LINK([ #include ], [return !ngettext ("","", 1)], gt_cv_func_ngettext_libc=yes, gt_cv_func_ngettext_libc=no) ]) if test "$gt_cv_func_ngettext_libc" = "yes" ; then AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc, [AC_TRY_LINK([ #include ], [return !dgettext ("","")], gt_cv_func_dgettext_libc=yes, gt_cv_func_dgettext_libc=no) ]) fi if test "$gt_cv_func_ngettext_libc" = "yes" ; then AC_CHECK_FUNCS(bind_textdomain_codeset) fi # # If we don't have everything we want, check in libintl # if test "$gt_cv_func_dgettext_libc" != "yes" \ || test "$gt_cv_func_ngettext_libc" != "yes" \ || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then AC_CHECK_LIB(intl, bindtextdomain, [AC_CHECK_LIB(intl, ngettext, [AC_CHECK_LIB(intl, dgettext, gt_cv_func_dgettext_libintl=yes)])]) if test "$gt_cv_func_dgettext_libintl" != "yes" ; then AC_MSG_CHECKING([if -liconv is needed to use gettext]) AC_MSG_RESULT([]) AC_CHECK_LIB(intl, ngettext, [AC_CHECK_LIB(intl, dcgettext, [gt_cv_func_dgettext_libintl=yes libintl_extra_libs=-liconv], :,-liconv)], :,-liconv) fi # # If we found libintl, then check in it for bind_textdomain_codeset(); # we'll prefer libc if neither have bind_textdomain_codeset(), # and both have dgettext and ngettext # if test "$gt_cv_func_dgettext_libintl" = "yes" ; then glib_save_LIBS="$LIBS" LIBS="$LIBS -lintl $libintl_extra_libs" unset ac_cv_func_bind_textdomain_codeset AC_CHECK_FUNCS(bind_textdomain_codeset) LIBS="$glib_save_LIBS" if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then gt_cv_func_dgettext_libc=no else if test "$gt_cv_func_dgettext_libc" = "yes" \ && test "$gt_cv_func_ngettext_libc" = "yes"; then gt_cv_func_dgettext_libintl=no fi fi fi fi if test "$gt_cv_func_dgettext_libc" = "yes" \ || test "$gt_cv_func_dgettext_libintl" = "yes"; then gt_cv_have_gettext=yes fi if test "$gt_cv_func_dgettext_libintl" = "yes"; then INTLLIBS="-lintl $libintl_extra_libs" fi if test "$gt_cv_have_gettext" = "yes"; then AC_DEFINE(HAVE_GETTEXT,1, [Define if the GNU gettext() function is already present or preinstalled.]) GLIB_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl if test "$MSGFMT" != "no"; then glib_save_LIBS="$LIBS" LIBS="$LIBS $INTLLIBS" AC_CHECK_FUNCS(dcgettext) MSGFMT_OPTS= AC_MSG_CHECKING([if msgfmt accepts -c]) GLIB_RUN_PROG([$MSGFMT -c -o /dev/null],[ msgid "" msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Project-Id-Version: test 1.0\n" "PO-Revision-Date: 2007-02-15 12:01+0100\n" "Last-Translator: test \n" "Language-Team: C \n" "MIME-Version: 1.0\n" "Content-Transfer-Encoding: 8bit\n" ], [MSGFMT_OPTS=-c; AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])]) AC_SUBST(MSGFMT_OPTS) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) GLIB_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) AC_TRY_LINK(, [extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr], [CATOBJEXT=.gmo DATADIRNAME=share], [case $host in *-*-solaris*) dnl On Solaris, if bind_textdomain_codeset is in libc, dnl GNU format message catalog is always supported, dnl since both are added to the libc all together. dnl Hence, we'd like to go with DATADIRNAME=share and dnl and CATOBJEXT=.gmo in this case. AC_CHECK_FUNC(bind_textdomain_codeset, [CATOBJEXT=.gmo DATADIRNAME=share], [CATOBJEXT=.mo DATADIRNAME=lib]) ;; *-*-openbsd*) CATOBJEXT=.mo DATADIRNAME=share ;; *) CATOBJEXT=.mo DATADIRNAME=lib ;; esac]) LIBS="$glib_save_LIBS" INSTOBJEXT=.mo else gt_cv_have_gettext=no fi fi ]) if test "$gt_cv_have_gettext" = "yes" ; then AC_DEFINE(ENABLE_NLS, 1, [always defined to indicate that i18n is enabled]) fi dnl Test whether we really found GNU xgettext. if test "$XGETTEXT" != ":"; then dnl If it is not GNU xgettext we define it as : so that the dnl Makefiles still can work. if $XGETTEXT --omit-header /dev/null 2> /dev/null; then : ; else AC_MSG_RESULT( [found xgettext program is not GNU xgettext; ignore it]) XGETTEXT=":" fi fi # We need to process the po/ directory. POSUB=po AC_OUTPUT_COMMANDS( [case "$CONFIG_FILES" in *po/Makefile.in*) sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile esac]) dnl These rules are solely for the distribution goal. While doing this dnl we only have to keep exactly one list of the available catalogs dnl in configure.ac. for lang in $ALL_LINGUAS; do GMOFILES="$GMOFILES $lang.gmo" POFILES="$POFILES $lang.po" done dnl Make all variables we use known to autoconf. AC_SUBST(CATALOGS) AC_SUBST(CATOBJEXT) AC_SUBST(DATADIRNAME) AC_SUBST(GMOFILES) AC_SUBST(INSTOBJEXT) AC_SUBST(INTLLIBS) AC_SUBST(PO_IN_DATADIR_TRUE) AC_SUBST(PO_IN_DATADIR_FALSE) AC_SUBST(POFILES) AC_SUBST(POSUB) ]) # AM_GLIB_GNU_GETTEXT # ------------------- # Do checks necessary for use of gettext. If a suitable implementation # of gettext is found in either in libintl or in the C library, # it will set INTLLIBS to the libraries needed for use of gettext # and AC_DEFINE() HAVE_GETTEXT and ENABLE_NLS. (The shell variable # gt_cv_have_gettext will be set to "yes".) It will also call AC_SUBST() # on various variables needed by the Makefile.in.in installed by # glib-gettextize. dnl glib_DEFUN([GLIB_GNU_GETTEXT], [AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_HEADER_STDC])dnl GLIB_LC_MESSAGES GLIB_WITH_NLS if test "$gt_cv_have_gettext" = "yes"; then if test "x$ALL_LINGUAS" = "x"; then LINGUAS= else AC_MSG_CHECKING(for catalogs to be installed) NEW_LINGUAS= for presentlang in $ALL_LINGUAS; do useit=no if test "%UNSET%" != "${LINGUAS-%UNSET%}"; 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 NEW_LINGUAS="$NEW_LINGUAS $presentlang" fi done LINGUAS=$NEW_LINGUAS AC_MSG_RESULT($LINGUAS) fi dnl Construct list of names of catalog files to be constructed. if test -n "$LINGUAS"; then for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done fi fi dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly dnl find the mkinstalldirs script in another subdir but ($top_srcdir). dnl Try to locate is. MKINSTALLDIRS= if test -n "$ac_aux_dir"; then MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" fi if test -z "$MKINSTALLDIRS"; then MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" fi AC_SUBST(MKINSTALLDIRS) dnl Generate list of files to be processed by xgettext which will dnl be included in po/Makefile. test -d po || mkdir po if test "x$srcdir" != "x."; then if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then posrcprefix="$srcdir/" else posrcprefix="../$srcdir/" fi else posrcprefix="../" fi rm -f po/POTFILES sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ < $srcdir/po/POTFILES.in > po/POTFILES ]) # AM_GLIB_DEFINE_LOCALEDIR(VARIABLE) # ------------------------------- # Define VARIABLE to the location where catalog files will # be installed by po/Makefile. glib_DEFUN([GLIB_DEFINE_LOCALEDIR], [glib_REQUIRE([GLIB_GNU_GETTEXT])dnl glib_save_prefix="$prefix" glib_save_exec_prefix="$exec_prefix" glib_save_datarootdir="$datarootdir" test "x$prefix" = xNONE && prefix=$ac_default_prefix test "x$exec_prefix" = xNONE && exec_prefix=$prefix datarootdir=`eval echo "${datarootdir}"` if test "x$CATOBJEXT" = "x.mo" ; then localedir=`eval echo "${libdir}/locale"` else localedir=`eval echo "${datadir}/locale"` fi prefix="$glib_save_prefix" exec_prefix="$glib_save_exec_prefix" datarootdir="$glib_save_datarootdir" AC_DEFINE_UNQUOTED($1, "$localedir", [Define the location where the catalogs will be installed]) ]) dnl dnl Now the definitions that aclocal will find dnl ifdef(glib_configure_ac,[],[ AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)]) AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)]) ])dnl # GLIB_RUN_PROG(PROGRAM, TEST-FILE, [ACTION-IF-PASS], [ACTION-IF-FAIL]) # # Create a temporary file with TEST-FILE as its contents and pass the # file name to PROGRAM. Perform ACTION-IF-PASS if PROGRAM exits with # 0 and perform ACTION-IF-FAIL for any other exit status. AC_DEFUN([GLIB_RUN_PROG], [cat >conftest.foo <<_ACEOF $2 _ACEOF if AC_RUN_LOG([$1 conftest.foo]); then m4_ifval([$3], [$3], [:]) m4_ifvaln([$4], [else $4])dnl echo "$as_me: failed input was:" >&AS_MESSAGE_LOG_FD sed 's/^/| /' conftest.foo >&AS_MESSAGE_LOG_FD fi]) # nls.m4 serial 5 (gettext-0.18) dnl Copyright (C) 1995-2003, 2005-2006, 2008-2010 Free Software Foundation, dnl 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 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 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]) ]) # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- # serial 1 (pkg-config-0.24) # # Copyright © 2004 Scott James Remnant . # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # PKG_PROG_PKG_CONFIG([MIN-VERSION]) # ---------------------------------- AC_DEFUN([PKG_PROG_PKG_CONFIG], [m4_pattern_forbid([^_?PKG_[A-Z_]+$]) m4_pattern_allow([^PKG_CONFIG(_PATH)?$]) 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[]dnl ])# PKG_PROG_PKG_CONFIG # PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # # Check to see whether a particular set of modules exists. Similar # to PKG_CHECK_MODULES(), but does not set variables or print errors. # # Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) # only at the first occurence in configure.ac, so if the first place # it's called might be skipped (such as if it is within an "if", you # 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]) # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) # --------------------------------------------- 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`], [pkg_failed=yes]) else pkg_failed=untried fi[]dnl ])# _PKG_CONFIG # _PKG_SHORT_ERRORS_SUPPORTED # ----------------------------- 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 ])# _PKG_SHORT_ERRORS_SUPPORTED # PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], # [ACTION-IF-NOT-FOUND]) # # # Note that if there is a possibility the first call to # PKG_CHECK_MODULES might not happen, you should be sure to include an # 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 $1]) _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 "$2" 2>&1` else $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors "$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]) ]) 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 .]) ]) else $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS $1[]_LIBS=$pkg_cv_[]$1[]_LIBS AC_MSG_RESULT([yes]) $3 fi[]dnl ])# PKG_CHECK_MODULES # Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008, 2011 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. # serial 1 # 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.11' 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.11.6], [], [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.11.6])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, 2003, 2005, 2011 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. # serial 1 # 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], [dnl Rely on autoconf to set up CDPATH properly. AC_PREREQ([2.50])dnl # expand $ac_aux_dir to an absolute path am_aux_dir=`cd $ac_aux_dir && pwd` ]) # AM_CONDITIONAL -*- Autoconf -*- # Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008 # 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. # serial 9 # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- # Define a conditional. AC_DEFUN([AM_CONDITIONAL], [AC_PREREQ(2.52)dnl ifelse([$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, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009, # 2010, 2011 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. # serial 12 # 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", "GCJ", or "OBJC". # 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 ifelse([$1], CC, [depcc="$CC" am_compiler_list=], [$1], CXX, [depcc="$CXX" am_compiler_list=], [$1], OBJC, [depcc="$OBJC" 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 8's {/usr,}/bin/sh. touch 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 thusly: # 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, [ --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors]) 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, 2000, 2001, 2002, 2003, 2004, 2005, 2008 # 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. #serial 5 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], [{ # Autoconf 2.62 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. case $CONFIG_FILES in *\'*) eval set x "$CONFIG_FILES" ;; *) set x $CONFIG_FILES ;; esac shift for mf do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named `Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # Grep'ing the whole file is not good either: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then dirpart=`AS_DIRNAME("$mf")` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`AS_DIRNAME(["$file"])` AS_MKDIR_P([$dirpart/$fdir]) # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done } ])# _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. FIXME. This creates each `.P' file that we will # 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" ac_aux_dir="$ac_aux_dir"]) ]) # Do all the work for Automake. -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005, 2006, 2008, 2009 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. # serial 16 # 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. # 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.62])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], [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_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,, [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([AM_PROG_MKDIR_P])dnl # We need awk for the "check" target. 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)], [define([AC_PROG_CC], defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl AC_PROVIDE_IFELSE([AC_PROG_CXX], [_AM_DEPENDENCIES(CXX)], [define([AC_PROG_CXX], defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl AC_PROVIDE_IFELSE([AC_PROG_OBJC], [_AM_DEPENDENCIES(OBJC)], [define([AC_PROG_OBJC], defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl ]) _AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl dnl The `parallel-tests' driver may need to know about EXEEXT, so add the dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro dnl 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 ]) 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, 2003, 2005, 2008, 2011 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. # serial 1 # 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}" != 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, 2005 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. # serial 2 # 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, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008, # 2011 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. # serial 5 # 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], [ --][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 ] ) AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE]) # Check to see how 'make' treats includes. -*- Autoconf -*- # Copyright (C) 2001, 2002, 2003, 2005, 2009 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. # serial 4 # AM_MAKE_INCLUDE() # ----------------- # Check to see how make treats includes. AC_DEFUN([AM_MAKE_INCLUDE], [am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. AC_MSG_CHECKING([for style of include used by $am_make]) am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # Ignore all kinds of additional output from `make'. case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=include am__quote= _am_result=GNU ;; esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=.include am__quote="\"" _am_result=BSD ;; esac fi AC_SUBST([am__include]) AC_SUBST([am__quote]) AC_MSG_RESULT([$_am_result]) rm -f confinc confmf ]) # Copyright (C) 1999, 2000, 2001, 2003, 2004, 2005, 2008 # 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. # serial 6 # AM_PROG_CC_C_O # -------------- # Like AC_PROG_CC_C_O, but changed for automake. AC_DEFUN([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC_C_O])dnl AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl AC_REQUIRE_AUX_FILE([compile])dnl # FIXME: we rely on the cache variable name because # there is no other way. set dummy $CC am_cc=`echo $[2] | sed ['s/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/']` eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o if test "$am_t" != 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 dnl Make sure AC_PROG_CC is never called again, or it will override our dnl setting of CC. m4_define([AC_PROG_CC], [m4_fatal([AC_PROG_CC cannot be called after AM_PROG_CC_C_O])]) ]) # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- # Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008 # 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. # serial 6 # 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 supports --run. # If it does, 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 case $am_aux_dir in *\ * | *\ *) MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; *) MISSING="\${SHELL} $am_aux_dir/missing" ;; esac fi # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= AC_MSG_WARN([`missing' script is too old or missing]) fi ]) # Copyright (C) 2003, 2004, 2005, 2006, 2011 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. # serial 1 # AM_PROG_MKDIR_P # --------------- # Check for `mkdir -p'. AC_DEFUN([AM_PROG_MKDIR_P], [AC_PREREQ([2.60])dnl AC_REQUIRE([AC_PROG_MKDIR_P])dnl dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P, dnl while keeping a definition of mkdir_p for backward compatibility. dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile. dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of dnl Makefile.ins that do not define MKDIR_P, so we do our own dnl adjustment using top_builddir (which is defined more often than dnl MKDIR_P). AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl case $mkdir_p in [[\\/$]]* | ?:[[\\/]]*) ;; */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; esac ]) # Helper functions for option handling. -*- Autoconf -*- # Copyright (C) 2001, 2002, 2003, 2005, 2008, 2010 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. # serial 5 # _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, 2000, 2001, 2002, 2003, 2004, 2005, 2008, 2009, # 2011 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. # serial 2 # 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 python2 python3 python3.2 python3.1 python3.0 python2.7 dnl python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 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 >= $1]) AM_PYTHON_CHECK_VERSION([$PYTHON], [$1], [AC_MSG_RESULT(yes)], [AC_MSG_ERROR(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. Getting [:3] seems to be dnl the best way to do this; it's what "site.py" does in the standard dnl library. AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version], [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`]) AC_SUBST([PYTHON_VERSION], [$am_cv_python_version]) dnl Use the values of $prefix and $exec_prefix for the corresponding dnl values of PYTHON_PREFIX and PYTHON_EXEC_PREFIX. These are made dnl distinct variables so they can be overridden if need be. However, dnl general consensus is that you shouldn't need this ability. AC_SUBST([PYTHON_PREFIX], ['${prefix}']) AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}']) dnl At times (like when building shared libraries) you may want dnl to know which OS platform Python thinks this is. 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 Set up 4 directories: dnl pythondir -- where to install python scripts. This is the dnl site-packages directory, not the python standard library dnl directory like in previous automake betas. This behavior dnl is more consistent with lispdir.m4 for example. dnl Query distutils for this directory. AC_CACHE_CHECK([for $am_display_PYTHON script directory], [am_cv_python_pythondir], [if test "x$prefix" = xNONE then am_py_prefix=$ac_default_prefix else am_py_prefix=$prefix fi am_cv_python_pythondir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(0,0,prefix='$am_py_prefix'))" 2>/dev/null` 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 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. AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE]) dnl pyexecdir -- directory for installing python extension modules dnl (shared libraries) dnl Query distutils for this directory. AC_CACHE_CHECK([for $am_display_PYTHON extension module directory], [am_cv_python_pyexecdir], [if test "x$exec_prefix" = xNONE then am_py_exec_prefix=$am_py_prefix else am_py_exec_prefix=$exec_prefix fi am_cv_python_pyexecdir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(1,0,prefix='$am_py_exec_prefix'))" 2>/dev/null` 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 pkgpyexecdir -- $(pyexecdir)/$(PACKAGE) 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) 2001, 2003, 2005, 2011 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. # serial 1 # 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, 1997, 2000, 2001, 2003, 2005, 2008 # 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. # serial 5 # AM_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], [AC_MSG_CHECKING([whether build environment is sane]) # Just in case sleep 1 echo timestamp > conftest.file # 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). 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 rm -f conftest.file if test "$[*]" != "X $srcdir/configure conftest.file" \ && test "$[*]" != "X conftest.file $srcdir/configure"; then # 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". AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken alias in your environment]) fi test "$[2]" = conftest.file ) then # Ok. : else AC_MSG_ERROR([newly created file is older than distributed files! Check your system clock]) fi AC_MSG_RESULT(yes)]) # Copyright (C) 2009, 2011 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. # serial 2 # AM_SILENT_RULES([DEFAULT]) # -------------------------- # Enable less verbose build rules; with the default set to DEFAULT # (`yes' being less verbose, `no' or empty being verbose). AC_DEFUN([AM_SILENT_RULES], [AC_ARG_ENABLE([silent-rules], [ --enable-silent-rules less verbose build output (undo: `make V=1') --disable-silent-rules verbose build output (undo: `make V=0')]) case $enable_silent_rules in yes) AM_DEFAULT_VERBOSITY=0;; no) AM_DEFAULT_VERBOSITY=1;; *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; esac 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]) 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 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 ]) # Copyright (C) 2001, 2003, 2005, 2011 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. # serial 1 # 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, 2008, 2010 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. # serial 3 # _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, 2005, 2012 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. # serial 2 # _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}']) m4_if([$1], [v7], [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], [m4_case([$1], [ustar],, [pax],, [m4_fatal([Unknown tar format])]) AC_MSG_CHECKING([how to create a $1 tar archive]) # Loop over all known methods to create a tar archive until one works. _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' _am_tools=${am_cv_prog_tar_$1-$_am_tools} # Do not fold the above two line into one, because Tru64 sh and # Solaris sh will not grok spaces in the rhs of `-'. 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 m4_include([m4/as-version.m4]) m4_include([m4/boost.m4]) m4_include([m4/intltool.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]) ibus-pinyin-1.5.0/data/0000775000175000017500000000000012064356726011712 500000000000000ibus-pinyin-1.5.0/data/db/0000775000175000017500000000000012064356726012277 500000000000000ibus-pinyin-1.5.0/data/db/english/0000775000175000017500000000000012064356726013730 500000000000000ibus-pinyin-1.5.0/data/db/english/english.awk0000664000175000017500000000125611762161772016010 00000000000000#!/usr/bin/awk BEGIN { # Begin a transaction print "BEGIN TRANSACTION;" # Create english table print "CREATE TABLE IF NOT EXISTS \"english\" ( " \ "\"word\" TEXT NOT NULL PRIMARY KEY," \ "\"freq\" FLOAT NOT NULL DEFAULT(0)" \ ");"; # Create desc table print "CREATE TABLE IF NOT EXISTS desc (name TEXT PRIMARY KEY, value TEXT);"; print "INSERT OR IGNORE INTO desc VALUES ('version', '1.2.0');"; } # Insert data into english table { printf "INSERT INTO english (word, freq) VALUES (\"%s\", \"%f\");\n", $1, $2} #quit sqlite3 END { # Commit the transcation print "COMMIT;" }ibus-pinyin-1.5.0/data/db/english/Makefile.in0000664000175000017500000003772312063705663015726 00000000000000# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. VPATH = @srcdir@ am__make_dryrun = \ { \ am__dry=no; \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ *) \ for am__flg in $$MAKEFLAGS; do \ case $$am__flg in \ *=*|--*) ;; \ *n*) am__dry=yes; break;; \ esac; \ done;; \ esac; \ test $$am__dry = yes; \ } 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 = data/db/english DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/as-version.m4 \ $(top_srcdir)/m4/boost.m4 $(top_srcdir)/m4/intltool.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = 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_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ 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__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 -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(english_dbdir)" DATA = $(english_db_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BOOST_CPPFLAGS = @BOOST_CPPFLAGS@ BOOST_ROOT = @BOOST_ROOT@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENV = @ENV@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ IBUS_CFLAGS = @IBUS_CFLAGS@ IBUS_LIBS = @IBUS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ LUA_CFLAGS = @LUA_CFLAGS@ LUA_LIBS = @LUA_LIBS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ 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@ PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@ PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@ PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@ PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@ PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PYTHON = @PYTHON@ PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ PYTHON_PLATFORM = @PYTHON_PLATFORM@ PYTHON_PREFIX = @PYTHON_PREFIX@ PYTHON_VERSION = @PYTHON_VERSION@ PYZY = @PYZY@ PYZY_CFLAGS = @PYZY_CFLAGS@ PYZY_LIBS = @PYZY_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SQLITE3 = @SQLITE3@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ 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@ 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@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ pkgpyexecdir = @pkgpyexecdir@ pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ 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@ WORDLIST = wordlist ENGLISH_AWK = english.awk ENGLISH_DB = english.db english_db_DATA = \ $(ENGLISH_DB) \ $(NULL) english_dbdir = $(pkgdatadir)/db EXTRA_DIST = \ $(WORDLIST) \ $(ENGLISH_AWK) \ $(NULL) CLEANFILES = \ $(ENGLISH_DB) \ $(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 data/db/english/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu data/db/english/Makefile .PRECIOUS: 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__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ 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 install-english_dbDATA: $(english_db_DATA) @$(NORMAL_INSTALL) @list='$(english_db_DATA)'; test -n "$(english_dbdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(english_dbdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(english_dbdir)" || 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)$(english_dbdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(english_dbdir)" || exit $$?; \ done uninstall-english_dbDATA: @$(NORMAL_UNINSTALL) @list='$(english_db_DATA)'; test -n "$(english_dbdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(english_dbdir)'; $(am__uninstall_files_from_dir) tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(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 $(DATA) installdirs: for dir in "$(DESTDIR)$(english_dbdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done 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: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || 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-english_dbDATA 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: uninstall-english_dbDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic clean-libtool \ 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-english_dbDATA 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 uninstall uninstall-am uninstall-english_dbDATA $(ENGLISH_DB): $(WORDLIST) $(ENGLISH_AWK) $(AM_V_GEN) \ $(RM) $@; \ $(AWK) -f $(srcdir)/$(ENGLISH_AWK) $(srcdir)/$(WORDLIST) | @SQLITE3@ $@ || \ ( $(RM) $@ ; exit 1 ) # 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: ibus-pinyin-1.5.0/data/db/english/wordlist0000664000175000017500000124271011762161772015450 00000000000000the 6.510891 of 3.095330 and 2.822903 to 2.693976 a 2.263141 in 1.981590 that 1.173595 it 1.146425 is 1.051000 was 0.972200 i 0.952572 for 0.896176 on 0.761993 you 0.731900 he 0.716942 be 0.699475 with 0.686082 as 0.544812 by 0.539856 at 0.503134 have 0.498414 are 0.495529 this 0.487417 not 0.486930 but 0.479875 had 0.468643 his 0.456230 they 0.456099 from 0.435118 she 0.400132 which 0.391452 or 0.390211 we 0.377518 an 0.362002 there 0.345085 her 0.344082 were 0.339680 one 0.306611 do 0.295348 been 0.282748 all 0.276145 their 0.274537 has 0.272984 would 0.268518 will 0.267853 what 0.262502 if 0.249481 can 0.248655 when 0.225465 so 0.223230 no 0.220898 said 0.220470 who 0.217411 more 0.212400 about 0.207403 up 0.194772 them 0.182468 some 0.180312 could 0.177180 him 0.173627 into 0.172001 its 0.171618 then 0.169217 two 0.164262 out 0.163459 time 0.163070 like 0.161876 only 0.160886 my 0.160592 did 0.150914 other 0.149558 me 0.146284 your 0.145556 now 0.145005 over 0.139180 just 0.136312 may 0.135220 these 0.131991 new 0.131741 also 0.131402 people 0.130638 any 0.130586 know 0.129708 very 0.129511 see 0.124971 first 0.124894 well 0.123587 after 0.123252 should 0.117042 than 0.114526 where 0.114289 back 0.107668 how 0.106813 get 0.104698 most 0.103912 way 0.101304 down 0.101035 our 0.099964 made 0.099312 got 0.098063 much 0.096951 think 0.096648 work 0.096122 between 0.095396 go 0.095268 years 0.094933 er 0.094779 many 0.094339 being 0.093716 those 0.093500 before 0.092882 right 0.092207 because 0.089631 through 0.088464 yeah 0.087734 good 0.085012 three 0.083977 make 0.083627 us 0.082279 such 0.079466 still 0.078674 year 0.077629 must 0.076359 last 0.075949 even 0.075839 take 0.075479 own 0.074855 too 0.073831 off 0.073827 here 0.073603 come 0.073153 both 0.072397 does 0.072329 say 0.072112 oh 0.072009 used 0.070465 going 0.069879 erm 0.066496 use 0.066217 government 0.065518 day 0.065505 man 0.065339 might 0.065036 same 0.064614 under 0.064217 yes 0.063776 however 0.063656 put 0.062748 world 0.062112 another 0.061225 want 0.060551 thought 0.059851 while 0.059598 life 0.059584 again 0.059166 against 0.059142 never 0.058817 need 0.058703 old 0.057460 look 0.057204 home 0.055196 something 0.055190 mr 0.055134 long 0.054166 house 0.053583 why 0.053532 each 0.053448 part 0.053101 since 0.052840 end 0.052243 number 0.051961 found 0.051476 place 0.051190 different 0.050898 went 0.050861 little 0.050612 really 0.050599 came 0.049633 left 0.049547 children 0.049041 local 0.048783 within 0.048689 always 0.048641 without 0.048590 four 0.048532 around 0.047650 great 0.047575 give 0.047472 set 0.047394 system 0.047005 small 0.046771 mean 0.046400 during 0.046310 although 0.045912 case 0.045542 next 0.045396 things 0.044646 find 0.044509 social 0.044475 given 0.044049 group 0.043714 second 0.043617 quite 0.043318 until 0.042913 five 0.042864 party 0.042410 point 0.042375 every 0.042232 company 0.042212 women 0.041999 says 0.041849 later 0.041557 important 0.041314 took 0.041203 state 0.041153 high 0.040959 men 0.040922 away 0.040769 information 0.040677 public 0.039989 help 0.039957 head 0.039884 national 0.039715 often 0.039607 seen 0.039588 school 0.039500 money 0.039317 told 0.039179 fact 0.038900 night 0.038436 further 0.038166 better 0.037848 british 0.037661 business 0.037624 less 0.037531 taken 0.037410 done 0.037324 hand 0.037197 having 0.037115 thing 0.037049 looked 0.037014 london 0.036994 area 0.036977 water 0.036908 perhaps 0.036868 face 0.036804 best 0.036726 mm 0.036606 form 0.036310 family 0.036288 general 0.036222 though 0.036184 already 0.036082 possible 0.035962 nothing 0.035842 early 0.035820 large 0.035533 yet 0.035514 young 0.035365 side 0.035291 asked 0.035164 whether 0.034900 days 0.034797 ca 0.034770 called 0.034766 john 0.034568 enough 0.034294 development 0.034101 week 0.033901 round 0.033714 power 0.033700 change 0.033682 country 0.033570 almost 0.033237 council 0.032980 himself 0.032704 room 0.032534 tell 0.032379 service 0.032243 political 0.032160 far 0.032091 able 0.031997 six 0.031965 become 0.031949 open 0.031871 market 0.031648 times 0.031471 whole 0.031417 support 0.031390 half 0.031334 eyes 0.031255 members 0.031226 working 0.030778 control 0.030630 major 0.030605 problem 0.030504 doing 0.030276 court 0.030251 towards 0.030093 mind 0.029960 anything 0.029799 others 0.029732 felt 0.029503 war 0.029358 car 0.029328 police 0.029307 keep 0.029265 full 0.029247 making 0.029218 either 0.029215 held 0.029202 report 0.029156 interest 0.029051 once 0.028989 problems 0.028929 act 0.028901 road 0.028831 probably 0.028728 available 0.028603 labour 0.028523 law 0.028444 research 0.028401 following 0.028396 am 0.028273 level 0.028171 show 0.028140 saw 0.028132 looking 0.028028 feel 0.027773 today 0.027717 name 0.027677 mother 0.027624 past 0.027614 question 0.027587 let 0.027460 knew 0.027443 education 0.027364 actually 0.027346 policy 0.027324 ever 0.027256 known 0.027170 above 0.027092 office 0.027025 big 0.026917 clear 0.026870 body 0.026858 door 0.026689 voice 0.026617 across 0.026517 britain 0.026411 person 0.026286 together 0.026263 main 0.026232 services 0.026228 care 0.026204 black 0.026200 book 0.026119 months 0.026113 turned 0.025951 using 0.025950 health 0.025934 sure 0.025879 white 0.025836 million 0.025831 words 0.025720 child 0.025669 period 0.025579 minister 0.025477 including 0.025383 several 0.025255 father 0.025241 society 0.025090 seemed 0.025056 kind 0.025038 began 0.024989 god 0.024984 top 0.024975 start 0.024963 itself 0.024950 behind 0.024934 themselves 0.024912 wanted 0.024868 economic 0.024795 love 0.024682 means 0.024676 upon 0.024631 areas 0.024581 effect 0.024579 likely 0.024520 english 0.024476 city 0.024460 therefore 0.024430 woman 0.024425 real 0.024389 position 0.024388 centre 0.024385 south 0.024381 england 0.024379 community 0.024290 view 0.024225 gave 0.024144 hard 0.024132 job 0.024086 among 0.024057 staff 0.023909 read 0.023885 process 0.023875 line 0.023873 future 0.023831 particular 0.023524 provide 0.023486 present 0.023479 became 0.023475 taking 0.023441 international 0.023374 study 0.023346 moment 0.023302 run 0.023280 special 0.023272 result 0.023251 action 0.023251 difficult 0.023183 pay 0.023172 particularly 0.023158 sense 0.023080 age 0.022997 order 0.022950 management 0.022931 idea 0.022835 certain 0.022759 north 0.022754 light 0.022732 play 0.022732 sort 0.022642 west 0.022618 evidence 0.022601 try 0.022510 close 0.022495 experience 0.022489 rather 0.022455 land 0.022447 third 0.022303 seems 0.022300 believe 0.022292 morning 0.022248 outside 0.022233 turn 0.022123 else 0.022014 free 0.021956 meeting 0.021887 leave 0.021778 cost 0.021691 church 0.021615 death 0.021597 sometimes 0.021588 thus 0.021557 training 0.021539 range 0.021493 move 0.021492 coming 0.021439 brought 0.021427 getting 0.021417 european 0.021415 ten 0.021332 matter 0.021291 shall 0.021290 heard 0.021264 table 0.021253 needs 0.021230 late 0.021121 trade 0.021024 involved 0.021006 mrs 0.020880 industry 0.020870 whose 0.020868 ago 0.020844 century 0.020763 course 0.020719 street 0.020638 human 0.020606 united 0.020569 gone 0.020567 yesterday 0.020525 call 0.020501 lost 0.020434 ask 0.020414 word 0.020389 groups 0.020374 along 0.020344 central 0.020327 history 0.020316 few 0.020160 usually 0.020151 changes 0.020148 remember 0.020144 hundred 0.020105 individual 0.020080 air 0.020072 programme 0.020066 rate 0.020054 building 0.020033 sir 0.019997 food 0.019983 hands 0.019969 committee 0.019966 team 0.019910 hours 0.019873 indeed 0.019842 b 0.019809 language 0.019758 someone 0.019656 everything 0.019650 short 0.019623 certainly 0.019620 trying 0.019617 based 0.019613 section 0.019578 saying 0.019469 lot 0.019447 price 0.019441 similar 0.019394 reason 0.019380 single 0.019365 minutes 0.019360 authority 0.019302 town 0.019261 cases 0.019229 common 0.019201 true 0.019190 role 0.019171 data 0.019167 subject 0.019147 europe 0.019120 class 0.019096 nature 0.019072 necessary 0.019052 states 0.018950 bank 0.018868 value 0.018811 companies 0.018765 simply 0.018683 especially 0.018653 hope 0.018642 department 0.018639 east 0.018552 personal 0.018542 figure 0.018532 union 0.018526 total 0.018484 cut 0.018431 member 0.018406 near 0.018403 started 0.018389 private 0.018327 paper 0.018269 seven 0.018256 patients 0.018242 uk 0.018227 type 0.018219 eight 0.018212 live 0.018180 systems 0.018177 french 0.018148 herself 0.018095 practice 0.018007 wife 0.017999 low 0.017905 seem 0.017878 talk 0.017866 former 0.017859 increase 0.017748 friend 0.017742 decision 0.017668 countries 0.017644 expected 0.017640 terms 0.017621 makes 0.017613 earlier 0.017571 return 0.017535 financial 0.017490 president 0.017466 wo 0.017430 stage 0.017430 needed 0.017396 c 0.017393 university 0.017343 lord 0.017329 club 0.017323 issue 0.017313 required 0.017270 king 0.017243 american 0.017227 tax 0.017201 cos 0.017198 parents 0.017196 quality 0.017172 concerned 0.017142 higher 0.017122 date 0.017103 foreign 0.017081 approach 0.017063 rest 0.017049 ground 0.017044 strong 0.016968 wrong 0.016919 living 0.016844 march 0.016832 situation 0.016812 comes 0.016801 provided 0.016752 soon 0.016735 bed 0.016724 account 0.016719 offer 0.016701 recent 0.016685 girl 0.016585 force 0.016574 na 0.016554 david 0.016540 final 0.016464 twenty 0.016457 secretary 0.016402 art 0.016401 led 0.016375 production 0.016367 various 0.016311 understand 0.016310 bad 0.016274 schools 0.016272 weeks 0.016268 bring 0.016262 greater 0.016258 conditions 0.016241 amount 0.016234 results 0.016209 added 0.016177 clearly 0.016150 paid 0.016124 field 0.016096 costs 0.016015 project 0.016009 forward 0.015999 include 0.015975 stop 0.015975 tried 0.015973 decided 0.015954 red 0.015926 poor 0.015913 award 0.015903 front 0.015894 hospital 0.015892 friends 0.015875 shown 0.015813 music 0.015803 month 0.015793 game 0.015789 record 0.015760 plan 0.015751 anyone 0.015737 ways 0.015711 chapter 0.015682 goes 0.015657 followed 0.015657 described 0.015612 royal 0.015578 easy 0.015545 workers 0.015491 april 0.015474 agreed 0.015459 planning 0.015436 green 0.015399 students 0.015363 despite 0.015354 june 0.015351 knowledge 0.015349 moved 0.015336 news 0.015317 lead 0.015313 sound 0.015301 works 0.015286 points 0.015226 hair 0.015207 basis 0.015203 deal 0.015196 answer 0.015174 questions 0.015156 series 0.015107 please 0.015100 allowed 0.015094 below 0.015083 natural 0.015062 inside 0.015056 kept 0.015053 current 0.015017 met 0.014974 meet 0.014844 fire 0.014839 feet 0.014836 running 0.014731 simple 0.014707 died 0.014703 happened 0.014630 manager 0.014569 hear 0.014567 computer 0.014563 security 0.014559 board 0.014550 evening 0.014542 structure 0.014511 carried 0.014504 bill 0.014460 heart 0.014449 sent 0.014430 test 0.014416 attention 0.014398 story 0.014390 written 0.014388 capital 0.014388 studies 0.014383 nine 0.014369 hold 0.014310 letter 0.014309 share 0.014252 per 0.014245 material 0.014244 considered 0.014233 movement 0.014209 dark 0.014193 talking 0.014146 thinking 0.014145 success 0.014101 everyone 0.014033 model 0.014030 chance 0.014003 boy 0.013983 agreement 0.013980 received 0.013969 stood 0.013957 alone 0.013957 analysis 0.013930 whatever 0.013927 fine 0.013922 nice 0.013873 population 0.013869 modern 0.013868 books 0.013843 de 0.013839 theory 0.013814 press 0.013800 legal 0.013787 son 0.013787 scotland 0.013775 feeling 0.013744 cause 0.013742 sea 0.013726 increased 0.013712 environment 0.013703 finally 0.013693 performance 0.013676 rights 0.013676 bit 0.013663 growth 0.013660 authorities 0.013651 produced 0.013628 design 0.013613 whom 0.013601 middle 0.013597 relationship 0.013561 built 0.013543 complete 0.013471 standard 0.013415 worked 0.013413 continued 0.013413 list 0.013408 giving 0.013375 size 0.013364 parties 0.013362 visit 0.013322 space 0.013314 key 0.013274 miss 0.013251 example 0.013228 property 0.013207 myself 0.013196 buy 0.013191 stay 0.013169 dead 0.013146 term 0.013145 mark 0.013144 st 0.013131 nor 0.013121 gon 0.013117 normal 0.013101 couple 0.013081 reached 0.013061 peter 0.013058 serious 0.013054 throughout 0.013050 quickly 0.013030 developed 0.013030 lower 0.013024 worth 0.013021 included 0.012996 france 0.012989 beginning 0.012963 behaviour 0.012959 recently 0.012946 previous 0.012927 pounds 0.012921 prime 0.012902 cup 0.012901 firm 0.012898 issues 0.012894 anyway 0.012870 okay 0.012861 cold 0.012858 energy 0.012849 treatment 0.012837 thank 0.012829 sat 0.012812 director 0.012806 hall 0.012781 wide 0.012763 levels 0.012753 scheme 0.012739 choice 0.012728 significant 0.012703 income 0.012679 wall 0.012660 reported 0.012642 pressure 0.012599 established 0.012579 contract 0.012553 july 0.012519 risk 0.012482 direct 0.012478 beyond 0.012447 wish 0.012444 takes 0.012440 details 0.012413 suddenly 0.012411 continue 0.012410 technology 0.012400 spent 0.012399 forces 0.012390 ones 0.012370 won 0.012346 happy 0.012342 consider 0.012339 plans 0.012322 shows 0.012273 defence 0.012261 parts 0.012256 opened 0.012220 loss 0.012206 industrial 0.012204 activities 0.012202 produce 0.012199 soviet 0.012192 forms 0.012188 rates 0.012188 writing 0.012186 chairman 0.012175 generally 0.012172 teachers 0.012170 floor 0.012159 colour 0.012141 looks 0.012129 sun 0.012128 activity 0.012109 appropriate 0.012105 park 0.012099 nearly 0.012094 association 0.012093 changed 0.012085 allow 0.012068 hotel 0.012044 military 0.012039 army 0.012038 sorry 0.012032 figures 0.012029 attempt 0.012029 german 0.012021 paul 0.012010 original 0.011987 chief 0.011964 leading 0.011947 county 0.011946 summer 0.011938 village 0.011932 difference 0.011927 hour 0.011926 meant 0.011920 numbers 0.011912 claim 0.011912 specific 0.011903 rose 0.011869 played 0.011850 husband 0.011839 basic 0.011812 relations 0.011802 potential 0.011798 dr 0.011792 garden 0.011778 reports 0.011752 professional 0.011745 arms 0.011725 fall 0.011699 cover 0.011698 product 0.011691 suggested 0.011684 ideas 0.011675 george 0.011668 stand 0.011643 male 0.011624 obviously 0.011589 unless 0.011586 appeal 0.011576 demand 0.011564 season 0.011549 access 0.011511 rules 0.011506 unit 0.011490 appear 0.011483 northern 0.011480 reading 0.011475 investment 0.011472 fish 0.011463 picture 0.011456 write 0.011447 page 0.011444 playing 0.011443 independent 0.011422 reasons 0.011418 effects 0.011389 benefit 0.011373 successful 0.011367 aware 0.011326 published 0.011317 yourself 0.011307 shop 0.011306 exactly 0.011289 style 0.011285 passed 0.011271 suppose 0.011271 offered 0.011269 showed 0.011264 fell 0.011261 deep 0.011257 employment 0.011233 miles 0.011224 appeared 0.011223 germany 0.011190 october 0.011183 products 0.011163 popular 0.011153 science 0.011150 note 0.011149 s 0.011141 window 0.011140 expect 0.011139 win 0.011133 rise 0.011128 interests 0.011106 announced 0.011083 resources 0.011075 lives 0.011072 economy 0.011056 doctor 0.011043 influence 0.011033 immediately 0.011027 commission 0.011026 blue 0.011021 maybe 0.011019 events 0.011005 prepared 0.010987 walk 0.010986 advice 0.010982 gives 0.010980 ready 0.010974 concern 0.010964 circumstances 0.010961 sales 0.010958 limited 0.010955 september 0.010951 event 0.010929 contact 0.010921 returned 0.010914 thousand 0.010914 charge 0.010909 raised 0.010853 america 0.010840 ensure 0.010838 oil 0.010812 opportunity 0.010792 lines 0.010792 college 0.010773 film 0.010761 trust 0.010730 james 0.010729 january 0.010708 standing 0.010703 blood 0.010700 station 0.010699 lay 0.010691 married 0.010679 goods 0.010670 waiting 0.010655 carry 0.010642 prices 0.010640 ah 0.010618 designed 0.010599 useful 0.010597 lack 0.010592 conference 0.010590 operation 0.010578 houses 0.010567 follows 0.010563 western 0.010561 extent 0.010560 application 0.010552 television 0.010529 straight 0.010529 richard 0.010518 response 0.010503 degree 0.010492 majority 0.010491 hit 0.010472 effective 0.010470 v 0.010467 scottish 0.010459 average 0.010436 wrote 0.010426 york 0.010423 region 0.010414 traditional 0.010395 easily 0.010393 closed 0.010393 leaving 0.010387 glass 0.010369 statement 0.010368 site 0.010359 official 0.010330 moving 0.010328 places 0.010324 accept 0.010319 title 0.010301 election 0.010258 parliament 0.010254 lady 0.010229 earth 0.010222 importance 0.010219 jobs 0.010206 existing 0.010184 stopped 0.010181 interesting 0.010177 standards 0.010147 review 0.010126 girls 0.010123 considerable 0.010122 ireland 0.010117 species 0.010098 match 0.010093 supply 0.010089 physical 0.010078 eye 0.010075 caused 0.010074 watch 0.010056 follow 0.010052 extra 0.010042 growing 0.010036 attack 0.010024 michael 0.010015 campaign 0.010015 understanding 0.010004 heavy 0.009978 complex 0.009964 housing 0.009943 walked 0.009938 daughter 0.009936 primary 0.009928 n 0.009927 competition 0.009925 responsible 0.009921 speak 0.009921 river 0.009910 p 0.009900 software 0.009896 november 0.009890 break 0.009887 december 0.009861 sunday 0.009853 mouth 0.009840 piece 0.009837 medical 0.009833 purpose 0.009829 post 0.009826 rule 0.009820 failed 0.009797 wales 0.009777 trouble 0.009771 responsibility 0.009770 leader 0.009754 tomorrow 0.009750 associated 0.009729 thirty 0.009716 learning 0.009714 officer 0.009705 notice 0.009692 fair 0.009691 task 0.009679 arm 0.009674 separate 0.009645 highly 0.009630 base 0.009629 eventually 0.009615 ability 0.009612 d 0.009608 charles 0.009596 drive 0.009595 skills 0.009592 opposition 0.009588 pattern 0.009581 remained 0.009577 hot 0.009569 method 0.009565 source 0.009562 sitting 0.009552 bought 0.009547 baby 0.009542 interested 0.009503 surface 0.009497 sale 0.009497 teaching 0.009481 division 0.009479 remain 0.009464 fear 0.009460 wants 0.009446 remains 0.009443 minute 0.009443 older 0.009438 claims 0.009424 methods 0.009420 accepted 0.009407 machine 0.009405 fully 0.009394 equipment 0.009390 box 0.009388 suggest 0.009381 radio 0.009375 dear 0.009374 disease 0.009370 killed 0.009348 types 0.009346 peace 0.009343 officers 0.009340 slightly 0.009336 balance 0.009319 features 0.009318 christmas 0.009313 policies 0.009297 hardly 0.009296 arrived 0.009293 step 0.009286 compared 0.009286 wait 0.009280 exchange 0.009274 matters 0.009266 windows 0.009260 otherwise 0.009257 directly 0.009242 created 0.009237 happen 0.009217 teacher 0.009207 provision 0.009202 variety 0.009199 ran 0.009198 sector 0.009175 factors 0.009167 direction 0.009158 essential 0.009158 sit 0.009157 caught 0.009147 speaker 0.009140 finished 0.009135 beautiful 0.009123 function 0.009115 exercise 0.009115 civil 0.009112 status 0.009108 introduced 0.009103 alternative 0.009101 related 0.009100 ii 0.009088 develop 0.009086 character 0.009076 brown 0.009072 tea 0.009069 safety 0.009064 placed 0.009061 mum 0.009059 aid 0.009056 completely 0.009054 cash 0.009036 flat 0.009032 fifty 0.009030 weight 0.009029 transport 0.009028 context 0.009028 oxford 0.009018 animals 0.009015 culture 0.009014 m 0.008990 obvious 0.008977 brother 0.008974 discussion 0.008966 sold 0.008928 born 0.008888 none 0.008881 positive 0.008863 afternoon 0.008859 knows 0.008858 shares 0.008851 environmental 0.008851 damage 0.008843 proposed 0.008832 william 0.008829 february 0.008827 condition 0.008814 senior 0.008813 alright 0.008806 provides 0.008801 sign 0.008784 league 0.008782 trees 0.008777 sex 0.008775 claimed 0.008773 organisation 0.008766 holding 0.008756 budget 0.008754 families 0.008752 argument 0.008746 saturday 0.008744 learn 0.008737 normally 0.008696 truth 0.008680 stone 0.008678 kitchen 0.008677 neither 0.008675 add 0.008668 patient 0.008662 library 0.008661 lived 0.008658 fit 0.008658 progress 0.008652 believed 0.008636 shot 0.008624 principle 0.008609 agree 0.008608 create 0.008608 covered 0.008602 players 0.008594 plant 0.008589 survey 0.008580 annual 0.008580 pupils 0.008566 meaning 0.008565 nuclear 0.008554 increasing 0.008554 reach 0.008550 phone 0.008549 version 0.008548 forced 0.008537 female 0.008535 commercial 0.008533 train 0.008519 stock 0.008506 duty 0.008501 dog 0.008500 drink 0.008480 telephone 0.008479 queen 0.008476 boys 0.008474 send 0.008471 presence 0.008468 protection 0.008466 courses 0.008459 august 0.008456 reduced 0.008449 executive 0.008447 e 0.008430 individuals 0.008427 bar 0.008426 presented 0.008419 chair 0.008414 media 0.008396 smith 0.008391 avoid 0.008388 pretty 0.008379 race 0.008373 achieved 0.008369 relevant 0.008365 apply 0.008360 district 0.008359 double 0.008349 explain 0.008348 robert 0.008338 plus 0.008334 slowly 0.008327 relatively 0.008325 letters 0.008324 reference 0.008322 huge 0.008313 marriage 0.008273 collection 0.008249 speech 0.008241 africa 0.008234 regional 0.008224 differences 0.008210 gold 0.008199 opening 0.008199 effort 0.008199 overall 0.008198 apparently 0.008198 gets 0.008193 holiday 0.008189 career 0.008185 names 0.008177 practical 0.008169 latter 0.008169 failure 0.008167 horse 0.008166 speed 0.008144 determined 0.008133 subjects 0.008130 benefits 0.008129 becomes 0.008120 sell 0.008110 text 0.008065 wind 0.008060 student 0.008059 appears 0.008058 helped 0.008049 values 0.008045 managed 0.008045 intended 0.008040 larger 0.008038 cells 0.008033 records 0.008027 daily 0.008027 scale 0.008019 edge 0.008018 views 0.008018 regular 0.008014 smiled 0.008004 applied 0.008003 memory 0.008001 sleep 0.008001 merely 0.007995 fast 0.007991 studio 0.007985 putting 0.007982 ball 0.007966 pass 0.007954 cross 0.007949 bottom 0.007943 eat 0.007942 foot 0.007938 opinion 0.007934 decisions 0.007922 firms 0.007920 drawn 0.007915 facilities 0.007908 finance 0.007901 spend 0.007892 cars 0.007892 corner 0.007891 begin 0.007888 mhm 0.007886 image 0.007877 setting 0.007870 impact 0.007868 receive 0.007865 join 0.007865 t 0.007856 quarter 0.007853 expression 0.007851 politics 0.007851 sister 0.007850 grant 0.007850 smile 0.007825 instead 0.007825 justice 0.007817 henry 0.007797 draw 0.007784 credit 0.007760 additional 0.007748 wood 0.007741 advantage 0.007737 largely 0.007736 debate 0.007726 pain 0.007721 mass 0.007718 gas 0.007718 clothes 0.007707 dad 0.007701 somebody 0.007698 winter 0.007697 smaller 0.007682 aspects 0.007672 active 0.007670 railway 0.007667 check 0.007667 affairs 0.007656 joined 0.007654 possibly 0.007653 travel 0.007650 ended 0.007647 network 0.007636 accounts 0.007627 leaders 0.007618 forest 0.007615 worse 0.007615 nevertheless 0.007614 bloody 0.007609 build 0.007604 stuff 0.007603 plants 0.007602 longer 0.007593 providing 0.007591 powerful 0.007589 save 0.007575 expressed 0.007557 becoming 0.007556 carefully 0.007555 length 0.007545 broken 0.007538 crime 0.007528 strength 0.007528 except 0.007519 mary 0.007497 possibility 0.007485 conservative 0.007481 reduce 0.007466 vote 0.007463 hill 0.007458 examples 0.007446 square 0.007444 mainly 0.007444 explained 0.007442 impossible 0.007433 insurance 0.007431 formed 0.007428 units 0.007421 skin 0.007420 currently 0.007418 treated 0.007406 warm 0.007401 address 0.007400 banks 0.007399 regarded 0.007395 somewhere 0.007393 spoke 0.007390 pulled 0.007390 joint 0.007372 confidence 0.007367 discussed 0.007361 ring 0.007352 legislation 0.007352 mentioned 0.007350 safe 0.007337 bodies 0.007326 message 0.007321 steps 0.007298 powers 0.007295 proved 0.007287 domestic 0.007278 ordinary 0.007274 farm 0.007273 sexual 0.007271 measures 0.007269 rich 0.007269 edward 0.007267 fight 0.007264 entirely 0.007256 require 0.007254 christian 0.007235 previously 0.007232 solution 0.007230 pound 0.007224 tonight 0.007221 actual 0.007209 transfer 0.007206 doubt 0.007202 difficulties 0.007201 shape 0.007195 distance 0.007185 proposals 0.007184 choose 0.007178 extremely 0.007176 ministers 0.007172 challenge 0.007170 technical 0.007166 fresh 0.007165 scene 0.007159 museum 0.007155 materials 0.007152 correct 0.007143 judge 0.007143 thomas 0.007139 rock 0.007132 target 0.007128 r 0.007125 article 0.007123 achieve 0.007121 prevent 0.007121 waste 0.007115 includes 0.007112 band 0.007111 customers 0.007110 animal 0.007100 due 0.007096 x 0.007093 items 0.007080 suggests 0.007073 internal 0.007072 excellent 0.007068 ec 0.007064 sight 0.007062 turning 0.007062 assessment 0.007054 fairly 0.007052 football 0.007052 watched 0.007048 traffic 0.007038 net 0.007034 decide 0.007033 talks 0.007032 touch 0.007023 coffee 0.007014 watching 0.007010 sources 0.007007 buildings 0.006998 relief 0.006995 increasingly 0.006995 spending 0.006991 release 0.006986 introduction 0.006983 star 0.006983 administration 0.006979 notes 0.006978 battle 0.006978 forty 0.006978 island 0.006976 strange 0.006974 finding 0.006974 dry 0.006968 initial 0.006952 video 0.006952 walking 0.006947 existence 0.006936 showing 0.006930 enjoy 0.006926 wonder 0.006922 master 0.006919 twelve 0.006919 appointed 0.006912 kingdom 0.006910 equally 0.006907 religious 0.006903 cultural 0.006884 latest 0.006883 famous 0.006882 contrast 0.006880 japan 0.006879 cabinet 0.006879 tv 0.006878 users 0.006877 legs 0.006871 institutions 0.006868 recorded 0.006862 bridge 0.006860 leaves 0.006857 rain 0.006857 reality 0.006855 welcome 0.006853 clean 0.006851 supposed 0.006845 proper 0.006843 seeing 0.006829 spirit 0.006829 lose 0.006827 argued 0.006819 detailed 0.006819 driving 0.006817 pick 0.006814 measure 0.006813 programmes 0.006809 trial 0.006808 asking 0.006806 aim 0.006785 tour 0.006782 formal 0.006772 prison 0.006766 unemployment 0.006763 quiet 0.006755 accident 0.006755 fixed 0.006753 starting 0.006750 concept 0.006750 tree 0.006744 fund 0.006740 elements 0.006738 discovered 0.006736 equal 0.006730 papers 0.006725 served 0.006721 unable 0.006691 inc 0.006685 surely 0.006684 refused 0.006678 proportion 0.006677 organization 0.006675 changing 0.006675 mine 0.006674 sides 0.006670 difficulty 0.006664 picked 0.006656 object 0.006655 spread 0.006653 weekend 0.006645 construction 0.006641 ahead 0.006638 wine 0.006633 pointed 0.006627 dinner 0.006623 distribution 0.006621 obtained 0.006613 funds 0.006606 lovely 0.006606 identified 0.006605 telling 0.006597 search 0.006593 factor 0.006587 usual 0.006587 feature 0.006586 rural 0.006585 keeping 0.006584 twice 0.006580 applications 0.006580 path 0.006577 referred 0.006576 games 0.006572 seat 0.006566 thanks 0.006563 whereas 0.006561 display 0.006559 nobody 0.006554 reasonable 0.006548 raise 0.006548 substantial 0.006547 detail 0.006547 charges 0.006545 noted 0.006540 tend 0.006539 developing 0.006538 improve 0.006532 onto 0.006532 aircraft 0.006527 calls 0.006524 walls 0.006495 background 0.006492 japanese 0.006490 officials 0.006486 strategy 0.006485 track 0.006479 forget 0.006477 content 0.006475 soft 0.006466 grounds 0.006465 paris 0.006445 o 0.006442 communication 0.006428 immediate 0.006426 client 0.006417 fourth 0.006412 suitable 0.006409 everybody 0.006402 homes 0.006394 ought 0.006394 imagine 0.006388 manner 0.006385 classes 0.006378 quick 0.006374 pair 0.006373 freedom 0.006369 operations 0.006359 selection 0.006353 opposite 0.006352 requirements 0.006349 signed 0.006343 danger 0.006330 user 0.006329 file 0.006328 completed 0.006327 attitude 0.006326 output 0.006315 copy 0.006311 courts 0.006305 sounds 0.006295 laid 0.006295 spring 0.006295 relationships 0.006290 edinburgh 0.006286 affected 0.006279 afraid 0.006278 jack 0.006276 chosen 0.006276 heat 0.006267 entered 0.006263 democratic 0.006262 elections 0.006257 guide 0.006254 profit 0.006252 silence 0.006249 goal 0.006248 birds 0.006247 prince 0.006247 murder 0.006244 techniques 0.006242 easier 0.006240 sufficient 0.006235 agency 0.006235 scientific 0.006231 removed 0.006229 focus 0.006228 carrying 0.006225 eastern 0.006224 irish 0.006221 speaking 0.006216 markets 0.006216 theatre 0.006214 crisis 0.006211 conflict 0.006208 defined 0.006206 slow 0.006203 reform 0.006182 expensive 0.006175 offers 0.006173 educational 0.006165 capacity 0.006161 respect 0.006157 purposes 0.006155 absolutely 0.006152 happens 0.006150 profits 0.006150 patterns 0.006144 whilst 0.006144 dropped 0.006143 managers 0.006142 employees 0.006140 planned 0.006137 fields 0.006132 package 0.006131 weather 0.006127 totally 0.006119 opportunities 0.006115 procedure 0.006110 fingers 0.006108 grey 0.006107 mental 0.006106 bear 0.006102 frequently 0.006102 sentence 0.006099 dealing 0.006097 dangerous 0.006097 demands 0.006095 beside 0.006095 recognition 0.006092 largest 0.006089 listen 0.006089 marked 0.006084 sites 0.006084 arrangements 0.006082 absence 0.006082 perfect 0.006079 understood 0.006072 secret 0.006066 empty 0.006066 critical 0.006064 prove 0.006049 familiar 0.006044 g 0.006043 card 0.006037 operating 0.006036 issued 0.006026 replaced 0.006010 partly 0.006008 principles 0.006001 supported 0.005999 seriously 0.005996 projects 0.005992 admitted 0.005989 grand 0.005987 fighting 0.005985 elsewhere 0.005981 strike 0.005979 beat 0.005969 player 0.005968 necessarily 0.005968 commitment 0.005966 properly 0.005963 threat 0.005951 route 0.005947 unlikely 0.005944 replied 0.005941 liked 0.005932 ideal 0.005929 victory 0.005928 neck 0.005927 discuss 0.005912 tom 0.005907 widely 0.005905 occur 0.005903 violence 0.005898 drawing 0.005895 efforts 0.005886 element 0.005885 experienced 0.005878 worry 0.005876 till 0.005870 pieces 0.005865 darlington 0.005858 selling 0.005857 reaction 0.005848 colleagues 0.005847 historical 0.005847 roman 0.005846 liberal 0.005844 die 0.005842 heads 0.005833 discipline 0.005829 friday 0.005829 bright 0.005829 jesus 0.005824 rooms 0.005823 russian 0.005823 wild 0.005818 liverpool 0.005814 china 0.005812 closely 0.005811 cell 0.005806 castle 0.005806 southern 0.005801 expenditure 0.005800 occurred 0.005780 pictures 0.005771 branch 0.005770 audience 0.005766 flowers 0.005766 urban 0.005760 thousands 0.005757 grow 0.005757 conversation 0.005751 bus 0.005750 h 0.005750 congress 0.005750 tiny 0.005748 desire 0.005746 emphasis 0.005737 remembered 0.005737 exist 0.005734 consideration 0.005731 processes 0.005730 seek 0.005724 appearance 0.005721 maintain 0.005720 upper 0.005714 least 0.005711 option 0.005707 estate 0.005701 adopted 0.005701 exhibition 0.005699 youth 0.005698 debt 0.005698 orders 0.005694 captain 0.005690 boat 0.005687 uses 0.005686 younger 0.005685 assembly 0.005684 payment 0.005684 lunch 0.005682 extended 0.005681 sought 0.005681 learned 0.005680 moral 0.005677 suffered 0.005676 serve 0.005667 surprised 0.005664 driver 0.005663 brief 0.005660 elected 0.005644 volume 0.005641 fifteen 0.005638 drugs 0.005637 institute 0.005636 leg 0.005636 comment 0.005633 represented 0.005633 arts 0.005632 contribution 0.005632 meetings 0.005631 committed 0.005630 centres 0.005625 filled 0.005619 hearing 0.005618 bag 0.005617 feelings 0.005616 surprise 0.005615 revealed 0.005613 runs 0.005608 broke 0.005606 ian 0.005605 document 0.005593 martin 0.005592 hell 0.005591 apparent 0.005586 continuing 0.005585 curriculum 0.005585 models 0.005583 code 0.005582 functions 0.005572 occasion 0.005570 procedures 0.005569 noticed 0.005568 monday 0.005562 enter 0.005561 shops 0.005558 link 0.005558 faith 0.005555 establish 0.005551 facts 0.005546 requires 0.005545 membership 0.005545 shook 0.005543 lies 0.005542 crown 0.005540 remaining 0.005538 drop 0.005537 thin 0.005533 pleasure 0.005521 lie 0.005519 flow 0.005517 recognised 0.005516 alan 0.005501 careful 0.005490 gain 0.005490 ordered 0.005484 literature 0.005482 row 0.005477 marketing 0.005476 broad 0.005476 birth 0.005475 professor 0.005469 attempts 0.005457 beneath 0.005457 stated 0.005440 aye 0.005436 gentleman 0.005432 entry 0.005427 breath 0.005426 flight 0.005423 constant 0.005422 attractive 0.005421 tests 0.005416 investigation 0.005414 protect 0.005411 nodded 0.005409 wear 0.005407 greatest 0.005402 dress 0.005401 encourage 0.005396 busy 0.005396 belief 0.005395 shared 0.005392 corp 0.005390 fun 0.005388 tradition 0.005386 catch 0.005386 description 0.005384 released 0.005384 wearing 0.005383 criminal 0.005382 developments 0.005380 pleased 0.005378 engineering 0.005378 shut 0.005375 observed 0.005365 vital 0.005364 italy 0.005357 coal 0.005356 employed 0.005356 hoped 0.005354 conclusion 0.005353 maximum 0.005350 enjoyed 0.005350 ancient 0.005348 trading 0.005347 adult 0.005343 schemes 0.005342 drew 0.005331 ltd 0.005330 offering 0.005329 silver 0.005323 sets 0.005322 pushed 0.005321 organisations 0.005320 effectively 0.005318 etc 0.005310 suit 0.005306 partner 0.005305 advance 0.005303 farmers 0.005301 minimum 0.005301 lips 0.005295 drug 0.005294 manchester 0.005291 palace 0.005288 newspaper 0.005286 treaty 0.005286 narrow 0.005286 identify 0.005278 engine 0.005274 usa 0.005268 owner 0.005261 bound 0.005260 minor 0.005257 screen 0.005256 advanced 0.005249 sky 0.005248 affect 0.005247 tony 0.005247 depends 0.005240 elderly 0.005233 australia 0.005232 rising 0.005230 ministry 0.005230 knowing 0.005226 contained 0.005226 acid 0.005226 entitled 0.005224 express 0.005218 confirmed 0.005214 limit 0.005213 anybody 0.005210 external 0.005204 realised 0.005203 capable 0.005201 streets 0.005199 signs 0.005193 sharp 0.005187 wider 0.005181 institution 0.005177 generation 0.005175 plenty 0.005174 ill 0.005168 leeds 0.005168 accused 0.005166 bringing 0.005163 approved 0.005156 estimated 0.005155 loved 0.005155 horses 0.005153 principal 0.005144 wonderful 0.005139 italian 0.005134 tape 0.005133 laughed 0.005128 stress 0.005123 spot 0.005122 actions 0.005122 milk 0.005121 iii 0.005118 typical 0.005118 relative 0.005118 clients 0.005115 journey 0.005112 highest 0.005112 stephen 0.005111 acting 0.005104 atmosphere 0.005102 academic 0.005101 wondered 0.005098 improved 0.005097 troops 0.005085 entire 0.005084 welfare 0.005083 secondary 0.005081 un 0.005079 definition 0.005079 laws 0.005077 reduction 0.005075 worst 0.005067 visitors 0.005065 meanwhile 0.005064 examination 0.005064 leadership 0.005060 doors 0.005060 attitudes 0.005057 lying 0.005053 passing 0.005049 armed 0.005048 enable 0.005039 shoulder 0.005038 machines 0.005035 paying 0.005027 hence 0.005027 charged 0.005024 ibm 0.005024 escape 0.005022 flying 0.005018 favourite 0.005018 brain 0.005015 criticism 0.005014 f 0.005006 stories 0.005005 nineteen 0.005003 la 0.005002 billion 0.005001 teeth 0.005000 negative 0.005000 explanation 0.004999 iron 0.004998 falling 0.004995 thick 0.004987 kill 0.004985 creation 0.004980 governments 0.004978 ship 0.004976 named 0.004976 motor 0.004976 india 0.004974 sample 0.004971 intention 0.004970 interview 0.004968 goals 0.004965 vast 0.004964 christ 0.004962 decline 0.004954 aged 0.004948 seeking 0.004946 fashion 0.004945 coast 0.004945 valley 0.004940 readers 0.004939 magazine 0.004935 somewhat 0.004928 thoughts 0.004920 terrible 0.004920 kinds 0.004919 seats 0.004918 faces 0.004917 unlike 0.004915 phase 0.004912 acts 0.004910 dream 0.004910 mention 0.004907 significance 0.004906 customer 0.004906 lights 0.004900 unfortunately 0.004899 noise 0.004899 revolution 0.004898 index 0.004895 rare 0.004894 biggest 0.004893 ta 0.004893 via 0.004890 sections 0.004887 closer 0.004887 harry 0.004877 objective 0.004877 bishop 0.004875 metal 0.004873 controlled 0.004873 stared 0.004872 secure 0.004871 jones 0.004871 encouraged 0.004870 motion 0.004868 causes 0.004865 technique 0.004859 granted 0.004859 factory 0.004853 injury 0.004852 fat 0.004851 severe 0.004847 worried 0.004834 contains 0.004833 strongly 0.004830 afterwards 0.004826 hurt 0.004820 trip 0.004820 hole 0.004818 corporate 0.004818 obtain 0.004814 objects 0.004809 represent 0.004807 ooh 0.004805 settlement 0.004804 faced 0.004803 grew 0.004801 tall 0.004798 rapidly 0.004796 contemporary 0.004794 yellow 0.004794 buying 0.004793 pool 0.004793 amongst 0.004790 lots 0.004790 sport 0.004785 practices 0.004782 happening 0.004775 afford 0.004773 contracts 0.004771 lane 0.004770 permanent 0.004766 listening 0.004760 sick 0.004759 bob 0.004755 contain 0.004753 doctors 0.004752 fundamental 0.004751 ourselves 0.004751 desk 0.004751 finish 0.004746 unions 0.004745 implications 0.004744 similarly 0.004737 fellow 0.004733 declared 0.004730 structures 0.004729 inflation 0.004728 originally 0.004726 brian 0.004726 funny 0.004724 andrew 0.004724 request 0.004724 inner 0.004724 pull 0.004720 chris 0.004718 somehow 0.004717 payments 0.004717 odd 0.004715 pension 0.004713 warning 0.004712 advertising 0.004712 crucial 0.004709 launched 0.004709 chemical 0.004706 spain 0.004704 purchase 0.004701 marks 0.004697 colours 0.004696 independence 0.004696 breakfast 0.004689 documents 0.004689 equivalent 0.004688 dogs 0.004688 perfectly 0.004683 appointment 0.004682 combination 0.004681 combined 0.004677 indicated 0.004670 co 0.004668 pages 0.004665 consequences 0.004661 calling 0.004659 tone 0.004656 store 0.004656 talked 0.004653 divided 0.004653 session 0.004652 sports 0.004646 struggle 0.004646 crowd 0.004645 ends 0.004642 sum 0.004638 wednesday 0.004636 shock 0.004636 missing 0.004631 dance 0.004630 virtually 0.004628 religion 0.004628 linked 0.004624 african 0.004621 yorkshire 0.004621 anne 0.004618 movements 0.004617 block 0.004617 helping 0.004616 mike 0.004613 manufacturing 0.004613 nation 0.004611 channel 0.004609 temperature 0.004608 accommodation 0.004607 massive 0.004604 societies 0.004602 cities 0.004601 consumer 0.004601 assumed 0.004600 comments 0.004600 offices 0.004587 steve 0.004585 stick 0.004583 kids 0.004581 stayed 0.004581 unique 0.004579 aspect 0.004579 sixty 0.004578 author 0.004578 bedroom 0.004577 republic 0.004575 links 0.004575 agent 0.004575 objectives 0.004573 interpretation 0.004573 assistance 0.004571 directors 0.004565 lift 0.004563 joe 0.004563 parliamentary 0.004563 nose 0.004563 badly 0.004563 unknown 0.004559 industries 0.004558 assets 0.004556 moreover 0.004553 jim 0.004549 russia 0.004547 invited 0.004543 subsequent 0.004542 frank 0.004538 describe 0.004534 gallery 0.004532 allowing 0.004532 reply 0.004530 funding 0.004530 mixed 0.004529 tears 0.004525 promised 0.004524 visited 0.004522 eating 0.004521 painting 0.004521 expert 0.004520 selected 0.004515 van 0.004513 cast 0.004504 simon 0.004501 bbc 0.004497 argue 0.004496 naturally 0.004492 meal 0.004485 controls 0.004480 representatives 0.004480 alive 0.004476 involving 0.004475 communist 0.004475 hopes 0.004475 shoulders 0.004474 suffering 0.004473 proceedings 0.004469 departments 0.004462 yours 0.004462 begun 0.004462 employers 0.004461 increases 0.004461 unix 0.004460 beauty 0.004459 vision 0.004459 fuel 0.004458 guilty 0.004454 proposal 0.004453 jane 0.004451 sequence 0.004449 impression 0.004449 angry 0.004447 sheet 0.004442 regulations 0.004442 vehicle 0.004442 missed 0.004441 enterprise 0.004441 regions 0.004439 democracy 0.004438 cancer 0.004436 count 0.004436 winning 0.004430 graham 0.004429 struck 0.004427 aims 0.004427 enormous 0.004426 glasgow 0.004419 rarely 0.004419 involve 0.004417 seconds 0.004414 map 0.004412 soil 0.004411 improvement 0.004410 involvement 0.004410 chinese 0.004409 guy 0.004409 cope 0.004407 ninety 0.004404 diet 0.004404 settled 0.004404 significantly 0.004401 repeated 0.004400 specialist 0.004395 plain 0.004394 conduct 0.004392 bottle 0.004389 command 0.004389 grass 0.004377 indian 0.004374 roof 0.004370 novel 0.004369 taste 0.004368 stages 0.004367 quietly 0.004367 provisions 0.004362 nations 0.004360 communities 0.004359 indicate 0.004356 distinction 0.004353 statements 0.004352 allows 0.004348 fruit 0.004340 containing 0.004340 pollution 0.004337 tired 0.004336 involves 0.004336 towns 0.004333 unusual 0.004333 assume 0.004332 lucky 0.004329 regard 0.004325 recording 0.004325 properties 0.004323 considering 0.004319 anywhere 0.004319 forgotten 0.004317 cuts 0.004315 plate 0.004310 maintained 0.004306 manage 0.004306 steel 0.004303 reader 0.004302 score 0.004300 extensive 0.004298 producing 0.004296 heavily 0.004294 starts 0.004292 friendly 0.004292 willing 0.004288 revenue 0.004285 leads 0.004282 shift 0.004281 glad 0.004280 arranged 0.004276 fallen 0.004276 program 0.004274 artist 0.004272 deputy 0.004271 agricultural 0.004270 plastic 0.004263 ai 0.004262 studied 0.004260 artists 0.004260 radical 0.004257 ice 0.004256 gently 0.004256 acquired 0.004250 fill 0.004242 location 0.004240 l 0.004240 operate 0.004238 threatened 0.004238 th 0.004238 reflected 0.004235 grown 0.004232 candidates 0.004228 border 0.004224 passage 0.004222 positions 0.004219 smoke 0.004216 firmly 0.004214 periods 0.004213 stars 0.004212 warned 0.004211 efficient 0.004211 persons 0.004211 maintenance 0.004210 hundreds 0.004210 occasionally 0.004209 establishment 0.004208 identity 0.004207 song 0.004205 formation 0.004193 rejected 0.004190 continues 0.004186 comfortable 0.004185 wet 0.004182 emergency 0.004182 constitution 0.004182 rail 0.004180 waited 0.004179 weapons 0.004179 cool 0.004178 philip 0.004177 wilson 0.004173 lake 0.004173 spokesman 0.004172 promise 0.004169 split 0.004168 mountain 0.004168 remove 0.004167 teams 0.004166 candidate 0.004165 bird 0.004161 cat 0.004158 believes 0.004158 organised 0.004157 mostly 0.004153 cutting 0.004150 household 0.004149 conservation 0.004149 facing 0.004148 performed 0.004148 parish 0.004148 abroad 0.004147 attached 0.004145 countryside 0.004144 victim 0.004142 criteria 0.004138 ref 0.004138 welsh 0.004136 catholic 0.004136 cheap 0.004134 conventional 0.004132 framework 0.004131 sudden 0.004129 approval 0.004124 bath 0.004122 concentration 0.004122 autumn 0.004121 roads 0.004119 cards 0.004118 mirror 0.004117 determine 0.004114 editor 0.004114 cook 0.004112 taught 0.004112 y 0.004110 bid 0.004109 realise 0.004108 thinks 0.004108 partners 0.004108 liability 0.004106 w 0.004103 voluntary 0.004097 valuable 0.004094 characters 0.004088 informed 0.004086 anger 0.004084 occasions 0.004080 situations 0.004080 regularly 0.004073 agriculture 0.004073 mistake 0.004072 golden 0.004070 dramatic 0.004069 premises 0.004064 theme 0.004058 duties 0.004055 beach 0.004049 hello 0.004048 arguments 0.004044 shopping 0.004043 overseas 0.004043 losses 0.004041 error 0.004039 loan 0.004035 temporary 0.004033 federal 0.004032 wealth 0.004032 shortly 0.004031 concerns 0.004030 reflect 0.004025 handle 0.004025 initially 0.004024 lifted 0.004024 eighty 0.004023 pub 0.004020 dependent 0.004018 recovery 0.004014 electricity 0.004010 fly 0.004009 laugh 0.004005 refer 0.004001 margaret 0.003998 chest 0.003997 silent 0.003996 answered 0.003989 eleven 0.003986 height 0.003978 treat 0.003978 clubs 0.003978 keen 0.003976 item 0.003976 recession 0.003975 emerged 0.003973 port 0.003973 characteristics 0.003971 sugar 0.003970 options 0.003966 bread 0.003964 bush 0.003964 admit 0.003954 specifically 0.003951 agents 0.003950 smell 0.003950 denied 0.003949 lewis 0.003949 owners 0.003948 statutory 0.003944 dressed 0.003943 writer 0.003937 deeply 0.003936 foundation 0.003935 turns 0.003935 representative 0.003933 recommended 0.003933 j 0.003929 chain 0.003928 parent 0.003926 eggs 0.003918 reputation 0.003918 decade 0.003918 thursday 0.003916 publication 0.003914 assistant 0.003913 resistance 0.003911 losing 0.003908 incident 0.003906 charity 0.003903 wages 0.003903 drove 0.003902 offence 0.003900 lee 0.003899 prefer 0.003898 stations 0.003896 chancellor 0.003894 lifespan 0.003893 examine 0.003892 tasks 0.003888 gained 0.003888 accounting 0.003887 demanded 0.003886 outcome 0.003885 commons 0.003884 competitive 0.003880 panel 0.003880 false 0.003876 efficiency 0.003874 resolution 0.003874 greek 0.003873 wished 0.003873 yards 0.003870 subsequently 0.003869 negotiations 0.003869 self 0.003868 gradually 0.003866 relating 0.003865 extreme 0.003865 supporters 0.003863 tells 0.003862 processing 0.003862 spoken 0.003860 businesses 0.003860 ages 0.003858 answers 0.003858 trained 0.003856 solid 0.003854 agencies 0.003852 representation 0.003851 theories 0.003850 shoes 0.003848 gardens 0.003844 empire 0.003843 sweet 0.003842 acceptable 0.003841 initiative 0.003839 recognise 0.003838 notion 0.003838 stairs 0.003836 cambridge 0.003835 licence 0.003833 essentially 0.003828 defeat 0.003827 sensitive 0.003826 worker 0.003825 taylor 0.003823 clause 0.003821 belfast 0.003810 attempted 0.003809 push 0.003807 ha 0.003806 stands 0.003806 owned 0.003804 moves 0.003803 aside 0.003802 fitted 0.003801 elizabeth 0.003798 delivery 0.003797 global 0.003796 comprehensive 0.003794 rapid 0.003792 computers 0.003791 meat 0.003788 emotional 0.003785 abuse 0.003785 brothers 0.003785 surprising 0.003783 gate 0.003782 protest 0.003779 expansion 0.003779 islands 0.003778 attend 0.003777 healthy 0.003776 tory 0.003776 middlesbrough 0.003774 examined 0.003770 fifth 0.003768 writers 0.003768 nearby 0.003767 bigger 0.003765 electric 0.003763 pocket 0.003761 weak 0.003759 aimed 0.003758 pop 0.003758 adequate 0.003757 soldiers 0.003757 instructions 0.003754 tuesday 0.003754 images 0.003749 centuries 0.003749 awareness 0.003749 circle 0.003748 pale 0.003747 drama 0.003744 limits 0.003743 handed 0.003743 consent 0.003734 furniture 0.003734 administrative 0.003733 sees 0.003733 scientists 0.003732 wooden 0.003732 ward 0.003731 creating 0.003731 coat 0.003730 adam 0.003728 uncle 0.003728 spanish 0.003725 remarkable 0.003724 luke 0.003722 experiences 0.003722 snow 0.003721 plays 0.003721 collected 0.003716 arrested 0.003714 currency 0.003713 satisfied 0.003711 newspapers 0.003711 intelligence 0.003711 rough 0.003710 hoping 0.003710 respond 0.003708 extension 0.003706 stuck 0.003702 copies 0.003702 paint 0.003702 corporation 0.003701 restaurant 0.003701 survive 0.003700 wave 0.003700 precisely 0.003698 churches 0.003698 directed 0.003695 fault 0.003694 skill 0.003692 apart 0.003689 lords 0.003689 returning 0.003688 gun 0.003687 drinking 0.003684 dealt 0.003683 films 0.003682 connection 0.003681 absolute 0.003681 brilliant 0.003681 mill 0.003680 depend 0.003677 attended 0.003674 eh 0.003674 introduce 0.003673 convention 0.003671 philosophy 0.003670 sons 0.003669 communications 0.003667 regime 0.003665 suffer 0.003663 rent 0.003660 councils 0.003654 partnership 0.003653 inquiry 0.003653 sarah 0.003652 camp 0.003651 parallel 0.003651 residents 0.003647 ruling 0.003643 pack 0.003636 fans 0.003636 plane 0.003635 input 0.003635 bay 0.003631 minority 0.003630 arrival 0.003629 imposed 0.003628 rugby 0.003625 throw 0.003625 medium 0.003623 tower 0.003622 sad 0.003622 gap 0.003622 scope 0.003617 travelling 0.003617 testing 0.003616 derived 0.003614 birmingham 0.003613 consequence 0.003610 golf 0.003609 mere 0.003605 electronic 0.003601 classic 0.003597 hidden 0.003597 visual 0.003595 tight 0.003594 stable 0.003592 replace 0.003588 retirement 0.003587 mail 0.003587 darkness 0.003586 registered 0.003586 champion 0.003583 tim 0.003582 enemy 0.003580 coach 0.003580 nurse 0.003580 fears 0.003576 bell 0.003574 concerning 0.003573 database 0.003573 socialist 0.003573 priority 0.003572 pure 0.003571 comfort 0.003571 attacks 0.003571 nigel 0.003568 fishing 0.003567 core 0.003567 metres 0.003566 frame 0.003566 literary 0.003562 guests 0.003559 championship 0.003556 managing 0.003555 insisted 0.003554 supplied 0.003554 bits 0.003551 disappeared 0.003551 fail 0.003550 successfully 0.003549 rome 0.003543 thatcher 0.003539 connected 0.003535 ride 0.003535 exciting 0.003533 du 0.003533 pink 0.003532 categories 0.003527 accompanied 0.003524 languages 0.003523 duke 0.003516 gulf 0.003516 category 0.003515 supreme 0.003513 comparison 0.003512 wedding 0.003509 greatly 0.003509 represents 0.003505 genuine 0.003504 personnel 0.003503 politicians 0.003502 covering 0.003502 favour 0.003502 adults 0.003501 photographs 0.003500 tank 0.003496 occurs 0.003495 promotion 0.003490 measured 0.003490 switch 0.003489 beer 0.003489 defendant 0.003488 preparation 0.003487 presumably 0.003486 dna 0.003483 washington 0.003481 cricket 0.003479 paintings 0.003477 landscape 0.003477 mothers 0.003475 affair 0.003475 disabled 0.003469 stupid 0.003468 alongside 0.003466 arise 0.003466 expectations 0.003466 breaking 0.003465 findings 0.003464 blow 0.003461 illness 0.003460 citizens 0.003460 mood 0.003460 listed 0.003458 tension 0.003458 hang 0.003456 boss 0.003455 convinced 0.003453 receiving 0.003453 cry 0.003452 ladies 0.003452 briefly 0.003451 stones 0.003449 mixture 0.003446 classical 0.003446 approaches 0.003446 arrangement 0.003445 feels 0.003444 williams 0.003443 causing 0.003443 yard 0.003438 nineteenth 0.003438 discover 0.003438 begins 0.003432 judgment 0.003432 specified 0.003430 branches 0.003430 consumption 0.003426 saved 0.003425 cream 0.003424 roll 0.003423 pilot 0.003422 racing 0.003418 cycle 0.003418 widespread 0.003416 birthday 0.003416 tough 0.003416 gloucester 0.003415 driven 0.003413 dispute 0.003412 confident 0.003411 ignored 0.003407 wage 0.003406 sake 0.003406 mile 0.003404 israel 0.003402 requirement 0.003402 experts 0.003401 upset 0.003399 numerous 0.003399 throat 0.003398 raising 0.003398 finger 0.003398 aids 0.003394 permission 0.003394 moments 0.003393 brings 0.003392 guidance 0.003392 delay 0.003389 module 0.003388 altogether 0.003386 routine 0.003384 everywhere 0.003383 respectively 0.003381 statistics 0.003381 distinct 0.003380 presentation 0.003380 luck 0.003380 earnings 0.003378 prospect 0.003376 injured 0.003375 pace 0.003374 adding 0.003371 truly 0.003368 components 0.003368 transferred 0.003368 supplies 0.003366 breach 0.003366 ken 0.003359 exists 0.003359 magic 0.003358 tools 0.003351 intervention 0.003351 cottage 0.003349 prize 0.003349 feed 0.003348 scott 0.003347 resulting 0.003346 promote 0.003345 whenever 0.003345 k 0.003345 destroyed 0.003344 helpful 0.003343 crossed 0.003343 recall 0.003342 signal 0.003341 ben 0.003341 definitely 0.003340 johnson 0.003339 finds 0.003338 iraq 0.003334 winner 0.003332 fucking 0.003331 smooth 0.003331 nick 0.003331 votes 0.003329 proud 0.003327 perform 0.003327 hung 0.003326 launch 0.003325 print 0.003325 occupied 0.003325 recognized 0.003324 preferred 0.003321 solicitor 0.003320 blame 0.003319 host 0.003319 neighbours 0.003317 ban 0.003314 helps 0.003314 alliance 0.003314 mad 0.003313 repeat 0.003312 interior 0.003311 register 0.003311 survival 0.003309 mp 0.003308 primarily 0.003305 concluded 0.003304 compensation 0.003303 hat 0.003300 blind 0.003299 territory 0.003299 experiment 0.003298 pressed 0.003295 sam 0.003293 ownership 0.003292 symptoms 0.003291 restricted 0.003291 discussions 0.003290 achievement 0.003289 entrance 0.003284 guess 0.003283 printed 0.003283 load 0.003280 basically 0.003279 poverty 0.003278 visits 0.003275 extend 0.003274 hills 0.003273 realized 0.003273 delivered 0.003273 suggestion 0.003271 consistent 0.003271 hanging 0.003270 shareholders 0.003267 degrees 0.003264 fewer 0.003263 anxious 0.003263 painted 0.003262 phrase 0.003260 hate 0.003259 ease 0.003259 shadow 0.003257 inevitably 0.003255 loose 0.003255 employee 0.003255 falls 0.003254 nervous 0.003254 assumption 0.003254 excuse 0.003250 constitutional 0.003248 concentrate 0.003248 threw 0.003244 vehicles 0.003243 profession 0.003240 neil 0.003235 killing 0.003233 alleged 0.003233 perspective 0.003232 aunt 0.003228 festival 0.003226 conscious 0.003225 constantly 0.003224 jean 0.003223 dominant 0.003223 crew 0.003222 reasonably 0.003221 savings 0.003216 complicated 0.003216 guard 0.003214 surrounding 0.003213 bills 0.003213 chances 0.003211 characteristic 0.003209 asia 0.003208 strategic 0.003207 supporting 0.003207 depth 0.003206 thrown 0.003205 awful 0.003203 touched 0.003202 sheep 0.003202 boots 0.003198 guarantee 0.003198 ruth 0.003197 musical 0.003193 select 0.003191 alcohol 0.003190 bomb 0.003190 abandoned 0.003189 contents 0.003187 sand 0.003186 stomach 0.003184 conducted 0.003184 intellectual 0.003184 soul 0.003184 slight 0.003183 holy 0.003183 sounded 0.003181 prepare 0.003180 moscow 0.003178 ears 0.003178 amounts 0.003174 employer 0.003174 sorts 0.003172 reducing 0.003171 theoretical 0.003171 wore 0.003168 outstanding 0.003167 draft 0.003165 vary 0.003165 jacket 0.003163 norman 0.003161 wishes 0.003161 visiting 0.003156 clinical 0.003154 publishing 0.003153 prisoners 0.003152 salt 0.003150 organizations 0.003149 files 0.003149 stepped 0.003146 plaintiff 0.003143 harm 0.003142 joseph 0.003142 cried 0.003141 servants 0.003138 dismissed 0.003137 suspect 0.003136 experiments 0.003133 moon 0.003132 matches 0.003129 patrick 0.003128 shouted 0.003128 spare 0.003127 eighteen 0.003127 junior 0.003125 fought 0.003121 calm 0.003121 storage 0.003120 faster 0.003120 impressive 0.003117 reaching 0.003116 honest 0.003114 glanced 0.003112 joy 0.003110 nursing 0.003110 princess 0.003108 gift 0.003108 enthusiasm 0.003104 smiling 0.003101 resulted 0.003100 articles 0.003100 advantages 0.003100 extraordinary 0.003093 visible 0.003093 residential 0.003093 smoking 0.003091 inspector 0.003091 tables 0.003090 tendency 0.003089 seventy 0.003085 hospitals 0.003085 mechanism 0.003084 engaged 0.003084 handling 0.003084 exception 0.003084 clock 0.003083 poetry 0.003082 percent 0.003081 accurate 0.003081 rocks 0.003078 pride 0.003077 locked 0.003077 approached 0.003076 victims 0.003076 staying 0.003075 holder 0.003075 distant 0.003073 airport 0.003072 furthermore 0.003070 tie 0.003069 wing 0.003068 considerably 0.003066 fee 0.003065 origin 0.003065 canada 0.003065 arrive 0.003064 staring 0.003063 personality 0.003062 retired 0.003058 fees 0.003057 bond 0.003053 peak 0.003052 chamber 0.003051 attacked 0.003051 holidays 0.003051 steady 0.003049 puts 0.003049 turnover 0.003048 observation 0.003044 ultimately 0.003043 underlying 0.003043 gentle 0.003043 precise 0.003043 encouraging 0.003037 leisure 0.003035 evil 0.003033 device 0.003031 varied 0.003031 minds 0.003031 economics 0.003030 mortgage 0.003028 ear 0.003026 ok 0.003022 confusion 0.003022 secondly 0.003021 bearing 0.003019 remote 0.003017 certificate 0.003017 illustrated 0.003017 tennis 0.003017 instruments 0.003016 satisfaction 0.003016 sentences 0.003015 steam 0.003013 ratio 0.003012 possession 0.003007 summary 0.003007 responsibilities 0.003006 bristol 0.003004 stolen 0.003004 poll 0.003004 upstairs 0.003003 le 0.003002 songs 0.003001 heading 0.003001 attracted 0.002999 implementation 0.002998 chose 0.002998 headed 0.002997 keith 0.002995 protein 0.002993 unity 0.002993 burning 0.002992 arthur 0.002992 scored 0.002991 column 0.002991 architecture 0.002990 dying 0.002990 collect 0.002990 contributions 0.002988 pitch 0.002987 delighted 0.002986 approximately 0.002985 disaster 0.002985 discovery 0.002984 variable 0.002982 monetary 0.002981 addressed 0.002980 mountains 0.002980 concentrated 0.002979 boards 0.002978 singing 0.002977 silly 0.002976 childhood 0.002975 likes 0.002975 taxes 0.002972 covers 0.002972 teach 0.002970 kong 0.002970 serving 0.002969 bet 0.002969 string 0.002966 climate 0.002964 percentage 0.002964 americans 0.002963 iv 0.002962 villages 0.002961 isolated 0.002960 designs 0.002960 hong 0.002959 reforms 0.002958 waves 0.002954 cake 0.002954 andy 0.002954 readily 0.002951 dust 0.002951 evaluation 0.002949 shirt 0.002948 samples 0.002948 frequency 0.002947 charlie 0.002945 lists 0.002943 nights 0.002943 judges 0.002941 pacific 0.002938 dirty 0.002938 deliberately 0.002937 relation 0.002935 determination 0.002934 anna 0.002932 automatically 0.002932 qualified 0.002931 medicine 0.002930 violent 0.002930 applies 0.002929 dominated 0.002929 psychological 0.002929 distributed 0.002928 unemployed 0.002926 giant 0.002923 ships 0.002921 roles 0.002919 inevitable 0.002915 tied 0.002915 wan 0.002915 gathered 0.002914 swimming 0.002911 latin 0.002904 holds 0.002903 honour 0.002902 headquarters 0.002902 manufacturers 0.002899 sensible 0.002895 berlin 0.002890 restrictions 0.002889 tended 0.002889 rear 0.002888 tested 0.002888 sending 0.002888 grateful 0.002883 strategies 0.002880 expense 0.002879 mode 0.002877 boxes 0.002874 monitoring 0.002874 closing 0.002872 loans 0.002870 structural 0.002870 dozen 0.002869 newly 0.002866 demonstrated 0.002865 founded 0.002865 variation 0.002864 lucy 0.002862 rely 0.002862 investors 0.002861 infection 0.002860 helen 0.002860 cleared 0.002859 survived 0.002859 undertaken 0.002857 fourteen 0.002856 committees 0.002856 frightened 0.002855 photograph 0.002851 complaints 0.002851 participation 0.002850 camera 0.002850 pleasant 0.002849 agreements 0.002849 buyer 0.002849 critics 0.002847 exposed 0.002846 concrete 0.002846 guitar 0.002846 laboratory 0.002843 proof 0.002842 landlord 0.002841 rang 0.002839 overcome 0.002836 knife 0.002836 dates 0.002835 export 0.002834 orange 0.002834 tail 0.002826 mix 0.002826 modules 0.002825 reserve 0.002823 hunt 0.002823 pressures 0.002822 millions 0.002820 surgery 0.002819 concepts 0.002818 universities 0.002818 marry 0.002818 maggie 0.002818 burden 0.002816 newcastle 0.002815 assess 0.002815 sixteen 0.002815 cooking 0.002811 dave 0.002811 penalty 0.002809 reveal 0.002807 holes 0.002806 integrated 0.002804 contribute 0.002804 quoted 0.002802 estimate 0.002801 thereby 0.002799 mission 0.002798 acceptance 0.002797 wake 0.002797 anxiety 0.002796 wanting 0.002795 apple 0.002793 formula 0.002791 imagination 0.002791 howard 0.002791 deaf 0.002791 personally 0.002790 rid 0.002790 calculated 0.002789 relatives 0.002789 returns 0.002788 washing 0.002788 targets 0.002787 continuous 0.002787 appreciate 0.002785 describes 0.002783 circuit 0.002782 universe 0.002781 stronger 0.002780 laughing 0.002778 responses 0.002776 excitement 0.002776 arab 0.002776 opposed 0.002776 kiss 0.002775 zealand 0.002774 native 0.002773 replacement 0.002773 disk 0.002773 collective 0.002770 instrument 0.002770 sergeant 0.002770 memories 0.002770 striking 0.002769 expertise 0.002766 checked 0.002765 component 0.002762 solicitors 0.002761 trend 0.002761 resource 0.002761 treasury 0.002760 wheel 0.002760 darling 0.002757 tickets 0.002756 confirm 0.002755 acquisition 0.002755 whispered 0.002754 occasional 0.002753 universal 0.002753 ford 0.002751 paragraph 0.002751 glance 0.002751 kent 0.002750 slipped 0.002750 besides 0.002749 evident 0.002745 protected 0.002744 desperate 0.002744 writes 0.002743 relate 0.002738 psychology 0.002737 drivers 0.002735 burst 0.002735 surprisingly 0.002735 matthew 0.002731 curve 0.002729 rival 0.002727 improving 0.002726 risks 0.002725 cheese 0.002724 gordon 0.002724 sleeping 0.002723 uniform 0.002722 u 0.002720 preparing 0.002720 aha 0.002718 keeps 0.002717 succeeded 0.002716 consciousness 0.002715 knees 0.002714 mummy 0.002713 lock 0.002710 roger 0.002710 stream 0.002707 waters 0.002707 damaged 0.002707 regulation 0.002706 mps 0.002702 collapse 0.002702 cattle 0.002702 victoria 0.002701 binding 0.002701 platform 0.002699 purely 0.002698 consists 0.002698 leather 0.002698 recommendations 0.002697 tenant 0.002697 settle 0.002696 influenced 0.002696 innocent 0.002695 dreams 0.002694 alexander 0.002694 passengers 0.002693 strain 0.002692 solutions 0.002692 commonly 0.002692 injuries 0.002690 retained 0.002690 zone 0.002686 australian 0.002685 sufficiently 0.002685 laura 0.002684 squad 0.002680 sixth 0.002679 retain 0.002678 terry 0.002678 attract 0.002677 layer 0.002676 stretch 0.002674 flesh 0.002674 generated 0.002673 relaxed 0.002673 variations 0.002672 existed 0.002670 displayed 0.002670 engineers 0.002669 publicity 0.002669 constructed 0.002669 edition 0.002668 summit 0.002668 assist 0.002666 devoted 0.002663 riding 0.002663 nurses 0.002661 located 0.002661 san 0.002661 researchers 0.002660 tip 0.002658 roots 0.002657 hers 0.002657 wondering 0.002654 pipe 0.002654 francis 0.002654 backed 0.002652 jump 0.002652 buried 0.002649 hide 0.002648 suggesting 0.002648 egg 0.002647 produces 0.002644 consequently 0.002642 witness 0.002642 authors 0.002641 pulling 0.002641 estimates 0.002641 bitter 0.002638 crash 0.002638 victorian 0.002637 distinguished 0.002636 confused 0.002636 judgement 0.002634 councillor 0.002633 taxation 0.002630 ultimate 0.002630 dancing 0.002630 bathroom 0.002628 awarded 0.002628 qualities 0.002626 glasses 0.002626 creative 0.002625 weekly 0.002625 germans 0.002625 wash 0.002624 packed 0.002623 medieval 0.002622 assumptions 0.002618 landing 0.002615 liquid 0.002614 gross 0.002612 organized 0.002612 adopt 0.002612 coloured 0.002610 schedule 0.002610 counter 0.002610 presents 0.002610 evolution 0.002609 premier 0.002609 deals 0.002609 colleges 0.002608 loud 0.002607 advised 0.002606 sharply 0.002606 angle 0.002606 multiple 0.002604 lit 0.002604 softly 0.002603 raw 0.002603 decades 0.002602 linguistic 0.002601 ignore 0.002601 completion 0.002600 grace 0.002600 colin 0.002598 sophisticated 0.002597 regarding 0.002597 judicial 0.002597 tongue 0.002595 asleep 0.002595 alice 0.002594 sharing 0.002594 poem 0.002593 paused 0.002592 carbon 0.002590 durham 0.002590 equation 0.002589 outer 0.002589 explains 0.002588 possibilities 0.002587 nhs 0.002586 deaths 0.002584 frequent 0.002581 vulnerable 0.002581 interviews 0.002579 babies 0.002577 topic 0.002576 illegal 0.002576 catalogue 0.002576 excluded 0.002576 tends 0.002575 cathedral 0.002571 grants 0.002569 refuse 0.002568 voices 0.002568 cleaning 0.002568 potentially 0.002567 impressed 0.002567 machinery 0.002567 cotton 0.002566 dawn 0.002565 nicholas 0.002563 bars 0.002563 define 0.002563 bowl 0.002562 consultation 0.002562 surrounded 0.002561 coalition 0.002561 harder 0.002561 revolutionary 0.002560 integration 0.002559 sole 0.002559 attempting 0.002559 reception 0.002558 bone 0.002558 compare 0.002558 wings 0.002555 demanding 0.002554 bother 0.002554 improvements 0.002554 perceived 0.002554 heaven 0.002553 studying 0.002553 ulster 0.002553 climbed 0.002549 grammar 0.002549 ruled 0.002549 jumped 0.002548 imperial 0.002545 persuade 0.002543 gary 0.002540 stores 0.002540 manual 0.002538 conclusions 0.002537 carpet 0.002537 jimmy 0.002536 undoubtedly 0.002536 boundaries 0.002535 beliefs 0.002535 rush 0.002535 confined 0.002534 tunnel 0.002533 breathing 0.002532 permitted 0.002531 informal 0.002529 demonstrate 0.002528 douglas 0.002527 separated 0.002524 stressed 0.002523 flexible 0.002523 bent 0.002518 saving 0.002517 inches 0.002517 announcement 0.002516 meals 0.002516 sue 0.002515 lawyers 0.002513 guest 0.002513 ending 0.002512 sheets 0.002507 bare 0.002507 dutch 0.002506 vat 0.002505 quantity 0.002502 pushing 0.002501 reminded 0.002498 crossing 0.002497 awards 0.002497 journal 0.002496 storm 0.002494 notably 0.002494 venture 0.002494 shrugged 0.002493 anthony 0.002493 petrol 0.002491 hotels 0.002488 investigate 0.002487 flower 0.002486 nowhere 0.002485 considerations 0.002484 destruction 0.002482 clever 0.002480 versions 0.002480 experimental 0.002479 offences 0.002479 kate 0.002478 suspended 0.002478 justified 0.002477 gaze 0.002476 agenda 0.002475 engineer 0.002475 reporting 0.002474 listened 0.002474 texts 0.002472 transition 0.002471 hunting 0.002469 intense 0.002469 keys 0.002469 automatic 0.002469 deficit 0.002469 plates 0.002469 spiritual 0.002469 flew 0.002468 reverse 0.002467 indication 0.002467 rational 0.002465 slip 0.002465 knocked 0.002463 earl 0.002461 professionals 0.002461 opera 0.002460 alarm 0.002459 charter 0.002458 kevin 0.002458 indicates 0.002456 composition 0.002455 governor 0.002455 interaction 0.002455 ceiling 0.002454 conservatives 0.002453 drinks 0.002452 guidelines 0.002452 roughly 0.002450 oral 0.002450 fox 0.002450 qualifications 0.002447 ethnic 0.002447 argues 0.002446 kick 0.002445 dublin 0.002444 converted 0.002444 gains 0.002443 capitalist 0.002442 pupil 0.002442 generous 0.002442 cheaper 0.002441 underground 0.002440 inadequate 0.002440 rivers 0.002440 rescue 0.002440 representing 0.002440 prominent 0.002439 passion 0.002438 welcomed 0.002438 instruction 0.002438 logical 0.002436 exposure 0.002434 departure 0.002434 historic 0.002432 drawings 0.002432 beaten 0.002431 accordingly 0.002427 feeding 0.002426 repair 0.002426 modest 0.002424 nearest 0.002423 lessons 0.002423 farming 0.002423 letting 0.002420 lloyd 0.002420 sectors 0.002420 drunk 0.002420 grade 0.002419 hero 0.002419 diana 0.002418 spell 0.002417 exact 0.002417 barely 0.002417 exports 0.002416 essex 0.002416 logic 0.002415 pope 0.002415 fancy 0.002415 acute 0.002414 acted 0.002413 discourse 0.002412 voted 0.002411 electrical 0.002411 consumers 0.002410 jury 0.002408 cigarette 0.002406 trains 0.002406 valid 0.002405 zero 0.002404 wherever 0.002404 format 0.002403 christopher 0.002402 rank 0.002402 transaction 0.002401 profile 0.002401 contributed 0.002400 bands 0.002400 leaned 0.002398 lesson 0.002397 walker 0.002396 rubbish 0.002396 farmer 0.002394 admission 0.002394 pointing 0.002393 trousers 0.002393 timber 0.002393 joining 0.002392 habit 0.002391 arrange 0.002390 oliver 0.002390 assault 0.002388 failing 0.002387 wire 0.002387 audit 0.002385 deny 0.002383 bones 0.002383 punishment 0.002382 mayor 0.002382 silk 0.002381 damages 0.002380 mortality 0.002380 pc 0.002378 occupation 0.002377 remarks 0.002376 mystery 0.002374 re 0.002374 urged 0.002373 explore 0.002372 claiming 0.002372 customs 0.002372 entering 0.002371 mess 0.002368 mutual 0.002367 superior 0.002367 province 0.002367 wholly 0.002366 reliable 0.002366 joke 0.002366 depression 0.002365 classroom 0.002365 fleet 0.002364 assured 0.002363 liable 0.002361 implied 0.002360 climb 0.002359 shell 0.002358 humour 0.002358 realize 0.002357 facility 0.002357 trace 0.002357 gene 0.002356 blocks 0.002354 registration 0.002352 guardian 0.002351 males 0.002350 laughter 0.002348 era 0.002348 disappointed 0.002347 albert 0.002347 gates 0.002344 posts 0.002343 baker 0.002342 rachel 0.002342 shooting 0.002342 travelled 0.002340 atlantic 0.002340 identification 0.002339 arising 0.002337 owen 0.002337 beds 0.002336 abstract 0.002336 prospects 0.002335 assessed 0.002334 poet 0.002333 coverage 0.002332 jewish 0.002332 adds 0.002331 pregnant 0.002331 divisions 0.002330 billy 0.002330 avoided 0.002330 lease 0.002327 formally 0.002327 worldwide 0.002326 arrest 0.002326 monitor 0.002325 obligation 0.002325 egypt 0.002323 miller 0.002322 root 0.002320 curious 0.002320 reserves 0.002319 submitted 0.002319 participants 0.002319 lawyer 0.002318 voting 0.002318 wise 0.002318 directions 0.002318 fate 0.002318 tool 0.002317 resignation 0.002315 resigned 0.002315 bags 0.002313 daddy 0.002313 devices 0.002313 substance 0.002312 phenomenon 0.002311 speakers 0.002311 climbing 0.002311 landed 0.002309 pen 0.002307 responded 0.002305 enjoying 0.002305 cloud 0.002304 uncertainty 0.002303 visitor 0.002301 recovered 0.002300 california 0.002298 clothing 0.002297 perception 0.002297 ticket 0.002294 identical 0.002293 satisfactory 0.002293 banking 0.002292 fed 0.002292 learnt 0.002291 grave 0.002290 preference 0.002289 federation 0.002289 maria 0.002289 thirteen 0.002286 bulk 0.002283 desert 0.002283 westminster 0.002282 chemicals 0.002281 stored 0.002281 deliver 0.002280 album 0.002279 marginal 0.002279 variables 0.002278 namely 0.002277 distinctive 0.002277 resort 0.002277 canal 0.002276 electoral 0.002275 urgent 0.002273 wound 0.002273 chapel 0.002272 searching 0.002272 allowance 0.002271 des 0.002270 lawrence 0.002269 reflects 0.002266 turkey 0.002266 libraries 0.002265 observations 0.002265 heating 0.002265 dare 0.002264 sing 0.002264 sympathy 0.002264 titles 0.002262 funeral 0.002262 corresponding 0.002262 sheffield 0.002261 belt 0.002260 stability 0.002257 shed 0.002256 sessions 0.002256 nottingham 0.002253 pat 0.002252 expecting 0.002251 contacts 0.002249 succeed 0.002249 typically 0.002247 presidential 0.002246 conversion 0.002246 woods 0.002246 disposal 0.002245 clare 0.002244 interpreted 0.002243 generations 0.002243 kelly 0.002243 fred 0.002242 rolling 0.002242 butter 0.002241 policeman 0.002241 maintaining 0.002241 transactions 0.002241 proceed 0.002240 emperor 0.002239 restored 0.002238 fabric 0.002238 folk 0.002238 controversial 0.002238 lands 0.002238 resolved 0.002237 robin 0.002237 fortune 0.002237 horror 0.002237 marine 0.002236 stake 0.002236 tackle 0.002236 louis 0.002235 everyday 0.002235 viewed 0.002234 priest 0.002233 routes 0.002232 cap 0.002230 washed 0.002230 ray 0.002229 removal 0.002227 organic 0.002227 pairs 0.002226 trials 0.002225 enables 0.002225 acknowledged 0.002224 stretched 0.002223 magistrates 0.002223 yield 0.002223 picking 0.002222 swindon 0.002222 crystal 0.002221 caring 0.002220 statistical 0.002220 resident 0.002220 connections 0.002220 sussex 0.002219 stuart 0.002219 breeding 0.002219 temple 0.002218 plot 0.002218 establishing 0.002218 courage 0.002218 recognize 0.002217 thoroughly 0.002217 errors 0.002216 desirable 0.002215 trends 0.002213 suspected 0.002213 reckon 0.002212 ideology 0.002211 prosecution 0.002211 belong 0.002211 pot 0.002210 exclusive 0.002209 tale 0.002209 worn 0.002209 retail 0.002209 compromise 0.002208 prayer 0.002208 corridor 0.002208 doubts 0.002205 instant 0.002204 talent 0.002204 sheer 0.002202 chicken 0.002200 sighed 0.002200 surplus 0.002200 unexpected 0.002200 suggestions 0.002200 villa 0.002199 persuaded 0.002199 russell 0.002199 swept 0.002198 foods 0.002197 sciences 0.002197 addition 0.002196 tap 0.002196 rolled 0.002194 superb 0.002194 craft 0.002193 operated 0.002190 poland 0.002190 thrust 0.002189 references 0.002188 lighting 0.002188 gastric 0.002188 daughters 0.002188 scenes 0.002186 hugh 0.002185 bernard 0.002185 rape 0.002185 hardware 0.002184 traditionally 0.002184 shame 0.002183 switched 0.002183 divorce 0.002182 intend 0.002182 pressing 0.002178 genes 0.002178 strict 0.002177 effectiveness 0.002177 concentrations 0.002177 installed 0.002177 defend 0.002177 creatures 0.002176 cm 0.002174 chocolate 0.002173 panic 0.002172 stewart 0.002172 emerge 0.002171 obliged 0.002170 susan 0.002169 boost 0.002168 reactions 0.002165 anniversary 0.002164 justify 0.002163 sustained 0.002163 sisters 0.002163 davies 0.002163 escaped 0.002163 polish 0.002162 discount 0.002161 garage 0.002160 tissue 0.002160 romantic 0.002159 knee 0.002159 conviction 0.002158 damn 0.002157 label 0.002156 clarke 0.002156 naked 0.002156 declined 0.002156 composed 0.002155 advise 0.002155 signals 0.002155 scientist 0.002152 warmth 0.002152 asset 0.002152 associations 0.002151 boundary 0.002150 muscles 0.002150 humans 0.002150 shocked 0.002150 computing 0.002149 withdrawal 0.002149 declaration 0.002145 actor 0.002145 constable 0.002144 graphics 0.002143 reluctant 0.002143 winners 0.002141 eighteenth 0.002140 chemistry 0.002139 magnificent 0.002135 navy 0.002135 convenient 0.002133 jackson 0.002133 tin 0.002132 chairs 0.002132 friendship 0.002131 destroy 0.002130 recover 0.002130 dollar 0.002129 lowest 0.002129 pity 0.002128 ocean 0.002128 correspondent 0.002128 harbour 0.002125 backing 0.002125 incorporated 0.002124 reflection 0.002124 deposit 0.002123 tourist 0.002123 gesture 0.002120 deeper 0.002120 curtains 0.002120 earned 0.002119 rows 0.002119 fired 0.002117 diary 0.002116 practitioners 0.002116 discussing 0.002116 entertainment 0.002115 monthly 0.002115 expenses 0.002113 deciding 0.002113 educated 0.002112 mechanisms 0.002112 uncertain 0.002112 mining 0.002111 dean 0.002111 democrats 0.002111 favoured 0.002110 ad 0.002110 mounted 0.002110 styles 0.002110 tracks 0.002110 artificial 0.002109 tries 0.002109 discrimination 0.002108 delight 0.002108 diplomatic 0.002106 bench 0.002106 guns 0.002104 councillors 0.002104 inspired 0.002103 microsoft 0.002103 acquire 0.002103 salary 0.002102 tremendous 0.002099 mechanical 0.002098 resist 0.002098 physically 0.002098 estates 0.002098 commented 0.002098 distinguish 0.002097 literally 0.002097 crying 0.002097 wildlife 0.002097 balanced 0.002097 institutional 0.002097 iran 0.002096 tories 0.002095 formerly 0.002095 priorities 0.002094 damp 0.002093 excess 0.002093 gender 0.002092 strictly 0.002092 threatening 0.002092 passes 0.002091 shaking 0.002091 publications 0.002090 passenger 0.002090 shapes 0.002089 boats 0.002089 cheque 0.002088 chapters 0.002088 clinton 0.002086 weapon 0.002085 asks 0.002085 carriage 0.002085 generate 0.002085 earn 0.002084 earliest 0.002083 approaching 0.002083 messages 0.002083 biological 0.002082 reward 0.002082 applying 0.002081 implies 0.002081 mentally 0.002081 females 0.002081 emily 0.002080 filling 0.002080 functional 0.002079 bible 0.002079 derek 0.002078 knock 0.002078 accidents 0.002078 straightforward 0.002078 tube 0.002077 flexibility 0.002076 heritage 0.002075 wright 0.002075 mathematics 0.002074 fool 0.002073 specially 0.002073 brush 0.002073 inspection 0.002073 lad 0.002072 sociology 0.002071 equity 0.002071 phil 0.002071 cloth 0.002070 murmured 0.002070 desperately 0.002070 feared 0.002069 satisfy 0.002068 piano 0.002068 fiction 0.002068 outlined 0.002068 frozen 0.002067 imports 0.002067 strip 0.002067 exercises 0.002067 altered 0.002065 overnight 0.002064 colonel 0.002063 whereby 0.002063 commander 0.002062 bonds 0.002061 secured 0.002061 pursue 0.002060 dedicated 0.002060 digital 0.002060 controlling 0.002059 voters 0.002059 refers 0.002059 forests 0.002058 tenants 0.002057 situated 0.002057 productivity 0.002057 lightly 0.002056 pause 0.002056 ann 0.002053 surveys 0.002053 clerk 0.002053 restoration 0.002053 harris 0.002052 swing 0.002052 deposits 0.002050 cinema 0.002048 spectacular 0.002047 capitalism 0.002043 controversy 0.002043 penny 0.002043 marx 0.002043 abbey 0.002043 asian 0.002042 enhanced 0.002042 ensuring 0.002039 wives 0.002038 solve 0.002036 seller 0.002035 constraints 0.002035 unfair 0.002034 aggressive 0.002034 champagne 0.002032 availability 0.002032 breed 0.002031 closure 0.002031 invasion 0.002031 compete 0.002031 interface 0.002031 painful 0.002030 sadly 0.002029 topics 0.002029 mate 0.002027 sailing 0.002025 eric 0.002025 emotions 0.002025 korea 0.002024 ace 0.002023 mud 0.002021 securities 0.002021 cheek 0.002021 mature 0.002019 joan 0.002019 downstairs 0.002016 snapped 0.002015 borough 0.002014 correctly 0.002014 shouting 0.002013 ross 0.002013 refugees 0.002013 moore 0.002013 manor 0.002012 unhappy 0.002012 alter 0.002012 spirits 0.002011 amazing 0.002010 obligations 0.002010 networks 0.002009 excited 0.002009 initiatives 0.002008 interim 0.002008 cable 0.002007 grip 0.002005 printing 0.002004 therapy 0.002003 pensions 0.002003 hopefully 0.002002 oxygen 0.002001 eliot 0.002000 gathering 0.002000 legislative 0.002000 discretion 0.001998 invitation 0.001997 assuming 0.001997 imagined 0.001996 describing 0.001995 alex 0.001994 pan 0.001994 intelligent 0.001994 impose 0.001993 explicit 0.001993 sink 0.001992 kings 0.001992 guaranteed 0.001992 q 0.001991 designer 0.001991 jurisdiction 0.001990 intent 0.001990 bass 0.001989 gear 0.001989 barry 0.001989 underneath 0.001989 quantities 0.001989 raf 0.001988 taxi 0.001988 shit 0.001987 struggling 0.001985 allocated 0.001985 copper 0.001983 constituency 0.001983 virtue 0.001983 mouse 0.001982 complained 0.001982 inch 0.001981 lecture 0.001981 flats 0.001981 midnight 0.001980 dc 0.001978 engines 0.001978 railways 0.001977 caroline 0.001976 ridiculous 0.001973 circular 0.001973 masters 0.001973 outline 0.001973 debts 0.001972 beating 0.001972 comparable 0.001972 wars 0.001971 gay 0.001970 concert 0.001969 successive 0.001969 virgin 0.001968 mills 0.001968 smart 0.001967 refusal 0.001967 leicester 0.001964 creature 0.001964 economies 0.001963 isolation 0.001963 succession 0.001963 continental 0.001963 reign 0.001963 fails 0.001962 scores 0.001961 evans 0.001961 hungry 0.001960 choosing 0.001960 terminal 0.001959 physics 0.001959 tonnes 0.001959 allied 0.001959 pardon 0.001959 expanded 0.001958 random 0.001958 realistic 0.001957 brick 0.001957 walter 0.001957 shakespeare 0.001956 volunteers 0.001956 minus 0.001955 demonstration 0.001955 chips 0.001955 banned 0.001954 pile 0.001954 separation 0.001953 walks 0.001953 recalled 0.001953 foster 0.001952 decent 0.001952 conception 0.001952 substitute 0.001952 primitive 0.001951 twin 0.001951 triumph 0.001951 unnecessary 0.001950 focused 0.001950 explaining 0.001949 prevented 0.001948 dictionary 0.001948 twentieth 0.001947 achieving 0.001947 kit 0.001947 channels 0.001946 origins 0.001944 forever 0.001942 ma 0.001939 influential 0.001938 thames 0.001937 merchant 0.001937 terrace 0.001937 scheduled 0.001936 duration 0.001936 producers 0.001936 chip 0.001934 eg 0.001933 midlands 0.001933 farms 0.001932 allocation 0.001932 vietnam 0.001930 lifetime 0.001929 predicted 0.001929 blank 0.001928 diseases 0.001927 counts 0.001927 bottles 0.001927 brave 0.001926 genetic 0.001926 complaint 0.001924 cardiff 0.001924 malcolm 0.001923 marvellous 0.001923 morgan 0.001922 vertical 0.001922 enabled 0.001921 bull 0.001921 assurance 0.001920 dull 0.001919 hated 0.001918 jews 0.001917 essence 0.001916 autonomy 0.001916 questioned 0.001916 requiring 0.001916 rises 0.001916 differ 0.001916 junction 0.001914 dried 0.001913 consensus 0.001913 instance 0.001911 marie 0.001911 purchaser 0.001910 vegetables 0.001910 carries 0.001910 scots 0.001909 shore 0.001909 workshop 0.001909 subtle 0.001908 skilled 0.001908 necessity 0.001908 republican 0.001907 forming 0.001907 attendance 0.001906 don 0.001906 sooner 0.001904 producer 0.001904 soldier 0.001904 amendment 0.001904 recommend 0.001904 cousin 0.001903 morris 0.001903 planet 0.001903 elegant 0.001903 pit 0.001903 nt 0.001902 grain 0.001901 lesser 0.001901 limitations 0.001900 backwards 0.001900 locally 0.001899 tragedy 0.001899 bike 0.001899 modified 0.001898 arguing 0.001896 collections 0.001896 crack 0.001896 swung 0.001895 analysed 0.001895 quarters 0.001894 liberation 0.001894 precious 0.001894 allen 0.001894 referring 0.001893 luxury 0.001892 movie 0.001891 seventeen 0.001891 officially 0.001891 journalists 0.001891 fraud 0.001891 nasty 0.001890 dealer 0.001888 sums 0.001888 intensive 0.001888 easter 0.001888 poured 0.001887 symbol 0.001887 casual 0.001884 suppliers 0.001884 shorter 0.001884 tropical 0.001883 kissed 0.001883 crazy 0.001882 forum 0.001882 crimes 0.001882 relax 0.001882 nursery 0.001881 miners 0.001880 manufacturer 0.001879 halt 0.001879 happily 0.001878 roy 0.001877 dressing 0.001877 attending 0.001876 timing 0.001876 preliminary 0.001876 partial 0.001876 muscle 0.001875 entries 0.001875 wool 0.001875 households 0.001874 shots 0.001873 servant 0.001873 pakistan 0.001873 suicide 0.001873 arises 0.001872 varying 0.001872 preserved 0.001872 progressive 0.001871 defeated 0.001871 neighbour 0.001869 risen 0.001868 resolve 0.001867 simultaneously 0.001867 beings 0.001867 divide 0.001866 throwing 0.001864 accepting 0.001863 expand 0.001863 introducing 0.001863 broadcasting 0.001863 tide 0.001862 fitting 0.001862 guilt 0.001862 governing 0.001861 placing 0.001861 ceremony 0.001859 subsidiary 0.001858 enquiry 0.001858 opinions 0.001858 separately 0.001857 jenny 0.001857 bye 0.001857 slept 0.001857 lover 0.001856 severely 0.001855 breaks 0.001855 finest 0.001855 choices 0.001854 grinned 0.001854 christianity 0.001853 hey 0.001851 programs 0.001851 ira 0.001851 detective 0.001850 allegations 0.001849 justification 0.001849 appendix 0.001848 ate 0.001848 commonwealth 0.001847 districts 0.001846 delicate 0.001846 lonely 0.001844 catering 0.001844 checking 0.001843 ya 0.001843 dealers 0.001843 advisers 0.001842 affecting 0.001842 occupational 0.001841 behave 0.001840 clark 0.001839 youngsters 0.001839 dynamic 0.001839 undertake 0.001838 weakness 0.001838 captured 0.001838 complexity 0.001838 implemented 0.001838 excessive 0.001838 iraqi 0.001837 enterprises 0.001837 hitler 0.001836 dining 0.001836 exceptional 0.001836 greece 0.001835 hurry 0.001835 stance 0.001835 sizes 0.001834 remind 0.001834 serves 0.001834 edges 0.001833 remarked 0.001833 employ 0.001833 encountered 0.001831 participate 0.001830 mount 0.001830 directive 0.001830 combine 0.001829 portrait 0.001828 relieved 0.001828 safely 0.001828 kid 0.001827 gorbachev 0.001827 alternatively 0.001826 strikes 0.001825 delayed 0.001825 shoot 0.001823 residence 0.001822 devil 0.001822 feminist 0.001821 displays 0.001821 fan 0.001821 tender 0.001820 clearing 0.001820 neat 0.001819 magazines 0.001818 burn 0.001818 whisky 0.001818 pond 0.001817 forth 0.001817 theft 0.001817 ranks 0.001816 transformation 0.001816 celebrated 0.001816 incidence 0.001815 radiation 0.001815 sterling 0.001814 opens 0.001813 wrapped 0.001813 boring 0.001812 firstly 0.001811 doctrine 0.001810 collapsed 0.001810 fence 0.001809 ours 0.001809 inland 0.001807 encounter 0.001806 les 0.001806 lancashire 0.001805 possessed 0.001802 contest 0.001800 substantially 0.001800 ussr 0.001800 premium 0.001800 innovation 0.001799 diagnosis 0.001798 supports 0.001798 gifts 0.001798 dialogue 0.001797 speculation 0.001796 hire 0.001796 remainder 0.001795 stocks 0.001795 seized 0.001795 rice 0.001794 judged 0.001793 happiness 0.001793 da 0.001793 preserve 0.001793 supervision 0.001792 exclusively 0.001792 peasants 0.001791 chronic 0.001791 benjamin 0.001791 geoffrey 0.001791 chart 0.001791 tightly 0.001790 compulsory 0.001789 politically 0.001789 ye 0.001789 accuracy 0.001789 trap 0.001787 bruce 0.001787 infant 0.001787 splendid 0.001787 coup 0.001786 cleveland 0.001786 brazil 0.001785 ambulance 0.001785 narrative 0.001783 investigations 0.001783 mobile 0.001782 button 0.001782 systematic 0.001782 manufacture 0.001782 purchased 0.001781 eaten 0.001781 wounded 0.001780 singer 0.001779 boot 0.001779 careers 0.001779 collecting 0.001779 wheels 0.001778 relevance 0.001778 patch 0.001778 influences 0.001778 senses 0.001775 ms 0.001775 liz 0.001774 harriet 0.001774 withdrawn 0.001774 barbara 0.001774 faint 0.001773 handsome 0.001771 glory 0.001770 stopping 0.001770 competing 0.001770 horrible 0.001769 lamb 0.001769 steadily 0.001769 payable 0.001769 instances 0.001769 fascinating 0.001768 governors 0.001768 measurement 0.001767 metropolitan 0.001767 ideological 0.001766 alternatives 0.001765 breast 0.001765 dollars 0.001765 maps 0.001763 signing 0.001763 knitting 0.001763 explosion 0.001763 scarcely 0.001762 promises 0.001762 canadian 0.001761 habits 0.001760 dragged 0.001760 desired 0.001759 obtaining 0.001758 hierarchy 0.001757 sweden 0.001757 socialism 0.001756 particles 0.001755 colleague 0.001755 enquiries 0.001755 trapped 0.001755 domain 0.001755 circles 0.001754 disturbed 0.001752 super 0.001752 restore 0.001752 crop 0.001751 printer 0.001751 prisoner 0.001751 solely 0.001750 remedy 0.001750 juice 0.001749 equilibrium 0.001749 prior 0.001748 doorway 0.001747 classification 0.001747 peaceful 0.001747 plc 0.001747 seed 0.001746 fluid 0.001746 hughes 0.001746 observer 0.001746 murdered 0.001746 transformed 0.001745 companion 0.001745 explanations 0.001745 observe 0.001745 liver 0.001741 hypothesis 0.001740 loyalty 0.001740 ed 0.001740 factories 0.001739 satellite 0.001739 operational 0.001738 buyers 0.001738 respects 0.001737 dose 0.001736 technological 0.001735 hostile 0.001734 advisory 0.001734 fortunately 0.001734 potatoes 0.001733 intervals 0.001733 seeds 0.001732 winds 0.001732 filter 0.001732 fig 0.001732 praise 0.001731 dated 0.001731 peasant 0.001731 consistently 0.001730 spotted 0.001730 geography 0.001730 insist 0.001730 monopoly 0.001729 suspicion 0.001729 stroke 0.001729 opponents 0.001729 races 0.001729 accessible 0.001728 undertaking 0.001727 cultures 0.001727 upwards 0.001726 hollywood 0.001726 contrary 0.001726 echo 0.001726 tournament 0.001726 clouds 0.001726 slide 0.001725 chaos 0.001725 permit 0.001723 owed 0.001723 catherine 0.001723 scattered 0.001722 depressed 0.001722 regret 0.001722 allies 0.001722 belonged 0.001721 traditions 0.001721 witnesses 0.001721 hiv 0.001720 prey 0.001720 intensity 0.001720 mexico 0.001719 pockets 0.001719 oak 0.001719 noble 0.001719 appeals 0.001717 themes 0.001717 dish 0.001716 nonsense 0.001716 kuwait 0.001716 disorder 0.001715 privilege 0.001715 compact 0.001714 consultant 0.001714 provincial 0.001712 performances 0.001712 prompted 0.001712 dec 0.001711 constitute 0.001711 anticipated 0.001711 instantly 0.001711 challenged 0.001711 worship 0.001710 disc 0.001708 spectrum 0.001708 surrey 0.001708 muttered 0.001707 marshall 0.001706 dangers 0.001706 competitors 0.001706 travellers 0.001705 donald 0.001705 nowadays 0.001705 cheeks 0.001704 commerce 0.001701 endless 0.001701 dimension 0.001700 boom 0.001700 bedrooms 0.001699 requested 0.001699 columns 0.001699 extending 0.001698 volumes 0.001697 geographical 0.001697 bases 0.001696 detected 0.001696 actors 0.001696 historians 0.001696 emerging 0.001695 chin 0.001695 avenue 0.001694 freely 0.001694 renewed 0.001694 equipped 0.001693 density 0.001693 steep 0.001693 forthcoming 0.001692 ranging 0.001692 rally 0.001692 jonathan 0.001691 unfortunate 0.001691 poems 0.001691 attributed 0.001691 handled 0.001690 elaborate 0.001690 karen 0.001690 determining 0.001689 suited 0.001689 kicked 0.001688 crops 0.001688 examining 0.001687 tribunal 0.001687 lily 0.001687 barrier 0.001686 broadly 0.001686 publicly 0.001686 definite 0.001686 floating 0.001685 stops 0.001685 alert 0.001684 clay 0.001682 parking 0.001682 neutral 0.001680 rubber 0.001679 essay 0.001679 rings 0.001678 christians 0.001678 pregnancy 0.001678 menu 0.001678 delegates 0.001677 wins 0.001677 acres 0.001676 sponsored 0.001676 eve 0.001676 mistakes 0.001676 restaurants 0.001675 lip 0.001675 recruitment 0.001674 invest 0.001672 mild 0.001671 identifying 0.001671 defendants 0.001671 notable 0.001671 fierce 0.001671 arose 0.001671 cats 0.001671 ties 0.001671 amateur 0.001671 indirect 0.001671 sail 0.001670 promoted 0.001668 debut 0.001667 freud 0.001666 shaped 0.001666 forgot 0.001665 receiver 0.001665 legitimate 0.001665 tune 0.001664 sensitivity 0.001664 combat 0.001662 reveals 0.001662 israeli 0.001662 rope 0.001661 illustrate 0.001661 condemned 0.001661 cliff 0.001660 campbell 0.001660 toilet 0.001659 awkward 0.001659 widow 0.001658 couples 0.001656 slid 0.001656 wisdom 0.001655 chap 0.001655 trick 0.001655 bothered 0.001655 derby 0.001654 wee 0.001654 oxfordshire 0.001654 arriving 0.001653 shake 0.001653 architect 0.001651 shower 0.001651 delegation 0.001650 artistic 0.001650 rivals 0.001650 hitherto 0.001650 absent 0.001649 adoption 0.001649 bored 0.001648 disputes 0.001648 counties 0.001648 kenneth 0.001648 charlotte 0.001647 fa 0.001647 promising 0.001646 surviving 0.001646 continent 0.001646 probability 0.001645 portfolio 0.001645 robinson 0.001644 stiff 0.001641 archbishop 0.001641 handicapped 0.001641 gather 0.001640 absorbed 0.001640 invariably 0.001639 implement 0.001639 corners 0.001639 consultants 0.001638 statute 0.001638 revised 0.001638 fitness 0.001638 holland 0.001637 funded 0.001635 performing 0.001635 brand 0.001634 suits 0.001634 shadows 0.001633 withdraw 0.001632 grasp 0.001632 gang 0.001632 replacing 0.001629 johnny 0.001628 ph 0.001628 cab 0.001628 milton 0.001628 twisted 0.001627 inherited 0.001627 technologies 0.001627 possess 0.001626 stranger 0.001625 grabbed 0.001625 prevention 0.001624 differently 0.001624 investigated 0.001622 colonial 0.001622 equality 0.001622 operator 0.001622 harsh 0.001622 borrowing 0.001622 regardless 0.001622 ambitious 0.001621 switzerland 0.001621 leaf 0.001620 finishing 0.001620 exploration 0.001619 guards 0.001619 inn 0.001619 reject 0.001619 corbett 0.001618 orchestra 0.001618 indicating 0.001618 forecast 0.001616 rushed 0.001616 magnetic 0.001616 inhabitants 0.001616 expanding 0.001616 dramatically 0.001616 pursued 0.001616 reaches 0.001615 promoting 0.001615 bore 0.001615 disappointment 0.001614 fibre 0.001614 verbal 0.001614 balls 0.001613 matched 0.001613 remembering 0.001613 flag 0.001612 vessels 0.001612 odds 0.001612 emotion 0.001611 discharge 0.001611 brass 0.001610 flood 0.001610 correspondence 0.001610 workforce 0.001609 di 0.001608 exhausted 0.001607 publishers 0.001607 adviser 0.001607 appointments 0.001606 memorial 0.001606 chelsea 0.001606 grandfather 0.001606 appreciated 0.001606 hearts 0.001605 sally 0.001605 socially 0.001605 shelter 0.001604 investments 0.001604 beef 0.001604 peoples 0.001604 sympathetic 0.001604 motivation 0.001602 rhythm 0.001602 adventure 0.001602 norway 0.001602 ceased 0.001599 empirical 0.001599 roses 0.001599 daniel 0.001599 proportions 0.001598 incidents 0.001597 tribute 0.001597 communicate 0.001597 enabling 0.001596 descriptions 0.001596 bronze 0.001596 angel 0.001595 seeks 0.001595 supper 0.001595 dismissal 0.001593 achievements 0.001592 intentions 0.001592 aggregate 0.001592 exercised 0.001592 lacking 0.001591 terror 0.001591 brussels 0.001591 brighton 0.001591 damaging 0.001590 burned 0.001590 roberts 0.001590 circulation 0.001589 sporting 0.001589 convicted 0.001589 wishing 0.001588 directory 0.001588 lads 0.001588 yer 0.001587 mick 0.001587 dennis 0.001586 championships 0.001585 vague 0.001584 attraction 0.001582 disability 0.001582 virus 0.001581 inform 0.001580 lifting 0.001580 lodge 0.001579 competence 0.001579 hint 0.001579 naval 0.001578 packages 0.001578 lectures 0.001578 spaces 0.001578 raid 0.001577 molecules 0.001577 goodness 0.001577 rolls 0.001577 actively 0.001577 custody 0.001576 distress 0.001576 cure 0.001575 tourists 0.001575 forwards 0.001574 broadcast 0.001574 punch 0.001573 processor 0.001573 seldom 0.001573 tobacco 0.001573 encouragement 0.001573 flavour 0.001572 operators 0.001572 mid 0.001572 despair 0.001572 shortage 0.001571 reflecting 0.001571 integrity 0.001571 proceeds 0.001571 seventh 0.001571 myth 0.001571 skirt 0.001570 measuring 0.001570 scales 0.001570 louise 0.001569 pays 0.001569 rightly 0.001569 remarkably 0.001569 quote 0.001569 acknowledge 0.001569 kinnock 0.001568 electronics 0.001567 pray 0.001567 goodbye 0.001566 newton 0.001565 moderate 0.001565 waved 0.001565 imprisonment 0.001564 wells 0.001564 forcing 0.001563 dick 0.001561 champions 0.001561 populations 0.001560 loads 0.001560 worthwhile 0.001560 nato 0.001560 embarrassed 0.001560 hesitated 0.001560 fraction 0.001560 parked 0.001559 swiss 0.001558 server 0.001558 rob 0.001557 conflicts 0.001557 chase 0.001557 investigating 0.001556 suite 0.001556 screaming 0.001556 specimens 0.001556 julia 0.001555 honey 0.001555 borders 0.001555 sword 0.001554 ie 0.001554 varieties 0.001554 imply 0.001554 shout 0.001554 clinic 0.001554 interviewed 0.001553 flows 0.001553 breakdown 0.001553 loving 0.001553 anderson 0.001553 parks 0.001552 midland 0.001552 custom 0.001552 whoever 0.001552 operates 0.001552 offensive 0.001552 hamilton 0.001552 exclusion 0.001551 cited 0.001551 oldest 0.001551 scandal 0.001550 scoring 0.001550 reviewed 0.001550 extract 0.001550 lively 0.001549 worrying 0.001549 favourable 0.001549 linking 0.001549 duncan 0.001548 norwich 0.001548 gentlemen 0.001548 commissioner 0.001548 transmission 0.001548 bow 0.001547 gloucestershire 0.001547 enemies 0.001547 locations 0.001546 netherlands 0.001546 evidently 0.001546 publisher 0.001546 emma 0.001546 tanks 0.001546 labelled 0.001545 buses 0.001544 nest 0.001541 conclude 0.001541 adapted 0.001541 exceptions 0.001540 mobility 0.001540 shade 0.001539 alike 0.001538 swim 0.001538 bacon 0.001538 vendor 0.001537 translation 0.001536 barriers 0.001536 republics 0.001536 remark 0.001536 fix 0.001536 avoiding 0.001535 hungary 0.001535 incomes 0.001535 tourism 0.001534 evenings 0.001534 margin 0.001534 meanings 0.001533 neighbourhood 0.001533 reportedly 0.001532 ritual 0.001532 valued 0.001531 desktop 0.001531 stimulus 0.001530 demonstrations 0.001530 strings 0.001529 dividend 0.001529 trusts 0.001529 rejection 0.001528 opponent 0.001528 hook 0.001528 relates 0.001527 observers 0.001526 borrow 0.001526 thereafter 0.001526 passive 0.001526 enthusiastic 0.001525 quid 0.001525 fortnight 0.001525 leaning 0.001525 commissioned 0.001524 emissions 0.001524 crowded 0.001524 rigid 0.001524 inclined 0.001523 killer 0.001523 dreadful 0.001523 imported 0.001521 execution 0.001521 lounge 0.001521 ham 0.001521 temperatures 0.001519 interrupted 0.001519 successor 0.001519 jordan 0.001518 mines 0.001518 drank 0.001518 bureau 0.001517 planted 0.001517 peculiar 0.001516 accent 0.001516 rabbit 0.001516 nightmare 0.001516 corruption 0.001516 greeted 0.001516 verse 0.001515 speaks 0.001514 tray 0.001514 racial 0.001514 coastal 0.001514 tapes 0.001514 straw 0.001513 creates 0.001513 blocked 0.001513 meantime 0.001513 environments 0.001512 comedy 0.001512 cupboard 0.001512 rover 0.001512 appearing 0.001511 aberdeen 0.001511 stamp 0.001511 profound 0.001509 supplement 0.001509 referendum 0.001509 honestly 0.001509 julie 0.001508 campaigns 0.001508 structured 0.001508 matrix 0.001507 suspension 0.001507 comply 0.001507 eager 0.001507 scared 0.001507 journalist 0.001507 salmon 0.001506 slope 0.001505 davis 0.001504 deliberate 0.001504 envelope 0.001503 grief 0.001503 lined 0.001503 insight 0.001501 pet 0.001500 deck 0.001500 sensation 0.001498 sequences 0.001498 affects 0.001498 enhance 0.001498 charm 0.001498 tactics 0.001497 accurately 0.001497 bias 0.001496 hull 0.001496 divine 0.001496 grandmother 0.001496 verdict 0.001496 assessing 0.001496 sauce 0.001495 cheltenham 0.001495 shelf 0.001495 interference 0.001494 deemed 0.001494 collar 0.001494 waist 0.001494 applicable 0.001493 examinations 0.001493 jan 0.001493 immense 0.001492 futures 0.001492 meets 0.001492 blacks 0.001490 onwards 0.001489 expects 0.001489 raises 0.001489 comparative 0.001489 norfolk 0.001489 backs 0.001488 unconscious 0.001488 belonging 0.001488 genuinely 0.001488 bargaining 0.001487 accounted 0.001487 awake 0.001486 coins 0.001486 adjustment 0.001486 dishes 0.001486 construct 0.001486 proposition 0.001485 expressing 0.001485 vessel 0.001484 practically 0.001484 turkish 0.001481 reserved 0.001481 affection 0.001481 albeit 0.001481 celebrate 0.001481 merger 0.001480 touching 0.001480 shallow 0.001479 charming 0.001479 fuck 0.001478 workshops 0.001478 nationalist 0.001478 refusing 0.001478 nearer 0.001478 broader 0.001477 propose 0.001476 counselling 0.001476 worthy 0.001476 requests 0.001475 bastard 0.001475 blamed 0.001475 uncomfortable 0.001474 liberty 0.001474 bishops 0.001474 dioxide 0.001474 lowered 0.001473 capture 0.001473 spreading 0.001473 flash 0.001473 shipping 0.001473 representations 0.001472 convincing 0.001472 honours 0.001472 faded 0.001472 protestant 0.001471 hiding 0.001471 yugoslavia 0.001471 citizen 0.001470 beneficial 0.001470 tel 0.001470 curtain 0.001470 thompson 0.001470 handful 0.001469 sexuality 0.001469 woke 0.001469 matching 0.001469 productive 0.001469 cow 0.001469 believing 0.001469 trail 0.001469 coffin 0.001469 makers 0.001469 diversity 0.001468 seal 0.001468 import 0.001468 bonus 0.001467 disappear 0.001466 accommodate 0.001466 specialists 0.001466 secrets 0.001466 km 0.001466 academy 0.001466 wasted 0.001465 frustration 0.001464 recommendation 0.001461 museums 0.001460 cruel 0.001460 independently 0.001460 appealed 0.001459 loves 0.001457 minimal 0.001457 designated 0.001457 el 0.001457 sunderland 0.001457 commit 0.001457 churchill 0.001456 territories 0.001455 threats 0.001454 forgive 0.001454 catching 0.001454 interval 0.001453 ghost 0.001453 correlation 0.001453 breeze 0.001452 isle 0.001452 suspicious 0.001452 measurements 0.001452 civilian 0.001451 drops 0.001450 questioning 0.001450 layers 0.001450 certainty 0.001450 removing 0.001450 overwhelming 0.001450 maturity 0.001449 laying 0.001448 fragments 0.001448 executed 0.001448 historian 0.001447 symbolic 0.001447 fatal 0.001447 marble 0.001447 max 0.001447 keeper 0.001446 induced 0.001446 ici 0.001446 arsenal 0.001446 rats 0.001446 presenting 0.001445 rod 0.001445 reviews 0.001443 neighbouring 0.001443 gods 0.001442 foundations 0.001442 surfaces 0.001442 crude 0.001442 duck 0.001440 belgium 0.001440 crashed 0.001439 shifted 0.001439 insects 0.001438 advances 0.001437 inspiration 0.001437 predict 0.001437 dimensions 0.001437 pavement 0.001437 validity 0.001436 ugly 0.001436 lasted 0.001435 irrelevant 0.001435 complain 0.001434 urge 0.001433 loaded 0.001433 hostility 0.001432 sin 0.001432 profitable 0.001432 fled 0.001431 wealthy 0.001431 dating 0.001431 sandy 0.001430 bears 0.001430 alison 0.001430 stanley 0.001429 phenomena 0.001429 lamp 0.001429 clergy 0.001428 horizon 0.001428 intermediate 0.001428 supplier 0.001428 conscience 0.001428 al 0.001427 powder 0.001427 jet 0.001427 pensioners 0.001427 ali 0.001426 sixties 0.001425 trips 0.001425 elder 0.001425 loyal 0.001425 sweat 0.001425 soup 0.001423 pole 0.001423 soap 0.001422 pig 0.001422 paths 0.001422 popularity 0.001420 basket 0.001420 struggled 0.001419 nerve 0.001419 episode 0.001418 butler 0.001418 betty 0.001418 oven 0.001418 crowds 0.001418 bend 0.001417 dropping 0.001416 consisted 0.001416 lorry 0.001416 positively 0.001415 insufficient 0.001415 programming 0.001415 denmark 0.001415 nails 0.001415 eligible 0.001414 mysterious 0.001414 lap 0.001413 drives 0.001413 clash 0.001412 burns 0.001412 collaboration 0.001412 devised 0.001411 heath 0.001411 spencer 0.001411 enforcement 0.001410 ambition 0.001410 organ 0.001410 managerial 0.001410 molecular 0.001409 sculpture 0.001409 featured 0.001409 olympic 0.001409 carter 0.001409 neatly 0.001408 embassy 0.001408 reinforced 0.001407 fires 0.001407 swallowed 0.001407 exclude 0.001406 treating 0.001405 linear 0.001405 fantasy 0.001405 addresses 0.001405 samuel 0.001405 caution 0.001404 interpret 0.001404 kennedy 0.001404 detect 0.001404 barn 0.001403 substances 0.001403 abilities 0.001403 barnes 0.001403 migration 0.001403 cared 0.001402 ron 0.001402 troubled 0.001402 flora 0.001402 blew 0.001402 prospective 0.001400 behalf 0.001400 preston 0.001399 implication 0.001399 embarrassment 0.001398 diverse 0.001398 executives 0.001398 parental 0.001398 importantly 0.001398 decorated 0.001398 continually 0.001398 furious 0.001397 kim 0.001396 vi 0.001396 cigarettes 0.001395 fiscal 0.001395 definitions 0.001395 auction 0.001395 appreciation 0.001394 ladder 0.001394 commitments 0.001394 forehead 0.001394 striker 0.001394 soccer 0.001393 vienna 0.001391 beans 0.001391 rumours 0.001391 reductions 0.001391 publish 0.001391 solar 0.001391 petition 0.001390 hurried 0.001390 gabriel 0.001389 expressions 0.001389 prejudice 0.001389 useless 0.001389 practise 0.001389 edwards 0.001389 pence 0.001389 hits 0.001388 negotiating 0.001388 russians 0.001388 relied 0.001387 yep 0.001386 semantic 0.001386 inherent 0.001386 serum 0.001385 abandon 0.001385 specification 0.001385 apartment 0.001384 philosophical 0.001383 misleading 0.001383 maxwell 0.001383 ferry 0.001382 cups 0.001382 rounded 0.001382 sunshine 0.001382 utterly 0.001382 frowned 0.001382 bureaucracy 0.001380 hunter 0.001380 nonetheless 0.001380 ridge 0.001380 partially 0.001380 rage 0.001380 battery 0.001379 bleeding 0.001379 lending 0.001379 pm 0.001379 criterion 0.001379 planting 0.001379 pubs 0.001379 counsel 0.001379 rounds 0.001378 chat 0.001378 bloke 0.001378 criticised 0.001377 purple 0.001377 installation 0.001377 somerset 0.001376 worries 0.001376 posed 0.001376 dignity 0.001375 negotiate 0.001375 loch 0.001375 sacred 0.001374 unpleasant 0.001374 enclosed 0.001374 senate 0.001374 incentive 0.001374 tips 0.001374 devon 0.001373 analyse 0.001373 settlements 0.001372 tense 0.001372 expectation 0.001372 budgets 0.001371 sunlight 0.001371 clauses 0.001371 trophy 0.001371 analyses 0.001371 selective 0.001370 exhibitions 0.001370 joyce 0.001369 doubled 0.001369 lengths 0.001369 bite 0.001369 torn 0.001369 symbols 0.001368 elite 0.001368 carved 0.001368 receives 0.001368 isabel 0.001367 bold 0.001367 explicitly 0.001367 exploitation 0.001366 masses 0.001366 dock 0.001366 burnt 0.001365 diesel 0.001364 lisa 0.001364 palm 0.001364 protective 0.001364 deserve 0.001363 folded 0.001363 founder 0.001363 bang 0.001362 grows 0.001362 willie 0.001362 fortunate 0.001362 defensive 0.001360 islamic 0.001360 br 0.001360 evolved 0.001359 compliance 0.001359 los 0.001359 varies 0.001359 objections 0.001358 qualify 0.001358 mediterranean 0.001358 pretend 0.001358 occurring 0.001358 guinness 0.001357 objection 0.001356 spots 0.001356 prints 0.001355 austria 0.001355 respected 0.001355 sanctions 0.001355 repeatedly 0.001355 thesis 0.001354 temporarily 0.001354 lasting 0.001354 hired 0.001354 deserted 0.001353 eagle 0.001353 retreat 0.001353 kindly 0.001352 pronounced 0.001352 ozone 0.001352 pursuit 0.001352 react 0.001351 phoned 0.001350 chains 0.001349 carrier 0.001349 jeans 0.001349 draws 0.001349 feedback 0.001348 invested 0.001348 booked 0.001348 consisting 0.001348 update 0.001347 qualification 0.001347 tales 0.001347 counted 0.001347 monster 0.001346 lend 0.001346 drift 0.001346 handicap 0.001346 guided 0.001346 continuity 0.001345 mask 0.001345 pin 0.001345 eighth 0.001345 temper 0.001344 cooked 0.001343 craig 0.001343 negligence 0.001343 cave 0.001342 dependence 0.001342 slim 0.001340 cornwall 0.001340 organise 0.001340 swift 0.001340 novels 0.001340 sorted 0.001340 misery 0.001339 exit 0.001339 coupled 0.001339 assembled 0.001339 wimbledon 0.001339 diameter 0.001338 toward 0.001337 pour 0.001337 codes 0.001337 centred 0.001337 dot 0.001337 invisible 0.001336 invented 0.001336 pete 0.001335 stem 0.001335 upright 0.001335 pump 0.001334 faculty 0.001334 specify 0.001333 offenders 0.001333 omitted 0.001333 sara 0.001332 squadron 0.001332 blown 0.001331 challenges 0.001331 bacteria 0.001331 ageing 0.001331 breasts 0.001330 contempt 0.001330 owe 0.001330 jewellery 0.001330 protests 0.001329 privatisation 0.001329 phrases 0.001329 comparisons 0.001328 diagram 0.001328 ash 0.001328 mathematical 0.001328 ballet 0.001327 jail 0.001327 proteins 0.001327 inappropriate 0.001326 resting 0.001326 aggression 0.001326 subjected 0.001325 invite 0.001325 sentenced 0.001324 angles 0.001324 poles 0.001324 persistent 0.001324 terribly 0.001324 log 0.001322 ingredients 0.001322 screening 0.001322 sophie 0.001322 alien 0.001321 gaining 0.001321 calcium 0.001321 admits 0.001321 doubtful 0.001321 photo 0.001319 lean 0.001319 bowel 0.001318 classified 0.001318 sustain 0.001318 allowances 0.001318 flames 0.001318 overhead 0.001318 telecommunications 0.001316 revenues 0.001315 bunch 0.001315 needle 0.001314 accountants 0.001314 sphere 0.001314 rangers 0.001313 architectural 0.001313 guessed 0.001313 legend 0.001313 predominantly 0.001313 abortion 0.001313 challenging 0.001313 harvey 0.001312 rebels 0.001312 gravel 0.001312 surroundings 0.001311 healing 0.001311 blues 0.001310 guys 0.001309 maastricht 0.001309 emergence 0.001309 answering 0.001309 inheritance 0.001309 intact 0.001308 repairs 0.001308 saint 0.001307 marxist 0.001307 santa 0.001307 explored 0.001307 beautifully 0.001306 incredible 0.001306 convince 0.001306 celebration 0.001305 considers 0.001305 ignoring 0.001305 ipswich 0.001305 script 0.001304 submit 0.001303 restriction 0.001303 tragic 0.001303 flights 0.001303 cooperation 0.001303 abruptly 0.001303 mainstream 0.001302 revealing 0.001301 convert 0.001301 trades 0.001301 musicians 0.001301 morality 0.001299 humanity 0.001299 pint 0.001299 consist 0.001299 optimistic 0.001299 respectable 0.001298 openly 0.001298 fits 0.001298 layout 0.001298 licensing 0.001298 policemen 0.001297 coin 0.001297 harold 0.001297 boxing 0.001296 ringing 0.001296 lion 0.001296 puzzled 0.001296 shining 0.001295 disturbing 0.001295 painter 0.001295 swiftly 0.001295 competent 0.001295 traders 0.001295 horizontal 0.001295 applicant 0.001295 decisive 0.001295 spatial 0.001295 preventing 0.001294 carrie 0.001294 unacceptable 0.001294 vocabulary 0.001293 depended 0.001293 permanently 0.001293 seemingly 0.001292 coventry 0.001292 modes 0.001292 compound 0.001292 respective 0.001292 gould 0.001292 engagement 0.001291 canterbury 0.001291 bombs 0.001291 fathers 0.001291 probe 0.001290 carers 0.001290 syndrome 0.001289 protecting 0.001288 harmony 0.001288 hut 0.001288 saudi 0.001287 sealed 0.001287 drag 0.001287 sits 0.001286 erosion 0.001286 stretching 0.001286 prescribed 0.001286 lamont 0.001285 assigned 0.001285 practised 0.001285 negotiated 0.001284 integral 0.001284 conceived 0.001284 protested 0.001284 sickness 0.001283 toxic 0.001283 testament 0.001283 fetch 0.001283 redundant 0.001283 virginia 0.001282 throne 0.001282 lemon 0.001282 booking 0.001281 instructed 0.001281 privately 0.001281 belongs 0.001281 polytechnic 0.001281 basin 0.001281 solo 0.001281 envisaged 0.001279 alfred 0.001279 fertility 0.001279 nerves 0.001279 gravity 0.001279 holders 0.001279 safer 0.001278 cooper 0.001278 christie 0.001278 murray 0.001278 sovereignty 0.001277 cows 0.001277 cancelled 0.001277 scrutiny 0.001275 applicants 0.001275 probable 0.001275 tempted 0.001274 static 0.001274 initiated 0.001273 hydrogen 0.001273 consulted 0.001272 fame 0.001272 patience 0.001272 grin 0.001271 geoff 0.001271 sponsorship 0.001271 accountability 0.001271 mozart 0.001270 associate 0.001270 obscure 0.001270 territorial 0.001270 silently 0.001270 purchasing 0.001270 seasons 0.001270 checks 0.001270 recipe 0.001269 documentation 0.001269 shield 0.001269 auditors 0.001269 yo 0.001269 fax 0.001269 lakes 0.001269 robyn 0.001268 mineral 0.001268 neglect 0.001268 packet 0.001268 defending 0.001268 decrease 0.001267 flies 0.001267 floors 0.001267 strengthen 0.001266 youngest 0.001266 ralph 0.001265 consult 0.001265 likewise 0.001265 bradford 0.001265 translated 0.001265 defender 0.001264 preceding 0.001264 communists 0.001263 cognitive 0.001263 sa 0.001263 corps 0.001263 synthesis 0.001262 miserable 0.001262 regulatory 0.001262 revival 0.001261 exploit 0.001261 contexts 0.001259 debates 0.001259 hampshire 0.001259 likelihood 0.001258 venue 0.001258 corn 0.001258 shelves 0.001257 comic 0.001257 calculations 0.001256 comparatively 0.001256 holdings 0.001256 korean 0.001255 highlight 0.001255 attacking 0.001255 linda 0.001254 gothic 0.001254 stir 0.001254 fusion 0.001254 willingness 0.001254 yeltsin 0.001253 rewards 0.001253 lump 0.001253 creditors 0.001252 intel 0.001252 phillips 0.001252 shy 0.001252 viewing 0.001252 questionnaire 0.001252 scarlet 0.001252 precision 0.001251 conferences 0.001251 indians 0.001251 trevor 0.001251 watson 0.001251 juliet 0.001250 conventions 0.001249 deputies 0.001249 gray 0.001249 constance 0.001248 galleries 0.001247 seated 0.001247 adverse 0.001246 pencil 0.001246 incurred 0.001246 seventeenth 0.001246 tommy 0.001246 bile 0.001245 tiles 0.001245 outlook 0.001245 sticks 0.001245 truck 0.001244 engage 0.001244 heels 0.001244 jokes 0.001244 leaflet 0.001243 brigade 0.001243 merit 0.001243 eddie 0.001243 headmaster 0.001243 steven 0.001243 reporter 0.001243 stare 0.001243 tear 0.001242 vice 0.001242 twist 0.001242 sang 0.001242 emphasised 0.001242 dorothy 0.001242 telegraph 0.001242 chambers 0.001241 borrowed 0.001239 regiment 0.001239 trustees 0.001239 illustration 0.001239 ideally 0.001239 tons 0.001238 neglected 0.001238 anonymous 0.001238 shifts 0.001238 intimate 0.001237 entity 0.001237 wiped 0.001237 concentrating 0.001237 infected 0.001236 negotiation 0.001236 solved 0.001236 fond 0.001236 parker 0.001236 orthodox 0.001236 lovers 0.001236 aesthetic 0.001236 girlfriend 0.001235 highlighted 0.001235 usage 0.001235 polite 0.001235 fulfil 0.001234 celtic 0.001234 reasoning 0.001234 labels 0.001233 counting 0.001233 unaware 0.001233 lace 0.001233 presidency 0.001233 marking 0.001232 referee 0.001232 suffolk 0.001231 blast 0.001231 porter 0.001231 jazz 0.001231 lancaster 0.001231 eec 0.001231 sigh 0.001231 turner 0.001230 prolonged 0.001230 appearances 0.001230 parade 0.001230 panels 0.001230 fantastic 0.001230 zones 0.001229 developers 0.001229 seminar 0.001229 beam 0.001229 fashionable 0.001228 carol 0.001228 motorway 0.001228 foolish 0.001228 criticisms 0.001228 lobby 0.001228 camps 0.001228 intake 0.001226 margins 0.001226 receipt 0.001226 toys 0.001225 shoe 0.001225 causal 0.001224 compatible 0.001224 convey 0.001224 inclusion 0.001223 herbert 0.001223 southampton 0.001223 dual 0.001223 lengthy 0.001223 rating 0.001222 earning 0.001222 implicit 0.001222 diamond 0.001221 charts 0.001221 cameras 0.001221 pipes 0.001219 tent 0.001219 proving 0.001219 pie 0.001219 accord 0.001219 jumping 0.001218 perceptions 0.001218 adjusted 0.001218 propaganda 0.001218 mistress 0.001218 romania 0.001218 abolition 0.001218 plea 0.001217 confirmation 0.001217 pigs 0.001217 eleanor 0.001216 bargain 0.001216 constituted 0.001216 fry 0.001215 restructuring 0.001215 reduces 0.001215 confronted 0.001215 assignment 0.001215 critic 0.001215 subjective 0.001214 toast 0.001214 curiosity 0.001214 cheerful 0.001214 width 0.001213 twins 0.001213 relaxation 0.001213 polished 0.001213 cd 0.001213 legally 0.001212 priests 0.001212 lacked 0.001211 financing 0.001211 palestinian 0.001211 owl 0.001211 advertisement 0.001211 savage 0.001210 costing 0.001210 gall 0.001210 ft 0.001209 adequately 0.001209 drain 0.001209 shelley 0.001209 disadvantage 0.001209 sacrifice 0.001209 appealing 0.001209 reproduction 0.001209 shepherd 0.001208 architects 0.001208 hitting 0.001208 ruined 0.001207 timetable 0.001207 ambassador 0.001207 exotic 0.001207 passages 0.001206 hammer 0.001206 warrant 0.001206 assisted 0.001206 reversed 0.001206 switching 0.001205 thumb 0.001205 deprived 0.001205 admired 0.001205 cautious 0.001204 borne 0.001204 gazed 0.001204 salad 0.001203 prizes 0.001203 mistaken 0.001202 ted 0.001202 z 0.001202 array 0.001202 takeover 0.001202 ignorance 0.001202 renaissance 0.001201 penalties 0.001201 attributes 0.001201 redundancy 0.001201 imposing 0.001201 theology 0.001199 mist 0.001199 ethical 0.001199 grid 0.001198 pools 0.001198 canvas 0.001198 criticized 0.001198 salvation 0.001198 tenth 0.001198 warn 0.001198 vanished 0.001197 blanket 0.001197 blanche 0.001196 mercury 0.001196 bp 0.001195 organising 0.001195 pricing 0.001195 comparing 0.001194 halfway 0.001194 sincerely 0.001194 skull 0.001194 indicators 0.001193 teenage 0.001193 revision 0.001193 responding 0.001193 harvest 0.001192 claire 0.001192 defining 0.001191 amnesty 0.001191 kilometres 0.001190 photography 0.001190 jointly 0.001190 highlights 0.001190 lighter 0.001190 caribbean 0.001190 hay 0.001190 scholars 0.001190 disastrous 0.001189 destination 0.001188 editorial 0.001188 hunger 0.001188 witnessed 0.001188 li 0.001188 delicious 0.001188 offset 0.001188 confidential 0.001188 costly 0.001187 rode 0.001187 parameters 0.001186 terrified 0.001186 victor 0.001185 heated 0.001185 priced 0.001185 colony 0.001185 restraint 0.001185 instinct 0.001184 prosperity 0.001184 fury 0.001184 subsidies 0.001183 defences 0.001183 collector 0.001182 contacted 0.001182 darwin 0.001181 strengths 0.001180 christine 0.001180 rebel 0.001180 sank 0.001180 valuation 0.001180 alpha 0.001178 knight 0.001178 announce 0.001178 bride 0.001177 ports 0.001177 apparatus 0.001176 photographer 0.001176 preservation 0.001176 lifestyle 0.001176 katherine 0.001175 tutor 0.001175 calendar 0.001175 assessments 0.001175 declining 0.001175 thorough 0.001175 serial 0.001174 eliminate 0.001174 cabin 0.001174 clue 0.001173 provinces 0.001173 medal 0.001173 genius 0.001172 actress 0.001172 helicopter 0.001172 analysts 0.001171 breathe 0.001171 disciplines 0.001171 mercy 0.001170 searched 0.001170 inability 0.001170 restrict 0.001170 czechoslovakia 0.001170 dominance 0.001170 rested 0.001170 pilots 0.001170 conspiracy 0.001169 autonomous 0.001169 intends 0.001169 nicholson 0.001169 portion 0.001169 solidarity 0.001168 fur 0.001167 atomic 0.001167 incorporate 0.001165 warming 0.001165 blade 0.001165 projected 0.001165 colourful 0.001164 winding 0.001164 trent 0.001163 excluding 0.001163 dies 0.001163 hip 0.001162 specialised 0.001162 retire 0.001162 angrily 0.001161 majesty 0.001161 adjust 0.001161 ml 0.001161 ranges 0.001160 hollow 0.001160 chapman 0.001160 pylori 0.001160 modelling 0.001160 graduate 0.001158 poorly 0.001158 pose 0.001157 dug 0.001157 provoked 0.001157 ashamed 0.001157 gilbert 0.001157 concessions 0.001157 pains 0.001156 surrender 0.001156 lebanon 0.001156 reconstruction 0.001155 flown 0.001155 sovereign 0.001155 embarrassing 0.001155 individually 0.001155 strengthened 0.001155 delays 0.001154 illustrates 0.001154 egyptian 0.001154 sweeping 0.001154 bitterly 0.001154 efficiently 0.001154 respondents 0.001154 videos 0.001153 wicked 0.001153 amid 0.001153 elbow 0.001153 collins 0.001153 submission 0.001153 angeles 0.001153 jaw 0.001153 stepping 0.001152 glorious 0.001152 coherent 0.001152 amended 0.001152 dig 0.001151 jersey 0.001151 bobby 0.001150 lothian 0.001150 rat 0.001150 depths 0.001150 annually 0.001149 claudia 0.001149 boyfriend 0.001149 delightful 0.001149 racism 0.001149 steering 0.001149 portugal 0.001149 tokyo 0.001149 arbitrary 0.001148 richards 0.001148 cleaned 0.001148 bat 0.001148 chicago 0.001148 evaluate 0.001148 ordering 0.001147 signature 0.001147 heroes 0.001147 guides 0.001146 shah 0.001146 sandwich 0.001146 abolished 0.001145 licensed 0.001145 adjacent 0.001145 clarity 0.001145 screamed 0.001145 lid 0.001144 comprising 0.001144 psychiatric 0.001144 temptation 0.001144 knit 0.001144 recordings 0.001143 spelling 0.001143 practitioner 0.001142 weird 0.001142 immigration 0.001142 trembling 0.001142 swan 0.001141 fined 0.001141 chester 0.001141 shattered 0.001140 politician 0.001140 flung 0.001140 et 0.001140 unchanged 0.001140 athens 0.001140 towers 0.001140 expedition 0.001138 researcher 0.001138 exchanges 0.001138 calculation 0.001138 lawn 0.001138 graduates 0.001137 imf 0.001137 curved 0.001137 carl 0.001137 evolutionary 0.001137 pursuing 0.001136 revenge 0.001136 fever 0.001136 dilemma 0.001136 miracle 0.001136 practising 0.001135 failures 0.001135 slice 0.001135 angela 0.001134 electorate 0.001134 biology 0.001133 appraisal 0.001133 formidable 0.001133 disciplinary 0.001133 occurrence 0.001132 mounting 0.001132 lexical 0.001132 closest 0.001131 madame 0.001131 needles 0.001130 reagan 0.001130 longest 0.001130 blonde 0.001129 privacy 0.001129 grim 0.001129 wines 0.001129 equations 0.001128 polls 0.001128 limbs 0.001127 hp 0.001127 paula 0.001127 addressing 0.001126 slopes 0.001126 homeless 0.001126 bombing 0.001126 merseyside 0.001125 tours 0.001125 hereford 0.001125 descent 0.001125 pact 0.001125 airline 0.001125 cheshire 0.001125 proceeded 0.001125 appalling 0.001124 muslim 0.001124 courtesy 0.001124 worlds 0.001124 gradual 0.001124 shifting 0.001123 organisers 0.001123 frames 0.001123 governed 0.001123 pa 0.001123 blake 0.001123 fort 0.001123 sticking 0.001123 gossip 0.001123 interfere 0.001123 minerals 0.001122 matt 0.001122 supermarket 0.001122 approve 0.001121 reynolds 0.001121 marcus 0.001121 sack 0.001120 oz 0.001118 planes 0.001118 writings 0.001118 legacy 0.001117 tidy 0.001117 invention 0.001116 von 0.001116 gaps 0.001116 differing 0.001115 jason 0.001115 athelstan 0.001115 troubles 0.001114 ashley 0.001113 smallest 0.001113 merits 0.001113 specimen 0.001112 pulse 0.001112 interpretations 0.001112 glimpse 0.001112 outdoor 0.001112 atoms 0.001111 wrist 0.001111 renewal 0.001110 incidentally 0.001110 sweep 0.001110 interactions 0.001109 bizarre 0.001109 remedies 0.001109 loudly 0.001109 listing 0.001109 realm 0.001108 manufactured 0.001108 mainland 0.001108 annie 0.001107 flame 0.001107 crews 0.001107 maurice 0.001107 occupy 0.001106 gospel 0.001106 surgeon 0.001106 hatred 0.001106 bt 0.001105 amused 0.001105 exceed 0.001105 edited 0.001105 utility 0.001104 trusted 0.001104 bosnia 0.001104 conversations 0.001104 jam 0.001104 laboratories 0.001103 imaginative 0.001103 orientation 0.001103 recycling 0.001102 wartime 0.001102 crushed 0.001102 transmitted 0.001102 reid 0.001102 frightening 0.001102 scream 0.001102 frustrated 0.001101 indirectly 0.001101 flour 0.001101 modification 0.001101 laser 0.001101 cleaner 0.001100 qualifying 0.001100 leap 0.001100 vocational 0.001098 movies 0.001098 bailey 0.001098 rabbits 0.001098 trainer 0.001098 merchants 0.001098 foul 0.001097 allegedly 0.001097 biscuits 0.001097 ho 0.001097 speeds 0.001096 motive 0.001096 aluminium 0.001096 chopped 0.001095 authorised 0.001095 decay 0.001095 axis 0.001095 configuration 0.001095 bridges 0.001095 blowing 0.001095 drill 0.001095 hardy 0.001094 clive 0.001094 arrow 0.001094 allan 0.001094 geneva 0.001094 toes 0.001093 mucosa 0.001093 exploring 0.001093 reluctance 0.001092 arnold 0.001092 organisational 0.001091 protocol 0.001091 calculate 0.001091 flowing 0.001090 pine 0.001090 census 0.001090 databases 0.001090 eldest 0.001089 vegetation 0.001089 eventual 0.001089 queue 0.001089 theirs 0.001089 exchanged 0.001088 followers 0.001088 appoint 0.001088 husbands 0.001088 enjoyment 0.001088 yacht 0.001087 traced 0.001087 medau 0.001087 kicking 0.001087 advertisements 0.001086 smashed 0.001086 speeches 0.001086 spontaneous 0.001086 superintendent 0.001086 ensured 0.001086 stimulate 0.001085 journals 0.001084 mighty 0.001084 skipper 0.001084 marsh 0.001084 weekends 0.001084 exploded 0.001083 vivid 0.001083 mice 0.001082 offshore 0.001082 motives 0.001082 corporations 0.001082 sideways 0.001082 fare 0.001082 organisms 0.001081 anc 0.001080 organs 0.001080 hi 0.001080 woodland 0.001078 wounds 0.001078 cracked 0.001077 withdrew 0.001077 faithful 0.001077 reckoned 0.001077 bail 0.001076 paradise 0.001076 missiles 0.001076 noisy 0.001076 venice 0.001075 sofa 0.001075 graph 0.001075 inserted 0.001075 reminder 0.001075 rocky 0.001075 cage 0.001074 default 0.001074 ministerial 0.001074 patrol 0.001073 audiences 0.001073 heather 0.001072 accompanying 0.001072 innovative 0.001072 exile 0.001072 horn 0.001072 injection 0.001072 preparations 0.001071 romance 0.001071 prayers 0.001071 strongest 0.001071 daylight 0.001071 shields 0.001071 constitutes 0.001070 disclosure 0.001070 confrontation 0.001070 detached 0.001070 echoed 0.001070 mould 0.001069 strangely 0.001069 squeeze 0.001069 exploited 0.001069 stained 0.001069 liaison 0.001068 incentives 0.001068 cease 0.001068 newman 0.001068 deserved 0.001068 extends 0.001068 mitchell 0.001067 armies 0.001067 sexually 0.001067 keynes 0.001067 squeezed 0.001066 facilitate 0.001065 choir 0.001065 fog 0.001065 resentment 0.001065 ballot 0.001065 bells 0.001065 gloves 0.001065 amazed 0.001064 bc 0.001064 ferguson 0.001064 sydney 0.001064 leonard 0.001064 chorus 0.001063 ram 0.001063 lea 0.001063 gibson 0.001063 kenya 0.001062 firing 0.001062 commentators 0.001062 spray 0.001062 stems 0.001062 assumes 0.001062 par 0.001062 bin 0.001061 acids 0.001061 stating 0.001061 mixing 0.001061 richardson 0.001061 technically 0.001060 conceptual 0.001060 nationalism 0.001060 maker 0.001060 texas 0.001060 erected 0.001059 colitis 0.001059 ambitions 0.001059 ellen 0.001059 aiming 0.001059 economically 0.001059 reads 0.001059 arena 0.001059 dirt 0.001059 telecom 0.001057 entertaining 0.001057 bladder 0.001057 settings 0.001056 unusually 0.001056 dividends 0.001056 compounds 0.001056 gaulle 0.001056 unwilling 0.001055 patent 0.001055 ba 0.001055 tops 0.001055 enforce 0.001055 adapt 0.001055 norm 0.001055 metals 0.001055 civic 0.001055 nelson 0.001055 gregory 0.001054 macdonald 0.001054 tastes 0.001054 wembley 0.001054 bourgeois 0.001054 meaningful 0.001054 booklet 0.001053 dominate 0.001052 reluctantly 0.001052 phases 0.001052 privileged 0.001052 infrastructure 0.001051 resisted 0.001051 stirling 0.001051 jacques 0.001051 aloud 0.001051 lanes 0.001051 threshold 0.001051 combining 0.001051 bankruptcy 0.001051 fruits 0.001051 greenhouse 0.001050 copyright 0.001050 harrison 0.001050 freezing 0.001050 tubes 0.001049 colonies 0.001049 satisfying 0.001049 rebellion 0.001049 bucket 0.001049 associates 0.001049 dawson 0.001048 nuisance 0.001048 ulcer 0.001048 intervene 0.001048 reservations 0.001048 sunny 0.001048 shells 0.001047 fraser 0.001047 meredith 0.001047 holly 0.001047 saints 0.001047 disappointing 0.001046 prestige 0.001046 defended 0.001046 constructive 0.001046 guarantees 0.001045 noting 0.001045 sensed 0.001045 cape 0.001045 insists 0.001045 glow 0.001045 outset 0.001044 needing 0.001044 grammatical 0.001044 pouring 0.001044 unreasonable 0.001044 canon 0.001043 develops 0.001043 ironically 0.001043 frost 0.001043 socks 0.001043 simplest 0.001042 vaguely 0.001042 cart 0.001042 caravan 0.001042 dan 0.001042 enforced 0.001042 presently 0.001042 baldwin 0.001041 casualties 0.001041 maths 0.001041 administered 0.001041 warehouse 0.001040 jamie 0.001040 resign 0.001040 democrat 0.001040 credibility 0.001040 stitches 0.001039 gerald 0.001039 folly 0.001039 pots 0.001039 swedish 0.001039 monarchy 0.001039 lieutenant 0.001037 employing 0.001037 refuge 0.001037 quarry 0.001036 rude 0.001036 carpets 0.001036 sixteenth 0.001036 heir 0.001036 drum 0.001036 denis 0.001036 dislike 0.001036 hood 0.001035 hartlepool 0.001035 donna 0.001035 duly 0.001035 rider 0.001035 northampton 0.001035 scent 0.001035 versus 0.001035 gardening 0.001035 cakes 0.001035 immune 0.001035 knocking 0.001035 stripped 0.001034 geological 0.001034 amendments 0.001034 businessman 0.001034 supplementary 0.001033 moor 0.001033 mac 0.001033 hedge 0.001033 fist 0.001033 blackpool 0.001032 spine 0.001032 tensions 0.001031 promptly 0.001031 frankly 0.001031 swinging 0.001031 vegetable 0.001030 wheat 0.001030 vigorous 0.001030 rainbow 0.001029 fortunes 0.001029 builders 0.001029 damned 0.001029 fifties 0.001029 participating 0.001029 richmond 0.001029 poison 0.001029 uneasy 0.001029 ellis 0.001029 opposing 0.001028 aspirations 0.001028 jerusalem 0.001027 indigenous 0.001027 gloom 0.001027 jungle 0.001027 windsor 0.001027 fighter 0.001027 toy 0.001027 sean 0.001026 mandatory 0.001026 treasure 0.001026 embrace 0.001026 sri 0.001026 congregation 0.001025 behavioural 0.001025 adams 0.001025 sacked 0.001025 beaches 0.001024 termed 0.001024 businessmen 0.001024 admiration 0.001024 amusement 0.001024 peaks 0.001024 smiles 0.001024 stakes 0.001023 consistency 0.001023 plasma 0.001023 prevalence 0.001023 julian 0.001023 smoothly 0.001023 vacuum 0.001023 foreigners 0.001022 janet 0.001022 argentina 0.001022 bricks 0.001022 packaging 0.001022 habitat 0.001022 illustrations 0.001021 tucked 0.001021 assure 0.001021 veteran 0.001021 whatsoever 0.001021 shaw 0.001021 viable 0.001021 heights 0.001021 freight 0.001021 designers 0.001021 leith 0.001021 drainage 0.001020 ego 0.001020 ankle 0.001020 emailinc 0.001020 conceded 0.001020 quicker 0.001020 arch 0.001019 strangers 0.001019 cluster 0.001017 emphasise 0.001017 fragment 0.001016 wardrobe 0.001016 aboard 0.001016 rhetoric 0.001016 milan 0.001016 stockton 0.001016 riot 0.001016 momentum 0.001016 lecturer 0.001016 absurd 0.001016 aviation 0.001016 marched 0.001015 pleaded 0.001015 overlap 0.001015 weaknesses 0.001015 irony 0.001015 simpler 0.001015 outbreak 0.001014 fold 0.001014 loop 0.001014 pepper 0.001014 scratch 0.001014 glen 0.001014 principally 0.001014 marathon 0.001014 melissa 0.001014 preferences 0.001014 unsuccessful 0.001013 arabia 0.001013 grab 0.001013 digging 0.001013 covenant 0.001013 innocence 0.001012 ninth 0.001012 charging 0.001012 keyboard 0.001012 wandered 0.001012 locks 0.001012 generating 0.001012 morale 0.001012 optional 0.001011 simplicity 0.001011 characterised 0.001011 prague 0.001011 updated 0.001010 footsteps 0.001010 motivated 0.001010 jealous 0.001010 activists 0.001010 murphy 0.001009 sleeve 0.001009 portable 0.001009 brains 0.001009 sheila 0.001009 owns 0.001009 communism 0.001008 dissolved 0.001008 wallace 0.001008 offspring 0.001008 recruit 0.001007 equals 0.001007 emerges 0.001007 methodology 0.001007 stadium 0.001007 supplying 0.001007 rory 0.001007 seventies 0.001006 slower 0.001006 brushed 0.001006 waving 0.001006 battered 0.001006 absorption 0.001006 drawer 0.001006 substantive 0.001006 combinations 0.001005 gp 0.001005 linen 0.001005 nicely 0.001005 agony 0.001005 secular 0.001005 literacy 0.001005 exemption 0.001005 stunning 0.001005 highway 0.001005 singapore 0.001005 staged 0.001005 reed 0.001004 thieves 0.001004 franco 0.001004 criminals 0.001004 balcony 0.001004 composer 0.001003 thread 0.001003 endorsed 0.001003 notions 0.001002 magnitude 0.001002 fringe 0.001002 stays 0.001002 exclaimed 0.001002 screens 0.001002 counterparts 0.001002 forestry 0.001001 commands 0.001001 cruise 0.001001 declare 0.001001 packing 0.001000 whites 0.001000 traces 0.001000 amounted 0.001000 jackie 0.001000 stirred 0.001000 dos 0.001000 contributing 0.001000 liberals 0.001000 unclear 0.001000 heroin 0.001000 accountant 0.001000 agrees 0.000999 detectives 0.000999 eyebrows 0.000999 transform 0.000997 sutton 0.000997 sheriff 0.000997 adrian 0.000997 accomplished 0.000996 prisons 0.000996 supposedly 0.000995 stuffed 0.000995 accustomed 0.000995 lent 0.000995 constituent 0.000995 securing 0.000995 infinite 0.000994 texture 0.000993 disclosed 0.000993 springs 0.000993 analogy 0.000992 electron 0.000992 maid 0.000992 complaining 0.000992 brochure 0.000992 hungarian 0.000991 macmillan 0.000991 unionist 0.000991 revelation 0.000991 comfortably 0.000991 chiefs 0.000990 rewarded 0.000990 gdp 0.000990 functioning 0.000990 poets 0.000989 cameron 0.000989 multimedia 0.000989 builder 0.000989 predictable 0.000989 alexandra 0.000988 tumour 0.000988 peripheral 0.000988 dairy 0.000988 jay 0.000988 yields 0.000988 decoration 0.000987 stealing 0.000987 torch 0.000987 eva 0.000987 buttons 0.000987 non 0.000987 successes 0.000987 realism 0.000986 beard 0.000986 outcomes 0.000986 divorced 0.000986 indies 0.000985 bitch 0.000985 teenagers 0.000985 iranian 0.000985 pits 0.000984 florence 0.000983 rubbed 0.000983 rendered 0.000983 prevailing 0.000983 bodily 0.000983 inspectors 0.000983 stole 0.000983 summoned 0.000983 noises 0.000982 stresses 0.000982 optical 0.000982 lung 0.000982 organizational 0.000982 unionists 0.000982 derive 0.000982 limitation 0.000981 chalk 0.000981 squares 0.000981 financed 0.000981 mosaic 0.000981 occupations 0.000981 salaries 0.000981 dared 0.000981 mammals 0.000981 judging 0.000981 mason 0.000981 distances 0.000981 charities 0.000981 ryan 0.000980 startled 0.000980 conflicting 0.000980 liabilities 0.000980 volunteer 0.000980 fridge 0.000980 featuring 0.000980 deadline 0.000980 sells 0.000980 transfers 0.000980 exaggerated 0.000980 deer 0.000979 statue 0.000979 flushed 0.000979 retaining 0.000979 seasonal 0.000977 chartered 0.000977 privileges 0.000977 concealed 0.000977 coping 0.000977 dense 0.000976 float 0.000976 annoyed 0.000976 freed 0.000976 jolly 0.000976 freeze 0.000975 bureaucratic 0.000975 quantitative 0.000975 curiously 0.000974 tablets 0.000974 spin 0.000974 blackburn 0.000974 saddam 0.000974 cylinder 0.000974 shades 0.000974 delivering 0.000974 planners 0.000974 enjoyable 0.000973 forbidden 0.000973 capabilities 0.000973 enquired 0.000973 controller 0.000973 fulfilled 0.000973 olive 0.000972 deserves 0.000972 lincoln 0.000972 vendors 0.000972 brandy 0.000971 lets 0.000971 kettle 0.000971 passionate 0.000970 airlines 0.000970 staircase 0.000970 clarify 0.000970 doyle 0.000970 decorative 0.000969 lions 0.000969 furnished 0.000969 median 0.000969 asylum 0.000969 lydia 0.000968 commodity 0.000967 handy 0.000967 jeremy 0.000967 unexpectedly 0.000967 lunchtime 0.000967 tones 0.000967 chasing 0.000967 rna 0.000966 proportional 0.000966 recorder 0.000965 americas 0.000965 capability 0.000965 provisional 0.000964 sliding 0.000964 intercourse 0.000964 convenience 0.000964 slammed 0.000963 fuss 0.000963 hemisphere 0.000963 elephant 0.000963 scholarship 0.000963 polly 0.000962 sodium 0.000962 cries 0.000962 illusion 0.000962 unrest 0.000961 cliffs 0.000961 quit 0.000961 municipal 0.000961 velvet 0.000961 youths 0.000961 predecessor 0.000961 clerical 0.000960 mains 0.000960 plug 0.000960 voltage 0.000960 sampling 0.000960 rosa 0.000960 characterized 0.000960 confusing 0.000960 demonstrates 0.000959 completing 0.000959 treasurer 0.000959 nathan 0.000959 leapt 0.000957 cult 0.000957 beast 0.000957 attainment 0.000957 burial 0.000957 aroused 0.000956 steal 0.000956 differentiation 0.000956 instrumental 0.000955 exceptionally 0.000955 dumped 0.000955 happier 0.000955 memorandum 0.000955 drained 0.000955 lone 0.000955 tiger 0.000954 boiling 0.000954 accumulation 0.000954 housed 0.000953 patches 0.000953 hospitality 0.000953 repetition 0.000953 threaten 0.000953 heseltine 0.000953 wordsworth 0.000952 unlawful 0.000952 whitehall 0.000952 nuts 0.000952 unified 0.000952 reinforce 0.000952 consortium 0.000952 inquiries 0.000952 twelfth 0.000952 photographic 0.000952 policing 0.000951 bury 0.000951 metaphor 0.000951 vicar 0.000951 hussein 0.000951 strand 0.000951 posters 0.000951 minorities 0.000950 accompany 0.000950 recreation 0.000950 agnes 0.000950 strips 0.000950 cork 0.000950 slave 0.000950 pottery 0.000950 coincidence 0.000950 perceive 0.000949 departmental 0.000949 ancestors 0.000949 trivial 0.000948 domination 0.000948 levy 0.000948 sandwiches 0.000948 inquest 0.000947 recruited 0.000947 dragon 0.000947 prose 0.000946 ivory 0.000946 coleman 0.000946 sore 0.000946 metre 0.000946 commissioners 0.000945 notorious 0.000945 velocity 0.000945 slightest 0.000945 casting 0.000945 peat 0.000945 restrictive 0.000944 selecting 0.000944 arc 0.000944 citizenship 0.000944 exceeded 0.000944 slipping 0.000943 pr 0.000943 comprises 0.000943 critique 0.000943 plaster 0.000943 armour 0.000943 motif 0.000943 verb 0.000943 fossil 0.000943 clearer 0.000943 leo 0.000942 ensures 0.000942 riots 0.000942 poorer 0.000942 cheques 0.000942 indoor 0.000942 norms 0.000941 danny 0.000941 decree 0.000941 clues 0.000941 settling 0.000941 stitch 0.000940 dealings 0.000940 monitored 0.000940 altar 0.000940 ruler 0.000940 cancel 0.000939 attractions 0.000939 swear 0.000938 extensively 0.000938 breathed 0.000938 patronage 0.000938 processed 0.000938 appropriately 0.000938 ski 0.000936 contractors 0.000936 appetite 0.000935 continuously 0.000935 holmes 0.000935 plaintiffs 0.000935 weights 0.000935 viewers 0.000935 resumed 0.000935 paddy 0.000935 syria 0.000934 ukraine 0.000934 energies 0.000934 defects 0.000934 arrives 0.000934 decides 0.000934 shone 0.000933 detection 0.000933 hilary 0.000933 eased 0.000933 blend 0.000933 trustee 0.000932 wandering 0.000932 battles 0.000932 judgements 0.000932 itv 0.000932 nationwide 0.000932 honourable 0.000932 pro 0.000932 warren 0.000931 frontier 0.000931 virtual 0.000931 talents 0.000931 stimuli 0.000931 membrane 0.000931 pudding 0.000931 feast 0.000931 shaft 0.000931 unprecedented 0.000931 palestine 0.000931 vicious 0.000930 similarities 0.000930 gazing 0.000930 beg 0.000930 trigger 0.000930 butcher 0.000930 blessing 0.000929 drifted 0.000929 contemporaries 0.000929 differential 0.000929 fiercely 0.000928 commentary 0.000928 disadvantages 0.000928 debtor 0.000928 curves 0.000928 peered 0.000928 acquiring 0.000928 replies 0.000928 singles 0.000928 syntactic 0.000927 nominated 0.000927 mechanics 0.000927 tricks 0.000927 disruption 0.000927 nitrogen 0.000927 bankers 0.000926 romans 0.000926 thailand 0.000926 manpower 0.000926 fragile 0.000926 danish 0.000926 clearance 0.000926 rushing 0.000925 discharged 0.000925 barrel 0.000925 missile 0.000925 towel 0.000925 filed 0.000924 nina 0.000924 miniature 0.000924 giles 0.000924 pending 0.000924 miranda 0.000924 seas 0.000924 bleak 0.000923 potato 0.000923 herbs 0.000923 transit 0.000923 doubtless 0.000923 viewpoint 0.000923 stimulated 0.000923 yarn 0.000923 subordinate 0.000922 patten 0.000922 greens 0.000922 formulation 0.000922 contractual 0.000922 rests 0.000922 portsmouth 0.000922 archaeological 0.000921 desires 0.000921 torture 0.000921 professions 0.000921 gases 0.000920 reliance 0.000920 blessed 0.000920 hazel 0.000920 cargo 0.000920 florida 0.000919 purchases 0.000919 issuing 0.000919 traveller 0.000918 detention 0.000918 exam 0.000918 villagers 0.000918 hazard 0.000918 locate 0.000918 mates 0.000918 manners 0.000916 treatments 0.000916 whichever 0.000916 undermine 0.000916 feminine 0.000915 awaiting 0.000915 arctic 0.000915 advocated 0.000915 compensate 0.000915 feminists 0.000915 antique 0.000915 teesside 0.000914 maintains 0.000914 morton 0.000914 hastily 0.000913 implementing 0.000913 fundamentally 0.000913 deprivation 0.000913 lungs 0.000913 void 0.000913 meg 0.000913 madrid 0.000912 fork 0.000912 recovering 0.000912 recalls 0.000912 gauge 0.000912 possessions 0.000911 cherry 0.000911 whip 0.000911 stark 0.000911 psychologists 0.000911 robbie 0.000911 economists 0.000911 amsterdam 0.000910 ally 0.000910 parted 0.000910 lotus 0.000910 nationally 0.000910 peer 0.000910 compiled 0.000910 streams 0.000910 jailed 0.000909 urgency 0.000909 imprisoned 0.000909 documentary 0.000909 profitability 0.000909 raymond 0.000909 precedent 0.000908 financially 0.000908 serbian 0.000908 joints 0.000908 lining 0.000907 coaches 0.000907 stool 0.000907 scrap 0.000907 celebrations 0.000906 dozens 0.000906 lately 0.000906 urgently 0.000906 spinning 0.000905 livestock 0.000905 inferior 0.000905 advocate 0.000905 analysing 0.000905 certificates 0.000905 eternal 0.000904 infants 0.000904 astonishing 0.000904 whisper 0.000904 complement 0.000904 interactive 0.000904 escort 0.000903 powell 0.000903 coats 0.000903 apples 0.000903 rex 0.000903 solitary 0.000903 bicycle 0.000903 secretion 0.000903 iris 0.000903 privatization 0.000902 ethics 0.000902 indonesia 0.000902 headings 0.000902 faults 0.000902 disturbance 0.000901 leslie 0.000901 forecasts 0.000901 proposing 0.000901 crap 0.000901 aquarium 0.000901 persisted 0.000901 manipulation 0.000901 magical 0.000901 moss 0.000900 thomson 0.000900 belly 0.000900 focusing 0.000900 stall 0.000900 pamela 0.000900 oppose 0.000900 ambiguity 0.000900 memorable 0.000899 scotvec 0.000899 favourites 0.000899 amy 0.000899 teenager 0.000899 celia 0.000898 siege 0.000898 robertson 0.000898 bowed 0.000898 rented 0.000896 slowed 0.000896 greeks 0.000896 emphasized 0.000896 jo 0.000895 cottages 0.000895 chill 0.000895 nominal 0.000894 limiting 0.000894 rehabilitation 0.000894 complications 0.000894 talented 0.000894 struggles 0.000894 cycling 0.000893 experiencing 0.000893 assertion 0.000892 finals 0.000892 shorts 0.000892 murderer 0.000892 oesophageal 0.000892 dependency 0.000891 wit 0.000891 quantum 0.000891 knights 0.000891 incapable 0.000891 travis 0.000891 reckons 0.000890 quota 0.000890 overview 0.000890 halls 0.000890 understandable 0.000890 token 0.000890 francisco 0.000889 workplace 0.000889 armstrong 0.000889 exchequer 0.000889 solving 0.000889 hats 0.000889 bosses 0.000889 quest 0.000888 piper 0.000888 constituents 0.000888 wolf 0.000888 anglia 0.000888 container 0.000888 courtyard 0.000888 edmund 0.000887 alterations 0.000887 eighties 0.000887 companions 0.000887 printers 0.000887 establishments 0.000887 intestinal 0.000887 wonders 0.000887 enters 0.000887 campaigning 0.000887 touring 0.000886 dundee 0.000886 optimism 0.000886 travels 0.000886 sticky 0.000886 smoked 0.000885 homosexual 0.000885 loses 0.000885 papal 0.000885 schooling 0.000884 basement 0.000884 gut 0.000884 consumed 0.000884 refugee 0.000884 jacob 0.000883 complementary 0.000883 duchess 0.000883 telly 0.000883 gown 0.000883 nil 0.000883 grades 0.000882 tipped 0.000882 noticeable 0.000882 mankind 0.000882 cycles 0.000882 theda 0.000882 dame 0.000881 ambiguous 0.000881 evelyn 0.000881 hastings 0.000881 embedded 0.000880 palmer 0.000880 shaken 0.000880 disorders 0.000880 realities 0.000880 gerry 0.000880 authentic 0.000880 vincent 0.000880 midfield 0.000880 framed 0.000880 devastating 0.000879 icing 0.000879 peers 0.000879 outfit 0.000879 umbrella 0.000879 praised 0.000879 doug 0.000879 weaving 0.000879 ex 0.000878 deadly 0.000878 isles 0.000878 lightning 0.000878 arranging 0.000878 dolphins 0.000876 photos 0.000876 helpless 0.000876 immigrants 0.000876 rents 0.000876 pretending 0.000876 regulated 0.000876 litigation 0.000876 dismiss 0.000875 feathers 0.000875 elaine 0.000875 sulphur 0.000875 buckingham 0.000875 coroner 0.000875 remembers 0.000875 neville 0.000874 jeff 0.000874 binary 0.000874 dwellings 0.000874 feasible 0.000873 homework 0.000873 prix 0.000873 tapped 0.000873 coronation 0.000873 heavier 0.000873 prompt 0.000872 vacant 0.000872 spoon 0.000872 tissues 0.000872 corpse 0.000872 modifications 0.000872 colonic 0.000871 bulletin 0.000871 investor 0.000871 stunned 0.000871 unfamiliar 0.000871 ros 0.000871 organize 0.000870 wary 0.000870 agreeing 0.000870 pp 0.000870 greg 0.000869 lazy 0.000869 bryan 0.000869 denying 0.000869 retention 0.000869 tightened 0.000868 narrowed 0.000867 legislature 0.000867 conform 0.000867 dancers 0.000867 toll 0.000867 distorted 0.000867 vitamin 0.000867 fastest 0.000866 fisher 0.000866 madness 0.000866 wilkinson 0.000866 enormously 0.000866 distinctly 0.000866 conversely 0.000866 locals 0.000866 conducting 0.000866 indicator 0.000865 wording 0.000865 harmful 0.000865 ample 0.000865 dreaming 0.000864 encourages 0.000864 accountancy 0.000864 hm 0.000864 premature 0.000864 promoter 0.000864 hips 0.000864 explosive 0.000864 adopting 0.000863 danced 0.000863 picasso 0.000863 shirts 0.000863 overlooked 0.000863 flashed 0.000863 attracting 0.000862 shirley 0.000862 anticipation 0.000862 insistence 0.000862 salisbury 0.000862 alec 0.000861 creativity 0.000861 boston 0.000861 burton 0.000861 riders 0.000861 accepts 0.000861 leaflets 0.000861 shine 0.000861 martha 0.000861 dorset 0.000861 swallow 0.000861 inviting 0.000860 biography 0.000860 invaluable 0.000860 manuscript 0.000860 divisional 0.000860 diminished 0.000859 secretaries 0.000859 rescued 0.000859 analytical 0.000859 simpson 0.000859 permits 0.000859 fairy 0.000859 consulting 0.000859 studios 0.000859 trunk 0.000858 onset 0.000858 risc 0.000858 weighed 0.000858 madam 0.000858 petty 0.000858 abnormal 0.000856 sociological 0.000856 landowners 0.000856 croatia 0.000856 joanna 0.000856 imminent 0.000856 rooted 0.000855 glowing 0.000855 customary 0.000855 bowling 0.000855 runners 0.000855 drowned 0.000855 valleys 0.000855 theorists 0.000855 essays 0.000855 ink 0.000855 ruin 0.000854 goodwill 0.000854 andrews 0.000854 commissions 0.000854 libel 0.000854 limestone 0.000853 surge 0.000853 plunged 0.000853 observing 0.000853 outlets 0.000852 coaching 0.000852 editors 0.000852 unwanted 0.000852 marriages 0.000852 plausible 0.000852 kin 0.000851 longing 0.000851 continuation 0.000851 exhibit 0.000851 workstations 0.000851 insured 0.000851 absorb 0.000851 boris 0.000851 headlines 0.000850 attach 0.000850 dim 0.000850 academics 0.000850 catholics 0.000849 symphony 0.000849 fascinated 0.000849 reactor 0.000849 souls 0.000849 rotten 0.000849 landlords 0.000849 amusing 0.000849 prone 0.000849 mini 0.000849 toby 0.000848 urine 0.000848 licences 0.000848 similarity 0.000848 molly 0.000848 documented 0.000848 destined 0.000848 historically 0.000848 biopsy 0.000848 humble 0.000848 batch 0.000848 inhibition 0.000847 fiona 0.000847 coleridge 0.000847 triangle 0.000847 incredibly 0.000847 terrorist 0.000847 winchester 0.000846 frederick 0.000846 advent 0.000846 gill 0.000846 stimulation 0.000846 injunction 0.000846 maxim 0.000846 platforms 0.000846 dexter 0.000846 civilians 0.000846 graphic 0.000846 mornings 0.000845 formulated 0.000845 accumulated 0.000845 strands 0.000844 garlic 0.000844 nazi 0.000844 beloved 0.000844 sainsbury 0.000844 rated 0.000843 taiwan 0.000843 candle 0.000843 heel 0.000843 discarded 0.000842 librarian 0.000842 urging 0.000842 calories 0.000842 northumberland 0.000842 crawford 0.000842 utterance 0.000842 descended 0.000842 bushes 0.000842 microsystems 0.000842 wildly 0.000842 insider 0.000841 reliability 0.000841 credits 0.000841 proven 0.000841 thunder 0.000841 celebrating 0.000840 plo 0.000840 crept 0.000840 investing 0.000840 targeted 0.000840 wayne 0.000840 basil 0.000840 docks 0.000840 tyres 0.000840 crisp 0.000840 contrasts 0.000839 ratios 0.000839 boil 0.000839 georgian 0.000839 rotation 0.000839 predictions 0.000839 radioactive 0.000838 nicola 0.000838 segments 0.000838 specialized 0.000838 constituencies 0.000838 placement 0.000838 novell 0.000838 plymouth 0.000838 administrators 0.000838 inequality 0.000838 passport 0.000838 crohn 0.000838 drying 0.000838 supportive 0.000836 surgical 0.000836 del 0.000836 thirdly 0.000836 baron 0.000836 welcoming 0.000835 vietnamese 0.000834 sights 0.000834 calmly 0.000834 proves 0.000834 contracted 0.000834 sheltered 0.000834 belgian 0.000834 launching 0.000834 cough 0.000834 conditional 0.000834 notebook 0.000834 chamberlain 0.000833 fibres 0.000833 lamps 0.000833 veins 0.000833 releases 0.000833 headache 0.000833 axe 0.000832 veterinary 0.000832 sponsors 0.000831 reacted 0.000831 stern 0.000831 announcing 0.000831 extracts 0.000831 karl 0.000831 paragraphs 0.000831 ac 0.000831 gratitude 0.000831 oils 0.000831 thirties 0.000831 ventures 0.000830 disagreement 0.000830 deceased 0.000830 destructive 0.000830 indications 0.000830 consultancy 0.000830 contradiction 0.000830 heap 0.000830 stella 0.000829 candles 0.000829 destroying 0.000829 lacks 0.000829 maureen 0.000829 analyst 0.000829 eliminated 0.000829 contracting 0.000829 symmetry 0.000828 revolt 0.000828 admire 0.000828 pad 0.000828 wickets 0.000828 sinking 0.000827 vested 0.000827 colon 0.000827 differs 0.000827 violently 0.000827 raids 0.000827 brow 0.000827 scotch 0.000827 thigh 0.000826 bennett 0.000826 angels 0.000826 warnings 0.000826 jill 0.000826 creed 0.000826 monks 0.000825 mug 0.000825 frequencies 0.000825 organism 0.000825 warfare 0.000825 fittings 0.000825 goodnight 0.000825 denies 0.000825 mainframe 0.000825 preferably 0.000825 antibody 0.000825 surveillance 0.000824 rovers 0.000824 sparkling 0.000824 enlarged 0.000824 jockey 0.000824 slaves 0.000824 strained 0.000824 patron 0.000824 robbery 0.000824 snap 0.000823 audio 0.000823 goalkeeper 0.000823 linguistics 0.000823 refined 0.000823 easiest 0.000823 consequent 0.000822 cheer 0.000822 creditor 0.000822 disgusting 0.000822 adaptation 0.000822 downing 0.000822 dissolution 0.000822 sadness 0.000822 concerts 0.000822 dolphin 0.000822 princes 0.000821 fellowship 0.000821 weighing 0.000821 napoleon 0.000821 smells 0.000821 invalid 0.000821 specifications 0.000821 forgetting 0.000820 hygiene 0.000820 sailed 0.000820 decreased 0.000820 staffing 0.000820 trinity 0.000820 ord 0.000819 subscription 0.000819 nod 0.000819 wh 0.000819 radically 0.000819 designing 0.000819 debris 0.000819 sewage 0.000818 alcoholic 0.000818 pictured 0.000818 dividing 0.000817 cruelty 0.000817 lordship 0.000817 peru 0.000817 extracted 0.000817 compelled 0.000817 fluctuations 0.000817 pragmatic 0.000817 ecclesiastical 0.000817 superiority 0.000817 aerospace 0.000817 antibodies 0.000817 dreamed 0.000815 wipe 0.000815 bilateral 0.000815 brightly 0.000815 ux 0.000815 portuguese 0.000815 install 0.000815 sketch 0.000815 cardinal 0.000814 dresses 0.000814 skiing 0.000814 flooded 0.000813 cara 0.000813 seminars 0.000813 flooding 0.000813 handing 0.000813 pierre 0.000813 advertised 0.000812 postponed 0.000812 steward 0.000812 flashing 0.000812 scenery 0.000812 node 0.000812 unsatisfactory 0.000812 factual 0.000812 developer 0.000812 insights 0.000812 enjoys 0.000812 politely 0.000811 everton 0.000811 trim 0.000811 attachment 0.000811 naive 0.000811 episodes 0.000811 potent 0.000811 portraits 0.000811 hamlet 0.000810 destiny 0.000810 finances 0.000810 cranston 0.000810 brands 0.000810 franchise 0.000809 persian 0.000809 behaved 0.000809 sceptical 0.000808 wendy 0.000808 benefited 0.000808 progressively 0.000808 zoo 0.000808 superficial 0.000808 wasting 0.000808 histories 0.000808 jenkins 0.000808 sharpe 0.000808 cultivation 0.000808 derbyshire 0.000808 journeys 0.000808 overlooking 0.000808 georgia 0.000807 exeter 0.000807 teddy 0.000807 disks 0.000807 stimulating 0.000806 weakened 0.000806 jennifer 0.000806 curled 0.000805 disguise 0.000805 tossed 0.000805 highlands 0.000805 warden 0.000805 sundays 0.000805 casually 0.000805 honorary 0.000805 cemetery 0.000805 slender 0.000804 relieve 0.000804 postgraduate 0.000804 cynical 0.000804 barcelona 0.000804 disposed 0.000804 repeating 0.000804 sorting 0.000804 wiltshire 0.000804 prediction 0.000803 fisheries 0.000803 monarch 0.000803 envy 0.000803 baltic 0.000803 disco 0.000802 gardener 0.000802 strains 0.000802 obstacles 0.000801 con 0.000801 bees 0.000801 supervisor 0.000801 commanded 0.000801 hannah 0.000801 cassette 0.000801 thou 0.000801 recognising 0.000801 counterpart 0.000801 thighs 0.000801 incorporating 0.000800 biblical 0.000800 ideals 0.000800 strengthening 0.000800 convictions 0.000800 vocal 0.000800 integrate 0.000800 manifesto 0.000800 predators 0.000800 circus 0.000800 smiths 0.000800 nigeria 0.000799 peel 0.000799 flock 0.000799 nail 0.000799 gasped 0.000799 preceded 0.000798 whistle 0.000798 julius 0.000798 englishman 0.000798 grazing 0.000798 bolt 0.000798 hectares 0.000798 demonstrators 0.000798 supporter 0.000798 dash 0.000798 conditioning 0.000797 ceasefire 0.000797 guild 0.000797 demonstrating 0.000797 dusty 0.000797 rosie 0.000797 defect 0.000797 clinics 0.000795 czech 0.000795 thief 0.000795 insect 0.000795 hopeless 0.000795 shareholder 0.000795 correspond 0.000795 locomotive 0.000794 guil 0.000794 minton 0.000794 reservoir 0.000794 spends 0.000794 concludes 0.000794 trainers 0.000794 providers 0.000793 microphone 0.000793 ulcerative 0.000793 vigorously 0.000793 segment 0.000793 conspicuous 0.000793 brutal 0.000793 snake 0.000793 tomatoes 0.000793 corrected 0.000792 kissing 0.000792 vein 0.000792 yelled 0.000792 poster 0.000792 molecule 0.000792 sweets 0.000792 backgrounds 0.000792 khan 0.000792 deposited 0.000792 justices 0.000792 transcription 0.000791 spurs 0.000791 suffers 0.000791 whales 0.000791 copied 0.000791 consultative 0.000791 dumb 0.000791 carolyn 0.000791 coral 0.000791 sanctuary 0.000791 brewery 0.000791 waiter 0.000790 suppressed 0.000790 shiny 0.000790 casualty 0.000790 rosemary 0.000790 discs 0.000789 vii 0.000789 slot 0.000789 diploma 0.000789 wesley 0.000789 synthetic 0.000789 denial 0.000789 doll 0.000789 ernest 0.000788 ruins 0.000788 classics 0.000788 constrained 0.000788 bundle 0.000788 tweed 0.000788 batteries 0.000788 problematic 0.000788 glared 0.000788 connect 0.000787 blocking 0.000787 poetic 0.000787 rebuilt 0.000787 progressed 0.000787 systematically 0.000787 favours 0.000787 dolly 0.000787 taxpayer 0.000787 betrayed 0.000786 abused 0.000786 graeme 0.000786 nizan 0.000786 hazards 0.000786 saddle 0.000786 lanka 0.000786 rack 0.000786 screw 0.000786 survivors 0.000785 darker 0.000785 reminds 0.000785 ignorant 0.000785 valve 0.000785 weaker 0.000785 racist 0.000784 disagree 0.000784 blaze 0.000784 topped 0.000784 cuba 0.000784 personalities 0.000784 scarce 0.000784 plainly 0.000784 defective 0.000784 reconciliation 0.000784 deterioration 0.000784 archives 0.000784 imaginary 0.000784 additions 0.000783 widened 0.000783 artillery 0.000783 distinctions 0.000783 irregular 0.000783 painters 0.000783 prestigious 0.000783 currencies 0.000783 cardboard 0.000782 revived 0.000782 chiefly 0.000782 religions 0.000782 accidental 0.000782 testimony 0.000782 workstation 0.000781 numbered 0.000781 pledged 0.000781 armchair 0.000781 cousins 0.000781 bankrupt 0.000781 fighters 0.000781 refuses 0.000781 procession 0.000781 ratings 0.000781 cnaa 0.000781 spr 0.000781 diarrhoea 0.000780 faintly 0.000780 europeans 0.000780 morrissey 0.000780 trio 0.000780 optimal 0.000780 detained 0.000780 cholesterol 0.000780 outright 0.000780 stirring 0.000779 scenario 0.000779 enzyme 0.000779 comprised 0.000779 reporters 0.000779 downwards 0.000779 terrorists 0.000779 slides 0.000779 bind 0.000779 progression 0.000779 containers 0.000778 obey 0.000778 tackled 0.000778 stabbed 0.000778 merrill 0.000778 hatch 0.000778 editing 0.000778 demographic 0.000778 dragging 0.000778 faction 0.000778 impulse 0.000778 magistrate 0.000778 herald 0.000778 theological 0.000777 alarmed 0.000777 halted 0.000777 realising 0.000777 dale 0.000777 tribe 0.000777 inputs 0.000777 vic 0.000775 positioned 0.000775 textile 0.000775 alexei 0.000775 stamped 0.000775 worcester 0.000775 pastoral 0.000775 norwegian 0.000775 adjoining 0.000775 mg 0.000775 innovations 0.000775 repayment 0.000775 touches 0.000774 relying 0.000774 births 0.000774 serbs 0.000774 resume 0.000774 reviewing 0.000774 ripped 0.000774 tomato 0.000774 diagnostic 0.000774 clutching 0.000774 sufferers 0.000774 corridors 0.000774 ecological 0.000773 wires 0.000773 undermined 0.000773 transitional 0.000773 consecutive 0.000773 timothy 0.000773 transparent 0.000773 postal 0.000772 exhibited 0.000772 juvenile 0.000772 donations 0.000772 diagnosed 0.000772 grouping 0.000772 anticipate 0.000772 editions 0.000772 proliferation 0.000771 fabrics 0.000771 economist 0.000771 proceeding 0.000771 bypass 0.000771 terminals 0.000771 excellence 0.000771 icl 0.000770 interpreting 0.000770 workings 0.000770 notices 0.000770 span 0.000770 tore 0.000770 confessed 0.000770 dump 0.000770 mcallister 0.000770 zambia 0.000770 sponsor 0.000770 grove 0.000770 parcel 0.000770 cloak 0.000770 harrogate 0.000769 composite 0.000769 marxism 0.000769 soils 0.000769 purse 0.000769 ironic 0.000769 beginnings 0.000769 regards 0.000769 raced 0.000769 fearful 0.000768 gloria 0.000768 fireplace 0.000768 tackling 0.000768 airways 0.000768 evaluated 0.000768 eagerly 0.000768 modify 0.000768 spy 0.000768 receipts 0.000768 originated 0.000768 thoughtfully 0.000768 cooling 0.000768 evenly 0.000768 severity 0.000768 waking 0.000768 fifteenth 0.000767 ellie 0.000767 curtis 0.000767 wards 0.000767 insert 0.000767 sparc 0.000767 attribute 0.000767 philippines 0.000767 bowls 0.000767 communal 0.000766 nephew 0.000766 fishermen 0.000766 collectors 0.000766 housework 0.000766 purity 0.000766 maternal 0.000766 nobility 0.000766 slumped 0.000765 perfection 0.000765 procedural 0.000765 noon 0.000765 opt 0.000765 notwithstanding 0.000765 lb 0.000764 sandra 0.000764 astonished 0.000764 posted 0.000764 nervously 0.000764 mips 0.000764 sunk 0.000764 litter 0.000764 strode 0.000764 legitimacy 0.000764 asserted 0.000763 dip 0.000763 foliage 0.000763 tolerance 0.000763 subsidy 0.000763 impatient 0.000763 rug 0.000763 joking 0.000763 cellular 0.000762 activated 0.000762 snatched 0.000762 hazardous 0.000762 ducks 0.000762 honesty 0.000762 corpus 0.000762 moisture 0.000762 buys 0.000762 ps 0.000762 branson 0.000762 breeds 0.000761 briefing 0.000761 trout 0.000761 palestinians 0.000761 fuller 0.000761 hopeful 0.000761 civilization 0.000760 horrified 0.000760 donated 0.000760 plight 0.000760 mergers 0.000760 confront 0.000759 prevents 0.000759 squared 0.000759 wax 0.000759 unification 0.000759 infinitive 0.000759 marital 0.000759 oneself 0.000759 vintage 0.000759 render 0.000758 dubious 0.000758 libya 0.000758 oddly 0.000758 belinda 0.000758 pillow 0.000758 monument 0.000758 christina 0.000758 narrowly 0.000758 exercising 0.000757 secretly 0.000757 socialists 0.000757 clashes 0.000757 penal 0.000757 cheers 0.000757 readings 0.000757 benny 0.000757 assistants 0.000757 derry 0.000757 demolished 0.000757 hints 0.000757 wears 0.000757 rupert 0.000757 tribal 0.000757 wholesale 0.000757 kindness 0.000755 sounding 0.000755 trolley 0.000755 twenties 0.000755 arisen 0.000755 maternity 0.000755 guitars 0.000755 rifle 0.000754 bitterness 0.000754 poole 0.000754 cocktail 0.000754 currents 0.000754 outsiders 0.000754 upward 0.000753 colchester 0.000753 pearl 0.000753 austrian 0.000753 thickness 0.000753 bullet 0.000753 kite 0.000753 drafted 0.000753 wycliffe 0.000753 cautiously 0.000753 en 0.000752 admittedly 0.000752 retiring 0.000752 daring 0.000752 rub 0.000752 loading 0.000752 farewell 0.000752 fines 0.000751 accusations 0.000751 mansell 0.000751 oracle 0.000751 insisting 0.000751 orkney 0.000751 retailers 0.000751 lifts 0.000751 geology 0.000751 elementary 0.000751 recurrent 0.000751 strokes 0.000751 suitably 0.000751 unlimited 0.000751 tutors 0.000750 impressions 0.000750 gareth 0.000750 infections 0.000750 sotheby 0.000750 discovering 0.000750 sharon 0.000750 jealousy 0.000750 preserving 0.000750 header 0.000750 bust 0.000750 incomplete 0.000749 lesbian 0.000749 saunders 0.000749 energetic 0.000749 singh 0.000749 orbit 0.000749 gel 0.000749 pathetic 0.000749 numerical 0.000749 platelet 0.000749 se 0.000748 chaired 0.000748 contradictory 0.000748 archaeology 0.000748 auguste 0.000748 nationality 0.000748 hosts 0.000747 cosy 0.000747 surveyor 0.000747 gripped 0.000747 salon 0.000747 pony 0.000747 preferable 0.000747 swollen 0.000747 bids 0.000746 bred 0.000746 breakthrough 0.000746 cafe 0.000746 vale 0.000746 unstable 0.000746 predecessors 0.000746 proclaimed 0.000746 kylie 0.000746 jessica 0.000746 consolidated 0.000745 hurd 0.000745 weary 0.000745 masculine 0.000745 concession 0.000745 robust 0.000745 sinister 0.000745 tens 0.000745 int 0.000744 perspectives 0.000744 endeavour 0.000744 unsuitable 0.000744 sutherland 0.000744 dietary 0.000744 oriental 0.000744 suspects 0.000744 sometime 0.000744 stalls 0.000743 macintosh 0.000743 contrasting 0.000743 glancing 0.000743 stack 0.000743 glue 0.000743 cumulative 0.000743 handkerchief 0.000743 bending 0.000743 contractor 0.000743 morse 0.000742 admiral 0.000742 luckily 0.000742 fairness 0.000741 packs 0.000741 baths 0.000741 scholar 0.000741 polymer 0.000741 highland 0.000741 internationally 0.000741 cyprus 0.000741 reassuring 0.000740 archive 0.000740 contradictions 0.000740 charlton 0.000740 guerrillas 0.000740 handles 0.000739 prosperous 0.000739 adjustments 0.000739 boiled 0.000739 clinging 0.000739 thanked 0.000739 chemist 0.000739 chess 0.000739 factions 0.000738 terrorism 0.000738 doubted 0.000738 auckland 0.000738 resemblance 0.000738 summons 0.000738 retains 0.000737 runner 0.000737 sailors 0.000737 exams 0.000737 tyne 0.000737 quotes 0.000737 lang 0.000737 incorrect 0.000737 powered 0.000737 residual 0.000737 finely 0.000737 madonna 0.000735 reproduced 0.000735 dances 0.000735 marco 0.000735 chef 0.000735 doreen 0.000735 buffer 0.000735 picnic 0.000734 registers 0.000734 examines 0.000734 alain 0.000734 crosses 0.000734 lodged 0.000734 emotionally 0.000734 cord 0.000734 assert 0.000734 tendencies 0.000734 exempt 0.000734 telephoned 0.000734 objected 0.000734 knot 0.000733 transferring 0.000733 paisley 0.000733 charitable 0.000733 mucosal 0.000732 halifax 0.000732 realisation 0.000732 spectators 0.000732 wander 0.000731 guinea 0.000731 feminism 0.000731 spun 0.000731 acquisitions 0.000731 aftermath 0.000731 contingent 0.000731 ramsey 0.000731 partnerships 0.000730 relaxing 0.000730 lindsey 0.000730 induction 0.000730 fabulous 0.000730 nylon 0.000730 para 0.000730 hid 0.000730 boiler 0.000729 selfish 0.000729 depot 0.000729 spiral 0.000729 repression 0.000729 releasing 0.000729 gooch 0.000729 interestingly 0.000729 hedges 0.000728 joins 0.000728 nets 0.000728 lorries 0.000728 imposition 0.000728 lawson 0.000728 cellar 0.000728 descriptive 0.000728 anthropology 0.000728 voyage 0.000728 filthy 0.000728 demise 0.000728 robson 0.000728 diving 0.000728 rugs 0.000728 painfully 0.000727 arbitration 0.000727 founding 0.000727 idle 0.000727 competitions 0.000727 depressing 0.000727 reproductive 0.000727 malaysia 0.000727 surveyed 0.000727 hudson 0.000727 fights 0.000727 contention 0.000727 comprise 0.000727 triple 0.000727 rogers 0.000727 particle 0.000727 resistant 0.000726 sh 0.000726 lab 0.000726 oppression 0.000726 investigators 0.000726 substitution 0.000726 fixing 0.000725 carlisle 0.000725 dana 0.000725 dee 0.000725 mint 0.000725 virtues 0.000725 inward 0.000725 disabilities 0.000725 volcanic 0.000725 uneven 0.000725 guarded 0.000725 hardship 0.000725 sexes 0.000724 lp 0.000724 conveyed 0.000724 ongoing 0.000724 alteration 0.000724 attorney 0.000724 rewarding 0.000724 helmet 0.000724 mock 0.000724 stamps 0.000724 accelerated 0.000724 utter 0.000724 learners 0.000723 conceal 0.000723 discomfort 0.000723 islam 0.000723 ribs 0.000723 rulers 0.000723 aerial 0.000723 upgrade 0.000723 foam 0.000723 administrator 0.000723 tempting 0.000722 fellows 0.000722 naughty 0.000722 mob 0.000722 odour 0.000722 freshly 0.000721 roofs 0.000721 delta 0.000721 cracks 0.000721 peg 0.000721 trucks 0.000721 strathclyde 0.000721 wilderness 0.000721 dumping 0.000721 vet 0.000721 unpredictable 0.000720 servers 0.000720 leas 0.000720 discoveries 0.000720 excise 0.000720 mansion 0.000720 censorship 0.000720 swansea 0.000720 premiums 0.000719 griffiths 0.000719 drastic 0.000719 gavin 0.000719 morrison 0.000719 tate 0.000719 flush 0.000719 susceptible 0.000719 disclose 0.000719 monsieur 0.000719 poised 0.000719 fountain 0.000718 min 0.000718 stumbled 0.000718 gentry 0.000718 flourish 0.000718 cares 0.000718 globe 0.000718 processors 0.000718 giants 0.000717 deception 0.000717 doses 0.000717 herd 0.000717 apology 0.000717 senator 0.000717 depicted 0.000717 erika 0.000717 daft 0.000717 cement 0.000717 thermal 0.000715 gmt 0.000715 speculative 0.000715 onion 0.000715 resolutions 0.000715 playground 0.000715 therapist 0.000715 blows 0.000715 rumour 0.000714 terminology 0.000714 pascoe 0.000714 dickens 0.000714 amp 0.000714 taxpayers 0.000714 mexican 0.000714 confirms 0.000713 renowned 0.000713 caps 0.000713 doorstep 0.000713 locality 0.000713 referral 0.000713 inflammatory 0.000713 worms 0.000713 sliced 0.000713 prototype 0.000713 marc 0.000712 angus 0.000712 gloomy 0.000712 sustainable 0.000711 transported 0.000711 garment 0.000711 supplements 0.000711 exterior 0.000711 radar 0.000711 irritation 0.000711 therapeutic 0.000711 piled 0.000711 grinning 0.000711 apt 0.000711 gandhi 0.000711 ch 0.000711 singers 0.000711 deficiency 0.000710 departed 0.000710 enthusiasts 0.000710 auntie 0.000710 proximity 0.000710 anxiously 0.000710 saves 0.000710 beforehand 0.000710 legendary 0.000709 kathleen 0.000709 um 0.000709 severn 0.000709 paradox 0.000709 retrieval 0.000709 kensington 0.000709 brook 0.000709 tumours 0.000709 entitlement 0.000709 matilda 0.000709 finland 0.000708 granting 0.000708 probation 0.000708 horns 0.000708 punished 0.000708 chimney 0.000708 marker 0.000708 warwick 0.000708 costume 0.000708 overtime 0.000708 dispersed 0.000707 risky 0.000707 secrecy 0.000707 lens 0.000707 catalogues 0.000707 hepatitis 0.000707 quotation 0.000707 markedly 0.000707 manifest 0.000707 startling 0.000706 melanie 0.000706 walsh 0.000706 icy 0.000706 allegiance 0.000706 grouped 0.000706 spider 0.000706 dementia 0.000706 cambodia 0.000705 meadow 0.000705 midst 0.000705 richer 0.000705 nucleus 0.000705 uncovered 0.000705 jerked 0.000705 tariff 0.000704 chuck 0.000704 bernice 0.000704 balancing 0.000704 proposes 0.000704 nut 0.000704 prescription 0.000704 panama 0.000704 suburbs 0.000704 ineffective 0.000704 luggage 0.000704 farmhouse 0.000704 uncommon 0.000703 headline 0.000703 pinned 0.000703 cocaine 0.000703 hesitation 0.000703 suburban 0.000703 knives 0.000703 harmless 0.000703 ribbon 0.000703 relational 0.000703 famine 0.000702 intellectuals 0.000702 jenna 0.000702 climax 0.000702 afghanistan 0.000702 tactical 0.000702 communicating 0.000702 recipient 0.000702 quinn 0.000701 debated 0.000701 scan 0.000701 obsession 0.000701 instincts 0.000701 webb 0.000701 sleeves 0.000701 coun 0.000701 sour 0.000701 understands 0.000701 recipes 0.000701 treaties 0.000700 catches 0.000700 drums 0.000700 pauline 0.000700 polar 0.000700 trainees 0.000700 nancy 0.000700 toe 0.000699 honoured 0.000699 cairo 0.000699 affinity 0.000699 seb 0.000699 baked 0.000699 regression 0.000699 inequalities 0.000699 navigation 0.000699 terrific 0.000698 hostages 0.000698 weigh 0.000698 lateral 0.000698 tottenham 0.000698 vector 0.000698 deed 0.000698 murders 0.000697 outrage 0.000697 immensely 0.000697 ale 0.000697 pledge 0.000697 acceleration 0.000697 restless 0.000697 emphasize 0.000697 crust 0.000697 wolves 0.000697 acoustic 0.000697 rigorous 0.000697 tag 0.000695 gestures 0.000695 disappearance 0.000695 indemnity 0.000695 dive 0.000695 jar 0.000695 disturbances 0.000694 lambert 0.000694 determines 0.000694 lightweight 0.000694 disgust 0.000694 roar 0.000694 summarised 0.000694 haven 0.000693 queries 0.000693 commanding 0.000693 melt 0.000693 accountable 0.000693 correction 0.000693 cannon 0.000693 portrayed 0.000693 spacious 0.000692 switches 0.000692 meaningless 0.000692 beirut 0.000692 motions 0.000692 inspect 0.000692 beta 0.000692 attendant 0.000692 norton 0.000692 roland 0.000692 drilling 0.000692 cor 0.000692 rails 0.000692 commenced 0.000692 zimbabwe 0.000692 colouring 0.000691 fascism 0.000691 shaping 0.000691 sprang 0.000691 fascist 0.000691 newsletter 0.000691 weeping 0.000691 lever 0.000691 berkshire 0.000691 confess 0.000691 confidentiality 0.000690 bowler 0.000690 tricky 0.000690 defenders 0.000690 backward 0.000690 gleaming 0.000690 impetus 0.000690 expelled 0.000689 alas 0.000689 latent 0.000689 solvent 0.000689 proudly 0.000689 bedford 0.000689 watt 0.000689 clusters 0.000689 wigan 0.000689 frankie 0.000689 philosophers 0.000689 balances 0.000688 mapping 0.000688 wirral 0.000688 insult 0.000688 clung 0.000688 oscar 0.000688 vauxhall 0.000688 focuses 0.000688 lime 0.000688 duodenal 0.000687 filing 0.000687 constraint 0.000687 swap 0.000687 imagery 0.000687 diabetes 0.000687 ranged 0.000687 stretches 0.000687 presumed 0.000687 corporal 0.000687 landscapes 0.000687 asthma 0.000687 graphical 0.000686 commercially 0.000686 dome 0.000686 tenure 0.000686 eleventh 0.000686 brackets 0.000686 traded 0.000686 labourers 0.000686 grasped 0.000686 earnest 0.000686 alarming 0.000685 rebecca 0.000685 impaired 0.000685 retailer 0.000685 kenny 0.000685 balloon 0.000685 extensions 0.000685 gps 0.000685 wrongly 0.000684 warsaw 0.000684 entertain 0.000684 signalled 0.000684 beams 0.000684 drifting 0.000684 mattered 0.000684 safeguard 0.000684 disbelief 0.000684 gnp 0.000684 thy 0.000684 distortion 0.000684 contaminated 0.000684 ruthless 0.000684 rehearsal 0.000684 sexy 0.000684 stalin 0.000684 thee 0.000684 lethal 0.000684 limb 0.000684 registrar 0.000684 manages 0.000684 monuments 0.000684 indoors 0.000683 starving 0.000683 obedience 0.000683 owes 0.000683 innings 0.000683 bidding 0.000683 pioneer 0.000683 attic 0.000683 temples 0.000682 recognises 0.000682 heathrow 0.000682 melody 0.000682 ditch 0.000682 verge 0.000682 novelist 0.000682 polytechnics 0.000682 fascination 0.000682 connecting 0.000682 atmospheric 0.000682 widening 0.000682 relies 0.000682 tooth 0.000682 drawers 0.000682 recruits 0.000682 idiot 0.000682 scepticism 0.000682 ashore 0.000681 glossy 0.000681 loosely 0.000681 calculating 0.000681 eden 0.000681 obstacle 0.000681 rays 0.000681 trailing 0.000681 potter 0.000681 intrinsic 0.000681 sends 0.000681 coincide 0.000681 sung 0.000681 shortages 0.000681 knitted 0.000681 inconsistent 0.000681 housewife 0.000680 aston 0.000680 quarterly 0.000680 oval 0.000680 henderson 0.000680 organiser 0.000680 centrally 0.000680 viii 0.000680 outward 0.000680 clenched 0.000680 hierarchical 0.000680 unpopular 0.000679 wrap 0.000679 ruc 0.000679 radius 0.000679 spoil 0.000679 calf 0.000679 confession 0.000679 butterfly 0.000679 liking 0.000679 countless 0.000678 learner 0.000678 skirts 0.000678 moors 0.000678 glittering 0.000678 outlines 0.000678 simultaneous 0.000678 regulate 0.000677 skeleton 0.000677 circulated 0.000677 ghosts 0.000677 tha 0.000677 drought 0.000677 induce 0.000677 peach 0.000677 labelling 0.000677 victories 0.000677 hans 0.000677 fares 0.000677 disposition 0.000676 embodied 0.000676 bangor 0.000676 alley 0.000676 marshal 0.000676 sworn 0.000676 barclays 0.000676 reservation 0.000676 italians 0.000676 dam 0.000676 arrogant 0.000676 advancing 0.000676 downs 0.000676 entities 0.000676 crane 0.000676 staggered 0.000676 disputed 0.000676 disturb 0.000674 militant 0.000674 defines 0.000674 compassion 0.000674 overwhelmed 0.000674 wheelchair 0.000674 coarse 0.000674 shillings 0.000674 click 0.000674 conquest 0.000673 massage 0.000673 cecil 0.000673 contamination 0.000673 arrears 0.000673 encounters 0.000673 rubbing 0.000673 mutually 0.000673 consciously 0.000673 thoughtful 0.000672 slump 0.000672 carriers 0.000672 ginger 0.000672 barracks 0.000672 supplemented 0.000672 jaws 0.000672 skies 0.000671 alton 0.000671 expresses 0.000671 picks 0.000671 filters 0.000671 anglican 0.000671 spells 0.000671 flicked 0.000671 motors 0.000671 skins 0.000671 immunity 0.000671 spectacle 0.000670 doomed 0.000670 employs 0.000670 daisy 0.000670 incompatible 0.000670 jake 0.000670 fists 0.000670 regimes 0.000670 advocates 0.000670 buzz 0.000669 leigh 0.000669 nanny 0.000669 cultivated 0.000669 darren 0.000669 conveniently 0.000669 arguably 0.000669 bald 0.000669 prohibited 0.000668 mare 0.000668 imitation 0.000668 fourteenth 0.000668 microwave 0.000668 collision 0.000668 variance 0.000668 ripe 0.000667 heavens 0.000667 louder 0.000667 hooked 0.000667 straightened 0.000667 filming 0.000667 muddy 0.000666 apartments 0.000666 banbury 0.000666 abundance 0.000666 summed 0.000666 aided 0.000666 gateway 0.000666 interviewing 0.000666 monk 0.000666 munich 0.000666 greenpeace 0.000666 spouse 0.000665 participant 0.000665 discontent 0.000665 amanda 0.000665 organizing 0.000665 dashed 0.000665 petroleum 0.000665 finite 0.000665 tolerate 0.000665 preoccupied 0.000665 combines 0.000665 echoes 0.000665 photographers 0.000665 developmental 0.000664 lili 0.000664 governmental 0.000664 statutes 0.000664 nme 0.000664 elusive 0.000664 triggered 0.000664 palms 0.000664 scanning 0.000664 kohl 0.000664 extremes 0.000664 seals 0.000663 disliked 0.000663 guitarist 0.000663 interruption 0.000663 dedication 0.000663 piles 0.000663 typing 0.000663 tenancy 0.000663 responsive 0.000663 mickey 0.000663 reformers 0.000663 distressed 0.000662 ronald 0.000662 bedside 0.000662 mildly 0.000662 cornelius 0.000662 romanian 0.000662 hmm 0.000662 shivered 0.000662 ni 0.000662 planets 0.000662 blazing 0.000662 emission 0.000662 scarborough 0.000662 insulin 0.000662 peas 0.000662 goat 0.000661 propositions 0.000661 attacker 0.000661 muscular 0.000661 massacre 0.000661 unofficial 0.000661 rim 0.000661 inspectorate 0.000661 lowering 0.000661 slate 0.000661 performers 0.000661 campus 0.000661 sucked 0.000661 rejecting 0.000661 cox 0.000660 graves 0.000660 oldham 0.000660 unsure 0.000660 impress 0.000660 gorgeous 0.000660 hypotheses 0.000660 conductor 0.000660 mohammed 0.000659 leapor 0.000659 schedules 0.000659 reproduce 0.000659 committing 0.000659 squash 0.000659 stan 0.000659 mandy 0.000659 noun 0.000658 edged 0.000658 henley 0.000658 curls 0.000658 carlos 0.000658 lou 0.000658 sensory 0.000658 rationality 0.000658 authoritative 0.000658 malta 0.000658 parishes 0.000658 instinctively 0.000658 physiological 0.000658 suspicions 0.000658 clerks 0.000658 mirrors 0.000658 regeneration 0.000657 drunken 0.000657 peninsula 0.000657 tomb 0.000657 croydon 0.000657 injustice 0.000657 melting 0.000657 salvador 0.000657 outrageous 0.000657 lied 0.000657 mandate 0.000657 pearce 0.000656 diabetic 0.000656 junk 0.000656 admitting 0.000656 terrifying 0.000656 tribes 0.000656 sober 0.000656 granny 0.000656 serbia 0.000656 undergraduate 0.000656 floated 0.000656 compass 0.000654 undesirable 0.000654 rocket 0.000654 supervised 0.000654 generosity 0.000654 kitchens 0.000654 displaying 0.000654 twisting 0.000654 leonora 0.000654 musician 0.000654 counsellor 0.000654 circuits 0.000654 reminiscent 0.000654 bland 0.000654 reverend 0.000654 wacc 0.000653 derives 0.000653 wastes 0.000653 dwarf 0.000653 eccentric 0.000653 civilisation 0.000653 sentiment 0.000653 variants 0.000653 declaring 0.000653 mars 0.000652 hart 0.000652 ammunition 0.000652 outgoing 0.000652 fletcher 0.000652 intending 0.000652 theatrical 0.000652 electrons 0.000652 greeting 0.000652 acquaintance 0.000652 hybrid 0.000652 query 0.000651 redundancies 0.000651 pleasing 0.000651 deeds 0.000651 indifferent 0.000651 yugoslav 0.000651 furiously 0.000651 boycott 0.000651 excuses 0.000651 frances 0.000650 dusk 0.000650 cables 0.000650 qualitative 0.000650 undergo 0.000650 homosexuality 0.000650 dynamics 0.000650 shrewsbury 0.000650 johnston 0.000650 pleasures 0.000650 explanatory 0.000650 terrain 0.000650 monastery 0.000649 trainee 0.000649 articulate 0.000649 airfield 0.000649 peggy 0.000649 disappearing 0.000649 medicines 0.000649 dental 0.000649 haul 0.000649 outskirts 0.000649 profoundly 0.000649 regain 0.000649 biting 0.000648 stables 0.000648 indifference 0.000648 mellor 0.000648 trench 0.000648 routines 0.000648 cohen 0.000647 handbag 0.000647 cater 0.000647 profiles 0.000647 broadcasts 0.000647 spokeswoman 0.000647 pi 0.000647 chooses 0.000646 optimum 0.000646 mortar 0.000646 admissions 0.000646 witch 0.000646 junctions 0.000646 ecstasy 0.000646 behaving 0.000646 escaping 0.000646 corrupt 0.000646 rev 0.000646 stove 0.000645 competitor 0.000645 picturesque 0.000645 nec 0.000645 repay 0.000645 stevens 0.000645 drafting 0.000645 donor 0.000645 surgeons 0.000645 deterrent 0.000645 bomber 0.000645 congratulations 0.000644 galaxy 0.000644 geared 0.000644 hobby 0.000644 enclosure 0.000644 boarding 0.000644 dixon 0.000644 foremost 0.000644 residues 0.000644 prominence 0.000643 generic 0.000643 garments 0.000643 scrambled 0.000643 ivy 0.000643 recruiting 0.000643 chatting 0.000643 mitterrand 0.000643 stoke 0.000643 booth 0.000642 comprehension 0.000642 bugger 0.000642 slices 0.000642 hauled 0.000642 reorganisation 0.000642 deferred 0.000642 frustrating 0.000642 mandela 0.000642 motorists 0.000642 effected 0.000642 mercedes 0.000641 manoeuvre 0.000641 muslims 0.000641 barton 0.000641 bulgaria 0.000641 chased 0.000641 fernando 0.000641 hardest 0.000641 masklin 0.000641 coke 0.000641 pistol 0.000641 gatt 0.000641 delegate 0.000641 distribute 0.000641 tangible 0.000640 prop 0.000640 feudal 0.000640 opted 0.000640 harassment 0.000640 euro 0.000640 particulars 0.000640 presentations 0.000640 compelling 0.000640 barred 0.000640 beck 0.000640 environmentally 0.000640 lithuania 0.000639 advising 0.000639 gran 0.000639 amino 0.000639 lincolnshire 0.000639 moustache 0.000639 lenin 0.000639 heroic 0.000639 donation 0.000639 erect 0.000639 woven 0.000639 cooperative 0.000639 michelle 0.000639 devotion 0.000638 walkers 0.000638 ordeal 0.000638 mouths 0.000638 legion 0.000638 pasture 0.000638 fertile 0.000638 separating 0.000638 devote 0.000638 duchy 0.000638 beads 0.000638 splitting 0.000638 paramount 0.000638 sewing 0.000638 sweater 0.000638 tick 0.000638 nicky 0.000638 thirteenth 0.000638 doe 0.000637 directing 0.000637 roared 0.000637 guiding 0.000637 reassure 0.000637 displaced 0.000637 plots 0.000637 readiness 0.000637 infantry 0.000637 projection 0.000637 obsessed 0.000636 genre 0.000636 distinguishing 0.000636 deployed 0.000636 journalism 0.000636 baking 0.000636 pensioner 0.000636 stride 0.000636 embarked 0.000636 banker 0.000636 wretched 0.000636 hillside 0.000634 brake 0.000634 identifies 0.000634 ragged 0.000634 internally 0.000634 downward 0.000634 expose 0.000634 prayed 0.000634 torque 0.000634 circumstance 0.000633 shrubs 0.000633 bosnian 0.000633 outsider 0.000633 ronnie 0.000633 simplified 0.000633 expressly 0.000633 merged 0.000633 benches 0.000633 omission 0.000633 crouched 0.000632 dispose 0.000632 listeners 0.000632 hockey 0.000632 contemplate 0.000632 anchor 0.000632 abundant 0.000632 restoring 0.000632 raped 0.000632 ecology 0.000632 socket 0.000631 glucose 0.000631 sins 0.000631 commodities 0.000631 sherry 0.000631 assignments 0.000631 productions 0.000631 minimise 0.000630 reminding 0.000630 groaned 0.000630 appalled 0.000630 tougher 0.000630 baxter 0.000630 shropshire 0.000630 wagon 0.000630 momentarily 0.000630 communion 0.000630 loft 0.000629 definitive 0.000629 wellington 0.000629 discretionary 0.000629 silicon 0.000629 dancer 0.000629 blunt 0.000629 stewards 0.000629 apologise 0.000629 unveiled 0.000629 wallet 0.000629 pulls 0.000629 philosopher 0.000629 provoke 0.000628 loneliness 0.000628 modigliani 0.000628 unpaid 0.000628 shoots 0.000628 handwriting 0.000628 prohibition 0.000628 si 0.000628 sufferer 0.000628 adjourned 0.000628 continual 0.000627 arrows 0.000627 blinked 0.000627 epic 0.000627 undertakings 0.000627 creole 0.000627 devastated 0.000627 gravitational 0.000627 tearing 0.000627 intriguing 0.000627 moses 0.000627 convoy 0.000627 bark 0.000627 pill 0.000626 lyons 0.000626 redemption 0.000626 worm 0.000626 puzzle 0.000626 online 0.000626 unmarried 0.000626 purchasers 0.000626 kidney 0.000625 sierra 0.000625 hague 0.000625 bursting 0.000625 castles 0.000625 searches 0.000625 laughs 0.000625 tins 0.000625 critically 0.000624 hissed 0.000624 proprietary 0.000624 der 0.000624 elephants 0.000624 presidents 0.000624 parameter 0.000624 undertook 0.000624 invaded 0.000624 nottinghamshire 0.000624 translate 0.000624 upheld 0.000624 equitable 0.000623 shocking 0.000623 infinitely 0.000623 syllabus 0.000623 maiden 0.000623 micro 0.000623 compares 0.000623 imperative 0.000623 bounds 0.000623 spreadsheet 0.000623 grandson 0.000622 tyre 0.000622 finn 0.000622 nomination 0.000622 costa 0.000622 fatty 0.000622 humiliation 0.000622 genesis 0.000622 beth 0.000622 persuading 0.000621 dole 0.000621 closures 0.000621 paints 0.000621 intensified 0.000621 breadth 0.000621 nationalists 0.000621 exceeds 0.000621 spectacles 0.000621 geometric 0.000621 brewing 0.000620 ventilation 0.000620 crystals 0.000620 blades 0.000620 introduces 0.000619 insulation 0.000619 algae 0.000619 cia 0.000619 pipeline 0.000619 brooke 0.000619 underway 0.000619 regent 0.000619 dictated 0.000619 offender 0.000619 swell 0.000619 overt 0.000619 abbot 0.000619 web 0.000619 gastrin 0.000618 judgments 0.000618 warmly 0.000618 morally 0.000618 orderly 0.000618 modular 0.000618 delhi 0.000618 boredom 0.000618 tsar 0.000618 seize 0.000618 impatiently 0.000618 flu 0.000617 whale 0.000617 marrying 0.000617 robbed 0.000617 fulfilment 0.000617 liquidity 0.000617 precautions 0.000617 bourgeoisie 0.000617 tt 0.000617 attributable 0.000617 tan 0.000617 cheerfully 0.000617 craftsmen 0.000617 vicinity 0.000617 stocking 0.000617 demolition 0.000617 barley 0.000617 restrained 0.000617 afforded 0.000617 warmer 0.000617 librarians 0.000617 instructor 0.000617 sketches 0.000616 labs 0.000616 dangerously 0.000616 suitcase 0.000616 instability 0.000616 pills 0.000616 survives 0.000616 fumes 0.000616 spark 0.000616 dread 0.000616 universally 0.000616 pork 0.000616 descending 0.000616 ssr 0.000616 grimly 0.000616 practicable 0.000616 ingredient 0.000614 ropes 0.000614 brazilian 0.000614 patriotic 0.000614 somalia 0.000614 terraces 0.000614 outlet 0.000614 expectancy 0.000614 judith 0.000614 distal 0.000614 crises 0.000614 devlin 0.000614 proprietor 0.000613 pretended 0.000613 clough 0.000613 knots 0.000613 quarrel 0.000613 brakes 0.000613 compartment 0.000613 goddess 0.000613 ashdown 0.000613 stout 0.000613 tess 0.000613 subsidiaries 0.000613 turf 0.000613 marching 0.000613 climbers 0.000613 interact 0.000613 govern 0.000612 corresponds 0.000612 penetration 0.000612 mahogany 0.000612 compression 0.000612 sediment 0.000612 exhibits 0.000612 taller 0.000612 unrealistic 0.000612 faye 0.000612 hilton 0.000612 inefficient 0.000612 undergoing 0.000611 elastic 0.000611 coupon 0.000611 coincided 0.000611 beats 0.000611 peterborough 0.000611 monkey 0.000611 treasures 0.000611 visually 0.000611 bolton 0.000611 baghdad 0.000611 missionary 0.000611 pike 0.000611 crashing 0.000611 syntax 0.000611 marion 0.000611 desperation 0.000610 crest 0.000610 frantic 0.000610 chile 0.000610 frankfurt 0.000610 bulbs 0.000610 cs 0.000610 sellers 0.000610 pioneering 0.000610 careless 0.000610 arrests 0.000610 tentative 0.000609 mat 0.000609 seriousness 0.000609 microscope 0.000609 bookings 0.000609 greet 0.000609 sting 0.000609 frenchman 0.000609 addiction 0.000609 diocese 0.000609 herr 0.000609 devise 0.000609 killings 0.000609 renault 0.000608 exported 0.000608 praying 0.000608 retorted 0.000608 plump 0.000608 intimacy 0.000608 biscuit 0.000608 conferred 0.000608 fuels 0.000607 cans 0.000607 hairs 0.000607 misunderstanding 0.000607 mungo 0.000607 compounded 0.000607 scum 0.000607 computerised 0.000607 theoretically 0.000607 predator 0.000606 assassination 0.000606 moist 0.000606 poses 0.000606 ads 0.000606 hesitate 0.000606 engels 0.000606 lebanese 0.000606 builds 0.000606 dismay 0.000605 longed 0.000605 poisoning 0.000605 bless 0.000605 hunters 0.000605 succeeding 0.000605 plague 0.000605 acre 0.000605 applause 0.000604 buffet 0.000604 taxed 0.000604 undergone 0.000604 frail 0.000604 glamorous 0.000604 middlesex 0.000604 seeming 0.000604 inmates 0.000604 multinational 0.000604 jamaica 0.000604 discounts 0.000604 housekeeper 0.000604 atkinson 0.000604 yuan 0.000604 gardeners 0.000604 throws 0.000603 ministries 0.000603 verses 0.000603 pants 0.000603 stereo 0.000603 gig 0.000603 goats 0.000603 honeymoon 0.000603 markers 0.000603 piers 0.000603 brenda 0.000603 fake 0.000602 postcard 0.000602 yourselves 0.000602 mole 0.000602 stripes 0.000602 ivan 0.000602 logically 0.000602 additionally 0.000602 pitched 0.000602 cockpit 0.000602 warrior 0.000602 seaside 0.000601 banner 0.000601 perched 0.000601 concentrates 0.000601 perth 0.000601 luxembourg 0.000601 sorrow 0.000600 intensely 0.000600 minded 0.000600 blankets 0.000600 packets 0.000600 judy 0.000600 symptom 0.000600 violin 0.000600 austin 0.000600 fences 0.000600 veto 0.000599 chord 0.000599 anguish 0.000599 jackets 0.000599 whereabouts 0.000599 staggering 0.000599 extraction 0.000599 ramsay 0.000599 preoccupation 0.000599 ants 0.000599 dentist 0.000598 resemble 0.000598 unrelated 0.000598 barrow 0.000598 souness 0.000598 complexes 0.000598 myths 0.000598 theatres 0.000598 vaughan 0.000598 tariffs 0.000598 interfaces 0.000598 mister 0.000598 confirming 0.000597 preaching 0.000597 differentiated 0.000597 rebuilding 0.000597 typed 0.000597 dwelling 0.000597 diamonds 0.000597 wicket 0.000596 dissatisfaction 0.000596 weeds 0.000596 pins 0.000596 warns 0.000596 diplomacy 0.000596 acknowledgement 0.000596 reckless 0.000596 pointless 0.000596 treats 0.000596 granite 0.000596 gin 0.000596 wreck 0.000596 sunset 0.000596 steer 0.000596 maritime 0.000596 firemen 0.000594 validation 0.000594 anselm 0.000594 bolts 0.000594 networking 0.000594 compost 0.000594 competitiveness 0.000594 lenders 0.000594 polo 0.000594 guerrilla 0.000594 forged 0.000594 rationale 0.000594 larvae 0.000594 mushrooms 0.000594 hurdle 0.000594 sha 0.000593 exert 0.000593 identifiable 0.000593 periodic 0.000593 disadvantaged 0.000593 watches 0.000593 larry 0.000593 bloom 0.000593 irene 0.000593 sentencing 0.000593 beware 0.000593 canteen 0.000593 hyde 0.000593 coldly 0.000592 reg 0.000592 glare 0.000592 pronunciation 0.000592 edgar 0.000592 underlined 0.000592 tails 0.000592 fender 0.000592 bait 0.000592 sipped 0.000591 lavatory 0.000591 raining 0.000591 peering 0.000591 copying 0.000591 rectangular 0.000591 quotas 0.000591 berkeley 0.000591 gradient 0.000591 realization 0.000591 shouts 0.000591 interviewer 0.000591 tracey 0.000591 artefacts 0.000591 morocco 0.000590 multiply 0.000590 endorsement 0.000590 gina 0.000590 bewildered 0.000590 kinship 0.000590 abolish 0.000590 installations 0.000590 extinction 0.000590 darkened 0.000590 inset 0.000590 donaldson 0.000590 plunge 0.000590 moslem 0.000590 phoenix 0.000590 harvard 0.000590 chop 0.000589 scarf 0.000589 repertoire 0.000589 montgomery 0.000589 striped 0.000589 overs 0.000589 commonplace 0.000589 lynn 0.000589 wed 0.000589 burglary 0.000589 armoured 0.000589 suppress 0.000589 creep 0.000589 cavalry 0.000589 poorest 0.000589 pinch 0.000588 transportation 0.000588 trader 0.000588 tract 0.000588 walton 0.000588 grandparents 0.000588 sculptures 0.000588 dipped 0.000588 sands 0.000588 barrels 0.000588 introductory 0.000588 biased 0.000587 debbie 0.000587 bungalow 0.000587 diverted 0.000587 pearson 0.000587 resorts 0.000587 converting 0.000587 shetland 0.000587 signalling 0.000587 solaris 0.000587 mantle 0.000587 lambs 0.000586 discreet 0.000586 brighter 0.000586 teasing 0.000586 parsons 0.000586 curb 0.000586 bella 0.000586 offline 0.000586 bacterial 0.000586 rhythms 0.000586 shrine 0.000586 reshuffle 0.000586 dissent 0.000586 identifier 0.000585 pier 0.000585 attained 0.000585 lexicon 0.000585 onions 0.000585 diversion 0.000585 embraced 0.000585 perfume 0.000585 referrals 0.000585 temperament 0.000585 mama 0.000585 vigour 0.000585 yielded 0.000585 skip 0.000585 saloon 0.000585 addictive 0.000585 melted 0.000585 fen 0.000585 retrospective 0.000585 popped 0.000584 supermarkets 0.000584 facial 0.000584 midday 0.000584 algorithm 0.000584 dripping 0.000584 kgb 0.000584 cracking 0.000584 commenting 0.000584 astonishment 0.000584 manuscripts 0.000584 underwent 0.000583 penetrate 0.000583 crescent 0.000583 fallon 0.000583 arithmetic 0.000583 rung 0.000583 leak 0.000583 deborah 0.000583 badge 0.000583 extraordinarily 0.000583 influencing 0.000583 arse 0.000582 fading 0.000582 bullets 0.000582 directives 0.000582 threatens 0.000582 finishes 0.000582 scare 0.000582 mortgages 0.000582 temporal 0.000582 roundabout 0.000582 needless 0.000582 binoculars 0.000582 isaac 0.000582 elimination 0.000582 presume 0.000582 winston 0.000582 detachment 0.000582 rot 0.000582 incorporates 0.000581 accusing 0.000581 leicestershire 0.000581 reunion 0.000581 alliances 0.000581 antonio 0.000581 bubble 0.000581 writ 0.000581 rig 0.000581 deployment 0.000581 warriors 0.000581 evaluating 0.000580 jug 0.000580 nodding 0.000580 roast 0.000580 bmw 0.000580 bounced 0.000580 exhaust 0.000580 distributor 0.000580 locke 0.000580 huh 0.000580 atom 0.000580 brokers 0.000580 michel 0.000580 manipulate 0.000580 forgiven 0.000579 flowed 0.000579 burrows 0.000579 satisfactorily 0.000579 curry 0.000579 convent 0.000579 missions 0.000579 stationed 0.000579 smash 0.000578 porch 0.000578 pasta 0.000578 broker 0.000578 elinor 0.000578 tunnels 0.000578 warrington 0.000578 jon 0.000578 royalty 0.000578 activation 0.000578 oct 0.000578 swore 0.000578 donkey 0.000578 burun 0.000578 auditor 0.000578 textiles 0.000578 kemp 0.000578 baroque 0.000578 cheapest 0.000578 dotted 0.000578 informative 0.000578 molla 0.000577 cole 0.000577 denounced 0.000577 philips 0.000577 newcomers 0.000577 soaked 0.000577 crusade 0.000577 kisses 0.000577 ions 0.000577 turmoil 0.000577 kills 0.000577 engaging 0.000577 rachaela 0.000577 diagrams 0.000577 kurdish 0.000577 consolation 0.000576 belts 0.000576 laundry 0.000576 basal 0.000576 persuasive 0.000576 staining 0.000576 covenants 0.000576 handbook 0.000576 emptied 0.000576 accidentally 0.000576 spat 0.000576 entertained 0.000576 possessing 0.000574 knelt 0.000574 lasts 0.000574 oath 0.000574 cancellation 0.000574 exquisite 0.000574 initiate 0.000574 photographed 0.000574 willis 0.000574 contested 0.000574 confidently 0.000574 troop 0.000574 composers 0.000574 aquitaine 0.000573 persist 0.000573 miguel 0.000573 stylistic 0.000573 derelict 0.000573 elect 0.000573 insignificant 0.000573 reassurance 0.000573 stranded 0.000573 nought 0.000573 deter 0.000573 paradigm 0.000573 thornton 0.000573 neutrality 0.000573 implicitly 0.000573 benson 0.000572 leon 0.000572 lordships 0.000572 coronary 0.000572 illuminated 0.000572 approximate 0.000572 unbelievable 0.000572 fergie 0.000571 kicks 0.000571 thirds 0.000571 padded 0.000571 inflicted 0.000571 athletic 0.000571 reformed 0.000571 administer 0.000571 quiz 0.000571 tedious 0.000571 bruised 0.000571 epidemic 0.000571 environmentalists 0.000571 churchyard 0.000571 gangs 0.000571 contrasted 0.000570 mon 0.000570 notified 0.000570 colombia 0.000570 grains 0.000570 shipped 0.000570 patiently 0.000570 implying 0.000570 normandy 0.000570 insurers 0.000570 suffice 0.000570 stray 0.000570 privy 0.000570 posture 0.000570 begged 0.000570 inspected 0.000570 benedict 0.000569 parting 0.000569 tractor 0.000569 buckinghamshire 0.000569 diaries 0.000569 cis 0.000569 delegated 0.000569 collectively 0.000569 nationals 0.000569 greenbelt 0.000569 pal 0.000569 ftse 0.000569 daytime 0.000568 prevailed 0.000568 flowering 0.000568 pagan 0.000568 incorporation 0.000568 fantasies 0.000568 occupying 0.000568 rides 0.000568 mins 0.000568 endangered 0.000568 carving 0.000568 shores 0.000568 reuter 0.000567 britons 0.000567 contributes 0.000567 replay 0.000567 splash 0.000567 beijing 0.000567 ascertain 0.000567 convergence 0.000567 finer 0.000567 consuming 0.000567 detector 0.000567 vulnerability 0.000567 assurances 0.000566 banana 0.000566 uranium 0.000566 sociologists 0.000566 ronni 0.000566 pillars 0.000566 forecasting 0.000566 gamble 0.000566 nuns 0.000566 parlour 0.000566 staging 0.000566 judiciary 0.000565 disgrace 0.000565 disney 0.000565 cooker 0.000565 forensic 0.000565 slaughter 0.000565 congressional 0.000565 behaviours 0.000565 offended 0.000565 pleading 0.000565 ashes 0.000565 jerry 0.000565 aeroplane 0.000565 mysteries 0.000564 apprehension 0.000564 creator 0.000564 hostel 0.000564 theses 0.000564 reversal 0.000564 sub 0.000564 subsection 0.000564 persuasion 0.000564 uniforms 0.000564 hailed 0.000564 endure 0.000564 conditioned 0.000563 screwed 0.000563 flags 0.000563 toss 0.000563 tonic 0.000563 tina 0.000563 jumper 0.000563 novelty 0.000563 spheres 0.000563 venus 0.000563 harlow 0.000563 violet 0.000562 messenger 0.000562 advisable 0.000562 pets 0.000562 overthrow 0.000562 unbeaten 0.000562 hector 0.000562 accession 0.000562 offending 0.000562 repaired 0.000562 bean 0.000562 accessories 0.000561 seconded 0.000561 antiques 0.000561 intricate 0.000561 moonlight 0.000561 chemists 0.000561 weir 0.000561 hare 0.000561 cock 0.000561 penis 0.000561 merge 0.000561 countess 0.000561 graduated 0.000561 merry 0.000561 insp 0.000560 heater 0.000560 nov 0.000560 ti 0.000560 nodes 0.000560 weber 0.000560 athletics 0.000560 receptor 0.000560 perry 0.000560 blurred 0.000560 outing 0.000560 concluding 0.000560 tapping 0.000560 logo 0.000560 smokers 0.000560 articulated 0.000559 apologies 0.000559 cushion 0.000559 arches 0.000559 methodist 0.000559 enduring 0.000559 tribunals 0.000559 deviation 0.000559 adolescent 0.000559 versatile 0.000559 sails 0.000559 mo 0.000559 talbot 0.000558 mario 0.000558 uniquely 0.000558 miracles 0.000558 nutty 0.000558 elbows 0.000558 monkeys 0.000558 diplomats 0.000558 tasted 0.000558 frown 0.000558 construed 0.000558 inventory 0.000557 traits 0.000557 successors 0.000557 flared 0.000557 stroked 0.000557 reef 0.000557 substituted 0.000557 expressive 0.000557 contemplated 0.000557 grapes 0.000557 pyramid 0.000557 anal 0.000557 tug 0.000557 curse 0.000557 stamford 0.000557 fossils 0.000556 quoting 0.000556 haunted 0.000556 brushing 0.000556 bastards 0.000556 pavilion 0.000556 courtaulds 0.000556 registry 0.000556 estuary 0.000556 freddie 0.000556 adventures 0.000556 couch 0.000556 hardened 0.000556 voiced 0.000556 brilliantly 0.000556 psychologist 0.000555 consolidation 0.000555 blouse 0.000555 tack 0.000555 creeping 0.000555 termination 0.000555 medals 0.000555 wept 0.000555 tudor 0.000555 erupted 0.000555 awe 0.000555 eroded 0.000555 regretted 0.000555 sly 0.000553 caves 0.000553 deliveries 0.000553 familiarity 0.000553 revive 0.000553 centenary 0.000553 sniffed 0.000553 respondent 0.000553 disasters 0.000552 yen 0.000552 midfielder 0.000552 occupants 0.000552 enlightened 0.000552 differed 0.000552 fleming 0.000552 burma 0.000552 nutrients 0.000552 elevated 0.000552 generates 0.000552 neural 0.000552 lucas 0.000552 prevalent 0.000551 irritated 0.000551 foil 0.000551 republicans 0.000551 hop 0.000551 heal 0.000551 descendants 0.000551 utilities 0.000551 hopkins 0.000551 hurts 0.000551 constructing 0.000551 sophistication 0.000551 spa 0.000551 orchard 0.000551 rick 0.000551 jess 0.000551 triumphant 0.000551 modelled 0.000550 heightened 0.000550 arabs 0.000550 mutant 0.000550 submarine 0.000550 workmen 0.000550 indicative 0.000550 trauma 0.000550 youthful 0.000550 consume 0.000550 recreational 0.000550 bee 0.000549 physician 0.000549 terminated 0.000549 lucrative 0.000549 contraction 0.000549 wrecked 0.000549 screened 0.000549 wireless 0.000549 plateau 0.000549 tesco 0.000549 turbulent 0.000549 flattened 0.000549 devaluation 0.000549 comeback 0.000549 await 0.000548 seamen 0.000548 baseline 0.000548 disapproval 0.000548 wills 0.000548 klerk 0.000548 overwhelmingly 0.000548 noel 0.000548 lenses 0.000548 focal 0.000548 jargon 0.000548 speedy 0.000547 faulty 0.000547 edit 0.000547 youngster 0.000547 harness 0.000547 endowment 0.000547 parcels 0.000547 engagements 0.000547 lager 0.000547 inhibited 0.000547 anxieties 0.000546 menace 0.000546 begging 0.000546 aristocratic 0.000546 abraham 0.000546 incoming 0.000546 shoppers 0.000546 adjusting 0.000546 analogous 0.000546 schoolboy 0.000546 roaring 0.000545 peasantry 0.000545 flint 0.000545 pumps 0.000545 cyclists 0.000545 winger 0.000545 gillian 0.000545 reciprocal 0.000545 rituals 0.000545 unaffected 0.000545 abdominal 0.000545 rio 0.000545 utmost 0.000545 inclination 0.000545 infirmary 0.000544 variant 0.000544 jelly 0.000544 classrooms 0.000544 edouard 0.000544 petersburg 0.000544 forties 0.000544 exhaustion 0.000544 usefulness 0.000544 gastrointestinal 0.000544 hugo 0.000544 promotional 0.000543 farther 0.000543 illegally 0.000543 richest 0.000543 efficacy 0.000543 spared 0.000543 nan 0.000543 amenities 0.000543 overlapping 0.000543 polling 0.000543 illnesses 0.000543 limp 0.000543 afternoons 0.000543 otto 0.000543 apprentice 0.000543 sentimental 0.000542 indefinitely 0.000542 mortimer 0.000542 quartet 0.000542 mann 0.000542 endill 0.000542 dazzling 0.000542 visions 0.000542 professionally 0.000542 listener 0.000542 irrational 0.000541 warner 0.000541 tortured 0.000541 resented 0.000541 foreman 0.000541 rhodes 0.000541 cocoa 0.000541 cathy 0.000541 inverted 0.000541 etcetera 0.000541 syrian 0.000541 radicals 0.000541 enlightenment 0.000541 insolvency 0.000541 barrister 0.000541 literal 0.000541 surrendered 0.000541 fade 0.000541 paperwork 0.000541 wa 0.000541 notation 0.000540 wonderfully 0.000540 confederation 0.000540 volatile 0.000540 recognizing 0.000540 sausage 0.000540 brisk 0.000540 pedestrian 0.000539 hinted 0.000539 doubling 0.000539 dots 0.000539 mam 0.000539 unanimously 0.000539 blasted 0.000539 pesticides 0.000538 closes 0.000538 feather 0.000538 crowned 0.000538 benn 0.000538 dti 0.000538 recurrence 0.000538 mentioning 0.000538 madeleine 0.000538 diets 0.000538 africans 0.000538 buck 0.000538 rochester 0.000538 exceeding 0.000538 venues 0.000537 unlucky 0.000537 floppy 0.000537 aristocracy 0.000537 feeds 0.000537 center 0.000537 frog 0.000537 slapped 0.000537 clutch 0.000537 canopy 0.000537 mystical 0.000537 stroll 0.000537 woollen 0.000536 litre 0.000536 qc 0.000536 cologne 0.000536 hurricane 0.000536 advertise 0.000536 pints 0.000536 volunteered 0.000536 enacted 0.000536 fuelled 0.000536 smashing 0.000536 jaguar 0.000536 intervening 0.000535 loretta 0.000535 harper 0.000535 ankles 0.000535 sediments 0.000535 grandma 0.000535 runway 0.000535 rods 0.000535 cartoon 0.000535 jubilee 0.000535 masks 0.000535 preferring 0.000535 perpetual 0.000535 lavender 0.000535 adjective 0.000535 groom 0.000535 crafts 0.000535 amber 0.000535 respiratory 0.000535 uttered 0.000535 briskly 0.000535 anglers 0.000535 lawful 0.000535 differentiate 0.000533 newcomer 0.000533 servicing 0.000533 fatigue 0.000533 alternate 0.000533 groove 0.000533 subdued 0.000532 advancement 0.000532 tailored 0.000532 sanction 0.000532 ee 0.000532 bloc 0.000532 tighter 0.000532 rhythmic 0.000532 bounce 0.000532 nutrition 0.000532 intolerable 0.000532 eagles 0.000532 contingency 0.000532 peacock 0.000532 credited 0.000532 bridget 0.000532 stratford 0.000532 butterflies 0.000532 pumping 0.000531 martial 0.000531 scattering 0.000531 cites 0.000531 leukaemia 0.000531 reconcile 0.000531 liberalism 0.000531 cuttings 0.000531 intervened 0.000531 depreciation 0.000531 shrug 0.000531 amazement 0.000531 vines 0.000531 luxurious 0.000531 charcoal 0.000531 rector 0.000531 understandably 0.000530 netware 0.000530 cupboards 0.000530 adjectives 0.000530 mattress 0.000530 satellites 0.000530 manslaughter 0.000530 garrison 0.000530 auditing 0.000530 domains 0.000530 pastry 0.000530 unseen 0.000530 sabine 0.000530 thai 0.000530 kirk 0.000530 altering 0.000530 ascent 0.000530 eruption 0.000529 irresistible 0.000529 stain 0.000529 assemblies 0.000529 folds 0.000529 stylish 0.000529 glamour 0.000529 crush 0.000529 inference 0.000529 silas 0.000529 algeria 0.000528 spill 0.000528 cdna 0.000528 meadows 0.000528 em 0.000528 confuse 0.000528 wearily 0.000528 utterances 0.000528 reactors 0.000528 mediated 0.000528 reflections 0.000528 accorded 0.000528 capitals 0.000528 embryo 0.000528 grandchildren 0.000528 trailer 0.000528 newer 0.000528 hindu 0.000528 storms 0.000527 economical 0.000527 bake 0.000527 lesions 0.000527 wallpaper 0.000527 assisting 0.000527 scratched 0.000527 rag 0.000527 concede 0.000527 elegance 0.000527 inexperienced 0.000527 regained 0.000527 thankfully 0.000527 participated 0.000527 carson 0.000527 tee 0.000527 icon 0.000527 elders 0.000527 pam 0.000527 comforting 0.000527 warmed 0.000526 shivering 0.000526 dire 0.000526 authoritarian 0.000526 costumes 0.000526 flux 0.000526 entrants 0.000526 fiver 0.000526 groupings 0.000526 formulate 0.000526 nora 0.000526 bureaucrats 0.000526 injected 0.000525 queens 0.000525 specificity 0.000525 joanne 0.000525 recommends 0.000525 breathless 0.000525 renew 0.000525 gifted 0.000525 abrupt 0.000525 fancied 0.000525 obstruction 0.000525 ahmed 0.000525 whipped 0.000525 forster 0.000525 unused 0.000525 questionnaires 0.000525 plains 0.000525 trafford 0.000525 undue 0.000525 rivalry 0.000525 fortress 0.000524 chronicle 0.000524 plough 0.000524 entails 0.000524 compliment 0.000524 gallons 0.000524 hilda 0.000524 monopolies 0.000524 deepest 0.000524 arrogance 0.000524 pancreatic 0.000524 liberties 0.000524 banging 0.000524 professionalism 0.000524 stacked 0.000523 vegetarian 0.000523 betrayal 0.000523 kg 0.000523 indulge 0.000523 bathing 0.000523 drowning 0.000523 owls 0.000523 disguised 0.000523 pens 0.000523 apprenticeship 0.000523 leant 0.000523 beneficiary 0.000523 protesting 0.000523 probes 0.000522 crossroads 0.000522 noticing 0.000522 antarctic 0.000522 bombers 0.000522 vase 0.000522 amidst 0.000522 fiery 0.000522 mcdonald 0.000522 abandonment 0.000522 discouraged 0.000521 punk 0.000521 garry 0.000521 forefront 0.000521 fitzalan 0.000521 mentions 0.000521 cot 0.000521 complexities 0.000521 freeman 0.000520 peters 0.000520 tunes 0.000520 apron 0.000520 locking 0.000520 vastly 0.000520 recourse 0.000520 altitude 0.000520 fragmented 0.000520 acknowledges 0.000520 ponds 0.000520 leaked 0.000520 antibiotics 0.000520 discrete 0.000520 visibility 0.000520 thrill 0.000520 greedy 0.000520 sod 0.000520 underwear 0.000520 statues 0.000519 pharmaceutical 0.000519 greed 0.000519 conceptions 0.000519 cumbria 0.000519 hangs 0.000519 settlers 0.000519 slips 0.000519 curator 0.000519 festivals 0.000519 toilets 0.000519 prudent 0.000519 immaculate 0.000519 metabolism 0.000519 lasmo 0.000518 homogeneous 0.000518 hypothetical 0.000518 sponge 0.000518 proximal 0.000518 bookshop 0.000518 spectator 0.000518 sparked 0.000518 usl 0.000518 lust 0.000518 prefers 0.000518 assay 0.000518 hari 0.000518 coding 0.000518 telephones 0.000518 tees 0.000518 pears 0.000518 woken 0.000518 suppression 0.000518 eileen 0.000518 nostalgia 0.000518 institutes 0.000517 lifeboat 0.000517 warrants 0.000517 contentious 0.000517 battalion 0.000517 betting 0.000517 moira 0.000517 piss 0.000517 correlated 0.000517 crumbling 0.000517 multitude 0.000517 felicity 0.000517 earthquake 0.000516 restricting 0.000516 ranked 0.000516 explosions 0.000516 discourage 0.000516 meditation 0.000516 sony 0.000516 statistically 0.000516 endoscopic 0.000516 viruses 0.000516 voluntarily 0.000516 mortal 0.000516 possesses 0.000516 bert 0.000516 cl 0.000516 digestion 0.000516 goose 0.000516 untouched 0.000515 vowed 0.000515 fore 0.000515 offerings 0.000515 friction 0.000515 multiparty 0.000515 repeats 0.000515 unreliable 0.000515 pilgrimage 0.000515 unpublished 0.000515 sentiments 0.000515 vapour 0.000515 negligible 0.000515 circulating 0.000515 notoriously 0.000515 instinctive 0.000515 chickens 0.000513 ukrainian 0.000513 speciality 0.000513 abandoning 0.000513 pillar 0.000513 interrupt 0.000513 benign 0.000513 emphasises 0.000513 slap 0.000513 invoked 0.000513 fills 0.000513 parachute 0.000513 boroughs 0.000513 radiator 0.000513 distracted 0.000513 enzymes 0.000513 bangladesh 0.000513 stringent 0.000513 speeding 0.000513 grill 0.000513 syllable 0.000512 transplant 0.000512 programmed 0.000512 meter 0.000512 carer 0.000512 stockings 0.000512 mustard 0.000512 wagner 0.000512 psychic 0.000512 humanitarian 0.000512 ethiopia 0.000512 arabic 0.000512 chewing 0.000512 alpine 0.000512 conformity 0.000512 maximise 0.000512 bonn 0.000512 eminent 0.000512 conservatism 0.000512 obscene 0.000512 supervise 0.000512 wow 0.000512 medication 0.000511 verbs 0.000511 mound 0.000511 carrots 0.000511 coastline 0.000511 stressing 0.000511 workload 0.000511 relish 0.000511 bats 0.000511 snooker 0.000511 den 0.000511 cigar 0.000511 veil 0.000511 revelations 0.000511 northamptonshire 0.000511 browning 0.000511 damian 0.000511 memoirs 0.000510 olympics 0.000510 clara 0.000510 papa 0.000510 borrowers 0.000510 cerebral 0.000510 pest 0.000510 edwardian 0.000510 collaborative 0.000510 doubles 0.000510 projections 0.000509 unnatural 0.000509 pounding 0.000509 po 0.000509 davidson 0.000509 vividly 0.000509 agitation 0.000509 ulcers 0.000509 madeira 0.000509 appliances 0.000509 pizza 0.000509 folding 0.000509 annoyance 0.000509 thrilled 0.000509 ion 0.000509 queried 0.000509 saxon 0.000508 surround 0.000508 warranty 0.000508 oesophagus 0.000508 spines 0.000508 glazed 0.000508 inhibit 0.000508 amiss 0.000508 tyneside 0.000508 remuneration 0.000508 boxer 0.000508 textbooks 0.000508 levelled 0.000508 clasped 0.000508 vitamins 0.000507 excavation 0.000507 endorse 0.000507 evolve 0.000507 clumsy 0.000507 turks 0.000507 soaring 0.000507 alerted 0.000507 spur 0.000507 ton 0.000507 mutation 0.000507 bubbles 0.000507 dialect 0.000507 frontiers 0.000506 sincere 0.000506 screws 0.000506 guardians 0.000506 puppy 0.000506 ore 0.000506 watts 0.000506 nineties 0.000506 fractions 0.000506 thriving 0.000506 slowing 0.000506 banning 0.000506 aa 0.000506 scot 0.000506 avoidance 0.000506 swelling 0.000506 condemn 0.000506 snakes 0.000506 gerard 0.000506 renal 0.000505 croatian 0.000505 barking 0.000505 chairmen 0.000505 relegation 0.000505 canals 0.000505 violation 0.000505 admirable 0.000505 incumbent 0.000505 recipients 0.000505 loyalist 0.000505 steak 0.000505 penry 0.000505 disciplined 0.000505 byrne 0.000505 performer 0.000504 civilised 0.000504 rebuild 0.000504 guts 0.000504 childish 0.000504 shiona 0.000504 pissed 0.000504 vouchers 0.000504 dudley 0.000504 sausages 0.000504 punish 0.000504 cookery 0.000504 cancers 0.000504 carbonate 0.000504 baskets 0.000504 cured 0.000503 daunting 0.000503 sarajevo 0.000503 brushes 0.000503 wiping 0.000503 tolerated 0.000503 viking 0.000503 skinner 0.000503 spreads 0.000502 reassured 0.000502 ashton 0.000502 ridden 0.000502 ricky 0.000502 openness 0.000502 cid 0.000502 niece 0.000502 communicated 0.000502 manipulated 0.000502 pigeons 0.000502 anatomy 0.000502 pip 0.000502 preface 0.000502 fetched 0.000502 persistence 0.000502 abstraction 0.000501 dynasty 0.000501 hiring 0.000501 pavements 0.000501 fulfilling 0.000501 gambling 0.000501 reflux 0.000501 rib 0.000501 vs 0.000501 infectious 0.000501 infusion 0.000501 cereal 0.000501 reared 0.000501 telescope 0.000501 adventurers 0.000500 punched 0.000500 carpenter 0.000500 digest 0.000500 permitting 0.000500 slippery 0.000500 vol 0.000500 urgh 0.000500 cunning 0.000500 resembles 0.000500 sunsoft 0.000500 olds 0.000500 bruno 0.000500 totalling 0.000500 willingly 0.000500 nicaragua 0.000500 hears 0.000499 unduly 0.000499 allocations 0.000499 budgetary 0.000499 leases 0.000499 threads 0.000499 allocate 0.000499 mosaics 0.000499 solemn 0.000499 penguin 0.000499 avon 0.000499 athletes 0.000499 jets 0.000499 ensuing 0.000499 sweating 0.000499 jewels 0.000498 overriding 0.000498 sco 0.000498 clocks 0.000498 cushions 0.000498 retailing 0.000498 outwards 0.000498 prosecutions 0.000498 spit 0.000498 slogan 0.000498 guido 0.000497 simulation 0.000497 cane 0.000497 sued 0.000497 shrewd 0.000497 masked 0.000497 smelt 0.000497 bates 0.000497 pleasantly 0.000497 patricia 0.000497 wheeler 0.000497 marian 0.000497 cohesion 0.000497 weed 0.000496 coordination 0.000496 maze 0.000496 postwar 0.000496 arched 0.000496 sturdy 0.000496 humanities 0.000496 albania 0.000496 contemplating 0.000496 communicative 0.000496 suburb 0.000496 shaky 0.000496 berry 0.000496 summat 0.000496 scholarly 0.000496 clarification 0.000496 anyhow 0.000496 appellant 0.000495 drains 0.000495 boswell 0.000495 microcomputer 0.000495 unskilled 0.000495 kerr 0.000495 analogue 0.000495 sudan 0.000495 rental 0.000495 paving 0.000495 dover 0.000495 rye 0.000495 sensations 0.000493 dubbed 0.000493 unnecessarily 0.000493 scotsman 0.000493 seating 0.000493 truths 0.000493 chelmsford 0.000493 chaotic 0.000493 soared 0.000493 luce 0.000493 consultations 0.000493 diminish 0.000493 froze 0.000493 windscreen 0.000493 alps 0.000493 surveying 0.000493 aching 0.000493 draped 0.000493 fictional 0.000493 gedge 0.000492 jeffrey 0.000492 downhill 0.000492 stormed 0.000492 quay 0.000492 parkinson 0.000492 oceans 0.000492 mourning 0.000492 singular 0.000492 impersonal 0.000492 feasibility 0.000492 sensing 0.000492 aisle 0.000492 quotations 0.000492 cider 0.000492 cunningham 0.000492 howe 0.000492 extravagant 0.000491 hereditary 0.000491 tuck 0.000491 naming 0.000491 cop 0.000491 moran 0.000491 clifford 0.000491 commanders 0.000491 hurriedly 0.000491 deposition 0.000491 cowley 0.000491 jasper 0.000491 siemens 0.000491 tbsp 0.000491 ter 0.000491 recalling 0.000490 presumption 0.000490 iceland 0.000490 slavery 0.000490 hurting 0.000490 disregard 0.000490 underwater 0.000490 prevail 0.000490 marjorie 0.000490 starvation 0.000490 len 0.000490 sparks 0.000490 satin 0.000490 questionable 0.000490 rejects 0.000490 hostage 0.000490 resurrection 0.000490 emancipation 0.000489 sizeable 0.000489 bach 0.000489 diane 0.000489 tread 0.000489 katie 0.000489 shuddered 0.000489 blond 0.000489 subsistence 0.000489 mumbled 0.000489 baggage 0.000489 draught 0.000489 rocking 0.000489 shuttle 0.000489 viability 0.000489 awaited 0.000489 receptors 0.000489 vitality 0.000489 typewriter 0.000489 sailor 0.000489 ceremonial 0.000488 fenella 0.000488 phosphate 0.000488 nostrils 0.000488 juan 0.000488 fielding 0.000488 arthritis 0.000488 wwf 0.000488 beers 0.000488 sensational 0.000488 caesar 0.000488 upbringing 0.000488 lava 0.000488 forge 0.000488 trailed 0.000488 topaz 0.000488 stiffly 0.000487 cf 0.000487 protestants 0.000487 compatibility 0.000487 sylvia 0.000487 accommodated 0.000487 presenter 0.000487 lavish 0.000487 fergus 0.000487 powerless 0.000487 nests 0.000487 localities 0.000487 delaney 0.000487 formats 0.000486 safeguards 0.000486 slab 0.000486 unwelcome 0.000486 lobbying 0.000486 clip 0.000486 keegan 0.000486 pathway 0.000486 prosecuting 0.000486 highways 0.000486 entrepreneurs 0.000486 mast 0.000486 newco 0.000486 cruz 0.000486 sultan 0.000485 logging 0.000485 bikes 0.000485 salesman 0.000485 choked 0.000485 obscured 0.000485 clipped 0.000485 wrists 0.000485 inaccurate 0.000485 flee 0.000485 taps 0.000485 surprises 0.000485 barnett 0.000485 carlo 0.000485 rendering 0.000485 franklin 0.000485 brittle 0.000485 edith 0.000485 ranking 0.000484 keynesian 0.000484 fran 0.000484 philippa 0.000484 boast 0.000484 unanimous 0.000484 tuition 0.000484 hooks 0.000484 viewer 0.000484 traumatic 0.000484 batty 0.000484 baptist 0.000484 adolescence 0.000484 macgregor 0.000484 spilled 0.000484 frowning 0.000484 archer 0.000484 exporting 0.000484 invoice 0.000484 dinosaurs 0.000484 carr 0.000484 unite 0.000484 grips 0.000483 depending 0.000483 oppressive 0.000483 privatised 0.000483 vibration 0.000483 stevenson 0.000483 vacancies 0.000483 phones 0.000483 impatience 0.000483 replaces 0.000483 degradation 0.000483 beethoven 0.000483 learns 0.000483 gale 0.000483 mutations 0.000483 inflammation 0.000483 geometry 0.000483 plastics 0.000483 brewers 0.000483 eyed 0.000483 attain 0.000483 cue 0.000483 abuses 0.000483 attracts 0.000482 thorn 0.000482 relocation 0.000482 submissions 0.000482 hunted 0.000482 edwin 0.000482 aea 0.000482 cheaply 0.000482 delors 0.000482 advert 0.000482 slots 0.000482 indispensable 0.000482 chuckled 0.000481 thereof 0.000481 polymers 0.000481 campaigners 0.000481 lecturers 0.000481 cuban 0.000481 dissatisfied 0.000481 shortfall 0.000481 recycled 0.000481 grange 0.000481 chords 0.000480 traps 0.000480 straining 0.000480 promoters 0.000480 scrub 0.000480 anthropologists 0.000480 oecd 0.000480 slam 0.000480 plaque 0.000480 higgins 0.000480 paste 0.000480 annoying 0.000480 intrigued 0.000480 doo 0.000480 horizons 0.000480 hanged 0.000480 softened 0.000479 kay 0.000479 ignores 0.000479 crawled 0.000479 repetitive 0.000479 monitors 0.000479 abu 0.000479 chestnut 0.000479 roller 0.000479 conceive 0.000479 skilful 0.000479 mclaren 0.000479 oriented 0.000479 convertible 0.000479 hertfordshire 0.000478 murdering 0.000478 refreshing 0.000478 elliott 0.000478 gcse 0.000478 concerto 0.000478 deteriorated 0.000478 starter 0.000478 felipe 0.000478 methodological 0.000478 marketed 0.000478 generously 0.000477 dummy 0.000477 intuitive 0.000477 congestion 0.000477 horrific 0.000477 plutonium 0.000477 rift 0.000477 mating 0.000477 bananas 0.000477 falklands 0.000477 ingenious 0.000477 citation 0.000477 perimeter 0.000477 implicated 0.000477 downstream 0.000477 objectivity 0.000477 marina 0.000477 devolution 0.000477 adventurous 0.000476 fixtures 0.000476 rainforest 0.000476 dictate 0.000476 wheeled 0.000476 marshes 0.000476 condemnation 0.000476 val 0.000476 tracing 0.000476 cramped 0.000475 donors 0.000475 misuse 0.000475 irritating 0.000475 authorized 0.000475 teaches 0.000475 psychoanalysis 0.000475 curl 0.000475 albums 0.000475 menus 0.000475 pies 0.000475 reich 0.000475 outputs 0.000475 elevation 0.000475 surveyors 0.000475 beneficiaries 0.000475 tidal 0.000475 wea 0.000473 bum 0.000473 cheered 0.000473 rue 0.000473 starring 0.000473 sucking 0.000473 bulb 0.000473 graded 0.000473 criticise 0.000473 grievances 0.000473 enthusiastically 0.000473 faecal 0.000473 spontaneously 0.000473 inhabited 0.000472 formulae 0.000472 monsters 0.000472 activating 0.000472 curly 0.000472 hawkins 0.000472 pcs 0.000472 nitrate 0.000472 patsy 0.000472 outraged 0.000472 tighten 0.000472 rufus 0.000472 generator 0.000472 hallway 0.000472 habitats 0.000472 frogs 0.000472 pulses 0.000472 tilted 0.000472 conclusive 0.000471 carla 0.000471 sensibly 0.000471 fabia 0.000471 poisonous 0.000471 bump 0.000471 depart 0.000471 patted 0.000471 vitor 0.000471 rotor 0.000471 credible 0.000471 subscribers 0.000471 massachusetts 0.000471 straps 0.000471 theodora 0.000471 signatures 0.000471 butt 0.000470 bows 0.000470 shortcomings 0.000470 dustin 0.000470 evacuation 0.000470 nave 0.000470 teresa 0.000470 scandinavian 0.000470 supremacy 0.000470 pretence 0.000470 triangular 0.000470 barrett 0.000470 prophet 0.000470 yanto 0.000470 favourably 0.000470 embryos 0.000470 luton 0.000470 jaq 0.000470 metallic 0.000470 robot 0.000470 dial 0.000469 intuition 0.000469 discriminate 0.000469 grinding 0.000469 standardised 0.000469 prejudices 0.000469 crammed 0.000469 ludicrous 0.000469 whispering 0.000469 cleaners 0.000469 avoids 0.000469 climbs 0.000469 graceful 0.000469 homage 0.000469 desmond 0.000469 dived 0.000469 redress 0.000469 iain 0.000469 oi 0.000468 boosted 0.000468 francs 0.000468 pneumonia 0.000468 liquidation 0.000468 abingdon 0.000468 nun 0.000468 nazis 0.000468 hen 0.000468 chaplain 0.000468 tournaments 0.000468 beasts 0.000468 litres 0.000468 hq 0.000468 monastic 0.000468 screams 0.000468 chromosome 0.000468 paradoxically 0.000467 mundane 0.000467 filmed 0.000467 softer 0.000467 natwest 0.000467 spelt 0.000467 gateshead 0.000467 boasts 0.000467 commence 0.000467 retreated 0.000467 ant 0.000466 cornish 0.000466 rash 0.000466 barrage 0.000466 jeep 0.000466 accusation 0.000466 pumped 0.000466 militia 0.000466 wry 0.000466 worcestershire 0.000466 streak 0.000466 sized 0.000466 humorous 0.000466 tangled 0.000466 robe 0.000465 sleepy 0.000465 angular 0.000465 liam 0.000465 ethos 0.000465 clutched 0.000465 formations 0.000465 banged 0.000465 il 0.000465 lingering 0.000465 scratching 0.000465 comrades 0.000465 helicopters 0.000465 windy 0.000465 feeble 0.000465 strap 0.000464 hideous 0.000464 ag 0.000464 stephanie 0.000464 promenade 0.000464 noses 0.000464 hormone 0.000464 riverside 0.000464 helplessly 0.000464 presided 0.000464 folks 0.000464 informing 0.000464 erotic 0.000464 waterloo 0.000464 rum 0.000464 crushing 0.000464 patio 0.000464 fruitful 0.000464 scissors 0.000464 generals 0.000464 baptism 0.000464 haste 0.000464 zinc 0.000464 lowe 0.000464 rusty 0.000464 weighted 0.000464 maud 0.000463 veterans 0.000463 abnormalities 0.000463 dignified 0.000463 hysterical 0.000463 protesters 0.000463 leaping 0.000463 assaulted 0.000463 marginally 0.000463 impending 0.000463 enclose 0.000463 widows 0.000463 moulded 0.000463 severed 0.000463 lays 0.000462 speculate 0.000462 tolkien 0.000462 gripping 0.000462 yearly 0.000462 toronto 0.000462 disciples 0.000462 bachelor 0.000462 rostov 0.000462 improves 0.000462 manifestations 0.000462 reasoned 0.000462 ramp 0.000462 delete 0.000462 imperialism 0.000462 floral 0.000462 flourished 0.000461 restrain 0.000461 paralysed 0.000461 climatic 0.000461 althusser 0.000461 sullivan 0.000461 moorland 0.000461 blah 0.000461 hectic 0.000461 todd 0.000461 suck 0.000461 lass 0.000461 greene 0.000461 integrating 0.000461 imaging 0.000461 retrieve 0.000461 defeats 0.000461 accents 0.000460 dye 0.000460 airborne 0.000460 crumpled 0.000460 bouncing 0.000460 cubic 0.000460 resolving 0.000460 doc 0.000460 flap 0.000460 hens 0.000460 frighten 0.000460 columbia 0.000460 tending 0.000459 dissolve 0.000459 manifestation 0.000459 deregulation 0.000459 lastly 0.000459 cuisine 0.000459 clan 0.000459 sperm 0.000459 motoring 0.000459 specifying 0.000459 razor 0.000459 cursed 0.000459 prostitution 0.000459 freezer 0.000459 unlocked 0.000459 paperback 0.000458 libyan 0.000458 homeland 0.000458 blair 0.000458 appropriation 0.000458 loo 0.000458 mocking 0.000458 axes 0.000458 calves 0.000458 fastened 0.000458 horrors 0.000458 cone 0.000458 hubert 0.000458 percy 0.000458 infancy 0.000458 backdrop 0.000458 fixture 0.000458 heavyweight 0.000458 wade 0.000458 novice 0.000458 landmark 0.000458 escorted 0.000457 niche 0.000457 nutritional 0.000457 muriel 0.000457 truce 0.000457 glider 0.000457 recommending 0.000457 gracious 0.000457 bournemouth 0.000457 autobiography 0.000457 withstand 0.000457 extinct 0.000457 installing 0.000457 hebrew 0.000457 powerfully 0.000457 rip 0.000457 blackmail 0.000457 diagonal 0.000457 imagining 0.000457 burke 0.000457 initiation 0.000456 doncaster 0.000456 hopelessly 0.000456 plotting 0.000456 hammond 0.000456 politburo 0.000456 curvature 0.000456 loaf 0.000456 intrusion 0.000456 figured 0.000456 crawl 0.000456 cnut 0.000456 usefully 0.000456 indexing 0.000456 discourses 0.000456 divert 0.000456 rectal 0.000456 unequal 0.000456 arable 0.000456 resultant 0.000456 decreasing 0.000455 irresponsible 0.000455 barber 0.000455 descend 0.000455 watercolour 0.000455 envelopes 0.000455 hassan 0.000455 countered 0.000455 bud 0.000455 forgiveness 0.000455 glances 0.000455 liquor 0.000455 reins 0.000455 lush 0.000455 floods 0.000455 disrupted 0.000455 uncertainties 0.000455 bursts 0.000455 gaelic 0.000455 resembled 0.000453 kits 0.000453 scar 0.000453 imbalance 0.000453 coordinate 0.000453 responds 0.000453 dismal 0.000453 predicting 0.000453 lyrics 0.000453 congratulate 0.000453 brady 0.000453 halved 0.000453 discusses 0.000453 inconvenience 0.000453 beech 0.000452 det 0.000452 secretariat 0.000452 filtration 0.000452 ghastly 0.000452 coherence 0.000452 growled 0.000452 narrower 0.000452 valerie 0.000452 richly 0.000452 exemplified 0.000452 portions 0.000452 zen 0.000452 isobel 0.000452 thrive 0.000452 assaults 0.000452 camping 0.000452 assemble 0.000452 fried 0.000452 locomotives 0.000452 prof 0.000452 unmistakable 0.000451 hindsight 0.000451 grated 0.000451 foreseeable 0.000451 discounted 0.000451 absorbing 0.000451 dhss 0.000451 rap 0.000451 tummy 0.000451 montreal 0.000451 decorations 0.000451 reds 0.000451 stubborn 0.000451 batsman 0.000451 easing 0.000451 decidedly 0.000450 kpmg 0.000450 fright 0.000450 troublesome 0.000450 ryder 0.000450 parasites 0.000450 technicians 0.000450 sebastian 0.000450 performs 0.000450 intonation 0.000450 diy 0.000450 fr 0.000450 carriages 0.000450 byzantine 0.000450 breaches 0.000450 spoiled 0.000450 tracking 0.000450 bedding 0.000450 bream 0.000450 hearings 0.000450 carp 0.000450 scanned 0.000450 disarmament 0.000449 slack 0.000449 sas 0.000449 rowing 0.000449 saturated 0.000449 flickered 0.000449 inherently 0.000449 shabby 0.000449 positioning 0.000449 reactive 0.000449 dictatorship 0.000449 stab 0.000449 jumble 0.000449 moderately 0.000449 intently 0.000449 receptionist 0.000449 cereals 0.000449 goblin 0.000448 perverse 0.000448 cavity 0.000448 swam 0.000448 glimpsed 0.000448 eternity 0.000448 caspar 0.000448 teased 0.000448 ncr 0.000448 felix 0.000448 austerity 0.000448 barker 0.000448 unease 0.000448 williamson 0.000448 fencing 0.000448 necks 0.000448 ensemble 0.000448 barren 0.000447 hurled 0.000447 frantically 0.000447 priory 0.000447 misses 0.000447 disposable 0.000447 ci 0.000447 swings 0.000447 footing 0.000447 storing 0.000447 evacuated 0.000447 remit 0.000447 cam 0.000447 cruising 0.000447 logs 0.000447 strasbourg 0.000447 flicker 0.000447 poisoned 0.000446 slashed 0.000446 interventions 0.000446 exposing 0.000446 transforming 0.000446 saga 0.000446 nordern 0.000446 volvo 0.000446 interpreter 0.000446 coil 0.000446 stumbling 0.000446 prosecutor 0.000446 pads 0.000446 esther 0.000446 decimal 0.000446 joshua 0.000445 strolled 0.000445 witty 0.000445 exploiting 0.000445 semiconductor 0.000445 profitboss 0.000445 clyde 0.000445 excesses 0.000445 distributors 0.000445 promotions 0.000445 wedge 0.000445 ferrari 0.000445 insulting 0.000445 regulating 0.000445 conrad 0.000445 accelerate 0.000445 townsend 0.000445 flank 0.000445 namibia 0.000444 indignation 0.000444 gala 0.000444 morley 0.000444 animated 0.000444 muffled 0.000444 claws 0.000444 dunn 0.000444 requesting 0.000444 excursions 0.000444 baseball 0.000444 despised 0.000444 meagre 0.000444 furnishings 0.000444 paces 0.000444 ana 0.000444 tram 0.000444 diminishing 0.000444 footpath 0.000444 propped 0.000444 elvis 0.000444 shotgun 0.000443 rubble 0.000443 formality 0.000443 caretaker 0.000443 flanked 0.000443 jumps 0.000443 intellect 0.000443 patrons 0.000443 weakly 0.000443 envisage 0.000443 nicolo 0.000443 inspire 0.000443 venezuela 0.000443 scouts 0.000443 siberia 0.000443 innate 0.000442 id 0.000442 lest 0.000442 brink 0.000442 mesh 0.000442 rattled 0.000442 tailor 0.000442 prostitutes 0.000442 suspend 0.000442 akin 0.000442 saturdays 0.000442 cromwell 0.000442 comb 0.000442 compressed 0.000442 transient 0.000442 segregation 0.000442 predominant 0.000441 gestured 0.000441 paige 0.000441 camel 0.000441 wexford 0.000441 tactic 0.000441 deleted 0.000441 upstream 0.000441 mosley 0.000441 faithfully 0.000441 rocked 0.000441 ostensibly 0.000441 batting 0.000441 spinal 0.000441 retrospect 0.000441 immature 0.000441 eyebrow 0.000441 turbulence 0.000441 acknowledging 0.000441 entrusted 0.000441 cheat 0.000441 tort 0.000441 chaps 0.000441 unitary 0.000440 accompaniment 0.000440 adversely 0.000440 uncomfortably 0.000440 ventured 0.000440 residue 0.000440 drastically 0.000440 opting 0.000440 crawling 0.000440 interiors 0.000440 jew 0.000440 parallels 0.000439 isolate 0.000439 towels 0.000439 compulsion 0.000439 plentiful 0.000439 preventive 0.000439 inclusive 0.000439 explosives 0.000439 capacities 0.000439 tigers 0.000439 aura 0.000439 partition 0.000439 cardiac 0.000439 fours 0.000439 epithelial 0.000439 bradley 0.000439 ceremonies 0.000439 locus 0.000439 weakening 0.000439 hugged 0.000439 spotlight 0.000439 tumbled 0.000439 contextual 0.000438 proletariat 0.000438 assent 0.000438 tentacle 0.000438 hovering 0.000438 multiplied 0.000438 dolls 0.000438 steaming 0.000438 tightening 0.000438 sid 0.000438 subordinates 0.000438 muttering 0.000438 basque 0.000438 battling 0.000438 winters 0.000438 insertion 0.000437 mischief 0.000437 acutely 0.000437 posh 0.000437 shaun 0.000437 resisting 0.000437 continuum 0.000437 thinly 0.000437 renamed 0.000437 reorganization 0.000437 murdoch 0.000437 vatican 0.000437 sheds 0.000437 bangkok 0.000437 postscript 0.000437 exodus 0.000436 dice 0.000436 hairy 0.000436 penetrated 0.000436 nude 0.000436 cannabis 0.000436 blaming 0.000436 targeting 0.000436 cling 0.000436 mar 0.000436 mythology 0.000436 contributors 0.000436 metro 0.000436 mums 0.000436 tessa 0.000436 tuc 0.000436 echoing 0.000436 cuckoo 0.000436 unimportant 0.000436 provider 0.000436 sloping 0.000436 valves 0.000436 gypsy 0.000436 wight 0.000436 fife 0.000435 sweetheart 0.000435 brightness 0.000435 buds 0.000435 leisurely 0.000435 masai 0.000435 arousal 0.000435 modernism 0.000435 est 0.000435 exceedingly 0.000435 supervisory 0.000435 reiterated 0.000435 remanded 0.000435 granada 0.000435 bonnet 0.000435 ruby 0.000435 unwise 0.000435 liar 0.000435 industrialists 0.000435 legends 0.000435 advocacy 0.000435 pillows 0.000434 fowler 0.000434 selby 0.000434 bentley 0.000434 vault 0.000434 exacerbated 0.000434 airports 0.000434 conversational 0.000434 delights 0.000434 tow 0.000434 foxes 0.000434 celebrity 0.000434 biographical 0.000434 dorsal 0.000434 lennox 0.000434 birch 0.000434 imposes 0.000432 execute 0.000432 centralised 0.000432 parry 0.000432 parliaments 0.000432 bracket 0.000432 occupies 0.000432 halves 0.000432 basics 0.000432 compositions 0.000432 embark 0.000432 semantics 0.000432 waterproof 0.000432 ethanol 0.000432 repairing 0.000432 newport 0.000432 treble 0.000432 deduction 0.000432 captive 0.000432 slater 0.000432 debating 0.000432 drily 0.000432 dreaded 0.000432 distinguishes 0.000432 hates 0.000432 coated 0.000431 bidder 0.000431 brows 0.000431 almighty 0.000431 rodney 0.000431 observes 0.000431 slick 0.000431 gower 0.000431 sicily 0.000431 flocks 0.000431 esteem 0.000431 launches 0.000431 jade 0.000431 mitch 0.000431 janice 0.000431 franks 0.000431 showers 0.000431 gloss 0.000431 strikers 0.000431 crosby 0.000431 flickering 0.000431 bout 0.000431 grease 0.000431 succeeds 0.000431 swords 0.000431 hairdresser 0.000431 slabs 0.000431 sql 0.000431 visa 0.000431 lipstick 0.000430 confronting 0.000430 storey 0.000430 einstein 0.000430 evangelical 0.000430 ratification 0.000430 ache 0.000430 variability 0.000430 peck 0.000430 defiance 0.000430 shadowy 0.000430 fracture 0.000430 terminate 0.000430 warranties 0.000430 enhancement 0.000430 nobles 0.000430 tramp 0.000430 sited 0.000430 booksellers 0.000430 devoid 0.000430 glazing 0.000430 entail 0.000430 tugged 0.000430 aquatic 0.000430 preparatory 0.000430 polymerase 0.000429 prelude 0.000429 invent 0.000429 disappears 0.000429 gigantic 0.000429 lloyds 0.000429 amend 0.000429 fuse 0.000429 mph 0.000429 characteristically 0.000429 temperate 0.000429 mastery 0.000429 cadbury 0.000429 rainfall 0.000429 stale 0.000429 hurrying 0.000429 catastrophe 0.000429 soothing 0.000429 budapest 0.000429 cosmic 0.000429 indices 0.000429 nixon 0.000429 isabella 0.000429 beamed 0.000429 richness 0.000429 endured 0.000429 moods 0.000429 vertically 0.000429 redistribution 0.000429 pooley 0.000429 unnoticed 0.000428 pamphlet 0.000428 fashions 0.000428 submerged 0.000428 agreeable 0.000428 beatles 0.000428 lucien 0.000428 vinegar 0.000428 stature 0.000428 penetrating 0.000428 mouthful 0.000428 migrants 0.000428 melancholy 0.000428 colliery 0.000428 stationary 0.000428 weaver 0.000428 timed 0.000428 camille 0.000428 satan 0.000428 elites 0.000428 rains 0.000428 beatrice 0.000428 pigeon 0.000428 vine 0.000427 castro 0.000427 prosecuted 0.000427 violations 0.000427 probing 0.000427 coefficient 0.000427 browne 0.000427 coughing 0.000427 sombre 0.000427 substitutes 0.000427 brooks 0.000427 deviance 0.000427 bunny 0.000427 rincewind 0.000427 impulses 0.000427 voucher 0.000427 weaken 0.000427 pioneered 0.000427 operative 0.000426 whitby 0.000426 workhouse 0.000426 friar 0.000426 eats 0.000426 biochemical 0.000426 salts 0.000426 lesley 0.000426 gis 0.000426 indecent 0.000426 schoolchildren 0.000426 chichester 0.000426 coded 0.000426 consolidate 0.000426 millionaire 0.000426 rab 0.000426 warwickshire 0.000426 coolly 0.000426 sacks 0.000425 keyword 0.000425 ponies 0.000425 middleton 0.000425 trickle 0.000425 hostess 0.000425 tallis 0.000425 loops 0.000425 interfering 0.000425 manhattan 0.000425 buckets 0.000425 killers 0.000425 staffordshire 0.000425 constables 0.000425 untidy 0.000425 thicker 0.000425 bombay 0.000425 gasp 0.000425 wha 0.000424 decreases 0.000424 fonts 0.000424 tumbling 0.000424 beverley 0.000424 setback 0.000424 masterpiece 0.000424 huy 0.000424 karpov 0.000424 chloride 0.000424 lender 0.000424 awfully 0.000424 murmur 0.000424 relay 0.000424 ranulf 0.000424 diluted 0.000424 mozambique 0.000423 cambridgeshire 0.000423 beginners 0.000423 adverts 0.000423 cbi 0.000423 tolerant 0.000423 broadway 0.000423 persecution 0.000423 greasy 0.000423 strata 0.000423 retrieved 0.000423 petals 0.000423 repayments 0.000423 overflow 0.000423 oxide 0.000423 selectors 0.000423 festive 0.000423 sic 0.000423 bowled 0.000423 tents 0.000423 flavia 0.000423 erratic 0.000423 deficiencies 0.000423 levied 0.000423 radial 0.000423 gum 0.000423 rouge 0.000422 intimately 0.000422 conservatory 0.000422 tarmac 0.000422 fools 0.000422 marines 0.000422 insane 0.000422 crimson 0.000422 visibly 0.000422 cleo 0.000422 hearth 0.000422 distaste 0.000422 shearer 0.000422 sophia 0.000422 squat 0.000422 summarized 0.000421 gilt 0.000421 vowel 0.000421 postman 0.000421 emphasising 0.000421 routinely 0.000421 catastrophic 0.000421 contend 0.000421 xi 0.000421 plucked 0.000421 influx 0.000421 carboniferous 0.000421 jammed 0.000421 fe 0.000421 maisie 0.000421 vogue 0.000421 centimetres 0.000421 quieter 0.000421 crag 0.000421 whitbread 0.000420 grounded 0.000420 wiring 0.000420 alignment 0.000420 scorer 0.000420 repaid 0.000420 slit 0.000420 eliminating 0.000420 canoe 0.000420 poultry 0.000420 southend 0.000420 timely 0.000420 tracy 0.000420 unavoidable 0.000420 textbook 0.000420 pinched 0.000420 wits 0.000420 lucenzo 0.000420 obeyed 0.000420 periodically 0.000420 parrot 0.000420 appointing 0.000420 unto 0.000419 swearing 0.000419 histological 0.000419 sulphate 0.000419 boro 0.000419 ilp 0.000419 cache 0.000419 barons 0.000419 spd 0.000419 openings 0.000419 automated 0.000419 matron 0.000419 overweight 0.000419 blackness 0.000419 discharges 0.000418 giggled 0.000418 guise 0.000418 hendry 0.000418 reformation 0.000418 dictionaries 0.000418 entrepreneurial 0.000418 roadside 0.000418 smoothed 0.000418 relics 0.000418 unfinished 0.000418 geese 0.000418 graphs 0.000418 lettuce 0.000418 agitated 0.000418 jessamy 0.000418 ploughed 0.000418 awesome 0.000418 vanity 0.000418 originating 0.000418 variously 0.000418 realizing 0.000417 messiah 0.000417 payroll 0.000417 prolific 0.000417 jars 0.000417 doom 0.000417 sermon 0.000417 patterned 0.000417 smack 0.000417 gibbs 0.000417 commando 0.000417 wreckage 0.000417 huts 0.000417 elizabethan 0.000417 raging 0.000417 membranes 0.000417 wi 0.000417 towering 0.000417 widen 0.000417 reasonableness 0.000417 aggravated 0.000417 displacement 0.000417 fulham 0.000417 confines 0.000417 burgess 0.000417 unfit 0.000416 faculties 0.000416 prussian 0.000416 cheeses 0.000416 wilko 0.000416 shutters 0.000416 burdens 0.000416 bitten 0.000416 ordnance 0.000416 menzies 0.000416 deviant 0.000416 tenor 0.000416 affluent 0.000416 emptying 0.000416 updating 0.000416 hooker 0.000416 mastered 0.000416 thinner 0.000416 motorola 0.000416 styling 0.000416 whistling 0.000416 mahmoud 0.000416 investigator 0.000416 reconsider 0.000415 ferdinand 0.000415 entailed 0.000415 polluted 0.000415 nell 0.000415 antrim 0.000415 licked 0.000415 tides 0.000415 belle 0.000415 carey 0.000415 chant 0.000415 tabloid 0.000415 kingston 0.000415 freelance 0.000415 aligned 0.000415 tile 0.000415 chlorine 0.000415 es 0.000415 malignant 0.000415 unionism 0.000414 currie 0.000414 lear 0.000414 heavenly 0.000414 receivers 0.000414 excessively 0.000414 excursion 0.000414 yachts 0.000414 kitty 0.000414 sustaining 0.000414 affordable 0.000414 phoebe 0.000414 pyjamas 0.000414 expulsion 0.000414 fronts 0.000414 unsafe 0.000414 toddler 0.000414 embargo 0.000414 remotely 0.000414 disruptive 0.000414 contributory 0.000414 peacefully 0.000414 cues 0.000412 contraception 0.000412 grunted 0.000412 overcoming 0.000412 friendships 0.000412 departures 0.000412 monies 0.000412 mikhail 0.000412 twilight 0.000412 amounting 0.000412 motionless 0.000412 technician 0.000412 pertinent 0.000412 cosmetic 0.000412 tuned 0.000412 overheads 0.000412 sterile 0.000412 flute 0.000412 clown 0.000412 racket 0.000411 pitches 0.000411 angola 0.000411 rita 0.000411 fortified 0.000411 budgeting 0.000411 glove 0.000411 inscribed 0.000411 northallerton 0.000411 averaged 0.000411 thankful 0.000411 thickly 0.000411 refinement 0.000411 ernst 0.000411 humphrey 0.000411 wolverhampton 0.000411 excludes 0.000411 boar 0.000411 ss 0.000410 tier 0.000410 unjust 0.000410 bliss 0.000410 fleeing 0.000410 mod 0.000410 redcar 0.000410 houston 0.000410 psychiatrist 0.000410 dizzy 0.000410 grossly 0.000410 hawk 0.000410 kidnapped 0.000410 faldo 0.000410 escapes 0.000410 lo 0.000410 venables 0.000410 pioneers 0.000410 volcano 0.000410 glaring 0.000410 unavailable 0.000410 individualism 0.000410 compilation 0.000410 glamorgan 0.000410 gym 0.000409 chromosomes 0.000409 filtered 0.000409 fearing 0.000409 syllables 0.000409 notts 0.000409 graveyard 0.000409 textual 0.000409 compensated 0.000409 schizophrenia 0.000409 tanker 0.000409 marches 0.000409 yeast 0.000409 moaning 0.000409 womb 0.000409 cc 0.000409 foyer 0.000409 endlessly 0.000409 fleeting 0.000409 contrived 0.000409 waterfall 0.000409 oppressed 0.000408 distraction 0.000408 trimmed 0.000408 scripture 0.000408 romanesque 0.000408 respite 0.000408 expeditions 0.000408 populated 0.000408 tying 0.000408 maidstone 0.000408 oranges 0.000408 antigen 0.000408 transnational 0.000408 leasing 0.000408 hammered 0.000408 adherence 0.000408 lunches 0.000408 wedgwood 0.000408 dales 0.000408 parity 0.000408 alienation 0.000408 terraced 0.000408 foucault 0.000408 rites 0.000408 shoved 0.000408 depicting 0.000408 tights 0.000408 electors 0.000408 cheating 0.000408 striving 0.000408 craven 0.000407 mildred 0.000407 snacks 0.000407 trays 0.000407 greenwich 0.000407 healthier 0.000407 decorating 0.000407 detecting 0.000407 monica 0.000407 individuality 0.000407 alarms 0.000407 adamant 0.000407 uruguay 0.000407 warehouses 0.000407 cyril 0.000407 vengeance 0.000407 plural 0.000407 veronica 0.000407 jose 0.000407 phonological 0.000407 mcleish 0.000407 birkenhead 0.000407 headaches 0.000407 blockade 0.000407 elves 0.000407 liberated 0.000407 gutter 0.000407 plead 0.000407 mansfield 0.000407 scramble 0.000407 pornography 0.000407 gen 0.000406 sip 0.000406 heterosexual 0.000406 discrepancy 0.000406 probabilities 0.000406 pluralism 0.000406 manageable 0.000406 primacy 0.000406 improbable 0.000406 patents 0.000406 feat 0.000406 curling 0.000406 clement 0.000406 sacrificed 0.000406 scraps 0.000406 embroidered 0.000406 wisely 0.000406 fluids 0.000406 hamburg 0.000406 turnout 0.000406 pervasive 0.000406 maclean 0.000406 ceramic 0.000406 enquire 0.000406 shafts 0.000406 distributing 0.000405 mafia 0.000405 quigley 0.000405 underestimate 0.000405 balloons 0.000405 bowlers 0.000405 crisps 0.000405 tenderness 0.000405 claimants 0.000405 strawberry 0.000405 misfortune 0.000405 johannesburg 0.000405 credentials 0.000405 impairment 0.000405 bucks 0.000405 ornamental 0.000404 opec 0.000404 knickers 0.000404 viral 0.000404 metric 0.000404 treacherous 0.000404 capitalists 0.000404 noriega 0.000404 inadequacy 0.000404 culminating 0.000404 tertiary 0.000404 empress 0.000404 alight 0.000404 bothering 0.000404 improper 0.000404 muted 0.000404 galaxies 0.000403 trenches 0.000403 shilling 0.000403 predicament 0.000403 serb 0.000403 guineas 0.000403 predicts 0.000403 stately 0.000403 dissident 0.000403 empowered 0.000403 fostering 0.000403 potency 0.000403 flick 0.000403 wlr 0.000403 awkwardly 0.000403 cube 0.000403 anthropological 0.000403 enhancing 0.000403 password 0.000403 rhetorical 0.000403 exerted 0.000403 gamma 0.000403 parsley 0.000403 ceilings 0.000403 narrator 0.000403 dane 0.000403 capped 0.000403 raiders 0.000403 carrot 0.000403 branded 0.000403 withdrawing 0.000403 rectory 0.000402 kirsty 0.000402 brochures 0.000402 magnus 0.000402 creamy 0.000402 bearings 0.000402 cod 0.000402 stockport 0.000402 lumps 0.000402 confer 0.000402 southeast 0.000402 hanson 0.000402 clones 0.000402 monumental 0.000402 infringement 0.000402 vaccine 0.000401 sacrifices 0.000401 suspiciously 0.000401 flawed 0.000401 assign 0.000401 posing 0.000401 foe 0.000401 crook 0.000401 summers 0.000401 kirov 0.000401 osf 0.000401 involuntary 0.000401 cassie 0.000401 dunes 0.000401 huddled 0.000401 barnard 0.000401 flatly 0.000401 amazingly 0.000401 outstretched 0.000401 invitations 0.000400 redevelopment 0.000400 pessimistic 0.000400 marketplace 0.000400 spike 0.000400 hume 0.000400 apologised 0.000400 console 0.000400 bonuses 0.000400 verification 0.000400 harley 0.000400 portfolios 0.000400 conceivable 0.000400 overturned 0.000400 lurking 0.000400 slovenia 0.000400 patterson 0.000400 bureaux 0.000400 debtors 0.000400 gratefully 0.000399 pedal 0.000399 svqs 0.000399 modernist 0.000399 cpsu 0.000399 viola 0.000399 ransom 0.000399 uniformed 0.000399 freedoms 0.000399 brilliance 0.000399 ascribed 0.000399 symbolism 0.000399 shannon 0.000399 scars 0.000399 giovanni 0.000399 clad 0.000399 instituted 0.000398 lester 0.000398 wimpey 0.000398 eline 0.000398 protects 0.000398 trek 0.000398 prehistoric 0.000398 refrain 0.000398 ledge 0.000398 ab 0.000398 weep 0.000398 realist 0.000398 bully 0.000398 plotted 0.000398 shh 0.000398 cradle 0.000398 pakistani 0.000398 gosh 0.000398 rave 0.000398 settlor 0.000398 viscount 0.000398 shrink 0.000398 deane 0.000398 sway 0.000398 inherit 0.000398 ideologies 0.000397 drown 0.000397 azerbaijan 0.000397 stony 0.000397 ayrshire 0.000397 slippers 0.000397 owning 0.000397 wrestling 0.000397 briefcase 0.000397 wizard 0.000397 leaking 0.000397 accumulate 0.000397 destinations 0.000397 preacher 0.000397 stud 0.000397 refurbishment 0.000397 kasparov 0.000397 wolfgang 0.000397 relentless 0.000397 automation 0.000397 dun 0.000396 muster 0.000396 goblins 0.000396 forceful 0.000396 rattle 0.000396 inverness 0.000396 backbone 0.000396 natives 0.000396 incompetent 0.000396 hind 0.000396 courageous 0.000396 acquitted 0.000396 indonesian 0.000396 suffrage 0.000396 gibraltar 0.000396 continents 0.000396 trusting 0.000396 barman 0.000396 malt 0.000396 paved 0.000396 helmut 0.000396 disagreements 0.000396 chairmanship 0.000396 mas 0.000395 saviour 0.000395 advantageous 0.000395 undergrowth 0.000395 maple 0.000395 saline 0.000395 insecurity 0.000395 spoilt 0.000395 harshly 0.000395 tara 0.000395 extras 0.000395 uprising 0.000395 sec 0.000395 recollection 0.000395 ratified 0.000395 superbly 0.000395 augustus 0.000394 carlton 0.000394 decorate 0.000394 nobel 0.000394 scorn 0.000394 tongues 0.000394 uneasily 0.000394 postage 0.000394 totalled 0.000394 calibre 0.000394 reversing 0.000394 inscription 0.000394 glenn 0.000394 romanov 0.000394 misunderstood 0.000394 prescribing 0.000394 synonymous 0.000394 experimentation 0.000394 hampstead 0.000394 hospice 0.000394 illegitimate 0.000394 scanner 0.000394 cooler 0.000392 forcibly 0.000392 dinners 0.000392 intestine 0.000392 trams 0.000392 seizure 0.000392 notification 0.000392 terence 0.000392 zip 0.000392 cholera 0.000392 contented 0.000392 barlow 0.000392 dismissing 0.000392 anglian 0.000392 hcima 0.000392 ticking 0.000392 tasty 0.000392 lure 0.000392 cops 0.000392 underline 0.000392 metaphysical 0.000392 admiring 0.000392 allegation 0.000392 herds 0.000392 randomly 0.000392 hampered 0.000392 ridges 0.000392 crunch 0.000392 despatched 0.000391 correlations 0.000391 placebo 0.000391 simplistic 0.000391 amplitude 0.000391 disrupt 0.000391 taut 0.000391 markings 0.000391 diplomat 0.000391 scraped 0.000391 stillness 0.000391 identities 0.000391 tavern 0.000391 explode 0.000391 adjustable 0.000391 chunks 0.000391 mersey 0.000391 miami 0.000391 overlook 0.000391 waits 0.000391 incidental 0.000391 duo 0.000391 evolving 0.000390 bundled 0.000390 tae 0.000390 prussia 0.000390 peking 0.000390 wrapping 0.000390 dwell 0.000390 matthews 0.000390 occupier 0.000390 fujitsu 0.000390 gallagher 0.000390 apartheid 0.000390 genus 0.000390 boyd 0.000390 simmons 0.000390 covert 0.000390 resembling 0.000389 nepal 0.000389 supposing 0.000389 stamina 0.000389 formative 0.000389 incompetence 0.000389 brigadier 0.000389 concurrent 0.000389 subscriptions 0.000389 burglar 0.000389 physicians 0.000389 arrivals 0.000389 awoke 0.000389 dangling 0.000389 boldly 0.000389 intravenous 0.000389 bruises 0.000389 dragons 0.000389 ammonia 0.000389 crippled 0.000389 bug 0.000389 prescriptions 0.000388 uniformity 0.000388 footballer 0.000388 heirs 0.000388 luncheon 0.000388 uphill 0.000388 reacting 0.000388 venetian 0.000388 stormy 0.000388 irvine 0.000388 hypertension 0.000388 percentages 0.000388 pious 0.000388 darts 0.000388 solitude 0.000388 withheld 0.000388 stair 0.000388 bereavement 0.000388 spice 0.000388 barnsley 0.000388 remnants 0.000388 grabbing 0.000388 mccarthy 0.000387 roosevelt 0.000387 watkins 0.000387 complied 0.000387 educate 0.000387 revise 0.000387 tanzania 0.000387 excavations 0.000387 tutorial 0.000387 scripts 0.000387 leopold 0.000387 wrexham 0.000387 sequential 0.000387 candy 0.000387 toyota 0.000387 cortex 0.000387 sidney 0.000387 incomprehensible 0.000387 diversification 0.000387 hugely 0.000387 subscribe 0.000387 calder 0.000387 barnet 0.000387 lennie 0.000386 jed 0.000386 hercules 0.000386 thrilling 0.000386 taped 0.000386 suitability 0.000386 orthodoxy 0.000386 modernisation 0.000386 biliary 0.000386 tentatively 0.000386 childbirth 0.000386 entrenched 0.000386 blossom 0.000386 archaic 0.000386 announcements 0.000386 honda 0.000386 teens 0.000386 precedence 0.000386 drilled 0.000386 undermining 0.000386 embankment 0.000386 lifelong 0.000386 vernon 0.000386 morbidity 0.000385 eyelids 0.000385 fragmentation 0.000385 reflex 0.000385 fingertips 0.000385 huddersfield 0.000385 cheering 0.000385 chernobyl 0.000385 vans 0.000385 theorem 0.000385 auspices 0.000385 checklist 0.000385 newest 0.000385 pedestrians 0.000385 telford 0.000385 soda 0.000385 miner 0.000385 jewel 0.000385 sculptor 0.000385 delicately 0.000385 rehearsals 0.000385 athlete 0.000385 corpses 0.000385 watford 0.000385 survivor 0.000385 pastures 0.000385 calming 0.000385 belville 0.000385 hormones 0.000385 goodwin 0.000385 haze 0.000385 plantations 0.000385 mentality 0.000385 sprung 0.000385 fisherman 0.000384 wakefield 0.000384 posting 0.000384 slovak 0.000384 sandstone 0.000384 caro 0.000384 spies 0.000384 dearly 0.000384 stereotypes 0.000384 potassium 0.000384 distressing 0.000384 complexion 0.000384 modem 0.000384 freak 0.000384 insistent 0.000384 comprehend 0.000384 bragg 0.000384 wrath 0.000384 injections 0.000384 ep 0.000384 golfer 0.000384 cabbage 0.000384 recognisable 0.000384 literate 0.000384 soak 0.000383 taxable 0.000383 soaking 0.000383 cabinets 0.000383 sexist 0.000383 lick 0.000383 carriageway 0.000383 vent 0.000383 bibliography 0.000383 spiders 0.000383 passionately 0.000383 austen 0.000383 splendour 0.000383 lesbians 0.000383 instruct 0.000383 weathering 0.000383 buchanan 0.000383 urquhart 0.000383 flair 0.000383 humiliating 0.000383 choking 0.000383 losers 0.000383 col 0.000383 herb 0.000383 pluralist 0.000383 bottomley 0.000382 anaemia 0.000382 chancery 0.000382 puzzling 0.000382 wiser 0.000382 draining 0.000382 tuberculosis 0.000382 kneeling 0.000382 courier 0.000382 goldfish 0.000382 motifs 0.000382 humane 0.000382 inflationary 0.000382 scalp 0.000382 interrogation 0.000382 rugged 0.000382 detrimental 0.000382 portadown 0.000382 joey 0.000382 pictorial 0.000382 sinclair 0.000382 stratification 0.000382 obituary 0.000382 exploits 0.000381 piercing 0.000381 soho 0.000381 presbyterian 0.000381 sartre 0.000381 perdita 0.000381 firearms 0.000381 chilled 0.000381 authenticity 0.000381 pebbles 0.000381 accessed 0.000381 centralized 0.000381 islington 0.000381 aristotle 0.000381 heroine 0.000381 prerogative 0.000381 alleviate 0.000381 salute 0.000381 vain 0.000381 diego 0.000381 morals 0.000381 depletion 0.000381 streaming 0.000381 macbeth 0.000381 antiquity 0.000381 robots 0.000380 oblivious 0.000380 banquet 0.000380 haunt 0.000380 ventral 0.000380 belongings 0.000380 upgrading 0.000380 groin 0.000380 thematic 0.000380 rags 0.000380 ordained 0.000380 unconsciously 0.000380 lashes 0.000380 becky 0.000380 sniffing 0.000380 brent 0.000380 herring 0.000380 unthinkable 0.000380 bulgarian 0.000380 chilling 0.000380 alienated 0.000380 paired 0.000380 marxists 0.000380 examiner 0.000380 coating 0.000380 reforming 0.000379 caller 0.000379 volatility 0.000379 reinforcing 0.000379 portal 0.000379 surfaced 0.000379 fireworks 0.000379 aycliffe 0.000379 pantomime 0.000379 aliens 0.000379 accuse 0.000379 lottery 0.000379 crucially 0.000379 worthless 0.000379 rees 0.000379 smuggling 0.000379 gallon 0.000379 gazzer 0.000379 manning 0.000379 catalyst 0.000379 galileo 0.000379 adaptations 0.000379 buoyant 0.000379 brixton 0.000379 brew 0.000379 housewives 0.000379 offeror 0.000379 securely 0.000378 illuminating 0.000378 symptomatic 0.000378 determinants 0.000378 rune 0.000378 outlining 0.000378 amazon 0.000378 captivity 0.000378 conway 0.000378 wasps 0.000378 enthusiast 0.000378 glands 0.000378 protocols 0.000378 coordinates 0.000378 instalments 0.000378 enrolled 0.000378 boeing 0.000378 surrounds 0.000378 superiors 0.000378 melbourne 0.000378 therein 0.000378 thirst 0.000378 lynch 0.000378 futile 0.000378 laden 0.000378 gascoigne 0.000378 riven 0.000378 defiant 0.000378 clone 0.000378 stung 0.000378 coupling 0.000378 fluent 0.000378 dishonest 0.000378 scrape 0.000378 reinforcement 0.000378 durable 0.000378 ubiquitous 0.000378 designation 0.000378 gleam 0.000378 astronomy 0.000378 cohort 0.000378 stiffened 0.000378 indictment 0.000377 founders 0.000377 antony 0.000377 benevolent 0.000377 avail 0.000377 desks 0.000377 loyalties 0.000377 lapse 0.000377 staffed 0.000377 lisbon 0.000377 stroking 0.000377 hosted 0.000377 uptake 0.000377 audrey 0.000377 gorge 0.000377 plasmid 0.000377 bounded 0.000377 plumbing 0.000377 counsellors 0.000377 unsuccessfully 0.000377 fauna 0.000377 provocative 0.000377 sockets 0.000377 molar 0.000376 heaved 0.000376 certification 0.000376 interchange 0.000376 chilly 0.000376 complication 0.000376 niall 0.000376 afield 0.000376 realistically 0.000376 permissible 0.000376 sprint 0.000376 swayed 0.000376 hymns 0.000376 oxfam 0.000376 bog 0.000376 ethel 0.000376 plantation 0.000376 ow 0.000376 negligent 0.000376 splashed 0.000376 summon 0.000376 defries 0.000376 certified 0.000376 messy 0.000376 ghana 0.000376 chatter 0.000376 pursuits 0.000375 immigrant 0.000375 endowed 0.000375 housekeeping 0.000375 wooded 0.000375 tranmere 0.000375 modernity 0.000375 palazzo 0.000375 enriched 0.000375 recurring 0.000375 scented 0.000375 walnut 0.000375 moody 0.000375 anticipating 0.000375 carrington 0.000375 queues 0.000375 golfers 0.000375 pleas 0.000375 unbearable 0.000375 vulgar 0.000375 calculator 0.000375 strive 0.000375 campaigned 0.000375 casts 0.000375 prostitute 0.000374 helpers 0.000374 bubbling 0.000374 revert 0.000374 docklands 0.000374 hank 0.000374 pcr 0.000374 dell 0.000374 mackay 0.000374 josh 0.000374 grandeur 0.000374 doubly 0.000374 tuna 0.000374 ayr 0.000374 prepares 0.000374 bumped 0.000374 correspondingly 0.000374 porcelain 0.000374 divers 0.000374 unconditional 0.000374 fetal 0.000372 dominates 0.000372 collapsing 0.000372 promotes 0.000372 scout 0.000372 engraved 0.000372 woolwich 0.000372 soften 0.000372 disused 0.000372 os 0.000372 smelled 0.000372 premise 0.000372 strangled 0.000372 citing 0.000372 ro 0.000372 masculinity 0.000372 olivetti 0.000372 expired 0.000372 pearls 0.000372 treason 0.000372 nra 0.000372 varnish 0.000372 culturally 0.000372 subtly 0.000372 mackenzie 0.000372 detroit 0.000372 fiddle 0.000372 uplands 0.000372 imperfect 0.000372 cultured 0.000372 rotating 0.000372 stationery 0.000372 abc 0.000372 singled 0.000372 humberside 0.000372 bolted 0.000371 endoscopy 0.000371 blondel 0.000371 disgusted 0.000371 outburst 0.000371 purified 0.000371 ancestor 0.000371 flourishing 0.000371 seam 0.000371 shiver 0.000371 hypocrisy 0.000371 crypt 0.000371 symmetric 0.000371 relegated 0.000371 resonance 0.000371 badger 0.000371 scandinavia 0.000371 shocks 0.000371 dougal 0.000371 woodlands 0.000371 rallies 0.000371 supervisors 0.000370 rearing 0.000370 declares 0.000370 roach 0.000370 armagh 0.000370 bra 0.000370 archaeologists 0.000370 complacency 0.000370 soviets 0.000370 solomon 0.000370 dominating 0.000370 civilized 0.000370 deletion 0.000370 winnie 0.000370 littered 0.000370 osborne 0.000370 vanguard 0.000370 upsetting 0.000370 metabolic 0.000370 flanders 0.000370 democracies 0.000370 ingenuity 0.000370 evoked 0.000370 excitation 0.000370 trumpet 0.000370 tiled 0.000370 tame 0.000369 zurich 0.000369 commissioning 0.000369 muck 0.000369 emi 0.000369 phased 0.000369 enclosing 0.000369 covent 0.000369 ominous 0.000369 earmarked 0.000369 arcade 0.000369 galway 0.000369 savoy 0.000369 coordinator 0.000369 tod 0.000369 embracing 0.000369 cleavage 0.000369 firth 0.000369 rifles 0.000369 philadelphia 0.000369 recognizes 0.000369 upland 0.000369 ridley 0.000369 mel 0.000368 asserting 0.000368 wilde 0.000368 auxiliary 0.000368 supernatural 0.000368 welcomes 0.000368 vms 0.000368 gaunt 0.000368 notify 0.000368 folder 0.000368 walters 0.000368 precarious 0.000368 pellets 0.000368 underestimated 0.000368 restraints 0.000368 dunlop 0.000368 exiled 0.000368 swaying 0.000368 invites 0.000368 hounds 0.000368 callaghan 0.000368 dup 0.000368 subsided 0.000368 sobbing 0.000367 manifested 0.000367 willow 0.000367 madge 0.000367 finale 0.000367 nickname 0.000367 lattice 0.000367 rust 0.000367 deducted 0.000367 regiments 0.000367 stephenson 0.000367 decor 0.000367 dart 0.000367 tempo 0.000367 moan 0.000367 tablet 0.000367 cooled 0.000367 protector 0.000367 barbecue 0.000367 mapped 0.000367 proxy 0.000367 bingo 0.000367 bodie 0.000367 spaced 0.000367 postpone 0.000367 dearest 0.000367 bucharest 0.000367 horribly 0.000366 generalized 0.000366 protracted 0.000366 challenger 0.000366 homelessness 0.000366 disqualified 0.000366 cooke 0.000366 agrarian 0.000366 fairfax 0.000366 carnival 0.000366 intermittent 0.000366 staple 0.000366 perceptual 0.000366 battlefield 0.000366 dyson 0.000366 anomalies 0.000366 referees 0.000366 dent 0.000366 alistair 0.000366 mirrored 0.000366 thu 0.000366 advocating 0.000366 midwife 0.000366 bearded 0.000365 inaugural 0.000365 cfcs 0.000365 hammersmith 0.000365 englishmen 0.000365 directories 0.000365 grasping 0.000365 pausing 0.000365 angered 0.000365 wrought 0.000365 loser 0.000365 exporters 0.000365 receptive 0.000365 orchestral 0.000365 betray 0.000365 bombed 0.000365 audible 0.000365 biotechnology 0.000365 sensual 0.000365 rohmer 0.000365 pores 0.000365 endeavours 0.000365 earrings 0.000365 crooked 0.000365 rhyme 0.000364 readership 0.000364 farmland 0.000364 conquered 0.000364 cooks 0.000364 helens 0.000364 policyholder 0.000364 lilley 0.000364 commencement 0.000364 fished 0.000364 provocation 0.000364 normality 0.000364 hum 0.000364 bites 0.000364 stoddard 0.000364 snack 0.000364 bulls 0.000364 sporadic 0.000364 woolley 0.000364 ordinarily 0.000364 sphincter 0.000364 motto 0.000364 vibrant 0.000364 squeezing 0.000364 prerequisite 0.000364 outdoors 0.000364 putt 0.000364 thriller 0.000364 wrinkled 0.000363 crewe 0.000363 superseded 0.000363 elton 0.000363 privet 0.000363 detriment 0.000363 trunks 0.000363 gulls 0.000363 monstrous 0.000363 apollo 0.000363 masonry 0.000363 rotting 0.000363 blatant 0.000363 amateurs 0.000363 ancillary 0.000363 contours 0.000363 commentator 0.000363 ferret 0.000363 aroma 0.000363 sdlp 0.000363 pros 0.000363 sparse 0.000363 ceramics 0.000363 papillae 0.000363 banished 0.000363 vancouver 0.000363 baffled 0.000363 monte 0.000363 starved 0.000363 apprentices 0.000362 tsp 0.000362 sellafield 0.000362 inertia 0.000362 cheeky 0.000362 las 0.000362 fiat 0.000362 swans 0.000362 impoverished 0.000362 shutting 0.000362 anfield 0.000362 inspections 0.000362 condensation 0.000362 rspca 0.000362 ne 0.000362 inaccessible 0.000362 impossibility 0.000362 spectra 0.000362 stew 0.000362 prompting 0.000362 cose 0.000362 minoan 0.000362 detectors 0.000362 discreetly 0.000362 ianthe 0.000362 explores 0.000362 connor 0.000361 disagreed 0.000361 newbury 0.000361 malicious 0.000361 industrialized 0.000361 convened 0.000361 chocolates 0.000361 memo 0.000361 mused 0.000361 taxing 0.000361 insure 0.000361 uplift 0.000361 inspiring 0.000361 preview 0.000361 hal 0.000361 livingstone 0.000361 georgina 0.000361 wryly 0.000361 hefty 0.000361 hms 0.000361 watering 0.000361 augmented 0.000361 delaying 0.000361 achieves 0.000361 unilateral 0.000361 niki 0.000361 preached 0.000361 reservoirs 0.000361 heady 0.000361 hasty 0.000361 lais 0.000361 twickenham 0.000361 ironing 0.000361 refund 0.000361 guatemala 0.000361 paddington 0.000361 pistols 0.000360 kingsley 0.000360 tracts 0.000360 slogans 0.000360 camden 0.000360 dora 0.000360 punters 0.000360 comrade 0.000360 shrinking 0.000360 estimation 0.000360 downfall 0.000360 hopper 0.000360 removes 0.000360 hymn 0.000360 jeopardy 0.000360 allotted 0.000360 eqn 0.000360 replica 0.000360 muhammad 0.000360 cursor 0.000359 trembled 0.000359 stressful 0.000359 havoc 0.000359 delivers 0.000359 wig 0.000359 saucer 0.000359 urges 0.000359 irritable 0.000359 unresolved 0.000359 vandalism 0.000359 thrusting 0.000359 lodging 0.000359 excavated 0.000359 emigration 0.000359 breathtaking 0.000359 transformations 0.000359 transitions 0.000359 obsolete 0.000359 illumination 0.000359 noreen 0.000359 arid 0.000359 dinghy 0.000359 hug 0.000359 sweetly 0.000359 exaggeration 0.000359 blur 0.000358 postcards 0.000358 mandeville 0.000358 insecure 0.000358 kosovo 0.000358 pentium 0.000358 overdue 0.000358 ven 0.000358 spear 0.000358 mockery 0.000358 adhere 0.000358 suzanne 0.000358 predictably 0.000358 shave 0.000358 mend 0.000358 steeply 0.000358 blooming 0.000358 diffuse 0.000358 classed 0.000358 tangle 0.000358 upgraded 0.000358 breached 0.000358 tribune 0.000358 presses 0.000358 sammy 0.000358 essentials 0.000358 robins 0.000358 cleansing 0.000358 queer 0.000358 cutter 0.000358 colorado 0.000358 repressed 0.000357 elf 0.000357 australians 0.000357 hitch 0.000357 sprayed 0.000357 crow 0.000357 deprive 0.000357 establishes 0.000357 noticeably 0.000357 culley 0.000357 midway 0.000357 wharf 0.000357 erection 0.000357 bulky 0.000357 shaved 0.000357 henceforth 0.000357 vineyards 0.000357 spitting 0.000357 uganda 0.000357 devising 0.000357 femininity 0.000357 brace 0.000357 fraught 0.000357 louisa 0.000357 decency 0.000357 berwick 0.000356 conscientious 0.000356 refurbished 0.000356 chicks 0.000356 contemplation 0.000356 dinah 0.000356 symmetrical 0.000356 raffle 0.000356 bolivia 0.000356 unfavourable 0.000356 illusions 0.000356 fractured 0.000356 dismantled 0.000356 bends 0.000356 resent 0.000356 ounce 0.000356 wavelength 0.000356 objectively 0.000356 istanbul 0.000356 bathrooms 0.000356 bravely 0.000356 gasping 0.000356 wagons 0.000356 unattractive 0.000355 pollutants 0.000355 peeled 0.000355 condemning 0.000355 ushered 0.000355 expiry 0.000355 coward 0.000355 widowed 0.000355 strikingly 0.000355 stemmed 0.000355 shove 0.000355 piping 0.000355 willy 0.000355 lindsay 0.000355 ribbons 0.000355 latvia 0.000355 pirates 0.000355 vacancy 0.000355 inns 0.000355 claimant 0.000355 inferred 0.000355 ascot 0.000355 gunmen 0.000355 goodman 0.000355 coercion 0.000355 deficits 0.000355 radcliffe 0.000355 sharpened 0.000355 rinse 0.000355 knowledgeable 0.000355 oceanic 0.000355 swallowing 0.000355 regularity 0.000355 columbus 0.000355 tamar 0.000355 whaling 0.000354 riches 0.000354 newmarket 0.000354 hail 0.000354 royalties 0.000354 inflict 0.000354 villas 0.000354 courtney 0.000354 landlady 0.000354 dissemination 0.000354 ontario 0.000354 pests 0.000354 fostered 0.000354 gazza 0.000354 headlights 0.000354 mushroom 0.000354 ruefully 0.000354 attlee 0.000354 ecumenical 0.000354 distrust 0.000354 lodgings 0.000354 ono 0.000354 clarified 0.000354 hegemony 0.000354 pickup 0.000354 aggie 0.000354 sown 0.000354 manoeuvres 0.000354 gatwick 0.000354 conglomerate 0.000354 renewable 0.000354 fitter 0.000354 classify 0.000354 carole 0.000354 genetically 0.000354 crab 0.000352 saatchi 0.000352 alkaline 0.000352 zeal 0.000352 geographically 0.000352 dominic 0.000352 stockholm 0.000352 sherwood 0.000352 frau 0.000352 macedonia 0.000352 brownie 0.000352 beginner 0.000352 pastel 0.000352 bilingual 0.000352 pianist 0.000352 gardner 0.000352 hackney 0.000352 despatch 0.000352 salient 0.000352 unauthorised 0.000352 brownies 0.000352 taboo 0.000352 curving 0.000352 adhesion 0.000352 orcs 0.000352 wang 0.000352 cardigan 0.000352 groan 0.000351 kb 0.000351 articulation 0.000351 kendall 0.000351 hush 0.000351 accelerator 0.000351 scrum 0.000351 dagger 0.000351 bernie 0.000351 ibid 0.000351 barge 0.000351 dismantling 0.000351 thorpe 0.000351 hassle 0.000351 divides 0.000351 booming 0.000351 physiology 0.000351 shaded 0.000351 lawns 0.000351 nile 0.000351 jupiter 0.000351 phoning 0.000351 overdraft 0.000351 license 0.000351 burrow 0.000351 approximation 0.000351 cassettes 0.000350 activist 0.000350 cumberland 0.000350 leased 0.000350 closeness 0.000350 hammering 0.000350 cylinders 0.000350 panting 0.000350 naylor 0.000350 affectionate 0.000350 simplify 0.000350 fooled 0.000350 colder 0.000350 pedigree 0.000350 adapting 0.000350 bogus 0.000350 surpluses 0.000350 berries 0.000350 associative 0.000350 amplifier 0.000350 eisenhower 0.000350 pamphlets 0.000350 lineage 0.000350 reconciled 0.000350 dispatched 0.000350 tumble 0.000350 garages 0.000350 beveridge 0.000350 pollen 0.000350 ottoman 0.000350 diffusion 0.000350 eligibility 0.000349 eyre 0.000349 ceases 0.000349 enforcing 0.000349 remission 0.000349 overtaken 0.000349 lizzie 0.000349 nationalized 0.000349 barney 0.000349 settee 0.000349 sage 0.000349 walled 0.000349 stipulated 0.000349 thumping 0.000349 emulate 0.000349 nesting 0.000349 vibrations 0.000349 massively 0.000349 kev 0.000349 torment 0.000349 peptide 0.000349 thorne 0.000349 horton 0.000349 labouring 0.000349 hawaii 0.000349 exemptions 0.000349 transmit 0.000349 illustrating 0.000349 beryl 0.000349 lorton 0.000349 broom 0.000349 au 0.000349 archie 0.000348 respectability 0.000348 hostilities 0.000348 irina 0.000348 repatriation 0.000348 programmer 0.000348 catholicism 0.000348 constructions 0.000348 trot 0.000348 ornate 0.000348 upheaval 0.000348 frying 0.000348 methane 0.000348 menacing 0.000348 subversive 0.000348 chewed 0.000348 nicer 0.000348 shuffled 0.000348 blushed 0.000348 obligatory 0.000348 spate 0.000348 expanse 0.000348 initials 0.000348 cegb 0.000348 wordperfect 0.000348 looming 0.000348 drills 0.000348 tilt 0.000348 lag 0.000348 maize 0.000347 seymour 0.000347 almond 0.000347 indefinite 0.000347 matrimonial 0.000347 pointer 0.000347 kuwaiti 0.000347 weave 0.000347 forte 0.000347 trails 0.000347 topping 0.000347 barked 0.000347 prescott 0.000347 gastritis 0.000347 everest 0.000347 placements 0.000347 digested 0.000347 nomes 0.000347 carbohydrate 0.000347 prentice 0.000347 radios 0.000347 conveyancing 0.000347 chronological 0.000347 byron 0.000347 pennsylvania 0.000347 exhaustive 0.000347 conveyance 0.000347 pancreatitis 0.000346 inexpensive 0.000346 spilling 0.000346 guildford 0.000346 peugeot 0.000346 dallas 0.000346 ap 0.000346 converts 0.000346 nietzsche 0.000346 totality 0.000346 stripping 0.000346 whitehouse 0.000346 smoothing 0.000346 malice 0.000346 banners 0.000346 tart 0.000346 stuffing 0.000346 observable 0.000346 averages 0.000346 fidelity 0.000346 subs 0.000346 wyatt 0.000346 fragrance 0.000346 constantine 0.000346 mondays 0.000346 overheard 0.000346 animation 0.000346 hunched 0.000345 hostels 0.000345 derivative 0.000345 ornaments 0.000345 partisan 0.000345 chew 0.000345 olivia 0.000345 sevens 0.000345 rattling 0.000345 rioting 0.000345 initiating 0.000345 predatory 0.000345 ducked 0.000345 tendering 0.000345 marr 0.000345 unhappiness 0.000345 nissan 0.000345 enamel 0.000345 edie 0.000345 reflective 0.000345 franz 0.000345 grind 0.000345 comedian 0.000345 unspoken 0.000345 floyd 0.000345 colorectal 0.000345 pathology 0.000345 asserts 0.000345 steered 0.000345 saucepan 0.000344 pouch 0.000344 aback 0.000344 twigs 0.000344 aaron 0.000344 dustbin 0.000344 bluff 0.000344 sow 0.000344 nightmares 0.000344 ballroom 0.000344 sleek 0.000344 doris 0.000344 congratulated 0.000344 garland 0.000344 encompass 0.000344 boarded 0.000344 coordinated 0.000344 toured 0.000344 snatch 0.000344 levi 0.000344 progressing 0.000344 solids 0.000344 anorexia 0.000344 remedial 0.000344 exposition 0.000344 squire 0.000343 moaned 0.000343 lain 0.000343 infamous 0.000343 leaps 0.000343 internationals 0.000343 charters 0.000343 loomed 0.000343 liza 0.000343 televised 0.000343 electromagnetic 0.000343 pathways 0.000343 complimentary 0.000343 gummer 0.000343 contests 0.000343 rdbi 0.000343 forbes 0.000343 shudder 0.000343 subjectivity 0.000343 pierced 0.000343 coconut 0.000343 apricot 0.000343 freshwater 0.000343 salford 0.000343 industrialization 0.000343 goldsmith 0.000343 nervousness 0.000343 webster 0.000343 emptiness 0.000342 amen 0.000342 fertiliser 0.000342 estonia 0.000342 deepened 0.000342 bobbie 0.000342 amenable 0.000342 moles 0.000342 rationing 0.000342 incur 0.000342 pilgrims 0.000342 ark 0.000342 weavers 0.000342 cages 0.000342 esrc 0.000342 cowboy 0.000342 belgrade 0.000342 blooms 0.000342 dough 0.000342 forbidding 0.000342 fitzgerald 0.000342 trough 0.000342 artery 0.000342 glued 0.000341 michele 0.000341 computational 0.000341 knowingly 0.000341 mileage 0.000341 halling 0.000341 dispersal 0.000341 billions 0.000341 brett 0.000341 soluble 0.000341 tec 0.000341 blokes 0.000341 aix 0.000341 boasted 0.000341 coughed 0.000341 gravely 0.000341 harmonic 0.000341 sighted 0.000341 deteriorating 0.000341 prominently 0.000341 grassy 0.000341 angalo 0.000341 tokens 0.000341 specialising 0.000341 signify 0.000341 langley 0.000341 channelled 0.000341 haemorrhage 0.000341 psychiatrists 0.000341 flashes 0.000341 witches 0.000341 phillip 0.000340 duplicate 0.000340 tempered 0.000340 pops 0.000340 aspirin 0.000340 underside 0.000340 disillusioned 0.000340 bottoms 0.000340 specialization 0.000340 fo 0.000340 tucker 0.000340 salvage 0.000340 arson 0.000340 commended 0.000340 mao 0.000340 deriving 0.000340 metaphors 0.000340 cherished 0.000340 vanish 0.000340 migrate 0.000340 woodwork 0.000340 tabitha 0.000340 substrate 0.000340 dispatch 0.000340 hooper 0.000340 strides 0.000340 longitudinal 0.000340 ldp 0.000339 miserably 0.000339 combustion 0.000339 kerry 0.000339 burglars 0.000339 yielding 0.000339 insensitive 0.000339 squads 0.000339 tally 0.000339 nightclub 0.000339 adaptive 0.000339 blinds 0.000339 arouse 0.000339 clinically 0.000339 sheikh 0.000339 scoop 0.000339 inadvertently 0.000339 straits 0.000339 pringle 0.000339 augustine 0.000339 uphold 0.000339 bs 0.000339 liner 0.000339 blueprint 0.000339 pruning 0.000339 immoral 0.000338 tranquillity 0.000338 broadcasters 0.000338 anaesthetic 0.000338 adored 0.000338 argyll 0.000338 announces 0.000338 incubated 0.000338 ferries 0.000338 stroud 0.000338 bony 0.000338 londonderry 0.000338 brewer 0.000338 adolescents 0.000338 romeo 0.000338 discontinued 0.000338 andrea 0.000338 parasite 0.000338 athenian 0.000338 albion 0.000338 tab 0.000338 confided 0.000338 disintegration 0.000338 apex 0.000337 nurseries 0.000337 riddle 0.000337 motility 0.000337 tonne 0.000337 waitress 0.000337 beacon 0.000337 magnet 0.000337 resumption 0.000337 swirling 0.000337 cooperate 0.000337 momentary 0.000337 artificially 0.000337 brutality 0.000337 surname 0.000337 devious 0.000337 throbbing 0.000337 drinkers 0.000337 industrialisation 0.000337 digby 0.000337 adhesive 0.000337 opaque 0.000337 payers 0.000337 dorcas 0.000337 normative 0.000337 labourer 0.000337 portray 0.000337 carcinoma 0.000337 nearing 0.000337 gigs 0.000337 laurence 0.000337 vodka 0.000336 greetings 0.000336 lingered 0.000336 extradition 0.000336 inverse 0.000336 hardness 0.000336 marlborough 0.000336 basins 0.000336 cantona 0.000336 elapsed 0.000336 stains 0.000336 sped 0.000336 skinny 0.000336 chen 0.000336 boulders 0.000336 philippe 0.000336 rumoured 0.000336 compaq 0.000336 estimating 0.000336 farce 0.000336 faeces 0.000336 prophecy 0.000336 breeders 0.000336 experimenting 0.000336 infer 0.000336 envoy 0.000336 facilitated 0.000336 cdu 0.000336 donovan 0.000336 innumerable 0.000335 hose 0.000335 coeliac 0.000335 chattering 0.000335 campaigner 0.000335 chassis 0.000335 creek 0.000335 recorders 0.000335 idealism 0.000335 intellectually 0.000335 overcrowded 0.000335 sprinkle 0.000335 keenly 0.000335 duplication 0.000335 landowner 0.000335 stocked 0.000335 mailing 0.000335 departing 0.000335 valuations 0.000335 trouser 0.000335 superficially 0.000335 netting 0.000335 bluntly 0.000335 shark 0.000335 shorthand 0.000335 bays 0.000335 facets 0.000335 gm 0.000335 ass 0.000335 guessing 0.000335 minimize 0.000335 manuals 0.000335 seams 0.000334 gaza 0.000334 jules 0.000334 piccadilly 0.000334 rectangle 0.000334 bullying 0.000334 phenomenal 0.000334 dalgliesh 0.000334 bryony 0.000334 yu 0.000334 lyrical 0.000334 assassin 0.000334 californian 0.000334 accessibility 0.000334 branching 0.000334 tanned 0.000334 sybase 0.000334 reconstructed 0.000334 sipping 0.000334 administering 0.000334 takeovers 0.000334 cutlery 0.000334 franca 0.000334 rica 0.000334 utilised 0.000334 earls 0.000334 diligence 0.000334 weighs 0.000334 lionel 0.000334 importing 0.000334 standby 0.000334 sings 0.000334 jurnet 0.000334 refreshments 0.000334 patrols 0.000334 allison 0.000332 haemoglobin 0.000332 miraculous 0.000332 valentine 0.000332 vinyl 0.000332 pans 0.000332 chic 0.000332 guarding 0.000332 chipped 0.000332 inwards 0.000332 onslaught 0.000332 cabaret 0.000332 scatter 0.000332 dcs 0.000332 rsc 0.000332 danzig 0.000332 edna 0.000332 precedents 0.000332 schoolgirl 0.000332 confine 0.000332 deserts 0.000332 inactive 0.000332 listings 0.000332 undo 0.000332 frome 0.000332 knuckles 0.000332 offend 0.000332 claw 0.000332 coefficients 0.000332 brooding 0.000332 assertive 0.000332 directorate 0.000331 misguided 0.000331 shipment 0.000331 eton 0.000331 oaks 0.000331 countenance 0.000331 galloway 0.000331 strenuous 0.000331 fieldwork 0.000331 widest 0.000331 sniff 0.000331 embarking 0.000331 emotive 0.000331 exploratory 0.000331 roubles 0.000331 conserve 0.000331 abide 0.000331 ge 0.000331 seismic 0.000331 culminated 0.000331 villain 0.000331 rosy 0.000331 ferocious 0.000331 misconduct 0.000331 impartial 0.000331 regal 0.000331 sampled 0.000331 clapham 0.000331 anton 0.000330 unfairly 0.000330 havel 0.000330 blinking 0.000330 researching 0.000330 acquainted 0.000330 rem 0.000330 rotary 0.000330 afghan 0.000330 evoke 0.000330 unambiguous 0.000330 obsessive 0.000330 hoover 0.000330 fins 0.000330 usable 0.000330 broaden 0.000330 intruder 0.000330 linguists 0.000330 informix 0.000330 vernacular 0.000330 robes 0.000330 coleraine 0.000330 grasses 0.000330 widnes 0.000330 patchy 0.000330 hirst 0.000330 botanical 0.000330 watercolours 0.000330 marrow 0.000329 eloquent 0.000329 shortest 0.000329 payne 0.000329 mosque 0.000329 defy 0.000329 perennial 0.000329 gearing 0.000329 shipments 0.000329 aspiring 0.000329 karate 0.000329 compromised 0.000329 hem 0.000329 alternating 0.000329 override 0.000329 advertisers 0.000329 scrapped 0.000329 deity 0.000329 demons 0.000329 bonding 0.000329 defiantly 0.000329 uefa 0.000329 believer 0.000329 sectarian 0.000329 fbi 0.000329 southport 0.000329 childcare 0.000329 grassland 0.000329 drake 0.000329 informants 0.000329 plumage 0.000329 pe 0.000329 diocesan 0.000329 albanian 0.000329 cds 0.000329 comforted 0.000329 turbo 0.000329 artwork 0.000328 microprocessor 0.000328 glowed 0.000328 bartholomew 0.000328 walsall 0.000328 sybil 0.000328 casey 0.000328 suez 0.000328 gemma 0.000328 suggestive 0.000328 persia 0.000328 highlighting 0.000328 preferential 0.000328 smear 0.000328 dodgy 0.000328 adhered 0.000328 elaborated 0.000328 controllers 0.000328 platt 0.000328 elasticity 0.000328 armenia 0.000328 dismissive 0.000328 quebec 0.000328 maltravers 0.000328 garvey 0.000328 sharper 0.000328 reinforces 0.000328 edging 0.000327 aug 0.000327 intermediary 0.000327 flattered 0.000327 yemen 0.000327 dawned 0.000327 aylesbury 0.000327 charismatic 0.000327 externally 0.000327 periphery 0.000327 substituting 0.000327 infinity 0.000327 vomiting 0.000327 lighthouse 0.000327 nicandra 0.000327 funerals 0.000327 overhaul 0.000327 persists 0.000327 snorted 0.000327 constructs 0.000327 precaution 0.000327 clapped 0.000327 circulate 0.000327 blush 0.000327 stricken 0.000327 vera 0.000327 confinement 0.000327 totals 0.000327 digits 0.000327 exasperation 0.000327 ibrox 0.000327 roe 0.000326 creggan 0.000326 southwark 0.000326 depleted 0.000326 bukharin 0.000326 hebrides 0.000326 horticultural 0.000326 dessert 0.000326 chronology 0.000326 rump 0.000326 gurder 0.000326 gwen 0.000326 margarine 0.000326 subsidised 0.000326 swamp 0.000326 violated 0.000326 clamped 0.000326 concerted 0.000326 activate 0.000326 sgt 0.000326 justifiable 0.000326 palette 0.000326 stein 0.000326 platinum 0.000326 chick 0.000326 railings 0.000326 alastair 0.000326 dove 0.000325 coasts 0.000325 tub 0.000325 mingled 0.000325 gazette 0.000325 foreground 0.000325 bgs 0.000325 pathological 0.000325 liquids 0.000325 theresa 0.000325 munro 0.000325 grotesque 0.000325 renwick 0.000325 griffin 0.000325 reptiles 0.000325 rained 0.000325 caravans 0.000325 bulging 0.000325 reactionary 0.000325 archers 0.000325 complacent 0.000325 titled 0.000325 lorna 0.000325 henri 0.000325 witchcraft 0.000325 newham 0.000325 jagged 0.000325 fin 0.000325 rigidly 0.000325 flare 0.000325 culmination 0.000325 buffalo 0.000325 spade 0.000325 tiller 0.000325 applauded 0.000324 commonest 0.000324 hon 0.000324 stainless 0.000324 seville 0.000324 yelling 0.000324 polled 0.000324 groves 0.000324 embroidery 0.000324 raft 0.000324 malik 0.000324 aerobics 0.000324 oed 0.000324 olympia 0.000324 inconvenient 0.000324 transcript 0.000324 mainframes 0.000324 hierarchies 0.000324 kurt 0.000324 bunker 0.000324 flanks 0.000324 artemis 0.000324 contenders 0.000324 researched 0.000324 inversion 0.000324 ella 0.000324 elsie 0.000324 spraying 0.000324 repeal 0.000324 fiji 0.000324 regrets 0.000324 hayes 0.000324 copenhagen 0.000324 eerie 0.000324 lading 0.000324 gem 0.000324 exchanging 0.000324 unison 0.000324 emergencies 0.000323 granddad 0.000323 hutton 0.000323 alloy 0.000323 polythene 0.000323 bargains 0.000323 luminous 0.000323 deduced 0.000323 proprietors 0.000323 hides 0.000323 deference 0.000323 tremendously 0.000323 terrestrial 0.000323 grubby 0.000323 sweetness 0.000323 secretarial 0.000323 criticize 0.000323 polishing 0.000323 pitt 0.000323 austere 0.000323 indistinguishable 0.000323 peculiarly 0.000323 strapped 0.000323 grading 0.000323 booze 0.000323 jamaican 0.000323 endurance 0.000323 sd 0.000323 oem 0.000323 requisite 0.000323 drawled 0.000323 portland 0.000323 stupidity 0.000323 ups 0.000323 miriam 0.000323 blot 0.000323 systemic 0.000323 deceived 0.000323 flask 0.000323 derivatives 0.000323 sap 0.000323 anthem 0.000323 xv 0.000323 thwarted 0.000322 modifying 0.000322 blindly 0.000322 stag 0.000322 victorious 0.000322 freehold 0.000322 cervical 0.000322 woo 0.000322 clashed 0.000322 originality 0.000322 mechanic 0.000322 fasting 0.000322 puppet 0.000322 herefordshire 0.000322 apologize 0.000322 nuclei 0.000322 messing 0.000322 roxburgh 0.000322 tuning 0.000322 cons 0.000322 lineker 0.000322 conveying 0.000322 puff 0.000322 lofty 0.000322 howling 0.000322 trident 0.000322 icons 0.000322 standpoint 0.000322 ledger 0.000322 clwyd 0.000322 lends 0.000322 cavalier 0.000322 bemused 0.000321 incubation 0.000321 yvonne 0.000321 inferences 0.000321 sincerity 0.000321 delicacy 0.000321 toad 0.000321 competed 0.000321 horrendous 0.000321 pegs 0.000321 bathed 0.000321 hovered 0.000321 alphabet 0.000321 declines 0.000321 necessitated 0.000321 plato 0.000321 sae 0.000321 taxis 0.000321 weddings 0.000321 paranoid 0.000321 monasteries 0.000321 kingdoms 0.000321 preach 0.000321 repercussions 0.000321 penelope 0.000321 acquaintances 0.000321 dipping 0.000321 inflated 0.000321 avenues 0.000321 incest 0.000321 oversee 0.000321 tiring 0.000321 bnfl 0.000321 computed 0.000321 tranquil 0.000321 randolph 0.000320 dilemmas 0.000320 fri 0.000320 constipation 0.000320 watery 0.000320 heed 0.000320 reappeared 0.000320 unreal 0.000320 alf 0.000320 detailing 0.000320 unmarked 0.000320 juniors 0.000320 favouring 0.000320 genetics 0.000320 mince 0.000320 ombudsman 0.000320 borrower 0.000320 accelerating 0.000320 lyle 0.000320 healed 0.000320 multilateral 0.000320 overcrowding 0.000320 ills 0.000320 cute 0.000320 forbid 0.000320 happiest 0.000319 mediation 0.000319 holloway 0.000319 frenzy 0.000319 interpersonal 0.000319 kyle 0.000319 mantelpiece 0.000319 adulthood 0.000319 rake 0.000319 unwittingly 0.000319 motorbike 0.000319 deepening 0.000319 pentagon 0.000319 epithelium 0.000319 outspoken 0.000319 remand 0.000319 disgraceful 0.000319 uncompromising 0.000319 snarled 0.000319 synod 0.000319 slum 0.000319 rogue 0.000319 resin 0.000319 nationalities 0.000319 nellie 0.000319 vacation 0.000319 asians 0.000319 punishing 0.000319 apprehensive 0.000319 blinded 0.000319 trophies 0.000319 lt 0.000319 registering 0.000319 bordeaux 0.000318 freeing 0.000318 botham 0.000318 undergraduates 0.000318 woody 0.000318 climber 0.000318 drab 0.000318 cleanliness 0.000318 bundestag 0.000318 conventionally 0.000318 umpire 0.000318 marquis 0.000318 abdomen 0.000318 spices 0.000318 boyle 0.000318 retribution 0.000318 bumper 0.000318 nominations 0.000318 myriad 0.000318 noah 0.000318 troy 0.000318 font 0.000318 overcoat 0.000318 borrowings 0.000318 csce 0.000318 plugs 0.000318 cartridge 0.000318 subconscious 0.000318 biologists 0.000318 murderers 0.000318 hepatic 0.000318 figs 0.000318 quarries 0.000318 refrigerator 0.000317 therese 0.000317 relativity 0.000317 reconnaissance 0.000317 sane 0.000317 misty 0.000317 hourly 0.000317 lovingly 0.000317 leaks 0.000317 decisively 0.000317 timbers 0.000317 overgrown 0.000317 fluorescent 0.000317 waugh 0.000317 manure 0.000317 projecting 0.000317 heaving 0.000317 perch 0.000317 instructive 0.000317 orient 0.000317 modestly 0.000317 merton 0.000317 neurons 0.000317 ursula 0.000317 charlemagne 0.000317 collided 0.000317 narrowing 0.000317 motherhood 0.000316 chanting 0.000316 demon 0.000316 te 0.000316 unspecified 0.000316 discovers 0.000316 doctrines 0.000316 amalgamated 0.000316 bonfire 0.000316 cp 0.000316 tech 0.000316 enshrined 0.000316 horne 0.000316 underwriting 0.000316 reputed 0.000316 truman 0.000316 bombardment 0.000316 poked 0.000316 timid 0.000316 sexism 0.000316 fringes 0.000316 rapport 0.000316 endemic 0.000316 convincingly 0.000316 trait 0.000316 choral 0.000315 meticulous 0.000315 scraping 0.000315 reformist 0.000315 raided 0.000315 tiredness 0.000315 tacit 0.000315 acclaimed 0.000315 celebrates 0.000315 amplification 0.000315 lowland 0.000315 hype 0.000315 dictates 0.000315 contacting 0.000315 siblings 0.000315 effluent 0.000315 gladly 0.000315 clicked 0.000315 averaging 0.000315 tammuz 0.000315 flapping 0.000315 believers 0.000315 gladstone 0.000315 shampoo 0.000315 looms 0.000315 risked 0.000315 malawi 0.000314 smelling 0.000314 livery 0.000314 preclude 0.000314 piazza 0.000314 sauna 0.000314 blindness 0.000314 tempt 0.000314 nonconformist 0.000314 informally 0.000314 admiralty 0.000314 marcos 0.000314 acrylic 0.000314 waldegrave 0.000314 merging 0.000314 regency 0.000314 franc 0.000314 excused 0.000314 stuttgart 0.000314 nouns 0.000314 chunk 0.000314 specialise 0.000314 servicemen 0.000314 tramway 0.000314 rollers 0.000314 khmer 0.000313 bollocks 0.000313 calorie 0.000313 popping 0.000313 testify 0.000313 sympathetically 0.000313 props 0.000313 entrances 0.000313 riley 0.000313 monde 0.000313 zoe 0.000313 lambeth 0.000313 emitted 0.000313 voter 0.000313 bugs 0.000313 smartly 0.000313 gleamed 0.000313 intimidation 0.000313 sinks 0.000313 generators 0.000313 johnstone 0.000313 finch 0.000313 disparate 0.000313 engineered 0.000313 submitting 0.000313 dispense 0.000313 fairs 0.000313 conducive 0.000313 grit 0.000313 aromatic 0.000313 contractions 0.000311 brickwork 0.000311 ploy 0.000311 manuel 0.000311 quivering 0.000311 nagging 0.000311 palaces 0.000311 growers 0.000311 dresser 0.000311 dissidents 0.000311 peril 0.000311 cumbersome 0.000311 bonanza 0.000311 taunton 0.000311 propensity 0.000311 discredited 0.000311 trifle 0.000311 helper 0.000311 colt 0.000311 darted 0.000311 geographic 0.000311 linfield 0.000311 exhausting 0.000311 ploughing 0.000311 equivalents 0.000311 bicycles 0.000311 replacements 0.000311 inert 0.000311 township 0.000311 affirmed 0.000311 principals 0.000311 asbestos 0.000311 pollock 0.000311 misled 0.000311 becker 0.000311 grievous 0.000311 bouquet 0.000310 rushdie 0.000310 dentists 0.000310 oswald 0.000310 dunbar 0.000310 shopkeepers 0.000310 hub 0.000310 joked 0.000310 distract 0.000310 folklore 0.000310 drummer 0.000310 cr 0.000310 equaliser 0.000310 stamping 0.000310 trafalgar 0.000310 klein 0.000310 custard 0.000310 majestic 0.000310 somali 0.000310 eclipse 0.000310 heaps 0.000310 investigative 0.000310 locating 0.000310 uniformly 0.000310 hayward 0.000310 drip 0.000310 tripped 0.000310 pauses 0.000310 pesticide 0.000310 chatted 0.000310 adultery 0.000310 syndicate 0.000309 flurry 0.000309 magee 0.000309 unqualified 0.000309 pals 0.000309 rudder 0.000309 healey 0.000309 boon 0.000309 hobbies 0.000309 amplified 0.000309 pilkington 0.000309 rarity 0.000309 pronounce 0.000309 aspiration 0.000309 manned 0.000309 egalitarian 0.000309 modesty 0.000309 discernible 0.000309 mona 0.000309 cite 0.000309 cobalt 0.000309 uncontrolled 0.000309 tombs 0.000309 theo 0.000309 terminus 0.000309 milling 0.000309 testator 0.000309 brittany 0.000309 nash 0.000309 ari 0.000309 contender 0.000309 dinosaur 0.000309 snail 0.000309 vectors 0.000309 mugs 0.000309 shamir 0.000309 specialises 0.000309 milky 0.000309 plunging 0.000309 thrush 0.000308 scriptures 0.000308 wired 0.000308 skilfully 0.000308 template 0.000308 fungus 0.000308 instructors 0.000308 crilly 0.000308 paddle 0.000308 sparkle 0.000308 bookshops 0.000308 swamped 0.000308 mall 0.000308 misplaced 0.000308 precipitated 0.000308 chauffeur 0.000308 scrolled 0.000308 floats 0.000308 earns 0.000308 oats 0.000308 decreed 0.000308 fc 0.000308 drawbacks 0.000308 angling 0.000308 cursing 0.000308 catered 0.000308 manipulating 0.000308 yoghurt 0.000308 windsurfing 0.000308 clamp 0.000308 visionary 0.000308 lesion 0.000308 ealing 0.000308 excitedly 0.000308 solemnly 0.000307 orc 0.000307 causation 0.000307 mc 0.000307 aquino 0.000307 buckley 0.000307 indexes 0.000307 drawback 0.000307 regulars 0.000307 heron 0.000307 aggressively 0.000307 proviso 0.000307 bedfordshire 0.000307 prosecute 0.000307 hinges 0.000307 anymore 0.000307 sabbath 0.000307 floorboards 0.000307 notebooks 0.000307 beak 0.000307 archdeacon 0.000307 mammalian 0.000307 whigs 0.000307 nay 0.000307 amiable 0.000307 degenerate 0.000307 overdose 0.000307 modernization 0.000307 impractical 0.000307 concise 0.000307 strife 0.000307 cockney 0.000307 reverted 0.000307 trespass 0.000307 telegram 0.000307 petitions 0.000307 deviations 0.000307 gospels 0.000306 mysteriously 0.000306 dylan 0.000306 puritan 0.000306 coinage 0.000306 supervising 0.000306 cosmopolitan 0.000306 chimneys 0.000306 barristers 0.000306 milburn 0.000306 linkage 0.000306 berger 0.000306 passions 0.000306 unbroken 0.000306 bunk 0.000306 misgivings 0.000306 yarns 0.000306 refreshment 0.000306 introductions 0.000306 incarnation 0.000306 morphological 0.000306 furnace 0.000306 irwin 0.000306 harmonious 0.000306 monoxide 0.000306 karajan 0.000306 parody 0.000306 greatness 0.000306 psychologically 0.000306 humility 0.000306 safest 0.000306 undoubted 0.000306 brute 0.000306 inception 0.000306 subsidence 0.000306 attackers 0.000306 waterways 0.000306 enlargement 0.000306 suede 0.000306 clips 0.000306 rendezvous 0.000306 pitfalls 0.000306 dormant 0.000305 crater 0.000305 denning 0.000305 stacks 0.000305 sarcasm 0.000305 opener 0.000305 dimly 0.000305 gaping 0.000305 captains 0.000305 allocating 0.000305 orwell 0.000305 blitz 0.000305 irregularities 0.000305 millie 0.000305 generality 0.000305 reunification 0.000305 alleging 0.000305 accreditation 0.000305 powerpc 0.000305 invoke 0.000305 flattering 0.000305 stead 0.000305 salads 0.000305 lithuanian 0.000305 configurations 0.000305 cambrian 0.000305 langbaurgh 0.000305 porridge 0.000305 exasperated 0.000305 jogging 0.000305 naples 0.000305 densities 0.000305 exporter 0.000305 cultivate 0.000305 striding 0.000305 plank 0.000305 hysteria 0.000305 mi 0.000305 whore 0.000305 kashmir 0.000305 statesman 0.000305 garrett 0.000305 passports 0.000304 elaboration 0.000304 spurred 0.000304 tandem 0.000304 blended 0.000304 dashing 0.000304 strachan 0.000304 solvents 0.000304 assimilation 0.000304 thinkers 0.000304 scandals 0.000304 splashing 0.000304 gypsies 0.000304 gliding 0.000304 groundwater 0.000304 ibrahim 0.000304 thirsty 0.000304 bamboo 0.000304 motorcycle 0.000304 kazakhstan 0.000304 punitive 0.000304 activator 0.000304 adopts 0.000304 mclean 0.000304 bruising 0.000304 livelihood 0.000304 dogged 0.000304 crumbs 0.000304 bingham 0.000304 dwarfs 0.000304 micky 0.000304 hinder 0.000304 foreseen 0.000303 cheated 0.000303 jigsaw 0.000303 patriarchal 0.000303 peacekeeping 0.000303 barbed 0.000303 torquay 0.000303 regulator 0.000303 dobson 0.000303 humidity 0.000303 digestive 0.000303 antislavery 0.000303 adrenalin 0.000303 stump 0.000303 gilded 0.000303 missionaries 0.000303 ethernet 0.000303 spruce 0.000303 unita 0.000303 tags 0.000303 nicked 0.000303 physicists 0.000303 sharpness 0.000303 stench 0.000303 necklace 0.000303 malaria 0.000303 clothed 0.000303 flimsy 0.000303 entrepreneur 0.000303 bravery 0.000303 fibrosis 0.000303 cpu 0.000303 ached 0.000303 outpatient 0.000303 islanders 0.000303 thumbs 0.000303 frs 0.000303 hodge 0.000303 sadler 0.000303 verdun 0.000303 habitual 0.000303 sandals 0.000302 coordinating 0.000302 fiduciary 0.000302 yearning 0.000302 skye 0.000302 brotherhood 0.000302 spikes 0.000302 glistening 0.000302 inseparable 0.000302 adjudication 0.000302 randomised 0.000302 reckoning 0.000302 angled 0.000302 kurds 0.000302 punctuation 0.000302 kidneys 0.000302 abnormality 0.000302 seaman 0.000302 worsening 0.000302 nip 0.000302 untrue 0.000302 durkheim 0.000302 mowbray 0.000302 arafat 0.000302 unhealthy 0.000302 badgers 0.000302 volcanoes 0.000302 ration 0.000302 wasteful 0.000302 seoul 0.000302 dalton 0.000301 plum 0.000301 crackdown 0.000301 overcame 0.000301 knox 0.000301 gully 0.000301 watchdog 0.000301 croats 0.000301 cones 0.000301 spacing 0.000301 pennies 0.000301 wares 0.000301 divergence 0.000301 professors 0.000301 emphatic 0.000301 lima 0.000301 packaged 0.000301 contributor 0.000301 spirited 0.000301 peeling 0.000301 buzzing 0.000301 mammal 0.000301 undone 0.000301 dyke 0.000301 prized 0.000301 replication 0.000301 insignia 0.000301 retina 0.000301 tamil 0.000301 composure 0.000301 dj 0.000301 overshadowed 0.000301 industrialised 0.000301 eta 0.000301 intermediaries 0.000301 audited 0.000301 holt 0.000301 stifled 0.000301 oblige 0.000301 outfits 0.000300 pushes 0.000300 cove 0.000300 caption 0.000300 commencing 0.000300 emphatically 0.000300 marred 0.000300 collects 0.000300 retaliation 0.000300 lance 0.000300 gore 0.000300 decrees 0.000300 wallis 0.000300 bradshaw 0.000300 affidavit 0.000300 throats 0.000300 foregoing 0.000300 catchment 0.000300 hound 0.000300 connolly 0.000300 poly 0.000300 hurst 0.000300 viewpoints 0.000300 inventor 0.000300 beetles 0.000300 moat 0.000299 nausea 0.000299 distortions 0.000299 distort 0.000299 tncs 0.000299 dss 0.000299 connie 0.000299 occurrences 0.000299 braque 0.000299 binds 0.000299 tue 0.000299 irishman 0.000299 negotiators 0.000299 tyranny 0.000299 commend 0.000299 orientated 0.000299 quaker 0.000299 attentions 0.000299 backside 0.000299 liturgy 0.000299 macho 0.000299 singularity 0.000299 stereotype 0.000299 planner 0.000299 chapels 0.000299 transmitter 0.000299 reaffirmed 0.000299 irritably 0.000299 strung 0.000299 kidnapping 0.000299 dictator 0.000299 emmie 0.000299 retreating 0.000299 bakery 0.000299 slung 0.000299 dreamt 0.000299 teamed 0.000298 glitter 0.000298 flavours 0.000298 momentous 0.000298 clustered 0.000298 vest 0.000298 grape 0.000298 sylvie 0.000298 whereupon 0.000298 abusive 0.000298 justin 0.000298 briefed 0.000298 richie 0.000298 hesitant 0.000298 patriotism 0.000298 alaska 0.000298 heterogeneous 0.000298 bins 0.000298 tracked 0.000298 rite 0.000298 sanitary 0.000298 nasal 0.000298 equivalence 0.000298 howell 0.000298 translations 0.000298 misrepresentation 0.000298 irons 0.000298 msc 0.000298 separates 0.000298 buddhist 0.000298 fashioned 0.000298 juices 0.000298 hath 0.000298 summerchild 0.000297 sanctioned 0.000297 shepherds 0.000297 procurement 0.000297 cyclic 0.000297 laing 0.000297 bottled 0.000297 earthly 0.000297 grandad 0.000297 norris 0.000297 prescribe 0.000297 grate 0.000297 granules 0.000297 mocked 0.000297 skeletal 0.000297 garbage 0.000297 irrigation 0.000297 hoomey 0.000297 sacking 0.000297 commuters 0.000297 lyric 0.000297 prowess 0.000297 sixpence 0.000297 filth 0.000297 specifies 0.000297 verified 0.000296 rightful 0.000296 toughest 0.000296 rationalisation 0.000296 kidding 0.000296 acceptability 0.000296 transfusion 0.000296 shire 0.000296 holman 0.000296 lj 0.000296 laird 0.000296 rhine 0.000296 repressive 0.000296 reliably 0.000296 hiss 0.000296 detectable 0.000296 grimma 0.000296 ju 0.000296 senna 0.000296 manufactures 0.000296 oily 0.000296 burgundy 0.000296 cad 0.000296 phd 0.000296 laps 0.000296 uncertainly 0.000296 jarvis 0.000296 seizing 0.000296 attaching 0.000296 ancestral 0.000296 alyssia 0.000296 dept 0.000296 nasa 0.000296 strictures 0.000296 motorist 0.000295 cirencester 0.000295 tyson 0.000295 clayton 0.000295 rudolf 0.000295 nationalised 0.000295 hutchinson 0.000295 farnham 0.000295 corollary 0.000295 clarence 0.000295 pathologist 0.000295 moth 0.000295 warily 0.000295 fungi 0.000295 correspondents 0.000295 grampian 0.000295 affiliated 0.000295 advises 0.000295 rushes 0.000295 stools 0.000295 knob 0.000295 histamine 0.000295 antarctica 0.000295 giggle 0.000295 carts 0.000295 watchful 0.000295 unwillingness 0.000295 capturing 0.000295 scant 0.000295 britannia 0.000295 danes 0.000295 orbits 0.000295 contradict 0.000295 ebb 0.000295 splits 0.000295 throttle 0.000295 ambivalent 0.000295 smug 0.000295 cathedrals 0.000295 dissimilar 0.000295 semi 0.000295 harp 0.000295 legislators 0.000294 rein 0.000294 falcon 0.000294 emu 0.000294 circling 0.000294 fervour 0.000294 gunman 0.000294 khrushchev 0.000294 josie 0.000294 pulp 0.000294 publicised 0.000294 hartley 0.000294 cobbled 0.000294 wilcox 0.000294 chesterfield 0.000294 famed 0.000294 exhibiting 0.000294 shakes 0.000294 goldsmiths 0.000294 vagina 0.000294 conservationists 0.000294 condoms 0.000294 downright 0.000294 plagued 0.000294 stefan 0.000294 donegal 0.000294 ontological 0.000294 excretion 0.000294 tunic 0.000294 slamming 0.000294 bowe 0.000294 relapse 0.000294 flaws 0.000294 helmets 0.000294 foreigner 0.000294 adequacy 0.000294 withholding 0.000294 harrow 0.000294 enrolment 0.000294 acidity 0.000294 ecu 0.000294 expedient 0.000294 comforts 0.000294 repository 0.000294 regulators 0.000294 dew 0.000294 cartel 0.000294 mortgagee 0.000294 stephens 0.000294 weston 0.000294 egyptians 0.000293 assertions 0.000293 interdisciplinary 0.000293 cynicism 0.000293 blackened 0.000293 abound 0.000293 atkins 0.000293 measurable 0.000293 signified 0.000293 cents 0.000293 lothar 0.000293 spanning 0.000293 mussolini 0.000293 schema 0.000293 pirate 0.000293 militants 0.000293 lachlan 0.000293 stabbing 0.000293 neutrons 0.000293 fragrant 0.000293 adorned 0.000293 humiliated 0.000293 vga 0.000293 lids 0.000293 dalglish 0.000293 dissertation 0.000293 luther 0.000291 primal 0.000291 punjab 0.000291 martyr 0.000291 sublime 0.000291 goldberg 0.000291 vowels 0.000291 bloomsbury 0.000291 ra 0.000291 annabel 0.000291 mop 0.000291 disapproved 0.000291 albans 0.000291 dismayed 0.000291 hooded 0.000291 winked 0.000291 cricketer 0.000291 averted 0.000291 ludens 0.000291 pineapple 0.000291 resolutely 0.000291 blacksmith 0.000291 inwardly 0.000291 finnish 0.000291 lms 0.000291 gaol 0.000291 prematurely 0.000291 bustling 0.000291 carolina 0.000291 anonymity 0.000291 addicted 0.000291 chiswick 0.000291 smelly 0.000291 aide 0.000291 prejudiced 0.000290 eds 0.000290 brutally 0.000290 battled 0.000290 woolf 0.000290 strawberries 0.000290 injecting 0.000290 enigmatic 0.000290 contended 0.000290 elland 0.000290 allotment 0.000290 decaying 0.000290 frankish 0.000290 recognizable 0.000290 bereaved 0.000290 insiders 0.000290 birthplace 0.000290 vicky 0.000290 devils 0.000290 bash 0.000290 shortened 0.000290 nostalgic 0.000290 whispers 0.000290 neurotic 0.000290 shady 0.000290 skyline 0.000290 prospectus 0.000290 corals 0.000290 perceptive 0.000289 cloudy 0.000289 footballers 0.000289 bets 0.000289 bedtime 0.000289 portrayal 0.000289 numb 0.000289 mats 0.000289 arbitrator 0.000289 anomalous 0.000289 planks 0.000289 mercia 0.000289 tehran 0.000289 circled 0.000289 ordination 0.000289 pram 0.000289 whitlock 0.000289 trafficking 0.000289 invoices 0.000289 schofield 0.000289 secluded 0.000289 basingstoke 0.000289 koi 0.000289 disposing 0.000289 nationalisation 0.000289 mead 0.000289 illicit 0.000289 scenic 0.000289 stepfather 0.000289 whips 0.000289 humming 0.000289 denote 0.000289 golding 0.000289 invade 0.000289 scarred 0.000289 calcutta 0.000289 lashed 0.000289 hitachi 0.000289 ix 0.000289 stigma 0.000289 clergyman 0.000289 badges 0.000289 grimsby 0.000289 asquith 0.000289 vases 0.000289 experimentally 0.000289 poignant 0.000289 propagation 0.000288 fats 0.000288 courtship 0.000288 amenity 0.000288 pickering 0.000288 savagely 0.000288 israelis 0.000288 converse 0.000288 shattering 0.000288 devastation 0.000288 snapping 0.000288 dilute 0.000288 irreversible 0.000288 defied 0.000288 simulated 0.000288 piecemeal 0.000288 worsened 0.000288 fella 0.000288 gearbox 0.000288 flake 0.000288 counteract 0.000288 cprw 0.000288 vile 0.000288 nova 0.000288 sabotage 0.000288 declarations 0.000288 shuffle 0.000288 dependants 0.000288 idly 0.000288 flamboyant 0.000288 deserving 0.000288 adept 0.000288 sportsmen 0.000288 curtailed 0.000288 pulpit 0.000288 discursive 0.000288 macroeconomic 0.000288 zuwaya 0.000288 chores 0.000288 afflicted 0.000288 elisabeth 0.000288 chandler 0.000288 physicist 0.000287 ambush 0.000287 curricular 0.000287 helm 0.000287 bundles 0.000287 whitaker 0.000287 aitken 0.000287 manville 0.000287 multiplicity 0.000287 legitimately 0.000287 outcry 0.000287 foresee 0.000287 blanc 0.000287 consented 0.000287 migrant 0.000287 undisturbed 0.000287 papacy 0.000287 sneak 0.000287 noteworthy 0.000287 starve 0.000287 spurious 0.000287 gallop 0.000287 eastbourne 0.000287 affiliations 0.000287 conveys 0.000287 frustrations 0.000287 apathy 0.000287 operas 0.000287 atlanta 0.000287 harassed 0.000287 matisse 0.000287 loom 0.000287 haunting 0.000287 corrosion 0.000287 purposeful 0.000286 bulge 0.000286 udf 0.000286 dreary 0.000286 conversions 0.000286 strewn 0.000286 flaming 0.000286 whig 0.000286 flicking 0.000286 enactment 0.000286 assessors 0.000286 coopers 0.000286 surged 0.000286 null 0.000286 hatton 0.000286 ethic 0.000286 clarissa 0.000286 dispensed 0.000286 daphne 0.000286 dues 0.000286 bolster 0.000286 guilds 0.000286 multiplier 0.000286 moderation 0.000286 empathy 0.000286 salzburg 0.000286 generalization 0.000286 haphazard 0.000286 encoding 0.000285 framing 0.000285 elongated 0.000285 distributions 0.000285 saturation 0.000285 reap 0.000285 sermons 0.000285 alkali 0.000285 premiership 0.000285 mischievous 0.000285 reconstruct 0.000285 sonny 0.000285 conceivably 0.000285 disproportionate 0.000285 rottweiler 0.000285 pore 0.000285 idiosyncratic 0.000285 clouded 0.000285 hack 0.000285 wilton 0.000285 besieged 0.000285 pawn 0.000285 nolan 0.000285 reprocessing 0.000285 unreasonably 0.000285 bridging 0.000285 ornament 0.000285 clockwise 0.000285 dickinson 0.000284 landmarks 0.000284 veiled 0.000284 lurched 0.000284 fundamentalist 0.000284 compartments 0.000284 dorothea 0.000284 vascular 0.000284 slash 0.000284 enforceable 0.000284 populist 0.000284 reputable 0.000284 trinidad 0.000284 beetle 0.000284 volley 0.000284 souvenir 0.000284 quakers 0.000284 unkind 0.000284 indignant 0.000284 furnishing 0.000284 gravy 0.000284 pleasurable 0.000284 deadlock 0.000284 shareholding 0.000284 perm 0.000284 relentlessly 0.000284 scaled 0.000284 flipped 0.000284 triumphantly 0.000284 gaily 0.000284 frankenstein 0.000284 assortment 0.000284 strategically 0.000283 astronomical 0.000283 consonant 0.000283 planetary 0.000283 itn 0.000283 cords 0.000283 impacts 0.000283 pompous 0.000283 midsummer 0.000283 characterise 0.000283 leyland 0.000283 tradesmen 0.000283 conquer 0.000283 summarise 0.000283 desolate 0.000283 rockets 0.000283 bleach 0.000283 ir 0.000283 escalating 0.000283 courteous 0.000283 schmidt 0.000283 darkly 0.000283 keating 0.000283 patel 0.000283 preoccupations 0.000283 cleverly 0.000283 buttocks 0.000283 infarction 0.000283 psychoanalytic 0.000283 idiom 0.000283 determinant 0.000283 intolerance 0.000283 postponement 0.000283 glacial 0.000283 sensibility 0.000283 expands 0.000283 independents 0.000283 faltered 0.000283 transporting 0.000283 undertaker 0.000283 vaginal 0.000283 winced 0.000282 camouflage 0.000282 inefficiency 0.000282 peptides 0.000282 complemented 0.000282 vanessa 0.000282 aggrieved 0.000282 deacon 0.000282 immersed 0.000282 oesophagitis 0.000282 distraught 0.000282 yew 0.000282 roused 0.000282 duvet 0.000282 tremble 0.000282 beset 0.000282 contentment 0.000282 perks 0.000282 fairer 0.000282 headland 0.000282 puzzles 0.000282 authorisation 0.000282 enterprising 0.000282 evade 0.000282 wounding 0.000282 abortions 0.000282 fuselage 0.000282 abberley 0.000282 reside 0.000282 nigerian 0.000282 debit 0.000282 craftsman 0.000282 lipid 0.000282 rallied 0.000282 bosom 0.000281 teesdale 0.000281 brood 0.000281 furthest 0.000281 incorrectly 0.000281 surf 0.000281 napier 0.000281 attractiveness 0.000281 chemotherapy 0.000281 aberystwyth 0.000281 barns 0.000281 phantom 0.000281 invading 0.000281 ditches 0.000281 czechoslovak 0.000281 emphasizes 0.000281 spokesmen 0.000281 cricketers 0.000281 immortal 0.000281 inject 0.000281 discern 0.000281 onward 0.000281 poppy 0.000281 enhances 0.000281 instalment 0.000281 runaway 0.000281 muddle 0.000281 antagonism 0.000281 companionship 0.000281 lunatic 0.000281 denominations 0.000281 sprawled 0.000281 desirability 0.000281 discrepancies 0.000281 daly 0.000280 maine 0.000280 exhilarating 0.000280 cohesive 0.000280 hmi 0.000280 eddy 0.000280 urinary 0.000280 shrill 0.000280 lymphocytes 0.000280 equities 0.000280 skeletons 0.000280 evaporated 0.000280 foodstuffs 0.000280 porsche 0.000280 hennessy 0.000280 crete 0.000280 sem 0.000280 acclaim 0.000280 duct 0.000280 cistern 0.000280 unexplained 0.000280 anarchy 0.000280 agm 0.000280 greenland 0.000280 generalised 0.000280 ncc 0.000280 functionality 0.000280 apr 0.000280 cascade 0.000280 inter 0.000280 pathogenesis 0.000280 hurdles 0.000280 storeys 0.000280 feb 0.000280 fiddling 0.000279 denise 0.000279 nether 0.000279 tyler 0.000279 marianne 0.000279 flotation 0.000279 golfing 0.000279 barbados 0.000279 accrued 0.000279 abbott 0.000279 lame 0.000279 rembrandt 0.000279 silhouette 0.000279 progresses 0.000279 noisily 0.000279 antigens 0.000279 jessie 0.000279 deficient 0.000279 dorian 0.000279 facilitating 0.000279 mixtures 0.000279 joys 0.000279 hugging 0.000279 northwards 0.000279 commercials 0.000279 pencils 0.000279 paramilitary 0.000279 glastonbury 0.000279 wrenched 0.000279 rudimentary 0.000279 broadened 0.000279 elective 0.000279 bans 0.000279 cinemas 0.000279 gail 0.000279 rourke 0.000279 grieving 0.000279 earnestly 0.000279 skelton 0.000279 scrubbed 0.000279 connotations 0.000278 homely 0.000278 bsl 0.000278 dissenting 0.000278 chi 0.000278 incontinence 0.000278 jamieson 0.000278 buff 0.000278 dine 0.000278 resentful 0.000278 tartan 0.000278 clearest 0.000278 backlash 0.000278 mechanically 0.000278 thump 0.000278 validated 0.000278 pickups 0.000278 commune 0.000278 catalytic 0.000278 baggy 0.000278 superimposed 0.000278 sanity 0.000278 audition 0.000278 incremental 0.000278 fi 0.000278 easton 0.000278 revolutions 0.000278 pnp 0.000278 consignment 0.000278 mink 0.000278 linger 0.000278 timeless 0.000278 softness 0.000278 novelists 0.000278 shingle 0.000278 walesa 0.000278 charms 0.000278 tuppe 0.000278 medicinal 0.000278 hydraulic 0.000278 robbers 0.000278 paradoxical 0.000278 laity 0.000278 ecuador 0.000278 emulation 0.000278 ignition 0.000278 unidentified 0.000277 insults 0.000277 newark 0.000277 highness 0.000277 wolverton 0.000277 labours 0.000277 exiles 0.000277 premiere 0.000277 translating 0.000277 lifeless 0.000277 headmistress 0.000277 mom 0.000277 ar 0.000277 restraining 0.000277 parochial 0.000277 hedgehog 0.000277 willi 0.000277 bewildering 0.000277 backup 0.000277 intercity 0.000277 sequel 0.000277 apes 0.000277 knocks 0.000277 fraudulent 0.000277 inspecting 0.000277 formulating 0.000277 royals 0.000277 syphilis 0.000277 fumbled 0.000277 stafford 0.000277 comet 0.000277 pol 0.000277 thence 0.000277 horizontally 0.000277 makeshift 0.000276 flatter 0.000276 verity 0.000276 filtering 0.000276 emanating 0.000276 judaism 0.000276 intrigue 0.000276 beaumont 0.000276 navigator 0.000276 nomadic 0.000276 buddy 0.000276 resorted 0.000276 explorer 0.000276 discriminatory 0.000276 downturn 0.000276 brentford 0.000276 carroll 0.000276 chang 0.000276 anchored 0.000276 gallant 0.000276 breweries 0.000276 squarely 0.000276 plugged 0.000276 vladimir 0.000276 calmed 0.000276 countrymen 0.000276 magician 0.000276 rspb 0.000276 cray 0.000276 markham 0.000276 topical 0.000276 mentor 0.000276 gunners 0.000276 torrent 0.000275 choke 0.000275 jacqui 0.000275 specialisation 0.000275 ethiopian 0.000275 wickham 0.000275 gland 0.000275 affiliation 0.000275 damascus 0.000275 bookseller 0.000275 abdul 0.000275 nominate 0.000275 serviced 0.000275 propelled 0.000275 subtlety 0.000275 switchboard 0.000275 shrub 0.000275 eyeing 0.000275 teapot 0.000275 beckett 0.000275 arterial 0.000275 panicked 0.000275 compiling 0.000275 evils 0.000275 commemorate 0.000275 familial 0.000275 compiler 0.000275 overtly 0.000275 melodic 0.000275 compliments 0.000275 beckoned 0.000275 facade 0.000275 dilution 0.000275 reverence 0.000275 lighted 0.000275 stinging 0.000275 silvery 0.000274 constabulary 0.000274 tease 0.000274 airy 0.000274 moths 0.000274 jehan 0.000274 uh 0.000274 accomplish 0.000274 raged 0.000274 spelled 0.000274 hangover 0.000274 idol 0.000274 implements 0.000274 hooligans 0.000274 thorfinn 0.000274 legality 0.000274 oasis 0.000274 hereby 0.000274 equate 0.000274 nipples 0.000274 batsmen 0.000274 boxed 0.000274 persona 0.000274 standstill 0.000274 yogurt 0.000274 condensed 0.000274 omissions 0.000274 vitally 0.000274 ghostly 0.000274 textures 0.000274 haulage 0.000274 granddaughter 0.000274 hale 0.000274 brightest 0.000274 chub 0.000274 ailing 0.000274 zoom 0.000274 loosened 0.000274 directs 0.000274 tipping 0.000274 helsinki 0.000274 heralded 0.000274 celebrities 0.000274 engulfed 0.000273 chaplin 0.000273 nez 0.000273 skimmed 0.000273 realms 0.000273 pacing 0.000273 fascists 0.000273 miraculously 0.000273 kingfisher 0.000273 resurgence 0.000273 bromley 0.000273 inconceivable 0.000273 intelligentsia 0.000273 vocation 0.000273 dogma 0.000273 ridicule 0.000273 arbitrage 0.000273 gems 0.000273 slaughtered 0.000273 reel 0.000273 hushed 0.000273 caledonian 0.000273 jock 0.000273 embraces 0.000273 innocently 0.000273 polyester 0.000273 della 0.000273 spaghetti 0.000273 intentional 0.000273 inflamed 0.000273 crocodile 0.000273 mute 0.000273 bundesbank 0.000273 dem 0.000273 nam 0.000273 aesthetics 0.000273 pondered 0.000273 rampant 0.000273 morphology 0.000271 wasp 0.000271 haynes 0.000271 luis 0.000271 weighting 0.000271 hilarious 0.000271 atlas 0.000271 ambassadors 0.000271 contiguous 0.000271 odours 0.000271 collusion 0.000271 picket 0.000271 gears 0.000271 neath 0.000271 woolly 0.000271 upsurge 0.000271 fused 0.000271 elemental 0.000271 evasion 0.000271 glc 0.000271 lockerbie 0.000271 squashed 0.000271 derrida 0.000271 tubular 0.000271 equated 0.000271 crystalline 0.000271 physiotherapist 0.000271 inexplicable 0.000271 emerald 0.000271 triangles 0.000271 footpaths 0.000271 subordination 0.000271 plasminogen 0.000271 aunty 0.000271 cruelly 0.000271 houghton 0.000271 curricula 0.000271 giggling 0.000271 materialism 0.000271 pastor 0.000271 clumps 0.000271 wardens 0.000270 loyalists 0.000270 disperse 0.000270 gogh 0.000270 molten 0.000270 impeccable 0.000270 faintest 0.000270 kabul 0.000270 indie 0.000270 shuffling 0.000270 poking 0.000270 indulgence 0.000270 stalks 0.000270 tossing 0.000270 invaders 0.000270 jacqueline 0.000270 thefts 0.000270 researches 0.000270 revolving 0.000270 polyps 0.000270 juniper 0.000270 waiters 0.000270 mrna 0.000270 bun 0.000270 keepers 0.000270 lobster 0.000270 siren 0.000270 randy 0.000270 finalised 0.000270 oblivion 0.000270 periodicals 0.000270 bede 0.000270 lunar 0.000269 commandos 0.000269 triumphs 0.000269 renders 0.000269 forthwith 0.000269 sunrise 0.000269 flex 0.000269 prognosis 0.000269 eradication 0.000269 softening 0.000269 bcci 0.000269 shelters 0.000269 verify 0.000269 coincides 0.000269 moslems 0.000269 microcomputers 0.000269 justifying 0.000269 snp 0.000269 risking 0.000269 busily 0.000269 etched 0.000269 obtains 0.000269 thrashing 0.000269 homosexuals 0.000269 holistic 0.000269 hissing 0.000269 anthropologist 0.000269 delegations 0.000269 rousseau 0.000269 lessen 0.000269 omally 0.000269 symposium 0.000269 assorted 0.000269 embody 0.000269 infrequent 0.000269 flaw 0.000269 seasoning 0.000269 inaugurated 0.000269 paraffin 0.000269 shipbuilding 0.000269 schoolmaster 0.000269 syrup 0.000268 fridays 0.000268 raincoat 0.000268 attentive 0.000268 amstrad 0.000268 lorraine 0.000268 structuring 0.000268 auto 0.000268 fireman 0.000268 unequivocal 0.000268 turbine 0.000268 fanny 0.000268 uncover 0.000268 readable 0.000268 shildon 0.000268 motorways 0.000268 helena 0.000268 stooped 0.000268 scaffolding 0.000268 samantha 0.000268 inhabit 0.000268 drafts 0.000268 ecstatic 0.000268 klaus 0.000268 armenian 0.000268 qb 0.000268 compromises 0.000268 constantinople 0.000268 congenital 0.000268 latch 0.000268 delia 0.000268 sylvester 0.000268 lan 0.000268 redwood 0.000268 chained 0.000268 scooped 0.000268 flagship 0.000268 exemplary 0.000268 chipping 0.000268 millwall 0.000268 ds 0.000268 hampton 0.000268 tabled 0.000268 coals 0.000268 punctuated 0.000268 moulding 0.000268 waterhouse 0.000268 midweek 0.000268 earners 0.000268 cropped 0.000268 hamlets 0.000268 dialled 0.000268 argentine 0.000267 transistor 0.000267 imitate 0.000267 canyon 0.000267 intrinsically 0.000267 inquired 0.000267 wakes 0.000267 ousted 0.000267 turtle 0.000267 extracting 0.000267 localised 0.000267 coma 0.000267 persistently 0.000267 enchanted 0.000267 sided 0.000267 jurassic 0.000267 coatings 0.000267 sect 0.000267 puppets 0.000267 ripple 0.000267 kremlin 0.000267 bustle 0.000267 randall 0.000267 deteriorate 0.000267 defeating 0.000267 commuter 0.000267 salesmen 0.000267 croft 0.000267 neon 0.000267 porn 0.000267 convict 0.000267 templeton 0.000267 sluggish 0.000267 containment 0.000267 jobless 0.000267 grabs 0.000267 licking 0.000267 spokesperson 0.000267 venom 0.000267 dialects 0.000267 outings 0.000267 washes 0.000267 fluttered 0.000267 selkirk 0.000267 separatist 0.000267 wilder 0.000267 wholemeal 0.000267 obtainable 0.000266 elise 0.000266 satisfies 0.000266 anecdotes 0.000266 outdated 0.000266 ferns 0.000266 thistle 0.000266 commonsense 0.000266 harrods 0.000266 sewn 0.000266 horsemen 0.000266 seth 0.000266 condom 0.000266 dicey 0.000266 densely 0.000266 ruskin 0.000266 underwood 0.000266 leila 0.000266 decentralization 0.000266 encoded 0.000266 suites 0.000266 programmers 0.000266 healthcare 0.000266 eradicate 0.000266 accords 0.000266 styled 0.000266 unisys 0.000266 heaviest 0.000266 evokes 0.000266 pledges 0.000266 detainees 0.000266 lantern 0.000266 coined 0.000266 succumbed 0.000266 enlisted 0.000266 punching 0.000266 jezrael 0.000266 bearer 0.000266 feeder 0.000266 offside 0.000266 capping 0.000266 tanner 0.000266 chrissy 0.000265 gardiner 0.000265 entropy 0.000265 nairobi 0.000265 springing 0.000265 russon 0.000265 caste 0.000265 quartz 0.000265 manually 0.000265 spence 0.000265 coped 0.000265 waistcoat 0.000265 ay 0.000265 silky 0.000265 utilitarian 0.000265 bridle 0.000265 sherman 0.000265 heaters 0.000265 absurdity 0.000265 occupancy 0.000265 subset 0.000265 refining 0.000265 hypnosis 0.000265 rowland 0.000265 buxton 0.000265 idyllic 0.000265 microscopic 0.000265 detergent 0.000265 assemblages 0.000265 ivor 0.000265 glynn 0.000265 traitor 0.000265 casserole 0.000265 descendant 0.000265 parchment 0.000265 reunited 0.000265 blackboard 0.000265 swine 0.000265 fling 0.000265 multiplication 0.000265 bandage 0.000265 secretive 0.000265 abortive 0.000265 crumble 0.000265 fearsome 0.000265 replying 0.000265 radicalism 0.000265 billing 0.000265 cellars 0.000265 prost 0.000265 ferranti 0.000265 tibet 0.000265 realises 0.000265 hewitt 0.000264 unhelpful 0.000264 prosper 0.000264 provoking 0.000264 heathcliff 0.000264 dwellers 0.000264 advisor 0.000264 warp 0.000264 parson 0.000264 roberto 0.000264 weathered 0.000264 patented 0.000264 likeness 0.000264 deterrence 0.000264 horace 0.000264 rhodesia 0.000264 tapestry 0.000264 bordering 0.000264 headway 0.000264 euphoria 0.000264 episcopal 0.000264 twos 0.000264 scorton 0.000264 fer 0.000264 fir 0.000264 pas 0.000264 recoverable 0.000264 blankly 0.000264 underclass 0.000264 somerville 0.000264 mckenzie 0.000264 lough 0.000264 parapet 0.000264 pronouns 0.000264 sleeps 0.000263 ucta 0.000263 simmer 0.000263 secs 0.000263 elm 0.000263 ardent 0.000263 lark 0.000263 miscellaneous 0.000263 criminology 0.000263 olives 0.000263 discard 0.000263 sigma 0.000263 dichotomy 0.000263 interfered 0.000263 sympathies 0.000263 im 0.000263 foal 0.000263 flavoured 0.000263 constituting 0.000263 merchandise 0.000263 lakeside 0.000263 elegantly 0.000263 reinforcements 0.000263 arteries 0.000263 drizzle 0.000263 doubting 0.000263 fondant 0.000263 clicking 0.000263 assaulting 0.000263 intimidating 0.000263 kitten 0.000263 phonetic 0.000263 teas 0.000263 measles 0.000263 constants 0.000263 admirably 0.000263 culinary 0.000263 inventions 0.000263 allergic 0.000263 crossly 0.000263 cocked 0.000263 hearty 0.000262 farrell 0.000262 pinpoint 0.000262 ensued 0.000262 additives 0.000262 curate 0.000262 disdain 0.000262 perce 0.000262 educators 0.000262 fared 0.000262 malone 0.000262 guideline 0.000262 serpent 0.000262 adobe 0.000262 hasan 0.000262 compassionate 0.000262 admirers 0.000262 carve 0.000262 renting 0.000262 dce 0.000262 whim 0.000262 positivist 0.000262 mimic 0.000262 heartbeat 0.000262 newry 0.000262 cheryl 0.000262 tenuous 0.000262 hamish 0.000262 congregations 0.000262 bicester 0.000262 friedman 0.000262 needy 0.000262 kilometre 0.000262 locker 0.000262 bathsheba 0.000262 din 0.000262 pembroke 0.000262 amalgamation 0.000262 analytic 0.000262 fmln 0.000262 worldly 0.000262 deceive 0.000262 briton 0.000262 correcting 0.000262 tabloids 0.000262 exaggerate 0.000262 snails 0.000262 spotting 0.000262 fiasco 0.000261 magnesium 0.000261 rep 0.000261 sarella 0.000261 ballets 0.000261 vologsky 0.000261 oldfield 0.000261 elicit 0.000261 moroccan 0.000261 dodge 0.000261 classifications 0.000261 concealing 0.000261 whistled 0.000261 sb 0.000261 arduous 0.000261 vantage 0.000261 disconcerting 0.000261 grandiose 0.000261 attends 0.000261 griffith 0.000261 marilyn 0.000261 loughborough 0.000261 enquiring 0.000261 muddled 0.000261 cartoons 0.000261 wessex 0.000261 indexed 0.000261 slums 0.000261 emperors 0.000261 ethnicity 0.000261 dishonesty 0.000261 numbering 0.000261 knotted 0.000261 inserting 0.000261 vaults 0.000261 aggregation 0.000261 anomaly 0.000261 deng 0.000261 guaranteeing 0.000261 disregarded 0.000261 popularly 0.000261 millennium 0.000261 piling 0.000261 apostles 0.000261 specials 0.000261 fsa 0.000260 eruptions 0.000260 wittgenstein 0.000260 mcc 0.000260 ryedale 0.000260 recollections 0.000260 kidnap 0.000260 equip 0.000260 larkin 0.000260 outnumbered 0.000260 stricter 0.000260 matrices 0.000260 radioactivity 0.000260 strauss 0.000260 childbearing 0.000260 intrusive 0.000260 bewilderment 0.000260 novices 0.000260 combo 0.000260 redeemed 0.000260 mindless 0.000260 spears 0.000260 hatfield 0.000260 parasitic 0.000260 benefiting 0.000260 committal 0.000260 parable 0.000260 superstar 0.000260 poke 0.000260 canary 0.000260 swelled 0.000260 fundraising 0.000260 segmentation 0.000260 knitters 0.000260 embryonic 0.000260 rambling 0.000260 spectre 0.000260 jerk 0.000260 wes 0.000260 intercepted 0.000260 malvern 0.000260 whitney 0.000260 astute 0.000260 beleaguered 0.000260 indulged 0.000260 mabel 0.000260 tasting 0.000260 cosmetics 0.000260 canons 0.000259 tact 0.000259 sobbed 0.000259 tits 0.000259 assembling 0.000259 nailed 0.000259 shedding 0.000259 latitude 0.000259 harden 0.000259 hotly 0.000259 adversary 0.000259 neutron 0.000259 eastwards 0.000259 deterred 0.000259 inflexible 0.000259 shameful 0.000259 curfew 0.000259 bumping 0.000259 publishes 0.000259 postulated 0.000259 canvases 0.000259 quantify 0.000259 reprieve 0.000259 hillsborough 0.000259 trendy 0.000259 mounds 0.000259 minster 0.000259 matey 0.000259 formalities 0.000259 antibiotic 0.000259 compose 0.000259 lyon 0.000259 antics 0.000259 creations 0.000259 johns 0.000259 battersea 0.000259 halliday 0.000259 connects 0.000259 rehearsed 0.000259 tinned 0.000259 hauling 0.000259 psyche 0.000259 clatter 0.000259 bribe 0.000259 bevan 0.000259 murky 0.000258 gorman 0.000258 danube 0.000258 lewes 0.000258 grosvenor 0.000258 remembrance 0.000258 hating 0.000258 paddock 0.000258 jus 0.000258 adorno 0.000258 electronically 0.000258 beggars 0.000258 yawned 0.000258 outweigh 0.000258 galley 0.000258 whence 0.000258 reinstated 0.000258 aeroplanes 0.000258 enrichment 0.000258 shawl 0.000258 emerson 0.000258 climates 0.000258 uproar 0.000258 sprawling 0.000258 panelled 0.000258 marius 0.000258 piety 0.000258 lyn 0.000258 billingham 0.000258 ruffled 0.000258 contravention 0.000258 vicki 0.000258 admirer 0.000258 compulsive 0.000258 lymphoma 0.000258 rabbi 0.000258 orleans 0.000258 aubrey 0.000258 compile 0.000258 beattie 0.000258 anita 0.000258 selects 0.000258 undercover 0.000258 afloat 0.000258 politeness 0.000258 alcoholism 0.000258 purge 0.000258 indulging 0.000257 reefs 0.000257 highbury 0.000257 bestowed 0.000257 crouching 0.000257 showroom 0.000257 northumbria 0.000257 punishments 0.000257 grams 0.000257 mavis 0.000257 presupposes 0.000257 graffiti 0.000257 cessation 0.000257 emphasizing 0.000257 conserved 0.000257 deliberations 0.000257 carmen 0.000257 aziz 0.000257 dominion 0.000257 sullen 0.000257 untreated 0.000257 boardroom 0.000257 francesca 0.000257 siberian 0.000257 crate 0.000257 buckle 0.000257 crates 0.000257 fountains 0.000257 xerox 0.000257 martyn 0.000257 scruffy 0.000257 entertainments 0.000257 awaits 0.000257 milking 0.000257 tar 0.000257 ambivalence 0.000257 fluffy 0.000257 destroys 0.000257 radiant 0.000257 precursor 0.000257 uniqueness 0.000257 saliva 0.000257 liberia 0.000257 sill 0.000256 manila 0.000256 schellenberg 0.000256 admissible 0.000256 scrambling 0.000256 peaked 0.000256 flaubert 0.000256 gritted 0.000256 riba 0.000256 overalls 0.000256 geologists 0.000256 gough 0.000256 rainy 0.000256 prawns 0.000256 utd 0.000256 onerous 0.000256 ripon 0.000256 originate 0.000256 ultra 0.000256 householders 0.000256 farmed 0.000256 graphically 0.000256 otley 0.000256 reopened 0.000256 colossal 0.000256 improvised 0.000256 putative 0.000256 hedgerows 0.000256 wayward 0.000256 ware 0.000256 longman 0.000256 baptized 0.000256 bonded 0.000256 kiev 0.000256 submarines 0.000256 nominally 0.000256 teamwork 0.000256 headteacher 0.000256 shevardnadze 0.000256 assimilated 0.000256 arresting 0.000256 minibus 0.000256 burying 0.000256 amis 0.000256 crippling 0.000255 loosen 0.000255 sheridan 0.000255 beggar 0.000255 forcefully 0.000255 cystic 0.000255 usher 0.000255 blending 0.000255 atrocities 0.000255 sonata 0.000255 leningrad 0.000255 motivate 0.000255 saxons 0.000255 gee 0.000255 spawning 0.000255 extremists 0.000255 impedance 0.000255 blinding 0.000255 excel 0.000255 andre 0.000255 mosquito 0.000255 agatha 0.000255 annoy 0.000255 vickers 0.000255 calais 0.000255 rucksack 0.000255 sequencing 0.000255 unsettled 0.000255 ohio 0.000255 enlarge 0.000255 insurer 0.000255 anti 0.000255 parishioners 0.000255 unforeseen 0.000255 gdr 0.000255 lousy 0.000255 divinity 0.000255 fullest 0.000255 greenwood 0.000255 goody 0.000254 jekyll 0.000254 gulped 0.000254 kath 0.000254 sahara 0.000254 chunky 0.000254 lapsed 0.000254 myocardial 0.000254 proofs 0.000254 spartan 0.000254 unanswered 0.000254 rethink 0.000254 cosmos 0.000254 kites 0.000254 parole 0.000254 daniels 0.000254 multiplying 0.000254 quaint 0.000254 traverse 0.000254 budding 0.000254 diversified 0.000254 sedgefield 0.000254 rapist 0.000254 firmer 0.000254 barclay 0.000254 rustic 0.000254 onus 0.000254 affirmative 0.000254 inhibitory 0.000254 decks 0.000254 dresden 0.000254 taping 0.000254 phyllis 0.000254 pointers 0.000254 parenthood 0.000254 blazed 0.000254 ccg 0.000254 aptly 0.000254 spreadsheets 0.000254 facsimile 0.000254 witnessing 0.000254 underlines 0.000254 sock 0.000253 modulus 0.000253 contraceptive 0.000253 ely 0.000253 socialization 0.000253 lifestyles 0.000253 stiffness 0.000253 prudential 0.000253 barbarians 0.000253 characterisation 0.000253 remorse 0.000253 overdrive 0.000253 almonds 0.000253 grazed 0.000253 monarchs 0.000253 vow 0.000253 helplessness 0.000253 seductive 0.000253 suicidal 0.000253 hive 0.000253 transatlantic 0.000253 inhibitors 0.000253 witney 0.000253 patronising 0.000253 chopping 0.000253 fixation 0.000253 unscrupulous 0.000253 felled 0.000253 counters 0.000253 rohan 0.000253 ascending 0.000253 heyday 0.000253 cutbacks 0.000253 hoarse 0.000253 coldness 0.000253 transplantation 0.000253 camcorder 0.000253 gedanken 0.000253 filename 0.000253 concorde 0.000253 waged 0.000253 espionage 0.000253 courting 0.000253 dazed 0.000253 astronomers 0.000253 myeloski 0.000253 integer 0.000253 boo 0.000251 antiquities 0.000251 tentacles 0.000251 notional 0.000251 eyesight 0.000251 artefact 0.000251 peacetime 0.000251 slotted 0.000251 oligonucleotide 0.000251 meyer 0.000251 upturn 0.000251 superfluous 0.000251 threes 0.000251 biochemistry 0.000251 multinationals 0.000251 extant 0.000251 informs 0.000251 fullness 0.000251 gatherings 0.000251 fanciful 0.000251 wycombe 0.000251 bavaria 0.000251 md 0.000251 hegel 0.000251 fluttering 0.000251 leavers 0.000251 jinny 0.000251 mythical 0.000251 clarinet 0.000251 unhappily 0.000251 baroness 0.000251 necessities 0.000251 foetus 0.000251 thaw 0.000251 automobile 0.000251 denim 0.000251 expo 0.000251 leopard 0.000251 versatility 0.000251 negatively 0.000251 uv 0.000251 acquires 0.000251 cosmo 0.000251 differentials 0.000251 ladders 0.000251 mistakenly 0.000250 twitched 0.000250 goodies 0.000250 reclaimed 0.000250 tiresome 0.000250 footwear 0.000250 alternately 0.000250 neill 0.000250 selectively 0.000250 aunts 0.000250 uppermost 0.000250 spying 0.000250 malaysian 0.000250 qpr 0.000250 wetlands 0.000250 paterson 0.000250 turnbull 0.000250 callers 0.000250 ceausescu 0.000250 tundra 0.000250 torches 0.000250 silenced 0.000250 hobbes 0.000250 arizona 0.000250 lowly 0.000250 worshipped 0.000250 nocturnal 0.000250 vomit 0.000250 crudely 0.000250 shopkeeper 0.000250 disproportionately 0.000250 indebted 0.000250 ernie 0.000250 sardonic 0.000250 thinker 0.000250 flynn 0.000250 justifies 0.000250 hazy 0.000250 horrid 0.000250 interspersed 0.000250 northwest 0.000250 werner 0.000250 sponsoring 0.000249 behaves 0.000249 sketched 0.000249 rounding 0.000249 reeves 0.000249 triggers 0.000249 antoinette 0.000249 nightly 0.000249 bazaar 0.000249 outlay 0.000249 throng 0.000249 acorn 0.000249 prolong 0.000249 vandals 0.000249 efta 0.000249 accompanies 0.000249 perkins 0.000249 motivations 0.000249 sparta 0.000249 kant 0.000249 gilts 0.000249 naomi 0.000249 kirkby 0.000249 fraternity 0.000249 exploding 0.000249 hogg 0.000249 beige 0.000249 herbal 0.000249 faber 0.000249 workable 0.000249 expenditures 0.000249 primer 0.000249 adaptable 0.000249 squirrel 0.000249 kerb 0.000249 peptic 0.000249 unwell 0.000249 vaccination 0.000249 orbital 0.000249 deutsche 0.000249 balfour 0.000248 northeast 0.000248 scathing 0.000248 uncanny 0.000248 pulmonary 0.000248 stemming 0.000248 sparcstation 0.000248 alphabetical 0.000248 maids 0.000248 hearer 0.000248 regrettable 0.000248 lemonade 0.000248 bribery 0.000248 mohammad 0.000248 puppies 0.000248 rigorously 0.000248 patterning 0.000248 thatched 0.000248 educating 0.000248 fundholding 0.000248 laboured 0.000248 rotate 0.000248 marmalade 0.000248 jacobite 0.000248 aloof 0.000248 sob 0.000248 oxides 0.000248 lawton 0.000248 thinning 0.000248 cairns 0.000248 ballymena 0.000248 cotswold 0.000248 jurisdictions 0.000248 shines 0.000248 entirety 0.000248 statistic 0.000248 infrequently 0.000248 interpreters 0.000248 braced 0.000248 maximize 0.000248 broadening 0.000248 gramophone 0.000248 mervyn 0.000248 rationally 0.000248 oyster 0.000247 bracken 0.000247 ritchie 0.000247 swallows 0.000247 rebellious 0.000247 islay 0.000247 sharks 0.000247 mayhew 0.000247 meteorological 0.000247 ramblers 0.000247 spills 0.000247 caddie 0.000247 rations 0.000247 appreciable 0.000247 traction 0.000247 enraged 0.000247 rt 0.000247 superstition 0.000247 obscurity 0.000247 offa 0.000247 shaving 0.000247 effortlessly 0.000247 montrose 0.000247 tunisia 0.000247 skulls 0.000247 smuggled 0.000247 fag 0.000247 gipsy 0.000247 claude 0.000247 segregated 0.000247 maggot 0.000247 unfolding 0.000247 disordered 0.000247 soles 0.000247 occupant 0.000247 coils 0.000247 unleaded 0.000247 sunglasses 0.000247 corrective 0.000247 reminders 0.000247 cnd 0.000247 proponents 0.000247 spouses 0.000247 contemplative 0.000247 tenders 0.000247 mortuary 0.000247 regrettably 0.000246 orphans 0.000246 tivoli 0.000246 ruthlessly 0.000246 ripping 0.000246 murderous 0.000246 burgeoning 0.000246 bordered 0.000246 yell 0.000246 administrations 0.000246 hencke 0.000246 booklets 0.000246 cyclist 0.000246 clover 0.000246 prophets 0.000246 predictive 0.000246 intentionally 0.000246 inadequacies 0.000246 sickening 0.000246 staunch 0.000246 denotes 0.000246 damien 0.000246 tugging 0.000246 falsely 0.000246 pyrenees 0.000246 auditory 0.000246 humber 0.000246 alix 0.000246 lasers 0.000246 overtake 0.000246 conspicuously 0.000246 iceberg 0.000246 araminta 0.000246 pt 0.000246 rectify 0.000246 contras 0.000246 glacier 0.000246 logan 0.000246 beaming 0.000246 intelligible 0.000246 harwich 0.000246 leverage 0.000246 moi 0.000246 eubank 0.000246 mohamed 0.000246 correlate 0.000246 deduce 0.000246 butchers 0.000246 storming 0.000246 renovation 0.000246 cardiovascular 0.000246 executions 0.000245 frock 0.000245 tebbit 0.000245 theologians 0.000245 custodial 0.000245 telex 0.000245 isotope 0.000245 wailing 0.000245 diabetics 0.000245 arbitrarily 0.000245 devolved 0.000245 freer 0.000245 yates 0.000245 squatting 0.000245 reclaim 0.000245 formulations 0.000245 stunt 0.000245 functionalist 0.000245 withdrawals 0.000245 restart 0.000245 abrasive 0.000245 owing 0.000245 didcot 0.000245 instantaneous 0.000245 predetermined 0.000245 liberalization 0.000245 blink 0.000245 inventive 0.000245 erroneous 0.000245 wink 0.000245 reeling 0.000245 glittered 0.000245 straighten 0.000245 unorthodox 0.000245 mellow 0.000245 contemptuous 0.000245 inconclusive 0.000245 occult 0.000245 chariot 0.000244 casino 0.000244 slates 0.000244 jen 0.000244 deceptive 0.000244 spire 0.000244 divergent 0.000244 comics 0.000244 enid 0.000244 daffodils 0.000244 estranged 0.000244 supt 0.000244 shear 0.000244 prick 0.000244 scheduling 0.000244 xiv 0.000244 digs 0.000244 ned 0.000244 stallion 0.000244 collars 0.000244 attendants 0.000244 recess 0.000244 itinerary 0.000244 solidly 0.000244 algorithms 0.000244 crashes 0.000244 hoisted 0.000244 stalk 0.000244 smyth 0.000244 emigrated 0.000244 moulds 0.000244 maura 0.000244 eagerness 0.000244 newborn 0.000244 townships 0.000244 porters 0.000244 steamed 0.000243 conciliation 0.000243 donate 0.000243 footage 0.000243 philosophies 0.000243 listens 0.000243 demo 0.000243 chilean 0.000243 disbanded 0.000243 catfish 0.000243 reversion 0.000243 interplay 0.000243 nowt 0.000243 clump 0.000243 bray 0.000243 blames 0.000243 chops 0.000243 potted 0.000243 creaking 0.000243 shanghai 0.000243 fritz 0.000243 criticising 0.000243 gwynedd 0.000243 vitro 0.000243 mercantile 0.000243 injunctions 0.000243 coffins 0.000243 pear 0.000243 sunken 0.000243 enclave 0.000243 headphones 0.000243 bolsheviks 0.000243 revisions 0.000243 syllabuses 0.000243 hacking 0.000243 midi 0.000243 watered 0.000243 capt 0.000243 vehemently 0.000243 withhold 0.000243 gracefully 0.000243 zenith 0.000243 adjournment 0.000243 ashtray 0.000243 darkening 0.000243 sickly 0.000242 tait 0.000242 shimmering 0.000242 cherries 0.000242 yale 0.000242 approving 0.000242 sender 0.000242 asean 0.000242 fm 0.000242 secession 0.000242 clinch 0.000242 platoon 0.000242 mountaineering 0.000242 spitfire 0.000242 roofing 0.000242 unnamed 0.000242 shelling 0.000242 relieving 0.000242 macleod 0.000242 priesthood 0.000242 botany 0.000242 mounts 0.000242 ventricular 0.000242 doubtfully 0.000242 despairing 0.000242 depict 0.000242 intimidated 0.000242 therapists 0.000242 motivating 0.000242 torso 0.000242 apologetic 0.000242 hoffman 0.000242 jetty 0.000242 staffs 0.000242 sequent 0.000242 disarray 0.000242 mediate 0.000242 debentures 0.000242 amuse 0.000242 clubhouse 0.000242 undisclosed 0.000242 landfill 0.000242 playwright 0.000242 anatomical 0.000242 crabs 0.000242 tragically 0.000242 intersection 0.000242 sling 0.000242 haircut 0.000242 barefoot 0.000242 insulated 0.000242 cautioned 0.000242 discounting 0.000242 completes 0.000242 shrank 0.000242 illiterate 0.000242 inescapable 0.000241 utilise 0.000241 forearm 0.000241 toppled 0.000241 adaptor 0.000241 dyed 0.000241 flip 0.000241 cobra 0.000241 jefferson 0.000241 involuntarily 0.000241 watershed 0.000241 haunts 0.000241 inconsistencies 0.000241 bu 0.000241 pendulum 0.000241 boulevard 0.000241 animosity 0.000241 lucia 0.000241 abduction 0.000241 inconsistency 0.000241 slovakia 0.000241 flipping 0.000241 rife 0.000241 showdown 0.000241 hopping 0.000241 overtones 0.000241 referenced 0.000241 seasoned 0.000241 subversion 0.000241 tsb 0.000241 labyrinth 0.000241 versailles 0.000241 interrelated 0.000241 barthes 0.000241 octave 0.000241 salesperson 0.000241 roam 0.000241 plummer 0.000241 pou 0.000241 harbours 0.000241 expire 0.000241 claudel 0.000241 yorks 0.000241 wedged 0.000241 precipitate 0.000240 busiest 0.000240 outbreaks 0.000240 chuckle 0.000240 parisian 0.000240 characterize 0.000240 thugs 0.000240 soar 0.000240 thanking 0.000240 seduced 0.000240 sib 0.000240 bouts 0.000240 burgh 0.000240 sweeney 0.000240 wc 0.000240 sewers 0.000240 yawning 0.000240 vicarage 0.000240 lilies 0.000240 pretensions 0.000240 empires 0.000240 su 0.000240 hatched 0.000240 safari 0.000240 spilt 0.000240 sdp 0.000240 queensland 0.000240 finalists 0.000240 resilience 0.000240 selves 0.000240 unproductive 0.000240 fret 0.000240 lazily 0.000240 shrouded 0.000240 kaifu 0.000240 abdullah 0.000240 invertebrates 0.000240 hvk 0.000240 dumps 0.000239 dotty 0.000239 unfolded 0.000239 fleets 0.000239 festivities 0.000239 meningitis 0.000239 flowered 0.000239 sloane 0.000239 vocals 0.000239 monoclonal 0.000239 sweeps 0.000239 examiners 0.000239 exempted 0.000239 dieting 0.000239 chateau 0.000239 illogical 0.000239 starters 0.000239 aggregates 0.000239 stile 0.000239 sumptuous 0.000239 immersion 0.000239 interacting 0.000239 ada 0.000239 gingerly 0.000239 revolutionaries 0.000239 crowns 0.000239 hmso 0.000239 transcendent 0.000239 racecourse 0.000239 stint 0.000239 moored 0.000239 accommodating 0.000239 nursed 0.000239 rainforests 0.000239 glimpses 0.000239 distinguishable 0.000239 precipitation 0.000239 poker 0.000239 obscenity 0.000239 childless 0.000239 littlewoods 0.000239 specialities 0.000239 revolver 0.000239 mercer 0.000239 cambodian 0.000239 enigma 0.000239 fingernails 0.000239 lissa 0.000239 mucus 0.000239 hordes 0.000239 militancy 0.000239 earthquakes 0.000239 hick 0.000239 fruitless 0.000239 burger 0.000239 scientifically 0.000239 mandarin 0.000239 spirituality 0.000239 suitcases 0.000239 dal 0.000239 psalm 0.000239 nah 0.000238 discos 0.000238 illuminate 0.000238 sham 0.000238 wicker 0.000238 abstentions 0.000238 networked 0.000238 doorways 0.000238 pastime 0.000238 ancestry 0.000238 joyful 0.000238 hants 0.000238 closet 0.000238 rhino 0.000238 congo 0.000238 fis 0.000238 menopause 0.000238 happenings 0.000238 cubes 0.000238 tormented 0.000238 artisans 0.000238 strolling 0.000238 anglesey 0.000238 delinquent 0.000238 thatcherism 0.000238 nicknamed 0.000238 showered 0.000238 monotonous 0.000238 jockeys 0.000238 foley 0.000238 eminently 0.000238 shrimp 0.000238 pellet 0.000238 levers 0.000238 lisburn 0.000238 dieter 0.000238 duff 0.000238 prohibit 0.000238 slapping 0.000238 interrupting 0.000238 sealing 0.000238 stagnant 0.000238 flares 0.000238 raven 0.000238 ltp 0.000238 charisma 0.000238 mala 0.000238 ewes 0.000238 haiti 0.000238 pronoun 0.000238 smoky 0.000238 uncontrollable 0.000238 interviewers 0.000237 hooves 0.000237 clustering 0.000237 impotent 0.000237 wavelengths 0.000237 sonic 0.000237 terrier 0.000237 pointedly 0.000237 pivot 0.000237 valuables 0.000237 leys 0.000237 dwindling 0.000237 furnish 0.000237 mademoiselle 0.000237 bowing 0.000237 bassett 0.000237 berth 0.000237 chargeable 0.000237 concomitant 0.000237 metropolis 0.000237 hops 0.000237 harding 0.000237 treatise 0.000237 wandsworth 0.000237 enthalpy 0.000237 whisk 0.000237 investigates 0.000237 imprint 0.000237 pragmatism 0.000237 transverse 0.000237 clambered 0.000237 iago 0.000237 proclaiming 0.000237 sep 0.000236 numeric 0.000236 awarding 0.000236 woosnam 0.000236 aspire 0.000236 flemish 0.000236 glint 0.000236 kinase 0.000236 pigment 0.000236 sheen 0.000236 skis 0.000236 diver 0.000236 mongolia 0.000236 confessions 0.000236 allergy 0.000236 racks 0.000236 devalued 0.000236 resides 0.000236 conductors 0.000236 crags 0.000236 robbins 0.000236 senators 0.000236 upton 0.000236 selections 0.000236 smacked 0.000236 recreate 0.000236 ldcs 0.000236 igg 0.000236 complains 0.000236 respectful 0.000236 unleashed 0.000236 avert 0.000236 zebra 0.000236 meters 0.000236 lured 0.000236 commodore 0.000236 savers 0.000236 manic 0.000236 wye 0.000236 punches 0.000236 interlocking 0.000236 hangar 0.000236 distasteful 0.000236 retarded 0.000236 rhymes 0.000236 hicks 0.000236 sweaty 0.000236 nurtured 0.000236 approx 0.000235 stinking 0.000235 coli 0.000235 llanelli 0.000235 convoys 0.000235 illustrious 0.000235 lombard 0.000235 mountbatten 0.000235 panorama 0.000235 bicarbonate 0.000235 chemically 0.000235 frosty 0.000235 undertakes 0.000235 clientele 0.000235 spoils 0.000235 transmitting 0.000235 carelessly 0.000235 dung 0.000235 puffed 0.000235 uncles 0.000235 tor 0.000235 paws 0.000235 mystic 0.000235 mountainous 0.000235 ga 0.000235 mousse 0.000235 transcripts 0.000235 convection 0.000235 balliol 0.000235 dagenham 0.000235 infrared 0.000235 deposed 0.000235 topography 0.000235 parenting 0.000235 intensify 0.000235 nudged 0.000235 cunt 0.000235 dogmatic 0.000235 snag 0.000235 gram 0.000235 armchairs 0.000235 astra 0.000235 georges 0.000235 ascertained 0.000235 signatories 0.000235 parkin 0.000235 scenarios 0.000235 flaps 0.000235 compel 0.000235 tawny 0.000235 accumulator 0.000235 encompasses 0.000235 hastened 0.000234 massed 0.000234 relinquish 0.000234 underworld 0.000234 reconstituted 0.000234 cynthia 0.000234 kinetic 0.000234 observance 0.000234 badminton 0.000234 inextricably 0.000234 clinched 0.000234 plastered 0.000234 prudence 0.000234 aerobic 0.000234 cyclosporin 0.000234 landings 0.000234 snaps 0.000234 domes 0.000234 ejected 0.000234 tantrums 0.000234 hess 0.000234 speedily 0.000234 sol 0.000234 intercept 0.000234 pursed 0.000234 aah 0.000234 fleece 0.000234 souvenirs 0.000234 gec 0.000234 spite 0.000234 ticked 0.000234 accentuated 0.000234 audits 0.000234 reflectance 0.000234 liturgical 0.000234 dispel 0.000234 feargal 0.000234 accumulating 0.000234 assays 0.000234 lynda 0.000234 iq 0.000234 yeats 0.000234 falkirk 0.000234 appropriateness 0.000234 crux 0.000234 disobedience 0.000234 serene 0.000234 godwin 0.000234 quickest 0.000234 frivolous 0.000234 betraying 0.000234 stickers 0.000234 convex 0.000234 mauve 0.000234 precede 0.000234 driveway 0.000234 botswana 0.000233 lautro 0.000233 deploy 0.000233 unconnected 0.000233 macarthur 0.000233 probed 0.000233 disparity 0.000233 unborn 0.000233 yrs 0.000233 duel 0.000233 whipping 0.000233 claret 0.000233 unquestionably 0.000233 kathy 0.000233 superego 0.000233 affirmation 0.000233 recombinant 0.000233 materially 0.000233 laced 0.000233 tripartite 0.000233 nixdorf 0.000233 geographers 0.000233 chaucer 0.000233 reproducing 0.000233 shuddering 0.000233 dermot 0.000233 turquoise 0.000233 sauces 0.000233 nationalization 0.000233 spaniards 0.000233 timetables 0.000233 revulsion 0.000233 slough 0.000233 linkages 0.000233 proclaim 0.000233 settles 0.000233 glimmer 0.000233 sanders 0.000233 seedlings 0.000233 monaco 0.000233 colonialism 0.000233 gesner 0.000233 adrift 0.000233 translator 0.000233 cheerio 0.000233 gable 0.000233 deductions 0.000233 priceless 0.000233 shoal 0.000233 londoners 0.000233 pinnacle 0.000233 intergovernmental 0.000233 grievance 0.000231 rebate 0.000231 hove 0.000231 cu 0.000231 lizzy 0.000231 kernel 0.000231 treading 0.000231 twists 0.000231 vax 0.000231 exponent 0.000231 scary 0.000231 neighbourhoods 0.000231 reeve 0.000231 observatory 0.000231 bolshevik 0.000231 marquee 0.000231 collaborate 0.000231 inorganic 0.000231 puddings 0.000231 rochdale 0.000231 drifts 0.000231 unprepared 0.000231 liberalisation 0.000231 luxuries 0.000231 snowy 0.000231 fingerprints 0.000231 oblique 0.000231 zeinab 0.000231 stares 0.000231 naturalist 0.000231 circa 0.000231 despise 0.000231 structuralist 0.000231 steen 0.000231 euston 0.000231 vegas 0.000231 confiscated 0.000231 motherwell 0.000231 lib 0.000230 wailed 0.000230 rind 0.000230 disgruntled 0.000230 permissive 0.000230 clifton 0.000230 harwell 0.000230 labov 0.000230 insolvent 0.000230 inexorably 0.000230 captures 0.000230 glide 0.000230 nappies 0.000230 bo 0.000230 unbalanced 0.000230 spoiling 0.000230 flinched 0.000230 paddling 0.000230 marton 0.000230 knack 0.000230 mu 0.000230 aboriginal 0.000230 coca 0.000230 focussed 0.000230 chad 0.000230 originals 0.000230 expended 0.000230 psychiatry 0.000230 wren 0.000230 stanford 0.000230 qualifier 0.000230 elena 0.000230 fodder 0.000230 fetching 0.000230 grumbled 0.000230 andes 0.000230 ambiguities 0.000230 polluting 0.000230 choirs 0.000230 kane 0.000230 latterly 0.000230 headlong 0.000230 albumin 0.000230 millimetres 0.000230 algerian 0.000230 messrs 0.000230 wrongs 0.000230 infuriated 0.000230 subscribed 0.000230 britten 0.000230 interdependence 0.000230 devout 0.000230 brunt 0.000230 accessory 0.000230 brezhnev 0.000229 facet 0.000229 helpline 0.000229 pre 0.000229 pedro 0.000229 studded 0.000229 piggott 0.000229 keywords 0.000229 dempster 0.000229 excite 0.000229 bellowed 0.000229 discouraging 0.000229 pixel 0.000229 mcmahon 0.000229 algiers 0.000229 frenchmen 0.000229 pharmaceuticals 0.000229 agnew 0.000229 tenderly 0.000229 clint 0.000229 woodward 0.000229 frenzied 0.000229 translucent 0.000229 aides 0.000229 strident 0.000229 orlando 0.000229 capsule 0.000229 yoga 0.000229 heparin 0.000229 peanuts 0.000229 gentleness 0.000229 opium 0.000229 perfected 0.000229 hue 0.000229 toxins 0.000229 rea 0.000229 simplification 0.000229 thorns 0.000229 roche 0.000229 apprenticed 0.000229 java 0.000229 sacrament 0.000229 stronghold 0.000229 utah 0.000229 hobbs 0.000229 sprays 0.000229 jordanian 0.000229 awakening 0.000229 bleed 0.000228 bigwig 0.000228 insanity 0.000228 patently 0.000228 bowen 0.000228 patchwork 0.000228 phonemes 0.000228 mccready 0.000228 perished 0.000228 crossword 0.000228 optic 0.000228 rumble 0.000228 summing 0.000228 pregnancies 0.000228 siting 0.000228 suing 0.000228 rejoined 0.000228 bovine 0.000228 ovens 0.000228 indignantly 0.000228 arabian 0.000228 bruise 0.000228 mime 0.000228 denoted 0.000228 mourners 0.000228 bureaucracies 0.000228 isambard 0.000228 sinead 0.000228 neal 0.000228 boulder 0.000228 laos 0.000228 harem 0.000228 intractable 0.000228 marguerite 0.000228 recital 0.000228 toxin 0.000228 beatrix 0.000228 tropics 0.000228 heave 0.000228 pga 0.000228 pod 0.000228 thud 0.000228 mmm 0.000228 shrunk 0.000228 screwdriver 0.000228 cutters 0.000228 obesity 0.000228 humanist 0.000228 rentokil 0.000228 psalms 0.000228 bribes 0.000228 engendered 0.000228 tristan 0.000228 husky 0.000227 helium 0.000227 heresy 0.000227 inevitability 0.000227 rodrigo 0.000227 evaluations 0.000227 hoddle 0.000227 plumber 0.000227 michigan 0.000227 starred 0.000227 tibetan 0.000227 steroids 0.000227 hg 0.000227 asymmetry 0.000227 tiananmen 0.000227 protruding 0.000227 discriminating 0.000227 eviction 0.000227 henrietta 0.000227 leone 0.000227 wheelbarrow 0.000227 esoteric 0.000227 jotan 0.000227 pragmatics 0.000227 erstwhile 0.000227 skipped 0.000227 forgery 0.000227 doorbell 0.000227 santiago 0.000227 roderick 0.000227 eaton 0.000227 slimming 0.000227 alarmingly 0.000227 grenfell 0.000227 shareware 0.000227 depriving 0.000227 extinguished 0.000227 breaths 0.000227 foresters 0.000227 considerate 0.000227 misunderstandings 0.000227 yamaha 0.000227 homoeopathic 0.000227 limelight 0.000227 contestants 0.000226 sternly 0.000226 unchallenged 0.000226 footprints 0.000226 boyfriends 0.000226 wriggled 0.000226 simone 0.000226 resilient 0.000226 embarrass 0.000226 grooves 0.000226 trimming 0.000226 timescale 0.000226 spares 0.000226 protons 0.000226 apiece 0.000226 helix 0.000226 dalziel 0.000226 speechless 0.000226 hallmark 0.000226 matthey 0.000226 dukes 0.000226 tomlinson 0.000226 discredit 0.000226 canned 0.000226 merlin 0.000226 herman 0.000226 sewer 0.000226 waterman 0.000226 vigilance 0.000226 galloping 0.000226 flakes 0.000226 utopia 0.000226 sloppy 0.000226 luisa 0.000226 janata 0.000226 scarcity 0.000226 dea 0.000226 waterfront 0.000226 dostoevsky 0.000226 stubbornly 0.000226 confrontations 0.000226 livingston 0.000226 mistrust 0.000226 collateral 0.000226 receded 0.000226 provence 0.000226 sideboard 0.000226 twofold 0.000226 charing 0.000226 braithwaite 0.000225 shadowed 0.000225 deliberation 0.000225 arguable 0.000225 pilgrim 0.000225 pecking 0.000225 forging 0.000225 ape 0.000225 dispensing 0.000225 macro 0.000225 collapses 0.000225 briggs 0.000225 inscriptions 0.000225 clocked 0.000225 existential 0.000225 friendliness 0.000225 primates 0.000225 utopian 0.000225 milne 0.000225 sectional 0.000225 scroll 0.000225 panelling 0.000225 roh 0.000225 assemblage 0.000225 mia 0.000225 habitually 0.000225 modal 0.000225 loco 0.000225 lowell 0.000225 reputations 0.000225 vigil 0.000225 nape 0.000225 omar 0.000225 churning 0.000225 convocation 0.000225 beckenham 0.000225 gestation 0.000225 chucked 0.000225 moray 0.000225 bowels 0.000225 ultraviolet 0.000225 reviewer 0.000225 ringed 0.000225 jett 0.000225 deceit 0.000225 awakened 0.000225 incline 0.000225 lull 0.000225 cigars 0.000225 epilepsy 0.000225 distillers 0.000225 rigidity 0.000225 archway 0.000225 barrie 0.000225 stifling 0.000225 holden 0.000225 providence 0.000225 howarth 0.000225 nu 0.000225 permeability 0.000225 authorise 0.000224 proclamation 0.000224 flushing 0.000224 pristine 0.000224 gunn 0.000224 societal 0.000224 twitching 0.000224 quantified 0.000224 graphite 0.000224 verbally 0.000224 tackles 0.000224 bobbing 0.000224 leakage 0.000224 ingrid 0.000224 salaried 0.000224 theodore 0.000224 danielle 0.000224 sew 0.000224 bohemia 0.000224 adelaide 0.000224 paranoia 0.000224 conjecture 0.000224 ling 0.000224 stumps 0.000224 argentinian 0.000224 dusted 0.000224 forsyth 0.000224 orthopaedic 0.000224 retires 0.000224 applicability 0.000224 handel 0.000224 pep 0.000224 compton 0.000224 pretext 0.000224 peruvian 0.000224 trash 0.000224 fern 0.000224 unfounded 0.000224 addicts 0.000224 tremor 0.000224 lucid 0.000224 alexandria 0.000224 smouldering 0.000224 vanishing 0.000224 suzie 0.000224 provenance 0.000224 huskily 0.000224 undressed 0.000224 interruptions 0.000224 maman 0.000224 aldershot 0.000224 ghetto 0.000224 glyn 0.000224 thickened 0.000224 slain 0.000224 crouch 0.000224 compilers 0.000224 paced 0.000224 positivism 0.000224 dispositions 0.000223 churchmen 0.000223 appellants 0.000223 freshness 0.000223 lowlands 0.000223 rigour 0.000223 embodiment 0.000223 leafy 0.000223 baton 0.000223 entourage 0.000223 scents 0.000223 villains 0.000223 steamer 0.000223 aloft 0.000223 satanic 0.000223 beauties 0.000223 lizard 0.000223 antwerp 0.000223 unloaded 0.000223 vindicated 0.000223 streamlined 0.000223 organist 0.000223 balmoral 0.000223 gloomily 0.000223 penicillin 0.000223 reversible 0.000223 stink 0.000223 trotted 0.000223 genital 0.000223 slug 0.000223 sizewell 0.000223 justly 0.000223 telephoning 0.000223 threaded 0.000223 bros 0.000223 wastage 0.000223 humid 0.000223 blimey 0.000223 defer 0.000223 clout 0.000223 watchers 0.000223 stumble 0.000223 adherents 0.000223 caress 0.000223 omit 0.000223 leaped 0.000223 bullock 0.000223 preachers 0.000223 cinderella 0.000223 savour 0.000223 stalked 0.000223 cubs 0.000223 sludge 0.000223 op 0.000223 morland 0.000223 whirled 0.000223 ferocity 0.000223 whiff 0.000223 sociologist 0.000223 cucumber 0.000222 consigned 0.000222 comprehensible 0.000222 migrating 0.000222 truthful 0.000222 actuarial 0.000222 achievable 0.000222 slows 0.000222 barges 0.000222 semblance 0.000222 horseback 0.000222 inventing 0.000222 transparency 0.000222 logged 0.000222 marvel 0.000222 weakest 0.000222 huntingdon 0.000222 hancock 0.000222 abolishing 0.000222 homer 0.000222 johann 0.000222 purported 0.000222 hewlett 0.000222 tonal 0.000222 ida 0.000222 contradicted 0.000222 grounding 0.000222 natasha 0.000222 fend 0.000222 reproach 0.000222 commotion 0.000222 debatable 0.000222 astonishingly 0.000222 affections 0.000222 heinrich 0.000222 obedient 0.000222 accredited 0.000222 mobilization 0.000222 physiotherapy 0.000222 canberra 0.000222 forester 0.000222 unloading 0.000222 pronouncements 0.000222 iraqis 0.000222 tutorials 0.000222 defensively 0.000222 rutherford 0.000222 lithosphere 0.000222 draper 0.000222 painstaking 0.000222 hinge 0.000222 honduras 0.000222 slang 0.000222 ibn 0.000222 toothpaste 0.000222 coveted 0.000222 crossings 0.000222 absently 0.000221 buenos 0.000221 vigilant 0.000221 wilkins 0.000221 grimaced 0.000221 spinner 0.000221 thumped 0.000221 biographer 0.000221 seaweed 0.000221 cruises 0.000221 norma 0.000221 terracotta 0.000221 paralysis 0.000221 pickets 0.000221 ness 0.000221 embassies 0.000221 herts 0.000221 synonyms 0.000221 peng 0.000221 flanker 0.000221 apical 0.000221 strat 0.000221 blatantly 0.000221 magnates 0.000221 grudgingly 0.000221 standardized 0.000221 imperialist 0.000221 waterfalls 0.000221 achilles 0.000221 affluence 0.000221 mash 0.000221 girlfriends 0.000221 mixes 0.000221 elevator 0.000221 hansard 0.000221 upholstery 0.000221 deictic 0.000221 purification 0.000221 sprs 0.000221 pendant 0.000221 eurotunnel 0.000221 fabio 0.000221 localized 0.000221 radiotherapy 0.000221 hellenistic 0.000221 tit 0.000221 flannel 0.000221 kinder 0.000221 reappear 0.000221 lurch 0.000221 needham 0.000221 iranians 0.000220 macaulay 0.000220 reset 0.000220 stitched 0.000220 affectionately 0.000220 och 0.000220 tingling 0.000220 bertha 0.000220 intermittently 0.000220 orchid 0.000220 mammoth 0.000220 hooligan 0.000220 designate 0.000220 perpendicular 0.000220 gallup 0.000220 demolish 0.000220 shambles 0.000220 deformed 0.000220 georg 0.000220 buns 0.000220 camilla 0.000220 bowie 0.000220 workman 0.000220 cola 0.000220 maynard 0.000220 apologetically 0.000220 recapture 0.000220 creams 0.000220 sensor 0.000220 seminal 0.000220 pascal 0.000220 deformation 0.000220 sherlock 0.000220 expertly 0.000220 citadel 0.000220 indeterminate 0.000220 juveniles 0.000220 smeared 0.000220 restricts 0.000220 nitrates 0.000220 buttress 0.000220 proctor 0.000220 dp 0.000220 knossos 0.000220 breeches 0.000220 canoeing 0.000220 shaikh 0.000219 illusory 0.000219 hodgson 0.000219 diplock 0.000219 amicable 0.000219 eastwood 0.000219 corrections 0.000219 lr 0.000219 afresh 0.000219 acet 0.000219 conjured 0.000219 sept 0.000219 pepsinogen 0.000219 trance 0.000219 scowled 0.000219 biographies 0.000219 drummond 0.000219 amorphous 0.000219 mixer 0.000219 dm 0.000219 hammers 0.000219 penn 0.000219 guru 0.000219 bryce 0.000219 cores 0.000219 royce 0.000219 armoury 0.000219 gruelling 0.000219 trunchbull 0.000219 pierce 0.000219 unoccupied 0.000219 leagues 0.000219 experimented 0.000219 lilian 0.000219 greyhound 0.000219 masterpieces 0.000219 homoeopathy 0.000219 occupiers 0.000219 lettering 0.000219 garnish 0.000219 pitiful 0.000219 scribbled 0.000219 fenari 0.000219 flutter 0.000219 bullied 0.000219 comer 0.000219 distilled 0.000219 affective 0.000219 mite 0.000219 mega 0.000219 tremayne 0.000219 paler 0.000219 mutiny 0.000219 swoop 0.000219 flooring 0.000219 basketball 0.000219 undeniable 0.000219 burmese 0.000219 consul 0.000219 peregrine 0.000219 disillusionment 0.000219 converge 0.000219 vineyard 0.000219 epistemological 0.000219 tito 0.000219 treachery 0.000219 crp 0.000218 cadets 0.000218 drumming 0.000218 alzheimer 0.000218 blunder 0.000218 jonathon 0.000218 guildhall 0.000218 hasten 0.000218 resignations 0.000218 stevie 0.000218 unjustified 0.000218 cadfael 0.000218 coupons 0.000218 laurel 0.000218 trapping 0.000218 pied 0.000218 wally 0.000218 carver 0.000218 decentralisation 0.000218 flop 0.000218 nods 0.000218 duvall 0.000218 bon 0.000218 ve 0.000218 edmunds 0.000218 cinnamon 0.000218 detract 0.000218 titford 0.000218 ailments 0.000218 dons 0.000218 forwarded 0.000218 whiskies 0.000218 spinners 0.000218 tensor 0.000218 follower 0.000218 spawned 0.000218 iced 0.000218 goldman 0.000218 browse 0.000218 viennese 0.000218 spicy 0.000218 whelan 0.000218 detour 0.000218 binder 0.000218 consort 0.000218 streaked 0.000218 resounding 0.000218 sedimentation 0.000218 unheard 0.000218 yeo 0.000218 foresight 0.000218 whirling 0.000218 squatted 0.000218 imperatives 0.000218 rehearsing 0.000218 guillotine 0.000218 powys 0.000218 leonardo 0.000218 machin 0.000218 muir 0.000218 blackbird 0.000217 auctions 0.000217 alleyway 0.000217 consternation 0.000217 deported 0.000217 wistfully 0.000217 overboard 0.000217 auditorium 0.000217 conditioner 0.000217 milestone 0.000217 skating 0.000217 heaped 0.000217 tcr 0.000217 mth 0.000217 chrissie 0.000217 zach 0.000217 kirby 0.000217 mcgrath 0.000217 autocratic 0.000217 disclosures 0.000217 surety 0.000217 brendan 0.000217 undecided 0.000217 courtroom 0.000217 belatedly 0.000217 consents 0.000217 jeanne 0.000217 handwritten 0.000217 warranted 0.000217 unequivocally 0.000217 everett 0.000217 opposites 0.000217 prompts 0.000217 edible 0.000217 negotiator 0.000217 forefinger 0.000217 howl 0.000217 equator 0.000217 southwell 0.000217 ea 0.000217 defense 0.000217 lifeline 0.000217 rammed 0.000217 psychotic 0.000217 selfishness 0.000217 justifiably 0.000217 organizer 0.000217 stitching 0.000217 poisons 0.000217 thatcherite 0.000217 amps 0.000217 epa 0.000217 rotated 0.000217 capacitor 0.000217 plethora 0.000217 exalted 0.000217 overflowing 0.000217 mayonnaise 0.000216 carbohydrates 0.000216 nirvana 0.000216 spans 0.000216 connors 0.000216 anorak 0.000216 conjunction 0.000216 structurally 0.000216 tidying 0.000216 buddhism 0.000216 myra 0.000216 touche 0.000216 netted 0.000216 soc 0.000216 wilfrid 0.000216 merchiston 0.000216 blyth 0.000216 yarmouth 0.000216 suppressing 0.000216 exits 0.000216 mercifully 0.000216 twoflower 0.000216 depicts 0.000216 quashed 0.000216 vows 0.000216 coy 0.000216 venous 0.000216 meryl 0.000216 lfa 0.000216 mediaeval 0.000216 gulp 0.000216 likened 0.000216 inadequately 0.000216 fancies 0.000216 proportionately 0.000216 sonnet 0.000216 proton 0.000216 nominee 0.000216 rpm 0.000216 bismarck 0.000216 skipton 0.000216 seething 0.000216 unifying 0.000216 transformer 0.000216 stubble 0.000216 ribber 0.000216 strayed 0.000216 ariel 0.000216 nsf 0.000216 farnborough 0.000216 revd 0.000215 seattle 0.000215 hindered 0.000215 bumps 0.000215 digit 0.000215 shovel 0.000215 nightingale 0.000215 failings 0.000215 amelia 0.000215 hanover 0.000215 auctioneer 0.000215 suspense 0.000215 dada 0.000215 apostle 0.000215 battalions 0.000215 ethnographic 0.000215 sightseeing 0.000215 moratorium 0.000215 winged 0.000215 protagonists 0.000215 rejoin 0.000215 dissociation 0.000215 louvre 0.000215 behold 0.000215 hesitantly 0.000215 sarcastic 0.000215 satire 0.000215 esquire 0.000215 unsettling 0.000215 frazer 0.000215 hendrix 0.000215 sp 0.000215 surfing 0.000215 martyrs 0.000215 tearful 0.000215 stockbrokers 0.000215 cadet 0.000215 napoleonic 0.000215 teachings 0.000215 fleetwood 0.000215 scholarships 0.000215 impulsive 0.000215 chefs 0.000215 manhood 0.000215 protestors 0.000215 simulate 0.000215 bourdieu 0.000215 sighing 0.000215 ugh 0.000215 mcgregor 0.000215 maude 0.000215 ruddy 0.000215 discerning 0.000215 toshiba 0.000215 complicity 0.000215 swapped 0.000215 consequential 0.000215 sighs 0.000215 funchal 0.000215 inducing 0.000215 stockbroker 0.000215 utilisation 0.000215 vets 0.000215 wrongful 0.000215 cuffs 0.000215 grouse 0.000215 congregational 0.000214 legislate 0.000214 taiwanese 0.000214 spenser 0.000214 ems 0.000214 twitch 0.000214 polarization 0.000214 dries 0.000214 bibliographic 0.000214 playful 0.000214 boilers 0.000214 heck 0.000214 grunt 0.000214 seekers 0.000214 hernia 0.000214 cemeteries 0.000214 sleepless 0.000214 shrieked 0.000214 marcel 0.000214 tubs 0.000214 simulations 0.000214 gustave 0.000214 tyrone 0.000214 cindy 0.000214 paw 0.000214 grilled 0.000214 lecturing 0.000214 dialectic 0.000214 reggae 0.000214 ideologically 0.000214 clinicians 0.000214 boosting 0.000214 discriminated 0.000214 sodden 0.000214 powdered 0.000214 injure 0.000214 disorderly 0.000214 millar 0.000214 melon 0.000214 tableau 0.000214 receivership 0.000214 spectral 0.000214 setbacks 0.000214 lagoon 0.000214 addict 0.000214 springfield 0.000214 rac 0.000214 ballesteros 0.000214 thesaurus 0.000214 dai 0.000213 tycoon 0.000213 perestroika 0.000213 magdalen 0.000213 criticizing 0.000213 possessive 0.000213 saddened 0.000213 volkswagen 0.000213 wilful 0.000213 brooch 0.000213 biologically 0.000213 johnnie 0.000213 manifestly 0.000213 susceptibility 0.000213 empirically 0.000213 playhouse 0.000213 aoun 0.000213 chimpanzees 0.000213 marseille 0.000213 sen 0.000213 upturned 0.000213 occasioned 0.000213 pelvis 0.000213 weimar 0.000213 conglomerates 0.000213 sensuous 0.000213 sketching 0.000213 nordic 0.000213 reacts 0.000213 kettering 0.000213 prohibiting 0.000213 forlorn 0.000213 hawaiian 0.000213 answerable 0.000213 mineralisation 0.000213 moderator 0.000213 reviving 0.000213 laurie 0.000213 unarmed 0.000213 indiscriminate 0.000213 individualistic 0.000213 enfield 0.000213 eco 0.000213 peppers 0.000213 battering 0.000213 tidied 0.000211 sprouts 0.000211 rallying 0.000211 mubarak 0.000211 ultrasound 0.000211 anterior 0.000211 rarer 0.000211 encore 0.000211 hanley 0.000211 amply 0.000211 disconnected 0.000211 completeness 0.000211 presiding 0.000211 distinctiveness 0.000211 mutton 0.000211 intensification 0.000211 patrolling 0.000211 paraphrase 0.000211 spectacularly 0.000211 evidenced 0.000211 recur 0.000211 piggy 0.000211 gruesome 0.000211 cholangitis 0.000211 protectionism 0.000211 rifkind 0.000211 comma 0.000211 ranger 0.000211 precluded 0.000211 caterpillars 0.000211 airing 0.000211 hotline 0.000211 balkans 0.000211 hun 0.000211 elicited 0.000211 jumbo 0.000211 spires 0.000211 grainne 0.000211 creased 0.000211 footnote 0.000211 leasehold 0.000211 ev 0.000211 nonconformists 0.000211 irving 0.000211 underpin 0.000211 commits 0.000211 phnom 0.000211 bleached 0.000211 timer 0.000211 tennyson 0.000211 insulted 0.000211 lexandro 0.000211 waddington 0.000211 backlog 0.000211 logistics 0.000211 escalation 0.000211 vaulted 0.000211 yang 0.000211 egf 0.000211 fallacy 0.000211 graft 0.000211 barth 0.000210 stour 0.000210 lennon 0.000210 tankers 0.000210 skipping 0.000210 injuring 0.000210 playgroup 0.000210 juicy 0.000210 bologna 0.000210 contour 0.000210 primrose 0.000210 melodies 0.000210 babe 0.000210 anguished 0.000210 overrun 0.000210 sordid 0.000210 christened 0.000210 sculptors 0.000210 fray 0.000210 welshman 0.000210 champ 0.000210 unregistered 0.000210 billed 0.000210 durability 0.000210 unearthed 0.000210 tinged 0.000210 tilting 0.000210 marbles 0.000210 dungannon 0.000210 eugene 0.000210 accrue 0.000210 sportsman 0.000210 jerome 0.000210 refreshed 0.000210 hinged 0.000210 warships 0.000210 impossibly 0.000210 caustic 0.000210 jumpers 0.000210 snatching 0.000210 assassinated 0.000210 pradesh 0.000210 placid 0.000210 cretaceous 0.000210 inhibiting 0.000210 bentham 0.000210 intracellular 0.000210 piaget 0.000210 blushing 0.000210 derivation 0.000210 soprano 0.000210 buggy 0.000210 kentish 0.000210 dutifully 0.000209 diverting 0.000209 bidders 0.000209 ingres 0.000209 evocative 0.000209 reddish 0.000209 tardis 0.000209 hogan 0.000209 resale 0.000209 malnutrition 0.000209 tolerable 0.000209 advisors 0.000209 kidnappers 0.000209 corresponded 0.000209 subordinated 0.000209 composing 0.000209 annex 0.000209 curtly 0.000209 abiding 0.000209 massingham 0.000209 benchmark 0.000209 mcbride 0.000209 wholesome 0.000209 agonising 0.000209 raiding 0.000209 receding 0.000209 deafening 0.000209 rutland 0.000209 compensatory 0.000209 kew 0.000209 gales 0.000209 hooliganism 0.000209 overturn 0.000209 browsing 0.000209 bahamas 0.000209 blessings 0.000209 liberally 0.000209 exuberant 0.000209 divisive 0.000209 importer 0.000209 angie 0.000209 devore 0.000209 fives 0.000209 dartmoor 0.000209 infiltration 0.000209 cancelling 0.000209 mosquitoes 0.000209 betsy 0.000209 rewrite 0.000209 governs 0.000209 calendars 0.000209 relic 0.000209 porosity 0.000209 northumbrian 0.000209 dishwasher 0.000209 workmanship 0.000209 jog 0.000209 sneered 0.000209 lotion 0.000208 resection 0.000208 lizards 0.000208 tensed 0.000208 toddlers 0.000208 glover 0.000208 ley 0.000208 linford 0.000208 nikolai 0.000208 scandalous 0.000208 bessie 0.000208 callous 0.000208 kilos 0.000208 mufti 0.000208 contra 0.000208 gutted 0.000208 collor 0.000208 southgate 0.000208 importers 0.000208 collaborated 0.000208 falconer 0.000208 aversion 0.000208 flopped 0.000208 airbus 0.000208 nat 0.000208 amends 0.000208 welding 0.000208 restated 0.000208 palatine 0.000208 etiquette 0.000208 spinach 0.000208 presuppositions 0.000208 genome 0.000208 fermentation 0.000208 zeta 0.000208 daak 0.000208 dramas 0.000208 structuralism 0.000208 hurling 0.000208 geometrical 0.000208 siward 0.000208 cuff 0.000208 fateful 0.000208 mk 0.000208 whitechapel 0.000208 nap 0.000208 periodical 0.000208 repertory 0.000208 summarize 0.000208 reeds 0.000208 djibouti 0.000208 proust 0.000208 scrubbing 0.000208 backbenchers 0.000208 attaches 0.000208 git 0.000208 negatives 0.000208 falkland 0.000208 ibus-pinyin-1.5.0/data/db/english/Makefile.am0000664000175000017500000000236112010524050015660 00000000000000# vim:set noet ts=4: # # ibus-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. WORDLIST = wordlist ENGLISH_AWK = english.awk ENGLISH_DB = english.db english_db_DATA = \ $(ENGLISH_DB) \ $(NULL) english_dbdir = $(pkgdatadir)/db $(ENGLISH_DB): $(WORDLIST) $(ENGLISH_AWK) $(AM_V_GEN) \ $(RM) $@; \ $(AWK) -f $(srcdir)/$(ENGLISH_AWK) $(srcdir)/$(WORDLIST) | @SQLITE3@ $@ || \ ( $(RM) $@ ; exit 1 ) EXTRA_DIST = \ $(WORDLIST) \ $(ENGLISH_AWK) \ $(NULL) CLEANFILES = \ $(ENGLISH_DB) \ $(NULL) ibus-pinyin-1.5.0/data/db/Makefile.in0000664000175000017500000005047412063705663014273 00000000000000# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. VPATH = @srcdir@ am__make_dryrun = \ { \ am__dry=no; \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ *) \ for am__flg in $$MAKEFLAGS; do \ case $$am__flg in \ *=*|--*) ;; \ *n*) am__dry=yes; break;; \ esac; \ done;; \ esac; \ test $$am__dry = yes; \ } 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 = data/db DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/as-version.m4 \ $(top_srcdir)/m4/boost.m4 $(top_srcdir)/m4/intltool.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = 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_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-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 uninstall-recursive am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ distdir ETAGS = etags CTAGS = ctags DIST_SUBDIRS = english DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) 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" ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BOOST_CPPFLAGS = @BOOST_CPPFLAGS@ BOOST_ROOT = @BOOST_ROOT@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENV = @ENV@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ IBUS_CFLAGS = @IBUS_CFLAGS@ IBUS_LIBS = @IBUS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ LUA_CFLAGS = @LUA_CFLAGS@ LUA_LIBS = @LUA_LIBS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ 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@ PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@ PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@ PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@ PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@ PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PYTHON = @PYTHON@ PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ PYTHON_PLATFORM = @PYTHON_PLATFORM@ PYTHON_PREFIX = @PYTHON_PREFIX@ PYTHON_VERSION = @PYTHON_VERSION@ PYZY = @PYZY@ PYZY_CFLAGS = @PYZY_CFLAGS@ PYZY_LIBS = @PYZY_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SQLITE3 = @SQLITE3@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ 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@ 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@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ pkgpyexecdir = @pkgpyexecdir@ pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ 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@ @IBUS_BUILD_ENGLISH_INPUT_MODE_TRUE@ENGLISH_DIR = english SUBDIRS = \ $(ENGLISH_DIR) \ $(NULL) all: all-recursive .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 data/db/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu data/db/Makefile .PRECIOUS: 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__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ 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 # 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. $(RECURSIVE_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; 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" $(RECURSIVE_CLEAN_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) 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; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ 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 CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ 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" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(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 @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 check-am: all-am check: check-recursive all-am: Makefile installdirs: installdirs-recursive installdirs-am: 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: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || 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-recursive clean-am: clean-generic clean-libtool mostlyclean-am distclean: distclean-recursive -rm -f Makefile distclean-am: clean-am distclean-generic distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: 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 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: .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-generic clean-libtool \ ctags ctags-recursive distclean distclean-generic \ distclean-libtool distclean-tags 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 installdirs-am maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \ uninstall uninstall-am # 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: ibus-pinyin-1.5.0/data/db/Makefile.am0000664000175000017500000000163712010524050014234 00000000000000# vim:set noet ts=4: # # ibus-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. if IBUS_BUILD_ENGLISH_INPUT_MODE ENGLISH_DIR=english endif SUBDIRS = \ $(ENGLISH_DIR) \ $(NULL) ibus-pinyin-1.5.0/data/ibus-setup-bopomofo.desktop.in.in0000664000175000017500000000072212006506344020143 00000000000000[Desktop Entry] Name=IBus Bopomofo Preferences Name[zh_CN]=IBus 注音配置工具 Name[zh_TW]=IBus 注音配置工具 Name[zh_HK]=IBus 注音配置工具 Comment=Set ibus-Bopomofo Preferences Comment[zh_CN]=设置 IBus 注音首选项 Comment[zh_TW]=設定 IBus 注音個人偏好 Comment[zh_HK]=設定 IBus 注音個人偏好 Exec=@libexecdir@/ibus-setup-pinyin bopomofo Icon=@pkgdatadir@/icons/ibus-bopomofo.svg NoDisplay=true Type=Application StartupNotify=true ibus-pinyin-1.5.0/data/ibus-setup-pinyin.desktop.in.in0000664000175000017500000000067512006506344017640 00000000000000[Desktop Entry] Name=IBus Pinyin Setup Name[zh_CN]=IBus 拼音配置工具 Name[zh_TW]=IBus 拼音配置工具 Name[zh_HK]=IBus 拼音配置工具 Comment=Set ibus-pinyin Preferences Comment[zh_CN]=设置 IBus 拼音首选项 Comment[zh_TW]=設定 IBus 拼音個人偏好 Comment[zh_HK]=設定 IBus 拼音個人偏好 Exec=@libexecdir@/ibus-setup-pinyin Icon=@pkgdatadir@/icons/ibus-pinyin.svg NoDisplay=true Type=Application StartupNotify=true ibus-pinyin-1.5.0/data/Makefile.in0000664000175000017500000005611212063705663013701 00000000000000# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. VPATH = @srcdir@ am__make_dryrun = \ { \ am__dry=no; \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ *) \ for am__flg in $$MAKEFLAGS; do \ case $$am__flg in \ *=*|--*) ;; \ *n*) am__dry=yes; break;; \ esac; \ done;; \ esac; \ test $$am__dry = yes; \ } 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 = data DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/as-version.m4 \ $(top_srcdir)/m4/boost.m4 $(top_srcdir)/m4/intltool.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = 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_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-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 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 -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(desktopdir)" DATA = $(desktop_DATA) RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ distdir ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) 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" ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BOOST_CPPFLAGS = @BOOST_CPPFLAGS@ BOOST_ROOT = @BOOST_ROOT@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENV = @ENV@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ IBUS_CFLAGS = @IBUS_CFLAGS@ IBUS_LIBS = @IBUS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ LUA_CFLAGS = @LUA_CFLAGS@ LUA_LIBS = @LUA_LIBS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ 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@ PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@ PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@ PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@ PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@ PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PYTHON = @PYTHON@ PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ PYTHON_PLATFORM = @PYTHON_PLATFORM@ PYTHON_PREFIX = @PYTHON_PREFIX@ PYTHON_VERSION = @PYTHON_VERSION@ PYZY = @PYZY@ PYZY_CFLAGS = @PYZY_CFLAGS@ PYZY_LIBS = @PYZY_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SQLITE3 = @SQLITE3@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ 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@ 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@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ pkgpyexecdir = @pkgpyexecdir@ pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ 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@ SUBDIRS = \ db \ icons \ $(NULL) desktop_in_in_files = \ ibus-setup-bopomofo.desktop.in.in \ ibus-setup-pinyin.desktop.in.in \ $(NULL) desktop_in_files = $(desktop_in_in_files:.in.in=.in) desktop_files = $(desktop_in_files:.desktop.in=.desktop) desktopdir = $(datadir)/applications desktop_DATA = $(desktop_files) EXTRA_DIST = $(desktop_in_in_files) CLEANFILES = \ $(desktop_files) \ $(desktop_in_files) \ $(NULL) all: all-recursive .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 data/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu data/Makefile .PRECIOUS: 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__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ 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 install-desktopDATA: $(desktop_DATA) @$(NORMAL_INSTALL) @list='$(desktop_DATA)'; test -n "$(desktopdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(desktopdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(desktopdir)" || 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)$(desktopdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(desktopdir)" || exit $$?; \ done uninstall-desktopDATA: @$(NORMAL_UNINSTALL) @list='$(desktop_DATA)'; test -n "$(desktopdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(desktopdir)'; $(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. $(RECURSIVE_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; 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" $(RECURSIVE_CLEAN_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) 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; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ 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 CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ 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" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(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 @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 check-am: all-am check: check-recursive all-am: Makefile $(DATA) installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(desktopdir)"; 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: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || 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-recursive clean-am: clean-generic clean-libtool mostlyclean-am distclean: distclean-recursive -rm -f Makefile distclean-am: clean-am distclean-generic distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-desktopDATA 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 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-desktopDATA .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-generic clean-libtool \ ctags ctags-recursive distclean distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-desktopDATA 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 installdirs-am \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-recursive uninstall uninstall-am \ uninstall-desktopDATA $(desktop_in_files): %.desktop.in: %.desktop.in.in Makefile $(AM_V_GEN) sed \ -e "s|\@libexecdir\@|$(libexecdir)|" \ -e "s|\@pkgdatadir\@|$(pkgdatadir)|" \ $< > $@.tmp && mv $@.tmp $@ @INTLTOOL_DESKTOP_RULE@ # 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: ibus-pinyin-1.5.0/data/Makefile.am0000664000175000017500000000270212010524050013641 00000000000000# vim:set noet ts=4: # # ibus-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. SUBDIRS = \ db \ icons \ $(NULL) desktop_in_in_files = \ ibus-setup-bopomofo.desktop.in.in \ ibus-setup-pinyin.desktop.in.in \ $(NULL) desktop_in_files = $(desktop_in_in_files:.in.in=.in) $(desktop_in_files): %.desktop.in: %.desktop.in.in Makefile $(AM_V_GEN) sed \ -e "s|\@libexecdir\@|$(libexecdir)|" \ -e "s|\@pkgdatadir\@|$(pkgdatadir)|" \ $< > $@.tmp && mv $@.tmp $@ desktop_files = $(desktop_in_files:.desktop.in=.desktop) desktopdir = $(datadir)/applications desktop_DATA = $(desktop_files) EXTRA_DIST = $(desktop_in_in_files) @INTLTOOL_DESKTOP_RULE@ CLEANFILES = \ $(desktop_files) \ $(desktop_in_files) \ $(NULL) ibus-pinyin-1.5.0/data/icons/0000775000175000017500000000000012064356726013025 500000000000000ibus-pinyin-1.5.0/data/icons/half-punct.svg0000664000175000017500000002046011762161772015530 00000000000000 image/svg+xml ibus-pinyin-1.5.0/data/icons/chinese.svg0000664000175000017500000002045711762161772015113 00000000000000 image/svg+xml ibus-pinyin-1.5.0/data/icons/ibus-bopomofo.svg0000664000175000017500000002565311762161772016260 00000000000000 image/svg+xml ibus-pinyin-1.5.0/data/icons/half.svg0000664000175000017500000001036711762161772014406 00000000000000 image/svg+xml ibus-pinyin-1.5.0/data/icons/ibus-pinyin.svg0000664000175000017500000003134511762161772015741 00000000000000 image/svg+xml ibus-pinyin-1.5.0/data/icons/full.svg0000664000175000017500000001534511762161772014437 00000000000000 image/svg+xml ibus-pinyin-1.5.0/data/icons/full-punct.svg0000664000175000017500000002323511762161772015563 00000000000000 image/svg+xml ibus-pinyin-1.5.0/data/icons/Makefile.in0000664000175000017500000003726012063705663015017 00000000000000# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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 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 program; if not, write to the # Free Software Foundation, Inc., 59 Temple Place, Suite 330, # Boston, MA 02111-1307 USA VPATH = @srcdir@ am__make_dryrun = \ { \ am__dry=no; \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ *) \ for am__flg in $$MAKEFLAGS; do \ case $$am__flg in \ *=*|--*) ;; \ *n*) am__dry=yes; break;; \ esac; \ done;; \ esac; \ test $$am__dry = yes; \ } 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 = data/icons DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/as-version.m4 \ $(top_srcdir)/m4/boost.m4 $(top_srcdir)/m4/intltool.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = 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_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ 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__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 -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(iconsdir)" DATA = $(icons_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BOOST_CPPFLAGS = @BOOST_CPPFLAGS@ BOOST_ROOT = @BOOST_ROOT@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENV = @ENV@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ IBUS_CFLAGS = @IBUS_CFLAGS@ IBUS_LIBS = @IBUS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ LUA_CFLAGS = @LUA_CFLAGS@ LUA_LIBS = @LUA_LIBS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ 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@ PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@ PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@ PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@ PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@ PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PYTHON = @PYTHON@ PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ PYTHON_PLATFORM = @PYTHON_PLATFORM@ PYTHON_PREFIX = @PYTHON_PREFIX@ PYTHON_VERSION = @PYTHON_VERSION@ PYZY = @PYZY@ PYZY_CFLAGS = @PYZY_CFLAGS@ PYZY_LIBS = @PYZY_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SQLITE3 = @SQLITE3@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ 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@ 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@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ pkgpyexecdir = @pkgpyexecdir@ pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ 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@ icons_DATA = \ ibus-pinyin.svg \ ibus-bopomofo.svg \ chinese.svg \ english.svg \ full.svg \ full-punct.svg \ half.svg \ half-punct.svg \ simp-chinese.svg \ trad-chinese.svg \ $(NULL) iconsdir = $(pkgdatadir)/icons EXTRA_DIST = \ $(icons_DATA) \ $(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 data/icons/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu data/icons/Makefile .PRECIOUS: 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__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ 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 install-iconsDATA: $(icons_DATA) @$(NORMAL_INSTALL) @list='$(icons_DATA)'; test -n "$(iconsdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(iconsdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(iconsdir)" || 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)$(iconsdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(iconsdir)" || exit $$?; \ done uninstall-iconsDATA: @$(NORMAL_UNINSTALL) @list='$(icons_DATA)'; test -n "$(iconsdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(iconsdir)'; $(am__uninstall_files_from_dir) tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(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 $(DATA) installdirs: for dir in "$(DESTDIR)$(iconsdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done 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: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || 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-iconsDATA 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: uninstall-iconsDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic clean-libtool \ 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-iconsDATA 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 \ uninstall uninstall-am uninstall-iconsDATA # 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: ibus-pinyin-1.5.0/data/icons/trad-chinese.svg0000664000175000017500000003630011762161772016035 00000000000000 image/svg+xml ibus-pinyin-1.5.0/data/icons/Makefile.am0000664000175000017500000000215612010524050014757 00000000000000# vim:set noet ts=4: # # ibus-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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 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 program; if not, write to the # Free Software Foundation, Inc., 59 Temple Place, Suite 330, # Boston, MA 02111-1307 USA icons_DATA = \ ibus-pinyin.svg \ ibus-bopomofo.svg \ chinese.svg \ english.svg \ full.svg \ full-punct.svg \ half.svg \ half-punct.svg \ simp-chinese.svg \ trad-chinese.svg \ $(NULL) iconsdir = $(pkgdatadir)/icons EXTRA_DIST = \ $(icons_DATA) \ $(NULL) ibus-pinyin-1.5.0/data/icons/english.svg0000664000175000017500000002717311762161772015130 00000000000000 image/svg+xml ibus-pinyin-1.5.0/data/icons/simp-chinese.svg0000664000175000017500000003245111762161772016056 00000000000000 image/svg+xml ibus-pinyin-1.5.0/NEWS0000664000175000017500000000000011762161772011405 00000000000000ibus-pinyin-1.5.0/depcomp0000755000175000017500000005064312063702760012274 00000000000000#! /bin/sh # depcomp - compile a program generating dependencies as side-effects scriptversion=2012-03-27.16; # UTC # Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010, # 2011, 2012 Free Software Foundation, Inc. # 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. # Originally written by Alexandre Oliva . case $1 in '') echo "$0: No command. Try '$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: depcomp [--help] [--version] PROGRAM [ARGS] Run PROGRAMS ARGS to compile a file, generating dependencies as side-effects. Environment variables: depmode Dependency tracking mode. source Source file read by 'PROGRAMS ARGS'. object Object file output by 'PROGRAMS ARGS'. DEPDIR directory where to store dependencies. depfile Dependency file to output. tmpdepfile Temporary file to use when outputting dependencies. libtool Whether libtool is used (yes/no). Report bugs to . EOF exit $? ;; -v | --v*) echo "depcomp $scriptversion" exit $? ;; esac # A tabulation character. tab=' ' # A newline character. nl=' ' if test -z "$depmode" || test -z "$source" || test -z "$object"; then echo "depcomp: Variables source, object and depmode must be set" 1>&2 exit 1 fi # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. depfile=${depfile-`echo "$object" | sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} rm -f "$tmpdepfile" # Some modes work just like other modes, but use different flags. We # parameterize here, but still list the modes in the big case below, # to make depend.m4 easier to write. Note that we *cannot* use a case # here, because this file can only contain one case statement. if test "$depmode" = hp; then # HP compiler uses -M and no extra arg. gccflag=-M depmode=gcc fi if test "$depmode" = dashXmstdout; then # This is just like dashmstdout with a different argument. dashmflag=-xM depmode=dashmstdout fi cygpath_u="cygpath -u -f -" if test "$depmode" = msvcmsys; then # This is just like msvisualcpp but w/o cygpath translation. # Just convert the backslash-escaped backslashes to single forward # slashes to satisfy depend.m4 cygpath_u='sed s,\\\\,/,g' depmode=msvisualcpp fi if test "$depmode" = msvc7msys; then # This is just like msvc7 but w/o cygpath translation. # Just convert the backslash-escaped backslashes to single forward # slashes to satisfy depend.m4 cygpath_u='sed s,\\\\,/,g' depmode=msvc7 fi if test "$depmode" = xlc; then # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency informations. gccflag=-qmakedep=gcc,-MF depmode=gcc fi case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what ## we want. Yay! Note: for some reason libtool 1.4 doesn't like ## it if -MD -MP comes after the -MF stuff. Hmm. ## Unfortunately, FreeBSD c89 acceptance of flags depends upon ## the command line argument order; so add the flags where they ## appear in depend2.am. Note that the slowdown incurred here ## affects only configure: in makefiles, %FASTDEP% shortcuts this. for arg do case $arg in -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;; *) set fnord "$@" "$arg" ;; esac shift # fnord shift # $arg done "$@" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi mv "$tmpdepfile" "$depfile" ;; gcc) ## There are various ways to get dependency output from gcc. Here's ## why we pick this rather obscure method: ## - Don't want to use -MD because we'd like the dependencies to end ## up in a subdir. Having to rename by hand is ugly. ## (We might end up doing this anyway to support other compilers.) ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like ## -MM, not -M (despite what the docs say). ## - Using -M directly means running the compiler twice (even worse ## than renaming). if test -z "$gccflag"; then gccflag=-MD, fi "$@" -Wp,"$gccflag$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" echo "$object : \\" > "$depfile" alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ## The second -e expression handles DOS-style file names with drive letters. sed -e 's/^[^:]*: / /' \ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" ## This next piece of magic avoids the "deleted header file" problem. ## The problem is that when a header file which appears in a .P file ## is deleted, the dependency causes make to die (because there is ## typically no way to rebuild the header). We avoid this by adding ## dummy dependencies for each header file. Too bad gcc doesn't do ## this for us directly. tr ' ' "$nl" < "$tmpdepfile" | ## Some versions of gcc put a space before the ':'. On the theory ## that the space means something, we add a space to the output as ## well. hp depmode also adds that space, but also prefixes the VPATH ## to the object. Take care to not repeat it in the output. ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \ | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; hp) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; sgi) if test "$libtool" = yes; then "$@" "-Wp,-MDupdate,$tmpdepfile" else "$@" -MDupdate "$tmpdepfile" fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files echo "$object : \\" > "$depfile" # Clip off the initial element (the dependent). Don't try to be # clever and replace this with sed code, as IRIX sed won't handle # lines with more than a fixed number of characters (4096 in # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; # the IRIX cc adds comments like '#:fec' to the end of the # dependency line. tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ tr "$nl" ' ' >> "$depfile" echo >> "$depfile" # The second pass generates a dummy entry for each header file. tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile # "include basename.Plo" scheme. echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; xlc) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; aix) # The C for AIX Compiler uses -M and outputs the dependencies # in a .u file. In older versions, this file always lives in the # current directory. Also, the AIX compiler puts '$object:' at the # start of each line; $object doesn't have directory information. # Version 6 uses the directory in both cases. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` test "x$dir" = "x$object" && dir= base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` if test "$libtool" = yes; then tmpdepfile1=$dir$base.u tmpdepfile2=$base.u tmpdepfile3=$dir.libs/$base.u "$@" -Wc,-M else tmpdepfile1=$dir$base.u tmpdepfile2=$dir$base.u tmpdepfile3=$dir$base.u "$@" -M fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" do test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then # Each line is of the form 'foo.o: dependent.h'. # Do two passes, one to just change these to # '$object: dependent.h' and one to simply 'dependent.h:'. sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile # "include basename.Plo" scheme. echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; icc) # Intel's C compiler anf tcc (Tiny C Compiler) understand '-MD -MF file'. # However on # $CC -MD -MF foo.d -c -o sub/foo.o sub/foo.c # ICC 7.0 will fill foo.d with something like # foo.o: sub/foo.c # foo.o: sub/foo.h # which is wrong. We want # sub/foo.o: sub/foo.c # sub/foo.o: sub/foo.h # sub/foo.c: # sub/foo.h: # ICC 7.1 will output # foo.o: sub/foo.c sub/foo.h # and will wrap long lines using '\': # foo.o: sub/foo.c ... \ # sub/foo.h ... \ # ... # tcc 0.9.26 (FIXME still under development at the moment of writing) # will emit a similar output, but also prepend the continuation lines # with horizontal tabulation characters. "$@" -MD -MF "$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" # Each line is of the form 'foo.o: dependent.h', # or 'foo.o: dep1.h dep2.h \', or ' dep3.h dep4.h \'. # Do two passes, one to just change these to # '$object: dependent.h' and one to simply 'dependent.h:'. sed -e "s/^[ $tab][ $tab]*/ /" -e "s,^[^:]*:,$object :," \ < "$tmpdepfile" > "$depfile" sed ' s/[ '"$tab"'][ '"$tab"']*/ /g s/^ *// s/ *\\*$// s/^[^:]*: *// /^$/d /:$/d s/$/ :/ ' < "$tmpdepfile" >> "$depfile" rm -f "$tmpdepfile" ;; hp2) # The "hp" stanza above does not work with aCC (C++) and HP's ia64 # compilers, which have integrated preprocessors. The correct option # to use with these is +Maked; it writes dependencies to a file named # 'foo.d', which lands next to the object file, wherever that # happens to be. # Much of this is similar to the tru64 case; see comments there. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` test "x$dir" = "x$object" && dir= base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` if test "$libtool" = yes; then tmpdepfile1=$dir$base.d tmpdepfile2=$dir.libs/$base.d "$@" -Wc,+Maked else tmpdepfile1=$dir$base.d tmpdepfile2=$dir$base.d "$@" +Maked fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile1" "$tmpdepfile2" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" do test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile" # Add 'dependent.h:' lines. sed -ne '2,${ s/^ *// s/ \\*$// s/$/:/ p }' "$tmpdepfile" >> "$depfile" else echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" "$tmpdepfile2" ;; tru64) # The Tru64 compiler uses -MD to generate dependencies as a side # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'. # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put # dependencies in 'foo.d' instead, so we check for that too. # Subdirectories are respected. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` test "x$dir" = "x$object" && dir= base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` if test "$libtool" = yes; then # With Tru64 cc, shared objects can also be used to make a # static library. This mechanism is used in libtool 1.4 series to # handle both shared and static libraries in a single compilation. # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. # # With libtool 1.5 this exception was removed, and libtool now # generates 2 separate objects for the 2 libraries. These two # compilations output dependencies in $dir.libs/$base.o.d and # in $dir$base.o.d. We have to check for both files, because # one of the two compilations can be disabled. We should prefer # $dir$base.o.d over $dir.libs/$base.o.d because the latter is # automatically cleaned when .libs/ is deleted, while ignoring # the former would cause a distcleancheck panic. tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 tmpdepfile2=$dir$base.o.d # libtool 1.5 tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 "$@" -Wc,-MD else tmpdepfile1=$dir$base.o.d tmpdepfile2=$dir$base.d tmpdepfile3=$dir$base.d tmpdepfile4=$dir$base.d "$@" -MD fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" do test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; msvc7) if test "$libtool" = yes; then showIncludes=-Wc,-showIncludes else showIncludes=-showIncludes fi "$@" $showIncludes > "$tmpdepfile" stat=$? grep -v '^Note: including file: ' "$tmpdepfile" if test "$stat" = 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" echo "$object : \\" > "$depfile" # The first sed program below extracts the file names and escapes # backslashes for cygpath. The second sed program outputs the file # name when reading, but also accumulates all include files in the # hold buffer in order to output them again at the end. This only # works with sed implementations that can handle large buffers. sed < "$tmpdepfile" -n ' /^Note: including file: *\(.*\)/ { s//\1/ s/\\/\\\\/g p }' | $cygpath_u | sort -u | sed -n ' s/ /\\ /g s/\(.*\)/'"$tab"'\1 \\/p s/.\(.*\) \\/\1:/ H $ { s/.*/'"$tab"'/ G p }' >> "$depfile" rm -f "$tmpdepfile" ;; msvc7msys) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; #nosideeffect) # This comment above is used by automake to tell side-effect # dependency tracking mechanisms from slower ones. dashmstdout) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout, regardless of -o. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi # Remove '-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done test -z "$dashmflag" && dashmflag=-M # Require at least two characters before searching for ':' # in the target name. This is to cope with DOS-style filenames: # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise. "$@" $dashmflag | sed 's:^['"$tab"' ]*[^:'"$tab"' ][^:][^:]*\:['"$tab"' ]*:'"$object"'\: :' > "$tmpdepfile" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" tr ' ' "$nl" < "$tmpdepfile" | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; dashXmstdout) # This case only exists to satisfy depend.m4. It is never actually # run, as this mode is specially recognized in the preamble. exit 1 ;; makedepend) "$@" || exit $? # Remove any Libtool call if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi # X makedepend shift cleared=no eat=no for arg do case $cleared in no) set ""; shift cleared=yes ;; esac if test $eat = yes; then eat=no continue fi case "$arg" in -D*|-I*) set fnord "$@" "$arg"; shift ;; # Strip any option that makedepend may not understand. Remove # the object too, otherwise makedepend will parse it as a source file. -arch) eat=yes ;; -*|$object) ;; *) set fnord "$@" "$arg"; shift ;; esac done obj_suffix=`echo "$object" | sed 's/^.*\././'` touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" # makedepend may prepend the VPATH from the source file name to the object. # No need to regex-escape $object, excess matching of '.' is harmless. sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile" sed '1,2d' "$tmpdepfile" | tr ' ' "$nl" | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" "$tmpdepfile".bak ;; cpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi # Remove '-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done "$@" -E | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | sed '$ s: \\$::' > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" cat < "$tmpdepfile" >> "$depfile" sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; msvisualcpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi IFS=" " for arg do case "$arg" in -o) shift ;; $object) shift ;; "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") set fnord "$@" shift shift ;; *) set fnord "$@" "$arg" shift shift ;; esac done "$@" -E 2>/dev/null | sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile" echo "$tab" >> "$depfile" sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; msvcmsys) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; none) exec "$@" ;; *) echo "Unknown depmode $depmode" 1>&2 exit 1 ;; esac exit 0 # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: ibus-pinyin-1.5.0/config.sub0000755000175000017500000010517612063702757012712 00000000000000#! /bin/sh # Configuration validation subroutine script. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, # 2011, 2012 Free Software Foundation, Inc. timestamp='2012-02-10' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software # can handle that machine. It does not imply ALL GNU software can. # # 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 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, 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. # Please send patches to . Submit a context # diff and a properly formatted GNU ChangeLog entry. # # 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: # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD # 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. me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] CPU-MFR-OPSYS $0 [OPTION] ALIAS Canonicalize a configuration name. Operation modes: -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 (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 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" 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 # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ knetbsd*-gnu* | netbsd*-gnu* | \ kopensolaris*-gnu* | \ storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; android-linux) os=-linux-android basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown ;; *) basic_machine=`echo $1 | sed 's/-[^-]*$//'` if [ $basic_machine != $1 ] then os=`echo $1 | sed 's/.*-/-/'` else os=; fi ;; esac ### Let's recognize common machines as not being operating systems so ### that things like config.sub decstation-3100 work. We also ### recognize some manufacturers as not being operating systems, so we ### can provide default operating systems below. case $os in -sun*os*) # Prevent following clause from handling this invalid input. ;; -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ -apple | -axis | -knuth | -cray | -microblaze) os= basic_machine=$1 ;; -bluegene*) os=-cnk ;; -sim | -cisco | -oki | -wec | -winbond) os= basic_machine=$1 ;; -scout) ;; -wrs) os=-vxworks basic_machine=$1 ;; -chorusos*) os=-chorusos basic_machine=$1 ;; -chorusrdb) os=-chorusrdb basic_machine=$1 ;; -hiux*) os=-hiuxwe2 ;; -sco6) os=-sco5v6 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco5) os=-sco3.2v5 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco4) os=-sco3.2v4 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco3.2.[4-9]*) os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco3.2v[4-9]*) # Don't forget version if it is 3.2v4 or newer. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco5v6*) # Don't forget version if it is 3.2v4 or newer. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco*) os=-sco3.2v2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -udk*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -isc) os=-isc2.2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -clix*) basic_machine=clipper-intergraph ;; -isc*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -lynx*) os=-lynxos ;; -ptx*) basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` ;; -windowsnt*) os=`echo $os | sed -e 's/windowsnt/winnt/'` ;; -psos*) os=-psos ;; -mint | -mint[0-9]*) basic_machine=m68k-atari os=-mint ;; esac # Decode aliases for certain CPU-COMPANY combinations. case $basic_machine in # Recognize the basic CPU types without company name. # Some are omitted here because they have special meanings below. 1750a | 580 \ | a29k \ | aarch64 | aarch64_be \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ | be32 | be64 \ | bfin \ | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ | epiphany \ | fido | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | hexagon \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ | le32 | le64 \ | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ | maxq | mb | microblaze | mcore | mep | metag \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ | mips64octeon | mips64octeonel \ | mips64orion | mips64orionel \ | mips64r5900 | mips64r5900el \ | mips64vr | mips64vrel \ | mips64vr4100 | mips64vr4100el \ | mips64vr4300 | mips64vr4300el \ | mips64vr5000 | mips64vr5000el \ | mips64vr5900 | mips64vr5900el \ | mipsisa32 | mipsisa32el \ | mipsisa32r2 | mipsisa32r2el \ | mipsisa64 | mipsisa64el \ | mipsisa64r2 | mipsisa64r2el \ | mipsisa64sb1 | mipsisa64sb1el \ | mipsisa64sr71k | mipsisa64sr71kel \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ | moxie \ | mt \ | msp430 \ | nds32 | nds32le | nds32be \ | nios | nios2 \ | ns16k | ns32k \ | open8 \ | or32 \ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle \ | pyramid \ | rl78 | rx \ | score \ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ | spu \ | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ | ubicom32 \ | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ | we32k \ | x86 | xc16x | xstormy16 | xtensa \ | z8k | z80) basic_machine=$basic_machine-unknown ;; c54x) basic_machine=tic54x-unknown ;; c55x) basic_machine=tic55x-unknown ;; c6x) basic_machine=tic6x-unknown ;; m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) basic_machine=$basic_machine-unknown os=-none ;; m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) ;; ms1) basic_machine=mt-unknown ;; strongarm | thumb | xscale) basic_machine=arm-unknown ;; xgate) basic_machine=$basic_machine-unknown os=-none ;; xscaleeb) basic_machine=armeb-unknown ;; xscaleel) basic_machine=armel-unknown ;; # We use `pc' rather than `unknown' # because (1) that's what they normally are, and # (2) the word "unknown" tends to confuse beginning users. i*86 | x86_64) basic_machine=$basic_machine-pc ;; # Object if more than one company name word. *-*-*) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 ;; # Recognize the basic CPU types with company name. 580-* \ | a29k-* \ | aarch64-* | aarch64_be-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* | avr32-* \ | be32-* | be64-* \ | bfin-* | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* \ | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | hexagon-* \ | i*86-* | i860-* | i960-* | ia64-* \ | ip2k-* | iq2000-* \ | le32-* | le64-* \ | lm32-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ | mips64octeon-* | mips64octeonel-* \ | mips64orion-* | mips64orionel-* \ | mips64r5900-* | mips64r5900el-* \ | mips64vr-* | mips64vrel-* \ | mips64vr4100-* | mips64vr4100el-* \ | mips64vr4300-* | mips64vr4300el-* \ | mips64vr5000-* | mips64vr5000el-* \ | mips64vr5900-* | mips64vr5900el-* \ | mipsisa32-* | mipsisa32el-* \ | mipsisa32r2-* | mipsisa32r2el-* \ | mipsisa64-* | mipsisa64el-* \ | mipsisa64r2-* | mipsisa64r2el-* \ | mipsisa64sb1-* | mipsisa64sb1el-* \ | mipsisa64sr71k-* | mipsisa64sr71kel-* \ | mipstx39-* | mipstx39el-* \ | mmix-* \ | mt-* \ | msp430-* \ | nds32-* | nds32le-* | nds32be-* \ | nios-* | nios2-* \ | none-* | np1-* | ns16k-* | ns32k-* \ | open8-* \ | orion-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ | pyramid-* \ | rl78-* | romp-* | rs6000-* | rx-* \ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparclite-* \ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ | tahoe-* \ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ | tile*-* \ | tron-* \ | ubicom32-* \ | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ | vax-* \ | we32k-* \ | x86-* | x86_64-* | xc16x-* | xps100-* \ | xstormy16-* | xtensa*-* \ | ymp-* \ | z8k-* | z80-*) ;; # Recognize the basic CPU types without company name, with glob match. xtensa*) basic_machine=$basic_machine-unknown ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. 386bsd) basic_machine=i386-unknown os=-bsd ;; 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) basic_machine=m68000-att ;; 3b*) basic_machine=we32k-att ;; a29khif) basic_machine=a29k-amd os=-udi ;; abacus) basic_machine=abacus-unknown ;; adobe68k) basic_machine=m68010-adobe os=-scout ;; alliant | fx80) basic_machine=fx80-alliant ;; altos | altos3068) basic_machine=m68k-altos ;; am29k) basic_machine=a29k-none os=-bsd ;; amd64) basic_machine=x86_64-pc ;; amd64-*) basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` ;; amdahl) basic_machine=580-amdahl os=-sysv ;; amiga | amiga-*) basic_machine=m68k-unknown ;; amigaos | amigados) basic_machine=m68k-unknown os=-amigaos ;; amigaunix | amix) basic_machine=m68k-unknown os=-sysv4 ;; apollo68) basic_machine=m68k-apollo os=-sysv ;; apollo68bsd) basic_machine=m68k-apollo os=-bsd ;; aros) basic_machine=i386-pc os=-aros ;; aux) basic_machine=m68k-apple os=-aux ;; balance) basic_machine=ns32k-sequent os=-dynix ;; blackfin) basic_machine=bfin-unknown os=-linux ;; blackfin-*) basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` os=-linux ;; bluegene*) basic_machine=powerpc-ibm os=-cnk ;; c54x-*) basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` ;; c55x-*) basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` ;; c6x-*) basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` ;; c90) basic_machine=c90-cray os=-unicos ;; cegcc) basic_machine=arm-unknown os=-cegcc ;; convex-c1) basic_machine=c1-convex os=-bsd ;; convex-c2) basic_machine=c2-convex os=-bsd ;; convex-c32) basic_machine=c32-convex os=-bsd ;; convex-c34) basic_machine=c34-convex os=-bsd ;; convex-c38) basic_machine=c38-convex os=-bsd ;; cray | j90) basic_machine=j90-cray os=-unicos ;; craynv) basic_machine=craynv-cray os=-unicosmp ;; cr16 | cr16-*) basic_machine=cr16-unknown os=-elf ;; crds | unos) basic_machine=m68k-crds ;; crisv32 | crisv32-* | etraxfs*) basic_machine=crisv32-axis ;; cris | cris-* | etrax*) basic_machine=cris-axis ;; crx) basic_machine=crx-unknown os=-elf ;; da30 | da30-*) basic_machine=m68k-da30 ;; decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) basic_machine=mips-dec ;; decsystem10* | dec10*) basic_machine=pdp10-dec os=-tops10 ;; decsystem20* | dec20*) basic_machine=pdp10-dec os=-tops20 ;; delta | 3300 | motorola-3300 | motorola-delta \ | 3300-motorola | delta-motorola) basic_machine=m68k-motorola ;; delta88) basic_machine=m88k-motorola os=-sysv3 ;; dicos) basic_machine=i686-pc os=-dicos ;; djgpp) basic_machine=i586-pc os=-msdosdjgpp ;; dpx20 | dpx20-*) basic_machine=rs6000-bull os=-bosx ;; dpx2* | dpx2*-bull) basic_machine=m68k-bull os=-sysv3 ;; ebmon29k) basic_machine=a29k-amd os=-ebmon ;; elxsi) basic_machine=elxsi-elxsi os=-bsd ;; encore | umax | mmax) basic_machine=ns32k-encore ;; es1800 | OSE68k | ose68k | ose | OSE) basic_machine=m68k-ericsson os=-ose ;; fx2800) basic_machine=i860-alliant ;; genix) basic_machine=ns32k-ns ;; gmicro) basic_machine=tron-gmicro os=-sysv ;; go32) basic_machine=i386-pc os=-go32 ;; h3050r* | hiux*) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; h8300hms) basic_machine=h8300-hitachi os=-hms ;; h8300xray) basic_machine=h8300-hitachi os=-xray ;; h8500hms) basic_machine=h8500-hitachi os=-hms ;; harris) basic_machine=m88k-harris os=-sysv3 ;; hp300-*) basic_machine=m68k-hp ;; hp300bsd) basic_machine=m68k-hp os=-bsd ;; hp300hpux) basic_machine=m68k-hp os=-hpux ;; hp3k9[0-9][0-9] | hp9[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k2[0-9][0-9] | hp9k31[0-9]) basic_machine=m68000-hp ;; hp9k3[2-9][0-9]) basic_machine=m68k-hp ;; hp9k6[0-9][0-9] | hp6[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k7[0-79][0-9] | hp7[0-79][0-9]) basic_machine=hppa1.1-hp ;; hp9k78[0-9] | hp78[0-9]) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[0-9][13679] | hp8[0-9][13679]) basic_machine=hppa1.1-hp ;; hp9k8[0-9][0-9] | hp8[0-9][0-9]) basic_machine=hppa1.0-hp ;; hppa-next) os=-nextstep3 ;; hppaosf) basic_machine=hppa1.1-hp os=-osf ;; hppro) basic_machine=hppa1.1-hp os=-proelf ;; i370-ibm* | ibm*) basic_machine=i370-ibm ;; i*86v32) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv32 ;; i*86v4*) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv4 ;; i*86v) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv ;; i*86sol2) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-solaris2 ;; i386mach) basic_machine=i386-mach os=-mach ;; i386-vsta | vsta) basic_machine=i386-unknown os=-vsta ;; iris | iris4d) basic_machine=mips-sgi case $os in -irix*) ;; *) os=-irix4 ;; esac ;; isi68 | isi) basic_machine=m68k-isi os=-sysv ;; m68knommu) basic_machine=m68k-unknown os=-linux ;; m68knommu-*) basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` os=-linux ;; m88k-omron*) basic_machine=m88k-omron ;; magnum | m3230) basic_machine=mips-mips os=-sysv ;; merlin) basic_machine=ns32k-utek os=-sysv ;; microblaze) basic_machine=microblaze-xilinx ;; mingw32) basic_machine=i386-pc os=-mingw32 ;; mingw32ce) basic_machine=arm-unknown os=-mingw32ce ;; miniframe) basic_machine=m68000-convergent ;; *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) basic_machine=m68k-atari os=-mint ;; mips3*-*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` ;; mips3*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown ;; monitor) basic_machine=m68k-rom68k os=-coff ;; morphos) basic_machine=powerpc-unknown os=-morphos ;; msdos) basic_machine=i386-pc os=-msdos ;; ms1-*) basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` ;; msys) basic_machine=i386-pc os=-msys ;; mvs) basic_machine=i370-ibm os=-mvs ;; nacl) basic_machine=le32-unknown os=-nacl ;; ncr3000) basic_machine=i486-ncr os=-sysv4 ;; netbsd386) basic_machine=i386-unknown os=-netbsd ;; netwinder) basic_machine=armv4l-rebel os=-linux ;; news | news700 | news800 | news900) basic_machine=m68k-sony os=-newsos ;; news1000) basic_machine=m68030-sony os=-newsos ;; news-3600 | risc-news) basic_machine=mips-sony os=-newsos ;; necv70) basic_machine=v70-nec os=-sysv ;; next | m*-next ) basic_machine=m68k-next case $os in -nextstep* ) ;; -ns2*) os=-nextstep2 ;; *) os=-nextstep3 ;; esac ;; nh3000) basic_machine=m68k-harris os=-cxux ;; nh[45]000) basic_machine=m88k-harris os=-cxux ;; nindy960) basic_machine=i960-intel os=-nindy ;; mon960) basic_machine=i960-intel os=-mon960 ;; nonstopux) basic_machine=mips-compaq os=-nonstopux ;; np1) basic_machine=np1-gould ;; neo-tandem) basic_machine=neo-tandem ;; nse-tandem) basic_machine=nse-tandem ;; nsr-tandem) basic_machine=nsr-tandem ;; op50n-* | op60c-*) basic_machine=hppa1.1-oki os=-proelf ;; openrisc | openrisc-*) basic_machine=or32-unknown ;; os400) basic_machine=powerpc-ibm os=-os400 ;; OSE68000 | ose68000) basic_machine=m68000-ericsson os=-ose ;; os68k) basic_machine=m68k-none os=-os68k ;; pa-hitachi) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; paragon) basic_machine=i860-intel os=-osf ;; parisc) basic_machine=hppa-unknown os=-linux ;; parisc-*) basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` os=-linux ;; pbd) basic_machine=sparc-tti ;; pbb) basic_machine=m68k-tti ;; pc532 | pc532-*) basic_machine=ns32k-pc532 ;; pc98) basic_machine=i386-pc ;; pc98-*) basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentium | p5 | k5 | k6 | nexgen | viac3) basic_machine=i586-pc ;; pentiumpro | p6 | 6x86 | athlon | athlon_*) basic_machine=i686-pc ;; pentiumii | pentium2 | pentiumiii | pentium3) basic_machine=i686-pc ;; pentium4) basic_machine=i786-pc ;; pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumpro-* | p6-* | 6x86-* | athlon-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentium4-*) basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pn) basic_machine=pn-gould ;; power) basic_machine=power-ibm ;; ppc | ppcbe) basic_machine=powerpc-unknown ;; ppc-* | ppcbe-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppcle | powerpclittle | ppc-le | powerpc-little) basic_machine=powerpcle-unknown ;; ppcle-* | powerpclittle-*) basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppc64) basic_machine=powerpc64-unknown ;; ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppc64le | powerpc64little | ppc64-le | powerpc64-little) basic_machine=powerpc64le-unknown ;; ppc64le-* | powerpc64little-*) basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ps2) basic_machine=i386-ibm ;; pw32) basic_machine=i586-unknown os=-pw32 ;; rdos) basic_machine=i386-pc os=-rdos ;; rom68k) basic_machine=m68k-rom68k os=-coff ;; rm[46]00) basic_machine=mips-siemens ;; rtpc | rtpc-*) basic_machine=romp-ibm ;; s390 | s390-*) basic_machine=s390-ibm ;; s390x | s390x-*) basic_machine=s390x-ibm ;; sa29200) basic_machine=a29k-amd os=-udi ;; sb1) basic_machine=mipsisa64sb1-unknown ;; sb1el) basic_machine=mipsisa64sb1el-unknown ;; sde) basic_machine=mipsisa32-sde os=-elf ;; sei) basic_machine=mips-sei os=-seiux ;; sequent) basic_machine=i386-sequent ;; sh) basic_machine=sh-hitachi os=-hms ;; sh5el) basic_machine=sh5le-unknown ;; sh64) basic_machine=sh64-unknown ;; sparclite-wrs | simso-wrs) basic_machine=sparclite-wrs os=-vxworks ;; sps7) basic_machine=m68k-bull os=-sysv2 ;; spur) basic_machine=spur-unknown ;; st2000) basic_machine=m68k-tandem ;; stratus) basic_machine=i860-stratus os=-sysv4 ;; strongarm-* | thumb-*) basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` ;; sun2) basic_machine=m68000-sun ;; sun2os3) basic_machine=m68000-sun os=-sunos3 ;; sun2os4) basic_machine=m68000-sun os=-sunos4 ;; sun3os3) basic_machine=m68k-sun os=-sunos3 ;; sun3os4) basic_machine=m68k-sun os=-sunos4 ;; sun4os3) basic_machine=sparc-sun os=-sunos3 ;; sun4os4) basic_machine=sparc-sun os=-sunos4 ;; sun4sol2) basic_machine=sparc-sun os=-solaris2 ;; sun3 | sun3-*) basic_machine=m68k-sun ;; sun4) basic_machine=sparc-sun ;; sun386 | sun386i | roadrunner) basic_machine=i386-sun ;; sv1) basic_machine=sv1-cray os=-unicos ;; symmetry) basic_machine=i386-sequent os=-dynix ;; t3e) basic_machine=alphaev5-cray os=-unicos ;; t90) basic_machine=t90-cray os=-unicos ;; tile*) basic_machine=$basic_machine-unknown os=-linux-gnu ;; tx39) basic_machine=mipstx39-unknown ;; tx39el) basic_machine=mipstx39el-unknown ;; toad1) basic_machine=pdp10-xkl os=-tops20 ;; tower | tower-32) basic_machine=m68k-ncr ;; tpf) basic_machine=s390x-ibm os=-tpf ;; udi29k) basic_machine=a29k-amd os=-udi ;; ultra3) basic_machine=a29k-nyu os=-sym1 ;; v810 | necv810) basic_machine=v810-nec os=-none ;; vaxv) basic_machine=vax-dec os=-sysv ;; vms) basic_machine=vax-dec os=-vms ;; vpp*|vx|vx-*) basic_machine=f301-fujitsu ;; vxworks960) basic_machine=i960-wrs os=-vxworks ;; vxworks68) basic_machine=m68k-wrs os=-vxworks ;; vxworks29k) basic_machine=a29k-wrs os=-vxworks ;; w65*) basic_machine=w65-wdc os=-none ;; w89k-*) basic_machine=hppa1.1-winbond os=-proelf ;; xbox) basic_machine=i686-pc os=-mingw32 ;; xps | xps100) basic_machine=xps100-honeywell ;; xscale-* | xscalee[bl]-*) basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` ;; ymp) basic_machine=ymp-cray os=-unicos ;; z8k-*-coff) basic_machine=z8k-unknown os=-sim ;; z80-*-coff) basic_machine=z80-unknown os=-sim ;; none) basic_machine=none-none os=-none ;; # 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) basic_machine=hppa1.1-winbond ;; op50n) basic_machine=hppa1.1-oki ;; op60c) basic_machine=hppa1.1-oki ;; romp) basic_machine=romp-ibm ;; mmix) basic_machine=mmix-knuth ;; rs6000) basic_machine=rs6000-ibm ;; vax) basic_machine=vax-dec ;; pdp10) # there are many clones, so DEC is not a safe bet basic_machine=pdp10-unknown ;; pdp11) basic_machine=pdp11-dec ;; we32k) basic_machine=we32k-att ;; sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) basic_machine=sh-unknown ;; sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) basic_machine=sparc-sun ;; cydra) basic_machine=cydra-cydrome ;; orion) basic_machine=orion-highlevel ;; orion105) basic_machine=clipper-highlevel ;; mac | mpw | mac-mpw) basic_machine=m68k-apple ;; pmac | pmac-mpw) basic_machine=powerpc-apple ;; *-unknown) # Make sure to match an already-canonicalized machine name. ;; *) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 ;; esac # Here we canonicalize certain aliases for manufacturers. case $basic_machine in *-digital*) basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` ;; *-commodore*) basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` ;; *) ;; esac # Decode manufacturer-specific aliases for certain operating systems. if [ x"$os" != x"" ] then case $os in # First match some system type aliases # that might get confused with valid system types. # -solaris* is a basic system type, with this one exception. -auroraux) os=-auroraux ;; -solaris1 | -solaris1.*) os=`echo $os | sed -e 's|solaris1|sunos4|'` ;; -solaris) os=-solaris2 ;; -svr4*) os=-sysv4 ;; -unixware*) os=-sysv4.2uw ;; -gnu/linux*) os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` ;; # First accept the basic system types. # The portable systems comes first. # Each alternative MUST END IN A *, to match a version number. # -sysv* is not here because it comes later, after sysvr4. -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ | -sym* | -kopensolaris* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ | -aos* | -aros* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ | -openbsd* | -solidbsd* \ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* | -cegcc* \ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -linux-gnu* | -linux-android* \ | -linux-newlib* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) case $basic_machine in x86-* | i*86-*) ;; *) os=-nto$os ;; esac ;; -nto-qnx*) ;; -nto*) os=`echo $os | sed -e 's|nto|nto-qnx|'` ;; -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) ;; -mac*) os=`echo $os | sed -e 's|mac|macos|'` ;; -linux-dietlibc) os=-linux-dietlibc ;; -linux*) os=`echo $os | sed -e 's|linux|linux-gnu|'` ;; -sunos5*) os=`echo $os | sed -e 's|sunos5|solaris2|'` ;; -sunos6*) os=`echo $os | sed -e 's|sunos6|solaris3|'` ;; -opened*) os=-openedition ;; -os400*) os=-os400 ;; -wince*) os=-wince ;; -osfrose*) os=-osfrose ;; -osf*) os=-osf ;; -utek*) os=-bsd ;; -dynix*) os=-bsd ;; -acis*) os=-aos ;; -atheos*) os=-atheos ;; -syllable*) os=-syllable ;; -386bsd) os=-bsd ;; -ctix* | -uts*) os=-sysv ;; -nova*) os=-rtmk-nova ;; -ns2 ) os=-nextstep2 ;; -nsk*) os=-nsk ;; # Preserve the version number of sinix5. -sinix5.*) os=`echo $os | sed -e 's|sinix|sysv|'` ;; -sinix*) os=-sysv4 ;; -tpf*) os=-tpf ;; -triton*) os=-sysv3 ;; -oss*) os=-sysv3 ;; -svr4) os=-sysv4 ;; -svr3) os=-sysv3 ;; -sysvr4) os=-sysv4 ;; # This must come after -sysvr4. -sysv*) ;; -ose*) os=-ose ;; -es1800*) os=-ose ;; -xenix) os=-xenix ;; -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) os=-mint ;; -aros*) os=-aros ;; -kaos*) os=-kaos ;; -zvmoe) os=-zvmoe ;; -dicos*) os=-dicos ;; -nacl*) ;; -none) ;; *) # Get rid of the `-' at the beginning of $os. os=`echo $os | sed 's/[^-]*-//'` echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 exit 1 ;; esac else # Here we handle the default operating systems that come with various machines. # The value should be what the vendor currently ships out the door with their # machine or put another way, the most popular os provided with the machine. # Note that if you're going to try to match "-MANUFACTURER" here (say, # "-sun"), then you have to tell the case statement up towards the top # that MANUFACTURER isn't an operating system. Otherwise, code above # will signal an error saying that MANUFACTURER isn't an operating # system, and we'll never get to this point. case $basic_machine in score-*) os=-elf ;; spu-*) os=-elf ;; *-acorn) os=-riscix1.2 ;; arm*-rebel) os=-linux ;; arm*-semi) os=-aout ;; c4x-* | tic4x-*) os=-coff ;; tic54x-*) os=-coff ;; tic55x-*) os=-coff ;; tic6x-*) os=-coff ;; # This must come before the *-dec entry. pdp10-*) os=-tops20 ;; pdp11-*) os=-none ;; *-dec | vax-*) os=-ultrix4.2 ;; m68*-apollo) os=-domain ;; i386-sun) os=-sunos4.0.2 ;; m68000-sun) os=-sunos3 ;; m68*-cisco) os=-aout ;; mep-*) os=-elf ;; mips*-cisco) os=-elf ;; mips*-*) os=-elf ;; or32-*) os=-coff ;; *-tti) # must be before sparc entry or we get the wrong os. os=-sysv3 ;; sparc-* | *-sun) os=-sunos4.1.1 ;; *-be) os=-beos ;; *-haiku) os=-haiku ;; *-ibm) os=-aix ;; *-knuth) os=-mmixware ;; *-wec) os=-proelf ;; *-winbond) os=-proelf ;; *-oki) os=-proelf ;; *-hp) os=-hpux ;; *-hitachi) os=-hiux ;; i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) os=-sysv ;; *-cbm) os=-amigaos ;; *-dg) os=-dgux ;; *-dolphin) os=-sysv3 ;; m68k-ccur) os=-rtu ;; m88k-omron*) os=-luna ;; *-next ) os=-nextstep ;; *-sequent) os=-ptx ;; *-crds) os=-unos ;; *-ns) os=-genix ;; i370-*) os=-mvs ;; *-next) os=-nextstep3 ;; *-gould) os=-sysv ;; *-highlevel) os=-bsd ;; *-encore) os=-bsd ;; *-sgi) os=-irix ;; *-siemens) os=-sysv4 ;; *-masscomp) os=-rtu ;; f30[01]-fujitsu | f700-fujitsu) os=-uxpv ;; *-rom68k) os=-coff ;; *-*bug) os=-coff ;; *-apple) os=-macos ;; *-atari*) os=-mint ;; *) os=-none ;; esac fi # Here we handle the case where we know the os, and the CPU type, but not the # manufacturer. We pick the logical manufacturer. vendor=unknown case $basic_machine in *-unknown) case $os in -riscix*) vendor=acorn ;; -sunos*) 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 ;; -mvs* | -opened*) vendor=ibm ;; -os400*) 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 basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` ;; esac echo $basic_machine$os exit # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: ibus-pinyin-1.5.0/AUTHORS0000664000175000017500000000023411762161772011767 00000000000000Peng Huang BYVoid Peng Wu ru.po: koterpillar fr.po: Jiehong Ma ibus-pinyin-1.5.0/mkinstalldirs0000755000175000017500000000672212063702760013524 00000000000000#! /bin/sh # mkinstalldirs --- make directory hierarchy scriptversion=2009-04-28.21; # UTC # Original author: Noah Friedman # Created: 1993-05-16 # Public domain. # # This file is maintained in Automake, please report # bugs to or send patches to # . nl=' ' IFS=" "" $nl" errstatus=0 dirmode= usage="\ Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ... Create each directory DIR (with mode MODE, if specified), including all leading file name components. Report bugs to ." # process command line arguments while test $# -gt 0 ; do case $1 in -h | --help | --h*) # -h for help echo "$usage" exit $? ;; -m) # -m PERM arg shift test $# -eq 0 && { echo "$usage" 1>&2; exit 1; } dirmode=$1 shift ;; --version) echo "$0 $scriptversion" exit $? ;; --) # stop option processing shift break ;; -*) # unknown option echo "$usage" 1>&2 exit 1 ;; *) # first non-opt arg break ;; esac done for file do if test -d "$file"; then shift else break fi done case $# in 0) exit 0 ;; esac # Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and # mkdir -p a/c at the same time, both will detect that a is missing, # one will create a, then the other will try to create a and die with # a "File exists" error. This is a problem when calling mkinstalldirs # from a parallel make. We use --version in the probe to restrict # ourselves to GNU mkdir, which is thread-safe. case $dirmode in '') if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then echo "mkdir -p -- $*" exec mkdir -p -- "$@" else # On NextStep and OpenStep, the `mkdir' command does not # recognize any option. It will interpret all options as # directories to create, and then abort because `.' already # exists. test -d ./-p && rmdir ./-p test -d ./--version && rmdir ./--version fi ;; *) if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 && test ! -d ./--version; then echo "mkdir -m $dirmode -p -- $*" exec mkdir -m "$dirmode" -p -- "$@" else # Clean up after NextStep and OpenStep mkdir. for d in ./-m ./-p ./--version "./$dirmode"; do test -d $d && rmdir $d done fi ;; esac for file do case $file in /*) pathcomp=/ ;; *) pathcomp= ;; esac oIFS=$IFS IFS=/ set fnord $file shift IFS=$oIFS for d do test "x$d" = x && continue pathcomp=$pathcomp$d case $pathcomp in -*) pathcomp=./$pathcomp ;; esac if test ! -d "$pathcomp"; then echo "mkdir $pathcomp" mkdir "$pathcomp" || lasterr=$? if test ! -d "$pathcomp"; then errstatus=$lasterr else if test ! -z "$dirmode"; then echo "chmod $dirmode $pathcomp" lasterr= chmod "$dirmode" "$pathcomp" || lasterr=$? if test ! -z "$lasterr"; then errstatus=$lasterr fi fi fi fi pathcomp=$pathcomp/ done done exit $errstatus # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: ibus-pinyin-1.5.0/config.guess0000755000175000017500000012743212063702757013246 00000000000000#! /bin/sh # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, # 2011, 2012 Free Software Foundation, Inc. timestamp='2012-02-10' # 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 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, 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. # Originally written by Per Bothner. Please send patches (context # diff format) to and include a ChangeLog # entry. # # This script attempts to guess a canonical system name similar to # config.sub. If it succeeds, it prints the system name on stdout, and # exits with 0. Otherwise, it exits with 1. # # You can get the latest version of this script from: # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] Output the configuration name of the system \`$me' is run on. Operation modes: -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 (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 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 trap 'exit 1' 1 2 15 # 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. set_cc_for_build=' trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; : ${TMPDIR=/tmp} ; { 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) ; } || { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; dummy=$tmp/dummy ; tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; case $CC_FOR_BUILD,$HOST_CC,$CC in ,,) echo "int x;" > $dummy.c ; for c in cc gcc c89 c99 ; do if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then CC_FOR_BUILD="$c"; 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 ; set_cc_for_build= ;' # 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) >/dev/null 2>&1 ; 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 # 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". sysctl="sysctl -n hw.machine_arch" UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ /usr/sbin/$sysctl 2>/dev/null || echo unknown)` case "${UNAME_MACHINE_ARCH}" in armeb) machine=armeb-unknown ;; arm*) machine=arm-unknown ;; sh3el) machine=shl-unknown ;; sh3eb) machine=sh-unknown ;; sh5el) machine=sh5le-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. case "${UNAME_MACHINE_ARCH}" in arm*|i386|m68k|ns32k|sh3*|sparc|vax) eval $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 # 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/[-_].*/\./'` ;; esac # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: # contains redundant information, the shorter form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. echo "${machine}-${os}${release}" exit ;; *:OpenBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} exit ;; *:ekkoBSD:*:*) echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} exit ;; *:SolidBSD:*:*) echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} exit ;; macppc:MirBSD:*:*) echo powerpc-unknown-mirbsd${UNAME_RELEASE} exit ;; *:MirBSD:*:*) echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} exit ;; alpha:OSF1:*:*) 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. echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` # Reset EXIT trap before exiting to avoid spurious non-zero exit code. exitcode=$? trap '' 0 exit $exitcode ;; Alpha\ *:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # Should we change UNAME_MACHINE based on the output of uname instead # of the specific Alpha model? echo alpha-pc-interix exit ;; 21064:Windows_NT:50:3) echo alpha-dec-winnt3.5 exit ;; Amiga*:UNIX_System_V:4.0:*) echo m68k-unknown-sysv4 exit ;; *:[Aa]miga[Oo][Ss]:*:*) echo ${UNAME_MACHINE}-unknown-amigaos exit ;; *:[Mm]orph[Oo][Ss]:*:*) echo ${UNAME_MACHINE}-unknown-morphos exit ;; *:OS/390:*:*) echo i370-ibm-openedition exit ;; *:z/VM:*:*) echo s390-ibm-zvmoe exit ;; *:OS400:*:*) echo powerpc-ibm-os400 exit ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix${UNAME_RELEASE} exit ;; arm:riscos:*:*|arm:RISCOS:*:*) echo arm-unknown-riscos exit ;; SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) echo hppa1.1-hitachi-hiuxmpp exit ;; Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. if test "`(/bin/universe) 2>/dev/null`" = att ; then echo pyramid-pyramid-sysv3 else echo pyramid-pyramid-bsd fi exit ;; NILE*:*:*:dcosx) echo pyramid-pyramid-svr4 exit ;; DRS?6000:unix:4.0:6*) echo sparc-icl-nx6 exit ;; DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) case `/usr/bin/uname -p` in sparc) echo sparc-icl-nx7; exit ;; esac ;; s390x:SunOS:*:*) echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4H:SunOS:5.*:*) echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) echo i386-pc-auroraux${UNAME_RELEASE} exit ;; i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) eval $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 [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ grep IS_64BIT_ARCH >/dev/null then SUN_ARCH="x86_64" fi fi echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; 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. echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; 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'. echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` exit ;; sun3*:SunOS:*:*) echo m68k-sun-sunos${UNAME_RELEASE} exit ;; 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) echo m68k-sun-sunos${UNAME_RELEASE} ;; sun4) echo sparc-sun-sunos${UNAME_RELEASE} ;; esac exit ;; aushp:SunOS:*:*) echo sparc-auspex-sunos${UNAME_RELEASE} exit ;; # 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:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit ;; atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit ;; *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit ;; milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) echo m68k-milan-mint${UNAME_RELEASE} exit ;; hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) echo m68k-hades-mint${UNAME_RELEASE} exit ;; *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) echo m68k-unknown-mint${UNAME_RELEASE} exit ;; m68k:machten:*:*) echo m68k-apple-machten${UNAME_RELEASE} exit ;; powerpc:machten:*:*) echo powerpc-apple-machten${UNAME_RELEASE} exit ;; RISC*:Mach:*:*) echo mips-dec-mach_bsd4.3 exit ;; RISC*:ULTRIX:*:*) echo mips-dec-ultrix${UNAME_RELEASE} exit ;; VAX*:ULTRIX*:*:*) echo vax-dec-ultrix${UNAME_RELEASE} exit ;; 2020:CLIX:*:* | 2430:CLIX:*:*) echo clipper-intergraph-clix${UNAME_RELEASE} exit ;; mips:*:*:UMIPS | mips:*:*:RISCos) eval $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; } echo mips-mips-riscos${UNAME_RELEASE} exit ;; Motorola:PowerMAX_OS:*:*) echo powerpc-motorola-powermax exit ;; Motorola:*:4.3:PL8-*) echo powerpc-harris-powermax exit ;; Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) echo powerpc-harris-powermax exit ;; Night_Hawk:Power_UNIX:*:*) echo powerpc-harris-powerunix exit ;; m88k:CX/UX:7*:*) echo m88k-harris-cxux7 exit ;; m88k:*:4*:R4*) echo m88k-motorola-sysv4 exit ;; m88k:*:3*:R3*) echo m88k-motorola-sysv3 exit ;; AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] then if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ [ ${TARGET_BINARY_INTERFACE}x = x ] then echo m88k-dg-dgux${UNAME_RELEASE} else echo m88k-dg-dguxbcs${UNAME_RELEASE} fi else echo i586-dg-dgux${UNAME_RELEASE} fi exit ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) echo m88k-dolphin-sysv3 exit ;; M88*:*:R3*:*) # Delta 88k system running SVR3 echo m88k-motorola-sysv3 exit ;; XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) echo m88k-tektronix-sysv3 exit ;; Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) echo m68k-tektronix-bsd exit ;; *:IRIX*:*:*) echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` exit ;; ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' i*86:AIX:*:*) echo i386-ibm-aix exit ;; ia64:AIX:*:*) if [ -x /usr/bin/oslevel ] ; then IBM_REV=`/usr/bin/oslevel` else IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} exit ;; *:AIX:2:3) if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include 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 echo "$SYSTEM_NAME" else echo rs6000-ibm-aix3.2.5 fi elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then echo rs6000-ibm-aix3.2.4 else echo rs6000-ibm-aix3.2 fi exit ;; *: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 [ -x /usr/bin/oslevel ] ; then IBM_REV=`/usr/bin/oslevel` else IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi echo ${IBM_ARCH}-ibm-aix${IBM_REV} exit ;; *:AIX:*:*) echo rs6000-ibm-aix exit ;; ibmrt:4.4BSD:*|romp-ibm:BSD:*) echo romp-ibm-bsd4.4 exit ;; ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to exit ;; # report: romp-ibm BSD 4.3 *:BOSX:*:*) echo rs6000-bull-bosx exit ;; DPX/2?00:B.O.S.:*:*) echo m68k-bull-sysv3 exit ;; 9000/[34]??:4.3bsd:1.*:*) echo m68k-hp-bsd exit ;; hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) echo m68k-hp-bsd4.4 exit ;; 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 [ -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 [ "${HP_ARCH}" = "" ]; then eval $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 [ ${HP_ARCH} = "hppa2.0w" ] then eval $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 echo ${HP_ARCH}-hp-hpux${HPUX_REV} exit ;; ia64:HP-UX:*:*) HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` echo ia64-hp-hpux${HPUX_REV} exit ;; 3050*:HI-UX:*:*) eval $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; } echo unknown-hitachi-hiuxwe2 exit ;; 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) echo hppa1.1-hp-bsd exit ;; 9000/8??:4.3bsd:*:*) echo hppa1.0-hp-bsd exit ;; *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) echo hppa1.0-hp-mpeix exit ;; hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) echo hppa1.1-hp-osf exit ;; hp8??:OSF1:*:*) echo hppa1.0-hp-osf exit ;; i*86:OSF1:*:*) if [ -x /usr/sbin/sysversion ] ; then echo ${UNAME_MACHINE}-unknown-osf1mk else echo ${UNAME_MACHINE}-unknown-osf1 fi exit ;; parisc*:Lites*:*:*) echo hppa1.1-hp-lites exit ;; C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) echo c1-convex-bsd exit ;; 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*:*) echo c34-convex-bsd exit ;; C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) echo c38-convex-bsd exit ;; C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) echo c4-convex-bsd exit ;; CRAY*Y-MP:*:*:*) echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; 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:*:*:*) echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*T3E:*:*:*) echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*SV1:*:*:*) echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; *:UNICOS/mp:*:*) echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; 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/ /_/'` echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; 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/ /_/'` echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} exit ;; sparc*:BSD/OS:*:*) echo sparc-unknown-bsdi${UNAME_RELEASE} exit ;; *:BSD/OS:*:*) echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} exit ;; *:FreeBSD:*:*) UNAME_PROCESSOR=`/usr/bin/uname -p` case ${UNAME_PROCESSOR} in amd64) echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; *) echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; esac exit ;; i*:CYGWIN*:*) echo ${UNAME_MACHINE}-pc-cygwin exit ;; *:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit ;; i*:MSYS*:*) echo ${UNAME_MACHINE}-pc-msys exit ;; i*:windows32*:*) # uname -m includes "-pc" on this system. echo ${UNAME_MACHINE}-mingw32 exit ;; i*:PW*:*) echo ${UNAME_MACHINE}-pc-pw32 exit ;; *:Interix*:*) case ${UNAME_MACHINE} in x86) echo i586-pc-interix${UNAME_RELEASE} exit ;; authenticamd | genuineintel | EM64T) echo x86_64-unknown-interix${UNAME_RELEASE} exit ;; IA64) echo ia64-unknown-interix${UNAME_RELEASE} exit ;; esac ;; [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) echo i${UNAME_MACHINE}-pc-mks exit ;; 8664:Windows_NT:*) echo x86_64-pc-mks exit ;; i*:Windows_NT*:* | Pentium*:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we # UNAME_MACHINE based on the output of uname instead of i386? echo i586-pc-interix exit ;; i*:UWIN*:*) echo ${UNAME_MACHINE}-pc-uwin exit ;; amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) echo x86_64-unknown-cygwin exit ;; p*:CYGWIN*:*) echo powerpcle-unknown-cygwin exit ;; prep*:SunOS:5.*:*) echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; *:GNU:*:*) # the GNU system echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` exit ;; *:GNU/*:*:*) # other systems with GNU libc and userland echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu exit ;; i*86:Minix:*:*) echo ${UNAME_MACHINE}-pc-minix exit ;; aarch64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; aarch64_be:Linux:*:*) UNAME_MACHINE=aarch64_be echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` 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="libc1" ; else LIBC="" ; fi echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} exit ;; arm*:Linux:*:*) eval $set_cc_for_build if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_EABI__ then echo ${UNAME_MACHINE}-unknown-linux-gnu else if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_PCS_VFP then echo ${UNAME_MACHINE}-unknown-linux-gnueabi else echo ${UNAME_MACHINE}-unknown-linux-gnueabihf fi fi exit ;; avr32*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; cris:Linux:*:*) echo ${UNAME_MACHINE}-axis-linux-gnu exit ;; crisv32:Linux:*:*) echo ${UNAME_MACHINE}-axis-linux-gnu exit ;; frv:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; hexagon:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; i*86:Linux:*:*) LIBC=gnu eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #ifdef __dietlibc__ LIBC=dietlibc #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` echo "${UNAME_MACHINE}-pc-linux-${LIBC}" exit ;; ia64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; m32r*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; m68*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; mips:Linux:*:* | mips64:Linux:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #undef CPU #undef ${UNAME_MACHINE} #undef ${UNAME_MACHINE}el #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) CPU=${UNAME_MACHINE}el #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) CPU=${UNAME_MACHINE} #else CPU= #endif #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } ;; or32:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; padre:Linux:*:*) echo sparc-unknown-linux-gnu exit ;; parisc64:Linux:*:* | hppa64:Linux:*:*) echo hppa64-unknown-linux-gnu exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in PA7*) echo hppa1.1-unknown-linux-gnu ;; PA8*) echo hppa2.0-unknown-linux-gnu ;; *) echo hppa-unknown-linux-gnu ;; esac exit ;; ppc64:Linux:*:*) echo powerpc64-unknown-linux-gnu exit ;; ppc:Linux:*:*) echo powerpc-unknown-linux-gnu exit ;; s390:Linux:*:* | s390x:Linux:*:*) echo ${UNAME_MACHINE}-ibm-linux exit ;; sh64*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; sh*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; sparc:Linux:*:* | sparc64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; tile*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; vax:Linux:*:*) echo ${UNAME_MACHINE}-dec-linux-gnu exit ;; x86_64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; xtensa*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; 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. echo i386-sequent-sysv4 exit ;; 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. echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} exit ;; i*86:OS/2:*:*) # If we were able to find `uname', then EMX Unix compatibility # is probably installed. echo ${UNAME_MACHINE}-pc-os2-emx exit ;; i*86:XTS-300:*:STOP) echo ${UNAME_MACHINE}-unknown-stop exit ;; i*86:atheos:*:*) echo ${UNAME_MACHINE}-unknown-atheos exit ;; i*86:syllable:*:*) echo ${UNAME_MACHINE}-pc-syllable exit ;; i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) echo i386-unknown-lynxos${UNAME_RELEASE} exit ;; i*86:*DOS:*:*) echo ${UNAME_MACHINE}-pc-msdosdjgpp exit ;; i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} else echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} fi exit ;; 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 echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} exit ;; 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 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL else echo ${UNAME_MACHINE}-pc-sysv32 fi exit ;; 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 configury will decide that # this is a cross-build. echo i586-pc-msdosdjgpp exit ;; Intel:Mach:3*:*) echo i386-pc-mach3 exit ;; paragon:*:*:*) echo i860-intel-osf1 exit ;; i860:*:4.*:*) # i860-SVR4 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 else # Add other i860-SVR4 vendors below as they are discovered. echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 fi exit ;; mini*:CTIX:SYS*5:*) # "miniframe" echo m68010-convergent-sysv exit ;; mc68k:UNIX:SYSTEM5:3.51m) echo m68k-convergent-sysv exit ;; M680?0:D-NIX:5.3:*) echo m68k-diab-dnix exit ;; 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*:*) echo m68k-unknown-lynxos${UNAME_RELEASE} exit ;; mc68030:UNIX_System_V:4.*:*) echo m68k-atari-sysv4 exit ;; TSUNAMI:LynxOS:2.*:*) echo sparc-unknown-lynxos${UNAME_RELEASE} exit ;; rs6000:LynxOS:2.*:*) echo rs6000-unknown-lynxos${UNAME_RELEASE} exit ;; PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) echo powerpc-unknown-lynxos${UNAME_RELEASE} exit ;; SM[BE]S:UNIX_SV:*:*) echo mips-dde-sysv${UNAME_RELEASE} exit ;; RM*:ReliantUNIX-*:*:*) echo mips-sni-sysv4 exit ;; RM*:SINIX-*:*:*) echo mips-sni-sysv4 exit ;; *:SINIX-*:*:*) if uname -p 2>/dev/null >/dev/null ; then UNAME_MACHINE=`(uname -p) 2>/dev/null` echo ${UNAME_MACHINE}-sni-sysv4 else echo ns32k-sni-sysv fi exit ;; PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort # says echo i586-unisys-sysv4 exit ;; *:UNIX_System_V:4*:FTX*) # From Gerald Hewes . # How about differentiating between stratus architectures? -djm echo hppa1.1-stratus-sysv4 exit ;; *:*:*:FTX*) # From seanf@swdc.stratus.com. echo i860-stratus-sysv4 exit ;; i*86:VOS:*:*) # From Paul.Green@stratus.com. echo ${UNAME_MACHINE}-stratus-vos exit ;; *:VOS:*:*) # From Paul.Green@stratus.com. echo hppa1.1-stratus-vos exit ;; mc68*:A/UX:*:*) echo m68k-apple-aux${UNAME_RELEASE} exit ;; news*:NEWS-OS:6*:*) echo mips-sony-newsos6 exit ;; R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) if [ -d /usr/nec ]; then echo mips-nec-sysv${UNAME_RELEASE} else echo mips-unknown-sysv${UNAME_RELEASE} fi exit ;; BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. echo powerpc-be-beos exit ;; BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. echo powerpc-apple-beos exit ;; BePC:BeOS:*:*) # BeOS running on Intel PC compatible. echo i586-pc-beos exit ;; BePC:Haiku:*:*) # Haiku running on Intel PC compatible. echo i586-pc-haiku exit ;; SX-4:SUPER-UX:*:*) echo sx4-nec-superux${UNAME_RELEASE} exit ;; SX-5:SUPER-UX:*:*) echo sx5-nec-superux${UNAME_RELEASE} exit ;; SX-6:SUPER-UX:*:*) echo sx6-nec-superux${UNAME_RELEASE} exit ;; SX-7:SUPER-UX:*:*) echo sx7-nec-superux${UNAME_RELEASE} exit ;; SX-8:SUPER-UX:*:*) echo sx8-nec-superux${UNAME_RELEASE} exit ;; SX-8R:SUPER-UX:*:*) echo sx8r-nec-superux${UNAME_RELEASE} exit ;; Power*:Rhapsody:*:*) echo powerpc-apple-rhapsody${UNAME_RELEASE} exit ;; *:Rhapsody:*:*) echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} exit ;; *:Darwin:*:*) UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown case $UNAME_PROCESSOR in i386) eval $set_cc_for_build if [ "$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 UNAME_PROCESSOR="x86_64" fi fi ;; unknown) UNAME_PROCESSOR=powerpc ;; esac echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} exit ;; *:procnto*:*:* | *:QNX:[0123456789]*:*) UNAME_PROCESSOR=`uname -p` if test "$UNAME_PROCESSOR" = "x86"; then UNAME_PROCESSOR=i386 UNAME_MACHINE=pc fi echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} exit ;; *:QNX:*:4*) echo i386-pc-qnx exit ;; NEO-?:NONSTOP_KERNEL:*:*) echo neo-tandem-nsk${UNAME_RELEASE} exit ;; NSE-?:NONSTOP_KERNEL:*:*) echo nse-tandem-nsk${UNAME_RELEASE} exit ;; NSR-?:NONSTOP_KERNEL:*:*) echo nsr-tandem-nsk${UNAME_RELEASE} exit ;; *:NonStop-UX:*:*) echo mips-compaq-nonstopux exit ;; BS2000:POSIX*:*:*) echo bs2000-siemens-sysv exit ;; DS/*:UNIX_System_V:*:*) echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} exit ;; *: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 else UNAME_MACHINE="$cputype" fi echo ${UNAME_MACHINE}-unknown-plan9 exit ;; *:TOPS-10:*:*) echo pdp10-unknown-tops10 exit ;; *:TENEX:*:*) echo pdp10-unknown-tenex exit ;; KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) echo pdp10-dec-tops20 exit ;; XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) echo pdp10-xkl-tops20 exit ;; *:TOPS-20:*:*) echo pdp10-unknown-tops20 exit ;; *:ITS:*:*) echo pdp10-unknown-its exit ;; SEI:*:*:SEIUX) echo mips-sei-seiux${UNAME_RELEASE} exit ;; *:DragonFly:*:*) echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` exit ;; *:*VMS:*:*) UNAME_MACHINE=`(uname -p) 2>/dev/null` case "${UNAME_MACHINE}" in A*) echo alpha-dec-vms ; exit ;; I*) echo ia64-dec-vms ; exit ;; V*) echo vax-dec-vms ; exit ;; esac ;; *:XENIX:*:SysV) echo i386-pc-xenix exit ;; i*86:skyos:*:*) echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' exit ;; i*86:rdos:*:*) echo ${UNAME_MACHINE}-pc-rdos exit ;; i*86:AROS:*:*) echo ${UNAME_MACHINE}-pc-aros exit ;; x86_64:VMkernel:*:*) echo ${UNAME_MACHINE}-unknown-esx exit ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 eval $set_cc_for_build cat >$dummy.c < # include #endif 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 (__arm) && defined (__acorn) && defined (__unix) printf ("arm-acorn-riscix\n"); exit (0); #endif #if defined (hp300) && !defined (hpux) printf ("m68k-hp-bsd\n"); exit (0); #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 printf ("vax-dec-ultrix\n"); exit (0); # 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; } # Convex versions that predate uname can use getsysinfo(1) if [ -x /usr/convex/getsysinfo ] then case `getsysinfo -f cpu_type` in c1*) echo c1-convex-bsd exit ;; c2*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi exit ;; c34*) echo c34-convex-bsd exit ;; c38*) echo c38-convex-bsd exit ;; c4*) echo c4-convex-bsd exit ;; esac fi cat >&2 < in order to provide the needed information to handle your system. config.guess timestamp = $timestamp 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` /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 exit 1 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: ibus-pinyin-1.5.0/m4/0000775000175000017500000000000012064356726011321 500000000000000ibus-pinyin-1.5.0/m4/ltsugar.m40000644000175000017500000001042412063702752013154 00000000000000# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- # # Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. # Written by Gary V. Vaughan, 2004 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # serial 6 ltsugar.m4 # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])]) # lt_join(SEP, ARG1, [ARG2...]) # ----------------------------- # Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their # associated separator. # Needed until we can rely on m4_join from Autoconf 2.62, since all earlier # versions in m4sugar had bugs. m4_define([lt_join], [m4_if([$#], [1], [], [$#], [2], [[$2]], [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])]) m4_define([_lt_join], [m4_if([$#$2], [2], [], [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])]) # lt_car(LIST) # lt_cdr(LIST) # ------------ # Manipulate m4 lists. # These macros are necessary as long as will still need to support # Autoconf-2.59 which quotes differently. m4_define([lt_car], [[$1]]) m4_define([lt_cdr], [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], [$#], 1, [], [m4_dquote(m4_shift($@))])]) m4_define([lt_unquote], $1) # lt_append(MACRO-NAME, STRING, [SEPARATOR]) # ------------------------------------------ # Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'. # Note that neither SEPARATOR nor STRING are expanded; they are appended # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). # No SEPARATOR is output if MACRO-NAME was previously undefined (different # than defined and empty). # # This macro is needed until we can rely on Autoconf 2.62, since earlier # versions of m4sugar mistakenly expanded SEPARATOR but not STRING. m4_define([lt_append], [m4_define([$1], m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])]) # lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...]) # ---------------------------------------------------------- # Produce a SEP delimited list of all paired combinations of elements of # PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list # has the form PREFIXmINFIXSUFFIXn. # Needed until we can rely on m4_combine added in Autoconf 2.62. m4_define([lt_combine], [m4_if(m4_eval([$# > 3]), [1], [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl [[m4_foreach([_Lt_prefix], [$2], [m4_foreach([_Lt_suffix], ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[, [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])]) # lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ]) # ----------------------------------------------------------------------- # Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited # by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ. m4_define([lt_if_append_uniq], [m4_ifdef([$1], [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1], [lt_append([$1], [$2], [$3])$4], [$5])], [lt_append([$1], [$2], [$3])$4])]) # lt_dict_add(DICT, KEY, VALUE) # ----------------------------- m4_define([lt_dict_add], [m4_define([$1($2)], [$3])]) # lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE) # -------------------------------------------- m4_define([lt_dict_add_subkey], [m4_define([$1($2:$3)], [$4])]) # lt_dict_fetch(DICT, KEY, [SUBKEY]) # ---------------------------------- m4_define([lt_dict_fetch], [m4_ifval([$3], m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]), m4_ifdef([$1($2)], [m4_defn([$1($2)])]))]) # lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE]) # ----------------------------------------------------------------- m4_define([lt_if_dict_fetch], [m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4], [$5], [$6])]) # lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...]) # -------------------------------------------------------------- m4_define([lt_dict_filter], [m4_if([$5], [], [], [lt_join(m4_quote(m4_default([$4], [[, ]])), lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]), [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl ]) ibus-pinyin-1.5.0/m4/as-version.m40000664000175000017500000000377011762161772013577 00000000000000dnl as-version.m4 0.2.0 dnl autostars m4 macro for versioning dnl Thomas Vander Stichele dnl $Id: as-version.m4,v 1.4 2004/06/01 09:40:05 thomasvs Exp $ dnl AS_VERSION dnl example dnl AS_VERSION dnl this macro dnl - AC_SUBST's PACKAGE_VERSION_MAJOR, _MINOR, _MICRO dnl - AC_SUBST's PACKAGE_VERSION_RELEASE, dnl which can be used for rpm release fields dnl - doesn't call AM_INIT_AUTOMAKE anymore because it prevents dnl maintainer mode from running correctly dnl dnl don't forget to put #undef PACKAGE_VERSION_RELEASE in acconfig.h dnl if you use acconfig.h AC_DEFUN([AS_VERSION], [ PACKAGE_VERSION_MAJOR=$(echo AC_PACKAGE_VERSION | cut -d'.' -f1) PACKAGE_VERSION_MINOR=$(echo AC_PACKAGE_VERSION | cut -d'.' -f2) PACKAGE_VERSION_MICRO=$(echo AC_PACKAGE_VERSION | cut -d'.' -f3) AC_SUBST(PACKAGE_VERSION_MAJOR) AC_SUBST(PACKAGE_VERSION_MINOR) AC_SUBST(PACKAGE_VERSION_MICRO) ]) dnl AS_NANO(ACTION-IF-NO-NANO, [ACTION-IF-NANO]) dnl requires AC_INIT to be called before dnl For projects using a fourth or nano number in your versioning to indicate dnl development or prerelease snapshots, this macro allows the build to be dnl set up differently accordingly. dnl this macro: dnl - parses AC_PACKAGE_VERSION, set by AC_INIT, and extracts the nano number dnl - sets the variable PACKAGE_VERSION_NANO dnl - sets the variable PACKAGE_VERSION_RELEASE, which can be used dnl for rpm release fields dnl - executes ACTION-IF-NO-NANO or ACTION-IF-NANO dnl example: dnl AS_NANO(RELEASE="yes", RELEASE="no") AC_DEFUN([AS_NANO], [ AC_MSG_CHECKING(nano version) NANO=$(echo AC_PACKAGE_VERSION | cut -d'.' -f4) if test x"$NANO" = x || test "x$NANO" = "x0" ; then AC_MSG_RESULT([0 (release)]) NANO=0 PACKAGE_VERSION_RELEASE=1 ifelse([$1], , :, [$1]) else AC_MSG_RESULT($NANO) PACKAGE_VERSION_RELEASE=0.`date +%Y%m%d.%H%M%S` ifelse([$2], , :, [$2]) fi PACKAGE_VERSION_NANO=$NANO AC_SUBST(PACKAGE_VERSION_NANO) AC_SUBST(PACKAGE_VERSION_RELEASE) ]) ibus-pinyin-1.5.0/m4/lt~obsolete.m40000644000175000017500000001375612063702752014060 00000000000000# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- # # Copyright (C) 2004, 2005, 2007, 2009 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-pinyin-1.5.0/m4/ltversion.m40000644000175000017500000000126212063702752013520 00000000000000# ltversion.m4 -- version numbers -*- Autoconf -*- # # Copyright (C) 2004 Free Software Foundation, Inc. # Written by Scott James Remnant, 2004 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # @configure_input@ # serial 3337 ltversion.m4 # This file is part of GNU Libtool m4_define([LT_PACKAGE_VERSION], [2.4.2]) m4_define([LT_PACKAGE_REVISION], [1.3337]) AC_DEFUN([LTVERSION_VERSION], [macro_version='2.4.2' macro_revision='1.3337' _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_revision, 0) ]) ibus-pinyin-1.5.0/m4/intltool.m40000644000175000017500000002772412063702752013352 00000000000000## intltool.m4 - Configure intltool for the target system. -*-Shell-script-*- ## Copyright (C) 2001 Eazel, Inc. ## Author: Maciej Stachowiak ## Kenneth Christiansen ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by ## the Free Software Foundation; either version 2 of the License, or ## (at your option) any later version. ## ## This program is distributed in the hope that it will be useful, but ## WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ## General Public License for more details. ## ## You should have received a copy of the GNU General Public License ## along with this program; if not, write to the Free Software ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ## ## As a special exception to the GNU General Public License, if you ## distribute this file as part of a program that contains a ## configuration script generated by Autoconf, you may include it under ## the same distribution terms that you use for the rest of that program. dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml]) # serial 42 IT_PROG_INTLTOOL AC_DEFUN([IT_PROG_INTLTOOL], [ AC_PREREQ([2.50])dnl AC_REQUIRE([AM_NLS])dnl case "$am__api_version" in 1.[01234]) AC_MSG_ERROR([Automake 1.5 or newer is required to use intltool]) ;; *) ;; esac INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3` INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` if test -n "$1"; then AC_MSG_CHECKING([for intltool >= $1]) AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found]) test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || AC_MSG_ERROR([Your intltool is too old. You need intltool $1 or later.]) fi AC_PATH_PROG(INTLTOOL_UPDATE, [intltool-update]) AC_PATH_PROG(INTLTOOL_MERGE, [intltool-merge]) AC_PATH_PROG(INTLTOOL_EXTRACT, [intltool-extract]) if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then AC_MSG_ERROR([The intltool scripts were not found. Please install intltool.]) fi if test -z "$AM_DEFAULT_VERBOSITY"; then AM_DEFAULT_VERBOSITY=1 fi AC_SUBST([AM_DEFAULT_VERBOSITY]) INTLTOOL_V_MERGE='$(INTLTOOL__v_MERGE_$(V))' INTLTOOL__v_MERGE_='$(INTLTOOL__v_MERGE_$(AM_DEFAULT_VERBOSITY))' INTLTOOL__v_MERGE_0='@echo " ITMRG " [$]@;' AC_SUBST(INTLTOOL_V_MERGE) AC_SUBST(INTLTOOL__v_MERGE_) AC_SUBST(INTLTOOL__v_MERGE_0) INTLTOOL_V_MERGE_OPTIONS='$(intltool__v_merge_options_$(V))' intltool__v_merge_options_='$(intltool__v_merge_options_$(AM_DEFAULT_VERBOSITY))' intltool__v_merge_options_0='-q' AC_SUBST(INTLTOOL_V_MERGE_OPTIONS) AC_SUBST(intltool__v_merge_options_) AC_SUBST(intltool__v_merge_options_0) INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -p $(top_srcdir)/po $< [$]@' INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' if test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge 5000; then INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u --no-translations $< [$]@' else INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)_it_tmp_dir=tmp.intltool.[$][$]RANDOM && mkdir [$][$]_it_tmp_dir && LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u [$][$]_it_tmp_dir $< [$]@ && rmdir [$][$]_it_tmp_dir' fi INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' _IT_SUBST(INTLTOOL_DESKTOP_RULE) _IT_SUBST(INTLTOOL_DIRECTORY_RULE) _IT_SUBST(INTLTOOL_KEYS_RULE) _IT_SUBST(INTLTOOL_PROP_RULE) _IT_SUBST(INTLTOOL_OAF_RULE) _IT_SUBST(INTLTOOL_PONG_RULE) _IT_SUBST(INTLTOOL_SERVER_RULE) _IT_SUBST(INTLTOOL_SHEET_RULE) _IT_SUBST(INTLTOOL_SOUNDLIST_RULE) _IT_SUBST(INTLTOOL_UI_RULE) _IT_SUBST(INTLTOOL_XAM_RULE) _IT_SUBST(INTLTOOL_KBD_RULE) _IT_SUBST(INTLTOOL_XML_RULE) _IT_SUBST(INTLTOOL_XML_NOMERGE_RULE) _IT_SUBST(INTLTOOL_CAVES_RULE) _IT_SUBST(INTLTOOL_SCHEMAS_RULE) _IT_SUBST(INTLTOOL_THEME_RULE) _IT_SUBST(INTLTOOL_SERVICE_RULE) _IT_SUBST(INTLTOOL_POLICY_RULE) # Check the gettext tools to make sure they are GNU AC_PATH_PROG(XGETTEXT, xgettext) AC_PATH_PROG(MSGMERGE, msgmerge) AC_PATH_PROG(MSGFMT, msgfmt) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) fi xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) fi AC_PATH_PROG(INTLTOOL_PERL, perl) if test -z "$INTLTOOL_PERL"; then AC_MSG_ERROR([perl not found]) fi AC_MSG_CHECKING([for perl >= 5.8.1]) $INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1 if test $? -ne 0; then AC_MSG_ERROR([perl 5.8.1 is required for intltool]) else IT_PERL_VERSION=`$INTLTOOL_PERL -e "printf '%vd', $^V"` AC_MSG_RESULT([$IT_PERL_VERSION]) fi if test "x$2" != "xno-xml"; then AC_MSG_CHECKING([for XML::Parser]) if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then AC_MSG_RESULT([ok]) else AC_MSG_ERROR([XML::Parser perl module is required for intltool]) fi fi # Substitute ALL_LINGUAS so we can use it in po/Makefile AC_SUBST(ALL_LINGUAS) # Set DATADIRNAME correctly if it is not set yet # (copied from glib-gettext.m4) if test -z "$DATADIRNAME"; then AC_LINK_IFELSE( [AC_LANG_PROGRAM([[]], [[extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr]])], [DATADIRNAME=share], [case $host in *-*-solaris*) dnl On Solaris, if bind_textdomain_codeset is in libc, dnl GNU format message catalog is always supported, dnl since both are added to the libc all together. dnl Hence, we'd like to go with DATADIRNAME=share dnl in this case. AC_CHECK_FUNC(bind_textdomain_codeset, [DATADIRNAME=share], [DATADIRNAME=lib]) ;; *) [DATADIRNAME=lib] ;; esac]) fi AC_SUBST(DATADIRNAME) IT_PO_SUBDIR([po]) ]) # IT_PO_SUBDIR(DIRNAME) # --------------------- # All po subdirs have to be declared with this macro; the subdir "po" is # declared by IT_PROG_INTLTOOL. # AC_DEFUN([IT_PO_SUBDIR], [AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS. dnl dnl The following CONFIG_COMMANDS should be executed at the very end dnl of config.status. AC_CONFIG_COMMANDS_PRE([ AC_CONFIG_COMMANDS([$1/stamp-it], [ if [ ! grep "^# INTLTOOL_MAKEFILE$" "$1/Makefile.in" > /dev/null ]; then AC_MSG_ERROR([$1/Makefile.in.in was not created by intltoolize.]) fi rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp" >"$1/stamp-it.tmp" [sed '/^#/d s/^[[].*] *// /^[ ]*$/d '"s|^| $ac_top_srcdir/|" \ "$srcdir/$1/POTFILES.in" | sed '$!s/$/ \\/' >"$1/POTFILES" ] [sed '/^POTFILES =/,/[^\\]$/ { /^POTFILES =/!d r $1/POTFILES } ' "$1/Makefile.in" >"$1/Makefile"] rm -f "$1/Makefile.tmp" mv "$1/stamp-it.tmp" "$1/stamp-it" ]) ])dnl ]) # _IT_SUBST(VARIABLE) # ------------------- # Abstract macro to do either _AM_SUBST_NOTMAKE or AC_SUBST # AC_DEFUN([_IT_SUBST], [ AC_SUBST([$1]) m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])]) ] ) # deprecated macros AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL]) # A hint is needed for aclocal from Automake <= 1.9.4: # AC_DEFUN([AC_PROG_INTLTOOL], ...) ibus-pinyin-1.5.0/m4/libtool.m40000644000175000017500000105743212063702752013152 00000000000000# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, # 2006, 2007, 2008, 2009, 2010, 2011 Free Software # Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. m4_define([_LT_COPYING], [dnl # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, # 2006, 2007, 2008, 2009, 2010, 2011 Free Software # Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is part of GNU Libtool. # # GNU Libtool is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License as # published by the Free Software Foundation; either version 2 of # the License, or (at your option) any later version. # # As a special exception to the GNU General Public License, # if you distribute this file as part of a program or library that # is built using GNU Libtool, you may include this file under the # same distribution terms that you use for the rest of that program. # # GNU Libtool is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GNU Libtool; see the file COPYING. If not, a copy # can be downloaded from http://www.gnu.org/licenses/gpl.html, or # obtained by writing to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ]) # serial 57 LT_INIT # LT_PREREQ(VERSION) # ------------------ # Complain and exit if this libtool version is less that VERSION. m4_defun([LT_PREREQ], [m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1, [m4_default([$3], [m4_fatal([Libtool version $1 or higher is required], 63)])], [$2])]) # _LT_CHECK_BUILDDIR # ------------------ # Complain if the absolute build directory name contains unusual characters m4_defun([_LT_CHECK_BUILDDIR], [case `pwd` in *\ * | *\ *) AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;; esac ]) # LT_INIT([OPTIONS]) # ------------------ AC_DEFUN([LT_INIT], [AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT AC_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_CC_BASENAME(CC) # ------------------- # Calculate cc_basename. Skip known compiler wrappers and cross-prefix. m4_defun([_LT_CC_BASENAME], [for cc_temp in $1""; do case $cc_temp in compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; \-*) ;; *) break;; esac done cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` ]) # _LT_FILEUTILS_DEFAULTS # ---------------------- # It is okay to use these file commands and assume they have been set # sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'. m4_defun([_LT_FILEUTILS_DEFAULTS], [: ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} ])# _LT_FILEUTILS_DEFAULTS # _LT_SETUP # --------- m4_defun([_LT_SETUP], [AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl 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_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 _LT_CONFIG_LIBTOOL_INIT([ # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes INIT. if test -n "\${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi ]) if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi _LT_CHECK_OBJDIR m4_require([_LT_TAG_COMPILER])dnl case $host_os in aix3*) # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi ;; esac # Global variables: ofile=libtool can_build_shared=yes # All known linkers require a `.a' archive for static linking (except MSVC, # which needs '.lib'). libext=a with_gnu_ld="$lt_cv_prog_gnu_ld" old_CC="$CC" old_CFLAGS="$CFLAGS" # Set sane defaults for various variables test -z "$CC" && CC=cc test -z "$LTCC" && LTCC=$CC test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS test -z "$LD" && LD=ld test -z "$ac_objext" && ac_objext=o _LT_CC_BASENAME([$compiler]) # Only perform the check for file, if the check method requires it test -z "$MAGIC_CMD" && MAGIC_CMD=file case $deplibs_check_method in file_magic*) if test "$file_magic_cmd" = '$MAGIC_CMD'; then _LT_PATH_MAGIC fi ;; esac # Use C for the default configuration in the libtool script LT_SUPPORTED_TAG([CC]) _LT_LANG_C_CONFIG _LT_LANG_DEFAULT_CONFIG _LT_CONFIG_COMMANDS ])# _LT_SETUP # _LT_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\\"\\\`\\\\\\"" ;; *) 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\\"\\\`\\\\\\"" ;; *) 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 $lt_write_fail = 0 && 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), incase 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) 2011 Free Software Foundation, Inc. This config.lt script is free software; the Free Software Foundation gives unlimited permision to copy, distribute and modify it." while test $[#] != 0 do case $[1] in --version | --v* | -V ) echo "$lt_cl_version"; exit 0 ;; --help | --h* | -h ) echo "$lt_cl_help"; exit 0 ;; --debug | --d* | -d ) debug=: ;; --quiet | --q* | --silent | --s* | -q ) lt_cl_silent=: ;; -*) AC_MSG_ERROR([unrecognized option: $[1] Try \`$[0] --help' for more information.]) ;; *) AC_MSG_ERROR([unrecognized argument: $[1] Try \`$[0] --help' for more information.]) ;; esac shift done if $lt_cl_silent; then exec AS_MESSAGE_FD>/dev/null fi _LTEOF cat >>"$CONFIG_LT" <<_LTEOF _LT_OUTPUT_LIBTOOL_COMMANDS_INIT _LTEOF cat >>"$CONFIG_LT" <<\_LTEOF AC_MSG_NOTICE([creating $ofile]) _LT_OUTPUT_LIBTOOL_COMMANDS AS_EXIT(0) _LTEOF chmod +x "$CONFIG_LT" # configure is writing to config.log, but config.lt does its own redirection, # appending to config.log, which fails on DOS, as config.log is still kept # open by configure. Here we exec the FD to /dev/null, effectively closing # config.log, so it can be properly (re)opened and appended to by config.lt. lt_cl_success=: test "$silent" = yes && lt_config_lt_args="$lt_config_lt_args --quiet" exec AS_MESSAGE_LOG_FD>/dev/null $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false exec AS_MESSAGE_LOG_FD>>config.log $lt_cl_success || AS_EXIT(1) ])# LT_OUTPUT # _LT_CONFIG(TAG) # --------------- # If TAG is the built-in tag, create an initial libtool script with a # default configuration from the untagged config vars. Otherwise add code # to config.status for appending the configuration named by TAG from the # matching tagged config vars. m4_defun([_LT_CONFIG], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl _LT_CONFIG_SAVE_COMMANDS([ m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl m4_if(_LT_TAG, [C], [ # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes. if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi cfgfile="${ofile}T" trap "$RM \"$cfgfile\"; exit 1" 1 2 15 $RM "$cfgfile" cat <<_LT_EOF >> "$cfgfile" #! $SHELL # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. # Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. # _LT_COPYING _LT_LIBTOOL_TAGS # ### BEGIN LIBTOOL CONFIG _LT_LIBTOOL_CONFIG_VARS _LT_LIBTOOL_TAG_VARS # ### END LIBTOOL CONFIG _LT_EOF case $host_os in aix3*) cat <<\_LT_EOF >> "$cfgfile" # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi _LT_EOF ;; esac _LT_PROG_LTMAIN # We use sed instead of cat because bash on DJGPP gets confused if # if finds mixed CR/LF and LF-only lines. Since sed operates in # text mode, it properly converts lines to CR/LF. This bash problem # is reportedly fixed, but why not run on old versions too? sed '$q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) _LT_PROG_REPLACE_SHELLFNS mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" ], [cat <<_LT_EOF >> "$ofile" dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded dnl in a comment (ie after a #). # ### BEGIN LIBTOOL TAG CONFIG: $1 _LT_LIBTOOL_TAG_VARS(_LT_TAG) # ### END LIBTOOL TAG CONFIG: $1 _LT_EOF ])dnl /m4_if ], [m4_if([$1], [], [ PACKAGE='$PACKAGE' VERSION='$VERSION' TIMESTAMP='$TIMESTAMP' RM='$RM' ofile='$ofile'], []) ])dnl /_LT_CONFIG_SAVE_COMMANDS ])# _LT_CONFIG # LT_SUPPORTED_TAG(TAG) # --------------------- # Trace this macro to discover what tags are supported by the libtool # --tag option, using: # autoconf --trace 'LT_SUPPORTED_TAG:$1' AC_DEFUN([LT_SUPPORTED_TAG], []) # C support is built-in for now m4_define([_LT_LANG_C_enabled], []) m4_define([_LT_TAGS], []) # LT_LANG(LANG) # ------------- # Enable libtool support for the given language if not already enabled. AC_DEFUN([LT_LANG], [AC_BEFORE([$0], [LT_OUTPUT])dnl m4_case([$1], [C], [_LT_LANG(C)], [C++], [_LT_LANG(CXX)], [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 $_lt_result -eq 0; then lt_cv_apple_cc_single_mod=yes else cat conftest.err >&AS_MESSAGE_LOG_FD fi rm -rf libconftest.dylib* rm -f conftest.* fi]) AC_CACHE_CHECK([for -exported_symbols_list linker flag], [lt_cv_ld_exported_symbols_list], [lt_cv_ld_exported_symbols_list=no save_LDFLAGS=$LDFLAGS echo "_main" > conftest.sym LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], [lt_cv_ld_exported_symbols_list=yes], [lt_cv_ld_exported_symbols_list=no]) LDFLAGS="$save_LDFLAGS" ]) 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 cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD $AR cru 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() { 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 $_lt_result -eq 0 && $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*) # darwin 5.x on # if running on 10.5 or later, the deployment target defaults # to the OS version, if on x86, and 10.4, the deployment # target defaults to 10.4. Don't you love it? case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; 10.[[012]]*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; 10.*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; esac ;; esac if test "$lt_cv_apple_cc_single_mod" = "yes"; then _lt_dar_single_mod='$single_module' fi if test "$lt_cv_ld_exported_symbols_list" = "yes"; then _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' else _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' fi if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; 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 "$lt_cv_ld_force_load" = "yes"; 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*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac if test "$_lt_dar_can_shared" = "yes"; 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 "$lt_cv_apple_cc_single_mod" != "yes"; then _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}" _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}" fi ],[]) else _LT_TAGVAR(ld_shlibs, $1)=no fi ]) # _LT_SYS_MODULE_PATH_AIX([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 "${lt_cv_aix_libpath+set}" = 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 which will find a shell with a builtin # printf (which 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], [AC_MSG_CHECKING([for sysroot]) AC_ARG_WITH([sysroot], [ --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 "$GCC" = yes; then lt_sysroot=`$CC --print-sysroot 2>/dev/null` 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 in which 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 "x$enable_libtool_lock" != xno && enable_libtool_lock=yes # Some flags need to be propagated to the compiler or linker for good # libtool support. case $host in ia64-*-hpux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE="32" ;; *ELF-64*) HPUX_IA64_MODE="64" ;; esac fi rm -rf conftest* ;; *-*-irix6*) # Find out which ABI we are using. echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then if test "$lt_cv_prog_gnu_ld" = yes; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; *N32*) LD="${LD-ld} -melf32bmipn32" ;; *64-bit*) LD="${LD-ld} -melf64bmip" ;; esac else case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" ;; *N32*) LD="${LD-ld} -n32" ;; *64-bit*) LD="${LD-ld} -64" ;; esac fi fi rm -rf conftest* ;; x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) LD="${LD-ld} -m elf_i386" ;; ppc64-*linux*|powerpc64-*linux*) LD="${LD-ld} -m elf32ppclinux" ;; s390x-*linux*) LD="${LD-ld} -m elf_s390" ;; sparc64-*linux*) LD="${LD-ld} -m elf32_sparc" ;; esac ;; *64-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_x86_64_fbsd" ;; x86_64-*linux*) LD="${LD-ld} -m elf_x86_64" ;; ppc*-*linux*|powerpc*-*linux*) LD="${LD-ld} -m elf64ppc" ;; s390*-*linux*|s390*-*tpf*) LD="${LD-ld} -m elf64_s390" ;; sparc*-*linux*) LD="${LD-ld} -m elf64_sparc" ;; esac ;; esac fi rm -rf conftest* ;; *-*-sco3.2v5*) # On SCO OpenServer 5, we need -belf to get full-featured binaries. SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -belf" AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, [AC_LANG_PUSH(C) AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) AC_LANG_POP]) if test x"$lt_cv_cc_needs_belf" != x"yes"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf CFLAGS="$SAVE_CFLAGS" fi ;; *-*solaris*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) case $host in i?86-*-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} : ${AR_FLAGS=cru} _LT_DECL([], [AR], [1], [The archiver]) _LT_DECL([], [AR_FLAGS], [1], [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 "$ac_status" -eq 0; then # Ensure the archiver fails upon bogus file names. rm -f conftest.$ac_objext libconftest.a AC_TRY_EVAL([lt_ar_try]) if test "$ac_status" -ne 0; then lt_cv_ar_at_file=@ fi fi rm -f conftest.* libconftest.a ]) ]) if test "x$lt_cv_ar_at_file" = xno; 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_CHECK_TOOL(RANLIB, ranlib, :) test -z "$RANLIB" && RANLIB=: _LT_DECL([], [RANLIB], [1], [Commands used to install an old-style archive]) # Determine commands to create old-style static archives. old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' old_postinstall_cmds='chmod 644 $oldlib' old_postuninstall_cmds= if test -n "$RANLIB"; then case $host_os in openbsd*) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" ;; *) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" ;; esac old_archive_cmds="$old_archive_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" # 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 x"[$]$2" = xyes; then m4_if([$5], , :, [$5]) else m4_if([$6], , :, [$6]) fi ])# _LT_COMPILER_OPTION # Old name: AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], []) # _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, # [ACTION-SUCCESS], [ACTION-FAILURE]) # ---------------------------------------------------- # Check whether the given linker option works AC_DEFUN([_LT_LINKER_OPTION], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_SED])dnl AC_CACHE_CHECK([$1], [$2], [$2=no save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS $3" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then # The linker can only warn and ignore the option if not recognized # So say no if there are warnings if test -s conftest.err; then # Append any errors to the config.log. cat conftest.err 1>&AS_MESSAGE_LOG_FD $ECHO "$_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 x"[$]$2" = xyes; then m4_if([$4], , :, [$4]) else m4_if([$5], , :, [$5]) fi ])# _LT_LINKER_OPTION # Old name: AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], []) # LT_CMD_MAX_LEN #--------------- AC_DEFUN([LT_CMD_MAX_LEN], [AC_REQUIRE([AC_CANONICAL_HOST])dnl # find the maximum length of command line arguments AC_MSG_CHECKING([the maximum length of command line arguments]) AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl i=0 teststring="ABCD" case $build_os in msdosdjgpp*) # On DJGPP, this test can blow up pretty badly due to problems in libc # (any single argument exceeding 2000 bytes causes a buffer overrun # during glob expansion). Even if it were fixed, the result of this # check would be larger than it should be. lt_cv_sys_max_cmd_len=12288; # 12K is about right ;; gnu*) # Under GNU Hurd, this test is not required because there is # no limit to the length of command line arguments. # Libtool will interpret -1 as no limit whatsoever lt_cv_sys_max_cmd_len=-1; ;; cygwin* | mingw* | cegcc*) # On Win9x/ME, this test blows up -- it succeeds, but takes # about 5 minutes as the teststring grows exponentially. # Worse, since 9x/ME are not pre-emptively multitasking, # you end up with a "frozen" computer, even though with patience # the test eventually succeeds (with a max line length of 256k). # Instead, let's just punt: use the minimum linelength reported by # all of the supported platforms: 8192 (on NT/2K/XP). lt_cv_sys_max_cmd_len=8192; ;; 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; ;; netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` elif test -x /usr/sbin/sysctl; then lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` else lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs fi # And add a safety zone lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` ;; interix*) # We know the value 262144 and hardcode it with a safety zone (like BSD) lt_cv_sys_max_cmd_len=196608 ;; 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"; 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 $i != 17 # 1/2 MB should be enough do i=`expr $i + 1` teststring=$teststring$teststring done # Only check the string length outside the loop. lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` teststring= # Add a significant safety factor because C++ compilers can tack on # massive amounts of additional arguments before passing them to the # linker. It appears as though 1/2 is a usable value. lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` fi ;; esac ]) if test -n $lt_cv_sys_max_cmd_len ; then AC_MSG_RESULT($lt_cv_sys_max_cmd_len) else AC_MSG_RESULT(none) fi max_cmd_len=$lt_cv_sys_max_cmd_len _LT_DECL([], [max_cmd_len], [0], [What is the maximum length of a command?]) ])# LT_CMD_MAX_LEN # Old name: AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], []) # _LT_HEADER_DLFCN # ---------------- m4_defun([_LT_HEADER_DLFCN], [AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl ])# _LT_HEADER_DLFCN # _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) # ---------------------------------------------------------------- m4_defun([_LT_TRY_DLOPEN_SELF], [m4_require([_LT_HEADER_DLFCN])dnl if test "$cross_compiling" = yes; then : [$4] else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF [#line $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 -fvisbility=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 () __attribute__((visibility("default"))); #endif int fnord () { return 42; } int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); int status = $lt_dlunknown; if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; else { if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; 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 "x$enable_dlopen" != xyes; then enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown else lt_cv_dlopen=no lt_cv_dlopen_libs= case $host_os in beos*) lt_cv_dlopen="load_add_on" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ;; mingw* | pw32* | cegcc*) lt_cv_dlopen="LoadLibrary" lt_cv_dlopen_libs= ;; cygwin*) lt_cv_dlopen="dlopen" lt_cv_dlopen_libs= ;; darwin*) # if libdl is installed we need to link against it AC_CHECK_LIB([dl], [dlopen], [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[ lt_cv_dlopen="dyld" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ]) ;; *) AC_CHECK_FUNC([shl_load], [lt_cv_dlopen="shl_load"], [AC_CHECK_LIB([dld], [shl_load], [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"], [AC_CHECK_FUNC([dlopen], [lt_cv_dlopen="dlopen"], [AC_CHECK_LIB([dl], [dlopen], [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], [AC_CHECK_LIB([svld], [dlopen], [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], [AC_CHECK_LIB([dld], [dld_link], [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"]) ]) ]) ]) ]) ]) ;; esac if test "x$lt_cv_dlopen" != xno; then enable_dlopen=yes else enable_dlopen=no fi case $lt_cv_dlopen in dlopen) save_CPPFLAGS="$CPPFLAGS" test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" save_LDFLAGS="$LDFLAGS" wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" save_LIBS="$LIBS" LIBS="$lt_cv_dlopen_libs $LIBS" AC_CACHE_CHECK([whether a program can dlopen itself], lt_cv_dlopen_self, [dnl _LT_TRY_DLOPEN_SELF( lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) ]) if test "x$lt_cv_dlopen_self" = xyes; then wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" AC_CACHE_CHECK([whether a statically linked program can dlopen itself], lt_cv_dlopen_self_static, [dnl _LT_TRY_DLOPEN_SELF( lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) ]) fi CPPFLAGS="$save_CPPFLAGS" LDFLAGS="$save_LDFLAGS" LIBS="$save_LIBS" ;; esac case $lt_cv_dlopen_self in yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; *) enable_dlopen_self=unknown ;; esac case $lt_cv_dlopen_self_static in yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; *) enable_dlopen_self_static=unknown ;; esac fi _LT_DECL([dlopen_support], [enable_dlopen], [0], [Whether dlopen is supported]) _LT_DECL([dlopen_self], [enable_dlopen_self], [0], [Whether dlopen of programs is supported]) _LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0], [Whether dlopen of statically linked programs is supported]) ])# LT_SYS_DLOPEN_SELF # Old name: AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) # _LT_COMPILER_C_O([TAGNAME]) # --------------------------- # Check to see if options -c and -o are simultaneously supported by compiler. # This macro does not hard code the compiler like AC_PROG_CC_C_O. m4_defun([_LT_COMPILER_C_O], [m4_require([_LT_DECL_SED])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_TAG_COMPILER])dnl AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)], [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no $RM -r conftest 2>/dev/null mkdir conftest cd conftest mkdir out echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-o out/conftest2.$ac_objext" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:$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 "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user AC_MSG_CHECKING([if we can lock with hard links]) hard_links=yes $RM conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no AC_MSG_RESULT([$hard_links]) if test "$hard_links" = no; then AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe]) need_locks=warn fi else need_locks=no fi _LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?]) ])# _LT_COMPILER_FILE_LOCKS # _LT_CHECK_OBJDIR # ---------------- m4_defun([_LT_CHECK_OBJDIR], [AC_CACHE_CHECK([for objdir], [lt_cv_objdir], [rm -f .libs 2>/dev/null mkdir .libs 2>/dev/null if test -d .libs; then lt_cv_objdir=.libs else # MS-DOS does not allow filenames that begin with a dot. lt_cv_objdir=_libs fi rmdir .libs 2>/dev/null]) objdir=$lt_cv_objdir _LT_DECL([], [objdir], [0], [The name of the directory that contains temporary libtool files])dnl m4_pattern_allow([LT_OBJDIR])dnl AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/", [Define to the sub-directory in which libtool stores uninstalled libraries.]) ])# _LT_CHECK_OBJDIR # _LT_LINKER_HARDCODE_LIBPATH([TAGNAME]) # -------------------------------------- # Check hardcoding attributes. m4_defun([_LT_LINKER_HARDCODE_LIBPATH], [AC_MSG_CHECKING([how to hardcode library paths into programs]) _LT_TAGVAR(hardcode_action, $1)= if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || test -n "$_LT_TAGVAR(runpath_var, $1)" || test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then # We can hardcode non-existent directories. if test "$_LT_TAGVAR(hardcode_direct, $1)" != no && # If the only mechanism to avoid hardcoding is shlibpath_var, we # have to relink, otherwise we might link with an installed library # when we should be linking with a yet-to-be-installed one ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no && test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then # Linking always hardcodes the temporary library directory. _LT_TAGVAR(hardcode_action, $1)=relink else # We can link without hardcoding, and we can hardcode nonexisting dirs. _LT_TAGVAR(hardcode_action, $1)=immediate fi else # We cannot hardcode anything, or else we can only hardcode existing # directories. _LT_TAGVAR(hardcode_action, $1)=unsupported fi AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) if test "$_LT_TAGVAR(hardcode_action, $1)" = relink || test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then # Fast installation is not supported enable_fast_install=no elif test "$shlibpath_overrides_runpath" = yes || test "$enable_shared" = no; then # Fast installation is not necessary enable_fast_install=needless fi _LT_TAGDECL([], [hardcode_action], [0], [How to hardcode a shared library path into an executable]) ])# _LT_LINKER_HARDCODE_LIBPATH # _LT_CMD_STRIPLIB # ---------------- m4_defun([_LT_CMD_STRIPLIB], [m4_require([_LT_DECL_EGREP]) striplib= old_striplib= AC_MSG_CHECKING([whether stripping libraries is possible]) if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" test -z "$striplib" && striplib="$STRIP --strip-unneeded" AC_MSG_RESULT([yes]) else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) if test -n "$STRIP" ; then striplib="$STRIP -x" old_striplib="$STRIP -S" AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) fi ;; *) AC_MSG_RESULT([no]) ;; esac fi _LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) _LT_DECL([], [striplib], [1]) ])# _LT_CMD_STRIPLIB # _LT_SYS_DYNAMIC_LINKER([TAG]) # ----------------------------- # PORTME Fill in your ld.so characteristics m4_defun([_LT_SYS_DYNAMIC_LINKER], [AC_REQUIRE([AC_CANONICAL_HOST])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_OBJDUMP])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_CHECK_SHELL_FEATURES])dnl AC_MSG_CHECKING([dynamic linker characteristics]) m4_if([$1], [], [ if test "$GCC" = yes; then case $host_os in darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; *) lt_awk_arg="/^libraries:/" ;; esac case $host_os in mingw* | 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` for lt_sys_path in $lt_search_path_spec; do if test -d "$lt_sys_path/$lt_multi_os_dir"; then lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir" else test -d "$lt_sys_path" && \ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" fi done lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' BEGIN {RS=" "; FS="/|\n";} { lt_foo=""; lt_count=0; for (lt_i = NF; lt_i > 0; lt_i--) { if ($lt_i != "" && $lt_i != ".") { if ($lt_i == "..") { lt_count++; } else { if (lt_count == 0) { lt_foo="/" $lt_i lt_foo; } else { lt_count--; } } } } if (lt_foo != "") { lt_freq[[lt_foo]]++; } if (lt_freq[[lt_foo]] == 1) { print lt_foo; } }'` # AWK program above erroneously prepends '/' to C:/dos/paths # for these hosts. case $host_os in mingw* | 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 "$host_cpu" = ia64; then # AIX 5 supports IA64 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH else # With GCC up to 2.95.x, collect2 would create an import file # for dependence libraries. The import file would start with # the line `#! .'. This would cause the generated library to # depend on `.', always an invalid library. This was fixed in # development snapshots of GCC prior to 3.0. case $host_os in aix4 | aix4.[[01]] | aix4.[[01]].*) if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' echo ' yes ' echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then : else can_build_shared=no fi ;; esac # AIX (on Power*) has no versioning support, so currently we can not hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. if test "$aix_use_runtimelinking" = yes; then # If using run time linking (on AIX 4.2 or later) use lib.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}' else # We preserve .a as extension for shared libraries through AIX4.2 # and later when we are not doing run time linking. library_names_spec='${libname}${release}.a $libname.a' soname_spec='${libname}${release}${shared_ext}$major' fi shlibpath_var=LIBPATH fi ;; amigaos*) case $host_cpu in powerpc) # Since July 2007 AmigaOS4 officially supports .so libraries. # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' ;; m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; beos*) library_names_spec='${libname}${shared_ext}' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH ;; bsdi[[45]]*) version_type=linux # 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* | 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 postinstall_cmds='base_file=`basename \${file}`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ chmod a+x \$dldir/$dlname~ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; fi' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' m4_if([$1], [],[ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) ;; mingw* | 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*) # Native MSVC 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*) 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 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*) # 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} $libname${shared_ext}' need_version=no need_lib_prefix=no ;; freebsd-*) library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' need_version=yes ;; esac shlibpath_var=LD_LIBRARY_PATH case $host_os in freebsd2.*) shlibpath_overrides_runpath=yes ;; freebsd3.[[01]]* | freebsdelf3.[[01]]*) shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; *) # from 4.6 on, and DragonFly shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; esac ;; gnu*) version_type=linux # 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 hardcode_into_libs=yes ;; 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=yes sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' hardcode_into_libs=yes ;; hpux9* | hpux10* | hpux11*) # Give a soname corresponding to the major version so that dld.sl refuses to # link against other versions. version_type=sunos need_lib_prefix=no need_version=no case $host_cpu in ia64*) shrext_cmds='.so' hardcode_into_libs=yes dynamic_linker="$host_os dld.so" shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' if test "X$HPUX_IA64_MODE" = X32; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" fi sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; hppa*64*) shrext_cmds='.sl' hardcode_into_libs=yes dynamic_linker="$host_os dld.sl" shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; *) shrext_cmds='.sl' dynamic_linker="$host_os dld.sl" shlibpath_var=SHLIB_PATH shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' ;; esac # HP-UX runs *really* slowly unless shared libraries are mode 555, ... postinstall_cmds='chmod 555 $lib' # 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 "$lt_cv_prog_gnu_ld" = yes; 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 ;; # This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-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" # Append ld.so.conf contents to the search path if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;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' ;; netbsd*) version_type=sunos need_lib_prefix=no need_version=no if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' dynamic_linker='NetBSD ld.elf_so' fi shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; newsos6) version_type=linux # 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 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. case $host_os in openbsd3.3 | openbsd3.3.*) need_version=yes ;; *) need_version=no ;; esac library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then case $host_os in openbsd2.[[89]] | openbsd2.[[89]].*) shlibpath_overrides_runpath=no ;; *) shlibpath_overrides_runpath=yes ;; esac else shlibpath_overrides_runpath=yes fi ;; os2*) libname_spec='$name' shrext_cmds=".dll" need_lib_prefix=no library_names_spec='$libname${shared_ext} $libname.a' dynamic_linker='OS/2 ld.exe' shlibpath_var=LIBPATH ;; osf3* | osf4* | osf5*) version_type=osf need_lib_prefix=no need_version=no soname_spec='${libname}${release}${shared_ext}$major' library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" ;; rdos*) dynamic_linker=no ;; solaris*) version_type=linux # 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 "$with_gnu_ld" = yes; 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=freebsd-elf need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes if test "$with_gnu_ld" = yes; then sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' else sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' case $host_os in sco3.2v5*) sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" ;; esac fi sys_lib_dlsearch_path_spec='/usr/lib' ;; tpf*) # TPF is a cross-target only. Preferred cross-host = GNU/Linux. version_type=linux # 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 ;; *) dynamic_linker=no ;; esac AC_MSG_RESULT([$dynamic_linker]) test "$dynamic_linker" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" if test "$GCC" = yes; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" fi if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" fi _LT_DECL([], [variables_saved_for_relink], [1], [Variables whose values should be saved in libtool wrapper scripts and restored at link time]) _LT_DECL([], [need_lib_prefix], [0], [Do we need the "lib" prefix for modules?]) _LT_DECL([], [need_version], [0], [Do we need a version for libraries?]) _LT_DECL([], [version_type], [0], [Library versioning type]) _LT_DECL([], [runpath_var], [0], [Shared library runtime path variable]) _LT_DECL([], [shlibpath_var], [0],[Shared library path variable]) _LT_DECL([], [shlibpath_overrides_runpath], [0], [Is shlibpath searched before the hard-coded library search path?]) _LT_DECL([], [libname_spec], [1], [Format of library name prefix]) _LT_DECL([], [library_names_spec], [1], [[List of archive names. First name is the real one, the rest are links. The last name is the one that the linker finds with -lNAME]]) _LT_DECL([], [soname_spec], [1], [[The coded name of the library, if different from the real name]]) _LT_DECL([], [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], [2], [Run-time system search path for libraries]) ])# _LT_SYS_DYNAMIC_LINKER # _LT_PATH_TOOL_PREFIX(TOOL) # -------------------------- # find a file program which can recognize shared library AC_DEFUN([_LT_PATH_TOOL_PREFIX], [m4_require([_LT_DECL_EGREP])dnl AC_MSG_CHECKING([for $1]) AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, [case $MAGIC_CMD in [[\\/*] | ?:[\\/]*]) lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. ;; *) lt_save_MAGIC_CMD="$MAGIC_CMD" lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR dnl $ac_dummy forces splitting on constant user-supplied paths. dnl POSIX.2 word splitting is done only on the output of word expansions, dnl not every word. This closes a longstanding sh security hole. ac_dummy="m4_if([$2], , $PATH, [$2])" for ac_dir in $ac_dummy; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$1; then lt_cv_path_MAGIC_CMD="$ac_dir/$1" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : else cat <<_LT_EOF 1>&2 *** Warning: the command libtool uses to detect shared libraries, *** $file_magic_cmd, produces output that libtool cannot recognize. *** The result is that libtool may fail to recognize shared libraries *** as such. This will affect the creation of libtool libraries that *** depend on shared libraries, but programs linked with such libtool *** libraries will work regardless of this problem. Nevertheless, you *** may want to report the problem to your system manager and/or to *** bug-libtool@gnu.org _LT_EOF fi ;; esac fi break fi done IFS="$lt_save_ifs" MAGIC_CMD="$lt_save_MAGIC_CMD" ;; esac]) MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if test -n "$MAGIC_CMD"; then AC_MSG_RESULT($MAGIC_CMD) else AC_MSG_RESULT(no) fi _LT_DECL([], [MAGIC_CMD], [0], [Used to examine libraries when file_magic_cmd begins with "file"])dnl ])# _LT_PATH_TOOL_PREFIX # Old name: AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) # _LT_PATH_MAGIC # -------------- # find a file program which can recognize a shared library m4_defun([_LT_PATH_MAGIC], [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) else MAGIC_CMD=: fi fi ])# _LT_PATH_MAGIC # LT_PATH_LD # ---------- # find the pathname to the GNU or non-GNU linker AC_DEFUN([LT_PATH_LD], [AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_DECL_EGREP])dnl 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 "$withval" = no || with_gnu_ld=yes], [with_gnu_ld=no])dnl ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. AC_MSG_CHECKING([for ld used by $CC]) case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; *) ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; esac case $ac_prog in # Accept absolute paths. [[\\/]]* | ?:[[\\/]]*) re_direlt='/[[^/]][[^/]]*/\.\./' # Canonicalize the pathname of ld ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` done test -z "$LD" && LD="$ac_prog" ;; "") # If it fails, then pretend we aren't using GCC. ac_prog=ld ;; *) # If it is relative, then search for the first ld in PATH. with_gnu_ld=unknown ;; esac elif test "$with_gnu_ld" = yes; then AC_MSG_CHECKING([for GNU ld]) else AC_MSG_CHECKING([for non-GNU ld]) fi AC_CACHE_VAL(lt_cv_path_LD, [if test -z "$LD"; then lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then lt_cv_path_LD="$ac_dir/$ac_prog" # Check to see if the program is GNU ld. I'd rather use --version, # but apparently some variants of GNU ld only accept -v. # Break only if it was the GNU/non-GNU ld that we prefer. case `"$lt_cv_path_LD" -v 2>&1 &1 /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)' lt_cv_file_magic_cmd='$OBJDUMP -f' fi ;; cegcc*) # use the weaker test based on 'objdump'. See mingw*. lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' lt_cv_file_magic_cmd='$OBJDUMP -f' ;; darwin* | rhapsody*) lt_cv_deplibs_check_method=pass_all ;; freebsd* | dragonfly*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then case $host_cpu in i*86 ) # Not sure whether the presence of OpenBSD here was a mistake. # Let's accept both of them until this is cleared up. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac else lt_cv_deplibs_check_method=pass_all fi ;; gnu*) lt_cv_deplibs_check_method=pass_all ;; haiku*) lt_cv_deplibs_check_method=pass_all ;; hpux10.20* | hpux11*) lt_cv_file_magic_cmd=/usr/bin/file case $host_cpu in ia64*) lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so ;; hppa*64*) [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-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) lt_cv_deplibs_check_method=pass_all ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' fi ;; newos6*) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=/usr/lib/libnls.so ;; *nto* | *qnx*) lt_cv_deplibs_check_method=pass_all ;; openbsd*) if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' fi ;; osf3* | osf4* | osf5*) lt_cv_deplibs_check_method=pass_all ;; rdos*) lt_cv_deplibs_check_method=pass_all ;; solaris*) lt_cv_deplibs_check_method=pass_all ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) lt_cv_deplibs_check_method=pass_all ;; sysv4 | sysv4.3*) case $host_vendor in motorola) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` ;; ncr) lt_cv_deplibs_check_method=pass_all ;; sequent) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;; sni) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" lt_cv_file_magic_test_file=/lib/libc.so ;; siemens) lt_cv_deplibs_check_method=pass_all ;; pc) lt_cv_deplibs_check_method=pass_all ;; esac ;; tpf*) lt_cv_deplibs_check_method=pass_all ;; esac ]) file_magic_glob= want_nocaseglob=no if test "$build" = "$host"; then case $host_os in mingw* | 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 case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in */dev/null* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break ;; *) case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break ;; *) lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but continue # so that we can try to find one that supports BSD flags ;; esac ;; esac fi done IFS="$lt_save_ifs" done : ${lt_cv_path_NM=no} fi]) if test "$lt_cv_path_NM" != "no"; then NM="$lt_cv_path_NM" else # Didn't find any BSD compatible name lister, look for dumpbin. if test -n "$DUMPBIN"; then : # Let the user override the test. else AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in *COFF*) DUMPBIN="$DUMPBIN -symbols" ;; *) 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* | pw32* | cegcc*) # two different shell functions defined in ltmain.sh # decide which 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_mainfest_tool], [lt_cv_path_mainfest_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_mainfest_tool=yes fi rm -f conftest*]) if test "x$lt_cv_path_mainfest_tool" != xyes; then MANIFEST_TOOL=: fi _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl ])# _LT_PATH_MANIFEST_TOOL # 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* | *-*-pw32* | *-*-darwin*) # These system don't have libm, or don't need it ;; *-ncr-sysv4.3*) AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") ;; *) AC_CHECK_LIB(m, cos, LIBM="-lm") ;; esac AC_SUBST([LIBM]) ])# LT_LIB_M # Old name: AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_CHECK_LIBM], []) # _LT_COMPILER_NO_RTTI([TAGNAME]) # ------------------------------- m4_defun([_LT_COMPILER_NO_RTTI], [m4_require([_LT_TAG_COMPILER])dnl _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= if test "$GCC" = yes; then 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* | pw32* | cegcc*) symcode='[[ABCDGISTW]]' ;; hpux*) if test "$host_cpu" = ia64; then symcode='[[ABCDEGRST]]' fi ;; irix* | nonstopux*) symcode='[[BCDEGRST]]' ;; osf*) symcode='[[BCDEGQRST]]' ;; solaris*) symcode='[[BDRT]]' ;; sco3.2v5*) symcode='[[DT]]' ;; sysv4.2uw2*) symcode='[[DT]]' ;; sysv5* | sco5v6* | unixware* | OpenUNIX*) symcode='[[ABDT]]' ;; sysv4) symcode='[[DFNSTU]]' ;; esac # If we're using GNU nm, then use its standard symbol codes. case `$NM -V 2>&1` in *GNU* | *'with BFD'*) symcode='[[ABCDGIRSTW]]' ;; esac # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'" lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'" # Handle CRLF in mingw tool chain opt_cr= case $build_os in mingw*) opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp ;; esac # Try without a prefix underscore, then with it. for ac_symprfx in "" "_"; do # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. symxfrm="\\1 $ac_symprfx\\2 \\2" # Write the raw and C identifiers. if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Fake it for dumpbin and say T for any non-static function # and D for any global variable. # Also find C++ and __fastcall symbols from MSVC++, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK ['"\ " {last_section=section; section=\$ 3};"\ " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ " {if(hide[section]) next};"\ " {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ " {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ " s[1]~/^[@?]/{print s[1], s[1]; next};"\ " s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx]" else lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi 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(){nm_test_var='a';nm_test_func();return(0);} _LT_EOF if AC_TRY_EVAL(ac_compile); then # Now try to grab the symbols. nlist=conftest.nm if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then mv -f "$nlist"T "$nlist" else rm -f "$nlist"T fi # Make sure that we snagged all the symbols we need. if $GREP ' nm_test_var$' "$nlist" >/dev/null; then if $GREP ' nm_test_func$' "$nlist" >/dev/null; then cat <<_LT_EOF > conftest.$ac_ext /* 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 con'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* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext cat <<\_LT_EOF >> conftest.$ac_ext {0, (void *) 0} }; /* This works around a problem in FreeBSD linker */ #ifdef FREEBSD_WORKAROUND static const void *lt_preloaded_setup() { return lt__PROGRAM__LTX_preloaded_symbols; } #endif #ifdef __cplusplus } #endif _LT_EOF # Now try linking the two files. mv conftest.$ac_objext conftstm.$ac_objext lt_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 "$pipe_works" = yes; then break else lt_cv_sys_global_symbol_pipe= fi done ]) if test -z "$lt_cv_sys_global_symbol_pipe"; then lt_cv_sys_global_symbol_to_cdecl= fi if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then AC_MSG_RESULT(failed) else AC_MSG_RESULT(ok) fi # 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_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_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 "$GXX" = yes; then _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' case $host_os in aix*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but # adding the `-m68020' flag to GCC prevents building anything better, # like `-m68040'. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | os2* | pw32* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' ;; *djgpp*) # DJGPP does not support shared libraries at all _LT_TAGVAR(lt_prog_compiler_pic, $1)= ;; 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 "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' else _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' fi ;; chorus*) case $cc_basename in cxch68*) # Green Hills C++ Compiler # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" ;; esac ;; mingw* | cygwin* | os2* | pw32* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). 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*) # FreeBSD uses GNU C++ ;; hpux9* | hpux10* | hpux11*) case $cc_basename in CC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' if test "$host_cpu" != ia64; then _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' fi ;; aCC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' case $host_cpu in hppa*64*|ia64*) # +Z the default ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' ;; esac ;; *) ;; esac ;; interix*) # This is c89, which is MS Visual C++ (no shared libs) # Anyone wants to do a port? ;; irix5* | irix6* | nonstopux*) case $cc_basename in CC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' # CC pic flag -KPIC is the default. ;; *) ;; esac ;; linux* | k*bsd*-gnu | kopensolaris*-gnu) case $cc_basename in KCC*) # KAI C++ Compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; ecpc* ) # old Intel C++ for x86_64 which still supported -KPIC. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; icpc* ) # Intel C++, used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; pgCC* | pgcpp*) # Portland Group C++ compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; cxx*) # Compaq C++ # Make sure the PIC flag is empty. It appears that all Alpha # Linux and Compaq Tru64 Unix objects are PIC. _LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; xlc* | xlC* | 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*) ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; osf3* | osf4* | osf5*) case $cc_basename in KCC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' ;; RCC*) # Rational C++ 2.4.1 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' ;; cxx*) # Digital/Compaq C++ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # Make sure the PIC flag is empty. It appears that all Alpha # Linux and Compaq Tru64 Unix objects are PIC. _LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; *) ;; esac ;; psos*) ;; solaris*) case $cc_basename in CC* | 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 "$GCC" = yes; then _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' case $host_os in aix*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but # adding the `-m68020' flag to GCC prevents building anything better, # like `-m68040'. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' ;; 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 "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' else _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' fi ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) ;; hpux9* | hpux10* | hpux11*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but # not for PA HP-UX. case $host_cpu in hppa*64*|ia64*) # +Z the default ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' ;; esac # Is there a better lt_prog_compiler_static that works with the bundled CC? _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' ;; irix5* | irix6* | nonstopux*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # PIC (with -KPIC) is the default. _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; linux* | k*bsd*-gnu | kopensolaris*-gnu) case $cc_basename in # old Intel for x86_64 which still supported -KPIC. ecc*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; # icc used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. icc* | ifort*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; # Lahey Fortran 8.1. lf95*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared' _LT_TAGVAR(lt_prog_compiler_static, $1)='--static' ;; 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' ;; 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' ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; osf3* | osf4* | osf5*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # All OSF/1 code is PIC. _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; rdos*) _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; solaris*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' case $cc_basename in f77* | f90* | f95* | 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 which do not support PIC, -DPIC is meaningless: *djgpp*) _LT_TAGVAR(lt_prog_compiler_pic, $1)= ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])" ;; esac AC_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 AIX nm, but means don't demangle with GNU nm # Also, AIX nm treats weak defined symbols like other global defined # symbols, whereas GNU nm marks them as "W". 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) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' else _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' fi ;; pw32*) _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" ;; cygwin* | mingw* | cegcc*) case $cc_basename in cl*) _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* | 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 _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 "$with_gnu_ld" = yes; 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 "$lt_use_gnu_ld_interface" = yes; then # If archive_cmds runs LD, not CC, wlarc should be empty wlarc='${wl}' # Set some defaults for GNU ld with shared library support. These # are reset later if shared libraries are not supported. Putting them # here allows them to be overridden if necessary. runpath_var=LD_RUN_PATH _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' # ancient GNU ld didn't support --whole-archive et. al. if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' else _LT_TAGVAR(whole_archive_flag_spec, $1)= fi supports_anon_versioning=no case `$LD -v 2>&1` in *GNU\ gold*) supports_anon_versioning=yes ;; *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... *\ 2.11.*) ;; # other 2.11 versions *) supports_anon_versioning=yes ;; esac # See if GNU ld supports shared libraries. case $host_os in aix[[3-9]]*) # On AIX/PPC, the GNU linker is very broken if test "$host_cpu" != ia64; then _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 *** Warning: the GNU linker, at least up to release 2.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* | 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'] if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' # If the export-symbols file already is a .def file (1st line # is EXPORTS), use it as is; otherwise, prepend... _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then cp $export_symbols $output_objdir/$soname.def; else echo EXPORTS > $output_objdir/$soname.def; cat $export_symbols >> $output_objdir/$soname.def; fi~ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; haiku*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(link_all_deplibs, $1)=yes ;; interix[[3-9]]*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) tmp_diet=no if test "$host_os" = linux-dietlibc; then case $cc_basename in diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) esac fi if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ && test "$tmp_diet" = no then tmp_addflag=' $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' ;; 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 "x$supports_anon_versioning" = xyes; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' fi case $cc_basename in xlf* | 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 "x$supports_anon_versioning" = xyes; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi ;; esac else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; netbsd*) 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 can not *** reliably create shared libraries on SCO systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.16.91.0.3 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF ;; *) # For security reasons, it is highly recommended that you always # use absolute paths for naming shared libraries, and exclude the # DT_RUNPATH tag from executables and libraries. But doing so # requires that you compile everything twice, which is a pain. if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; sunos4*) _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' wlarc= _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $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 "$_LT_TAGVAR(ld_shlibs, $1)" = no; then runpath_var= _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= fi else # PORTME fill in a description of your system's linker (not GNU ld) case $host_os in aix3*) _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=yes _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' # Note: this linker hardcodes the directories in LIBPATH if there # are no directories specified by -L. _LT_TAGVAR(hardcode_minus_L, $1)=yes if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then # Neither direct hardcoding nor static linking is supported with a # broken collect2. _LT_TAGVAR(hardcode_direct, $1)=unsupported fi ;; aix[[4-9]]*) if test "$host_cpu" = ia64; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' no_entry_flag="" else # If we're using GNU nm, then we don't want the "-C" option. # -C means demangle to AIX nm, but means don't demangle with GNU nm # Also, AIX nm treats weak defined symbols like other global # defined symbols, whereas GNU nm marks them as "W". 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) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' else _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # need to do runtime linking. case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) for ld_flag in $LDFLAGS; do if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then aix_use_runtimelinking=yes break fi done ;; esac exp_sym_flag='-bexport' no_entry_flag='-bnoentry' fi # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. _LT_TAGVAR(archive_cmds, $1)='' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' if test "$GCC" = yes; then case $host_os in aix4.[[012]]|aix4.[[012]].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ collect2name=`${CC} -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then # We have reworked collect2 : else # We have old collect2 _LT_TAGVAR(hardcode_direct, $1)=unsupported # It fails to find uninstalled libraries when the uninstalled # path is not listed in the libpath. Setting hardcode_minus_L # to unsupported forces relinking _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)= fi ;; esac shared_flag='-shared' if test "$aix_use_runtimelinking" = yes; then shared_flag="$shared_flag "'${wl}-G' fi else # not using gcc if test "$host_cpu" = ia64; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else if test "$aix_use_runtimelinking" = yes; then shared_flag='${wl}-G' else shared_flag='${wl}-bM:SRE' fi fi fi _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to export. _LT_TAGVAR(always_export_symbols, $1)=yes if test "$aix_use_runtimelinking" = yes; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. _LT_TAGVAR(allow_undefined_flag, $1)='-berok' # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX([$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 "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" else if test "$host_cpu" = ia64; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX([$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 "$with_gnu_ld" = yes; 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 # This is similar to how AIX traditionally builds its shared libraries. _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' fi fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='' ;; m68k) _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes ;; esac ;; bsdi[[45]]*) _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic ;; cygwin* | mingw* | pw32* | cegcc*) # When not using gcc, we currently assume that we are using # Microsoft Visual C++. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. case $cc_basename in cl*) # Native MSVC _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~linknames=' _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; else sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $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 _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 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*) _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 "$GCC" = yes; 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 $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' else _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_direct, $1)=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' ;; hpux10*) if test "$GCC" = yes && test "$with_gnu_ld" = no; 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 "$with_gnu_ld" = no; 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 "$GCC" = yes && test "$with_gnu_ld" = no; then case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $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 "$with_gnu_ld" = no; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: case $host_cpu in hppa*64*|ia64*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes ;; esac fi ;; irix5* | irix6* | nonstopux*) if test "$GCC" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $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 "$lt_cv_irix_exported_symbol" = yes; 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 ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; newsos6) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *nto* | *qnx*) ;; openbsd*) if test -f /usr/libexec/ld.so; then _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=yes if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' else case $host_os in openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' ;; esac fi else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; os2*) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' ;; osf3*) if test "$GCC" = yes; then _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && 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 "$GCC" = yes; 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)=: ;; solaris*) _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' if test "$GCC" = yes; 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 "$GCC" = yes; then _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' else _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' fi ;; esac _LT_TAGVAR(link_all_deplibs, $1)=yes ;; sunos4*) if test "x$host_vendor" = xsequent; then # Use $CC to link under sequent, because it throws in some extra .o # files that make .init and .fini sections work. _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; sysv4) case $host_vendor in sni) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true??? ;; siemens) ## LD is ld it makes a PLAMLIB ## CC just makes a GrossModule. _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' _LT_TAGVAR(hardcode_direct, $1)=no ;; motorola) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie ;; esac runpath_var='LD_RUN_PATH' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; sysv4.3*) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' ;; sysv4*MP*) if test -d /usr/nec; then _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var=LD_RUN_PATH hardcode_runpath_var=yes _LT_TAGVAR(ld_shlibs, $1)=yes fi ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var='LD_RUN_PATH' if test "$GCC" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; sysv5* | sco3.2v5* | sco5v6*) # Note: We can NOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' runpath_var='LD_RUN_PATH' if test "$GCC" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; uts4*) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) _LT_TAGVAR(ld_shlibs, $1)=no ;; esac if test x$host_vendor = xsni; then case $host in sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym' ;; esac fi fi ]) AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl _LT_DECL([], [extract_expsyms_cmds], [2], [The commands to extract the exported symbol list from a shared archive]) # # Do we need to explicitly link libc? # case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in x|xyes) # Assume -lc should be added _LT_TAGVAR(archive_cmds_need_lc, $1)=yes if test "$enable_shared" = yes && test "$GCC" = yes; then case $_LT_TAGVAR(archive_cmds, $1) in *'~'*) # FIXME: we may have to deal with multi-command sequences. ;; '$CC '*) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. AC_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(){return(0);}' _LT_TAG_COMPILER # Save the default compiler, since it gets overwritten when the other # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. compiler_DEFAULT=$CC # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... if test -n "$compiler"; then _LT_COMPILER_NO_RTTI($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) LT_SYS_DLOPEN_SELF _LT_CMD_STRIPLIB # Report which library types will actually be built AC_MSG_CHECKING([if libtool supports shared libraries]) AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test "$enable_shared" = yes && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then test "$enable_shared" = yes && enable_static=no fi ;; esac AC_MSG_RESULT([$enable_shared]) AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_CONFIG($1) fi AC_LANG_POP CC="$lt_save_CC" ])# _LT_LANG_C_CONFIG # _LT_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 "X$CXX" != "Xno" && ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || (test "X$CXX" != "Xg++"))) ; then AC_PROG_CXXCPP else _lt_caught_CXX_error=yes fi 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 "$_lt_caught_CXX_error" != yes; then # Code to be used in simple compile tests lt_simple_compile_test_code="int some_variable = 0;" # Code to be used in simple link tests lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }' # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC=$CC lt_save_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 "$GXX" = yes; then _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' else _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= fi if test "$GXX" = yes; then # Set up default GNU C++ configuration LT_PATH_LD # Check if GNU C++ uses GNU ld as the underlying linker, since the # archiving commands below assume that GNU ld is being used. if test "$with_gnu_ld" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC $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 eval "`$CC -print-prog-name=ld` --help 2>&1" | $GREP 'no-whole-archive' > /dev/null; then _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' else _LT_TAGVAR(whole_archive_flag_spec, $1)= fi else with_gnu_ld=no wlarc= # A generic and very simple default shared library creation # command for GNU C++ for the case where it uses the native # linker, instead of GNU ld. If possible, this setting should # overridden to take advantage of the native linker features on # the platform it is being used on. _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' fi # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -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 "$host_cpu" = ia64; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' no_entry_flag="" else aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # need to do runtime linking. case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) for ld_flag in $LDFLAGS; do case $ld_flag in *-brtl*) aix_use_runtimelinking=yes break ;; esac done ;; esac exp_sym_flag='-bexport' no_entry_flag='-bnoentry' fi # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. _LT_TAGVAR(archive_cmds, $1)='' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' if test "$GXX" = yes; then case $host_os in aix4.[[012]]|aix4.[[012]].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ collect2name=`${CC} -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then # We have reworked collect2 : else # We have old collect2 _LT_TAGVAR(hardcode_direct, $1)=unsupported # It fails to find uninstalled libraries when the uninstalled # path is not listed in the libpath. Setting hardcode_minus_L # to unsupported forces relinking _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)= fi esac shared_flag='-shared' if test "$aix_use_runtimelinking" = yes; then shared_flag="$shared_flag "'${wl}-G' fi else # not using gcc if test "$host_cpu" = ia64; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else if test "$aix_use_runtimelinking" = yes; then shared_flag='${wl}-G' else shared_flag='${wl}-bM:SRE' fi fi fi _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to # export. _LT_TAGVAR(always_export_symbols, $1)=yes if test "$aix_use_runtimelinking" = yes; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. _LT_TAGVAR(allow_undefined_flag, $1)='-berok' # Determine the default libpath from the value encoded in an empty # executable. _LT_SYS_MODULE_PATH_AIX([$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 "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" else if test "$host_cpu" = ia64; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX([$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 "$with_gnu_ld" = yes; 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 # This is similar to how AIX traditionally builds its shared # libraries. _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' fi fi ;; beos*) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Joseph Beckenbach says some releases of gcc # support --undefined. This deserves some investigation. FIXME _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; chorus*) case $cc_basename in *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; cygwin* | mingw* | pw32* | cegcc*) case $GXX,$cc_basename in ,cl* | no,cl*) # Native MSVC # 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~linknames=' _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; else $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $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 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' # If the export-symbols file already is a .def file (1st line # is EXPORTS), use it as is; otherwise, prepend... _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then cp $export_symbols $output_objdir/$soname.def; else echo EXPORTS > $output_objdir/$soname.def; cat $export_symbols >> $output_objdir/$soname.def; fi~ $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; darwin* | rhapsody*) _LT_DARWIN_LINKER_FEATURES($1) ;; dgux*) case $cc_basename in ec++*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; ghcx*) # Green Hills C++ Compiler # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; 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*) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions _LT_TAGVAR(ld_shlibs, $1)=yes ;; gnu*) ;; haiku*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(link_all_deplibs, $1)=yes ;; hpux9*) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, # but as the default # location of the library. case $cc_basename in CC*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; aCC*) _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test "$GXX" = yes; 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 $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' else # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; hpux10*|hpux11*) if test $with_gnu_ld = no; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: case $host_cpu in hppa*64*|ia64*) ;; *) _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' ;; esac fi case $host_cpu in hppa*64*|ia64*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, # but as the default # location of the library. ;; esac case $cc_basename in CC*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; aCC*) case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; esac # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test "$GXX" = yes; then if test $with_gnu_ld = no; then case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $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 "$GXX" = yes; then if test "$with_gnu_ld" = no; 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) 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 "x$supports_anon_versioning" = xyes; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' fi ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; 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 ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' wlarc= _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no fi # Workaround some broken pre-1.5 toolchains output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' ;; *nto* | *qnx*) _LT_TAGVAR(ld_shlibs, $1)=yes ;; openbsd2*) # C++ shared libraries are fairly broken _LT_TAGVAR(ld_shlibs, $1)=no ;; openbsd*) if test -f /usr/libexec/ld.so; then _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' fi output_verbose_link_cmd=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 "$GXX" = yes && test "$with_gnu_ld" = no; then _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' case $host in osf3*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && 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 ;; 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 "$GXX" = yes && test "$with_gnu_ld" = no; then _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' if $CC --version | $GREP -v '^2\.7' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -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 $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -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 can NOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' runpath_var='LD_RUN_PATH' case $cc_basename in CC*) _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(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 "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no _LT_TAGVAR(GCC, $1)="$GXX" _LT_TAGVAR(LD, $1)="$LD" ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... _LT_SYS_HIDDEN_LIBDEPS($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi # test -n "$compiler" CC=$lt_save_CC 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 "$_lt_caught_CXX_error" != yes 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 ${2} in .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;; *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; 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}" and the path. # Remove the space. if test $p = "-L" || test $p = "-R"; 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 "$pre_test_object_deps_done" = no; 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 "$pre_test_object_deps_done" = no; then if test -z "$_LT_TAGVAR(predep_objects, $1)"; then _LT_TAGVAR(predep_objects, $1)="$p" else _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" fi else if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then _LT_TAGVAR(postdep_objects, $1)="$p" else _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" fi fi ;; *) ;; # Ignore the rest. esac done # Clean up. rm -f a.out a.exe else echo "libtool.m4: error: problem compiling $1 test program" fi $RM -f confest.$objext 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)= ;; linux*) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 # The more standards-conforming stlport4 library is # incompatible with the Cstd library. Avoid specifying # it if it's in CXXFLAGS. Ignore libCrun as # -library=stlport4 depends on it. case " $CXX $CXXFLAGS " in *" -library=stlport4 "*) solaris_use_stlport4=yes ;; esac if test "$solaris_use_stlport4" != yes; then _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' fi ;; esac ;; solaris*) case $cc_basename in CC* | sunCC*) # The more standards-conforming stlport4 library is # incompatible with the Cstd library. Avoid specifying # it if it's in CXXFLAGS. Ignore libCrun as # -library=stlport4 depends on it. case " $CXX $CXXFLAGS " in *" -library=stlport4 "*) solaris_use_stlport4=yes ;; esac # Adding this requires a known-good setup of shared libraries for # Sun compiler versions before 5.6, else PIC objects from an old # archive will be linked into the output, leading to subtle bugs. if test "$solaris_use_stlport4" != yes; then _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' fi ;; esac ;; esac ]) case " $_LT_TAGVAR(postdeps, $1) " in *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; esac _LT_TAGVAR(compiler_lib_search_dirs, $1)= if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'` fi _LT_TAGDECL([], [compiler_lib_search_dirs], [1], [The directories searched by this compiler when creating a shared library]) _LT_TAGDECL([], [predep_objects], [1], [Dependencies to place before and after the objects being linked to create a shared library]) _LT_TAGDECL([], [postdep_objects], [1]) _LT_TAGDECL([], [predeps], [1]) _LT_TAGDECL([], [postdeps], [1]) _LT_TAGDECL([], [compiler_lib_search_path], [1], [The library search path used internally by the compiler when linking a shared library]) ])# _LT_SYS_HIDDEN_LIBDEPS # _LT_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 "X$F77" = "Xno"; 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 "$_lt_disable_F77" != yes; then # Code to be used in simple compile tests lt_simple_compile_test_code="\ subroutine t return end " # Code to be used in simple link tests lt_simple_link_test_code="\ program t end " # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC="$CC" lt_save_GCC=$GCC 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 "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test "$enable_shared" = yes && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then test "$enable_shared" = yes && enable_static=no fi ;; esac AC_MSG_RESULT([$enable_shared]) AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_TAGVAR(GCC, $1)="$G77" _LT_TAGVAR(LD, $1)="$LD" ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi # test -n "$compiler" GCC=$lt_save_GCC CC="$lt_save_CC" CFLAGS="$lt_save_CFLAGS" fi # test "$_lt_disable_F77" != yes 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 "X$FC" = "Xno"; 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 "$_lt_disable_FC" != yes; then # Code to be used in simple compile tests lt_simple_compile_test_code="\ subroutine t return end " # Code to be used in simple link tests lt_simple_link_test_code="\ program t end " # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC="$CC" lt_save_GCC=$GCC 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 "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test "$enable_shared" = yes && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then test "$enable_shared" = yes && enable_static=no fi ;; esac AC_MSG_RESULT([$enable_shared]) AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu" _LT_TAGVAR(LD, $1)="$LD" ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... _LT_SYS_HIDDEN_LIBDEPS($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi # test -n "$compiler" GCC=$lt_save_GCC CC=$lt_save_CC CFLAGS=$lt_save_CFLAGS fi # test "$_lt_disable_FC" != yes AC_LANG_POP ])# _LT_LANG_FC_CONFIG # _LT_LANG_GCJ_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for the GNU Java Compiler compiler # are suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to `libtool'. m4_defun([_LT_LANG_GCJ_CONFIG], [AC_REQUIRE([LT_PROG_GCJ])dnl AC_LANG_SAVE # Source file extension for Java test sources. ac_ext=java # Object file extension for compiled Java test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code="class foo {}" # Code to be used in simple link tests lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }' # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC=$CC lt_save_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 "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" AC_SUBST(GCJFLAGS)])])[]dnl ]) # Old name: AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([LT_AC_PROG_GCJ], []) # LT_PROG_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_SED # ------------ # Check for a fully-functional sed program, that truncates # as few characters as possible. Prefer GNU sed if found. m4_defun([_LT_DECL_SED], [AC_PROG_SED test -z "$SED" && SED=sed Xsed="$SED -e 1s/^X//" _LT_DECL([], [SED], [1], [A sed program that does not truncate output]) _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"], [Sed that helps us avoid accidentally triggering echo(1) options like -n]) ])# _LT_DECL_SED m4_ifndef([AC_PROG_SED], [ ############################################################ # NOTE: This macro has been submitted for inclusion into # # GNU Autoconf as AC_PROG_SED. When it is available in # # a released version of Autoconf we should remove this # # macro and use it instead. # ############################################################ m4_defun([AC_PROG_SED], [AC_MSG_CHECKING([for a sed that does not truncate output]) AC_CACHE_VAL(lt_cv_path_SED, [# Loop through the user's path and test for sed and gsed. # Then use that list of sed's as ones to test for truncation. as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for lt_ac_prog in sed gsed; do for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" fi done done done IFS=$as_save_IFS lt_ac_max=0 lt_ac_count=0 # Add /usr/xpg4/bin/sed as it is typically found on Solaris # along with /bin/sed that truncates output. for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do test ! -f $lt_ac_sed && continue cat /dev/null > conftest.in lt_ac_count=0 echo $ECHO_N "0123456789$ECHO_C" >conftest.in # Check for GNU sed and select it if it is found. if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then lt_cv_path_SED=$lt_ac_sed break fi while true; do cat conftest.in conftest.in >conftest.tmp mv conftest.tmp conftest.in cp conftest.in conftest.nl echo >>conftest.nl $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break cmp -s conftest.out conftest.nl || break # 10000 chars as input seems more than enough test $lt_ac_count -gt 10 && break lt_ac_count=`expr $lt_ac_count + 1` if test $lt_ac_count -gt $lt_ac_max; then lt_ac_max=$lt_ac_count lt_cv_path_SED=$lt_ac_sed fi done done ]) SED=$lt_cv_path_SED AC_SUBST([SED]) AC_MSG_RESULT([$SED]) ])#AC_PROG_SED ])#m4_ifndef # Old name: AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([LT_AC_PROG_SED], []) # _LT_CHECK_SHELL_FEATURES # ------------------------ # Find out whether the shell is Bourne or XSI compatible, # or has some other useful features. m4_defun([_LT_CHECK_SHELL_FEATURES], [AC_MSG_CHECKING([whether the shell understands some XSI constructs]) # Try some XSI features xsi_shell=no ( _lt_dummy="a/b/c" test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \ = c,a/b,b/c, \ && eval 'test $(( 1 + 1 )) -eq 2 \ && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ && xsi_shell=yes AC_MSG_RESULT([$xsi_shell]) _LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell']) AC_MSG_CHECKING([whether the shell understands "+="]) lt_shell_append=no ( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \ >/dev/null 2>&1 \ && lt_shell_append=yes AC_MSG_RESULT([$lt_shell_append]) _LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append']) if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then lt_unset=unset else lt_unset=false fi _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl # test EBCDIC or ASCII case `echo X|tr X '\101'` in A) # ASCII based system # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr lt_SP2NL='tr \040 \012' lt_NL2SP='tr \015\012 \040\040' ;; *) # EBCDIC based system lt_SP2NL='tr \100 \n' lt_NL2SP='tr \r\n \100\100' ;; esac _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl ])# _LT_CHECK_SHELL_FEATURES # _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY) # ------------------------------------------------------ # In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and # '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY. m4_defun([_LT_PROG_FUNCTION_REPLACE], [dnl { sed -e '/^$1 ()$/,/^} # $1 /c\ $1 ()\ {\ m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1]) } # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: ]) # _LT_PROG_REPLACE_SHELLFNS # ------------------------- # Replace existing portable implementations of several shell functions with # equivalent extended shell implementations where those features are available.. m4_defun([_LT_PROG_REPLACE_SHELLFNS], [if test x"$xsi_shell" = xyes; then _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl case ${1} in */*) func_dirname_result="${1%/*}${2}" ;; * ) func_dirname_result="${3}" ;; esac]) _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl func_basename_result="${1##*/}"]) _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl case ${1} in */*) func_dirname_result="${1%/*}${2}" ;; * ) func_dirname_result="${3}" ;; esac func_basename_result="${1##*/}"]) _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are # positional parameters, so assign one to ordinary parameter first. func_stripname_result=${3} func_stripname_result=${func_stripname_result#"${1}"} func_stripname_result=${func_stripname_result%"${2}"}]) _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl func_split_long_opt_name=${1%%=*} func_split_long_opt_arg=${1#*=}]) _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl func_split_short_opt_arg=${1#??} func_split_short_opt_name=${1%"$func_split_short_opt_arg"}]) _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl case ${1} in *.lo) func_lo2o_result=${1%.lo}.${objext} ;; *) func_lo2o_result=${1} ;; esac]) _LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo]) _LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))]) _LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}]) fi if test x"$lt_shell_append" = xyes; then _LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"]) _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl func_quote_for_eval "${2}" dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \ eval "${1}+=\\\\ \\$func_quote_for_eval_result"]) # Save a `func_append' function call where possible by direct use of '+=' sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: else # Save a `func_append' function call even when '+=' is not available sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: fi if test x"$_lt_function_replace_fail" = x":"; then AC_MSG_WARN([Unable to substitute extended shell functions in $ofile]) fi ]) # _LT_PATH_CONVERSION_FUNCTIONS # ----------------------------- # Determine which 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* ) # 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* ) # 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* ) case $build in *-*-mingw* ) # 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-pinyin-1.5.0/m4/Makefile.in0000664000175000017500000003237312063705663013313 00000000000000# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. VPATH = @srcdir@ am__make_dryrun = \ { \ am__dry=no; \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ *) \ for am__flg in $$MAKEFLAGS; do \ case $$am__flg in \ *=*|--*) ;; \ *n*) am__dry=yes; break;; \ esac; \ done;; \ esac; \ test $$am__dry = yes; \ } 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 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/as-version.m4 \ $(top_srcdir)/m4/boost.m4 $(top_srcdir)/m4/intltool.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = 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_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ 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 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BOOST_CPPFLAGS = @BOOST_CPPFLAGS@ BOOST_ROOT = @BOOST_ROOT@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENV = @ENV@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ IBUS_CFLAGS = @IBUS_CFLAGS@ IBUS_LIBS = @IBUS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ LUA_CFLAGS = @LUA_CFLAGS@ LUA_LIBS = @LUA_LIBS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ 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@ PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@ PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@ PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@ PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@ PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PYTHON = @PYTHON@ PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ PYTHON_PLATFORM = @PYTHON_PLATFORM@ PYTHON_PREFIX = @PYTHON_PREFIX@ PYTHON_VERSION = @PYTHON_VERSION@ PYZY = @PYZY@ PYZY_CFLAGS = @PYZY_CFLAGS@ PYZY_LIBS = @PYZY_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SQLITE3 = @SQLITE3@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ 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@ 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@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ pkgpyexecdir = @pkgpyexecdir@ pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ 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@ EXTRA_DIST = \ as-version.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 .PRECIOUS: 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__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ 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 TAGS: ctags: CTAGS CTAGS: distdir: $(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: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || 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 \ 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 uninstall uninstall-am # 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: ibus-pinyin-1.5.0/m4/Makefile.am0000664000175000017500000000155312010524050013253 00000000000000# vim:set noet ts=4: # # ibus-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. EXTRA_DIST = \ as-version.m4 \ $(NULL) ibus-pinyin-1.5.0/m4/boost.m40000664000175000017500000011501111762161772012627 00000000000000# boost.m4: Locate Boost headers and libraries for autoconf-based projects. # Copyright (C) 2007, 2008, 2009 Benoit Sigoure # # 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. # # Additional permission under section 7 of the GNU General Public # License, version 3 ("GPLv3"): # # If you convey this file as part of a work that contains a # configuration script generated by Autoconf, you may do so under # terms of your choice. # # 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 . m4_define([_BOOST_SERIAL], [m4_translit([ # serial 12 ], [# ], [])]) # Original sources can be found at http://github.com/tsuna/boost.m4 # You can fetch the latest version of the script by doing: # wget http://github.com/tsuna/boost.m4/raw/master/build-aux/boost.m4 # ------ # # README # # ------ # # This file provides several macros to use the various Boost libraries. # The first macro is BOOST_REQUIRE. It will simply check if it's possible to # find the Boost headers of a given (optional) minimum version and it will # define BOOST_CPPFLAGS accordingly. It will add an option --with-boost to # your configure so that users can specify non standard locations. # If the user's environment contains BOOST_ROOT and --with-boost was not # specified, --with-boost=$BOOST_ROOT is implicitly used. # For more README and documentation, go to http://github.com/tsuna/boost.m4 # Note: THESE MACROS ASSUME THAT YOU USE LIBTOOL. If you don't, don't worry, # simply read the README, it will show you what to do step by step. m4_pattern_forbid([^_?BOOST_]) # _BOOST_SED_CPP(SED-PROGRAM, PROGRAM, # [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # -------------------------------------------------------- # Same as AC_EGREP_CPP, but leave the result in conftest.i. # PATTERN is *not* overquoted, as in AC_EGREP_CPP. It could be useful # to turn this into a macro which extracts the value of any macro. m4_define([_BOOST_SED_CPP], [AC_LANG_PREPROC_REQUIRE()dnl AC_REQUIRE([AC_PROG_SED])dnl AC_LANG_CONFTEST([AC_LANG_SOURCE([[$2]])]) AS_IF([dnl eval is necessary to expand ac_cpp. dnl Ultrix and Pyramid sh refuse to redirect output of eval, so use subshell. dnl Beware of Windows end-of-lines, for instance if we are running dnl some Windows programs under Wine. In that case, boost/version.hpp dnl is certainly using "\r\n", but the regular Unix shell will only dnl strip `\n' with backquotes, not the `\r'. This results in dnl boost_cv_lib_version='1_37\r' for instance, which breaks dnl everything else. dnl Cannot use 'dnl' after [$4] because a trailing dnl may break AC_CACHE_CHECK (eval "$ac_cpp $CXXFLAGS conftest.$ac_ext") 2>&AS_MESSAGE_LOG_FD | tr -d '\r' | $SED -n -e "$1" >conftest.i 2>&1], [$3], [$4]) rm -rf conftest* ])# AC_EGREP_CPP # BOOST_REQUIRE([VERSION], [ACTION-IF-NOT-FOUND]) # ----------------------------------------------- # Look for Boost. If version is given, it must either be a literal of the form # "X.Y.Z" where X, Y and Z are integers (the ".Z" part being optional) or a # variable "$var". # Defines the value BOOST_CPPFLAGS. This macro only checks for headers with # the required version, it does not check for any of the Boost libraries. # On # success, defines HAVE_BOOST. On failure, calls the optional # ACTION-IF-NOT-FOUND action if one was supplied. # Otherwise aborts with an error message. AC_DEFUN([BOOST_REQUIRE], [AC_REQUIRE([AC_PROG_CXX])dnl AC_REQUIRE([AC_PROG_GREP])dnl echo "$as_me: this is boost.m4[]_BOOST_SERIAL" >&AS_MESSAGE_LOG_FD boost_save_IFS=$IFS boost_version_req=$1 IFS=. set x $boost_version_req 0 0 0 IFS=$boost_save_IFS shift boost_version_req=`expr "$[1]" '*' 100000 + "$[2]" '*' 100 + "$[3]"` AC_ARG_WITH([boost], [AS_HELP_STRING([--with-boost=DIR], [prefix of Boost $1 @<:@guess@:>@])])dnl AC_ARG_VAR([BOOST_ROOT],[Location of Boost installation])dnl # If BOOST_ROOT is set and the user has not provided a value to # --with-boost, then treat BOOST_ROOT as if it the user supplied it. if test x"$BOOST_ROOT" != x; then if test x"$with_boost" = x; then AC_MSG_NOTICE([Detected BOOST_ROOT; continuing with --with-boost=$BOOST_ROOT]) with_boost=$BOOST_ROOT else AC_MSG_NOTICE([Detected BOOST_ROOT=$BOOST_ROOT, but overridden by --with-boost=$with_boost]) fi fi AC_SUBST([DISTCHECK_CONFIGURE_FLAGS], ["$DISTCHECK_CONFIGURE_FLAGS '--with-boost=$with_boost'"]) boost_save_CPPFLAGS=$CPPFLAGS AC_CACHE_CHECK([for Boost headers version >= $boost_version_req], [boost_cv_inc_path], [boost_cv_inc_path=no AC_LANG_PUSH([C++])dnl m4_pattern_allow([^BOOST_VERSION$])dnl AC_LANG_CONFTEST([AC_LANG_PROGRAM([[#include #if !defined BOOST_VERSION # error BOOST_VERSION is not defined #elif BOOST_VERSION < $boost_version_req # error Boost headers version < $boost_version_req #endif ]])]) # If the user provided a value to --with-boost, use it and only it. case $with_boost in #( ''|yes) set x '' /opt/local/include /usr/local/include /opt/include \ /usr/include C:/Boost/include;; #( *) set x "$with_boost/include" "$with_boost";; esac shift for boost_dir do # Without --layout=system, Boost (or at least some versions) installs # itself in /include/boost-. This inner loop helps to # find headers in such directories. # # Any ${boost_dir}/boost-x_xx directories are searched in reverse version # order followed by ${boost_dir}. The final '.' is a sentinel for # searching $boost_dir" itself. Entries are whitespace separated. # # I didn't indent this loop on purpose (to avoid over-indented code) boost_layout_system_search_list=`cd "$boost_dir" 2>/dev/null \ && ls -1 | "${GREP}" '^boost-' | sort -rn -t- -k2 \ && echo .` for boost_inc in $boost_layout_system_search_list do if test x"$boost_inc" != x.; then boost_inc="$boost_dir/$boost_inc" else boost_inc="$boost_dir" # Uses sentinel in boost_layout_system_search_list fi if test x"$boost_inc" != x; then # We are going to check whether the version of Boost installed # in $boost_inc is usable by running a compilation that # #includes it. But if we pass a -I/some/path in which Boost # is not installed, the compiler will just skip this -I and # use other locations (either from CPPFLAGS, or from its list # of system include directories). As a result we would use # header installed on the machine instead of the /some/path # specified by the user. So in that precise case (trying # $boost_inc), make sure the version.hpp exists. # # Use test -e as there can be symlinks. test -e "$boost_inc/boost/version.hpp" || continue CPPFLAGS="$CPPFLAGS -I$boost_inc" fi AC_COMPILE_IFELSE([], [boost_cv_inc_path=yes], [boost_cv_version=no]) if test x"$boost_cv_inc_path" = xyes; then if test x"$boost_inc" != x; then boost_cv_inc_path=$boost_inc fi break 2 fi done done AC_LANG_POP([C++])dnl ]) case $boost_cv_inc_path in #( no) boost_errmsg="cannot find Boost headers version >= $boost_version_req" m4_if([$2], [], [AC_MSG_ERROR([$boost_errmsg])], [AC_MSG_NOTICE([$boost_errmsg])]) $2 ;;#( yes) BOOST_CPPFLAGS= ;;#( *) AC_SUBST([BOOST_CPPFLAGS], ["-I$boost_cv_inc_path"]) ;; esac if test x"$boost_cv_inc_path" != xno; then AC_DEFINE([HAVE_BOOST], [1], [Defined if the requested minimum BOOST version is satisfied]) AC_CACHE_CHECK([for Boost's header version], [boost_cv_lib_version], [m4_pattern_allow([^BOOST_LIB_VERSION$])dnl _BOOST_SED_CPP([/^boost-lib-version = /{s///;s/\"//g;p;g;}], [#include boost-lib-version = BOOST_LIB_VERSION], [boost_cv_lib_version=`cat conftest.i`])]) # e.g. "134" for 1_34_1 or "135" for 1_35 boost_major_version=`echo "$boost_cv_lib_version" | sed 's/_//;s/_.*//'` case $boost_major_version in #( '' | *[[!0-9]]*) AC_MSG_ERROR([invalid value: boost_major_version=$boost_major_version]) ;; esac fi CPPFLAGS=$boost_save_CPPFLAGS ])# BOOST_REQUIRE # BOOST_STATIC() # -------------- # Add the "--enable-static-boost" configure argument. If this argument is given # on the command line, static versions of the libraries will be looked up. AC_DEFUN([BOOST_STATIC], [AC_ARG_ENABLE([static-boost], [AC_HELP_STRING([--enable-static-boost], [Prefer the static boost libraries over the shared ones [no]])], [enable_static_boost=yes], [enable_static_boost=no])])# BOOST_STATIC # BOOST_FIND_HEADER([HEADER-NAME], [ACTION-IF-NOT-FOUND], [ACTION-IF-FOUND]) # -------------------------------------------------------------------------- # Wrapper around AC_CHECK_HEADER for Boost headers. Useful to check for # some parts of the Boost library which are only made of headers and don't # require linking (such as Boost.Foreach). # # Default ACTION-IF-NOT-FOUND: Fail with a fatal error unless Boost couldn't be # found in the first place, in which case by default a notice is issued to the # user. Presumably if we haven't died already it's because it's OK to not have # Boost, which is why only a notice is issued instead of a hard error. # # Default ACTION-IF-FOUND: define the preprocessor symbol HAVE_ in # case of success # (where HEADER-NAME is written LIKE_THIS, e.g., # HAVE_BOOST_FOREACH_HPP). AC_DEFUN([BOOST_FIND_HEADER], [AC_REQUIRE([BOOST_REQUIRE])dnl if test x"$boost_cv_inc_path" = xno; then m4_default([$2], [AC_MSG_NOTICE([Boost not available, not searching for $1])]) else AC_LANG_PUSH([C++])dnl boost_save_CPPFLAGS=$CPPFLAGS CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" AC_CHECK_HEADER([$1], [m4_default([$3], [AC_DEFINE(AS_TR_CPP([HAVE_$1]), [1], [Define to 1 if you have <$1>])])], [m4_default([$2], [AC_MSG_ERROR([cannot find $1])])]) CPPFLAGS=$boost_save_CPPFLAGS AC_LANG_POP([C++])dnl fi ])# BOOST_FIND_HEADER # BOOST_FIND_LIB([LIB-NAME], [PREFERRED-RT-OPT], [HEADER-NAME], [CXX-TEST], # [CXX-PROLOGUE]) # ------------------------------------------------------------------------- # Look for the Boost library LIB-NAME (e.g., LIB-NAME = `thread', for # libboost_thread). Check that HEADER-NAME works and check that # libboost_LIB-NAME can link with the code CXX-TEST. The optional argument # CXX-PROLOGUE can be used to include some C++ code before the `main' # function. # # Invokes BOOST_FIND_HEADER([HEADER-NAME]) (see above). # # Boost libraries typically come compiled with several flavors (with different # runtime options) so PREFERRED-RT-OPT is the preferred suffix. A suffix is one # or more of the following letters: sgdpn (in that order). s = static # runtime, d = debug build, g = debug/diagnostic runtime, p = STLPort build, # n = (unsure) STLPort build without iostreams from STLPort (it looks like `n' # must always be used along with `p'). Additionally, PREFERRED-RT-OPT can # start with `mt-' to indicate that there is a preference for multi-thread # builds. Some sample values for PREFERRED-RT-OPT: (nothing), mt, d, mt-d, gdp # ... If you want to make sure you have a specific version of Boost # (eg, >= 1.33) you *must* invoke BOOST_REQUIRE before this macro. AC_DEFUN([BOOST_FIND_LIB], [AC_REQUIRE([BOOST_REQUIRE])dnl AC_REQUIRE([_BOOST_FIND_COMPILER_TAG])dnl AC_REQUIRE([BOOST_STATIC])dnl AC_REQUIRE([_BOOST_GUESS_WHETHER_TO_USE_MT])dnl if test x"$boost_cv_inc_path" = xno; then AC_MSG_NOTICE([Boost not available, not searching for the Boost $1 library]) else dnl The else branch is huge and wasn't intended on purpose. AC_LANG_PUSH([C++])dnl AS_VAR_PUSHDEF([Boost_lib], [boost_cv_lib_$1])dnl AS_VAR_PUSHDEF([Boost_lib_LDFLAGS], [boost_cv_lib_$1_LDFLAGS])dnl AS_VAR_PUSHDEF([Boost_lib_LIBS], [boost_cv_lib_$1_LIBS])dnl BOOST_FIND_HEADER([$3]) boost_save_CPPFLAGS=$CPPFLAGS CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" # Now let's try to find the library. The algorithm is as follows: first look # for a given library name according to the user's PREFERRED-RT-OPT. For each # library name, we prefer to use the ones that carry the tag (toolset name). # Each library is searched through the various standard paths were Boost is # usually installed. If we can't find the standard variants, we try to # enforce -mt (for instance on MacOSX, libboost_threads.dylib doesn't exist # but there's -obviously- libboost_threads-mt.dylib). AC_CACHE_CHECK([for the Boost $1 library], [Boost_lib], [Boost_lib=no case "$2" in #( mt | mt-) boost_mt=-mt; boost_rtopt=;; #( mt* | mt-*) boost_mt=-mt; boost_rtopt=`expr "X$2" : 'Xmt-*\(.*\)'`;; #( *) boost_mt=; boost_rtopt=$2;; esac if test $enable_static_boost = yes; then boost_rtopt="s$boost_rtopt" fi # Find the proper debug variant depending on what we've been asked to find. case $boost_rtopt in #( *d*) boost_rt_d=$boost_rtopt;; #( *[[sgpn]]*) # Insert the `d' at the right place (in between `sg' and `pn') boost_rt_d=`echo "$boost_rtopt" | sed 's/\(s*g*\)\(p*n*\)/\1\2/'`;; #( *) boost_rt_d='-d';; esac # If the PREFERRED-RT-OPT are not empty, prepend a `-'. test -n "$boost_rtopt" && boost_rtopt="-$boost_rtopt" $boost_guess_use_mt && boost_mt=-mt # Look for the abs path the static archive. # $libext is computed by Libtool but let's make sure it's non empty. test -z "$libext" && AC_MSG_ERROR([the libext variable is empty, did you invoke Libtool?]) boost_save_ac_objext=$ac_objext # Generate the test file. AC_LANG_CONFTEST([AC_LANG_PROGRAM([#include <$3> $5], [$4])]) dnl Optimization hacks: compiling C++ is slow, especially with Boost. What dnl we're trying to do here is guess the right combination of link flags dnl (LIBS / LDFLAGS) to use a given library. This can take several dnl iterations before it succeeds and is thus *very* slow. So what we do dnl instead is that we compile the code first (and thus get an object file, dnl typically conftest.o). Then we try various combinations of link flags dnl until we succeed to link conftest.o in an executable. The problem is dnl that the various TRY_LINK / COMPILE_IFELSE macros of Autoconf always dnl remove all the temporary files including conftest.o. So the trick here dnl is to temporarily change the value of ac_objext so that conftest.o is dnl preserved accross tests. This is obviously fragile and I will burn in dnl hell for not respecting Autoconf's documented interfaces, but in the dnl mean time, it optimizes the macro by a factor of 5 to 30. dnl Another small optimization: the first argument of AC_COMPILE_IFELSE left dnl empty because the test file is generated only once above (before we dnl start the for loops). AC_COMPILE_IFELSE([], [ac_objext=do_not_rm_me_plz], [AC_MSG_ERROR([cannot compile a test that uses Boost $1])]) ac_objext=$boost_save_ac_objext boost_failed_libs= # Don't bother to ident the 6 nested for loops, only the 2 innermost ones # matter. for boost_tag_ in -$boost_cv_lib_tag ''; do for boost_ver_ in -$boost_cv_lib_version ''; do for boost_mt_ in $boost_mt -mt ''; do for boost_rtopt_ in $boost_rtopt '' -d; do for boost_lib in \ boost_$1$boost_tag_$boost_mt_$boost_rtopt_$boost_ver_ \ boost_$1$boost_tag_$boost_rtopt_$boost_ver_ \ boost_$1$boost_tag_$boost_mt_$boost_ver_ \ boost_$1$boost_tag_$boost_ver_ do # Avoid testing twice the same lib case $boost_failed_libs in #( *@$boost_lib@*) continue;; esac # If with_boost is empty, we'll search in /lib first, which is not quite # right so instead we'll try to a location based on where the headers are. boost_tmp_lib=$with_boost test x"$with_boost" = x && boost_tmp_lib=${boost_cv_inc_path%/include} for boost_ldpath in "$boost_tmp_lib/lib" '' \ /opt/local/lib /usr/local/lib /opt/lib /usr/lib \ "$with_boost" C:/Boost/lib /lib /usr/lib64 /lib64 do test -e "$boost_ldpath" || continue boost_save_LDFLAGS=$LDFLAGS # Are we looking for a static library? case $boost_ldpath:$boost_rtopt_ in #( *?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt) Boost_lib_LIBS="$boost_ldpath/lib$boost_lib.$libext" test -e "$Boost_lib_LIBS" || continue;; #( *) # No: use -lboost_foo to find the shared library. Boost_lib_LIBS="-l$boost_lib";; esac boost_save_LIBS=$LIBS LIBS="$Boost_lib_LIBS $LIBS" test x"$boost_ldpath" != x && LDFLAGS="$LDFLAGS -L$boost_ldpath" dnl First argument of AC_LINK_IFELSE left empty because the test file is dnl generated only once above (before we start the for loops). _BOOST_AC_LINK_IFELSE([], [Boost_lib=yes], [Boost_lib=no]) ac_objext=$boost_save_ac_objext LDFLAGS=$boost_save_LDFLAGS LIBS=$boost_save_LIBS if test x"$Boost_lib" = xyes; then Boost_lib_LDFLAGS="-L$boost_ldpath -R$boost_ldpath" break 6 else boost_failed_libs="$boost_failed_libs@$boost_lib@" fi done done done done done done rm -f conftest.$ac_objext ]) case $Boost_lib in #( no) _AC_MSG_LOG_CONFTEST AC_MSG_ERROR([cannot not find the flags to link with Boost $1]) ;; esac AC_SUBST(AS_TR_CPP([BOOST_$1_LDFLAGS]), [$Boost_lib_LDFLAGS]) AC_SUBST(AS_TR_CPP([BOOST_$1_LIBS]), [$Boost_lib_LIBS]) CPPFLAGS=$boost_save_CPPFLAGS AS_VAR_POPDEF([Boost_lib])dnl AS_VAR_POPDEF([Boost_lib_LDFLAGS])dnl AS_VAR_POPDEF([Boost_lib_LIBS])dnl AC_LANG_POP([C++])dnl fi ])# BOOST_FIND_LIB # --------------------------------------- # # Checks for the various Boost libraries. # # --------------------------------------- # # List of boost libraries: http://www.boost.org/libs/libraries.htm # The page http://beta.boost.org/doc/libs is useful: it gives the first release # version of each library (among other things). # BOOST_ARRAY() # ------------- # Look for Boost.Array AC_DEFUN([BOOST_ARRAY], [BOOST_FIND_HEADER([boost/array.hpp])]) # BOOST_ASIO() # ------------ # Look for Boost.Asio (new in Boost 1.35). AC_DEFUN([BOOST_ASIO], [AC_REQUIRE([BOOST_SYSTEM])dnl BOOST_FIND_HEADER([boost/asio.hpp])]) # BOOST_BIND() # ------------ # Look for Boost.Bind AC_DEFUN([BOOST_BIND], [BOOST_FIND_HEADER([boost/bind.hpp])]) # BOOST_CONVERSION() # ------------------ # Look for Boost.Conversion (cast / lexical_cast) AC_DEFUN([BOOST_CONVERSION], [BOOST_FIND_HEADER([boost/cast.hpp]) BOOST_FIND_HEADER([boost/lexical_cast.hpp]) ])# BOOST_CONVERSION # BOOST_DATE_TIME([PREFERRED-RT-OPT]) # ----------------------------------- # Look for Boost.Date_Time. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. AC_DEFUN([BOOST_DATE_TIME], [BOOST_FIND_LIB([date_time], [$1], [boost/date_time/posix_time/posix_time.hpp], [boost::posix_time::ptime t;]) ])# BOOST_DATE_TIME # BOOST_FILESYSTEM([PREFERRED-RT-OPT]) # ------------------------------------ # Look for Boost.Filesystem. For the documentation of PREFERRED-RT-OPT, see # the documentation of BOOST_FIND_LIB above. # Do not check for boost/filesystem.hpp because this file was introduced in # 1.34. AC_DEFUN([BOOST_FILESYSTEM], [# Do we have to check for Boost.System? This link-time dependency was # added as of 1.35.0. If we have a version <1.35, we must not attempt to # find Boost.System as it didn't exist by then. if test $boost_major_version -ge 135; then BOOST_SYSTEM([$1]) fi # end of the Boost.System check. boost_filesystem_save_LIBS=$LIBS boost_filesystem_save_LDFLAGS=$LDFLAGS m4_pattern_allow([^BOOST_SYSTEM_(LIBS|LDFLAGS)$])dnl LIBS="$LIBS $BOOST_SYSTEM_LIBS" LDFLAGS="$LDFLAGS $BOOST_SYSTEM_LDFLAGS" BOOST_FIND_LIB([filesystem], [$1], [boost/filesystem/path.hpp], [boost::filesystem::path p;]) LIBS=$boost_filesystem_save_LIBS LDFLAGS=$boost_filesystem_save_LDFLAGS ])# BOOST_FILESYSTEM # BOOST_FOREACH() # --------------- # Look for Boost.Foreach AC_DEFUN([BOOST_FOREACH], [BOOST_FIND_HEADER([boost/foreach.hpp])]) # BOOST_FORMAT() # -------------- # Look for Boost.Format # Note: we can't check for boost/format/format_fwd.hpp because the header isn't # standalone. It can't be compiled because it triggers the following error: # boost/format/detail/config_macros.hpp:88: error: 'locale' in namespace 'std' # does not name a type AC_DEFUN([BOOST_FORMAT], [BOOST_FIND_HEADER([boost/format.hpp])]) # BOOST_FUNCTION() # ---------------- # Look for Boost.Function AC_DEFUN([BOOST_FUNCTION], [BOOST_FIND_HEADER([boost/function.hpp])]) # BOOST_GRAPH([PREFERRED-RT-OPT]) # ------------------------------- # Look for Boost.Graphs. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. AC_DEFUN([BOOST_GRAPH], [BOOST_FIND_LIB([graph], [$1], [boost/graph/adjacency_list.hpp], [boost::adjacency_list<> g;]) ])# BOOST_GRAPH # BOOST_IOSTREAMS([PREFERRED-RT-OPT]) # ------------------------------- # Look for Boost.IOStreams. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. AC_DEFUN([BOOST_IOSTREAMS], [BOOST_FIND_LIB([iostreams], [$1], [boost/iostreams/device/file_descriptor.hpp], [boost::iostreams::file_descriptor fd(0); fd.close();]) ])# BOOST_IOSTREAMS # BOOST_HASH() # ------------ # Look for Boost.Functional/Hash AC_DEFUN([BOOST_HASH], [BOOST_FIND_HEADER([boost/functional/hash.hpp])]) # BOOST_LAMBDA() # -------------- # Look for Boost.Lambda AC_DEFUN([BOOST_LAMBDA], [BOOST_FIND_HEADER([boost/lambda/lambda.hpp])]) # BOOST_MATH() # ------------ # Look for Boost.Math # TODO: This library isn't header-only but it comes in multiple different # flavors that don't play well with BOOST_FIND_LIB (e.g, libboost_math_c99, # libboost_math_c99f, libboost_math_c99l, libboost_math_tr1, # libboost_math_tr1f, libboost_math_tr1l). This macro must be fixed to do the # right thing anyway. AC_DEFUN([BOOST_MATH], [BOOST_FIND_HEADER([boost/math/special_functions.hpp])]) # BOOST_MULTIARRAY() # ------------------ # Look for Boost.MultiArray AC_DEFUN([BOOST_MULTIARRAY], [BOOST_FIND_HEADER([boost/multi_array.hpp])]) # BOOST_NUMERIC_CONVERSION() # -------------------------- # Look for Boost.NumericConversion (policy-based numeric conversion) AC_DEFUN([BOOST_NUMERIC_CONVERSION], [BOOST_FIND_HEADER([boost/numeric/conversion/converter.hpp]) ])# BOOST_NUMERIC_CONVERSION # BOOST_OPTIONAL() # ---------------- # Look for Boost.Optional AC_DEFUN([BOOST_OPTIONAL], [BOOST_FIND_HEADER([boost/optional.hpp])]) # BOOST_PREPROCESSOR() # -------------------- # Look for Boost.Preprocessor AC_DEFUN([BOOST_PREPROCESSOR], [BOOST_FIND_HEADER([boost/preprocessor/repeat.hpp])]) # BOOST_PROGRAM_OPTIONS([PREFERRED-RT-OPT]) # ----------------------------------------- # Look for Boost.Program_options. For the documentation of PREFERRED-RT-OPT, see # the documentation of BOOST_FIND_LIB above. AC_DEFUN([BOOST_PROGRAM_OPTIONS], [BOOST_FIND_LIB([program_options], [$1], [boost/program_options.hpp], [boost::program_options::options_description d("test");]) ])# BOOST_PROGRAM_OPTIONS # BOOST_REF() # ----------- # Look for Boost.Ref AC_DEFUN([BOOST_REF], [BOOST_FIND_HEADER([boost/ref.hpp])]) # BOOST_REGEX([PREFERRED-RT-OPT]) # ------------------------------- # Look for Boost.Regex. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. AC_DEFUN([BOOST_REGEX], [BOOST_FIND_LIB([regex], [$1], [boost/regex.hpp], [boost::regex exp("*"); boost::regex_match("foo", exp);]) ])# BOOST_REGEX # BOOST_SERIALIZATION([PREFERRED-RT-OPT]) # --------------------------------------- # Look for Boost.Serialization. For the documentation of PREFERRED-RT-OPT, see # the documentation of BOOST_FIND_LIB above. AC_DEFUN([BOOST_SERIALIZATION], [BOOST_FIND_LIB([serialization], [$1], [boost/archive/text_oarchive.hpp], [std::ostream* o = 0; // Cheap way to get an ostream... boost::archive::text_oarchive t(*o);]) ])# BOOST_SIGNALS # BOOST_SIGNALS([PREFERRED-RT-OPT]) # --------------------------------- # Look for Boost.Signals. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. AC_DEFUN([BOOST_SIGNALS], [BOOST_FIND_LIB([signals], [$1], [boost/signal.hpp], [boost::signal s;]) ])# BOOST_SIGNALS # BOOST_SMART_PTR() # ----------------- # Look for Boost.SmartPtr AC_DEFUN([BOOST_SMART_PTR], [BOOST_FIND_HEADER([boost/scoped_ptr.hpp]) BOOST_FIND_HEADER([boost/shared_ptr.hpp]) ]) # BOOST_STATICASSERT() # -------------------- # Look for Boost.StaticAssert AC_DEFUN([BOOST_STATICASSERT], [BOOST_FIND_HEADER([boost/static_assert.hpp])]) # BOOST_STRING_ALGO() # ------------------- # Look for Boost.StringAlgo AC_DEFUN([BOOST_STRING_ALGO], [BOOST_FIND_HEADER([boost/algorithm/string.hpp]) ]) # BOOST_SYSTEM([PREFERRED-RT-OPT]) # -------------------------------- # Look for Boost.System. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. This library was introduced in Boost # 1.35.0. AC_DEFUN([BOOST_SYSTEM], [BOOST_FIND_LIB([system], [$1], [boost/system/error_code.hpp], [boost::system::error_code e; e.clear();]) ])# BOOST_SYSTEM # BOOST_TEST([PREFERRED-RT-OPT]) # ------------------------------ # Look for Boost.Test. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. AC_DEFUN([BOOST_TEST], [m4_pattern_allow([^BOOST_CHECK$])dnl BOOST_FIND_LIB([unit_test_framework], [$1], [boost/test/unit_test.hpp], [BOOST_CHECK(2 == 2);], [using boost::unit_test::test_suite; test_suite* init_unit_test_suite(int argc, char ** argv) { return NULL; }]) ])# BOOST_TEST # BOOST_THREADS([PREFERRED-RT-OPT]) # --------------------------------- # Look for Boost.Thread. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. # FIXME: Provide an alias "BOOST_THREAD". AC_DEFUN([BOOST_THREADS], [dnl Having the pthread flag is required at least on GCC3 where dnl boost/thread.hpp would complain if we try to compile without dnl -pthread on GNU/Linux. AC_REQUIRE([_BOOST_PTHREAD_FLAG])dnl boost_threads_save_LIBS=$LIBS boost_threads_save_CPPFLAGS=$CPPFLAGS LIBS="$LIBS $boost_cv_pthread_flag" # Yes, we *need* to put the -pthread thing in CPPFLAGS because with GCC3, # boost/thread.hpp will trigger a #error if -pthread isn't used: # boost/config/requires_threads.hpp:47:5: #error "Compiler threading support # is not turned on. Please set the correct command line options for # threading: -pthread (Linux), -pthreads (Solaris) or -mthreads (Mingw32)" CPPFLAGS="$CPPFLAGS $boost_cv_pthread_flag" BOOST_FIND_LIB([thread], [$1], [boost/thread.hpp], [boost::thread t; boost::mutex m;]) BOOST_THREAD_LIBS="$BOOST_THREAD_LIBS $boost_cv_pthread_flag" BOOST_CPPFLAGS="$BOOST_CPPFLAGS $boost_cv_pthread_flag" LIBS=$boost_threads_save_LIBS CPPFLAGS=$boost_threads_save_CPPFLAGS ])# BOOST_THREADS # BOOST_TOKENIZER() # ----------------- # Look for Boost.Tokenizer AC_DEFUN([BOOST_TOKENIZER], [BOOST_FIND_HEADER([boost/tokenizer.hpp])]) # BOOST_TRIBOOL() # --------------- # Look for Boost.Tribool AC_DEFUN([BOOST_TRIBOOL], [BOOST_FIND_HEADER([boost/logic/tribool_fwd.hpp]) BOOST_FIND_HEADER([boost/logic/tribool.hpp]) ]) # BOOST_TUPLE() # ------------- # Look for Boost.Tuple AC_DEFUN([BOOST_TUPLE], [BOOST_FIND_HEADER([boost/tuple/tuple.hpp])]) # BOOST_TYPETRAITS() # -------------------- # Look for Boost.TypeTraits AC_DEFUN([BOOST_TYPETRAITS], [BOOST_FIND_HEADER([boost/type_traits.hpp])]) # BOOST_UTILITY() # --------------- # Look for Boost.Utility (noncopyable, result_of, base-from-member idiom, # etc.) AC_DEFUN([BOOST_UTILITY], [BOOST_FIND_HEADER([boost/utility.hpp])]) # BOOST_VARIANT() # --------------- # Look for Boost.Variant. AC_DEFUN([BOOST_VARIANT], [BOOST_FIND_HEADER([boost/variant/variant_fwd.hpp]) BOOST_FIND_HEADER([boost/variant.hpp])]) # BOOST_WAVE([PREFERRED-RT-OPT]) # ------------------------------ # NOTE: If you intend to use Wave/Spirit with thread support, make sure you # call BOOST_THREADS first. # Look for Boost.Wave. For the documentation of PREFERRED-RT-OPT, see the # documentation of BOOST_FIND_LIB above. AC_DEFUN([BOOST_WAVE], [AC_REQUIRE([BOOST_FILESYSTEM])dnl AC_REQUIRE([BOOST_DATE_TIME])dnl boost_wave_save_LIBS=$LIBS boost_wave_save_LDFLAGS=$LDFLAGS m4_pattern_allow([^BOOST_((FILE)?SYSTEM|DATE_TIME|THREAD)_(LIBS|LDFLAGS)$])dnl LIBS="$LIBS $BOOST_SYSTEM_LIBS $BOOST_FILESYSTEM_LIBS $BOOST_DATE_TIME_LIBS\ $BOOST_THREAD_LIBS" LDFLAGS="$LDFLAGS $BOOST_SYSTEM_LDFLAGS $BOOST_FILESYSTEM_LDFLAGS\ $BOOST_DATE_TIME_LDFLAGS $BOOST_THREAD_LDFLAGS" BOOST_FIND_LIB([wave], [$1], [boost/wave.hpp], [boost::wave::token_id id; get_token_name(id);]) LIBS=$boost_wave_save_LIBS LDFLAGS=$boost_wave_save_LDFLAGS ])# BOOST_WAVE # BOOST_XPRESSIVE() # ----------------- # Look for Boost.Xpressive (new since 1.36.0). AC_DEFUN([BOOST_XPRESSIVE], [BOOST_FIND_HEADER([boost/xpressive/xpressive.hpp])]) # ----------------- # # Internal helpers. # # ----------------- # # _BOOST_PTHREAD_FLAG() # --------------------- # Internal helper for BOOST_THREADS. Based on ACX_PTHREAD: # http://autoconf-archive.cryp.to/acx_pthread.html AC_DEFUN([_BOOST_PTHREAD_FLAG], [AC_REQUIRE([AC_PROG_CXX])dnl AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_LANG_PUSH([C++])dnl AC_CACHE_CHECK([for the flags needed to use pthreads], [boost_cv_pthread_flag], [ boost_cv_pthread_flag= # The ordering *is* (sometimes) important. Some notes on the # individual items follow: # (none): in case threads are in libc; should be tried before -Kthread and # other compiler flags to prevent continual compiler warnings # -lpthreads: AIX (must check this before -lpthread) # -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h) # -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) # -llthread: LinuxThreads port on FreeBSD (also preferred to -pthread) # -pthread: GNU Linux/GCC (kernel threads), BSD/GCC (userland threads) # -pthreads: Solaris/GCC # -mthreads: MinGW32/GCC, Lynx/GCC # -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it # doesn't hurt to check since this sometimes defines pthreads too; # also defines -D_REENTRANT) # ... -mt is also the pthreads flag for HP/aCC # -lpthread: GNU Linux, etc. # --thread-safe: KAI C++ case $host_os in #( *solaris*) # On Solaris (at least, for some versions), libc contains stubbed # (non-functional) versions of the pthreads routines, so link-based # tests will erroneously succeed. (We need to link with -pthreads/-mt/ # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather # a function called by this macro, so we could check for that, but # who knows whether they'll stub that too in a future libc.) So, # we'll just look for -pthreads and -lpthread first: boost_pthread_flags="-pthreads -lpthread -mt -pthread";; #( *) boost_pthread_flags="-lpthreads -Kthread -kthread -llthread -pthread \ -pthreads -mthreads -lpthread --thread-safe -mt";; esac # Generate the test file. AC_LANG_CONFTEST([AC_LANG_PROGRAM([#include ], [pthread_t th; pthread_join(th, 0); pthread_attr_init(0); pthread_cleanup_push(0, 0); pthread_create(0,0,0,0); pthread_cleanup_pop(0);])]) for boost_pthread_flag in '' $boost_pthread_flags; do boost_pthread_ok=false dnl Re-use the test file already generated. boost_pthreads__save_LIBS=$LIBS LIBS="$LIBS $boost_pthread_flag" AC_LINK_IFELSE([], [if grep ".*$boost_pthread_flag" conftest.err; then echo "This flag seems to have triggered warnings" >&AS_MESSAGE_LOG_FD else boost_pthread_ok=:; boost_cv_pthread_flag=$boost_pthread_flag fi]) LIBS=$boost_pthreads__save_LIBS $boost_pthread_ok && break done ]) AC_LANG_POP([C++])dnl ])# _BOOST_PTHREAD_FLAG # _BOOST_gcc_test(MAJOR, MINOR) # ----------------------------- # Internal helper for _BOOST_FIND_COMPILER_TAG. m4_define([_BOOST_gcc_test], ["defined __GNUC__ && __GNUC__ == $1 && __GNUC_MINOR__ == $2 && !defined __ICC @ gcc$1$2"])dnl # _BOOST_FIND_COMPILER_TAG() # -------------------------- # Internal. When Boost is installed without --layout=system, each library # filename will hold a suffix that encodes the compiler used during the # build. The Boost build system seems to call this a `tag'. AC_DEFUN([_BOOST_FIND_COMPILER_TAG], [AC_REQUIRE([AC_PROG_CXX])dnl AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_CACHE_CHECK([for the toolset name used by Boost for $CXX], [boost_cv_lib_tag], [boost_cv_lib_tag=unknown if test x$boost_cv_inc_path != xno; then AC_LANG_PUSH([C++])dnl # The following tests are mostly inspired by boost/config/auto_link.hpp # The list is sorted to most recent/common to oldest compiler (in order # to increase the likelihood of finding the right compiler with the # least number of compilation attempt). # Beware that some tests are sensible to the order (for instance, we must # look for MinGW before looking for GCC3). # I used one compilation test per compiler with a #error to recognize # each compiler so that it works even when cross-compiling (let me know # if you know a better approach). # Known missing tags (known from Boost's tools/build/v2/tools/common.jam): # como, edg, kcc, bck, mp, sw, tru, xlc # I'm not sure about my test for `il' (be careful: Intel's ICC pre-defines # the same defines as GCC's). # TODO: Move the test on GCC 4.4 up once it's released. for i in \ _BOOST_gcc_test(4, 3) \ _BOOST_gcc_test(4, 2) \ _BOOST_gcc_test(4, 1) \ _BOOST_gcc_test(4, 0) \ "defined __GNUC__ && __GNUC__ == 3 && !defined __ICC \ && (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \ || defined __WIN32__ || defined __WINNT || defined __WINNT__) @ mgw" \ _BOOST_gcc_test(3, 4) \ _BOOST_gcc_test(3, 3) \ "defined _MSC_VER && _MSC_VER >= 1500 @ vc90" \ "defined _MSC_VER && _MSC_VER == 1400 @ vc80" \ _BOOST_gcc_test(3, 2) \ "defined _MSC_VER && _MSC_VER == 1310 @ vc71" \ _BOOST_gcc_test(3, 1) \ _BOOST_gcc_test(3, 0) \ "defined __BORLANDC__ @ bcb" \ "defined __ICC && (defined __unix || defined __unix__) @ il" \ "defined __ICL @ iw" \ "defined _MSC_VER && _MSC_VER == 1300 @ vc7" \ _BOOST_gcc_test(4, 4) \ _BOOST_gcc_test(2, 95) \ "defined __MWERKS__ && __MWERKS__ <= 0x32FF @ cw9" \ "defined _MSC_VER && _MSC_VER < 1300 && !defined UNDER_CE @ vc6" \ "defined _MSC_VER && _MSC_VER < 1300 && defined UNDER_CE @ evc4" \ "defined __MWERKS__ && __MWERKS__ <= 0x31FF @ cw8" do boost_tag_test=`expr "X$i" : 'X\([[^@]]*\) @ '` boost_tag=`expr "X$i" : 'X[[^@]]* @ \(.*\)'` AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #if $boost_tag_test /* OK */ #else # error $boost_tag_test #endif ]])], [boost_cv_lib_tag=$boost_tag; break], []) done AC_LANG_POP([C++])dnl case $boost_cv_lib_tag in #( # Some newer (>= 1.35?) versions of Boost seem to only use "gcc" as opposed # to "gcc41" for instance. *-gcc | *'-gcc ') :;; #( Don't re-add -gcc: it's already in there. gcc*) boost_tag_x= case $host_os in #( darwin*) if test $boost_major_version -ge 136; then # The `x' added in r46793 of Boost. boost_tag_x=x fi;; esac # We can specify multiple tags in this variable because it's used by # BOOST_FIND_LIB that does a `for tag in -$boost_cv_lib_tag' ... boost_cv_lib_tag="$boost_tag_x$boost_cv_lib_tag -${boost_tag_x}gcc" ;; #( unknown) AC_MSG_WARN([[could not figure out which toolset name to use for $CXX]]) boost_cv_lib_tag= ;; esac fi])dnl end of AC_CACHE_CHECK ])# _BOOST_FIND_COMPILER_TAG # _BOOST_GUESS_WHETHER_TO_USE_MT() # -------------------------------- # Compile a small test to try to guess whether we should favor MT (Multi # Thread) flavors of Boost. Sets boost_guess_use_mt accordingly. AC_DEFUN([_BOOST_GUESS_WHETHER_TO_USE_MT], [# Check whether we do better use `mt' even though we weren't ask to. AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #if defined _REENTRANT || defined _MT || defined __MT__ /* use -mt */ #else # error MT not needed #endif ]])], [boost_guess_use_mt=:], [boost_guess_use_mt=false]) ]) # _BOOST_AC_LINK_IFELSE(PROGRAM, [ACTION-IF-TRUE], [ACTION-IF-FALSE]) # ------------------------------------------------------------------- # Fork of _AC_LINK_IFELSE that preserves conftest.o across calls. Fragile, # will break when Autoconf changes its internals. Requires that you manually # rm -f conftest.$ac_objext in between to really different tests, otherwise # you will try to link a conftest.o left behind by a previous test. # Used to aggressively optimize BOOST_FIND_LIB (see the big comment in this # macro). # # Don't use "break" in the actions, as it would short-circuit some code # this macro runs after the actions. m4_define([_BOOST_AC_LINK_IFELSE], [m4_ifvaln([$1], [AC_LANG_CONFTEST([$1])])dnl rm -f conftest$ac_exeext boost_save_ac_ext=$ac_ext boost_use_source=: # If we already have a .o, re-use it. We change $ac_ext so that $ac_link # tries to link the existing object file instead of compiling from source. test -f conftest.$ac_objext && ac_ext=$ac_objext && boost_use_source=false && _AS_ECHO_LOG([re-using the existing conftest.$ac_objext]) AS_IF([_AC_DO_STDERR($ac_link) && { test -z "$ac_[]_AC_LANG_ABBREV[]_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_executable_p conftest$ac_exeext dnl FIXME: use AS_TEST_X instead when 2.61 is widespread enough. }], [$2], [if $boost_use_source; then _AC_MSG_LOG_CONFTEST fi $3]) ac_objext=$boost_save_ac_objext ac_ext=$boost_save_ac_ext dnl Delete also the IPA/IPO (Inter Procedural Analysis/Optimization) dnl information created by the PGI compiler (conftest_ipa8_conftest.oo), dnl as it would interfere with the next link command. rm -f core conftest.err conftest_ipa8_conftest.oo \ conftest$ac_exeext m4_ifval([$1], [conftest.$ac_ext])[]dnl ])# _BOOST_AC_LINK_IFELSE # Local Variables: # mode: autoconf # End: ibus-pinyin-1.5.0/m4/ltoptions.m40000644000175000017500000003007312063702752013530 00000000000000# Helper functions for option handling. -*- Autoconf -*- # # Copyright (C) 2004, 2005, 2007, 2008, 2009 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 7 ltoptions.m4 # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) # _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME) # ------------------------------------------ m4_define([_LT_MANGLE_OPTION], [[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])]) # _LT_SET_OPTION(MACRO-NAME, OPTION-NAME) # --------------------------------------- # Set option OPTION-NAME for macro MACRO-NAME, and if there is a # matching handler defined, dispatch to it. Other OPTION-NAMEs are # saved as a flag. m4_define([_LT_SET_OPTION], [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]), _LT_MANGLE_DEFUN([$1], [$2]), [m4_warning([Unknown $1 option `$2'])])[]dnl ]) # _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET]) # ------------------------------------------------------------ # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. m4_define([_LT_IF_OPTION], [m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])]) # _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET) # ------------------------------------------------------- # Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME # are set. m4_define([_LT_UNLESS_OPTIONS], [m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option), [m4_define([$0_found])])])[]dnl m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3 ])[]dnl ]) # _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST) # ---------------------------------------- # OPTION-LIST is a space-separated list of Libtool options associated # with MACRO-NAME. If any OPTION has a matching handler declared with # LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about # the unknown option and exit. m4_defun([_LT_SET_OPTIONS], [# Set options m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), [_LT_SET_OPTION([$1], _LT_Option)]) m4_if([$1],[LT_INIT],[ dnl dnl Simply set some default values (i.e off) if boolean options were not dnl specified: _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no ]) _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no ]) dnl dnl If no reference was made to various pairs of opposing options, then dnl we run the default mode handler for the pair. For example, if neither dnl `shared' nor `disable-shared' was passed, we enable building of shared dnl archives by default: _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED]) _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC]) _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC]) _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install], [_LT_ENABLE_FAST_INSTALL]) ]) ])# _LT_SET_OPTIONS ## --------------------------------- ## ## Macros to handle LT_INIT options. ## ## --------------------------------- ## # _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME) # ----------------------------------------- m4_define([_LT_MANGLE_DEFUN], [[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])]) # LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE) # ----------------------------------------------- m4_define([LT_OPTION_DEFINE], [m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl ])# LT_OPTION_DEFINE # dlopen # ------ LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes ]) AU_DEFUN([AC_LIBTOOL_DLOPEN], [_LT_SET_OPTION([LT_INIT], [dlopen]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `dlopen' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], []) # win32-dll # --------- # Declare package support for building win32 dll's. LT_OPTION_DEFINE([LT_INIT], [win32-dll], [enable_win32_dll=yes case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*) AC_CHECK_TOOL(AS, as, false) AC_CHECK_TOOL(DLLTOOL, dlltool, false) AC_CHECK_TOOL(OBJDUMP, objdump, false) ;; esac test -z "$AS" && AS=as _LT_DECL([], [AS], [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_PIC([MODE]) # -------------------- # implement the --with-pic flag, and support the `pic-only' and `no-pic' # LT_INIT options. # MODE is either `yes' or `no'. If omitted, it defaults to `both'. m4_define([_LT_WITH_PIC], [AC_ARG_WITH([pic], [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@], [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], [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=default]) test -z "$pic_mode" && pic_mode=m4_default([$1], [default]) _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl ])# _LT_WITH_PIC LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])]) LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])]) # Old name: AU_DEFUN([AC_LIBTOOL_PICMODE], [_LT_SET_OPTION([LT_INIT], [pic-only]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `pic-only' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_PICMODE], []) ## ----------------- ## ## LTDL_INIT Options ## ## ----------------- ## m4_define([_LTDL_MODE], []) LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive], [m4_define([_LTDL_MODE], [nonrecursive])]) LT_OPTION_DEFINE([LTDL_INIT], [recursive], [m4_define([_LTDL_MODE], [recursive])]) LT_OPTION_DEFINE([LTDL_INIT], [subproject], [m4_define([_LTDL_MODE], [subproject])]) m4_define([_LTDL_TYPE], []) LT_OPTION_DEFINE([LTDL_INIT], [installable], [m4_define([_LTDL_TYPE], [installable])]) LT_OPTION_DEFINE([LTDL_INIT], [convenience], [m4_define([_LTDL_TYPE], [convenience])]) ibus-pinyin-1.5.0/autogen.sh0000775000175000017500000000102512063702347012711 00000000000000#!/bin/sh # Run this to generate all the initial makefiles, etc. srcdir=`dirname $0` test -z "$srcdir" && srcdir=. PKG_NAME="ibus-pinyin" (test -f $srcdir/configure.ac \ && test -f $srcdir/README ) || { echo -n "**Error**: Directory "\`$srcdir\'" does not look like the" echo " top-level $PKG_NAME directory" exit 1 } which gnome-autogen.sh || { echo "You need to install gnome-common from the GNOME CVS" exit 1 } ACLOCAL_FLAGS="$ACLOCAL_FLAGS -I m4" REQUIRED_AUTOMAKE_VERSION=1.8 . gnome-autogen.sh "$@" ibus-pinyin-1.5.0/README0000664000175000017500000000015511762161772011601 00000000000000ibus-pinyin It includes a Chinese Pinyin input method and a Chinese ZhuYin (Bopomofo) input method for IBus. ibus-pinyin-1.5.0/configure0000775000175000017500000242424112063705664012637 00000000000000#! /bin/sh # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.68 for ibus-pinyin 1.5.0. # # Report bugs to . # # # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 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 -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 as_nl=' ' export as_nl # Printing a long string crashes Solaris 7 /usr/bin/printf. as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo # Prefer a ksh shell builtin over an external printf program on Solaris, # but without wasting forks for bash or zsh. if test -z "$BASH_VERSION$ZSH_VERSION" \ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='print -r --' as_echo_n='print -rn --' elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' as_echo_n='/usr/ucb/echo -n' else as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; esac; expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ' export as_echo_n_body as_echo_n='sh -c $as_echo_n_body as_echo' fi export as_echo_body as_echo='sh -c $as_echo_body as_echo' fi # The user is always right. 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 # IFS # We need space, tab and new line, in precisely that order. Quoting is # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) IFS=" "" $as_nl" # 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 test -z "$as_dir" && as_dir=. 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 $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # Unset variables that we do not need and which cause bugs (e.g. in # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" # suppresses any "Segmentation fault" message there. '((' could # trigger a bug in pdksh 5.2.14. for as_var in BASH_ENV ENV MAIL MAILPATH do eval test x\${$as_var+set} = xset \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH if test "x$CONFIG_SHELL" = x; then as_bourne_compatible="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 " 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 exitcode=1; echo positional parameters were not saved. fi test x\$exitcode = x0 || 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 as_have_required=no fi if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : else 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 test -z "$as_dir" && as_dir=. 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_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : CONFIG_SHELL=$as_shell as_have_required=yes if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : break 2 fi fi done;; esac as_found=false done $as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : CONFIG_SHELL=$SHELL as_have_required=yes fi; } IFS=$as_save_IFS if test "x$CONFIG_SHELL" != x; then : # 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 export CONFIG_SHELL 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+"$@"} fi if test x$as_have_required = xno; then : $as_echo "$0: This script requires a shell more modern than all" $as_echo "$0: the shells that I found on your system." if test x${ZSH_VERSION+set} = xset ; then $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" $as_echo "$0: be upgraded to zsh 4.3.4 or later." else $as_echo "$0: Please tell bug-autoconf@gnu.org and $0: http://code.google.com/p/ibus/issues/entry about your $0: system, 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 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=`$as_echo "$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 || $as_echo 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_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 as_fn_append () { eval $1=\$$1\$2 } 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 as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } 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 $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi $as_echo "$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 || $as_echo 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 ' 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" || { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } # 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 } 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 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 -p'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -p' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi else as_ln_s='cp -p' 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 if test -x / >/dev/null 2>&1; then as_test_x='test -x' else if ls -dL / >/dev/null 2>&1; then as_ls_L_option=L else as_ls_L_option= fi as_test_x=' eval sh -c '\'' if test -d "$1"; then test -d "$1/."; else case $1 in #( -*)set "./$1";; esac; case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( ???[sx]*):;;*)false;;esac;fi '\'' sh ' fi as_executable_p=$as_test_x # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" 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-pinyin' PACKAGE_TARNAME='ibus-pinyin' PACKAGE_VERSION='1.5.0' PACKAGE_STRING='ibus-pinyin 1.5.0' PACKAGE_BUGREPORT='http://code.google.com/p/ibus/issues/entry' PACKAGE_URL='' # Factoring default headers for most tests. ac_includes_default="\ #include #ifdef HAVE_SYS_TYPES_H # include #endif #ifdef HAVE_SYS_STAT_H # include #endif #ifdef STDC_HEADERS # include # include #else # ifdef HAVE_STDLIB_H # include # endif #endif #ifdef HAVE_STRING_H # if !defined STDC_HEADERS && defined HAVE_MEMORY_H # include # endif # include #endif #ifdef HAVE_STRINGS_H # include #endif #ifdef HAVE_INTTYPES_H # include #endif #ifdef HAVE_STDINT_H # include #endif #ifdef HAVE_UNISTD_H # include #endif" ac_subst_vars='am__EXEEXT_FALSE am__EXEEXT_TRUE LTLIBOBJS LIBOBJS IBUS_BUILD_ENGLISH_INPUT_MODE_FALSE IBUS_BUILD_ENGLISH_INPUT_MODE_TRUE IBUS_BUILD_LUA_EXTENSION_FALSE IBUS_BUILD_LUA_EXTENSION_TRUE LUA_LIBS LUA_CFLAGS MKINSTALLDIRS POSUB POFILES PO_IN_DATADIR_FALSE PO_IN_DATADIR_TRUE INTLLIBS INSTOBJEXT GMOFILES CATOBJEXT CATALOGS MSGFMT_OPTS GETTEXT_PACKAGE HAVE_BOOST_FALSE HAVE_BOOST_TRUE BOOST_CPPFLAGS DISTCHECK_CONFIGURE_FLAGS BOOST_ROOT pkgpyexecdir pyexecdir pkgpythondir pythondir PYTHON_PLATFORM PYTHON_EXEC_PREFIX PYTHON_PREFIX PYTHON_VERSION PYTHON ENV SQLITE3 SQLITE_LIBS SQLITE_CFLAGS PYZY PYZY_LIBS PYZY_CFLAGS IBUS_LIBS IBUS_CFLAGS PKG_CONFIG_LIBDIR PKG_CONFIG_PATH PKG_CONFIG CXXCPP OTOOL64 OTOOL LIPO NMEDIT DSYMUTIL MANIFEST_TOOL RANLIB ac_ct_AR AR DLLTOOL OBJDUMP LN_S NM ac_ct_DUMPBIN DUMPBIN LD FGREP SED host_os host_vendor host_cpu host build_os build_vendor build_cpu build LIBTOOL DATADIRNAME ALL_LINGUAS INTLTOOL_PERL GMSGFMT MSGFMT MSGMERGE XGETTEXT INTLTOOL_POLICY_RULE INTLTOOL_SERVICE_RULE INTLTOOL_THEME_RULE INTLTOOL_SCHEMAS_RULE INTLTOOL_CAVES_RULE INTLTOOL_XML_NOMERGE_RULE INTLTOOL_XML_RULE INTLTOOL_KBD_RULE INTLTOOL_XAM_RULE INTLTOOL_UI_RULE INTLTOOL_SOUNDLIST_RULE INTLTOOL_SHEET_RULE INTLTOOL_SERVER_RULE INTLTOOL_PONG_RULE INTLTOOL_OAF_RULE INTLTOOL_PROP_RULE INTLTOOL_KEYS_RULE INTLTOOL_DIRECTORY_RULE INTLTOOL_DESKTOP_RULE intltool__v_merge_options_0 intltool__v_merge_options_ INTLTOOL_V_MERGE_OPTIONS INTLTOOL__v_MERGE_0 INTLTOOL__v_MERGE_ INTLTOOL_V_MERGE INTLTOOL_EXTRACT INTLTOOL_MERGE INTLTOOL_UPDATE USE_NLS am__fastdepCXX_FALSE am__fastdepCXX_TRUE CXXDEPMODE ac_ct_CXX CXXFLAGS CXX MAINT MAINTAINER_MODE_FALSE MAINTAINER_MODE_TRUE PACKAGE_VERSION_RELEASE PACKAGE_VERSION_NANO PACKAGE_VERSION_MICRO PACKAGE_VERSION_MINOR PACKAGE_VERSION_MAJOR AM_BACKSLASH AM_DEFAULT_VERBOSITY AM_DEFAULT_V AM_V EGREP GREP CPP am__fastdepCC_FALSE am__fastdepCC_TRUE CCDEPMODE am__nodep AMDEPBACKSLASH AMDEP_FALSE AMDEP_TRUE am__quote am__include DEPDIR OBJEXT EXEEXT ac_ct_CC CPPFLAGS LDFLAGS CFLAGS CC 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 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 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' ac_subst_files='' ac_user_opts=' enable_option_checking enable_dependency_tracking enable_silent_rules enable_maintainer_mode enable_static enable_nls enable_shared with_pic enable_fast_install with_gnu_ld with_sysroot enable_libtool_lock enable_boost with_boost enable_lua_extension enable_english_input_mode ' ac_precious_vars='build_alias host_alias target_alias CC CFLAGS LDFLAGS LIBS CPPFLAGS CPP CXX CXXFLAGS CCC CXXCPP PKG_CONFIG PKG_CONFIG_PATH PKG_CONFIG_LIBDIR IBUS_CFLAGS IBUS_LIBS PYZY_CFLAGS PYZY_LIBS SQLITE_CFLAGS SQLITE_LIBS PYTHON BOOST_ROOT LUA_CFLAGS LUA_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' 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 # Accept the important Cygnus configure options, so we can diagnose typos. 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=`$as_echo "$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=`$as_echo "$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 ;; -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=`$as_echo "$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=`$as_echo "$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. $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && $as_echo "$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" ;; *) $as_echo "$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 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 $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used" >&2 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 || $as_echo 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-pinyin 1.5.0 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] --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-pinyin] --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-pinyin 1.5.0:";; 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] --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors --enable-silent-rules less verbose build output (undo: `make V=1') --disable-silent-rules verbose build output (undo: `make V=0') --enable-maintainer-mode enable make rules and dependencies not useful (and sometimes confusing) to the casual installer --enable-static[=PKGS] build static libraries [default=no] --disable-nls do not use Native Language Support --enable-shared[=PKGS] build shared libraries [default=yes] --enable-fast-install[=PKGS] optimize for fast installation [default=yes] --disable-libtool-lock avoid locking (might break parallel builds) --enable-boost Use boost to replace stdc++0x. --disable-lua-extension do not build lua extension --disable-english-input-mode do not build english input mode Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use both] --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-boost=DIR prefix of Boost 1.39 [guess] 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 CXX C++ compiler command CXXFLAGS C++ compiler flags CXXCPP C++ preprocessor 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 IBUS_CFLAGS C compiler flags for IBUS, overriding pkg-config IBUS_LIBS linker flags for IBUS, overriding pkg-config PYZY_CFLAGS C compiler flags for PYZY, overriding pkg-config PYZY_LIBS linker flags for PYZY, overriding pkg-config SQLITE_CFLAGS C compiler flags for SQLITE, overriding pkg-config SQLITE_LIBS linker flags for SQLITE, overriding pkg-config PYTHON the Python interpreter BOOST_ROOT Location of Boost installation LUA_CFLAGS C compiler flags for LUA, overriding pkg-config LUA_LIBS linker flags for LUA, 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=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`$as_echo "$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 guested configure. 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 $as_echo "$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-pinyin configure 1.5.0 generated by GNU Autoconf 2.68 Copyright (C) 2010 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 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\"" $as_echo "$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 $as_echo "$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 $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 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_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\"" $as_echo "$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 $as_echo "$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 $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 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_check_header_mongrel LINENO HEADER VAR INCLUDES # ------------------------------------------------------- # Tests whether HEADER exists, giving a warning if it cannot be compiled using # the include files in INCLUDES and setting the cache variable VAR # accordingly. ac_fn_c_check_header_mongrel () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if eval \${$3+:} false; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } else # Is the header compilable? { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 $as_echo_n "checking $2 usability... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_header_compiler=yes else ac_header_compiler=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 $as_echo "$ac_header_compiler" >&6; } # Is the header present? { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 $as_echo_n "checking $2 presence... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include <$2> _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : ac_header_preproc=yes else ac_header_preproc=no fi rm -f conftest.err conftest.i conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 $as_echo "$ac_header_preproc" >&6; } # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( yes:no: ) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 $as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} ;; no:yes:* ) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 $as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 $as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 $as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 $as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} ( $as_echo "## --------------------------------------------------------- ## ## Report this to http://code.google.com/p/ibus/issues/entry ## ## --------------------------------------------------------- ##" ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else eval "$3=\$ac_header_compiler" fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_header_mongrel # ac_fn_c_try_run LINENO # ---------------------- # Try to link 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\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$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\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then : ac_retval=0 else $as_echo "$as_me: program exited with status $ac_status" >&5 $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=$ac_status 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_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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else 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 eval "$3=no" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_header_compile # ac_fn_cxx_try_compile LINENO # ---------------------------- # Try to compile conftest.$ac_ext, and return whether this succeeded. ac_fn_cxx_try_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext 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\"" $as_echo "$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 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_cxx_try_compile # 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$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\"" $as_echo "$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 $as_echo "$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 || $as_test_x conftest$ac_exeext }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 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_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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else 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 (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #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 (); /* 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 () { return $2 (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : eval "$3=yes" else eval "$3=no" fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_func # ac_fn_cxx_try_cpp LINENO # ------------------------ # Try to preprocess conftest.$ac_ext, and return whether this succeeded. ac_fn_cxx_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\"" $as_echo "$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 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } > conftest.i && { test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || test ! -s conftest.err }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_cxx_try_cpp # ac_fn_cxx_try_link LINENO # ------------------------- # Try to link conftest.$ac_ext, and return whether this succeeded. ac_fn_cxx_try_link () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext 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\"" $as_echo "$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 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 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_cxx_try_link # ac_fn_cxx_check_header_mongrel LINENO HEADER VAR INCLUDES # --------------------------------------------------------- # Tests whether HEADER exists, giving a warning if it cannot be compiled using # the include files in INCLUDES and setting the cache variable VAR # accordingly. ac_fn_cxx_check_header_mongrel () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if eval \${$3+:} false; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } else # Is the header compilable? { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 $as_echo_n "checking $2 usability... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : ac_header_compiler=yes else ac_header_compiler=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 $as_echo "$ac_header_compiler" >&6; } # Is the header present? { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 $as_echo_n "checking $2 presence... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include <$2> _ACEOF if ac_fn_cxx_try_cpp "$LINENO"; then : ac_header_preproc=yes else ac_header_preproc=no fi rm -f conftest.err conftest.i conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 $as_echo "$ac_header_preproc" >&6; } # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_cxx_preproc_warn_flag in #(( yes:no: ) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 $as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} ;; no:yes:* ) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 $as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 $as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 $as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 $as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} ( $as_echo "## --------------------------------------------------------- ## ## Report this to http://code.google.com/p/ibus/issues/entry ## ## --------------------------------------------------------- ##" ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else eval "$3=\$ac_header_compiler" fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_cxx_check_header_mongrel 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-pinyin $as_me 1.5.0, which was generated by GNU Autoconf 2.68. Invocation command line was $ $0 $@ _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 test -z "$as_dir" && as_dir=. $as_echo "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=`$as_echo "$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=$? # Save into config.log some information that might help in debugging. { echo $as_echo "## ---------------- ## ## 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_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$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 $as_echo "## ----------------- ## ## Output variables. ## ## ----------------- ##" echo for ac_var in $ac_subst_vars do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac $as_echo "$ac_var='\''$ac_val'\''" done | sort echo if test -n "$ac_subst_files"; then $as_echo "## ------------------- ## ## File substitutions. ## ## ------------------- ##" echo for ac_var in $ac_subst_files do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac $as_echo "$ac_var='\''$ac_val'\''" done | sort echo fi if test -s confdefs.h; then $as_echo "## ----------- ## ## confdefs.h. ## ## ----------- ##" echo cat confdefs.h echo fi test "$ac_signal" != 0 && $as_echo "$as_me: caught signal $ac_signal" $as_echo "$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 $as_echo "/* confdefs.h */" > confdefs.h # Predefined preprocessor variables. cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_URL "$PACKAGE_URL" _ACEOF # Let the site file select an alternate cache file if it wants to. # Prefer an explicitly selected file to automatically selected ones. ac_site_file1=NONE ac_site_file2=NONE if test -n "$CONFIG_SITE"; then # We do not want a PATH search for config.site. case $CONFIG_SITE in #(( -*) ac_site_file1=./$CONFIG_SITE;; */*) ac_site_file1=$CONFIG_SITE;; *) ac_site_file1=./$CONFIG_SITE;; esac elif test "x$prefix" != xNONE; then ac_site_file1=$prefix/share/config.site ac_site_file2=$prefix/etc/config.site else ac_site_file1=$ac_default_prefix/share/config.site ac_site_file2=$ac_default_prefix/etc/config.site fi for ac_site_file in "$ac_site_file1" "$ac_site_file2" do test "x$ac_site_file" = xNONE && continue if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 $as_echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" \ || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 $as_echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . "$cache_file";; *) . "./$cache_file";; esac fi else { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 $as_echo "$as_me: creating cache $cache_file" >&6;} >$cache_file 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,) { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 $as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} ac_cache_corrupted=: else { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 $as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} eval $ac_var=\$ac_old_val fi { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 $as_echo "$as_me: former value: \`$ac_old_val'" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 $as_echo "$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=`$as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} as_fn_error $? "run \`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 am__api_version='1.11' ac_aux_dir= for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do if test -f "$ac_dir/install-sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install-sh -c" break elif test -f "$ac_dir/install.sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install.sh -c" break elif test -f "$ac_dir/shtool"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/shtool install -c" break fi done if test -z "$ac_aux_dir"; then as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 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. ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. # 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. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 $as_echo_n "checking for a BSD-compatible install... " >&6; } if test -z "$INSTALL"; then if ${ac_cv_path_install+:} false; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. # Account for people who put trailing slashes in PATH elements. 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 { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$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 fi if test "${ac_cv_path_install+set}" = set; 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 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 $as_echo "$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' { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 $as_echo_n "checking whether build environment is sane... " >&6; } # Just in case sleep 1 echo timestamp > conftest.file # 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). 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 rm -f conftest.file if test "$*" != "X $srcdir/configure conftest.file" \ && test "$*" != "X conftest.file $srcdir/configure"; then # 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_fn_error $? "ls -t appears to fail. Make sure there is not a broken alias in your environment" "$LINENO" 5 fi test "$2" = conftest.file ) then # Ok. : else as_fn_error $? "newly created file is older than distributed files! Check your system clock" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } 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=`$as_echo "$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 case $am_aux_dir in *\ * | *\ *) MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; *) MISSING="\${SHELL} $am_aux_dir/missing" ;; esac fi # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5 $as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} fi if test x"${install_sh}" != 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 $as_echo "$STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_STRIP="strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 $as_echo "$ac_ct_STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_STRIP" = x; then STRIP=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 $as_echo_n "checking for a thread-safe mkdir -p... " >&6; } if test -z "$MKDIR_P"; then if ${ac_cv_path_mkdir+:} false; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in mkdir gmkdir; do for ac_exec_ext in '' $ac_executable_extensions; do { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( 'mkdir (GNU coreutils) '* | \ 'mkdir (coreutils) '* | \ '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 fi test -d ./--version && rmdir ./--version if test "${ac_cv_path_mkdir+set}" = set; then MKDIR_P="$ac_cv_path_mkdir -p" else # As a last resort, use the slow shell script. Don't cache a # value for MKDIR_P 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. MKDIR_P="$ac_install_sh -d" fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 $as_echo "$MKDIR_P" >&6; } mkdir_p="$MKDIR_P" case $mkdir_p in [\\/$]* | ?:[\\/]*) ;; */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; esac 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_AWK+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AWK="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 $as_echo "$AWK" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$AWK" && break done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } set x ${MAKE-make} ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : $as_echo_n "(cached) " >&6 else 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 fi if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } SET_MAKE= else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 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-pinyin' VERSION='1.5.0' cat >>confdefs.h <<_ACEOF #define PACKAGE "$PACKAGE" _ACEOF cat >>confdefs.h <<_ACEOF #define VERSION "$VERSION" _ACEOF # 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"} # We need awk for the "check" target. 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}' am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -' DEPDIR="${am__leading_dot}deps" ac_config_commands="$ac_config_commands depfiles" am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 $as_echo_n "checking for style of include used by $am_make... " >&6; } am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # Ignore all kinds of additional output from `make'. case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=include am__quote= _am_result=GNU ;; esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=.include am__quote="\"" _am_result=BSD ;; esac fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 $as_echo "$_am_result" >&6; } rm -f confinc confmf # Check whether --enable-dependency-tracking was given. if test "${enable_dependency_tracking+set}" = set; 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$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" $as_echo "$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 fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$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. $as_echo "$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; 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\"" $as_echo "$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 $as_echo "$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 () { ; 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. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 $as_echo_n "checking whether the C compiler works... " >&6; } ac_link_default=`$as_echo "$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\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link_default") 2>&5 ac_status=$? $as_echo "$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+set}" = set && 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 ac_file='' fi if test -z "$ac_file"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 $as_echo_n "checking for C compiler default output file name... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 $as_echo_n "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\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$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 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$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; } fi rm -f conftest conftest$ac_cv_exeext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 $as_echo "$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 () { FILE *f = fopen ("conftest.out", "w"); 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. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 $as_echo_n "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\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$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\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$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 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details" "$LINENO" 5; } fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 $as_echo "$cross_compiling" >&6; } rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out ac_clean_files=$ac_clean_files_save { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 $as_echo_n "checking for suffix of object files... " >&6; } if ${ac_cv_objext+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; 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\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>&5 ac_status=$? $as_echo "$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 $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$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; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 $as_echo "$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } if ${ac_cv_c_compiler_gnu+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } if ${ac_cv_prog_cc_g+:} false; then : $as_echo_n "(cached) " >&6 else 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 () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : else ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; 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.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } if ${ac_cv_prog_cc_c89+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) 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; } /* 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 don't provoke an error unfortunately, instead are silently treated as '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's necessary to write '\x00'==0 to get something that's 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 **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _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 test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC fi # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac if test "x$ac_cv_prog_cc_c89" != xno; then : 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= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if ${am_cv_CC_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else 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 8's {/usr,}/bin/sh. touch 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 thusly: # 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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 $as_echo "$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_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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 $as_echo_n "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 ${ac_cv_prog_CPP+:} false; then : $as_echo_n "(cached) " >&6 else # Double quotes because CPP needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-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. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # 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. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue 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 # Passes both tests. ac_preproc_ok=: break 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 fi CPP=$ac_cv_prog_CPP else ac_cv_prog_CPP=$CPP fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 $as_echo "$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. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # 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. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue 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 # Passes both tests. ac_preproc_ok=: break 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 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details" "$LINENO" 5; } 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 $as_echo_n "checking for grep that handles long lines and -e... " >&6; } if ${ac_cv_path_GREP+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. 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" { test -f "$ac_path_GREP" && $as_test_x "$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 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo '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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 $as_echo "$ac_cv_path_GREP" >&6; } GREP="$ac_cv_path_GREP" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 $as_echo_n "checking for egrep... " >&6; } if ${ac_cv_path_EGREP+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. 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" { test -f "$ac_path_EGREP" && $as_test_x "$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 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo '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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 $as_echo "$ac_cv_path_EGREP" >&6; } EGREP="$ac_cv_path_EGREP" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 $as_echo_n "checking for ANSI C header files... " >&6; } if ${ac_cv_header_stdc+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_header_stdc=yes else ac_cv_header_stdc=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "memchr" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "free" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. if test "$cross_compiling" = yes; then : : else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ (('a' <= (c) && (c) <= 'i') \ || ('j' <= (c) && (c) <= 'r') \ || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) return 2; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : else ac_cv_header_stdc=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 $as_echo "$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then $as_echo "#define STDC_HEADERS 1" >>confdefs.h fi # On IRIX 5.3, sys/types and inttypes.h are conflicting. for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ inttypes.h stdint.h unistd.h do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default " if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done ac_fn_c_check_header_mongrel "$LINENO" "minix/config.h" "ac_cv_header_minix_config_h" "$ac_includes_default" if test "x$ac_cv_header_minix_config_h" = xyes; then : MINIX=yes else MINIX= fi if test "$MINIX" = yes; then $as_echo "#define _POSIX_SOURCE 1" >>confdefs.h $as_echo "#define _POSIX_1_SOURCE 2" >>confdefs.h $as_echo "#define _MINIX 1" >>confdefs.h fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5 $as_echo_n "checking whether it is safe to define __EXTENSIONS__... " >&6; } if ${ac_cv_safe_to_define___extensions__+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ # define __EXTENSIONS__ 1 $ac_includes_default int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_safe_to_define___extensions__=yes else ac_cv_safe_to_define___extensions__=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5 $as_echo "$ac_cv_safe_to_define___extensions__" >&6; } test $ac_cv_safe_to_define___extensions__ = yes && $as_echo "#define __EXTENSIONS__ 1" >>confdefs.h $as_echo "#define _ALL_SOURCE 1" >>confdefs.h $as_echo "#define _GNU_SOURCE 1" >>confdefs.h $as_echo "#define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h $as_echo "#define _TANDEM_SOURCE 1" >>confdefs.h ac_config_headers="$ac_config_headers config.h" # Check whether --enable-silent-rules was given. if test "${enable_silent_rules+set}" = set; then : enableval=$enable_silent_rules; fi case $enable_silent_rules in yes) AM_DEFAULT_VERBOSITY=0;; no) AM_DEFAULT_VERBOSITY=1;; *) AM_DEFAULT_VERBOSITY=0;; esac am_make=${MAKE-make} { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 $as_echo_n "checking whether $am_make supports nested variables... " >&6; } if ${am_cv_make_support_nested_variables+:} false; then : $as_echo_n "(cached) " >&6 else 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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 $as_echo "$am_cv_make_support_nested_variables" >&6; } 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 AM_BACKSLASH='\' # define PACKAGE_VERSION_* variables PACKAGE_VERSION_MAJOR=$(echo 1.5.0 | cut -d'.' -f1) PACKAGE_VERSION_MINOR=$(echo 1.5.0 | cut -d'.' -f2) PACKAGE_VERSION_MICRO=$(echo 1.5.0 | cut -d'.' -f3) { $as_echo "$as_me:${as_lineno-$LINENO}: checking nano version" >&5 $as_echo_n "checking nano version... " >&6; } NANO=$(echo 1.5.0 | cut -d'.' -f4) if test x"$NANO" = x || test "x$NANO" = "x0" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: 0 (release)" >&5 $as_echo "0 (release)" >&6; } NANO=0 PACKAGE_VERSION_RELEASE=1 : else { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NANO" >&5 $as_echo "$NANO" >&6; } PACKAGE_VERSION_RELEASE=0.`date +%Y%m%d.%H%M%S` : fi PACKAGE_VERSION_NANO=$NANO { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 $as_echo_n "checking whether build environment is sane... " >&6; } # Just in case sleep 1 echo timestamp > conftest.file # 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). 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 rm -f conftest.file if test "$*" != "X $srcdir/configure conftest.file" \ && test "$*" != "X conftest.file $srcdir/configure"; then # 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_fn_error $? "ls -t appears to fail. Make sure there is not a broken alias in your environment" "$LINENO" 5 fi test "$2" = conftest.file ) then # Ok. : else as_fn_error $? "newly created file is older than distributed files! Check your system clock" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5 $as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } # Check whether --enable-maintainer-mode was given. if test "${enable_maintainer_mode+set}" = set; then : enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval else USE_MAINTAINER_MODE=no fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 $as_echo "$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 # Check whether --enable-static was given. if test "${enable_static+set}" = set; 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 enable_static=no 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$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" $as_echo "$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 fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$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. $as_echo "$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; 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\"" $as_echo "$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 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } if ${ac_cv_c_compiler_gnu+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } if ${ac_cv_prog_cc_g+:} false; then : $as_echo_n "(cached) " >&6 else 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 () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : else ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; 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.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } if ${ac_cv_prog_cc_c89+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) 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; } /* 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 don't provoke an error unfortunately, instead are silently treated as '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's necessary to write '\x00'==0 to get something that's 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 **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _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 test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC fi # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac if test "x$ac_cv_prog_cc_c89" != xno; then : 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= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if ${am_cv_CC_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else 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 8's {/usr,}/bin/sh. touch 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 thusly: # 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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 $as_echo "$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_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu if test -z "$CXX"; then if test -n "$CCC"; then CXX=$CCC else if test -n "$ac_tool_prefix"; then for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CXX+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CXX"; then ac_cv_prog_CXX="$CXX" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CXX=$ac_cv_prog_CXX if test -n "$CXX"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5 $as_echo "$CXX" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$CXX" && break done fi if test -z "$CXX"; then ac_ct_CXX=$CXX for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CXX+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CXX"; then ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CXX="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CXX=$ac_cv_prog_ac_ct_CXX if test -n "$ac_ct_CXX"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5 $as_echo "$ac_ct_CXX" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_CXX" && break done if test "x$ac_ct_CXX" = x; then CXX="g++" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CXX=$ac_ct_CXX fi fi fi fi # Provide some information about the compiler. $as_echo "$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; 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\"" $as_echo "$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 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5 $as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; } if ${ac_cv_cxx_compiler_gnu+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_cxx_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5 $as_echo "$ac_cv_cxx_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GXX=yes else GXX= fi ac_test_CXXFLAGS=${CXXFLAGS+set} ac_save_CXXFLAGS=$CXXFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5 $as_echo_n "checking whether $CXX accepts -g... " >&6; } if ${ac_cv_prog_cxx_g+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_cxx_werror_flag=$ac_cxx_werror_flag ac_cxx_werror_flag=yes ac_cv_prog_cxx_g=no CXXFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : ac_cv_prog_cxx_g=yes else CXXFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : else ac_cxx_werror_flag=$ac_save_cxx_werror_flag CXXFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : ac_cv_prog_cxx_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cxx_werror_flag=$ac_save_cxx_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5 $as_echo "$ac_cv_prog_cxx_g" >&6; } if test "$ac_test_CXXFLAGS" = set; then CXXFLAGS=$ac_save_CXXFLAGS elif test $ac_cv_prog_cxx_g = yes; then if test "$GXX" = yes; then CXXFLAGS="-g -O2" else CXXFLAGS="-g" fi else if test "$GXX" = yes; then CXXFLAGS="-O2" else CXXFLAGS= 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 depcc="$CXX" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if ${am_cv_CXX_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else 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_CXX_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 8's {/usr,}/bin/sh. touch 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 thusly: # 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_CXX_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CXX_dependencies_compiler_type=none fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5 $as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; } CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then am__fastdepCXX_TRUE= am__fastdepCXX_FALSE='#' else am__fastdepCXX_TRUE='#' am__fastdepCXX_FALSE= fi if test "x$CC" != xcc; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC and cc understand -c and -o together" >&5 $as_echo_n "checking whether $CC and cc understand -c and -o together... " >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether cc understands -c and -o together" >&5 $as_echo_n "checking whether cc understands -c and -o together... " >&6; } fi set dummy $CC; ac_cc=`$as_echo "$2" | sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'` if eval \${ac_cv_prog_cc_${ac_cc}_c_o+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF # Make sure it works both with $CC and with simple cc. # We do the test twice because some compilers refuse to overwrite an # existing .o file with -o, though they will create one. ac_try='$CC -c conftest.$ac_ext -o conftest2.$ac_objext >&5' rm -f conftest2.* if { { 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\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -f conftest2.$ac_objext && { { 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\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then eval ac_cv_prog_cc_${ac_cc}_c_o=yes if test "x$CC" != xcc; then # Test first that cc exists at all. if { ac_try='cc -c conftest.$ac_ext >&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\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then ac_try='cc -c conftest.$ac_ext -o conftest2.$ac_objext >&5' rm -f conftest2.* if { { 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\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -f conftest2.$ac_objext && { { 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\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then # cc works too. : else # cc exists but doesn't like -o. eval ac_cv_prog_cc_${ac_cc}_c_o=no fi fi fi else eval ac_cv_prog_cc_${ac_cc}_c_o=no fi rm -f core conftest* fi if eval test \$ac_cv_prog_cc_${ac_cc}_c_o = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } $as_echo "#define NO_MINUS_C_MINUS_O 1" >>confdefs.h fi # FIXME: we rely on the cache variable name because # there is no other way. set dummy $CC am_cc=`echo $2 | sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'` eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o if test "$am_t" != 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing strerror" >&5 $as_echo_n "checking for library containing strerror... " >&6; } if ${ac_cv_search_strerror+:} false; then : $as_echo_n "(cached) " >&6 else 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. */ #ifdef __cplusplus extern "C" #endif char strerror (); int main () { 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$ac_exeext if ${ac_cv_search_strerror+:} false; then : break fi done if ${ac_cv_search_strerror+:} false; then : else ac_cv_search_strerror=no fi rm conftest.$ac_ext LIBS=$ac_func_search_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_strerror" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 $as_echo_n "checking for ANSI C header files... " >&6; } if ${ac_cv_header_stdc+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_header_stdc=yes else ac_cv_header_stdc=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "memchr" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "free" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. if test "$cross_compiling" = yes; then : : else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ (('a' <= (c) && (c) <= 'i') \ || ('j' <= (c) && (c) <= 'r') \ || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) return 2; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : else ac_cv_header_stdc=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 $as_echo "$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then $as_echo "#define STDC_HEADERS 1" >>confdefs.h fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5 $as_echo_n "checking whether NLS is requested... " >&6; } # Check whether --enable-nls was given. if test "${enable_nls+set}" = set; then : enableval=$enable_nls; USE_NLS=$enableval else USE_NLS=yes fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5 $as_echo "$USE_NLS" >&6; } case "$am__api_version" in 1.01234) as_fn_error $? "Automake 1.5 or newer is required to use intltool" "$LINENO" 5 ;; *) ;; esac INTLTOOL_REQUIRED_VERSION_AS_INT=`echo 0.35.0 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3` INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` if test -n "0.35.0"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intltool >= 0.35.0" >&5 $as_echo_n "checking for intltool >= 0.35.0... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_APPLIED_VERSION found" >&5 $as_echo "$INTLTOOL_APPLIED_VERSION found" >&6; } test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || as_fn_error $? "Your intltool is too old. You need intltool 0.35.0 or later." "$LINENO" 5 fi # Extract the first word of "intltool-update", so it can be a program name with args. set dummy intltool-update; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_INTLTOOL_UPDATE+:} false; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_UPDATE in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_UPDATE="$INTLTOOL_UPDATE" # 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_INTLTOOL_UPDATE="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_UPDATE=$ac_cv_path_INTLTOOL_UPDATE if test -n "$INTLTOOL_UPDATE"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_UPDATE" >&5 $as_echo "$INTLTOOL_UPDATE" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "intltool-merge", so it can be a program name with args. set dummy intltool-merge; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_INTLTOOL_MERGE+:} false; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_MERGE in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_MERGE="$INTLTOOL_MERGE" # 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_INTLTOOL_MERGE="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_MERGE=$ac_cv_path_INTLTOOL_MERGE if test -n "$INTLTOOL_MERGE"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_MERGE" >&5 $as_echo "$INTLTOOL_MERGE" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "intltool-extract", so it can be a program name with args. set dummy intltool-extract; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_INTLTOOL_EXTRACT+:} false; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_EXTRACT in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_EXTRACT="$INTLTOOL_EXTRACT" # 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_INTLTOOL_EXTRACT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_EXTRACT=$ac_cv_path_INTLTOOL_EXTRACT if test -n "$INTLTOOL_EXTRACT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_EXTRACT" >&5 $as_echo "$INTLTOOL_EXTRACT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then as_fn_error $? "The intltool scripts were not found. Please install intltool." "$LINENO" 5 fi if test -z "$AM_DEFAULT_VERBOSITY"; then AM_DEFAULT_VERBOSITY=1 fi INTLTOOL_V_MERGE='$(INTLTOOL__v_MERGE_$(V))' INTLTOOL__v_MERGE_='$(INTLTOOL__v_MERGE_$(AM_DEFAULT_VERBOSITY))' INTLTOOL__v_MERGE_0='@echo " ITMRG " $@;' INTLTOOL_V_MERGE_OPTIONS='$(intltool__v_merge_options_$(V))' intltool__v_merge_options_='$(intltool__v_merge_options_$(AM_DEFAULT_VERBOSITY))' intltool__v_merge_options_0='-q' INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -p $(top_srcdir)/po $< $@' INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' if test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge 5000; then INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u --no-translations $< $@' else INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)_it_tmp_dir=tmp.intltool.$$RANDOM && mkdir $$_it_tmp_dir && LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u $$_it_tmp_dir $< $@ && rmdir $$_it_tmp_dir' fi INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' # Check the gettext tools to make sure they are GNU # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_XGETTEXT+:} false; then : $as_echo_n "(cached) " >&6 else case $XGETTEXT in [\\/]* | ?:[\\/]*) ac_cv_path_XGETTEXT="$XGETTEXT" # 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_XGETTEXT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi XGETTEXT=$ac_cv_path_XGETTEXT if test -n "$XGETTEXT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 $as_echo "$XGETTEXT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "msgmerge", so it can be a program name with args. set dummy msgmerge; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_MSGMERGE+:} false; then : $as_echo_n "(cached) " >&6 else case $MSGMERGE in [\\/]* | ?:[\\/]*) ac_cv_path_MSGMERGE="$MSGMERGE" # 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_MSGMERGE="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi MSGMERGE=$ac_cv_path_MSGMERGE if test -n "$MSGMERGE"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5 $as_echo "$MSGMERGE" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_MSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else case $MSGFMT in [\\/]* | ?:[\\/]*) ac_cv_path_MSGFMT="$MSGFMT" # 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_MSGFMT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi MSGFMT=$ac_cv_path_MSGFMT if test -n "$MSGFMT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 $as_echo "$MSGFMT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_GMSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$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 fi GMSGFMT=$ac_cv_path_GMSGFMT if test -n "$GMSGFMT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 $as_echo "$GMSGFMT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then as_fn_error $? "GNU gettext tools not found; required for intltool" "$LINENO" 5 fi xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then as_fn_error $? "GNU gettext tools not found; required for intltool" "$LINENO" 5 fi # Extract the first word of "perl", so it can be a program name with args. set dummy perl; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_INTLTOOL_PERL+:} false; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_PERL in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_PERL="$INTLTOOL_PERL" # 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_INTLTOOL_PERL="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_PERL=$ac_cv_path_INTLTOOL_PERL if test -n "$INTLTOOL_PERL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_PERL" >&5 $as_echo "$INTLTOOL_PERL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$INTLTOOL_PERL"; then as_fn_error $? "perl not found" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for perl >= 5.8.1" >&5 $as_echo_n "checking for perl >= 5.8.1... " >&6; } $INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1 if test $? -ne 0; then as_fn_error $? "perl 5.8.1 is required for intltool" "$LINENO" 5 else IT_PERL_VERSION=`$INTLTOOL_PERL -e "printf '%vd', $^V"` { $as_echo "$as_me:${as_lineno-$LINENO}: result: $IT_PERL_VERSION" >&5 $as_echo "$IT_PERL_VERSION" >&6; } fi if test "x" != "xno-xml"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XML::Parser" >&5 $as_echo_n "checking for XML::Parser... " >&6; } if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 $as_echo "ok" >&6; } else as_fn_error $? "XML::Parser perl module is required for intltool" "$LINENO" 5 fi fi # Substitute ALL_LINGUAS so we can use it in po/Makefile # Set DATADIRNAME correctly if it is not set yet # (copied from glib-gettext.m4) if test -z "$DATADIRNAME"; then cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : DATADIRNAME=share else case $host in *-*-solaris*) ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : DATADIRNAME=share else DATADIRNAME=lib fi ;; *) DATADIRNAME=lib ;; esac fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi case `pwd` in *\ * | *\ *) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 $as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;; esac macro_version='2.4.2' macro_revision='1.3337' ltmain="$ac_aux_dir/ltmain.sh" # 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 $as_echo_n "checking build system type... " >&6; } if ${ac_cv_build+:} false; then : $as_echo_n "(cached) " >&6 else 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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 $as_echo_n "checking host system type... " >&6; } if ${ac_cv_host+:} false; then : $as_echo_n "(cached) " >&6 else 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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 $as_echo "$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 # 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5 $as_echo_n "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*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5 $as_echo "printf" >&6; } ;; print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 $as_echo "print -r" >&6; } ;; *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5 $as_echo "cat" >&6; } ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 $as_echo_n "checking for a sed that does not truncate output... " >&6; } if ${ac_cv_path_SED+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. 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" { test -f "$ac_path_SED" && $as_test_x "$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 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo '' >> "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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 $as_echo "$ac_cv_path_SED" >&6; } SED="$ac_cv_path_SED" rm -f conftest.sed test -z "$SED" && SED=sed Xsed="$SED -e 1s/^X//" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5 $as_echo_n "checking for fgrep... " >&6; } if ${ac_cv_path_FGREP+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. 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" { test -f "$ac_path_FGREP" && $as_test_x "$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 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo '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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5 $as_echo "$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+set}" = set; then : withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes else with_gnu_ld=no fi ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 $as_echo_n "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 $as_echo_n "checking for GNU ld... " >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 $as_echo_n "checking for non-GNU ld... " >&6; } fi if ${lt_cv_path_LD+:} false; then : $as_echo_n "(cached) " >&6 else 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 $as_echo "$LD" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } if ${lt_cv_prog_gnu_ld+:} false; then : $as_echo_n "(cached) " >&6 else # I'd rather use --version here, but apparently some GNU lds only accept -v. case `$LD -v 2>&1 &5 $as_echo "$lt_cv_prog_gnu_ld" >&6; } with_gnu_ld=$lt_cv_prog_gnu_ld { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5 $as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; } if ${lt_cv_path_NM+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$NM"; then # Let the user override the test. lt_cv_path_NM="$NM" else lt_nm_to_check="${ac_tool_prefix}nm" if test -n "$ac_tool_prefix" && test "$build" = "$host"; then lt_nm_to_check="$lt_nm_to_check nm" fi for lt_tmp_nm in $lt_nm_to_check; do lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. tmp_nm="$ac_dir/$lt_tmp_nm" if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then # Check to see if the nm accepts a BSD-compat flag. # Adding the `sed 1q' prevents false positives on HP-UX, which says: # nm: unknown option "B" ignored # Tru64's nm complains that /dev/null is an invalid object file case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in */dev/null* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break ;; *) case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break ;; *) lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but continue # so that we can try to find one that supports BSD flags ;; esac ;; esac fi done IFS="$lt_save_ifs" done : ${lt_cv_path_NM=no} fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 $as_echo "$lt_cv_path_NM" >&6; } if test "$lt_cv_path_NM" != "no"; then NM="$lt_cv_path_NM" else # Didn't find any BSD compatible name lister, look for dumpbin. 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_DUMPBIN+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi DUMPBIN=$ac_cv_prog_DUMPBIN if test -n "$DUMPBIN"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5 $as_echo "$DUMPBIN" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_DUMPBIN="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN if test -n "$ac_ct_DUMPBIN"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5 $as_echo "$ac_ct_DUMPBIN" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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 /dev/null 2>&1 | sed '1q'` in *COFF*) DUMPBIN="$DUMPBIN -symbols" ;; *) DUMPBIN=: ;; esac fi if test "$DUMPBIN" != ":"; then NM="$DUMPBIN" fi fi test -z "$NM" && NM=nm { $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5 $as_echo_n "checking the name lister ($NM) interface... " >&6; } if ${lt_cv_nm_interface+:} false; then : $as_echo_n "(cached) " >&6 else 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* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5 $as_echo "$lt_cv_nm_interface" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 $as_echo_n "checking whether ln -s works... " >&6; } LN_S=$as_ln_s if test "$LN_S" = "ln -s"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 $as_echo "no, using $LN_S" >&6; } fi # find the maximum length of command line arguments { $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5 $as_echo_n "checking the maximum length of command line arguments... " >&6; } if ${lt_cv_sys_max_cmd_len+:} false; then : $as_echo_n "(cached) " >&6 else i=0 teststring="ABCD" case $build_os in msdosdjgpp*) # On DJGPP, this test can blow up pretty badly due to problems in libc # (any single argument exceeding 2000 bytes causes a buffer overrun # during glob expansion). Even if it were fixed, the result of this # check would be larger than it should be. lt_cv_sys_max_cmd_len=12288; # 12K is about right ;; gnu*) # Under GNU Hurd, this test is not required because there is # no limit to the length of command line arguments. # Libtool will interpret -1 as no limit whatsoever lt_cv_sys_max_cmd_len=-1; ;; cygwin* | mingw* | cegcc*) # On Win9x/ME, this test blows up -- it succeeds, but takes # about 5 minutes as the teststring grows exponentially. # Worse, since 9x/ME are not pre-emptively multitasking, # you end up with a "frozen" computer, even though with patience # the test eventually succeeds (with a max line length of 256k). # Instead, let's just punt: use the minimum linelength reported by # all of the supported platforms: 8192 (on NT/2K/XP). lt_cv_sys_max_cmd_len=8192; ;; 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; ;; netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` elif test -x /usr/sbin/sysctl; then lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` else lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs fi # And add a safety zone lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` ;; interix*) # We know the value 262144 and hardcode it with a safety zone (like BSD) lt_cv_sys_max_cmd_len=196608 ;; 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"; 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 $i != 17 # 1/2 MB should be enough do i=`expr $i + 1` teststring=$teststring$teststring done # Only check the string length outside the loop. lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` teststring= # Add a significant safety factor because C++ compilers can tack on # massive amounts of additional arguments before passing them to the # linker. It appears as though 1/2 is a usable value. lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` fi ;; esac fi if test -n $lt_cv_sys_max_cmd_len ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 $as_echo "$lt_cv_sys_max_cmd_len" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5 $as_echo "none" >&6; } fi max_cmd_len=$lt_cv_sys_max_cmd_len : ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands some XSI constructs" >&5 $as_echo_n "checking whether the shell understands some XSI constructs... " >&6; } # Try some XSI features xsi_shell=no ( _lt_dummy="a/b/c" test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \ = c,a/b,b/c, \ && eval 'test $(( 1 + 1 )) -eq 2 \ && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ && xsi_shell=yes { $as_echo "$as_me:${as_lineno-$LINENO}: result: $xsi_shell" >&5 $as_echo "$xsi_shell" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands \"+=\"" >&5 $as_echo_n "checking whether the shell understands \"+=\"... " >&6; } lt_shell_append=no ( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \ >/dev/null 2>&1 \ && lt_shell_append=yes { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_shell_append" >&5 $as_echo "$lt_shell_append" >&6; } 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5 $as_echo_n "checking how to convert $build file names to $host format... " >&6; } if ${lt_cv_to_host_file_cmd+:} false; then : $as_echo_n "(cached) " >&6 else case $host in *-*-mingw* ) case $build in *-*-mingw* ) # 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* ) # 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 fi to_host_file_cmd=$lt_cv_to_host_file_cmd { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5 $as_echo "$lt_cv_to_host_file_cmd" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5 $as_echo_n "checking how to convert $build file names to toolchain format... " >&6; } if ${lt_cv_to_tool_file_cmd+:} false; then : $as_echo_n "(cached) " >&6 else #assume ordinary cross tools, or native build. lt_cv_to_tool_file_cmd=func_convert_file_noop case $host in *-*-mingw* ) case $build in *-*-mingw* ) # actually msys lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 ;; esac ;; esac fi to_tool_file_cmd=$lt_cv_to_tool_file_cmd { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5 $as_echo "$lt_cv_to_tool_file_cmd" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5 $as_echo_n "checking for $LD option to reload object files... " >&6; } if ${lt_cv_ld_reload_flag+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_ld_reload_flag='-r' fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5 $as_echo "$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* | pw32* | cegcc*) if test "$GCC" != yes; then reload_cmds=false fi ;; darwin*) if test "$GCC" = yes; then reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs' else reload_cmds='$LD$reload_flag -o $output$reload_objs' fi ;; esac 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_OBJDUMP+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi OBJDUMP=$ac_cv_prog_OBJDUMP if test -n "$OBJDUMP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 $as_echo "$OBJDUMP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_OBJDUMP="objdump" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP if test -n "$ac_ct_OBJDUMP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5 $as_echo "$ac_ct_OBJDUMP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_OBJDUMP" = x; then OBJDUMP="false" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5 $as_echo_n "checking how to recognize dependent libraries... " >&6; } if ${lt_cv_deplibs_check_method+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_file_magic_cmd='$MAGIC_CMD' lt_cv_file_magic_test_file= lt_cv_deplibs_check_method='unknown' # Need to set the preceding variable on all platforms that support # interlibrary dependencies. # 'none' -- dependencies not supported. # `unknown' -- same as none, but documents that we really don't know. # 'pass_all' -- all dependencies passed with no checks. # 'test_compile' -- check by making test program. # 'file_magic [[regex]]' -- check by looking for files in library path # which responds to the $file_magic_cmd with a given extended regex. # If you have `file' or equivalent on your system and you're not sure # whether `pass_all' will *always* work, you probably want this one. case $host_os in aix[4-9]*) lt_cv_deplibs_check_method=pass_all ;; beos*) lt_cv_deplibs_check_method=pass_all ;; bsdi[45]*) lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' lt_cv_file_magic_cmd='/usr/bin/file -L' lt_cv_file_magic_test_file=/shlib/libc.so ;; cygwin*) # func_win32_libid is a shell function defined in ltmain.sh lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' ;; mingw* | pw32*) # Base MSYS/MinGW do not provide the 'file' command needed by # func_win32_libid shell function, so use a weaker test based on 'objdump', # unless we find 'file', for example because we are cross-compiling. # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin. if ( test "$lt_cv_nm_interface" = "BSD nm" && 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)' lt_cv_file_magic_cmd='$OBJDUMP -f' fi ;; cegcc*) # use the weaker test based on 'objdump'. See mingw*. lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' lt_cv_file_magic_cmd='$OBJDUMP -f' ;; darwin* | rhapsody*) lt_cv_deplibs_check_method=pass_all ;; freebsd* | dragonfly*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then case $host_cpu in i*86 ) # Not sure whether the presence of OpenBSD here was a mistake. # Let's accept both of them until this is cleared up. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac else lt_cv_deplibs_check_method=pass_all fi ;; gnu*) lt_cv_deplibs_check_method=pass_all ;; haiku*) lt_cv_deplibs_check_method=pass_all ;; hpux10.20* | hpux11*) lt_cv_file_magic_cmd=/usr/bin/file case $host_cpu in ia64*) lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64' lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so ;; hppa*64*) lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-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) lt_cv_deplibs_check_method=pass_all ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$' fi ;; newos6*) lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=/usr/lib/libnls.so ;; *nto* | *qnx*) lt_cv_deplibs_check_method=pass_all ;; openbsd*) if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' fi ;; osf3* | osf4* | osf5*) lt_cv_deplibs_check_method=pass_all ;; rdos*) lt_cv_deplibs_check_method=pass_all ;; solaris*) lt_cv_deplibs_check_method=pass_all ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) lt_cv_deplibs_check_method=pass_all ;; sysv4 | sysv4.3*) case $host_vendor in motorola) lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` ;; ncr) lt_cv_deplibs_check_method=pass_all ;; sequent) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;; sni) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib" lt_cv_file_magic_test_file=/lib/libc.so ;; siemens) lt_cv_deplibs_check_method=pass_all ;; pc) lt_cv_deplibs_check_method=pass_all ;; esac ;; tpf*) lt_cv_deplibs_check_method=pass_all ;; esac fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5 $as_echo "$lt_cv_deplibs_check_method" >&6; } file_magic_glob= want_nocaseglob=no if test "$build" = "$host"; then case $host_os in mingw* | 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_DLLTOOL+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi DLLTOOL=$ac_cv_prog_DLLTOOL if test -n "$DLLTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5 $as_echo "$DLLTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_DLLTOOL="dlltool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL if test -n "$ac_ct_DLLTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5 $as_echo "$ac_ct_DLLTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_DLLTOOL" = x; then DLLTOOL="false" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5 $as_echo_n "checking how to associate runtime and link libraries... " >&6; } if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_sharedlib_from_linklib_cmd='unknown' case $host_os in cygwin* | mingw* | pw32* | cegcc*) # two different shell functions defined in ltmain.sh # decide which 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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5 $as_echo "$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 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_AR+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AR="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi AR=$ac_cv_prog_AR if test -n "$AR"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 $as_echo "$AR" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_AR+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_AR="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_AR=$ac_cv_prog_ac_ct_AR if test -n "$ac_ct_AR"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 $as_echo "$ac_ct_AR" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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} : ${AR_FLAGS=cru} { $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5 $as_echo_n "checking for archiver @FILE support... " >&6; } if ${lt_cv_ar_at_file+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_ar_at_file=no cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; 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=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if test "$ac_status" -eq 0; 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=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if test "$ac_status" -ne 0; then lt_cv_ar_at_file=@ fi fi rm -f conftest.* libconftest.a fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5 $as_echo "$lt_cv_ar_at_file" >&6; } if test "x$lt_cv_ar_at_file" = xno; 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 $as_echo "$STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_STRIP="strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 $as_echo "$ac_ct_STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_STRIP" = x; then STRIP=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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=: 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_RANLIB+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 $as_echo "$RANLIB" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_RANLIB="ranlib" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 $as_echo "$ac_ct_RANLIB" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_RANLIB" = x; then RANLIB=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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 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 case $host_os in openbsd*) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" ;; *) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" ;; esac old_archive_cmds="$old_archive_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. { $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5 $as_echo_n "checking command to parse $NM output from $compiler object... " >&6; } if ${lt_cv_sys_global_symbol_pipe+:} false; then : $as_echo_n "(cached) " >&6 else # These are sane defaults that work on at least a few old systems. # [They come from Ultrix. What could be older than Ultrix?!! ;)] # Character class describing NM global symbol codes. symcode='[BCDEGRST]' # Regexp to match symbols that can be accessed directly from C. sympat='\([_A-Za-z][_A-Za-z0-9]*\)' # Define system-specific variables. case $host_os in aix*) symcode='[BCDT]' ;; cygwin* | mingw* | pw32* | cegcc*) symcode='[ABCDGISTW]' ;; hpux*) if test "$host_cpu" = ia64; then symcode='[ABCDEGRST]' fi ;; irix* | nonstopux*) symcode='[BCDEGRST]' ;; osf*) symcode='[BCDEGQRST]' ;; solaris*) symcode='[BDRT]' ;; sco3.2v5*) symcode='[DT]' ;; sysv4.2uw2*) symcode='[DT]' ;; sysv5* | sco5v6* | unixware* | OpenUNIX*) symcode='[ABDT]' ;; sysv4) symcode='[DFNSTU]' ;; esac # If we're using GNU nm, then use its standard symbol codes. case `$NM -V 2>&1` in *GNU* | *'with BFD'*) symcode='[ABCDGIRSTW]' ;; esac # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'" lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'" # Handle CRLF in mingw tool chain opt_cr= case $build_os in mingw*) opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp ;; esac # Try without a prefix underscore, then with it. for ac_symprfx in "" "_"; do # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. symxfrm="\\1 $ac_symprfx\\2 \\2" # Write the raw and C identifiers. if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Fake it for dumpbin and say T for any non-static function # and D for any global variable. # Also find C++ and __fastcall symbols from MSVC++, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK '"\ " {last_section=section; section=\$ 3};"\ " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ " {if(hide[section]) next};"\ " {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ " {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ " s[1]~/^[@?]/{print s[1], s[1]; next};"\ " s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx" else lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi 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(){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=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then # Now try to grab the symbols. nlist=conftest.nm if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5 (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && 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 con'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* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext cat <<\_LT_EOF >> conftest.$ac_ext {0, (void *) 0} }; /* This works around a problem in FreeBSD linker */ #ifdef FREEBSD_WORKAROUND static const void *lt_preloaded_setup() { return lt__PROGRAM__LTX_preloaded_symbols; } #endif #ifdef __cplusplus } #endif _LT_EOF # Now try linking the two files. mv conftest.$ac_objext conftstm.$ac_objext lt_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=$? $as_echo "$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 "$pipe_works" = yes; then break else lt_cv_sys_global_symbol_pipe= fi done 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 { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5 $as_echo "failed" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5 $as_echo_n "checking for sysroot... " >&6; } # Check whether --with-sysroot was given. if test "${with_sysroot+set}" = set; then : withval=$with_sysroot; else with_sysroot=no fi lt_sysroot= case ${with_sysroot} in #( yes) if test "$GCC" = yes; then lt_sysroot=`$CC --print-sysroot 2>/dev/null` fi ;; #( /*) lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` ;; #( no|'') ;; #( *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5 $as_echo "${with_sysroot}" >&6; } as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5 ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5 $as_echo "${lt_sysroot:-no}" >&6; } # Check whether --enable-libtool-lock was given. if test "${enable_libtool_lock+set}" = set; then : enableval=$enable_libtool_lock; fi test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes # Some flags need to be propagated to the compiler or linker for good # libtool support. case $host in ia64-*-hpux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE="32" ;; *ELF-64*) HPUX_IA64_MODE="64" ;; esac fi rm -rf conftest* ;; *-*-irix6*) # Find out which ABI we are using. echo '#line '$LINENO' "configure"' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then if test "$lt_cv_prog_gnu_ld" = yes; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; *N32*) LD="${LD-ld} -melf32bmipn32" ;; *64-bit*) LD="${LD-ld} -melf64bmip" ;; esac else case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" ;; *N32*) LD="${LD-ld} -n32" ;; *64-bit*) LD="${LD-ld} -64" ;; esac fi fi rm -rf conftest* ;; x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `/usr/bin/file conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) LD="${LD-ld} -m elf_i386" ;; ppc64-*linux*|powerpc64-*linux*) LD="${LD-ld} -m elf32ppclinux" ;; s390x-*linux*) LD="${LD-ld} -m elf_s390" ;; sparc64-*linux*) LD="${LD-ld} -m elf32_sparc" ;; esac ;; *64-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_x86_64_fbsd" ;; x86_64-*linux*) LD="${LD-ld} -m elf_x86_64" ;; ppc*-*linux*|powerpc*-*linux*) LD="${LD-ld} -m elf64ppc" ;; s390*-*linux*|s390*-*tpf*) LD="${LD-ld} -m elf64_s390" ;; sparc*-*linux*) LD="${LD-ld} -m elf64_sparc" ;; esac ;; esac fi rm -rf conftest* ;; *-*-sco3.2v5*) # On SCO OpenServer 5, we need -belf to get full-featured binaries. SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -belf" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 $as_echo_n "checking whether the C compiler needs -belf... " >&6; } if ${lt_cv_cc_needs_belf+:} false; then : $as_echo_n "(cached) " >&6 else 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 () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_cv_cc_needs_belf=yes else lt_cv_cc_needs_belf=no fi rm -f core conftest.err conftest.$ac_objext \ 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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 $as_echo "$lt_cv_cc_needs_belf" >&6; } if test x"$lt_cv_cc_needs_belf" != x"yes"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf CFLAGS="$SAVE_CFLAGS" fi ;; *-*solaris*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `/usr/bin/file conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) case $host in i?86-*-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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_MANIFEST_TOOL+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL if test -n "$MANIFEST_TOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5 $as_echo "$MANIFEST_TOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_MANIFEST_TOOL="mt" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL if test -n "$ac_ct_MANIFEST_TOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5 $as_echo "$ac_ct_MANIFEST_TOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_MANIFEST_TOOL" = x; then MANIFEST_TOOL=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5 $as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; } if ${lt_cv_path_mainfest_tool+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_path_mainfest_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_mainfest_tool=yes fi rm -f conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5 $as_echo "$lt_cv_path_mainfest_tool" >&6; } if test "x$lt_cv_path_mainfest_tool" != xyes; 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_DSYMUTIL+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi DSYMUTIL=$ac_cv_prog_DSYMUTIL if test -n "$DSYMUTIL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5 $as_echo "$DSYMUTIL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_DSYMUTIL="dsymutil" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL if test -n "$ac_ct_DSYMUTIL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5 $as_echo "$ac_ct_DSYMUTIL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_DSYMUTIL" = x; then DSYMUTIL=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_NMEDIT+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi NMEDIT=$ac_cv_prog_NMEDIT if test -n "$NMEDIT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5 $as_echo "$NMEDIT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_NMEDIT="nmedit" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT if test -n "$ac_ct_NMEDIT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5 $as_echo "$ac_ct_NMEDIT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_NMEDIT" = x; then NMEDIT=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_LIPO+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_LIPO="${ac_tool_prefix}lipo" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi LIPO=$ac_cv_prog_LIPO if test -n "$LIPO"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5 $as_echo "$LIPO" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_LIPO+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_LIPO="lipo" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO if test -n "$ac_ct_LIPO"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5 $as_echo "$ac_ct_LIPO" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_LIPO" = x; then LIPO=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_OTOOL+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_OTOOL="${ac_tool_prefix}otool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi OTOOL=$ac_cv_prog_OTOOL if test -n "$OTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5 $as_echo "$OTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_OTOOL+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_OTOOL="otool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL if test -n "$ac_ct_OTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5 $as_echo "$ac_ct_OTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_OTOOL" = x; then OTOOL=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_OTOOL64+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi OTOOL64=$ac_cv_prog_OTOOL64 if test -n "$OTOOL64"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5 $as_echo "$OTOOL64" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_OTOOL64="otool64" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64 if test -n "$ac_ct_OTOOL64"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5 $as_echo "$ac_ct_OTOOL64" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_OTOOL64" = x; then OTOOL64=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5 $as_echo_n "checking for -single_module linker flag... " >&6; } if ${lt_cv_apple_cc_single_mod+:} false; then : $as_echo_n "(cached) " >&6 else 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 $_lt_result -eq 0; then lt_cv_apple_cc_single_mod=yes else cat conftest.err >&5 fi rm -rf libconftest.dylib* rm -f conftest.* fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5 $as_echo "$lt_cv_apple_cc_single_mod" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5 $as_echo_n "checking for -exported_symbols_list linker flag... " >&6; } if ${lt_cv_ld_exported_symbols_list+:} false; then : $as_echo_n "(cached) " >&6 else 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 () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_cv_ld_exported_symbols_list=yes else lt_cv_ld_exported_symbols_list=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LDFLAGS="$save_LDFLAGS" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5 $as_echo "$lt_cv_ld_exported_symbols_list" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5 $as_echo_n "checking for -force_load linker flag... " >&6; } if ${lt_cv_ld_force_load+:} false; then : $as_echo_n "(cached) " >&6 else 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 cru libconftest.a conftest.o" >&5 $AR cru libconftest.a conftest.o 2>&5 echo "$RANLIB libconftest.a" >&5 $RANLIB libconftest.a 2>&5 cat > conftest.c << _LT_EOF int main() { 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 $_lt_result -eq 0 && $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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5 $as_echo "$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*) # darwin 5.x on # if running on 10.5 or later, the deployment target defaults # to the OS version, if on x86, and 10.4, the deployment # target defaults to 10.4. Don't you love it? case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 10.0,*86*-darwin8*|10.0,*-darwin[91]*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; 10.[012]*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; 10.*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; esac ;; esac if test "$lt_cv_apple_cc_single_mod" = "yes"; then _lt_dar_single_mod='$single_module' fi if test "$lt_cv_ld_exported_symbols_list" = "yes"; then _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' else _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' fi if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then _lt_dsymutil='~$DSYMUTIL $lib || :' else _lt_dsymutil= fi ;; esac for ac_header in dlfcn.h do : 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 : cat >>confdefs.h <<_ACEOF #define HAVE_DLFCN_H 1 _ACEOF fi done func_stripname_cnf () { case ${2} in .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;; *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;; esac } # func_stripname_cnf # Set options enable_dlopen=no enable_win32_dll=no # Check whether --enable-shared was given. if test "${enable_shared+set}" = set; 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 enable_shared=yes fi # Check whether --with-pic was given. if test "${with_pic+set}" = set; 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 pic_mode=default fi test -z "$pic_mode" && pic_mode=default # Check whether --enable-fast-install was given. if test "${enable_fast_install+set}" = set; 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 enable_fast_install=yes fi # 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 $as_echo_n "checking for objdir... " >&6; } if ${lt_cv_objdir+:} false; then : $as_echo_n "(cached) " >&6 else 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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5 $as_echo "$lt_cv_objdir" >&6; } objdir=$lt_cv_objdir cat >>confdefs.h <<_ACEOF #define LT_OBJDIR "$lt_cv_objdir/" _ACEOF case $host_os in aix3*) # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi ;; esac # Global variables: ofile=libtool can_build_shared=yes # All known linkers require a `.a' archive for static linking (except MSVC, # which needs '.lib'). libext=a with_gnu_ld="$lt_cv_prog_gnu_ld" old_CC="$CC" old_CFLAGS="$CFLAGS" # Set sane defaults for various variables test -z "$CC" && CC=cc test -z "$LTCC" && LTCC=$CC test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS test -z "$LD" && LD=ld test -z "$ac_objext" && ac_objext=o for cc_temp in $compiler""; do case $cc_temp in compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; \-*) ;; *) break;; esac done cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` # 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5 $as_echo_n "checking for ${ac_tool_prefix}file... " >&6; } if ${lt_cv_path_MAGIC_CMD+:} false; then : $as_echo_n "(cached) " >&6 else 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 fi MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if test -n "$MAGIC_CMD"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 $as_echo "$MAGIC_CMD" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5 $as_echo_n "checking for file... " >&6; } if ${lt_cv_path_MAGIC_CMD+:} false; then : $as_echo_n "(cached) " >&6 else 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 fi MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if test -n "$MAGIC_CMD"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 $as_echo "$MAGIC_CMD" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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(){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 "$GCC" = yes; then case $cc_basename in nvcc*) lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;; *) lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 $as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then : $as_echo_n "(cached) " >&6 else 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" # 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* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 $as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; } if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; 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 "$GCC" = yes; then lt_prog_compiler_wl='-Wl,' lt_prog_compiler_static='-static' case $host_os in aix*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' fi ;; 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* | 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' ;; 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 "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' else lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp' fi ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). lt_prog_compiler_pic='-DDLL_EXPORT' ;; 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) 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' ;; # 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' ;; 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' ;; *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' ;; 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 which do not support PIC, -DPIC is meaningless: *djgpp*) lt_prog_compiler_pic= ;; *) lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC" ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 $as_echo_n "checking for $compiler option to produce PIC... " >&6; } if ${lt_cv_prog_compiler_pic+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_pic=$lt_prog_compiler_pic fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } if ${lt_cv_prog_compiler_pic_works+:} false; then : $as_echo_n "(cached) " >&6 else 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" # 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* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5 $as_echo "$lt_cv_prog_compiler_pic_works" >&6; } if test x"$lt_cv_prog_compiler_pic_works" = xyes; 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\" { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } if ${lt_cv_prog_compiler_static_works+:} false; then : $as_echo_n "(cached) " >&6 else 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" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5 $as_echo "$lt_cv_prog_compiler_static_works" >&6; } if test x"$lt_cv_prog_compiler_static_works" = xyes; then : else lt_prog_compiler_static= fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } if ${lt_cv_prog_compiler_c_o+:} false; then : $as_echo_n "(cached) " >&6 else 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* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 $as_echo "$lt_cv_prog_compiler_c_o" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } if ${lt_cv_prog_compiler_c_o+:} false; then : $as_echo_n "(cached) " >&6 else 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* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 $as_echo "$lt_cv_prog_compiler_c_o" >&6; } hard_links="nottested" if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 $as_echo_n "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 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 $as_echo "$hard_links" >&6; } if test "$hard_links" = no; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 $as_echo_n "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* | 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 # 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 "$with_gnu_ld" = yes; 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 "$lt_use_gnu_ld_interface" = yes; then # If archive_cmds runs LD, not CC, wlarc should be empty wlarc='${wl}' # Set some defaults for GNU ld with shared library support. These # are reset later if shared libraries are not supported. Putting them # here allows them to be overridden if necessary. runpath_var=LD_RUN_PATH 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 2>&1` in *GNU\ gold*) supports_anon_versioning=yes ;; *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... *\ 2.11.*) ;; # other 2.11 versions *) supports_anon_versioning=yes ;; esac # See if GNU ld supports shared libraries. case $host_os in aix[3-9]*) # On AIX/PPC, the GNU linker is very broken if test "$host_cpu" != ia64; then 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* | 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' 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 (1st line # is EXPORTS), use it as is; otherwise, prepend... archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then cp $export_symbols $output_objdir/$soname.def; else echo EXPORTS > $output_objdir/$soname.def; cat $export_symbols >> $output_objdir/$soname.def; fi~ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else ld_shlibs=no fi ;; haiku*) archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' link_all_deplibs=yes ;; 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 "$host_os" = linux-dietlibc; then case $cc_basename in diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) esac fi if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ && test "$tmp_diet" = no then tmp_addflag=' $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' ;; 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 "x$supports_anon_versioning" = xyes; 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 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 "x$supports_anon_versioning" = xyes; 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 ;; netbsd*) 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 can not *** reliably create shared libraries on SCO systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.16.91.0.3 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF ;; *) # For security reasons, it is highly recommended that you always # use absolute paths for naming shared libraries, and exclude the # DT_RUNPATH tag from executables and libraries. But doing so # requires that you compile everything twice, which is a pain. if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 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 "$ld_shlibs" = no; 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 "$GCC" = yes && 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 "$host_cpu" = ia64; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' no_entry_flag="" else # If we're using GNU nm, then we don't want the "-C" option. # -C means demangle to AIX nm, but means don't demangle with GNU nm # Also, AIX nm treats weak defined symbols like other global # defined symbols, whereas GNU nm marks them as "W". 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) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' else export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # need to do runtime linking. case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) for ld_flag in $LDFLAGS; do if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then aix_use_runtimelinking=yes break fi done ;; esac exp_sym_flag='-bexport' no_entry_flag='-bnoentry' fi # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. archive_cmds='' hardcode_direct=yes hardcode_direct_absolute=yes hardcode_libdir_separator=':' link_all_deplibs=yes file_list_spec='${wl}-f,' if test "$GCC" = yes; then case $host_os in aix4.[012]|aix4.[012].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ collect2name=`${CC} -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then # We have reworked collect2 : else # We have old collect2 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 "$aix_use_runtimelinking" = yes; then shared_flag="$shared_flag "'${wl}-G' fi else # not using gcc if test "$host_cpu" = ia64; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else if test "$aix_use_runtimelinking" = yes; then shared_flag='${wl}-G' else shared_flag='${wl}-bM:SRE' fi fi fi 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_use_runtimelinking" = yes; 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 "${lt_cv_aix_libpath+set}" = set; then aix_libpath=$lt_cv_aix_libpath else if ${lt_cv_aix_libpath_+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; 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$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_="/usr/lib:/lib" fi 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 "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" else if test "$host_cpu" = ia64; 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 "${lt_cv_aix_libpath+set}" = set; then aix_libpath=$lt_cv_aix_libpath else if ${lt_cv_aix_libpath_+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; 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$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_="/usr/lib:/lib" fi 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 "$with_gnu_ld" = yes; 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 # This is similar to how AIX traditionally builds its shared libraries. archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' fi fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support 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* | 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. case $cc_basename in cl*) # Native MSVC 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 -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; else sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $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, )='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 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 "$lt_cv_ld_force_load" = "yes"; 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*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac if test "$_lt_dar_can_shared" = "yes"; 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*) 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 "$GCC" = yes; 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 $output_objdir/$soname = $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 $output_objdir/$soname = $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 "$GCC" = yes && test "$with_gnu_ld" = no; 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 "$with_gnu_ld" = no; 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 "$GCC" = yes && test "$with_gnu_ld" = no; 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) { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5 $as_echo_n "checking if $CC understands -b... " >&6; } if ${lt_cv_prog_compiler__b+:} false; then : $as_echo_n "(cached) " >&6 else 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" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5 $as_echo "$lt_cv_prog_compiler__b" >&6; } if test x"$lt_cv_prog_compiler__b" = xyes; 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 "$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_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 "$GCC" = yes; 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. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5 $as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; } if ${lt_cv_irix_exported_symbol+:} false; then : $as_echo_n "(cached) " >&6 else 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 lt_cv_irix_exported_symbol=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LDFLAGS="$save_LDFLAGS" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5 $as_echo "$lt_cv_irix_exported_symbol" >&6; } if test "$lt_cv_irix_exported_symbol" = yes; 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 ;; netbsd*) 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__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; 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 case $host_os in openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' hardcode_libdir_flag_spec='-R$libdir' ;; *) archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' 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 allow_undefined_flag=unsupported archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' ;; osf3*) if test "$GCC" = yes; 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 "$GCC" = yes; 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=: ;; solaris*) no_undefined_flag=' -z defs' if test "$GCC" = yes; 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 "$GCC" = yes; 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 "x$host_vendor" = xsequent; then # Use $CC to link under sequent, because it throws in some extra .o # files that make .init and .fini sections work. 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 "$GCC" = yes; 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 can NOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. 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 "$GCC" = yes; 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 x$host_vendor = xsni; then case $host in sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) export_dynamic_flag_spec='${wl}-Blargedynsym' ;; esac fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 $as_echo "$ld_shlibs" >&6; } test "$ld_shlibs" = no && 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 "$enable_shared" = yes && test "$GCC" = yes; 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. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } if ${lt_cv_archive_cmds_need_lc+:} false; then : $as_echo_n "(cached) " >&6 else $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=$? $as_echo "$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=$? $as_echo "$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* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5 $as_echo "$lt_cv_archive_cmds_need_lc" >&6; } archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc ;; esac fi ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 $as_echo_n "checking dynamic linker characteristics... " >&6; } if test "$GCC" = yes; then case $host_os in darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; *) lt_awk_arg="/^libraries:/" ;; esac case $host_os in mingw* | 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` for lt_sys_path in $lt_search_path_spec; do if test -d "$lt_sys_path/$lt_multi_os_dir"; then lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir" else test -d "$lt_sys_path" && \ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" fi done lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' BEGIN {RS=" "; FS="/|\n";} { lt_foo=""; lt_count=0; for (lt_i = NF; lt_i > 0; lt_i--) { if ($lt_i != "" && $lt_i != ".") { if ($lt_i == "..") { lt_count++; } else { if (lt_count == 0) { lt_foo="/" $lt_i lt_foo; } else { lt_count--; } } } } if (lt_foo != "") { lt_freq[lt_foo]++; } if (lt_freq[lt_foo] == 1) { print lt_foo; } }'` # AWK program above erroneously prepends '/' to C:/dos/paths # for these hosts. case $host_os in mingw* | 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 "$host_cpu" = ia64; then # AIX 5 supports IA64 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH else # With GCC up to 2.95.x, collect2 would create an import file # for dependence libraries. The import file would start with # the line `#! .'. This would cause the generated library to # depend on `.', always an invalid library. This was fixed in # development snapshots of GCC prior to 3.0. case $host_os in aix4 | aix4.[01] | aix4.[01].*) if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' echo ' yes ' echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then : else can_build_shared=no fi ;; esac # AIX (on Power*) has no versioning support, so currently we can not hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. if test "$aix_use_runtimelinking" = yes; then # If using run time linking (on AIX 4.2 or later) use lib.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}' else # We preserve .a as extension for shared libraries through AIX4.2 # and later when we are not doing run time linking. library_names_spec='${libname}${release}.a $libname.a' soname_spec='${libname}${release}${shared_ext}$major' fi shlibpath_var=LIBPATH fi ;; amigaos*) case $host_cpu in powerpc) # Since July 2007 AmigaOS4 officially supports .so libraries. # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' ;; m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; beos*) library_names_spec='${libname}${shared_ext}' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH ;; bsdi[45]*) version_type=linux # 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* | 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 postinstall_cmds='base_file=`basename \${file}`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ chmod a+x \$dldir/$dlname~ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; fi' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api" ;; mingw* | 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*) # Native MSVC 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*) 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 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*) # 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} $libname${shared_ext}' need_version=no need_lib_prefix=no ;; freebsd-*) library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' need_version=yes ;; esac shlibpath_var=LD_LIBRARY_PATH case $host_os in freebsd2.*) shlibpath_overrides_runpath=yes ;; freebsd3.[01]* | freebsdelf3.[01]*) shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; freebsd3.[2-9]* | freebsdelf3.[2-9]* | \ freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1) shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; *) # from 4.6 on, and DragonFly shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; esac ;; gnu*) version_type=linux # 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 hardcode_into_libs=yes ;; 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=yes sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' hardcode_into_libs=yes ;; hpux9* | hpux10* | hpux11*) # Give a soname corresponding to the major version so that dld.sl refuses to # link against other versions. version_type=sunos need_lib_prefix=no need_version=no case $host_cpu in ia64*) shrext_cmds='.so' hardcode_into_libs=yes dynamic_linker="$host_os dld.so" shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' if test "X$HPUX_IA64_MODE" = X32; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" fi sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; hppa*64*) shrext_cmds='.sl' hardcode_into_libs=yes dynamic_linker="$host_os dld.sl" shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; *) shrext_cmds='.sl' dynamic_linker="$host_os dld.sl" shlibpath_var=SHLIB_PATH shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' ;; esac # HP-UX runs *really* slowly unless shared libraries are mode 555, ... postinstall_cmds='chmod 555 $lib' # 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 "$lt_cv_prog_gnu_ld" = yes; 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 ;; # This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-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 ${lt_cv_shlibpath_overrides_runpath+:} false; then : $as_echo_n "(cached) " >&6 else 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 () { ; 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$ac_exeext conftest.$ac_ext LDFLAGS=$save_LDFLAGS libdir=$save_libdir 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" # Append ld.so.conf contents to the search path if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;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' ;; netbsd*) version_type=sunos need_lib_prefix=no need_version=no if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' dynamic_linker='NetBSD ld.elf_so' fi shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; newsos6) version_type=linux # 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 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. case $host_os in openbsd3.3 | openbsd3.3.*) need_version=yes ;; *) need_version=no ;; esac library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then case $host_os in openbsd2.[89] | openbsd2.[89].*) shlibpath_overrides_runpath=no ;; *) shlibpath_overrides_runpath=yes ;; esac else shlibpath_overrides_runpath=yes fi ;; os2*) libname_spec='$name' shrext_cmds=".dll" need_lib_prefix=no library_names_spec='$libname${shared_ext} $libname.a' dynamic_linker='OS/2 ld.exe' shlibpath_var=LIBPATH ;; osf3* | osf4* | osf5*) version_type=osf need_lib_prefix=no need_version=no soname_spec='${libname}${release}${shared_ext}$major' library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" ;; rdos*) dynamic_linker=no ;; solaris*) version_type=linux # 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 "$with_gnu_ld" = yes; 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=freebsd-elf need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes if test "$with_gnu_ld" = yes; then sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' else sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' case $host_os in sco3.2v5*) sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" ;; esac fi sys_lib_dlsearch_path_spec='/usr/lib' ;; tpf*) # TPF is a cross-target only. Preferred cross-host = GNU/Linux. version_type=linux # 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 ;; *) dynamic_linker=no ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 $as_echo "$dynamic_linker" >&6; } test "$dynamic_linker" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" if test "$GCC" = yes; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" fi if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 $as_echo_n "checking how to hardcode library paths into programs... " >&6; } hardcode_action= if test -n "$hardcode_libdir_flag_spec" || test -n "$runpath_var" || test "X$hardcode_automatic" = "Xyes" ; then # We can hardcode non-existent directories. if test "$hardcode_direct" != no && # If the only mechanism to avoid hardcoding is shlibpath_var, we # have to relink, otherwise we might link with an installed library # when we should be linking with a yet-to-be-installed one ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no && test "$hardcode_minus_L" != no; 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 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 $as_echo "$hardcode_action" >&6; } if test "$hardcode_action" = relink || test "$inherit_rpath" = yes; then # Fast installation is not supported enable_fast_install=no elif test "$shlibpath_overrides_runpath" = yes || test "$enable_shared" = no; then # Fast installation is not necessary enable_fast_install=needless fi if test "x$enable_dlopen" != xyes; then enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown else lt_cv_dlopen=no lt_cv_dlopen_libs= case $host_os in beos*) lt_cv_dlopen="load_add_on" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ;; mingw* | pw32* | cegcc*) lt_cv_dlopen="LoadLibrary" lt_cv_dlopen_libs= ;; cygwin*) lt_cv_dlopen="dlopen" lt_cv_dlopen_libs= ;; darwin*) # if libdl is installed we need to link against it { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 $as_echo_n "checking for dlopen in -ldl... " >&6; } if ${ac_cv_lib_dl_dlopen+:} false; then : $as_echo_n "(cached) " >&6 else 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. */ #ifdef __cplusplus extern "C" #endif char dlopen (); int main () { return dlopen (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dl_dlopen=yes else ac_cv_lib_dl_dlopen=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 $as_echo "$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 lt_cv_dlopen="dyld" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes fi ;; *) 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 $as_echo_n "checking for shl_load in -ldld... " >&6; } if ${ac_cv_lib_dld_shl_load+:} false; then : $as_echo_n "(cached) " >&6 else 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. */ #ifdef __cplusplus extern "C" #endif char shl_load (); int main () { return shl_load (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dld_shl_load=yes else ac_cv_lib_dld_shl_load=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 $as_echo "$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 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 $as_echo_n "checking for dlopen in -ldl... " >&6; } if ${ac_cv_lib_dl_dlopen+:} false; then : $as_echo_n "(cached) " >&6 else 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. */ #ifdef __cplusplus extern "C" #endif char dlopen (); int main () { return dlopen (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dl_dlopen=yes else ac_cv_lib_dl_dlopen=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 $as_echo_n "checking for dlopen in -lsvld... " >&6; } if ${ac_cv_lib_svld_dlopen+:} false; then : $as_echo_n "(cached) " >&6 else 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. */ #ifdef __cplusplus extern "C" #endif char dlopen (); int main () { return dlopen (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_svld_dlopen=yes else ac_cv_lib_svld_dlopen=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 $as_echo_n "checking for dld_link in -ldld... " >&6; } if ${ac_cv_lib_dld_dld_link+:} false; then : $as_echo_n "(cached) " >&6 else 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. */ #ifdef __cplusplus extern "C" #endif char dld_link (); int main () { return dld_link (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dld_dld_link=yes else ac_cv_lib_dld_dld_link=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 $as_echo "$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 fi fi fi fi fi ;; esac if test "x$lt_cv_dlopen" != xno; then enable_dlopen=yes else enable_dlopen=no fi case $lt_cv_dlopen in dlopen) save_CPPFLAGS="$CPPFLAGS" test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" save_LDFLAGS="$LDFLAGS" wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" save_LIBS="$LIBS" LIBS="$lt_cv_dlopen_libs $LIBS" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 $as_echo_n "checking whether a program can dlopen itself... " >&6; } if ${lt_cv_dlopen_self+:} false; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; 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 -fvisbility=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 () __attribute__((visibility("default"))); #endif int fnord () { return 42; } int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); int status = $lt_dlunknown; if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; else { if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; 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=$? $as_echo "$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* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 $as_echo "$lt_cv_dlopen_self" >&6; } if test "x$lt_cv_dlopen_self" = xyes; then wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 $as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } if ${lt_cv_dlopen_self_static+:} false; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; 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 -fvisbility=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 () __attribute__((visibility("default"))); #endif int fnord () { return 42; } int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); int status = $lt_dlunknown; if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; else { if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; 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=$? $as_echo "$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* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 $as_echo "$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= { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 $as_echo_n "checking whether stripping libraries is possible... " >&6; } if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" test -z "$striplib" && striplib="$STRIP --strip-unneeded" { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) if test -n "$STRIP" ; then striplib="$STRIP -x" old_striplib="$STRIP -S" { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi ;; *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } ;; esac fi # Report which library types will actually be built { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 $as_echo_n "checking if libtool supports shared libraries... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 $as_echo "$can_build_shared" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 $as_echo_n "checking whether to build shared libraries... " >&6; } test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test "$enable_shared" = yes && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[4-9]*) if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then test "$enable_shared" = yes && enable_static=no fi ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 $as_echo "$enable_shared" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 $as_echo_n "checking whether to build static libraries... " >&6; } # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 $as_echo "$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" if test -n "$CXX" && ( test "X$CXX" != "Xno" && ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || (test "X$CXX" != "Xg++"))) ; then ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5 $as_echo_n "checking how to run the C++ preprocessor... " >&6; } if test -z "$CXXCPP"; then if ${ac_cv_prog_CXXCPP+:} false; then : $as_echo_n "(cached) " >&6 else # Double quotes because CXXCPP needs to be expanded for CXXCPP in "$CXX -E" "/lib/cpp" do ac_preproc_ok=false for ac_cxx_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # 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. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_cxx_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue 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_cxx_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break 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_CXXCPP=$CXXCPP fi CXXCPP=$ac_cv_prog_CXXCPP else ac_cv_prog_CXXCPP=$CXXCPP fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&5 $as_echo "$CXXCPP" >&6; } ac_preproc_ok=false for ac_cxx_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # 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. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_cxx_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue 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_cxx_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break 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 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "C++ preprocessor \"$CXXCPP\" fails sanity check See \`config.log' for more details" "$LINENO" 5; } 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 else _lt_caught_CXX_error=yes fi ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu archive_cmds_need_lc_CXX=no allow_undefined_flag_CXX= always_export_symbols_CXX=no archive_expsym_cmds_CXX= compiler_needs_object_CXX=no export_dynamic_flag_spec_CXX= hardcode_direct_CXX=no hardcode_direct_absolute_CXX=no hardcode_libdir_flag_spec_CXX= hardcode_libdir_separator_CXX= hardcode_minus_L_CXX=no hardcode_shlibpath_var_CXX=unsupported hardcode_automatic_CXX=no inherit_rpath_CXX=no module_cmds_CXX= module_expsym_cmds_CXX= link_all_deplibs_CXX=unknown old_archive_cmds_CXX=$old_archive_cmds reload_flag_CXX=$reload_flag reload_cmds_CXX=$reload_cmds no_undefined_flag_CXX= whole_archive_flag_spec_CXX= enable_shared_with_static_runtimes_CXX=no # Source file extension for C++ test sources. ac_ext=cpp # Object file extension for compiled C++ test sources. objext=o objext_CXX=$objext # No sense in running all these tests if we already determined that # the CXX compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. if test "$_lt_caught_CXX_error" != yes; then # Code to be used in simple compile tests lt_simple_compile_test_code="int some_variable = 0;" # Code to be used in simple link tests lt_simple_link_test_code='int main(int, char *[]) { return(0); }' # ltmain only uses $CC for tagged configurations so make sure $CC is set. # 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 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* # 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 compiler_CXX=$CC for cc_temp in $compiler""; do case $cc_temp in compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; \-*) ;; *) break;; esac done cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` if test -n "$compiler"; then # We don't want -fno-exception when compiling C++ code, so set the # no_builtin_flag separately if test "$GXX" = yes; then lt_prog_compiler_no_builtin_flag_CXX=' -fno-builtin' else lt_prog_compiler_no_builtin_flag_CXX= fi if test "$GXX" = yes; then # Set up default GNU C++ configuration # Check whether --with-gnu-ld was given. if test "${with_gnu_ld+set}" = set; then : withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes else with_gnu_ld=no fi ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 $as_echo_n "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 $as_echo_n "checking for GNU ld... " >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 $as_echo_n "checking for non-GNU ld... " >&6; } fi if ${lt_cv_path_LD+:} false; then : $as_echo_n "(cached) " >&6 else 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 $as_echo "$LD" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } if ${lt_cv_prog_gnu_ld+:} false; then : $as_echo_n "(cached) " >&6 else # I'd rather use --version here, but apparently some GNU lds only accept -v. case `$LD -v 2>&1 &5 $as_echo "$lt_cv_prog_gnu_ld" >&6; } with_gnu_ld=$lt_cv_prog_gnu_ld # Check if GNU C++ uses GNU ld as the underlying linker, since the # archiving commands below assume that GNU ld is being used. if test "$with_gnu_ld" = yes; then archive_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds_CXX='$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' hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' export_dynamic_flag_spec_CXX='${wl}--export-dynamic' # If archive_cmds runs LD, not CC, wlarc should be empty # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to # investigate it a little bit more. (MM) wlarc='${wl}' # ancient GNU ld didn't support --whole-archive et. al. if eval "`$CC -print-prog-name=ld` --help 2>&1" | $GREP 'no-whole-archive' > /dev/null; then whole_archive_flag_spec_CXX="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' else whole_archive_flag_spec_CXX= 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. archive_cmds_CXX='$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } ld_shlibs_CXX=yes case $host_os in aix3*) # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; aix[4-9]*) if test "$host_cpu" = ia64; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' no_entry_flag="" else aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # need to do runtime linking. case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) for ld_flag in $LDFLAGS; do case $ld_flag in *-brtl*) aix_use_runtimelinking=yes break ;; esac done ;; esac exp_sym_flag='-bexport' no_entry_flag='-bnoentry' fi # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. archive_cmds_CXX='' hardcode_direct_CXX=yes hardcode_direct_absolute_CXX=yes hardcode_libdir_separator_CXX=':' link_all_deplibs_CXX=yes file_list_spec_CXX='${wl}-f,' if test "$GXX" = yes; then case $host_os in aix4.[012]|aix4.[012].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ collect2name=`${CC} -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then # We have reworked collect2 : else # We have old collect2 hardcode_direct_CXX=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_CXX=yes hardcode_libdir_flag_spec_CXX='-L$libdir' hardcode_libdir_separator_CXX= fi esac shared_flag='-shared' if test "$aix_use_runtimelinking" = yes; then shared_flag="$shared_flag "'${wl}-G' fi else # not using gcc if test "$host_cpu" = ia64; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else if test "$aix_use_runtimelinking" = yes; then shared_flag='${wl}-G' else shared_flag='${wl}-bM:SRE' fi fi fi export_dynamic_flag_spec_CXX='${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_CXX=yes if test "$aix_use_runtimelinking" = yes; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. allow_undefined_flag_CXX='-berok' # Determine the default libpath from the value encoded in an empty # executable. if test "${lt_cv_aix_libpath+set}" = set; then aix_libpath=$lt_cv_aix_libpath else if ${lt_cv_aix_libpath__CXX+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_cxx_try_link "$LINENO"; then : lt_aix_libpath_sed=' /Import File Strings/,/^$/ { /^0/ { s/^0 *\([^ ]*\) *$/\1/ p } }' lt_cv_aix_libpath__CXX=`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__CXX"; then lt_cv_aix_libpath__CXX=`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$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath__CXX"; then lt_cv_aix_libpath__CXX="/usr/lib:/lib" fi fi aix_libpath=$lt_cv_aix_libpath__CXX fi hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath" archive_expsym_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" else if test "$host_cpu" = ia64; then hardcode_libdir_flag_spec_CXX='${wl}-R $libdir:/usr/lib:/lib' allow_undefined_flag_CXX="-z nodefs" archive_expsym_cmds_CXX="\$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 "${lt_cv_aix_libpath+set}" = set; then aix_libpath=$lt_cv_aix_libpath else if ${lt_cv_aix_libpath__CXX+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_cxx_try_link "$LINENO"; then : lt_aix_libpath_sed=' /Import File Strings/,/^$/ { /^0/ { s/^0 *\([^ ]*\) *$/\1/ p } }' lt_cv_aix_libpath__CXX=`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__CXX"; then lt_cv_aix_libpath__CXX=`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$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath__CXX"; then lt_cv_aix_libpath__CXX="/usr/lib:/lib" fi fi aix_libpath=$lt_cv_aix_libpath__CXX fi hardcode_libdir_flag_spec_CXX='${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_CXX=' ${wl}-bernotok' allow_undefined_flag_CXX=' ${wl}-berok' if test "$with_gnu_ld" = yes; then # We only use this code for GNU lds that support --whole-archive. whole_archive_flag_spec_CXX='${wl}--whole-archive$convenience ${wl}--no-whole-archive' else # Exported symbols can be pulled into shared objects from archives whole_archive_flag_spec_CXX='$convenience' fi archive_cmds_need_lc_CXX=yes # This is similar to how AIX traditionally builds its shared # libraries. archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' fi fi ;; beos*) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then allow_undefined_flag_CXX=unsupported # Joseph Beckenbach says some releases of gcc # support --undefined. This deserves some investigation. FIXME archive_cmds_CXX='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' else ld_shlibs_CXX=no fi ;; chorus*) case $cc_basename in *) # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; esac ;; cygwin* | mingw* | pw32* | cegcc*) case $GXX,$cc_basename in ,cl* | no,cl*) # Native MSVC # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. hardcode_libdir_flag_spec_CXX=' ' allow_undefined_flag_CXX=unsupported always_export_symbols_CXX=yes file_list_spec_CXX='@' # 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_CXX='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' archive_expsym_cmds_CXX='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; else $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $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, CXX)='true' enable_shared_with_static_runtimes_CXX=yes # Don't use ranlib old_postinstall_cmds_CXX='chmod 644 $oldlib' postlink_cmds_CXX='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, CXX) is actually meaningless, # as there is no search path for DLLs. hardcode_libdir_flag_spec_CXX='-L$libdir' export_dynamic_flag_spec_CXX='${wl}--export-all-symbols' allow_undefined_flag_CXX=unsupported always_export_symbols_CXX=no enable_shared_with_static_runtimes_CXX=yes if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' # If the export-symbols file already is a .def file (1st line # is EXPORTS), use it as is; otherwise, prepend... archive_expsym_cmds_CXX='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then cp $export_symbols $output_objdir/$soname.def; else echo EXPORTS > $output_objdir/$soname.def; cat $export_symbols >> $output_objdir/$soname.def; fi~ $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else ld_shlibs_CXX=no fi ;; esac ;; darwin* | rhapsody*) archive_cmds_need_lc_CXX=no hardcode_direct_CXX=no hardcode_automatic_CXX=yes hardcode_shlibpath_var_CXX=unsupported if test "$lt_cv_ld_force_load" = "yes"; then whole_archive_flag_spec_CXX='`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_CXX='' fi link_all_deplibs_CXX=yes allow_undefined_flag_CXX="$_lt_dar_allow_undefined" case $cc_basename in ifort*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac if test "$_lt_dar_can_shared" = "yes"; then output_verbose_link_cmd=func_echo_all archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" archive_expsym_cmds_CXX="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_CXX="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}" if test "$lt_cv_apple_cc_single_mod" != "yes"; then archive_cmds_CXX="\$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}" archive_expsym_cmds_CXX="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 ld_shlibs_CXX=no fi ;; dgux*) case $cc_basename in ec++*) # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; ghcx*) # Green Hills C++ Compiler # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; *) # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; esac ;; freebsd2.*) # C++ shared libraries reported to be fairly broken before # switch to ELF ld_shlibs_CXX=no ;; freebsd-elf*) archive_cmds_need_lc_CXX=no ;; freebsd* | dragonfly*) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions ld_shlibs_CXX=yes ;; gnu*) ;; haiku*) archive_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' link_all_deplibs_CXX=yes ;; hpux9*) hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir' hardcode_libdir_separator_CXX=: export_dynamic_flag_spec_CXX='${wl}-E' hardcode_direct_CXX=yes hardcode_minus_L_CXX=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 ld_shlibs_CXX=no ;; aCC*) archive_cmds_CXX='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test "$GXX" = yes; then archive_cmds_CXX='$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 $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' else # FIXME: insert proper C++ library support ld_shlibs_CXX=no fi ;; esac ;; hpux10*|hpux11*) if test $with_gnu_ld = no; then hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir' hardcode_libdir_separator_CXX=: case $host_cpu in hppa*64*|ia64*) ;; *) export_dynamic_flag_spec_CXX='${wl}-E' ;; esac fi case $host_cpu in hppa*64*|ia64*) hardcode_direct_CXX=no hardcode_shlibpath_var_CXX=no ;; *) hardcode_direct_CXX=yes hardcode_direct_absolute_CXX=yes hardcode_minus_L_CXX=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 ld_shlibs_CXX=no ;; aCC*) case $host_cpu in hppa*64*) archive_cmds_CXX='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) archive_cmds_CXX='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) archive_cmds_CXX='$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 "$GXX" = yes; then if test $with_gnu_ld = no; then case $host_cpu in hppa*64*) archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) archive_cmds_CXX='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) archive_cmds_CXX='$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 ld_shlibs_CXX=no fi ;; esac ;; interix[3-9]*) hardcode_direct_CXX=no hardcode_shlibpath_var_CXX=no hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir' export_dynamic_flag_spec_CXX='${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_CXX='$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_CXX='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++ archive_cmds_CXX='$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. old_archive_cmds_CXX='$CC -ar -WR,-u -o $oldlib $oldobjs' ;; *) if test "$GXX" = yes; then if test "$with_gnu_ld" = no; then archive_cmds_CXX='$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 archive_cmds_CXX='$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 link_all_deplibs_CXX=yes ;; esac hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator_CXX=: inherit_rpath_CXX=yes ;; linux* | k*bsd*-gnu | kopensolaris*-gnu) case $cc_basename in KCC*) # Kuck and Associates, Inc. (KAI) C++ Compiler # KCC will only create a shared library if the output file # ends with ".so" (or ".sl" for HP-UX), so rename the library # to its proper name (with version) after linking. archive_cmds_CXX='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' archive_expsym_cmds_CXX='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"' hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir' export_dynamic_flag_spec_CXX='${wl}--export-dynamic' # Archives containing C++ object files must be created using # "CC -Bstatic", where "CC" is the KAI C++ compiler. old_archive_cmds_CXX='$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."*) archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds_CXX='$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 archive_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' ;; esac archive_cmds_need_lc_CXX=no hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir' export_dynamic_flag_spec_CXX='${wl}--export-dynamic' whole_archive_flag_spec_CXX='${wl}--whole-archive$convenience ${wl}--no-whole-archive' ;; pgCC* | pgcpp*) # Portland Group C++ compiler case `$CC -V` in *pgCC\ [1-5].* | *pgcpp\ [1-5].*) prelink_cmds_CXX='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`"' old_archive_cmds_CXX='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' archive_cmds_CXX='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' archive_expsym_cmds_CXX='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 archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' archive_expsym_cmds_CXX='$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 hardcode_libdir_flag_spec_CXX='${wl}--rpath ${wl}$libdir' export_dynamic_flag_spec_CXX='${wl}--export-dynamic' whole_archive_flag_spec_CXX='${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++ archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds_CXX='$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 hardcode_libdir_flag_spec_CXX='-rpath $libdir' hardcode_libdir_separator_CXX=: # 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 hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' export_dynamic_flag_spec_CXX='${wl}--export-dynamic' archive_cmds_CXX='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' if test "x$supports_anon_versioning" = xyes; then archive_expsym_cmds_CXX='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 no_undefined_flag_CXX=' -zdefs' archive_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' archive_expsym_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols' hardcode_libdir_flag_spec_CXX='-R$libdir' whole_archive_flag_spec_CXX='${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_CXX=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. old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs' ;; esac ;; esac ;; lynxos*) # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; m88k*) # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; mvs*) case $cc_basename in cxx*) # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; *) # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; esac ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds_CXX='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' wlarc= hardcode_libdir_flag_spec_CXX='-R$libdir' hardcode_direct_CXX=yes hardcode_shlibpath_var_CXX=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*) ld_shlibs_CXX=yes ;; openbsd2*) # C++ shared libraries are fairly broken ld_shlibs_CXX=no ;; openbsd*) if test -f /usr/libexec/ld.so; then hardcode_direct_CXX=yes hardcode_shlibpath_var_CXX=no hardcode_direct_absolute_CXX=yes archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir' if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib' export_dynamic_flag_spec_CXX='${wl}-E' whole_archive_flag_spec_CXX="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' fi output_verbose_link_cmd=func_echo_all else ld_shlibs_CXX=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. archive_cmds_CXX='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' hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir' hardcode_libdir_separator_CXX=: # Archives containing C++ object files must be created using # the KAI C++ compiler. case $host in osf3*) old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs' ;; *) old_archive_cmds_CXX='$CC -o $oldlib $oldobjs' ;; esac ;; RCC*) # Rational C++ 2.4.1 # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; cxx*) case $host in osf3*) allow_undefined_flag_CXX=' ${wl}-expect_unresolved ${wl}\*' archive_cmds_CXX='$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' hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' ;; *) allow_undefined_flag_CXX=' -expect_unresolved \*' archive_cmds_CXX='$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' archive_expsym_cmds_CXX='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' hardcode_libdir_flag_spec_CXX='-rpath $libdir' ;; esac hardcode_libdir_separator_CXX=: # 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 "$GXX" = yes && test "$with_gnu_ld" = no; then allow_undefined_flag_CXX=' ${wl}-expect_unresolved ${wl}\*' case $host in osf3*) archive_cmds_CXX='$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' ;; *) archive_cmds_CXX='$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 hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator_CXX=: # 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 ld_shlibs_CXX=no fi ;; esac ;; psos*) # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; sunos4*) case $cc_basename in CC*) # Sun C++ 4.x # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; lcc*) # Lucid # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; *) # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; esac ;; solaris*) case $cc_basename in CC* | sunCC*) # Sun C++ 4.2, 5.x and Centerline C++ archive_cmds_need_lc_CXX=yes no_undefined_flag_CXX=' -zdefs' archive_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' archive_expsym_cmds_CXX='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' hardcode_libdir_flag_spec_CXX='-R$libdir' hardcode_shlibpath_var_CXX=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?) whole_archive_flag_spec_CXX='-z allextract$convenience -z defaultextract' ;; esac link_all_deplibs_CXX=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. old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs' ;; gcx*) # Green Hills C++ Compiler archive_cmds_CXX='$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. old_archive_cmds_CXX='$CC $LDFLAGS -archive -o $oldlib $oldobjs' ;; *) # GNU C++ compiler with Solaris linker if test "$GXX" = yes && test "$with_gnu_ld" = no; then no_undefined_flag_CXX=' ${wl}-z ${wl}defs' if $CC --version | $GREP -v '^2\.7' > /dev/null; then archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' archive_expsym_cmds_CXX='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 -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. archive_cmds_CXX='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' fi hardcode_libdir_flag_spec_CXX='${wl}-R $wl$libdir' case $host_os in solaris2.[0-5] | solaris2.[0-5].*) ;; *) whole_archive_flag_spec_CXX='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' ;; esac fi ;; esac ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) no_undefined_flag_CXX='${wl}-z,text' archive_cmds_need_lc_CXX=no hardcode_shlibpath_var_CXX=no runpath_var='LD_RUN_PATH' case $cc_basename in CC*) archive_cmds_CXX='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds_CXX='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; *) archive_cmds_CXX='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds_CXX='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; esac ;; sysv5* | sco3.2v5* | sco5v6*) # Note: We can NOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. no_undefined_flag_CXX='${wl}-z,text' allow_undefined_flag_CXX='${wl}-z,nodefs' archive_cmds_need_lc_CXX=no hardcode_shlibpath_var_CXX=no hardcode_libdir_flag_spec_CXX='${wl}-R,$libdir' hardcode_libdir_separator_CXX=':' link_all_deplibs_CXX=yes export_dynamic_flag_spec_CXX='${wl}-Bexport' runpath_var='LD_RUN_PATH' case $cc_basename in CC*) archive_cmds_CXX='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds_CXX='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' old_archive_cmds_CXX='$CC -Tprelink_objects $oldobjs~ '"$old_archive_cmds_CXX" reload_cmds_CXX='$CC -Tprelink_objects $reload_objs~ '"$reload_cmds_CXX" ;; *) archive_cmds_CXX='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds_CXX='$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 ld_shlibs_CXX=no ;; *) # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; esac ;; vxworks*) # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; *) # FIXME: insert proper C++ library support ld_shlibs_CXX=no ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5 $as_echo "$ld_shlibs_CXX" >&6; } test "$ld_shlibs_CXX" = no && can_build_shared=no GCC_CXX="$GXX" LD_CXX="$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... # Dependencies to place before and after the object being linked: predep_objects_CXX= postdep_objects_CXX= predeps_CXX= postdeps_CXX= compiler_lib_search_path_CXX= cat > conftest.$ac_ext <<_LT_EOF class Foo { public: Foo (void) { a = 0; } private: int a; }; _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 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; 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}" and the path. # Remove the space. if test $p = "-L" || test $p = "-R"; 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 "$pre_test_object_deps_done" = no; 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 "$compiler_lib_search_path_CXX"; then compiler_lib_search_path_CXX="${prev}${p}" else compiler_lib_search_path_CXX="${compiler_lib_search_path_CXX} ${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 "$postdeps_CXX"; then postdeps_CXX="${prev}${p}" else postdeps_CXX="${postdeps_CXX} ${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 "$pre_test_object_deps_done" = no; then if test -z "$predep_objects_CXX"; then predep_objects_CXX="$p" else predep_objects_CXX="$predep_objects_CXX $p" fi else if test -z "$postdep_objects_CXX"; then postdep_objects_CXX="$p" else postdep_objects_CXX="$postdep_objects_CXX $p" fi fi ;; *) ;; # Ignore the rest. esac done # Clean up. rm -f a.out a.exe else echo "libtool.m4: error: problem compiling CXX test program" fi $RM -f confest.$objext CFLAGS=$_lt_libdeps_save_CFLAGS # PORTME: override above test on systems where it is broken 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. predep_objects_CXX= postdep_objects_CXX= postdeps_CXX= ;; linux*) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 # The more standards-conforming stlport4 library is # incompatible with the Cstd library. Avoid specifying # it if it's in CXXFLAGS. Ignore libCrun as # -library=stlport4 depends on it. case " $CXX $CXXFLAGS " in *" -library=stlport4 "*) solaris_use_stlport4=yes ;; esac if test "$solaris_use_stlport4" != yes; then postdeps_CXX='-library=Cstd -library=Crun' fi ;; esac ;; solaris*) case $cc_basename in CC* | sunCC*) # The more standards-conforming stlport4 library is # incompatible with the Cstd library. Avoid specifying # it if it's in CXXFLAGS. Ignore libCrun as # -library=stlport4 depends on it. case " $CXX $CXXFLAGS " in *" -library=stlport4 "*) solaris_use_stlport4=yes ;; esac # Adding this requires a known-good setup of shared libraries for # Sun compiler versions before 5.6, else PIC objects from an old # archive will be linked into the output, leading to subtle bugs. if test "$solaris_use_stlport4" != yes; then postdeps_CXX='-library=Cstd -library=Crun' fi ;; esac ;; esac case " $postdeps_CXX " in *" -lc "*) archive_cmds_need_lc_CXX=no ;; esac compiler_lib_search_dirs_CXX= if test -n "${compiler_lib_search_path_CXX}"; then compiler_lib_search_dirs_CXX=`echo " ${compiler_lib_search_path_CXX}" | ${SED} -e 's! -L! !g' -e 's!^ !!'` fi lt_prog_compiler_wl_CXX= lt_prog_compiler_pic_CXX= lt_prog_compiler_static_CXX= # C++ specific cases for pic, static, wl, etc. if test "$GXX" = yes; then lt_prog_compiler_wl_CXX='-Wl,' lt_prog_compiler_static_CXX='-static' case $host_os in aix*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor lt_prog_compiler_static_CXX='-Bstatic' fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support lt_prog_compiler_pic_CXX='-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_CXX='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | os2* | pw32* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries lt_prog_compiler_pic_CXX='-DDLL_EXPORT' ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files lt_prog_compiler_pic_CXX='-fno-common' ;; *djgpp*) # DJGPP does not support shared libraries at all lt_prog_compiler_pic_CXX= ;; haiku*) # PIC is the default for Haiku. # The "-static" flag exists, but is broken. lt_prog_compiler_static_CXX= ;; 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_prog_compiler_pic_CXX=-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_prog_compiler_pic_CXX='-fPIC' ;; esac ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. lt_prog_compiler_pic_CXX='-fPIC -shared' ;; *) lt_prog_compiler_pic_CXX='-fPIC' ;; esac else case $host_os in aix[4-9]*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor lt_prog_compiler_static_CXX='-Bstatic' else lt_prog_compiler_static_CXX='-bnso -bI:/lib/syscalls.exp' fi ;; chorus*) case $cc_basename in cxch68*) # Green Hills C++ Compiler # _LT_TAGVAR(lt_prog_compiler_static, CXX)="--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* | 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). lt_prog_compiler_pic_CXX='-DDLL_EXPORT' ;; dgux*) case $cc_basename in ec++*) lt_prog_compiler_pic_CXX='-KPIC' ;; ghcx*) # Green Hills C++ Compiler lt_prog_compiler_pic_CXX='-pic' ;; *) ;; esac ;; freebsd* | dragonfly*) # FreeBSD uses GNU C++ ;; hpux9* | hpux10* | hpux11*) case $cc_basename in CC*) lt_prog_compiler_wl_CXX='-Wl,' lt_prog_compiler_static_CXX='${wl}-a ${wl}archive' if test "$host_cpu" != ia64; then lt_prog_compiler_pic_CXX='+Z' fi ;; aCC*) lt_prog_compiler_wl_CXX='-Wl,' lt_prog_compiler_static_CXX='${wl}-a ${wl}archive' case $host_cpu in hppa*64*|ia64*) # +Z the default ;; *) lt_prog_compiler_pic_CXX='+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_prog_compiler_wl_CXX='-Wl,' lt_prog_compiler_static_CXX='-non_shared' # CC pic flag -KPIC is the default. ;; *) ;; esac ;; linux* | k*bsd*-gnu | kopensolaris*-gnu) case $cc_basename in KCC*) # KAI C++ Compiler lt_prog_compiler_wl_CXX='--backend -Wl,' lt_prog_compiler_pic_CXX='-fPIC' ;; ecpc* ) # old Intel C++ for x86_64 which still supported -KPIC. lt_prog_compiler_wl_CXX='-Wl,' lt_prog_compiler_pic_CXX='-KPIC' lt_prog_compiler_static_CXX='-static' ;; icpc* ) # Intel C++, used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. lt_prog_compiler_wl_CXX='-Wl,' lt_prog_compiler_pic_CXX='-fPIC' lt_prog_compiler_static_CXX='-static' ;; pgCC* | pgcpp*) # Portland Group C++ compiler lt_prog_compiler_wl_CXX='-Wl,' lt_prog_compiler_pic_CXX='-fpic' lt_prog_compiler_static_CXX='-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_prog_compiler_pic_CXX= lt_prog_compiler_static_CXX='-non_shared' ;; xlc* | xlC* | bgxl[cC]* | mpixl[cC]*) # IBM XL 8.0, 9.0 on PPC and BlueGene lt_prog_compiler_wl_CXX='-Wl,' lt_prog_compiler_pic_CXX='-qpic' lt_prog_compiler_static_CXX='-qstaticlink' ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 lt_prog_compiler_pic_CXX='-KPIC' lt_prog_compiler_static_CXX='-Bstatic' lt_prog_compiler_wl_CXX='-Qoption ld ' ;; esac ;; esac ;; lynxos*) ;; m88k*) ;; mvs*) case $cc_basename in cxx*) lt_prog_compiler_pic_CXX='-W c,exportall' ;; *) ;; esac ;; netbsd*) ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. lt_prog_compiler_pic_CXX='-fPIC -shared' ;; osf3* | osf4* | osf5*) case $cc_basename in KCC*) lt_prog_compiler_wl_CXX='--backend -Wl,' ;; RCC*) # Rational C++ 2.4.1 lt_prog_compiler_pic_CXX='-pic' ;; cxx*) # Digital/Compaq C++ lt_prog_compiler_wl_CXX='-Wl,' # Make sure the PIC flag is empty. It appears that all Alpha # Linux and Compaq Tru64 Unix objects are PIC. lt_prog_compiler_pic_CXX= lt_prog_compiler_static_CXX='-non_shared' ;; *) ;; esac ;; psos*) ;; solaris*) case $cc_basename in CC* | sunCC*) # Sun C++ 4.2, 5.x and Centerline C++ lt_prog_compiler_pic_CXX='-KPIC' lt_prog_compiler_static_CXX='-Bstatic' lt_prog_compiler_wl_CXX='-Qoption ld ' ;; gcx*) # Green Hills C++ Compiler lt_prog_compiler_pic_CXX='-PIC' ;; *) ;; esac ;; sunos4*) case $cc_basename in CC*) # Sun C++ 4.x lt_prog_compiler_pic_CXX='-pic' lt_prog_compiler_static_CXX='-Bstatic' ;; lcc*) # Lucid lt_prog_compiler_pic_CXX='-pic' ;; *) ;; esac ;; sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) case $cc_basename in CC*) lt_prog_compiler_wl_CXX='-Wl,' lt_prog_compiler_pic_CXX='-KPIC' lt_prog_compiler_static_CXX='-Bstatic' ;; esac ;; tandem*) case $cc_basename in NCC*) # NonStop-UX NCC 3.20 lt_prog_compiler_pic_CXX='-KPIC' ;; *) ;; esac ;; vxworks*) ;; *) lt_prog_compiler_can_build_shared_CXX=no ;; esac fi case $host_os in # For platforms which do not support PIC, -DPIC is meaningless: *djgpp*) lt_prog_compiler_pic_CXX= ;; *) lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX -DPIC" ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 $as_echo_n "checking for $compiler option to produce PIC... " >&6; } if ${lt_cv_prog_compiler_pic_CXX+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_pic_CXX=$lt_prog_compiler_pic_CXX fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_CXX" >&5 $as_echo "$lt_cv_prog_compiler_pic_CXX" >&6; } lt_prog_compiler_pic_CXX=$lt_cv_prog_compiler_pic_CXX # # Check to make sure the PIC flag actually works. # if test -n "$lt_prog_compiler_pic_CXX"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; } if ${lt_cv_prog_compiler_pic_works_CXX+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_pic_works_CXX=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC" # 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_CXX=yes fi fi $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works_CXX" >&5 $as_echo "$lt_cv_prog_compiler_pic_works_CXX" >&6; } if test x"$lt_cv_prog_compiler_pic_works_CXX" = xyes; then case $lt_prog_compiler_pic_CXX in "" | " "*) ;; *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;; esac else lt_prog_compiler_pic_CXX= lt_prog_compiler_can_build_shared_CXX=no fi fi # # Check to make sure the static flag actually works. # wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\" { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } if ${lt_cv_prog_compiler_static_works_CXX+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_static_works_CXX=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_CXX=yes fi else lt_cv_prog_compiler_static_works_CXX=yes fi fi $RM -r conftest* LDFLAGS="$save_LDFLAGS" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works_CXX" >&5 $as_echo "$lt_cv_prog_compiler_static_works_CXX" >&6; } if test x"$lt_cv_prog_compiler_static_works_CXX" = xyes; then : else lt_prog_compiler_static_CXX= fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } if ${lt_cv_prog_compiler_c_o_CXX+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o_CXX=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_CXX=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* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5 $as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } if ${lt_cv_prog_compiler_c_o_CXX+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o_CXX=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_CXX=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* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5 $as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; } hard_links="nottested" if test "$lt_cv_prog_compiler_c_o_CXX" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 $as_echo_n "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 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 $as_echo "$hard_links" >&6; } if test "$hard_links" = no; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' exclude_expsyms_CXX='_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 AIX nm, but means don't demangle with GNU nm # Also, AIX nm treats weak defined symbols like other global defined # symbols, whereas GNU nm marks them as "W". if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then export_symbols_cmds_CXX='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' else export_symbols_cmds_CXX='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' fi ;; pw32*) export_symbols_cmds_CXX="$ltdll_cmds" ;; cygwin* | mingw* | cegcc*) case $cc_basename in cl*) exclude_expsyms_CXX='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' ;; *) export_symbols_cmds_CXX='$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_CXX='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname' ;; esac ;; *) export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5 $as_echo "$ld_shlibs_CXX" >&6; } test "$ld_shlibs_CXX" = no && can_build_shared=no with_gnu_ld_CXX=$with_gnu_ld # # Do we need to explicitly link libc? # case "x$archive_cmds_need_lc_CXX" in x|xyes) # Assume -lc should be added archive_cmds_need_lc_CXX=yes if test "$enable_shared" = yes && test "$GCC" = yes; then case $archive_cmds_CXX 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. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } if ${lt_cv_archive_cmds_need_lc_CXX+:} false; then : $as_echo_n "(cached) " >&6 else $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=$? $as_echo "$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_CXX pic_flag=$lt_prog_compiler_pic_CXX compiler_flags=-v linker_flags=-v verstring= output_objdir=. libname=conftest lt_save_allow_undefined_flag=$allow_undefined_flag_CXX allow_undefined_flag_CXX= if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 (eval $archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } then lt_cv_archive_cmds_need_lc_CXX=no else lt_cv_archive_cmds_need_lc_CXX=yes fi allow_undefined_flag_CXX=$lt_save_allow_undefined_flag else cat conftest.err 1>&5 fi $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc_CXX" >&5 $as_echo "$lt_cv_archive_cmds_need_lc_CXX" >&6; } archive_cmds_need_lc_CXX=$lt_cv_archive_cmds_need_lc_CXX ;; esac fi ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 $as_echo_n "checking dynamic linker characteristics... " >&6; } 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 "$host_cpu" = ia64; then # AIX 5 supports IA64 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH else # With GCC up to 2.95.x, collect2 would create an import file # for dependence libraries. The import file would start with # the line `#! .'. This would cause the generated library to # depend on `.', always an invalid library. This was fixed in # development snapshots of GCC prior to 3.0. case $host_os in aix4 | aix4.[01] | aix4.[01].*) if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' echo ' yes ' echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then : else can_build_shared=no fi ;; esac # AIX (on Power*) has no versioning support, so currently we can not hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. if test "$aix_use_runtimelinking" = yes; then # If using run time linking (on AIX 4.2 or later) use lib.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}' else # We preserve .a as extension for shared libraries through AIX4.2 # and later when we are not doing run time linking. library_names_spec='${libname}${release}.a $libname.a' soname_spec='${libname}${release}${shared_ext}$major' fi shlibpath_var=LIBPATH fi ;; amigaos*) case $host_cpu in powerpc) # Since July 2007 AmigaOS4 officially supports .so libraries. # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' ;; m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; beos*) library_names_spec='${libname}${shared_ext}' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH ;; bsdi[45]*) version_type=linux # 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* | 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 postinstall_cmds='base_file=`basename \${file}`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ chmod a+x \$dldir/$dlname~ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; fi' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' ;; mingw* | 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*) # Native MSVC 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*) 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 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_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*) # 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} $libname${shared_ext}' need_version=no need_lib_prefix=no ;; freebsd-*) library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' need_version=yes ;; esac shlibpath_var=LD_LIBRARY_PATH case $host_os in freebsd2.*) shlibpath_overrides_runpath=yes ;; freebsd3.[01]* | freebsdelf3.[01]*) shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; freebsd3.[2-9]* | freebsdelf3.[2-9]* | \ freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1) shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; *) # from 4.6 on, and DragonFly shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; esac ;; gnu*) version_type=linux # 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 hardcode_into_libs=yes ;; 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=yes sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' hardcode_into_libs=yes ;; hpux9* | hpux10* | hpux11*) # Give a soname corresponding to the major version so that dld.sl refuses to # link against other versions. version_type=sunos need_lib_prefix=no need_version=no case $host_cpu in ia64*) shrext_cmds='.so' hardcode_into_libs=yes dynamic_linker="$host_os dld.so" shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' if test "X$HPUX_IA64_MODE" = X32; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" fi sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; hppa*64*) shrext_cmds='.sl' hardcode_into_libs=yes dynamic_linker="$host_os dld.sl" shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; *) shrext_cmds='.sl' dynamic_linker="$host_os dld.sl" shlibpath_var=SHLIB_PATH shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' ;; esac # HP-UX runs *really* slowly unless shared libraries are mode 555, ... postinstall_cmds='chmod 555 $lib' # 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 "$lt_cv_prog_gnu_ld" = yes; 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 ;; # This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-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 ${lt_cv_shlibpath_overrides_runpath+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_shlibpath_overrides_runpath=no save_LDFLAGS=$LDFLAGS save_libdir=$libdir eval "libdir=/foo; wl=\"$lt_prog_compiler_wl_CXX\"; \ LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec_CXX\"" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_cxx_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$ac_exeext conftest.$ac_ext LDFLAGS=$save_LDFLAGS libdir=$save_libdir 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" # Append ld.so.conf contents to the search path if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;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' ;; netbsd*) version_type=sunos need_lib_prefix=no need_version=no if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' dynamic_linker='NetBSD ld.elf_so' fi shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; newsos6) version_type=linux # 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 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. case $host_os in openbsd3.3 | openbsd3.3.*) need_version=yes ;; *) need_version=no ;; esac library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then case $host_os in openbsd2.[89] | openbsd2.[89].*) shlibpath_overrides_runpath=no ;; *) shlibpath_overrides_runpath=yes ;; esac else shlibpath_overrides_runpath=yes fi ;; os2*) libname_spec='$name' shrext_cmds=".dll" need_lib_prefix=no library_names_spec='$libname${shared_ext} $libname.a' dynamic_linker='OS/2 ld.exe' shlibpath_var=LIBPATH ;; osf3* | osf4* | osf5*) version_type=osf need_lib_prefix=no need_version=no soname_spec='${libname}${release}${shared_ext}$major' library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" ;; rdos*) dynamic_linker=no ;; solaris*) version_type=linux # 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 "$with_gnu_ld" = yes; 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=freebsd-elf need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes if test "$with_gnu_ld" = yes; then sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' else sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' case $host_os in sco3.2v5*) sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" ;; esac fi sys_lib_dlsearch_path_spec='/usr/lib' ;; tpf*) # TPF is a cross-target only. Preferred cross-host = GNU/Linux. version_type=linux # 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 ;; *) dynamic_linker=no ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 $as_echo "$dynamic_linker" >&6; } test "$dynamic_linker" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" if test "$GCC" = yes; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" fi if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 $as_echo_n "checking how to hardcode library paths into programs... " >&6; } hardcode_action_CXX= if test -n "$hardcode_libdir_flag_spec_CXX" || test -n "$runpath_var_CXX" || test "X$hardcode_automatic_CXX" = "Xyes" ; then # We can hardcode non-existent directories. if test "$hardcode_direct_CXX" != no && # If the only mechanism to avoid hardcoding is shlibpath_var, we # have to relink, otherwise we might link with an installed library # when we should be linking with a yet-to-be-installed one ## test "$_LT_TAGVAR(hardcode_shlibpath_var, CXX)" != no && test "$hardcode_minus_L_CXX" != no; then # Linking always hardcodes the temporary library directory. hardcode_action_CXX=relink else # We can link without hardcoding, and we can hardcode nonexisting dirs. hardcode_action_CXX=immediate fi else # We cannot hardcode anything, or else we can only hardcode existing # directories. hardcode_action_CXX=unsupported fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&5 $as_echo "$hardcode_action_CXX" >&6; } if test "$hardcode_action_CXX" = relink || test "$inherit_rpath_CXX" = yes; then # Fast installation is not supported enable_fast_install=no elif test "$shlibpath_overrides_runpath" = yes || test "$enable_shared" = no; then # Fast installation is not necessary enable_fast_install=needless fi 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 "$_lt_caught_CXX_error" != yes 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_commands="$ac_config_commands libtool" # Only expand once: # check ibus 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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 $as_echo "$PKG_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG if test -n "$ac_pt_PKG_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 $as_echo "$ac_pt_PKG_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_pt_PKG_CONFIG" = x; then PKG_CONFIG="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 $as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; } if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } PKG_CONFIG="" fi fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for IBUS" >&5 $as_echo_n "checking for IBUS... " >&6; } if test -n "$IBUS_CFLAGS"; then pkg_cv_IBUS_CFLAGS="$IBUS_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" ibus-1.0 >= 1.3.99 \""; } >&5 ($PKG_CONFIG --exists --print-errors " ibus-1.0 >= 1.3.99 ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_IBUS_CFLAGS=`$PKG_CONFIG --cflags " ibus-1.0 >= 1.3.99 " 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$IBUS_LIBS"; then pkg_cv_IBUS_LIBS="$IBUS_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" ibus-1.0 >= 1.3.99 \""; } >&5 ($PKG_CONFIG --exists --print-errors " ibus-1.0 >= 1.3.99 ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_IBUS_LIBS=`$PKG_CONFIG --libs " ibus-1.0 >= 1.3.99 " 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 IBUS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors " ibus-1.0 >= 1.3.99 " 2>&1` else IBUS_PKG_ERRORS=`$PKG_CONFIG --print-errors " ibus-1.0 >= 1.3.99 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$IBUS_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( ibus-1.0 >= 1.3.99 ) were not met: $IBUS_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 IBUS_CFLAGS and IBUS_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 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$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 IBUS_CFLAGS and IBUS_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 IBUS_CFLAGS=$pkg_cv_IBUS_CFLAGS IBUS_LIBS=$pkg_cv_IBUS_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi # check pyzy pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PYZY" >&5 $as_echo_n "checking for PYZY... " >&6; } if test -n "$PYZY_CFLAGS"; then pkg_cv_PYZY_CFLAGS="$PYZY_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" pyzy-1.0 >= 0.0.8 \""; } >&5 ($PKG_CONFIG --exists --print-errors " pyzy-1.0 >= 0.0.8 ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_PYZY_CFLAGS=`$PKG_CONFIG --cflags " pyzy-1.0 >= 0.0.8 " 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$PYZY_LIBS"; then pkg_cv_PYZY_LIBS="$PYZY_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" pyzy-1.0 >= 0.0.8 \""; } >&5 ($PKG_CONFIG --exists --print-errors " pyzy-1.0 >= 0.0.8 ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_PYZY_LIBS=`$PKG_CONFIG --libs " pyzy-1.0 >= 0.0.8 " 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 PYZY_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors " pyzy-1.0 >= 0.0.8 " 2>&1` else PYZY_PKG_ERRORS=`$PKG_CONFIG --print-errors " pyzy-1.0 >= 0.0.8 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$PYZY_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( pyzy-1.0 >= 0.0.8 ) were not met: $PYZY_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 PYZY_CFLAGS and PYZY_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 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$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 PYZY_CFLAGS and PYZY_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 PYZY_CFLAGS=$pkg_cv_PYZY_CFLAGS PYZY_LIBS=$pkg_cv_PYZY_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi # Extract the first word of "pyzy-1.0", so it can be a program name with args. set dummy pyzy-1.0; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_PYZY+:} false; then : $as_echo_n "(cached) " >&6 else case $PYZY in [\\/]* | ?:[\\/]*) ac_cv_path_PYZY="$PYZY" # 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_PYZY="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi PYZY=$ac_cv_path_PYZY if test -n "$PYZY"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYZY" >&5 $as_echo "$PYZY" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # check sqlite pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SQLITE" >&5 $as_echo_n "checking for SQLITE... " >&6; } if test -n "$SQLITE_CFLAGS"; then pkg_cv_SQLITE_CFLAGS="$SQLITE_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" sqlite3 \""; } >&5 ($PKG_CONFIG --exists --print-errors " sqlite3 ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_SQLITE_CFLAGS=`$PKG_CONFIG --cflags " sqlite3 " 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$SQLITE_LIBS"; then pkg_cv_SQLITE_LIBS="$SQLITE_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" sqlite3 \""; } >&5 ($PKG_CONFIG --exists --print-errors " sqlite3 ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_SQLITE_LIBS=`$PKG_CONFIG --libs " sqlite3 " 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 SQLITE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors " sqlite3 " 2>&1` else SQLITE_PKG_ERRORS=`$PKG_CONFIG --print-errors " sqlite3 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$SQLITE_PKG_ERRORS" >&5 as_fn_error $? "Package requirements ( sqlite3 ) were not met: $SQLITE_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 SQLITE_CFLAGS and SQLITE_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 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$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 SQLITE_CFLAGS and SQLITE_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 SQLITE_CFLAGS=$pkg_cv_SQLITE_CFLAGS SQLITE_LIBS=$pkg_cv_SQLITE_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi # Extract the first word of "sqlite3", so it can be a program name with args. set dummy sqlite3; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_SQLITE3+:} false; then : $as_echo_n "(cached) " >&6 else case $SQLITE3 in [\\/]* | ?:[\\/]*) ac_cv_path_SQLITE3="$SQLITE3" # 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_SQLITE3="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi SQLITE3=$ac_cv_path_SQLITE3 if test -n "$SQLITE3"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SQLITE3" >&5 $as_echo "$SQLITE3" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # check if ibus_config_get_values, which is available in ibus-1.3.99+ (git master) save_CFLAGS="$CFLAGS" save_LIBS="$LIBS" CFLAGS="$CFLAGS $IBUS_CFLAGS" LIBS="$LIBS $IBUS_LIBS" for ac_func in ibus_config_get_values do : ac_fn_c_check_func "$LINENO" "ibus_config_get_values" "ac_cv_func_ibus_config_get_values" if test "x$ac_cv_func_ibus_config_get_values" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_IBUS_CONFIG_GET_VALUES 1 _ACEOF fi done CFLAGS="$save_CFLAGS" LIBS="$save_LIBS" # check env # Extract the first word of "env", so it can be a program name with args. set dummy env; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_ENV+:} false; then : $as_echo_n "(cached) " >&6 else case $ENV in [\\/]* | ?:[\\/]*) ac_cv_path_ENV="$ENV" # 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_ENV="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi ENV=$ac_cv_path_ENV if test -n "$ENV"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ENV" >&5 $as_echo "$ENV" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # check python if test -n "$PYTHON"; then # If the user set $PYTHON, use it and don't search something else. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $PYTHON version >= 2.5" >&5 $as_echo_n "checking whether $PYTHON version >= 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 : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else as_fn_error $? "too old" "$LINENO" 5 fi am_display_PYTHON=$PYTHON else # Otherwise, try each interpreter until we find one that satisfies # VERSION. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a Python interpreter with version >= 2.5" >&5 $as_echo_n "checking for a Python interpreter with version >= 2.5... " >&6; } if ${am_cv_pathless_PYTHON+:} false; then : $as_echo_n "(cached) " >&6 else for am_cv_pathless_PYTHON in python python2 python3 python3.2 python3.1 python3.0 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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_pathless_PYTHON" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_PYTHON+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi PYTHON=$ac_cv_path_PYTHON if test -n "$PYTHON"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5 $as_echo "$PYTHON" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5 $as_echo_n "checking for $am_display_PYTHON version... " >&6; } if ${am_cv_python_version+:} false; then : $as_echo_n "(cached) " >&6 else am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[:3])"` fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5 $as_echo "$am_cv_python_version" >&6; } PYTHON_VERSION=$am_cv_python_version PYTHON_PREFIX='${prefix}' PYTHON_EXEC_PREFIX='${exec_prefix}' { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5 $as_echo_n "checking for $am_display_PYTHON platform... " >&6; } if ${am_cv_python_platform+:} false; then : $as_echo_n "(cached) " >&6 else am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"` fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5 $as_echo "$am_cv_python_platform" >&6; } PYTHON_PLATFORM=$am_cv_python_platform { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5 $as_echo_n "checking for $am_display_PYTHON script directory... " >&6; } if ${am_cv_python_pythondir+:} false; then : $as_echo_n "(cached) " >&6 else if test "x$prefix" = xNONE then am_py_prefix=$ac_default_prefix else am_py_prefix=$prefix fi am_cv_python_pythondir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(0,0,prefix='$am_py_prefix'))" 2>/dev/null` 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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5 $as_echo "$am_cv_python_pythondir" >&6; } pythondir=$am_cv_python_pythondir pkgpythondir=\${pythondir}/$PACKAGE { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5 $as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; } if ${am_cv_python_pyexecdir+:} false; then : $as_echo_n "(cached) " >&6 else if test "x$exec_prefix" = xNONE then am_py_exec_prefix=$am_py_prefix else am_py_exec_prefix=$exec_prefix fi am_cv_python_pyexecdir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(1,0,prefix='$am_py_exec_prefix'))" 2>/dev/null` 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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5 $as_echo "$am_cv_python_pyexecdir" >&6; } pyexecdir=$am_cv_python_pyexecdir pkgpyexecdir=\${pyexecdir}/$PACKAGE fi # --enable-boost # Check whether --enable-boost was given. if test "${enable_boost+set}" = set; then : enableval=$enable_boost; enable_boost=$enableval else enable_boost=no fi if test x"$enable_boost" = x"yes"; then # check boost echo "$as_me: this is boost.m4 serial 12" >&5 boost_save_IFS=$IFS boost_version_req=1.39 IFS=. set x $boost_version_req 0 0 0 IFS=$boost_save_IFS shift boost_version_req=`expr "$1" '*' 100000 + "$2" '*' 100 + "$3"` # Check whether --with-boost was given. if test "${with_boost+set}" = set; then : withval=$with_boost; fi # If BOOST_ROOT is set and the user has not provided a value to # --with-boost, then treat BOOST_ROOT as if it the user supplied it. if test x"$BOOST_ROOT" != x; then if test x"$with_boost" = x; then { $as_echo "$as_me:${as_lineno-$LINENO}: Detected BOOST_ROOT; continuing with --with-boost=$BOOST_ROOT" >&5 $as_echo "$as_me: Detected BOOST_ROOT; continuing with --with-boost=$BOOST_ROOT" >&6;} with_boost=$BOOST_ROOT else { $as_echo "$as_me:${as_lineno-$LINENO}: Detected BOOST_ROOT=$BOOST_ROOT, but overridden by --with-boost=$with_boost" >&5 $as_echo "$as_me: Detected BOOST_ROOT=$BOOST_ROOT, but overridden by --with-boost=$with_boost" >&6;} fi fi DISTCHECK_CONFIGURE_FLAGS="$DISTCHECK_CONFIGURE_FLAGS '--with-boost=$with_boost'" boost_save_CPPFLAGS=$CPPFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Boost headers version >= $boost_version_req" >&5 $as_echo_n "checking for Boost headers version >= $boost_version_req... " >&6; } if ${boost_cv_inc_path+:} false; then : $as_echo_n "(cached) " >&6 else boost_cv_inc_path=no ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #if !defined BOOST_VERSION # error BOOST_VERSION is not defined #elif BOOST_VERSION < $boost_version_req # error Boost headers version < $boost_version_req #endif int main () { ; return 0; } _ACEOF # If the user provided a value to --with-boost, use it and only it. case $with_boost in #( ''|yes) set x '' /opt/local/include /usr/local/include /opt/include \ /usr/include C:/Boost/include;; #( *) set x "$with_boost/include" "$with_boost";; esac shift for boost_dir do # Without --layout=system, Boost (or at least some versions) installs # itself in /include/boost-. This inner loop helps to # find headers in such directories. # # Any ${boost_dir}/boost-x_xx directories are searched in reverse version # order followed by ${boost_dir}. The final '.' is a sentinel for # searching $boost_dir" itself. Entries are whitespace separated. # # I didn't indent this loop on purpose (to avoid over-indented code) boost_layout_system_search_list=`cd "$boost_dir" 2>/dev/null \ && ls -1 | "${GREP}" '^boost-' | sort -rn -t- -k2 \ && echo .` for boost_inc in $boost_layout_system_search_list do if test x"$boost_inc" != x.; then boost_inc="$boost_dir/$boost_inc" else boost_inc="$boost_dir" # Uses sentinel in boost_layout_system_search_list fi if test x"$boost_inc" != x; then # We are going to check whether the version of Boost installed # in $boost_inc is usable by running a compilation that # #includes it. But if we pass a -I/some/path in which Boost # is not installed, the compiler will just skip this -I and # use other locations (either from CPPFLAGS, or from its list # of system include directories). As a result we would use # header installed on the machine instead of the /some/path # specified by the user. So in that precise case (trying # $boost_inc), make sure the version.hpp exists. # # Use test -e as there can be symlinks. test -e "$boost_inc/boost/version.hpp" || continue CPPFLAGS="$CPPFLAGS -I$boost_inc" fi if ac_fn_cxx_try_compile "$LINENO"; then : boost_cv_inc_path=yes else boost_cv_version=no fi rm -f core conftest.err conftest.$ac_objext if test x"$boost_cv_inc_path" = xyes; then if test x"$boost_inc" != x; then boost_cv_inc_path=$boost_inc fi break 2 fi done done 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 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $boost_cv_inc_path" >&5 $as_echo "$boost_cv_inc_path" >&6; } case $boost_cv_inc_path in #( no) boost_errmsg="cannot find Boost headers version >= $boost_version_req" as_fn_error $? "$boost_errmsg" "$LINENO" 5 ;;#( yes) BOOST_CPPFLAGS= ;;#( *) BOOST_CPPFLAGS="-I$boost_cv_inc_path" ;; esac if test x"$boost_cv_inc_path" != xno; then $as_echo "#define HAVE_BOOST 1" >>confdefs.h { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Boost's header version" >&5 $as_echo_n "checking for Boost's header version... " >&6; } if ${boost_cv_lib_version+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include boost-lib-version = BOOST_LIB_VERSION _ACEOF if (eval "$ac_cpp $CXXFLAGS conftest.$ac_ext") 2>&5 | tr -d '\r' | $SED -n -e "/^boost-lib-version = /{s///;s/\"//g;p;g;}" >conftest.i 2>&1; then : boost_cv_lib_version=`cat conftest.i` fi rm -rf conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $boost_cv_lib_version" >&5 $as_echo "$boost_cv_lib_version" >&6; } # e.g. "134" for 1_34_1 or "135" for 1_35 boost_major_version=`echo "$boost_cv_lib_version" | sed 's/_//;s/_.*//'` case $boost_major_version in #( '' | *[!0-9]*) as_fn_error $? "invalid value: boost_major_version=$boost_major_version" "$LINENO" 5 ;; esac fi CPPFLAGS=$boost_save_CPPFLAGS if test x"$boost_cv_inc_path" = xno; then { $as_echo "$as_me:${as_lineno-$LINENO}: Boost not available, not searching for boost/bind.hpp" >&5 $as_echo "$as_me: Boost not available, not searching for boost/bind.hpp" >&6;} else ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu boost_save_CPPFLAGS=$CPPFLAGS CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" ac_fn_cxx_check_header_mongrel "$LINENO" "boost/bind.hpp" "ac_cv_header_boost_bind_hpp" "$ac_includes_default" if test "x$ac_cv_header_boost_bind_hpp" = xyes; then : $as_echo "#define HAVE_BOOST_BIND_HPP 1" >>confdefs.h else as_fn_error $? "cannot find boost/bind.hpp" "$LINENO" 5 fi CPPFLAGS=$boost_save_CPPFLAGS 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 fi if test x"$boost_cv_inc_path" = xno; then { $as_echo "$as_me:${as_lineno-$LINENO}: Boost not available, not searching for boost/signals2.hpp" >&5 $as_echo "$as_me: Boost not available, not searching for boost/signals2.hpp" >&6;} else ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu boost_save_CPPFLAGS=$CPPFLAGS CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" ac_fn_cxx_check_header_mongrel "$LINENO" "boost/signals2.hpp" "ac_cv_header_boost_signals2_hpp" "$ac_includes_default" if test "x$ac_cv_header_boost_signals2_hpp" = xyes; then : $as_echo "#define HAVE_BOOST_SIGNALS2_HPP 1" >>confdefs.h else as_fn_error $? "cannot find boost/signals2.hpp" "$LINENO" 5 fi CPPFLAGS=$boost_save_CPPFLAGS 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 fi fi if test x"$enable_boost" = x"yes"; then HAVE_BOOST_TRUE= HAVE_BOOST_FALSE='#' else HAVE_BOOST_TRUE='#' HAVE_BOOST_FALSE= fi # define GETTEXT_* variables GETTEXT_PACKAGE=ibus-pinyin cat >>confdefs.h <<_ACEOF #define GETTEXT_PACKAGE "$GETTEXT_PACKAGE" _ACEOF for ac_header in locale.h do : ac_fn_c_check_header_mongrel "$LINENO" "locale.h" "ac_cv_header_locale_h" "$ac_includes_default" if test "x$ac_cv_header_locale_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_LOCALE_H 1 _ACEOF fi done if test $ac_cv_header_locale_h = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LC_MESSAGES" >&5 $as_echo_n "checking for LC_MESSAGES... " >&6; } if ${am_cv_val_LC_MESSAGES+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { return LC_MESSAGES ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : am_cv_val_LC_MESSAGES=yes else am_cv_val_LC_MESSAGES=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_val_LC_MESSAGES" >&5 $as_echo "$am_cv_val_LC_MESSAGES" >&6; } if test $am_cv_val_LC_MESSAGES = yes; then $as_echo "#define HAVE_LC_MESSAGES 1" >>confdefs.h fi fi USE_NLS=yes gt_cv_have_gettext=no CATOBJEXT=NONE XGETTEXT=: INTLLIBS= ac_fn_c_check_header_mongrel "$LINENO" "libintl.h" "ac_cv_header_libintl_h" "$ac_includes_default" if test "x$ac_cv_header_libintl_h" = xyes; then : gt_cv_func_dgettext_libintl="no" libintl_extra_libs="" # # First check in libc # { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in libc" >&5 $as_echo_n "checking for ngettext in libc... " >&6; } if ${gt_cv_func_ngettext_libc+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { return !ngettext ("","", 1) ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : gt_cv_func_ngettext_libc=yes else gt_cv_func_ngettext_libc=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_ngettext_libc" >&5 $as_echo "$gt_cv_func_ngettext_libc" >&6; } if test "$gt_cv_func_ngettext_libc" = "yes" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dgettext in libc" >&5 $as_echo_n "checking for dgettext in libc... " >&6; } if ${gt_cv_func_dgettext_libc+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { return !dgettext ("","") ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : gt_cv_func_dgettext_libc=yes else gt_cv_func_dgettext_libc=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_dgettext_libc" >&5 $as_echo "$gt_cv_func_dgettext_libc" >&6; } fi if test "$gt_cv_func_ngettext_libc" = "yes" ; then for ac_func in bind_textdomain_codeset do : ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_BIND_TEXTDOMAIN_CODESET 1 _ACEOF fi done fi # # If we don't have everything we want, check in libintl # if test "$gt_cv_func_dgettext_libc" != "yes" \ || test "$gt_cv_func_ngettext_libc" != "yes" \ || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for bindtextdomain in -lintl" >&5 $as_echo_n "checking for bindtextdomain in -lintl... " >&6; } if ${ac_cv_lib_intl_bindtextdomain+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $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. */ #ifdef __cplusplus extern "C" #endif char bindtextdomain (); int main () { return bindtextdomain (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_bindtextdomain=yes else ac_cv_lib_intl_bindtextdomain=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_bindtextdomain" >&5 $as_echo "$ac_cv_lib_intl_bindtextdomain" >&6; } if test "x$ac_cv_lib_intl_bindtextdomain" = xyes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in -lintl" >&5 $as_echo_n "checking for ngettext in -lintl... " >&6; } if ${ac_cv_lib_intl_ngettext+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $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. */ #ifdef __cplusplus extern "C" #endif char ngettext (); int main () { return ngettext (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_ngettext=yes else ac_cv_lib_intl_ngettext=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_ngettext" >&5 $as_echo "$ac_cv_lib_intl_ngettext" >&6; } if test "x$ac_cv_lib_intl_ngettext" = xyes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dgettext in -lintl" >&5 $as_echo_n "checking for dgettext in -lintl... " >&6; } if ${ac_cv_lib_intl_dgettext+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $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. */ #ifdef __cplusplus extern "C" #endif char dgettext (); int main () { return dgettext (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_dgettext=yes else ac_cv_lib_intl_dgettext=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_dgettext" >&5 $as_echo "$ac_cv_lib_intl_dgettext" >&6; } if test "x$ac_cv_lib_intl_dgettext" = xyes; then : gt_cv_func_dgettext_libintl=yes fi fi fi if test "$gt_cv_func_dgettext_libintl" != "yes" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking if -liconv is needed to use gettext" >&5 $as_echo_n "checking if -liconv is needed to use gettext... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5 $as_echo "" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in -lintl" >&5 $as_echo_n "checking for ngettext in -lintl... " >&6; } if ${ac_cv_lib_intl_ngettext+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl -liconv $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. */ #ifdef __cplusplus extern "C" #endif char ngettext (); int main () { return ngettext (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_ngettext=yes else ac_cv_lib_intl_ngettext=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_ngettext" >&5 $as_echo "$ac_cv_lib_intl_ngettext" >&6; } if test "x$ac_cv_lib_intl_ngettext" = xyes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dcgettext in -lintl" >&5 $as_echo_n "checking for dcgettext in -lintl... " >&6; } if ${ac_cv_lib_intl_dcgettext+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl -liconv $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. */ #ifdef __cplusplus extern "C" #endif char dcgettext (); int main () { return dcgettext (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_dcgettext=yes else ac_cv_lib_intl_dcgettext=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_dcgettext" >&5 $as_echo "$ac_cv_lib_intl_dcgettext" >&6; } if test "x$ac_cv_lib_intl_dcgettext" = xyes; then : gt_cv_func_dgettext_libintl=yes libintl_extra_libs=-liconv else : fi else : fi fi # # If we found libintl, then check in it for bind_textdomain_codeset(); # we'll prefer libc if neither have bind_textdomain_codeset(), # and both have dgettext and ngettext # if test "$gt_cv_func_dgettext_libintl" = "yes" ; then glib_save_LIBS="$LIBS" LIBS="$LIBS -lintl $libintl_extra_libs" unset ac_cv_func_bind_textdomain_codeset for ac_func in bind_textdomain_codeset do : ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_BIND_TEXTDOMAIN_CODESET 1 _ACEOF fi done LIBS="$glib_save_LIBS" if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then gt_cv_func_dgettext_libc=no else if test "$gt_cv_func_dgettext_libc" = "yes" \ && test "$gt_cv_func_ngettext_libc" = "yes"; then gt_cv_func_dgettext_libintl=no fi fi fi fi if test "$gt_cv_func_dgettext_libc" = "yes" \ || test "$gt_cv_func_dgettext_libintl" = "yes"; then gt_cv_have_gettext=yes fi if test "$gt_cv_func_dgettext_libintl" = "yes"; then INTLLIBS="-lintl $libintl_extra_libs" fi if test "$gt_cv_have_gettext" = "yes"; then $as_echo "#define HAVE_GETTEXT 1" >>confdefs.h # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_MSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else case "$MSGFMT" in /*) ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"; then ac_cv_path_MSGFMT="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT="no" ;; esac fi MSGFMT="$ac_cv_path_MSGFMT" if test "$MSGFMT" != "no"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 $as_echo "$MSGFMT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "$MSGFMT" != "no"; then glib_save_LIBS="$LIBS" LIBS="$LIBS $INTLLIBS" for ac_func in dcgettext do : ac_fn_c_check_func "$LINENO" "dcgettext" "ac_cv_func_dcgettext" if test "x$ac_cv_func_dcgettext" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_DCGETTEXT 1 _ACEOF fi done MSGFMT_OPTS= { $as_echo "$as_me:${as_lineno-$LINENO}: checking if msgfmt accepts -c" >&5 $as_echo_n "checking if msgfmt accepts -c... " >&6; } cat >conftest.foo <<_ACEOF msgid "" msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Project-Id-Version: test 1.0\n" "PO-Revision-Date: 2007-02-15 12:01+0100\n" "Last-Translator: test \n" "Language-Team: C \n" "MIME-Version: 1.0\n" "Content-Transfer-Encoding: 8bit\n" _ACEOF if { { $as_echo "$as_me:${as_lineno-$LINENO}: \$MSGFMT -c -o /dev/null conftest.foo"; } >&5 ($MSGFMT -c -o /dev/null conftest.foo) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then MSGFMT_OPTS=-c; { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } echo "$as_me: failed input was:" >&5 sed 's/^/| /' conftest.foo >&5 fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_GMSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else 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 test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$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 fi GMSGFMT=$ac_cv_path_GMSGFMT if test -n "$GMSGFMT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 $as_echo "$GMSGFMT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_XGETTEXT+:} false; then : $as_echo_n "(cached) " >&6 else case "$XGETTEXT" in /*) ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"; then ac_cv_path_XGETTEXT="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":" ;; esac fi XGETTEXT="$ac_cv_path_XGETTEXT" if test "$XGETTEXT" != ":"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 $as_echo "$XGETTEXT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : CATOBJEXT=.gmo DATADIRNAME=share else case $host in *-*-solaris*) ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : CATOBJEXT=.gmo DATADIRNAME=share else CATOBJEXT=.mo DATADIRNAME=lib fi ;; *-*-openbsd*) CATOBJEXT=.mo DATADIRNAME=share ;; *) CATOBJEXT=.mo DATADIRNAME=lib ;; esac fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS="$glib_save_LIBS" INSTOBJEXT=.mo else gt_cv_have_gettext=no fi fi fi if test "$gt_cv_have_gettext" = "yes" ; then $as_echo "#define ENABLE_NLS 1" >>confdefs.h fi if test "$XGETTEXT" != ":"; then if $XGETTEXT --omit-header /dev/null 2> /dev/null; then : ; else { $as_echo "$as_me:${as_lineno-$LINENO}: result: found xgettext program is not GNU xgettext; ignore it" >&5 $as_echo "found xgettext program is not GNU xgettext; ignore it" >&6; } XGETTEXT=":" fi fi # We need to process the po/ directory. POSUB=po ac_config_commands="$ac_config_commands default-1" for lang in $ALL_LINGUAS; do GMOFILES="$GMOFILES $lang.gmo" POFILES="$POFILES $lang.po" done if test "$gt_cv_have_gettext" = "yes"; then if test "x$ALL_LINGUAS" = "x"; then LINGUAS= else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for catalogs to be installed" >&5 $as_echo_n "checking for catalogs to be installed... " >&6; } NEW_LINGUAS= for presentlang in $ALL_LINGUAS; do useit=no if test "%UNSET%" != "${LINGUAS-%UNSET%}"; 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 NEW_LINGUAS="$NEW_LINGUAS $presentlang" fi done LINGUAS=$NEW_LINGUAS { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LINGUAS" >&5 $as_echo "$LINGUAS" >&6; } fi if test -n "$LINGUAS"; then for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done fi fi MKINSTALLDIRS= if test -n "$ac_aux_dir"; then MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" fi if test -z "$MKINSTALLDIRS"; then MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" fi test -d po || mkdir po if test "x$srcdir" != "x."; then if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then posrcprefix="$srcdir/" else posrcprefix="../$srcdir/" fi else posrcprefix="../" fi rm -f po/POTFILES sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ < $srcdir/po/POTFILES.in > po/POTFILES # --disable-lua-extension # Check whether --enable-lua-extension was given. if test "${enable_lua_extension+set}" = set; then : enableval=$enable_lua_extension; enable_lua_extension=$enableval else enable_lua_extension=yes fi # check lua pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LUA" >&5 $as_echo_n "checking for LUA... " >&6; } if test -n "$LUA_CFLAGS"; then pkg_cv_LUA_CFLAGS="$LUA_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" lua >= 5.1 \""; } >&5 ($PKG_CONFIG --exists --print-errors " lua >= 5.1 ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_LUA_CFLAGS=`$PKG_CONFIG --cflags " lua >= 5.1 " 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$LUA_LIBS"; then pkg_cv_LUA_LIBS="$LUA_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" lua >= 5.1 \""; } >&5 ($PKG_CONFIG --exists --print-errors " lua >= 5.1 ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_LUA_LIBS=`$PKG_CONFIG --libs " lua >= 5.1 " 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 LUA_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors " lua >= 5.1 " 2>&1` else LUA_PKG_ERRORS=`$PKG_CONFIG --print-errors " lua >= 5.1 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$LUA_PKG_ERRORS" >&5 has_lua_extension=no elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } has_lua_extension=no else LUA_CFLAGS=$pkg_cv_LUA_CFLAGS LUA_LIBS=$pkg_cv_LUA_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi if test x"$has_lua_extension" = x"no"; then pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LUA" >&5 $as_echo_n "checking for LUA... " >&6; } if test -n "$LUA_CFLAGS"; then pkg_cv_LUA_CFLAGS="$LUA_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" lua5.1 \""; } >&5 ($PKG_CONFIG --exists --print-errors " lua5.1 ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_LUA_CFLAGS=`$PKG_CONFIG --cflags " lua5.1 " 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$LUA_LIBS"; then pkg_cv_LUA_LIBS="$LUA_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" lua5.1 \""; } >&5 ($PKG_CONFIG --exists --print-errors " lua5.1 ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_LUA_LIBS=`$PKG_CONFIG --libs " lua5.1 " 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "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 LUA_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors " lua5.1 " 2>&1` else LUA_PKG_ERRORS=`$PKG_CONFIG --print-errors " lua5.1 " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$LUA_PKG_ERRORS" >&5 enable_lua_extension=no elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } enable_lua_extension=no else LUA_CFLAGS=$pkg_cv_LUA_CFLAGS LUA_LIBS=$pkg_cv_LUA_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi; fi if test x"$enable_lua_extension" = x"yes"; then IBUS_BUILD_LUA_EXTENSION_TRUE= IBUS_BUILD_LUA_EXTENSION_FALSE='#' else IBUS_BUILD_LUA_EXTENSION_TRUE='#' IBUS_BUILD_LUA_EXTENSION_FALSE= fi # --disable-english-input-mode # Check whether --enable-english-input-mode was given. if test "${enable_english_input_mode+set}" = set; then : enableval=$enable_english_input_mode; enable_english_input_mode=$enableval else enable_english_input_mode=yes fi if test x"$enable_english_input_mode" = x"yes"; then IBUS_BUILD_ENGLISH_INPUT_MODE_TRUE= IBUS_BUILD_ENGLISH_INPUT_MODE_FALSE='#' else IBUS_BUILD_ENGLISH_INPUT_MODE_TRUE='#' IBUS_BUILD_ENGLISH_INPUT_MODE_FALSE= fi # OUTPUT files ac_config_files="$ac_config_files po/Makefile.in Makefile ibus-pinyin.spec lua/Makefile src/Makefile src/pinyin.xml.in setup/Makefile setup/ibus-setup-pinyin setup/version.py data/Makefile data/db/Makefile data/db/english/Makefile data/icons/Makefile m4/Makefile" 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_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$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+set}" = set || &/ 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 { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 $as_echo "$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 { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 $as_echo "$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=`$as_echo "$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 if test -n "$EXEEXT"; then am__EXEEXT_TRUE= am__EXEEXT_FALSE='#' else am__EXEEXT_TRUE='#' am__EXEEXT_FALSE= 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 "${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 "${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__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCXX\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi ac_config_commands="$ac_config_commands po/stamp-it" if test -z "${HAVE_BOOST_TRUE}" && test -z "${HAVE_BOOST_FALSE}"; then as_fn_error $? "conditional \"HAVE_BOOST\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${IBUS_BUILD_LUA_EXTENSION_TRUE}" && test -z "${IBUS_BUILD_LUA_EXTENSION_FALSE}"; then as_fn_error $? "conditional \"IBUS_BUILD_LUA_EXTENSION\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${IBUS_BUILD_ENGLISH_INPUT_MODE_TRUE}" && test -z "${IBUS_BUILD_ENGLISH_INPUT_MODE_FALSE}"; then as_fn_error $? "conditional \"IBUS_BUILD_ENGLISH_INPUT_MODE\" 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" { $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 $as_echo "$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 -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 as_nl=' ' export as_nl # Printing a long string crashes Solaris 7 /usr/bin/printf. as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo # Prefer a ksh shell builtin over an external printf program on Solaris, # but without wasting forks for bash or zsh. if test -z "$BASH_VERSION$ZSH_VERSION" \ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='print -r --' as_echo_n='print -rn --' elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' as_echo_n='/usr/ucb/echo -n' else as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; esac; expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ' export as_echo_n_body as_echo_n='sh -c $as_echo_n_body as_echo' fi export as_echo_body as_echo='sh -c $as_echo_body as_echo' fi # The user is always right. 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 # IFS # We need space, tab and new line, in precisely that order. Quoting is # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) IFS=" "" $as_nl" # 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 test -z "$as_dir" && as_dir=. 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 $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # Unset variables that we do not need and which cause bugs (e.g. in # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" # suppresses any "Segmentation fault" message there. '((' could # trigger a bug in pdksh 5.2.14. for as_var in BASH_ENV ENV MAIL MAILPATH do eval test x\${$as_var+set} = xset \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH # 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 $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi $as_echo "$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 as_fn_append () { eval $1=\$$1\$2 } 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 as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } 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 || $as_echo 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 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 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 -p'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -p' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi else as_ln_s='cp -p' 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=`$as_echo "$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 || $as_echo 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 if test -x / >/dev/null 2>&1; then as_test_x='test -x' else if ls -dL / >/dev/null 2>&1; then as_ls_L_option=L else as_ls_L_option= fi as_test_x=' eval sh -c '\'' if test -d "$1"; then test -d "$1/."; else case $1 in #( -*)set "./$1";; esac; case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( ???[sx]*):;;*)false;;esac;fi '\'' sh ' fi as_executable_p=$as_test_x # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" 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-pinyin $as_me 1.5.0, which was generated by GNU Autoconf 2.68. 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 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ ibus-pinyin config.status 1.5.0 configured by $0, generated by GNU Autoconf 2.68, with options \\"\$ac_cs_config\\" Copyright (C) 2010 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 ) $as_echo "$ac_cs_version"; exit ;; --config | --confi | --conf | --con | --co | --c ) $as_echo "$ac_cs_config"; exit ;; --debug | --debu | --deb | --de | --d | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$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=`$as_echo "$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 ) $as_echo "$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 \$as_echo "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 $as_echo "$ac_log" } >&5 _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # # INIT-COMMANDS # AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" # 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"`' 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"`' 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"`' 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_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"`' nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`' lt_sysroot='`$ECHO "$lt_sysroot" | $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"`' sys_lib_dlsearch_path_spec='`$ECHO "$sys_lib_dlsearch_path_spec" | $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"`' compiler_lib_search_dirs='`$ECHO "$compiler_lib_search_dirs" | $SED "$delay_single_quote_subst"`' predep_objects='`$ECHO "$predep_objects" | $SED "$delay_single_quote_subst"`' postdep_objects='`$ECHO "$postdep_objects" | $SED "$delay_single_quote_subst"`' predeps='`$ECHO "$predeps" | $SED "$delay_single_quote_subst"`' postdeps='`$ECHO "$postdeps" | $SED "$delay_single_quote_subst"`' compiler_lib_search_path='`$ECHO "$compiler_lib_search_path" | $SED "$delay_single_quote_subst"`' LD_CXX='`$ECHO "$LD_CXX" | $SED "$delay_single_quote_subst"`' reload_flag_CXX='`$ECHO "$reload_flag_CXX" | $SED "$delay_single_quote_subst"`' reload_cmds_CXX='`$ECHO "$reload_cmds_CXX" | $SED "$delay_single_quote_subst"`' old_archive_cmds_CXX='`$ECHO "$old_archive_cmds_CXX" | $SED "$delay_single_quote_subst"`' compiler_CXX='`$ECHO "$compiler_CXX" | $SED "$delay_single_quote_subst"`' GCC_CXX='`$ECHO "$GCC_CXX" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "$lt_prog_compiler_no_builtin_flag_CXX" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_pic_CXX='`$ECHO "$lt_prog_compiler_pic_CXX" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_wl_CXX='`$ECHO "$lt_prog_compiler_wl_CXX" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_static_CXX='`$ECHO "$lt_prog_compiler_static_CXX" | $SED "$delay_single_quote_subst"`' lt_cv_prog_compiler_c_o_CXX='`$ECHO "$lt_cv_prog_compiler_c_o_CXX" | $SED "$delay_single_quote_subst"`' archive_cmds_need_lc_CXX='`$ECHO "$archive_cmds_need_lc_CXX" | $SED "$delay_single_quote_subst"`' enable_shared_with_static_runtimes_CXX='`$ECHO "$enable_shared_with_static_runtimes_CXX" | $SED "$delay_single_quote_subst"`' export_dynamic_flag_spec_CXX='`$ECHO "$export_dynamic_flag_spec_CXX" | $SED "$delay_single_quote_subst"`' whole_archive_flag_spec_CXX='`$ECHO "$whole_archive_flag_spec_CXX" | $SED "$delay_single_quote_subst"`' compiler_needs_object_CXX='`$ECHO "$compiler_needs_object_CXX" | $SED "$delay_single_quote_subst"`' old_archive_from_new_cmds_CXX='`$ECHO "$old_archive_from_new_cmds_CXX" | $SED "$delay_single_quote_subst"`' old_archive_from_expsyms_cmds_CXX='`$ECHO "$old_archive_from_expsyms_cmds_CXX" | $SED "$delay_single_quote_subst"`' archive_cmds_CXX='`$ECHO "$archive_cmds_CXX" | $SED "$delay_single_quote_subst"`' archive_expsym_cmds_CXX='`$ECHO "$archive_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`' module_cmds_CXX='`$ECHO "$module_cmds_CXX" | $SED "$delay_single_quote_subst"`' module_expsym_cmds_CXX='`$ECHO "$module_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`' with_gnu_ld_CXX='`$ECHO "$with_gnu_ld_CXX" | $SED "$delay_single_quote_subst"`' allow_undefined_flag_CXX='`$ECHO "$allow_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`' no_undefined_flag_CXX='`$ECHO "$no_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`' hardcode_libdir_flag_spec_CXX='`$ECHO "$hardcode_libdir_flag_spec_CXX" | $SED "$delay_single_quote_subst"`' hardcode_libdir_separator_CXX='`$ECHO "$hardcode_libdir_separator_CXX" | $SED "$delay_single_quote_subst"`' hardcode_direct_CXX='`$ECHO "$hardcode_direct_CXX" | $SED "$delay_single_quote_subst"`' hardcode_direct_absolute_CXX='`$ECHO "$hardcode_direct_absolute_CXX" | $SED "$delay_single_quote_subst"`' hardcode_minus_L_CXX='`$ECHO "$hardcode_minus_L_CXX" | $SED "$delay_single_quote_subst"`' hardcode_shlibpath_var_CXX='`$ECHO "$hardcode_shlibpath_var_CXX" | $SED "$delay_single_quote_subst"`' hardcode_automatic_CXX='`$ECHO "$hardcode_automatic_CXX" | $SED "$delay_single_quote_subst"`' inherit_rpath_CXX='`$ECHO "$inherit_rpath_CXX" | $SED "$delay_single_quote_subst"`' link_all_deplibs_CXX='`$ECHO "$link_all_deplibs_CXX" | $SED "$delay_single_quote_subst"`' always_export_symbols_CXX='`$ECHO "$always_export_symbols_CXX" | $SED "$delay_single_quote_subst"`' export_symbols_cmds_CXX='`$ECHO "$export_symbols_cmds_CXX" | $SED "$delay_single_quote_subst"`' exclude_expsyms_CXX='`$ECHO "$exclude_expsyms_CXX" | $SED "$delay_single_quote_subst"`' include_expsyms_CXX='`$ECHO "$include_expsyms_CXX" | $SED "$delay_single_quote_subst"`' prelink_cmds_CXX='`$ECHO "$prelink_cmds_CXX" | $SED "$delay_single_quote_subst"`' postlink_cmds_CXX='`$ECHO "$postlink_cmds_CXX" | $SED "$delay_single_quote_subst"`' file_list_spec_CXX='`$ECHO "$file_list_spec_CXX" | $SED "$delay_single_quote_subst"`' hardcode_action_CXX='`$ECHO "$hardcode_action_CXX" | $SED "$delay_single_quote_subst"`' compiler_lib_search_dirs_CXX='`$ECHO "$compiler_lib_search_dirs_CXX" | $SED "$delay_single_quote_subst"`' predep_objects_CXX='`$ECHO "$predep_objects_CXX" | $SED "$delay_single_quote_subst"`' postdep_objects_CXX='`$ECHO "$postdep_objects_CXX" | $SED "$delay_single_quote_subst"`' predeps_CXX='`$ECHO "$predeps_CXX" | $SED "$delay_single_quote_subst"`' postdeps_CXX='`$ECHO "$postdeps_CXX" | $SED "$delay_single_quote_subst"`' compiler_lib_search_path_CXX='`$ECHO "$compiler_lib_search_path_CXX" | $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 \ OBJDUMP \ deplibs_check_method \ file_magic_cmd \ file_magic_glob \ want_nocaseglob \ DLLTOOL \ sharedlib_from_linklib_cmd \ AR \ AR_FLAGS \ 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_c_name_address \ lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \ nm_file_list_spec \ 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 \ compiler_lib_search_dirs \ predep_objects \ postdep_objects \ predeps \ postdeps \ compiler_lib_search_path \ LD_CXX \ reload_flag_CXX \ compiler_CXX \ lt_prog_compiler_no_builtin_flag_CXX \ lt_prog_compiler_pic_CXX \ lt_prog_compiler_wl_CXX \ lt_prog_compiler_static_CXX \ lt_cv_prog_compiler_c_o_CXX \ export_dynamic_flag_spec_CXX \ whole_archive_flag_spec_CXX \ compiler_needs_object_CXX \ with_gnu_ld_CXX \ allow_undefined_flag_CXX \ no_undefined_flag_CXX \ hardcode_libdir_flag_spec_CXX \ hardcode_libdir_separator_CXX \ exclude_expsyms_CXX \ include_expsyms_CXX \ file_list_spec_CXX \ compiler_lib_search_dirs_CXX \ predep_objects_CXX \ postdep_objects_CXX \ predeps_CXX \ postdeps_CXX \ compiler_lib_search_path_CXX; do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ;; *) 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 \ sys_lib_dlsearch_path_spec \ reload_cmds_CXX \ old_archive_cmds_CXX \ old_archive_from_new_cmds_CXX \ old_archive_from_expsyms_cmds_CXX \ archive_cmds_CXX \ archive_expsym_cmds_CXX \ module_cmds_CXX \ module_expsym_cmds_CXX \ export_symbols_cmds_CXX \ prelink_cmds_CXX \ postlink_cmds_CXX; do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done ac_aux_dir='$ac_aux_dir' xsi_shell='$xsi_shell' lt_shell_append='$lt_shell_append' # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes INIT. if test -n "\${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi PACKAGE='$PACKAGE' VERSION='$VERSION' TIMESTAMP='$TIMESTAMP' 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 "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; "default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;; "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "ibus-pinyin.spec") CONFIG_FILES="$CONFIG_FILES ibus-pinyin.spec" ;; "lua/Makefile") CONFIG_FILES="$CONFIG_FILES lua/Makefile" ;; "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; "src/pinyin.xml.in") CONFIG_FILES="$CONFIG_FILES src/pinyin.xml.in" ;; "setup/Makefile") CONFIG_FILES="$CONFIG_FILES setup/Makefile" ;; "setup/ibus-setup-pinyin") CONFIG_FILES="$CONFIG_FILES setup/ibus-setup-pinyin" ;; "setup/version.py") CONFIG_FILES="$CONFIG_FILES setup/version.py" ;; "data/Makefile") CONFIG_FILES="$CONFIG_FILES data/Makefile" ;; "data/db/Makefile") CONFIG_FILES="$CONFIG_FILES data/db/Makefile" ;; "data/db/english/Makefile") CONFIG_FILES="$CONFIG_FILES data/db/english/Makefile" ;; "data/icons/Makefile") CONFIG_FILES="$CONFIG_FILES data/icons/Makefile" ;; "m4/Makefile") CONFIG_FILES="$CONFIG_FILES m4/Makefile" ;; "po/stamp-it") CONFIG_COMMANDS="$CONFIG_COMMANDS po/stamp-it" ;; *) 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+set}" = set || CONFIG_FILES=$config_files test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers test "${CONFIG_COMMANDS+set}" = set || 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 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 { 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 = "" } { 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 } print line } _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=`$as_echo "$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 '` $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' `' by configure.' if test x"$ac_file" != x-; then configure_input="$ac_file. $configure_input" { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 $as_echo "$as_me: creating $ac_file" >&6;} fi # Neutralize special characters interpreted by sed in replacement strings. case $configure_input in #( *\&* | *\|* | *\\* ) ac_sed_conf_input=`$as_echo "$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 || $as_echo 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=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`$as_echo "$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@*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 $as_echo "$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" | $AWK -f "$ac_tmp/subs.awk" \ >$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"; } && { $as_echo "$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 $as_echo "$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 { $as_echo "/* $configure_input */" \ && 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 { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 $as_echo "$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 $as_echo "/* $configure_input */" \ && 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 || $as_echo 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) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 $as_echo "$as_me: executing $ac_file commands" >&6;} ;; esac case $ac_file$ac_mode in "depfiles":C) test x"$AMDEP_TRUE" != x"" || { # Autoconf 2.62 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. case $CONFIG_FILES in *\'*) eval set x "$CONFIG_FILES" ;; *) set x $CONFIG_FILES ;; esac shift for mf do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named `Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # Grep'ing the whole file is not good either: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then dirpart=`$as_dirname -- "$mf" || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ X"$mf" : 'X\(//\)$' \| \ X"$mf" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$mf" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`$as_dirname -- "$file" || $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$file" : 'X\(//\)[^/]' \| \ X"$file" : 'X\(//\)$' \| \ X"$file" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` as_dir=$dirpart/$fdir; as_fn_mkdir_p # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done } ;; "libtool":C) # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes. if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi cfgfile="${ofile}T" trap "$RM \"$cfgfile\"; exit 1" 1 2 15 $RM "$cfgfile" cat <<_LT_EOF >> "$cfgfile" #! $SHELL # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. # Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, # 2006, 2007, 2008, 2009, 2010, 2011 Free Software # Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is part of GNU Libtool. # # GNU Libtool is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License as # published by the Free Software Foundation; either version 2 of # the License, or (at your option) any later version. # # As a special exception to the GNU General Public License, # if you distribute this file as part of a program or library that # is built using GNU Libtool, you may include this file under the # same distribution terms that you use for the rest of that program. # # GNU Libtool is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GNU Libtool; see the file COPYING. If not, a copy # can be downloaded from http://www.gnu.org/licenses/gpl.html, or # obtained by writing to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # The names of the tagged configurations supported by this script. available_tags="CXX " # ### 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 # 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 # 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. AR_FLAGS=$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 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 # 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 in which our libraries should be installed. lt_sysroot=$lt_sysroot # 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 # Run-time system search path for libraries. sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec # 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 # The directories searched by this compiler when creating a shared library. compiler_lib_search_dirs=$lt_compiler_lib_search_dirs # Dependencies to place before and after the objects being linked to # create a shared library. predep_objects=$lt_predep_objects postdep_objects=$lt_postdep_objects predeps=$lt_predeps postdeps=$lt_postdeps # The library search path used internally by the compiler when linking # a shared library. compiler_lib_search_path=$lt_compiler_lib_search_path # ### END LIBTOOL CONFIG _LT_EOF case $host_os in aix3*) cat <<\_LT_EOF >> "$cfgfile" # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi _LT_EOF ;; esac 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) if test x"$xsi_shell" = xyes; then sed -e '/^func_dirname ()$/,/^} # func_dirname /c\ func_dirname ()\ {\ \ case ${1} in\ \ */*) func_dirname_result="${1%/*}${2}" ;;\ \ * ) func_dirname_result="${3}" ;;\ \ esac\ } # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_basename ()$/,/^} # func_basename /c\ func_basename ()\ {\ \ func_basename_result="${1##*/}"\ } # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\ func_dirname_and_basename ()\ {\ \ case ${1} in\ \ */*) func_dirname_result="${1%/*}${2}" ;;\ \ * ) func_dirname_result="${3}" ;;\ \ esac\ \ func_basename_result="${1##*/}"\ } # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_stripname ()$/,/^} # func_stripname /c\ func_stripname ()\ {\ \ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\ \ # positional parameters, so assign one to ordinary parameter first.\ \ func_stripname_result=${3}\ \ func_stripname_result=${func_stripname_result#"${1}"}\ \ func_stripname_result=${func_stripname_result%"${2}"}\ } # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\ func_split_long_opt ()\ {\ \ func_split_long_opt_name=${1%%=*}\ \ func_split_long_opt_arg=${1#*=}\ } # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\ func_split_short_opt ()\ {\ \ func_split_short_opt_arg=${1#??}\ \ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\ } # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\ func_lo2o ()\ {\ \ case ${1} in\ \ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\ \ *) func_lo2o_result=${1} ;;\ \ esac\ } # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_xform ()$/,/^} # func_xform /c\ func_xform ()\ {\ func_xform_result=${1%.*}.lo\ } # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_arith ()$/,/^} # func_arith /c\ func_arith ()\ {\ func_arith_result=$(( $* ))\ } # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_len ()$/,/^} # func_len /c\ func_len ()\ {\ func_len_result=${#1}\ } # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: fi if test x"$lt_shell_append" = xyes; then sed -e '/^func_append ()$/,/^} # func_append /c\ func_append ()\ {\ eval "${1}+=\\${2}"\ } # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\ func_append_quoted ()\ {\ \ func_quote_for_eval "${2}"\ \ eval "${1}+=\\\\ \\$func_quote_for_eval_result"\ } # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: # Save a `func_append' function call where possible by direct use of '+=' sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: else # Save a `func_append' function call even when '+=' is not available sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: fi if test x"$_lt_function_replace_fail" = x":"; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5 $as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;} fi mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" cat <<_LT_EOF >> "$ofile" # ### BEGIN LIBTOOL TAG CONFIG: CXX # The linker used to build libraries. LD=$lt_LD_CXX # How to create reloadable object files. reload_flag=$lt_reload_flag_CXX reload_cmds=$lt_reload_cmds_CXX # Commands used to build an old-style archive. old_archive_cmds=$lt_old_archive_cmds_CXX # A language specific compiler. CC=$lt_compiler_CXX # Is the compiler the GNU compiler? with_gcc=$GCC_CXX # Compiler flag to turn off builtin functions. no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX # Additional compiler flags for building library objects. pic_flag=$lt_lt_prog_compiler_pic_CXX # How to pass a linker flag through the compiler. wl=$lt_lt_prog_compiler_wl_CXX # Compiler flag to prevent dynamic linking. link_static_flag=$lt_lt_prog_compiler_static_CXX # Does compiler simultaneously support -c and -o options? compiler_c_o=$lt_lt_cv_prog_compiler_c_o_CXX # Whether or not to add -lc for building shared libraries. build_libtool_need_lc=$archive_cmds_need_lc_CXX # Whether or not to disallow shared libs when runtime libs are static. allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_CXX # Compiler flag to allow reflexive dlopens. export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_CXX # Compiler flag to generate shared objects directly from archives. whole_archive_flag_spec=$lt_whole_archive_flag_spec_CXX # Whether the compiler copes with passing no objects directly. compiler_needs_object=$lt_compiler_needs_object_CXX # Create an old-style archive from a shared archive. old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_CXX # Create a temporary old-style archive to link instead of a shared archive. old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_CXX # Commands used to build a shared archive. archive_cmds=$lt_archive_cmds_CXX archive_expsym_cmds=$lt_archive_expsym_cmds_CXX # Commands used to build a loadable module if different from building # a shared archive. module_cmds=$lt_module_cmds_CXX module_expsym_cmds=$lt_module_expsym_cmds_CXX # Whether we are building with GNU ld or not. with_gnu_ld=$lt_with_gnu_ld_CXX # Flag that allows shared libraries with undefined symbols to be built. allow_undefined_flag=$lt_allow_undefined_flag_CXX # Flag that enforces no undefined symbols. no_undefined_flag=$lt_no_undefined_flag_CXX # 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_CXX # Whether we need a single "-rpath" flag with a separated argument. hardcode_libdir_separator=$lt_hardcode_libdir_separator_CXX # Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes # DIR into the resulting binary. hardcode_direct=$hardcode_direct_CXX # 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_CXX # Set to "yes" if using the -LDIR flag during linking hardcodes DIR # into the resulting binary. hardcode_minus_L=$hardcode_minus_L_CXX # Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR # into the resulting binary. hardcode_shlibpath_var=$hardcode_shlibpath_var_CXX # 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_CXX # Set to yes if linker adds runtime paths of dependent libraries # to runtime path list. inherit_rpath=$inherit_rpath_CXX # Whether libtool must link a program against all its dependency libraries. link_all_deplibs=$link_all_deplibs_CXX # Set to "yes" if exported symbols are required. always_export_symbols=$always_export_symbols_CXX # The commands to list exported symbols. export_symbols_cmds=$lt_export_symbols_cmds_CXX # Symbols that should not be listed in the preloaded symbols. exclude_expsyms=$lt_exclude_expsyms_CXX # Symbols that must always be exported. include_expsyms=$lt_include_expsyms_CXX # Commands necessary for linking programs (against libraries) with templates. prelink_cmds=$lt_prelink_cmds_CXX # Commands necessary for finishing linking programs. postlink_cmds=$lt_postlink_cmds_CXX # Specify filename containing input files. file_list_spec=$lt_file_list_spec_CXX # How to hardcode a shared library path into an executable. hardcode_action=$hardcode_action_CXX # The directories searched by this compiler when creating a shared library. compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_CXX # Dependencies to place before and after the objects being linked to # create a shared library. predep_objects=$lt_predep_objects_CXX postdep_objects=$lt_postdep_objects_CXX predeps=$lt_predeps_CXX postdeps=$lt_postdeps_CXX # The library search path used internally by the compiler when linking # a shared library. compiler_lib_search_path=$lt_compiler_lib_search_path_CXX # ### END LIBTOOL TAG CONFIG: CXX _LT_EOF ;; "default-1":C) case "$CONFIG_FILES" in *po/Makefile.in*) sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile esac ;; "po/stamp-it":C) if ! grep "^# INTLTOOL_MAKEFILE$" "po/Makefile.in" > /dev/null ; then as_fn_error $? "po/Makefile.in.in was not created by intltoolize." "$LINENO" 5 fi rm -f "po/stamp-it" "po/stamp-it.tmp" "po/POTFILES" "po/Makefile.tmp" >"po/stamp-it.tmp" sed '/^#/d s/^[[].*] *// /^[ ]*$/d '"s|^| $ac_top_srcdir/|" \ "$srcdir/po/POTFILES.in" | sed '$!s/$/ \\/' >"po/POTFILES" sed '/^POTFILES =/,/[^\\]$/ { /^POTFILES =/!d r po/POTFILES } ' "po/Makefile.in" >"po/Makefile" rm -f "po/Makefile.tmp" mv "po/stamp-it.tmp" "po/stamp-it" ;; 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 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: Build options: Version $VERSION Install prefix $prefix Use boost $enable_boost Build lua extension $enable_lua_extension Build english input mode $enable_english_input_mode " >&5 $as_echo " Build options: Version $VERSION Install prefix $prefix Use boost $enable_boost Build lua extension $enable_lua_extension Build english input mode $enable_english_input_mode " >&6; } ibus-pinyin-1.5.0/ltmain.sh0000644000175000017500000105152212063702752012536 00000000000000 # libtool (GNU libtool) 2.4.2 # Written by Gordon Matzigkeit , 1996 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, # 2007, 2008, 2009, 2010, 2011 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 GNU Libtool; see the file COPYING. If not, a copy # can be downloaded from http://www.gnu.org/licenses/gpl.html, # or obtained by writing to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # Usage: $progname [OPTION]... [MODE-ARG]... # # Provide generalized library-building support services. # # --config show all configuration variables # --debug enable verbose shell tracing # -n, --dry-run display commands without modifying any files # --features display basic configuration information and exit # --mode=MODE use operation mode MODE # --preserve-dup-deps don't remove duplicate dependency libraries # --quiet, --silent don't print informational messages # --no-quiet, --no-silent # print informational messages (default) # --no-warn don't display warning messages # --tag=TAG use configuration variables from tag TAG # -v, --verbose print more informational messages than default # --no-verbose don't print the extra informational messages # --version print version information # -h, --help, --help-all print short, long, or detailed 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) # $progname: (GNU libtool) 2.4.2 # automake: $automake_version # autoconf: $autoconf_version # # Report bugs to . # GNU libtool home page: . # General help using GNU software: . PROGRAM=libtool PACKAGE=libtool VERSION=2.4.2 TIMESTAMP="" package_revision=1.3337 # 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 # A function that is used when there is no print builtin or printf. func_fallback_echo () { eval 'cat <<_LTECHO_EOF $1 _LTECHO_EOF' } # NLS nuisances: We save the old values to restore during execute mode. lt_user_locale= lt_safe_locale= for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES do eval "if test \"\${$lt_var+set}\" = set; then save_$lt_var=\$$lt_var $lt_var=C export $lt_var lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\" lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\" fi" done LC_ALL=C LANGUAGE=C export LANGUAGE LC_ALL $lt_unset CDPATH # 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" : ${CP="cp -f"} test "${ECHO+set}" = set || ECHO=${as_echo-'printf %s\n'} : ${MAKE="make"} : ${MKDIR="mkdir"} : ${MV="mv -f"} : ${RM="rm -f"} : ${SHELL="${CONFIG_SHELL-/bin/sh}"} : ${Xsed="$SED -e 1s/^X//"} # Global variables: 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. exit_status=$EXIT_SUCCESS # Make sure IFS has a sensible default lt_nl=' ' IFS=" $lt_nl" dirname="s,/[^/]*$,," basename="s,^.*/,," # func_dirname file append nondir_replacement # Compute the dirname of FILE. If nonempty, add APPEND to the result, # otherwise set result to NONDIR_REPLACEMENT. func_dirname () { func_dirname_result=`$ECHO "${1}" | $SED "$dirname"` if test "X$func_dirname_result" = "X${1}"; then func_dirname_result="${3}" else func_dirname_result="$func_dirname_result${2}" fi } # func_dirname may be replaced by extended shell implementation # func_basename file func_basename () { func_basename_result=`$ECHO "${1}" | $SED "$basename"` } # func_basename may be replaced by extended shell implementation # func_dirname_and_basename file append nondir_replacement # perform func_basename and func_dirname in a single function # call: # dirname: Compute the dirname of FILE. If nonempty, # add APPEND to the result, otherwise set result # to NONDIR_REPLACEMENT. # value returned in "$func_dirname_result" # basename: Compute filename of FILE. # value retuned in "$func_basename_result" # Implementation must be kept synchronized with func_dirname # and func_basename. For efficiency, we do not delegate to # those functions but instead duplicate the functionality here. func_dirname_and_basename () { # Extract subdirectory from the argument. func_dirname_result=`$ECHO "${1}" | $SED -e "$dirname"` if test "X$func_dirname_result" = "X${1}"; then func_dirname_result="${3}" else func_dirname_result="$func_dirname_result${2}" fi func_basename_result=`$ECHO "${1}" | $SED -e "$basename"` } # func_dirname_and_basename may be replaced by extended shell implementation # func_stripname prefix suffix name # strip PREFIX and SUFFIX off of NAME. # PREFIX and SUFFIX must not contain globbing or regex special # characters, hashes, percent signs, but SUFFIX may contain a leading # dot (in which case that matches only a dot). # func_strip_suffix prefix name func_stripname () { case ${2} in .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;; *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;; esac } # func_stripname may be replaced by extended shell implementation # These SED scripts presuppose an absolute path with a trailing slash. pathcar='s,^/\([^/]*\).*$,\1,' pathcdr='s,^/[^/]*,,' removedotparts=':dotsl s@/\./@/@g t dotsl s,/\.$,/,' collapseslashes='s@/\{1,\}@/@g' finalslash='s,/*$,/,' # 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. # value returned in "$func_normal_abspath_result" func_normal_abspath () { # 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 "$removedotparts" -e "$collapseslashes" -e "$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 "$pathcar"` func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ -e "$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_normal_abspath_result=$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_relative_path SRCDIR DSTDIR # generates a relative path from SRCDIR to DSTDIR, with a trailing # slash if non-empty, suitable for immediately appending a filename # without needing to append a separator. # value returned in "$func_relative_path_result" func_relative_path () { 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 "x$func_relative_path_tlibdir" = x ; 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 "x$func_stripname_result" != x ; then func_relative_path_result=${func_relative_path_result}/${func_stripname_result} fi # Normalisation. If bindir is libdir, return empty string, # else relative path ending with a slash; either way, target # file name can be directly appended. if test ! -z "$func_relative_path_result"; then func_stripname './' '' "$func_relative_path_result/" func_relative_path_result=$func_stripname_result fi } # The name of this program: func_dirname_and_basename "$progpath" progname=$func_basename_result # Make sure we have an absolute path for reexecution: case $progpath in [\\/]*|[A-Za-z]:\\*) ;; *[\\/]*) progdir=$func_dirname_result progdir=`cd "$progdir" && pwd` progpath="$progdir/$progname" ;; *) save_IFS="$IFS" IFS=${PATH_SEPARATOR-:} for progdir in $PATH; do IFS="$save_IFS" test -x "$progdir/$progname" && break done IFS="$save_IFS" test -n "$progdir" || progdir=`pwd` progpath="$progdir/$progname" ;; esac # Sed substitution that helps us do robust quoting. It backslashifies # metacharacters that are still active within double-quoted strings. Xsed="${SED}"' -e 1s/^X//' sed_quote_subst='s/\([`"$\\]\)/\\\1/g' # Same as above, but do not quote variable references. 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 # which contains forward slashes, into one that contains # (escaped) backslashes. A very naive implementation. lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' # Re-`\' parameter expansions in output of double_quote_subst that were # `\'-ed in input to the same. If an odd number of `\' preceded a '$' # in input to 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 '$'. bs='\\' bs2='\\\\' bs4='\\\\\\\\' dollar='\$' sed_double_backslash="\ s/$bs4/&\\ /g s/^$bs2$dollar/$bs&/ s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g s/\n//g" # Standard options: opt_dry_run=false opt_help=false opt_quiet=false opt_verbose=false opt_warning=: # func_echo arg... # Echo program name prefixed message, along with the current mode # name if it has been set yet. func_echo () { $ECHO "$progname: ${opt_mode+$opt_mode: }$*" } # func_verbose arg... # Echo program name prefixed message in verbose mode only. func_verbose () { $opt_verbose && 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_echo_all arg... # Invoke $ECHO with all args, space-separated. func_echo_all () { $ECHO "$*" } # func_error arg... # Echo program name prefixed message to standard error. func_error () { $ECHO "$progname: ${opt_mode+$opt_mode: }"${1+"$@"} 1>&2 } # func_warning arg... # Echo program name prefixed warning message to standard error. func_warning () { $opt_warning && $ECHO "$progname: ${opt_mode+$opt_mode: }warning: "${1+"$@"} 1>&2 # bash bug again: : } # func_fatal_error arg... # Echo program name prefixed message to standard error, and exit. func_fatal_error () { func_error ${1+"$@"} exit $EXIT_FAILURE } # func_fatal_help arg... # Echo program name prefixed message to standard error, followed by # a help hint, and exit. func_fatal_help () { func_error ${1+"$@"} func_fatal_error "$help" } help="Try \`$progname --help' for more information." ## default # func_grep expression filename # Check whether EXPRESSION matches any line of FILENAME, without output. func_grep () { $GREP "$1" "$2" >/dev/null 2>&1 } # func_mkdir_p directory-path # Make sure the entire path to DIRECTORY-PATH is available. func_mkdir_p () { my_directory_path="$1" my_dir_list= if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then # Protect directory names starting with `-' case $my_directory_path in -*) my_directory_path="./$my_directory_path" ;; esac # While some portion of DIR does not yet exist... while test ! -d "$my_directory_path"; do # ...make a list in topmost first order. Use a colon delimited # list incase some portion of path contains whitespace. my_dir_list="$my_directory_path:$my_dir_list" # If the last portion added has no slash in it, the list is done case $my_directory_path in */*) ;; *) break ;; esac # ...otherwise throw away the child directory and loop my_directory_path=`$ECHO "$my_directory_path" | $SED -e "$dirname"` done my_dir_list=`$ECHO "$my_dir_list" | $SED 's,:*$,,'` save_mkdir_p_IFS="$IFS"; IFS=':' for my_dir in $my_dir_list; do IFS="$save_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 "$my_dir" 2>/dev/null || : done IFS="$save_mkdir_p_IFS" # Bail out if we (or some other process) failed to create a directory. test -d "$my_directory_path" || \ func_fatal_error "Failed to create \`$1'" fi } # func_mktempdir [string] # Make a temporary directory that won't clash with other running # libtool processes, and avoids race conditions if possible. If # given, STRING is the basename for that directory. func_mktempdir () { my_template="${TMPDIR-/tmp}/${1-$progname}" if test "$opt_dry_run" = ":"; then # Return a directory name, but don't create it in dry-run mode my_tmpdir="${my_template}-$$" else # If mktemp works, use that first and foremost my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null` if test ! -d "$my_tmpdir"; then # Failing that, at least try and use $RANDOM to avoid a race my_tmpdir="${my_template}-${RANDOM-0}$$" save_mktempdir_umask=`umask` umask 0077 $MKDIR "$my_tmpdir" umask $save_mktempdir_umask fi # If we're not in dry-run mode, bomb out on failure test -d "$my_tmpdir" || \ func_fatal_error "cannot create temporary directory \`$my_tmpdir'" fi $ECHO "$my_tmpdir" } # func_quote_for_eval arg # Aesthetically quote ARG to be evaled later. # This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT # is double-quoted, suitable for a subsequent eval, whereas # FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters # which are still active within double quotes backslashified. func_quote_for_eval () { case $1 in *[\\\`\"\$]*) func_quote_for_eval_unquoted_result=`$ECHO "$1" | $SED "$sed_quote_subst"` ;; *) func_quote_for_eval_unquoted_result="$1" ;; esac case $func_quote_for_eval_unquoted_result in # Double-quote args containing shell metacharacters to delay # word splitting, command substitution and 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_for_eval_result="\"$func_quote_for_eval_unquoted_result\"" ;; *) func_quote_for_eval_result="$func_quote_for_eval_unquoted_result" esac } # func_quote_for_expand arg # Aesthetically quote ARG to be evaled later; same as above, # but do not quote variable references. func_quote_for_expand () { case $1 in *[\\\`\"]*) my_arg=`$ECHO "$1" | $SED \ -e "$double_quote_subst" -e "$sed_double_backslash"` ;; *) my_arg="$1" ;; esac case $my_arg in # Double-quote args containing shell metacharacters to delay # word splitting and command substitution for a subsequent eval. # Many Bourne shells cannot handle close brackets correctly # in scan sets, so we specify it separately. *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") my_arg="\"$my_arg\"" ;; esac func_quote_for_expand_result="$my_arg" } # func_show_eval cmd [fail_exp] # Unless opt_silent 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 () { my_cmd="$1" my_fail_exp="${2-:}" ${opt_silent-false} || { func_quote_for_expand "$my_cmd" eval "func_echo $func_quote_for_expand_result" } if ${opt_dry_run-false}; then :; else eval "$my_cmd" my_status=$? if test "$my_status" -eq 0; then :; else eval "(exit $my_status); $my_fail_exp" fi fi } # func_show_eval_locale cmd [fail_exp] # Unless opt_silent 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 () { my_cmd="$1" my_fail_exp="${2-:}" ${opt_silent-false} || { func_quote_for_expand "$my_cmd" eval "func_echo $func_quote_for_expand_result" } if ${opt_dry_run-false}; then :; else eval "$lt_user_locale $my_cmd" my_status=$? eval "$lt_safe_locale" if test "$my_status" -eq 0; then :; else eval "(exit $my_status); $my_fail_exp" fi 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 () { case $1 in [0-9]* | *[!a-zA-Z0-9_]*) func_tr_sh_result=`$ECHO "$1" | $SED 's/^\([0-9]\)/_\1/; s/[^a-zA-Z0-9_]/_/g'` ;; * ) func_tr_sh_result=$1 ;; esac } # func_version # Echo version message to standard output and exit. func_version () { $opt_debug $SED -n '/(C)/!b go :more /\./!{ N s/\n# / / b more } :go /^# '$PROGRAM' (GNU /,/# warranty; / { s/^# // s/^# *$// s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/ p }' < "$progpath" exit $? } # func_usage # Echo short help message to standard output and exit. func_usage () { $opt_debug $SED -n '/^# Usage:/,/^# *.*--help/ { s/^# // s/^# *$// s/\$progname/'$progname'/ p }' < "$progpath" echo $ECHO "run \`$progname --help | more' for full usage" exit $? } # func_help [NOEXIT] # Echo long help message to standard output and exit, # unless 'noexit' is passed as argument. func_help () { $opt_debug $SED -n '/^# Usage:/,/# Report bugs to/ { :print s/^# // s/^# *$// s*\$progname*'$progname'* s*\$host*'"$host"'* s*\$SHELL*'"$SHELL"'* s*\$LTCC*'"$LTCC"'* s*\$LTCFLAGS*'"$LTCFLAGS"'* s*\$LD*'"$LD"'* s/\$with_gnu_ld/'"$with_gnu_ld"'/ s/\$automake_version/'"`(${AUTOMAKE-automake} --version) 2>/dev/null |$SED 1q`"'/ s/\$autoconf_version/'"`(${AUTOCONF-autoconf} --version) 2>/dev/null |$SED 1q`"'/ p d } /^# .* home page:/b print /^# General help using/b print ' < "$progpath" ret=$? if test -z "$1"; then exit $ret fi } # func_missing_arg argname # Echo program name prefixed message to standard error and set global # exit_cmd. func_missing_arg () { $opt_debug func_error "missing argument for $1." exit_cmd=exit } # 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. func_split_short_opt () { my_sed_short_opt='1s/^\(..\).*$/\1/;q' my_sed_short_rest='1s/^..\(.*\)$/\1/;q' func_split_short_opt_name=`$ECHO "$1" | $SED "$my_sed_short_opt"` func_split_short_opt_arg=`$ECHO "$1" | $SED "$my_sed_short_rest"` } # func_split_short_opt may be replaced by extended shell implementation # func_split_long_opt longopt # Set func_split_long_opt_name and func_split_long_opt_arg shell # variables after splitting LONGOPT at the `=' sign. func_split_long_opt () { my_sed_long_opt='1s/^\(--[^=]*\)=.*/\1/;q' my_sed_long_arg='1s/^--[^=]*=//' func_split_long_opt_name=`$ECHO "$1" | $SED "$my_sed_long_opt"` func_split_long_opt_arg=`$ECHO "$1" | $SED "$my_sed_long_arg"` } # func_split_long_opt may be replaced by extended shell implementation exit_cmd=: magic="%%%MAGIC variable%%%" magic_exe="%%%MAGIC EXE variable%%%" # Global variables. nonopt= preserve_args= lo2o="s/\\.lo\$/.${objext}/" o2lo="s/\\.${objext}\$/.lo/" 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= # func_append var value # Append VALUE to the end of shell variable VAR. func_append () { eval "${1}=\$${1}\${2}" } # func_append may be replaced by extended shell implementation # func_append_quoted var value # Quote VALUE and append to the end of shell variable VAR, separated # by a space. func_append_quoted () { func_quote_for_eval "${2}" eval "${1}=\$${1}\\ \$func_quote_for_eval_result" } # func_append_quoted may be replaced by extended shell implementation # func_arith arithmetic-term... func_arith () { func_arith_result=`expr "${@}"` } # func_arith may be replaced by extended shell implementation # func_len string # STRING may not start with a hyphen. func_len () { func_len_result=`expr "${1}" : ".*" 2>/dev/null || echo $max_cmd_len` } # func_len may be replaced by extended shell implementation # func_lo2o object func_lo2o () { func_lo2o_result=`$ECHO "${1}" | $SED "$lo2o"` } # func_lo2o may be replaced by extended shell implementation # func_xform libobj-or-source func_xform () { func_xform_result=`$ECHO "${1}" | $SED 's/\.[^.]*$/.lo/'` } # func_xform may be replaced by extended shell implementation # func_fatal_configuration arg... # Echo program name prefixed message to standard error, followed by # a configuration failure hint, and exit. func_fatal_configuration () { func_error ${1+"$@"} func_error "See the $PACKAGE documentation for more information." func_fatal_error "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 "$build_libtool_libs" = yes; then echo "enable shared libraries" else echo "disable shared libraries" fi if test "$build_old_libs" = yes; 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 } # 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 ;; esac # Option defaults: opt_debug=: opt_dry_run=false opt_config=false opt_preserve_dup_deps=false opt_features=false opt_finish=false opt_help=false opt_help_all=false opt_silent=: opt_warning=: opt_verbose=: opt_silent=false opt_verbose=false # Parse options once, thoroughly. This comes as soon as possible in the # script to make things like `--version' happen as quickly as we can. { # this just eases exit handling while test $# -gt 0; do opt="$1" shift case $opt in --debug|-x) opt_debug='set -x' func_echo "enabling shell trace mode" $opt_debug ;; --dry-run|--dryrun|-n) opt_dry_run=: ;; --config) opt_config=: func_config ;; --dlopen|-dlopen) optarg="$1" opt_dlopen="${opt_dlopen+$opt_dlopen }$optarg" shift ;; --preserve-dup-deps) opt_preserve_dup_deps=: ;; --features) opt_features=: func_features ;; --finish) opt_finish=: set dummy --mode finish ${1+"$@"}; shift ;; --help) opt_help=: ;; --help-all) opt_help_all=: opt_help=': help-all' ;; --mode) test $# = 0 && func_missing_arg $opt && break optarg="$1" opt_mode="$optarg" case $optarg in # Valid mode arguments: clean|compile|execute|finish|install|link|relink|uninstall) ;; # Catch anything else as an error *) func_error "invalid argument for $opt" exit_cmd=exit break ;; esac shift ;; --no-silent|--no-quiet) opt_silent=false func_append preserve_args " $opt" ;; --no-warning|--no-warn) opt_warning=false func_append preserve_args " $opt" ;; --no-verbose) opt_verbose=false func_append preserve_args " $opt" ;; --silent|--quiet) opt_silent=: func_append preserve_args " $opt" opt_verbose=false ;; --verbose|-v) opt_verbose=: func_append preserve_args " $opt" opt_silent=false ;; --tag) test $# = 0 && func_missing_arg $opt && break optarg="$1" opt_tag="$optarg" func_append preserve_args " $opt $optarg" func_enable_tag "$optarg" shift ;; -\?|-h) func_usage ;; --help) func_help ;; --version) func_version ;; # Separate optargs to long options: --*=*) func_split_long_opt "$opt" set dummy "$func_split_long_opt_name" "$func_split_long_opt_arg" ${1+"$@"} shift ;; # Separate non-argument short options: -\?*|-h*|-n*|-v*) func_split_short_opt "$opt" set dummy "$func_split_short_opt_name" "-$func_split_short_opt_arg" ${1+"$@"} shift ;; --) break ;; -*) func_fatal_help "unrecognized option \`$opt'" ;; *) set dummy "$opt" ${1+"$@"}; shift; break ;; esac done # Validate options: # save first non-option argument if test "$#" -gt 0; then nonopt="$opt" shift fi # preserve --debug test "$opt_debug" = : || func_append preserve_args " --debug" case $host in *cygwin* | *mingw* | *pw32* | *cegcc*) # don't eliminate duplications in $postdeps and $predeps opt_duplicate_compiler_generated_deps=: ;; *) opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps ;; esac $opt_help || { # Sanity checks first: func_check_version_match if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then func_fatal_configuration "not configured to build any kind of library" fi # Darwin sucks eval std_shrext=\"$shrext_cmds\" # Only execute mode is allowed to have -dlopen flags. if test -n "$opt_dlopen" && test "$opt_mode" != execute; 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." } # Bail if the options were screwed $exit_cmd $EXIT_FAILURE } ## ----------- ## ## Main. ## ## ----------- ## # 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 \ | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 } # 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 "$lalib_p" = yes } # 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 () { func_lalib_p "$1" } # 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 () { $opt_debug save_ifs=$IFS; IFS='~' for cmd in $1; do IFS=$save_ifs eval cmd=\"$cmd\" 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 () { $opt_debug 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 () { $opt_debug 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 "$build_libtool_libs" = yes; then write_lobj=\'${2}\' else write_lobj=none fi if test "$build_old_libs" = yes; 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 "$lt_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, 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 () { $opt_debug # 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 () { $opt_debug 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 () { $opt_debug # awkward: cmd appends spaces to result func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null | $SED -e 's/[ ]*$//' -e "$lt_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 () { $opt_debug 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 () { $opt_debug 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 () { $opt_debug 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 ################################################## # $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 () { $opt_debug $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 () { $opt_debug 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 () { $opt_debug 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 () { $opt_debug 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 () { $opt_debug 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 () { $opt_debug 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 () { $opt_debug 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 () { $opt_debug 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 () { $opt_debug 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 () { $opt_debug 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 () { $opt_debug 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 () { $opt_debug 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 () { $opt_debug 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 () { $opt_debug 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_mode_compile arg... func_mode_compile () { $opt_debug # 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 "$build_libtool_libs" != yes && \ func_fatal_configuration "can not 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_for_eval "$libobj" test "X$libobj" != "X$func_quote_for_eval_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 "$build_old_libs" = yes; 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* | pw32* | os2* | cegcc*) pic_mode=default ;; esac if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; 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 "$compiler_c_o" = no; 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 "$need_locks" = yes; 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 "$need_locks" = warn; 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_for_eval "$srcfile" qsrcfile=$func_quote_for_eval_result # Only build a PIC object if we are building libtool libraries. if test "$build_libtool_libs" = yes; then # Without this assignment, base_compile gets emptied. fbsd_hideous_sh_bug=$base_compile if test "$pic_mode" != no; 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 "$need_locks" = warn && 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 "$suppress_opt" = yes; then suppress_output=' >/dev/null 2>&1' fi fi # Only build a position-dependent object if we build old libraries. if test "$build_old_libs" = yes; then if test "$pic_mode" != yes; then # Don't build PIC code command="$base_compile $qsrcfile$pie_flag" else command="$base_compile $qsrcfile $pic_flag" fi if test "$compiler_c_o" = yes; 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 "$need_locks" = warn && 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 "$need_locks" != no; then removelist=$lockfile $RM "$lockfile" fi } exit $EXIT_SUCCESS } $opt_help || { test "$opt_mode" = compile && 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 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 -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 -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 # func_mode_execute arg... func_mode_execute () { $opt_debug # 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 test "X$opt_dry_run" = Xfalse; then 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" else # 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 fi } test "$opt_mode" = execute && func_mode_execute ${1+"$@"} # func_mode_finish arg... func_mode_finish () { $opt_debug 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"; 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_silent && 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 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 "$opt_mode" = finish && func_mode_finish ${1+"$@"} # func_mode_install arg... func_mode_install () { $opt_debug # There may be an optional sh(1) argument at the beginning of # install_prog (especially on Windows NT). if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || # Allow the use of GNU shtool's install command. case $nonopt in *shtool*) :;; *) false;; esac; then # Aesthetically quote it. func_quote_for_eval "$nonopt" install_prog="$func_quote_for_eval_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_for_eval "$arg" func_append install_prog "$func_quote_for_eval_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=no 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=yes ;; -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$prev" = x-m && 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_for_eval "$arg" func_append install_prog " $func_quote_for_eval_result" if test -n "$arg2"; then func_quote_for_eval "$arg2" fi func_append install_shared_prog " $func_quote_for_eval_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_for_eval "$install_override_mode" func_append install_shared_prog " -m $func_quote_for_eval_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=yes if test "$isdir" = yes; 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 # Determine the prefix the user has applied to our future dir. inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"` # 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* | pw32* | cegcc*) 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 "$build_old_libs" = yes; 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*) 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=yes 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'` ### testsuite: skip nested quoting test if test -n "$libdir" && test ! -f "$libfile"; then func_warning "\`$lib' has not been installed in \`$libdir'" finalize=no fi done relink_command= func_source "$wrapper" outputname= if test "$fast_install" = no && test -n "$relink_command"; then $opt_dry_run || { if test "$finalize" = yes; 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_silent || { func_quote_for_expand "$relink_command" eval "func_echo $func_quote_for_expand_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 "$opt_mode" = install && 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 () { $opt_debug my_outputname="$1" my_originator="$2" my_pic_p="${3-no}" my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'` my_dlsyms= if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; 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$TIMESTAMP) $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 con'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 /* External symbol declarations for the compiler. */\ " if test "$dlself" = yes; 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* | *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* | *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* | *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 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'" } 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 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[]; LT_DLSYM_CONST lt_dlsymlist lt_${my_prefix}_LTX_preloaded_symbols[] = {\ { \"$my_originator\", (void *) 0 }," 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" ;; *) if test "X$my_pic_p" != Xno; then pic_flag_for_symtable=" $pic_flag" fi ;; 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"' # Transform the symbol file into the correct name. symfileobj="$output_objdir/${my_outputname}S.$objext" case $host in *cygwin* | *mingw* | *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_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 () { $opt_debug 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)' >/dev/null; then 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 } }'` 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 () { $opt_debug 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 () { $opt_debug 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 which possess that section. Heuristic: eliminate # all those which 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_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 () { $opt_debug 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 () { $opt_debug 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_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 () { $opt_debug 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 () { $opt_debug f_ex_an_ar_dir="$1"; shift f_ex_an_ar_oldlib="$1" if test "$lock_old_archive_extraction" = yes; 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 "$lock_old_archive_extraction" = yes; 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 () { $opt_debug 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` darwin_base_archive=`basename "$darwin_archive"` 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 "$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 # 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 in which it is stored is # the $objdir directory. This is a cygwin/mingw-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$TIMESTAMP) $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\"" qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"` $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/ which is used only on # windows platforms, and (c) all begin with the string "--lt-" # (application programs are unlikely to have options which 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$TIMESTAMP) $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 | *-*-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 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 "$fast_install" = yes; 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 "$shlibpath_overrides_runpath" = yes && 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 #ifdef _MSC_VER # include # include # include #else # include # include # ifdef __CYGWIN__ # include # endif #endif #include #include #include #include #include #include #include #include /* declarations of non-ANSI functions */ #if defined(__MINGW32__) # ifdef __STRICT_ANSI__ int _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 platforms) ... */ #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 # ifndef _INTPTR_T_DEFINED # define _INTPTR_T_DEFINED # define intptr_t int # endif #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 ((void *) 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]; int 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 = 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 (strcmp (str, pat) == 0) *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 int 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) { int orig_value_len = strlen (orig_value); int 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 #' */ int len = strlen (new_value); while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1])) { new_value[len-1] = '\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*) 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 () { $opt_debug case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in *import*) : ;; *) false ;; esac } # func_mode_link arg... func_mode_link () { $opt_debug case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) # It is impossible to link a dll without this setting, and # we shouldn't force the makefile maintainer to figure out # which 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 which 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= 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= non_pic_objects= precious_files_regex= prefer_static_libs=no preload=no prev= prevarg= release= rpath= xrpath= perm_rpath= temp_rpath= thread_safe=no vinfo= vinfo_number=no weak_libs= 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 "$build_libtool_libs" != yes && \ func_fatal_configuration "can not build a shared library" build_old_libs=no break ;; -all-static | -static | -static-libtool-libs) case $arg in -all-static) if test "$build_libtool_libs" = yes && 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_for_eval "$arg" qarg=$func_quote_for_eval_unquoted_result func_append libtool_args " $func_quote_for_eval_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) if test "$preload" = no; then # Add the symbol object into the linking commands. func_append compile_command " @SYMFILE@" func_append finalize_command " @SYMFILE@" preload=yes fi case $arg in *.la | *.lo) ;; # We handle these cases below. force) if test "$dlself" = no; then dlself=needless export_dynamic=yes fi prev= continue ;; self) if test "$prev" = dlprefiles; then dlself=yes elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then dlself=yes else dlself=needless export_dynamic=yes fi prev= continue ;; *) if test "$prev" = dlfiles; 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 ;; 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 "$pic_object" = none && test "$non_pic_object" = none; 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 "$pic_object" != none; then # Prepend the subdirectory the object is found in. pic_object="$xdir$pic_object" if test "$prev" = dlfiles; then if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; 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 "$prev" = dlprefiles; 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 "$non_pic_object" != none; 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 "$pic_object" = none ; 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 ;; 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 "only absolute run-paths are allowed" ;; esac if test "$prev" = rpath; 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 ;; 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$arg" = "X-export-symbols"; 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* | *-*-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$arg" = "X-lc" || test "X$arg" = "X-lm"; then case $host in *-*-cygwin* | *-*-mingw* | *-*-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$arg" = "X-lc" && continue ;; *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) # Do not include libc due to us having libc/libc_r. test "X$arg" = "X-lc" && 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$arg" = "X-lc" && continue ;; *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) # Compiler inserts libc in the correct place for threads to work test "X$arg" = "X-lc" && continue ;; esac elif test "X$arg" = "X-lc_r"; then case $host in *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) # Do not include libc_r directly, use -pthread flag. continue ;; esac fi func_append deplibs " $arg" 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. -model|-arch|-isysroot|--sysroot) func_append compiler_flags " $arg" func_append compile_command " $arg" func_append finalize_command " $arg" prev=xcompiler continue ;; -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) func_append compiler_flags " $arg" func_append compile_command " $arg" func_append finalize_command " $arg" case "$new_inherited_linker_flags " in *" $arg "*) ;; * ) func_append new_inherited_linker_flags " $arg" ;; esac continue ;; -multi_module) single_module="${wl}-multi_module" continue ;; -no-fast-install) fast_install=no continue ;; -no-install) case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) # The PATH hackery in wrapper scripts is required on Windows # and Darwin in order for the loader to find any dlls it needs. func_warning "\`-no-install' is ignored for $host" func_warning "assuming \`-no-fast-install' instead" fast_install=no ;; *) no_install=yes ;; esac continue ;; -no-undefined) allow_undefined=no continue ;; -objectlist) prev=objectlist continue ;; -o) prev=output ;; -precious-files-regex) prev=precious_regex continue ;; -release) prev=release continue ;; -rpath) prev=rpath continue ;; -R) prev=xrpath continue ;; -R*) func_stripname '-R' '' "$arg" dir=$func_stripname_result # We need an absolute path. case $dir in [\\/]* | [A-Za-z]:[\\/]*) ;; =*) func_stripname '=' '' "$dir" dir=$lt_sysroot$func_stripname_result ;; *) func_fatal_error "only absolute run-paths are allowed" ;; esac case "$xrpath " in *" $dir "*) ;; *) func_append xrpath " $dir" ;; esac continue ;; -shared) # The effects of -shared are defined in a previous loop. continue ;; -shrext) prev=shrext continue ;; -static | -static-libtool-libs) # The effects of -static are defined in a previous loop. # We used to do the same as -all-static on platforms that # didn't have a PIC flag, but the assumption that the effects # would be equivalent was wrong. It would break on at least # Digital Unix and AIX. continue ;; -thread-safe) thread_safe=yes continue ;; -version-info) prev=vinfo continue ;; -version-number) prev=vinfo vinfo_number=yes continue ;; -weak) prev=weak continue ;; -Wc,*) func_stripname '-Wc,' '' "$arg" args=$func_stripname_result arg= save_ifs="$IFS"; IFS=',' for flag in $args; do IFS="$save_ifs" func_quote_for_eval "$flag" func_append arg " $func_quote_for_eval_result" func_append compiler_flags " $func_quote_for_eval_result" done IFS="$save_ifs" func_stripname ' ' '' "$arg" arg=$func_stripname_result ;; -Wl,*) func_stripname '-Wl,' '' "$arg" args=$func_stripname_result arg= save_ifs="$IFS"; IFS=',' for flag in $args; do IFS="$save_ifs" func_quote_for_eval "$flag" func_append arg " $wl$func_quote_for_eval_result" func_append compiler_flags " $wl$func_quote_for_eval_result" func_append linker_flags " $func_quote_for_eval_result" done IFS="$save_ifs" func_stripname ' ' '' "$arg" arg=$func_stripname_result ;; -Xcompiler) prev=xcompiler continue ;; -Xlinker) prev=xlinker continue ;; -XCClinker) prev=xcclinker continue ;; # -msg_* for osf cc -msg_*) func_quote_for_eval "$arg" arg="$func_quote_for_eval_result" ;; # Flags to be passed through unchanged, with rationale: # -64, -mips[0-9] enable 64-bit mode for the SGI compiler # -r[0-9][0-9]* specify processor for the SGI compiler # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler # +DA*, +DD* enable 64-bit mode for the HP compiler # -q* compiler args for the IBM compiler # -m*, -t[45]*, -txscale* architecture-specific flags for GCC # -F/path path to uninstalled frameworks, gcc on darwin # -p, -pg, --coverage, -fprofile-* profiling flags for GCC # @file GCC response files # -tp=* Portland pgcc target processor selection # --sysroot=* for sysroot support # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ -O*|-flto*|-fwhopr*|-fuse-linker-plugin) func_quote_for_eval "$arg" arg="$func_quote_for_eval_result" func_append compile_command " $arg" func_append finalize_command " $arg" func_append compiler_flags " $arg" continue ;; # Some other compiler flag. -* | +*) func_quote_for_eval "$arg" arg="$func_quote_for_eval_result" ;; *.$objext) # A standard object. func_append objs " $arg" ;; *.lo) # 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 "$pic_object" = none && test "$non_pic_object" = none; 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 "$pic_object" != none; then # Prepend the subdirectory the object is found in. pic_object="$xdir$pic_object" if test "$prev" = dlfiles; then if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; 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 "$prev" = dlprefiles; 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 "$non_pic_object" != none; 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 "$pic_object" = none ; 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 ;; *.$libext) # An archive. func_append deplibs " $arg" func_append old_deplibs " $arg" continue ;; *.la) # A libtool-controlled library. func_resolve_sysroot "$arg" if test "$prev" = dlfiles; then # This library was specified with -dlopen. func_append dlfiles " $func_resolve_sysroot_result" prev= elif test "$prev" = dlprefiles; then # The library was specified with -dlpreopen. func_append dlprefiles " $func_resolve_sysroot_result" prev= else func_append deplibs " $func_resolve_sysroot_result" fi continue ;; # Some other compiler argument. *) # Unknown arguments in both finalize_command and compile_command need # to be aesthetically quoted because they are evaled later. func_quote_for_eval "$arg" arg="$func_quote_for_eval_result" ;; esac # arg # Now actually substitute the argument into the commands. if test -n "$arg"; then func_append compile_command " $arg" func_append finalize_command " $arg" fi done # argument parsing loop test -n "$prev" && \ func_fatal_help "the \`$prevarg' option requires an argument" if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then eval arg=\"$export_dynamic_flag_spec\" func_append compile_command " $arg" func_append finalize_command " $arg" fi oldlibs= # calculate the name of the file, without its directory func_basename "$output" outputname="$func_basename_result" libobjs_save="$libobjs" if test -n "$shlibpath_var"; then # get the directories listed in $shlibpath_var eval shlib_search_path=\`\$ECHO \"\${$shlibpath_var}\" \| \$SED \'s/:/ /g\'\` else shlib_search_path= fi eval sys_lib_search_path=\"$sys_lib_search_path_spec\" eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" func_dirname "$output" "/" "" output_objdir="$func_dirname_result$objdir" func_to_tool_file "$output_objdir/" tool_output_objdir=$func_to_tool_file_result # Create the object directory. func_mkdir_p "$output_objdir" # Determine the type of output case $output in "") func_fatal_help "you must specify an output file" ;; *.$libext) linkmode=oldlib ;; *.lo | *.$objext) linkmode=obj ;; *.la) linkmode=lib ;; *) linkmode=prog ;; # Anything else should be a program. esac specialdeplibs= libs= # Find all interdependent deplibs by searching for libraries # that are linked more than once (e.g. -la -lb -la) for deplib in $deplibs; do if $opt_preserve_dup_deps ; then case "$libs " in *" $deplib "*) func_append specialdeplibs " $deplib" ;; esac fi func_append libs " $deplib" done if test "$linkmode" = lib; then libs="$predeps $libs $compiler_lib_search_path $postdeps" # Compute libraries that are listed more than once in $predeps # $postdeps and mark them as special (i.e., whose duplicates are # not to be eliminated). pre_post_deps= if $opt_duplicate_compiler_generated_deps; then for pre_post_dep in $predeps $postdeps; do case "$pre_post_deps " in *" $pre_post_dep "*) func_append specialdeplibs " $pre_post_deps" ;; esac func_append pre_post_deps " $pre_post_dep" done fi pre_post_deps= fi deplibs= newdependency_libs= newlib_search_path= need_relink=no # whether we're linking any uninstalled libtool libraries notinst_deplibs= # not-installed libtool libraries notinst_path= # paths that contain not-installed libtool libraries case $linkmode in lib) passes="conv dlpreopen link" for file in $dlfiles $dlprefiles; do case $file in *.la) ;; *) func_fatal_help "libraries can \`-dlopen' only libtool libraries: $file" ;; esac done ;; prog) compile_deplibs= finalize_deplibs= alldeplibs=no newdlfiles= newdlprefiles= passes="conv scan dlopen dlpreopen link" ;; *) passes="conv" ;; esac for pass in $passes; do # The preopen pass in lib mode reverses $deplibs; put it back here # so that -L comes before libs that need it for instance... if test "$linkmode,$pass" = "lib,link"; then ## FIXME: Find the place where the list is rebuilt in the wrong ## order, and fix it there properly tmp_deplibs= for deplib in $deplibs; do tmp_deplibs="$deplib $tmp_deplibs" done deplibs="$tmp_deplibs" fi if test "$linkmode,$pass" = "lib,link" || test "$linkmode,$pass" = "prog,scan"; then libs="$deplibs" deplibs= fi if test "$linkmode" = prog; then case $pass in dlopen) libs="$dlfiles" ;; dlpreopen) libs="$dlprefiles" ;; link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; esac fi if test "$linkmode,$pass" = "lib,dlpreopen"; then # Collect and forward deplibs of preopened libtool libs for lib in $dlprefiles; do # Ignore non-libtool-libs dependency_libs= func_resolve_sysroot "$lib" case $lib in *.la) func_source "$func_resolve_sysroot_result" ;; esac # Collect preopened libtool deplibs, except any this library # has declared as weak libs for deplib in $dependency_libs; do func_basename "$deplib" deplib_base=$func_basename_result case " $weak_libs " in *" $deplib_base "*) ;; *) func_append deplibs " $deplib" ;; esac done done libs="$dlprefiles" fi if test "$pass" = dlopen; then # Collect dlpreopened libraries save_deplibs="$deplibs" deplibs= fi for deplib in $libs; do lib= found=no case $deplib in -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else func_append compiler_flags " $deplib" if test "$linkmode" = lib ; then case "$new_inherited_linker_flags " in *" $deplib "*) ;; * ) func_append new_inherited_linker_flags " $deplib" ;; esac fi fi continue ;; -l*) if test "$linkmode" != lib && test "$linkmode" != prog; then func_warning "\`-l' is ignored for archives/objects" continue fi func_stripname '-l' '' "$deplib" name=$func_stripname_result if test "$linkmode" = lib; then searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path" else searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path" fi for searchdir in $searchdirs; do for search_ext in .la $std_shrext .so .a; do # Search the libtool library lib="$searchdir/lib${name}${search_ext}" if test -f "$lib"; then if test "$search_ext" = ".la"; then found=yes else found=no fi break 2 fi done done if test "$found" != yes; then # deplib doesn't seem to be a libtool library if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" fi continue else # deplib is a libtool library # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, # We need to do some special things here, and not later. if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then case " $predeps $postdeps " in *" $deplib "*) if func_lalib_p "$lib"; then library_names= old_library= func_source "$lib" for l in $old_library $library_names; do ll="$l" done if test "X$ll" = "X$old_library" ; then # only static version available found=no func_dirname "$lib" "" "." ladir="$func_dirname_result" lib=$ladir/$old_library if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" fi continue fi fi ;; *) ;; esac fi fi ;; # -l *.ltframework) if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" if test "$linkmode" = lib ; then case "$new_inherited_linker_flags " in *" $deplib "*) ;; * ) func_append new_inherited_linker_flags " $deplib" ;; esac fi fi continue ;; -L*) case $linkmode in lib) deplibs="$deplib $deplibs" test "$pass" = conv && continue newdependency_libs="$deplib $newdependency_libs" func_stripname '-L' '' "$deplib" func_resolve_sysroot "$func_stripname_result" func_append newlib_search_path " $func_resolve_sysroot_result" ;; prog) if test "$pass" = conv; then deplibs="$deplib $deplibs" continue fi if test "$pass" = scan; then deplibs="$deplib $deplibs" else compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" fi func_stripname '-L' '' "$deplib" func_resolve_sysroot "$func_stripname_result" func_append newlib_search_path " $func_resolve_sysroot_result" ;; *) func_warning "\`-L' is ignored for archives/objects" ;; esac # linkmode continue ;; # -L -R*) if test "$pass" = link; then func_stripname '-R' '' "$deplib" func_resolve_sysroot "$func_stripname_result" dir=$func_resolve_sysroot_result # Make sure the xrpath contains only unique directories. case "$xrpath " in *" $dir "*) ;; *) func_append xrpath " $dir" ;; esac fi deplibs="$deplib $deplibs" continue ;; *.la) func_resolve_sysroot "$deplib" lib=$func_resolve_sysroot_result ;; *.$libext) if test "$pass" = conv; then deplibs="$deplib $deplibs" continue fi case $linkmode in lib) # Linking convenience modules into shared libraries is allowed, # but linking other static libraries is non-portable. case " $dlpreconveniencelibs " in *" $deplib "*) ;; *) valid_a_lib=no case $deplibs_check_method in match_pattern*) set dummy $deplibs_check_method; shift match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \ | $EGREP "$match_pattern_regex" > /dev/null; then valid_a_lib=yes fi ;; pass_all) valid_a_lib=yes ;; esac if test "$valid_a_lib" != yes; then echo $ECHO "*** Warning: Trying to link with static lib archive $deplib." echo "*** I have the capability to make that library automatically link in when" echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have" echo "*** because the file extensions .$libext of this argument makes me believe" echo "*** that it is just a static archive that I should not use here." else echo $ECHO "*** Warning: Linking the shared library $output against the" $ECHO "*** static library $deplib is not portable!" deplibs="$deplib $deplibs" fi ;; esac continue ;; prog) if test "$pass" != link; then deplibs="$deplib $deplibs" else compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" fi continue ;; esac # linkmode ;; # *.$libext *.lo | *.$objext) if test "$pass" = conv; then deplibs="$deplib $deplibs" elif test "$linkmode" = prog; then if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then # If there is no dlopen support or we're linking statically, # we need to preload. func_append newdlprefiles " $deplib" compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else func_append newdlfiles " $deplib" fi fi continue ;; %DEPLIBS%) alldeplibs=yes continue ;; esac # case $deplib if test "$found" = yes || test -f "$lib"; then : else func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'" fi # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$lib" \ || func_fatal_error "\`$lib' is not a valid libtool archive" func_dirname "$lib" "" "." ladir="$func_dirname_result" dlname= dlopen= dlpreopen= libdir= library_names= old_library= inherited_linker_flags= # If the library was installed with an old release of libtool, # it will not redefine variables installed, or shouldnotlink installed=yes shouldnotlink=no avoidtemprpath= # Read the .la file func_source "$lib" # Convert "-framework foo" to "foo.ltframework" if test -n "$inherited_linker_flags"; then tmp_inherited_linker_flags=`$ECHO "$inherited_linker_flags" | $SED 's/-framework \([^ $]*\)/\1.ltframework/g'` for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do case " $new_inherited_linker_flags " in *" $tmp_inherited_linker_flag "*) ;; *) func_append new_inherited_linker_flags " $tmp_inherited_linker_flag";; esac done fi dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` if test "$linkmode,$pass" = "lib,link" || test "$linkmode,$pass" = "prog,scan" || { test "$linkmode" != prog && test "$linkmode" != lib; }; then test -n "$dlopen" && func_append dlfiles " $dlopen" test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen" fi if test "$pass" = conv; then # Only check for convenience libraries deplibs="$lib $deplibs" if test -z "$libdir"; then if test -z "$old_library"; then func_fatal_error "cannot find name of link library for \`$lib'" fi # It is a libtool convenience library, so add in its objects. func_append convenience " $ladir/$objdir/$old_library" func_append old_convenience " $ladir/$objdir/$old_library" elif test "$linkmode" != prog && test "$linkmode" != lib; then func_fatal_error "\`$lib' is not a convenience library" fi tmp_libs= for deplib in $dependency_libs; do deplibs="$deplib $deplibs" if $opt_preserve_dup_deps ; then case "$tmp_libs " in *" $deplib "*) func_append specialdeplibs " $deplib" ;; esac fi func_append tmp_libs " $deplib" done continue fi # $pass = conv # Get the name of the library we link against. linklib= if test -n "$old_library" && { test "$prefer_static_libs" = yes || test "$prefer_static_libs,$installed" = "built,no"; }; then linklib=$old_library else for l in $old_library $library_names; do linklib="$l" done fi if test -z "$linklib"; then func_fatal_error "cannot find name of link library for \`$lib'" fi # This library was specified with -dlopen. if test "$pass" = dlopen; then if test -z "$libdir"; then func_fatal_error "cannot -dlopen a convenience library: \`$lib'" fi if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then # If there is no dlname, no dlopen support or we're linking # statically, we need to preload. We also need to preload any # dependent libraries so libltdl's deplib preloader doesn't # bomb out in the load deplibs phase. func_append dlprefiles " $lib $dependency_libs" else func_append newdlfiles " $lib" fi continue fi # $pass = dlopen # We need an absolute path. case $ladir in [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; *) abs_ladir=`cd "$ladir" && pwd` if test -z "$abs_ladir"; then func_warning "cannot determine absolute directory name of \`$ladir'" func_warning "passing it literally to the linker, although it might fail" abs_ladir="$ladir" fi ;; esac func_basename "$lib" laname="$func_basename_result" # Find the relevant object directory and library name. if test "X$installed" = Xyes; then if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then func_warning "library \`$lib' was moved." dir="$ladir" absdir="$abs_ladir" libdir="$abs_ladir" else dir="$lt_sysroot$libdir" absdir="$lt_sysroot$libdir" fi test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes else if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then dir="$ladir" absdir="$abs_ladir" # Remove this search path later func_append notinst_path " $abs_ladir" else dir="$ladir/$objdir" absdir="$abs_ladir/$objdir" # Remove this search path later func_append notinst_path " $abs_ladir" fi fi # $installed = yes func_stripname 'lib' '.la' "$laname" name=$func_stripname_result # This library was specified with -dlpreopen. if test "$pass" = dlpreopen; then if test -z "$libdir" && test "$linkmode" = prog; then func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'" fi case "$host" in # special handling for platforms with PE-DLLs. *cygwin* | *mingw* | *cegcc* ) # Linker will automatically link against shared library if both # static and shared are present. Therefore, ensure we extract # symbols from the import library if a shared library is present # (otherwise, the dlopen module name will be incorrect). We do # this by putting the import library name into $newdlprefiles. # We recover the dlopen module name by 'saving' the la file # name in a special purpose variable, and (later) extracting the # dlname from the la file. if test -n "$dlname"; then func_tr_sh "$dir/$linklib" eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname" func_append newdlprefiles " $dir/$linklib" else func_append newdlprefiles " $dir/$old_library" # Keep a list of preopened convenience libraries to check # that they are being used correctly in the link pass. test -z "$libdir" && \ func_append dlpreconveniencelibs " $dir/$old_library" fi ;; * ) # Prefer using a static library (so that no silly _DYNAMIC symbols # are required to link). if test -n "$old_library"; then func_append newdlprefiles " $dir/$old_library" # Keep a list of preopened convenience libraries to check # that they are being used correctly in the link pass. test -z "$libdir" && \ func_append dlpreconveniencelibs " $dir/$old_library" # Otherwise, use the dlname, so that lt_dlopen finds it. elif test -n "$dlname"; then func_append newdlprefiles " $dir/$dlname" else func_append newdlprefiles " $dir/$linklib" fi ;; esac fi # $pass = dlpreopen if test -z "$libdir"; then # Link the convenience library if test "$linkmode" = lib; then deplibs="$dir/$old_library $deplibs" elif test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$dir/$old_library $compile_deplibs" finalize_deplibs="$dir/$old_library $finalize_deplibs" else deplibs="$lib $deplibs" # used for prog,scan pass fi continue fi if test "$linkmode" = prog && test "$pass" != link; then func_append newlib_search_path " $ladir" deplibs="$lib $deplibs" linkalldeplibs=no if test "$link_all_deplibs" != no || test -z "$library_names" || test "$build_libtool_libs" = no; then linkalldeplibs=yes fi tmp_libs= for deplib in $dependency_libs; do case $deplib in -L*) func_stripname '-L' '' "$deplib" func_resolve_sysroot "$func_stripname_result" func_append newlib_search_path " $func_resolve_sysroot_result" ;; esac # Need to link against all dependency_libs? if test "$linkalldeplibs" = yes; then deplibs="$deplib $deplibs" else # Need to hardcode shared library paths # or/and link against static libraries newdependency_libs="$deplib $newdependency_libs" fi if $opt_preserve_dup_deps ; then case "$tmp_libs " in *" $deplib "*) func_append specialdeplibs " $deplib" ;; esac fi func_append tmp_libs " $deplib" done # for deplib continue fi # $linkmode = prog... if test "$linkmode,$pass" = "prog,link"; then if test -n "$library_names" && { { test "$prefer_static_libs" = no || test "$prefer_static_libs,$installed" = "built,yes"; } || test -z "$old_library"; }; then # We need to hardcode the library path if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then # Make sure the rpath contains only unique directories. case "$temp_rpath:" in *"$absdir:"*) ;; *) func_append temp_rpath "$absdir:" ;; esac fi # Hardcode the library path. # Skip directories that are in the system default run-time # search path. case " $sys_lib_dlsearch_path " in *" $absdir "*) ;; *) case "$compile_rpath " in *" $absdir "*) ;; *) func_append compile_rpath " $absdir" ;; esac ;; esac case " $sys_lib_dlsearch_path " in *" $libdir "*) ;; *) case "$finalize_rpath " in *" $libdir "*) ;; *) func_append finalize_rpath " $libdir" ;; esac ;; esac fi # $linkmode,$pass = prog,link... if test "$alldeplibs" = yes && { test "$deplibs_check_method" = pass_all || { test "$build_libtool_libs" = yes && test -n "$library_names"; }; }; then # We only need to search for static libraries continue fi fi link_static=no # Whether the deplib will be linked statically use_static_libs=$prefer_static_libs if test "$use_static_libs" = built && test "$installed" = yes; then use_static_libs=no fi if test -n "$library_names" && { test "$use_static_libs" = no || test -z "$old_library"; }; then case $host in *cygwin* | *mingw* | *cegcc*) # No point in relinking DLLs because paths are not encoded func_append notinst_deplibs " $lib" need_relink=no ;; *) if test "$installed" = no; then func_append notinst_deplibs " $lib" need_relink=yes fi ;; esac # This is a shared library # Warn about portability, can't link against -module's on some # systems (darwin). Don't bleat about dlopened modules though! dlopenmodule="" for dlpremoduletest in $dlprefiles; do if test "X$dlpremoduletest" = "X$lib"; then dlopenmodule="$dlpremoduletest" break fi done if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then echo if test "$linkmode" = prog; then $ECHO "*** Warning: Linking the executable $output against the loadable module" else $ECHO "*** Warning: Linking the shared library $output against the loadable module" fi $ECHO "*** $linklib is not portable!" fi if test "$linkmode" = lib && test "$hardcode_into_libs" = yes; then # Hardcode the library path. # Skip directories that are in the system default run-time # search path. case " $sys_lib_dlsearch_path " in *" $absdir "*) ;; *) case "$compile_rpath " in *" $absdir "*) ;; *) func_append compile_rpath " $absdir" ;; esac ;; esac case " $sys_lib_dlsearch_path " in *" $libdir "*) ;; *) case "$finalize_rpath " in *" $libdir "*) ;; *) func_append finalize_rpath " $libdir" ;; esac ;; esac fi if test -n "$old_archive_from_expsyms_cmds"; then # figure out the soname set dummy $library_names shift realname="$1" shift libname=`eval "\\$ECHO \"$libname_spec\""` # use dlname if we got it. it's perfectly good, no? if test -n "$dlname"; then soname="$dlname" elif test -n "$soname_spec"; then # bleh windows case $host in *cygwin* | mingw* | *cegcc*) func_arith $current - $age major=$func_arith_result versuffix="-$major" ;; esac eval soname=\"$soname_spec\" else soname="$realname" fi # Make a new name for the extract_expsyms_cmds to use soroot="$soname" func_basename "$soroot" soname="$func_basename_result" func_stripname 'lib' '.dll' "$soname" newlib=libimp-$func_stripname_result.a # If the library has no export list, then create one now if test -f "$output_objdir/$soname-def"; then : else func_verbose "extracting exported symbol list from \`$soname'" func_execute_cmds "$extract_expsyms_cmds" 'exit $?' fi # Create $newlib if test -f "$output_objdir/$newlib"; then :; else func_verbose "generating import library for \`$soname'" func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' fi # make sure the library variables are pointing to the new library dir=$output_objdir linklib=$newlib fi # test -n "$old_archive_from_expsyms_cmds" if test "$linkmode" = prog || test "$opt_mode" != relink; then add_shlibpath= add_dir= add= lib_linked=yes case $hardcode_action in immediate | unsupported) if test "$hardcode_direct" = no; then add="$dir/$linklib" case $host in *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;; *-*-sysv4*uw2*) add_dir="-L$dir" ;; *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ *-*-unixware7*) add_dir="-L$dir" ;; *-*-darwin* ) # if the lib is a (non-dlopened) module then we can not # link against it, someone is ignoring the earlier warnings if /usr/bin/file -L $add 2> /dev/null | $GREP ": [^:]* bundle" >/dev/null ; then if test "X$dlopenmodule" != "X$lib"; then $ECHO "*** Warning: lib $linklib is a module, not a shared library" if test -z "$old_library" ; then echo echo "*** And there doesn't seem to be a static archive available" echo "*** The link will probably fail, sorry" else add="$dir/$old_library" fi elif test -n "$old_library"; then add="$dir/$old_library" fi fi esac elif test "$hardcode_minus_L" = no; then case $host in *-*-sunos*) add_shlibpath="$dir" ;; esac add_dir="-L$dir" add="-l$name" elif test "$hardcode_shlibpath_var" = no; then add_shlibpath="$dir" add="-l$name" else lib_linked=no fi ;; relink) if test "$hardcode_direct" = yes && test "$hardcode_direct_absolute" = no; then add="$dir/$linklib" elif test "$hardcode_minus_L" = yes; then add_dir="-L$absdir" # Try looking first in the location we're being installed to. if test -n "$inst_prefix_dir"; then case $libdir in [\\/]*) func_append add_dir " -L$inst_prefix_dir$libdir" ;; esac fi add="-l$name" elif test "$hardcode_shlibpath_var" = yes; then add_shlibpath="$dir" add="-l$name" else lib_linked=no fi ;; *) lib_linked=no ;; esac if test "$lib_linked" != yes; then func_fatal_configuration "unsupported hardcode properties" fi if test -n "$add_shlibpath"; then case :$compile_shlibpath: in *":$add_shlibpath:"*) ;; *) func_append compile_shlibpath "$add_shlibpath:" ;; esac fi if test "$linkmode" = prog; then test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" test -n "$add" && compile_deplibs="$add $compile_deplibs" else test -n "$add_dir" && deplibs="$add_dir $deplibs" test -n "$add" && deplibs="$add $deplibs" if test "$hardcode_direct" != yes && test "$hardcode_minus_L" != yes && test "$hardcode_shlibpath_var" = yes; then case :$finalize_shlibpath: in *":$libdir:"*) ;; *) func_append finalize_shlibpath "$libdir:" ;; esac fi fi fi if test "$linkmode" = prog || test "$opt_mode" = relink; then add_shlibpath= add_dir= add= # Finalize command for both is simple: just hardcode it. if test "$hardcode_direct" = yes && test "$hardcode_direct_absolute" = no; then add="$libdir/$linklib" elif test "$hardcode_minus_L" = yes; then add_dir="-L$libdir" add="-l$name" elif test "$hardcode_shlibpath_var" = yes; then case :$finalize_shlibpath: in *":$libdir:"*) ;; *) func_append finalize_shlibpath "$libdir:" ;; esac add="-l$name" elif test "$hardcode_automatic" = yes; then if test -n "$inst_prefix_dir" && test -f "$inst_prefix_dir$libdir/$linklib" ; then add="$inst_prefix_dir$libdir/$linklib" else add="$libdir/$linklib" fi else # We cannot seem to hardcode it, guess we'll fake it. add_dir="-L$libdir" # Try looking first in the location we're being installed to. if test -n "$inst_prefix_dir"; then case $libdir in [\\/]*) func_append add_dir " -L$inst_prefix_dir$libdir" ;; esac fi add="-l$name" fi if test "$linkmode" = prog; then test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" test -n "$add" && finalize_deplibs="$add $finalize_deplibs" else test -n "$add_dir" && deplibs="$add_dir $deplibs" test -n "$add" && deplibs="$add $deplibs" fi fi elif test "$linkmode" = prog; then # Here we assume that one of hardcode_direct or hardcode_minus_L # is not unsupported. This is valid on all known static and # shared platforms. if test "$hardcode_direct" != unsupported; then test -n "$old_library" && linklib="$old_library" compile_deplibs="$dir/$linklib $compile_deplibs" finalize_deplibs="$dir/$linklib $finalize_deplibs" else compile_deplibs="-l$name -L$dir $compile_deplibs" finalize_deplibs="-l$name -L$dir $finalize_deplibs" fi elif test "$build_libtool_libs" = yes; then # Not a shared library if test "$deplibs_check_method" != pass_all; then # We're trying link a shared library against a static one # but the system doesn't support it. # Just print a warning and add the library to dependency_libs so # that the program can be linked against the static library. echo $ECHO "*** Warning: This system can not link to static lib archive $lib." echo "*** I have the capability to make that library automatically link in when" echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have." if test "$module" = yes; then echo "*** But as you try to build a module library, libtool will still create " echo "*** a static module, that should work as long as the dlopening application" echo "*** is linked with the -dlopen flag to resolve symbols at runtime." if test -z "$global_symbol_pipe"; then echo echo "*** However, this would only work if libtool was able to extract symbol" echo "*** lists from a program, using \`nm' or equivalent, but libtool could" echo "*** not find such a program. So, this module is probably useless." echo "*** \`nm' from GNU binutils and a full rebuild may help." fi if test "$build_old_libs" = no; then build_libtool_libs=module build_old_libs=yes else build_libtool_libs=no fi fi else deplibs="$dir/$old_library $deplibs" link_static=yes fi fi # link shared/static library? if test "$linkmode" = lib; then if test -n "$dependency_libs" && { test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes || test "$link_static" = yes; }; then # Extract -R from dependency_libs temp_deplibs= for libdir in $dependency_libs; do case $libdir in -R*) func_stripname '-R' '' "$libdir" temp_xrpath=$func_stripname_result case " $xrpath " in *" $temp_xrpath "*) ;; *) func_append xrpath " $temp_xrpath";; esac;; *) func_append temp_deplibs " $libdir";; esac done dependency_libs="$temp_deplibs" fi func_append newlib_search_path " $absdir" # Link against this library test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" # ... and its dependency_libs tmp_libs= for deplib in $dependency_libs; do newdependency_libs="$deplib $newdependency_libs" case $deplib in -L*) func_stripname '-L' '' "$deplib" func_resolve_sysroot "$func_stripname_result";; *) func_resolve_sysroot "$deplib" ;; esac if $opt_preserve_dup_deps ; then case "$tmp_libs " in *" $func_resolve_sysroot_result "*) func_append specialdeplibs " $func_resolve_sysroot_result" ;; esac fi func_append tmp_libs " $func_resolve_sysroot_result" done if test "$link_all_deplibs" != no; then # Add the search paths of all dependency libraries for deplib in $dependency_libs; do path= case $deplib in -L*) path="$deplib" ;; *.la) func_resolve_sysroot "$deplib" deplib=$func_resolve_sysroot_result func_dirname "$deplib" "" "." dir=$func_dirname_result # We need an absolute path. case $dir in [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; *) absdir=`cd "$dir" && pwd` if test -z "$absdir"; then func_warning "cannot determine absolute directory name of \`$dir'" absdir="$dir" fi ;; esac if $GREP "^installed=no" $deplib > /dev/null; then case $host in *-*-darwin*) depdepl= eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` if test -n "$deplibrary_names" ; then for tmp in $deplibrary_names ; do depdepl=$tmp done if test -f "$absdir/$objdir/$depdepl" ; then depdepl="$absdir/$objdir/$depdepl" darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` if test -z "$darwin_install_name"; then darwin_install_name=`${OTOOL64} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` fi func_append compiler_flags " ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}" func_append linker_flags " -dylib_file ${darwin_install_name}:${depdepl}" path= fi fi ;; *) path="-L$absdir/$objdir" ;; esac else eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` test -z "$libdir" && \ func_fatal_error "\`$deplib' is not a valid libtool archive" test "$absdir" != "$libdir" && \ func_warning "\`$deplib' seems to be moved" path="-L$absdir" fi ;; esac case " $deplibs " in *" $path "*) ;; *) deplibs="$path $deplibs" ;; esac done fi # link_all_deplibs != no fi # linkmode = lib done # for deplib in $libs if test "$pass" = link; then if test "$linkmode" = "prog"; then compile_deplibs="$new_inherited_linker_flags $compile_deplibs" finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs" else compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` fi fi dependency_libs="$newdependency_libs" if test "$pass" = dlpreopen; then # Link the dlpreopened libraries before other libraries for deplib in $save_deplibs; do deplibs="$deplib $deplibs" done fi if test "$pass" != dlopen; then if test "$pass" != conv; then # Make sure lib_search_path contains only unique directories. lib_search_path= for dir in $newlib_search_path; do case "$lib_search_path " in *" $dir "*) ;; *) func_append lib_search_path " $dir" ;; esac done newlib_search_path= fi if test "$linkmode,$pass" != "prog,link"; then vars="deplibs" else vars="compile_deplibs finalize_deplibs" fi for var in $vars dependency_libs; do # Add libraries to $var in reverse order eval tmp_libs=\"\$$var\" new_libs= for deplib in $tmp_libs; do # FIXME: Pedantically, this is the right thing to do, so # that some nasty dependency loop isn't accidentally # broken: #new_libs="$deplib $new_libs" # Pragmatically, this seems to cause very few problems in # practice: case $deplib in -L*) new_libs="$deplib $new_libs" ;; -R*) ;; *) # And here is the reason: when a library appears more # than once as an explicit dependence of a library, or # is implicitly linked in more than once by the # compiler, it is considered special, and multiple # occurrences thereof are not removed. Compare this # with having the same library being listed as a # dependency of multiple other libraries: in this case, # we know (pedantically, we assume) the library does not # need to be listed more than once, so we keep only the # last copy. This is not always right, but it is rare # enough that we require users that really mean to play # such unportable linking tricks to link the library # using -Wl,-lname, so that libtool does not consider it # for duplicate removal. case " $specialdeplibs " in *" $deplib "*) new_libs="$deplib $new_libs" ;; *) case " $new_libs " in *" $deplib "*) ;; *) new_libs="$deplib $new_libs" ;; esac ;; esac ;; esac done tmp_libs= for deplib in $new_libs; do case $deplib in -L*) case " $tmp_libs " in *" $deplib "*) ;; *) func_append tmp_libs " $deplib" ;; esac ;; *) func_append tmp_libs " $deplib" ;; esac done eval $var=\"$tmp_libs\" done # for var fi # Last step: remove runtime libs from dependency_libs # (they stay in deplibs) tmp_libs= for i in $dependency_libs ; do case " $predeps $postdeps $compiler_lib_search_path " in *" $i "*) i="" ;; esac if test -n "$i" ; then func_append tmp_libs " $i" fi done dependency_libs=$tmp_libs done # for pass if test "$linkmode" = prog; then dlfiles="$newdlfiles" fi if test "$linkmode" = prog || test "$linkmode" = lib; then dlprefiles="$newdlprefiles" fi case $linkmode in oldlib) if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then func_warning "\`-dlopen' is ignored for archives" fi case " $deplibs" in *\ -l* | *\ -L*) func_warning "\`-l' and \`-L' are ignored for archives" ;; esac test -n "$rpath" && \ func_warning "\`-rpath' is ignored for archives" test -n "$xrpath" && \ func_warning "\`-R' is ignored for archives" test -n "$vinfo" && \ func_warning "\`-version-info/-version-number' is ignored for archives" test -n "$release" && \ func_warning "\`-release' is ignored for archives" test -n "$export_symbols$export_symbols_regex" && \ func_warning "\`-export-symbols' is ignored for archives" # Now set the variables for building old libraries. build_libtool_libs=no oldlibs="$output" func_append objs "$old_deplibs" ;; lib) # Make sure we only generate libraries of the form `libNAME.la'. case $outputname in lib*) func_stripname 'lib' '.la' "$outputname" name=$func_stripname_result eval shared_ext=\"$shrext_cmds\" eval libname=\"$libname_spec\" ;; *) test "$module" = no && \ func_fatal_help "libtool library \`$output' must begin with \`lib'" if test "$need_lib_prefix" != no; then # Add the "lib" prefix for modules if required func_stripname '' '.la' "$outputname" name=$func_stripname_result eval shared_ext=\"$shrext_cmds\" eval libname=\"$libname_spec\" else func_stripname '' '.la' "$outputname" libname=$func_stripname_result fi ;; esac if test -n "$objs"; then if test "$deplibs_check_method" != pass_all; then func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs" else echo $ECHO "*** Warning: Linking the shared library $output against the non-libtool" $ECHO "*** objects $objs is not portable!" func_append libobjs " $objs" fi fi test "$dlself" != no && \ func_warning "\`-dlopen self' is ignored for libtool libraries" set dummy $rpath shift test "$#" -gt 1 && \ func_warning "ignoring multiple \`-rpath's for a libtool library" install_libdir="$1" oldlibs= if test -z "$rpath"; then if test "$build_libtool_libs" = yes; then # Building a libtool convenience library. # Some compilers have problems with a `.al' extension so # convenience libraries should have the same extension an # archive normally would. oldlibs="$output_objdir/$libname.$libext $oldlibs" build_libtool_libs=convenience build_old_libs=yes fi test -n "$vinfo" && \ func_warning "\`-version-info/-version-number' is ignored for convenience libraries" test -n "$release" && \ func_warning "\`-release' is ignored for convenience libraries" else # Parse the version information argument. save_ifs="$IFS"; IFS=':' set dummy $vinfo 0 0 0 shift IFS="$save_ifs" test -n "$7" && \ func_fatal_help "too many parameters to \`-version-info'" # convert absolute version numbers to libtool ages # this retains compatibility with .la files and attempts # to make the code below a bit more comprehensible case $vinfo_number in yes) number_major="$1" number_minor="$2" number_revision="$3" # # There are really only two kinds -- those that # use the current revision as the major version # and those that subtract age and use age as # a minor version. But, then there is irix # which has an extra 1 added just for fun # case $version_type in # correct linux to gnu/linux during the next big refactor darwin|linux|osf|windows|none) func_arith $number_major + $number_minor current=$func_arith_result age="$number_minor" revision="$number_revision" ;; freebsd-aout|freebsd-elf|qnx|sunos) current="$number_major" revision="$number_minor" age="0" ;; irix|nonstopux) func_arith $number_major + $number_minor current=$func_arith_result age="$number_minor" revision="$number_minor" lt_irix_increment=no ;; esac ;; no) current="$1" revision="$2" age="$3" ;; esac # Check that each of the things are valid numbers. case $current in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) func_error "CURRENT \`$current' must be a nonnegative integer" func_fatal_error "\`$vinfo' is not valid version information" ;; esac case $revision in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) func_error "REVISION \`$revision' must be a nonnegative integer" func_fatal_error "\`$vinfo' is not valid version information" ;; esac case $age in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) func_error "AGE \`$age' must be a nonnegative integer" func_fatal_error "\`$vinfo' is not valid version information" ;; esac if test "$age" -gt "$current"; then func_error "AGE \`$age' is greater than the current interface number \`$current'" func_fatal_error "\`$vinfo' is not valid version information" fi # Calculate the version variables. major= versuffix= verstring= case $version_type in none) ;; darwin) # Like Linux, but with the current version available in # verstring for coding it into the library header func_arith $current - $age major=.$func_arith_result versuffix="$major.$age.$revision" # Darwin ld doesn't like 0 for these options... func_arith $current + 1 minor_current=$func_arith_result xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision" verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" ;; freebsd-aout) major=".$current" versuffix=".$current.$revision"; ;; freebsd-elf) major=".$current" versuffix=".$current" ;; irix | nonstopux) if test "X$lt_irix_increment" = "Xno"; then func_arith $current - $age else func_arith $current - $age + 1 fi major=$func_arith_result case $version_type in nonstopux) verstring_prefix=nonstopux ;; *) verstring_prefix=sgi ;; esac verstring="$verstring_prefix$major.$revision" # Add in all the interfaces that we are compatible with. loop=$revision while test "$loop" -ne 0; do func_arith $revision - $loop iface=$func_arith_result func_arith $loop - 1 loop=$func_arith_result verstring="$verstring_prefix$major.$iface:$verstring" done # Before this point, $major must not contain `.'. major=.$major versuffix="$major.$revision" ;; linux) # correct to gnu/linux during the next big refactor func_arith $current - $age major=.$func_arith_result versuffix="$major.$age.$revision" ;; osf) func_arith $current - $age major=.$func_arith_result versuffix=".$current.$age.$revision" verstring="$current.$age.$revision" # Add in all the interfaces that we are compatible with. loop=$age while test "$loop" -ne 0; do func_arith $current - $loop iface=$func_arith_result func_arith $loop - 1 loop=$func_arith_result verstring="$verstring:${iface}.0" done # Make executables depend on our current version. func_append verstring ":${current}.0" ;; qnx) major=".$current" versuffix=".$current" ;; sunos) major=".$current" versuffix=".$current.$revision" ;; windows) # Use '-' rather than '.', since we only want one # extension on DOS 8.3 filesystems. func_arith $current - $age major=$func_arith_result versuffix="-$major" ;; *) func_fatal_configuration "unknown library version type \`$version_type'" ;; esac # Clear the version info if we defaulted, and they specified a release. if test -z "$vinfo" && test -n "$release"; then major= case $version_type in darwin) # we can't check for "0.0" in archive_cmds due to quoting # problems, so we reset it completely verstring= ;; *) verstring="0.0" ;; esac if test "$need_version" = no; then versuffix= else versuffix=".0.0" fi fi # Remove version info from name if versioning should be avoided if test "$avoid_version" = yes && test "$need_version" = no; then major= versuffix= verstring="" fi # Check to see if the archive will have undefined symbols. if test "$allow_undefined" = yes; then if test "$allow_undefined_flag" = unsupported; then func_warning "undefined symbols not allowed in $host shared libraries" build_libtool_libs=no build_old_libs=yes fi else # Don't allow undefined symbols. allow_undefined_flag="$no_undefined_flag" fi fi func_generate_dlsyms "$libname" "$libname" "yes" func_append libobjs " $symfileobj" test "X$libobjs" = "X " && libobjs= if test "$opt_mode" != relink; then # Remove our outputs, but don't remove object files since they # may have been created when compiling PIC objects. removelist= tempremovelist=`$ECHO "$output_objdir/*"` for p in $tempremovelist; do case $p in *.$objext | *.gcno) ;; $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) if test "X$precious_files_regex" != "X"; then if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 then continue fi fi func_append removelist " $p" ;; *) ;; esac done test -n "$removelist" && \ func_show_eval "${RM}r \$removelist" fi # Now set the variables for building old libraries. if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then func_append oldlibs " $output_objdir/$libname.$libext" # Transform .lo files to .o files. oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; $lo2o" | $NL2SP` fi # Eliminate all temporary directories. #for path in $notinst_path; do # lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"` # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"` # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$path % %g"` #done if test -n "$xrpath"; then # If the user specified any rpath flags, then add them. temp_xrpath= for libdir in $xrpath; do func_replace_sysroot "$libdir" func_append temp_xrpath " -R$func_replace_sysroot_result" case "$finalize_rpath " in *" $libdir "*) ;; *) func_append finalize_rpath " $libdir" ;; esac done if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then dependency_libs="$temp_xrpath $dependency_libs" fi fi # Make sure dlfiles contains only unique files that won't be dlpreopened old_dlfiles="$dlfiles" dlfiles= for lib in $old_dlfiles; do case " $dlprefiles $dlfiles " in *" $lib "*) ;; *) func_append dlfiles " $lib" ;; esac done # Make sure dlprefiles contains only unique files old_dlprefiles="$dlprefiles" dlprefiles= for lib in $old_dlprefiles; do case "$dlprefiles " in *" $lib "*) ;; *) func_append dlprefiles " $lib" ;; esac done if test "$build_libtool_libs" = yes; then if test -n "$rpath"; then case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) # these systems don't actually have a c library (as such)! ;; *-*-rhapsody* | *-*-darwin1.[012]) # Rhapsody C library is in the System framework func_append deplibs " System.ltframework" ;; *-*-netbsd*) # Don't link with libc until the a.out ld.so is fixed. ;; *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) # Do not include libc due to us having libc/libc_r. ;; *-*-sco3.2v5* | *-*-sco5v6*) # Causes problems with __ctype ;; *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) # Compiler inserts libc in the correct place for threads to work ;; *) # Add libc to deplibs on all other systems if necessary. if test "$build_libtool_need_lc" = "yes"; then func_append deplibs " -lc" fi ;; esac fi # Transform deplibs into only deplibs that can be linked in shared. name_save=$name libname_save=$libname release_save=$release versuffix_save=$versuffix major_save=$major # I'm not sure if I'm treating the release correctly. I think # release should show up in the -l (ie -lgmp5) so we don't want to # add it in twice. Is that correct? release="" versuffix="" major="" newdeplibs= droppeddeps=no case $deplibs_check_method in pass_all) # Don't check for shared/static. Everything works. # This might be a little naive. We might want to check # whether the library exists or not. But this is on # osf3 & osf4 and I'm not really sure... Just # implementing what was already the behavior. newdeplibs=$deplibs ;; test_compile) # This code stresses the "libraries are programs" paradigm to its # limits. Maybe even breaks it. We compile a program, linking it # against the deplibs as a proxy for the library. Then we can check # whether they linked in statically or dynamically with ldd. $opt_dry_run || $RM conftest.c cat > conftest.c </dev/null` $nocaseglob else potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null` fi for potent_lib in $potential_libs; do # Follow soft links. if ls -lLd "$potent_lib" 2>/dev/null | $GREP " -> " >/dev/null; then continue fi # The statement above tries to avoid entering an # endless loop below, in case of cyclic links. # We might still enter an endless loop, since a link # loop can be closed while we follow links, # but so what? potlib="$potent_lib" while test -h "$potlib" 2>/dev/null; do potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'` case $potliblink in [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; *) potlib=`$ECHO "$potlib" | $SED 's,[^/]*$,,'`"$potliblink";; esac done if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | $SED -e 10q | $EGREP "$file_magic_regex" > /dev/null; then func_append newdeplibs " $a_deplib" a_deplib="" break 2 fi done done fi if test -n "$a_deplib" ; then droppeddeps=yes echo $ECHO "*** Warning: linker path does not have real file for library $a_deplib." echo "*** I have the capability to make that library automatically link in when" echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have" echo "*** because I did check the linker path looking for a file starting" if test -z "$potlib" ; then $ECHO "*** with $libname but no candidates were found. (...for file magic test)" else $ECHO "*** with $libname and none of the candidates passed a file format test" $ECHO "*** using a file magic. Last file checked: $potlib" fi fi ;; *) # Add a -L argument. func_append newdeplibs " $a_deplib" ;; esac done # Gone through all deplibs. ;; match_pattern*) set dummy $deplibs_check_method; shift match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` for a_deplib in $deplibs; do case $a_deplib in -l*) func_stripname -l '' "$a_deplib" name=$func_stripname_result if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then case " $predeps $postdeps " in *" $a_deplib "*) func_append newdeplibs " $a_deplib" a_deplib="" ;; esac fi if test -n "$a_deplib" ; then libname=`eval "\\$ECHO \"$libname_spec\""` for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do potential_libs=`ls $i/$libname[.-]* 2>/dev/null` for potent_lib in $potential_libs; do potlib="$potent_lib" # see symlink-check above in file_magic test if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \ $EGREP "$match_pattern_regex" > /dev/null; then func_append newdeplibs " $a_deplib" a_deplib="" break 2 fi done done fi if test -n "$a_deplib" ; then droppeddeps=yes echo $ECHO "*** Warning: linker path does not have real file for library $a_deplib." echo "*** I have the capability to make that library automatically link in when" echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have" echo "*** because I did check the linker path looking for a file starting" if test -z "$potlib" ; then $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)" else $ECHO "*** with $libname and none of the candidates passed a file format test" $ECHO "*** using a regex pattern. Last file checked: $potlib" fi fi ;; *) # Add a -L argument. func_append newdeplibs " $a_deplib" ;; esac done # Gone through all deplibs. ;; none | unknown | *) newdeplibs="" tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'` if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then for i in $predeps $postdeps ; do # can't use Xsed below, because $i might contain '/' tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s,$i,,"` done fi case $tmp_deplibs in *[!\ \ ]*) echo if test "X$deplibs_check_method" = "Xnone"; then echo "*** Warning: inter-library dependencies are not supported in this platform." else echo "*** Warning: inter-library dependencies are not known to be supported." fi echo "*** All declared inter-library dependencies are being dropped." droppeddeps=yes ;; esac ;; esac versuffix=$versuffix_save major=$major_save release=$release_save libname=$libname_save name=$name_save case $host in *-*-rhapsody* | *-*-darwin1.[012]) # On Rhapsody replace the C library with the System framework newdeplibs=`$ECHO " $newdeplibs" | $SED 's/ -lc / System.ltframework /'` ;; esac if test "$droppeddeps" = yes; then if test "$module" = yes; then echo echo "*** Warning: libtool could not satisfy all declared inter-library" $ECHO "*** dependencies of module $libname. Therefore, libtool will create" echo "*** a static module, that should work as long as the dlopening" echo "*** application is linked with the -dlopen flag." if test -z "$global_symbol_pipe"; then echo echo "*** However, this would only work if libtool was able to extract symbol" echo "*** lists from a program, using \`nm' or equivalent, but libtool could" echo "*** not find such a program. So, this module is probably useless." echo "*** \`nm' from GNU binutils and a full rebuild may help." fi if test "$build_old_libs" = no; then oldlibs="$output_objdir/$libname.$libext" build_libtool_libs=module build_old_libs=yes else build_libtool_libs=no fi else echo "*** The inter-library dependencies that have been dropped here will be" echo "*** automatically added whenever a program is linked with this library" echo "*** or is declared to -dlopen it." if test "$allow_undefined" = no; then echo echo "*** Since this library must not contain undefined symbols," echo "*** because either the platform does not support them or" echo "*** it was explicitly requested with -no-undefined," echo "*** libtool will only create a static version of it." if test "$build_old_libs" = no; then oldlibs="$output_objdir/$libname.$libext" build_libtool_libs=module build_old_libs=yes else build_libtool_libs=no fi fi fi fi # Done checking deplibs! deplibs=$newdeplibs fi # Time to change all our "foo.ltframework" stuff back to "-framework foo" case $host in *-*-darwin*) newdeplibs=`$ECHO " $newdeplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` new_inherited_linker_flags=`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` deplibs=`$ECHO " $deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` ;; esac # move library search paths that coincide with paths to not yet # installed libraries to the beginning of the library search list new_libs= for path in $notinst_path; do case " $new_libs " in *" -L$path/$objdir "*) ;; *) case " $deplibs " in *" -L$path/$objdir "*) func_append new_libs " -L$path/$objdir" ;; esac ;; esac done for deplib in $deplibs; do case $deplib in -L*) case " $new_libs " in *" $deplib "*) ;; *) func_append new_libs " $deplib" ;; esac ;; *) func_append new_libs " $deplib" ;; esac done deplibs="$new_libs" # All the library-specific variables (install_libdir is set above). library_names= old_library= dlname= # Test again, we may have decided not to build it any more if test "$build_libtool_libs" = yes; then # Remove ${wl} instances when linking with ld. # FIXME: should test the right _cmds variable. case $archive_cmds in *\$LD\ *) wl= ;; esac if test "$hardcode_into_libs" = yes; then # Hardcode the library paths hardcode_libdirs= dep_rpath= rpath="$finalize_rpath" test "$opt_mode" != relink && rpath="$compile_rpath$rpath" for libdir in $rpath; do if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then func_replace_sysroot "$libdir" libdir=$func_replace_sysroot_result if test -z "$hardcode_libdirs"; then hardcode_libdirs="$libdir" else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) ;; *) func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" ;; esac fi else eval flag=\"$hardcode_libdir_flag_spec\" func_append dep_rpath " $flag" fi elif test -n "$runpath_var"; then case "$perm_rpath " in *" $libdir "*) ;; *) func_append perm_rpath " $libdir" ;; esac fi done # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then libdir="$hardcode_libdirs" eval "dep_rpath=\"$hardcode_libdir_flag_spec\"" fi if test -n "$runpath_var" && test -n "$perm_rpath"; then # We should set the runpath_var. rpath= for dir in $perm_rpath; do func_append rpath "$dir:" done eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" fi test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" fi shlibpath="$finalize_shlibpath" test "$opt_mode" != relink && shlibpath="$compile_shlibpath$shlibpath" if test -n "$shlibpath"; then eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" fi # Get the real and link names of the library. eval shared_ext=\"$shrext_cmds\" eval library_names=\"$library_names_spec\" set dummy $library_names shift realname="$1" shift if test -n "$soname_spec"; then eval soname=\"$soname_spec\" else soname="$realname" fi if test -z "$dlname"; then dlname=$soname fi lib="$output_objdir/$realname" linknames= for link do func_append linknames " $link" done # Use standard objects if they are pic test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$lo2o" | $NL2SP` test "X$libobjs" = "X " && libobjs= delfiles= if test -n "$export_symbols" && test -n "$include_expsyms"; then $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp" export_symbols="$output_objdir/$libname.uexp" func_append delfiles " $export_symbols" fi orig_export_symbols= case $host_os in cygwin* | mingw* | cegcc*) if test -n "$export_symbols" && test -z "$export_symbols_regex"; then # exporting using user supplied symfile if test "x`$SED 1q $export_symbols`" != xEXPORTS; then # and it's NOT already a .def file. Must figure out # which of the given symbols are data symbols and tag # them as such. So, trigger use of export_symbols_cmds. # export_symbols gets reassigned inside the "prepare # the list of exported symbols" if statement, so the # include_expsyms logic still works. orig_export_symbols="$export_symbols" export_symbols= always_export_symbols=yes fi fi ;; esac # Prepare the list of exported symbols if test -z "$export_symbols"; then if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then func_verbose "generating symbol list for \`$libname.la'" export_symbols="$output_objdir/$libname.exp" $opt_dry_run || $RM $export_symbols cmds=$export_symbols_cmds save_ifs="$IFS"; IFS='~' for cmd1 in $cmds; do IFS="$save_ifs" # Take the normal branch if the nm_file_list_spec branch # doesn't work or if tool conversion is not needed. case $nm_file_list_spec~$to_tool_file_cmd in *~func_convert_file_noop | *~func_convert_file_msys_to_w32 | ~*) try_normal_branch=yes eval cmd=\"$cmd1\" func_len " $cmd" len=$func_len_result ;; *) try_normal_branch=no ;; esac if test "$try_normal_branch" = yes \ && { test "$len" -lt "$max_cmd_len" \ || test "$max_cmd_len" -le -1; } then func_show_eval "$cmd" 'exit $?' skipped_export=false elif test -n "$nm_file_list_spec"; then func_basename "$output" output_la=$func_basename_result save_libobjs=$libobjs save_output=$output output=${output_objdir}/${output_la}.nm func_to_tool_file "$output" libobjs=$nm_file_list_spec$func_to_tool_file_result func_append delfiles " $output" func_verbose "creating $NM input file list: $output" for obj in $save_libobjs; do func_to_tool_file "$obj" $ECHO "$func_to_tool_file_result" done > "$output" eval cmd=\"$cmd1\" func_show_eval "$cmd" 'exit $?' output=$save_output libobjs=$save_libobjs skipped_export=false else # The command line is too long to execute in one step. func_verbose "using reloadable object file for export list..." skipped_export=: # Break out early, otherwise skipped_export may be # set to false by a later but shorter cmd. break fi done IFS="$save_ifs" if test -n "$export_symbols_regex" && test "X$skipped_export" != "X:"; then func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' func_show_eval '$MV "${export_symbols}T" "$export_symbols"' fi fi fi if test -n "$export_symbols" && test -n "$include_expsyms"; then tmp_export_symbols="$export_symbols" test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' fi if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then # The given exports_symbols file has to be filtered, so filter it. func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" # FIXME: $output_objdir/$libname.filter potentially contains lots of # 's' commands which not all seds can handle. GNU sed should be fine # though. Also, the filter scales superlinearly with the number of # global variables. join(1) would be nice here, but unfortunately # isn't a blessed tool. $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter func_append delfiles " $export_symbols $output_objdir/$libname.filter" export_symbols=$output_objdir/$libname.def $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols fi tmp_deplibs= for test_deplib in $deplibs; do case " $convenience " in *" $test_deplib "*) ;; *) func_append tmp_deplibs " $test_deplib" ;; esac done deplibs="$tmp_deplibs" if test -n "$convenience"; then if test -n "$whole_archive_flag_spec" && test "$compiler_needs_object" = yes && test -z "$libobjs"; then # extract the archives, so we have objects to list. # TODO: could optimize this to just extract one archive. whole_archive_flag_spec= fi if test -n "$whole_archive_flag_spec"; then save_libobjs=$libobjs eval libobjs=\"\$libobjs $whole_archive_flag_spec\" test "X$libobjs" = "X " && libobjs= else gentop="$output_objdir/${outputname}x" func_append generated " $gentop" func_extract_archives $gentop $convenience func_append libobjs " $func_extract_archives_result" test "X$libobjs" = "X " && libobjs= fi fi if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then eval flag=\"$thread_safe_flag_spec\" func_append linker_flags " $flag" fi # Make a backup of the uninstalled library when relinking if test "$opt_mode" = relink; then $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $? fi # Do each of the archive commands. if test "$module" = yes && test -n "$module_cmds" ; then if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then eval test_cmds=\"$module_expsym_cmds\" cmds=$module_expsym_cmds else eval test_cmds=\"$module_cmds\" cmds=$module_cmds fi else if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then eval test_cmds=\"$archive_expsym_cmds\" cmds=$archive_expsym_cmds else eval test_cmds=\"$archive_cmds\" cmds=$archive_cmds fi fi if test "X$skipped_export" != "X:" && func_len " $test_cmds" && len=$func_len_result && test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then : else # The command line is too long to link in one step, link piecewise # or, if using GNU ld and skipped_export is not :, use a linker # script. # Save the value of $output and $libobjs because we want to # use them later. If we have whole_archive_flag_spec, we # want to use save_libobjs as it was before # whole_archive_flag_spec was expanded, because we can't # assume the linker understands whole_archive_flag_spec. # This may have to be revisited, in case too many # convenience libraries get linked in and end up exceeding # the spec. if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then save_libobjs=$libobjs fi save_output=$output func_basename "$output" output_la=$func_basename_result # Clear the reloadable object creation command queue and # initialize k to one. test_cmds= concat_cmds= objlist= last_robj= k=1 if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then output=${output_objdir}/${output_la}.lnkscript func_verbose "creating GNU ld script: $output" echo 'INPUT (' > $output for obj in $save_libobjs do func_to_tool_file "$obj" $ECHO "$func_to_tool_file_result" >> $output done echo ')' >> $output func_append delfiles " $output" func_to_tool_file "$output" output=$func_to_tool_file_result elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then output=${output_objdir}/${output_la}.lnk func_verbose "creating linker input file list: $output" : > $output set x $save_libobjs shift firstobj= if test "$compiler_needs_object" = yes; then firstobj="$1 " shift fi for obj do func_to_tool_file "$obj" $ECHO "$func_to_tool_file_result" >> $output done func_append delfiles " $output" func_to_tool_file "$output" output=$firstobj\"$file_list_spec$func_to_tool_file_result\" else if test -n "$save_libobjs"; then func_verbose "creating reloadable object files..." output=$output_objdir/$output_la-${k}.$objext eval test_cmds=\"$reload_cmds\" func_len " $test_cmds" len0=$func_len_result len=$len0 # Loop over the list of objects to be linked. for obj in $save_libobjs do func_len " $obj" func_arith $len + $func_len_result len=$func_arith_result if test "X$objlist" = X || test "$len" -lt "$max_cmd_len"; then func_append objlist " $obj" else # The command $test_cmds is almost too long, add a # command to the queue. if test "$k" -eq 1 ; then # The first file doesn't have a previous command to add. reload_objs=$objlist eval concat_cmds=\"$reload_cmds\" else # All subsequent reloadable object files will link in # the last one created. reload_objs="$objlist $last_robj" eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\" fi last_robj=$output_objdir/$output_la-${k}.$objext func_arith $k + 1 k=$func_arith_result output=$output_objdir/$output_la-${k}.$objext objlist=" $obj" func_len " $last_robj" func_arith $len0 + $func_len_result len=$func_arith_result fi done # Handle the remaining objects by creating one last # reloadable object file. All subsequent reloadable object # files will link in the last one created. test -z "$concat_cmds" || concat_cmds=$concat_cmds~ reload_objs="$objlist $last_robj" eval concat_cmds=\"\${concat_cmds}$reload_cmds\" if test -n "$last_robj"; then eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\" fi func_append delfiles " $output" else output= fi if ${skipped_export-false}; then func_verbose "generating symbol list for \`$libname.la'" export_symbols="$output_objdir/$libname.exp" $opt_dry_run || $RM $export_symbols libobjs=$output # Append the command to create the export file. test -z "$concat_cmds" || concat_cmds=$concat_cmds~ eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\" if test -n "$last_robj"; then eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" fi fi test -n "$save_libobjs" && func_verbose "creating a temporary reloadable object file: $output" # Loop through the commands generated above and execute them. save_ifs="$IFS"; IFS='~' for cmd in $concat_cmds; do IFS="$save_ifs" $opt_silent || { func_quote_for_expand "$cmd" eval "func_echo $func_quote_for_expand_result" } $opt_dry_run || eval "$cmd" || { lt_exit=$? # Restore the uninstalled library and exit if test "$opt_mode" = relink; then ( cd "$output_objdir" && \ $RM "${realname}T" && \ $MV "${realname}U" "$realname" ) fi exit $lt_exit } done IFS="$save_ifs" if test -n "$export_symbols_regex" && ${skipped_export-false}; then func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' func_show_eval '$MV "${export_symbols}T" "$export_symbols"' fi fi if ${skipped_export-false}; then if test -n "$export_symbols" && test -n "$include_expsyms"; then tmp_export_symbols="$export_symbols" test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' fi if test -n "$orig_export_symbols"; then # The given exports_symbols file has to be filtered, so filter it. func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" # FIXME: $output_objdir/$libname.filter potentially contains lots of # 's' commands which not all seds can handle. GNU sed should be fine # though. Also, the filter scales superlinearly with the number of # global variables. join(1) would be nice here, but unfortunately # isn't a blessed tool. $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter func_append delfiles " $export_symbols $output_objdir/$libname.filter" export_symbols=$output_objdir/$libname.def $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols fi fi libobjs=$output # Restore the value of output. output=$save_output if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then eval libobjs=\"\$libobjs $whole_archive_flag_spec\" test "X$libobjs" = "X " && libobjs= fi # Expand the library linking commands again to reset the # value of $libobjs for piecewise linking. # Do each of the archive commands. if test "$module" = yes && test -n "$module_cmds" ; then if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then cmds=$module_expsym_cmds else cmds=$module_cmds fi else if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then cmds=$archive_expsym_cmds else cmds=$archive_cmds fi fi fi if test -n "$delfiles"; then # Append the command to remove temporary files to $cmds. eval cmds=\"\$cmds~\$RM $delfiles\" fi # Add any objects from preloaded convenience libraries if test -n "$dlprefiles"; then gentop="$output_objdir/${outputname}x" func_append generated " $gentop" func_extract_archives $gentop $dlprefiles func_append libobjs " $func_extract_archives_result" test "X$libobjs" = "X " && libobjs= fi save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" eval cmd=\"$cmd\" $opt_silent || { func_quote_for_expand "$cmd" eval "func_echo $func_quote_for_expand_result" } $opt_dry_run || eval "$cmd" || { lt_exit=$? # Restore the uninstalled library and exit if test "$opt_mode" = relink; then ( cd "$output_objdir" && \ $RM "${realname}T" && \ $MV "${realname}U" "$realname" ) fi exit $lt_exit } done IFS="$save_ifs" # Restore the uninstalled library and exit if test "$opt_mode" = relink; then $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $? if test -n "$convenience"; then if test -z "$whole_archive_flag_spec"; then func_show_eval '${RM}r "$gentop"' fi fi exit $EXIT_SUCCESS fi # Create links to the real library. for linkname in $linknames; do if test "$realname" != "$linkname"; then func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?' fi done # If -module or -export-dynamic was specified, set the dlname. if test "$module" = yes || test "$export_dynamic" = yes; then # On all known operating systems, these are identical. dlname="$soname" fi fi ;; obj) if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then func_warning "\`-dlopen' is ignored for objects" fi case " $deplibs" in *\ -l* | *\ -L*) func_warning "\`-l' and \`-L' are ignored for objects" ;; esac test -n "$rpath" && \ func_warning "\`-rpath' is ignored for objects" test -n "$xrpath" && \ func_warning "\`-R' is ignored for objects" test -n "$vinfo" && \ func_warning "\`-version-info' is ignored for objects" test -n "$release" && \ func_warning "\`-release' is ignored for objects" case $output in *.lo) test -n "$objs$old_deplibs" && \ func_fatal_error "cannot build library object \`$output' from non-libtool objects" libobj=$output func_lo2o "$libobj" obj=$func_lo2o_result ;; *) libobj= obj="$output" ;; esac # Delete the old objects. $opt_dry_run || $RM $obj $libobj # Objects from convenience libraries. This assumes # single-version convenience libraries. Whenever we create # different ones for PIC/non-PIC, this we'll have to duplicate # the extraction. reload_conv_objs= gentop= # reload_cmds runs $LD directly, so let us get rid of # -Wl from whole_archive_flag_spec and hope we can get by with # turning comma into space.. wl= if test -n "$convenience"; then if test -n "$whole_archive_flag_spec"; then eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" reload_conv_objs=$reload_objs\ `$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'` else gentop="$output_objdir/${obj}x" func_append generated " $gentop" func_extract_archives $gentop $convenience reload_conv_objs="$reload_objs $func_extract_archives_result" fi fi # If we're not building shared, we need to use non_pic_objs test "$build_libtool_libs" != yes && libobjs="$non_pic_objects" # Create the old-style object. reload_objs="$objs$old_deplibs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; /\.lib$/d; $lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test output="$obj" func_execute_cmds "$reload_cmds" 'exit $?' # Exit if we aren't doing a library object file. if test -z "$libobj"; then if test -n "$gentop"; then func_show_eval '${RM}r "$gentop"' fi exit $EXIT_SUCCESS fi if test "$build_libtool_libs" != yes; then if test -n "$gentop"; then func_show_eval '${RM}r "$gentop"' fi # Create an invalid libtool object if no PIC, so that we don't # accidentally link it into a program. # $show "echo timestamp > $libobj" # $opt_dry_run || eval "echo timestamp > $libobj" || exit $? exit $EXIT_SUCCESS fi if test -n "$pic_flag" || test "$pic_mode" != default; then # Only do commands if we really have different PIC objects. reload_objs="$libobjs $reload_conv_objs" output="$libobj" func_execute_cmds "$reload_cmds" 'exit $?' fi if test -n "$gentop"; then func_show_eval '${RM}r "$gentop"' fi exit $EXIT_SUCCESS ;; prog) case $host in *cygwin*) func_stripname '' '.exe' "$output" output=$func_stripname_result.exe;; esac test -n "$vinfo" && \ func_warning "\`-version-info' is ignored for programs" test -n "$release" && \ func_warning "\`-release' is ignored for programs" test "$preload" = yes \ && test "$dlopen_support" = unknown \ && test "$dlopen_self" = unknown \ && test "$dlopen_self_static" = unknown && \ func_warning "\`LT_INIT([dlopen])' not used. Assuming no dlopen support." case $host in *-*-rhapsody* | *-*-darwin1.[012]) # On Rhapsody replace the C library is the System framework compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'` finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'` ;; esac case $host in *-*-darwin*) # Don't allow lazy linking, it breaks C++ global constructors # But is supposedly fixed on 10.4 or later (yay!). if test "$tagname" = CXX ; then case ${MACOSX_DEPLOYMENT_TARGET-10.0} in 10.[0123]) func_append compile_command " ${wl}-bind_at_load" func_append finalize_command " ${wl}-bind_at_load" ;; esac fi # Time to change all our "foo.ltframework" stuff back to "-framework foo" compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` ;; esac # move library search paths that coincide with paths to not yet # installed libraries to the beginning of the library search list new_libs= for path in $notinst_path; do case " $new_libs " in *" -L$path/$objdir "*) ;; *) case " $compile_deplibs " in *" -L$path/$objdir "*) func_append new_libs " -L$path/$objdir" ;; esac ;; esac done for deplib in $compile_deplibs; do case $deplib in -L*) case " $new_libs " in *" $deplib "*) ;; *) func_append new_libs " $deplib" ;; esac ;; *) func_append new_libs " $deplib" ;; esac done compile_deplibs="$new_libs" func_append compile_command " $compile_deplibs" func_append finalize_command " $finalize_deplibs" if test -n "$rpath$xrpath"; then # If the user specified any rpath flags, then add them. for libdir in $rpath $xrpath; do # This is the magic to use -rpath. case "$finalize_rpath " in *" $libdir "*) ;; *) func_append finalize_rpath " $libdir" ;; esac done fi # Now hardcode the library paths rpath= hardcode_libdirs= for libdir in $compile_rpath $finalize_rpath; do if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then if test -z "$hardcode_libdirs"; then hardcode_libdirs="$libdir" else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) ;; *) func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" ;; esac fi else eval flag=\"$hardcode_libdir_flag_spec\" func_append rpath " $flag" fi elif test -n "$runpath_var"; then case "$perm_rpath " in *" $libdir "*) ;; *) func_append perm_rpath " $libdir" ;; esac fi case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'` case :$dllsearchpath: in *":$libdir:"*) ;; ::) dllsearchpath=$libdir;; *) func_append dllsearchpath ":$libdir";; esac case :$dllsearchpath: in *":$testbindir:"*) ;; ::) dllsearchpath=$testbindir;; *) func_append dllsearchpath ":$testbindir";; esac ;; esac done # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then libdir="$hardcode_libdirs" eval rpath=\" $hardcode_libdir_flag_spec\" fi compile_rpath="$rpath" rpath= hardcode_libdirs= for libdir in $finalize_rpath; do if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then if test -z "$hardcode_libdirs"; then hardcode_libdirs="$libdir" else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) ;; *) func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" ;; esac fi else eval flag=\"$hardcode_libdir_flag_spec\" func_append rpath " $flag" fi elif test -n "$runpath_var"; then case "$finalize_perm_rpath " in *" $libdir "*) ;; *) func_append finalize_perm_rpath " $libdir" ;; esac fi done # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then libdir="$hardcode_libdirs" eval rpath=\" $hardcode_libdir_flag_spec\" fi finalize_rpath="$rpath" if test -n "$libobjs" && test "$build_old_libs" = yes; then # Transform all the library objects into standard objects. compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP` finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP` fi func_generate_dlsyms "$outputname" "@PROGRAM@" "no" # template prelinking step if test -n "$prelink_cmds"; then func_execute_cmds "$prelink_cmds" 'exit $?' fi wrappers_required=yes case $host in *cegcc* | *mingw32ce*) # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway. wrappers_required=no ;; *cygwin* | *mingw* ) if test "$build_libtool_libs" != yes; then wrappers_required=no fi ;; *) if test "$need_relink" = no || test "$build_libtool_libs" != yes; then wrappers_required=no fi ;; esac if test "$wrappers_required" = no; then # Replace the output file specification. compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'` link_command="$compile_command$compile_rpath" # We have no uninstalled library dependencies, so finalize right now. exit_status=0 func_show_eval "$link_command" 'exit_status=$?' if test -n "$postlink_cmds"; then func_to_tool_file "$output" postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` func_execute_cmds "$postlink_cmds" 'exit $?' fi # Delete the generated files. if test -f "$output_objdir/${outputname}S.${objext}"; then func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"' fi exit $exit_status fi if test -n "$compile_shlibpath$finalize_shlibpath"; then compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" fi if test -n "$finalize_shlibpath"; then finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" fi compile_var= finalize_var= if test -n "$runpath_var"; then if test -n "$perm_rpath"; then # We should set the runpath_var. rpath= for dir in $perm_rpath; do func_append rpath "$dir:" done compile_var="$runpath_var=\"$rpath\$$runpath_var\" " fi if test -n "$finalize_perm_rpath"; then # We should set the runpath_var. rpath= for dir in $finalize_perm_rpath; do func_append rpath "$dir:" done finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " fi fi if test "$no_install" = yes; then # We don't need to create a wrapper script. link_command="$compile_var$compile_command$compile_rpath" # Replace the output file specification. link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'` # Delete the old output file. $opt_dry_run || $RM $output # Link the executable and exit func_show_eval "$link_command" 'exit $?' if test -n "$postlink_cmds"; then func_to_tool_file "$output" postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` func_execute_cmds "$postlink_cmds" 'exit $?' fi exit $EXIT_SUCCESS fi if test "$hardcode_action" = relink; then # Fast installation is not supported link_command="$compile_var$compile_command$compile_rpath" relink_command="$finalize_var$finalize_command$finalize_rpath" func_warning "this platform does not like uninstalled shared libraries" func_warning "\`$output' will be relinked during installation" else if test "$fast_install" != no; then link_command="$finalize_var$compile_command$finalize_rpath" if test "$fast_install" = yes; then relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'` else # fast_install is set to needless relink_command= fi else link_command="$compile_var$compile_command$compile_rpath" relink_command="$finalize_var$finalize_command$finalize_rpath" fi fi # Replace the output file specification. link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` # Delete the old output files. $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname func_show_eval "$link_command" 'exit $?' if test -n "$postlink_cmds"; then func_to_tool_file "$output_objdir/$outputname" postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` func_execute_cmds "$postlink_cmds" 'exit $?' fi # Now create the wrapper script. func_verbose "creating $output" # Quote the relink command for shipping. if test -n "$relink_command"; then # Preserve any variables that may affect compiler behavior for var in $variables_saved_for_relink; do if eval test -z \"\${$var+set}\"; then relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" elif eval var_value=\$$var; test -z "$var_value"; then relink_command="$var=; export $var; $relink_command" else func_quote_for_eval "$var_value" relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" fi done relink_command="(cd `pwd`; $relink_command)" relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` fi # Only actually do things if not in dry run mode. $opt_dry_run || { # win32 will think the script is a binary if it has # a .exe suffix, so we strip it off here. case $output in *.exe) func_stripname '' '.exe' "$output" output=$func_stripname_result ;; esac # test for cygwin because mv fails w/o .exe extensions case $host in *cygwin*) exeext=.exe func_stripname '' '.exe' "$outputname" outputname=$func_stripname_result ;; *) exeext= ;; esac case $host in *cygwin* | *mingw* ) func_dirname_and_basename "$output" "" "." output_name=$func_basename_result output_path=$func_dirname_result cwrappersource="$output_path/$objdir/lt-$output_name.c" cwrapper="$output_path/$output_name.exe" $RM $cwrappersource $cwrapper trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 func_emit_cwrapperexe_src > $cwrappersource # The wrapper executable is built using the $host compiler, # because it contains $host paths and files. If cross- # compiling, it, like the target executable, must be # executed on the $host or under an emulation environment. $opt_dry_run || { $LTCC $LTCFLAGS -o $cwrapper $cwrappersource $STRIP $cwrapper } # Now, create the wrapper script for func_source use: func_ltwrapper_scriptname $cwrapper $RM $func_ltwrapper_scriptname_result trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15 $opt_dry_run || { # note: this script will not be executed, so do not chmod. if test "x$build" = "x$host" ; then $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result else func_emit_wrapper no > $func_ltwrapper_scriptname_result fi } ;; * ) $RM $output trap "$RM $output; exit $EXIT_FAILURE" 1 2 15 func_emit_wrapper no > $output chmod +x $output ;; esac } exit $EXIT_SUCCESS ;; esac # See if we need to build an old-fashioned archive. for oldlib in $oldlibs; do if test "$build_libtool_libs" = convenience; then oldobjs="$libobjs_save $symfileobj" addlibs="$convenience" build_libtool_libs=no else if test "$build_libtool_libs" = module; then oldobjs="$libobjs_save" build_libtool_libs=no else oldobjs="$old_deplibs $non_pic_objects" if test "$preload" = yes && test -f "$symfileobj"; then func_append oldobjs " $symfileobj" fi fi addlibs="$old_convenience" fi if test -n "$addlibs"; then gentop="$output_objdir/${outputname}x" func_append generated " $gentop" func_extract_archives $gentop $addlibs func_append oldobjs " $func_extract_archives_result" fi # Do each command in the archive commands. if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then cmds=$old_archive_from_new_cmds else # Add any objects from preloaded convenience libraries if test -n "$dlprefiles"; then gentop="$output_objdir/${outputname}x" func_append generated " $gentop" func_extract_archives $gentop $dlprefiles func_append oldobjs " $func_extract_archives_result" fi # POSIX demands no paths to be encoded in archives. We have # to avoid creating archives with duplicate basenames if we # might have to extract them afterwards, e.g., when creating a # static archive out of a convenience library, or when linking # the entirety of a libtool archive into another (currently # not supported by libtool). if (for obj in $oldobjs do func_basename "$obj" $ECHO "$func_basename_result" done | sort | sort -uc >/dev/null 2>&1); then : else echo "copying selected object files to avoid basename conflicts..." gentop="$output_objdir/${outputname}x" func_append generated " $gentop" func_mkdir_p "$gentop" save_oldobjs=$oldobjs oldobjs= counter=1 for obj in $save_oldobjs do func_basename "$obj" objbase="$func_basename_result" case " $oldobjs " in " ") oldobjs=$obj ;; *[\ /]"$objbase "*) while :; do # Make sure we don't pick an alternate name that also # overlaps. newobj=lt$counter-$objbase func_arith $counter + 1 counter=$func_arith_result case " $oldobjs " in *[\ /]"$newobj "*) ;; *) if test ! -f "$gentop/$newobj"; then break; fi ;; esac done func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj" func_append oldobjs " $gentop/$newobj" ;; *) func_append oldobjs " $obj" ;; esac done fi func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 tool_oldlib=$func_to_tool_file_result eval cmds=\"$old_archive_cmds\" func_len " $cmds" len=$func_len_result if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then cmds=$old_archive_cmds elif test -n "$archiver_list_spec"; then func_verbose "using command file archive linking..." for obj in $oldobjs do func_to_tool_file "$obj" $ECHO "$func_to_tool_file_result" done > $output_objdir/$libname.libcmd func_to_tool_file "$output_objdir/$libname.libcmd" oldobjs=" $archiver_list_spec$func_to_tool_file_result" cmds=$old_archive_cmds else # the command line is too long to link in one step, link in parts func_verbose "using piecewise archive linking..." save_RANLIB=$RANLIB RANLIB=: objlist= concat_cmds= save_oldobjs=$oldobjs oldobjs= # Is there a better way of finding the last object in the list? for obj in $save_oldobjs do last_oldobj=$obj done eval test_cmds=\"$old_archive_cmds\" func_len " $test_cmds" len0=$func_len_result len=$len0 for obj in $save_oldobjs do func_len " $obj" func_arith $len + $func_len_result len=$func_arith_result func_append objlist " $obj" if test "$len" -lt "$max_cmd_len"; then : else # the above command should be used before it gets too long oldobjs=$objlist if test "$obj" = "$last_oldobj" ; then RANLIB=$save_RANLIB fi test -z "$concat_cmds" || concat_cmds=$concat_cmds~ eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" objlist= len=$len0 fi done RANLIB=$save_RANLIB oldobjs=$objlist if test "X$oldobjs" = "X" ; then eval cmds=\"\$concat_cmds\" else eval cmds=\"\$concat_cmds~\$old_archive_cmds\" fi fi fi func_execute_cmds "$cmds" 'exit $?' done test -n "$generated" && \ func_show_eval "${RM}r$generated" # Now create the libtool archive. case $output in *.la) old_library= test "$build_old_libs" = yes && old_library="$libname.$libext" func_verbose "creating $output" # Preserve any variables that may affect compiler behavior for var in $variables_saved_for_relink; do if eval test -z \"\${$var+set}\"; then relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" elif eval var_value=\$$var; test -z "$var_value"; then relink_command="$var=; export $var; $relink_command" else func_quote_for_eval "$var_value" relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" fi done # Quote the link command for shipping. relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` if test "$hardcode_automatic" = yes ; then relink_command= fi # Only create the output if not a dry run. $opt_dry_run || { for installed in no yes; do if test "$installed" = yes; then if test -z "$install_libdir"; then break fi output="$output_objdir/$outputname"i # Replace all uninstalled libtool libraries with the installed ones newdependency_libs= for deplib in $dependency_libs; do case $deplib in *.la) func_basename "$deplib" name="$func_basename_result" func_resolve_sysroot "$deplib" eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result` test -z "$libdir" && \ func_fatal_error "\`$deplib' is not a valid libtool archive" func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name" ;; -L*) func_stripname -L '' "$deplib" func_replace_sysroot "$func_stripname_result" func_append newdependency_libs " -L$func_replace_sysroot_result" ;; -R*) func_stripname -R '' "$deplib" func_replace_sysroot "$func_stripname_result" func_append newdependency_libs " -R$func_replace_sysroot_result" ;; *) func_append newdependency_libs " $deplib" ;; esac done dependency_libs="$newdependency_libs" newdlfiles= for lib in $dlfiles; do case $lib in *.la) func_basename "$lib" name="$func_basename_result" eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` test -z "$libdir" && \ func_fatal_error "\`$lib' is not a valid libtool archive" func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name" ;; *) func_append newdlfiles " $lib" ;; esac done dlfiles="$newdlfiles" newdlprefiles= for lib in $dlprefiles; do case $lib in *.la) # Only pass preopened files to the pseudo-archive (for # eventual linking with the app. that links it) if we # didn't already link the preopened objects directly into # the library: func_basename "$lib" name="$func_basename_result" eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` test -z "$libdir" && \ func_fatal_error "\`$lib' is not a valid libtool archive" func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name" ;; esac done dlprefiles="$newdlprefiles" else newdlfiles= for lib in $dlfiles; do case $lib in [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; *) abs=`pwd`"/$lib" ;; esac func_append newdlfiles " $abs" done dlfiles="$newdlfiles" newdlprefiles= for lib in $dlprefiles; do case $lib in [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; *) abs=`pwd`"/$lib" ;; esac func_append newdlprefiles " $abs" done dlprefiles="$newdlprefiles" fi $RM $output # place dlname in correct position for cygwin # In fact, it would be nice if we could use this code for all target # systems that can't hard-code library paths into their executables # and that have no shared library path variable independent of PATH, # but it turns out we can't easily determine that from inspecting # libtool variables, so we have to hard-code the OSs to which it # applies here; at the moment, that means platforms that use the PE # object format with DLL files. See the long comment at the top of # tests/bindir.at for full details. tdlname=$dlname case $host,$output,$installed,$module,$dlname in *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) # If a -bindir argument was supplied, place the dll there. if test "x$bindir" != x ; then func_relative_path "$install_libdir" "$bindir" tdlname=$func_relative_path_result$dlname else # Otherwise fall back on heuristic. tdlname=../bin/$dlname fi ;; esac $ECHO > $output "\ # $outputname - a libtool library file # Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='$tdlname' # Names of this library. library_names='$library_names' # The name of the static archive. old_library='$old_library' # Linker flags that can not go in dependency_libs. inherited_linker_flags='$new_inherited_linker_flags' # Libraries that this one depends upon. dependency_libs='$dependency_libs' # Names of additional weak libraries provided by this library weak_library_names='$weak_libs' # Version information for $libname. current=$current age=$age revision=$revision # Is this an already installed library? installed=$installed # Should we warn about portability when linking against -modules? shouldnotlink=$module # Files to dlopen/dlpreopen dlopen='$dlfiles' dlpreopen='$dlprefiles' # Directory that this library needs to be installed in: libdir='$install_libdir'" if test "$installed" = no && test "$need_relink" = yes; then $ECHO >> $output "\ relink_command=\"$relink_command\"" fi done } # Do a symbolic link so that the libtool archive can be found in # LD_LIBRARY_PATH before the program is installed. func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?' ;; esac exit $EXIT_SUCCESS } { test "$opt_mode" = link || test "$opt_mode" = relink; } && func_mode_link ${1+"$@"} # func_mode_uninstall arg... func_mode_uninstall () { $opt_debug RM="$nonopt" files= rmforce= exit_status=0 # This variable tells wrapper scripts just to set variables rather # than running their programs. libtool_install_magic="$magic" for arg do case $arg in -f) func_append RM " $arg"; rmforce=yes ;; -*) func_append RM " $arg" ;; *) func_append files " $arg" ;; esac done test -z "$RM" && \ func_fatal_help "you must specify an RM program" rmdirs= for file in $files; do func_dirname "$file" "" "." dir="$func_dirname_result" if test "X$dir" = X.; then odir="$objdir" else odir="$dir/$objdir" fi func_basename "$file" name="$func_basename_result" test "$opt_mode" = uninstall && odir="$dir" # Remember odir for removal later, being careful to avoid duplicates if test "$opt_mode" = clean; then case " $rmdirs " in *" $odir "*) ;; *) func_append rmdirs " $odir" ;; esac fi # Don't error if the file doesn't exist and rm -f was used. if { test -L "$file"; } >/dev/null 2>&1 || { test -h "$file"; } >/dev/null 2>&1 || test -f "$file"; then : elif test -d "$file"; then exit_status=1 continue elif test "$rmforce" = yes; then continue fi rmfiles="$file" case $name in *.la) # Possibly a libtool archive, so verify it. if func_lalib_p "$file"; then func_source $dir/$name # Delete the libtool libraries and symlinks. for n in $library_names; do func_append rmfiles " $odir/$n" done test -n "$old_library" && func_append rmfiles " $odir/$old_library" case "$opt_mode" in clean) case " $library_names " in *" $dlname "*) ;; *) test -n "$dlname" && func_append rmfiles " $odir/$dlname" ;; esac test -n "$libdir" && func_append rmfiles " $odir/$name $odir/${name}i" ;; uninstall) if test -n "$library_names"; then # Do each command in the postuninstall commands. func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' fi if test -n "$old_library"; then # Do each command in the old_postuninstall commands. func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' fi # FIXME: should reinstall the best remaining shared library. ;; esac fi ;; *.lo) # Possibly a libtool object, so verify it. if func_lalib_p "$file"; then # Read the .lo file func_source $dir/$name # Add PIC object to the list of files to remove. if test -n "$pic_object" && test "$pic_object" != none; then func_append rmfiles " $dir/$pic_object" fi # Add non-PIC object to the list of files to remove. if test -n "$non_pic_object" && test "$non_pic_object" != none; then func_append rmfiles " $dir/$non_pic_object" fi fi ;; *) if test "$opt_mode" = clean ; then noexename=$name case $file in *.exe) func_stripname '' '.exe' "$file" file=$func_stripname_result func_stripname '' '.exe' "$name" noexename=$func_stripname_result # $file with .exe has already been added to rmfiles, # add $file without .exe func_append rmfiles " $file" ;; esac # Do a test to see if this is a libtool program. if func_ltwrapper_p "$file"; then if func_ltwrapper_executable_p "$file"; then func_ltwrapper_scriptname "$file" relink_command= func_source $func_ltwrapper_scriptname_result func_append rmfiles " $func_ltwrapper_scriptname_result" else relink_command= func_source $dir/$noexename fi # note $name still contains .exe if it was in $file originally # as does the version of $file that was added into $rmfiles func_append rmfiles " $odir/$name $odir/${name}S.${objext}" if test "$fast_install" = yes && test -n "$relink_command"; then func_append rmfiles " $odir/lt-$name" fi if test "X$noexename" != "X$name" ; then func_append rmfiles " $odir/lt-${noexename}.c" fi fi fi ;; esac func_show_eval "$RM $rmfiles" 'exit_status=1' done # Try to remove the ${objdir}s in the directories where we deleted files for dir in $rmdirs; do if test -d "$dir"; then func_show_eval "rmdir $dir >/dev/null 2>&1" fi done exit $exit_status } { test "$opt_mode" = uninstall || test "$opt_mode" = clean; } && func_mode_uninstall ${1+"$@"} test -z "$opt_mode" && { help="$generic_help" func_fatal_help "you must specify a MODE" } test -z "$exec_cmd" && \ func_fatal_help "invalid operation mode \`$opt_mode'" if test -n "$exec_cmd"; then eval exec "$exec_cmd" exit $EXIT_FAILURE fi exit $exit_status # The TAGs below are defined such that we never get into a situation # in which we disable both kinds of libraries. Given conflicting # choices, we go for a static library, that is the most portable, # since we can't tell whether shared libraries were disabled because # the user asked for that or because the platform doesn't support # them. This is particularly important on AIX, because we don't # support having both static and shared libraries enabled at the same # time on that platform, so we default to a shared-only configuration. # If a disable-shared tag is given, we'll fallback to a static-only # configuration. But we'll never go from static-only to shared-only. # ### BEGIN LIBTOOL TAG CONFIG: disable-shared build_libtool_libs=no build_old_libs=yes # ### END LIBTOOL TAG CONFIG: disable-shared # ### BEGIN LIBTOOL TAG CONFIG: disable-static build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` # ### END LIBTOOL TAG CONFIG: disable-static # Local Variables: # mode:shell-script # sh-indentation:2 # End: # vi:sw=2 ibus-pinyin-1.5.0/ibus-pinyin.spec.in0000664000175000017500000000272512006510772014443 00000000000000Name: @PACKAGE_NAME@ Version: @PACKAGE_VERSION@ Release: 1%{?dist} Summary: The Chinese Pinyin and Bopomofo engines for IBus input platform License: GPLv2+ Group: System Environment/Libraries URL: http://code.google.com/p/ibus Source0: http://ibus.googlecode.com/files/%{name}-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: gettext-devel BuildRequires: intltool BuildRequires: libtool BuildRequires: pkgconfig BuildRequires: sqlite-devel BuildRequires: ibus-devel >= 1.3 BuildRequires: pyzy >= 0.0.8 Requires: ibus >= 1.2.0 Requires: pyzy >= 0.0.8 %description The Chinese Pinyin and Bopomof input methods for IBus platform. %prep %setup -q %build %configure \ --disable-static \ --disable-english-input-mode \ --disable-lua-extension # make -C po update-gmo make %{?_smp_mflags} %install rm -rf $RPM_BUILD_ROOT # make DESTDIR=${RPM_BUILD_ROOT} NO_INDEX=true install make DESTDIR=${RPM_BUILD_ROOT} install %find_lang %{name} %clean rm -rf $RPM_BUILD_ROOT %files -f %{name}.lang %defattr(-,root,root,-) %doc AUTHORS COPYING README %dir %{_datadir}/@PACKAGE@ %{_datadir}/@PACKAGE@/phrases.txt %{_datadir}/@PACKAGE@/icons %{_datadir}/@PACKAGE@/setup %{_datadir}/applications/* %{_datadir}/ibus/component/* %{_libexecdir}/ibus-engine-pinyin %{_libexecdir}/ibus-setup-pinyin %changelog * Fri Aug 08 2008 Peng Huang - @VERSION@-1 - The first version. ibus-pinyin-1.5.0/COPYING0000664000175000017500000004310311762161772011754 00000000000000 GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 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. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, 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 or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's 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 give any other recipients of the Program a copy of this License along with the Program. 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 Program or any portion of it, thus forming a work based on the Program, 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) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, 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 Program, 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 Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) 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; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, 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 executable. However, as a special exception, the source code 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. If distribution of executable or 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 counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program 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. 5. 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 Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program 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 to this License. 7. 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 Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program 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 Program. 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. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program 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. 9. The Free Software Foundation may publish revised and/or new versions of the 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 Program 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 Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, 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 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "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 PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. 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 PROGRAM 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 PROGRAM (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 PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), 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 Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. 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 program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. ibus-pinyin-1.5.0/INSTALL0000644000175000017500000003633211762161772011756 00000000000000Installation Instructions ************************* Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005, 2006, 2007, 2008, 2009 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. Basic Installation ================== Briefly, the shell commands `./configure; make; make install' should configure, build, and install this package. 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 *note Makefile Conventions: (standards)Makefile Conventions. 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 compiler output (useful mainly 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 file `configure.ac' (or `configure.in') is used to create `configure' by a program called `autoconf'. You need `configure.ac' if you want to change it or regenerate `configure' using a newer version of `autoconf'. The simplest way to compile this package is: 1. `cd' to the directory containing the package's source code and type `./configure' to configure the package for your system. Running `configure' might take a while. While running, it prints some messages telling which features it is checking for. 2. Type `make' to compile the package. 3. Optionally, type `make check' to run any self-tests that come with the package, generally using the just-built uninstalled binaries. 4. 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. 5. 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. 6. 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 get all sorts of other programs in order to regenerate files that came with the distribution. 7. Often, you can also type `make uninstall' to remove the installed files again. In practice, not all packages have tested that uninstallation works correctly, even though it is required by the GNU Coding Standards. 8. Some packages, particularly those that use Automake, provide `make distcheck', which can by used by developers to test that all other targets like `make install' and `make uninstall' work correctly. This target is generally not run by end users. 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=c99 CFLAGS=-g LIBS=-lposix *Note 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 architecture 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 architecture at a time in the source code directory. After you have installed the package for one architecture, use `make distclean' before reconfiguring for another architecture. On MacOS X 10.5 and later systems, you can create libraries and executables that work on multiple system types--known as "fat" or "universal" binaries--by specifying multiple `-arch' options to the compiler but only a single `-arch' option to the preprocessor. Like this: ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ CPP="gcc -E" CXXCPP="g++ -E" This is not guaranteed to produce working output in all cases, you may have to build one architecture at a time and combine the results using the `lipo' tool if you have problems. 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' options to `configure', where FEATURE indicates an optional part of the package. They may also pay attention to `--with-PACKAGE' options, where PACKAGE is something like `gnu-as' or `x' (for the X Window System). The `README' should mention any `--enable-' and `--with-' options that the package recognizes. For packages that use the X Window System, `configure' can usually find the X include and library files automatically, but if it doesn't, you can use the `configure' options `--x-includes=DIR' and `--x-libraries=DIR' to specify their locations. 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'. Particular systems ================== On HP-UX, the default C compiler is not ANSI C compatible. If GNU CC is not installed, it is recommended to use the following options in order to use an ANSI C compiler: ./configure CC="cc -Ae -D_XOPEN_SOURCE=500" and if that doesn't work, install pre-built binaries of GCC for HP-UX. On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot parse its `' header file. The option `-nodtk' can be used as a workaround. If GNU CC is not installed, it is therefore recommended to try ./configure CC="cc" and if that doesn't work, try ./configure CC="cc -nodtk" On Solaris, don't put `/usr/ucb' early in your `PATH'. This directory contains several dysfunctional programs; working variants of these programs are available in `/usr/bin'. So, if you need `/usr/ucb' in your `PATH', put it _after_ `/usr/bin'. On Haiku, software installed for all users goes in `/boot/common', not `/usr/local'. It is recommended to use the following options: ./configure --prefix=/boot/common Specifying the System Type ========================== There may be some features `configure' cannot figure out automatically, but needs to determine by the type of machine the package will run on. Usually, assuming the package is built to be run on the _same_ architectures, `configure' can figure that out, but if it prints a message saying it cannot guess the machine type, give it the `--build=TYPE' option. TYPE can either be a short name for the system type, such as `sun4', or a canonical name which has the form: CPU-COMPANY-SYSTEM where SYSTEM can have one of these forms: OS KERNEL-OS See the file `config.sub' for the possible values of each field. If `config.sub' isn't included in this package, then this package doesn't need to know the machine type. If you are _building_ compiler tools for cross-compiling, you should use the option `--target=TYPE' to select the type of system they will produce code for. If you want to _use_ a cross compiler, that generates code for a platform different from the build platform, you should specify the "host" platform (i.e., that on which the generated programs will eventually be run) with `--host=TYPE'. 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 bug. Until the bug is fixed you can use this workaround: CONFIG_SHELL=/bin/bash /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'. `--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). `--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. *note Installation Names:: for more details, including other options available for fine-tuning the installation locations. `--no-create' `-n' Run the configure checks, but stop before creating any output files. `configure' also accepts some other, not widely useful, options. Run `configure --help' for more details. ibus-pinyin-1.5.0/po/0000775000175000017500000000000012064356726011417 500000000000000ibus-pinyin-1.5.0/po/zh_CN.po0000664000175000017500000001702411777055066012707 00000000000000# Simplified Chinese translation. # Copyright (C) YEAR Peng Huang # This file is distributed under the same license as the ibus-pinyin package. # Peng Huang , 2009. # msgid "" msgstr "" "Project-Id-Version: ibus-pinyin 1.2.99\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-09-06 10:38+0800\n" "PO-Revision-Date: 2009-09-20 16:05+8\n" "Last-Translator: Peng Huang \n" "Language-Team: Peng Huang \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/PYMain.cc:90 msgid "Pinyin input method" msgstr "拼音输入法" #: ../src/PYMain.cc:99 msgid "Pinyin (debug)" msgstr "拼音(调试)" #: ../src/PYMain.cc:100 msgid "Pinyin input method (debug)" msgstr "拼音输入法(调试)" #: ../src/PYMain.cc:109 msgid "Bopomofo (debug)" msgstr "注音(调试)" #: ../src/PYMain.cc:110 msgid "Bopomofo input method (debug)" msgstr "注音输入法(调试)" #: ../src/PYPinyinProperties.cc:42 ../setup/ibus-pinyin-preferences.ui.h:24 msgid "Chinese" msgstr "中文" #: ../src/PYPinyinProperties.cc:49 msgid "Full/Half width" msgstr "全角/半角" #: ../src/PYPinyinProperties.cc:56 msgid "Full/Half width punctuation" msgstr "半角符号" #: ../src/PYPinyinProperties.cc:63 msgid "Simplfied/Traditional Chinese" msgstr "简体/繁体中文" #: ../src/PYPinyinProperties.cc:66 ../src/PYPinyinProperties.cc:68 #: ../setup/ibus-pinyin-preferences.ui.h:55 msgid "Preferences" msgstr "首选项" #: ../setup/main.py:377 ../setup/ibus-pinyin-preferences.ui.h:10 #, no-c-format, python-format msgid "IBus Pinyin %s" msgstr "IBus 拼音 %s" #: ../setup/ibus-pinyin-preferences.ui.h:1 msgid "Bopomofo mode" msgstr "注音模式" #: ../setup/ibus-pinyin-preferences.ui.h:2 msgid "Correct pinyin" msgstr "拼音纠错" #: ../setup/ibus-pinyin-preferences.ui.h:3 msgid "Dictionary option" msgstr "词典选项" #: ../setup/ibus-pinyin-preferences.ui.h:4 msgid "Initial state" msgstr "初始状态" #: ../setup/ibus-pinyin-preferences.ui.h:5 msgid "Input Custom" msgstr "输入" #: ../setup/ibus-pinyin-preferences.ui.h:6 msgid "Pinyin mode" msgstr "拼音模式" #: ../setup/ibus-pinyin-preferences.ui.h:7 msgid "Selection mode" msgstr "选词模式" #: ../setup/ibus-pinyin-preferences.ui.h:8 msgid "UI" msgstr "外观" #: ../setup/ibus-pinyin-preferences.ui.h:11 msgid "" "\n" "Authors:\n" "Peng Huang\n" "BYVoid\n" "\n" "Contributors:\n" "koterpilla, Zerng07\n" "" msgstr "" "\n" "作者:\n" "Peng Huang\n" "BYVoid\n" "\n" "贡献者:\n" "koterpilla, Zerng07\n" "" #: ../setup/ibus-pinyin-preferences.ui.h:19 msgid "Copyright (c) 2009-2010 Peng Huang" msgstr "版权所有 (c) 2009-2010 黄鹏" #: ../setup/ibus-pinyin-preferences.ui.h:20 msgid "ABC" msgstr "智能ABC" #: ../setup/ibus-pinyin-preferences.ui.h:21 msgid "About" msgstr "关于" #: ../setup/ibus-pinyin-preferences.ui.h:22 msgid "Auto commit" msgstr "自动上词" #: ../setup/ibus-pinyin-preferences.ui.h:23 msgid "Bopomofo mode" msgstr "注音模式" #: ../setup/ibus-pinyin-preferences.ui.h:25 msgid "Chinese:" msgstr "中文:" #: ../setup/ibus-pinyin-preferences.ui.h:26 msgid "Dictionary" msgstr "词典" #: ../setup/ibus-pinyin-preferences.ui.h:27 msgid "Double pinyin" msgstr "双拼" #: ../setup/ibus-pinyin-preferences.ui.h:28 msgid "Edit custom phrases" msgstr "编辑自定义词组" #: ../setup/ibus-pinyin-preferences.ui.h:29 msgid "Enable Auxiliary Select Keys F1 .. F10" msgstr "启用辅助选词键F1 .. F10" #: ../setup/ibus-pinyin-preferences.ui.h:30 msgid "Enable Auxiliary Select Keys Numbers on Keypad" msgstr "启用数字键盘辅助选词键" #: ../setup/ibus-pinyin-preferences.ui.h:31 msgid "Enable Guidekey for Candidates Selection" msgstr "启用选词引导键" #: ../setup/ibus-pinyin-preferences.ui.h:32 msgid "Enable correct pinyin" msgstr "启动拼音纠错" #: ../setup/ibus-pinyin-preferences.ui.h:33 msgid "Enable fuzzy syllable" msgstr "启动模糊音" #: ../setup/ibus-pinyin-preferences.ui.h:34 msgid "English" msgstr "英文" #: ../setup/ibus-pinyin-preferences.ui.h:35 msgid "Eten" msgstr "倚天" #: ../setup/ibus-pinyin-preferences.ui.h:36 msgid "Full" msgstr "全角" #: ../setup/ibus-pinyin-preferences.ui.h:37 msgid "Full pinyin" msgstr "全拼" #: ../setup/ibus-pinyin-preferences.ui.h:38 msgid "Fuzzy syllable" msgstr "模糊音" #: ../setup/ibus-pinyin-preferences.ui.h:39 msgid "General" msgstr "常规" #: ../setup/ibus-pinyin-preferences.ui.h:40 msgid "GinYieh" msgstr "精业" #: ../setup/ibus-pinyin-preferences.ui.h:41 msgid "Half" msgstr "半角" #: ../setup/ibus-pinyin-preferences.ui.h:42 msgid "Half/full width:" msgstr "全角/半角:" #: ../setup/ibus-pinyin-preferences.ui.h:43 msgid "Horizontal" msgstr "水平" #: ../setup/ibus-pinyin-preferences.ui.h:44 msgid "IBM" msgstr "IBM" #: ../setup/ibus-pinyin-preferences.ui.h:45 msgid "Incomplete Bopomofo" msgstr "简拼" #: ../setup/ibus-pinyin-preferences.ui.h:46 msgid "Incomplete pinyin" msgstr "简拼" #: ../setup/ibus-pinyin-preferences.ui.h:47 msgid "Keyboard Mapping:" msgstr "键盘映射:" #: ../setup/ibus-pinyin-preferences.ui.h:48 msgid "Language:" msgstr "语言:" #: ../setup/ibus-pinyin-preferences.ui.h:49 msgid "MSPY" msgstr "微软拼音" #: ../setup/ibus-pinyin-preferences.ui.h:50 msgid "Number of candidates:" msgstr "每页显示候选词数:" #: ../setup/ibus-pinyin-preferences.ui.h:51 msgid "Orientation of candidates:" msgstr "候选词排列方向:" #: ../setup/ibus-pinyin-preferences.ui.h:52 msgid "PYJJ" msgstr "拼音加加" #: ../setup/ibus-pinyin-preferences.ui.h:53 msgid "Pinyin input method for IBus" msgstr "IBus 拼音输入法" #: ../setup/ibus-pinyin-preferences.ui.h:54 msgid "Pinyin mode" msgstr "拼音模式" #: ../setup/ibus-pinyin-preferences.ui.h:56 msgid "Punctuations:" msgstr "标点符号:" #: ../setup/ibus-pinyin-preferences.ui.h:57 msgid "Selection Keys:" msgstr "选词键:" #: ../setup/ibus-pinyin-preferences.ui.h:58 msgid "Show raw input of Double Pinyin" msgstr "显示双拼原始输入" #: ../setup/ibus-pinyin-preferences.ui.h:59 msgid "Simplified" msgstr "简体" #: ../setup/ibus-pinyin-preferences.ui.h:60 msgid "Standard" msgstr "标准" #: ../setup/ibus-pinyin-preferences.ui.h:61 msgid "Traditional" msgstr "繁体" #: ../setup/ibus-pinyin-preferences.ui.h:62 msgid "Use custom phrases" msgstr "使用自定义词组" #: ../setup/ibus-pinyin-preferences.ui.h:63 msgid "Vertical" msgstr "竖直" #: ../setup/ibus-pinyin-preferences.ui.h:64 msgid "XHE" msgstr "小鹤" #: ../setup/ibus-pinyin-preferences.ui.h:65 msgid "ZGPY" msgstr "紫光拼音" #: ../setup/ibus-pinyin-preferences.ui.h:66 msgid "ZRM" msgstr "自然码" #: ../setup/ibus-pinyin-preferences.ui.h:67 msgid "[,] [.] flip page" msgstr "[,][.]键翻页" #: ../setup/ibus-pinyin-preferences.ui.h:68 msgid "[-] [=] flip page" msgstr "[-][=]键翻页" #: ../setup/ibus-pinyin-preferences.ui.h:69 msgid "[Shift] select candidate" msgstr "[Shift]键选词" #: ../setup/ibus-pinyin-preferences.ui.h:70 msgid "http://ibus.googlecode.com" msgstr "http://ibus.googlecode.com" msgid "Feature of Enter key:" msgstr "Enter 键功能:" msgid "Other" msgstr "其他" msgid "Commit original text" msgstr "输出原本的英文字" msgid "Commit first candidate" msgstr "输出第一个候选词" ibus-pinyin-1.5.0/po/Makefile.in.in0000644000175000017500000001604612063702752014007 00000000000000# Makefile for program source directory in GNU NLS utilities package. # Copyright (C) 1995, 1996, 1997 by Ulrich Drepper # Copyright (C) 2004-2008 Rodney Dawes # # This file may be copied and used freely without restrictions. It may # be used in projects which are not available under a GNU Public License, # but which still want to provide support for the GNU gettext functionality. # # - Modified by Owen Taylor to use GETTEXT_PACKAGE # instead of PACKAGE and to look for po2tbl in ./ not in intl/ # # - Modified by jacob berkman to install # Makefile.in.in and po2tbl.sed.in for use with glib-gettextize # # - Modified by Rodney Dawes for use with intltool # # We have the following line for use by intltoolize: # INTLTOOL_MAKEFILE GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ PACKAGE = @PACKAGE@ VERSION = @VERSION@ SHELL = @SHELL@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ top_builddir = @top_builddir@ VPATH = @srcdir@ prefix = @prefix@ exec_prefix = @exec_prefix@ datadir = @datadir@ datarootdir = @datarootdir@ libdir = @libdir@ DATADIRNAME = @DATADIRNAME@ itlocaledir = $(prefix)/$(DATADIRNAME)/locale subdir = po install_sh = @install_sh@ # Automake >= 1.8 provides @mkdir_p@. # Until it can be supposed, use the safe fallback: mkdir_p = $(install_sh) -d INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ GMSGFMT = @GMSGFMT@ MSGFMT = @MSGFMT@ XGETTEXT = @XGETTEXT@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ MSGMERGE = INTLTOOL_EXTRACT="$(INTLTOOL_EXTRACT)" XGETTEXT="$(XGETTEXT)" srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --dist GENPOT = INTLTOOL_EXTRACT="$(INTLTOOL_EXTRACT)" XGETTEXT="$(XGETTEXT)" srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --pot ALL_LINGUAS = @ALL_LINGUAS@ PO_LINGUAS=$(shell if test -r $(srcdir)/LINGUAS; then grep -v "^\#" $(srcdir)/LINGUAS; else echo "$(ALL_LINGUAS)"; fi) USER_LINGUAS=$(shell if test -n "$(LINGUAS)"; then LLINGUAS="$(LINGUAS)"; ALINGUAS="$(ALL_LINGUAS)"; for lang in $$LLINGUAS; do if test -n "`grep \^$$lang$$ $(srcdir)/LINGUAS 2>/dev/null`" -o -n "`echo $$ALINGUAS|tr ' ' '\n'|grep \^$$lang$$`"; then printf "$$lang "; fi; done; fi) USE_LINGUAS=$(shell if test -n "$(USER_LINGUAS)" -o -n "$(LINGUAS)"; then LLINGUAS="$(USER_LINGUAS)"; else if test -n "$(PO_LINGUAS)"; then LLINGUAS="$(PO_LINGUAS)"; else LLINGUAS="$(ALL_LINGUAS)"; fi; fi; for lang in $$LLINGUAS; do printf "$$lang "; done) POFILES=$(shell LINGUAS="$(PO_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.po "; done) DISTFILES = Makefile.in.in POTFILES.in $(POFILES) EXTRA_DISTFILES = ChangeLog POTFILES.skip Makevars LINGUAS POTFILES = \ # This comment gets stripped out CATALOGS=$(shell LINGUAS="$(USE_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.gmo "; done) .SUFFIXES: .SUFFIXES: .po .pox .gmo .mo .msg .cat AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ INTLTOOL_V_MSGFMT = $(INTLTOOL__v_MSGFMT_$(V)) INTLTOOL__v_MSGFMT_= $(INTLTOOL__v_MSGFMT_$(AM_DEFAULT_VERBOSITY)) INTLTOOL__v_MSGFMT_0 = @echo " MSGFMT" $@; .po.pox: $(MAKE) $(GETTEXT_PACKAGE).pot $(MSGMERGE) $< $(GETTEXT_PACKAGE).pot -o $*.pox .po.mo: $(INTLTOOL_V_MSGFMT)$(MSGFMT) -o $@ $< .po.gmo: $(INTLTOOL_V_MSGFMT)file=`echo $* | sed 's,.*/,,'`.gmo \ && rm -f $$file && $(GMSGFMT) -o $$file $< .po.cat: sed -f ../intl/po2msg.sed < $< > $*.msg \ && rm -f $@ && gencat $@ $*.msg all: all-@USE_NLS@ all-yes: $(CATALOGS) all-no: $(GETTEXT_PACKAGE).pot: $(POTFILES) $(GENPOT) install: install-data install-data: install-data-@USE_NLS@ install-data-no: all install-data-yes: all linguas="$(USE_LINGUAS)"; \ for lang in $$linguas; do \ dir=$(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES; \ $(mkdir_p) $$dir; \ if test -r $$lang.gmo; then \ $(INSTALL_DATA) $$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \ echo "installing $$lang.gmo as $$dir/$(GETTEXT_PACKAGE).mo"; \ else \ $(INSTALL_DATA) $(srcdir)/$$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \ echo "installing $(srcdir)/$$lang.gmo as" \ "$$dir/$(GETTEXT_PACKAGE).mo"; \ fi; \ if test -r $$lang.gmo.m; then \ $(INSTALL_DATA) $$lang.gmo.m $$dir/$(GETTEXT_PACKAGE).mo.m; \ echo "installing $$lang.gmo.m as $$dir/$(GETTEXT_PACKAGE).mo.m"; \ else \ if test -r $(srcdir)/$$lang.gmo.m ; then \ $(INSTALL_DATA) $(srcdir)/$$lang.gmo.m \ $$dir/$(GETTEXT_PACKAGE).mo.m; \ echo "installing $(srcdir)/$$lang.gmo.m as" \ "$$dir/$(GETTEXT_PACKAGE).mo.m"; \ else \ true; \ fi; \ fi; \ done # Empty stubs to satisfy archaic automake needs dvi info ctags tags CTAGS TAGS ID: # Define this as empty until I found a useful application. install-exec installcheck: uninstall: linguas="$(USE_LINGUAS)"; \ for lang in $$linguas; do \ rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \ rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \ done check: all $(GETTEXT_PACKAGE).pot rm -f missing notexist srcdir=$(srcdir) $(INTLTOOL_UPDATE) -m if [ -r missing -o -r notexist ]; then \ exit 1; \ fi mostlyclean: rm -f *.pox $(GETTEXT_PACKAGE).pot *.old.po cat-id-tbl.tmp rm -f .intltool-merge-cache clean: mostlyclean distclean: clean rm -f Makefile Makefile.in POTFILES stamp-it rm -f *.mo *.msg *.cat *.cat.m *.gmo maintainer-clean: distclean @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." rm -f Makefile.in.in distdir = ../$(PACKAGE)-$(VERSION)/$(subdir) dist distdir: $(DISTFILES) dists="$(DISTFILES)"; \ extra_dists="$(EXTRA_DISTFILES)"; \ for file in $$extra_dists; do \ test -f $(srcdir)/$$file && dists="$$dists $(srcdir)/$$file"; \ done; \ for file in $$dists; do \ test -f $$file || file="$(srcdir)/$$file"; \ ln $$file $(distdir) 2> /dev/null \ || cp -p $$file $(distdir); \ done update-po: Makefile $(MAKE) $(GETTEXT_PACKAGE).pot tmpdir=`pwd`; \ linguas="$(USE_LINGUAS)"; \ for lang in $$linguas; do \ echo "$$lang:"; \ result="`$(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang`"; \ if $$result; then \ if cmp $(srcdir)/$$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ rm -f $$tmpdir/$$lang.new.po; \ else \ if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ :; \ else \ echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ rm -f $$tmpdir/$$lang.new.po; \ exit 1; \ fi; \ fi; \ else \ echo "msgmerge for $$lang.gmo failed!"; \ rm -f $$tmpdir/$$lang.new.po; \ fi; \ done Makefile POTFILES: stamp-it @if test ! -f $@; then \ rm -f stamp-it; \ $(MAKE) stamp-it; \ fi stamp-it: Makefile.in.in $(top_builddir)/config.status POTFILES.in cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/Makefile.in CONFIG_HEADERS= CONFIG_LINKS= \ $(SHELL) ./config.status # Tell versions [3.59,3.63) of GNU make not to export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: ibus-pinyin-1.5.0/po/POTFILES.skip0000664000175000017500000000014012006506456013440 00000000000000data/ibus-setup-bopomofo.desktop.in data/ibus-setup-pinyin.desktop.in data/db/android/pydict.py ibus-pinyin-1.5.0/po/POTFILES.in0000664000175000017500000000065612006506456013114 00000000000000data/ibus-setup-bopomofo.desktop.in.in data/ibus-setup-pinyin.desktop.in.in src/PYConfig.cc src/PYDoublePinyinEditor.cc src/PYDynamicSpecialPhrase.cc src/PYEditor.cc src/PYEngine.cc src/PYExtEditor.cc src/PYFallbackEditor.cc src/PYFullPinyinEditor.cc src/PYHalfFullConverter.cc src/PYMain.cc src/PYPinyinEditor.cc src/PYPinyinEngine.cc src/PYPinyinProperties.cc setup/main.py [type: gettext/glade]setup/ibus-pinyin-preferences.ui ibus-pinyin-1.5.0/po/fr.po0000664000175000017500000002015511777055066012314 00000000000000# French translations for PACKAGE package # Traductions françaises du paquet PACKAGE. # Copyright (C) 2012 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Ma Jiehong , 2012. # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2012-03-19 21:21+0100\n" "PO-Revision-Date: 2012-03-19 22:13+0100\n" "Last-Translator: Ma Jiehong \n" "Language-Team: French\n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #: ../src/PYMain.cc:95 msgid "Pinyin input method" msgstr "Méthode de saisie Pinyin" #: ../src/PYMain.cc:104 msgid "Pinyin (debug)" msgstr "Pinyin (débug)" #: ../src/PYMain.cc:105 msgid "Pinyin input method (debug)" msgstr "Méthode de saisie Pinyin (débug)" #: ../src/PYMain.cc:114 msgid "Bopomofo (debug)" msgstr "Bopomofo (débug)" #: ../src/PYMain.cc:115 msgid "Bopomofo input method (debug)" msgstr "Méthode de saisie Bopomofo (débug)" #: ../src/PYPinyinProperties.cc:42 ../setup/ibus-pinyin-preferences.ui.h:5 msgid "Chinese" msgstr "Chinois" #: ../src/PYPinyinProperties.cc:49 msgid "Full/Half width" msgstr "Chasse" #: ../src/PYPinyinProperties.cc:56 msgid "Full/Half width punctuation" msgstr "Chasse de la ponctuation pleine/demie" #: ../src/PYPinyinProperties.cc:63 msgid "Simplfied/Traditional Chinese" msgstr "Chinois simplifié/traditionnel" #: ../src/PYPinyinProperties.cc:66 ../src/PYPinyinProperties.cc:68 #: ../setup/ibus-pinyin-preferences.ui.h:1 msgid "Preferences" msgstr "Préférences" #: ../setup/main.py:382 ../setup/ibus-pinyin-preferences.ui.h:50 #, no-c-format, python-format msgid "IBus Pinyin %s" msgstr "Ibus Pinyin %s" #: ../setup/ibus-pinyin-preferences.ui.h:2 msgid "Language:" msgstr "Langue :" #: ../setup/ibus-pinyin-preferences.ui.h:3 msgid "Half/full width:" msgstr "Chasse :" #: ../setup/ibus-pinyin-preferences.ui.h:4 msgid "Punctuations:" msgstr "Chasse de la ponctuation :" #: ../setup/ibus-pinyin-preferences.ui.h:6 msgid "English" msgstr "Anglais" #: ../setup/ibus-pinyin-preferences.ui.h:7 msgid "Full" msgstr "Pleine" #: ../setup/ibus-pinyin-preferences.ui.h:8 msgid "Half" msgstr "Demie" #: ../setup/ibus-pinyin-preferences.ui.h:9 msgid "Chinese:" msgstr "Chinois" #: ../setup/ibus-pinyin-preferences.ui.h:10 msgid "Simplified" msgstr "Simplifié" #: ../setup/ibus-pinyin-preferences.ui.h:11 msgid "Traditional" msgstr "Traditionnel" #: ../setup/ibus-pinyin-preferences.ui.h:12 msgid "Initial state" msgstr "État initial" #: ../setup/ibus-pinyin-preferences.ui.h:13 msgid "Orientation of candidates:" msgstr "Orientation des candidats :" #: ../setup/ibus-pinyin-preferences.ui.h:14 msgid "Number of candidates:" msgstr "Nombre de candidats :" #: ../setup/ibus-pinyin-preferences.ui.h:15 msgid "UI" msgstr "UI" #: ../setup/ibus-pinyin-preferences.ui.h:16 msgid "General" msgstr "Général" #: ../setup/ibus-pinyin-preferences.ui.h:17 msgid "Full pinyin" msgstr "Pinyin complet" #: ../setup/ibus-pinyin-preferences.ui.h:18 msgid "Double pinyin" msgstr "Pinyin double" #: ../setup/ibus-pinyin-preferences.ui.h:19 msgid "Show raw input of Double Pinyin" msgstr "Montrer le pinyin non formaté du pinyin double" #: ../setup/ibus-pinyin-preferences.ui.h:20 msgid "Incomplete pinyin" msgstr "Pinyin incomplet" #: ../setup/ibus-pinyin-preferences.ui.h:21 msgid "Pinyin mode" msgstr "Mode Pinyin" #: ../setup/ibus-pinyin-preferences.ui.h:22 msgid "[Shift] select candidate" msgstr "[Shift] sélectionne le candidat" #: ../setup/ibus-pinyin-preferences.ui.h:23 msgid "[-] [=] flip page" msgstr "[-] [=] change de page" #: ../setup/ibus-pinyin-preferences.ui.h:24 msgid "[,] [.] flip page" msgstr "[,] [.] change de page" #: ../setup/ibus-pinyin-preferences.ui.h:25 msgid "Auto commit" msgstr "Validation automatique" #: ../setup/ibus-pinyin-preferences.ui.h:26 msgid "Input Custom" msgstr "Personalisation" #: ../setup/ibus-pinyin-preferences.ui.h:27 msgid "Enable correct pinyin" msgstr "Activer la correction automatique du pinyin" #: ../setup/ibus-pinyin-preferences.ui.h:28 msgid "Correct pinyin" msgstr "Correction automatique du pinyin" #: ../setup/ibus-pinyin-preferences.ui.h:29 msgid "Pinyin mode" msgstr "Mode Pinyin" #: ../setup/ibus-pinyin-preferences.ui.h:30 msgid "Incomplete Bopomofo" msgstr "Bopomofo incomplet" #: ../setup/ibus-pinyin-preferences.ui.h:31 msgid "Keyboard Mapping:" msgstr "Type de clavier :" #: ../setup/ibus-pinyin-preferences.ui.h:32 msgid "Bopomofo mode" msgstr "Mode Bopomofo" #: ../setup/ibus-pinyin-preferences.ui.h:33 msgid "Selection Keys:" msgstr "Touches de sélection :" #: ../setup/ibus-pinyin-preferences.ui.h:34 msgid "Enable Guidekey for Candidates Selection" msgstr "Activer le guide de sélection des candidats" #: ../setup/ibus-pinyin-preferences.ui.h:35 msgid "Enable Auxiliary Select Keys F1 .. F10" msgstr "Activer les touches auxiliaires (F1…F10)" #: ../setup/ibus-pinyin-preferences.ui.h:36 msgid "Enable Auxiliary Select Keys Numbers on Keypad" msgstr "Activer la sélection auxiliaire au pavé numérique" #: ../setup/ibus-pinyin-preferences.ui.h:37 msgid "Selection mode" msgstr "Mode de sélection" #: ../setup/ibus-pinyin-preferences.ui.h:38 msgid "Feature of Enter key:" msgstr "Action de la toucher Entrer :" #: ../setup/ibus-pinyin-preferences.ui.h:39 msgid "Commit first candidate" msgstr "Valider le premier candidat" #: ../setup/ibus-pinyin-preferences.ui.h:40 msgid "Commit original text" msgstr "Valider le texte brut" #: ../setup/ibus-pinyin-preferences.ui.h:41 msgid "Other" msgstr "Autre" #: ../setup/ibus-pinyin-preferences.ui.h:42 msgid "Bopomofo mode" msgstr "Mode Bopomofo" #: ../setup/ibus-pinyin-preferences.ui.h:43 msgid "Enable fuzzy syllable" msgstr "Activer les syllabes floues" #: ../setup/ibus-pinyin-preferences.ui.h:44 msgid "Fuzzy syllable" msgstr "Syllabes floues" #: ../setup/ibus-pinyin-preferences.ui.h:45 msgid "Use custom phrases" msgstr "Utiliser des phrases personnalisées" #: ../setup/ibus-pinyin-preferences.ui.h:46 msgid "Edit custom phrases" msgstr "Éditer les phrases perso…" #: ../setup/ibus-pinyin-preferences.ui.h:47 msgid "Dictionary option" msgstr "Dictionnaire" #: ../setup/ibus-pinyin-preferences.ui.h:48 msgid "Dictionary" msgstr "Dictionnaire" #: ../setup/ibus-pinyin-preferences.ui.h:51 msgid "Pinyin input method for IBus" msgstr "Méthode de saisie Pinyin pour IBus" #: ../setup/ibus-pinyin-preferences.ui.h:52 msgid "Copyright (c) 2009-2010 Peng Huang" msgstr "Copyright (c) 2009-2010 Peng Huang" #: ../setup/ibus-pinyin-preferences.ui.h:53 msgid "http://ibus.googlecode.com" msgstr "http://ibus.googlecode.com" #: ../setup/ibus-pinyin-preferences.ui.h:54 msgid "" "\n" "Authors:\n" "Peng Huang\n" "BYVoid\n" "Peng Wu\n" "\n" "Contributors:\n" "koterpilla, Zerng07\n" "" msgstr "" "\n" "Autheurs :\n" "Peng Huang\n" "BYVoid\n" "Peng Wu\n" "\n" "Contributeurs :\n" "koterpilla, Zerng07\n" "" #: ../setup/ibus-pinyin-preferences.ui.h:63 msgid "About" msgstr "À propos" #: ../setup/ibus-pinyin-preferences.ui.h:64 msgid "Standard" msgstr "Standard" #: ../setup/ibus-pinyin-preferences.ui.h:65 msgid "GinYieh" msgstr "GinYieh" #: ../setup/ibus-pinyin-preferences.ui.h:66 msgid "Eten" msgstr "Eten" #: ../setup/ibus-pinyin-preferences.ui.h:67 msgid "IBM" msgstr "IBM" #: ../setup/ibus-pinyin-preferences.ui.h:68 msgid "MSPY" msgstr "MSPY" #: ../setup/ibus-pinyin-preferences.ui.h:69 msgid "ZRM" msgstr "ZRM" #: ../setup/ibus-pinyin-preferences.ui.h:70 msgid "ABC" msgstr "ABC" #: ../setup/ibus-pinyin-preferences.ui.h:71 msgid "ZGPY" msgstr "ZGPY" #: ../setup/ibus-pinyin-preferences.ui.h:72 msgid "PYJJ" msgstr "PYJJ" #: ../setup/ibus-pinyin-preferences.ui.h:73 msgid "XHE" msgstr "XHE" #: ../setup/ibus-pinyin-preferences.ui.h:74 msgid "Horizontal" msgstr "Horizontal" #: ../setup/ibus-pinyin-preferences.ui.h:75 msgid "Vertical" msgstr "Vertical" ibus-pinyin-1.5.0/po/ru.po0000664000175000017500000002550111777055066012333 00000000000000# Russian translations for PACKAGE package. # Copyright (C) 2009 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Alexey Kotlyarov , 2009. # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-09-06 10:38+0800\n" "PO-Revision-Date: 2009-10-14 09:44+0300\n" "Last-Translator: Alexey Kotlyarov \n" "Language-Team: Russian\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" "10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #: ../src/PYMain.cc:90 msgid "Pinyin input method" msgstr "Метод ввода пиньинь" #: ../src/PYMain.cc:99 #, fuzzy msgid "Pinyin (debug)" msgstr "Пиньинь" #: ../src/PYMain.cc:100 #, fuzzy msgid "Pinyin input method (debug)" msgstr "Метод ввода пиньинь" #: ../src/PYMain.cc:109 msgid "Bopomofo (debug)" msgstr "" #: ../src/PYMain.cc:110 #, fuzzy msgid "Bopomofo input method (debug)" msgstr "Метод ввода пиньинь" #: ../src/PYPinyinProperties.cc:42 ../setup/ibus-pinyin-preferences.ui.h:24 msgid "Chinese" msgstr "Китайский" #: ../src/PYPinyinProperties.cc:49 msgid "Full/Half width" msgstr "Полная/половинная ширина" #: ../src/PYPinyinProperties.cc:56 msgid "Full/Half width punctuation" msgstr "Знаки препинания полной/половинной ширины" #: ../src/PYPinyinProperties.cc:63 msgid "Simplfied/Traditional Chinese" msgstr "Упрощенные/традиционные иероглифы" #: ../src/PYPinyinProperties.cc:66 ../src/PYPinyinProperties.cc:68 #: ../setup/ibus-pinyin-preferences.ui.h:55 #, fuzzy msgid "Preferences" msgstr "Настройки пиньиня" #: ../setup/main.py:377 ../setup/ibus-pinyin-preferences.ui.h:10 #, no-c-format, python-format msgid "IBus Pinyin %s" msgstr "IBus Пиньинь %s" #: ../setup/ibus-pinyin-preferences.ui.h:1 #, fuzzy msgid "Bopomofo mode" msgstr "Пиньинь" #: ../setup/ibus-pinyin-preferences.ui.h:2 #, fuzzy msgid "Correct pinyin" msgstr "Исправления" #: ../setup/ibus-pinyin-preferences.ui.h:3 #, fuzzy msgid "Dictionary option" msgstr "Другие" #: ../setup/ibus-pinyin-preferences.ui.h:4 msgid "Initial state" msgstr "Начальное состояние" #: ../setup/ibus-pinyin-preferences.ui.h:5 #, fuzzy msgid "Input Custom" msgstr "Начальное состояние" #: ../setup/ibus-pinyin-preferences.ui.h:6 #, fuzzy msgid "Pinyin mode" msgstr "Пиньинь" #: ../setup/ibus-pinyin-preferences.ui.h:7 #, fuzzy msgid "Selection mode" msgstr "Пиньинь" #: ../setup/ibus-pinyin-preferences.ui.h:8 #, fuzzy msgid "UI" msgstr "Другие" #: ../setup/ibus-pinyin-preferences.ui.h:11 msgid "" "\n" "Authors:\n" "Peng Huang\n" "BYVoid\n" "\n" "Contributors:\n" "koterpilla, Zerng07\n" "" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:19 msgid "Copyright (c) 2009-2010 Peng Huang" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:20 msgid "ABC" msgstr "ABC" #: ../setup/ibus-pinyin-preferences.ui.h:21 msgid "About" msgstr "О программе" #: ../setup/ibus-pinyin-preferences.ui.h:22 msgid "Auto commit" msgstr "Автоматически подтверждать фразу" #: ../setup/ibus-pinyin-preferences.ui.h:23 #, fuzzy msgid "Bopomofo mode" msgstr "Метод ввода пиньинь" #: ../setup/ibus-pinyin-preferences.ui.h:25 msgid "Chinese:" msgstr "Иероглифы:" #: ../setup/ibus-pinyin-preferences.ui.h:26 msgid "Dictionary" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:27 msgid "Double pinyin" msgstr "Двойной пиньинь" #: ../setup/ibus-pinyin-preferences.ui.h:28 msgid "Edit custom phrases" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:29 msgid "Enable Auxiliary Select Keys F1 .. F10" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:30 msgid "Enable Auxiliary Select Keys Numbers on Keypad" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:31 msgid "Enable Guidekey for Candidates Selection" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:32 #, fuzzy msgid "Enable correct pinyin" msgstr "Исправления" #: ../setup/ibus-pinyin-preferences.ui.h:33 #, fuzzy msgid "Enable fuzzy syllable" msgstr "Включить нечеткий пиньинь." #: ../setup/ibus-pinyin-preferences.ui.h:34 msgid "English" msgstr "Английский" #: ../setup/ibus-pinyin-preferences.ui.h:35 msgid "Eten" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:36 msgid "Full" msgstr "Полная" #: ../setup/ibus-pinyin-preferences.ui.h:37 msgid "Full pinyin" msgstr "Полный пиньинь" #: ../setup/ibus-pinyin-preferences.ui.h:38 msgid "Fuzzy syllable" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:39 msgid "General" msgstr "Общие" #: ../setup/ibus-pinyin-preferences.ui.h:40 msgid "GinYieh" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:41 msgid "Half" msgstr "Половинная" #: ../setup/ibus-pinyin-preferences.ui.h:42 msgid "Half/full width:" msgstr "Полная/половинная ширина:" #: ../setup/ibus-pinyin-preferences.ui.h:43 msgid "Horizontal" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:44 msgid "IBM" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:45 #, fuzzy msgid "Incomplete Bopomofo" msgstr "Неполный пиньинь" #: ../setup/ibus-pinyin-preferences.ui.h:46 msgid "Incomplete pinyin" msgstr "Неполный пиньинь" #: ../setup/ibus-pinyin-preferences.ui.h:47 msgid "Keyboard Mapping:" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:48 msgid "Language:" msgstr "Язык:" #: ../setup/ibus-pinyin-preferences.ui.h:49 msgid "MSPY" msgstr "MSPY" #: ../setup/ibus-pinyin-preferences.ui.h:50 msgid "Number of candidates:" msgstr "Число кандидатов" #: ../setup/ibus-pinyin-preferences.ui.h:51 msgid "Orientation of candidates:" msgstr "Число кандидатов" #: ../setup/ibus-pinyin-preferences.ui.h:52 msgid "PYJJ" msgstr "PYJJ" #: ../setup/ibus-pinyin-preferences.ui.h:53 msgid "Pinyin input method for IBus" msgstr "Метод ввода пиньинь для IBus" #: ../setup/ibus-pinyin-preferences.ui.h:54 #, fuzzy msgid "Pinyin mode" msgstr "Пиньинь" #: ../setup/ibus-pinyin-preferences.ui.h:56 msgid "Punctuations:" msgstr "Знаки препинания:" #: ../setup/ibus-pinyin-preferences.ui.h:57 msgid "Selection Keys:" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:58 msgid "Show raw input of Double Pinyin" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:59 msgid "Simplified" msgstr "Упрощенные" #: ../setup/ibus-pinyin-preferences.ui.h:60 msgid "Standard" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:61 msgid "Traditional" msgstr "Традиционные" #: ../setup/ibus-pinyin-preferences.ui.h:62 msgid "Use custom phrases" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:63 msgid "Vertical" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:64 msgid "XHE" msgstr "" #: ../setup/ibus-pinyin-preferences.ui.h:65 msgid "ZGPY" msgstr "ZGPY" #: ../setup/ibus-pinyin-preferences.ui.h:66 msgid "ZRM" msgstr "ZRM" #: ../setup/ibus-pinyin-preferences.ui.h:67 msgid "[,] [.] flip page" msgstr "Использовать клавиши [,] [.] для переключения страниц" #: ../setup/ibus-pinyin-preferences.ui.h:68 msgid "[-] [=] flip page" msgstr "Использовать клавиши [-] [=] для переключения страниц" #: ../setup/ibus-pinyin-preferences.ui.h:69 msgid "[Shift] select candidate" msgstr "Использовать [Shift] для выбора кандидатов" #: ../setup/ibus-pinyin-preferences.ui.h:70 msgid "http://ibus.googlecode.com" msgstr "http://ibus.googlecode.com" #~ msgid "Pinyin preferences" #~ msgstr "Настройки пиньиня" #~ msgid "Others" #~ msgstr "Другие" #~ msgid "Enable incomplete pinyin (like zh g)." #~ msgstr "Включить неполный пиньинь (например, zh g)." #~ msgid "Enable pinyin correcting." #~ msgstr "Включить исправление пиньиня." #~ msgid "Fuzzy pinyin" #~ msgstr "Нечеткий пиньинь" #~ msgid "Schema:" #~ msgstr "Схема:" #~ msgid "Select double pinyin schema." #~ msgstr "Выбор схемы двойного пиньиня." #~ msgid "Setup the initial state of pinyin input method." #~ msgstr "Настройка начального состояния метода ввода." #~ msgid "Show candidates in traditional Chinese" #~ msgstr "Показывать кандидаты традиционными иероглифами." #~ msgid "Use double pinyin." #~ msgstr "Использовать двойной пиньинь (шуанпинь)." #~ msgid "Use full pinyin." #~ msgstr "Использовать полный пиньинь." #, fuzzy #~ msgid "" #~ "Copyright © 2009\n" #~ "Peng Huang <shawn.p.huang@gmail.com>,\n" #~ "BYVoid <byvoid1@gmail.com>" #~ msgstr "" #~ "Copyright © 2009 Хуан Пэн <shawn.p.huang@gmail.com>" #~ msgid "Enable automatic commit phrase." #~ msgstr "Подтверждать набранную фразу при вводе знаков препинания." #~ msgid "Setup the number of candidates show in one page of lookup table." #~ msgstr "Число кандидатов на одной странице таблицы поиска." #, fuzzy #~ msgid "" #~ "Show candidates in traditional Chinese, if the input method is in " #~ "traditional Chinese inputing mode." #~ msgstr "" #~ "Показывать кандидаты традиционными иероглифами, если включен ввод " #~ "традиционных иероглифов." #~ msgid "Use [,] [.] key to page up/down the lookup table." #~ msgstr "" #~ "Использовать клавиши [,] [.] для перемещения вверх-вниз по таблице поиска." #~ msgid "Use [-] [=] key to page up/down the lookup table." #~ msgstr "" #~ "Использовать клавиши [-] [=] для перемещения вверх-вниз по таблице поиска." #~ msgid "" #~ "Use left and right shift keys to select the second and thrid candidates." #~ msgstr "" #~ "Использовать клавиши \"влево\" и \"вправо\" для выбора второго и третьего " #~ "кандидатов" #~ msgid "+-*/=%" #~ msgstr "+-*/=%" #~ msgid "Half width punctuations:" #~ msgstr "Знаки препинания половинной ширины:" ibus-pinyin-1.5.0/po/zh_HK.po0000664000175000017500000001646711777055066012723 00000000000000msgid "" msgstr "" "Project-Id-Version: ibus-pinyin 1.3.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-09-06 10:38+0800\n" "PO-Revision-Date: 2009-09-20 16:05+8\n" "Last-Translator: BYVoid \n" "Language-Team: BYVoid \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/PYMain.cc:90 msgid "Pinyin input method" msgstr "拼音輸入法" #: ../src/PYMain.cc:99 msgid "Pinyin (debug)" msgstr "拼音(調試)" #: ../src/PYMain.cc:100 msgid "Pinyin input method (debug)" msgstr "拼音輸入法(調試)" #: ../src/PYMain.cc:109 msgid "Bopomofo (debug)" msgstr "注音(調試)" #: ../src/PYMain.cc:110 msgid "Bopomofo input method (debug)" msgstr "注音輸入法(調試)" #: ../src/PYPinyinProperties.cc:42 ../setup/ibus-pinyin-preferences.ui.h:24 msgid "Chinese" msgstr "中文" #: ../src/PYPinyinProperties.cc:49 msgid "Full/Half width" msgstr "全形/半形" #: ../src/PYPinyinProperties.cc:56 msgid "Full/Half width punctuation" msgstr "半形符號" #: ../src/PYPinyinProperties.cc:63 msgid "Simplfied/Traditional Chinese" msgstr "簡體/繁體中文" #: ../src/PYPinyinProperties.cc:66 ../src/PYPinyinProperties.cc:68 #: ../setup/ibus-pinyin-preferences.ui.h:55 msgid "Preferences" msgstr "偏好設定" #: ../setup/main.py:377 ../setup/ibus-pinyin-preferences.ui.h:10 #, no-c-format, python-format msgid "IBus Pinyin %s" msgstr "IBus 拼音 %s" #: ../setup/ibus-pinyin-preferences.ui.h:1 msgid "Bopomofo mode" msgstr "注音模式" #: ../setup/ibus-pinyin-preferences.ui.h:2 msgid "Correct pinyin" msgstr "拼音糾錯" #: ../setup/ibus-pinyin-preferences.ui.h:3 msgid "Dictionary option" msgstr "詞典選項" #: ../setup/ibus-pinyin-preferences.ui.h:4 msgid "Initial state" msgstr "初始狀態" #: ../setup/ibus-pinyin-preferences.ui.h:5 msgid "Input Custom" msgstr "輸入配置" #: ../setup/ibus-pinyin-preferences.ui.h:6 msgid "Pinyin mode" msgstr "拼音模式" #: ../setup/ibus-pinyin-preferences.ui.h:7 msgid "Selection mode" msgstr "選詞模式" #: ../setup/ibus-pinyin-preferences.ui.h:8 msgid "UI" msgstr "外觀" #: ../setup/ibus-pinyin-preferences.ui.h:11 msgid "" "\n" "Authors:\n" "Peng Huang\n" "BYVoid\n" "\n" "Contributors:\n" "koterpilla, Zerng07\n" "" msgstr "" "\n" "作者:\n" "Peng Huang\n" "BYVoid\n" "\n" "貢獻者:\n" "koterpilla, Zerng07\n" "" #: ../setup/ibus-pinyin-preferences.ui.h:19 msgid "Copyright (c) 2009-2010 Peng Huang" msgstr "版權所有 (c) 2009-2010 黃鵬" #: ../setup/ibus-pinyin-preferences.ui.h:20 msgid "ABC" msgstr "智能ABC" #: ../setup/ibus-pinyin-preferences.ui.h:21 msgid "About" msgstr "關於" #: ../setup/ibus-pinyin-preferences.ui.h:22 msgid "Auto commit" msgstr "自動上詞" #: ../setup/ibus-pinyin-preferences.ui.h:23 msgid "Bopomofo mode" msgstr "注音模式" #: ../setup/ibus-pinyin-preferences.ui.h:25 msgid "Chinese:" msgstr "中文:" #: ../setup/ibus-pinyin-preferences.ui.h:26 msgid "Dictionary" msgstr "詞典" #: ../setup/ibus-pinyin-preferences.ui.h:27 msgid "Double pinyin" msgstr "雙拼" #: ../setup/ibus-pinyin-preferences.ui.h:28 msgid "Edit custom phrases" msgstr "編輯自定義詞組" #: ../setup/ibus-pinyin-preferences.ui.h:29 msgid "Enable Auxiliary Select Keys F1 .. F10" msgstr "啓用輔助選詞鍵F1 .. F10" #: ../setup/ibus-pinyin-preferences.ui.h:30 msgid "Enable Auxiliary Select Keys Numbers on Keypad" msgstr "啓用數字鍵盤輔助選詞鍵" #: ../setup/ibus-pinyin-preferences.ui.h:31 msgid "Enable Guidekey for Candidates Selection" msgstr "啓用選詞引導鍵" #: ../setup/ibus-pinyin-preferences.ui.h:32 msgid "Enable correct pinyin" msgstr "啓用拼音糾錯" #: ../setup/ibus-pinyin-preferences.ui.h:33 msgid "Enable fuzzy syllable" msgstr "啓用模糊音" #: ../setup/ibus-pinyin-preferences.ui.h:34 msgid "English" msgstr "英文" #: ../setup/ibus-pinyin-preferences.ui.h:35 msgid "Eten" msgstr "倚天" #: ../setup/ibus-pinyin-preferences.ui.h:36 msgid "Full" msgstr "全形" #: ../setup/ibus-pinyin-preferences.ui.h:37 msgid "Full pinyin" msgstr "全拼" #: ../setup/ibus-pinyin-preferences.ui.h:38 msgid "Fuzzy syllable" msgstr "模糊音" #: ../setup/ibus-pinyin-preferences.ui.h:39 msgid "General" msgstr "常規" #: ../setup/ibus-pinyin-preferences.ui.h:40 msgid "GinYieh" msgstr "精業" #: ../setup/ibus-pinyin-preferences.ui.h:41 msgid "Half" msgstr "半形" #: ../setup/ibus-pinyin-preferences.ui.h:42 msgid "Half/full width:" msgstr "全形/半形:" #: ../setup/ibus-pinyin-preferences.ui.h:43 msgid "Horizontal" msgstr "水平" #: ../setup/ibus-pinyin-preferences.ui.h:44 msgid "IBM" msgstr "IBM" #: ../setup/ibus-pinyin-preferences.ui.h:45 msgid "Incomplete Bopomofo" msgstr "簡拼" #: ../setup/ibus-pinyin-preferences.ui.h:46 msgid "Incomplete pinyin" msgstr "簡拼" #: ../setup/ibus-pinyin-preferences.ui.h:47 msgid "Keyboard Mapping:" msgstr "鍵盤映射:" #: ../setup/ibus-pinyin-preferences.ui.h:48 msgid "Language:" msgstr "語言:" #: ../setup/ibus-pinyin-preferences.ui.h:49 msgid "MSPY" msgstr "微軟拼音" #: ../setup/ibus-pinyin-preferences.ui.h:50 msgid "Number of candidates:" msgstr "每頁顯示候選詞條目數量:" #: ../setup/ibus-pinyin-preferences.ui.h:51 msgid "Orientation of candidates:" msgstr "候選詞排列方向:" #: ../setup/ibus-pinyin-preferences.ui.h:52 msgid "PYJJ" msgstr "拼音加加" #: ../setup/ibus-pinyin-preferences.ui.h:53 msgid "Pinyin input method for IBus" msgstr "IBus 拼音輸入法" #: ../setup/ibus-pinyin-preferences.ui.h:54 msgid "Pinyin mode" msgstr "拼音模式" #: ../setup/ibus-pinyin-preferences.ui.h:56 msgid "Punctuations:" msgstr "標點符號:" #: ../setup/ibus-pinyin-preferences.ui.h:57 msgid "Selection Keys:" msgstr "選詞鍵:" #: ../setup/ibus-pinyin-preferences.ui.h:58 msgid "Show raw input of Double Pinyin" msgstr "顯示雙拼原始輸入" #: ../setup/ibus-pinyin-preferences.ui.h:59 msgid "Simplified" msgstr "簡體" #: ../setup/ibus-pinyin-preferences.ui.h:60 msgid "Standard" msgstr "標準" #: ../setup/ibus-pinyin-preferences.ui.h:61 msgid "Traditional" msgstr "繁體" #: ../setup/ibus-pinyin-preferences.ui.h:62 msgid "Use custom phrases" msgstr "使用自定義詞組" #: ../setup/ibus-pinyin-preferences.ui.h:63 msgid "Vertical" msgstr "豎直" #: ../setup/ibus-pinyin-preferences.ui.h:64 msgid "XHE" msgstr "小鶴" #: ../setup/ibus-pinyin-preferences.ui.h:65 msgid "ZGPY" msgstr "紫光拼音" #: ../setup/ibus-pinyin-preferences.ui.h:66 msgid "ZRM" msgstr "自然碼" #: ../setup/ibus-pinyin-preferences.ui.h:67 msgid "[,] [.] flip page" msgstr "[,][.]鍵翻頁" #: ../setup/ibus-pinyin-preferences.ui.h:68 msgid "[-] [=] flip page" msgstr "[-][=]鍵翻頁" #: ../setup/ibus-pinyin-preferences.ui.h:69 msgid "[Shift] select candidate" msgstr "[Shift]鍵選詞" #: ../setup/ibus-pinyin-preferences.ui.h:70 msgid "http://ibus.googlecode.com" msgstr "http://ibus.googlecode.com" msgid "Feature of Enter key:" msgstr "Enter 鍵功能:" msgid "Other" msgstr "其他" msgid "Commit original text" msgstr "輸出原本的英文字" msgid "Commit first candidate" msgstr "輸出第一個候選詞" ibus-pinyin-1.5.0/po/zh_TW.po0000664000175000017500000001646711777055066012753 00000000000000msgid "" msgstr "" "Project-Id-Version: ibus-pinyin 1.3.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-09-06 10:38+0800\n" "PO-Revision-Date: 2009-09-20 16:05+8\n" "Last-Translator: BYVoid \n" "Language-Team: BYVoid \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../src/PYMain.cc:90 msgid "Pinyin input method" msgstr "拼音輸入法" #: ../src/PYMain.cc:99 msgid "Pinyin (debug)" msgstr "拼音(調試)" #: ../src/PYMain.cc:100 msgid "Pinyin input method (debug)" msgstr "拼音輸入法(調試)" #: ../src/PYMain.cc:109 msgid "Bopomofo (debug)" msgstr "注音(調試)" #: ../src/PYMain.cc:110 msgid "Bopomofo input method (debug)" msgstr "注音輸入法(調試)" #: ../src/PYPinyinProperties.cc:42 ../setup/ibus-pinyin-preferences.ui.h:24 msgid "Chinese" msgstr "中文" #: ../src/PYPinyinProperties.cc:49 msgid "Full/Half width" msgstr "全形/半形" #: ../src/PYPinyinProperties.cc:56 msgid "Full/Half width punctuation" msgstr "半形符號" #: ../src/PYPinyinProperties.cc:63 msgid "Simplfied/Traditional Chinese" msgstr "簡體/繁體中文" #: ../src/PYPinyinProperties.cc:66 ../src/PYPinyinProperties.cc:68 #: ../setup/ibus-pinyin-preferences.ui.h:55 msgid "Preferences" msgstr "偏好設定" #: ../setup/main.py:377 ../setup/ibus-pinyin-preferences.ui.h:10 #, no-c-format, python-format msgid "IBus Pinyin %s" msgstr "IBus 拼音 %s" #: ../setup/ibus-pinyin-preferences.ui.h:1 msgid "Bopomofo mode" msgstr "注音模式" #: ../setup/ibus-pinyin-preferences.ui.h:2 msgid "Correct pinyin" msgstr "拼音糾錯" #: ../setup/ibus-pinyin-preferences.ui.h:3 msgid "Dictionary option" msgstr "詞典選項" #: ../setup/ibus-pinyin-preferences.ui.h:4 msgid "Initial state" msgstr "初始狀態" #: ../setup/ibus-pinyin-preferences.ui.h:5 msgid "Input Custom" msgstr "輸入配置" #: ../setup/ibus-pinyin-preferences.ui.h:6 msgid "Pinyin mode" msgstr "拼音模式" #: ../setup/ibus-pinyin-preferences.ui.h:7 msgid "Selection mode" msgstr "選詞模式" #: ../setup/ibus-pinyin-preferences.ui.h:8 msgid "UI" msgstr "外觀" #: ../setup/ibus-pinyin-preferences.ui.h:11 msgid "" "\n" "Authors:\n" "Peng Huang\n" "BYVoid\n" "\n" "Contributors:\n" "koterpilla, Zerng07\n" "" msgstr "" "\n" "作者:\n" "Peng Huang\n" "BYVoid\n" "\n" "貢獻者:\n" "koterpilla, Zerng07\n" "" #: ../setup/ibus-pinyin-preferences.ui.h:19 msgid "Copyright (c) 2009-2010 Peng Huang" msgstr "版權所有 (c) 2009-2010 黃鵬" #: ../setup/ibus-pinyin-preferences.ui.h:20 msgid "ABC" msgstr "智能ABC" #: ../setup/ibus-pinyin-preferences.ui.h:21 msgid "About" msgstr "關於" #: ../setup/ibus-pinyin-preferences.ui.h:22 msgid "Auto commit" msgstr "自動上詞" #: ../setup/ibus-pinyin-preferences.ui.h:23 msgid "Bopomofo mode" msgstr "注音模式" #: ../setup/ibus-pinyin-preferences.ui.h:25 msgid "Chinese:" msgstr "中文:" #: ../setup/ibus-pinyin-preferences.ui.h:26 msgid "Dictionary" msgstr "詞典" #: ../setup/ibus-pinyin-preferences.ui.h:27 msgid "Double pinyin" msgstr "雙拼" #: ../setup/ibus-pinyin-preferences.ui.h:28 msgid "Edit custom phrases" msgstr "編輯自定義詞組" #: ../setup/ibus-pinyin-preferences.ui.h:29 msgid "Enable Auxiliary Select Keys F1 .. F10" msgstr "啓用輔助選詞鍵F1 .. F10" #: ../setup/ibus-pinyin-preferences.ui.h:30 msgid "Enable Auxiliary Select Keys Numbers on Keypad" msgstr "啓用數字鍵盤輔助選詞鍵" #: ../setup/ibus-pinyin-preferences.ui.h:31 msgid "Enable Guidekey for Candidates Selection" msgstr "啓用選詞引導鍵" #: ../setup/ibus-pinyin-preferences.ui.h:32 msgid "Enable correct pinyin" msgstr "啓用拼音糾錯" #: ../setup/ibus-pinyin-preferences.ui.h:33 msgid "Enable fuzzy syllable" msgstr "啓用模糊音" #: ../setup/ibus-pinyin-preferences.ui.h:34 msgid "English" msgstr "英文" #: ../setup/ibus-pinyin-preferences.ui.h:35 msgid "Eten" msgstr "倚天" #: ../setup/ibus-pinyin-preferences.ui.h:36 msgid "Full" msgstr "全形" #: ../setup/ibus-pinyin-preferences.ui.h:37 msgid "Full pinyin" msgstr "全拼" #: ../setup/ibus-pinyin-preferences.ui.h:38 msgid "Fuzzy syllable" msgstr "模糊音" #: ../setup/ibus-pinyin-preferences.ui.h:39 msgid "General" msgstr "常規" #: ../setup/ibus-pinyin-preferences.ui.h:40 msgid "GinYieh" msgstr "精業" #: ../setup/ibus-pinyin-preferences.ui.h:41 msgid "Half" msgstr "半形" #: ../setup/ibus-pinyin-preferences.ui.h:42 msgid "Half/full width:" msgstr "全形/半形:" #: ../setup/ibus-pinyin-preferences.ui.h:43 msgid "Horizontal" msgstr "水平" #: ../setup/ibus-pinyin-preferences.ui.h:44 msgid "IBM" msgstr "IBM" #: ../setup/ibus-pinyin-preferences.ui.h:45 msgid "Incomplete Bopomofo" msgstr "簡拼" #: ../setup/ibus-pinyin-preferences.ui.h:46 msgid "Incomplete pinyin" msgstr "簡拼" #: ../setup/ibus-pinyin-preferences.ui.h:47 msgid "Keyboard Mapping:" msgstr "鍵盤映射:" #: ../setup/ibus-pinyin-preferences.ui.h:48 msgid "Language:" msgstr "語言:" #: ../setup/ibus-pinyin-preferences.ui.h:49 msgid "MSPY" msgstr "微軟拼音" #: ../setup/ibus-pinyin-preferences.ui.h:50 msgid "Number of candidates:" msgstr "每頁顯示候選詞條目數量:" #: ../setup/ibus-pinyin-preferences.ui.h:51 msgid "Orientation of candidates:" msgstr "候選詞排列方向:" #: ../setup/ibus-pinyin-preferences.ui.h:52 msgid "PYJJ" msgstr "拼音加加" #: ../setup/ibus-pinyin-preferences.ui.h:53 msgid "Pinyin input method for IBus" msgstr "IBus 拼音輸入法" #: ../setup/ibus-pinyin-preferences.ui.h:54 msgid "Pinyin mode" msgstr "拼音模式" #: ../setup/ibus-pinyin-preferences.ui.h:56 msgid "Punctuations:" msgstr "標點符號:" #: ../setup/ibus-pinyin-preferences.ui.h:57 msgid "Selection Keys:" msgstr "選詞鍵:" #: ../setup/ibus-pinyin-preferences.ui.h:58 msgid "Show raw input of Double Pinyin" msgstr "顯示雙拼原始輸入" #: ../setup/ibus-pinyin-preferences.ui.h:59 msgid "Simplified" msgstr "簡體" #: ../setup/ibus-pinyin-preferences.ui.h:60 msgid "Standard" msgstr "標準" #: ../setup/ibus-pinyin-preferences.ui.h:61 msgid "Traditional" msgstr "繁體" #: ../setup/ibus-pinyin-preferences.ui.h:62 msgid "Use custom phrases" msgstr "使用自定義詞組" #: ../setup/ibus-pinyin-preferences.ui.h:63 msgid "Vertical" msgstr "豎直" #: ../setup/ibus-pinyin-preferences.ui.h:64 msgid "XHE" msgstr "小鶴" #: ../setup/ibus-pinyin-preferences.ui.h:65 msgid "ZGPY" msgstr "紫光拼音" #: ../setup/ibus-pinyin-preferences.ui.h:66 msgid "ZRM" msgstr "自然碼" #: ../setup/ibus-pinyin-preferences.ui.h:67 msgid "[,] [.] flip page" msgstr "[,][.]鍵翻頁" #: ../setup/ibus-pinyin-preferences.ui.h:68 msgid "[-] [=] flip page" msgstr "[-][=]鍵翻頁" #: ../setup/ibus-pinyin-preferences.ui.h:69 msgid "[Shift] select candidate" msgstr "[Shift]鍵選詞" #: ../setup/ibus-pinyin-preferences.ui.h:70 msgid "http://ibus.googlecode.com" msgstr "http://ibus.googlecode.com" msgid "Feature of Enter key:" msgstr "Enter 鍵功能:" msgid "Other" msgstr "其他" msgid "Commit original text" msgstr "輸出原本的英文字" msgid "Commit first candidate" msgstr "輸出第一個候選詞" ibus-pinyin-1.5.0/po/Makevars0000664000175000017500000000345111777055066013041 00000000000000# Makefile variables for PO directory in any package using GNU gettext. # Usually the message domain is the same as the package name. DOMAIN = $(PACKAGE) # These two variables depend on the location of this directory. subdir = po top_builddir = .. # These options get passed to xgettext. XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ # This is the copyright holder that gets inserted into the header of the # $(DOMAIN).pot file. Set this to the copyright holder of the surrounding # package. (Note that the msgstr strings, extracted from the package's # sources, belong to the copyright holder of the package.) Translators are # expected to transfer the copyright for their translations to this person # or entity, or to disclaim their copyright. The empty string stands for # the public domain; in this case the translators are expected to disclaim # their copyright. COPYRIGHT_HOLDER = Peng Huang # This is the email address or URL to which the translators shall report # bugs in the untranslated strings: # - Strings which are not entire sentences, see the maintainer guidelines # in the GNU gettext documentation, section 'Preparing Strings'. # - Strings which use unclear terms or require additional context to be # understood. # - Strings which make invalid assumptions about notation of date, time or # money. # - Pluralisation problems. # - Incorrect English spelling. # - Incorrect formatting. # It can be your email address, or a mailing list address where translators # can write to without being subscribed, or the URL of a web page through # which the translators can contact you. MSGID_BUGS_ADDRESS = $(PACKAGE_BUGREPORT) # This is the list of locale categories, beyond LC_MESSAGES, for which the # message catalogs shall be used. It is usually empty. EXTRA_LOCALE_CATEGORIES = ibus-pinyin-1.5.0/po/LINGUAS0000664000175000017500000000003011777055066012360 00000000000000fr ru zh_CN zh_HK zh_TW ibus-pinyin-1.5.0/install-sh0000755000175000017500000003325612063702757012732 00000000000000#!/bin/sh # install - install a program, script, or datafile scriptversion=2011-01-19.21; # 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. nl=' ' IFS=" "" $nl" # set DOITPROG to echo to test this script # Don't use :- since 4.3BSD and earlier shells don't like it. doit=${DOITPROG-} if test -z "$doit"; then doit_exec=exec else doit_exec=$doit fi # 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_glob='?' initialize_posix_glob=' test "$posix_glob" != "?" || { if (set -f) 2>/dev/null; then posix_glob= else posix_glob=: fi } ' posix_mkdir= # Desired mode of installed file. mode=0755 chgrpcmd= chmodcmd=$chmodprog chowncmd= mvcmd=$mvprog rmcmd="$rmprog -f" stripcmd= src= dst= dir_arg= dst_arg= copy_on_change=false no_target_directory= 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 the last 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. -s $stripprog installed files. -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 " 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 *' '* | *' '* | *' '* | *'*'* | *'?'* | *'['*) echo "$0: invalid mode: $mode" >&2 exit 1;; esac shift;; -o) chowncmd="$chownprog $2" shift;; -s) stripcmd=$stripprog;; -t) dst_arg=$2 # Protect names problematic for `test' and other utilities. case $dst_arg in -* | [=\(\)!]) dst_arg=./$dst_arg;; esac shift;; -T) no_target_directory=true;; --version) echo "$0 $scriptversion"; exit $?;; --) shift break;; -*) echo "$0: invalid option: $1" >&2 exit 1;; *) break;; esac shift done 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 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=$? 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; won't work # if double slashes aren't ignored. if test -d "$dst"; then if test -n "$no_target_directory"; then echo "$0: $dst_arg: Is a directory" >&2 exit 1 fi dstdir=$dst dst=$dstdir/`basename "$src"` dstdir_status=0 else # Prefer dirname, but fall back on a substitute if dirname fails. dstdir=` (dirname "$dst") 2>/dev/null || expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$dst" : 'X\(//\)[^/]' \| \ X"$dst" : 'X\(//\)$' \| \ X"$dst" : 'X\(/\)' \| . 2>/dev/null || echo X"$dst" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q' ` test -d "$dstdir" dstdir_status=$? fi fi obsolete_mkdir_used=false if test $dstdir_status != 0; then case $posix_mkdir in '') # Create intermediate dirs using mode 755 as modified by the umask. # This is like FreeBSD 'install' as of 1997-10-28. umask=`umask` case $stripcmd.$umask in # Optimize common cases. *[2367][2367]) mkdir_umask=$umask;; .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; *[0-7]) mkdir_umask=`expr $umask + 22 \ - $umask % 100 % 40 + $umask % 20 \ - $umask % 10 % 4 + $umask % 2 `;; *) mkdir_umask=$umask,go-w;; esac # 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 case $umask in *[123567][0-7][0-7]) # POSIX mkdir -p sets u+wx bits regardless of umask, which # is incompatible with FreeBSD 'install' when (umask & 300) != 0. ;; *) tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 if (umask $mkdir_umask && exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 then if test -z "$dir_arg" || { # Check for POSIX incompatibilities with -m. # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or # other-writeable bit of parent directory when it shouldn't. # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. ls_ld_tmpdir=`ls -ld "$tmpdir"` case $ls_ld_tmpdir in d????-?r-*) different_mode=700;; d????-?--*) different_mode=755;; *) false;; esac && $mkdirprog -m$different_mode -p -- "$tmpdir" && { ls_ld_tmpdir_1=`ls -ld "$tmpdir"` test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" } } then posix_mkdir=: fi rmdir "$tmpdir/d" "$tmpdir" else # Remove any dirs left behind by ancient mkdir implementations. rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null fi trap '' 0;; esac;; esac if $posix_mkdir && ( umask $mkdir_umask && $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" ) then : else # The umask is ridiculous, or 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 eval "$initialize_posix_glob" oIFS=$IFS IFS=/ $posix_glob set -f set fnord $dstdir shift $posix_glob 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=$dstdir/_inst.$$_ rmtmp=$dstdir/_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 && $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` && eval "$initialize_posix_glob" && $posix_glob set -f && set X $old && old=:$2:$4:$5:$6 && set X $new && new=:$2:$4:$5:$6 && $posix_glob set +f && test "$old" = "$new" && $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 then rm -f "$dsttmp" else # 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 -f "$dst" 2>/dev/null || { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && { $doit $rmcmd -f "$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 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: ibus-pinyin-1.5.0/Makefile.in0000664000175000017500000007147012063705664012775 00000000000000# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. VPATH = @srcdir@ am__make_dryrun = \ { \ am__dry=no; \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ *) \ for am__flg in $$MAKEFLAGS; do \ case $$am__flg in \ *=*|--*) ;; \ *n*) am__dry=yes; break;; \ esac; \ done;; \ esac; \ test $$am__dry = yes; \ } 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 = . DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in $(srcdir)/config.h.in \ $(srcdir)/ibus-pinyin.spec.in $(top_srcdir)/configure AUTHORS \ COPYING ChangeLog INSTALL NEWS compile config.guess config.sub \ depcomp install-sh ltmain.sh missing mkinstalldirs py-compile ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/as-version.m4 \ $(top_srcdir)/m4/boost.m4 $(top_srcdir)/m4/intltool.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno config.status.lineno mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = ibus-pinyin.spec CONFIG_CLEAN_VPATH_FILES = 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_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-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 uninstall-recursive am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ distdir dist dist-all distcheck ETAGS = etags CTAGS = ctags DIST_SUBDIRS = data lua src setup m4 po 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 -200 -exec chmod u+w {} ';' \ && rm -rf "$(distdir)" \ || { sleep 5 && rm -rf "$(distdir)"; }; \ else :; fi 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 = --best distuninstallcheck_listfiles = find . -type f -print am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BOOST_CPPFLAGS = @BOOST_CPPFLAGS@ BOOST_ROOT = @BOOST_ROOT@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = \ CFLAGS='-g -O3 -Wall' \ CXXFLAGS='-g -O3 -Wall' \ $(NULL) DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENV = @ENV@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ IBUS_CFLAGS = @IBUS_CFLAGS@ IBUS_LIBS = @IBUS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ LUA_CFLAGS = @LUA_CFLAGS@ LUA_LIBS = @LUA_LIBS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ 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@ PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@ PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@ PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@ PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@ PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PYTHON = @PYTHON@ PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ PYTHON_PLATFORM = @PYTHON_PLATFORM@ PYTHON_PREFIX = @PYTHON_PREFIX@ PYTHON_VERSION = @PYTHON_VERSION@ PYZY = @PYZY@ PYZY_CFLAGS = @PYZY_CFLAGS@ PYZY_LIBS = @PYZY_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SQLITE3 = @SQLITE3@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ 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@ 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@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ pkgpyexecdir = @pkgpyexecdir@ pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ 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@ @IBUS_BUILD_LUA_EXTENSION_TRUE@LUADIR = lua SUBDIRS = \ data \ $(LUADIR) \ src \ setup \ m4 \ po \ $(NULL) ACLOCAL_AMFLAGS = -I m4 EXTRA_DIST = \ autogen.sh \ ibus-pinyin.spec.in \ $(NULL) noinst_DIST = \ $(NULL) DISTCLEANFILES = \ po/stamp-it \ $(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 .PRECIOUS: 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__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ 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 @if test ! -f $@; then rm -f stamp-h1; else :; fi @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status @rm -f stamp-h1 cd $(top_builddir) && $(SHELL) ./config.status config.h $(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) rm -f stamp-h1 touch $@ distclean-hdr: -rm -f config.h stamp-h1 ibus-pinyin.spec: $(top_builddir)/config.status $(srcdir)/ibus-pinyin.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 # 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. $(RECURSIVE_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; 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" $(RECURSIVE_CLEAN_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) 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; \ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ 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 CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ 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" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) $(am__remove_distdir) test -d "$(distdir)" || mkdir "$(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) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) dist-bzip2: distdir tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 $(am__remove_distdir) dist-lzip: distdir tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz $(am__remove_distdir) dist-lzma: distdir tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma $(am__remove_distdir) dist-xz: distdir tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz $(am__remove_distdir) dist-tarZ: distdir tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__remove_distdir) dist-shar: distdir shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz $(am__remove_distdir) dist-zip: distdir -rm -f $(distdir).zip zip -rq $(distdir).zip $(distdir) $(am__remove_distdir) dist dist-all: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__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*) \ GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.lzma*) \ lzma -dc $(distdir).tar.lzma | $(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*) \ GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac chmod -R a-w $(distdir); chmod u+w $(distdir) mkdir $(distdir)/_build mkdir $(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 \ && ../configure --srcdir=.. --prefix="$$dc_install_base" \ $(AM_DISTCHECK_CONFIGURE_FLAGS) \ $(DISTCHECK_CONFIGURE_FLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ && $(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__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 config.h installdirs: installdirs-recursive installdirs-am: 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: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) -test -z "$(DISTCLEANFILES)" || 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." 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-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: 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: .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \ ctags-recursive install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am am--refresh check check-am clean clean-generic \ clean-libtool clean-local ctags ctags-recursive dist dist-all \ dist-bzip2 dist-gzip dist-hook dist-lzip dist-lzma dist-shar \ dist-tarZ dist-xz dist-zip distcheck distclean \ distclean-generic distclean-hdr distclean-libtool \ distclean-tags distcleancheck distdir distuninstallcheck 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 installdirs-am \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-recursive uninstall uninstall-am dist-hook: if test -d .git ; then \ git log --name-status --date=iso > $(distdir)/ChangeLog ; \ 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`" \ @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`" \ @PACKAGE_NAME@.spec .PHONY: debian/changelog debian/changelog: $(AM_V_GEN) \ ( \ . /etc/lsb-release; \ date=`date -R`; \ version=@VERSION@; \ serie=$(serie); \ if test -z "$$serie"; then \ serie=$$DISTRIB_CODENAME; \ fi; \ if test -z "$$release"; then \ release=1; \ fi; \ s=`cat debian/changelog.in`; \ eval "echo \"$${s}\""; \ ) > $@ ppa: dist debian/changelog $(AM_V_GEN) \ ( \ mkdir ppa; \ cp $(distdir).tar.gz ppa/@PACKAGE_NAME@_@PACKAGE_VERSION@.orig.tar.gz ; \ cd ppa; \ tar zxvf ../$(distdir).tar.gz ; \ cd $(distdir); \ cp -a ../../debian . ; \ cd debian; \ debuild -S -sa ; \ ) dpkg: dist debian/changelog $(AM_V_GEN) \ ( \ mkdir ppa; \ cd ppa; \ tar zxvf ../$(distdir).tar.gz ; \ cd $(distdir); \ cp -a ../../debian . ; \ cd debian; \ debuild -b -uc -us; \ ) upload: dist ./tools/googlecode_upload.py \ -s "ibus-pinyin(拼音)source code" \ -p ibus \ -l "Type-Source,OpSys-Linux,Chinese,Unstable" \ $(distdir).tar.gz clean-rpm: $(RM) -r "`uname -i`" clean-local: clean-rpm # 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: ibus-pinyin-1.5.0/lua/0000775000175000017500000000000012064356726011562 500000000000000ibus-pinyin-1.5.0/lua/test-lua-plugin.c0000664000175000017500000000230011776565552014703 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2010 Peng Wu * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include #include #include "lua-plugin.h" int main(int argc, char * argv[]){ printf("starting test...\n"); g_type_init(); IBusEnginePlugin * plugin; plugin = ibus_engine_plugin_new(); ibus_engine_plugin_load_lua_script(plugin, LUASCRIPTDIR G_DIR_SEPARATOR_S "test.lua"); g_object_unref(plugin); printf("done.\n"); return 0; } ibus-pinyin-1.5.0/lua/lua-plugin.c0000664000175000017500000002213711776565552013740 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2010 Peng Wu * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include #include #include "lua-plugin.h" #define IBUS_ENGINE_PLUGIN_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), IBUS_TYPE_ENGINE_PLUGIN, IBusEnginePluginPrivate)) struct _IBusEnginePluginPrivate{ lua_State * L; GArray * lua_commands; /* Array of lua_command_t. */ }; G_DEFINE_TYPE (IBusEnginePlugin, ibus_engine_plugin, G_TYPE_OBJECT); static void lua_command_clone(lua_command_t * command, lua_command_t * new_command){ new_command->command_name = g_strdup(command->command_name); new_command->lua_function_name = g_strdup(command->lua_function_name); new_command->description = g_strdup(command->description); new_command->leading = g_strdup(command->leading); new_command->help = g_strdup(command->help); } static void lua_command_reclaim(lua_command_t * command){ g_free((gpointer)command->command_name); g_free((gpointer)command->lua_function_name); g_free((gpointer)command->description); g_free((gpointer)command->leading); g_free((gpointer)command->help); } static int lua_plugin_init(IBusEnginePluginPrivate * plugin){ g_assert(NULL == plugin->L); /* initialize Lua */ plugin->L = lua_open(); /* enable libs in sandbox */ lua_plugin_openlibs(plugin->L); g_assert ( NULL == plugin->lua_commands ); plugin->lua_commands = g_array_new(TRUE, TRUE, sizeof(lua_command_t)); return 0; } static int lua_plugin_fini(IBusEnginePluginPrivate * plugin){ size_t i; lua_command_t * command; if ( plugin->lua_commands ){ for ( i = 0; i < plugin->lua_commands->len; ++i){ command = &g_array_index(plugin->lua_commands, lua_command_t, i); lua_command_reclaim(command); } g_array_free(plugin->lua_commands, TRUE); plugin->lua_commands = NULL; } lua_close(plugin->L); plugin->L = NULL; return 0; } static void ibus_engine_plugin_finalize (GObject *gobject) { IBusEnginePlugin *self = IBUS_ENGINE_PLUGIN (gobject); /* do some cleaning here. */ lua_plugin_fini(self->priv); /* Chain up to the parent class */ G_OBJECT_CLASS (ibus_engine_plugin_parent_class)->dispose(gobject); } static void ibus_engine_plugin_class_init (IBusEnginePluginClass *klass) { GObjectClass *gobject_class = G_OBJECT_CLASS (klass); gobject_class->finalize = ibus_engine_plugin_finalize; g_type_class_add_private (klass, sizeof (IBusEnginePluginPrivate)); } static void ibus_engine_plugin_init (IBusEnginePlugin *self) { IBusEnginePluginPrivate *priv; self->priv = priv = IBUS_ENGINE_PLUGIN_GET_PRIVATE (self); memset(priv, 0, sizeof(IBusEnginePluginPrivate)); lua_plugin_init(priv); lua_plugin_store_plugin(priv->L, self); } IBusEnginePlugin * ibus_engine_plugin_new(){ IBusEnginePlugin * plugin; plugin = (IBusEnginePlugin *) g_object_new (IBUS_TYPE_ENGINE_PLUGIN, NULL); return plugin; } static void l_message (const char *pname, const char *msg) { if (pname) fprintf(stderr, "%s: ", pname); fprintf(stderr, "%s\n", msg); fflush(stderr); } static int report (lua_State *L, int status) { if (status && !lua_isnil(L, -1)) { const char *msg = lua_tostring(L, -1); if (msg == NULL) msg = "(error object is not a string)"; l_message(NULL, msg); lua_pop(L, 1); } return status; } int ibus_engine_plugin_load_lua_script(IBusEnginePlugin * plugin, const char * filename){ IBusEnginePluginPrivate * priv = IBUS_ENGINE_PLUGIN_GET_PRIVATE(plugin); int status = luaL_dofile(priv->L, filename); return report(priv->L, status); } static gint compare_command(gconstpointer a, gconstpointer b){ lua_command_t * ca = (lua_command_t *) a; lua_command_t * cb = (lua_command_t *) b; return strcmp(ca->command_name, cb->command_name); } gboolean ibus_engine_plugin_add_command(IBusEnginePlugin * plugin, lua_command_t * command){ IBusEnginePluginPrivate * priv = IBUS_ENGINE_PLUGIN_GET_PRIVATE(plugin); GArray * lua_commands = priv->lua_commands; if ( ibus_engine_plugin_lookup_command( plugin, command->command_name) ) return FALSE; lua_command_t new_command; lua_command_clone(command, &new_command); g_array_append_val(lua_commands, new_command); /* Note: need to improve speed here? */ g_array_sort(lua_commands, compare_command); return TRUE; } const lua_command_t * ibus_engine_plugin_lookup_command(IBusEnginePlugin * plugin, const char * command_name){ IBusEnginePluginPrivate * priv = IBUS_ENGINE_PLUGIN_GET_PRIVATE(plugin); GArray * lua_commands = priv->lua_commands; lua_command_t lookup_command = {.command_name = command_name, }; lua_command_t * result = bsearch(&lookup_command, lua_commands->data, lua_commands->len, sizeof(lua_command_t), compare_command); return result; } const GArray * ibus_engine_plugin_get_available_commands(IBusEnginePlugin * plugin){ IBusEnginePluginPrivate * priv = IBUS_ENGINE_PLUGIN_GET_PRIVATE(plugin); return priv->lua_commands; } int ibus_engine_plugin_call(IBusEnginePlugin * plugin, const char * lua_function_name, const char * argument /*optional, maybe NULL.*/){ IBusEnginePluginPrivate * priv = IBUS_ENGINE_PLUGIN_GET_PRIVATE(plugin); int type; int result; lua_State * L = priv->L; /* In google pinyin, argument can't be NULL, but empty string is acceptable. */ if (NULL == argument) argument = ""; /* check whether lua_function_name exists. */ lua_getglobal(L, lua_function_name); type = lua_type(L, -1); if ( LUA_TFUNCTION != type ) return 0; lua_pushstring(L, argument); result = lua_pcall(L, 1, 1, 0); if (result) return 0; type = lua_type(L, -1); if ( LUA_TTABLE == type ){ return lua_objlen(L, -1); } else if (LUA_TNUMBER == type || LUA_TBOOLEAN == type || LUA_TSTRING == type){ return 1; } return 0; } /** * get a candidate from lua return value. */ static const lua_command_candidate_t * ibus_engine_plugin_get_candidate(lua_State * L){ const char * suggest, * help, * content = NULL; lua_command_candidate_t * candidate = malloc(sizeof(lua_command_candidate_t)); memset(candidate, 0, sizeof(lua_command_candidate_t)); int type = lua_type(L, -1); if ( LUA_TTABLE == type ){ lua_pushliteral(L, "suggest"); lua_gettable(L, -2); lua_pushliteral(L, "help"); lua_gettable(L, -3); suggest = lua_tostring(L, -2); help = lua_tostring(L, -1); candidate->suggest = g_strdup(suggest); candidate->help = g_strdup(help); lua_pop(L, 2); } else if (LUA_TNUMBER == type || LUA_TBOOLEAN == type || LUA_TSTRING == type) { content = lua_tostring(L, -1); candidate->content = g_strdup(content); } return candidate; } /** * retrieve the retval string value. (value has been copied.) */ const lua_command_candidate_t * ibus_engine_plugin_get_retval(IBusEnginePlugin * plugin){ IBusEnginePluginPrivate * priv = IBUS_ENGINE_PLUGIN_GET_PRIVATE(plugin); lua_command_candidate_t * result = NULL; int type; lua_State * L = priv->L; type = lua_type(L ,-1); if ( LUA_TNUMBER == type || LUA_TBOOLEAN == type || LUA_TSTRING == type) { result = malloc(sizeof(lua_command_candidate_t)); memset(result, 0, sizeof(lua_command_candidate_t)); result->content = g_strdup(lua_tostring(L, -1)); lua_pop(L, 1); } else if( LUA_TTABLE == type ){ lua_pushinteger(L, 1); lua_gettable(L, -2); result = (lua_command_candidate_t *)ibus_engine_plugin_get_candidate(L); lua_pop(L, 2); } return (const lua_command_candidate_t *)result; } /** * retrieve the array of string values. (string values have been copied.) */ GArray * ibus_engine_plugin_get_retvals(IBusEnginePlugin * plugin){ IBusEnginePluginPrivate * priv = IBUS_ENGINE_PLUGIN_GET_PRIVATE(plugin); lua_State * L = priv->L; int elem_num; int type; GArray * result = NULL; int i; const lua_command_candidate_t * candidate = NULL; type = lua_type(L, -1); if ( LUA_TTABLE != type ) return result; result = g_array_new(TRUE, TRUE, sizeof(lua_command_candidate_t *)); elem_num = lua_objlen(L, -1); for ( i = 0; i < elem_num; ++i ){ lua_pushinteger(L, i + 1); lua_gettable(L, -2); candidate = ibus_engine_plugin_get_candidate(L); lua_pop(L, 1); g_array_append_val(result, candidate); } lua_pop(L, 1); return result; } void ibus_engine_plugin_free_candidate(lua_command_candidate_t * candidate){ g_free((gpointer)candidate->content); g_free((gpointer)candidate->suggest); g_free((gpointer)candidate->help); } ibus-pinyin-1.5.0/lua/lua-plugin-init.c0000664000175000017500000002212711776565552014700 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2010 Peng Wu * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include #include #include #include "lua-plugin.h" static const luaL_Reg lualibs[] = { {"", luaopen_base}, {LUA_TABLIBNAME, luaopen_table}, {LUA_IOLIBNAME, luaopen_io}, {LUA_OSLIBNAME, luaopen_myos}, {LUA_STRLIBNAME, luaopen_string}, {LUA_MATHLIBNAME, luaopen_math}, {LUA_IMELIBNAME, luaopen_ime}, {NULL, NULL} }; void lua_plugin_openlibs (lua_State *L) { const luaL_Reg *lib = lualibs; for (; lib->func; lib++) { lua_pushcfunction(L, lib->func); lua_pushstring(L, lib->name); lua_call(L, 1, 0); } } void lua_plugin_store_plugin(lua_State * L, IBusEnginePlugin * plugin){ luaL_newmetatable(L, LUA_IMELIBNAME); lua_pushliteral(L, LUA_IMELIB_CONTEXT); lua_pushlightuserdata(L, plugin); lua_rawset(L, -3); lua_pop(L, 1); } IBusEnginePlugin * lua_plugin_retrieve_plugin(lua_State * L) { luaL_newmetatable(L, LUA_IMELIBNAME); lua_pushliteral(L, LUA_IMELIB_CONTEXT); lua_rawget(L, -2); luaL_checktype(L, -1, LUA_TLIGHTUSERDATA); IBusEnginePlugin * plugin = lua_touserdata(L, -1); g_assert(IBUS_IS_ENGINE_PLUGIN(plugin)); lua_pop(L, 2); return plugin; } static int ime_get_last_commit(lua_State* L){ /*TODO: not implemented. */ fprintf(stderr, "TODO: ime_get_last_commit unimplemented.\n"); lua_pushstring(L, ""); return 1; } static int ime_get_version(lua_State* L){ /* TODO: replace this with C macros. */ lua_pushliteral(L, "ibus-pinyin 1.2.99"); return 1; } static int ime_join_string(lua_State* L){ luaL_Buffer buf; size_t vec_len; size_t i; const char * sep; const char * str; luaL_checktype(L, 1, LUA_TTABLE); sep = luaL_checklstring(L, 2, NULL); vec_len = lua_objlen(L, 1); if ( 0 == vec_len ){ lua_pop(L, 2); lua_pushliteral(L, ""); return 1; } luaL_buffinit(L, &buf); for ( i = 1; i < vec_len; ++i){ lua_pushinteger(L, i); lua_gettable(L, 1); str = luaL_checklstring(L, 3, NULL); luaL_addstring(&buf, str); lua_pop(L, 1); luaL_addstring(&buf, sep); } /* add tail of string list */ lua_pushinteger(L, i); lua_gettable(L, 1); str = luaL_checklstring(L, 3, NULL); luaL_addstring(&buf, str); lua_pop(L, 1); /* remove the args. */ lua_pop(L, 2); luaL_pushresult(&buf); return 1; } static int ime_parse_mapping(lua_State * L){ const char * src_string, * line_sep, * key_value_sep, * values_sep; int m, n; gchar** lines = NULL; size_t lines_no = 0; const char * line; gchar** key_value = NULL; const char * key = NULL; gchar** values = NULL; size_t values_no = 0; const char * value = NULL; src_string = luaL_checklstring(L, 1, NULL); line_sep = luaL_checklstring(L, 2, NULL); key_value_sep = luaL_checklstring(L, 3, NULL); values_sep = luaL_checklstring(L, 4, NULL); lines = g_strsplit(src_string, line_sep, 0); lines_no = g_strv_length(lines); lua_createtable(L, 0, lines_no); for( m = 0; m < lines_no; ++m){ line = lines[m]; if ( NULL == line || '\0' == line[0]) continue; key_value = g_strsplit(line, key_value_sep, 2); key = key_value[0]; /* value = key_value[1]; */ if ( NULL == key || '\0' == key[0]) continue; { values = g_strsplit(key_value[1], values_sep, 0); values_no = g_strv_length(values); lua_createtable(L, values_no, 0); for ( n = 0; n < values_no; ++n){ value = values[n]; if ( NULL == value || '\0' == value[0] ) continue; lua_pushinteger(L, n + 1); lua_pushstring(L, value); lua_settable(L, 6); } g_strfreev(values); } lua_pushstring(L, key); lua_insert(L, 6); lua_settable(L, 5); g_strfreev(key_value); } g_strfreev(lines); /*remove args */ lua_remove(L, 4); lua_remove(L, 3); lua_remove(L, 2); lua_remove(L, 1); return 1; } static int ime_register_command(lua_State * L){ lua_command_t new_command; size_t l; memset(&new_command, 0, sizeof(new_command)); new_command.command_name = luaL_checklstring(L, 1, &l); if ( 2 != l ){ return luaL_error(L, "ime_register_command is called with command_name: %s, whose length is not 2.\n", new_command.command_name); } new_command.lua_function_name = luaL_checklstring(L, 2, NULL); lua_getglobal(L, new_command.lua_function_name); luaL_checktype(L, -1, LUA_TFUNCTION); lua_pop(L, 1); new_command.description = luaL_checklstring(L, 3, NULL); if ( !lua_isnone(L, 4)) { new_command.leading = luaL_checklstring(L, 4, NULL); }else{ new_command.leading = "digit"; } if ( !lua_isnone(L, 5)) { new_command.help = luaL_checklstring(L, 5, NULL); } gboolean result = ibus_engine_plugin_add_command (lua_plugin_retrieve_plugin(L), &new_command); if (!result) return luaL_error(L, "register command %s with function %s failed.\n", new_command.command_name, new_command.lua_function_name); return 0; } static int ime_register_trigger(lua_State * L){ const char * lua_function_name = luaL_checklstring(L, 1, NULL); const char * description = luaL_checklstring(L, 2, NULL); size_t num; size_t i; fprintf(stderr, "TODO: ime_register_trigger unimplemented when called with %s (%s).\n", lua_function_name, description); luaL_checktype(L, 3, LUA_TTABLE); /* TODO: register_trigger with input_trigger_strings. */ num = lua_objlen(L, 3); for ( i = 0; i < num; ++i) { lua_pushinteger(L, i + 1); lua_gettable(L, 3); fprintf(stderr, "%d:%s\t", (int)i + 1, lua_tostring(L, -1)); lua_pop(L, 1); } fprintf(stderr, "\n"); luaL_checktype(L, 4, LUA_TTABLE); /* TODO: register_trigger with candidate_trigger_strings. */ num = lua_objlen(L, 4); for ( i = 0; i < num; ++i) { lua_pushinteger(L, i + 1); lua_gettable(L, 4); fprintf(stderr, "%d:%s\t", (int) i + 1, lua_tostring(L, -1)); } fprintf(stderr, "\n"); return 0; } static int ime_split_string(lua_State * L){ gchar ** str_vec; guint str_vec_len = 0; int i; const char * sep; const char * str = luaL_checklstring(L, 1, NULL); sep = luaL_checklstring(L, 2, NULL); str_vec = g_strsplit(str, sep, 0); str_vec_len = g_strv_length(str_vec); lua_createtable(L, str_vec_len, 0); for ( i = 0; i < str_vec_len; ++i){ lua_pushinteger(L, i + 1); lua_pushstring(L, str_vec[i]); lua_settable(L, 3); } g_strfreev(str_vec); lua_remove(L, 2); /* remove sep from stack */ lua_remove(L, 1); /* remove str from stack */ return 1; } static gboolean ime_is_white_space(const char c){ static const char * const white_space = " \t\n\r\v\f"; int i; size_t len = strlen(white_space); for ( i = 0; i < len; ++i){ if ( white_space[i] == c ) return TRUE; } return FALSE; } static int ime_push_string(lua_State* L, const char * s, int start, int end){ if (start >= end ){ lua_pushliteral(L, ""); return 1; } lua_pushlstring(L, s + start, end -start); lua_remove(L, 1); return 1; } static int ime_trim_string_left(lua_State* L){ size_t l; int start, end; const char * s = luaL_checklstring(L, 1, &l); start = 0; end = l; while( ime_is_white_space(s[start])){ start++; } return ime_push_string(L, s, start, end); } static int ime_trim_string_right(lua_State* L){ size_t l; int start, end; const char * s = luaL_checklstring(L, 1, &l); start = 0; end = l; while( ime_is_white_space(s[end - 1]) && end > 0){ end--; } return ime_push_string(L, s, start, end); } static int ime_trim_string(lua_State* L){ size_t l; int start, end; const char * s = luaL_checklstring(L, 1, &l); start = 0; end = l; while( ime_is_white_space(s[start])){ start++; } while( ime_is_white_space(s[end - 1]) && end > 0){ end--; } return ime_push_string(L, s, start, end); } static const luaL_Reg imelib[] = { {"get_last_commit", ime_get_last_commit}, {"get_version", ime_get_version}, {"join_string", ime_join_string}, {"parse_mapping", ime_parse_mapping}, {"register_command", ime_register_command}, /* Note: the register_trigger function is dropped for ibus-pinyin. */ {"register_trigger", ime_register_trigger}, {"split_string", ime_split_string}, {"trim_string_left", ime_trim_string_left}, {"trim_string_right", ime_trim_string_right}, {"trim_string", ime_trim_string}, {NULL, NULL} }; LUALIB_API int luaopen_ime (lua_State *L) { luaL_register(L, LUA_IMELIBNAME, imelib); return 1; } ibus-pinyin-1.5.0/lua/base.lua0000664000175000017500000004133111762161772013120 00000000000000-- encoding: UTF-8 _CHINESE_DIGITS = { [0] = "〇", [1] = "一", [2] = "二", [3] = "三", [4] = "四", [5] = "五", [6] = "六", [7] = "七", [8] = "八", [9] = "九", [10] = "十", } _DATE_PATTERN = "^(%d+)-(%d+)-(%d+)$" _TIME_PATTERN = "^(%d+):(%d+)$" function GetChineseMathNum(num) local ret if num < 10 then ret = _CHINESE_DIGITS[num] elseif num < 20 then ret = _CHINESE_DIGITS[10] if num > 10 then ret = ret .. _CHINESE_DIGITS[num % 10] end elseif num < 100 then local mod = num % 10 ret = _CHINESE_DIGITS[(num - mod) / 10] .. _CHINESE_DIGITS[10] if mod > 0 then ret = ret .. _CHINESE_DIGITS[mod] end else error("Invalid number") end return ret end function GetChineseNonMathNum(num) local ret = "" for ch in tostring(num):gmatch(".") do if ch >= "0" and ch <= "9" then ch = _CHINESE_DIGITS[tonumber(ch)] end ret = ret .. ch end return ret end function _VerifyTime(hour, minute) if hour < 0 or hour > 23 or minute < 0 or minute > 59 then error("Invalid time") end end function _VerifyDate(month, day) if month < 1 or month > 12 or day < 1 or day > _MONTH_TABLE_LEAF[month] then error("Invalid date") end end function _VerifyDateWithYear(year, month, day) _VerifyDate(month, day) if year < 1 or year > 9999 then error("Invalid year") end if month == 2 and day == 29 then if year % 400 ~= 0 and year % 100 == 0 then error("Invalid lunar day") end if year % 4 ~= 0 then error("Invalid lunar day") end end end function GetChineseDate(y, m, d, full) if full then return GetChineseNonMathNum(y) .. "年" .. GetChineseMathNum(m) .. "月" .. GetChineseMathNum(d) .. "日" else return y .. "年" .. m .. "月" .. d .. "日" end end function GetChineseTime(h, m, full) if full then local ret = GetChineseMathNum(h) .. "时" if m > 0 then ret = ret .. GetChineseMathNum(m) .. "分" end return ret else return h .. "时" .. m .. "分" end end function NormalizeDate(y, m, d) return string.format("%d-%02d-%02d", y, m, d) end function NormalizeTime(h, m) return string.format("%02d:%02d", h, m) end function GetTime(input) local now = input if #input == 0 then now = os.date("%H:%M") end local hour, minute now:gsub(_TIME_PATTERN, function(h, m) hour = tonumber(h) minute = tonumber(m) end) _VerifyTime(hour, minute) return { NormalizeTime(hour, minute), GetChineseTime(hour, minute, false), GetChineseTime(hour, minute, true), } end function GetDate(input) local now = input if #input == 0 then now = os.date("%Y-%m-%d") end local year, month, day now:gsub(_DATE_PATTERN, function(y, m, d) year = tonumber(y) month = tonumber(m) day = tonumber(d) end) _VerifyDateWithYear(year, month, day) return { NormalizeDate(year, month, day), GetChineseDate(year, month, day, false), GetChineseDate(year, month, day, true), } end ---------------------------------- _MATH_KEYWORDS = { "abs", "acos", "asin", "atan", "atan2", "ceil", "cos", "cosh", "deg", "exp", "floor", "fmod", "frexp", "ldexp", "log", "log10", "max", "min", "modf", "pi", "pow", "rad", "random", "randomseed", "sin", "sinh", "sqrt", "tan", "tanh", } function _AddMathKeyword(input) local ret = input for _, keyword in pairs(_MATH_KEYWORDS) do ret = ret:gsub(string.format("([^%%a\.])(%s\(.-\))", keyword), "%1math\.%2") ret = ret:gsub(string.format("^(%s\(.-\))", keyword), "math\.%1") end return ret end function Compute(input) local expr = "return " .. _AddMathKeyword(input) local func = loadstring(expr) if func == nil then return "-- 未完整表达式 --" end local ret = func() if ret == math.huge then -- div/0 return "-- 计算错误 --" end if ret ~= ret then -- We rely on the property that NaN is the only value not equal to itself. return "-- 计算错误 --" end return ret end ---------------------------------- _TO_BE_REPLACED_FLAG = "#TO_BE_REPLACED#" _ASCII_IMAGE_TABLE = { ["birthday"] = { [[ .......................................................................... H A P P Y B I R T H D A Y #TO_BE_REPLACED# ! .......................................................................... .....................**............................*...................... .....................++..............**..........*+.*..................... ...................*+*+..............**..........*++*..................... .................*+***++*............*+........*.*.*++*................... .................**..*+*.*..........*+.......*..*+.*.**................... ................+*.**++**+*........*+*+*.....*.*+**+***................... ................+**+*.*+**+*.....*+*.*++*.....**+**++*.................... .................**++**+*++*....**..*++.*+.....**+..+*.................... ..................*+++.++*......+*.*+***.+.......*.+..**.................. .............********..*.***...*.**+*.*+**.....+*+..****.................. ............*+*...****...+*....*+++++**++.....********.................... .............++....***+++**....+.*******....****...*******................ ..............*+*........*+******+***..****.**+.......*+**................ ..............*+*..........+++...***+.#+**...*+*.......+*................. ..............*+*..........+**+*.....**+++*..++.........++................ ..............*+*..........**.*+*........*+*..*+*......*+**............... ..............*+*............+++*..........**.*+*........*++.............. ..............*+*............+++*...........*+*..........*++.............. ...........***+.*............+++*...........*+*..........*+***............ .......******.*+*............+++*...........*+*..........*+*.++*.......... ......***......++...........*+*+*...........*++*************...**++....... ....*+*.**......***************+*...........*+*********....*.....***...... ....++...*+**.................*+*...........*+*............*....**.**..... ...*+*.....*******.............*+*..........*+*....**********.***...**.... ...*+*...*......************....*************...**..........****......*... ...++....*******.......***+++*********************************.......**... ..++.....++...*+*......*+***+*..........*********..........**...*..*..*... ..+*....*+*...*+......*+....*+*.......*+**.....*+*........**.....*+**++... ....*+.....**+.......**.....**........**........+*........**.......**+*... ...*.+......*+***.*****.....*+......***.........+*........+*.......*+**... ...*.+........******.........*********..........****..*****......***+*.... ....*.*.....................................................**....*+...... ....**+*...................................................+*****+*....... ........**++......................................*++*....*++*............ ........*+******...............................*************.............. ...............****++*###*******###########*****++........................ .......................................................................... ]], "生日蛋糕"}, ["search"] = { [[            --\--+--/--             { o_o } ┏━━━━━━━━━━oOo━(__)━oOo━┓  #TO_BE_REPLACED# ┗━━━━━━━━━━━━━━━━━━┛    ┏━━━━┓  ┏━━━━┓    ┃ 搜索 ┃  ┃手气不错┃    ┗━━━━┛  ┗━━━━┛ ]], "搜索"}, } function PrintAscii(input) if #input <= 0 then local metatables = {} for k, v in pairs(_ASCII_IMAGE_TABLE) do table.insert(metatables, {["suggest"] = k, ["help"] = v[2]}) end return metatables elseif _ASCII_IMAGE_TABLE[input] then local result = _ASCII_IMAGE_TABLE[input][1] local last_commit = ime.get_last_commit() if #last_commit <= 0 or #last_commit > 20 then last_commit = "" end return result:gsub(_TO_BE_REPLACED_FLAG, last_commit) else error("Invalid argument") end end ---------------------------------- -- Bitmaps table used for ascii_large_letters(), in 5x7 bitmaps. _LARGE_LETTER_BITMAPS = { [","] = [[ ,, , , ]], ["-"] = [[ ----- ]], ["."] = [[ .. .. ]], ["0"] = [[ 000 0 0 0 0 0 0 0 0 0 0 000 ]], ["1"] = [[ 1 111 1 1 1 1 11111 ]], ["2"] = [[ 222 2 2 2 2 2 2 22222 ]], ["3"] = [[ 333 3 3 3 33 3 3 3 333 ]], ["4"] = [[ 4 44 4 4 4 4 44444 4 444 ]], ["5"] = [[ 55555 5 5555 5 5 5 5 555 ]], ["6"] = [[ 66 6 6 6666 6 6 6 6 666 ]], ["7"] = [[ 77777 7 7 7 7 7 7 7 ]], ["8"] = [[ 888 8 8 8 8 888 8 8 8 8 888 ]], ["9"] = [[ 999 9 9 9 9 9999 9 9 99 ]], ["A"] = [[ A A A A A A AAAAA A A A A ]], ["B"] = [[ BBBB B B B B BBBB B B B B BBBB ]], ["C"] = [[ CCC C C C C C C C CCC ]], ["D"] = [[ DDD D D D D D D D D D D DDD ]], ["E"] = [[ EEEEE E E EEEE E E EEEEE ]], ["F"] = [[ FFFFF F F FFFF F F F ]], ["G"] = [[ GGG G G G G GG G G G G GGG ]], ["H"] = [[ H H H H H H HHHHH H H H H H H ]], ["I"] = [[ IIIII I I I I I IIIII ]], ["J"] = [[ JJJJJ J J J J J JJ ]], ["K"] = [[ K K K K K K KK K K K K K K ]], ["L"] = [[ L L L L L L LLLLL ]], ["M"] = [[ M M MMM MMM MMM M M M M M M M M ]], ["N"] = [[ N N N N NN N N N N N NN N N N N ]], ["O"] = [[ OOO O O O O O O O O O O OOO ]], ["P"] = [[ PPPP P P P P PPPP P P P ]], ["Q"] = [[ QQQ Q Q Q Q Q Q Q Q Q Q Q Q QQQQ ]], ["R"] = [[ RRRR R R R R RRRR R R R R R R ]], ["S"] = [[ SSS S S S SSS S S S SSS ]], ["T"] = [[ TTTTT T T T T T T ]], ["U"] = [[ U U U U U U U U U U U U UUU ]], ["V"] = [[ V V V V V V V V V V V V V ]], ["W"] = [[ W W W W W W W W WWW WWW WWW W W ]], ["X"] = [[ X X X X X X X X X X X X X ]], ["Y"] = [[ Y Y Y Y Y Y Y Y Y Y ]], ["Z"] = [[ ZZZZZ Z Z Z Z Z ZZZZZ ]], } -- Converts input string to ascii image of large letters. function PrintLetter(input_string) if #input_string == 0 then return {} end local letter_width = 5 local letter_height = 7 local max_string_length = 16 local result_lines = {} for i = 1, letter_height do result_lines[i] = "" end input_string = input_string:upper() -- Limits the input string size. input_string = input_string:sub(1, max_string_length) -- Only interate on valid characters. for c in input_string:gmatch("[0-9A-Z ,.-]") do local letter = _LARGE_LETTER_BITMAPS[c] -- Splits the letter bitmap into lines and appends each line to the -- corresponding line of the result. local lines = ime.split_string(letter, "\n") for i, line in ipairs(lines) do if i > letter_height then break end for i = 1, letter_width - #line do line = line .. ' ' end result_lines[i] = result_lines[i] .. line .. ' ' end end -- Merges result lines. for i, line in ipairs(result_lines) do result_lines[i] = ime.trim_string_right(result_lines[i]) end local result = "\n" .. ime.join_string(result_lines, "\n") .. "\n" return result end -- Dice images. _DICE_BITMAPS = { [[ /---------\ | | | | | (O) | | | | | \---------/ ]], [[ /---------\ | | | @ | | | | @ | | | \---------/ ]], [[ /---------\ | | | @ | | @ | | @ | | | \---------/ ]], [[ /---------\ | | | @ @ | | | | @ @ | | | \---------/ ]], [[ /---------\ | | | @ @ | | @ | | @ @ | | | \---------/ ]], [[ /---------\ | | | @ @ | | @ @ | | @ @ | | | \---------/ ]], } math.randomseed(os.time()) -- Plays and shows n dices. function PlayDice(n) n = math.min(n, 6) n = math.max(n, 1) local dice_height = 7 local result_lines = {} for i = 1, dice_height do result_lines[i] = "" end for i = 1, n do local index = math.random(1, 6) local dice = _DICE_BITMAPS[index] -- Splits the dice bitmap into lines and appends each line to the -- corresponding line of the result. local lines = ime.split_string(dice, "\n") for i, line in ipairs(lines) do if i > dice_height then break end result_lines[i] = result_lines[i] .. line .. ' ' end end -- Merges result lines. for i, line in ipairs(result_lines) do result_lines[i] = ime.trim_string_right(result_lines[i]) end local result = "\n" .. ime.join_string(result_lines, "\n") .. "\n" return result end -------------------------- _ZODIAC_TABLE = { [{3, 21, 4, 19}] = "白羊座(Aries) ♈", [{4, 20, 5, 20}] = "金牛座(Taurus) ♉", [{5, 21, 6, 21}] = "双子座(Gemini) ♊", [{6, 22, 7, 22}] = "巨蟹座(Cancer) ♋", [{7, 23, 8, 22}] = "狮子座(Leo) ♌", [{8, 23, 9, 23}] = "处女座(Virgo) ♍", [{9, 24, 10, 23}] = "天秤座(Libra) ♎", [{10, 24, 11, 21}] = "天蝎座(Scorpio) ♏", [{11, 22, 12, 21}] = "射手座(Sagittarius) ♐", [{12, 22, 12, 31}] = "摩羯座(Capricorn) ♑", [{1, 1, 1, 19}] = "摩羯座(Capricorn) ♑", [{1, 20, 2, 18}] = "水瓶座(Aquarius) ♒", [{2, 19, 3, 20}] = "双鱼座(Pisces) ♓", } _MONTH_TABLE_NORMAL = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 } _MONTH_TABLE_LEAF = { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 } function _CompareMonthAndDay(month1, day1, month2, day2) if month1 < month2 then return -1 elseif month1 > month2 then return 1 elseif day1 < day2 then return -1 elseif day1 > day2 then return 1 else return 0 end end -- birthday is a string in MM-DD format. function QueryZodiac(birthday) local month = 0 local day = 0 birthday:gsub("([0-9]+)-([0-9]+)$", function(m, d) month = tonumber(m) day = tonumber(d) end ) _VerifyDate(month, day) for range, name in pairs(_ZODIAC_TABLE) do local from_month = range[1] local from_day = range[2] local to_month = range[3] local to_day = range[4] if _CompareMonthAndDay(month, day, from_month, from_day) >=0 and _CompareMonthAndDay(month, day, to_month, to_day) <=0 then return name end end error("Should never reach here") end ----- -- Print Chinese manuscript grids. width_and_height in "WxH" format. -- ┏━━━━━━━━━┓ -- ┣━┳━┳━┳━┳━┫ -- ┃ ┃ ┃ ┃ ┃ ┃ -- ┣━┻━┻━┻━┻━┫ -- ┣━┳━┳━┳━┳━┫ -- ┃ ┃ ┃ ┃ ┃ ┃ -- ┣━┻━┻━┻━┻━┫ -- ┣━┳━┳━┳━┳━┫ -- ┃ ┃ ┃ ┃ ┃ ┃ -- ┣━┻━┻━┻━┻━┫ -- ┗━━━━━━━━━┛ function PrintGaozhi(width_and_height) local width local height width_and_height:gsub("([0-9]+)[x%*]([0-9]+)$", function(w, h) width = w height = h end ) width = math.min(width, 20) width = math.max(width, 1) height = math.min(height, 20) height = math.max(height, 1) local result = "\n" local print_line = function(leading, middle, middle_repeat, ending) result = result .. leading for i = 1, middle_repeat do result = result .. middle end result = result .. ending result = result .. "\n" end print_line("┏", "━", width * 2 - 1, "┓") for i = 1, height do print_line("┣", "━┳", width - 1, "━┫") print_line("┃", " ┃", width, "") print_line("┣", "━┻", width - 1, "━┫") end print_line("┗", "━", width * 2 - 1, "┛") return result .. "\n" end function GetCurrentTime() return GetTime("") end function GetToday() return GetDate("") end ------------ ime.register_command("sj", "GetTime", "输入时间", "alpha", "输入可选时间,例如12:34") ime.register_command("rq", "GetDate", "输入日期", "alpha", "输入可选日期,例如2008-08-08") ime.register_command("js", "Compute", "计算模式", "none", "输入表达式,例如3*log(4+2)") ime.register_command("gz", "PrintGaozhi", "打印稿纸", "none", "输入稿纸大小,例如2x3") ime.register_command("xz", "QueryZodiac", "查询星座", "none", "输入您的生日,例如12-14") ime.register_command("sz", "PlayDice", "掷骰子", "none", "输入骰子个数,例如3") ime.register_command("zf", "PrintLetter", "打印字符", "none", "请输入字母或数字序列,例如hello") ime.register_command("hh", "PrintAscii", "画画") ime.register_trigger("GetCurrentTime", "显示时间", {}, {'时间'}) ime.register_trigger("GetToday", "显示日期", {}, {'日期'}) ibus-pinyin-1.5.0/lua/lua-plugin.h0000664000175000017500000001077611776565552013753 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2010 Peng Wu * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef LUA_PLUGIN_H #define LUA_PLUGIN_H #include #include #include #include #define LUA_IMELIBNAME "ime" LUALIB_API int (luaopen_ime) (lua_State * L); LUALIB_API int (luaopen_myos) (lua_State * L); #define LUA_IMELIB_CONTEXT "__context" typedef struct _lua_command_t{ const char * command_name; const char * lua_function_name; const char * description; const char * leading; /* optional, default "digit". */ const char * help; /* optional. */ } lua_command_t; typedef struct _lua_command_candidate_t{ const char * suggest; const char * help; const char * content; } lua_command_candidate_t; typedef struct _lua_trigger_t{ const char * lua_function_name; const char * description; /*< private, skip it, and register it into Special Table directly with * wildcard. >*/ /* * list of input_trigger_strings; * list of candidate_trigger_strings; */ } lua_trigger_t; /* * Type macros. */ #define IBUS_TYPE_ENGINE_PLUGIN (ibus_engine_plugin_get_type ()) #define IBUS_ENGINE_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), IBUS_TYPE_ENGINE_PLUGIN, IBusEnginePlugin)) #define IBUS_IS_ENGINE_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), IBUS_TYPE_ENGINE_PLUGIN)) #define IBUS_ENGINE_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), IBUS_TYPE_ENGINE_PLUGIN, IBusEnginePluginClass)) #define IBUS_IS_ENGINE_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS ((klass), IBUS_TYPE_ENGINE_PLUGIN)) #define IBUS_ENGINE_PLUGIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), IBUS_TYPE_ENGINE_PLUGIN, IBusEnginePluginClass)) typedef struct _IBusEnginePlugin IBusEnginePlugin; typedef struct _IBusEnginePluginClass IBusEnginePluginClass; typedef struct _IBusEnginePluginPrivate IBusEnginePluginPrivate; void lua_plugin_openlibs (lua_State *L); void lua_plugin_store_plugin(lua_State * L, IBusEnginePlugin * plugin); struct _IBusEnginePlugin { GObject parent_instance; /*< private >*/ IBusEnginePluginPrivate *priv; }; struct _IBusEnginePluginClass { GObjectClass parent_class; }; GType ibus_engine_plugin_get_type(void); /** * create a new ibus engine plugin. */ IBusEnginePlugin * ibus_engine_plugin_new(); /** * load a new lua script for ibus engine plugin. */ int ibus_engine_plugin_load_lua_script(IBusEnginePlugin * plugin, const char * filename); /** * add a lua_command_t to plugin. */ gboolean ibus_engine_plugin_add_command(IBusEnginePlugin * plugin, lua_command_t * command); /** * retrieve all available lua plugin commands. * return array of command informations of type lua_command_t without copies. */ const GArray * ibus_engine_plugin_get_available_commands(IBusEnginePlugin * plugin); /** * Lookup a special command in ime lua extension. * command must be an 2-char long string. * return the matched command. */ const lua_command_t * ibus_engine_plugin_lookup_command(IBusEnginePlugin * plugin, const char * command_name); /** * retval int: returns the number of results, * only support string or string array. * the consequence call of ibus_engine_plugin_get_retval* must follow this call immediately. */ int ibus_engine_plugin_call(IBusEnginePlugin * plugin, const char * lua_function_name, const char * argument /*optional, maybe NULL.*/); /** * retrieve the retval string value. (value has been copied.) */ const lua_command_candidate_t * ibus_engine_plugin_get_retval(IBusEnginePlugin * plugin); /** * retrieve the array of lua_command_candidate_t values. (string values have been copied.) */ GArray * ibus_engine_plugin_get_retvals(IBusEnginePlugin * plugin); void ibus_engine_plugin_free_candidate(lua_command_candidate_t * candidate); #endif ibus-pinyin-1.5.0/lua/lmyoslib.c0000664000175000017500000000762011762161772013504 00000000000000/* ** $Id: loslib.c,v 1.19.1.3 2008/01/18 16:38:18 roberto Exp $ ** Standard Operating System library ** See Copyright Notice in lua.h */ #include #include #include #include #include #define loslib_c #define LUA_LIB #include "lua.h" #include "lauxlib.h" #include "lualib.h" /* ** {====================================================== ** Time/Date operations ** { year=%Y, month=%m, day=%d, hour=%H, min=%M, sec=%S, ** wday=%w+1, yday=%j, isdst=? } ** ======================================================= */ static void setfield (lua_State *L, const char *key, int value) { lua_pushinteger(L, value); lua_setfield(L, -2, key); } static void setboolfield (lua_State *L, const char *key, int value) { if (value < 0) /* undefined? */ return; /* does not set field */ lua_pushboolean(L, value); lua_setfield(L, -2, key); } static int getboolfield (lua_State *L, const char *key) { int res; lua_getfield(L, -1, key); res = lua_isnil(L, -1) ? -1 : lua_toboolean(L, -1); lua_pop(L, 1); return res; } static int getfield (lua_State *L, const char *key, int d) { int res; lua_getfield(L, -1, key); if (lua_isnumber(L, -1)) res = (int)lua_tointeger(L, -1); else { if (d < 0) return luaL_error(L, "field " LUA_QS " missing in date table", key); res = d; } lua_pop(L, 1); return res; } static int os_date (lua_State *L) { const char *s = luaL_optstring(L, 1, "%c"); time_t t = luaL_opt(L, (time_t)luaL_checknumber, 2, time(NULL)); struct tm *stm; if (*s == '!') { /* UTC? */ stm = gmtime(&t); s++; /* skip `!' */ } else stm = localtime(&t); if (stm == NULL) /* invalid date? */ lua_pushnil(L); else if (strcmp(s, "*t") == 0) { lua_createtable(L, 0, 9); /* 9 = number of fields */ setfield(L, "sec", stm->tm_sec); setfield(L, "min", stm->tm_min); setfield(L, "hour", stm->tm_hour); setfield(L, "day", stm->tm_mday); setfield(L, "month", stm->tm_mon+1); setfield(L, "year", stm->tm_year+1900); setfield(L, "wday", stm->tm_wday+1); setfield(L, "yday", stm->tm_yday+1); setboolfield(L, "isdst", stm->tm_isdst); } else { char cc[3]; luaL_Buffer b; cc[0] = '%'; cc[2] = '\0'; luaL_buffinit(L, &b); for (; *s; s++) { if (*s != '%' || *(s + 1) == '\0') /* no conversion specifier? */ luaL_addchar(&b, *s); else { size_t reslen; char buff[200]; /* should be big enough for any conversion result */ cc[1] = *(++s); reslen = strftime(buff, sizeof(buff), cc, stm); luaL_addlstring(&b, buff, reslen); } } luaL_pushresult(&b); } return 1; } static int os_time (lua_State *L) { time_t t; if (lua_isnoneornil(L, 1)) /* called without args? */ t = time(NULL); /* get current time */ else { struct tm ts; luaL_checktype(L, 1, LUA_TTABLE); lua_settop(L, 1); /* make sure table is at the top */ ts.tm_sec = getfield(L, "sec", 0); ts.tm_min = getfield(L, "min", 0); ts.tm_hour = getfield(L, "hour", 12); ts.tm_mday = getfield(L, "day", -1); ts.tm_mon = getfield(L, "month", -1) - 1; ts.tm_year = getfield(L, "year", -1) - 1900; ts.tm_isdst = getboolfield(L, "isdst"); t = mktime(&ts); } if (t == (time_t)(-1)) lua_pushnil(L); else lua_pushnumber(L, (lua_Number)t); return 1; } static int os_difftime (lua_State *L) { lua_pushnumber(L, difftime((time_t)(luaL_checknumber(L, 1)), (time_t)(luaL_optnumber(L, 2, 0)))); return 1; } /* }====================================================== */ static const luaL_Reg syslib[] = { {"date", os_date}, {"difftime", os_difftime}, {"time", os_time}, {NULL, NULL} }; /* }====================================================== */ LUALIB_API int luaopen_myos (lua_State *L) { luaL_register(L, LUA_OSLIBNAME, syslib); return 1; } ibus-pinyin-1.5.0/lua/lua-ext-console.c0000664000175000017500000001073011776565552014676 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2010 Peng Wu * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #define _GNU_SOURCE #include #include #include #include "lua-plugin.h" void print_help(){ printf("Usage: lua_ext_console [SCRIPT_FILE] ...\n"); printf("Loads one or more script files then evaluates lua extension modes in an interactive shell.\n"); } void print_interactive_help(){ printf("i \t\t\t - lists all commands.\n"); printf("i [COMMAND] \t\t - evaluates command without argument. \n"); printf("i [COMMAND] [ARGUMENT] \t evaluates command with argument. \n"); /* printf("g [TRIGGER_STRING] \t\t - tests a trigger string, fire trigger if hit.\n"); */ printf("quit \t\t\t - quit the shell.\n"); printf("help \t\t\t - show this message.\n"); } void list_all_commands(IBusEnginePlugin * plugin){ const GArray * commands = ibus_engine_plugin_get_available_commands(plugin); size_t i; for ( i = 0; i < commands->len; ++i ){ lua_command_t * command = &g_array_index(commands, lua_command_t, i); printf("%s.%s >\t", command->command_name, command->description); } printf("\n"); } int print_lua_call_result(IBusEnginePlugin * plugin, size_t num){ if ( 1 == num ) { const lua_command_candidate_t * result = ibus_engine_plugin_get_retval(plugin); if (result->content) printf("result: %s.\n", result->content); } if ( num > 1) { GArray * results = ibus_engine_plugin_get_retvals(plugin); size_t i; for ( i = 0; i < results->len; ++i) { const lua_command_candidate_t * result = g_array_index(results, const lua_command_candidate_t *, i); if (result->content) printf("%d.%s >\t", (int)i, result->content); else{ printf("%d. %s [%s]\t", (int)i, result->suggest, result->help); } } printf("\n"); } return 0; } int do_lua_call(IBusEnginePlugin * plugin, const char * command_name, const char * argument){ const lua_command_t * command; size_t num; g_return_val_if_fail(2 == strlen(command_name), 2); command = ibus_engine_plugin_lookup_command(plugin, command_name); if ( NULL == command) { fprintf(stderr, "command %s doesn't exist.\n", command_name); return 1; } num = ibus_engine_plugin_call(plugin, command->lua_function_name, argument); print_lua_call_result(plugin, num); return 0; } int main(int argc, char * argv[]){ char * line = NULL; size_t len = 0; ssize_t read; int i; if ( 1 == argc ){ print_help(); exit(1); } g_type_init(); IBusEnginePlugin * plugin = ibus_engine_plugin_new(); for ( i = 1; i < argc; ++i){ ibus_engine_plugin_load_lua_script(plugin, argv[i]); } printf("Lua Plugin Console for ibus-pinyin.\n"); printf("Type ? for more information.\n"); printf("> "); while ((read = getline(&line, &len, stdin)) != -1) { line[read - 1] = '\0'; gchar ** strs = g_strsplit_set(line, " \t", 0); size_t len = g_strv_length(strs); switch (len){ case 0: print_interactive_help(); break; case 1: if ( 0 == strcmp("quit", strs[0]) ) exit(EXIT_SUCCESS); if ( 0 == strcmp("help", strs[0]) || 0 == strcmp("?", strs[0]) ) print_interactive_help(); if ( 0 == strcmp("i", strs[0]) ) list_all_commands(plugin); break; case 2: if ( 0 == strcmp("i", strs[0])) do_lua_call(plugin, strs[1], NULL); if ( 0 == strcmp("g", strs[0])) fprintf(stderr, "ime trigger unimplemented."); break; case 3: if ( 0 == strcmp("i", strs[0])) do_lua_call(plugin, strs[1], strs[2]); break; default: fprintf(stderr, "wrong arguments."); break; } g_strfreev(strs); printf("> "); } if (line) free(line); return EXIT_SUCCESS; } ibus-pinyin-1.5.0/lua/Makefile.in0000664000175000017500000010362112063705663013547 00000000000000# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2007-2008 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. VPATH = @srcdir@ am__make_dryrun = \ { \ am__dry=no; \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ *) \ for am__flg in $$MAKEFLAGS; do \ case $$am__flg in \ *=*|--*) ;; \ *n*) am__dry=yes; break;; \ esac; \ done;; \ esac; \ test $$am__dry = yes; \ } 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@ TESTS = test-lua-plugin$(EXEEXT) noinst_PROGRAMS = lua-ext-console$(EXEEXT) $(am__EXEEXT_1) subdir = lua DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/as-version.m4 \ $(top_srcdir)/m4/boost.m4 $(top_srcdir)/m4/intltool.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = LTLIBRARIES = $(noinst_LTLIBRARIES) libpylua_la_DEPENDENCIES = am_libpylua_la_OBJECTS = libpylua_la-lua-plugin.lo \ libpylua_la-lua-plugin-init.lo libpylua_la-lmyoslib.lo libpylua_la_OBJECTS = $(am_libpylua_la_OBJECTS) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent libpylua_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libpylua_la_CFLAGS) \ $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ am__EXEEXT_1 = test-lua-plugin$(EXEEXT) PROGRAMS = $(noinst_PROGRAMS) am_lua_ext_console_OBJECTS = \ lua_ext_console-lua-ext-console.$(OBJEXT) lua_ext_console_OBJECTS = $(am_lua_ext_console_OBJECTS) lua_ext_console_DEPENDENCIES = libpylua.la lua_ext_console_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(lua_ext_console_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ -o $@ am_test_lua_plugin_OBJECTS = \ test_lua_plugin-test-lua-plugin.$(OBJEXT) test_lua_plugin_OBJECTS = $(am_test_lua_plugin_OBJECTS) test_lua_plugin_DEPENDENCIES = libpylua.la test_lua_plugin_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(test_lua_plugin_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ -o $@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ $(AM_CFLAGS) $(CFLAGS) AM_V_CC = $(am__v_CC_@AM_V@) am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) am__v_CC_0 = @echo " CC " $@; AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ CCLD = $(CC) LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(AM_LDFLAGS) $(LDFLAGS) -o $@ AM_V_CCLD = $(am__v_CCLD_@AM_V@) am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) am__v_CCLD_0 = @echo " CCLD " $@; AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libpylua_la_SOURCES) $(lua_ext_console_SOURCES) \ $(test_lua_plugin_SOURCES) DIST_SOURCES = $(libpylua_la_SOURCES) $(lua_ext_console_SOURCES) \ $(test_lua_plugin_SOURCES) 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 -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(lua_scriptdir)" DATA = $(lua_script_DATA) ETAGS = etags CTAGS = ctags am__tty_colors = \ red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BOOST_CPPFLAGS = @BOOST_CPPFLAGS@ BOOST_ROOT = @BOOST_ROOT@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENV = @ENV@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ IBUS_CFLAGS = @IBUS_CFLAGS@ IBUS_LIBS = @IBUS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ LUA_CFLAGS = @LUA_CFLAGS@ LUA_LIBS = @LUA_LIBS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ 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@ PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@ PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@ PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@ PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@ PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PYTHON = @PYTHON@ PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ PYTHON_PLATFORM = @PYTHON_PLATFORM@ PYTHON_PREFIX = @PYTHON_PREFIX@ PYTHON_VERSION = @PYTHON_VERSION@ PYZY = @PYZY@ PYZY_CFLAGS = @PYZY_CFLAGS@ PYZY_LIBS = @PYZY_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SQLITE3 = @SQLITE3@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ 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@ 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@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ pkgpyexecdir = @pkgpyexecdir@ pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ 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@ lua_script_DATA = \ base.lua \ $(NULL) lua_scriptdir = $(pkgdatadir) noinst_LTLIBRARIES = \ libpylua.la \ $(NULL) libpylua_la_SOURCES = \ lua-plugin.h \ lua-plugin.c \ lua-plugin-init.c \ lmyoslib.c \ $(NULL) libpylua_la_CFLAGS = \ @IBUS_CFLAGS@ \ @LUA_CFLAGS@ \ $(NULL) libpylua_la_LIBADD = \ @IBUS_LIBS@ \ @LUA_LIBS@ \ $(NULL) test_lua_plugin_SOURCES = \ test-lua-plugin.c \ $(NULL) test_lua_plugin_CFLAGS = \ @IBUS_CFLAGS@ \ @LUA_CFLAGS@ \ -DLUASCRIPTDIR=\"$(top_srcdir)/lua\" \ $(NULL) test_lua_plugin_LDADD = \ libpylua.la \ $(NULL) lua_ext_console_SOURCES = \ lua-ext-console.c \ $(NULL) lua_ext_console_CFLAGS = \ @IBUS_CFLAGS@ \ @LUA_CFLAGS@ \ $(NULL) lua_ext_console_LDADD = \ libpylua.la \ $(NULL) EXTRA_DIST = \ base.lua \ $(NULL) all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj $(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 lua/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu lua/Makefile .PRECIOUS: 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__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ 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): clean-noinstLTLIBRARIES: -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ test "$$dir" != "$$p" || dir=.; \ echo "rm -f \"$${dir}/so_locations\""; \ rm -f "$${dir}/so_locations"; \ done libpylua.la: $(libpylua_la_OBJECTS) $(libpylua_la_DEPENDENCIES) $(EXTRA_libpylua_la_DEPENDENCIES) $(AM_V_CCLD)$(libpylua_la_LINK) $(libpylua_la_OBJECTS) $(libpylua_la_LIBADD) $(LIBS) clean-noinstPROGRAMS: @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \ echo " rm -f" $$list; \ rm -f $$list || exit $$?; \ test -n "$(EXEEXT)" || exit 0; \ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list lua-ext-console$(EXEEXT): $(lua_ext_console_OBJECTS) $(lua_ext_console_DEPENDENCIES) $(EXTRA_lua_ext_console_DEPENDENCIES) @rm -f lua-ext-console$(EXEEXT) $(AM_V_CCLD)$(lua_ext_console_LINK) $(lua_ext_console_OBJECTS) $(lua_ext_console_LDADD) $(LIBS) test-lua-plugin$(EXEEXT): $(test_lua_plugin_OBJECTS) $(test_lua_plugin_DEPENDENCIES) $(EXTRA_test_lua_plugin_DEPENDENCIES) @rm -f test-lua-plugin$(EXEEXT) $(AM_V_CCLD)$(test_lua_plugin_LINK) $(test_lua_plugin_OBJECTS) $(test_lua_plugin_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libpylua_la-lmyoslib.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libpylua_la-lua-plugin-init.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libpylua_la-lua-plugin.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lua_ext_console-lua-ext-console.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_lua_plugin-test-lua-plugin.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< libpylua_la-lua-plugin.lo: lua-plugin.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libpylua_la_CFLAGS) $(CFLAGS) -MT libpylua_la-lua-plugin.lo -MD -MP -MF $(DEPDIR)/libpylua_la-lua-plugin.Tpo -c -o libpylua_la-lua-plugin.lo `test -f 'lua-plugin.c' || echo '$(srcdir)/'`lua-plugin.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libpylua_la-lua-plugin.Tpo $(DEPDIR)/libpylua_la-lua-plugin.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lua-plugin.c' object='libpylua_la-lua-plugin.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libpylua_la_CFLAGS) $(CFLAGS) -c -o libpylua_la-lua-plugin.lo `test -f 'lua-plugin.c' || echo '$(srcdir)/'`lua-plugin.c libpylua_la-lua-plugin-init.lo: lua-plugin-init.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libpylua_la_CFLAGS) $(CFLAGS) -MT libpylua_la-lua-plugin-init.lo -MD -MP -MF $(DEPDIR)/libpylua_la-lua-plugin-init.Tpo -c -o libpylua_la-lua-plugin-init.lo `test -f 'lua-plugin-init.c' || echo '$(srcdir)/'`lua-plugin-init.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libpylua_la-lua-plugin-init.Tpo $(DEPDIR)/libpylua_la-lua-plugin-init.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lua-plugin-init.c' object='libpylua_la-lua-plugin-init.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libpylua_la_CFLAGS) $(CFLAGS) -c -o libpylua_la-lua-plugin-init.lo `test -f 'lua-plugin-init.c' || echo '$(srcdir)/'`lua-plugin-init.c libpylua_la-lmyoslib.lo: lmyoslib.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libpylua_la_CFLAGS) $(CFLAGS) -MT libpylua_la-lmyoslib.lo -MD -MP -MF $(DEPDIR)/libpylua_la-lmyoslib.Tpo -c -o libpylua_la-lmyoslib.lo `test -f 'lmyoslib.c' || echo '$(srcdir)/'`lmyoslib.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libpylua_la-lmyoslib.Tpo $(DEPDIR)/libpylua_la-lmyoslib.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lmyoslib.c' object='libpylua_la-lmyoslib.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libpylua_la_CFLAGS) $(CFLAGS) -c -o libpylua_la-lmyoslib.lo `test -f 'lmyoslib.c' || echo '$(srcdir)/'`lmyoslib.c lua_ext_console-lua-ext-console.o: lua-ext-console.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lua_ext_console_CFLAGS) $(CFLAGS) -MT lua_ext_console-lua-ext-console.o -MD -MP -MF $(DEPDIR)/lua_ext_console-lua-ext-console.Tpo -c -o lua_ext_console-lua-ext-console.o `test -f 'lua-ext-console.c' || echo '$(srcdir)/'`lua-ext-console.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/lua_ext_console-lua-ext-console.Tpo $(DEPDIR)/lua_ext_console-lua-ext-console.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lua-ext-console.c' object='lua_ext_console-lua-ext-console.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lua_ext_console_CFLAGS) $(CFLAGS) -c -o lua_ext_console-lua-ext-console.o `test -f 'lua-ext-console.c' || echo '$(srcdir)/'`lua-ext-console.c lua_ext_console-lua-ext-console.obj: lua-ext-console.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lua_ext_console_CFLAGS) $(CFLAGS) -MT lua_ext_console-lua-ext-console.obj -MD -MP -MF $(DEPDIR)/lua_ext_console-lua-ext-console.Tpo -c -o lua_ext_console-lua-ext-console.obj `if test -f 'lua-ext-console.c'; then $(CYGPATH_W) 'lua-ext-console.c'; else $(CYGPATH_W) '$(srcdir)/lua-ext-console.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/lua_ext_console-lua-ext-console.Tpo $(DEPDIR)/lua_ext_console-lua-ext-console.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lua-ext-console.c' object='lua_ext_console-lua-ext-console.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lua_ext_console_CFLAGS) $(CFLAGS) -c -o lua_ext_console-lua-ext-console.obj `if test -f 'lua-ext-console.c'; then $(CYGPATH_W) 'lua-ext-console.c'; else $(CYGPATH_W) '$(srcdir)/lua-ext-console.c'; fi` test_lua_plugin-test-lua-plugin.o: test-lua-plugin.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_lua_plugin_CFLAGS) $(CFLAGS) -MT test_lua_plugin-test-lua-plugin.o -MD -MP -MF $(DEPDIR)/test_lua_plugin-test-lua-plugin.Tpo -c -o test_lua_plugin-test-lua-plugin.o `test -f 'test-lua-plugin.c' || echo '$(srcdir)/'`test-lua-plugin.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/test_lua_plugin-test-lua-plugin.Tpo $(DEPDIR)/test_lua_plugin-test-lua-plugin.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='test-lua-plugin.c' object='test_lua_plugin-test-lua-plugin.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_lua_plugin_CFLAGS) $(CFLAGS) -c -o test_lua_plugin-test-lua-plugin.o `test -f 'test-lua-plugin.c' || echo '$(srcdir)/'`test-lua-plugin.c test_lua_plugin-test-lua-plugin.obj: test-lua-plugin.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_lua_plugin_CFLAGS) $(CFLAGS) -MT test_lua_plugin-test-lua-plugin.obj -MD -MP -MF $(DEPDIR)/test_lua_plugin-test-lua-plugin.Tpo -c -o test_lua_plugin-test-lua-plugin.obj `if test -f 'test-lua-plugin.c'; then $(CYGPATH_W) 'test-lua-plugin.c'; else $(CYGPATH_W) '$(srcdir)/test-lua-plugin.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/test_lua_plugin-test-lua-plugin.Tpo $(DEPDIR)/test_lua_plugin-test-lua-plugin.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='test-lua-plugin.c' object='test_lua_plugin-test-lua-plugin.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_lua_plugin_CFLAGS) $(CFLAGS) -c -o test_lua_plugin-test-lua-plugin.obj `if test -f 'test-lua-plugin.c'; then $(CYGPATH_W) 'test-lua-plugin.c'; else $(CYGPATH_W) '$(srcdir)/test-lua-plugin.c'; fi` mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-lua_scriptDATA: $(lua_script_DATA) @$(NORMAL_INSTALL) @list='$(lua_script_DATA)'; test -n "$(lua_scriptdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(lua_scriptdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(lua_scriptdir)" || 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)$(lua_scriptdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(lua_scriptdir)" || exit $$?; \ done uninstall-lua_scriptDATA: @$(NORMAL_UNINSTALL) @list='$(lua_script_DATA)'; test -n "$(lua_scriptdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(lua_scriptdir)'; $(am__uninstall_files_from_dir) ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ 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 CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ 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" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags check-TESTS: $(TESTS) @failed=0; all=0; xfail=0; xpass=0; skip=0; \ srcdir=$(srcdir); export srcdir; \ list=' $(TESTS) '; \ $(am__tty_colors); \ if test -n "$$list"; then \ for tst in $$list; do \ if test -f ./$$tst; then dir=./; \ elif test -f $$tst; then dir=; \ else dir="$(srcdir)/"; fi; \ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ all=`expr $$all + 1`; \ case " $(XFAIL_TESTS) " in \ *[\ \ ]$$tst[\ \ ]*) \ xpass=`expr $$xpass + 1`; \ failed=`expr $$failed + 1`; \ col=$$red; res=XPASS; \ ;; \ *) \ col=$$grn; res=PASS; \ ;; \ esac; \ elif test $$? -ne 77; then \ all=`expr $$all + 1`; \ case " $(XFAIL_TESTS) " in \ *[\ \ ]$$tst[\ \ ]*) \ xfail=`expr $$xfail + 1`; \ col=$$lgn; res=XFAIL; \ ;; \ *) \ failed=`expr $$failed + 1`; \ col=$$red; res=FAIL; \ ;; \ esac; \ else \ skip=`expr $$skip + 1`; \ col=$$blu; res=SKIP; \ fi; \ echo "$${col}$$res$${std}: $$tst"; \ done; \ if test "$$all" -eq 1; then \ tests="test"; \ All=""; \ else \ tests="tests"; \ All="All "; \ fi; \ if test "$$failed" -eq 0; then \ if test "$$xfail" -eq 0; then \ banner="$$All$$all $$tests passed"; \ else \ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ fi; \ else \ if test "$$xpass" -eq 0; then \ banner="$$failed of $$all $$tests failed"; \ else \ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ fi; \ fi; \ dashes="$$banner"; \ skipped=""; \ if test "$$skip" -ne 0; then \ if test "$$skip" -eq 1; then \ skipped="($$skip test was not run)"; \ else \ skipped="($$skip tests were not run)"; \ fi; \ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ dashes="$$skipped"; \ fi; \ report=""; \ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ report="Please report to $(PACKAGE_BUGREPORT)"; \ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ dashes="$$report"; \ fi; \ dashes=`echo "$$dashes" | sed s/./=/g`; \ if test "$$failed" -eq 0; then \ col="$$grn"; \ else \ col="$$red"; \ fi; \ echo "$${col}$$dashes$${std}"; \ echo "$${col}$$banner$${std}"; \ test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \ test -z "$$report" || echo "$${col}$$report$${std}"; \ echo "$${col}$$dashes$${std}"; \ test "$$failed" -eq 0; \ else :; fi distdir: $(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 $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(DATA) installdirs: for dir in "$(DESTDIR)$(lua_scriptdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done 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: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || 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 clean-noinstLTLIBRARIES \ clean-noinstPROGRAMS mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-lua_scriptDATA 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 -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-lua_scriptDATA .MAKE: check-am install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ clean-generic clean-libtool clean-noinstLTLIBRARIES \ clean-noinstPROGRAMS ctags distclean distclean-compile \ distclean-generic distclean-libtool distclean-tags 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-lua_scriptDATA \ 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-compile mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ uninstall-am uninstall-lua_scriptDATA # 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: ibus-pinyin-1.5.0/lua/Makefile.am0000664000175000017500000000330412010524050013510 00000000000000# vim:set noet ts=4: # # ibus-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2007-2008 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. lua_script_DATA = \ base.lua \ $(NULL) lua_scriptdir = $(pkgdatadir) noinst_LTLIBRARIES = \ libpylua.la \ $(NULL) libpylua_la_SOURCES = \ lua-plugin.h \ lua-plugin.c \ lua-plugin-init.c \ lmyoslib.c \ $(NULL) libpylua_la_CFLAGS = \ @IBUS_CFLAGS@ \ @LUA_CFLAGS@ \ $(NULL) libpylua_la_LIBADD = \ @IBUS_LIBS@ \ @LUA_LIBS@ \ $(NULL) TESTS = \ test-lua-plugin \ $(NULL) noinst_PROGRAMS = \ lua-ext-console \ $(TESTS) \ $(NULL) test_lua_plugin_SOURCES = \ test-lua-plugin.c \ $(NULL) test_lua_plugin_CFLAGS = \ @IBUS_CFLAGS@ \ @LUA_CFLAGS@ \ -DLUASCRIPTDIR=\"$(top_srcdir)/lua\" \ $(NULL) test_lua_plugin_LDADD = \ libpylua.la \ $(NULL) lua_ext_console_SOURCES = \ lua-ext-console.c \ $(NULL) lua_ext_console_CFLAGS = \ @IBUS_CFLAGS@ \ @LUA_CFLAGS@ \ $(NULL) lua_ext_console_LDADD = \ libpylua.la \ $(NULL) EXTRA_DIST = \ base.lua \ $(NULL) ibus-pinyin-1.5.0/Makefile.am0000664000175000017500000000542012010524050012730 00000000000000# vim:set noet ts=4: # # ibus-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. if IBUS_BUILD_LUA_EXTENSION LUADIR=lua endif SUBDIRS = \ data \ $(LUADIR) \ src \ setup \ m4 \ po \ $(NULL) DISTCHECK_CONFIGURE_FLAGS = \ CFLAGS='-g -O3 -Wall' \ CXXFLAGS='-g -O3 -Wall' \ $(NULL) ACLOCAL_AMFLAGS = -I m4 EXTRA_DIST = \ autogen.sh \ ibus-pinyin.spec.in \ $(NULL) noinst_DIST = \ $(NULL) DISTCLEANFILES = \ po/stamp-it \ $(NULL) dist-hook: if test -d .git ; then \ git log --name-status --date=iso > $(distdir)/ChangeLog ; \ 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`" \ @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`" \ @PACKAGE_NAME@.spec .PHONY: debian/changelog debian/changelog: $(AM_V_GEN) \ ( \ . /etc/lsb-release; \ date=`date -R`; \ version=@VERSION@; \ serie=$(serie); \ if test -z "$$serie"; then \ serie=$$DISTRIB_CODENAME; \ fi; \ if test -z "$$release"; then \ release=1; \ fi; \ s=`cat debian/changelog.in`; \ eval "echo \"$${s}\""; \ ) > $@ ppa: dist debian/changelog $(AM_V_GEN) \ ( \ mkdir ppa; \ cp $(distdir).tar.gz ppa/@PACKAGE_NAME@_@PACKAGE_VERSION@.orig.tar.gz ; \ cd ppa; \ tar zxvf ../$(distdir).tar.gz ; \ cd $(distdir); \ cp -a ../../debian . ; \ cd debian; \ debuild -S -sa ; \ ) dpkg: dist debian/changelog $(AM_V_GEN) \ ( \ mkdir ppa; \ cd ppa; \ tar zxvf ../$(distdir).tar.gz ; \ cd $(distdir); \ cp -a ../../debian . ; \ cd debian; \ debuild -b -uc -us; \ ) upload: dist ./tools/googlecode_upload.py \ -s "ibus-pinyin(拼音)source code" \ -p ibus \ -l "Type-Source,OpSys-Linux,Chinese,Unstable" \ $(distdir).tar.gz clean-rpm: $(RM) -r "`uname -i`" clean-local: clean-rpm ibus-pinyin-1.5.0/src/0000775000175000017500000000000012064356726011570 500000000000000ibus-pinyin-1.5.0/src/PYFallbackEditor.h0000664000175000017500000000424711776565552015017 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_FALLBACK_EDITOR_ #define __PY_FALLBACK_EDITOR_ #include "PYText.h" #include "PYEditor.h" namespace PY { class FallbackEditor : public Editor { public: FallbackEditor (PinyinProperties &props, Config & config) : Editor (props, config), m_quote (TRUE), m_double_quote (TRUE), m_prev_committed_char (0) { } gboolean processKeyEvent (guint keyval, guint keycode, guint modifiers); void reset (void); void setPrevCommittedChar (gunichar ch) { m_prev_committed_char = ch; } private: void commit (gchar ch) { gchar str[2] = {ch, 0}; StaticText text (str); commitText (text); } void commit (gunichar ch) { Text text (ch); commitText (text); } void commit (const gchar *str) { StaticText text (str); commitText (text); } void commit (const String &str) { commit ((const gchar *)str); } gboolean processPunct (guint keyval, guint keycode, guint modifiers); gboolean processPunctForSimplifiedChinese (guint keyval, guint keycode, guint modifiers); gboolean processPunctForTraditionalChinese (guint keyval, guint keycode, guint modifiers); private: gboolean m_quote; gboolean m_double_quote; gunichar m_prev_committed_char; }; }; #endif ibus-pinyin-1.5.0/src/PYPhoneticEditor.h0000664000175000017500000000630712006506456015051 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_PHONETIC_EDITOR_H_ #define __PY_PHONETIC_EDITOR_H_ #include #include "PYEditor.h" #include "PYLookupTable.h" #include "PYPinyinObserver.h" #include "PYUtil.h" namespace PY { class PhoneticEditor : public Editor { public: PhoneticEditor (PinyinProperties & props, Config & config); virtual ~PhoneticEditor (); public: /* virtual functions */ virtual gboolean insert (gint ch); virtual gboolean removeCharBefore (void); virtual gboolean removeCharAfter (void); virtual gboolean removeWordBefore (void); virtual gboolean removeWordAfter (void); virtual gboolean moveCursorLeft (void); virtual gboolean moveCursorRight (void); virtual gboolean moveCursorLeftByWord (void); virtual gboolean moveCursorRightByWord (void); virtual gboolean moveCursorToBegin (void); virtual gboolean moveCursorToEnd (void); virtual void pageUp (void); virtual void pageDown (void); virtual void cursorUp (void); virtual void cursorDown (void); virtual void commit (void); virtual void reset (void); virtual void candidateClicked (guint index, guint button, guint state); virtual gboolean processKeyEvent (guint keyval, guint keycode, guint modifiers); virtual gboolean processSpace (guint keyval, guint keycode, guint modifiers); virtual gboolean processFunctionKey (guint keyval, guint keycode, guint modifiers); virtual void updateInputText (void); virtual void updateCursor (void); virtual void updateAuxiliaryText (void); virtual void updateAuxiliaryTextBefore (String &buffer); virtual void updateAuxiliaryTextAfter (String &buffer); virtual void updatePreeditText (void); virtual void updateLookupTable (void); virtual void updateLookupTableFast (void); virtual gboolean fillLookupTableByPage (void); void commitCallback (const String & commit_text); protected: void setContext (PyZy::InputContext::InputType type); void unsetContext (); gboolean selectCandidate (guint i); gboolean selectCandidateInPage (guint i); gboolean resetCandidate (guint i); gboolean resetCandidateInPage (guint i); gboolean unselectCandidates (void); /* varibles */ std::unique_ptr m_context; PinyinObserver m_observer; LookupTable m_lookup_table; }; }; #endif ibus-pinyin-1.5.0/src/PYRegex.h0000664000175000017500000000332711776565552013221 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_REGEX_H_ #define __PY_REGEX_H_ #include #include #include namespace PY { class Regex { public: Regex (const gchar *regex, gint cflags = REG_EXTENDED) { int retval; retval = regcomp (&m_regex, regex, cflags); if (retval != 0) { gchar errorbuf[128]; regerror (retval, &m_regex, errorbuf, sizeof (errorbuf)); g_debug ("regex error: %s", errorbuf); g_assert_not_reached (); } } ~Regex (void) { regfree (&m_regex); } gboolean match (const gchar *str) const { int retval; regmatch_t match; retval = regexec (&m_regex, str, 1, &match, 0); return retval == 0; } gboolean operator & (const gchar *str) const { return match (str); } private: regex_t m_regex; }; }; #endif ibus-pinyin-1.5.0/src/PYPinyinProperties.cc0000664000175000017500000001400512006506456015604 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "PYPinyinProperties.h" #include #include #include #include "PYConfig.h" #include "PYText.h" namespace PY { #define _(text) (dgettext (GETTEXT_PACKAGE, text)) PinyinProperties::PinyinProperties (Config & config) : m_config (config), m_mode_chinese (m_config.initChinese ()), m_mode_full (m_config.initFull ()), m_mode_full_punct (m_config.initFullPunct ()), m_mode_simp (m_config.initSimpChinese ()), m_prop_chinese ("mode.chinese", PROP_TYPE_NORMAL, StaticText ("CN"), m_mode_chinese ? PKGDATADIR"/icons/chinese.svg" : PKGDATADIR"/icons/english.svg", StaticText (_("Chinese"))), m_prop_full ("mode.full", PROP_TYPE_NORMAL, StaticText (m_mode_full ? "Aa" : "Aa"), m_mode_full ? PKGDATADIR"/icons/full.svg" : PKGDATADIR"/icons/half.svg", StaticText (_("Full/Half width"))), m_prop_full_punct ("mode.full_punct", PROP_TYPE_NORMAL, StaticText (m_mode_full_punct ? ",。" : ",."), m_mode_full_punct ? PKGDATADIR"/icons/full-punct.svg" : PKGDATADIR"/icons/half-punct.svg", StaticText (_("Full/Half width punctuation"))), m_prop_simp ("mode.simp", PROP_TYPE_NORMAL, StaticText (m_mode_simp ? "简" : "繁"), m_mode_simp ? PKGDATADIR"/icons/simp-chinese.svg" : PKGDATADIR"/icons/trad-chinese.svg", StaticText (_("Simplfied/Traditional Chinese"))), m_prop_setup ("setup", PROP_TYPE_NORMAL, StaticText (_("Preferences")), "ibus-setup", StaticText (_("Preferences"))), m_context (NULL) { m_props.append (m_prop_chinese); m_props.append (m_prop_full); m_props.append (m_prop_full_punct); m_props.append (m_prop_simp); m_props.append (m_prop_setup); } void PinyinProperties::toggleModeChinese (void) { m_mode_chinese = ! m_mode_chinese; m_prop_chinese.setLabel (m_mode_chinese ? "CN" : "EN"); m_prop_chinese.setIcon (m_mode_chinese ? PKGDATADIR"/icons/chinese.svg" : PKGDATADIR"/icons/english.svg"); updateProperty (m_prop_chinese); m_prop_full_punct.setSensitive (m_mode_chinese); updateProperty (m_prop_full_punct); } void PinyinProperties::toggleModeFull (void) { m_mode_full = !m_mode_full; m_prop_full.setLabel (m_mode_full ? "Aa" : "Aa"); m_prop_full.setIcon (m_mode_full ? PKGDATADIR"/icons/full.svg" : PKGDATADIR"/icons/half.svg"); updateProperty (m_prop_full); } void PinyinProperties::toggleModeFullPunct (void) { m_mode_full_punct = !m_mode_full_punct; m_prop_full_punct.setLabel (m_mode_full_punct ? ",。" : ",."); m_prop_full_punct.setIcon (m_mode_full_punct ? PKGDATADIR"/icons/full-punct.svg" : PKGDATADIR"/icons/half-punct.svg"); updateProperty (m_prop_full_punct); } void PinyinProperties::toggleModeSimp (void) { m_mode_simp = ! m_mode_simp; if (m_context != NULL) { m_context->setProperty(PyZy::InputContext::PROPERTY_MODE_SIMP, PyZy::Variant::fromBool (m_mode_simp)); } m_prop_simp.setLabel (m_mode_simp ? "简" : "繁"); m_prop_simp.setIcon (m_mode_simp ? PKGDATADIR"/icons/simp-chinese.svg" : PKGDATADIR"/icons/trad-chinese.svg"); updateProperty (m_prop_simp); } void PinyinProperties::reset (void) { if (modeChinese () != m_config.initChinese ()) { toggleModeChinese (); } if (modeFull () != m_config.initFull ()) { toggleModeFull (); } if (modeFullPunct () != m_config.initFullPunct ()) { toggleModeFullPunct (); } if (modeSimp () != m_config.initSimpChinese ()) { toggleModeSimp (); } } gboolean PinyinProperties::propertyActivate (const gchar *prop_name, guint prop_state) { const static std::string mode_chinese ("mode.chinese"); const static std::string mode_full ("mode.full"); const static std::string mode_full_punct ("mode.full_punct"); const static std::string mode_simp ("mode.simp"); if (mode_chinese == prop_name) { toggleModeChinese (); return TRUE; } else if (mode_full == prop_name) { toggleModeFull (); return TRUE; } else if (mode_full_punct == prop_name) { toggleModeFullPunct (); return TRUE; } else if (mode_simp == prop_name) { toggleModeSimp (); return TRUE; } return FALSE; } void PinyinProperties::setContext (PyZy::InputContext *context) { context->setProperty (PyZy::InputContext::PROPERTY_MODE_SIMP, PyZy::Variant::fromBool (m_mode_simp)); m_context = context; } void PinyinProperties::clearContext () { m_context = NULL; } }; ibus-pinyin-1.5.0/src/pinyin.xml.in0000664000175000017500000000267512064356715014155 00000000000000 org.freedesktop.IBus.Pinyin Pinyin Component ${libexecdir}/ibus-engine-pinyin --ibus 1.5.0 Peng Huang <shawn.p.huang@gmail.com> GPL http://code.google.com/p/ibus ibus-pinyin pinyin zh GPL Peng Huang <shawn.p.huang@gmail.com> BYVoid <byvoid1@gmail.com> Peng Wu <alexepico@gmail.com> ${pkgdatadir}/icons/ibus-pinyin.svg default Pinyin Pinyin input method 99 ${libexecdir}/ibus-setup-pinyin pinyin bopomofo zh GPL BYVoid <byvoid1@gmail.com> Peng Huang <shawn.p.huang@gmail.com> Peng Wu <alexepico@gmail.com> ${pkgdatadir}/icons/ibus-bopomofo.svg default Bopomofo Bopomofo input method 98 ${libexecdir}/ibus-setup-pinyin bopomofo ibus-pinyin-1.5.0/src/PYPhoneticEditor.cc0000664000175000017500000002567412006506456015217 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "PYPhoneticEditor.h" #include #include "PYConfig.h" #include "PYHalfFullConverter.h" #include "PYPinyinProperties.h" namespace PY { /* init static members */ PhoneticEditor::PhoneticEditor (PinyinProperties & props, Config & config) : Editor (props, config), m_observer (PinyinObserver(*this)), m_lookup_table (m_config.pageSize ()) { } PhoneticEditor::~PhoneticEditor () { unsetContext (); } void PhoneticEditor::setContext (PyZy::InputContext::InputType type) { if (m_context.get () != NULL) unsetContext (); m_context.reset (PyZy::InputContext::create (type, &m_observer)); m_config.addContext (m_context.get ()); m_props.setContext (m_context.get ()); } void PhoneticEditor::unsetContext () { if (m_context.get () == NULL) return; m_config.removeContext (m_context.get ()); m_props.clearContext (); m_context.reset (); } gboolean PhoneticEditor::processSpace (guint keyval, guint keycode, guint modifiers) { if (m_text.empty ()) return FALSE; if (cmshm_filter (modifiers) != 0) return TRUE; if (m_lookup_table.size () != 0) { selectCandidate (m_lookup_table.cursorPos ()); } else { commit (); } return TRUE; } gboolean PhoneticEditor::processFunctionKey (guint keyval, guint keycode, guint modifiers) { if (m_text.empty ()) return FALSE; /* ignore numlock */ modifiers = cmshm_filter (modifiers); if (modifiers != 0 && modifiers != IBUS_CONTROL_MASK) return TRUE; /* process some cursor control keys */ if (modifiers == 0) { switch (keyval) { case IBUS_Return: case IBUS_KP_Enter: commit(); return TRUE; case IBUS_BackSpace: if (!unselectCandidates ()) { removeCharBefore (); } return TRUE; case IBUS_Delete: case IBUS_KP_Delete: removeCharAfter (); return TRUE; case IBUS_Left: case IBUS_KP_Left: if (!unselectCandidates ()) { moveCursorLeft (); } return TRUE; case IBUS_Right: case IBUS_KP_Right: if (!unselectCandidates ()) { moveCursorRight (); } return TRUE; case IBUS_Home: case IBUS_KP_Home: if (!unselectCandidates ()) { moveCursorToBegin (); } return TRUE; case IBUS_End: case IBUS_KP_End: if (!unselectCandidates ()) { moveCursorToEnd (); } return TRUE; case IBUS_Up: case IBUS_KP_Up: cursorUp (); return TRUE; case IBUS_Down: case IBUS_KP_Down: cursorDown (); return TRUE; case IBUS_Page_Up: case IBUS_KP_Page_Up: pageUp (); return TRUE; case IBUS_Page_Down: case IBUS_KP_Page_Down: case IBUS_Tab: pageDown (); return TRUE; case IBUS_Escape: reset (); return TRUE; default: return TRUE; } } else { switch (keyval) { case IBUS_BackSpace: if (!unselectCandidates ()) { removeWordBefore (); } return TRUE; case IBUS_Delete: case IBUS_KP_Delete: removeWordAfter (); return TRUE; case IBUS_Left: case IBUS_KP_Left: if (!unselectCandidates ()) { moveCursorLeftByWord (); } return TRUE; case IBUS_Right: case IBUS_KP_Right: if (!unselectCandidates ()) { moveCursorToEnd (); } return TRUE; default: return TRUE; }; } return TRUE; } gboolean PhoneticEditor::processKeyEvent (guint keyval, guint keycode, guint modifiers) { return FALSE; } void PhoneticEditor::updateLookupTableFast (void) { Editor::updateLookupTableFast (m_lookup_table, TRUE); } void PhoneticEditor::updateLookupTable (void) { m_lookup_table.clear (); fillLookupTableByPage (); if (m_lookup_table.size ()) { Editor::updateLookupTable (m_lookup_table, TRUE); } else { hideLookupTable (); } } gboolean PhoneticEditor::fillLookupTableByPage (void) { const guint filled_nr = m_lookup_table.size (); const guint page_size = m_lookup_table.pageSize (); if (!m_context->hasCandidate (filled_nr)) return FALSE; for (guint i = filled_nr; i < filled_nr + page_size; i++) { PyZy::Candidate candidate; if (!m_context->getCandidate (i, candidate)) { break; } Text text (candidate.text); switch (candidate.type) { case PyZy::USER_PHRASE: text.appendAttribute (IBUS_ATTR_TYPE_FOREGROUND, 0x000000ef, 0, -1); break; case PyZy::SPECIAL_PHRASE: text.appendAttribute (IBUS_ATTR_TYPE_FOREGROUND, 0x0000ef00, 0, -1); break; default: break; } m_lookup_table.appendCandidate (text); } return TRUE; } gboolean PhoneticEditor::insert (gint ch) { if (!isascii(ch)) { return false; } return m_context->insert (ch); } gboolean PhoneticEditor::removeCharBefore (void) { return m_context->removeCharBefore (); } gboolean PhoneticEditor::removeCharAfter (void) { return m_context->removeCharAfter (); } gboolean PhoneticEditor::removeWordBefore (void) { return m_context->removeWordBefore (); } gboolean PhoneticEditor::removeWordAfter (void) { return m_context->removeWordAfter (); } gboolean PhoneticEditor::moveCursorLeft (void) { return m_context->moveCursorLeft (); } gboolean PhoneticEditor::moveCursorRight (void) { return m_context->moveCursorRight (); } gboolean PhoneticEditor::moveCursorLeftByWord (void) { return m_context->moveCursorLeftByWord (); } gboolean PhoneticEditor::moveCursorRightByWord (void) { return m_context->moveCursorRightByWord (); } gboolean PhoneticEditor::moveCursorToBegin (void) { return m_context->moveCursorToBegin (); } gboolean PhoneticEditor::moveCursorToEnd (void) { return m_context->moveCursorToEnd (); } void PhoneticEditor::pageUp (void) { if (G_LIKELY (m_lookup_table.pageUp ())) { updateLookupTableFast (); } } void PhoneticEditor::pageDown (void) { if (G_LIKELY( (m_lookup_table.pageDown ()) || (fillLookupTableByPage () && m_lookup_table.pageDown ()))) { updateLookupTableFast (); } } void PhoneticEditor::cursorUp (void) { if (G_LIKELY (m_lookup_table.cursorUp ())) { updateLookupTableFast (); } } void PhoneticEditor::cursorDown (void) { if (G_LIKELY ( (m_lookup_table.cursorPos () == m_lookup_table.size () - 1) && (fillLookupTableByPage () == FALSE))) { return; } if (G_LIKELY (m_lookup_table.cursorDown ())) { updateLookupTableFast (); } } void PhoneticEditor::candidateClicked (guint index, guint button, guint state) { selectCandidateInPage (index); } void PhoneticEditor::commit (void) { m_context->commit(); } void PhoneticEditor::reset (void) { m_context->reset(); } void PhoneticEditor::updateInputText (void) { m_text = m_context->inputText (); } void PhoneticEditor::updateCursor (void) { m_cursor = m_context->cursor (); } void PhoneticEditor::updateAuxiliaryText (void) { String text = m_context->auxiliaryText (); updateAuxiliaryTextAfter (text); if (text.empty ()) { Editor::hideAuxiliaryText (); } else { StaticText aux_text (text); Editor::updateAuxiliaryText (aux_text, TRUE); } } void PhoneticEditor::updateAuxiliaryTextAfter (String &buffer) { } void PhoneticEditor::updateAuxiliaryTextBefore (String &buffer) { } void PhoneticEditor::updatePreeditText (void) { const String &selected_text = m_context->selectedText (); const String &conversion_text = m_context->conversionText (); const String &rest_text = m_context->restText (); const String whole_text = selected_text + conversion_text + rest_text; StaticText preedit_text (whole_text); /* underline */ preedit_text.appendAttribute ( IBUS_ATTR_TYPE_UNDERLINE, IBUS_ATTR_UNDERLINE_SINGLE, 0, -1); /* candidate */ const guint begin = selected_text.utf8Length (); const guint end = begin + conversion_text.utf8Length (); if (!conversion_text.empty()) { preedit_text.appendAttribute (IBUS_ATTR_TYPE_FOREGROUND, 0x00000000, begin, end); preedit_text.appendAttribute (IBUS_ATTR_TYPE_BACKGROUND, 0x00c8c8f0, begin, end); } Editor::updatePreeditText (preedit_text, begin, TRUE); } gboolean PhoneticEditor::selectCandidate (guint i) { if (i >= m_lookup_table.size ()) return FALSE; return m_context->selectCandidate (i); } gboolean PhoneticEditor::selectCandidateInPage (guint i) { guint page_size = m_lookup_table.pageSize (); guint cursor_pos = m_lookup_table.cursorPos (); if (G_UNLIKELY (i >= page_size)) return FALSE; i += (cursor_pos / page_size) * page_size; return selectCandidate (i); } gboolean PhoneticEditor::resetCandidate (guint i) { return m_context->resetCandidate (i); } gboolean PhoneticEditor::resetCandidateInPage (guint i) { guint page_size = m_lookup_table.pageSize (); guint cursor_pos = m_lookup_table.cursorPos (); i += (cursor_pos / page_size) * page_size; return resetCandidate (i); } gboolean PhoneticEditor::unselectCandidates () { return m_context->unselectCandidates (); } void PhoneticEditor::commitCallback(const String &str) { String commit_text; if (G_UNLIKELY (m_props.modeFull ())) { for (size_t i = 0; i < str.size (); i++) { commit_text.appendUnichar (HalfFullConverter::toFull (str[i])); } } else { commit_text = str; } StaticText text(commit_text); commitText (text); } }; ibus-pinyin-1.5.0/src/PYObject.h0000664000175000017500000000247111776565552013354 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_OBJECT_H_ #define __PY_OBJECT_H_ #include #include "PYPointer.h" namespace PY { class Object { protected: template Object (T *p) : m_p ((GObject *)p) { g_assert (get () != NULL); } operator GObject * (void) const { return m_p; } template T * get (void) const { return (T *) (GObject *) m_p; } private: Pointer m_p; }; }; #endif ibus-pinyin-1.5.0/src/PYHalfFullConverter.h0000664000175000017500000000216611776565552015534 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_HALF_FULL_CONVERTER_H_ #define __PY_HALF_FULL_CONVERTER_H_ #include namespace PY { class HalfFullConverter { public: static gunichar toFull (gunichar ch); static gunichar toHalf (gunichar ch); private: const static guint m_table[][3]; }; }; #endif ibus-pinyin-1.5.0/src/PYFallbackEditor.cc0000664000175000017500000001723211776565552015153 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "PYFallbackEditor.h" #include "PYHalfFullConverter.h" #include "PYPinyinProperties.h" namespace PY { inline gboolean FallbackEditor::processPunctForSimplifiedChinese (guint keyval, guint keycode, guint modifiers) { switch (keyval) { case '`': commit ("·"); return TRUE; case '~': commit ("~"); return TRUE; case '!': commit ("!"); return TRUE; // case '@': // case '#': case '$': commit ("¥"); return TRUE; // case '%': case '^': commit ("……"); return TRUE; // case '&': // case '*': case '(': commit ("("); return TRUE; case ')': commit (")"); return TRUE; // case '-': case '_': commit ("——"); return TRUE; // case '=': // case '+': case '[': commit ("【"); return TRUE; case ']': commit ("】"); return TRUE; case '{': commit ("『"); return TRUE; case '}': commit ("』"); return TRUE; case '\\': commit ("、"); return TRUE; // case '|': case ';': commit (";"); return TRUE; case ':': commit (":"); return TRUE; case '\'': commit (m_quote ? "‘" : "’"); m_quote = !m_quote; return TRUE; case '"': commit (m_double_quote ? "“" : "”"); m_double_quote = !m_double_quote; return TRUE; case ',': commit (","); return TRUE; case '.': if (m_prev_committed_char >= '0' && m_prev_committed_char <= '9') commit (keyval); else commit ("。"); return TRUE; case '<': commit ("《"); return TRUE; case '>': commit ("》"); return TRUE; // case '/': case '?': commit ("?"); return TRUE; } return FALSE; } inline gboolean FallbackEditor::processPunctForTraditionalChinese (guint keyval, guint keycode, guint modifiers) { switch (keyval) { case '~': commit ("~"); return TRUE; case '!': commit ("!"); return TRUE; // case '@': // case '#': case '$': commit ("¥"); return TRUE; // case '%': case '^': commit ("……"); return TRUE; // case '&': // case '*': case '(': commit ("("); return TRUE; case ')': commit (")"); return TRUE; // case '-': case '_': commit ("——"); return TRUE; // case '=': // case '+': case '[': commit ("「"); return TRUE; case ']': commit ("」"); return TRUE; case '{': commit ("『"); return TRUE; case '}': commit ("』"); return TRUE; case '\\': commit ("、"); return TRUE; // case '|': case ';': commit (";"); return TRUE; case ':': commit (":"); return TRUE; case '\'': commit (m_quote ? "‘" : "’"); m_quote = !m_quote; return TRUE; case '"': commit (m_double_quote ? "“" : "”"); m_double_quote = !m_double_quote; return TRUE; case ',': commit (","); return TRUE; case '.': if (m_prev_committed_char >= '0' && m_prev_committed_char <= '9') commit (keyval); else commit ("。"); return TRUE; case '<': commit (","); return TRUE; case '>': commit ("。"); return TRUE; case '?': commit ("?"); return TRUE; } return FALSE; } inline gboolean FallbackEditor::processPunct (guint keyval, guint keycode, guint modifiers) { guint cmshm_modifiers = cmshm_filter (modifiers); if (G_UNLIKELY (keyval == IBUS_period && cmshm_modifiers == IBUS_CONTROL_MASK)) { m_props.toggleModeFullPunct (); return TRUE; } /* check ctrl, alt, hyper, supper masks */ if (cmshm_modifiers != 0) return FALSE; /* English mode */ if (G_UNLIKELY (!m_props.modeChinese ())) { if (G_UNLIKELY (m_props.modeFull ())) commit (HalfFullConverter::toFull (keyval)); else commit (keyval); return TRUE; } else { /* Chinese mode */ if (m_props.modeFullPunct ()) { if (m_props.modeSimp ()) { if (processPunctForSimplifiedChinese (keyval, keycode, modifiers)) return TRUE; } else { if (processPunctForTraditionalChinese (keyval, keycode, modifiers)) return TRUE; } } commit (m_props.modeFull () ? HalfFullConverter::toFull (keyval) : keyval); } return TRUE; } gboolean FallbackEditor::processKeyEvent (guint keyval, guint keycode, guint modifiers) { gboolean retval = FALSE; modifiers &= (IBUS_SHIFT_MASK | IBUS_CONTROL_MASK | IBUS_MOD1_MASK | IBUS_SUPER_MASK | IBUS_HYPER_MASK | IBUS_META_MASK); switch (keyval) { /* numbers */ case IBUS_KP_0 ... IBUS_KP_9: keyval = keyval - IBUS_KP_0 + IBUS_0; case IBUS_0 ... IBUS_9: /* letters */ case IBUS_a ... IBUS_z: case IBUS_A ... IBUS_Z: if (modifiers == 0) { commit (m_props.modeFull () ? HalfFullConverter::toFull (keyval) : keyval); retval = TRUE; } break; /* punct */ case IBUS_exclam ... IBUS_slash: case IBUS_colon ... IBUS_at: case IBUS_bracketleft ... IBUS_quoteleft: case IBUS_braceleft ... IBUS_asciitilde: retval = processPunct (keyval, keycode, modifiers); break; case IBUS_KP_Equal: retval = processPunct ('=', keycode, modifiers); break; case IBUS_KP_Multiply: retval = processPunct ('*', keycode, modifiers); break; case IBUS_KP_Add: retval = processPunct ('+', keycode, modifiers); break; #if 0 case IBUS_KP_Separator: retval = processPunct (IBUS_separator, keycode, modifiers); break; #endif case IBUS_KP_Subtract: retval = processPunct ('-', keycode, modifiers); break; case IBUS_KP_Decimal: retval = processPunct ('.', keycode, modifiers); break; case IBUS_KP_Divide: retval = processPunct ('/', keycode, modifiers); break; /* space */ case IBUS_KP_Space: keyval = IBUS_space; case IBUS_space: if (modifiers == 0) { commit (m_props.modeFull () ? " " : " "); retval = TRUE; } break; /* others */ default: break; } return retval; } void FallbackEditor::reset (void) { m_quote = TRUE; m_double_quote = TRUE; m_prev_committed_char = 0; } }; ibus-pinyin-1.5.0/src/PYDynamicSpecialPhrase.cc0000664000175000017500000002124511776565552016334 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "PYDynamicSpecialPhrase.h" namespace PY { DynamicSpecialPhrase::~DynamicSpecialPhrase (void) { } std::string DynamicSpecialPhrase::text (void) { /* get the current time */ std::time_t rawtime; std::time (&rawtime); m_time = *std::localtime (&rawtime); std::string result; size_t pos = 0; size_t pnext; gint s = 0; while (s != 2) { switch (s) { case 0: // expect "${" pnext = m_text.find ("${", pos); if (pnext == m_text.npos) { result += m_text.substr (pos); s = 2; } else { result += m_text.substr (pos, pnext - pos); pos = pnext + 2; s = 1; } break; case 1: // expect "}" pnext = m_text.find ("}", pos); if (pnext == m_text.npos) { result += "${"; result += m_text.substr (pos); s = 2; } else { result += variable (m_text.substr(pos, pnext - pos)); pos = pnext + 1; s = 0; } break; default: /* should not be reached */ g_assert_not_reached (); } } return result; } inline const std::string DynamicSpecialPhrase::dec (gint d, const gchar *fmt) { gchar string [32]; g_snprintf (string, sizeof (string), fmt, d); return string; } inline const std::string DynamicSpecialPhrase::year_cn (gboolean yy) { static const gchar * const digits[] = { "〇", "一", "二", "三", "四", "五", "六", "七", "八", "九" }; gint year = m_time.tm_year + 1900; gint bit = 0; if (yy) { year %= 100; bit = 2; } std::string result; while (year != 0 || bit > 0) { result.insert(0, digits[year % 10]); year /= 10; bit -= 1; } return result; } inline const std::string DynamicSpecialPhrase::month_cn (void) { static const gchar * const month_num[] = { "一", "二", "三", "四", "五", "六", "七", "八", "九", "十", "十一", "十二" }; return month_num[m_time.tm_mon]; } inline const std::string DynamicSpecialPhrase::weekday_cn (void) { static const gchar * const week_num[] = { "日", "一", "二", "三", "四", "五", "六" }; return week_num[m_time.tm_wday]; } inline const std::string DynamicSpecialPhrase::hour_cn (guint i) { static const gchar * const hour_num[] = { "零", "一", "二", "三", "四", "五", "六", "七", "八", "九", "十", "十一", "十二", "十三", "十四", "十五", "十六", "十七", "十八", "十九", "二十", "二十一", "二十二", "二十三", }; return hour_num[i]; } inline const std::string DynamicSpecialPhrase::fullhour_cn (void) { return hour_cn (m_time.tm_hour); } inline const std::string DynamicSpecialPhrase::halfhour_cn (void) { return hour_cn (m_time.tm_hour % 12); } inline const std::string DynamicSpecialPhrase::day_cn (void) { static const gchar * const day_num[] = { "", "一", "二", "三", "四", "五", "六", "七", "八", "九", "", "十","二十", "三十" }; guint day = m_time.tm_mday; return std::string (day_num[day / 10 + 10]) + day_num[day % 10]; } inline const std::string DynamicSpecialPhrase::minsec_cn (guint i) { static const gchar * const num[] = { "", "一", "二", "三", "四", "五", "六", "七", "八", "九", "零", "十","二十", "三十", "四十" "五十", "六十" }; return std::string (num[i / 10 + 10]) + num[i % 10]; } static const char * numbers [2][10] = { {"零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖",}, {"〇", "一", "二", "三", "四", "五", "六", "七", "八", "九",}, }; struct unit_t{ const char * unit_zh_name; // Chinese Character const int digits; // Position in string. const bool persist; // Whether to force eating zero and force inserting into result string. }; static unit_t units_simplified[] ={ {"兆", 12, true}, {"亿", 8, true}, {"万", 4, true}, {"千", 3, false}, {"百", 2, false}, {"十", 1, false}, {"", 0, true}, }; static unit_t units_traditional[] ={ {"兆", 12, true}, {"亿", 8, true}, {"万", 4, true}, {"仟", 3, false}, {"佰", 2, false}, {"拾", 1, false}, {"", 0, true}, }; const std::string DynamicSpecialPhrase::simplest_cn_number(gint64 num) { std::string result = ""; if ( num == 0 ) result = numbers[1][0]; while (num > 0) { int remains = num % 10; num = num / 10; result = std::string ( numbers[1][remains] ) + result; } return result; } static inline const std::string translate_to_longform(gint64 num, const char * number[10], unit_t units[]) { std::string result = ""; int cur_pos = -1; bool eat_zero = false; while (num > 0) { int remains = num % 10; num = num / 10; cur_pos ++; std::string unit = ""; int pos = cur_pos; size_t i = 6; while ( pos > 0 ) { for ( i = 0; i < 7; ++i) { pos = pos % units[i].digits; if ( pos == 0 ) break; } } if ( units[i].persist ) { result = std::string (units[i].unit_zh_name) + result; eat_zero = true; } if ( remains == 0){ if ( eat_zero ) continue; result = std::string (number[0]) + result; eat_zero = true; continue; }else{ eat_zero = false; } if (num == 0 && remains == 1 && i == 5) result = std::string (units[i].unit_zh_name) + result; else if (units[i].persist) result = std::string (number[remains]) + result; else result = std::string (number[remains]) + std::string (units[i].unit_zh_name) + result; } return result; } const std::string DynamicSpecialPhrase::simplified_number(gint64 num) { return translate_to_longform(num, numbers[1], units_simplified); } const std::string DynamicSpecialPhrase::traditional_number(gint64 num) { if ( 0 == num ) return numbers[0][0]; return translate_to_longform(num, numbers[0], units_traditional); } inline const std::string DynamicSpecialPhrase::variable (const std::string &name) { if (name == "year") return dec (m_time.tm_year + 1900); if (name == "year_yy") return dec ((m_time.tm_year + 1900) % 100, "%02d"); if (name == "month") return dec (m_time.tm_mon + 1); if (name == "month_mm") return dec (m_time.tm_mon + 1, "%02d"); if (name == "day") return dec (m_time.tm_mday); if (name == "day_dd") return dec (m_time.tm_mday, "%02d"); if (name == "weekday") return dec (m_time.tm_wday + 1); if (name == "fullhour") return dec (m_time.tm_hour, "%02d"); if (name == "falfhour") return dec (m_time.tm_hour % 12, "%02d"); if (name == "ampm") return m_time.tm_hour < 12 ? "AM" : "PM"; if (name == "minute") return dec (m_time.tm_min, "%02d"); if (name == "second") return dec (m_time.tm_sec, "%02d"); if (name == "year_cn") return year_cn (); if (name == "year_yy_cn") return year_cn (TRUE); if (name == "month_cn") return month_cn (); if (name == "day_cn") return day_cn (); if (name == "weekday_cn") return weekday_cn (); if (name == "fullhour_cn") return fullhour_cn (); if (name == "halfhour_cn") return halfhour_cn (); if (name == "ampm_cn") return m_time.tm_hour < 12 ? "上午" : "下午"; if (name == "minute_cn") return minsec_cn (m_time.tm_min); if (name == "second_cn") return minsec_cn (m_time.tm_sec); return "${" + name + "}"; } }; ibus-pinyin-1.5.0/src/PYFullPinyinEditor.cc0000664000175000017500000000225212006506456015522 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "PYFullPinyinEditor.h" #include "PYConfig.h" #include "PYPinyinProperties.h" namespace PY { FullPinyinEditor::FullPinyinEditor (PinyinProperties & props, Config & config) : PinyinEditor (props, config) { PhoneticEditor::setContext (PyZy::InputContext::FULL_PINYIN); } FullPinyinEditor::~FullPinyinEditor (void) { } }; ibus-pinyin-1.5.0/src/PYBopomofoEngine.h0000664000175000017500000000456111776565552015056 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * Copyright (c) 2010 BYVoid * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_BOPOMOFO_ENGINE_H_ #define __PY_BOPOMOFO_ENGINE_H_ #include "PYEngine.h" #include "PYPinyinProperties.h" namespace PY { class BopomofoEngine : public Engine { public: BopomofoEngine (IBusEngine *engine); ~BopomofoEngine (void); // virtual functions gboolean processKeyEvent (guint keyval, guint keycode, guint modifiers); void focusIn (void); void focusOut (void); void reset (void); void enable (void); void disable (void); void pageUp (void); void pageDown (void); void cursorUp (void); void cursorDown (void); gboolean propertyActivate (const gchar *prop_name, guint prop_state); void candidateClicked (guint index, guint button, guint state); private: gboolean processPunct (guint keyval, guint keycode, guint modifiers); private: void showSetupDialog (void); void connectEditorSignals (EditorPtr editor); private: void commitText (Text & text); private: PinyinProperties m_props; guint m_prev_pressed_key; enum { MODE_INIT = 0, // init mode MODE_PUNCT, // punct mode MODE_RAW, // raw mode #if 0 MODE_ENGLISH, // press v into English input mode MODE_STROKE, // press u into stroke input mode #endif MODE_EXTENSION, // press i into extension input mode MODE_LAST, } m_input_mode; EditorPtr m_editors[MODE_LAST]; EditorPtr m_fallback_editor; }; }; #endif ibus-pinyin-1.5.0/src/PYPunctEditor.h0000664000175000017500000000512411776565552014404 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * Copyright (c) 2010 BYVoid * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_PUNCT_EDITOR_ #define __PY_PUNCT_EDITOR_ #include #include "PYLookupTable.h" #include "PYEditor.h" namespace PY { class PunctEditor : public Editor { public: PunctEditor (PinyinProperties &props, Config & config); virtual gboolean processKeyEvent (guint keyval, guint keycode, guint modifiers); virtual void pageUp (void); virtual void pageDown (void); virtual void cursorUp (void); virtual void cursorDown (void); virtual void update (void); virtual void reset (void); virtual void candidateClicked (guint index, guint button, guint state); virtual gboolean processPunct (guint keyval, guint keycode, guint modifiers); virtual gboolean processSpace (guint keyval, guint keycode, guint modifiers); virtual gboolean insert (gchar ch); virtual void updateLookupTable (void); virtual void updateAuxiliaryText (void); virtual void updatePreeditText (void); virtual gboolean selectCandidate (guint i); virtual gboolean selectCandidateInPage (guint i); virtual void commit (const gchar *str); virtual void commit (void); virtual gboolean removeCharBefore (void); virtual gboolean removeCharAfter (void); virtual gboolean moveCursorLeft (void); virtual gboolean moveCursorRight (void); virtual gboolean moveCursorToBegin (void); virtual gboolean moveCursorToEnd (void); void fillLookupTable (void); void updatePunctCandidates (gchar ch); protected: enum { MODE_DISABLE, MODE_INIT, MODE_NORMAL, } m_punct_mode; LookupTable m_lookup_table; String m_buffer; std::vector m_selected_puncts; std::vector m_punct_candidates; }; }; #endif ibus-pinyin-1.5.0/src/PYBopomofoEditor.h0000664000175000017500000000334112006506456015053 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * Copyright (c) 2010 BYVoid * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_BOPOMOFO_EDITOR_H_ #define __PY_BOPOMOFO_EDITOR_H_ #include "PYPhoneticEditor.h" namespace PY { class Config; class BopomofoEditor : public PhoneticEditor { public: BopomofoEditor (PinyinProperties & props, Config & config); virtual ~BopomofoEditor (void); protected: gboolean processGuideKey (guint keyval, guint keycode, guint modifiers); gboolean processAuxiliarySelectKey (guint keyval, guint keycode, guint modifiers); gboolean processSelectKey (guint keyval, guint keycode, guint modifiers); gboolean processBopomofo (guint keyval, guint keycode, guint modifiers); gboolean processKeyEvent (guint keyval, guint keycode, guint modifiers); void updateLookupTable (); void updateLookupTableFast (); void updateLookupTableLabel (); void reset (); gboolean m_select_mode; }; }; #endif ibus-pinyin-1.5.0/src/PYString.h0000664000175000017500000000702611776565552013415 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_STRING_H_ #define __PY_STRING_H_ #include #include #include namespace PY { class String : public std::string { public: String () : std::string () { } String (const gchar *str) : std::string (str) { } String (const std::string &str) : std::string (str) { } String (gint len) : std::string () { reserve (len); } String & printf (const gchar *fmt, ...) { gchar *str; va_list args; va_start (args, fmt); str = g_strdup_vprintf (fmt, args); va_end (args); assign (str); g_free (str); return *this; } String & appendPrintf (const gchar *fmt, ...) { gchar *str; va_list args; va_start (args, fmt); str = g_strdup_vprintf (fmt, args); va_end (args); append (str); g_free (str); return *this; } String & appendUnichar (gunichar ch) { gchar str[12]; gint len; len = g_unichar_to_utf8 (ch, str); str[len] = 0; append (str); return *this; } String & insert (gint i, gchar ch) { std::string::insert (i, 1, ch); return *this; } String & truncate (guint len) { erase(len); return *this; } gsize utf8Length (void) const { return g_utf8_strlen (c_str(), -1); } String & operator<< (gint i) { return appendPrintf ("%d", i); } String & operator<< (guint i) { return appendPrintf ("%u", i); } String & operator<< (const gchar ch) { append (1, ch); return *this; } String & operator<< (const gchar *str) { append (str); return *this; } String & operator<< (const gunichar *wstr) { gchar *str; GError *error; str = g_ucs4_to_utf8 (wstr, -1, NULL, NULL, &error); if (str == NULL) { g_warning ("convert ucs4 to utf8 failed: %s", error->message); g_error_free (error); } else { append (str); g_free (str); } return *this; } gchar operator[] (gint i) { return std::string::operator[] (i); } String & operator<< (const std::string &str) { return operator<< (str.c_str ()); } String & operator<< (const String &str) { return operator<< ((const gchar *)str); } String & operator= (const gchar * str) { assign (str); return *this; } operator const gchar *(void) const { return this->c_str (); } operator gboolean (void) const { return ! empty (); } }; }; #endif ibus-pinyin-1.5.0/src/PYEditor.cc0000664000175000017500000000710211776565552013526 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "PYText.h" #include "PYEditor.h" namespace PY { Editor::Editor (PinyinProperties & props, Config & config) : m_text (128), m_cursor (0), m_props (props), m_config (config) { } Editor::~Editor (void) { } gboolean Editor::processKeyEvent (guint keyval, guint keycode, guint modifiers) { modifiers &= (IBUS_CONTROL_MASK | IBUS_MOD1_MASK | IBUS_SUPER_MASK | IBUS_HYPER_MASK | IBUS_META_MASK); /* ignore key events with some masks */ if (modifiers != 0) return TRUE; if (keyval >= IBUS_exclam && keyval <= IBUS_asciitilde) { /* char key */ m_text.insert (m_cursor++, keyval); update (); return TRUE; } else { /* control key */ if (!m_text) return FALSE; } switch (keyval) { case IBUS_BackSpace: if (m_cursor > 0) { m_text.erase (--m_cursor, 1); update (); } return TRUE; case IBUS_Delete: case IBUS_KP_Delete: if (m_cursor < m_text.length ()) { m_text.erase (m_cursor, 1); update (); } return TRUE; case IBUS_Left: case IBUS_KP_Left: if (!m_text) return FALSE; if (m_cursor > 0) { m_cursor --; update (); } return TRUE; case IBUS_Right: case IBUS_KP_Right: if (m_cursor < m_text.length ()) { m_cursor ++; update (); } return TRUE; case IBUS_space: case IBUS_Return: case IBUS_KP_Enter: { if (!m_text.empty () && (m_text[0] == 'i' || m_text[0] == 'u' || m_text[0] == 'v')) { StaticText text (m_text.substr(1)); commitText(text); } else { StaticText text (m_text); commitText (text); } reset (); } return TRUE; case IBUS_Escape: reset (); return TRUE; default: return TRUE; } } void Editor::reset (void) { gboolean need_update = (m_cursor != 0 || !m_text.empty ()); m_cursor = 0; m_text = ""; if (need_update) update (); } void Editor::pageUp (void) { } void Editor::pageDown (void) { } void Editor::cursorUp (void) { } void Editor::cursorDown (void) { } void Editor::candidateClicked (guint index, guint button, guint state) { } void Editor::update (void) { if (m_text) { StaticText text (m_text); text.appendAttribute (IBUS_ATTR_TYPE_UNDERLINE, IBUS_ATTR_UNDERLINE_SINGLE, 0, -1); updatePreeditText (text, m_cursor, TRUE); } else { hidePreeditText (); } } }; ibus-pinyin-1.5.0/src/PYRawEditor.h0000664000175000017500000000210611776565552014041 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_RAW_EDITOR_ #define __PY_RAW_EDITOR_ #include "PYEditor.h" namespace PY { class RawEditor : public Editor { public: RawEditor (PinyinProperties &props, Config & config) : Editor (props, config) { } }; }; #endif ibus-pinyin-1.5.0/src/PYText.h0000664000175000017500000000402611776565552013070 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_TEXT_H_ #define __PY_TEXT_H_ #include #include #include "PYObject.h" namespace PY { class Text : Object { public: Text (IBusText *text) : Object (text) { } Text (const gchar *str) : Object (ibus_text_new_from_string (str)) { } Text (const std::string & str) : Object (ibus_text_new_from_string (str.c_str ())) { } Text (gunichar ch) : Object (ibus_text_new_from_unichar (ch)) { } void appendAttribute (guint type, guint value, guint start, guint end) { ibus_text_append_attribute (get (), type, value, start, end); } const gchar *text (void) const { return get ()->text; } operator IBusText * (void) const { return get (); } }; class StaticText : public Text { public: StaticText (const gchar *str) : Text (ibus_text_new_from_static_string (str)) { } StaticText (const std::string & str) : Text (ibus_text_new_from_static_string (str.c_str ())) { } StaticText (gunichar ch) : Text (ch) { } operator IBusText * (void) const { return Text::operator IBusText * (); } }; }; #endif ibus-pinyin-1.5.0/src/PYPinyinProperties.h0000664000175000017500000000463212006506456015453 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_PINYIN_PROPERTIES_H_ #define __PY_PINYIN_PROPERTIES_H_ #include #include "PYSignal.h" #include "PYProperty.h" namespace PY { class Config; class PinyinProperties { public: PinyinProperties (Config & config); void toggleModeChinese (void); void toggleModeFull (void); void toggleModeFullPunct (void); void toggleModeSimp (void); void reset (void); gboolean modeChinese (void) const { return m_mode_chinese; } gboolean modeFull (void) const { return m_mode_full; } gboolean modeFullPunct (void) const { return m_mode_full_punct; } gboolean modeSimp (void) const { return m_mode_simp; } PropList & properties (void) { return m_props; } gboolean propertyActivate (const gchar *prop_name, guint prop_state); signal & signalUpdateProperty (void) { return m_signal_update_property; } void setContext (PyZy::InputContext *context); void clearContext (); private: void updateProperty (Property & prop) const { m_signal_update_property (prop); } signal m_signal_update_property; private: Config & m_config; gboolean m_mode_chinese; gboolean m_mode_full; gboolean m_mode_full_punct; gboolean m_mode_simp; /* properties */ Property m_prop_chinese; Property m_prop_full; Property m_prop_full_punct; Property m_prop_simp; Property m_prop_setup; PropList m_props; PyZy::InputContext * m_context; }; }; #endif ibus-pinyin-1.5.0/src/PYEnglishEditor.h0000664000175000017500000000443611776565552014711 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2010-2011 Peng Wu * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_ENGLISH_EDITOR_ #define __PY_ENGLISH_EDITOR_ #include "PYEditor.h" #include "PYLookupTable.h" namespace PY { class EnglishDatabase; class EnglishEditor : public Editor { private: const float m_train_factor; public: EnglishEditor (PinyinProperties &props, Config & config); virtual ~EnglishEditor(); virtual gboolean processKeyEvent (guint keyval, guint keycode, guint modifers); virtual void pageUp (void); virtual void pageDown (void); virtual void cursorUp (void); virtual void cursorDown (void); virtual void update (void); virtual void reset (void); virtual void candidateClicked (guint index, guint button, guint state); private: gboolean updateStateFromInput (void); void clearLookupTable (void); void updateLookupTable (void); void updatePreeditText (void); void updateAuxiliaryText (void); gboolean selectCandidateInPage (guint index); gboolean selectCandidate (guint index); gboolean processSpace(guint keyval); gboolean processEnter(guint keyval); gboolean removeCharBefore (void); gboolean removeCharAfter (void); gboolean processLabelKey(guint keyval); gboolean processEditKey(guint keyval); gboolean processPageKey(guint keyval); gboolean train(const char *word, float delta); /* variables */ LookupTable m_lookup_table; String m_preedit_text; String m_auxiliary_text; EnglishDatabase *m_english_database; }; }; #endif ibus-pinyin-1.5.0/src/PYEngine.h0000664000175000017500000000675011776565552013357 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_ENGINE_H_ #define __PY_ENGINE_H_ #include #include "PYPointer.h" #include "PYLookupTable.h" #include "PYProperty.h" #include "PYEditor.h" namespace PY { #define IBUS_TYPE_PINYIN_ENGINE \ (PY::ibus_pinyin_engine_get_type ()) GType ibus_pinyin_engine_get_type (void); class Engine { public: Engine (IBusEngine *engine) : m_engine (engine) { } virtual ~Engine (void); // virtual functions virtual gboolean processKeyEvent (guint keyval, guint keycode, guint modifiers) = 0; virtual void focusIn (void) = 0; virtual void focusOut (void) = 0; virtual void reset (void) = 0; virtual void enable (void) = 0; virtual void disable (void) = 0; virtual void pageUp (void) = 0; virtual void pageDown (void) = 0; virtual void cursorUp (void) = 0; virtual void cursorDown (void) = 0; virtual gboolean propertyActivate (const gchar *prop_name, guint prop_state) = 0; virtual void candidateClicked (guint index, guint button, guint state) = 0; protected: void commitText (Text & text) const { ibus_engine_commit_text (m_engine, text); } void updatePreeditText (Text & text, guint cursor, gboolean visible) const { ibus_engine_update_preedit_text (m_engine, text, cursor, visible); } void showPreeditText (void) const { ibus_engine_show_preedit_text (m_engine); } void hidePreeditText (void) const { ibus_engine_hide_preedit_text (m_engine); } void updateAuxiliaryText (Text & text, gboolean visible) const { ibus_engine_update_auxiliary_text (m_engine, text, visible); } void showAuxiliaryText (void) const { ibus_engine_show_auxiliary_text (m_engine); } void hideAuxiliaryText (void) const { ibus_engine_hide_auxiliary_text (m_engine); } void updateLookupTable (LookupTable &table, gboolean visible) const { ibus_engine_update_lookup_table (m_engine, table, visible); } void updateLookupTableFast (LookupTable &table, gboolean visible) const { ibus_engine_update_lookup_table_fast (m_engine, table, visible); } void showLookupTable (void) const { ibus_engine_show_lookup_table (m_engine); } void hideLookupTable (void) const { ibus_engine_hide_lookup_table (m_engine); } void registerProperties (PropList & props) const { ibus_engine_register_properties (m_engine, props); } void updateProperty (Property & prop) const { ibus_engine_update_property (m_engine, prop); } protected: Pointer m_engine; // engine pointer }; }; #endif ibus-pinyin-1.5.0/src/PYBopomofoEngine.cc0000664000175000017500000001702411776565552015212 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * Copyright (c) 2010 BYVoid * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "PYBopomofoEngine.h" #include #include "PYRawEditor.h" #include "PYPunctEditor.h" #ifdef IBUS_BUILD_LUA_EXTENSION #include "PYExtEditor.h" #endif #include "PYBopomofoEditor.h" #include "PYFallbackEditor.h" #include "PYConfig.h" namespace PY { /* constructor */ BopomofoEngine::BopomofoEngine (IBusEngine *engine) : Engine (engine), m_props (BopomofoConfig::instance ()), m_prev_pressed_key (IBUS_VoidSymbol), m_input_mode (MODE_INIT), m_fallback_editor (new FallbackEditor (m_props, BopomofoConfig::instance ())) { gint i; /* create editors */ m_editors[MODE_INIT].reset (new BopomofoEditor (m_props, BopomofoConfig::instance ())); m_editors[MODE_PUNCT].reset (new PunctEditor (m_props, BopomofoConfig::instance ())); m_editors[MODE_RAW].reset (new RawEditor (m_props, BopomofoConfig::instance ())); #ifdef IBUS_BUILD_LUA_EXTENSION m_editors[MODE_EXTENSION].reset (new ExtEditor (m_props, BopomofoConfig::instance ())); #else m_editors[MODE_EXTENSION].reset (new Editor (m_props, BopomofoConfig::instance ())); #endif m_props.signalUpdateProperty ().connect (std::bind (&BopomofoEngine::updateProperty, this, _1)); for (i = MODE_INIT; i < MODE_LAST; i++) { connectEditorSignals (m_editors[i]); } connectEditorSignals (m_fallback_editor); } /* destructor */ BopomofoEngine::~BopomofoEngine (void) { } gboolean BopomofoEngine::processKeyEvent (guint keyval, guint keycode, guint modifiers) { gboolean retval = FALSE; /* check Shift + Release hotkey, * and then ignore other Release key event */ if (modifiers & IBUS_RELEASE_MASK) { /* press and release keyval are same, * and no other key event between the press and release ket event*/ if (m_prev_pressed_key == keyval) { if (keyval == IBUS_Shift_L || keyval == IBUS_Shift_R) { if (!m_editors[MODE_INIT]->text ().empty ()) m_editors[MODE_INIT]->reset (); m_props.toggleModeChinese (); return TRUE; } } if (m_input_mode == MODE_INIT && m_editors[MODE_INIT]->text ().empty ()) { /* If it is init mode, and no any previouse input text, * we will let client applications to handle release key event */ return FALSE; } else { return TRUE; } } /* Toggle simp/trad Chinese Mode when hotkey Ctrl + Shift + F pressed */ if (keyval == IBUS_F && scmshm_test (modifiers, (IBUS_SHIFT_MASK | IBUS_CONTROL_MASK))) { m_props.toggleModeSimp(); m_prev_pressed_key = IBUS_F; return TRUE; } if (m_props.modeChinese ()) { if (G_UNLIKELY (m_input_mode == MODE_INIT && m_editors[MODE_INIT]->text ().empty () && (cmshm_filter (modifiers)) == 0) && keyval == IBUS_grave) { /* if BopomofoEditor is empty and get a grave key, * switch current editor to PunctEditor */ m_input_mode = MODE_PUNCT; } retval = m_editors[m_input_mode]->processKeyEvent (keyval, keycode, modifiers); if (G_UNLIKELY (retval && m_input_mode != MODE_INIT && m_editors[m_input_mode]->text ().empty ())) m_input_mode = MODE_INIT; } if (G_UNLIKELY (!retval)) retval = m_fallback_editor->processKeyEvent (keyval, keycode, modifiers); /* store ignored key event by editors */ m_prev_pressed_key = retval ? IBUS_VoidSymbol : keyval; return retval; } void BopomofoEngine::focusIn (void) { registerProperties (m_props.properties ()); } void BopomofoEngine::focusOut (void) { reset (); } void BopomofoEngine::reset (void) { m_prev_pressed_key = IBUS_VoidSymbol; m_input_mode = MODE_INIT; for (gint i = 0; i < MODE_LAST; i++) { m_editors[i]->reset (); } m_fallback_editor->reset (); } void BopomofoEngine::enable (void) { m_props.reset (); } void BopomofoEngine::disable (void) { } void BopomofoEngine::pageUp (void) { m_editors[m_input_mode]->pageUp (); } void BopomofoEngine::pageDown (void) { m_editors[m_input_mode]->pageDown (); } void BopomofoEngine::cursorUp (void) { m_editors[m_input_mode]->cursorUp (); } void BopomofoEngine::cursorDown (void) { m_editors[m_input_mode]->cursorDown (); } inline void BopomofoEngine::showSetupDialog (void) { g_spawn_command_line_async (LIBEXECDIR"/ibus-setup-pinyin bopomofo", NULL); } gboolean BopomofoEngine::propertyActivate (const gchar *prop_name, guint prop_state) { const static std::string setup ("setup"); if (m_props.propertyActivate (prop_name, prop_state)) { return TRUE; } else if (setup == prop_name) { showSetupDialog (); return TRUE; } return FALSE; } void BopomofoEngine::candidateClicked (guint index, guint button, guint state) { m_editors[m_input_mode]->candidateClicked (index, button, state); } void BopomofoEngine::commitText (Text & text) { Engine::commitText (text); if (m_input_mode != MODE_INIT) m_input_mode = MODE_INIT; if (text.text ()) static_cast (m_fallback_editor.get ())->setPrevCommittedChar (*text.text ()); else static_cast (m_fallback_editor.get ())->setPrevCommittedChar (0); } void BopomofoEngine::connectEditorSignals (EditorPtr editor) { editor->signalCommitText ().connect ( std::bind (&BopomofoEngine::commitText, this, _1)); editor->signalUpdatePreeditText ().connect ( std::bind (&BopomofoEngine::updatePreeditText, this, _1, _2, _3)); editor->signalShowPreeditText ().connect ( std::bind (&BopomofoEngine::showPreeditText, this)); editor->signalHidePreeditText ().connect ( std::bind (&BopomofoEngine::hidePreeditText, this)); editor->signalUpdateAuxiliaryText ().connect ( std::bind (&BopomofoEngine::updateAuxiliaryText, this, _1, _2)); editor->signalShowAuxiliaryText ().connect ( std::bind (&BopomofoEngine::showAuxiliaryText, this)); editor->signalHideAuxiliaryText ().connect ( std::bind (&BopomofoEngine::hideAuxiliaryText, this)); editor->signalUpdateLookupTable ().connect ( std::bind (&BopomofoEngine::updateLookupTable, this, _1, _2)); editor->signalUpdateLookupTableFast ().connect ( std::bind (&BopomofoEngine::updateLookupTableFast, this, _1, _2)); editor->signalShowLookupTable ().connect ( std::bind (&BopomofoEngine::showLookupTable, this)); editor->signalHideLookupTable ().connect ( std::bind (&BopomofoEngine::hideLookupTable, this)); } }; ibus-pinyin-1.5.0/src/PYBopomofoEditor.cc0000664000175000017500000001421212006506456015210 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * Copyright (c) 2010 BYVoid * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "PYBopomofoEditor.h" #include #include "PYConfig.h" #include "PYPinyinProperties.h" namespace PY { const static gchar * bopomofo_select_keys[] = { "1234567890", "asdfghjkl;", "1qaz2wsxed", "asdfzxcvgb", "1234qweras", "aoeu;qjkix", "aoeuhtnsid", "aoeuidhtns", "qweasdzxcr" }; BopomofoEditor::BopomofoEditor (PinyinProperties & props, Config & config) : PhoneticEditor (props, config), m_select_mode (FALSE) { PhoneticEditor::setContext (PyZy::InputContext::BOPOMOFO); } BopomofoEditor::~BopomofoEditor (void) { } void BopomofoEditor::reset (void) { m_select_mode = FALSE; PhoneticEditor::reset (); } gboolean BopomofoEditor::processGuideKey (guint keyval, guint keycode, guint modifiers) { if (!m_config.guideKey ()) return FALSE; if (G_UNLIKELY (cmshm_filter (modifiers) != 0)) return FALSE; if (G_LIKELY (m_select_mode)) return FALSE; if (G_UNLIKELY (keyval == IBUS_space)) { m_select_mode = TRUE; updateLookupTable (); return TRUE; } return FALSE; } gboolean BopomofoEditor::processAuxiliarySelectKey (guint keyval, guint keycode, guint modifiers) { if (G_UNLIKELY (cmshm_filter (modifiers) != 0)) return FALSE; guint i; switch (keyval) { case IBUS_KP_0: i = 9; if (!m_config.auxiliarySelectKeyKP ()) return FALSE; break; case IBUS_KP_1 ... IBUS_KP_9: i = keyval - IBUS_KP_1; if (!m_config.auxiliarySelectKeyKP ()) return FALSE; break; case IBUS_F1 ... IBUS_F10: i = keyval - IBUS_F1; if (!m_config.auxiliarySelectKeyF ()) return FALSE; break; default: return FALSE; } m_select_mode = TRUE; selectCandidateInPage (i); return TRUE; } gboolean BopomofoEditor::processSelectKey (guint keyval, guint keycode, guint modifiers) { if (G_UNLIKELY (m_text.empty ())) return FALSE; if (G_LIKELY (!m_select_mode && ((modifiers & IBUS_MOD1_MASK) == 0))) return FALSE; const gchar * pos = std::strchr (bopomofo_select_keys[m_config.selectKeys ()], keyval); if (pos == NULL) return FALSE; m_select_mode = TRUE; guint i = pos - bopomofo_select_keys[m_config.selectKeys ()]; selectCandidateInPage (i); return TRUE; } gboolean BopomofoEditor::processBopomofo (guint keyval, guint keycode, guint modifiers) { if (G_UNLIKELY (cmshm_filter (modifiers) != 0)) return !m_text.empty() ? TRUE : FALSE; const bool ret = insert (keyval); if (ret) { m_select_mode = FALSE; } return ret; } gboolean BopomofoEditor::processKeyEvent (guint keyval, guint keycode, guint modifiers) { modifiers &= (IBUS_SHIFT_MASK | IBUS_CONTROL_MASK | IBUS_MOD1_MASK | IBUS_SUPER_MASK | IBUS_HYPER_MASK | IBUS_META_MASK | IBUS_LOCK_MASK); if (G_UNLIKELY (processGuideKey (keyval, keycode, modifiers))) return TRUE; if (G_UNLIKELY (processSelectKey (keyval, keycode, modifiers) == TRUE)) return TRUE; if (G_UNLIKELY (processAuxiliarySelectKey (keyval, keycode, modifiers))) return TRUE; if (G_UNLIKELY (processBopomofo (keyval, keycode ,modifiers))) return TRUE; switch (keyval) { case IBUS_space: m_select_mode = TRUE; return processSpace (keyval, keycode, modifiers); case IBUS_Up: case IBUS_KP_Up: case IBUS_Down: case IBUS_KP_Down: case IBUS_Page_Up: case IBUS_KP_Page_Up: case IBUS_Page_Down: case IBUS_KP_Page_Down: case IBUS_Tab: m_select_mode = TRUE; return PhoneticEditor::processFunctionKey (keyval, keycode, modifiers); case IBUS_BackSpace: case IBUS_Delete: case IBUS_KP_Delete: case IBUS_Left: case IBUS_KP_Left: case IBUS_Right: case IBUS_KP_Right: case IBUS_Home: case IBUS_KP_Home: case IBUS_End: case IBUS_KP_End: m_select_mode = FALSE; return PhoneticEditor::processFunctionKey (keyval, keycode, modifiers); default: return PhoneticEditor::processFunctionKey (keyval, keycode, modifiers); } } void BopomofoEditor::updateLookupTableLabel () { std::string str; guint color = m_select_mode ? 0x000000 : 0xBBBBBB; for (const gchar *p = bopomofo_select_keys[m_config.selectKeys ()]; *p; p++) { guint i = p - bopomofo_select_keys[m_config.selectKeys ()]; if (i >= m_config.pageSize ()) break; str = *p; str += "."; Text text_label (str); text_label.appendAttribute (IBUS_ATTR_TYPE_FOREGROUND, color, 0, -1); m_lookup_table.setLabel (i, text_label); } if (m_config.guideKey ()) m_lookup_table.setCursorVisable (m_select_mode); else m_lookup_table.setCursorVisable (TRUE); } void BopomofoEditor::updateLookupTableFast () { updateLookupTableLabel (); PhoneticEditor::updateLookupTableFast (); } void BopomofoEditor::updateLookupTable () { m_lookup_table.setPageSize (m_config.pageSize ()); m_lookup_table.setOrientation (m_config.orientation ()); updateLookupTableLabel (); PhoneticEditor::updateLookupTable (); } }; ibus-pinyin-1.5.0/src/PYExtEditor.cc0000664000175000017500000004771411776565552014224 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include #include extern "C" { #include "lua-plugin.h" } #include "PYConfig.h" #include "PYPointer.h" #include "PYLookupTable.h" #include "PYDynamicSpecialPhrase.h" #include "PYEditor.h" #include "PYExtEditor.h" namespace PY { /* Write digit/alpha/none Label generator here. * foreach (results): 1, from get_retval; 2..n from get_retvals. */ ExtEditor::ExtEditor (PinyinProperties & props, Config & config) : Editor (props, config), m_mode (LABEL_NONE), m_result_num (0), m_candidate (NULL), m_candidates (NULL) { m_lua_plugin = ibus_engine_plugin_new (); gchar * path = g_build_filename (g_get_user_config_dir (), ".ibus", "pinyin", "base.lua", NULL); loadLuaScript ( ".." G_DIR_SEPARATOR_S "lua" G_DIR_SEPARATOR_S "base.lua")|| loadLuaScript (path) || loadLuaScript (PKGDATADIR G_DIR_SEPARATOR_S "base.lua"); g_free(path); } int ExtEditor::loadLuaScript (std::string filename) { return !ibus_engine_plugin_load_lua_script (m_lua_plugin, filename.c_str ()); } void ExtEditor::resetLuaState () { g_object_unref (m_lua_plugin); m_lua_plugin = ibus_engine_plugin_new (); } gboolean ExtEditor::processKeyEvent (guint keyval, guint keycode, guint modifiers) { //IBUS_SHIFT_MASK is removed. modifiers &= (IBUS_CONTROL_MASK | IBUS_MOD1_MASK | IBUS_SUPER_MASK | IBUS_HYPER_MASK | IBUS_META_MASK | IBUS_LOCK_MASK); if ( modifiers ) return FALSE; //handle backspace/delete here. if (processEditKey (keyval)) return TRUE; //handle page/cursor up/down here. if (processPageKey (keyval)) return TRUE; //handle label key select here. if (processLabelKey (keyval)) return TRUE; if (processSpace (keyval)) return TRUE; if (processEnter (keyval)) return TRUE; m_cursor = std::min (m_cursor, (guint)m_text.length ()); /* Remember the input string. */ switch (m_cursor) { case 0: //Empty input string. { g_return_val_if_fail ( 'i' == keyval, FALSE); if ( 'i' == keyval ) { m_text.insert (m_cursor, keyval); m_cursor++; } } break; case 1 ... 2: // Only contains 'i' in input string. { g_return_val_if_fail ( 'i' == m_text[0], FALSE); if ( isalnum (keyval) ) { m_text.insert (m_cursor, keyval); m_cursor++; } } break; default: //Here is the appended argment. { g_return_val_if_fail ( 'i' == m_text[0], FALSE); if (isprint (keyval)) { m_text.insert (m_cursor, keyval); m_cursor++; } } break; } /* Deal other staff with updateStateFromInput (). */ updateStateFromInput (); update (); return TRUE; } gboolean ExtEditor::processEditKey (guint keyval) { switch (keyval) { case IBUS_Delete: case IBUS_KP_Delete: removeCharAfter (); updateStateFromInput (); update (); return TRUE; case IBUS_BackSpace: removeCharBefore (); updateStateFromInput (); update (); return TRUE; } return FALSE; } gboolean ExtEditor::processPageKey (guint keyval) { switch (keyval) { //For 2000-10-10 16:30 input. case IBUS_comma: if (m_config.commaPeriodPage ()) { pageUp (); return TRUE; } break; #if 0 case IBUS_minus: if (m_config.minusEqualPage ()) { pageUp (); return TRUE; } break; #endif case IBUS_period: if (m_config.commaPeriodPage ()) { pageDown (); return TRUE; } break; case IBUS_equal: if (m_config.minusEqualPage ()) { pageDown (); return TRUE; } break; case IBUS_Up: case IBUS_KP_Up: cursorUp (); return TRUE; case IBUS_Down: case IBUS_KP_Down: cursorDown (); return TRUE; case IBUS_Page_Up: case IBUS_KP_Page_Up: pageUp (); return TRUE; case IBUS_Page_Down: case IBUS_KP_Page_Down: pageDown (); return TRUE; case IBUS_Escape: reset (); return TRUE; } return FALSE; } gboolean ExtEditor::processLabelKey (guint keyval) { //According to enum ExtEditorLabelMode. switch (m_mode) { case LABEL_LIST_DIGIT: switch (keyval) { case '1' ... '9': return selectCandidateInPage (keyval - '1'); break; case '0': return selectCandidateInPage (9); break; } break; case LABEL_LIST_NUMBERS: case LABEL_LIST_ALPHA: switch (keyval) { case 'a' ... 'k': return selectCandidateInPage (keyval - 'a'); break; case 'A' ... 'K': return selectCandidateInPage (keyval - 'A'); break; } break; default: break; } return FALSE; } gboolean ExtEditor::processSpace (guint keyval) { if (!(keyval == IBUS_space || keyval == IBUS_KP_Space)) return FALSE; guint cursor_pos = m_lookup_table.cursorPos (); switch (m_mode) { case LABEL_LIST_NUMBERS: selectCandidate (cursor_pos); break; case LABEL_LIST_COMMANDS: case LABEL_LIST_DIGIT: case LABEL_LIST_ALPHA: selectCandidate (cursor_pos); break; case LABEL_LIST_SINGLE: g_return_val_if_fail (cursor_pos == 0 , FALSE); selectCandidate (cursor_pos); break; default: break; } return TRUE; } gboolean ExtEditor::processEnter(guint keyval) { if (keyval != IBUS_Return) return FALSE; if (m_text.length () == 0) return FALSE; Text text(m_text); commitText (text); reset (); return TRUE; } void ExtEditor::pageUp (void) { if (G_LIKELY(m_lookup_table.pageUp ())) { update (); } } void ExtEditor::pageDown (void) { if (G_LIKELY(m_lookup_table.pageDown ())) { update (); } } gboolean ExtEditor::removeCharBefore (void) { if (G_UNLIKELY( m_cursor <= 0 )) { m_cursor = 0; return FALSE; } if (G_UNLIKELY( m_cursor > m_text.length () )) { m_cursor = m_text.length (); return FALSE; } m_text.erase (m_cursor - 1, 1); m_cursor = std::max (0, static_cast(m_cursor) - 1); return TRUE; } gboolean ExtEditor::removeCharAfter (void) { if (G_UNLIKELY( m_cursor < 0 )) { m_cursor = 0; return FALSE; } if (G_UNLIKELY( m_cursor >= m_text.length () )) { m_cursor = m_text.length (); return FALSE; } m_text.erase (m_cursor, 1); m_cursor = std::min (m_cursor, (guint)m_text.length ()); return TRUE; } void ExtEditor::cursorUp (void) { if (G_LIKELY (m_lookup_table.cursorUp ())) { update (); } } void ExtEditor::cursorDown (void) { if (G_LIKELY (m_lookup_table.cursorDown ())) { update (); } } void ExtEditor::update (void) { updateLookupTable (); updatePreeditText (); updateAuxiliaryText (); } void ExtEditor::reset (void) { m_text = ""; updateStateFromInput (); update (); } void ExtEditor::candidateClicked (guint index, guint button, guint state) { selectCandidateInPage (index); } gboolean ExtEditor::selectCandidateInPage (guint index) { guint page_size = m_lookup_table.pageSize (); guint cursor_pos = m_lookup_table.cursorPos (); if (G_UNLIKELY(index >= page_size)) return FALSE; index += (cursor_pos / page_size) * page_size; return selectCandidate (index); } gboolean ExtEditor::selectCandidate (guint index) { switch (m_mode) { case LABEL_LIST_NUMBERS: { if ( index >= m_lookup_table.size() ) return FALSE; IBusText * candidate = m_lookup_table.getCandidate(index); Text text(candidate); commitText(text); reset(); return TRUE; } break; case LABEL_LIST_COMMANDS: { std::string prefix = m_text.substr (1, 2); int len = prefix.length (); const char * prefix_str = prefix.c_str (); const GArray * commands = ibus_engine_plugin_get_available_commands (m_lua_plugin); int match_count = -1; for (int i = 0; i < static_cast(commands->len); ++i) { lua_command_t * command = &g_array_index (commands, lua_command_t, i); if ( strncmp (prefix_str, command->command_name, len) == 0 ) { match_count++; } if ( match_count == static_cast(index) ) { m_text.clear (); m_text = "i"; m_text += command->command_name; m_cursor = m_text.length (); break; } } updateStateFromInput (); update (); } return TRUE; break; case LABEL_LIST_DIGIT: case LABEL_LIST_ALPHA: { g_return_val_if_fail (m_result_num > 1, FALSE); g_return_val_if_fail (static_cast(index) < m_result_num, FALSE); const lua_command_candidate_t * candidate = g_array_index (m_candidates, lua_command_candidate_t *, index); if ( candidate->content ) { Text text (candidate->content); commitText (text); m_text.clear (); } else if (candidate->suggest) { m_text += candidate->suggest; m_cursor += strlen(candidate->suggest); } updateStateFromInput (); update (); } return TRUE; break; case LABEL_LIST_SINGLE: { g_return_val_if_fail (m_result_num == 1, FALSE); g_return_val_if_fail (index == 0, FALSE); if ( m_candidate->content ) { Text text (m_candidate->content); commitText (text); m_text.clear (); } else if (m_candidate->suggest) { m_text += m_candidate->suggest; } updateStateFromInput (); update (); return TRUE; } break; default: break; } return FALSE; } bool ExtEditor::updateStateFromInput (void) { /* Do parse and candidates update here. */ /* prefix i double check here. */ if ( !m_text.length () ) { m_preedit_text = ""; m_auxiliary_text = ""; m_cursor = 0; clearLookupTable (); return FALSE; } if ( ! 'i' == m_text[0] ) { g_warning ("i is expected in m_text string.\n"); return FALSE; } m_auxiliary_text = "i"; m_mode = LABEL_LIST_COMMANDS; if ( 1 == m_text.length () ) { fillCommandCandidates (); return true; } /* Check m_text len, and update auxiliary string meanwhile. * 1. only "i", dispatch to fillCommandCandidates (void). * 2. "i" with one charactor, * dispatch to fillCommandCandidates (std::string). * 3. "i" with two charactor or more, * dispatch to fillCommand (std::string, const char * argument). */ if ( isalpha (m_text[1])) { m_mode = LABEL_LIST_COMMANDS; if ( m_text.length () == 2) { fillCommandCandidates (m_text.substr (1,1).c_str ()); m_auxiliary_text += " "; m_auxiliary_text += m_text.substr (1, 1); return true; } else if ( m_text.length () >= 3) { std::string command_name = m_text.substr (1,2); m_auxiliary_text += " "; m_auxiliary_text += m_text.substr (1,2); const char * argment = NULL; std::string arg = ""; if (m_text.length () > 3) { arg = m_text.substr (3); argment = arg.c_str (); m_auxiliary_text += " "; m_auxiliary_text += argment; } /* finish auxiliary text computing here. */ const lua_command_t * command = ibus_engine_plugin_lookup_command (m_lua_plugin, command_name.c_str ()); if ( NULL == command) { m_mode = LABEL_NONE; clearLookupTable (); m_lookup_table.clear (); return FALSE; } if ( command->help ){ int space_len = std::max ( 0, m_aux_text_len - (int) g_utf8_strlen (command->help, -1) - 2 /* length of "[...]" */); m_auxiliary_text.append(space_len, ' '); m_auxiliary_text += "["; m_auxiliary_text += command->help; m_auxiliary_text += "]"; } std::string label = command->leading; if ( "digit" == label ) m_mode = LABEL_LIST_DIGIT; else if ( "alpha" == label ) m_mode = LABEL_LIST_ALPHA; else m_mode = LABEL_LIST_NONE; fillCommand (command_name, argment); } } else if ( isdigit (m_text[1]) ) { m_mode = LABEL_LIST_NUMBERS; std::string number = m_text.substr(1); m_auxiliary_text += " "; m_auxiliary_text += number; //Generate Chinese number. gint64 num = atoll (number.c_str ()); fillChineseNumber (num); } return true; } bool ExtEditor::fillCommandCandidates (void) { return fillCommandCandidates (""); } bool ExtEditor::fillCommandCandidates (std::string prefix) { clearLookupTable (); /* fill candidates here. */ int len = prefix.length (); const char * prefix_str = prefix.c_str (); const GArray * commands = ibus_engine_plugin_get_available_commands (m_lua_plugin); int count = -1; for ( int i = 0; i < static_cast(commands->len); ++i) { lua_command_t * command = &g_array_index (commands, lua_command_t, i); if ( strncmp (prefix_str, command->command_name, len) == 0) { count++; std::string candidate = command->command_name; candidate += "."; candidate += command->description; m_lookup_table.setLabel (count, Text ("")); m_lookup_table.appendCandidate (Text (candidate)); } } return true; } bool ExtEditor::fillCommand (std::string command_name, const char * argument) { const lua_command_t * command = ibus_engine_plugin_lookup_command (m_lua_plugin, command_name.c_str ()); if ( NULL == command ) return false; if ( m_result_num != 0) { if ( m_result_num == 1) { ibus_engine_plugin_free_candidate ((lua_command_candidate_t *)m_candidate); m_candidate = NULL; }else{ for ( int i = 0; i < m_result_num; ++i) { const lua_command_candidate_t * candidate = g_array_index (m_candidates, lua_command_candidate_t *, i); ibus_engine_plugin_free_candidate ((lua_command_candidate_t *)candidate); } g_array_free (m_candidates, TRUE); m_candidates = NULL; } m_result_num = 0; g_assert (m_candidates == NULL && m_candidate == NULL); } m_result_num = ibus_engine_plugin_call (m_lua_plugin, command->lua_function_name, argument); if ( 1 == m_result_num ) m_mode = LABEL_LIST_SINGLE; clearLookupTable (); //Generate labels according to m_mode if ( LABEL_LIST_DIGIT == m_mode ) { for ( int i = 1; i <= 10; ++i ) m_lookup_table.setLabel ( i - 1, Text (i - 1 + '1') ); } if ( LABEL_LIST_ALPHA == m_mode) { for ( int i = 1; i <= 10; ++i ) m_lookup_table.setLabel ( i - 1, Text (i - 1 + 'a') ); } if ( LABEL_LIST_NONE == m_mode || LABEL_LIST_SINGLE == m_mode) { for ( int i = 1; i <= 10; ++i) m_lookup_table.setLabel ( i - 1, Text ("")); } //Generate candidates std::string result; if ( 1 == m_result_num ) { m_candidate = ibus_engine_plugin_get_retval (m_lua_plugin); result = ""; if ( m_candidate->content ) { result = m_candidate->content; if (strstr (result.c_str (), "\n")) result = "(字符画)"; } if ( m_candidate->suggest && m_candidate-> help ) { result += m_candidate->suggest; result += " "; result += "["; result += m_candidate->help; result += "]"; } m_lookup_table.appendCandidate (Text (result)); }else if (m_result_num > 1) { m_candidates = ibus_engine_plugin_get_retvals (m_lua_plugin); for ( int i = 0; i < m_result_num; ++i) { const lua_command_candidate_t * candidate = g_array_index (m_candidates, lua_command_candidate_t *, i); result = ""; if ( candidate->content ) { result = candidate->content; if (strstr (result.c_str (), "\n")) result = "(字符画)"; } if ( candidate->suggest && candidate-> help ) { result += candidate->suggest; result += " "; result += "["; result += candidate->help; result += "]"; } m_lookup_table.appendCandidate (Text (result)); } } return true; } bool ExtEditor::fillChineseNumber(gint64 num) { clearLookupTable(); DynamicSpecialPhrase phrase ("", 0); if ( LABEL_LIST_NUMBERS == m_mode) { for ( int i = 1; i <= 10; ++i ) m_lookup_table.setLabel ( i - 1, Text (i - 1 + 'a') ); } std::string result = phrase.simplified_number(num); if ( !result.empty() ){ Text text(result); m_lookup_table.appendCandidate(text); } result = phrase.traditional_number(num); if ( !result.empty() ){ Text text(result); m_lookup_table.appendCandidate(text); } result = phrase.simplest_cn_number(num); if ( !result.empty() ){ Text text(result); m_lookup_table.appendCandidate(text); } return TRUE; } void ExtEditor::clearLookupTable (void) { m_lookup_table.clear (); m_lookup_table.setPageSize (m_config.pageSize ()); m_lookup_table.setOrientation (m_config.orientation ()); } void ExtEditor::updateLookupTable (void) { if (m_lookup_table.size ()) { Editor::updateLookupTableFast (m_lookup_table, TRUE); } else { hideLookupTable (); } } void ExtEditor::updatePreeditText (void) { if ( G_UNLIKELY(m_preedit_text.empty ()) ) { hidePreeditText (); return; } StaticText preedit_text (m_preedit_text); Editor::updatePreeditText (preedit_text, m_cursor, TRUE); } void ExtEditor::updateAuxiliaryText (void) { if ( G_UNLIKELY(m_auxiliary_text.empty ()) ) { hideAuxiliaryText (); return; } StaticText aux_text (m_auxiliary_text); Editor::updateAuxiliaryText (aux_text, TRUE); } }; ibus-pinyin-1.5.0/src/PYMain.cc0000664000175000017500000001411012006506456013142 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifdef HAVE_CONFIG_H # include "config.h" #endif #include #include #include #include #include #include "PYBus.h" #include "PYConfig.h" #include "PYEngine.h" #include "PYPointer.h" using namespace PY; #define N_(text) text static Pointer factory; /* options */ static gboolean ibus = FALSE; static gboolean verbose = FALSE; static void show_version_and_quit (void) { g_print ("%s - Version %s\n", g_get_application_name (), VERSION); exit (EXIT_SUCCESS); } static const GOptionEntry entries[] = { { "version", 'V', G_OPTION_FLAG_NO_ARG, G_OPTION_ARG_CALLBACK, (gpointer) show_version_and_quit, "Show the application's version.", NULL }, { "ibus", 'i', 0, G_OPTION_ARG_NONE, &ibus, "component is executed by ibus", NULL }, { "verbose", 'v', 0, G_OPTION_ARG_NONE, &verbose, "verbose", NULL }, { NULL }, }; static void ibus_disconnected_cb (IBusBus *bus, gpointer user_data) { g_debug ("bus disconnected"); ibus_quit (); } static void start_component (void) { Pointer component; ibus_init (); Bus bus; if (!bus.isConnected ()) { g_warning ("Can not connect to ibus!"); exit (0); } if (!ibus_bus_get_config (bus)) { g_warning ("IBus config component is not ready!"); exit (0); } PinyinConfig::init (bus); BopomofoConfig::init (bus); { gchar *cache_dir = g_build_filename (g_get_user_cache_dir (), "ibus", "pinyin", NULL); gchar *config_dir = g_build_filename (g_get_user_config_dir (), "ibus", "pinyin", NULL); PyZy::InputContext::init (cache_dir, config_dir); g_free (cache_dir); g_free (config_dir); } g_signal_connect ((IBusBus *)bus, "disconnected", G_CALLBACK (ibus_disconnected_cb), NULL); component = ibus_component_new ("org.freedesktop.IBus.Pinyin", N_("Pinyin input method"), VERSION, "GPL", "Peng Huang ", "http://code.google.com/p/ibus/", "", "ibus-pinyin"); ibus_component_add_engine (component, ibus_engine_desc_new_varargs ("name", "pinyin-debug", "longname", N_("Pinyin (debug)"), "description", N_("Pinyin input method (debug)"), "language", "zh_CN", "license", "GPL", "author", "Peng Huang \n" "BYVoid ", "icon", PKGDATADIR "/icons/ibus-pinyin.svg", "layout", "us", "symbol", "\u4e2d", NULL)); ibus_component_add_engine (component, ibus_engine_desc_new_varargs ("name", "bopomofo-debug", "longname", N_("Bopomofo (debug)"), "description", N_("Bopomofo input method (debug)"), "language", "zh_CN", "license", "GPL", "author", "BYVoid \n" "Peng Huang ", "icon", PKGDATADIR "/icons/ibus-bopomofo.svg", "layout", "us", "symbol", "\u4e2d", NULL)); factory = ibus_factory_new (ibus_bus_get_connection (bus)); if (ibus) { ibus_factory_add_engine (factory, "pinyin", IBUS_TYPE_PINYIN_ENGINE); ibus_factory_add_engine (factory, "bopomofo", IBUS_TYPE_PINYIN_ENGINE); ibus_bus_request_name (bus, "org.freedesktop.IBus.Pinyin", 0); } else { ibus_factory_add_engine (factory, "pinyin-debug", IBUS_TYPE_PINYIN_ENGINE); ibus_factory_add_engine (factory, "bopomofo-debug", IBUS_TYPE_PINYIN_ENGINE); ibus_bus_register_component (bus, component); } ibus_main (); } #include static void sigterm_cb (int sig) { PyZy::InputContext::finalize (); ::exit (EXIT_FAILURE); } static void atexit_cb (void) { PyZy::InputContext::finalize (); } int main (gint argc, gchar **argv) { GError *error = NULL; GOptionContext *context; setlocale (LC_ALL, ""); context = g_option_context_new ("- ibus pinyin engine component"); g_option_context_add_main_entries (context, entries, "ibus-pinyin"); if (!g_option_context_parse (context, &argc, &argv, &error)) { g_print ("Option parsing failed: %s\n", error->message); exit (-1); } ::signal (SIGTERM, sigterm_cb); ::signal (SIGINT, sigterm_cb); g_atexit (atexit_cb); start_component (); return 0; } ibus-pinyin-1.5.0/src/PYSignal.h0000664000175000017500000000543411776565552013365 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_SIGNAL_H_ #define __PY_SIGNAL_H_ #ifdef HAVE_CONFIG_H # include #endif #ifdef __GXX_EXPERIMENTAL_CXX0X__ # include namespace PY { using namespace std::placeholders; // implement signal templates template struct signal { }; template struct signal< R(), T1, T2, T3> { typedef std::function func_type; void connect (func_type f) { m_func = f; } R operator ()() const { m_func (); } private: func_type m_func; }; template struct signal< R(T1), T2, T3> { typedef std::function func_type; void connect (func_type f) { m_func = f; } R operator ()(T1 a1) const { return m_func (a1); } private: func_type m_func; }; template struct signal< R(T1, T2), T3> { typedef std::function func_type; void connect (func_type f) { m_func = f; } R operator ()(T1 a1, T2 a2) const { return m_func (a1, a2); } private: func_type m_func; }; template struct signal< R(T1, T2, T3)> { typedef std::function func_type; void connect (func_type f) {m_func = f; } R operator ()(T1 a1, T2 a2, T3 a3) const { return m_func (a1, a2, a3); } private: func_type m_func; }; }; #else // __GXX_EXPERIMENTAL_CXX0X__ # include # include namespace std { // import boost::bind into std namespace using boost::bind; }; namespace PY { // use boost::signal2 namespace bs2 = boost::signals2; template struct signal : public bs2::signal_type >::type { }; }; #endif // __GXX_EXPERIMENTAL_CXX0X__ #endif // __PY_SIGNAL_H_ ibus-pinyin-1.5.0/src/PYConfig.cc0000664000175000017500000005440512006506456013476 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "PYConfig.h" #include "PYBus.h" #include "PYTypes.h" namespace PY { const gchar * const CONFIG_CORRECT_PINYIN = "CorrectPinyin"; const gchar * const CONFIG_FUZZY_PINYIN = "FuzzyPinyin"; const gchar * const CONFIG_ORIENTATION = "LookupTableOrientation"; const gchar * const CONFIG_PAGE_SIZE = "LookupTablePageSize"; const gchar * const CONFIG_SHIFT_SELECT_CANDIDATE = "ShiftSelectCandidate"; const gchar * const CONFIG_MINUS_EQUAL_PAGE = "MinusEqualPage"; const gchar * const CONFIG_COMMA_PERIOD_PAGE = "CommaPeriodPage"; const gchar * const CONFIG_AUTO_COMMIT = "AutoCommit"; const gchar * const CONFIG_DOUBLE_PINYIN = "DoublePinyin"; const gchar * const CONFIG_DOUBLE_PINYIN_SCHEMA = "DoublePinyinSchema"; const gchar * const CONFIG_DOUBLE_PINYIN_SHOW_RAW = "DoublePinyinShowRaw"; const gchar * const CONFIG_INIT_CHINESE = "InitChinese"; const gchar * const CONFIG_INIT_FULL = "InitFull"; const gchar * const CONFIG_INIT_FULL_PUNCT = "InitFullPunct"; const gchar * const CONFIG_INIT_SIMP_CHINESE = "InitSimplifiedChinese"; const gchar * const CONFIG_SPECIAL_PHRASES = "SpecialPhrases"; const gchar * const CONFIG_BOPOMOFO_KEYBOARD_MAPPING = "BopomofoKeyboardMapping"; const gchar * const CONFIG_SELECT_KEYS = "SelectKeys"; const gchar * const CONFIG_GUIDE_KEY = "GuideKey"; const gchar * const CONFIG_AUXILIARY_SELECT_KEY_F = "AuxiliarySelectKey_F"; const gchar * const CONFIG_AUXILIARY_SELECT_KEY_KP = "AuxiliarySelectKey_KP"; const gchar * const CONFIG_ENTER_KEY = "EnterKey"; const guint PINYIN_DEFAULT_OPTION = PINYIN_INCOMPLETE_PINYIN | PINYIN_FUZZY_C_CH | // PINYIN_FUZZY_CH_C | PINYIN_FUZZY_Z_ZH | // PINYIN_FUZZY_ZH_Z | PINYIN_FUZZY_S_SH | // PINYIN_FUZZY_SH_S | PINYIN_FUZZY_L_N | // PINYIN_FUZZY_N_L | PINYIN_FUZZY_F_H | // PINYIN_FUZZY_H_F | // PINYIN_FUZZY_L_R | // PINYIN_FUZZY_R_L | PINYIN_FUZZY_K_G | PINYIN_FUZZY_G_K | PINYIN_FUZZY_AN_ANG | PINYIN_FUZZY_ANG_AN | PINYIN_FUZZY_EN_ENG | PINYIN_FUZZY_ENG_EN | PINYIN_FUZZY_IN_ING | PINYIN_FUZZY_ING_IN | // PINYIN_FUZZY_IAN_IANG | // PINYIN_FUZZY_IANG_IAN | // PINYIN_FUZZY_UAN_UANG | // PINYIN_FUZZY_UANG_UAN | 0; std::unique_ptr PinyinConfig::m_instance; std::unique_ptr BopomofoConfig::m_instance; Config::Config (Bus & bus, const std::string & name) : Object (ibus_bus_get_config (bus)), m_section ("engine/" + name) { initDefaultValues (); g_signal_connect (get (), "value-changed", G_CALLBACK (valueChangedCallback), this); } Config::~Config (void) { } void Config::initDefaultValues (void) { m_option = PINYIN_DEFAULT_OPTION; m_option_mask = PINYIN_INCOMPLETE_PINYIN | PINYIN_CORRECT_ALL; updateContext (PyZy::InputContext::PROPERTY_CONVERSION_OPTION, PyZy::Variant::fromUnsignedInt (option ())); m_orientation = IBUS_ORIENTATION_HORIZONTAL; m_page_size = 5; m_shift_select_candidate = FALSE; m_minus_equal_page = TRUE; m_comma_period_page = TRUE; m_auto_commit = FALSE; m_init_chinese = TRUE; m_init_full = FALSE; m_init_full_punct = TRUE; m_init_simp_chinese = TRUE; m_special_phrases = TRUE; updateContext (PyZy::InputContext::PROPERTY_SPECIAL_PHRASE, PyZy::Variant::fromBool (m_special_phrases)); } static const struct { const gchar * const name; guint option; } options [] = { { "IncompletePinyin", PINYIN_INCOMPLETE_PINYIN}, /* fuzzy pinyin */ { "FuzzyPinyin_C_CH", PINYIN_FUZZY_C_CH }, { "FuzzyPinyin_CH_C", PINYIN_FUZZY_CH_C }, { "FuzzyPinyin_Z_ZH", PINYIN_FUZZY_Z_ZH }, { "FuzzyPinyin_ZH_Z", PINYIN_FUZZY_ZH_Z }, { "FuzzyPinyin_S_SH", PINYIN_FUZZY_S_SH }, { "FuzzyPinyin_SH_S", PINYIN_FUZZY_SH_S }, { "FuzzyPinyin_L_N", PINYIN_FUZZY_L_N }, { "FuzzyPinyin_N_L", PINYIN_FUZZY_N_L }, { "FuzzyPinyin_F_H", PINYIN_FUZZY_F_H }, { "FuzzyPinyin_H_F", PINYIN_FUZZY_H_F }, { "FuzzyPinyin_L_R", PINYIN_FUZZY_L_R }, { "FuzzyPinyin_R_L", PINYIN_FUZZY_R_L }, { "FuzzyPinyin_K_G", PINYIN_FUZZY_K_G }, { "FuzzyPinyin_G_K", PINYIN_FUZZY_G_K }, { "FuzzyPinyin_AN_ANG", PINYIN_FUZZY_AN_ANG }, { "FuzzyPinyin_ANG_AN", PINYIN_FUZZY_ANG_AN }, { "FuzzyPinyin_EN_ENG", PINYIN_FUZZY_EN_ENG }, { "FuzzyPinyin_ENG_EN", PINYIN_FUZZY_ENG_EN }, { "FuzzyPinyin_IN_ING", PINYIN_FUZZY_IN_ING }, { "FuzzyPinyin_ING_IN", PINYIN_FUZZY_ING_IN }, #if 0 { "FuzzyPinyin_IAN_IANG", PINYIN_FUZZY_IAN_IANG }, { "FuzzyPinyin_IANG_IAN", PINYIN_FUZZY_IANG_IAN }, { "FuzzyPinyin_UAN_UANG", PINYIN_FUZZY_UAN_UANG }, { "FuzzyPinyin_UANG_UAN", PINYIN_FUZZY_UANG_UAN }, #endif }; void Config::readDefaultValues (void) { #if defined(HAVE_IBUS_CONFIG_GET_VALUES) /* read all values together */ initDefaultValues (); GVariant *values = ibus_config_get_values (get (), m_section.c_str ()); g_return_if_fail (values != NULL); GVariantIter iter; gchar *name; GVariant *value; g_variant_iter_init (&iter, values); while (g_variant_iter_next (&iter, "{sv}", &name, &value)) { valueChanged (m_section, name, value); g_free (name); g_variant_unref (value); } g_variant_unref (values); #else /* others */ m_orientation = read (CONFIG_ORIENTATION, 0); if (m_orientation != IBUS_ORIENTATION_VERTICAL && m_orientation != IBUS_ORIENTATION_HORIZONTAL) { m_orientation = IBUS_ORIENTATION_HORIZONTAL; g_warn_if_reached (); } m_page_size = read (CONFIG_PAGE_SIZE, 5); if (m_page_size > 10) { m_page_size = 5; g_warn_if_reached (); } /* fuzzy pinyin */ if (read (CONFIG_FUZZY_PINYIN, false)) m_option_mask |= PINYIN_FUZZY_ALL; else m_option_mask &= ~PINYIN_FUZZY_ALL; /* read values */ for (guint i = 0; i < G_N_ELEMENTS (options); i++) { if (read (options[i].name, (options[i].option & PINYIN_DEFAULT_OPTION) != 0)) { m_option |= options[i].option; } else { m_option &= ~options[i].option; } } updateContext (PyZy::InputContext::PROPERTY_CONVERSION_OPTION, PyZy::Variant::fromUnsignedInt (option ())); #endif } inline bool Config::read (const gchar * name, bool defval) { GVariant *value = NULL; if ((value = ibus_config_get_value (get (), m_section.c_str (), name)) != NULL) { if (g_variant_classify (value) == G_VARIANT_CLASS_BOOLEAN) return g_variant_get_boolean (value); } // write default value to config value = g_variant_new ("b", defval); ibus_config_set_value (get (), m_section.c_str (), name, value); return defval; } inline gint Config::read (const gchar * name, gint defval) { GVariant *value = NULL; if ((value = ibus_config_get_value (get (), m_section.c_str (), name)) != NULL) { if (g_variant_classify (value) == G_VARIANT_CLASS_INT32) return g_variant_get_int32 (value); } // write default value to config value = g_variant_new ("i", defval); ibus_config_set_value (get (), m_section.c_str (), name, value); return defval; } inline std::string Config::read (const gchar * name, const gchar * defval) { GVariant *value = NULL; if ((value = ibus_config_get_value (get (), m_section.c_str (), name)) != NULL) { if (g_variant_classify (value) == G_VARIANT_CLASS_STRING) return g_variant_get_string (value, NULL); } // write default value to config value = g_variant_new ("s", defval); ibus_config_set_value (get (), m_section.c_str (), name, value); return defval; } static inline bool normalizeGVariant (GVariant *value, bool defval) { if (value == NULL || g_variant_classify (value) != G_VARIANT_CLASS_BOOLEAN) return defval; return g_variant_get_boolean (value); } static inline gint normalizeGVariant (GVariant *value, gint defval) { if (value == NULL || g_variant_classify (value) != G_VARIANT_CLASS_INT32) return defval; return g_variant_get_int32 (value); } static inline std::string normalizeGVariant (GVariant *value, const std::string &defval) { if (value == NULL || g_variant_classify (value) != G_VARIANT_CLASS_STRING) return defval; return g_variant_get_string (value, NULL); } gboolean Config::valueChanged (const std::string §ion, const std::string &name, GVariant *value) { if (m_section != section) return FALSE; /* lookup table page size */ if (CONFIG_ORIENTATION == name) { m_orientation = normalizeGVariant (value, IBUS_ORIENTATION_HORIZONTAL); if (m_orientation != IBUS_ORIENTATION_VERTICAL && m_orientation != IBUS_ORIENTATION_HORIZONTAL) { m_orientation = IBUS_ORIENTATION_HORIZONTAL; g_warn_if_reached (); } } else if (CONFIG_PAGE_SIZE == name) { m_page_size = normalizeGVariant (value, 5); if (m_page_size > 10) { m_page_size = 5; g_warn_if_reached (); } } /* fuzzy pinyin */ else if (CONFIG_FUZZY_PINYIN == name) { if (normalizeGVariant (value, false)) m_option_mask |= PINYIN_FUZZY_ALL; else m_option_mask &= ~PINYIN_FUZZY_ALL; updateContext (PyZy::InputContext::PROPERTY_CONVERSION_OPTION, PyZy::Variant::fromUnsignedInt (option ())); } else { for (guint i = 0; i < G_N_ELEMENTS (options); i++) { if (G_LIKELY (options[i].name != name)) continue; if (normalizeGVariant (value, (options[i].option & PINYIN_DEFAULT_OPTION) != 0)) m_option |= options[i].option; else m_option &= ~options[i].option; updateContext (PyZy::InputContext::PROPERTY_CONVERSION_OPTION, PyZy::Variant::fromUnsignedInt (option ())); return TRUE; } return FALSE; } return TRUE; } void Config::valueChangedCallback (IBusConfig *config, const gchar *section, const gchar *name, GVariant *value, Config *self) { self->valueChanged (section, name, value); } void Config::addContext (PyZy::InputContext *context) { context->setProperty (PyZy::InputContext::PROPERTY_CONVERSION_OPTION, PyZy::Variant::fromUnsignedInt (option ())); context->setProperty (PyZy::InputContext::PROPERTY_SPECIAL_PHRASE, PyZy::Variant::fromBool (m_special_phrases)); m_contexts.insert (context); } bool Config::removeContext (PyZy::InputContext *context) { return m_contexts.erase (context); } void Config::updateContext (PyZy::InputContext::PropertyName name, const PyZy::Variant & variant) { for (std::set::iterator it = m_contexts.begin (); it != m_contexts.end(); ++it) { (*it)->setProperty (name, variant); } } static const struct { const gchar * const name; guint option; } pinyin_options [] = { /* correct */ { "CorrectPinyin_GN_NG", PINYIN_CORRECT_GN_TO_NG }, { "CorrectPinyin_GN_NG", PINYIN_CORRECT_GN_TO_NG }, { "CorrectPinyin_MG_NG", PINYIN_CORRECT_MG_TO_NG }, { "CorrectPinyin_IOU_IU", PINYIN_CORRECT_IOU_TO_IU }, { "CorrectPinyin_UEI_UI", PINYIN_CORRECT_UEI_TO_UI }, { "CorrectPinyin_UEN_UN", PINYIN_CORRECT_UEN_TO_UN }, { "CorrectPinyin_UE_VE", PINYIN_CORRECT_UE_TO_VE }, { "CorrectPinyin_V_U", PINYIN_CORRECT_V_TO_U }, { "CorrectPinyin_VE_UE", PINYIN_CORRECT_V_TO_U }, { "CorrectPinyin_ON_ONG", PINYIN_CORRECT_ON_TO_ONG }, }; PinyinConfig::PinyinConfig (Bus & bus) : Config (bus, "Pinyin") { } void PinyinConfig::init (Bus & bus) { if (m_instance.get () == NULL) { m_instance.reset (new PinyinConfig (bus)); m_instance->readDefaultValues (); } } void PinyinConfig::readDefaultValues (void) { Config::readDefaultValues (); #if !defined(HAVE_IBUS_CONFIG_GET_VALUES) /* double pinyin */ m_double_pinyin = read (CONFIG_DOUBLE_PINYIN, false); m_double_pinyin_schema = read (CONFIG_DOUBLE_PINYIN_SCHEMA, 0); if (m_double_pinyin_schema >= DOUBLE_PINYIN_KEYBOARD_LAST) { m_double_pinyin_schema = 0; g_warn_if_reached (); } updateContext (PyZy::InputContext::PROPERTY_DOUBLE_PINYIN_SCHEMA, PyZy::Variant::fromUnsignedInt (m_double_pinyin_schema)); m_double_pinyin_show_raw = read (CONFIG_DOUBLE_PINYIN_SHOW_RAW, false); /* init states */ m_init_chinese = read (CONFIG_INIT_CHINESE, true); m_init_full = read (CONFIG_INIT_FULL, false); m_init_full_punct = read (CONFIG_INIT_FULL_PUNCT, true); m_init_simp_chinese = read (CONFIG_INIT_SIMP_CHINESE, true); m_special_phrases = read (CONFIG_SPECIAL_PHRASES, true); updateContext (PyZy::InputContext::PROPERTY_SPECIAL_PHRASE, PyZy::Variant::fromBool (m_special_phrases)); /* other */ m_shift_select_candidate = read (CONFIG_SHIFT_SELECT_CANDIDATE, false); m_minus_equal_page = read (CONFIG_MINUS_EQUAL_PAGE, true); m_comma_period_page = read (CONFIG_COMMA_PERIOD_PAGE, true); m_auto_commit = read (CONFIG_AUTO_COMMIT, false); /* correct pinyin */ if (read (CONFIG_CORRECT_PINYIN, true)) m_option_mask |= PINYIN_CORRECT_ALL; else m_option_mask &= ~PINYIN_CORRECT_ALL; /* read values */ for (guint i = 0; i < G_N_ELEMENTS (pinyin_options); i++) { if (read (pinyin_options[i].name, (pinyin_options[i].option & PINYIN_DEFAULT_OPTION) != 0)) m_option |= pinyin_options[i].option; else m_option &= ~pinyin_options[i].option; } updateContext (PyZy::InputContext::PROPERTY_CONVERSION_OPTION, PyZy::Variant::fromUnsignedInt (option ())); #endif } gboolean PinyinConfig::valueChanged (const std::string §ion, const std::string &name, GVariant *value) { if (m_section != section) return FALSE; if (Config::valueChanged (section, name, value)) return TRUE; /* double pinyin */ if (CONFIG_DOUBLE_PINYIN == name) m_double_pinyin = normalizeGVariant (value, false); else if (CONFIG_DOUBLE_PINYIN_SCHEMA == name) { m_double_pinyin_schema = normalizeGVariant (value, 0); if (m_double_pinyin_schema >= DOUBLE_PINYIN_KEYBOARD_LAST) { m_double_pinyin_schema = 0; g_warn_if_reached (); } updateContext (PyZy::InputContext::PROPERTY_DOUBLE_PINYIN_SCHEMA, PyZy::Variant::fromUnsignedInt (m_double_pinyin_schema)); } else if (CONFIG_DOUBLE_PINYIN_SHOW_RAW == name) m_double_pinyin_show_raw = normalizeGVariant (value, false); /* init states */ else if (CONFIG_INIT_CHINESE == name) m_init_chinese = normalizeGVariant (value, true); else if (CONFIG_INIT_FULL == name) m_init_full = normalizeGVariant (value, true); else if (CONFIG_INIT_FULL_PUNCT == name) m_init_full_punct = normalizeGVariant (value, true); else if (CONFIG_INIT_SIMP_CHINESE == name) m_init_simp_chinese = normalizeGVariant (value, true); else if (CONFIG_SPECIAL_PHRASES == name) { m_special_phrases = normalizeGVariant (value, true); updateContext (PyZy::InputContext::PROPERTY_SPECIAL_PHRASE, PyZy::Variant::fromBool (m_special_phrases)); } /* others */ else if (CONFIG_SHIFT_SELECT_CANDIDATE == name) m_shift_select_candidate = normalizeGVariant (value, false); else if (CONFIG_MINUS_EQUAL_PAGE == name) m_minus_equal_page = normalizeGVariant (value, true); else if (CONFIG_COMMA_PERIOD_PAGE == name) m_comma_period_page = normalizeGVariant (value, true); else if (CONFIG_AUTO_COMMIT == name) m_auto_commit = normalizeGVariant (value, false); /* correct pinyin */ else if (CONFIG_CORRECT_PINYIN == name) { if (normalizeGVariant (value, true)) m_option_mask |= PINYIN_CORRECT_ALL; else m_option_mask &= ~PINYIN_CORRECT_ALL; updateContext (PyZy::InputContext::PROPERTY_CONVERSION_OPTION, PyZy::Variant::fromUnsignedInt (option ())); } else { for (guint i = 0; i < G_N_ELEMENTS (pinyin_options); i++) { if (G_LIKELY (pinyin_options[i].name != name)) continue; if (normalizeGVariant (value, (pinyin_options[i].option & PINYIN_DEFAULT_OPTION) != 0)) m_option |= pinyin_options[i].option; else m_option &= ~pinyin_options[i].option; updateContext (PyZy::InputContext::PROPERTY_CONVERSION_OPTION, PyZy::Variant::fromUnsignedInt (option ())); return TRUE; } return FALSE; } return TRUE; } void PinyinConfig::addContext (PyZy::InputContext *context) { context->setProperty ( PyZy::InputContext::PROPERTY_DOUBLE_PINYIN_SCHEMA, PyZy::Variant::fromUnsignedInt (m_double_pinyin_schema)); Config::addContext (context); } BopomofoConfig::BopomofoConfig (Bus & bus) : Config (bus, "Bopomofo") { } void BopomofoConfig::init (Bus & bus) { if (m_instance.get () == NULL) { m_instance.reset (new BopomofoConfig (bus)); m_instance->readDefaultValues (); } } void BopomofoConfig::readDefaultValues (void) { Config::readDefaultValues (); #if !defined(HAVE_IBUS_CONFIG_GET_VALUES) /* init states */ m_init_chinese = read (CONFIG_INIT_CHINESE, true); m_init_full = read (CONFIG_INIT_FULL, false); m_init_full_punct = read (CONFIG_INIT_FULL_PUNCT, true); m_init_simp_chinese = read (CONFIG_INIT_SIMP_CHINESE, false); m_special_phrases = read (CONFIG_SPECIAL_PHRASES, false); updateContext (PyZy::InputContext::PROPERTY_SPECIAL_PHRASE, PyZy::Variant::fromBool (m_special_phrases)); m_bopomofo_keyboard_mapping = read (CONFIG_BOPOMOFO_KEYBOARD_MAPPING, 0); updateContext (PyZy::InputContext::PROPERTY_BOPOMOFO_SCHEMA, PyZy::Variant::fromUnsignedInt (m_bopomofo_keyboard_mapping)); m_select_keys = read (CONFIG_SELECT_KEYS, 0); if (m_select_keys >= 9) m_select_keys = 0; m_guide_key = read (CONFIG_GUIDE_KEY, true); m_auxiliary_select_key_f = read (CONFIG_AUXILIARY_SELECT_KEY_F, true); m_auxiliary_select_key_kp = read (CONFIG_AUXILIARY_SELECT_KEY_KP, true); m_enter_key = read (CONFIG_ENTER_KEY, true); #endif } gboolean BopomofoConfig::valueChanged (const std::string §ion, const std::string &name, GVariant *value) { if (m_section != section) return FALSE; if (Config::valueChanged (section, name, value)) return TRUE; /* init states */ if (CONFIG_INIT_CHINESE == name) m_init_chinese = normalizeGVariant (value, true); else if (CONFIG_INIT_FULL == name) m_init_full = normalizeGVariant (value, true); else if (CONFIG_INIT_FULL_PUNCT == name) m_init_full_punct = normalizeGVariant (value, true); else if (CONFIG_INIT_SIMP_CHINESE == name) m_init_simp_chinese = normalizeGVariant (value, false); else if (CONFIG_SPECIAL_PHRASES == name) { m_special_phrases = normalizeGVariant (value, false); updateContext (PyZy::InputContext::PROPERTY_SPECIAL_PHRASE, PyZy::Variant::fromBool (m_special_phrases)); } else if (CONFIG_BOPOMOFO_KEYBOARD_MAPPING == name) { m_bopomofo_keyboard_mapping = normalizeGVariant (value, 0); updateContext (PyZy::InputContext::PROPERTY_BOPOMOFO_SCHEMA, PyZy::Variant::fromUnsignedInt (m_bopomofo_keyboard_mapping)); } else if (CONFIG_SELECT_KEYS == name) { m_select_keys = normalizeGVariant (value, 0); if (m_select_keys >= 9) m_select_keys = 0; } else if (CONFIG_GUIDE_KEY == name) m_guide_key = normalizeGVariant (value, true); else if (CONFIG_AUXILIARY_SELECT_KEY_F == name) m_auxiliary_select_key_f = normalizeGVariant (value, true); else if (CONFIG_AUXILIARY_SELECT_KEY_KP == name) m_auxiliary_select_key_kp = normalizeGVariant (value, true); else if (CONFIG_ENTER_KEY == name) m_enter_key = normalizeGVariant (value, true); else return FALSE; return TRUE; } void BopomofoConfig::addContext (PyZy::InputContext *context) { context->setProperty ( PyZy::InputContext::PROPERTY_BOPOMOFO_SCHEMA, PyZy::Variant::fromUnsignedInt (m_bopomofo_keyboard_mapping)); Config::addContext (context); } }; ibus-pinyin-1.5.0/src/pinyin.xml.in.in0000664000175000017500000000270112064356710014543 00000000000000 org.freedesktop.IBus.Pinyin Pinyin Component ${libexecdir}/ibus-engine-pinyin --ibus @VERSION@ Peng Huang <shawn.p.huang@gmail.com> GPL http://code.google.com/p/ibus ibus-pinyin pinyin zh GPL Peng Huang <shawn.p.huang@gmail.com> BYVoid <byvoid1@gmail.com> Peng Wu <alexepico@gmail.com> ${pkgdatadir}/icons/ibus-pinyin.svg default Pinyin Pinyin input method 99 ${libexecdir}/ibus-setup-pinyin pinyin bopomofo zh GPL BYVoid <byvoid1@gmail.com> Peng Huang <shawn.p.huang@gmail.com> Peng Wu <alexepico@gmail.com> ${pkgdatadir}/icons/ibus-bopomofo.svg default Bopomofo Bopomofo input method 98 ${libexecdir}/ibus-setup-pinyin bopomofo ibus-pinyin-1.5.0/src/PYDoublePinyinEditor.h0000664000175000017500000000244612006506456015701 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_DOUBLE_PINYIN_EDITOR_H_ #define __PY_DOUBLE_PINYIN_EDITOR_H_ #include "PYPinyinEditor.h" namespace PY { class DoublePinyinEditor : public PinyinEditor { public: DoublePinyinEditor (PinyinProperties & props, Config & config); virtual ~DoublePinyinEditor (); /* override virtual functions */ gboolean processKeyEvent (guint keyval, guint keycode, guint modifiers); void updateAuxiliaryTextAfter (String &buffer); }; }; #endif ibus-pinyin-1.5.0/src/PYEngine.cc0000664000175000017500000002302612006506456013471 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include #include "PYEngine.h" #include "PYPinyinEngine.h" #include "PYBopomofoEngine.h" namespace PY { /* code of engine class of GObject */ #define IBUS_PINYIN_ENGINE(obj) \ (G_TYPE_CHECK_INSTANCE_CAST ((obj), IBUS_TYPE_PINYIN_ENGINE, IBusPinyinEngine)) #define IBUS_PINYIN_ENGINE_CLASS(klass) \ (G_TYPE_CHECK_CLASS_CAST ((klass), IBUS_TYPE_PINYIN_ENGINE, IBusPinyinEngineClass)) #define IBUS_IS_PINYIN_ENGINE(obj) \ (G_TYPE_CHECK_INSTANCE_TYPE ((obj), IBUS_TYPE_PINYIN_ENGINE)) #define IBUS_IS_PINYIN_ENGINE_CLASS(klass) \ (G_TYPE_CHECK_CLASS_TYPE ((klass), IBUS_TYPE_PINYIN_ENGINE)) #define IBUS_PINYIN_ENGINE_GET_CLASS(obj) \ (G_TYPE_INSTANCE_GET_CLASS ((obj), IBUS_TYPE_PINYIN_ENGINE, IBusPinyinEngineClass)) typedef struct _IBusPinyinEngine IBusPinyinEngine; typedef struct _IBusPinyinEngineClass IBusPinyinEngineClass; struct _IBusPinyinEngine { IBusEngine parent; /* members */ Engine *engine; }; struct _IBusPinyinEngineClass { IBusEngineClass parent; }; /* functions prototype */ static void ibus_pinyin_engine_class_init (IBusPinyinEngineClass *klass); static void ibus_pinyin_engine_init (IBusPinyinEngine *pinyin); static GObject* ibus_pinyin_engine_constructor (GType type, guint n_construct_params, GObjectConstructParam *construct_params); static void ibus_pinyin_engine_destroy (IBusPinyinEngine *pinyin); static gboolean ibus_pinyin_engine_process_key_event (IBusEngine *engine, guint keyval, guint keycode, guint modifiers); static void ibus_pinyin_engine_focus_in (IBusEngine *engine); static void ibus_pinyin_engine_focus_out (IBusEngine *engine); static void ibus_pinyin_engine_reset (IBusEngine *engine); static void ibus_pinyin_engine_enable (IBusEngine *engine); static void ibus_pinyin_engine_disable (IBusEngine *engine); #if 0 static void ibus_engine_set_cursor_location (IBusEngine *engine, gint x, gint y, gint w, gint h); static void ibus_pinyin_engine_set_capabilities (IBusEngine *engine, guint caps); #endif static void ibus_pinyin_engine_page_up (IBusEngine *engine); static void ibus_pinyin_engine_page_down (IBusEngine *engine); static void ibus_pinyin_engine_cursor_up (IBusEngine *engine); static void ibus_pinyin_engine_cursor_down (IBusEngine *engine); static void ibus_pinyin_engine_property_activate (IBusEngine *engine, const gchar *prop_name, guint prop_state); static void ibus_pinyin_engine_candidate_clicked (IBusEngine *engine, guint index, guint button, guint state); #if 0 static void ibus_pinyin_engine_property_show (IBusEngine *engine, const gchar *prop_name); static void ibus_pinyin_engine_property_hide (IBusEngine *engine, const gchar *prop_name); #endif G_DEFINE_TYPE (IBusPinyinEngine, ibus_pinyin_engine, IBUS_TYPE_ENGINE) static void ibus_pinyin_engine_class_init (IBusPinyinEngineClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); IBusObjectClass *ibus_object_class = IBUS_OBJECT_CLASS (klass); IBusEngineClass *engine_class = IBUS_ENGINE_CLASS (klass); object_class->constructor = ibus_pinyin_engine_constructor; ibus_object_class->destroy = (IBusObjectDestroyFunc) ibus_pinyin_engine_destroy; engine_class->process_key_event = ibus_pinyin_engine_process_key_event; engine_class->reset = ibus_pinyin_engine_reset; engine_class->enable = ibus_pinyin_engine_enable; engine_class->disable = ibus_pinyin_engine_disable; engine_class->focus_in = ibus_pinyin_engine_focus_in; engine_class->focus_out = ibus_pinyin_engine_focus_out; engine_class->page_up = ibus_pinyin_engine_page_up; engine_class->page_down = ibus_pinyin_engine_page_down; engine_class->cursor_up = ibus_pinyin_engine_cursor_up; engine_class->cursor_down = ibus_pinyin_engine_cursor_down; engine_class->property_activate = ibus_pinyin_engine_property_activate; engine_class->candidate_clicked = ibus_pinyin_engine_candidate_clicked; } static void ibus_pinyin_engine_init (IBusPinyinEngine *pinyin) { if (g_object_is_floating (pinyin)) g_object_ref_sink (pinyin); // make engine sink } static GObject* ibus_pinyin_engine_constructor (GType type, guint n_construct_params, GObjectConstructParam *construct_params) { IBusPinyinEngine *engine; const gchar *name; engine = (IBusPinyinEngine *) G_OBJECT_CLASS (ibus_pinyin_engine_parent_class)->constructor ( type, n_construct_params, construct_params); name = ibus_engine_get_name ((IBusEngine *) engine); if (name && (std::strcmp (name, "bopomofo") == 0 || std::strcmp (name, "bopomofo-debug") == 0)) { engine->engine = new BopomofoEngine (IBUS_ENGINE (engine)); } else { engine->engine = new PinyinEngine (IBUS_ENGINE (engine)); } return (GObject *) engine; } static void ibus_pinyin_engine_destroy (IBusPinyinEngine *pinyin) { delete pinyin->engine; ((IBusObjectClass *) ibus_pinyin_engine_parent_class)->destroy ((IBusObject *)pinyin); } static gboolean ibus_pinyin_engine_process_key_event (IBusEngine *engine, guint keyval, guint keycode, guint modifiers) { IBusPinyinEngine *pinyin = (IBusPinyinEngine *) engine; return pinyin->engine->processKeyEvent (keyval, keycode, modifiers); } static void ibus_pinyin_engine_property_activate (IBusEngine *engine, const gchar *prop_name, guint prop_state) { IBusPinyinEngine *pinyin = (IBusPinyinEngine *) engine; pinyin->engine->propertyActivate (prop_name, prop_state); } static void ibus_pinyin_engine_candidate_clicked (IBusEngine *engine, guint index, guint button, guint state) { IBusPinyinEngine *pinyin = (IBusPinyinEngine *) engine; pinyin->engine->candidateClicked (index, button, state); } #define FUNCTION(name, Name) \ static void \ ibus_pinyin_engine_##name (IBusEngine *engine) \ { \ IBusPinyinEngine *pinyin = (IBusPinyinEngine *) engine; \ pinyin->engine->Name (); \ ((IBusEngineClass *) ibus_pinyin_engine_parent_class) \ ->name (engine); \ } FUNCTION(focus_in, focusIn) FUNCTION(focus_out, focusOut) FUNCTION(reset, reset) FUNCTION(enable, enable) FUNCTION(disable, disable) FUNCTION(page_up, pageUp) FUNCTION(page_down, pageDown) FUNCTION(cursor_up, cursorUp) FUNCTION(cursor_down, cursorDown) #undef FUNCTION Engine::~Engine (void) { } }; ibus-pinyin-1.5.0/src/PYUtil.h0000664000175000017500000000436012006506456013043 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_UTIL_H_ #define __PY_UTIL_H_ #ifdef HAVE_CONFIG_H # include #endif #include #include #include #ifdef __GXX_EXPERIMENTAL_CXX0X__ # include #else # include # include namespace std { // import boost::shared_ptr to std namespace using boost::shared_ptr; // import boost::scoped_ptr to std namespace, and rename to unique_ptr // XXX: the unique_ptr can transfer the pointer ownership, // but scoped_ptr cannot. template class unique_ptr : public boost::scoped_ptr {}; }; #endif #include namespace PY { // mask for Ctrl, Alt, Super, Hyper, Meta const guint CMSHM_MASK = IBUS_CONTROL_MASK | IBUS_MOD1_MASK | IBUS_SUPER_MASK | IBUS_HYPER_MASK | IBUS_META_MASK; // mask for Shift, Ctrl, Alt, Super, Hyper, Meta const guint SCMSHM_MASK = CMSHM_MASK | IBUS_SHIFT_MASK; inline guint cmshm_filter (guint modifiers) { return modifiers & CMSHM_MASK; } inline guint scmshm_filter (guint modifiers) { return modifiers & SCMSHM_MASK; } inline gboolean cmshm_test (guint modifiers, guint mask) { return cmshm_filter (modifiers) == mask; } inline gboolean scmshm_test (guint modifiers, guint mask) { return scmshm_filter (modifiers) == mask; } }; #endif ibus-pinyin-1.5.0/src/PYConfig.h0000664000175000017500000001333012006506456013330 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_CONFIG_H_ #define __PY_CONFIG_H_ #ifdef HAVE_CONFIG_H # include #endif #include #include #include #include #include #include #include "PYObject.h" #include "PYUtil.h" namespace PY { class Bus; class Config : public Object { protected: Config (Bus & bus, const std::string & name); virtual ~Config (void); public: guint option (void) const { return m_option & m_option_mask; } guint orientation (void) const { return m_orientation; } guint pageSize (void) const { return m_page_size; } gboolean shiftSelectCandidate (void) const { return m_shift_select_candidate; } gboolean minusEqualPage (void) const { return m_minus_equal_page; } gboolean commaPeriodPage (void) const { return m_comma_period_page; } gboolean autoCommit (void) const { return m_auto_commit; } gboolean doublePinyin (void) const { return m_double_pinyin; } gint doublePinyinSchema (void) const { return m_double_pinyin_schema; } gboolean doublePinyinShowRaw (void) const { return m_double_pinyin_show_raw; } gboolean initChinese (void) const { return m_init_chinese; } gboolean initFull (void) const { return m_init_full; } gboolean initFullPunct (void) const { return m_init_full_punct; } gboolean initSimpChinese (void) const { return m_init_simp_chinese; } gboolean specialPhrases (void) const { return m_special_phrases; } gint bopomofoKeyboardMapping (void) const { return m_bopomofo_keyboard_mapping; } gint selectKeys (void) const { return m_select_keys; } gboolean guideKey (void) const { return m_guide_key; } gboolean auxiliarySelectKeyF (void) const { return m_auxiliary_select_key_f; } gboolean auxiliarySelectKeyKP (void) const { return m_auxiliary_select_key_kp; } gboolean enterKey (void) const { return m_enter_key; } virtual void addContext (PyZy::InputContext * context); bool removeContext (PyZy::InputContext * context); protected: bool read (const gchar * name, bool defval); gint read (const gchar * name, gint defval); std::string read (const gchar * name, const gchar * defval); void initDefaultValues (void); virtual void readDefaultValues (void); virtual gboolean valueChanged (const std::string §ion, const std::string &name, GVariant *value); void updateContext (PyZy::InputContext::PropertyName name, const PyZy::Variant & variant); private: static void valueChangedCallback (IBusConfig *config, const gchar *section, const gchar *name, GVariant *value, Config *self); protected: std::string m_section; guint m_option; guint m_option_mask; gint m_orientation; guint m_page_size; gboolean m_shift_select_candidate; gboolean m_minus_equal_page; gboolean m_comma_period_page; gboolean m_auto_commit; gboolean m_double_pinyin; gint m_double_pinyin_schema; gboolean m_double_pinyin_show_raw; gboolean m_init_chinese; gboolean m_init_full; gboolean m_init_full_punct; gboolean m_init_simp_chinese; gboolean m_special_phrases; gint m_bopomofo_keyboard_mapping; gint m_select_keys; gboolean m_guide_key; gboolean m_auxiliary_select_key_f; gboolean m_auxiliary_select_key_kp; gboolean m_enter_key; std::set m_contexts; }; /* PinyinConfig */ class PinyinConfig : public Config { public: static void init (Bus & bus); static PinyinConfig & instance (void) { return *m_instance; } virtual void addContext (PyZy::InputContext * context); protected: PinyinConfig (Bus & bus); virtual void readDefaultValues (void); virtual gboolean valueChanged (const std::string §ion, const std::string &name, GVariant *value); private: static std::unique_ptr m_instance; }; /* Bopomof Config */ class BopomofoConfig : public Config { public: static void init (Bus & bus); static BopomofoConfig & instance (void) { return *m_instance; } virtual void addContext (PyZy::InputContext * context); protected: BopomofoConfig (Bus & bus); virtual void readDefaultValues (void); virtual gboolean valueChanged (const std::string §ion, const std::string &name, GVariant *value); private: static std::unique_ptr m_instance; }; }; #endif ibus-pinyin-1.5.0/src/PYProperty.h0000664000175000017500000000450611776565552013773 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_PROPERTY_H_ #define __PY_PROPERTY_H_ #include #include "PYObject.h" #include "PYText.h" namespace PY { class Property : public Object { public: Property (const gchar *key, IBusPropType type = PROP_TYPE_NORMAL, IBusText *label = NULL, const gchar *icon = NULL, IBusText *tooltip = NULL, gboolean sensitive = TRUE, gboolean visible = TRUE, IBusPropState state = PROP_STATE_UNCHECKED, IBusPropList *props = NULL) : Object (ibus_property_new (key, type, label, icon, tooltip, sensitive, visible, state, props)) { } void setLabel (IBusText *text) { ibus_property_set_label (get (), text); } void setLabel (const gchar *text) { setLabel (Text (text)); } void setIcon (const gchar *icon) { ibus_property_set_icon (get (), icon); } void setSensitive (gboolean sensitive) { ibus_property_set_sensitive (get (), sensitive); } operator IBusProperty * (void) const { return get (); } }; class PropList : Object { public: PropList (void) : Object (ibus_prop_list_new ()) { } void append (Property &prop) { ibus_prop_list_append (get (), prop); } operator IBusPropList * (void) const { return get (); } }; }; #endif ibus-pinyin-1.5.0/src/PYPinyinObserver.cc0000664000175000017500000000335512006506776015252 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "PYPinyinObserver.h" #include #include "PYPhoneticEditor.h" namespace PY { PinyinObserver::PinyinObserver (PhoneticEditor &editor) : m_editor(editor) { } void PinyinObserver::commitText (PyZy::InputContext * context, const std::string &commit_text) { m_editor.commitCallback (String(commit_text)); } void PinyinObserver::inputTextChanged (PyZy::InputContext * context) { m_editor.updateInputText (); } void PinyinObserver::cursorChanged (PyZy::InputContext * context) { m_editor.updateCursor (); } void PinyinObserver::preeditTextChanged (PyZy::InputContext * context) { m_editor.updatePreeditText (); } void PinyinObserver::auxiliaryTextChanged (PyZy::InputContext * context) { m_editor.updateAuxiliaryText (); } void PinyinObserver::candidatesChanged (PyZy::InputContext * context) { m_editor.updateLookupTable (); } } // namespace PY ibus-pinyin-1.5.0/src/PYLookupTable.h0000664000175000017500000000560311776565552014367 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_LOOKUP_TABLE_H_ #define __PY_LOOKUP_TABLE_H_ #include #include "PYObject.h" #include "PYText.h" namespace PY { class LookupTable : Object { public: LookupTable (guint page_size = 10, guint cursor_pos = 0, gboolean cursor_visible = TRUE, gboolean round = FALSE) : Object (ibus_lookup_table_new (page_size, cursor_pos, cursor_visible, round)) { } guint pageSize (void) { return ibus_lookup_table_get_page_size (*this); } guint orientation (void) { return ibus_lookup_table_get_orientation (*this); } guint cursorPos (void) { return ibus_lookup_table_get_cursor_pos (*this); } guint size (void) { return ibus_lookup_table_get_number_of_candidates (*this); } gboolean pageUp (void) { return ibus_lookup_table_page_up (*this); } gboolean pageDown (void) { return ibus_lookup_table_page_down (*this); } gboolean cursorUp (void) { return ibus_lookup_table_cursor_up (*this); } gboolean cursorDown (void) { return ibus_lookup_table_cursor_down (*this); } void setPageSize (guint size) { ibus_lookup_table_set_page_size (*this, size); } void setCursorPos (guint pos) { ibus_lookup_table_set_cursor_pos (*this, pos); } void setOrientation (gint orientation) { ibus_lookup_table_set_orientation (*this, orientation); } void clear (void) { ibus_lookup_table_clear (*this); } void setCursorVisable (gboolean visable){ ibus_lookup_table_set_cursor_visible (*this, visable); } void setLabel (guint index, IBusText *text) { ibus_lookup_table_set_label (*this, index, text); } void appendCandidate (IBusText *text) { ibus_lookup_table_append_candidate (*this, text); } void appendLabel (IBusText *text) { ibus_lookup_table_append_label (*this, text); } IBusText * getCandidate(guint index) { return ibus_lookup_table_get_candidate(*this, index); } operator IBusLookupTable * (void) const { return get (); } }; }; #endif ibus-pinyin-1.5.0/src/PYEditor.h0000664000175000017500000001213711776565552013374 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_EDITOR_H_ #define __PY_EDITOR_H_ #include #include "PYSignal.h" #include "PYString.h" #include "PYUtil.h" namespace PY { class Text; class LookupTable; class PinyinProperties; class Config; class Editor; typedef std::shared_ptr EditorPtr; class Editor { public: Editor (PinyinProperties & prop, Config & config); virtual ~Editor (void); virtual gboolean processKeyEvent (guint keyval, guint keycode, guint modifiers); virtual void pageUp (void); virtual void pageDown (void); virtual void cursorUp (void); virtual void cursorDown (void); virtual void update (void); virtual void reset (void); virtual void candidateClicked (guint index, guint button, guint state); const String & text (void) const { return m_text; } void setText (const String & text, guint cursor) { m_text = text; m_cursor = cursor; } /* signals */ signal & signalCommitText (void) { return m_signal_commit_text; } signal & signalUpdatePreeditText (void) { return m_signal_update_preedit_text; } signal & signalShowPreeditText (void) { return m_signal_show_preedit_text; } signal & signalHidePreeditText (void) { return m_signal_hide_preedit_text; } signal & signalUpdateAuxiliaryText (void) { return m_signal_update_auxiliary_text; } signal & signalShowAuxiliaryText (void) { return m_signal_show_auxiliary_text; } signal & signalHideAuxiliaryText (void) { return m_signal_hide_auxiliary_text; } signal & signalUpdateLookupTable (void) { return m_signal_update_lookup_table; } signal & signalUpdateLookupTableFast (void) { return m_signal_update_lookup_table_fast; } signal & signalShowLookupTable (void) { return m_signal_show_lookup_table; } signal & signalHideLookupTable (void) { return m_signal_hide_lookup_table; } protected: /* methods */ void commitText (Text & text) const { m_signal_commit_text (text); } void updatePreeditText (Text & text, guint cursor, gboolean visible) const { m_signal_update_preedit_text (text, cursor, visible); } void showPreeditText (void) const { m_signal_show_preedit_text (); } void hidePreeditText (void) const { m_signal_hide_preedit_text (); } void updateAuxiliaryText (Text & text, gboolean visible) const { m_signal_update_auxiliary_text (text, visible); } void showAuxiliaryText (void) const { m_signal_show_auxiliary_text (); } void hideAuxiliaryText (void) const { m_signal_hide_auxiliary_text (); } void updateLookupTable (LookupTable & table, gboolean visible) const { m_signal_update_lookup_table (table, visible); } void updateLookupTableFast (LookupTable & table, gboolean visible) const { m_signal_update_lookup_table_fast (table, visible); } void showLookupTable (void) const { m_signal_show_lookup_table (); } void hideLookupTable (void) const { m_signal_hide_lookup_table (); } protected: /* signals */ signal m_signal_commit_text; signal m_signal_update_preedit_text; signal m_signal_show_preedit_text; signal m_signal_hide_preedit_text; signal m_signal_update_auxiliary_text; signal m_signal_show_auxiliary_text; signal m_signal_hide_auxiliary_text; signal m_signal_update_lookup_table; signal m_signal_update_lookup_table_fast; signal m_signal_show_lookup_table; signal m_signal_hide_lookup_table; protected: String m_text; guint m_cursor; PinyinProperties & m_props; Config & m_config; }; }; #endif ibus-pinyin-1.5.0/src/PYPointer.h0000664000175000017500000000354611776565552013572 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_POINTER_H_ #define __PY_POINTER_H_ #include namespace PY { template struct Pointer { public: Pointer (T *p = NULL) : m_p (NULL) { set (p); } ~Pointer (void) { set (NULL); } void set (T * p) { if (m_p) { g_object_unref (m_p); } m_p = p; if (p) { #if 0 g_debug ("%s, floating = %d",G_OBJECT_TYPE_NAME (p), g_object_is_floating (p)); #endif g_object_ref_sink (p); } } Pointer &operator = (T *p) { set (p); return *this; } Pointer &operator = (const Pointer & p) { set (p.m_p); return *this; } const T * operator-> (void) const { return m_p; } T * operator-> (void) { return m_p; } operator T * (void) const { return m_p; } operator gboolean (void) const { return m_p != NULL; } private: T *m_p; }; }; #endif ibus-pinyin-1.5.0/src/PYPinyinEditor.cc0000664000175000017500000001203512006506456014677 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "PYPinyinEditor.h" #include "PYConfig.h" #include "PYPinyinProperties.h" #include "PYHalfFullConverter.h" namespace PY { /* init static members */ PinyinEditor::PinyinEditor (PinyinProperties & props, Config & config) : PhoneticEditor (props, config) { } /* destructor */ PinyinEditor::~PinyinEditor () { } /** * process pinyin */ inline gboolean PinyinEditor::processPinyin (guint keyval, guint keycode, guint modifiers) { if (G_UNLIKELY (cmshm_filter (modifiers) != 0)) return !m_text.empty() ? TRUE : FALSE; return insert (keyval); } /** * process numbers */ inline gboolean PinyinEditor::processNumber (guint keyval, guint keycode, guint modifiers) { guint i; if (m_text.empty()) return FALSE; switch (keyval) { case IBUS_0: case IBUS_KP_0: i = 9; break; case IBUS_1 ... IBUS_9: i = keyval - IBUS_1; break; case IBUS_KP_1 ... IBUS_KP_9: i = keyval - IBUS_KP_1; break; default: g_return_val_if_reached (FALSE); } if (modifiers == 0) selectCandidateInPage (i); else if ((modifiers & ~IBUS_LOCK_MASK) == IBUS_CONTROL_MASK) resetCandidateInPage (i); return TRUE; } inline gboolean PinyinEditor::processPunct (guint keyval, guint keycode, guint modifiers) { if (m_text.empty ()) return FALSE; if (cmshm_filter (modifiers) != 0) return TRUE; switch (keyval) { case IBUS_apostrophe: return insert (keyval); case IBUS_comma: if (m_config.commaPeriodPage ()) { pageUp (); return TRUE; } break; case IBUS_minus: if (m_config.minusEqualPage ()) { pageUp (); return TRUE; } break; case IBUS_period: if (m_config.commaPeriodPage ()) { pageDown (); return TRUE; } break; case IBUS_equal: if (m_config.minusEqualPage ()) { pageDown (); return TRUE; } break; } if (m_config.autoCommit ()) { if (m_lookup_table.size () > 0) { selectCandidate (m_lookup_table.cursorPos ()); } commit (); return FALSE; } return TRUE; } inline gboolean PinyinEditor::processFunctionKey (guint keyval, guint keycode, guint modifiers) { if (m_text.empty ()) return FALSE; /* ignore numlock */ modifiers = cmshm_filter (modifiers); if (modifiers != 0 && modifiers != IBUS_CONTROL_MASK) return TRUE; /* process some cursor control keys */ if (modifiers == 0) { switch (keyval) { case IBUS_Shift_L: if (!m_config.shiftSelectCandidate ()) return FALSE; selectCandidateInPage (1); return TRUE; case IBUS_Shift_R: if (!m_config.shiftSelectCandidate ()) return FALSE; selectCandidateInPage (2); return TRUE; }; } return PhoneticEditor::processFunctionKey (keyval, keycode, modifiers); } gboolean PinyinEditor::processKeyEvent (guint keyval, guint keycode, guint modifiers) { modifiers &= (IBUS_SHIFT_MASK | IBUS_CONTROL_MASK | IBUS_MOD1_MASK | IBUS_SUPER_MASK | IBUS_HYPER_MASK | IBUS_META_MASK | IBUS_LOCK_MASK); switch (keyval) { /* letters */ case IBUS_a ... IBUS_z: return processPinyin (keyval, keycode, modifiers); case IBUS_0 ... IBUS_9: case IBUS_KP_0 ... IBUS_KP_9: return processNumber (keyval, keycode, modifiers); case IBUS_exclam ... IBUS_slash: case IBUS_colon ... IBUS_at: case IBUS_bracketleft ... IBUS_quoteleft: case IBUS_braceleft ... IBUS_asciitilde: return processPunct (keyval, keycode, modifiers); case IBUS_space: return processSpace (keyval, keycode, modifiers); default: return processFunctionKey (keyval, keycode, modifiers); } } void PinyinEditor::updateLookupTable () { m_lookup_table.setPageSize (m_config.pageSize ()); m_lookup_table.setOrientation (m_config.orientation ()); PhoneticEditor::updateLookupTable (); } }; ibus-pinyin-1.5.0/src/PYTypes.h0000664000175000017500000001106411776565552013250 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_TYPES_H_ #define __PY_TYPES_H_ #include namespace PY { #define PINYIN_ID_VOID (-1) #define PINYIN_ID_ZERO (0) #define PINYIN_ID_B (1) #define PINYIN_ID_C (2) #define PINYIN_ID_CH (3) #define PINYIN_ID_D (4) #define PINYIN_ID_F (5) #define PINYIN_ID_G (6) #define PINYIN_ID_H (7) #define PINYIN_ID_J (8) #define PINYIN_ID_K (9) #define PINYIN_ID_L (10) #define PINYIN_ID_M (11) #define PINYIN_ID_N (12) #define PINYIN_ID_P (13) #define PINYIN_ID_Q (14) #define PINYIN_ID_R (15) #define PINYIN_ID_S (16) #define PINYIN_ID_SH (17) #define PINYIN_ID_T (18) #define PINYIN_ID_W (19) #define PINYIN_ID_X (20) #define PINYIN_ID_Y (21) #define PINYIN_ID_Z (22) #define PINYIN_ID_ZH (23) #define PINYIN_ID_A (24) #define PINYIN_ID_AI (25) #define PINYIN_ID_AN (26) #define PINYIN_ID_ANG (27) #define PINYIN_ID_AO (28) #define PINYIN_ID_E (29) #define PINYIN_ID_EI (30) #define PINYIN_ID_EN (31) #define PINYIN_ID_ENG (32) #define PINYIN_ID_ER (33) #define PINYIN_ID_I (34) #define PINYIN_ID_IA (35) #define PINYIN_ID_IAN (36) #define PINYIN_ID_IANG (37) #define PINYIN_ID_IAO (38) #define PINYIN_ID_IE (39) #define PINYIN_ID_IN (40) #define PINYIN_ID_ING (41) #define PINYIN_ID_IONG (42) #define PINYIN_ID_IU (43) #define PINYIN_ID_O (44) #define PINYIN_ID_ONG (45) #define PINYIN_ID_OU (46) #define PINYIN_ID_U (47) #define PINYIN_ID_UA (48) #define PINYIN_ID_UAI (49) #define PINYIN_ID_UAN (50) #define PINYIN_ID_UANG (51) #define PINYIN_ID_UE (52) #define PINYIN_ID_VE PINYIN_ID_UE #define PINYIN_ID_UI (53) #define PINYIN_ID_UN (54) #define PINYIN_ID_UO (55) #define PINYIN_ID_V (56) #define PINYIN_ID_NG PINYIN_ID_VOID #define PINYIN_INCOMPLETE_PINYIN (1U << 0) #define PINYIN_CORRECT_GN_TO_NG (1U << 1) #define PINYIN_CORRECT_MG_TO_NG (1U << 2) #define PINYIN_CORRECT_IOU_TO_IU (1U << 3) #define PINYIN_CORRECT_UEI_TO_UI (1U << 4) #define PINYIN_CORRECT_UEN_TO_UN (1U << 5) #define PINYIN_CORRECT_UE_TO_VE (1U << 6) #define PINYIN_CORRECT_V_TO_U (1U << 7) #define PINYIN_CORRECT_ON_TO_ONG (1U << 8) #define PINYIN_CORRECT_ALL (0x000001fe) #define PINYIN_FUZZY_C_CH (1U << 9) #define PINYIN_FUZZY_CH_C (1U << 10) #define PINYIN_FUZZY_Z_ZH (1U << 11) #define PINYIN_FUZZY_ZH_Z (1U << 12) #define PINYIN_FUZZY_S_SH (1U << 13) #define PINYIN_FUZZY_SH_S (1U << 14) #define PINYIN_FUZZY_L_N (1U << 15) #define PINYIN_FUZZY_N_L (1U << 16) #define PINYIN_FUZZY_F_H (1U << 17) #define PINYIN_FUZZY_H_F (1U << 18) #define PINYIN_FUZZY_L_R (1U << 19) #define PINYIN_FUZZY_R_L (1U << 20) #define PINYIN_FUZZY_K_G (1U << 21) #define PINYIN_FUZZY_G_K (1U << 22) #define PINYIN_FUZZY_AN_ANG (1U << 23) #define PINYIN_FUZZY_ANG_AN (1U << 24) #define PINYIN_FUZZY_EN_ENG (1U << 25) #define PINYIN_FUZZY_ENG_EN (1U << 26) #define PINYIN_FUZZY_IN_ING (1U << 27) #define PINYIN_FUZZY_ING_IN (1U << 28) #define PINYIN_FUZZY_IAN_IANG PINYIN_FUZZY_AN_ANG #define PINYIN_FUZZY_IANG_IAN PINYIN_FUZZY_ANG_AN #define PINYIN_FUZZY_UAN_UANG PINYIN_FUZZY_AN_ANG #define PINYIN_FUZZY_UANG_UAN PINYIN_FUZZY_ANG_AN #define PINYIN_FUZZY_ALL (0x1ffffe00) struct Pinyin { const gchar *text; const wchar_t *bopomofo; const gchar *sheng; const gchar *yun; struct { guint8 sheng; guint8 yun; } pinyin_id[3]; const guint len; const guint flags; }; #define MAX_UTF8_LEN 6 #define MAX_PHRASE_LEN 16 }; #endif ibus-pinyin-1.5.0/src/PYBus.h0000664000175000017500000000227111776565552012675 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_BUS_H_ #define __PY_BUS_H_ #include #include "PYObject.h" namespace PY { class Bus : Object { public: Bus (void) : Object (ibus_bus_new ()) { } bool isConnected (void) { return ibus_bus_is_connected (*this); } operator IBusBus * (void) const { return get (); } }; }; #endif ibus-pinyin-1.5.0/src/phrases.txt0000664000175000017500000000470211762161772013720 00000000000000; ibus 拼音输入法--自定义短语配置文件 ; ; 说明: ; **注意** ; 修改后请重新启动输入法 ; 或者运行下面命令:pkill -x -u $USERNAME ibus-engine-pinyin ; 格式: ; 英文字符串=短语 ; 英文字符串=#动态短语 ; 动态短语: ; 函数 含义 举例 ; ${year} 年(4位) 2006、2008 ; ${year_yy} 年(2位) 06、08 ; ${month} 月 12、8、3 ; ${month_mm} 月 12、08、03 ; ${day} 日 3、13、22 ; ${day_dd} 日 03、13、22 ; ${weekday} 星期 0、1、2、5、6 ; ${fullhour} 时(24小时制) 02、08、13、23 ; ${halfhour} 时(12小时制) 02、08、01、11 ; ${ampm} AM、PM(英) AM、PM(大写) ; ${minute} 分 02、08、15、28 ; ${second} 秒 02、08、15、28 ; ${year_cn} 年(中文4位) 二〇〇六 ; ${year_yy_cn} 年(中文2位) 〇六 ; ${month_cn} 月(中文) 十二、八、三 ; ${day_cn} 日(中文) 三、十三、二十二 ; ${weekday_cn} 星期(中文) 日、一、二、五、六 ; ${fullhour_cn} 月(中文24时制) 二、八、十三、二十三 ; ${halfhour_cn} 时(中文12时制) 二、八、一、十一 ; ${ampm_cn} 上午下午(中文) 上午、下午 ; ${minute_cn} 分(中文) 零二、零八、十五、二十八 ; ${second_cn} 秒(中文) 零二、零八、十五、二十八 aazhi=AA制 agu=A股 bchao=B超 bgu=B股 bichao=B超 bsn=╭∩╮(︶︿︶)╭∩╮鄙视你! ceo=首席执行官 cpan=C盘 cyuyan=C语言 dna=脱氧核糖核酸 dpan=D盘 gps=全球定位系统 haha=^_^ haha=o(∩∩)o...哈哈 hehe=:-) hgu=H股 icka=IC卡 ipdianhua=IP电话 ipdizhi=IP地址 ipka=IP卡 kalaok=卡拉OK pcji=PC机 qiruiqq=奇瑞QQ qqhao=QQ号 simka=SIM卡 tixu=T恤 tixushan=T恤衫 txingtai=T型台 txu=T恤 upan=U盘 xixi=(*^__^*) 嘻嘻…… xshexian=X射线 ; 动态短语 rq=#${year}年${month}月${day}日 rq=#${year_cn}年${month_cn}月${day_cn}日 rq=#${year}-${month}-${day} sj=#${fullhour}时${minute}分${second}秒 sj=#${fullhour}:${minute}:${second} xq=#星期${weekday_cn} lb=#礼拜${weekday_cn} ; 暂时不支持 ; nl=#农历${lunardate} ibus-pinyin-1.5.0/src/Makefile.in0000664000175000017500000022411112063705664013554 00000000000000# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. # @MAINTAINER_MODE_FALSE@skip_gentable=test -f $@ || # AM_CFLAGS = \ # @IBUS_CFLAGS@ \ # @SQLITE_CFLAGS@ \ # @PYZY_CFLAGS@ \ # -DPKGDATADIR=\"$(pkgdatadir)\" \ # $(NULL) # AM_CXXFLAGS = $(AM_CFLAGS) # AM_LDADD = \ # @IBUS_LIBS@ \ # @SQLITE_LIBS@ \ # @PYZY_LIBS@ \ # $(NULL) # VPATH = @srcdir@ am__make_dryrun = \ { \ am__dry=no; \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ *) \ for am__flg in $$MAKEFLAGS; do \ case $$am__flg in \ *=*|--*) ;; \ *n*) am__dry=yes; break;; \ esac; \ done;; \ esac; \ test $$am__dry = yes; \ } 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@ libexec_PROGRAMS = ibus-engine-pinyin$(EXEEXT) @IBUS_BUILD_LUA_EXTENSION_TRUE@am__append_1 = PYExtEditor.cc @IBUS_BUILD_ENGLISH_INPUT_MODE_TRUE@am__append_2 = PYEnglishEditor.cc @HAVE_BOOST_TRUE@am__append_3 = \ @HAVE_BOOST_TRUE@ @BOOST_CPPFLAGS@ \ @HAVE_BOOST_TRUE@ $(NULL) @HAVE_BOOST_FALSE@am__append_4 = \ @HAVE_BOOST_FALSE@ -std=c++0x \ @HAVE_BOOST_FALSE@ $(NULL) @IBUS_BUILD_LUA_EXTENSION_TRUE@am__append_5 = \ @IBUS_BUILD_LUA_EXTENSION_TRUE@ @LUA_CFLAGS@ \ @IBUS_BUILD_LUA_EXTENSION_TRUE@ -DIBUS_BUILD_LUA_EXTENSION \ @IBUS_BUILD_LUA_EXTENSION_TRUE@ -I$(top_srcdir)/lua/ \ @IBUS_BUILD_LUA_EXTENSION_TRUE@ $(NULL) @IBUS_BUILD_LUA_EXTENSION_TRUE@am__append_6 = \ @IBUS_BUILD_LUA_EXTENSION_TRUE@ @LUA_LIBS@ \ @IBUS_BUILD_LUA_EXTENSION_TRUE@ -L../lua/ \ @IBUS_BUILD_LUA_EXTENSION_TRUE@ -lpylua \ @IBUS_BUILD_LUA_EXTENSION_TRUE@ $(NULL) @IBUS_BUILD_ENGLISH_INPUT_MODE_TRUE@am__append_7 = \ @IBUS_BUILD_ENGLISH_INPUT_MODE_TRUE@ -DIBUS_BUILD_ENGLISH_INPUT_MODE \ @IBUS_BUILD_ENGLISH_INPUT_MODE_TRUE@ $(NULL) subdir = src DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/pinyin.xml.in.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/as-version.m4 \ $(top_srcdir)/m4/boost.m4 $(top_srcdir)/m4/intltool.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = pinyin.xml.in CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(libexecdir)" \ "$(DESTDIR)$(componentdir)" "$(DESTDIR)$(pkgdatadir)" PROGRAMS = $(libexec_PROGRAMS) am__ibus_engine_pinyin_SOURCES_DIST = PYBopomofoEditor.cc \ PYBopomofoEngine.cc PYConfig.cc PYDoublePinyinEditor.cc \ PYDynamicSpecialPhrase.cc PYEditor.cc PYEngine.cc \ PYFallbackEditor.cc PYFullPinyinEditor.cc \ PYHalfFullConverter.cc PYMain.cc PYPhoneticEditor.cc \ PYPinyinEditor.cc PYPinyinEngine.cc PYPinyinObserver.cc \ PYPinyinProperties.cc PYPunctEditor.cc PYExtEditor.cc \ PYEnglishEditor.cc PYBopomofoEditor.h PYBopomofoEngine.h \ PYBus.h PYConfig.h PYDoublePinyinEditor.h \ PYDynamicSpecialPhrase.h PYEditor.h PYEngine.h \ PYEnglishEditor.h PYExtEditor.h PYFallbackEditor.h \ PYFullPinyinEditor.h PYHalfFullConverter.h PYLookupTable.h \ PYObject.h PYPhoneticEditor.h PYPinyinEditor.h \ PYPinyinEngine.h PYPinyinObserver.h PYPinyinProperties.h \ PYPointer.h PYProperty.h PYPunctEditor.h PYRawEditor.h \ PYRegex.h PYSignal.h PYString.h PYText.h PYTypes.h PYUtil.h \ PYPunctTable.h @IBUS_BUILD_LUA_EXTENSION_TRUE@am__objects_1 = ibus_engine_pinyin-PYExtEditor.$(OBJEXT) @IBUS_BUILD_ENGLISH_INPUT_MODE_TRUE@am__objects_2 = ibus_engine_pinyin-PYEnglishEditor.$(OBJEXT) am__objects_3 = ibus_engine_pinyin-PYBopomofoEditor.$(OBJEXT) \ ibus_engine_pinyin-PYBopomofoEngine.$(OBJEXT) \ ibus_engine_pinyin-PYConfig.$(OBJEXT) \ ibus_engine_pinyin-PYDoublePinyinEditor.$(OBJEXT) \ ibus_engine_pinyin-PYDynamicSpecialPhrase.$(OBJEXT) \ ibus_engine_pinyin-PYEditor.$(OBJEXT) \ ibus_engine_pinyin-PYEngine.$(OBJEXT) \ ibus_engine_pinyin-PYFallbackEditor.$(OBJEXT) \ ibus_engine_pinyin-PYFullPinyinEditor.$(OBJEXT) \ ibus_engine_pinyin-PYHalfFullConverter.$(OBJEXT) \ ibus_engine_pinyin-PYMain.$(OBJEXT) \ ibus_engine_pinyin-PYPhoneticEditor.$(OBJEXT) \ ibus_engine_pinyin-PYPinyinEditor.$(OBJEXT) \ ibus_engine_pinyin-PYPinyinEngine.$(OBJEXT) \ ibus_engine_pinyin-PYPinyinObserver.$(OBJEXT) \ ibus_engine_pinyin-PYPinyinProperties.$(OBJEXT) \ ibus_engine_pinyin-PYPunctEditor.$(OBJEXT) $(am__objects_1) \ $(am__objects_2) am__objects_4 = am_ibus_engine_pinyin_OBJECTS = $(am__objects_3) $(am__objects_4) \ $(am__objects_4) $(am__objects_4) ibus_engine_pinyin_OBJECTS = $(am_ibus_engine_pinyin_OBJECTS) am__DEPENDENCIES_1 = ibus_engine_pinyin_DEPENDENCIES = $(am__DEPENDENCIES_1) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent ibus_engine_pinyin_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \ $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \ $(LDFLAGS) -o $@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ $(AM_CXXFLAGS) $(CXXFLAGS) AM_V_CXX = $(am__v_CXX_@AM_V@) am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) am__v_CXX_0 = @echo " CXX " $@; AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ CXXLD = $(CXX) CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) am__v_CXXLD_0 = @echo " CXXLD " $@; COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ $(AM_CFLAGS) $(CFLAGS) AM_V_CC = $(am__v_CC_@AM_V@) am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) am__v_CC_0 = @echo " CC " $@; CCLD = $(CC) LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(AM_LDFLAGS) $(LDFLAGS) -o $@ AM_V_CCLD = $(am__v_CCLD_@AM_V@) am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) am__v_CCLD_0 = @echo " CCLD " $@; AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(ibus_engine_pinyin_SOURCES) DIST_SOURCES = $(am__ibus_engine_pinyin_SOURCES_DIST) 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 -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } DATA = $(component_DATA) $(pkgdata_DATA) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BOOST_CPPFLAGS = @BOOST_CPPFLAGS@ BOOST_ROOT = @BOOST_ROOT@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENV = @ENV@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ IBUS_CFLAGS = @IBUS_CFLAGS@ IBUS_LIBS = @IBUS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ LUA_CFLAGS = @LUA_CFLAGS@ LUA_LIBS = @LUA_LIBS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ 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@ PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@ PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@ PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@ PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@ PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PYTHON = @PYTHON@ PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ PYTHON_PLATFORM = @PYTHON_PLATFORM@ PYTHON_PREFIX = @PYTHON_PREFIX@ PYTHON_VERSION = @PYTHON_VERSION@ PYZY = @PYZY@ PYZY_CFLAGS = @PYZY_CFLAGS@ PYZY_LIBS = @PYZY_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SQLITE3 = @SQLITE3@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ 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@ 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@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ pkgpyexecdir = @pkgpyexecdir@ pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ 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@ ibus_engine_pinyin_built_c_sources = \ $(NULL) ibus_engine_pinyin_built_h_sources = \ PYPunctTable.h \ $(NULL) ibus_engine_pinyin_c_sources = PYBopomofoEditor.cc PYBopomofoEngine.cc \ PYConfig.cc PYDoublePinyinEditor.cc PYDynamicSpecialPhrase.cc \ PYEditor.cc PYEngine.cc PYFallbackEditor.cc \ PYFullPinyinEditor.cc PYHalfFullConverter.cc PYMain.cc \ PYPhoneticEditor.cc PYPinyinEditor.cc PYPinyinEngine.cc \ PYPinyinObserver.cc PYPinyinProperties.cc PYPunctEditor.cc \ $(NULL) $(am__append_1) $(am__append_2) ibus_engine_pinyin_h_sources = \ PYBopomofoEditor.h \ PYBopomofoEngine.h \ PYBus.h \ PYConfig.h \ PYDoublePinyinEditor.h \ PYDynamicSpecialPhrase.h \ PYEditor.h \ PYEngine.h \ PYEnglishEditor.h \ PYExtEditor.h \ PYFallbackEditor.h \ PYFullPinyinEditor.h \ PYHalfFullConverter.h \ PYLookupTable.h \ PYObject.h \ PYPhoneticEditor.h \ PYPinyinEditor.h \ PYPinyinEngine.h \ PYPinyinObserver.h \ PYPinyinProperties.h \ PYPointer.h \ PYProperty.h \ PYPunctEditor.h \ PYRawEditor.h \ PYRegex.h \ PYSignal.h \ PYString.h \ PYText.h \ PYTypes.h \ PYUtil.h \ $(NULL) ibus_engine_pinyin_SOURCES = \ $(ibus_engine_pinyin_c_sources) \ $(ibus_engine_pinyin_h_sources) \ $(ibus_engine_pinyin_built_c_sources) \ $(ibus_engine_pinyin_built_h_sources) \ $(NULL) ibus_engine_pinyin_CXXFLAGS = @IBUS_CFLAGS@ @SQLITE_CFLAGS@ \ @PYZY_CFLAGS@ -DGETTEXT_PACKAGE=\"@GETTEXT_PACKAGE@\" \ -DPKGDATADIR=\"$(pkgdatadir)\" -DLIBEXECDIR=\"$(libexecdir)\" \ $(NULL) $(am__append_3) $(am__append_4) $(am__append_5) \ $(am__append_7) ibus_engine_pinyin_LDADD = @IBUS_LIBS@ @SQLITE_LIBS@ @PYZY_LIBS@ \ $(NULL) $(am__append_6) BUILT_SOURCES = \ $(ibus_engine_built_c_sources) \ $(ibus_engine_built_h_sources) \ $(NULL) pkgdata_DATA = \ phrases.txt \ $(NULL) component_DATA = \ pinyin.xml \ $(NULL) componentdir = @datadir@/ibus/component EXTRA_DIST = \ pinyin.xml.in \ phrases.txt \ $(NULL) CLEANFILES = \ pinyin.xml \ $(NULL) all: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) all-am .SUFFIXES: .SUFFIXES: .cc .lo .o .obj $(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 src/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu src/Makefile .PRECIOUS: 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__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ 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): pinyin.xml.in: $(top_builddir)/config.status $(srcdir)/pinyin.xml.in.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ install-libexecPROGRAMS: $(libexec_PROGRAMS) @$(NORMAL_INSTALL) @list='$(libexec_PROGRAMS)'; test -n "$(libexecdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(libexecdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(libexecdir)" || exit 1; \ fi; \ for p in $$list; do echo "$$p $$p"; done | \ sed 's/$(EXEEXT)$$//' | \ while read p p1; do if test -f $$p || test -f $$p1; \ then echo "$$p"; echo "$$p"; else :; fi; \ done | \ sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \ -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ sed 'N;N;N;s,\n, ,g' | \ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ if ($$2 == $$4) files[d] = files[d] " " $$1; \ else { print "f", $$3 "/" $$4, $$1; } } \ END { for (d in files) print "f", d, files[d] }' | \ while read type dir files; do \ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ test -z "$$files" || { \ echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(libexecdir)$$dir'"; \ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(libexecdir)$$dir" || exit $$?; \ } \ ; done uninstall-libexecPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(libexec_PROGRAMS)'; test -n "$(libexecdir)" || list=; \ files=`for p in $$list; do echo "$$p"; done | \ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ -e 's/$$/$(EXEEXT)/' `; \ test -n "$$list" || exit 0; \ echo " ( cd '$(DESTDIR)$(libexecdir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(libexecdir)" && rm -f $$files clean-libexecPROGRAMS: @list='$(libexec_PROGRAMS)'; test -n "$$list" || exit 0; \ echo " rm -f" $$list; \ rm -f $$list || exit $$?; \ test -n "$(EXEEXT)" || exit 0; \ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list ibus-engine-pinyin$(EXEEXT): $(ibus_engine_pinyin_OBJECTS) $(ibus_engine_pinyin_DEPENDENCIES) $(EXTRA_ibus_engine_pinyin_DEPENDENCIES) @rm -f ibus-engine-pinyin$(EXEEXT) $(AM_V_CXXLD)$(ibus_engine_pinyin_LINK) $(ibus_engine_pinyin_OBJECTS) $(ibus_engine_pinyin_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYBopomofoEditor.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYBopomofoEngine.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYConfig.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYDoublePinyinEditor.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYDynamicSpecialPhrase.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYEditor.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYEngine.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYEnglishEditor.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYExtEditor.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYFallbackEditor.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYFullPinyinEditor.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYHalfFullConverter.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYMain.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYPhoneticEditor.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYPinyinEditor.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYPinyinEngine.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYPinyinObserver.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYPinyinProperties.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ibus_engine_pinyin-PYPunctEditor.Po@am__quote@ .cc.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ $< .cc.obj: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` .cc.lo: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $< ibus_engine_pinyin-PYBopomofoEditor.o: PYBopomofoEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYBopomofoEditor.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYBopomofoEditor.Tpo -c -o ibus_engine_pinyin-PYBopomofoEditor.o `test -f 'PYBopomofoEditor.cc' || echo '$(srcdir)/'`PYBopomofoEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYBopomofoEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYBopomofoEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYBopomofoEditor.cc' object='ibus_engine_pinyin-PYBopomofoEditor.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYBopomofoEditor.o `test -f 'PYBopomofoEditor.cc' || echo '$(srcdir)/'`PYBopomofoEditor.cc ibus_engine_pinyin-PYBopomofoEditor.obj: PYBopomofoEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYBopomofoEditor.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYBopomofoEditor.Tpo -c -o ibus_engine_pinyin-PYBopomofoEditor.obj `if test -f 'PYBopomofoEditor.cc'; then $(CYGPATH_W) 'PYBopomofoEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYBopomofoEditor.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYBopomofoEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYBopomofoEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYBopomofoEditor.cc' object='ibus_engine_pinyin-PYBopomofoEditor.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYBopomofoEditor.obj `if test -f 'PYBopomofoEditor.cc'; then $(CYGPATH_W) 'PYBopomofoEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYBopomofoEditor.cc'; fi` ibus_engine_pinyin-PYBopomofoEngine.o: PYBopomofoEngine.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYBopomofoEngine.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYBopomofoEngine.Tpo -c -o ibus_engine_pinyin-PYBopomofoEngine.o `test -f 'PYBopomofoEngine.cc' || echo '$(srcdir)/'`PYBopomofoEngine.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYBopomofoEngine.Tpo $(DEPDIR)/ibus_engine_pinyin-PYBopomofoEngine.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYBopomofoEngine.cc' object='ibus_engine_pinyin-PYBopomofoEngine.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYBopomofoEngine.o `test -f 'PYBopomofoEngine.cc' || echo '$(srcdir)/'`PYBopomofoEngine.cc ibus_engine_pinyin-PYBopomofoEngine.obj: PYBopomofoEngine.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYBopomofoEngine.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYBopomofoEngine.Tpo -c -o ibus_engine_pinyin-PYBopomofoEngine.obj `if test -f 'PYBopomofoEngine.cc'; then $(CYGPATH_W) 'PYBopomofoEngine.cc'; else $(CYGPATH_W) '$(srcdir)/PYBopomofoEngine.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYBopomofoEngine.Tpo $(DEPDIR)/ibus_engine_pinyin-PYBopomofoEngine.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYBopomofoEngine.cc' object='ibus_engine_pinyin-PYBopomofoEngine.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYBopomofoEngine.obj `if test -f 'PYBopomofoEngine.cc'; then $(CYGPATH_W) 'PYBopomofoEngine.cc'; else $(CYGPATH_W) '$(srcdir)/PYBopomofoEngine.cc'; fi` ibus_engine_pinyin-PYConfig.o: PYConfig.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYConfig.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYConfig.Tpo -c -o ibus_engine_pinyin-PYConfig.o `test -f 'PYConfig.cc' || echo '$(srcdir)/'`PYConfig.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYConfig.Tpo $(DEPDIR)/ibus_engine_pinyin-PYConfig.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYConfig.cc' object='ibus_engine_pinyin-PYConfig.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYConfig.o `test -f 'PYConfig.cc' || echo '$(srcdir)/'`PYConfig.cc ibus_engine_pinyin-PYConfig.obj: PYConfig.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYConfig.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYConfig.Tpo -c -o ibus_engine_pinyin-PYConfig.obj `if test -f 'PYConfig.cc'; then $(CYGPATH_W) 'PYConfig.cc'; else $(CYGPATH_W) '$(srcdir)/PYConfig.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYConfig.Tpo $(DEPDIR)/ibus_engine_pinyin-PYConfig.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYConfig.cc' object='ibus_engine_pinyin-PYConfig.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYConfig.obj `if test -f 'PYConfig.cc'; then $(CYGPATH_W) 'PYConfig.cc'; else $(CYGPATH_W) '$(srcdir)/PYConfig.cc'; fi` ibus_engine_pinyin-PYDoublePinyinEditor.o: PYDoublePinyinEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYDoublePinyinEditor.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYDoublePinyinEditor.Tpo -c -o ibus_engine_pinyin-PYDoublePinyinEditor.o `test -f 'PYDoublePinyinEditor.cc' || echo '$(srcdir)/'`PYDoublePinyinEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYDoublePinyinEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYDoublePinyinEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYDoublePinyinEditor.cc' object='ibus_engine_pinyin-PYDoublePinyinEditor.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYDoublePinyinEditor.o `test -f 'PYDoublePinyinEditor.cc' || echo '$(srcdir)/'`PYDoublePinyinEditor.cc ibus_engine_pinyin-PYDoublePinyinEditor.obj: PYDoublePinyinEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYDoublePinyinEditor.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYDoublePinyinEditor.Tpo -c -o ibus_engine_pinyin-PYDoublePinyinEditor.obj `if test -f 'PYDoublePinyinEditor.cc'; then $(CYGPATH_W) 'PYDoublePinyinEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYDoublePinyinEditor.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYDoublePinyinEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYDoublePinyinEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYDoublePinyinEditor.cc' object='ibus_engine_pinyin-PYDoublePinyinEditor.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYDoublePinyinEditor.obj `if test -f 'PYDoublePinyinEditor.cc'; then $(CYGPATH_W) 'PYDoublePinyinEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYDoublePinyinEditor.cc'; fi` ibus_engine_pinyin-PYDynamicSpecialPhrase.o: PYDynamicSpecialPhrase.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYDynamicSpecialPhrase.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYDynamicSpecialPhrase.Tpo -c -o ibus_engine_pinyin-PYDynamicSpecialPhrase.o `test -f 'PYDynamicSpecialPhrase.cc' || echo '$(srcdir)/'`PYDynamicSpecialPhrase.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYDynamicSpecialPhrase.Tpo $(DEPDIR)/ibus_engine_pinyin-PYDynamicSpecialPhrase.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYDynamicSpecialPhrase.cc' object='ibus_engine_pinyin-PYDynamicSpecialPhrase.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYDynamicSpecialPhrase.o `test -f 'PYDynamicSpecialPhrase.cc' || echo '$(srcdir)/'`PYDynamicSpecialPhrase.cc ibus_engine_pinyin-PYDynamicSpecialPhrase.obj: PYDynamicSpecialPhrase.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYDynamicSpecialPhrase.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYDynamicSpecialPhrase.Tpo -c -o ibus_engine_pinyin-PYDynamicSpecialPhrase.obj `if test -f 'PYDynamicSpecialPhrase.cc'; then $(CYGPATH_W) 'PYDynamicSpecialPhrase.cc'; else $(CYGPATH_W) '$(srcdir)/PYDynamicSpecialPhrase.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYDynamicSpecialPhrase.Tpo $(DEPDIR)/ibus_engine_pinyin-PYDynamicSpecialPhrase.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYDynamicSpecialPhrase.cc' object='ibus_engine_pinyin-PYDynamicSpecialPhrase.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYDynamicSpecialPhrase.obj `if test -f 'PYDynamicSpecialPhrase.cc'; then $(CYGPATH_W) 'PYDynamicSpecialPhrase.cc'; else $(CYGPATH_W) '$(srcdir)/PYDynamicSpecialPhrase.cc'; fi` ibus_engine_pinyin-PYEditor.o: PYEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYEditor.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYEditor.Tpo -c -o ibus_engine_pinyin-PYEditor.o `test -f 'PYEditor.cc' || echo '$(srcdir)/'`PYEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYEditor.cc' object='ibus_engine_pinyin-PYEditor.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYEditor.o `test -f 'PYEditor.cc' || echo '$(srcdir)/'`PYEditor.cc ibus_engine_pinyin-PYEditor.obj: PYEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYEditor.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYEditor.Tpo -c -o ibus_engine_pinyin-PYEditor.obj `if test -f 'PYEditor.cc'; then $(CYGPATH_W) 'PYEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYEditor.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYEditor.cc' object='ibus_engine_pinyin-PYEditor.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYEditor.obj `if test -f 'PYEditor.cc'; then $(CYGPATH_W) 'PYEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYEditor.cc'; fi` ibus_engine_pinyin-PYEngine.o: PYEngine.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYEngine.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYEngine.Tpo -c -o ibus_engine_pinyin-PYEngine.o `test -f 'PYEngine.cc' || echo '$(srcdir)/'`PYEngine.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYEngine.Tpo $(DEPDIR)/ibus_engine_pinyin-PYEngine.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYEngine.cc' object='ibus_engine_pinyin-PYEngine.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYEngine.o `test -f 'PYEngine.cc' || echo '$(srcdir)/'`PYEngine.cc ibus_engine_pinyin-PYEngine.obj: PYEngine.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYEngine.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYEngine.Tpo -c -o ibus_engine_pinyin-PYEngine.obj `if test -f 'PYEngine.cc'; then $(CYGPATH_W) 'PYEngine.cc'; else $(CYGPATH_W) '$(srcdir)/PYEngine.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYEngine.Tpo $(DEPDIR)/ibus_engine_pinyin-PYEngine.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYEngine.cc' object='ibus_engine_pinyin-PYEngine.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYEngine.obj `if test -f 'PYEngine.cc'; then $(CYGPATH_W) 'PYEngine.cc'; else $(CYGPATH_W) '$(srcdir)/PYEngine.cc'; fi` ibus_engine_pinyin-PYFallbackEditor.o: PYFallbackEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYFallbackEditor.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYFallbackEditor.Tpo -c -o ibus_engine_pinyin-PYFallbackEditor.o `test -f 'PYFallbackEditor.cc' || echo '$(srcdir)/'`PYFallbackEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYFallbackEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYFallbackEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYFallbackEditor.cc' object='ibus_engine_pinyin-PYFallbackEditor.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYFallbackEditor.o `test -f 'PYFallbackEditor.cc' || echo '$(srcdir)/'`PYFallbackEditor.cc ibus_engine_pinyin-PYFallbackEditor.obj: PYFallbackEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYFallbackEditor.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYFallbackEditor.Tpo -c -o ibus_engine_pinyin-PYFallbackEditor.obj `if test -f 'PYFallbackEditor.cc'; then $(CYGPATH_W) 'PYFallbackEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYFallbackEditor.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYFallbackEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYFallbackEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYFallbackEditor.cc' object='ibus_engine_pinyin-PYFallbackEditor.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYFallbackEditor.obj `if test -f 'PYFallbackEditor.cc'; then $(CYGPATH_W) 'PYFallbackEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYFallbackEditor.cc'; fi` ibus_engine_pinyin-PYFullPinyinEditor.o: PYFullPinyinEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYFullPinyinEditor.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYFullPinyinEditor.Tpo -c -o ibus_engine_pinyin-PYFullPinyinEditor.o `test -f 'PYFullPinyinEditor.cc' || echo '$(srcdir)/'`PYFullPinyinEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYFullPinyinEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYFullPinyinEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYFullPinyinEditor.cc' object='ibus_engine_pinyin-PYFullPinyinEditor.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYFullPinyinEditor.o `test -f 'PYFullPinyinEditor.cc' || echo '$(srcdir)/'`PYFullPinyinEditor.cc ibus_engine_pinyin-PYFullPinyinEditor.obj: PYFullPinyinEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYFullPinyinEditor.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYFullPinyinEditor.Tpo -c -o ibus_engine_pinyin-PYFullPinyinEditor.obj `if test -f 'PYFullPinyinEditor.cc'; then $(CYGPATH_W) 'PYFullPinyinEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYFullPinyinEditor.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYFullPinyinEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYFullPinyinEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYFullPinyinEditor.cc' object='ibus_engine_pinyin-PYFullPinyinEditor.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYFullPinyinEditor.obj `if test -f 'PYFullPinyinEditor.cc'; then $(CYGPATH_W) 'PYFullPinyinEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYFullPinyinEditor.cc'; fi` ibus_engine_pinyin-PYHalfFullConverter.o: PYHalfFullConverter.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYHalfFullConverter.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYHalfFullConverter.Tpo -c -o ibus_engine_pinyin-PYHalfFullConverter.o `test -f 'PYHalfFullConverter.cc' || echo '$(srcdir)/'`PYHalfFullConverter.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYHalfFullConverter.Tpo $(DEPDIR)/ibus_engine_pinyin-PYHalfFullConverter.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYHalfFullConverter.cc' object='ibus_engine_pinyin-PYHalfFullConverter.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYHalfFullConverter.o `test -f 'PYHalfFullConverter.cc' || echo '$(srcdir)/'`PYHalfFullConverter.cc ibus_engine_pinyin-PYHalfFullConverter.obj: PYHalfFullConverter.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYHalfFullConverter.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYHalfFullConverter.Tpo -c -o ibus_engine_pinyin-PYHalfFullConverter.obj `if test -f 'PYHalfFullConverter.cc'; then $(CYGPATH_W) 'PYHalfFullConverter.cc'; else $(CYGPATH_W) '$(srcdir)/PYHalfFullConverter.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYHalfFullConverter.Tpo $(DEPDIR)/ibus_engine_pinyin-PYHalfFullConverter.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYHalfFullConverter.cc' object='ibus_engine_pinyin-PYHalfFullConverter.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYHalfFullConverter.obj `if test -f 'PYHalfFullConverter.cc'; then $(CYGPATH_W) 'PYHalfFullConverter.cc'; else $(CYGPATH_W) '$(srcdir)/PYHalfFullConverter.cc'; fi` ibus_engine_pinyin-PYMain.o: PYMain.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYMain.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYMain.Tpo -c -o ibus_engine_pinyin-PYMain.o `test -f 'PYMain.cc' || echo '$(srcdir)/'`PYMain.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYMain.Tpo $(DEPDIR)/ibus_engine_pinyin-PYMain.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYMain.cc' object='ibus_engine_pinyin-PYMain.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYMain.o `test -f 'PYMain.cc' || echo '$(srcdir)/'`PYMain.cc ibus_engine_pinyin-PYMain.obj: PYMain.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYMain.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYMain.Tpo -c -o ibus_engine_pinyin-PYMain.obj `if test -f 'PYMain.cc'; then $(CYGPATH_W) 'PYMain.cc'; else $(CYGPATH_W) '$(srcdir)/PYMain.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYMain.Tpo $(DEPDIR)/ibus_engine_pinyin-PYMain.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYMain.cc' object='ibus_engine_pinyin-PYMain.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYMain.obj `if test -f 'PYMain.cc'; then $(CYGPATH_W) 'PYMain.cc'; else $(CYGPATH_W) '$(srcdir)/PYMain.cc'; fi` ibus_engine_pinyin-PYPhoneticEditor.o: PYPhoneticEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYPhoneticEditor.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYPhoneticEditor.Tpo -c -o ibus_engine_pinyin-PYPhoneticEditor.o `test -f 'PYPhoneticEditor.cc' || echo '$(srcdir)/'`PYPhoneticEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYPhoneticEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYPhoneticEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYPhoneticEditor.cc' object='ibus_engine_pinyin-PYPhoneticEditor.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYPhoneticEditor.o `test -f 'PYPhoneticEditor.cc' || echo '$(srcdir)/'`PYPhoneticEditor.cc ibus_engine_pinyin-PYPhoneticEditor.obj: PYPhoneticEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYPhoneticEditor.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYPhoneticEditor.Tpo -c -o ibus_engine_pinyin-PYPhoneticEditor.obj `if test -f 'PYPhoneticEditor.cc'; then $(CYGPATH_W) 'PYPhoneticEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYPhoneticEditor.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYPhoneticEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYPhoneticEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYPhoneticEditor.cc' object='ibus_engine_pinyin-PYPhoneticEditor.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYPhoneticEditor.obj `if test -f 'PYPhoneticEditor.cc'; then $(CYGPATH_W) 'PYPhoneticEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYPhoneticEditor.cc'; fi` ibus_engine_pinyin-PYPinyinEditor.o: PYPinyinEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYPinyinEditor.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYPinyinEditor.Tpo -c -o ibus_engine_pinyin-PYPinyinEditor.o `test -f 'PYPinyinEditor.cc' || echo '$(srcdir)/'`PYPinyinEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYPinyinEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYPinyinEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYPinyinEditor.cc' object='ibus_engine_pinyin-PYPinyinEditor.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYPinyinEditor.o `test -f 'PYPinyinEditor.cc' || echo '$(srcdir)/'`PYPinyinEditor.cc ibus_engine_pinyin-PYPinyinEditor.obj: PYPinyinEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYPinyinEditor.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYPinyinEditor.Tpo -c -o ibus_engine_pinyin-PYPinyinEditor.obj `if test -f 'PYPinyinEditor.cc'; then $(CYGPATH_W) 'PYPinyinEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYPinyinEditor.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYPinyinEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYPinyinEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYPinyinEditor.cc' object='ibus_engine_pinyin-PYPinyinEditor.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYPinyinEditor.obj `if test -f 'PYPinyinEditor.cc'; then $(CYGPATH_W) 'PYPinyinEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYPinyinEditor.cc'; fi` ibus_engine_pinyin-PYPinyinEngine.o: PYPinyinEngine.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYPinyinEngine.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYPinyinEngine.Tpo -c -o ibus_engine_pinyin-PYPinyinEngine.o `test -f 'PYPinyinEngine.cc' || echo '$(srcdir)/'`PYPinyinEngine.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYPinyinEngine.Tpo $(DEPDIR)/ibus_engine_pinyin-PYPinyinEngine.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYPinyinEngine.cc' object='ibus_engine_pinyin-PYPinyinEngine.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYPinyinEngine.o `test -f 'PYPinyinEngine.cc' || echo '$(srcdir)/'`PYPinyinEngine.cc ibus_engine_pinyin-PYPinyinEngine.obj: PYPinyinEngine.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYPinyinEngine.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYPinyinEngine.Tpo -c -o ibus_engine_pinyin-PYPinyinEngine.obj `if test -f 'PYPinyinEngine.cc'; then $(CYGPATH_W) 'PYPinyinEngine.cc'; else $(CYGPATH_W) '$(srcdir)/PYPinyinEngine.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYPinyinEngine.Tpo $(DEPDIR)/ibus_engine_pinyin-PYPinyinEngine.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYPinyinEngine.cc' object='ibus_engine_pinyin-PYPinyinEngine.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYPinyinEngine.obj `if test -f 'PYPinyinEngine.cc'; then $(CYGPATH_W) 'PYPinyinEngine.cc'; else $(CYGPATH_W) '$(srcdir)/PYPinyinEngine.cc'; fi` ibus_engine_pinyin-PYPinyinObserver.o: PYPinyinObserver.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYPinyinObserver.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYPinyinObserver.Tpo -c -o ibus_engine_pinyin-PYPinyinObserver.o `test -f 'PYPinyinObserver.cc' || echo '$(srcdir)/'`PYPinyinObserver.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYPinyinObserver.Tpo $(DEPDIR)/ibus_engine_pinyin-PYPinyinObserver.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYPinyinObserver.cc' object='ibus_engine_pinyin-PYPinyinObserver.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYPinyinObserver.o `test -f 'PYPinyinObserver.cc' || echo '$(srcdir)/'`PYPinyinObserver.cc ibus_engine_pinyin-PYPinyinObserver.obj: PYPinyinObserver.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYPinyinObserver.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYPinyinObserver.Tpo -c -o ibus_engine_pinyin-PYPinyinObserver.obj `if test -f 'PYPinyinObserver.cc'; then $(CYGPATH_W) 'PYPinyinObserver.cc'; else $(CYGPATH_W) '$(srcdir)/PYPinyinObserver.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYPinyinObserver.Tpo $(DEPDIR)/ibus_engine_pinyin-PYPinyinObserver.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYPinyinObserver.cc' object='ibus_engine_pinyin-PYPinyinObserver.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYPinyinObserver.obj `if test -f 'PYPinyinObserver.cc'; then $(CYGPATH_W) 'PYPinyinObserver.cc'; else $(CYGPATH_W) '$(srcdir)/PYPinyinObserver.cc'; fi` ibus_engine_pinyin-PYPinyinProperties.o: PYPinyinProperties.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYPinyinProperties.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYPinyinProperties.Tpo -c -o ibus_engine_pinyin-PYPinyinProperties.o `test -f 'PYPinyinProperties.cc' || echo '$(srcdir)/'`PYPinyinProperties.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYPinyinProperties.Tpo $(DEPDIR)/ibus_engine_pinyin-PYPinyinProperties.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYPinyinProperties.cc' object='ibus_engine_pinyin-PYPinyinProperties.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYPinyinProperties.o `test -f 'PYPinyinProperties.cc' || echo '$(srcdir)/'`PYPinyinProperties.cc ibus_engine_pinyin-PYPinyinProperties.obj: PYPinyinProperties.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYPinyinProperties.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYPinyinProperties.Tpo -c -o ibus_engine_pinyin-PYPinyinProperties.obj `if test -f 'PYPinyinProperties.cc'; then $(CYGPATH_W) 'PYPinyinProperties.cc'; else $(CYGPATH_W) '$(srcdir)/PYPinyinProperties.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYPinyinProperties.Tpo $(DEPDIR)/ibus_engine_pinyin-PYPinyinProperties.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYPinyinProperties.cc' object='ibus_engine_pinyin-PYPinyinProperties.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYPinyinProperties.obj `if test -f 'PYPinyinProperties.cc'; then $(CYGPATH_W) 'PYPinyinProperties.cc'; else $(CYGPATH_W) '$(srcdir)/PYPinyinProperties.cc'; fi` ibus_engine_pinyin-PYPunctEditor.o: PYPunctEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYPunctEditor.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYPunctEditor.Tpo -c -o ibus_engine_pinyin-PYPunctEditor.o `test -f 'PYPunctEditor.cc' || echo '$(srcdir)/'`PYPunctEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYPunctEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYPunctEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYPunctEditor.cc' object='ibus_engine_pinyin-PYPunctEditor.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYPunctEditor.o `test -f 'PYPunctEditor.cc' || echo '$(srcdir)/'`PYPunctEditor.cc ibus_engine_pinyin-PYPunctEditor.obj: PYPunctEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYPunctEditor.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYPunctEditor.Tpo -c -o ibus_engine_pinyin-PYPunctEditor.obj `if test -f 'PYPunctEditor.cc'; then $(CYGPATH_W) 'PYPunctEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYPunctEditor.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYPunctEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYPunctEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYPunctEditor.cc' object='ibus_engine_pinyin-PYPunctEditor.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYPunctEditor.obj `if test -f 'PYPunctEditor.cc'; then $(CYGPATH_W) 'PYPunctEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYPunctEditor.cc'; fi` ibus_engine_pinyin-PYExtEditor.o: PYExtEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYExtEditor.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYExtEditor.Tpo -c -o ibus_engine_pinyin-PYExtEditor.o `test -f 'PYExtEditor.cc' || echo '$(srcdir)/'`PYExtEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYExtEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYExtEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYExtEditor.cc' object='ibus_engine_pinyin-PYExtEditor.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYExtEditor.o `test -f 'PYExtEditor.cc' || echo '$(srcdir)/'`PYExtEditor.cc ibus_engine_pinyin-PYExtEditor.obj: PYExtEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYExtEditor.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYExtEditor.Tpo -c -o ibus_engine_pinyin-PYExtEditor.obj `if test -f 'PYExtEditor.cc'; then $(CYGPATH_W) 'PYExtEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYExtEditor.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYExtEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYExtEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYExtEditor.cc' object='ibus_engine_pinyin-PYExtEditor.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYExtEditor.obj `if test -f 'PYExtEditor.cc'; then $(CYGPATH_W) 'PYExtEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYExtEditor.cc'; fi` ibus_engine_pinyin-PYEnglishEditor.o: PYEnglishEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYEnglishEditor.o -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYEnglishEditor.Tpo -c -o ibus_engine_pinyin-PYEnglishEditor.o `test -f 'PYEnglishEditor.cc' || echo '$(srcdir)/'`PYEnglishEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYEnglishEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYEnglishEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYEnglishEditor.cc' object='ibus_engine_pinyin-PYEnglishEditor.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYEnglishEditor.o `test -f 'PYEnglishEditor.cc' || echo '$(srcdir)/'`PYEnglishEditor.cc ibus_engine_pinyin-PYEnglishEditor.obj: PYEnglishEditor.cc @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -MT ibus_engine_pinyin-PYEnglishEditor.obj -MD -MP -MF $(DEPDIR)/ibus_engine_pinyin-PYEnglishEditor.Tpo -c -o ibus_engine_pinyin-PYEnglishEditor.obj `if test -f 'PYEnglishEditor.cc'; then $(CYGPATH_W) 'PYEnglishEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYEnglishEditor.cc'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/ibus_engine_pinyin-PYEnglishEditor.Tpo $(DEPDIR)/ibus_engine_pinyin-PYEnglishEditor.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='PYEnglishEditor.cc' object='ibus_engine_pinyin-PYEnglishEditor.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ibus_engine_pinyin_CXXFLAGS) $(CXXFLAGS) -c -o ibus_engine_pinyin-PYEnglishEditor.obj `if test -f 'PYEnglishEditor.cc'; then $(CYGPATH_W) 'PYEnglishEditor.cc'; else $(CYGPATH_W) '$(srcdir)/PYEnglishEditor.cc'; fi` mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-componentDATA: $(component_DATA) @$(NORMAL_INSTALL) @list='$(component_DATA)'; test -n "$(componentdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(componentdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(componentdir)" || 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)$(componentdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(componentdir)" || exit $$?; \ done uninstall-componentDATA: @$(NORMAL_UNINSTALL) @list='$(component_DATA)'; test -n "$(componentdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(componentdir)'; $(am__uninstall_files_from_dir) install-pkgdataDATA: $(pkgdata_DATA) @$(NORMAL_INSTALL) @list='$(pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(pkgdatadir)'"; \ $(MKDIR_P) "$(DESTDIR)$(pkgdatadir)" || 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)$(pkgdatadir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgdatadir)" || exit $$?; \ done uninstall-pkgdataDATA: @$(NORMAL_UNINSTALL) @list='$(pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(pkgdatadir)'; $(am__uninstall_files_from_dir) ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ 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 CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ 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" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(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: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) check-am all-am: Makefile $(PROGRAMS) $(DATA) installdirs: for dir in "$(DESTDIR)$(libexecdir)" "$(DESTDIR)$(componentdir)" "$(DESTDIR)$(pkgdatadir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) 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: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || 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." -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) clean: clean-am clean-am: clean-generic clean-libexecPROGRAMS clean-libtool \ mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-componentDATA install-pkgdataDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-libexecPROGRAMS 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 -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-componentDATA uninstall-libexecPROGRAMS \ uninstall-pkgdataDATA .MAKE: all check install install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-libexecPROGRAMS clean-libtool ctags distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-componentDATA 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-libexecPROGRAMS install-man \ install-pdf install-pdf-am install-pkgdataDATA install-ps \ install-ps-am install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ uninstall-am uninstall-componentDATA uninstall-libexecPROGRAMS \ uninstall-pkgdataDATA PYPunctTable.h: $(AM_V_GEN) \ $(PYTHON) $(top_srcdir)/scripts/genpuncttable.py > $@ || \ ( $(RM) $@; exit 1 ) pinyin.xml: pinyin.xml.in $(AM_V_GEN) \ ( \ libexecdir=${libexecdir}; \ pkgdatadir=${pkgdatadir}; \ s=`cat $<`; \ eval "echo \"$${s}\""; \ ) > $@ test: ibus-engine-pinyin $(ENV) \ G_DEBUG=fatal_criticals \ $(builddir)/ibus-engine-pinyin # test: ibus-engine-pinyin # $(ENV) G_DEBUG=fatal_warnings \ # $(builddir)/ibus-engine-pinyin # 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: ibus-pinyin-1.5.0/src/PYPinyinEngine.cc0000664000175000017500000002342512006506456014663 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "PYPinyinEngine.h" #include #include "PYConfig.h" #include "PYPunctEditor.h" #include "PYRawEditor.h" #ifdef IBUS_BUILD_LUA_EXTENSION #include "PYExtEditor.h" #endif #ifdef IBUS_BUILD_ENGLISH_INPUT_MODE #include "PYEnglishEditor.h" #endif #include "PYFullPinyinEditor.h" #include "PYDoublePinyinEditor.h" #include "PYFallbackEditor.h" namespace PY { /* constructor */ PinyinEngine::PinyinEngine (IBusEngine *engine) : Engine (engine), m_props (PinyinConfig::instance ()), m_prev_pressed_key (IBUS_VoidSymbol), m_input_mode (MODE_INIT), m_fallback_editor (new FallbackEditor (m_props, PinyinConfig::instance ())) { gint i; if (PinyinConfig::instance ().doublePinyin ()) m_editors[MODE_INIT].reset (new DoublePinyinEditor (m_props, PinyinConfig::instance ())); else m_editors[MODE_INIT].reset (new FullPinyinEditor (m_props, PinyinConfig::instance ())); m_editors[MODE_PUNCT].reset (new PunctEditor (m_props, PinyinConfig::instance ())); m_editors[MODE_RAW].reset (new RawEditor (m_props, PinyinConfig::instance ())); #ifdef IBUS_BUILD_LUA_EXTENSION m_editors[MODE_EXTENSION].reset (new ExtEditor (m_props, PinyinConfig::instance ())); #else m_editors[MODE_EXTENSION].reset (new Editor (m_props, PinyinConfig::instance ())); #endif #ifdef IBUS_BUILD_ENGLISH_INPUT_MODE m_editors[MODE_ENGLISH].reset (new EnglishEditor (m_props, PinyinConfig::instance ())); #else m_editors[MODE_ENGLISH].reset (new Editor (m_props, PinyinConfig::instance ())); #endif m_props.signalUpdateProperty ().connect (std::bind (&PinyinEngine::updateProperty, this, _1)); for (i = MODE_INIT; i < MODE_LAST; i++) { connectEditorSignals (m_editors[i]); } connectEditorSignals (m_fallback_editor); } /* destructor */ PinyinEngine::~PinyinEngine (void) { } gboolean PinyinEngine::processKeyEvent (guint keyval, guint keycode, guint modifiers) { gboolean retval = FALSE; /* check Shift + Release hotkey, * and then ignore other Release key event */ if (modifiers & IBUS_RELEASE_MASK) { /* press and release keyval are same, * and no other key event between the press and release ket event*/ if (m_prev_pressed_key == keyval) { if (keyval == IBUS_Shift_L || keyval == IBUS_Shift_R) { if (!m_editors[MODE_INIT]->text ().empty ()) m_editors[MODE_INIT]->reset (); m_props.toggleModeChinese (); return TRUE; } } if (m_input_mode == MODE_INIT && m_editors[MODE_INIT]->text ().empty ()) { /* If it is init mode, and no any previouse input text, * we will let client applications to handle release key event */ return FALSE; } else { return TRUE; } } /* Toggle simp/trad Chinese Mode when hotkey Ctrl + Shift + F pressed */ if (keyval == IBUS_F && scmshm_test (modifiers, (IBUS_SHIFT_MASK | IBUS_CONTROL_MASK))) { m_props.toggleModeSimp (); m_prev_pressed_key = IBUS_F; return TRUE; } if (m_props.modeChinese ()) { if (m_input_mode == MODE_INIT && ((cmshm_filter (modifiers)) == 0)) { const String & text = m_editors[MODE_INIT]->text (); if (text.empty ()) { switch (keyval) { case IBUS_grave: m_input_mode = MODE_PUNCT; break; case IBUS_i: // do not enable lua extension when use double pinyin. if (PinyinConfig::instance ().doublePinyin ()) break; m_input_mode = MODE_EXTENSION; break; case IBUS_v: // do not enable english mode when use double pinyin. if (PinyinConfig::instance ().doublePinyin ()) break; m_input_mode = MODE_ENGLISH; break; } } else { if (m_prev_pressed_key != IBUS_period) { if ((keyval == IBUS_at || keyval == IBUS_colon)) { m_input_mode = MODE_RAW; m_editors[MODE_RAW]->setText (text, text.length ()); m_editors[MODE_INIT]->reset (); } } else { if ((keyval >= IBUS_a && keyval <= IBUS_z) || (keyval >= IBUS_A && keyval <= IBUS_Z)) { String tmp = text; tmp += "."; m_input_mode = MODE_RAW; m_editors[MODE_RAW]->setText (tmp, tmp.length ()); m_editors[MODE_INIT]->reset (); } } } } retval = m_editors[m_input_mode]->processKeyEvent (keyval, keycode, modifiers); if (G_UNLIKELY (retval && m_input_mode != MODE_INIT && m_editors[m_input_mode]->text ().empty ())) m_input_mode = MODE_INIT; } if (G_UNLIKELY (!retval)) retval = m_fallback_editor->processKeyEvent (keyval, keycode, modifiers); /* store ignored key event by editors */ m_prev_pressed_key = retval ? IBUS_VoidSymbol : keyval; return retval; } void PinyinEngine::focusIn (void) { if (PinyinConfig::instance ().doublePinyin ()) { if (dynamic_cast (m_editors[MODE_INIT].get ()) == NULL) { m_editors[MODE_INIT].reset (new DoublePinyinEditor (m_props, PinyinConfig::instance ())); connectEditorSignals (m_editors[MODE_INIT]); } } else { if (dynamic_cast (m_editors[MODE_INIT].get ()) == NULL) { m_editors[MODE_INIT].reset (new FullPinyinEditor (m_props, PinyinConfig::instance ())); connectEditorSignals (m_editors[MODE_INIT]); } } registerProperties (m_props.properties ()); } void PinyinEngine::focusOut (void) { reset (); } void PinyinEngine::reset (void) { m_prev_pressed_key = IBUS_VoidSymbol; m_input_mode = MODE_INIT; for (gint i = 0; i < MODE_LAST; i++) { m_editors[i]->reset (); } m_fallback_editor->reset (); } void PinyinEngine::enable (void) { m_props.reset (); } void PinyinEngine::disable (void) { } void PinyinEngine::pageUp (void) { m_editors[m_input_mode]->pageUp (); } void PinyinEngine::pageDown (void) { m_editors[m_input_mode]->pageDown (); } void PinyinEngine::cursorUp (void) { m_editors[m_input_mode]->cursorUp (); } void PinyinEngine::cursorDown (void) { m_editors[m_input_mode]->cursorDown (); } inline void PinyinEngine::showSetupDialog (void) { g_spawn_command_line_async (LIBEXECDIR"/ibus-setup-pinyin pinyin", NULL); } gboolean PinyinEngine::propertyActivate (const gchar *prop_name, guint prop_state) { const static std::string setup ("setup"); if (m_props.propertyActivate (prop_name, prop_state)) { return TRUE; } else if (setup == prop_name) { showSetupDialog (); return TRUE; } return FALSE; } void PinyinEngine::candidateClicked (guint index, guint button, guint state) { m_editors[m_input_mode]->candidateClicked (index, button, state); } void PinyinEngine::commitText (Text & text) { Engine::commitText (text); if (m_input_mode != MODE_INIT) m_input_mode = MODE_INIT; if (text.text ()) static_cast (m_fallback_editor.get ())->setPrevCommittedChar (*text.text ()); else static_cast (m_fallback_editor.get ())->setPrevCommittedChar (0); } void PinyinEngine::connectEditorSignals (EditorPtr editor) { editor->signalCommitText ().connect ( std::bind (&PinyinEngine::commitText, this, _1)); editor->signalUpdatePreeditText ().connect ( std::bind (&PinyinEngine::updatePreeditText, this, _1, _2, _3)); editor->signalShowPreeditText ().connect ( std::bind (&PinyinEngine::showPreeditText, this)); editor->signalHidePreeditText ().connect ( std::bind (&PinyinEngine::hidePreeditText, this)); editor->signalUpdateAuxiliaryText ().connect ( std::bind (&PinyinEngine::updateAuxiliaryText, this, _1, _2)); editor->signalShowAuxiliaryText ().connect ( std::bind (&PinyinEngine::showAuxiliaryText, this)); editor->signalHideAuxiliaryText ().connect ( std::bind (&PinyinEngine::hideAuxiliaryText, this)); editor->signalUpdateLookupTable ().connect ( std::bind (&PinyinEngine::updateLookupTable, this, _1, _2)); editor->signalUpdateLookupTableFast ().connect ( std::bind (&PinyinEngine::updateLookupTableFast, this, _1, _2)); editor->signalShowLookupTable ().connect ( std::bind (&PinyinEngine::showLookupTable, this)); editor->signalHideLookupTable ().connect ( std::bind (&PinyinEngine::hideLookupTable, this)); } }; ibus-pinyin-1.5.0/src/Makefile.am0000664000175000017500000001022012010524050013511 00000000000000# vim:set noet ts=4: # # ibus-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. # @MAINTAINER_MODE_FALSE@skip_gentable=test -f $@ || # AM_CFLAGS = \ # @IBUS_CFLAGS@ \ # @SQLITE_CFLAGS@ \ # @PYZY_CFLAGS@ \ # -DPKGDATADIR=\"$(pkgdatadir)\" \ # $(NULL) # AM_CXXFLAGS = $(AM_CFLAGS) # AM_LDADD = \ # @IBUS_LIBS@ \ # @SQLITE_LIBS@ \ # @PYZY_LIBS@ \ # $(NULL) # libexec_PROGRAMS = ibus-engine-pinyin ibus_engine_pinyin_built_c_sources = \ $(NULL) ibus_engine_pinyin_built_h_sources = \ PYPunctTable.h \ $(NULL) ibus_engine_pinyin_c_sources = \ PYBopomofoEditor.cc \ PYBopomofoEngine.cc \ PYConfig.cc \ PYDoublePinyinEditor.cc \ PYDynamicSpecialPhrase.cc \ PYEditor.cc \ PYEngine.cc \ PYFallbackEditor.cc \ PYFullPinyinEditor.cc \ PYHalfFullConverter.cc \ PYMain.cc \ PYPhoneticEditor.cc \ PYPinyinEditor.cc \ PYPinyinEngine.cc \ PYPinyinObserver.cc \ PYPinyinProperties.cc \ PYPunctEditor.cc \ $(NULL) ibus_engine_pinyin_h_sources = \ PYBopomofoEditor.h \ PYBopomofoEngine.h \ PYBus.h \ PYConfig.h \ PYDoublePinyinEditor.h \ PYDynamicSpecialPhrase.h \ PYEditor.h \ PYEngine.h \ PYEnglishEditor.h \ PYExtEditor.h \ PYFallbackEditor.h \ PYFullPinyinEditor.h \ PYHalfFullConverter.h \ PYLookupTable.h \ PYObject.h \ PYPhoneticEditor.h \ PYPinyinEditor.h \ PYPinyinEngine.h \ PYPinyinObserver.h \ PYPinyinProperties.h \ PYPointer.h \ PYProperty.h \ PYPunctEditor.h \ PYRawEditor.h \ PYRegex.h \ PYSignal.h \ PYString.h \ PYText.h \ PYTypes.h \ PYUtil.h \ $(NULL) if IBUS_BUILD_LUA_EXTENSION ibus_engine_pinyin_c_sources += PYExtEditor.cc endif if IBUS_BUILD_ENGLISH_INPUT_MODE ibus_engine_pinyin_c_sources += PYEnglishEditor.cc endif ibus_engine_pinyin_SOURCES = \ $(ibus_engine_pinyin_c_sources) \ $(ibus_engine_pinyin_h_sources) \ $(ibus_engine_pinyin_built_c_sources) \ $(ibus_engine_pinyin_built_h_sources) \ $(NULL) ibus_engine_pinyin_CXXFLAGS = \ @IBUS_CFLAGS@ \ @SQLITE_CFLAGS@ \ @PYZY_CFLAGS@ \ -DGETTEXT_PACKAGE=\"@GETTEXT_PACKAGE@\" \ -DPKGDATADIR=\"$(pkgdatadir)\" \ -DLIBEXECDIR=\"$(libexecdir)\" \ $(NULL) if HAVE_BOOST ibus_engine_pinyin_CXXFLAGS += \ @BOOST_CPPFLAGS@ \ $(NULL) else ibus_engine_pinyin_CXXFLAGS += \ -std=c++0x \ $(NULL) endif ibus_engine_pinyin_LDADD = \ @IBUS_LIBS@ \ @SQLITE_LIBS@ \ @PYZY_LIBS@ \ $(NULL) if IBUS_BUILD_LUA_EXTENSION ibus_engine_pinyin_CXXFLAGS += \ @LUA_CFLAGS@ \ -DIBUS_BUILD_LUA_EXTENSION \ -I$(top_srcdir)/lua/ \ $(NULL) endif if IBUS_BUILD_LUA_EXTENSION ibus_engine_pinyin_LDADD += \ @LUA_LIBS@ \ -L../lua/ \ -lpylua \ $(NULL) endif if IBUS_BUILD_ENGLISH_INPUT_MODE ibus_engine_pinyin_CXXFLAGS += \ -DIBUS_BUILD_ENGLISH_INPUT_MODE \ $(NULL) endif BUILT_SOURCES = \ $(ibus_engine_built_c_sources) \ $(ibus_engine_built_h_sources) \ $(NULL) pkgdata_DATA = \ phrases.txt \ $(NULL) component_DATA = \ pinyin.xml \ $(NULL) componentdir = @datadir@/ibus/component EXTRA_DIST = \ pinyin.xml.in \ phrases.txt \ $(NULL) CLEANFILES = \ pinyin.xml \ $(NULL) PYPunctTable.h: $(AM_V_GEN) \ $(PYTHON) $(top_srcdir)/scripts/genpuncttable.py > $@ || \ ( $(RM) $@; exit 1 ) pinyin.xml: pinyin.xml.in $(AM_V_GEN) \ ( \ libexecdir=${libexecdir}; \ pkgdatadir=${pkgdatadir}; \ s=`cat $<`; \ eval "echo \"$${s}\""; \ ) > $@ test: ibus-engine-pinyin $(ENV) \ G_DEBUG=fatal_criticals \ $(builddir)/ibus-engine-pinyin # test: ibus-engine-pinyin # $(ENV) G_DEBUG=fatal_warnings \ # $(builddir)/ibus-engine-pinyin ibus-pinyin-1.5.0/src/PYPinyinObserver.h0000664000175000017500000000315012006506776015105 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_PINYIN_OBSERVER_H_ #define __PY_PINYIN_OBSERVER_H_ #include namespace PY { class PhoneticEditor; class PinyinObserver : public PyZy::InputContext::Observer { public: explicit PinyinObserver (PhoneticEditor &editor); virtual void commitText (PyZy::InputContext * context, const std::string &commit_text); virtual void inputTextChanged (PyZy::InputContext * context); virtual void cursorChanged (PyZy::InputContext * context); virtual void preeditTextChanged (PyZy::InputContext * context); virtual void auxiliaryTextChanged (PyZy::InputContext * context); virtual void candidatesChanged (PyZy::InputContext * context); private: PhoneticEditor &m_editor; }; } // namespace PY #endif ibus-pinyin-1.5.0/src/PYPinyinEditor.h0000664000175000017500000000305712006506456014545 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_PINYIN_EDITOR_H_ #define __PY_PINYIN_EDITOR_H_ #include "PYPhoneticEditor.h" namespace PY { class Config; class PinyinEditor : public PhoneticEditor { public: PinyinEditor (PinyinProperties & props, Config & config); virtual ~PinyinEditor (); protected: gboolean processPinyin (guint keyval, guint keycode, guint modifiers); gboolean processNumber (guint keyval, guint keycode, guint modifiers); gboolean processPunct (guint keyval, guint keycode, guint modifiers); gboolean processFunctionKey (guint keyval, guint keycode, guint modifiers); virtual void updateLookupTable (void); virtual gboolean processKeyEvent (guint keyval, guint keycode, guint modifiers); }; }; #endif ibus-pinyin-1.5.0/src/PYPunctEditor.cc0000664000175000017500000003706211776565552014550 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * Copyright (c) 2010 BYVoid * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include #include "PYConfig.h" #include "PYPunctEditor.h" namespace PY { #include "PYPunctTable.h" PunctEditor::PunctEditor (PinyinProperties & props, Config & config) : Editor (props, config), m_punct_mode (MODE_DISABLE), m_lookup_table (m_config.pageSize ()) { } gboolean PunctEditor::insert (gchar ch) { switch (m_punct_mode) { case MODE_DISABLE: { g_assert (ch == IBUS_grave); g_assert (m_cursor == 0); m_text.insert (m_cursor++, ch); m_punct_mode = MODE_INIT; updatePunctCandidates (0); m_selected_puncts.clear (); m_selected_puncts.insert (m_selected_puncts.begin (), m_punct_candidates[0]); update (); } break; case MODE_INIT: { m_text.clear (); m_selected_puncts.clear (); m_cursor = 0; } case MODE_NORMAL: { m_text.insert (m_cursor, ch); updatePunctCandidates (ch); m_punct_mode = MODE_NORMAL; if (m_punct_candidates.size () > 0) { m_selected_puncts.insert (m_selected_puncts.begin () + m_cursor, m_punct_candidates[0]); } m_cursor ++; update (); } break; default: g_assert_not_reached (); } return TRUE; } inline gboolean PunctEditor::processSpace (guint keyval, guint keycode, guint modifiers) { if (m_punct_mode != MODE_INIT && m_punct_mode != MODE_NORMAL) return FALSE; if (cmshm_filter (modifiers) != 0) return TRUE; commit (); return TRUE; } gboolean PunctEditor::processPunct (guint keyval, guint keycode, guint modifiers) { if (cmshm_filter (modifiers) != 0) return TRUE; if (m_punct_mode == MODE_DISABLE) { if (keyval == IBUS_grave) { insert (keyval); return TRUE; } } g_assert (m_punct_mode == MODE_INIT || m_punct_mode == MODE_NORMAL); switch (keyval) { case IBUS_grave: /* ` */ case IBUS_asciitilde: /* ~ */ case IBUS_exclam: /* ~ */ case IBUS_at: /* @ */ case IBUS_numbersign: /* # */ case IBUS_dollar: /* $ */ case IBUS_percent: /* % */ case IBUS_asciicircum: /* ^ */ case IBUS_ampersand: /* & */ case IBUS_asterisk: /* * */ case IBUS_parenleft: /* ( */ case IBUS_parenright: /* ) */ case IBUS_minus: /* - */ case IBUS_underscore: /* _ */ case IBUS_equal: /* = */ case IBUS_plus: /* + */ case IBUS_bracketleft: /* [ */ case IBUS_bracketright: /* ] */ case IBUS_braceleft: /* { */ case IBUS_braceright: /* } */ case IBUS_backslash: /* \ */ case IBUS_bar: /* | */ case IBUS_colon: /* : */ case IBUS_semicolon: /* ; */ case IBUS_apostrophe: /* ' */ case IBUS_quotedbl: /* " */ case IBUS_comma: /* , */ case IBUS_period: /* . */ case IBUS_less: /* < */ case IBUS_greater: /* > */ case IBUS_slash: /* / */ case IBUS_question: /* ? */ case IBUS_0...IBUS_9: case IBUS_a...IBUS_z: case IBUS_A...IBUS_Z: return insert (keyval); default: return FALSE; } } gboolean PunctEditor::processKeyEvent (guint keyval, guint keycode, guint modifiers) { modifiers &= (IBUS_SHIFT_MASK | IBUS_CONTROL_MASK | IBUS_MOD1_MASK | IBUS_SUPER_MASK | IBUS_HYPER_MASK | IBUS_META_MASK | IBUS_LOCK_MASK); switch (keyval) { case IBUS_space: return processSpace (keyval, keycode, modifiers); case IBUS_Return: case IBUS_KP_Enter: commit (m_text); return TRUE; case IBUS_Escape: reset (); return TRUE; case IBUS_BackSpace: removeCharBefore (); return TRUE; case IBUS_Delete: case IBUS_KP_Delete: removeCharAfter (); return TRUE; case IBUS_Left: case IBUS_KP_Left: moveCursorLeft (); return TRUE; case IBUS_Right: case IBUS_KP_Right: moveCursorRight (); return TRUE; case IBUS_Home: case IBUS_KP_Home: moveCursorToBegin (); return TRUE; case IBUS_End: case IBUS_KP_End: moveCursorToEnd (); return TRUE; case IBUS_Up: case IBUS_KP_Up: cursorUp (); return TRUE; case IBUS_Down: case IBUS_KP_Down: cursorDown (); return TRUE; case IBUS_Page_Up: case IBUS_KP_Page_Up: pageUp (); return TRUE; case IBUS_Page_Down: case IBUS_KP_Page_Down: case IBUS_Tab: pageDown (); return TRUE; default: return processPunct(keyval, keycode, modifiers); } } void PunctEditor::pageUp (void) { if (G_LIKELY (m_lookup_table.pageUp ())) { m_selected_puncts[m_cursor - 1] = m_punct_candidates[m_lookup_table.cursorPos ()]; updateLookupTableFast (m_lookup_table, TRUE); updatePreeditText (); updateAuxiliaryText (); } } void PunctEditor::pageDown (void) { if (G_LIKELY (m_lookup_table.pageDown ())) { m_selected_puncts[m_cursor - 1] = m_punct_candidates[m_lookup_table.cursorPos ()]; updateLookupTableFast (m_lookup_table, TRUE); updatePreeditText (); updateAuxiliaryText (); } } void PunctEditor::cursorUp (void) { if (G_LIKELY (m_lookup_table.cursorUp ())) { m_selected_puncts[m_cursor - 1] = m_punct_candidates[m_lookup_table.cursorPos ()]; updateLookupTableFast (m_lookup_table, TRUE); updatePreeditText (); updateAuxiliaryText (); } } void PunctEditor::cursorDown (void) { if (G_LIKELY (m_lookup_table.cursorDown ())) { m_selected_puncts[m_cursor - 1] = m_punct_candidates[m_lookup_table.cursorPos ()]; updateLookupTableFast (m_lookup_table, TRUE); updatePreeditText (); updateAuxiliaryText (); } } gboolean PunctEditor::moveCursorLeft (void) { if (G_UNLIKELY (m_cursor == 0)) return FALSE; m_cursor --; if (m_cursor == 0) { m_punct_candidates.clear (); fillLookupTable (); } else { updatePunctCandidates (m_text[m_cursor - 1]); /* restore cursor pos */ std::vector::iterator it; it = std::find (m_punct_candidates.begin (), m_punct_candidates.end (), m_selected_puncts[m_cursor - 1]); g_assert (it != m_punct_candidates.end ()); m_lookup_table.setCursorPos (it - m_punct_candidates.begin ()); } update(); return TRUE; } gboolean PunctEditor::moveCursorRight (void) { if (G_UNLIKELY (m_cursor == m_text.length ())) return FALSE; m_cursor ++; updatePunctCandidates (m_text[m_cursor - 1]); /* restore cursor pos */ std::vector::iterator it; it = std::find (m_punct_candidates.begin (), m_punct_candidates.end (), m_selected_puncts[m_cursor - 1]); g_assert (it != m_punct_candidates.end ()); m_lookup_table.setCursorPos (it - m_punct_candidates.begin ()); update(); return TRUE; } gboolean PunctEditor::moveCursorToBegin (void) { if (G_UNLIKELY (m_cursor == 0)) return FALSE; g_assert (m_punct_mode == MODE_NORMAL); m_cursor = 0; m_punct_candidates.clear (); fillLookupTable (); update (); return TRUE; } gboolean PunctEditor::moveCursorToEnd (void) { if (G_UNLIKELY (m_cursor == m_text.length ())) return FALSE; g_assert (m_punct_mode == MODE_NORMAL); m_cursor = m_text.length (); updatePunctCandidates (m_text[m_cursor - 1]); /* restore cursor pos */ std::vector::iterator it; it = std::find (m_punct_candidates.begin (), m_punct_candidates.end (), m_selected_puncts[m_cursor - 1]); g_assert (it != m_punct_candidates.end ()); m_lookup_table.setCursorPos (it - m_punct_candidates.begin ()); update(); return TRUE; } gboolean PunctEditor::removeCharBefore (void) { if (G_UNLIKELY (m_cursor == 0)) return FALSE; m_cursor --; m_selected_puncts.erase (m_selected_puncts.begin () + m_cursor); m_text.erase (m_cursor, 1); if (m_text.empty()) { reset (); } else { if (m_cursor > 0) { updatePunctCandidates (m_text[m_cursor - 1]); /* restore cursor pos */ std::vector::iterator it; it = std::find (m_punct_candidates.begin (), m_punct_candidates.end (), m_selected_puncts[m_cursor - 1]); g_assert (it != m_punct_candidates.end ()); m_lookup_table.setCursorPos (it - m_punct_candidates.begin ()); } else { m_punct_candidates.clear (); fillLookupTable (); } } update(); return TRUE; } gboolean PunctEditor::removeCharAfter (void) { if (G_UNLIKELY (m_cursor == m_text.length ())) return FALSE; m_selected_puncts.erase (m_selected_puncts.begin () + m_cursor); m_text.erase (m_cursor, 1); if (m_text.empty()) { reset (); } update(); return TRUE; } void PunctEditor::reset (void) { m_punct_mode = MODE_DISABLE; m_selected_puncts.clear (); m_punct_candidates.clear (); fillLookupTable (); Editor::reset (); } void PunctEditor::candidateClicked (guint index, guint button, guint state) { selectCandidateInPage(index); } inline void PunctEditor::commit (const gchar *str) { StaticText text(str); commitText (text); reset (); } void PunctEditor::commit (void) { m_buffer.clear (); for (std::vector::iterator it = m_selected_puncts.begin (); it != m_selected_puncts.end (); it++) { m_buffer << *it; } commit (m_buffer); } inline gboolean PunctEditor::selectCandidate (guint i) { switch (m_punct_mode) { case MODE_INIT: { g_assert (m_cursor == 1); m_lookup_table.setCursorPos (i); m_selected_puncts[m_cursor - 1] = m_punct_candidates[i]; commit (); return TRUE; } case MODE_NORMAL: { m_lookup_table.setCursorPos (i); m_selected_puncts[m_cursor - 1] = m_punct_candidates[i]; /* if it is the last punct, commit the result */ if (m_cursor == m_text.length ()) { commit (); } else { moveCursorRight (); } return TRUE; } default: g_assert_not_reached (); } return FALSE; } inline gboolean PunctEditor::selectCandidateInPage (guint i) { guint page_size = m_lookup_table.pageSize (); guint cursor_pos = m_lookup_table.cursorPos (); if (G_UNLIKELY (i >= page_size)) return FALSE; i += (cursor_pos / page_size) * page_size; return selectCandidate (i); } void PunctEditor::update (void) { updateLookupTable (); updatePreeditText (); updateAuxiliaryText (); } void PunctEditor::fillLookupTable (void) { m_lookup_table.clear (); m_lookup_table.setPageSize (m_config.pageSize ()); m_lookup_table.setOrientation (m_config.orientation ()); for (std::vector::iterator it = m_punct_candidates.begin (); it != m_punct_candidates.end (); it++) { StaticText text (*it); // text.appendAttribute (IBUS_ATTR_TYPE_FOREGROUND, 0x004466, 0, -1); m_lookup_table.appendCandidate (text); } } void PunctEditor::updateLookupTable (void) { if (m_lookup_table.size ()) { Editor::updateLookupTable (m_lookup_table, TRUE); } else { hideLookupTable (); } } static int punct_cmp (const void *p1, const void *p2) { const gint s1 = (gint)(glong) p1; const gchar *s2 = **(gchar ***) p2; return s1 - s2[0]; } void PunctEditor::updatePunctCandidates (gchar ch) { const gchar *** brs; const gchar ** res; m_punct_candidates.clear(); brs = (const gchar ***) std::bsearch (reinterpret_cast(ch), punct_table, G_N_ELEMENTS (punct_table), sizeof(punct_table[0]), punct_cmp); if (brs != NULL) { for (res = (*brs) + 1; *res != NULL; ++res) { m_punct_candidates.push_back (*res); } } fillLookupTable (); } void PunctEditor::updateAuxiliaryText (void) { switch (m_punct_mode) { case MODE_DISABLE: hideAuxiliaryText (); break; case MODE_INIT: { m_buffer = "`"; StaticText aux_text (m_buffer); Editor::updateAuxiliaryText (aux_text, TRUE); } break; case MODE_NORMAL: { if (m_cursor == 0) { hideAuxiliaryText (); } else { m_buffer.clear (); for (String::iterator i = m_text.begin (); i != m_text.end (); ++i) { if (i - m_text.begin () == (gint) m_cursor) m_buffer << '|'; m_buffer << *i; } if (m_text.end () - m_text.begin () == (gint) m_cursor) m_buffer << '|'; StaticText aux_text (m_buffer); Editor::updateAuxiliaryText (aux_text, TRUE); } } break; default: g_assert_not_reached (); } } void PunctEditor::updatePreeditText (void) { switch (m_punct_mode) { case MODE_DISABLE: hidePreeditText (); break; case MODE_INIT: { m_buffer = m_punct_candidates[m_lookup_table.cursorPos ()]; StaticText preedit_text (m_buffer); /* underline */ preedit_text.appendAttribute (IBUS_ATTR_TYPE_UNDERLINE, IBUS_ATTR_UNDERLINE_SINGLE, 0, -1); Editor::updatePreeditText (preedit_text, m_cursor, TRUE); } break; case MODE_NORMAL: { m_buffer.clear (); for (std::vector::iterator it = m_selected_puncts.begin (); it != m_selected_puncts.end (); it++) { m_buffer << *it; } StaticText preedit_text (m_buffer); /* underline */ preedit_text.appendAttribute (IBUS_ATTR_TYPE_UNDERLINE, IBUS_ATTR_UNDERLINE_SINGLE, 0, -1); Editor::updatePreeditText (preedit_text, m_cursor, TRUE); } break; default: g_assert_not_reached (); } } }; ibus-pinyin-1.5.0/src/PYDynamicSpecialPhrase.h0000664000175000017500000000377612006506456016170 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_DYNAMIC_SPECIAL_PHRASE_H_ #define __PY_DYNAMIC_SPECIAL_PHRASE_H_ #include #include #include namespace PY { class DynamicSpecialPhrase { public: DynamicSpecialPhrase (const std::string &text, guint pos) : m_position (pos), m_text (text) { } ~DynamicSpecialPhrase (void); size_t position (void) const { return m_position; } std::string text (void); const std::string dec (gint d, const gchar *fmt = "%d"); const std::string year_cn (gboolean yy = FALSE); const std::string month_cn (void); const std::string weekday_cn (void); const std::string hour_cn (guint i); const std::string fullhour_cn (void); const std::string halfhour_cn (void); const std::string day_cn (void); const std::string minsec_cn (guint i); const std::string variable (const std::string &name); /* declaration function about Chinese Number. */ const std::string simplest_cn_number(gint64 num); const std::string simplified_number(gint64 num); const std::string traditional_number(gint64 num); private: size_t m_position; std::string m_text; std::tm m_time; }; }; #endif ibus-pinyin-1.5.0/src/PYEnglishEditor.cc0000664000175000017500000005064211776565552015047 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2010-2011 Peng Wu * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "PYEnglishEditor.h" #include #include #include #include #include #include #include #include "PYConfig.h" #include "PYString.h" namespace PY { #define DB_BACKUP_TIMEOUT (60) class EnglishDatabase{ public: EnglishDatabase(){ m_sqlite = NULL; m_sql = ""; m_user_db = ""; m_timeout_id = 0; m_timer = g_timer_new (); } ~EnglishDatabase(){ g_timer_destroy (m_timer); if (m_timeout_id != 0) { saveUserDB (); g_source_remove (m_timeout_id); } if (m_sqlite){ sqlite3_close (m_sqlite); m_sqlite = NULL; } m_sql = ""; m_user_db = NULL; } gboolean isDatabaseExisted(const char *filename) { gboolean result = g_file_test (filename, G_FILE_TEST_IS_REGULAR); if (!result) return FALSE; sqlite3 *tmp_db = NULL; if (sqlite3_open_v2 (filename, &tmp_db, SQLITE_OPEN_READONLY, NULL) != SQLITE_OK){ return FALSE; } /* Check the desc table */ sqlite3_stmt *stmt = NULL; const char *tail = NULL; m_sql = "SELECT value FROM desc WHERE name = 'version';"; result = sqlite3_prepare_v2 (tmp_db, m_sql.c_str(), -1, &stmt, &tail); g_assert (result == SQLITE_OK); result = sqlite3_step (stmt); if (result != SQLITE_ROW) return FALSE; result = sqlite3_column_type (stmt, 0); if (result != SQLITE_TEXT) return FALSE; const char *version = (const char *) sqlite3_column_text (stmt, 0); if (strcmp("1.2.0", version ) != 0) return FALSE; result = sqlite3_finalize (stmt); g_assert (result == SQLITE_OK); sqlite3_close (tmp_db); return TRUE; } gboolean createDatabase(const char *filename) { /* unlink the old database. */ gboolean retval = g_file_test (filename, G_FILE_TEST_IS_REGULAR); if (retval) { int result = g_unlink (filename); if (result == -1) return FALSE; } char *dirname = g_path_get_dirname (filename); g_mkdir_with_parents (dirname, 0700); g_free (dirname); sqlite3 *tmp_db = NULL; if (sqlite3_open_v2 (filename, &tmp_db, SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE, NULL) != SQLITE_OK) { return FALSE; } /* Create DESCription table */ m_sql = "BEGIN TRANSACTION;\n"; m_sql << "CREATE TABLE IF NOT EXISTS desc (name TEXT PRIMARY KEY, value TEXT);\n"; m_sql << "INSERT OR IGNORE INTO desc VALUES ('version', '1.2.0');"; m_sql << "COMMIT;\n"; if (!executeSQL (tmp_db)) { sqlite3_close (tmp_db); return FALSE; } /* Create Schema */ m_sql = "CREATE TABLE IF NOT EXISTS english (" "word TEXT NOT NULL PRIMARY KEY," "freq FLOAT NOT NULL DEFAULT(0)" ");"; if (!executeSQL (tmp_db)) { sqlite3_close (tmp_db); return FALSE; } return TRUE; } gboolean openDatabase(const char *system_db, const char *user_db){ if (!isDatabaseExisted (system_db)) return FALSE; if (!isDatabaseExisted (user_db)) { gboolean result = createDatabase (user_db); if (!result) return FALSE; } /* cache the user db name. */ m_user_db = user_db; /* do database attach here. :) */ if (sqlite3_open_v2 (system_db, &m_sqlite, SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE, NULL) != SQLITE_OK) { m_sqlite = NULL; return FALSE; } #if 0 m_sql.printf (SQL_ATTACH_DB, user_db); if (!executeSQL (m_sqlite)) { sqlite3_close (m_sqlite); m_sqlite = NULL; return FALSE; } return TRUE; #endif return loadUserDB(); } /* List the words in freq order. */ gboolean listWords(const char *prefix, std::vector & words){ sqlite3_stmt *stmt = NULL; const char *tail = NULL; words.clear (); /* list words */ const char *SQL_DB_LIST = "SELECT word FROM ( " "SELECT * FROM english UNION ALL SELECT * FROM userdb.english) " " WHERE word LIKE '%s%%' GROUP BY word ORDER BY SUM(freq) DESC;"; m_sql.printf (SQL_DB_LIST, prefix); int result = sqlite3_prepare_v2 (m_sqlite, m_sql.c_str(), -1, &stmt, &tail); g_assert(result == SQLITE_OK); result = sqlite3_step (stmt); while (result == SQLITE_ROW){ /* get the words. */ result = sqlite3_column_type (stmt, 0); if (result != SQLITE_TEXT) return FALSE; const char *word = (const char *)sqlite3_column_text (stmt, 0); words.push_back (word); result = sqlite3_step (stmt); } sqlite3_finalize (stmt); if (result != SQLITE_DONE) return FALSE; return TRUE; } /* Get the freq of user sqlite db. */ gboolean getWordInfo(const char *word, float & freq){ sqlite3_stmt *stmt = NULL; const char *tail = NULL; /* get word info. */ const char *SQL_DB_SELECT = "SELECT freq FROM userdb.english WHERE word = \"%s\";"; m_sql.printf (SQL_DB_SELECT, word); int result = sqlite3_prepare_v2 (m_sqlite, m_sql.c_str(), -1, &stmt, &tail); g_assert (result == SQLITE_OK); result = sqlite3_step (stmt); if (result != SQLITE_ROW) return FALSE; result = sqlite3_column_type (stmt, 0); if (result != SQLITE_FLOAT) return FALSE; freq = sqlite3_column_double (stmt, 0); result = sqlite3_finalize (stmt); g_assert (result == SQLITE_OK); return TRUE; } /* Update the freq with delta value. */ gboolean updateWord(const char *word, float freq){ const char *SQL_DB_UPDATE = "UPDATE userdb.english SET freq = \"%f\" WHERE word = \"%s\";"; m_sql.printf (SQL_DB_UPDATE, freq, word); gboolean retval = executeSQL (m_sqlite); modified (); return retval; } /* Insert the word into user db with the initial freq. */ gboolean insertWord(const char *word, float freq){ const char *SQL_DB_INSERT = "INSERT INTO userdb.english (word, freq) VALUES (\"%s\", \"%f\");"; m_sql.printf (SQL_DB_INSERT, word, freq); gboolean retval = executeSQL (m_sqlite); modified (); return retval; } private: gboolean executeSQL(sqlite3 *sqlite){ gchar *errmsg = NULL; if (sqlite3_exec (sqlite, m_sql.c_str (), NULL, NULL, &errmsg) != SQLITE_OK) { g_warning ("%s: %s", errmsg, m_sql.c_str()); sqlite3_free (errmsg); return FALSE; } m_sql.clear (); return TRUE; } gboolean loadUserDB (void){ sqlite3 *userdb = NULL; /* Attach user database */ do { const char *SQL_ATTACH_DB = "ATTACH DATABASE ':memory:' AS userdb;"; m_sql.printf (SQL_ATTACH_DB); if (!executeSQL (m_sqlite)) break; /* Note: user db is always created by openDatabase. */ if (sqlite3_open_v2 ( m_user_db, &userdb, SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE, NULL) != SQLITE_OK) break; sqlite3_backup *backup = sqlite3_backup_init (m_sqlite, "userdb", userdb, "main"); if (backup) { sqlite3_backup_step (backup, -1); sqlite3_backup_finish (backup); } sqlite3_close (userdb); return TRUE; } while (0); if (userdb) sqlite3_close (userdb); return FALSE; } gboolean saveUserDB (void){ sqlite3 *userdb = NULL; String tmpfile = String(m_user_db) + "-tmp"; do { /* remove tmpfile if it exist */ g_unlink(tmpfile); if (sqlite3_open_v2 (tmpfile, &userdb, SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE, NULL) != SQLITE_OK) break; sqlite3_backup *backup = sqlite3_backup_init (userdb, "main", m_sqlite, "userdb"); if (backup == NULL) break; sqlite3_backup_step (backup, -1); sqlite3_backup_finish (backup); sqlite3_close (userdb); g_rename(tmpfile, m_user_db); return TRUE; } while (0); if (userdb) sqlite3_close (userdb); g_unlink (tmpfile); return FALSE; } void modified (void){ /* Restart the timer */ g_timer_start (m_timer); if (m_timeout_id != 0) return; m_timeout_id = g_timeout_add_seconds (DB_BACKUP_TIMEOUT, EnglishDatabase::timeoutCallback, static_cast (this)); } static gboolean timeoutCallback (gpointer data){ EnglishDatabase *self = static_cast (data); /* Get elapsed time since last modification of database. */ guint elapsed = (guint) g_timer_elapsed (self->m_timer, NULL); if (elapsed >= DB_BACKUP_TIMEOUT && self->saveUserDB ()) { self->m_timeout_id = 0; return FALSE; } return TRUE; } sqlite3 *m_sqlite; String m_sql; const char *m_user_db; guint m_timeout_id; GTimer *m_timer; }; EnglishEditor::EnglishEditor (PinyinProperties & props, Config &config) : Editor (props, config), m_train_factor (0.1) { m_english_database = new EnglishDatabase; gchar *path = g_build_filename (g_get_user_cache_dir (), "ibus", "pinyin", "english-user.db", NULL); gboolean result = m_english_database->openDatabase (".." G_DIR_SEPARATOR_S "data" G_DIR_SEPARATOR_S "db" G_DIR_SEPARATOR_S "english" G_DIR_SEPARATOR_S "english.db", "english-user.db") || m_english_database->openDatabase (PKGDATADIR G_DIR_SEPARATOR_S "db" G_DIR_SEPARATOR_S "english.db", path); if (!result) g_warning ("can't open english word list database.\n"); } EnglishEditor::~EnglishEditor () { delete m_english_database; m_english_database = NULL; } gboolean EnglishEditor::processKeyEvent (guint keyval, guint keycode, guint modifiers) { //IBUS_SHIFT_MASK is removed. modifiers &= (IBUS_CONTROL_MASK | IBUS_MOD1_MASK | IBUS_SUPER_MASK | IBUS_HYPER_MASK | IBUS_META_MASK | IBUS_LOCK_MASK); if (modifiers) return FALSE; //handle backspace/delete here. if (processEditKey (keyval)) return TRUE; //handle page/cursor up/down here. if (processPageKey (keyval)) return TRUE; //handle label key select here. if (processLabelKey (keyval)) return TRUE; if (processSpace (keyval)) return TRUE; if (processEnter (keyval)) return TRUE; m_cursor = std::min (m_cursor, (guint)m_text.length ()); /* Remember the input string. */ if (m_cursor == 0) { g_return_val_if_fail ('v' == keyval, FALSE); m_text = "v"; m_cursor ++; } else { g_return_val_if_fail ('v' == m_text[0], FALSE); if ((keyval >= 'a' && keyval <= 'z') || (keyval >= 'A' && keyval <= 'Z')) { m_text.insert (m_cursor, keyval); m_cursor++; } } /* Deal other staff with updateStateFromInput (). */ updateStateFromInput (); update (); return TRUE; } gboolean EnglishEditor::processEditKey (guint keyval) { switch (keyval) { case IBUS_Delete: case IBUS_KP_Delete: removeCharAfter (); updateStateFromInput (); update (); return TRUE; case IBUS_BackSpace: removeCharBefore (); updateStateFromInput (); update (); return TRUE; } return FALSE; } gboolean EnglishEditor::processPageKey (guint keyval) { switch (keyval) { case IBUS_comma: if (m_config.commaPeriodPage ()) { pageUp (); return TRUE; } break; case IBUS_minus: if (m_config.minusEqualPage ()) { pageUp (); return TRUE; } break; case IBUS_period: if (m_config.commaPeriodPage ()) { pageDown (); return TRUE; } break; case IBUS_equal: if (m_config.minusEqualPage ()) { pageDown (); return TRUE; } break; case IBUS_Up: case IBUS_KP_Up: cursorUp (); return TRUE; case IBUS_Down: case IBUS_KP_Down: cursorDown (); return TRUE; case IBUS_Page_Up: case IBUS_KP_Page_Up: pageUp (); return TRUE; case IBUS_Page_Down: case IBUS_KP_Page_Down: pageDown (); return TRUE; case IBUS_Escape: reset (); return TRUE; } return FALSE; } gboolean EnglishEditor::processLabelKey (guint keyval) { switch (keyval) { case '1' ... '9': return selectCandidateInPage (keyval - '1'); break; case '0': return selectCandidateInPage (9); break; } return FALSE; } gboolean EnglishEditor::processEnter (guint keyval){ if (keyval != IBUS_Return) return FALSE; if (m_text.length () == 0) return FALSE; String preedit = m_text.substr (1); Text text (preedit); commitText (text); train (preedit.c_str (), m_train_factor); reset (); return TRUE; } gboolean EnglishEditor::processSpace (guint keyval) { if (!(keyval == IBUS_space || keyval == IBUS_KP_Space)) return FALSE; guint cursor_pos = m_lookup_table.cursorPos (); return selectCandidate (cursor_pos); } void EnglishEditor::candidateClicked (guint index, guint button, guint state) { selectCandidateInPage (index); } gboolean EnglishEditor::selectCandidateInPage (guint index) { guint page_size = m_lookup_table.pageSize (); guint cursor_pos = m_lookup_table.cursorPos (); if (G_UNLIKELY (index >= page_size)) return FALSE; index += (cursor_pos / page_size) * page_size; return selectCandidate (index); } gboolean EnglishEditor::selectCandidate (guint index) { if (index >= m_lookup_table.size ()) return FALSE; IBusText *candidate = m_lookup_table.getCandidate (index); Text text (candidate); commitText (text); train (candidate->text, m_train_factor); reset (); return TRUE; } gboolean EnglishEditor::updateStateFromInput (void) { /* Do parse and candidates update here. */ /* prefix v double check here. */ if (m_text.empty ()) { m_preedit_text = ""; m_auxiliary_text = ""; m_cursor = 0; clearLookupTable (); return FALSE; } if ('v' != m_text[0]) { g_warning ("v is expected in m_text string.\n"); m_auxiliary_text = ""; clearLookupTable (); return FALSE; } m_auxiliary_text = "v"; if (1 == m_text.length ()) { clearLookupTable (); return TRUE; } m_auxiliary_text += " "; String prefix = m_text.substr (1); m_auxiliary_text += prefix; /* lookup table candidate fill here. */ std::vector words; gboolean retval = m_english_database->listWords (prefix.c_str (), words); if (!retval) return FALSE; clearLookupTable (); std::vector::iterator iter; for (iter = words.begin (); iter != words.end (); ++iter){ Text text (*iter); m_lookup_table.appendCandidate (text); } return TRUE; } /* Auxiliary Functions */ void EnglishEditor::pageUp (void) { if (G_LIKELY (m_lookup_table.pageUp ())) { update (); } } void EnglishEditor::pageDown (void) { if (G_LIKELY (m_lookup_table.pageDown ())) { update (); } } void EnglishEditor::cursorUp (void) { if (G_LIKELY (m_lookup_table.cursorUp ())) { update (); } } void EnglishEditor::cursorDown (void) { if (G_LIKELY (m_lookup_table.cursorDown ())) { update (); } } void EnglishEditor::update (void) { updateLookupTable (); updatePreeditText (); updateAuxiliaryText (); } void EnglishEditor::reset (void) { m_text = ""; updateStateFromInput (); update (); } void EnglishEditor::clearLookupTable (void) { m_lookup_table.clear (); m_lookup_table.setPageSize (m_config.pageSize ()); m_lookup_table.setOrientation (m_config.orientation ()); } void EnglishEditor::updateLookupTable (void) { if (m_lookup_table.size ()) { Editor::updateLookupTableFast (m_lookup_table, TRUE); } else { hideLookupTable (); } } void EnglishEditor::updatePreeditText (void) { if (G_UNLIKELY (m_preedit_text.empty ())) { hidePreeditText (); return; } StaticText preedit_text (m_preedit_text); Editor::updatePreeditText (preedit_text, m_cursor, TRUE); } void EnglishEditor::updateAuxiliaryText (void) { if (G_UNLIKELY (m_auxiliary_text.empty ())) { hideAuxiliaryText (); return; } StaticText aux_text (m_auxiliary_text); Editor::updateAuxiliaryText (aux_text, TRUE); } gboolean EnglishEditor::removeCharBefore (void) { if (G_UNLIKELY (m_cursor <= 0)) { m_cursor = 0; return FALSE; } if (G_UNLIKELY (m_cursor > m_text.length ())) { m_cursor = m_text.length (); return FALSE; } m_text.erase (m_cursor - 1, 1); m_cursor = std::max (0, static_cast(m_cursor) - 1); return TRUE; } gboolean EnglishEditor::removeCharAfter (void) { if (G_UNLIKELY (m_cursor < 0)) { m_cursor = 0; return FALSE; } if (G_UNLIKELY (m_cursor >= m_text.length ())) { m_cursor = m_text.length (); return FALSE; } m_text.erase (m_cursor, 1); m_cursor = std::min (m_cursor, (guint) m_text.length ()); return TRUE; } gboolean EnglishEditor::train (const char *word, float delta) { float freq = 0; gboolean retval = m_english_database->getWordInfo (word, freq); if (retval) { freq += delta; m_english_database->updateWord (word, freq); } else { m_english_database->insertWord (word, delta); } return TRUE; } #if 0 /* using static initializor to test english database here. */ static class TestEnglishDatabase{ public: TestEnglishDatabase (){ EnglishDatabase *db = new EnglishDatabase (); bool retval = db->isDatabaseExisted ("/tmp/english-user.db"); g_assert (!retval); retval = db->createDatabase ("english-user.db"); g_assert (retval); retval = db->openDatabase ("english.db", "english-user.db"); g_assert (retval); float freq = 0; retval = db->getWordInfo ("hello", freq); printf ("word hello:%d, %f.\n", retval, freq); if (retval) { db->updateWord ("hello", 0.1); } else { db->insertWord ("hello", 0.1); } printf ("english database test ok.\n"); } } test_english_database; #endif }; ibus-pinyin-1.5.0/src/PYPinyinEngine.h0000664000175000017500000000446611776565552014550 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_PINYIN_ENGINE_H_ #define __PY_PINYIN_ENGINE_H_ #include "PYEngine.h" #include "PYPinyinProperties.h" namespace PY { class PinyinEngine : public Engine { public: PinyinEngine (IBusEngine *engine); ~PinyinEngine (void); // virtual functions gboolean processKeyEvent (guint keyval, guint keycode, guint modifiers); void focusIn (void); void focusOut (void); void reset (void); void enable (void); void disable (void); void pageUp (void); void pageDown (void); void cursorUp (void); void cursorDown (void); gboolean propertyActivate (const gchar *prop_name, guint prop_state); void candidateClicked (guint index, guint button, guint state); private: gboolean processPunct (guint keyval, guint keycode, guint modifiers); private: void showSetupDialog (void); void connectEditorSignals (EditorPtr editor); private: void commitText (Text & text); private: PinyinProperties m_props; guint m_prev_pressed_key; enum { MODE_INIT = 0, // init mode MODE_PUNCT, // punct mode MODE_RAW, // raw mode MODE_ENGLISH, // press v into English input mode #if 0 MODE_STROKE, // press u into stroke input mode #endif MODE_EXTENSION, // press i into extension input mode MODE_LAST, } m_input_mode; EditorPtr m_editors[MODE_LAST]; EditorPtr m_fallback_editor; }; }; #endif ibus-pinyin-1.5.0/src/PYPunctTable.h0000664000175000017500000001372211762161772014177 00000000000000static const gchar * const puncts[] = { "", "·", ",", "。", "「", "」", "、", ":", ";", "?", "!", NULL, "!", "!", "﹗", "‼", "⁉", NULL, "\"", "“", "”", """, NULL, "#", "#", "﹟", "♯", NULL, "$", "$", "€", "﹩", "¢", "£", "¥", NULL, "%", "%", "﹪", "‰", "‱", "㏙", "㏗", NULL, "&", "&", "﹠", NULL, "'", "、", "‘", "’", NULL, "(", "(", "︵", "﹙", NULL, ")", ")", "︶", "﹚", NULL, "*", "*", "×", "※", "╳", "﹡", "⁎", "⁑", "⁂", "⌘", NULL, "+", "+", "±", "﹢", NULL, ",", ",", "、", "﹐", "﹑", NULL, "-", "…", "—", "-", "¯", "﹉", " ̄", "﹊", "ˍ", "–", "‥", NULL, ".", "。", "·", "‧", "﹒", ".", NULL, "/", "/", "÷", "↗", "↙", "∕", NULL, "0", "0", "0", NULL, "1", "1", "1", NULL, "2", "2", "2", NULL, "3", "3", "3", NULL, "4", "4", "4", NULL, "5", "5", "5", NULL, "6", "6", "6", NULL, "7", "7", "7", NULL, "8", "8", "8", NULL, "9", "9", "9", NULL, ":", ":", "︰", "﹕", NULL, ";", ";", "﹔", NULL, "<", "<", "〈", "《", "︽", "︿", "﹤", NULL, "=", "=", "≒", "≠", "≡", "≦", "≧", "﹦", NULL, ">", ">", "〉", "》", "︾", "﹀", "﹥", NULL, "?", "?", "﹖", "⁇", "⁈", NULL, "@", "@", "⊕", "⊙", "㊣", "﹫", "◉", "◎", NULL, "A", "A", "A", NULL, "B", "B", "B", NULL, "C", "C", "C", NULL, "D", "D", "D", NULL, "E", "E", "E", NULL, "F", "F", "F", NULL, "G", "G", "G", NULL, "H", "H", "H", NULL, "I", "I", "I", NULL, "J", "J", "J", NULL, "K", "K", "K", NULL, "L", "L", "L", NULL, "M", "M", "M", NULL, "N", "N", "N", NULL, "O", "O", "O", NULL, "P", "P", "P", NULL, "Q", "Q", "Q", NULL, "R", "R", "R", NULL, "S", "S", "S", NULL, "T", "T", "T", NULL, "U", "U", "U", NULL, "V", "V", "V", NULL, "W", "W", "W", NULL, "X", "X", "X", NULL, "Y", "Y", "Y", NULL, "Z", "Z", "Z", NULL, "[", "「", "[", "『", "【", "「", "︻", "﹁", "﹃", NULL, "\\", "\", "↖", "↘", "﹨", NULL, "]", "」", "]", "』", "】", "」", "︼", "﹂", "﹄", NULL, "^", "︿", "〈", "《", "︽", "﹤", "<", NULL, "_", "_", "╴", "←", "→", NULL, "`", "‵", "′", NULL, "a", "a", "a", NULL, "b", "b", "b", NULL, "c", "c", "c", NULL, "d", "d", "d", NULL, "e", "e", "e", NULL, "f", "f", "f", NULL, "g", "g", "g", NULL, "h", "h", "h", NULL, "i", "i", "i", NULL, "j", "j", "j", NULL, "k", "k", "k", NULL, "l", "l", "l", NULL, "m", "m", "m", NULL, "n", "n", "n", NULL, "o", "o", "o", NULL, "p", "p", "p", NULL, "q", "q", "q", NULL, "r", "r", "r", NULL, "s", "s", "s", NULL, "t", "t", "t", NULL, "u", "u", "u", NULL, "v", "v", "v", NULL, "w", "w", "w", NULL, "x", "x", "x", NULL, "y", "y", "y", NULL, "z", "z", "z", NULL, "{", "{", "︷", "﹛", "〔", "﹝", "︹", NULL, "|", "|", "↑", "↓", "∣", "∥", "︱", "︳", "︴", "¦", NULL, "}", "}", "︸", "﹜", "〕", "﹞", "︺", NULL, "~", "~", "﹋", "﹌", NULL, }; static const gchar * const * const punct_table[] = { &puncts[0], // "" &puncts[12], // "!" &puncts[18], // "\"" &puncts[23], // "#" &puncts[28], // "$" &puncts[36], // "%" &puncts[44], // "&" &puncts[48], // "'" &puncts[53], // "(" &puncts[58], // ")" &puncts[63], // "*" &puncts[74], // "+" &puncts[79], // "," &puncts[85], // "-" &puncts[97], // "." &puncts[104], // "/" &puncts[111], // "0" &puncts[115], // "1" &puncts[119], // "2" &puncts[123], // "3" &puncts[127], // "4" &puncts[131], // "5" &puncts[135], // "6" &puncts[139], // "7" &puncts[143], // "8" &puncts[147], // "9" &puncts[151], // ":" &puncts[156], // ";" &puncts[160], // "<" &puncts[168], // "=" &puncts[177], // ">" &puncts[185], // "?" &puncts[191], // "@" &puncts[200], // "A" &puncts[204], // "B" &puncts[208], // "C" &puncts[212], // "D" &puncts[216], // "E" &puncts[220], // "F" &puncts[224], // "G" &puncts[228], // "H" &puncts[232], // "I" &puncts[236], // "J" &puncts[240], // "K" &puncts[244], // "L" &puncts[248], // "M" &puncts[252], // "N" &puncts[256], // "O" &puncts[260], // "P" &puncts[264], // "Q" &puncts[268], // "R" &puncts[272], // "S" &puncts[276], // "T" &puncts[280], // "U" &puncts[284], // "V" &puncts[288], // "W" &puncts[292], // "X" &puncts[296], // "Y" &puncts[300], // "Z" &puncts[304], // "[" &puncts[314], // "\\" &puncts[320], // "]" &puncts[330], // "^" &puncts[338], // "_" &puncts[344], // "`" &puncts[348], // "a" &puncts[352], // "b" &puncts[356], // "c" &puncts[360], // "d" &puncts[364], // "e" &puncts[368], // "f" &puncts[372], // "g" &puncts[376], // "h" &puncts[380], // "i" &puncts[384], // "j" &puncts[388], // "k" &puncts[392], // "l" &puncts[396], // "m" &puncts[400], // "n" &puncts[404], // "o" &puncts[408], // "p" &puncts[412], // "q" &puncts[416], // "r" &puncts[420], // "s" &puncts[424], // "t" &puncts[428], // "u" &puncts[432], // "v" &puncts[436], // "w" &puncts[440], // "x" &puncts[444], // "y" &puncts[448], // "z" &puncts[452], // "{" &puncts[460], // "|" &puncts[471], // "}" &puncts[479], // "~" }; ibus-pinyin-1.5.0/src/PYExtEditor.h0000664000175000017500000000600611776565552014053 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_EXT_EDITOR_ #define __PY_EXT_EDITOR_ #include typedef struct _IBusEnginePlugin IBusEnginePlugin; typedef struct _lua_command_candidate_t lua_command_candidate_t; namespace PY { class ExtEditor : public Editor { public: ExtEditor (PinyinProperties & props, Config & config); virtual gboolean processKeyEvent (guint keyval, guint keycode, guint modifiers); virtual void pageUp (void); virtual void pageDown (void); virtual void cursorUp (void); virtual void cursorDown (void); virtual void update (void); virtual void reset (void); virtual void candidateClicked (guint index, guint button, guint state); int loadLuaScript (std::string filename); void resetLuaState (void); private: bool updateStateFromInput (void); /* Fill lookup table, and update preedit string. */ bool fillCommandCandidates (void); bool fillCommandCandidates (std::string prefix); bool fillCommand (std::string command_name, const char * argument); bool fillChineseNumber(gint64 num); /* Auxiliary functions for lookup table */ void clearLookupTable (void); void updateLookupTable (void); gboolean selectCandidateInPage (guint index); gboolean selectCandidate (guint index); void updatePreeditText (void); void updateAuxiliaryText (void); gboolean processEditKey (guint keyval); gboolean processPageKey (guint keyval); gboolean processLabelKey (guint keyval); gboolean processSpace (guint keyval); gboolean processEnter (guint keyval); gboolean removeCharBefore (void); gboolean removeCharAfter (void); enum LabelMode{ LABEL_NONE, LABEL_LIST_NUMBERS, LABEL_LIST_COMMANDS, LABEL_LIST_NONE, LABEL_LIST_DIGIT, LABEL_LIST_ALPHA, LABEL_LIST_SINGLE, LABEL_LAST, }; LabelMode m_mode; Pointer m_lua_plugin; std::string m_preedit_text; std::string m_auxiliary_text; LookupTable m_lookup_table; //saved lua extension call results. int m_result_num; const lua_command_candidate_t * m_candidate; GArray * m_candidates; const static int m_aux_text_len = 50; }; }; #endif ibus-pinyin-1.5.0/src/PYHalfFullConverter.cc0000664000175000017500000000627011776565552015672 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "PYHalfFullConverter.h" namespace PY { const guint HalfFullConverter::m_table[][3] = { { 0x0020, 0x3000, 1 }, { 0x0021, 0xFF01, 94 }, { 0x00A2, 0xFFE0, 2 }, { 0x00A5, 0xFFE5, 1 }, { 0x00A6, 0xFFE4, 1 }, { 0x00AC, 0xFFE2, 1 }, { 0x00AF, 0xFFE3, 1 }, { 0x20A9, 0xFFE6, 1 }, { 0xFF61, 0x3002, 1 }, { 0xFF62, 0x300C, 2 }, { 0xFF64, 0x3001, 1 }, { 0xFF65, 0x30FB, 1 }, { 0xFF66, 0x30F2, 1 }, { 0xFF67, 0x30A1, 1 }, { 0xFF68, 0x30A3, 1 }, { 0xFF69, 0x30A5, 1 }, { 0xFF6A, 0x30A7, 1 }, { 0xFF6B, 0x30A9, 1 }, { 0xFF6C, 0x30E3, 1 }, { 0xFF6D, 0x30E5, 1 }, { 0xFF6E, 0x30E7, 1 }, { 0xFF6F, 0x30C3, 1 }, { 0xFF70, 0x30FC, 1 }, { 0xFF71, 0x30A2, 1 }, { 0xFF72, 0x30A4, 1 }, { 0xFF73, 0x30A6, 1 }, { 0xFF74, 0x30A8, 1 }, { 0xFF75, 0x30AA, 2 }, { 0xFF77, 0x30AD, 1 }, { 0xFF78, 0x30AF, 1 }, { 0xFF79, 0x30B1, 1 }, { 0xFF7A, 0x30B3, 1 }, { 0xFF7B, 0x30B5, 1 }, { 0xFF7C, 0x30B7, 1 }, { 0xFF7D, 0x30B9, 1 }, { 0xFF7E, 0x30BB, 1 }, { 0xFF7F, 0x30BD, 1 }, { 0xFF80, 0x30BF, 1 }, { 0xFF81, 0x30C1, 1 }, { 0xFF82, 0x30C4, 1 }, { 0xFF83, 0x30C6, 1 }, { 0xFF84, 0x30C8, 1 }, { 0xFF85, 0x30CA, 6 }, { 0xFF8B, 0x30D2, 1 }, { 0xFF8C, 0x30D5, 1 }, { 0xFF8D, 0x30D8, 1 }, { 0xFF8E, 0x30DB, 1 }, { 0xFF8F, 0x30DE, 5 }, { 0xFF94, 0x30E4, 1 }, { 0xFF95, 0x30E6, 1 }, { 0xFF96, 0x30E8, 6 }, { 0xFF9C, 0x30EF, 1 }, { 0xFF9D, 0x30F3, 1 }, { 0xFFA0, 0x3164, 1 }, { 0xFFA1, 0x3131, 30 }, { 0xFFC2, 0x314F, 6 }, { 0xFFCA, 0x3155, 6 }, { 0xFFD2, 0x315B, 9 }, { 0xFFE9, 0x2190, 4 }, { 0xFFED, 0x25A0, 1 }, { 0xFFEE, 0x25CB, 1 }, }; gunichar HalfFullConverter::toFull (gunichar ch) { for (guint i = 0; i < G_N_ELEMENTS (m_table); i++) { if (G_UNLIKELY (ch < m_table[i][0])) return ch; if (G_UNLIKELY (ch < m_table[i][0] + m_table[i][2])) return ch - m_table[i][0] + m_table[i][1]; } return ch; } gunichar HalfFullConverter::toHalf (gunichar ch) { for (guint i = 0; i < G_N_ELEMENTS (m_table); i++) { if (G_LIKELY (ch < m_table[i][1])) continue; if (G_LIKELY (ch >= m_table[i][1] + m_table[i][2])) continue; return ch - m_table[i][1] + m_table[i][0]; } return ch; } }; ibus-pinyin-1.5.0/src/PYDoublePinyinEditor.cc0000664000175000017500000000417712006506456016042 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "PYDoublePinyinEditor.h" #include "PYConfig.h" #include "PYPinyinProperties.h" namespace PY { DoublePinyinEditor::DoublePinyinEditor (PinyinProperties & props, Config & config) : PinyinEditor (props, config) { PhoneticEditor::setContext (PyZy::InputContext::DOUBLE_PINYIN); } DoublePinyinEditor::~DoublePinyinEditor () { } void DoublePinyinEditor::updateAuxiliaryTextAfter (String &buffer) { if (G_LIKELY (!m_config.doublePinyinShowRaw ())) return; if (m_text.empty ()) { return; } if (G_LIKELY (m_config.orientation () == IBUS_ORIENTATION_HORIZONTAL)) { buffer << " [ "; } else { buffer << "\n[ "; } if (G_LIKELY (m_cursor == m_text.length ())) { buffer << m_text << " ]"; } else { buffer.append (m_text.c_str (), m_cursor); buffer << " "; buffer.append (m_text.c_str () + m_cursor); buffer << " ]"; } } gboolean DoublePinyinEditor::processKeyEvent (guint keyval, guint keycode, guint modifiers) { /* handle ';' key */ if (G_UNLIKELY (keyval == IBUS_semicolon)) { if (cmshm_filter (modifiers) == 0) { if (insert (keyval)) return TRUE; } } return PinyinEditor::processKeyEvent (keyval, keycode, modifiers); } }; ibus-pinyin-1.5.0/src/PYFullPinyinEditor.h0000664000175000017500000000220012006506456015355 00000000000000/* vim:set et ts=4 sts=4: * * ibus-pinyin - The Chinese PinYin engine for IBus * * Copyright (c) 2008-2010 Peng Huang * * 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, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef __PY_FULL_PINYIN_EDITOR_H_ #define __PY_FULL_PINYIN_EDITOR_H_ #include "PYPinyinEditor.h" namespace PY { class Config; class FullPinyinEditor : public PinyinEditor { public: FullPinyinEditor (PinyinProperties & props, Config & config); ~FullPinyinEditor (void); }; }; #endif ibus-pinyin-1.5.0/configure.ac0000664000175000017500000001033612063705656013211 00000000000000# vim:set et ts=4: # # ibus-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. # if not 1, append datestamp 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], [0]) m4_define(ibus_maybe_datestamp, m4_esyscmd([if test x]ibus_released[ != x1; then date +.%Y%m%d | tr -d '\n\r'; fi])) m4_define([ibus_version], ibus_major_version.ibus_minor_version.ibus_micro_version[]ibus_maybe_datestamp) AC_INIT([ibus-pinyin], [ibus_version], [http://code.google.com/p/ibus/issues/entry],[ibus-pinyin]) AM_INIT_AUTOMAKE([1.10]) AC_GNU_SOURCE AC_CONFIG_HEADERS([config.h]) AC_CONFIG_MACRO_DIR([m4]) m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])]) # define PACKAGE_VERSION_* variables AS_VERSION AS_NANO AM_SANITY_CHECK AM_MAINTAINER_MODE AM_DISABLE_STATIC AC_PROG_CC AC_PROG_CXX AM_PROG_CC_C_O AC_ISC_POSIX AC_HEADER_STDC IT_PROG_INTLTOOL([0.35.0]) AM_PROG_LIBTOOL # check ibus PKG_CHECK_MODULES(IBUS, [ ibus-1.0 >= 1.3.99 ]) # check pyzy PKG_CHECK_MODULES(PYZY, [ pyzy-1.0 >= 0.0.8 ]) AC_PATH_PROG(PYZY, pyzy-1.0) # check sqlite PKG_CHECK_MODULES(SQLITE, [ sqlite3 ]) AC_PATH_PROG(SQLITE3, sqlite3) # check if ibus_config_get_values, which is available in ibus-1.3.99+ (git master) save_CFLAGS="$CFLAGS" save_LIBS="$LIBS" CFLAGS="$CFLAGS $IBUS_CFLAGS" LIBS="$LIBS $IBUS_LIBS" AC_CHECK_FUNCS([ibus_config_get_values]) CFLAGS="$save_CFLAGS" LIBS="$save_LIBS" # check env AC_PATH_PROG(ENV, env) AC_SUBST(ENV) # check python AM_PATH_PYTHON([2.5]) # --enable-boost AC_ARG_ENABLE(boost, AC_HELP_STRING([--enable-boost], [Use boost to replace stdc++0x.]), [enable_boost=$enableval], [enable_boost=no] ) if test x"$enable_boost" = x"yes"; then # check boost BOOST_REQUIRE([1.39]) BOOST_FIND_HEADER([boost/bind.hpp]) BOOST_FIND_HEADER([boost/signals2.hpp]) fi AM_CONDITIONAL(HAVE_BOOST, test x"$enable_boost" = x"yes") # define GETTEXT_* variables GETTEXT_PACKAGE=ibus-pinyin AC_SUBST(GETTEXT_PACKAGE) AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package]) AM_GLIB_GNU_GETTEXT # --disable-lua-extension AC_ARG_ENABLE(lua-extension, AS_HELP_STRING([--disable-lua-extension], [do not build lua extension]), [enable_lua_extension=$enableval], [enable_lua_extension=yes] ) # check lua PKG_CHECK_MODULES(LUA, [ lua >= 5.1 ], [], [has_lua_extension=no] ) if test x"$has_lua_extension" = x"no"; then PKG_CHECK_MODULES(LUA, [ lua5.1 ], [], [enable_lua_extension=no] ); fi AM_CONDITIONAL(IBUS_BUILD_LUA_EXTENSION, [test x"$enable_lua_extension" = x"yes"]) # --disable-english-input-mode AC_ARG_ENABLE(english-input-mode, AS_HELP_STRING([--disable-english-input-mode], [do not build english input mode]), [enable_english_input_mode=$enableval], [enable_english_input_mode=yes] ) AM_CONDITIONAL(IBUS_BUILD_ENGLISH_INPUT_MODE, [test x"$enable_english_input_mode" = x"yes"]) # OUTPUT files AC_CONFIG_FILES([ po/Makefile.in Makefile ibus-pinyin.spec lua/Makefile src/Makefile src/pinyin.xml.in setup/Makefile setup/ibus-setup-pinyin setup/version.py data/Makefile data/db/Makefile data/db/english/Makefile data/icons/Makefile m4/Makefile ]) AC_OUTPUT AC_MSG_RESULT([ Build options: Version $VERSION Install prefix $prefix Use boost $enable_boost Build lua extension $enable_lua_extension Build english input mode $enable_english_input_mode ]) ibus-pinyin-1.5.0/missing0000755000175000017500000002415212063702757012320 00000000000000#! /bin/sh # Common stub for a few missing GNU programs while installing. scriptversion=2012-01-06.13; # UTC # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006, # 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. # Originally by Fran,cois Pinard , 1996. # 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. if test $# -eq 0; then echo 1>&2 "Try \`$0 --help' for more information" exit 1 fi run=: sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p' sed_minuso='s/.* -o \([^ ]*\).*/\1/p' # In the cases where this matters, `missing' is being run in the # srcdir already. if test -f configure.ac; then configure_ac=configure.ac else configure_ac=configure.in fi msg="missing on your system" case $1 in --run) # Try to run requested program, and just exit if it succeeds. run= shift "$@" && exit 0 # Exit code 63 means version mismatch. This often happens # when the user try to use an ancient version of a tool on # a file that requires a minimum version. In this case we # we should proceed has if the program had been absent, or # if --run hadn't been passed. if test $? = 63; then run=: msg="probably too old" fi ;; -h|--h|--he|--hel|--help) echo "\ $0 [OPTION]... PROGRAM [ARGUMENT]... Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an error status if there is no known handling for PROGRAM. Options: -h, --help display this help and exit -v, --version output version information and exit --run try to run the given command, and emulate it if it fails Supported PROGRAM values: aclocal touch file \`aclocal.m4' autoconf touch file \`configure' autoheader touch file \`config.h.in' autom4te touch the output file, or create a stub one automake touch all \`Makefile.in' files bison create \`y.tab.[ch]', if possible, from existing .[ch] flex create \`lex.yy.c', if possible, from existing .c help2man touch the output file lex create \`lex.yy.c', if possible, from existing .c makeinfo touch the output file yacc create \`y.tab.[ch]', if possible, from existing .[ch] Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and \`g' are ignored when checking the name. Send bug reports to ." exit $? ;; -v|--v|--ve|--ver|--vers|--versi|--versio|--version) echo "missing $scriptversion (GNU Automake)" exit $? ;; -*) echo 1>&2 "$0: Unknown \`$1' option" echo 1>&2 "Try \`$0 --help' for more information" exit 1 ;; esac # normalize program name to check for. program=`echo "$1" | sed ' s/^gnu-//; t s/^gnu//; t s/^g//; t'` # Now exit if we have it, but it failed. Also exit now if we # don't have it and --version was passed (most likely to detect # the program). This is about non-GNU programs, so use $1 not # $program. case $1 in lex*|yacc*) # Not GNU programs, they don't have --version. ;; *) if test -z "$run" && ($1 --version) > /dev/null 2>&1; then # We have it, but it failed. exit 1 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then # Could not run --version or --help. This is probably someone # running `$TOOL --version' or `$TOOL --help' to check whether # $TOOL exists and not knowing $TOOL uses missing. exit 1 fi ;; esac # If it does not exist, or fails to run (possibly an outdated version), # try to emulate it. case $program in aclocal*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acinclude.m4' or \`${configure_ac}'. You might want to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." touch aclocal.m4 ;; autoconf*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`${configure_ac}'. You might want to install the \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." touch configure ;; autoheader*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acconfig.h' or \`${configure_ac}'. You might want to install the \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}` test -z "$files" && files="config.h" touch_files= for f in $files; do case $f in *:*) touch_files="$touch_files "`echo "$f" | sed -e 's/^[^:]*://' -e 's/:.*//'`;; *) touch_files="$touch_files $f.in";; esac done touch $touch_files ;; automake*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. You might want to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." find . -type f -name Makefile.am -print | sed 's/\.am$/.in/' | while read f; do touch "$f"; done ;; autom4te*) echo 1>&2 "\ WARNING: \`$1' is needed, but is $msg. You might have modified some files without having the proper tools for further handling them. You can get \`$1' as part of \`Autoconf' from any GNU archive site." file=`echo "$*" | sed -n "$sed_output"` test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` if test -f "$file"; then touch $file else test -z "$file" || exec >$file echo "#! /bin/sh" echo "# Created by GNU Automake missing as a replacement of" echo "# $ $@" echo "exit 0" chmod +x $file exit 1 fi ;; bison*|yacc*) echo 1>&2 "\ WARNING: \`$1' $msg. You should only need it if you modified a \`.y' file. You may need the \`Bison' package in order for those modifications to take effect. You can get \`Bison' from any GNU archive site." rm -f y.tab.c y.tab.h if test $# -ne 1; then eval LASTARG=\${$#} case $LASTARG in *.y) SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` if test -f "$SRCFILE"; then cp "$SRCFILE" y.tab.c fi SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` if test -f "$SRCFILE"; then cp "$SRCFILE" y.tab.h fi ;; esac fi if test ! -f y.tab.h; then echo >y.tab.h fi if test ! -f y.tab.c; then echo 'main() { return 0; }' >y.tab.c fi ;; lex*|flex*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.l' file. You may need the \`Flex' package in order for those modifications to take effect. You can get \`Flex' from any GNU archive site." rm -f lex.yy.c if test $# -ne 1; then eval LASTARG=\${$#} case $LASTARG in *.l) SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` if test -f "$SRCFILE"; then cp "$SRCFILE" lex.yy.c fi ;; esac fi if test ! -f lex.yy.c; then echo 'main() { return 0; }' >lex.yy.c fi ;; help2man*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a dependency of a manual page. You may need the \`Help2man' package in order for those modifications to take effect. You can get \`Help2man' from any GNU archive site." file=`echo "$*" | sed -n "$sed_output"` test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` if test -f "$file"; then touch $file else test -z "$file" || exec >$file echo ".ab help2man is required to generate this page" exit $? fi ;; makeinfo*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.texi' or \`.texinfo' file, or any other file indirectly affecting the aspect of the manual. The spurious call might also be the consequence of using a buggy \`make' (AIX, DU, IRIX). You might want to install the \`Texinfo' package or the \`GNU make' package. Grab either from any GNU archive site." # The file to touch is that specified with -o ... file=`echo "$*" | sed -n "$sed_output"` test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` if test -z "$file"; then # ... or it is the one specified with @setfilename ... infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` file=`sed -n ' /^@setfilename/{ s/.* \([^ ]*\) *$/\1/ p q }' $infile` # ... or it is derived from the source name (dir/f.texi becomes f.info) test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info fi # If the file does not exist, the user really needs makeinfo; # let's fail without touching anything. test -f $file || exit 1 touch $file ;; *) echo 1>&2 "\ WARNING: \`$1' is needed, and is $msg. You might have modified some files without having the proper tools for further handling them. Check the \`README' file, it often tells you about the needed prerequisites for installing this package. You may also peek at any GNU archive site, in case some other package would contain this missing \`$1' program." exit 1 ;; esac exit 0 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: ibus-pinyin-1.5.0/ChangeLog0000664000175000017500000060640212064356726012503 00000000000000commit eecbc1dab658acea9304c1434585669660e76689 Author: Peng Huang Date: 2012-12-19 10:30:43 -0500 Release 1.5.0 BUG=None Review URL: https://codereview.appspot.com/6940076 M configure.ac commit cbe00cd1491e28719fed431ab25d21663da89acb Author: Peng Wu Date: 2012-12-19 10:29:18 -0500 Fixes pinyin.xml * Change the keyboard layout from us to default; * Update the symbols same as the icons; BUG= Review URL: https://codereview.appspot.com/6949070 Patch from Peng Wu . M src/pinyin.xml.in.in commit 32f0833e82bb3b4237d0c91fdae272e5d21f28db Author: Evan Nemerson Date: 2012-12-06 09:19:23 -0500 Quote $@ in autogen.sh BUG=http://code.google.com/p/ibus/issues/detail?id=1556 TBR=takao.fujiwara1 Review URL: https://codereview.appspot.com/6890053 Patch from Evan Nemerson . M autogen.sh commit a8f1c432491eb5cd125a3b4babf86f5a70a71740 Author: Peng Huang Date: 2012-08-21 09:47:34 -0400 Add setup tag. BUG=http://code.google.com/p/ibus/issues/detail?id=1498 Review URL: https://codereview.appspot.com/6464079 M src/pinyin.xml.in.in commit b2e3eb038562d68c6c20b3c6fa5362966b625058 Author: Peng Huang Date: 2012-08-07 10:52:01 -0400 Fix make dist & rpm errors. BUG=None Review URL: https://codereview.appspot.com/6455076 M data/Makefile.am M ibus-pinyin.spec.in commit 7d4a2f50289f7aa11b058048d3e5674884135f09 Author: Peng Huang Date: 2012-08-02 10:36:50 -0400 Support pyzy 0.0.9. BUG=None Review URL: https://codereview.appspot.com/6450080 M src/PYPinyinObserver.cc M src/PYPinyinObserver.h commit d2b27c5dc5ad1070f502768a32df2792c55b435d Author: Hiroshi Sumita Date: 2012-07-11 10:34:31 -0400 Integrates pyzy. BUG=None TEST=None at this moment... Review URL: https://codereview.appspot.com/6253043 Patch from Hiroshi Sumita . M Makefile.am M configure.ac M data/db/Makefile.am D data/db/android/Makefile.am D data/db/android/README D data/db/android/create_db.py D data/db/android/create_valid_hanzi.py D data/db/android/id.py D data/db/android/pydict.py D data/db/android/rawdict_utf16_65105_freq.txt D data/db/android/valid_hanzi.py D data/db/android/valid_utf16.txt D data/db/create_index.sql D data/db/open-phrase/Makefile.am M debian/control M debian/rules M ibus-pinyin.spec.in M po/POTFILES.in M po/POTFILES.skip D scripts/Makefile D scripts/bopomofo.py D scripts/create_db.py D scripts/create_index.py D scripts/create_unique_index.py D scripts/double.py D scripts/genbopomofokeyboard.py D scripts/genpytable.py D scripts/gensimptradtable.py D scripts/id.py D scripts/php_2_py.php D scripts/pydict.py D scripts/pyutil.py D scripts/sctc.py D scripts/update-simptrad-table.py D scripts/valid_hanzi.py M src/Makefile.am D src/PYBopomofo.h M src/PYBopomofoEditor.cc M src/PYBopomofoEditor.h D src/PYBopomofoKeyboard.h M src/PYConfig.cc M src/PYConfig.h D src/PYDatabase.cc D src/PYDatabase.h M src/PYDoublePinyinEditor.cc M src/PYDoublePinyinEditor.h D src/PYDoublePinyinTable.h M src/PYDynamicSpecialPhrase.h M src/PYEngine.cc M src/PYFullPinyinEditor.cc M src/PYFullPinyinEditor.h M src/PYMain.cc M src/PYPhoneticEditor.cc M src/PYPhoneticEditor.h D src/PYPhrase.h D src/PYPhraseArray.h D src/PYPhraseEditor.cc D src/PYPhraseEditor.h D src/PYPinyinArray.h M src/PYPinyinEditor.cc M src/PYPinyinEditor.h M src/PYPinyinEngine.cc A src/PYPinyinObserver.cc A src/PYPinyinObserver.h D src/PYPinyinParser.cc D src/PYPinyinParser.h D src/PYPinyinParserTable.h M src/PYPinyinProperties.cc M src/PYPinyinProperties.h D src/PYSimpTradConverter.cc D src/PYSimpTradConverter.h D src/PYSimpTradConverterTable.h D src/PYSpecialPhrase.cc D src/PYSpecialPhrase.h D src/PYSpecialPhraseTable.cc D src/PYSpecialPhraseTable.h M src/PYUtil.h D src/special_table commit f01f78c88832dc4165f7bd822b7289fc3d7f98a8 Merge: de52562 640b9a7 Author: Peng Huang Date: 2012-07-27 07:18:33 -0700 Merge pull request #3 from hillwoodroc/master add Chinese Name and Comment in .desktop commit 640b9a733d2e90e81fc7b7b41c43472939436810 Author: hillwoodroc Date: 2012-07-26 09:39:39 +0800 add Chinese Name and Comment in .desktop M data/ibus-setup-pinyin.desktop.in.in commit 5509450e0d820cb83427b8193d03bb72969a9f29 Author: hillwoodroc Date: 2012-07-26 09:38:21 +0800 add Chinese Name and Comment in .desktop M data/ibus-setup-bopomofo.desktop.in.in commit 2d9a483f806743a522a4f9de14841403a61d72ba Author: hillwoodroc Date: 2012-07-26 09:34:52 +0800 add Chinese Name and Comment in .desktop M data/ibus-setup-bopomofo.desktop.in.in commit de5256283674c5191abe182c6e247e0311f640c3 Author: Takao Fujiwara Date: 2012-07-16 10:57:16 -0400 Add a symbol property in IBusEngineDesc. BUG=http://code.google.com/p/ibus/issues/detail?id=1473 TEST=Manually Review URL: https://codereview.appspot.com/6345045 Patch from Takao Fujiwara . M src/PYMain.cc M src/pinyin.xml.in.in commit f11ebee5ddc558d80f1f95d71427a873b4ed7b68 Author: Rui Matos Date: 2012-07-12 15:00:50 -0400 Add a .desktop file for ibus-setup-pinyin This allows it to be launched with startup notification and be tracked as a proper application in GNOME 3. BUG=http://code.google.com/p/ibus/issues/detail?id=1483 TEST= Review URL: https://codereview.appspot.com/6345092 Patch from Rui Matos . M data/.gitignore M data/Makefile.am A data/ibus-setup-bopomofo.desktop.in.in A data/ibus-setup-pinyin.desktop.in.in M po/POTFILES.in M po/POTFILES.skip commit eb81201612683be871215ef8765f3585bc0fc144 Author: Peng Huang Date: 2012-06-21 10:43:50 -0400 Bump version to 1.4.99 BUG=None TEST=make distcheck Review URL: https://codereview.appspot.com/6304105 M configure.ac commit df6277ec1df790ee34d261424353195e81212319 Author: Hiroshi Sumita Date: 2012-06-05 10:13:15 -0400 Fixes a bug caused by a reallocation on vector. BUG=Database::query crashes on some situation TEST=Manual Review URL: https://codereview.appspot.com/6294043 Patch from Hiroshi Sumita . M src/PYDatabase.cc commit 8383301267a8bff72e4dfcbe7d1a00096789065b Author: Peng Huang Date: 2012-06-01 11:50:10 -0400 Fix license headers. BUG=None TEST=None Review URL: https://codereview.appspot.com/6244072 M configure.ac M lua/lua-ext-console.c M lua/lua-plugin-init.c M lua/lua-plugin.c M lua/test-lua-plugin.c M scripts/header M setup/ibus-setup-pinyin.in M setup/version.py.in commit 8901ca9805b7ff13bf9ba5d711494174b00dc0ce Author: Peng Huang Date: 2012-06-01 11:26:29 -0400 Fix license headers BUG=None TEST=None Review URL: https://codereview.appspot.com/6258069 M Makefile.am M data/Makefile.am M data/db/Makefile.am M data/db/android/Makefile.am M data/db/english/Makefile.am M data/db/open-phrase/Makefile.am M lua/Makefile.am M lua/lua-plugin.h M m4/Makefile.am M scripts/pydict.py M scripts/pyutil.py M setup/Makefile.am M setup/main.py M src/Makefile.am M src/PYBopomofo.h M src/PYBopomofoEditor.cc M src/PYBopomofoEditor.h M src/PYBopomofoEngine.cc M src/PYBopomofoEngine.h M src/PYBopomofoKeyboard.h M src/PYBus.h M src/PYConfig.cc M src/PYConfig.h M src/PYDatabase.cc M src/PYDatabase.h M src/PYDoublePinyinEditor.cc M src/PYDoublePinyinEditor.h M src/PYDoublePinyinTable.h M src/PYDynamicSpecialPhrase.cc M src/PYDynamicSpecialPhrase.h M src/PYEditor.cc M src/PYEditor.h M src/PYEngine.cc M src/PYEngine.h M src/PYEnglishEditor.cc M src/PYEnglishEditor.h M src/PYExtEditor.cc M src/PYExtEditor.h M src/PYFallbackEditor.cc M src/PYFallbackEditor.h M src/PYFullPinyinEditor.cc M src/PYFullPinyinEditor.h M src/PYHalfFullConverter.cc M src/PYHalfFullConverter.h M src/PYLookupTable.h M src/PYMain.cc M src/PYObject.h M src/PYPhoneticEditor.cc M src/PYPhoneticEditor.h M src/PYPhrase.h M src/PYPhraseArray.h M src/PYPhraseEditor.cc M src/PYPhraseEditor.h M src/PYPinyinArray.h M src/PYPinyinEditor.cc M src/PYPinyinEditor.h M src/PYPinyinEngine.cc M src/PYPinyinEngine.h M src/PYPinyinParser.cc M src/PYPinyinParser.h M src/PYPinyinProperties.cc M src/PYPinyinProperties.h M src/PYPointer.h M src/PYProperty.h M src/PYPunctEditor.cc M src/PYPunctEditor.h M src/PYRawEditor.h M src/PYRegex.h M src/PYSignal.h M src/PYSimpTradConverter.cc M src/PYSimpTradConverter.h M src/PYSpecialPhrase.cc M src/PYSpecialPhrase.h M src/PYSpecialPhraseTable.cc M src/PYSpecialPhraseTable.h M src/PYString.h M src/PYText.h M src/PYTypes.h M src/PYUtil.h commit 8c80936cb3c47cba13d899b466c9e8b8ec446d33 Author: Peng Huang Date: 2012-05-24 08:39:25 -0400 Remove i,v,u prefix when input English. BUG=http://code.google.com/p/ibus/issues/detail?id=728 TEST=Manually Review URL: https://codereview.appspot.com/6210070 M src/PYEditor.cc M src/PYPinyinEngine.cc commit 2ac12b8973c11b40e569bb952d1e21d03e5ce6ef Author: Peng Huang Date: 2012-05-23 08:03:39 -0400 Fix double pinyin parse error when fuzzy pinyin is enabled. BUG=http://code.google.com/p/ibus/issues/detail?id=1441 TEST=Manually Review URL: https://codereview.appspot.com/6221060 M src/PYDoublePinyinEditor.cc commit b2dd07991eba77c56c12920182e8c9d5553b612f Author: Peng Huang Date: 2012-05-23 08:01:43 -0400 Fix a build warning. BUG=None TEST=build Review URL: https://codereview.appspot.com/6220068 M src/PYPinyinParser.cc commit 36e1b9fee8bef42ca7d378c86310a0548500d769 Author: Peng Huang Date: 2012-03-22 10:45:45 -0400 Add French translation from Jiehong Ma BUG=None TEST=Make Review URL: https://codereview.appspot.com/5865049 M AUTHORS M po/LINGUAS A po/fr.po commit 4950900e3acc6cf0741962179e2b2b924964ae4f Author: Peng Huang Date: 2012-01-17 16:21:56 -0500 ibus-pinyin-setup: Port to gobject-introspection, do not use ibus python library anymore. BUG=http://code.google.com/p/ibus/issues/detail?id=1381 TEST=manually Review URL: https://codereview.appspot.com/5545053 M ibus-pinyin.spec.in M setup/ibus-pinyin-preferences.ui M setup/main.py commit e735ba896377d8959d2a54e8a91ab81891d6d54e Author: Peng Huang Date: 2012-01-04 10:34:33 -0500 Convert wordlist from dos to unix format BUG=None TEST=make Review URL: http://codereview.appspot.com/5505096 M data/db/english/wordlist commit dae2d6bf943e7455692db80f60fc3d0567b7705d Author: Peng Huang Date: 2012-01-03 10:29:23 -0500 Refine Makefile and do not install engine.db if English mode is disabled. Move english related files into data/db/english folder and update Makefile.am BUG=None TEST=make & make install Review URL: http://codereview.appspot.com/5503058 M configure.ac M data/Makefile.am M data/db/Makefile.am M data/db/android/Makefile.am A data/db/english/Makefile.am A data/db/english/english.awk A data/db/english/wordlist M data/db/open-phrase/Makefile.am D data/english.awk D data/wordlist M src/PYEnglishEditor.cc commit 0e658c782158a8973bd2e6f3ae6c627daf7d191a Author: Peng Huang Date: 2011-12-20 22:19:56 -0500 Bump version for 1.4.0 release. BUG=None TEST=make distcheck Review URL: http://codereview.appspot.com/5498057 M configure.ac commit b88b7d0e6a53576ee38424412ade2550c7323ad8 Author: Peng Huang Date: 2011-10-28 14:11:33 -0400 Fix some issues which may cause crash likely. BUG=http://code.google.com/p/ibus/issues/detail?id=1325 TEST=Manually Review URL: http://codereview.appspot.com/5298065 M src/PYEnglishEditor.cc M src/PYEnglishEditor.h commit f736b49d4e0e424bf8fd2ef1786bec4539a066eb Author: Peng Huang Date: 2011-10-26 11:15:36 -0400 Exit if config component is not ready instead of crash. BUG=crash when ibus config is not ready TEST=Linux desktop Review URL: http://codereview.appspot.com/5321054 M src/PYMain.cc commit cb5afea67473240d73f0c359c7dc6e553f87da14 Author: Peng Huang Date: 2011-07-05 13:09:29 -0400 Use ibus_config_get_values () to improve performance. BUG=http://crosbug.com/16287 TEST=Linux desktop Review URL: http://codereview.appspot.com/4670044 M configure.ac M src/PYConfig.cc M src/PYConfig.h commit 47bc0ca6978131de085f27d988a0f135474b6062 Author: Peng Huang Date: 2011-06-02 08:30:49 -0400 Fix a build warning. BUG=Build wanring TEST=Manually Review URL: http://codereview.appspot.com/4528117 M src/PYPunctEditor.cc commit d89313116374fb647df89cba0aee8002a0750308 Author: Peng Huang Date: 2011-05-27 10:47:13 -0400 Fix make distcheck errors. BUG=make distcheck failed TEST=Manually Review URL: http://codereview.appspot.com/4551054 M configure.ac M data/Makefile.am M data/db/android/Makefile.am M data/db/open-phrase/Makefile.am commit 6a6469f3c85d3a60ee68e074ac3c6b854b837753 Author: Peng Huang Date: 2011-05-03 10:07:25 -0400 Fixed build errors in Ubuntu 11.04 and get distribution codename from /etc/lsb-release. BUG=None TEST=Linux desktop Review URL: http://codereview.appspot.com/4428083 M Makefile.am M src/PYConfig.cc M src/PYDatabase.cc commit a16d70e01a441193c6bb8a38d7cf093a7ebed19c Author: Peng Wu Date: 2011-04-22 07:31:53 -0400 add English Editor to speed up English input BUG=none TEST=build fine Review URL: http://codereview.appspot.com/4200041 Patch from Peng Wu . M configure.ac M data/Makefile.am A data/english.awk M src/Makefile.am A src/PYEnglishEditor.cc A src/PYEnglishEditor.h M src/PYExtEditor.cc M src/PYPinyinEngine.cc M src/PYPinyinEngine.h commit d85a24507314194f1597c4c5d6c460408fcd3a9e Author: Peng Huang Date: 2011-03-21 13:00:05 -0400 Add auto correct "on" => "ong", and combine some fuzzy pinyin options to save flag bits. BUG=none TEST=Linux desktop Review URL: http://codereview.appspot.com/4273085 M data/db/android/Makefile.am M data/db/open-phrase/Makefile.am M scripts/genpytable.py M setup/ibus-pinyin-preferences.ui M setup/main.py M src/Makefile.am M src/PYConfig.cc M src/PYPinyinParserTable.h M src/PYTypes.h commit 5d68b85c32049841ad1ac6220c6b03a528da7662 Author: Peng Huang Date: 2011-02-18 09:15:24 -0500 Update PYSimpTradConverterTable.h from wikipedia BUG=none TEST=manual Review URL: http://codereview.appspot.com/4190049 M scripts/update-simptrad-table.py M src/PYSimpTradConverterTable.h commit f60c85749674f38b8e5fee222cd89fcc46ba2688 Author: Peng Huang Date: 2011-02-07 11:33:37 -0500 Storing user database to disk, if engine idles more than 60 seconds. BUG=none TEST=manual Review URL: http://codereview.appspot.com/4127050 M src/PYDatabase.cc M src/PYDatabase.h commit a142d959cdba0406a2c614fadfa9367803c31286 Author: Peng Huang Date: 2011-01-18 10:12:40 -0500 Do not handle release key events, if engine is in init mode. Most application only process key press events, but some process key release events. This change will let Pinyin engine to ignore some release events in init mode, and let applications have chance to get release key events. BUG=none TEST=Test within Ubuntu 10.10 Review URL: http://codereview.appspot.com/3975042 M src/PYBopomofoEngine.cc M src/PYPinyinEngine.cc commit 15b9b66b013ee83974b3ae16a76983cc10e9dbe8 Author: Peng Huang Date: 2010-11-24 16:53:36 +0900 Use in memory user database to improve performance. I found pinyin's performance is very low when system IO load is big. So I let pinyin use im memory user database to improve the performance, and write the database to the harddisk in 60 seconds or when engine exits. BUG=none TEST=manual Review URL: http://codereview.appspot.com/3303041 M src/PYDatabase.cc M src/PYDatabase.h M src/PYMain.cc M src/PYString.h commit f067b7a651cf24f7234441a31c0f88191cb74a42 Author: Peng Wu Date: 2010-11-12 15:06:09 +0800 add author M setup/ibus-pinyin-preferences.ui M src/pinyin.xml.in.in commit e6f36dbffa9da69fd3819ce21ac7504f50b055e7 Author: Peng Huang Date: 2010-11-04 16:26:18 +0900 Fix deb build errors. M Makefile.am M debian/control commit a17468d8ade1df427ca204605f608b9e4ab67b50 Author: Peng Huang Date: 2010-10-29 09:31:05 +0900 Change default ubunut serie to mavreick M Makefile.am commit 9b655b630a50e9cd7a9415f07b2ddb4348b2db64 Author: Peng Huang Date: 2010-10-29 09:28:48 +0900 Bump version to 1.3.99 M configure.ac commit 16a3b3d689de672efc1ed8eb4604160cd38d7302 Author: Peng Huang Date: 2010-10-22 20:36:54 +0900 Fix build errors with ibus-1.4 M configure.ac M debian/control commit ead9afe09d8e580bc2abb3556cf778c0a29c243c Author: phuang Date: 2010-10-18 22:02:33 +0900 Fix some errors when build debian packages. M Makefile.am M debian/control M debian/rules commit 2924d05cf008f7c7794d4f4b65940a70ba2247bd Author: Peng Huang Date: 2010-07-12 18:14:46 +0800 Fix problem with ibus-2.0 M configure.ac M src/PYConfig.cc M src/PYConfig.h commit bcf86cbf44e2a9658fda42724ed066f3f05ced79 Author: Yuren Ju Date: 2010-10-20 18:49:33 +0800 added simp. chinese and hong kang translation M po/zh_CN.po M po/zh_HK.po commit d43d04a9b92f7abd719cf3da666c23eee43fb67c Author: Yuren Ju Date: 2010-10-20 18:44:23 +0800 add options for enter key, original feature is commit original english text, new feature is commit first candidate phrase M po/zh_TW.po M setup/ibus-pinyin-preferences.ui M setup/main.py M src/PYBopomofoEditor.cc M src/PYConfig.cc M src/PYConfig.h commit 5a0ba0b751abe079fad8bc90316501cd489f50e6 Author: Yuren Ju Date: 2010-10-11 17:07:25 +0800 use , & 。 instead of 《 & 》 for traditional chinese user M src/PYFallbackEditor.cc commit a0b31c7a250cfa7af1b52056a1d1ada81b22a455 Author: Peng Huang Date: 2010-09-27 14:09:07 +0800 Add option --disable-boost to support build without boost When build without boost, ibus-pinyin will use smart pointer from c++0x and use the signal templates embedded instead of boost::signals2. BUG=chromium-os:5055 TEST=manual Review URL: http://codereview.appspot.com/2205044 M configure.ac M src/Makefile.am M src/PYBopomofoEngine.cc M src/PYConfig.cc M src/PYConfig.h M src/PYDatabase.cc M src/PYDatabase.h M src/PYEditor.h M src/PYEngine.cc M src/PYExtEditor.cc M src/PYPhraseEditor.h M src/PYPinyinEngine.cc M src/PYPunctEditor.cc M src/PYPunctEditor.h M src/PYSignal.h M src/PYSpecialPhraseTable.h M src/PYUtil.h commit 27c2f7ea0ef69094db2dfc009bb661276fc90227 Author: Peng Huang Date: 2010-09-27 10:10:33 +0800 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. Add target for build debian packages. BUG=none TEST=build fine Review URL: http://codereview.appspot.com/2229048 M Makefile.am A codereview.settings commit eb321b4ad179d0f30a6bbf08bcc8e793a0c29f19 Author: Peng Huang Date: 2010-09-06 10:43:20 +0800 release 1.3.11 M configure.ac commit 895bd567cbf353927839647303fa58e12a3ab5e1 Author: Peng Huang Date: 2010-09-06 10:41:04 +0800 Fix make distcheck errors. M po/POTFILES.in M po/ru.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M src/Makefile.am commit ff252da6d8603fcf3679a369a63ceb731f2caeb7 Author: Yusuke Sato Date: 2010-05-11 11:33:05 +0900 Tiny modification to m4/boost.m4. Pass $CXXFLAGS to $ac_cpp to make cross-compilation of ibus-pinyin easy. BUG=none TEST=ran emerge-x86-generic -a ibus-pinyin. Review URL: http://codereview.chromium.org/2045008 M m4/boost.m4 commit 8fef79fdf46eb0c9a342c76f79b613540dbf6632 Author: Peng Huang Date: 2010-08-23 09:54:49 +0800 Remove sqlite3 in create_db.py M data/db/android/create_db.py commit e47965d40f5cf56b15c10aca74fff0e3739c988d Author: Peng Huang Date: 2010-08-14 06:43:29 +0800 Remove duplicated EXTRA_DIST value in lua/Makefile.am M lua/Makefile.am commit f3f325b0603ed635d076a5e6430164b2c72b21da Author: Peng Huang Date: 2010-08-13 16:20:01 +0800 Add PY prefix of all file names to avoid name conflict on some file system than is case insensitive. D src/Bopomofo.h D src/BopomofoEditor.cc D src/BopomofoEditor.h D src/BopomofoEngine.cc D src/BopomofoEngine.h D src/BopomofoKeyboard.h D src/Bus.h D src/Config.cc D src/Config.h D src/Database.cc D src/Database.h D src/DoublePinyinEditor.cc D src/DoublePinyinEditor.h D src/DoublePinyinTable.h D src/DynamicSpecialPhrase.cc D src/DynamicSpecialPhrase.h D src/Editor.cc D src/Editor.h D src/Engine.cc D src/Engine.h D src/ExtEditor.cc D src/ExtEditor.h D src/FallbackEditor.cc D src/FallbackEditor.h D src/FullPinyinEditor.cc D src/FullPinyinEditor.h D src/HalfFullConverter.cc D src/HalfFullConverter.h D src/LookupTable.h D src/Main.cc M src/Makefile.am D src/Object.h A src/PYBopomofo.h A src/PYBopomofoEditor.cc A src/PYBopomofoEditor.h A src/PYBopomofoEngine.cc A src/PYBopomofoEngine.h A src/PYBopomofoKeyboard.h A src/PYBus.h A src/PYConfig.cc A src/PYConfig.h A src/PYDatabase.cc A src/PYDatabase.h A src/PYDoublePinyinEditor.cc A src/PYDoublePinyinEditor.h A src/PYDoublePinyinTable.h A src/PYDynamicSpecialPhrase.cc A src/PYDynamicSpecialPhrase.h A src/PYEditor.cc A src/PYEditor.h A src/PYEngine.cc A src/PYEngine.h A src/PYExtEditor.cc A src/PYExtEditor.h A src/PYFallbackEditor.cc A src/PYFallbackEditor.h A src/PYFullPinyinEditor.cc A src/PYFullPinyinEditor.h A src/PYHalfFullConverter.cc A src/PYHalfFullConverter.h A src/PYLookupTable.h A src/PYMain.cc A src/PYObject.h A src/PYPhoneticEditor.cc A src/PYPhoneticEditor.h A src/PYPhrase.h A src/PYPhraseArray.h A src/PYPhraseEditor.cc A src/PYPhraseEditor.h A src/PYPinyinArray.h A src/PYPinyinEditor.cc A src/PYPinyinEditor.h A src/PYPinyinEngine.cc A src/PYPinyinEngine.h A src/PYPinyinParser.cc A src/PYPinyinParser.h A src/PYPinyinParserTable.h A src/PYPinyinProperties.cc A src/PYPinyinProperties.h A src/PYPointer.h A src/PYProperty.h A src/PYPunctEditor.cc A src/PYPunctEditor.h A src/PYPunctTable.h A src/PYRawEditor.h A src/PYRegex.h A src/PYSignal.h A src/PYSimpTradConverter.cc A src/PYSimpTradConverter.h A src/PYSimpTradConverterTable.h A src/PYSpecialPhrase.cc A src/PYSpecialPhrase.h A src/PYSpecialPhraseTable.cc A src/PYSpecialPhraseTable.h A src/PYString.h A src/PYText.h A src/PYTypes.h A src/PYUtil.h D src/PhoneticEditor.cc D src/PhoneticEditor.h D src/Phrase.h D src/PhraseArray.h D src/PhraseEditor.cc D src/PhraseEditor.h D src/PinyinArray.h D src/PinyinEditor.cc D src/PinyinEditor.h D src/PinyinEngine.cc D src/PinyinEngine.h D src/PinyinParser.cc D src/PinyinParser.h D src/PinyinParserTable.h D src/PinyinProperties.cc D src/PinyinProperties.h D src/Pointer.h D src/Property.h D src/PunctEditor.cc D src/PunctEditor.h D src/PunctTable.h D src/RawEditor.h D src/Regex.h D src/Signal.h D src/SimpTradConverter.cc D src/SimpTradConverter.h D src/SimpTradConverterTable.h D src/SpecialPhrase.cc D src/SpecialPhrase.h D src/SpecialPhraseTable.cc D src/SpecialPhraseTable.h D src/String.h D src/Text.h D src/Types.h D src/Util.h commit a32d2b4d5194559b4601cf7e2c65ddc68bdf13e3 Author: Peng Huang Date: 2010-08-17 13:15:52 +0900 change the default fuzzy settings M setup/main.py M src/Config.cc commit 20f31c8b18cefce89a8ce4b1c790f5aa37442a65 Author: Peng Huang Date: 2010-08-06 10:45:40 +0800 Release 1.3.10 M configure.ac commit dea6dd8336caa9d76a64b69343d43a65312c6df4 Author: BYVoid Date: 2010-07-27 22:01:25 +0800 Use ucs4_t API of OpenCC. M src/SimpTradConverter.cc commit ca206af4c2d9a0b312e3154f57cd4cf8d53bb845 Author: BYVoid Date: 2010-07-27 22:00:47 +0800 Fix some default punct mappings in traditional Chinese M src/FallbackEditor.cc commit fb788847f855c0aa4b51797a4049c487fdd80a79 Author: Peng Huang Date: 2010-07-20 08:59:15 +0800 Refine coding style and update AUTHORS M AUTHORS M src/DoublePinyinTable.h commit 4577dca3f1680445177f270dfc63c70af1e0f3d2 Author: Peng Huang Date: 2010-07-16 14:24:07 +0800 Release 1.3.9 M configure.ac commit f2b7ff6d4eca3b9a6ca284575ff1cbce9d7d0c30 Merge: d4eb78f f850d40 Author: Peng Huang Date: 2010-07-16 14:02:10 +0800 Merge remote branch 'epic/master' commit f850d40f939175382e7b801d6b16b4651820c448 Author: Peng Wu Date: 2010-07-14 13:40:53 +0800 fixes error when make distcheck. M lua/Makefile.am M lua/test-lua-plugin.c M src/Makefile.am commit d4eb78f97a6bf7a6a6aedbca7b13ca20b6e7cdb2 Merge: a05cf80 d604684 Author: Peng Huang Date: 2010-07-09 15:36:04 +0800 Merge remote branch 'epic/master' commit a05cf80fa3cf602dee0a3ddead14d2e646d6b2f9 Author: Peng Huang Date: 2010-07-09 15:35:41 +0800 Fix build problem in ppa M configure.ac M debian/control M debian/rules M lua/Makefile.am commit d6046846b0f5214ed61d92fe8e98b02bb87767d2 Author: Peng Wu Date: 2010-07-09 11:42:01 +0800 only enable lua extension when use single pinyin. M src/PinyinEngine.cc commit 826497eb99e46cc6aa6e4b23b3a94be1e04fe0d1 Author: Peng Wu Date: 2010-07-08 13:43:29 +0800 fixes autoconf bug. M configure.ac commit 15925b00c1d119dd343f3bb6c6532bc36df70c03 Author: Peng Wu Date: 2010-07-06 13:55:32 +0800 add lua version check. M configure.ac commit c4cbd703027566205b9dc4dfef6316717746f097 Author: Peng Wu Date: 2010-07-06 12:49:10 +0800 fixes ExtEditor compile. M src/Makefile.am commit 6cc8818cf72cbe7b56c6394030c6256178e71d28 Author: Peng Wu Date: 2010-07-06 12:42:15 +0800 fixes ubuntu build. M configure.ac commit 1ab6137e03e3d63968544e318d74ff36b807a611 Author: Peng Wu Date: 2010-07-06 11:22:44 +0800 fixes a typo. M configure.ac commit 0d928e4d3300f7dfb4969c7e662d006ff2f73502 Author: Peng Huang Date: 2010-07-06 10:46:46 +0800 Use opencc M debian/control M debian/rules M src/SimpTradConverter.cc commit f46a3755384fb6dab200d42c059d3d9ec6ebbbf3 Author: BYVoid Date: 2010-07-05 16:29:48 +0800 Revert to OpenCC C language API M src/SimpTradConverter.cc commit 4b0a1b6d39fa13a401c70b3ed1f3d293904e8b45 Author: BYVoid Date: 2010-06-22 16:42:18 +0800 Use Constant of C++ wrapper of OpenCC instead of macro M src/SimpTradConverter.cc commit 47fea81343591499c2949b8c691af037c94539ff Author: BYVoid Date: 2010-06-18 13:54:33 +0800 Add error handler for call of OpenCC M src/SimpTradConverter.cc commit a09afd5445915f69bec2d374d9145aa6596978c2 Author: BYVoid Date: 2010-06-18 13:49:58 +0800 Fix call of OpenCC M src/SimpTradConverter.cc commit 9821b99fb1cfd1925e04e00e5b04184398ffcf0c Author: Peng Huang Date: 2010-07-05 15:31:03 +0800 Disable lua extension by default M Makefile.am M configure.ac M lua/Makefile.am commit 97dd325909f7f8293ce8651a6c04d9ae0b912a00 Author: Peng Wu Date: 2010-07-01 16:27:54 +0800 fixes traditional number. M src/DynamicSpecialPhrase.cc commit 3e35a3aaf06ddb063c04293fc3faa5402119ea60 Author: Peng Wu Date: 2010-07-01 16:17:19 +0800 adding lua-extension flags. M configure.ac M src/BopomofoEngine.cc M src/Makefile.am M src/PinyinEngine.cc commit 0bf5e528bef93ab20ab0c05ca62f5fc0032eaab4 Author: Peng Wu Date: 2010-07-01 15:32:36 +0800 add lua extension compile flags. M configure.ac M lua/Makefile.am commit 008393c40013869af5a8d8c4de618e232ee42dc4 Author: Peng Wu Date: 2010-07-01 11:55:52 +0800 fixes compile errors. M src/DynamicSpecialPhrase.cc M src/ExtEditor.cc commit f754d164d05cc38832837ee75337cd9da8247ca0 Author: Peng Wu Date: 2010-07-01 11:46:59 +0800 re-factor chinese number code. M src/DynamicSpecialPhrase.cc M src/DynamicSpecialPhrase.h M src/ExtEditor.cc commit 607a7ec4e9c67155d931fa66f5d13cb04d986f20 Author: Peng Wu Date: 2010-07-01 10:36:39 +0800 remove some warnings. M lua/lua-plugin-init.c commit e594be88108d50445e7521f69c95bf217c779a8c Author: Peng Wu Date: 2010-07-01 10:32:40 +0800 fixes translation. M src/ExtEditor.cc commit daaebd3d854f4cdaac268a6bf616137eb735ae55 Author: Peng Wu Date: 2010-06-29 15:26:32 +0800 add comments. M src/ExtEditor.cc commit f9f1ef9451a64a1d303bdd3cba8a3f617cb97b4a Author: Peng Wu Date: 2010-06-29 15:21:34 +0800 fixes huge number. M src/ExtEditor.cc M src/ExtEditor.h commit e02cb1929119ef62eb9e570d2e530ad9c7513985 Author: Peng Wu Date: 2010-06-29 14:50:10 +0800 fixes aux text. M src/ExtEditor.cc M src/LookupTable.h commit 00533c453e8ab19099ee0e093bdd7e91c94df77f Author: Peng Wu Date: 2010-06-29 14:34:09 +0800 fixes compile errors. M src/ExtEditor.cc M src/ExtEditor.h commit a19742702ef27a9f56205534a8172eb9dc894cb2 Author: Peng Wu Date: 2010-06-29 14:17:28 +0800 add Chinese Number Gen code M src/ExtEditor.cc commit 35e87ecdaa28b59607d1570cf87c94ec8ea9d47e Author: Peng Wu Date: 2010-06-23 15:54:13 +0800 re-factor include headers. M lua/lua-ext-console.c M lua/lua-plugin-init.c M lua/lua-plugin.c M lua/lua-plugin.h M lua/test-lua-plugin.c M src/ExtEditor.cc commit 9af65cb9b6503020450caa14276f42421239ba43 Author: Peng Wu Date: 2010-06-23 15:31:58 +0800 fixes strlen. M src/ExtEditor.cc commit fc845a6adc93589000f2cbff2dff60d33706927c Author: Peng Wu Date: 2010-06-23 10:48:29 +0800 fixes help display on aux text. M src/ExtEditor.cc M src/ExtEditor.h commit 83a549ad0dd6872fcea509df02666b5cb6488324 Author: Peng Wu Date: 2010-06-22 18:08:00 +0800 fixes space and m_cursor handles. M src/ExtEditor.cc commit 263e1ae756cb07e0c95417e78e478bfa21c05a30 Author: Peng Wu Date: 2010-06-22 15:41:46 +0800 fixes return key. fixes lua script load path. M src/ExtEditor.cc commit 8bb3778bc49ed59114f23f0f80cac738e24e6e0e Author: Peng Wu Date: 2010-06-22 15:16:15 +0800 fixes digit labels gen. fixes label key '0' to '9'. M lua/lua-plugin-init.c M src/ExtEditor.cc commit 44202f0e3ba96da80197c6ad9a00073015ae7df9 Author: Peng Wu Date: 2010-06-22 15:13:09 +0800 add lua command help hint. M src/ExtEditor.cc commit f0a5cb8020b9689774ce420aa24a66b54dd4d4b5 Author: Peng Wu Date: 2010-06-22 15:08:19 +0800 add enter key press handle. M src/ExtEditor.cc M src/ExtEditor.h commit e64172c40521e34edeb9ee0aae19de1f0b1a05cd Author: Peng Huang Date: 2010-06-22 10:43:36 +0800 refine code M src/ExtEditor.h commit d8c519eea5f4c21c8158db57a8bac44078708f7e Author: Peng Huang Date: 2010-06-22 10:40:44 +0800 Refine code and fix some warnings M src/ExtEditor.cc M src/ExtEditor.h M src/String.h commit a3f8f98c1c743389ffb2a5e0199cab0fb774c0d7 Author: Peng Wu Date: 2010-06-22 10:37:01 +0800 re-factor ExtEditor header. M lua/lua-plugin.h M src/ExtEditor.cc M src/ExtEditor.h commit e453b7ecacde36925771326a3eb23380dd3007c1 Author: Peng Wu Date: 2010-06-21 15:17:48 +0800 fixes m_cursor computing. M src/ExtEditor.cc commit 804df27528b7328b62b3a30f11e65b948f7691d1 Author: Peng Wu Date: 2010-06-21 14:19:35 +0800 add license for lua ext mode. M lua/lua-ext-console.c M lua/lua-plugin-init.c M lua/lua-plugin.c M lua/lua-plugin.h M lua/test-lua-plugin.c commit 34bbe4c76b28368411cf921705c8c62fd4da975a Author: Peng Wu Date: 2010-06-21 14:17:21 +0800 fixes label M src/ExtEditor.cc commit 7841b9d8c603911f5f09e75914f7272f367c22ac Author: Peng Wu Date: 2010-06-21 13:34:12 +0800 fixes base.lua path. M lua/Makefile.am M src/ExtEditor.cc commit 5f70f6792d22758e37f2875db716ad5a2fefb6da Author: Peng Wu Date: 2010-06-21 13:21:47 +0800 add stripped oslib for lua ext. M lua/Makefile.am A lua/lmyoslib.c M lua/lua-ext-console.c M lua/lua-plugin-init.c M lua/lua-plugin.c M lua/lua-plugin.h commit 0f0a0be50b9946429b06357d9f729bbfc358c109 Author: Peng Wu Date: 2010-06-21 13:06:01 +0800 add base.lua A lua/base.lua commit ac1476aabed3efb8c96f45c3eac225ece5376394 Author: Peng Wu Date: 2010-06-18 15:58:01 +0800 fixes compile warnings. M src/ExtEditor.cc commit 1d8521a263f5f83dba2135890833978d246a773d Author: Peng Wu Date: 2010-06-18 13:37:56 +0800 re-factor code. M src/ExtEditor.cc commit fad30945d4f755f4fb5c83c72dacd08d45b827db Author: Peng Wu Date: 2010-06-18 13:07:51 +0800 re-order code sequence. M src/ExtEditor.cc commit 3bf430a7b99edf7445e770e8a810aa3a1c39900a Author: Peng Wu Date: 2010-06-18 12:54:18 +0800 fixes include header. M src/ExtEditor.cc M src/ExtEditor.h commit 083a07dcd61b744d126398a737055928cbfd5778 Author: Peng Huang Date: 2010-06-18 11:37:25 +0800 Fix build errors. M src/ExtEditor.cc M src/ExtEditor.h commit f1944e652c6e4c73b87193c7e8cc82ccb0c35ddd Merge: f1f9363 4009394 Author: Peng Huang Date: 2010-06-18 11:25:15 +0800 Merge remote branch 'epico/lua-plugin' into lua-plugin Conflicts: src/ExtEditor.cc src/ExtEditor.h src/LookupTable.h src/Makefile.am src/PinyinEngine.cc commit 40093940e25ada4c0cf3c258ab49e9ebd32bbc65 Author: Peng Wu Date: 2010-06-18 11:08:36 +0800 fixes multi-line candidate content. M src/ExtEditor.cc commit 870e428c52a32c071d82a580e67dc88d64bbe848 Author: Peng Wu Date: 2010-06-18 11:01:22 +0800 fixes riqi and shijian. M src/ExtEditor.cc commit 7ce996a6aed9d6ce75e31c9a4f9eba73bdd10f14 Author: Peng Wu Date: 2010-06-18 10:45:16 +0800 fixes some typos. M src/ExtEditor.cc commit 62da73fd21c498281f4d9e7bca96db3a96609b14 Author: Peng Wu Date: 2010-06-17 15:17:27 +0800 add label and space key handle. M src/ExtEditor.cc commit d0cf9237364a52aac30ae06bcb8dadf75e02b3ef Author: Peng Wu Date: 2010-06-17 13:07:20 +0800 write select candidate. M src/ExtEditor.cc M src/ExtEditor.h commit f1f93631962b46a8a2744796ebbb9fdc74c981ff Author: Peng Huang Date: 2010-06-17 00:02:11 +0800 Add er in xhe double pinyin schema M scripts/pydict.py M src/DoublePinyinTable.h commit 4894ed5d2db043eff4c9bc4f0fa54093a8b63444 Author: Peng Huang Date: 2010-06-15 00:12:30 +0800 Use gint8 for pinyin id in double pinyin table M scripts/double.py M src/DoublePinyinEditor.cc M src/DoublePinyinTable.h commit 9dbe241f90e55ec7114de2d3352e795841bd2802 Author: Peng Huang Date: 2010-06-14 23:47:36 +0800 Update configure.ac M configure.ac commit b6a3f1fec76b01269677f1b237b6d9cc08317957 Author: Peng Huang Date: 2010-06-14 23:44:27 +0800 Refine code M src/SimpTradConverter.cc commit b41c08e8c74c3995db7ae0b3745d91a2c4195194 Author: Peng Huang Date: 2010-06-14 13:54:25 +0800 Use utf8 string encode M scripts/update-simptrad-table.py M src/PinyinParser.cc M src/SimpTradConverter.cc M src/SimpTradConverterTable.h commit 139a45ffcaa7c09f4003e86b805d3c4bf3f7d406 Author: Peng Huang Date: 2010-06-14 11:09:21 +0800 Add --enable-opencc option M configure.ac commit eb0d395403b53372dbffca12c08107527822f303 Author: Peng Huang Date: 2010-06-13 16:03:08 +0800 refine code M src/DoublePinyinTable.h M src/DynamicSpecialPhrase.h M src/SimpTradConverter.h commit 970b3c307810159b53310ecc741f7683d8f6ec0e Author: Peng Huang Date: 2010-06-13 15:38:36 +0800 Add XiaoHe double pinyin schema M po/ru.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M scripts/double.py M scripts/pydict.py M setup/ibus-pinyin-preferences.ui M src/Config.cc M src/DoublePinyinEditor.cc M src/DoublePinyinTable.h commit b8e83906f859da4e1d31fa7502a94afcfe07504f Author: Peng Huang Date: 2010-06-11 17:26:10 +0800 Improve performance of SimpTradConvert M src/SimpTradConverter.cc commit 90ef953d8523738c8f5be4181a38063095a74ee5 Author: BYVoid Date: 2010-06-10 22:28:04 +0800 Use C++ API of OpenCC M src/SimpTradConverter.cc commit c6fd949534e2ff0e98018327f7f1ff1313a51285 Author: BYVoid Date: 2010-06-10 12:51:13 +0800 Print message when an error occurs in opencc_convert M src/SimpTradConverter.cc commit 957d49989b7a48ad1488168bc1a5fc2a7e7121de Author: Peng Huang Date: 2010-06-10 13:34:18 +0800 Set release = 0 M configure.ac commit 99e5cbcd24fa135cd146e0340875ca994fd08c88 Author: Peng Huang Date: 2010-06-10 07:56:54 +0800 Add class OpenCC to encapsulate opencc M src/SimpTradConverter.cc commit 36e523c6ec97311a4cb73c6c5d713de99cd88656 Merge: 63777ac 26b03fd Author: BYVoid Date: 2010-06-09 22:38:08 +0800 Merge from origin commit 26b03fd0eb5bcc7203ab22fcf5dd050cc63b81c4 Author: Peng Huang Date: 2010-06-09 22:29:31 +0800 Refine some code. M src/SimpTradConverter.cc commit 63777acd3aa2537a7a5f79c62ec3e0ae9c44a169 Author: Peng Huang Date: 2010-06-09 22:29:31 +0800 Refine some code. M src/SimpTradConverter.cc commit 1502908f965cf9327497a2fc672e1b3e9aa2c5f6 Merge: 7beb2b2 6c84399 Author: Peng Huang Date: 2010-06-09 22:14:58 +0800 Merge remote branch 'byvoid/opencc' into opencc Conflicts: src/SimpTradConverter.cc commit 7beb2b25ed9e38aa9ce1dcaf6a1a62a787e7db25 Author: Peng Huang Date: 2010-06-09 22:12:48 +0800 Fix build warnings M src/SimpTradConverter.cc commit 6c84399193cbde0ad740eb114c3463336fa67ef4 Author: BYVoid Date: 2010-06-09 21:20:55 +0800 Modified interface of opencc in SimpTradConveter M src/SimpTradConverter.cc commit e6084e309c5fbeff0def79b04c4fb1e17ddd2e13 Author: Peng Wu Date: 2010-06-09 15:38:40 +0800 refactor code. M src/ExtEditor.cc M src/ExtEditor.h commit 89a3b85e366defaf3bae44173be7e7091939ea41 Author: BYVoid Date: 2010-06-09 14:44:22 +0800 Fix opencc API M src/SimpTradConverter.cc commit ccff065a241ad0b30a5a36e2933a76ba6a0c5402 Author: Peng Wu Date: 2010-06-09 14:33:16 +0800 add some code. M src/ExtEditor.cc M src/ExtEditor.h commit 9fd12b0354161edc98fe39ebf8b6aa4e9269f3f3 Author: Peng Wu Date: 2010-06-09 10:51:59 +0800 refactor key handling. M src/ExtEditor.cc M src/ExtEditor.h commit bb48dfc2d26dfc4fe8bbdf85115f39186906cab2 Author: Peng Huang Date: 2010-06-09 07:56:40 +0800 Use opencc M configure.ac M src/Makefile.am M src/SimpTradConverter.cc M src/SimpTradConverter.h commit 749b90a893831fd542b371393e988fe5e916a214 Author: Peng Wu Date: 2010-06-07 16:48:49 +0800 add backspace/delete key handles. M src/ExtEditor.cc commit 35000f739315aa55123ba1599e04878f578366f1 Author: Peng Wu Date: 2010-06-07 16:22:35 +0800 add key handles. M src/ExtEditor.cc M src/ExtEditor.h commit e92b6f27040f75a102d8b5aa25c8e1d301ce5800 Author: Peng Wu Date: 2010-06-07 14:49:26 +0800 add cursor up/down and page up/down function. M src/ExtEditor.cc M src/ExtEditor.h commit c4701aac1131854cf9db31e80ca18c146d3c4c8e Author: Peng Wu Date: 2010-06-07 11:00:35 +0800 rename sendLookupTable to updateLookupTable. M src/ExtEditor.cc M src/ExtEditor.h commit 5ae0d6290c9cbd7d7bbef065d8eb9ab7ad7ac728 Author: BYVoid Date: 2010-06-05 17:14:36 +0800 Fix a bug of Traditional Chinese translation M po/zh_HK.po M po/zh_TW.po commit d27091f290d3f0a135500565db5b1027336fe815 Author: Peng Huang Date: 2010-06-05 09:15:21 +0800 Remove some debug output M setup/main.py commit 317efbfb9472b4696895baa2b771ba7a8eea681c Author: Peng Huang Date: 2010-06-05 09:14:58 +0800 Move php_2_py.php to scripts/ A scripts/php_2_py.php M src/Makefile.am D src/php_2_py.php commit dacee4558562dd4c64f97fbbcd825c41672b9942 Author: Peng Huang Date: 2010-06-05 09:07:59 +0800 Refine some code M src/BopomofoEditor.cc commit 0479700cde6a86fce05a233f6db7ed5b0991baca Author: Peng Huang Date: 2010-06-05 08:21:05 +0800 Update label of one property M po/ru.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M src/PinyinProperties.cc commit 77d9c68257fbc8de007b1524239d9bdb39346655 Author: Peng Huang Date: 2010-06-05 07:38:04 +0800 Fix some build warning and verify some config item. M src/Bopomofo.h M src/BopomofoEditor.cc M src/Config.cc commit 52442871862a6558cf616601b97c7bd57d00d12a Author: BYVoid Date: 2010-06-04 15:33:15 +0800 Update translation po files M po/ru.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit 8a23fe6b8b4f5028887d797db25ad2aac13d8747 Author: BYVoid Date: 2010-06-04 15:07:13 +0800 Disabled Custom of SelectKey M setup/ibus-pinyin-preferences.ui M setup/main.py M src/Bopomofo.h M src/BopomofoEditor.cc M src/Config.cc M src/Config.h commit 38b97ecdf29a66709a9aa284cd065a99dca30a5e Author: BYVoid Date: 2010-06-02 14:30:20 +0800 Update Config & Preferences UI for BopomofoEditor M setup/ibus-pinyin-preferences.ui M setup/main.py M src/BopomofoEditor.cc M src/BopomofoEditor.h M src/Config.cc M src/Config.h commit 8afcc64f37944b3e8f31b9df1e3058fcbdb1479c Author: BYVoid Date: 2010-06-01 20:56:56 +0800 Improved user interaction of BopomofoEditor M src/BopomofoEditor.cc M src/BopomofoEditor.h M src/LookupTable.h M src/PhoneticEditor.cc M src/PhoneticEditor.h commit da7738330638e147deeef0fc53684249c51f494f Author: Peng Huang Date: 2010-06-05 07:28:26 +0800 Reduce dependency among header files. M src/BopomofoEditor.cc M src/BopomofoEditor.h M src/BopomofoEngine.cc M src/Config.cc M src/Config.h M src/Database.cc M src/Database.h M src/DoublePinyinEditor.cc M src/DoublePinyinEditor.h M src/DynamicSpecialPhrase.cc M src/Editor.cc M src/Editor.h M src/ExtEditor.h M src/FallbackEditor.cc M src/FallbackEditor.h M src/FullPinyinEditor.cc M src/FullPinyinEditor.h M src/PhoneticEditor.cc M src/PhoneticEditor.h M src/PhraseEditor.cc M src/PhraseEditor.h M src/PinyinEditor.cc M src/PinyinEditor.h M src/PinyinEngine.cc M src/PinyinProperties.cc M src/PinyinProperties.h M src/PunctEditor.cc M src/PunctEditor.h M src/RawEditor.h M src/SpecialPhrase.h M src/SpecialPhraseTable.cc M src/SpecialPhraseTable.h commit f01adcdb0a4df396e7c2388f39dff70d1319c098 Author: Peng Huang Date: 2010-06-02 21:52:59 +0800 Add --version -V option M src/Database.cc M src/Database.h M src/Main.cc M src/SpecialPhrase.cc commit 984ce06e5c96603ce3d2edbee008c0df9b8328b1 Author: Peng Huang Date: 2010-05-31 10:56:20 +0800 Refine coding style M src/PhraseEditor.h M src/PinyinProperties.h M src/Pointer.h M src/Regex.h commit c1d6020cf3333b264937ac44132d82e4591adeba Author: Peng Huang Date: 2010-05-31 08:07:39 +0800 Update README M README commit 9fc7711231bc4734541b50087b813e598a6813db Author: Peng Huang Date: 2010-05-30 21:53:34 +0800 Refine coding style M src/Bus.h M src/Property.h commit 502b8e814fe1aa59c7f607a04c363ef0c03e476f Author: Peng Huang Date: 2010-05-30 21:39:08 +0800 Use inline function and const value to replace some macors. M src/BopomofoEditor.cc M src/BopomofoEngine.cc M src/DoublePinyinEditor.cc M src/FallbackEditor.cc M src/PhoneticEditor.cc M src/PinyinEditor.cc M src/PinyinEngine.cc M src/PunctEditor.cc M src/Util.h commit 9211cbcd3d580cf96a2bea7d8dd3ec8beefca9a7 Author: Peng Huang Date: 2010-05-30 21:04:22 +0800 Refine coding style M src/BopomofoEngine.cc M src/BopomofoEngine.h M src/Config.cc M src/Config.h M src/Database.h M src/Editor.h M src/Engine.h M src/FallbackEditor.h M src/LookupTable.h M src/Object.h M src/PhoneticEditor.h M src/Phrase.h M src/PhraseEditor.h M src/PinyinArray.h M src/PinyinEditor.h M src/PinyinEngine.cc M src/PinyinEngine.h M src/PinyinParser.h M src/PinyinProperties.h M src/SpecialPhrase.h M src/String.h M src/Text.h M src/Util.h commit 44f4960fb84fbb3643d523932bc8612bff5ff18c Author: Peng Huang Date: 2010-05-30 14:55:37 +0800 Move python script files to scripts folder A scripts/update-simptrad-table.py A scripts/valid_hanzi.py M src/Makefile.am D src/sctc.py D src/update-simptrad-table.py D src/valid_hanzi.py commit 6b29ccd6523cf87c75d9f2327f930ea94a4e35a0 Author: Peng Huang Date: 2010-05-30 14:45:37 +0800 Fix special phrases option problem in Bopomofo engine. M src/PhoneticEditor.cc M src/SpecialPhraseTable.cc commit 89bb1454a7b7b228170605ffb1d9ee6eecbaa869 Author: BYVoid Date: 2010-05-30 12:12:48 +0800 Optimize dependence of headers M src/BopomofoEngine.cc M src/DynamicSpecialPhrase.cc M src/Engine.cc M src/Engine.h M src/PhoneticEditor.h M src/PinyinEngine.cc M src/PinyinParser.cc M src/PinyinProperties.cc M src/PunctEditor.cc M src/PunctEditor.h M src/SimpTradConverter.cc M src/SpecialPhraseTable.cc M src/SpecialPhraseTable.h commit 89340fe814c2fbf5648b7a3f84cb5ef7bb4e370c Author: Peng Huang Date: 2010-05-29 17:21:25 +0800 Release 1.3.8 M configure.ac commit 25227863e045a89e5a8aa3c626318dcae6bde895 Author: Peng Huang Date: 2010-05-29 11:18:39 +0800 Do not call readDefaultValues in constructor function. M src/Config.cc commit 3950e439f487e88dc519344b24871ebac96e7d86 Author: Peng Huang Date: 2010-05-29 08:22:00 +0800 Write default value to config, if the value does not exist M src/Config.cc commit 700bc273d43b3e9df401defc3a27a2ac86e7b2f4 Author: Peng Huang Date: 2010-05-29 05:51:27 +0800 Remove inline modifier for some functions M src/PhoneticEditor.cc commit e775fe8869e3f294e26bf672306922c907d8589e Author: Peng Huang Date: 2010-05-29 05:42:40 +0800 Add "·" in PunctTable M scripts/punct.py M src/PunctTable.h commit 80d4092bc0f83b0cf9a0292b44fa033cf411fc54 Author: Peng Huang Date: 2010-05-29 05:42:14 +0800 Fix problem in PunctEditor. M src/PunctEditor.cc commit e19ff554f28ed03f01423ff7d9ca6f9bac18f978 Author: Peng Huang Date: 2010-05-28 14:53:48 +0800 Release 1.3.7 M configure.ac commit 4f41efbd5eebba8c9b09c1b46f27a51cbfb13254 Author: Peng Huang Date: 2010-05-28 14:44:01 +0800 Disable special phrases by default in bopomofo engine M src/Config.cc commit ad860b1d8f7a4838e850881cc7111ec9604ec171 Author: Peng Huang Date: 2010-05-28 14:41:32 +0800 Reset engine status when enable again M src/BopomofoEngine.h M src/PinyinEngine.h M src/PinyinProperties.cc M src/PinyinProperties.h commit 701c14239112acd27d0d440f3ea0f21d33d415e1 Author: Peng Huang Date: 2010-05-28 14:30:38 +0800 Refine Config M src/Config.cc commit aa48377217d099e073caa4a85debd871f01bc93e Merge: c1b1a2e 0a9d1b4 Author: Peng Huang Date: 2010-05-28 14:21:04 +0800 Merge remote branch 'byvoid/master' commit c1b1a2e6f38ebfec473b430c1aa3ee692e3b76ec Author: Peng Huang Date: 2010-05-28 14:15:35 +0800 Use different default config values for Pinyin and Bopomofo M src/Config.cc M src/Config.h commit 0a9d1b485c22f30c0023df78ec892cb1d42770a8 Author: BYVoid Date: 2010-05-28 14:00:12 +0800 Update Chinese translation M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit 54ffd76da5dfb02f4f67950c59c55d2ee85eaee0 Author: Peng Huang Date: 2010-05-28 10:09:57 +0800 Use const gchar * const M src/Config.cc commit 0862e8bcb0ce7a5a7471f1e503f6fff053662f69 Author: Peng Huang Date: 2010-05-28 10:08:41 +0800 Use const gchar * to replace macros M src/Config.cc commit e21253f31aa2149a92e0cef06f543e1c00f5817e Author: Peng Huang Date: 2010-05-27 13:51:21 +0800 Switch to Chinese mode when enable M src/BopomofoEngine.h M src/PinyinEngine.h commit ba89d9ef399ce61a63929d44773153191fa71412 Author: Peng Huang Date: 2010-05-27 10:33:16 +0800 Add debian/changelog.in M Makefile.am A debian/changelog.in commit 69247ae60b786af9125390a0b5f9def4107935e8 Author: Peng Huang Date: 2010-05-27 10:16:50 +0800 Fix build error in converting void * to int. M src/BopomofoEditor.cc commit c9850205a602b5d36172d13ee5c2a9ccb02d418e Author: BYVoid Date: 2010-05-26 15:49:50 +0800 Fix a bug of bsearch while converting keyval to Bopomofo M src/BopomofoEditor.cc commit 6d232faeef299048a2d2d4f02aa36614a40e4cc0 Author: Peng Huang Date: 2010-05-26 13:21:34 +0800 Add ppa target for generate debian source packages. M Makefile.am M configure.ac D debian/changelog M debian/control commit 0ba1b74b141c445832c64a17945830aa2da277ee Author: Peng Huang Date: 2010-05-26 10:39:59 +0800 Update po files. M po/zh_CN.po M po/zh_TW.po commit 177313343f4122342cfccccc5e0d7b8e977875f9 Author: Peng Huang Date: 2010-05-25 17:00:54 +0800 Update po files. M po/ru.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po commit a4c5ebefd2fea0ccc140d2ee08f08e7a46a4d8e8 Author: BYVoid Date: 2010-05-25 16:52:33 +0800 Correct some labels M setup/ibus-pinyin-preferences.ui commit b02483cd38e62fbca46a52d9348322088fd6f9b1 Merge: a72b309 72fa95d Author: Peng Huang Date: 2010-05-25 16:30:40 +0800 Merge remote branch 'byvoid/fallbackeditor' commit 72fa95d9454d021a645426e5e7ae7a7ba510251f Author: BYVoid Date: 2010-05-25 16:28:26 +0800 Add Traditional Chinese mode punct for FallbackEditor M src/FallbackEditor.cc M src/FallbackEditor.h commit a72b309c8b890362fe679533a9286415759f9e50 Author: Peng Huang Date: 2010-05-25 16:22:28 +0800 Change some variables' name. M src/Makefile.am commit 4d5e9f2ea2475df2e8fa33a0bdd2561e89060214 Author: Peng Huang Date: 2010-05-25 15:45:42 +0800 Fix make distcheck errors. M src/Makefile.am commit 9f495b05abf522fea51fcea341c425d1a9a73e52 Author: Peng Huang Date: 2010-05-25 13:29:22 +0800 Update po files and adjust ui M po/ru.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/ibus-pinyin-preferences.ui commit f39251e51b09d8b386a903a67dd3cf65dbadf296 Author: Peng Huang Date: 2010-05-25 12:58:50 +0800 Adjust the setup interface. M setup/ibus-pinyin-preferences.ui M setup/main.py commit 6f088990f755857ec1d8f2e0ccc9794aee0fbb23 Author: Peng Huang Date: 2010-05-24 14:21:31 +0800 Use boost::scoped_ptr to maintain Config instances. M src/Config.cc M src/Config.h commit 839285e57e76ddf94b6c77233ed6296ebead2a8c Author: Peng Huang Date: 2010-05-24 13:41:24 +0800 Refine coding style and use guint8 in BopomofoKeyboard.h M scripts/genbopomofokeyboard.py M src/Bopomofo.h M src/BopomofoKeyboard.h M src/Makefile.am commit 9258379bbdaedc5ab48688303d13df8ef4446f9d Author: Peng Huang Date: 2010-05-24 10:05:50 +0800 Use const gchar * to replase std::string for static strings. M src/Config.cc commit e034dcfa68d6652d0a85d7a476db3faf97a70076 Author: Peng Huang Date: 2010-05-24 08:48:00 +0800 Refine modifiers test code for Ctrl + Shift + F M src/BopomofoEngine.cc M src/PinyinEngine.cc M src/Util.h commit 19bb8989b043c292ab22523733bac2ef127f80d2 Merge: c95380c 8b7ac7c Author: Peng Huang Date: 2010-05-24 07:29:27 +0800 Merge remote branch 'byvoid/st_switch_hotkey' commit c95380ca00b797431c8d5b8fdb7ed0bb0773df40 Author: BYVoid Date: 2010-05-23 21:01:53 +0800 Fix a bug on Config & Enable Bopomofo specialized settings M setup/main.py M src/BopomofoEditor.cc M src/Config.cc M src/Config.h M src/PhoneticEditor.cc commit 8b7ac7c654eeaccf1fb45fcca6088eed537bad2b Author: BYVoid Date: 2010-05-23 20:18:45 +0800 Add hotkey Ctrl + Shift + F to toggle simp/trad Chinese input mode M src/BopomofoEngine.cc M src/PinyinEngine.cc commit 11f83b7110549559aa0741fc054aaeb2b2f1f164 Author: Peng Huang Date: 2010-05-23 17:37:09 +0800 Launch setup with different arguments in PinyinEngine & BopomofoEngine M src/BopomofoEngine.cc M src/PinyinEngine.cc commit 86649ed500fc5ce607a2cd36101bc9fc9d749ae6 Author: Peng Huang Date: 2010-05-23 17:35:03 +0800 Use pinyin setup as default M setup/main.py commit 82f0c59bf63523f6c5255ade681a3e43bfc1af2c Author: Peng Huang Date: 2010-05-23 17:07:41 +0800 Add test-pinyin and test-bopomofo targets M setup/Makefile.am commit 83e194de430e70ca46034016f2b172e5ac8a2aeb Author: BYVoid Date: 2010-05-23 17:04:49 +0800 Reorganize setup User Interface M setup/ibus-pinyin-preferences.ui M setup/main.py commit b4e80d22b99d42afdc5067738129910877160704 Merge: 163587a f9a90e8 Author: Peng Huang Date: 2010-05-23 12:48:45 +0800 Merge remote branch 'byvoid/PhoneticEditor' into config Conflicts: src/BopomofoEditor.cc src/Editor.h src/PinyinEditor.cc commit 163587a5185b137df364194d862a671019e3528c Author: Peng Huang Date: 2010-05-23 11:59:06 +0800 Separate Config to PinyinConfig and BopomofoConfig M src/BopomofoEditor.cc M src/BopomofoEditor.h M src/BopomofoEngine.cc M src/Config.cc M src/Config.h M src/DoublePinyinEditor.cc M src/DoublePinyinEditor.h M src/Editor.cc M src/Editor.h M src/ExtEditor.cc M src/ExtEditor.h M src/FallbackEditor.h M src/FullPinyinEditor.cc M src/FullPinyinEditor.h M src/Main.cc M src/PhraseEditor.cc M src/PhraseEditor.h M src/PinyinEditor.cc M src/PinyinEditor.h M src/PinyinEngine.cc M src/PinyinProperties.cc M src/PinyinProperties.h M src/PunctEditor.cc M src/PunctEditor.h M src/RawEditor.h M src/SpecialPhraseTable.cc commit f9a90e87c0de01909659b5c134bd8d0fc5fd14b1 Author: BYVoid Date: 2010-05-23 12:30:57 +0800 Add abstract class PhoneticEditor M src/BopomofoEditor.cc M src/BopomofoEditor.h M src/BopomofoEngine.cc M src/DoublePinyinEditor.cc M src/Editor.h M src/FallbackEditor.cc M src/Makefile.am A src/PhoneticEditor.cc A src/PhoneticEditor.h M src/PinyinEditor.cc M src/PinyinEditor.h M src/PinyinEngine.cc M src/PunctEditor.cc M src/Util.h commit d30c3eb38d344234f0c2b4c64b7ade8fe32be667 Author: Peng Huang Date: 2010-05-23 08:11:09 +0800 Add BopomofoKeyboard.h in Makefile.am M src/Makefile.am commit 97e6b06bfbff6e97f34927abfb68ca787a04e81c Author: BYVoid Date: 2010-05-20 16:20:08 +0800 Add keyboard mappings for Bopomofo A scripts/genbopomofokeyboard.py M src/BopomofoEditor.cc M src/BopomofoEditor.h A src/BopomofoKeyboard.h commit 2850ed99948e24996e494ca85e4520b28eb6e7c9 Author: Peng Huang Date: 2010-05-20 14:12:59 +0800 PunctEditor.c: reset editor, when commit some text to application M src/PunctEditor.cc commit 7b9b5d6855992dc5115e1ba16a1c12ed708328b2 Author: Peng Huang Date: 2010-05-20 13:03:28 +0800 Refine coding style M src/Bopomofo.h M src/BopomofoEngine.h M src/Database.h M src/Engine.h M src/ExtEditor.h M src/FallbackEditor.h M src/PinyinEngine.h M src/PinyinParser.h M src/PunctEditor.h M src/RawEditor.h M src/Types.h commit 01b5e9f5177b1f2c98ddbc80c4d120a775ea2f8d Author: Peng Huang Date: 2010-05-20 13:00:21 +0800 Add copyright header in some python file M setup/main.py M setup/version.py.in commit 7bde3870c152ed24d81a53fbcb658ec223e35f52 Author: Peng Huang Date: 2010-05-20 12:56:48 +0800 Remove WideString.h D src/WideString.h commit f52e95706d705509320a84c9cc3383ac3adf7027 Author: Peng Huang Date: 2010-05-20 12:54:10 +0800 Add BYVoid in copyright header for some files M src/Bopomofo.h M src/BopomofoEditor.cc M src/BopomofoEditor.h M src/BopomofoEngine.cc M src/BopomofoEngine.h M src/PunctEditor.cc M src/PunctEditor.h commit b1a91ad39f89efcaeb7bd01c3877b7fea0e6d1c7 Author: Peng Huang Date: 2010-05-20 12:49:05 +0800 Add copyright header A scripts/addheader.py A scripts/header M src/Bopomofo.h M src/BopomofoEditor.cc M src/BopomofoEditor.h M src/BopomofoEngine.cc M src/BopomofoEngine.h M src/Bus.h M src/Config.cc M src/Config.h M src/Database.cc M src/Database.h M src/DoublePinyinEditor.cc M src/DoublePinyinEditor.h M src/DoublePinyinTable.h M src/DynamicSpecialPhrase.cc M src/DynamicSpecialPhrase.h M src/Editor.cc M src/Editor.h M src/Engine.cc M src/Engine.h M src/ExtEditor.cc M src/ExtEditor.h M src/FallbackEditor.cc M src/FallbackEditor.h M src/FullPinyinEditor.cc M src/FullPinyinEditor.h M src/HalfFullConverter.cc M src/HalfFullConverter.h M src/LookupTable.h M src/Main.cc M src/Object.h M src/Phrase.h M src/PhraseArray.h M src/PhraseEditor.cc M src/PhraseEditor.h M src/PinyinArray.h M src/PinyinEditor.cc M src/PinyinEditor.h M src/PinyinEngine.cc M src/PinyinEngine.h M src/PinyinParser.cc M src/PinyinParser.h M src/PinyinProperties.cc M src/PinyinProperties.h M src/Pointer.h M src/Property.h M src/PunctEditor.cc M src/PunctEditor.h M src/RawEditor.h M src/Regex.h M src/Signal.h M src/SimpTradConverter.cc M src/SimpTradConverter.h M src/SpecialPhrase.cc M src/SpecialPhrase.h M src/SpecialPhraseTable.cc M src/SpecialPhraseTable.h M src/String.h M src/Text.h M src/Types.h M src/Util.h M src/WideString.h commit d52ce00ad6718933db0df16451a8ea0a9e15e505 Author: Peng Huang Date: 2010-05-20 11:07:30 +0800 Adjust Phrase struct M src/Database.cc M src/Phrase.h commit db8a93b8dfce99abfd827f34d20abbeff2538d7b Author: Peng Huang Date: 2010-05-20 10:18:49 +0800 Adjust struct Pinyin M scripts/genpytable.py M src/Database.cc M src/PinyinParserTable.h M src/Types.h commit e50e58a4739793c72ff50ddd9965ad1488b3eacc Author: Peng Huang Date: 2010-05-20 10:03:36 +0800 Use guint8 for pinyin id M src/Phrase.h commit 1c29151417b47765f1ecd4beffda2f9f4d3cfa9a Author: Peng Huang Date: 2010-05-19 22:27:48 +0800 Set CFLAGS and CXXFLAGS in distcheck M Makefile.am commit 1639e147b1f247ff7e81799f125d4cd9d2f0435c Author: Peng Huang Date: 2010-05-19 22:04:47 +0800 Remove slots in Engines. M src/BopomofoEngine.cc M src/BopomofoEngine.h M src/PinyinEngine.cc M src/PinyinEngine.h commit 5b3ed4eedf0163cf87e697675805e0a73ea974c2 Author: Peng Huang Date: 2010-05-19 21:55:49 +0800 Use StaticText M src/PunctEditor.cc commit f276b2072f2c9b2b344a673486bb7907d7c8ac44 Author: Peng Huang Date: 2010-05-19 21:43:56 +0800 Refine coding style M src/Phrase.h commit b7afcc3ca1e9a7efac29f7f10da008b6ec052a91 Author: Peng Huang Date: 2010-05-19 21:43:39 +0800 Use guint8 for pinyin id M src/Types.h commit bfbc50af2a613232cec8dd4e776c0ac0e433688b Author: Peng Huang Date: 2010-05-19 17:29:49 +0800 Fix build errors in NetBSD M src/PinyinEditor.cc commit b9a2255b4478ec5ab3d3793462e89fc98a498393 Author: Peng Huang Date: 2010-05-19 13:39:10 +0800 Update Copyright information M Makefile.am M configure.ac M data/Makefile.am M data/db/Makefile.am M data/db/android/Makefile.am M data/db/open-phrase/Makefile.am M data/icons/Makefile.am M m4/Makefile.am M po/ru.po M po/zh_CN.po M po/zh_HK.po M po/zh_TW.po M setup/Makefile.am M setup/ibus-pinyin-preferences.ui M src/Makefile.am commit 5293d9fa8c71471c8fa7e94b05e4ea7bfdff2538 Author: Peng Huang Date: 2010-05-19 13:21:00 +0800 Clear the lookup table when cursor == 0 M src/PunctEditor.cc commit ca5db95f90da616c7a9db0a57a2e9ae0a77d7dc0 Author: Peng Huang Date: 2010-05-19 12:58:55 +0800 Do not use color for candidates of PunctEditor M src/PunctEditor.cc commit f23f898e21418421bd59b9d58cbb328dacded57c Author: Peng Huang Date: 2010-05-19 12:45:27 +0800 Fix some bugs in PunctEditor M src/PunctEditor.cc commit 4eb4f42bfa5b456e6fc176bfde4fb1bc4cbb78bd Author: Peng Huang Date: 2010-05-19 12:08:45 +0800 Fix crash when move curso in pinyin "pi'ao" M src/PinyinParser.cc commit ed0651e5dba02d4629811aad85eedb85ad9d1700 Author: Peng Huang Date: 2010-05-19 11:19:27 +0800 Improve punct editor. M src/LookupTable.h M src/PunctEditor.cc M src/PunctEditor.h commit b987eef1b9d4768f3ea458189afb660afdc704cb Author: Peng Wu Date: 2010-05-18 15:12:10 +0800 change fillCommandCandidates behaviour. M src/ExtEditor.cc commit 5dba4f1d3e7eb38c85d550d71f36f63c5b17496a Author: Peng Wu Date: 2010-05-18 14:57:15 +0800 rename ibus_engine_plugin_free part 2. M src/ExtEditor.cc commit f5a9d67dbcd11d289c84ed8cbd5dee82d0f6afe4 Author: Peng Wu Date: 2010-05-18 14:56:01 +0800 rename ibus_engine_plugin_free. M lua/lua-plugin.c M lua/lua-plugin.h commit f29d0e8c70bd9a7744be7dfe3e79a71e20f07f05 Author: Peng Wu Date: 2010-05-18 14:54:23 +0800 add fill candidates. M src/ExtEditor.cc commit 9702be36351fbf1cd7a7be2a6bd27415880c3b9a Author: Peng Wu Date: 2010-05-17 16:08:09 +0800 add update auxiliary and fill candidates label according to m_mode. M src/ExtEditor.cc commit 717ec8f7335511d33a2a0f054bb1eb141c945a79 Author: Peng Wu Date: 2010-05-13 18:56:13 +0800 add aux and preedit text. M src/ExtEditor.cc commit 6d36d1133befbd5dc4e62ba7443222c45027a6f3 Author: Peng Wu Date: 2010-05-12 17:03:55 +0800 fixes retval of function processKeyEvent. M src/ExtEditor.cc commit a63bb1b2052afb203783d50eb41e6801d14710ae Author: Peng Wu Date: 2010-05-12 16:46:27 +0800 enable ext mode in pinyin engine. M src/PinyinEngine.cc commit f52a8aaf5a8fada6a2b2e203dd50c1aaa27037b5 Author: Peng Wu Date: 2010-05-12 16:45:28 +0800 rename m_input to m_text and m_cursor_pos to m_cursor. M src/ExtEditor.cc M src/ExtEditor.h commit 64f12372db7e24af20d000d399d73d74a2667c35 Author: Peng Wu Date: 2010-05-12 13:44:25 +0800 clean up code. M src/ExtEditor.cc commit 539d0d0bb455ebc79477a4adc3c51520c95beec0 Author: Peng Wu Date: 2010-05-11 19:03:11 +0800 refact code into updateStateFromInput and fixes compiling errors. M src/ExtEditor.cc M src/ExtEditor.h commit 4a56a37823f7cf93a89f9fea0afedcdbe3ce69d1 Author: Peng Wu Date: 2010-05-11 14:48:25 +0800 add m_cursor_pos. M src/ExtEditor.cc M src/ExtEditor.h commit cedc8d5c6968deae7936a59a608184d91edd5121 Author: Peng Wu Date: 2010-05-10 15:56:32 +0800 begin to implement input logic for ibus-pinyin lua module. M src/ExtEditor.cc M src/ExtEditor.h commit 2f0cb527ea398e0ee8debe86231fd20a0e12d30f Author: Peng Wu Date: 2010-05-07 12:55:13 +0800 add const modifier. M lua/lua-ext-console.c M lua/lua-plugin.h commit d3df4ef4811c8a6ef1c5660b8e63d4d916b0369a Author: Peng Wu Date: 2010-05-07 12:53:36 +0800 add const modifier. M src/ExtEditor.cc commit 209d06b04a13247ffd31895e9e87d59c25fd3b2d Author: Peng Wu Date: 2010-05-07 12:51:24 +0800 refactor lua plugin interface. M lua/lua-ext-console.c M lua/lua-plugin.c M lua/lua-plugin.h commit e63b0016502ff2f535894006c67364ed8fa48ef0 Author: Peng Wu Date: 2010-05-07 11:15:20 +0800 begin to modify lua plugin. M lua/lua-plugin.h commit 31a21dbb7c449813d61459a1a232dbbd0b576d1e Author: Peng Wu Date: 2010-05-07 11:12:27 +0800 begin to write input logic. M src/ExtEditor.cc M src/ExtEditor.h commit e2295b71251476650fb376a3d973c53e0c319bdc Author: Peng Wu Date: 2010-05-06 16:24:28 +0800 add fillCommandCandidates(string) implementation. M src/ExtEditor.cc commit 5cf2d6572742d095af07c84182fb3ae4e96f7602 Author: Peng Wu Date: 2010-05-05 15:05:11 +0800 define ExtEditor interface. M src/ExtEditor.cc M src/ExtEditor.h commit 695cd737ebf281f6a030ec22707a6717df455614 Author: Peng Wu Date: 2010-05-05 11:21:14 +0800 add appendLabel for LookupTable. M src/LookupTable.h commit 233b0a7bc8f74d2e14996364998db8ef3c2e747b Author: Peng Wu Date: 2010-05-05 11:18:10 +0800 add comments M src/ExtEditor.cc M src/ExtEditor.h commit 1e1e7075b63f56117c9e7646ac78efa8d4adeb31 Author: Peng Wu Date: 2010-05-04 15:23:17 +0800 define ext editor interface. M src/ExtEditor.cc M src/ExtEditor.h commit c498c0a73b72be8d1dc3a492e88ce52246ec8d67 Author: Peng Wu Date: 2010-05-04 13:37:29 +0800 begin to integrate lua ext. M src/ExtEditor.h M src/Makefile.am commit f49a84c21e00e023a2732aea6156e5727b373618 Author: Peng Wu Date: 2010-04-23 14:13:01 +0800 dump all arguments for register_trigger. M lua/lua-plugin-init.c commit 090a378d1b42c5d72615b5d4a7c3bf93d99a2078 Author: Peng Wu Date: 2010-04-20 16:01:29 +0800 remove lua_plugin_retrieve_plugin declaration on lua-plugin.h M lua/lua-plugin.h commit 3e179a84e4e08b19b2bff856b1af8f8c6fefb35e Author: Peng Wu Date: 2010-04-20 15:57:27 +0800 do some clean up on lua-plugin.h M lua/lua-plugin.c M lua/lua-plugin.h M lua/test-lua-plugin.c commit 077892da6d8545bb487ff58e79b1d5a9d892ca0c Author: Peng Wu Date: 2010-04-20 15:53:21 +0800 fixes Makefile.am M lua/Makefile.am commit 0ec7c3edfd6ec32aaf6cd37e745568a82bf9e565 Author: Peng Wu Date: 2010-04-20 15:48:43 +0800 add lua-ext-console.c M lua/Makefile.am A lua/lua-ext-console.c M lua/lua-plugin.c M lua/lua-plugin.h commit bdc0c91efa8dd6532ad550b46cf3a3756c7662dc Author: Peng Wu Date: 2010-04-16 16:36:08 +0800 add ibus_engine_plugin_get_candidate and enhance ibus_engine_plugin_get_retval. M lua/lua-plugin.c commit f2411d43bf3a5433930c57809a386703ea31f50f Author: Peng Wu Date: 2010-04-16 16:00:43 +0800 add ibus_engine_plugin_call. M lua/lua-plugin.c M lua/lua-plugin.h commit 560cdb15c6c238252d49c362a631de35d05713c2 Author: Peng Wu Date: 2010-04-16 14:10:04 +0800 write ibus_engine_plugin_load_lua_script. M lua/lua-plugin.c M lua/lua-plugin.h M lua/test-lua-plugin.c commit 7cf2505a5790195814e05e4a26f40fe8319d5e67 Author: Peng Wu Date: 2010-04-14 17:56:47 +0800 lua extension (ime.register_command) in progress. M lua/lua-plugin-init.c M lua/lua-plugin.c M lua/lua-plugin.h commit aae2c566368ddd45a60b47a4b571f845d7a19b01 Author: Peng Wu Date: 2010-04-13 16:31:03 +0800 re-factor lua-plugin interface. M lua/lua-plugin.h commit c3bc5bd52879a85a7a6bfd4e2baefbe7cf37bc01 Author: Peng Wu Date: 2010-04-13 15:55:07 +0800 ime register command in progress. M lua/lua-plugin-init.c M lua/lua-plugin.c M lua/lua-plugin.h M lua/test-lua-plugin.c commit 604d367fc223e142617b93f550dc7aa10f859848 Author: Peng Wu Date: 2010-04-11 15:29:11 +0800 code cleanup. M lua/lua-plugin.c M lua/test-lua-plugin.c commit 25776642382b9e780e197b9f85aeb5aeb7852c7b Author: Peng Wu Date: 2010-04-11 15:26:30 +0800 refactor lua-plugin M lua/lua-plugin.c M lua/lua-plugin.h M lua/test-lua-plugin.c commit 83ae73bf667347973ce53f8124a64310b00b0805 Author: Peng Wu Date: 2010-04-11 15:10:41 +0800 refactor lua-plugin gobject interface. M lua/lua-plugin-init.c M lua/lua-plugin.c M lua/lua-plugin.h commit 7505cd8f7c7298f6db1dc1ad665b082810234944 Author: Peng Wu Date: 2010-04-11 15:01:11 +0800 add gobject interface for lua-plugin. M lua/Makefile.am M lua/lua-plugin-init.c A lua/lua-plugin.c M lua/lua-plugin.h M lua/test-lua-plugin.c commit 07351a7e974d192a1b93679d518be75cb764fdd2 Author: Peng Wu Date: 2010-04-11 13:43:52 +0800 add comment. M lua/lua-plugin-init.c commit fc07e4c1311e9ed7702fac1f0bd6882804d1a362 Author: Peng Wu Date: 2010-04-07 14:52:32 +0800 change isnil to isnone. M lua/lua-plugin-init.c commit d6d3f471888f57f0f5758189da1573cb5d93931f Author: Peng Wu Date: 2010-04-07 14:28:53 +0800 add arguments check. M lua/lua-plugin-init.c commit 693daa8e9d463ffae61b398243ec97c89fd896eb Author: Peng Wu Date: 2010-04-07 14:04:46 +0800 sketch for ime_register_trigger, begin to write ime_register_command. M lua/lua-plugin-init.c commit c27eacbbed0415fd97bf5521b430ffe54802646f Author: Peng Wu Date: 2010-04-07 11:06:11 +0800 interface changed to lua_plugin_context. M lua/lua-plugin.h commit 55e2c5679defc8184a0ba69f31fbf4d77d5eae8f Author: Peng Wu Date: 2010-04-06 16:50:28 +0800 add table check in join_string. M lua/lua-plugin-init.c M lua/test.lua commit f0caf8ca6f53961952bae84b678dce76762b4ed3 Author: Peng Wu Date: 2010-04-06 15:17:52 +0800 change ime_join_string behavior. M lua/lua-plugin-init.c commit a3987f2e2a8fea3916ee410a3679bdf3d57b4188 Author: Peng Wu Date: 2010-04-06 13:22:12 +0800 change ime_join_string implementation. M lua/lua-plugin-init.c M lua/test.lua commit bfee085f2be86e3bd16a96c8dd70c3cc937852b1 Author: Peng Wu Date: 2010-04-06 12:53:36 +0800 change tolstring to checklstring. M lua/lua-plugin-init.c M lua/test-lua-plugin.c M lua/test.lua commit 113f004efdbf39ef37a1758b862117b38ba4fedf Author: Peng Wu Date: 2010-04-01 16:34:21 +0800 begin lua-plugin integration. M lua/lua-plugin.h M lua/test-lua-plugin.c commit 870473405c70bb592d80cbe291acf1470dc5468e Author: Peng Wu Date: 2010-03-31 17:45:59 +0800 add some test cases and safe arguments check. M lua/lua-plugin-init.c M lua/test.lua commit 3295f6ac1d2b7232926840b1285703eae93f2573 Author: Peng Wu Date: 2010-03-30 15:48:28 +0800 add more test case. M lua/test.lua commit 1a65af9f22a58dd4534fcfe9142cfd4fe0162626 Author: Peng Wu Date: 2010-03-30 15:35:46 +0800 add ime.parse_mapping func. M lua/lua-plugin-init.c M lua/test.lua commit 43c4d46425e43907570ca09d880a9f03a90a419c Author: Peng Wu Date: 2010-03-29 18:51:18 +0800 add more test case and fixes join_string with empty table. M lua/lua-plugin-init.c M lua/test.lua commit c99ffc77af565bbe84981fa8b9fd881a21dd5f42 Author: Peng Huang Date: 2010-03-31 10:54:40 +0800 Integrate lua M Makefile.am M configure.ac A lua/Makefile.am commit 8f63f9f3362e97377bcad584ecb5fb4ac75d5223 Author: Peng Wu Date: 2010-03-26 17:33:20 +0800 add new test cases for split/join. M lua/lua-plugin-init.c M lua/test.lua commit 0bcdae428741bd8e12692df0cb3f93efb76fdd8e Author: Peng Wu Date: 2010-03-25 15:37:32 +0800 add split_string function. M lua/lua-plugin-init.c commit 43b0f21525db609c86800064f176f95cf3e49be1 Author: Peng Wu Date: 2010-03-24 14:43:47 +0800 the initial ime_join_string implement and add lua_pop for trim_string functions. M lua/lua-plugin-init.c commit a1a3c7e061376b6426c12f29b4131785a27e943b Author: Peng Wu Date: 2010-03-22 10:00:22 +0800 change luaL_checklstring to lua_tolstring. M lua/lua-plugin-init.c M lua/test.lua commit 9235290adcd1ca1a7c1de6bafc1a275f677aa01f Author: Peng Wu Date: 2010-03-15 18:00:30 +0800 add some check on IME_TRIM_PRECHECK. M lua/lua-plugin-init.c commit c6705a7f4e28568ad42a479d0f41d854f0e111d2 Author: Peng Wu Date: 2010-03-15 17:28:52 +0800 add retval to lua_plugin_fini. M lua/lua-plugin-init.c commit d77fa9a821620d1b645394ab7871bd99232882a9 Author: Peng Wu Date: 2010-03-15 17:03:13 +0800 change to pushliteral in ime_get_version. M lua/lua-plugin-init.c commit 38e3513af3026135910647a5b09eee6b51d04a3c Author: Peng Wu Date: 2010-03-15 16:06:18 +0800 refactor code for checking condition. M lua/lua-plugin-init.c commit 5ce8a5206d8778a6513b74ccf3a3421cc86b6d4c Author: Peng Wu Date: 2010-03-15 15:54:45 +0800 add ime.trim*. M lua/lua-plugin-init.c commit ea36603015ab31469aa59eff8ee09880d006f83d Author: Peng Wu Date: 2010-03-11 10:45:43 +0800 lua plugin hello world is ok. M lua/lua-plugin-init.c A lua/lua-plugin.h A lua/test-lua-plugin.c A lua/test.lua commit a00e941af1ecef13149d8ca2adfbfca3b6725f26 Author: Peng Wu Date: 2010-03-09 18:38:14 +0800 initial code for lua plugin. A lua/lua-plugin-init.c commit 1737c1be0c98d5f17bef6fca5151de0a4278f04b Author: Peng Huang Date: 2010-05-19 08:10:39 +0800 Add some half chars in PunctTable M scripts/punct.py M src/BopomofoEngine.cc M src/PinyinEngine.h M src/PunctTable.h commit 41b2b52a009f38f47df37bb58f7e76a8ecfba013 Author: Peng Huang Date: 2010-05-19 08:10:08 +0800 Add PunctMode in PinyinEngine. M src/PinyinEngine.cc commit dd2ae1fb20d75f8f248effc6803f833ad80d0d3a Author: Peng Huang Date: 2010-05-18 20:50:13 +0800 Unify the coding style M src/BopomofoEditor.cc M src/PinyinParser.cc commit 3ceab924f440a0537caf89c8328fa5d78f3b3a2c Author: BYVoid Date: 2010-05-19 00:33:22 +0800 Fix a bug of Bopomofo parse M src/BopomofoEditor.cc M src/PinyinParser.cc commit 670cf5d77a038114579c461234832d1032bdda29 Author: BYVoid Date: 2010-05-18 22:27:09 +0800 Fix a bug of displaying tone characters in BopomofoEditor M setup/ibus-pinyin-preferences.ui M src/BopomofoEditor.cc M src/Main.cc M src/pinyin.xml.in.in commit 142b740249c74f0c6352c774fc7c44debeafb631 Author: BYVoid Date: 2010-05-18 20:26:20 +0800 Add zh_TW & zh_HK language support M po/LINGUAS M po/ru.po M po/zh_CN.po A po/zh_HK.po A po/zh_TW.po commit 35cfad6072d4fb875f7406cdee89ea91e11f93c0 Author: Peng Huang Date: 2010-05-18 19:11:33 +0800 Add BYVoid in AUTHORS M AUTHORS M src/Main.cc M src/pinyin.xml.in.in commit bdca1d82764a747e9869f63f3040ef3edfc8333e Author: Peng Huang Date: 2010-05-18 19:11:13 +0800 Remove CustomPhrases in POTFILES M po/POTFILES.in commit 51438d761eb28fc9c19efc7eef82681ebdc86e65 Merge: 28d811b c5aefb2 Author: Peng Huang Date: 2010-05-17 10:41:11 +0800 Merge branch 'bopomofo' Conflicts: ibus-pinyin.spec.in commit c5aefb2ca27010474d12032f51be840c92ed4770 Author: Peng Huang Date: 2010-05-17 10:01:31 +0800 Add Bopomof in spec file. M ibus-pinyin.spec.in commit d153239dd1681837f445719cacca045a43c9d877 Author: Peng Huang Date: 2010-05-17 10:01:11 +0800 register properties in focusIn M src/BopomofoEngine.cc M src/BopomofoEngine.h M src/Engine.h M src/PinyinEngine.h commit 90bb72d5cea0f36397d477251e89ef7e6f627ddc Author: Peng Huang Date: 2010-05-17 09:53:55 +0800 Reset PunctEditor when press Esc M src/PunctEditor.cc commit b46bb4bd7443dcdef7fb790fde5138b9f9f36007 Author: Peng Huang Date: 2010-05-17 09:47:52 +0800 Include PunctTable.h in tarball M src/Makefile.am commit 70c8b03d0e5112fc1fcd9fcc557ff5714767c8bd Author: Peng Huang Date: 2010-05-17 07:23:36 +0800 Do not allow input chars more than 2 M src/Main.cc M src/PunctEditor.cc commit 9e4631290f6c40a74ba1403644b8536fe065ca91 Author: Peng Huang Date: 2010-05-17 07:17:20 +0800 Refine some code. M src/PunctEditor.cc commit acf0cdaca6d0c75359f90f4a888c6c99fc47c49b Author: Peng Huang Date: 2010-05-17 07:12:59 +0800 Fix the order of punct_table M scripts/punct.py M src/PunctEditor.cc M src/PunctTable.h commit 8df3e417526b436fadfb7eeced6bde5cc24577e0 Author: BYVoid Date: 2010-05-16 23:02:07 +0800 implement PunctEditor for BopomofoEngine M src/BopomofoEditor.cc M src/PunctEditor.cc M src/PunctEditor.h commit af19867e06534726ed91ab6c7b17bc5214ac53fa Author: Peng Huang Date: 2010-05-16 13:01:27 +0800 Add PunctEditor.h A src/PunctEditor.h commit b3ac1d2c04008c989c215b2ff3e9f84585bc76ce Author: Peng Huang Date: 2010-05-16 12:57:00 +0800 Add PunctTable in Makefile.am M src/Makefile.am commit 40b35c83033ba26a661731f44405280ed91bd48a Author: Peng Huang Date: 2010-05-16 12:42:22 +0800 Add PunctTable.h A scripts/genpuncttable.py M src/PunctEditor.cc A src/PunctTable.h commit 3cd7a8f7f2741d966fa9bea2dcaced4376c2e277 Author: Peng Huang Date: 2010-05-16 11:45:58 +0800 Add punct.py A scripts/punct.py commit bb8f130fb94108cb1fa6863d14e1b2cd165a1594 Author: Peng Huang Date: 2010-05-16 09:33:59 +0800 Add MODE_PUNCT in BopomofoEngine M src/BopomofoEngine.cc M src/BopomofoEngine.h M src/Makefile.am A src/PunctEditor.cc commit ea3c000a332c8dd67147f479e1fdc13747d560c2 Author: Peng Huang Date: 2010-05-16 09:16:48 +0800 Fix two build warnings. M src/BopomofoEditor.cc commit 98e590baa65b9fb133f71994877cd2068c505d7f Author: Peng Huang Date: 2010-05-16 08:42:44 +0800 Refine coding style in Database.cc M src/Database.cc commit 28d811bfa3676d1f96ec7b366caedececb6cc60b Author: Peng Huang Date: 2010-05-14 21:32:40 +0800 Remove PinyinParserTable.h.open-phrase D src/PinyinParserTable.h.open-phrase commit 301be52c7bc6c15fb7d41ce4d8d1330ec8af737e Author: Peng Huang Date: 2010-05-14 19:25:42 +0800 Add bopomofo icon M data/icons/Makefile.am A data/icons/ibus-bopomofo.svg M src/Main.cc M src/pinyin.xml.in.in commit 3537d0592fdf92a900c285980255aba39440a7e8 Author: Peng Huang Date: 2010-05-14 16:58:40 +0800 Add date string in version for testing M configure.ac commit ef13f112bc1a9a837bc116abe691670dd2c73f20 Author: BYVoid Date: 2010-05-14 17:26:35 +0800 Add Input mode/Select mode for Bopomofo M src/BopomofoEditor.cc M src/BopomofoEditor.h M src/BopomofoEngine.cc M src/PinyinParser.cc commit 6b4b7a6a082851ac734de624602dd4e7d013ab95 Author: BYVoid Date: 2010-05-14 10:55:49 +0800 Allow multiple tone character M src/BopomofoEditor.cc commit 35e5f6a5e90dde1b3683774247a4d9bb304bcc3c Author: Peng Huang Date: 2010-05-14 10:44:01 +0800 Create BopomofoEngine A src/BopomofoEngine.cc A src/BopomofoEngine.h M src/Engine.cc M src/Engine.h M src/Makefile.am M src/PinyinEngine.cc M src/PinyinEngine.h commit c18e74986fb1e608e313497d3b3914ab22a4854b Author: Peng Huang Date: 2010-05-13 19:15:39 +0800 Make bopomofo as a separate input engine. M src/BopomofoEditor.cc M src/Engine.cc M src/Engine.h M src/Main.cc M src/PinyinEngine.cc M src/PinyinEngine.h M src/pinyin.xml.in.in commit 44eb3a3beaaf8a9ee66a633783b3e6dd03a9e1f1 Author: BYVoid Date: 2010-05-13 17:41:57 +0800 Bopomofo M src/BopomofoEditor.cc M src/BopomofoEditor.h M src/PinyinEditor.cc M src/PinyinEngine.cc M src/PinyinParser.cc M src/PinyinParser.h commit 98dae8ce422354031a82d940b1e2a4086bfb621d Author: Peng Huang Date: 2010-05-13 16:19:49 +0800 Refine some descriptions in spec file M ibus-pinyin.spec.in commit a360dbe761107cd98530c24f2c115dd5c7613dca Author: BYVoid Date: 2010-05-13 11:18:30 +0800 add Bopomofo Support A src/Bopomofo.h A src/BopomofoEditor.cc A src/BopomofoEditor.h M src/Makefile.am M src/PinyinEditor.cc M src/PinyinEditor.h M src/PinyinEngine.cc M src/PinyinParser.cc M src/PinyinParser.h M src/PinyinParserTable.h commit 5a3d87178bf076bd7d2e59ff53d5eb49f36f3a1a Author: Peng Huang Date: 2010-05-12 20:44:00 +0800 Use wchar_t for bopomofo M scripts/genpytable.py M src/PinyinParserTable.h M src/Types.h commit e37e15be51cab2dfe85785b17a4707c09de402cd Author: Peng Huang Date: 2010-05-12 17:34:38 +0800 Generate some fuzzy bopomofo M scripts/bopomofo.py M scripts/genpytable.py M src/PinyinParserTable.h commit 0fe0c8fdb5c2ce9090394034a505427b1aeab176 Author: Peng Huang Date: 2010-05-12 15:35:56 +0800 Generate PinyinParserTable with bopomofo A scripts/bopomofo.py M scripts/genpytable.py M src/PinyinParserTable.h M src/Types.h commit dbd5b6db458766db85d25e26303c2ad8490f0d53 Author: Peng Huang Date: 2010-05-11 15:00:23 +0800 Remove unused classes D src/CustomPhrase.cc D src/CustomPhrase.h M src/Makefile.am commit 5aaa19db584a081a1aa33b020e9151a582beaa6b Author: Peng Huang Date: 2010-05-10 16:27:19 +0800 Does not include SimpTradConverter.h M src/PinyinEngine.cc commit 1eddfed90792799379b7fb17f4f29c493ba062c9 Author: Peng Huang Date: 2010-05-10 15:49:57 +0800 Drop indexes before create indexes. M data/db/create_index.sql commit 3bdcd64dec6955fae09a828ae72e50ddd4fce84f Author: Peng Huang Date: 2010-05-10 15:32:25 +0800 Create index if not exists M data/db/create_index.sql commit 875cfae16797f441fa60dc9976fdf34ff8f40007 Author: Peng Huang Date: 2010-05-07 22:26:36 +0800 Refine rpm packages: ibus-pinyin be split into ibus-pinyin, -db-android and -db-open-phrase. M ibus-pinyin.spec.in commit 724c443b776ded963d3804c2468a8b260bbebd1e Author: Peng Huang Date: 2010-05-03 15:47:58 +0800 Add macro DOUBLE_PINYIN_ZGPY M src/DoublePinyinTable.h commit 1e1a3dcf395ef25860af696ed99528bfc1a33091 Author: Peng Huang Date: 2010-05-03 15:41:13 +0800 Release 1.3.5 M configure.ac commit 0e1f4a854482344e08fecbed9efe404063158d74 Author: Peng Huang Date: 2010-05-03 15:08:59 +0800 Fix problem in parse double pinyin M src/DoublePinyinEditor.cc M src/PinyinParser.cc commit 26b0f41caafe71d918d4c77a3f68fd31afd9436c Author: Peng Huang Date: 2010-05-03 14:24:24 +0800 Add MS double pinyin back M src/DoublePinyinTable.h commit d3724f8e4698acee7505e0270ef4723a160d0d59 Author: Peng Huang Date: 2010-05-02 20:20:34 +0800 support correct: van => uan, vn => un, ven=>un, vang => uang M scripts/genpytable.py M setup/ibus-pinyin-preferences.ui M src/Config.cc M src/PinyinParserTable.h M src/Types.h commit 8ee87ff84b8832ffa38a5b750f0c53dd3dabf3ae Author: Peng Huang Date: 2010-05-02 18:58:57 +0800 Support correct jv,qv,xv,yv to ju,qu,xu,yu M configure.ac M scripts/genpytable.py M setup/ibus-pinyin-preferences.ui M setup/main.py M src/Config.cc M src/DoublePinyinEditor.cc M src/DoublePinyinTable.h M src/PinyinParserTable.h M src/Types.h commit 9f34b7fd069299791a3dff1a205014a4b42759e8 Author: Peng Huang Date: 2010-04-28 18:48:11 +0800 Refine python script M src/update-simptrad-table.py commit 65303df35cc8db82810faa24235d6728234ee895 Author: Peng Huang Date: 2010-04-28 17:47:41 +0800 Add sctc A src/sctc.py M src/update-simptrad-table.py commit fdf98223a7219a698d0795b8acfa2064999061be Author: Peng Huang Date: 2010-04-25 20:28:31 +0800 Use macro VERION M src/Main.cc commit 67bfe008d98d8ee9b916956f2c0705a41aad65b5 Author: Peng Huang Date: 2010-04-25 16:37:27 +0800 Refine coding style M src/Signal.h commit 9221dcd2a12dff8d01190b31e5b620b8d653930c Author: Peng Huang Date: 2010-04-25 10:03:00 +0800 Refine coding style M src/Main.cc commit 9f52877a68de2552e636e2ce5571cad6f7f28953 Author: Peng Huang Date: 2010-04-24 16:03:43 +0800 Clear editor, when user presses Shift to switch En/Ch mode M src/PinyinEditor.cc M src/PinyinEngine.cc commit bc3df925397856d5110552dbc98a7867afb02d11 Author: Peng Huang Date: 2010-04-24 15:38:09 +0800 add assert in Object.h M src/Object.h commit c9d7cd3ce501e7134692c51b3ba42e2eb079b312 Author: Peng Huang Date: 2010-04-24 15:31:13 +0800 Fix half and full punch problem M src/FallbackEditor.cc M src/FallbackEditor.h M src/PinyinEngine.cc M src/Text.h commit 0bb27ab4b07716102e7c86c103a88476e74335f1 Author: Peng Huang Date: 2010-04-20 15:30:02 +0800 Add libboost-dev >= 1.39 in debian build script M debian/control commit f4b43ed2e2957f27c5a92db8b21aed28c3a7f0b8 Author: Peng Huang Date: 2010-04-20 11:00:41 +0800 Use libboost to replace sigc++ M debian/control commit ae017a35e8055b002f87d5ba0a9f62d7a874e911 Author: Peng Huang Date: 2010-04-16 12:45:21 +0800 Does not need swig M debian/control commit 05f37204f748e0093506bd2293d16a2de5e47cdf Author: Peng Huang Date: 2010-04-16 12:43:00 +0800 Update debian from Li Daobing's repository M debian/changelog M debian/control M debian/rules A debian/source/format commit a33abc5b604a056f7c8adb66ce72d3407014d0fd Author: Peng Huang Date: 2010-04-20 14:01:56 +0800 Check boost::signals2 in configure.ac M configure.ac M src/Makefile.am M src/Signal.h commit 27ad7fcaacf9ff6e2d6c026ca9a659502b2fca72 Author: Peng Huang Date: 2010-04-20 08:38:06 +0800 Fix typo in phrases.txt M src/phrases.txt commit bd5261752efc27558d4ccc46498faaf1d6955cd4 Author: Peng Huang Date: 2010-04-19 15:12:03 +0800 Does not use typedef any more M src/Phrase.h M src/Types.h commit 1454d9f1192bbc42f3ed70a7c220fdef56c1cb8c Author: Peng Huang Date: 2010-04-19 14:52:07 +0800 Use tab for page down M src/PinyinEditor.cc M src/String.h commit 37e2dce77ff0c0a48fd51e74a19179e9044fb536 Author: Peng Huang Date: 2010-04-19 13:35:30 +0800 Use std::string to replace String M src/Editor.h M src/Text.h M src/Util.h commit 9eaf10e010931ad4f3b4249957ce29633492e8b8 Author: Peng Huang Date: 2010-04-19 12:09:45 +0800 Reset m_prev_commited_char in FallbackEditor M src/FallbackEditor.cc commit 1433c8fc3a9a92d2da0f04d565e954ba3b366590 Author: Peng Huang Date: 2010-04-19 11:54:38 +0800 Remove unused code M src/PinyinEngine.cc M src/PinyinEngine.h commit 812c0178fc27969f371eb0e5d373141ab2efe9ee Author: Peng Huang Date: 2010-04-19 11:16:36 +0800 Remove StaticString M src/Config.cc M src/Config.h M src/PinyinEngine.cc M src/PinyinProperties.cc M src/Util.h commit 15e5b18dfea9b6d66d39bf486070c6a33ffd6227 Author: Peng Huang Date: 2010-04-19 11:03:05 +0800 Remove PinyinEnginePtr M src/Engine.cc M src/PinyinEngine.h commit cbbfa1fbec89ab312fc132c465404b8c0da754aa Author: Peng Huang Date: 2010-04-18 12:27:37 +0800 Use Object as the base class to replace Pointer. M src/Bus.h M src/Config.cc M src/Config.h M src/LookupTable.h M src/Main.cc M src/Makefile.am A src/Object.h M src/PinyinEngine.cc M src/PinyinEngine.h M src/PinyinProperties.cc M src/Property.h M src/Text.h commit 319924aa7ea5bb9cce557d0c474ac5d641f78dbb Author: Peng Huang Date: 2010-04-18 11:03:24 +0800 Remove debug output M src/Pointer.h commit a417506b1cd0e2987745a925053160ff8182ecaa Author: Peng Huang Date: 2010-04-17 20:11:46 +0800 Use struct M src/Pointer.h M src/Signal.h commit 2bb3f4dda26efcdcd93fcae0b2e5983a324272aa Author: Peng Huang Date: 2010-04-17 19:39:58 +0800 Generate ChangeLog from git during make dist M Makefile.am commit 414466300e91073a3af1f8c43024f8aeb454954d Author: Peng Huang Date: 2010-04-17 17:01:37 +0800 Use boost::shared_ptr to manage object instance. M src/Database.cc M src/Database.h M src/Editor.h M src/Engine.cc M src/PhraseEditor.cc M src/PhraseEditor.h M src/PinyinEngine.cc M src/PinyinEngine.h M src/SpecialPhrase.cc M src/SpecialPhrase.h M src/SpecialPhraseTable.cc M src/SpecialPhraseTable.h commit 30b4b372c2c4bad09c6ae94ebbd5b00e57ee9adf Author: Peng Huang Date: 2010-04-17 10:38:13 +0800 Use boost::signals2 to replace sigc++, do not need sigc++ library in runtime M configure.ac M ibus-pinyin.spec.in A m4/boost.m4 M src/Editor.h M src/Makefile.am M src/PinyinEngine.cc M src/PinyinProperties.h A src/Signal.h commit 8a0155f9c840cc4ee50dad97a13337d3fe5eb1a7 Author: Peng Huang Date: 2010-04-16 09:14:48 +0800 Refine code. M src/DynamicSpecialPhrase.cc M src/SimpTradConverterTable.h M src/update-simptrad-table.py commit 9218f1c22be21ea5199d1c180435071892d5faaa Author: Peng Huang Date: 2010-04-15 20:49:09 +0800 Fix build error on NetBSD and does not call localtime every time. M src/DynamicSpecialPhrase.cc M src/DynamicSpecialPhrase.h commit ed642f7341bca83d39297a99905fb152bde4a66e Author: Peng Huang Date: 2010-04-15 15:38:25 +0800 Update comments in phrases.txt M src/phrases.txt commit 406baa0f95f084e897db8845e407503bdcff6d6c Author: Peng Huang Date: 2010-04-15 15:34:28 +0800 Fix copy phrases.txt error M setup/main.py commit fb08ff9bc55513b58f31a298c27dcf57a4d4196a Merge: 9e5ecb8 035bec8 Author: Peng Huang Date: 2010-04-15 15:26:31 +0800 Merge remote branch 'origin/master' commit 9e5ecb8182be4e5a7c91cb92e9c5c64ed63fe8a2 Author: Peng Huang Date: 2010-04-15 15:24:26 +0800 Add special phrases in setup ui M po/ru.po M po/zh_CN.po M setup/ibus-pinyin-preferences.ui M setup/main.py M src/Config.cc M src/Config.h M src/SpecialPhraseTable.cc M src/phrases.txt commit 547f5f2edf23027731a3e9f13f2de60a32224c9f Author: Peng Huang Date: 2010-04-15 13:11:40 +0800 Update the phrases.txt location M po/ru.po M po/zh_CN.po M setup/ibus-pinyin-preferences.ui M setup/main.py M src/SpecialPhraseTable.cc commit 035bec8a9f02ffa9fd6354439799f45ef8de5e53 Author: Peng Huang Date: 2010-04-15 13:11:40 +0800 Update the phrases.txt location M src/SpecialPhraseTable.cc commit 5b2e8ff3ea0efa7e44eafef1a697683f3f06fdf5 Author: Peng Huang Date: 2010-04-15 12:21:47 +0800 Don't include WideString.h in Makefile.am M src/Makefile.am commit 593375cfeaee95ff25778c06c784900a95301ec0 Author: Peng Huang Date: 2010-04-15 12:09:35 +0800 Add clear of SpecialPhraseTable M po/POTFILES.in M src/DynamicSpecialPhrase.cc M src/DynamicSpecialPhrase.h M src/Makefile.am M src/SpecialPhrase.cc M src/SpecialPhrase.h M src/SpecialPhraseTable.cc M src/SpecialPhraseTable.h commit 3543873912a94b38853769c4bb9c81264a54337b Author: Peng Huang Date: 2010-04-15 11:30:25 +0800 Fix make distcheck errors. M po/POTFILES.in M src/Makefile.am commit 1b161011fb6aa5f2197fe83d8e310bc44586de5d Author: Peng Huang Date: 2010-04-15 11:15:53 +0800 Remove some unused code M src/DynamicSpecialPhrase.cc M src/SpecialPhraseTable.cc commit e84345b5d8bd1ce1aa0ffe4d2910b38581f4b7b9 Author: Peng Huang Date: 2010-04-15 11:13:04 +0800 Update phrases.txt M src/phrases.txt commit 98f2c717f5c7d0d532e5ee53c55370bff01e3b33 Author: Peng Huang Date: 2010-04-15 11:02:07 +0800 Split SpecialTable.{h, cc} A src/DynamicSpecialPhrase.cc A src/DynamicSpecialPhrase.h M src/Makefile.am M src/PinyinEditor.h A src/SpecialPhrase.cc A src/SpecialPhrase.h A src/SpecialPhraseTable.cc A src/SpecialPhraseTable.h D src/SpecialTable.cc D src/SpecialTable.h commit ade4b089f5f5974e070f59941c70376b72921219 Author: Peng Huang Date: 2010-04-15 10:38:36 +0800 Comment the lunar phrase M src/phrases.txt commit d48cbf22c71b41ea14d7fb4e58dc24153ca1331a Author: Peng Huang Date: 2010-04-15 08:30:32 +0800 Fix several bugs in SpecialTable M src/SpecialTable.cc M src/phrases.txt commit 10eeeed063f31e9c83de4b3860e65774cd725964 Author: Peng Huang Date: 2010-04-15 07:39:04 +0800 Install phrases.txt M configure.ac M ibus-pinyin.spec.in M src/Makefile.am M src/PinyinEditor.cc M src/phrases.txt commit 884385c71d3fc63a11b01d08e69fce8ba5a9c3f4 Author: Peng Huang Date: 2010-04-15 07:23:56 +0800 Remove some unused code. M src/Makefile.am commit b64e42f4000785e38a83322a381fe6dd98d347cd Author: Peng Huang Date: 2010-04-14 22:29:31 +0800 Load phrases.txt from home dir & pkgdata dir M src/SpecialTable.cc A src/phrases.txt D src/special_phrases commit 9118f465a155b230435ace53e4ecb196964b4548 Author: Peng Huang Date: 2010-04-14 19:24:35 +0800 Update special table. M src/SpecialTable.cc M src/special_phrases commit 1b09a2d9d16d805c1b9ad8a5d35178f75441e3dc Author: Peng Huang Date: 2010-04-14 19:05:34 +0800 Change special_phrases format M src/SpecialTable.cc M src/special_phrases commit 15ae23dc3b5d07f94a3846a52489975b6b2f6b58 Author: Peng Huang Date: 2010-04-14 18:33:30 +0800 Fix commit special phrases issue M src/PinyinEditor.cc commit ab506536d10fc7d965241eff64cf261c6e7c8f06 Author: Peng Huang Date: 2010-04-14 18:28:13 +0800 Support load special phrases from file. M src/SpecialTable.cc M src/special_phrases commit c608cfe155df89906b7c37fc42e8f910ad91914a Author: Peng Huang Date: 2010-04-14 17:48:00 +0800 Convert to unix format M src/special_phrases commit cfa46f77f2a451bffd1cba71b95382ded6d6efeb Author: Peng Huang Date: 2010-04-14 17:47:35 +0800 Add special_phrases M src/Regex.h M src/SpecialTable.cc A src/special_phrases commit 1ad5b89b18fe5a67334bff423ceaf129109d2c98 Author: Peng Huang Date: 2010-04-14 15:10:49 +0800 Use cstdlib to replace stdlib.h M src/Util.h commit 68fce9f627c524412f6b07a22810230c9befbbd5 Author: Peng Huang Date: 2010-04-14 11:25:39 +0800 Update SimpTradConverterTable.h from wikipedia M src/SimpTradConverterTable.h commit b3ea7266a0b491dfe727e1ebfa3cedc70da30276 Author: Peng Huang Date: 2010-04-14 11:19:09 +0800 Use cheaders M src/Database.cc M src/Engine.cc M src/Phrase.h M src/PinyinEngine.cc M src/PinyinParser.cc M src/SimpTradConverter.cc commit b113c8be8ca9b8d5f4b44ee991012d1513e29236 Author: Peng Huang Date: 2010-04-14 11:04:28 +0800 Support some dynamic special phrases M src/PinyinEditor.cc M src/SpecialTable.cc commit 06ae4e4984c1fea0ef0154ac94e8ebba2af7140a Author: Peng Huang Date: 2010-04-13 22:17:43 +0800 Show auxiliary text correctly with special phrase. M src/PinyinEditor.cc M src/PinyinEditor.h commit ccf66d9244a59e2830b71abe2d9b9ce007aff52a Author: Peng Huang Date: 2010-04-13 21:21:49 +0800 Refactory PinyinParser M src/DoublePinyinEditor.cc M src/DoublePinyinEditor.h M src/FullPinyinEditor.cc M src/FullPinyinEditor.h M src/PinyinEditor.cc M src/PinyinEditor.h M src/PinyinParser.h commit 4707357783c1bcf44cfab5d7915182f38f231398 Author: Peng Huang Date: 2010-04-13 17:41:38 +0800 Refine code M src/Database.cc M src/Database.h M src/PhraseEditor.cc M src/PhraseEditor.h M src/PinyinEditor.cc M src/PinyinEditor.h M src/SpecialTable.cc M src/SpecialTable.h commit 11da825e682f1341b97cdb9f5482d6293338888a Author: Peng Huang Date: 2010-04-13 16:18:29 +0800 Add a special phrase. M src/SpecialTable.cc commit fdf8943c8a0745f208e715e96d4dd6162e9e7e81 Author: Peng Huang Date: 2010-04-13 15:54:57 +0800 Enable special phrases in double pinyin M src/DoublePinyinEditor.cc M src/FullPinyinEditor.cc M src/PinyinEditor.cc M src/PinyinEditor.h commit 3f394df7cf47f4287d886463f2a5e94c4f658d57 Author: Peng Huang Date: 2010-04-12 20:27:04 +0800 Support special phrases M src/DoublePinyinEditor.cc M src/Editor.cc M src/FullPinyinEditor.cc M src/PhraseEditor.h M src/PinyinEditor.cc M src/PinyinEditor.h M src/SpecialTable.cc M src/SpecialTable.h commit 28b5b9d35ae884e37f45ec213e6b884517d32c56 Author: Peng Huang Date: 2010-04-12 17:40:45 +0800 Fix configure problem in MacOSX M configure.ac commit 058446491c9480ef1fab9e02c7f4b089cb71dcf2 Author: Peng Huang Date: 2010-04-12 16:19:38 +0800 Refine uuid checking in libc and libuuid M configure.ac M src/Makefile.am M src/Util.h commit 9c9f091e7af575254e8fa8aff84bc8de981ef7fa Author: Peng Huang Date: 2010-04-12 07:34:40 +0800 Use lower format uuid M src/Util.h commit ee0f3b1dde90c200df91b3b03a3c1ae3ffcb8fa6 Author: Peng Huang Date: 2010-04-12 06:45:50 +0800 Fix compile errors in FreeBSD and NetBSD. M configure.ac M src/Util.h commit 447efa4d8e3b5b4958780d6d70273a1e754982f7 Author: Peng Huang Date: 2010-04-12 06:38:55 +0800 Do not use strnlen any more. M src/PinyinParser.cc commit 29c97aebdcdb7009d7cdc97e5b70d6818af22427 Author: Peng Huang Date: 2010-04-11 08:32:32 +0800 Release 1.3.2 M configure.ac commit 8e7c53a4a90944f33c9e8a280e6a43a30085bfbc Author: Peng Huang Date: 2010-04-11 08:24:48 +0800 Check program sqlite3 in configure M configure.ac M data/db/android/Makefile.am commit 384604e049b7fff31b06ab2e715dc6a46cd21291 Author: Peng Huang Date: 2010-04-11 08:15:43 +0800 Removce some debug output M src/Database.cc M src/SimpTradConverter.cc commit 35374ff6a33cb02a95c03c3d3a20a62e7217a366 Author: Peng Huang Date: 2010-04-10 20:16:24 +0800 Refine code M src/Database.cc M src/Phrase.h commit 3c28f607c3d81378e102fd7ea20744e301e7b191 Author: Peng Huang Date: 2010-04-10 19:52:41 +0800 Do not prefetch tables. M src/Database.cc commit de1000ba701981b4d803dad7865ab8e31ec13d13 Author: Peng Huang Date: 2010-04-10 08:00:36 +0800 Refine code. M src/SimpTradConverter.cc commit d2fc360725280ca7ef4b8608377f4bf27ef19b9d Author: Peng Huang Date: 2010-04-09 16:59:30 +0800 Remove HashTable.h D src/HashTable.h M src/Makefile.am commit e0f0c97df02cb3fbaffb11b59340b2656e0e9277 Author: Peng Huang Date: 2010-04-09 08:51:22 +0800 Remove empty line M src/Main.cc commit 80bbe996748d29faec361794bb7290870bc7a649 Author: Peng Huang Date: 2010-04-09 08:35:33 +0800 Refine some code. M src/Database.cc M src/Database.h M src/String.h commit 8f076b93a1bda49d91a5aa0902b3ce19cf0c283d Author: Peng Huang Date: 2010-04-09 07:22:49 +0800 Return references for signals M src/Editor.h commit 8d68ce7e97e4d822c0ea3d7e938ed5a6e581c7e6 Author: Peng Huang Date: 2010-04-08 18:30:55 +0800 Remove Array.h D src/Array.h M src/Makefile.am commit 1496b0a56bbd45cdafa44934a73e026b19593dae Author: Peng Huang Date: 2010-04-08 18:29:59 +0800 Does not use Array anymore M src/Database.cc M src/DoublePinyinEditor.cc M src/FullPinyinEditor.cc M src/PhraseArray.h M src/PhraseEditor.cc M src/PhraseEditor.h M src/PinyinArray.h M src/PinyinParser.cc M src/WideString.h commit 5817602139905bd82a9cf9d14811d2ed08ded672 Author: Peng Huang Date: 2010-04-08 15:33:34 +0800 Refine code M src/Database.cc M src/Database.h commit 7d53bd778bcb4ce47a6b99ca01cb3a12f1cc73ee Author: Peng Huang Date: 2010-04-08 15:07:18 +0800 Update po files. M po/ru.po M po/zh_CN.po commit 706a1ba1acdb338cbb3b022a1581123b08920afb Author: Peng Huang Date: 2010-04-08 15:03:52 +0800 Refine some code M src/Util.h commit b11ffca250e50c2968eff626696496f74c6d98ea Author: Peng Huang Date: 2010-04-08 14:45:29 +0800 Refine code. M src/Array.h M src/Database.cc M src/DoublePinyinEditor.cc M src/FullPinyinEditor.cc M src/Phrase.h M src/PhraseEditor.cc M src/PhraseEditor.h M src/PinyinEditor.cc M src/PinyinEditor.h M src/PinyinEngine.cc M src/PinyinParser.cc M src/String.h commit f8f97605d124b0c3cc128477cd7f9aba994f6906 Author: Peng Huang Date: 2010-04-08 14:44:13 +0800 Use pinyin-debug as engine name if debug mode M src/Main.cc commit 09f6296294a63284e673873cacf9ddd460b4787c Author: Peng Huang Date: 2010-04-06 19:21:43 +0800 only output warning if sqlite api return failed. M src/Database.cc commit 7be63665482a9912abd0c535144fa335a8752da1 Author: Peng Huang Date: 2010-04-06 19:14:04 +0800 Refine some code. M src/FullPinyinEditor.cc M src/PinyinParser.cc commit 4e9d34c0420416abc8a0de656808699ff4a4ed7f Author: Peng Huang Date: 2010-04-06 17:54:10 +0800 reorder options M src/Config.cc commit 33dfec2fce74cb9107bd66c82b10c8f4214239c9 Author: Peng Huang Date: 2010-04-06 17:42:19 +0800 Refine code of class Conditions M src/Database.cc commit f21c6030382dfe65ac982e52291b7b496d08e120 Author: Peng Huang Date: 2010-04-06 17:25:02 +0800 Optimize some loops. M src/Database.cc commit 40b9e8911d184e91c454f2e78b72110cc5ff021d Author: Peng Huang Date: 2010-04-06 17:24:25 +0800 Remove debug output. M src/Text.h commit e0be555919b224198fcb643c712b7ce5278b45ba Author: Peng Huang Date: 2010-04-06 16:44:33 +0800 Only store prev pressed key if the keyevent is ignored by editors. M src/PinyinEngine.cc M src/PinyinEngine.h commit 205db5838a28fc594086aa129c6b186c39e42b36 Author: Peng Huang Date: 2010-04-05 17:25:14 +0800 Release 1.3.1 M configure.ac commit 0ec8339d6ee6984b491ddde78e6f0b3fc4fa97da Author: Peng Huang Date: 2010-04-05 17:24:14 +0800 Use update_lookup_table_fast M src/PinyinEditor.cc M src/PinyinEngine.cc commit f87705de00c5acd669957f002d38fd3c8d8e28a0 Author: Peng Huang Date: 2010-04-05 16:04:27 +0800 Fix some problems M src/Array.h M src/Database.cc M src/Database.h M src/PhraseEditor.cc M src/PhraseEditor.h M src/PinyinEditor.cc M src/PinyinEngine.cc M src/Text.h commit 11013e93069ba8dba07da3256d6fd71e8a1c2b23 Author: Peng Huang Date: 2010-04-05 13:17:09 +0800 Fix some problems. M src/Database.cc M src/PhraseEditor.cc M src/PhraseEditor.h M src/PinyinEditor.cc commit 5ffc5af22bce48f4a113e2205cd0a059b753a540 Author: Peng Huang Date: 2010-04-05 10:44:08 +0800 Optimize database query M src/Database.cc M src/PhraseEditor.cc M src/PhraseEditor.h M src/PinyinEditor.cc commit 937f048ec16f01b5eaeed04f947e10b23a92c7c6 Author: Peng Huang Date: 2010-04-05 10:30:56 +0800 Modify test target M src/Makefile.am commit 21da4073bbcf9a59913fd09bbe442deef284e204 Author: Peng Huang Date: 2010-04-05 08:30:34 +0800 Refactory Database M src/Database.cc M src/Database.h M src/PhraseEditor.cc commit 9ea30d33b9b720dbcd6cf507dbdf0128cbc3ba84 Author: Peng Huang Date: 2010-04-05 07:15:26 +0800 Refactory Database class M src/Database.cc M src/Database.h commit 1f2e8fd251ed8ee8315b0a4560e9e89cfe0b2d9e Author: Peng Huang Date: 2010-04-04 23:27:31 +0800 Optimize lookup table logic M src/LookupTable.h M src/PinyinEditor.cc M src/PinyinEditor.h commit 25c77d2176c5eee69149dbb3b6ed0f96b30912c1 Author: Peng Huang Date: 2010-04-04 22:24:32 +0800 Always unselectCandidates before move cursor M src/PinyinEditor.cc commit e470a4fffcc4d3ea1a0b85347ab284dde4738ad7 Author: Peng Huang Date: 2010-04-04 13:08:13 +0800 unselectCandidates before move cursor left or remove char before cursor M src/PhraseEditor.h M src/PinyinEditor.cc commit 1072ff8709f18469c7723858fdf97818ac62beae Author: Peng Huang Date: 2010-04-04 12:50:52 +0800 Does not update lookup table, when remove chars after cursor. M src/FullPinyinEditor.cc commit 5b84d10844e82be9bd21b6bd3fc98f6dad1b7d41 Author: Peng Huang Date: 2010-04-03 11:44:17 +0800 Show candidates in correct colour. M src/PhraseEditor.h commit c14fbdda03d9fd5e53bf840916f8cef09e977593 Author: Peng Huang Date: 2010-04-03 11:33:36 +0800 Update lookup table before preedit text and aux text to avoid crash M src/PinyinEditor.cc commit fecbae61279b9b25b303575cadcb4cbdaa34cf3f Author: Peng Huang Date: 2010-03-31 17:36:29 +0800 Quit to initial mode when the editor is empty M src/PinyinEngine.cc commit 34578e3c1a0720333e94f1ca276fc9f21d236b7c Author: Peng Huang Date: 2010-03-31 12:43:57 +0800 Fix make check problems. M po/POTFILES.skip commit c59f1ced318cb06441c29f9e0971ee9fef99d5ff Author: Peng Huang Date: 2010-03-27 17:21:50 +0800 Fix build warnings M src/DoublePinyinEditor.cc M src/PhraseEditor.cc M src/PinyinEditor.cc M src/PinyinEditor.h M src/Types.h commit fb8a36b64df6f48ae95f68ceb58e204e388f070f Author: Peng Huang Date: 2010-03-26 11:35:56 +0800 Bump version to 1.3.0 M configure.ac commit c4ff5531597501a63a1f2b1fc7c6edeea7af2e56 Author: Peng Huang Date: 2010-03-26 12:29:57 +0800 Fix rpm build errors M ibus-pinyin.spec.in M src/DoublePinyinEditor.cc commit 7b1597153b3aec71d328731112fb89e122960a40 Author: Peng Huang Date: 2010-03-26 11:17:03 +0800 Remove pot file. D po/ibus-pinyin.pot commit ee09ef872e775f7e7097cef96b0d3de6d65d3de0 Author: Peng Huang Date: 2010-03-26 11:08:32 +0800 Adjust setup UI M po/ibus-pinyin.pot M po/ru.po M po/zh_CN.po M setup/ibus-pinyin-preferences.ui commit 090dd34a67d4dfa5d0546c5bd05bc1cf27d9cc5b Author: Peng Huang Date: 2010-03-25 19:35:30 +0800 Add option - Show raw input of Double Pinyin M po/ibus-pinyin.pot M po/ru.po M po/zh_CN.po M setup/ibus-pinyin-preferences.ui M setup/main.py M src/Config.cc M src/Config.h M src/DoublePinyinEditor.cc commit 1b3ffa8d9368078b9cc4a2c4515f3330f554f906 Author: Peng Huang Date: 2010-03-25 19:10:24 +0800 Add option - orientation of candidates M po/ibus-pinyin.pot M po/ru.po M po/zh_CN.po M setup/ibus-pinyin-preferences.ui M setup/main.py M src/Config.cc M src/Config.h M src/DoublePinyinEditor.cc M src/LookupTable.h M src/PinyinEditor.cc commit cfcabb9b9483cb6a9d954a5e189c2a5212b315bd Author: Peng Huang Date: 2010-03-25 16:56:16 +0800 Fix bug when use Ctrl+Backspace to remove word in double pinyin M src/DoublePinyinEditor.cc commit e193cc8a2cb74a94dc30e201eb76a0a9d939a097 Author: Peng Huang Date: 2010-03-25 14:01:09 +0800 Use G_DEFINE_TYPE to make code simple M src/Engine.cc commit e46e050a07680ba4b944502f35c4c0ad3c6fd774 Author: Peng Huang Date: 2010-03-24 23:37:10 +0800 clean ZhConversion.* M src/Makefile.am commit 9bedb474e6dc36620a1c3da27b4a6f8c3b7f9b4a Author: Peng Huang Date: 2010-03-24 23:33:16 +0800 Remove some unused code. M src/PhraseEditor.cc commit 25bcc654cbd14cbdddecc725540239bbce1d2684 Author: Peng Huang Date: 2010-03-24 11:27:15 +0800 Show raw input in double pinyin M src/DoublePinyinEditor.cc M src/DoublePinyinEditor.h M src/PinyinEditor.cc M src/PinyinEditor.h commit a4174ee888c622d1a1a49a9acd6f7f4504b11806 Author: Peng Huang Date: 2010-03-24 11:04:22 +0800 Add some log message M src/Database.cc commit db0adc56b80b99042ec4446261e345d3a5634a0b Author: Peng Huang Date: 2010-03-24 10:58:55 +0800 Use svn to get ZhConversion.php from wikipedia svn repository M src/Makefile.am commit 28537612f243ca03a30ec74d8142232b70c51d45 Author: Peng Huang Date: 2010-03-24 10:50:37 +0800 Add make target update-simptrad-table M src/Makefile.am commit 1931a870082ac9312d63b1ebc616f9697b5ac00b Author: Peng Huang Date: 2010-03-24 10:40:42 +0800 Disable CONFIG_REVERSE_FIRST_CANDIDATE M src/PhraseEditor.cc commit 5fdfb6cd25f67dd70e9275bb396975150f08f20c Author: Peng Huang Date: 2010-03-24 10:33:27 +0800 Make build output looks better M data/db/open-phrase/Makefile.am commit 55439c14d7fac09c52d9d84e38e270978b6dc038 Author: Peng Huang Date: 2010-03-24 10:21:24 +0800 Remove unused code M src/DoublePinyinEditor.cc commit a475efbee8d7a77dbd48c4519acd7434f9bfcafb Author: Peng Huang Date: 2010-03-23 19:15:39 +0800 Trace 'a', 'e', 'o' as PINYIN_ID_ZERO in double pinyin M src/DoublePinyinEditor.cc M src/DoublePinyinTable.h commit edde50a74d387c0b4301e8e4f6f11fb05db9f3d8 Author: Peng Huang Date: 2010-03-23 17:14:19 +0800 make build output looks better M data/db/android/Makefile.am M src/Makefile.am commit f7762c5207535c21d6f5c83bef8436653c7d0f56 Author: Peng Huang Date: 2010-03-22 21:16:27 +0800 Use AM_SILENT_RULES M configure.ac commit 71812a3b94c86340f1fedbb08a3ecf84b2daae5e Author: Peng Huang Date: 2010-03-22 17:00:31 +0800 Add a new logic to generate the first candidate M src/PhraseEditor.cc commit 48d6d17217165a1858d53d4fe97054045f845b15 Author: Peng Huang Date: 2010-03-22 15:09:07 +0800 Avoid pinyin > MAX_PHRASE_LEN M src/DoublePinyinEditor.cc commit 5ec3728d4479634f07bf9484ce08e0c063d8bf3f Author: Peng Huang Date: 2010-03-22 15:05:37 +0800 Adjust functions' order M src/DoublePinyinEditor.cc commit 910ffd54303ebcc1c2957cc06aa8bd106be34141 Author: Peng Huang Date: 2010-03-22 14:37:29 +0800 Refactory double pinyin to make code simplier M src/Array.h M src/DoublePinyinEditor.cc M src/DoublePinyinEditor.h commit 9d297615b72eb2441f5cdcaa560b21d8ba314fa3 Author: Peng Huang Date: 2010-03-17 04:37:28 +0800 Put the setup dialog in center of screen M setup/ibus-pinyin-preferences.ui commit f64aee5b081c37cad3c04dae616f5680b1e54aeb Author: Peng Huang Date: 2010-03-18 12:22:53 +0800 Fix bug in double pinyin M src/DoublePinyinEditor.cc commit 9f28f25476175252d1a74db667acfc2fef0c9bc7 Author: Peng Huang Date: 2010-03-18 12:16:09 +0800 Fix auto commit problem in double pinyin M src/DoublePinyinEditor.cc commit f88af11c2dba110350a4b8c794c2754c57c6d953 Author: Peng Huang Date: 2010-03-18 10:50:16 +0800 Refine the macro M src/DoublePinyinEditor.cc commit 50124cb3085c75a50b602cb5738db8f9bc2e11af Author: Peng Huang Date: 2010-03-18 10:44:32 +0800 Use macro to replace inline function M src/DoublePinyinEditor.cc commit f4bf29f7c41edb63ba2687342b763f8b3b90256e Author: Peng Huang Date: 2010-03-16 04:54:45 +0800 Ignore puncts in double pinyin M src/DoublePinyinEditor.cc commit 9222a2be0bec112eaa0f37b544408380d17f5b78 Author: Peng Huang Date: 2010-03-16 04:08:48 +0800 Limit pinyin <= MAX_PHRASE_LEN in double pinyin M src/DoublePinyinEditor.cc commit 0f184b6073c28275c967727bf1abf3e8d52b488d Author: Peng Huang Date: 2010-03-17 19:33:08 +0800 Ignore all chars if preedit is too long. M src/DoublePinyinEditor.cc M src/FullPinyinEditor.cc commit 7ca770df020c57febc9dfa23184c2de47532fac8 Author: Peng Huang Date: 2010-03-17 19:28:52 +0800 Fix bug in double pinyin M src/DoublePinyinEditor.cc M src/DoublePinyinEditor.h M src/PinyinEditor.cc commit 84fe2739b3d5197731038cc95e65f8c771953335 Author: Peng Huang Date: 2010-03-16 10:13:37 +0800 Display correct version in setup ui M configure.ac M po/POTFILES.in M po/ibus-pinyin.pot M po/ru.po M po/zh_CN.po M setup/Makefile.am M setup/ibus-pinyin-preferences.ui M setup/main.py A setup/version.py.in commit f1673ae973bcb1375c233b8b8551fd256d5b0f2d Author: Peng Huang Date: 2010-03-16 10:00:44 +0800 Add a spece between pinyin and non-pinyin in aux text M src/PinyinEditor.cc commit 098ffd9a2881b27af60ccec1c21879a83f544074 Author: Peng Huang Date: 2010-03-16 09:56:34 +0800 Unify coding style M src/DoublePinyinEditor.cc commit 72e1d4d6bc20f7470dd8db05397ddf914660765f Author: Peng Huang Date: 2010-03-16 09:54:26 +0800 Fix bug when move cursor left with double pinyin M src/DoublePinyinEditor.cc commit 5e68579df521289278dfb30957de3e2f8856ccfe Author: Peng Huang Date: 2010-03-15 18:34:24 +0800 Make incomplete pinyin configurable with double pinyin M setup/main.py commit 9fab244066a91f3b8ab5f14a03cf89510cd7dc35 Author: Peng Huang Date: 2010-03-15 18:22:10 +0800 Update preedit text in DoublePinyin M src/DoublePinyinEditor.cc commit 6b34c5989e5dd385011d2907f46730d7773d22b4 Author: Peng Huang Date: 2010-03-15 13:07:39 +0800 Implement Double PinYin M src/DoublePinyinEditor.cc M src/DoublePinyinEditor.h M src/PinyinEditor.h commit 144f1424a3a9c7825e88932949a10158b969e73d Author: Peng Huang Date: 2010-03-15 11:25:05 +0800 Store last commit text M src/PinyinEngine.cc M src/PinyinEngine.h M src/Text.h commit 07cc0da14d42bd1544617e7af961242c0932da16 Author: Peng Huang Date: 2010-03-10 15:54:24 +0800 Auto swith mode when user press www. http: xxx@ M src/Editor.cc M src/Editor.h M src/Makefile.am M src/PinyinEditor.cc M src/PinyinEngine.cc M src/PinyinEngine.h M src/Pointer.h commit b8d4fa27411735b1889f111ab82d959a6804acb5 Author: Peng Huang Date: 2010-03-08 17:49:55 +0800 Update SimpTradConverterTable.h from wikipedia M src/SimpTradConverterTable.h commit 78346c5a993222f50239c5d9bd28e7b363a7c429 Author: Peng Huang Date: 2010-03-08 17:48:00 +0800 Fix bug in toHalf M src/HalfFullConverter.cc commit 3997433c29479bf41380fc9d94800801a2ab1241 Author: Peng Huang Date: 2010-03-08 13:43:59 +0800 Remove some unused variables. M src/PinyinEngine.cc M src/PinyinEngine.h commit cf35e158e2ff2ce862bd54101bf616bb63fb29f2 Author: Peng Huang Date: 2010-03-08 12:06:13 +0800 Fix problem in FallbackEditor. M src/FallbackEditor.cc commit 6fa5284c44abff5fb4ddb193db9069e5585faca8 Author: Peng Huang Date: 2010-03-08 12:06:02 +0800 Add G_DEBUG env in make test M src/Makefile.am commit 928073165da6d9cc55ee8728912bb56c9141f008 Author: Peng Huang Date: 2010-03-02 14:03:28 +0800 Process other keys on KeyPad M src/FallbackEditor.cc commit 5c2708b82fe9bab7740c707036e77d991adb9bf3 Author: Peng Huang Date: 2010-03-02 13:47:23 +0800 Process IBUS_KP_0 ... IBUS_KP_9 as IBUS_0 ... IBUS_9 M src/FallbackEditor.cc commit 981760a963ca82a3cd9fde77a303e4745e3e293b Author: Peng Huang Date: 2010-02-13 17:11:41 +0800 Fix comment M src/PinyinEngine.cc commit d8329f5a207efaa020eaa484fd9ec56b7ed75ce2 Author: Peng Huang Date: 2010-02-12 23:49:01 +0800 Add ExtEditor.cc A src/ExtEditor.cc M src/ExtEditor.h M src/Makefile.am commit 16c742c8193da82959077dc743a965ca3008d5b0 Author: Peng Huang Date: 2010-02-12 17:21:22 +0800 Fix typo in comment M src/PinyinEngine.cc commit 9f4d0fcbe34d9f0c3d8f2aadd117974b36174030 Author: Peng Huang Date: 2010-02-12 17:07:00 +0800 Add some comments M src/PinyinEngine.cc commit 3c1b478b282d796639deb210c97a2b495d029f70 Author: Peng Huang Date: 2010-02-12 16:41:50 +0800 Add ExtEditor.h A src/ExtEditor.h M src/Makefile.am M src/PinyinEngine.cc M src/PinyinEngine.h commit d558a8e641d15d88805ababdd3e8d571233d8ee4 Author: Peng Huang Date: 2010-02-12 15:15:40 +0800 Fix chinese mode issues. M src/PinyinEngine.cc commit 64182077becb35474b9c75bc56991370a987e955 Author: Peng Huang Date: 2010-02-11 14:12:09 +0800 Fix problem of auto commit M src/PinyinEditor.cc commit 1e3f4faf7a1df27006ce5a52bf0c783c0e1706f0 Author: Peng Huang Date: 2010-02-11 13:34:41 +0800 Clean up code M src/PinyinEditor.cc M src/PinyinEngine.h commit 4ea6d5cc18adf9b76059589d7c0265c117e7a8e0 Author: Peng Huang Date: 2010-02-11 13:10:09 +0800 Handle some punct keys M src/PinyinEditor.cc commit 4b2cc678eec06c9da0a5a185100f919557bfc2ae Author: Peng Huang Date: 2010-02-11 12:50:17 +0800 Do not pass Release key event to editors. M src/DoublePinyinEditor.cc M src/Editor.cc M src/FallbackEditor.cc M src/PinyinEditor.cc M src/PinyinEngine.cc M src/PinyinEngine.h commit 30a249a7c58ffe379c02d0c4057dd5ac7d164c2b Author: Peng Huang Date: 2010-02-11 12:32:30 +0800 Add FallbackEditor A src/FallbackEditor.cc A src/FallbackEditor.h M src/Makefile.am M src/PinyinEngine.cc M src/PinyinEngine.h commit 50ef4dce7f948d13fb9dc46396bc414017738c48 Author: Peng Huang Date: 2010-02-10 14:25:38 +0800 Update po files. M po/ibus-pinyin.pot M po/ru.po M po/zh_CN.po commit 96fcc6938e31a0f4bbe19f0f8ebe8fa84bb64006 Author: Peng Huang Date: 2010-02-10 14:23:12 +0800 Update POTFILES.in M po/POTFILES.in commit 200aed6bb7a53d76cabe4559dfc43bf0005fdda3 Author: Peng Huang Date: 2010-02-10 14:13:36 +0800 Show auxiliary text correctly. M src/PinyinEditor.cc commit c4e6359b3f46c125d5e7d65428cbdfe8be2d3683 Author: Peng Huang Date: 2010-02-10 13:40:34 +0800 Update SimpTradConverterTable from wikipedia M src/SimpTradConverterTable.h commit dc4b853b45f05ba7c5da721538da5cc1495a340b Author: Peng Huang Date: 2010-02-10 13:32:53 +0800 Handle ';' in DoublePinyinEditor. M src/DoublePinyinEditor.cc M src/DoublePinyinEditor.h M src/FullPinyinEditor.cc commit 0e7dcb67c0762883c0976650e536e4748a580fd4 Author: Peng Huang Date: 2010-02-10 13:11:42 +0800 Remove some unused code. M src/PinyinEngine.h commit 67ec52a9391bc31840f12eb29cdb1829997c33f0 Author: Peng Huang Date: 2010-02-10 12:58:40 +0800 Add wordlist A data/wordlist commit 6db692b129f7648371cbcf427a19dc7b153064e6 Author: Peng Huang Date: 2010-02-10 12:55:28 +0800 Move _() to PinyinProperties.cc M src/PinyinProperties.cc M src/PinyinProperties.h commit 86681649085508eebbce4d2a39d29a061fa99523 Author: Peng Huang Date: 2010-02-10 12:53:37 +0800 Implement candidateClicked method M src/Editor.cc M src/Editor.h M src/PinyinEditor.cc M src/PinyinEditor.h M src/PinyinEngine.cc commit a6ec9cf51f8ddcf3f295ebe8f74b1c3a53248fae Author: Peng Huang Date: 2010-02-07 13:25:35 +0800 Refactory classes, and use sigc++ to make code clear. M configure.ac M src/DoublePinyinEditor.cc M src/DoublePinyinEditor.h A src/Editor.cc A src/Editor.h M src/FullPinyinEditor.cc M src/FullPinyinEditor.h M src/Makefile.am M src/PhraseEditor.cc M src/PhraseEditor.h M src/PinyinArray.h M src/PinyinEditor.cc M src/PinyinEditor.h M src/PinyinEngine.cc M src/PinyinEngine.h A src/PinyinProperties.cc A src/PinyinProperties.h M src/RawEditor.h M src/Text.h commit efa0c8f199b0e058b3cc5f88f0d6e20c382570b3 Author: Peng Huang Date: 2010-02-02 10:01:19 +0800 Fix problem when use '0' to select 10th candidate M src/PinyinEngine.cc commit 9db3894d2b02e0e7e28955bf8564dcf5e1240624 Author: Peng Huang Date: 2010-01-26 21:27:16 +0800 Exit if can not connect to ibus M src/Bus.h M src/Main.cc commit 7c8dc0f92d59d0657b4edf42c03410e81bc1a8cd Author: Peng Huang Date: 2010-01-19 13:22:03 +0800 Add local.db M src/Database.cc commit d43b51fcf3ff9f9d4f0b95db10f242018b3e1bc7 Author: Peng Huang Date: 2010-01-18 16:41:22 +0800 Remove SIMP_TO_TRAD_NR M src/SimpTradConverter.cc M src/SimpTradConverterTable.h M src/update-simptrad-table.py commit 2adb75fd7849d94019a36a13fbd3196ff707aea3 Author: Peng Huang Date: 2010-01-18 16:39:58 +0800 Fix genpytable.py M scripts/genpytable.py M src/PinyinParser.cc M src/PinyinParserTable.h commit 56518df0f50db706a9331b04c1b866c7de0fd814 Author: Peng Huang Date: 2010-01-18 16:24:02 +0800 Fix fuzzy and auto correct problem with 'rve rue' M scripts/genpytable.py M src/PinyinParser.cc M src/PinyinParserTable.h commit ea33ab8c6312d9cad4f371b61e276cb82ac8bf3d Author: Peng Huang Date: 2010-01-18 16:22:25 +0800 Add option auto correct "ue -> ve" M setup/ibus-pinyin-preferences.ui M setup/main.py commit 9c2e615dd98273c4344e93bb9058a79eb224daea Author: Peng Huang Date: 2010-01-18 16:08:57 +0800 Fix a typo. M src/Config.cc commit 722857195c111dbe41dc240747e73720999d5017 Author: Peng Huang Date: 2010-01-18 14:50:21 +0800 Use lve, nve to replace lue, nue M scripts/genpytable.py M scripts/pydict.py M src/Config.cc M src/PinyinParserTable.h M src/Types.h commit abf357f7fb4db64b0487ebd1e1fff83670d27a16 Author: Peng Huang Date: 2010-01-18 13:11:56 +0800 Update SimpTradConverterTable.h M src/SimpTradConverterTable.h commit 742bd5e1c74a19bf89b3bb9965dbd95d5a202e5f Author: Peng Huang Date: 2010-01-13 13:19:33 +0800 Add intltool in rpm spec file. M ibus-pinyin.spec.in commit e8e197527ba0271f9fc440c60253a904c8006bd6 Author: Peng Huang Date: 2010-01-04 10:01:03 +0800 Open user db in EXCLUSIVE mode. M src/Database.cc commit d2f9f35a38c313449a2a1d40ea082d6b7a1f03b6 Author: Peng Huang Date: 2010-01-04 09:38:33 +0800 Use PERSIST journal mode for better performance. M src/Database.cc commit 0168e6e8d18455557e3412aef86f1d74cd643e9d Author: Peng Huang Date: 2010-01-04 09:33:52 +0800 Remove some duplicate code. M src/Database.cc commit 5255574afea895f997c0c2dcca69826cb311c4cd Author: Peng Huang Date: 2010-01-04 08:27:42 +0800 Remove unused code. M src/Database.h commit 1d75209df049d6440d231ea400012a4b3b37f162 Author: Peng Huang Date: 2010-01-04 08:25:41 +0800 Optimize sqlite for better performance. M src/Database.cc commit 209e5a877991fd8e2c31b51dfd6a155df08da208 Merge: ee861c1 8a49985 Author: Peng Huang Date: 2010-01-01 19:20:05 +0800 Merge branch 'stl' commit ee861c1028911ab2bee572dd27dfab8d6408604f Author: Peng Huang Date: 2010-01-01 19:18:22 +0800 Ignore number key if with some modifiers. M src/PinyinEngine.cc commit 8a49985b01eb5d4a0c9dc6d4d0b94046ebb4db1d Author: Peng Huang Date: 2009-12-31 14:20:49 +0800 Use *_LDADD replace *_LDFLAGS M src/Makefile.am commit c65c97a970ad103389c757e4752b9988c03891dd Author: Peng Huang Date: 2009-12-29 15:34:13 +0800 Fix appendUnicode problem. M src/String.h commit 88df593befb03975149ddeea4a548b36e84d8c18 Author: Peng Huang Date: 2009-12-29 15:22:55 +0800 Remvoe set method of PinyinSegment M src/PinyinArray.h M src/PinyinParser.cc commit 151dc92a5abf86addc6457b2a955104820228968 Author: Peng Huang Date: 2009-12-29 15:20:12 +0800 Refine code. M src/PinyinArray.h commit 01834cf05d5a58a3e0e90292de7da26840e08b7e Author: Peng Huang Date: 2009-12-29 14:06:34 +0800 Fix coding style problem M src/String.h commit ed6dae4ecd54c6c3d13e3d90d1e6258b2e3b6e4a Author: Peng Huang Date: 2009-12-29 13:46:58 +0800 Remove some unused code. M src/Array.h commit d7546ce273582eb2d349488e6dccac0fbeed888b Author: Peng Huang Date: 2009-12-29 13:46:20 +0800 Remove some unused code. M src/PinyinParser.cc M src/WideString.h commit e4eb144538957ce5fc5e0291838e152898985243 Author: Peng Huang Date: 2009-12-29 13:36:40 +0800 Remove some unused code. M src/Array.h commit 66f093415d482a94243d0cca3f17168b749cf04a Author: Peng Huang Date: 2009-12-29 13:34:22 +0800 Replace GArray with std::vector M src/Array.h M src/Database.cc M src/FullPinyinEditor.cc M src/PhraseEditor.cc M src/PinyinArray.h M src/PinyinEngine.cc commit 8aecb7ba7a5470691599994847e1175bf65f1710 Author: Peng Huang Date: 2009-12-29 10:10:48 +0800 Remove unused code. M src/String.h commit 665e60b1c8efc84148fd76beeb28762ef066a048 Author: Peng Huang Date: 2009-12-29 09:51:01 +0800 Reserve for String M src/String.h commit 5515a1fd092a80abba2ba81d6e4aa8fd214563f8 Author: Peng Huang Date: 2009-12-28 21:23:17 +0800 Implement Env util class M src/Database.cc M src/Util.h commit ccf8268c2e532dd89c19ad3dd6b92aef562c1e66 Author: Peng Huang Date: 2009-12-28 21:22:51 +0800 Reimplement operator<< (const gunichar *wstr) M src/String.h commit 5ddd4d2ce16ddd812762db37bd13907c0ed7b604 Author: Peng Huang Date: 2009-12-28 18:12:00 +0800 Replase GString with std::string M src/Database.cc M src/Database.h M src/String.h commit 42dcb9d9848eb180fc9a19a533084025681e32bf Author: Peng Huang Date: 2009-12-28 17:06:26 +0800 Use STL to replace some class in Database M src/Database.cc M src/Database.h M src/PhraseEditor.h commit 001c65de561863bf73fc1a34092d437bfe897d15 Author: Peng Huang Date: 2010-01-01 19:09:26 +0800 Overide operator-> of Prointer M src/Pointer.h commit fa82e9bdf2dfc8406b4309a0617efd4bb7f85774 Author: Peng Huang Date: 2009-12-28 14:30:37 +0800 Add Some source files. A src/CustomPhrase.cc A src/CustomPhrase.h A src/HashTable.h M src/Makefile.am commit 4728ea9371fd8db91d971f1bfaf404c0437081c2 Author: Peng Huang Date: 2009-12-13 08:35:10 +0800 Create databases' indexes in build time. M ibus-pinyin.spec.in commit 34a762ae03bf4840f98aed803ca71ad870072ca4 Author: Peng Huang Date: 2009-12-08 16:07:07 +0800 Fix make distcheck errors. A po/POTFILES.skip commit e738d2c6534ff31601b2d7abca550155fa214c8b Author: Peng Huang Date: 2009-12-08 14:05:59 +0800 Remove some unused code. M src/Engine.cc commit 615fffda8783d711532e9a348e078567e0d37c01 Author: Peng Huang Date: 2009-11-30 08:38:01 +0800 Fix numpad problem. M src/PinyinEngine.cc commit df3078be38802ab9a97272fc3a735f8c942ff9c5 Author: Peng Huang Date: 2009-10-28 13:03:14 +0800 WIP. M src/FullPinyinEditor.cc M src/PinyinEditor.cc M src/PinyinEditor.h M src/PinyinEngine.cc commit 445ad900614e3357effa765fe868670ad7dd437d Author: Peng Huang Date: 2009-10-28 11:48:56 +0800 Add new constructors. M src/Array.h M src/String.h commit 9b9cd44eb4a3fe4d5e0b2b96ff221e9cc4255c68 Author: Peng Huang Date: 2009-10-18 11:58:06 +0800 Add RawEditor.h M src/Makefile.am M src/PinyinEngine.cc M src/PinyinEngine.h A src/RawEditor.h commit b7b1c191e0431859370a71b8be713dd9616b7e29 Merge: ee65708 5bc41f0 Author: Peng Huang Date: 2009-10-16 14:08:06 +0800 Merge branch 'master' of github.com:phuang/ibus-pinyin commit 5bc41f03f51755020b26a76881aa88fdf5b1d9dc Author: Peng Huang Date: 2009-10-14 14:30:27 +0800 Update ru.po from Alexey Kotlyarov M po/ru.po commit ee6570805dc8dca0c29ade184fb3192095e34280 Merge: 987f18c 6f15555 Author: Peng Huang Date: 2009-10-13 08:39:42 +0800 Merge branch 'master' of github.com:phuang/ibus-pinyin commit 6f1555521ec77221492ef8e2e41be62d8f9349e3 Author: Peng Huang Date: 2009-10-13 08:34:00 +0800 Update po files. M po/ibus-pinyin.pot M po/ru.po M po/zh_CN.po commit f7bc5d6e04aaddb25974dd54118386104b740929 Author: Peng Huang Date: 2009-10-13 08:32:08 +0800 Add ru.po from koterpillar M AUTHORS M po/LINGUAS A po/ru.po commit 987f18cb2223057084e7867e931861b834f92eea Author: Peng Huang Date: 2009-10-12 09:02:11 +0800 Add Regex.h in Makefile.am M src/Makefile.am commit 543a8eac21b9d5322f74362f09fe93c979121477 Author: Peng Huang Date: 2009-10-12 06:20:45 +0800 Add Regex.h M src/FullPinyinEditor.cc M src/PinyinEditor.cc M src/PinyinEditor.h A src/Regex.h commit aa521b442eb37158c55ea361eeb7272575bbbd87 Author: Peng Huang Date: 2009-10-11 19:16:34 +0800 Add some methods define M src/PinyinEngine.cc M src/PinyinEngine.h commit aa091d372671bb95fe2faf336630df0a332ada56 Author: Peng Huang Date: 2009-10-11 19:13:13 +0800 Add some comments M src/PinyinEngine.h commit b1a7b427774f6682eb4f9b0165d3bcdc90468c91 Author: Peng Huang Date: 2009-10-11 19:11:23 +0800 Define several input modes M src/PinyinEngine.cc M src/PinyinEngine.h commit 5c976eb12117b83d4b66b126f7f4f67efee00e3b Author: Peng Huang Date: 2009-10-11 16:46:24 +0800 Add m_prev_pressed_key_result to trace last pressed key result M src/PinyinEngine.cc M src/PinyinEngine.h commit 9e0cb3d79dcbed222f206f015b6186f93c17e1c0 Author: Peng Huang Date: 2009-10-11 15:52:04 +0800 Fix problem click number key, and number greater than current page size. M src/PinyinEngine.cc commit 46cecc7c264af982b0fee9e59398965fb6cee117 Author: Peng Huang Date: 2009-10-11 15:31:32 +0800 Update header of zh_CN.po M po/zh_CN.po commit e035410d2a8f92101feeedff56f70c5e91a5cffc Author: Peng Huang Date: 2009-10-10 16:13:28 +0800 Use ibus-setup icon M src/Main.cc M src/PinyinEngine.cc commit 560a2b3d108aa91fc4c86bd219937abaec9314ac Author: Peng Huang Date: 2009-10-10 13:58:47 +0800 Refine autogen.sh M autogen.sh commit 30f49d24befdaa71dc6225407c8fdcc86b6c5680 Author: Peng Huang Date: 2009-10-10 10:39:32 +0800 WIP. M .gitignore M po/.gitignore M src/main.db commit 0d8ba7a632e07464d9a73d38823c19991ae11aff Author: Peng Huang Date: 2009-10-10 10:36:37 +0800 Add BR libuuid-devel M ibus-pinyin.spec.in commit 764f98a14c972f6fedbd656097d308c31879668e Author: Peng Huang Date: 2009-10-10 07:50:53 +0800 Use XDG cache dir for database M src/Database.cc commit ffe7331c5a67eb51d0225f94bb7ba8133c060213 Author: Peng Huang Date: 2009-10-10 07:30:08 +0800 Change database dir to ~/.config/ibus/pinyin M src/Database.cc commit c407e80f90182c09914639681de968abf01c8be6 Author: Peng Huang Date: 2009-10-10 07:10:42 +0800 Change gtk version of ui file. M setup/ibus-pinyin-preferences.ui commit 8b3a7e9dbfa097c594cc31c55c04ab72661ef033 Author: Peng Huang Date: 2009-10-10 07:07:11 +0800 Use gnome-autogen and update zh_CN.po M autogen.sh M configure.ac M po/POTFILES.in M po/ibus-pinyin.pot M po/zh_CN.po commit d78465f9eb4fa032888b60c9ecf6a6c744f2ecd8 Author: Peng Huang Date: 2009-10-10 06:34:55 +0800 Rename glade to ui M po/POTFILES.in M po/ibus-pinyin.pot M setup/Makefile.am D setup/ibus-pinyin-preferences.glade A setup/ibus-pinyin-preferences.ui M setup/main.py commit a7c655fc1e9d2818054ab92b7f5a74c274ae3897 Author: Peng Huang Date: 2009-10-09 21:16:13 +0800 Support using mouse to select candidate. M src/Engine.cc M src/PinyinEngine.cc M src/PinyinEngine.h commit 77268496348665c01a68871496b80723fd819c22 Author: Peng Huang Date: 2009-10-09 09:59:54 +0800 Update sumbol links M src/valid_hanzi.py commit 2a95b4199d6e13385d752e79086398867ae852c5 Author: Peng Huang Date: 2009-10-09 07:06:11 +0800 Rename simple pinyin to incomplete pinyin M po/ibus-pinyin.pot M po/zh_CN.po M setup/ibus-pinyin-preferences.glade M setup/main.py M src/Config.cc M src/FullPinyinEditor.cc M src/PinyinParserTable.h M src/Types.h commit 4ccb9ab33199c07aac25b8e017d01adb7fa512b5 Author: Peng Huang Date: 2009-10-08 13:07:29 +0800 Rename database google to android M Makefile.am M configure.ac M data/db/Makefile.am A data/db/android/Makefile.am A data/db/android/README A data/db/android/create_db.py A data/db/android/create_valid_hanzi.py A data/db/android/id.py A data/db/android/pydict.py A data/db/android/rawdict_utf16_65105_freq.txt A data/db/android/valid_hanzi.py A data/db/android/valid_utf16.txt D data/db/google/Makefile.am D data/db/google/README D data/db/google/create_db.py D data/db/google/create_valid_hanzi.py D data/db/google/id.py D data/db/google/pydict.py D data/db/google/rawdict_utf16_65105_freq.txt D data/db/google/valid_hanzi.py D data/db/google/valid_utf16.txt M ibus-pinyin.spec.in M src/Database.cc commit 5bdcee961d675d69e078845c7be6739649eb2b31 Author: Peng Huang Date: 2009-10-08 11:16:29 +0800 Test input argument of selectCandidate M src/PhraseEditor.cc commit 6d895ea960f921afc12904b9ce11972368656e2e Author: Peng Huang Date: 2009-10-08 08:34:24 +0800 Fix script error in fedora 12 M src/php_2_py.php commit 2e1f5a55499603b85b50c60bc5a830fc8a3fb9bd Author: Peng Huang Date: 2009-10-07 21:49:14 +0800 Fix a typo M src/PinyinEngine.cc commit 091e73e98f0e2ff711cedb6a94bb740ae2121da7 Author: Peng Huang Date: 2009-10-07 07:37:47 +0800 Remove some commented code. M src/PinyinEngine.cc commit bb9e10a51f1c024e994c107a3183fbb9c0772027 Author: Peng Huang Date: 2009-10-07 07:14:54 +0800 Update zh_CN.po M po/ibus-pinyin.pot M po/zh_CN.po commit 366ba41b91ca6b49651354b97887ab510969af74 Author: Peng Huang Date: 2009-10-07 07:06:08 +0800 Add configure option to choice if showing candidates in traditional Chinese. M setup/ibus-pinyin-preferences.glade M setup/main.py M src/Config.cc M src/Config.h M src/PinyinEngine.cc commit 7fecc5539e7b08ce598541689458dc42e009f7b2 Author: Peng Huang Date: 2009-10-06 15:21:07 +0800 Refine some messages. M data/db/Makefile.am commit 796b42579b4d448cc4ff0a634456cd98fff53524 Author: Peng Huang Date: 2009-10-06 15:16:25 +0800 Remove ZhConversion.php ZhConversion.py D src/ZhConversion.php D src/ZhConversion.py commit 90a6303589d02a5f867e7d946fecaaf8cb9fdafb Author: Peng Huang Date: 2009-10-06 15:15:45 +0800 Add target to create ZhConversion.{php, py} M src/Makefile.am commit 84eddcfa8bcb893d6835843d1263602a44484dea Author: Peng Huang Date: 2009-10-06 15:05:41 +0800 Rename scirpt name M data/db/google/Makefile.am A data/db/google/create_db.py D data/db/google/create_db_from_google.py commit 2d6b56f3ba73c16d9ca2ec2d24ec112905a6396f Author: Peng Huang Date: 2009-10-06 15:03:34 +0800 Fix make distcheck errors. M Makefile.am M data/db/google/Makefile.am M data/db/google/create_db_from_google.py M data/db/google/create_valid_hanzi.py A data/db/google/valid_hanzi.py M po/ibus-pinyin.pot M po/zh_CN.po T src/valid_hanzi.py commit 169d23ca9644f0d62b6d8f084f356ee18874ef65 Author: Peng Huang Date: 2009-10-06 14:47:45 +0800 Only display traditional Chinese preedit & auxiliary text M src/PhraseEditor.cc M src/PhraseEditor.h M src/PinyinEngine.cc M src/PinyinEngine.h commit 95f5e3ffa0d9492fedf6a7fdafb5c2d927ff5684 Author: Peng Huang Date: 2009-10-06 13:42:52 +0800 Add Makefile.am in data/db/google A data/db/google/Makefile.am commit 51aa686a911461292d28f6c15fd90565eab926d2 Author: Peng Huang Date: 2009-10-06 11:18:53 +0800 Reimplement Simp to Trad A data/db/google/create_valid_hanzi.py M src/PinyinEngine.cc M src/SimpTradConverter.cc M src/SimpTradConverterTable.h M src/String.h D src/Unihan_Variants.txt A src/ZhConversion.php A src/ZhConversion.py A src/php_2_py.php M src/update-simptrad-table.py A src/valid_hanzi.py commit 5fcba789bfa30a67ee652ebb137a169a3a006212 Author: Peng Huang Date: 2009-10-05 18:30:50 +0800 Add android git url M data/db/google/README commit 5aca064041820dd12db6905859ed677741f3fbb8 Author: Peng Huang Date: 2009-10-05 18:05:45 +0800 Add PinyinParserTable.h SimpTradConverterTable.h M src/.gitignore M src/Makefile.am A src/PinyinParserTable.h A src/SimpTradConverterTable.h commit 28aeb79317f5cefa316fe351e7b0ebacbff07eb0 Author: Peng Huang Date: 2009-10-05 17:54:27 +0800 Generate SimpTradConvertTable.h from Unihan M src/Makefile.am A src/Unihan_Variants.txt A src/update-simptrad-table.py commit e1fca2997da77309316446dc4b79314f7de5ed59 Author: Peng Huang Date: 2009-10-05 16:45:18 +0800 Add PinyinParserTable.h.open-phrase A src/PinyinParserTable.h.open-phrase commit 746f8db61544ba27269fa33f27fdecbc3246d0cb Author: Peng Huang Date: 2009-10-05 16:42:16 +0800 Refine code M scripts/genpytable.py commit 6f7acc02db4afa26082da5a561e01299f00be7ee Author: Peng Huang Date: 2009-10-05 16:26:29 +0800 Remove unused function M src/PinyinParser.cc commit 3a9b172b0a8f22686fe7c8e13fbbc547087450dd Author: Peng Huang Date: 2009-10-05 16:17:30 +0800 Adjust freq of google database M data/db/google/create_db_from_google.py commit efa62ef0960cbebeb38110d9fc95f895da1d2a59 Author: Peng Huang Date: 2009-10-05 15:52:57 +0800 Add create_index.sql in data/db A data/db/create_index.sql commit 7a755bd0134e600586dbd53186553bdfb5ebc0dc Author: Peng Huang Date: 2009-10-05 15:52:31 +0800 Remove create_index.sql in data D data/create_index.sql commit 4518b8d196b6cd0f0c50f77bc99c808e3da434ee Author: Peng Huang Date: 2009-10-05 15:42:14 +0800 Check if maindb exist before open it. M src/Database.cc commit 7692e2d59ccf5d7419e499366ff548dbc42bc803 Author: Peng Huang Date: 2009-10-05 14:53:43 +0800 Fix symbol link M src/main.db commit 3b45d3f4db14e9db2f49241c637fe93494020a76 Author: Peng Huang Date: 2009-10-05 14:51:38 +0800 Fix rpm build problems. M data/db/google/create_db_from_google.py M data/db/open-phrase/Makefile.am M ibus-pinyin.spec.in commit 1ab8d3eaf4230c61ea4a78752334f99bac904621 Author: Peng Huang Date: 2009-10-05 14:38:24 +0800 Fix problem in install-data-hook M data/db/Makefile.am M data/db/open-phrase/Makefile.am commit 746b31da492ab63120655f287fc56b8fb26584eb Author: Peng Huang Date: 2009-10-05 14:24:55 +0800 Use google.db, if open-phrase.db does not exist. M Makefile.am M configure.ac M data/Makefile.am A data/create_index.sql A data/db/Makefile.am A data/db/google/README A data/db/google/create_db_from_google.py A data/db/google/id.py A data/db/google/pydict.py A data/db/google/rawdict_utf16_65105_freq.txt A data/db/google/valid_utf16.txt A data/db/open-phrase/Makefile.am D data/google/README D data/google/create_db_from_google.py D data/google/create_index.sql D data/google/id.py D data/google/pydict.py D data/google/rawdict_utf16_65105_freq.txt D data/google/valid_utf16.txt M src/Database.cc commit 66834d7005c5ef6f176b5b081d8b76973ff7605e Author: Peng Huang Date: 2009-10-05 14:00:40 +0800 WIP. M configure.ac M data/Makefile.am commit 05f27be4de0df3c59236badf44f1434b7b79d142 Author: Peng Huang Date: 2009-10-05 13:27:09 +0800 WIP. M data/google/create_db_from_google.py A data/google/create_index.sql commit a412a978ff08503a85c73c5a67e627a53b6bf03d Author: Peng Huang Date: 2009-10-05 13:23:30 +0800 WIP. A data/google/create_db_from_google.py D data/google/createdb.py A data/google/id.py A data/google/pydict.py commit 26235d24107158b0c200f9a3a6caa78b23ce68fd Author: Peng Huang Date: 2009-10-05 13:18:19 +0800 Add script for creating db from google pinyin data A data/google/createdb.py M scripts/id.py commit f0d700e8dfc3610eb577d57bb937ef7188b5e436 Author: Peng Huang Date: 2009-10-05 13:15:30 +0800 Add README A data/google/README commit 23183f101caabd187af61dea8e19e527302d0b1d Author: Peng Huang Date: 2009-10-05 12:58:03 +0800 Add phrases dict from Android Pinyin IME A data/google/rawdict_utf16_65105_freq.txt A data/google/valid_utf16.txt commit 55cef919009b93a3a5204ceb6a846a8040209005 Author: Peng Huang Date: 2009-10-05 12:02:12 +0800 Refine coding style M scripts/pydict.py commit 9d6249684c8d6497100a62e74603e9317b2aaf2a Author: Peng Huang Date: 2009-10-05 12:01:26 +0800 Update pydict.py M scripts/pydict.py commit 81070b09ca9a8bec2ab76006aa049f460904e23a Author: Peng Huang Date: 2009-10-05 11:54:20 +0800 Move all scripts to $top_srcdir/scripts D data/scripts/Makefile D data/scripts/create_db.py D data/scripts/create_index.py D data/scripts/create_unique_index.py D data/scripts/double.py D data/scripts/id.py D data/scripts/pydict.py D data/scripts/pyutil.py M po/zh_CN.po A scripts/Makefile A scripts/create_db.py A scripts/create_index.py A scripts/create_unique_index.py A scripts/double.py A scripts/genpytable.py A scripts/gensimptradtable.py A scripts/id.py A scripts/pydict.py A scripts/pyutil.py A scripts/sctc.py M src/Makefile.am D src/scripts/genpytable.py D src/scripts/gensimptradtable.py D src/scripts/pydict.py D src/scripts/sctc.py commit d866b6b936220d6f3f95a24a0d3c762186134ba6 Author: Peng Huang Date: 2009-10-05 09:25:33 +0800 Modify the logic of processing capital letters M src/PinyinEngine.cc M src/PinyinEngine.h commit 765dc6e1768bb1314b454481132315f6ed28d042 Author: Peng Huang Date: 2009-10-05 08:54:04 +0800 Input upper letters correctly M src/PinyinEngine.cc commit 63d516ed5897fb9de3259c52cb6b00c873fec6ab Author: Peng Huang Date: 2009-10-03 21:41:39 +0800 Input currect with keypad M src/PinyinEngine.cc commit d0f38189ad1a0171be6e2196b0403c44f52a0b46 Author: Peng Huang Date: 2009-10-02 19:51:11 +0800 refine coding style M src/WideString.h commit 1756fd7996a9fc6af873b8cee9ff6af8991fcce5 Author: Peng Huang Date: 2009-10-02 19:49:07 +0800 Fix build warning M src/Database.cc commit 5af19efc0e13f928769ee7255ef5ed1b840b2d9a Author: Peng Huang Date: 2009-10-02 08:21:09 +0800 Fix auto commit problem. M src/PinyinEngine.cc commit 60cfd20aa525f1245565f45801ea2a678f147f62 Author: Peng Huang Date: 2009-10-02 08:00:02 +0800 Refine sql M src/Database.cc commit 1997e24f2e3b11ac567d9cea43149d3dd1f7a0ec Author: Peng Huang Date: 2009-10-02 07:57:20 +0800 Add executeSQL method. M src/Database.cc M src/Database.h commit bebf306e96c28f8fcec10a76d6b58e8becfff06f Author: Peng Huang Date: 2009-10-02 07:31:43 +0800 Process punctuations correctly M src/PinyinEngine.cc commit 6958d5b6c9dfbf973566bf41a0ff8dd003e7e2e3 Author: Peng Huang Date: 2009-10-01 16:14:21 +0800 Add some inline comments M src/Database.cc commit 92241be43b67d99328281d222a1b52663ea1a5a3 Author: Peng Huang Date: 2009-10-01 16:09:31 +0800 Tuning sqlite database for better performance. M src/Database.cc commit fe526abc18ee805ebb6e5d396dccc5967c19c2c2 Author: Peng Huang Date: 2009-10-01 12:09:44 +0800 Update project url M ibus-pinyin.spec.in commit 5fac3733f4e76bde305153b6559288b100105184 Author: Peng Huang Date: 2009-10-01 12:04:53 +0800 Update .gitignore files M .gitignore A data/.gitignore M data/Makefile.am M po/.gitignore A po/ibus-pinyin.pot A setup/.gitignore A src/.gitignore commit e3710c25e02180b3f684af509f8b272f5d32438b Author: Peng Huang Date: 2009-10-01 11:45:35 +0800 unify help message M configure.ac commit 7b77b901d96e9fed80efc4074dec64c81373ed86 Author: Peng Huang Date: 2009-10-01 09:52:47 +0800 Add upload target M Makefile.am commit 4f27c1a24bf44e294abdba9b2d9729247fa75c14 Author: Peng Huang Date: 2009-10-01 09:46:01 +0800 Add googlecode upload script A tools/googlecode_upload.py commit eaaf6a123092e316bebcf2a1d597fd216921c10a Author: Peng Huang Date: 2009-10-01 09:17:34 +0800 Use g_strlcpy and g_strlcat to avoid buffer overflow M src/Database.cc M src/Phrase.h M src/PinyinParser.cc commit 2ef56713a13c750257203182cea398f1309b8ede Author: Peng Huang Date: 2009-10-01 09:11:08 +0800 Use strncat correctly M src/Phrase.h commit fb8659454f750c14b8b3f2ea695fe40d7f152cd1 Author: Peng Huang Date: 2009-10-01 08:46:56 +0800 Process keys on keypad correctly M src/PinyinEngine.cc commit c0f86e9a34e82bb41858b80c530cf3df38e6153b Author: Peng Huang Date: 2009-10-01 08:11:59 +0800 Fix build error with sqlite 3.5 M src/Database.cc commit f30f9f83239bdafedf5fa64c33eec27dfb12ea20 Author: Peng Huang Date: 2009-10-01 07:48:46 +0800 Fix double pinyin problems. M src/DoublePinyinEditor.cc M src/PinyinParser.cc commit a949d50a4fca0d3d12024220a4a6e2f5c1646a45 Author: Peng Huang Date: 2009-09-30 22:38:40 +0800 Add --disable-pinyin-database argument of ./configure M configure.ac M data/Makefile.am commit 458d3dd50ec8dbec2237b5c796f65044d7bd79e6 Author: Peng Huang Date: 2009-09-30 22:08:47 +0800 Refine coding style M src/PinyinEngine.cc commit 894b06bf59417ae6f05b40d5cdb1c53076bc4512 Author: Peng Huang Date: 2009-09-30 22:06:49 +0800 Commit full width space, only if in full mode M src/PinyinEngine.cc M src/PinyinEngine.h commit 1caefa8402499902e5b89b2763c2ab5e75b06e37 Author: Peng Huang Date: 2009-09-30 19:46:22 +0800 Fix fuzzy pinyin problem with ian <=> iang M src/Config.cc M src/Types.h commit 02413c97d10f845d9daa90425a132b90b87d7d9b Author: Peng Huang Date: 2009-09-30 19:33:01 +0800 Fix ch c fuzzy pinyin problem M src/Types.h commit 52e791f2cdd5d12c36698308c6ef35c5c7352218 Author: Peng Huang Date: 2009-09-30 16:55:15 +0800 Fix segment fault of fuzzy pinyin M src/Database.h commit 5323e2385f36f72405d4ceffa24c2bb1bd2e9a84 Author: Peng Huang Date: 2009-09-30 13:59:06 +0800 Import debian packaging scripts from Ubuntu A debian/changelog A debian/compat A debian/control A debian/copyright A debian/docs A debian/ibus-pinyin.lintian-overrides A debian/rules A debian/watch commit 714143ad7539df66860607a316e36e1b7155d1dd Author: Peng Huang Date: 2009-09-30 07:50:21 +0800 Fix commi problem M src/PhraseEditor.h M src/PinyinEngine.cc commit eac3c4057934617567288069fc7515177e175322 Author: Peng Huang Date: 2009-09-29 19:31:38 +0800 Show preedit text correctly M src/PinyinEngine.cc commit 7d2aeda8396d1c617ae2c0336f9fe8a384da6ead Author: Peng Huang Date: 2009-09-29 19:22:56 +0800 Update preedit and auxiliary text format M src/PinyinEngine.cc commit ca6793524c34c754709bf1126827b6d142d53bcb Author: Peng Huang Date: 2009-09-29 17:13:48 +0800 Fix some bugs M src/PinyinEngine.cc commit 53501ecd68dd46aa97413adeab38e2cbfdfe610c Author: Peng Huang Date: 2009-09-29 16:54:56 +0800 Add Typing and Editing modes M src/PinyinEngine.cc M src/PinyinEngine.h commit 6e126f3b96183a4820a2c5db374b16af92d27f5f Author: Peng Huang Date: 2009-09-29 16:19:28 +0800 Use ' ' replace '\'' in pinyin string M src/PinyinEngine.cc commit 47bfea10eca0449551c930efaaa389263b749ff1 Author: Peng Huang Date: 2009-09-29 16:01:23 +0800 Update zh_CN.po M po/zh_CN.po commit 8f598fd6296df0d24916a030631e2967bc9dddcf Author: Peng Huang Date: 2009-09-29 15:56:02 +0800 Fix some bugs. M src/Array.h M src/PinyinArray.h M src/PinyinEngine.cc commit b3423070d9b267eb8c3755ca8a865250845aad5c Author: Peng Huang Date: 2009-09-29 15:34:12 +0800 Also set the foreground color of the highlight candidate in preedit text M src/PinyinEngine.cc commit 6fc3c5aae690b2f4c1170dbcf890a43f8adf5f0c Author: Peng Huang Date: 2009-09-29 15:27:01 +0800 Hide auxiliary text if no candidates M src/PinyinEditor.h M src/PinyinEngine.cc commit 9d66a329785cabc2aea5dc6501e03fe7df20a805 Author: Peng Huang Date: 2009-09-29 14:42:07 +0800 Adjust preedit text dynamically M src/Array.h M src/DoublePinyinEditor.cc M src/PinyinArray.h M src/PinyinEngine.cc M src/PinyinParser.cc commit 699336c050105398d36940b4db9ba55beb04a517 Author: Peng Huang Date: 2009-09-29 13:47:05 +0800 Show unselected pinyin in preedit text M src/PinyinEngine.cc M src/PinyinEngine.h commit 80a09d4cda14d6294d7d6849af1e21eacad73c86 Author: Peng Huang Date: 2009-09-29 08:53:16 +0800 Use operator += of phrase M src/Database.cc commit b75395ca94f913b964c43066875fdbfb0b488041 Author: Peng Huang Date: 2009-09-29 08:28:25 +0800 Refactory PhraseEditor M src/Makefile.am M src/Phrase.h M src/PhraseArray.h M src/PhraseEditor.cc M src/PhraseEditor.h M src/PinyinEngine.cc M src/Types.h commit 1101d1d38fb5c78be0cf92893888804da6afc2a6 Merge: 06f2ebb 5b5fa82 Author: Peng Huang Date: 2009-09-29 07:53:53 +0800 Merge branch '1.2.99' of git@github.com:phuang/ibus-pinyin into 1.2.99 commit 5b5fa823cd1ccc656ad28323e19d3e6edb3afb4d Author: Peng Huang Date: 2009-09-29 07:52:04 +0800 Add Phrase.h A src/Phrase.h commit 06f2ebbe03b12c27b22beb6bff51a94e598d64a8 Author: Peng Huang Date: 2009-09-29 06:56:13 +0800 Add some comments M src/FullPinyinEditor.cc commit b02b9e47675ed2dcc8486faacada1b4a582056a3 Author: Peng Huang Date: 2009-09-28 16:03:23 +0800 Press space to select highlight candidate M src/PinyinEngine.cc M src/PinyinEngine.h commit b7196b0435b8d4ccd61d06fe7df275c1f580d107 Author: Peng Huang Date: 2009-09-28 07:13:22 +0800 Commit half width '.' after half width numbers M src/PinyinEngine.cc M src/PinyinEngine.h commit ba136a3846ed111cfabb05b47c16c8a9c393b8fe Author: Peng Huang Date: 2009-09-28 07:04:42 +0800 Reset before commit text to application. M src/PinyinEngine.cc commit 6b097b4ca7bca4ac328c3296d5dc3a2f7c078215 Author: Peng Huang Date: 2009-09-27 16:48:25 +0800 Refine coding style M src/Database.h commit 54f0169827e813747e6f295e12d13099b36d7bb1 Author: Peng Huang Date: 2009-09-27 16:47:22 +0800 Use get replace operator [] M src/Database.h commit 8965a486d163828f7283a0b9ac3b83a56d6a0cef Author: Peng Huang Date: 2009-09-27 16:43:30 +0800 Refectory conditions M src/Database.cc M src/Database.h commit ae26cda94d9ffc2df06414284a6e09bf24da2d0d Merge: 38c62f3 347d456 Author: Peng Huang Date: 2009-09-27 14:46:23 +0800 Merge branch '1.2.99' of github.com:phuang/ibus-pinyin into 1.2.99 commit 347d4564f6015e32887a537861b2d5f6d3f31fb2 Author: Peng Huang Date: 2009-09-26 07:37:49 +0800 Support WideString in String M src/String.h M src/WideString.h commit d94521ce1bf8405f0fd46a1050704dba050024f2 Author: Peng Huang Date: 2009-09-26 07:28:55 +0800 Add WideString M src/Array.h M src/Makefile.am M src/PinyinEngine.cc A src/WideString.h commit 38c62f348c03a8b715a8baa12eedcd75c68eafc7 Author: Peng Huang Date: 2009-09-25 17:18:50 +0800 Reset in focusOut M src/DoublePinyinEditor.cc M src/FullPinyinEditor.cc M src/FullPinyinEditor.h M src/PinyinEngine.h commit cc46aa7c24252c17d213655e4dd9ea07682672de Author: Peng Huang Date: 2009-09-25 16:19:10 +0800 Change author info M AUTHORS M Makefile.am M configure.ac M data/Makefile.am M data/icons/Makefile.am M data/scripts/pydict.py M data/scripts/pyutil.py M ibus-pinyin.spec.in M m4/Makefile.am M po/Makevars M po/zh_CN.po M setup/Makefile.am M setup/ibus-setup-pinyin.in M src/Makefile.am M src/special_table commit 9e2d1632f9a7b512457a4ee276bf1ed824de6903 Author: Peng Huang Date: 2009-09-25 13:43:13 +0800 Implement auto commit. M setup/ibus-pinyin-preferences.glade M src/PinyinEngine.cc commit 1b7a439abe24cd350a0332c632302b78a3d99853 Author: Peng Huang Date: 2009-09-25 12:27:00 +0800 Use ? : operator M src/PinyinEngine.cc commit 077a9b9ede0f64fdf54e2d3801a8a34cbb7b6543 Author: Peng Huang Date: 2009-09-25 11:40:49 +0800 Update zh_CN.po M po/zh_CN.po commit b4041c918a42a6f26d190fd9009800bc12c42548 Author: Peng Huang Date: 2009-09-25 11:37:10 +0800 Implement shift select candidate M setup/ibus-pinyin-preferences.glade M setup/main.py M src/Config.cc M src/Config.h M src/PinyinEngine.cc commit a0ee977ca23b41650f841089e1f184787324b22a Author: Peng Huang Date: 2009-09-25 10:45:48 +0800 Adjust the setup ui M setup/ibus-pinyin-preferences.glade commit 348bf0203d58e22c64ef3e91fee2cc279c1af0aa Author: Peng Huang Date: 2009-09-25 10:36:06 +0800 Delay update of page size M setup/ibus-pinyin-preferences.glade commit 6bc7522f638b1d7f80d7c2706a62369a578505a1 Author: Peng Huang Date: 2009-09-25 10:34:01 +0800 Use HScale widget for page size M setup/ibus-pinyin-preferences.glade M setup/main.py commit 15cd217742d7c773867e067eed8d6de8af4af297 Author: Peng Huang Date: 2009-09-25 10:22:08 +0800 Adjust preferences dialog M po/zh_CN.po M setup/ibus-pinyin-preferences.glade commit 4e2273761ef1fb1b56ee63f582b0c6d6ffd230bc Author: Peng Huang Date: 2009-09-25 09:59:51 +0800 Hide some unused options. M setup/ibus-pinyin-preferences.glade commit 83b156c8854c87dbf01a0a8bb1e69d900873eabf Author: Peng Huang Date: 2009-09-25 08:15:41 +0800 Fix some typos Update zh_CN.po M po/zh_CN.po M setup/ibus-pinyin-preferences.glade commit 3fdf13e54e1e8c2ef417baa40f0c954a6cf8d2e3 Author: Peng Huang Date: 2009-09-24 15:58:56 +0800 Add assert in simpToTrad M src/SimpTradConverter.cc commit 64cc8d82fb927baa0d0fdd14bfd0a295b9ff22c0 Author: Peng Huang Date: 2009-09-24 15:48:09 +0800 Refine coding style M src/Text.h commit 32820f777a5bbc94ca9e521db545d264f973f62f Author: Peng Huang Date: 2009-09-24 15:20:33 +0800 Clean up icons M data/icons/full-punct.svg M data/icons/full.svg M data/icons/half-punct.svg commit 27bab03f8813af661371d23706ed3a410228830a Author: Peng Huang Date: 2009-09-24 15:16:45 +0800 Clean up icons M data/icons/simp-chinese.svg M data/icons/trad-chinese.svg commit 15dd100c26f19308f5824142defb3a1ba38aa350 Author: Peng Huang Date: 2009-09-24 14:59:06 +0800 StaticText use Text as parent class. M src/PinyinEngine.cc M src/Text.h commit 613a80f34fcfffc559a0abf0252b187f18199c9b Author: Peng Huang Date: 2009-09-24 14:41:06 +0800 Remove unused variables. M src/Makefile.am commit 94d850c70fd078dabfa8dea39112f95db545f99b Author: Peng Huang Date: 2009-09-24 14:30:13 +0800 Use name SimpTrad table M src/scripts/gensimptradtable.py D src/scripts/map.py A src/scripts/sctc.py commit 4ce8b5db3be34deefc8785d9e9602142a1761c1f Author: Peng Huang Date: 2009-09-24 11:54:41 +0800 Fix some typos. M setup/ibus-pinyin-preferences.glade M setup/main.py commit 0f6dbec1e15bac3a115c8a0736ae894c6584b329 Author: Peng Huang Date: 2009-09-24 11:46:53 +0800 Add configure for Simplified/Traditional Chinese M po/zh_CN.po M setup/ibus-pinyin-preferences.glade M setup/main.py M src/Config.cc M src/Config.h M src/PinyinEngine.cc commit fc6e52a1619b3cd92c0de9960ab11370ca3d683b Author: Peng Huang Date: 2009-09-24 11:28:53 +0800 Add icons for simplified/traditional chinese M data/icons/Makefile.am A data/icons/simp-chinese.svg A data/icons/trad-chinese.svg M src/PinyinEngine.cc commit 902cee398e046244a992061b417efd0a72ed6d7b Author: Peng Huang Date: 2009-09-24 08:38:19 +0800 Add Traditional Chinese support M po/zh_CN.po M src/LookupTable.h M src/PinyinEngine.cc M src/PinyinEngine.h M src/Text.h commit 4560e4d77aed235f98041864b83d95c49ff542d9 Author: Peng Huang Date: 2009-09-23 20:12:57 +0800 WIP. M src/PinyinEngine.cc M src/PinyinEngine.h commit b5ed6295724e9b69350e661587f46d3bcfda49d8 Author: Peng Huang Date: 2009-09-23 20:04:28 +0800 Implement SimTradConverter M src/SimpTradConverter.cc M src/SimpTradConverter.h M src/scripts/gensimptradtable.py commit 13e14bc02147d5575ee7e29c24286e349af00933 Author: Peng Huang Date: 2009-09-23 17:13:42 +0800 Add SimpTradConverter. M po/zh_CN.po M src/Makefile.am M src/PinyinParser.cc A src/SimpTradConverter.cc A src/SimpTradConverter.h M src/scripts/genpytable.py A src/scripts/gensimptradtable.py A src/scripts/map.py commit 34d0c0da7958579b241b5a51851ed18e1fc81ed9 Author: Peng Huang Date: 2009-09-23 16:16:10 +0800 Add Shift+Shace & Control+. shortcuts M src/PinyinEngine.cc commit 820b19b3f9c80bfd56a1b0a3e1ee05f95d8cdf5f Author: Peng Huang Date: 2009-09-23 13:42:49 +0800 Remove zh_CN.gmo D po/zh_CN.gmo commit 7ab0dd288d917a5c588af4134320c32c13b9d801 Author: Peng Huang Date: 2009-09-23 13:39:45 +0800 Fix build errors. M Makefile.am A data/scripts/Makefile M src/scripts/genpytable.py commit 9bc6ab1d2816b790c87885a426e9cda053be7050 Author: Peng Huang Date: 2009-09-23 13:31:09 +0800 Remove all files from .gitignore. M .gitignore commit 998c9299f04a4756ff8a08ab3448b3f7860b9fe0 Author: Peng Huang Date: 2009-09-23 13:30:02 +0800 Import c version pinyin engine M AUTHORS M Makefile.am M README M autogen.sh M configure.ac A data/Makefile.am A data/icons/Makefile.am A data/icons/chinese.svg A data/icons/english.svg A data/icons/full-punct.svg A data/icons/full.svg A data/icons/half-punct.svg A data/icons/half.svg A data/icons/ibus-pinyin.svg A data/scripts/create_db.py A data/scripts/create_index.py A data/scripts/create_unique_index.py A data/scripts/double.py A data/scripts/id.py A data/scripts/pydict.py A data/scripts/pyutil.py D debian/README.Debian D debian/changelog D debian/compat D debian/control D debian/copyright D debian/cron.d.ex D debian/dirs D debian/docs D debian/emacsen-install.ex D debian/emacsen-remove.ex D debian/emacsen-startup.ex D debian/ibus-pinyin-default.ex D debian/ibus-pinyin.doc-base.EX D debian/init.d.ex D debian/init.d.lsb.ex D debian/manpage.1.ex D debian/manpage.sgml.ex D debian/manpage.xml.ex D debian/menu.ex D debian/postinst.ex D debian/postrm.ex D debian/preinst.ex D debian/prerm.ex D debian/rules D debian/watch.ex D engine/Makefile.am D engine/factory.py D engine/ibus-engine-pinyin.in D engine/main.py D engine/pinyin.py D engine/pinyin.xml.in.in D engine/pycreatedb.py D engine/pydict.py D engine/pyparser.py D engine/pysqlitedb.py D engine/pyutil.py D engine/special_phrase D engine/special_table D engine/specialphrase.py D engine/specialtable.py M ibus-pinyin.spec.in D icons/Makefile.am D icons/chinese.svg D icons/english.svg D icons/full-letter.svg D icons/full-punct.svg D icons/half-letter.svg D icons/half-punct.svg D icons/ibus-pinyin.svg M po/LINGUAS M po/POTFILES.in D po/ja.po A po/zh_CN.gmo M po/zh_CN.po M setup/Makefile.am A setup/ibus-pinyin-preferences.glade M setup/ibus-setup-pinyin.in M setup/main.py D setup/pydict.py D setup/setup.glade A src/Array.h A src/Bus.h A src/Config.cc A src/Config.h A src/Database.cc A src/Database.h A src/DoublePinyinEditor.cc A src/DoublePinyinEditor.h A src/DoublePinyinTable.h A src/Engine.cc A src/Engine.h A src/FullPinyinEditor.cc A src/FullPinyinEditor.h A src/HalfFullConverter.cc A src/HalfFullConverter.h A src/LookupTable.h A src/Main.cc A src/Makefile.am A src/PhraseArray.h A src/PhraseEditor.cc A src/PhraseEditor.h A src/PinyinArray.h A src/PinyinEditor.cc A src/PinyinEditor.h A src/PinyinEngine.cc A src/PinyinEngine.h A src/PinyinParser.cc A src/PinyinParser.h A src/Pointer.h A src/Property.h A src/SpecialTable.cc A src/SpecialTable.h A src/String.h A src/Text.h A src/Types.h A src/Util.h A src/main.db A src/pinyin.xml.in.in A src/scripts/genpytable.py A src/scripts/pydict.py A src/special_table commit 9911013dd7e4edc7c295dad24121309b1fda5718 Author: Peng Huang Date: 2009-09-19 15:10:21 +0800 Update some strings. M po/ja.po M po/zh_CN.po M setup/setup.glade commit 60dd01654c82899a97156a99bfa34c3514b8a078 Author: Peng Huang Date: 2009-09-15 13:35:17 +0800 Disable FuzzyPinyin in engine.py M engine/pinyin.py commit ce469a0c93a3cb71c079a76b5b0de48b68f5ca00 Author: Peng Huang Date: 2009-09-15 13:29:41 +0800 Display English candidates in correct color. M engine/pinyin.py commit 775d1ea766876016294bcc01a2df38107803928a Author: Peng Huang Date: 2009-06-12 14:57:19 +0800 Handle mouse click on lookup table. M engine/pinyin.py commit 58db26f7ba33a59f9f98669e929d3b4c43e778d4 Author: Peng Huang Date: 2009-08-21 12:23:58 +0800 Call bindtextdomain M setup/Makefile.am M setup/ibus-setup-pinyin.in M setup/main.py commit 531eaf2badafb45afdfd28f9148cdc7e3db30331 Author: Peng Huang Date: 2009-08-03 15:02:59 +0800 Reset preedit when press CapsLock key. M engine/pinyin.py commit 8500e2894bd02b64e3f39eb36c450c2b32070b73 Author: Peng Huang Date: 2009-07-23 17:10:05 +0800 Show origin input when enable ShuangPin M engine/pinyin.py commit 92eb30242e44b1924a3bf0818b315a51275c19f3 Author: Peng Huang Date: 2009-06-14 14:50:43 +0800 Modify process_key_event method & bump the version M configure.ac M engine/pinyin.py commit e3103262badb9b9784354c78ec9bb4a499b736c5 Author: Peng Huang Date: 2009-05-26 07:55:28 +0800 Only ask confirm when values changed. M setup/main.py commit 39cf7c6a88046faa81afba16024736a5ad09c80e Author: Peng Huang Date: 2009-05-26 07:53:26 +0800 Center the about string M setup/setup.glade commit 4d081ef806c95cf3d8ea9cdb2765c561ac4c26a0 Author: Peng Huang Date: 2009-05-26 07:51:39 +0800 Show About page in setup dialog M setup/setup.glade commit 9bbb69a2b3e69d1bbe4a86887d1506cba5bb88af Author: Peng Huang Date: 2009-05-25 14:01:09 +0800 Raise setup dialog when click setup icon. M engine/pinyin.py M setup/main.py commit ab99791ab560e0d1c0e806e7d708a6db121691bf Author: Peng Huang Date: 2009-05-25 13:25:58 +0800 Hide some page in setup dialog. M setup/setup.glade commit 1d7c4cc697322fc8cbd21f3fe0b49cd41c563dde Author: Huang Peng Date: 2009-03-03 11:37:08 +0800 Try to cover errors when user_db is locked. M engine/pinyin.py commit 9b2c20c8946f40928e89601f7ab7dd471a70a730 Author: Huang Peng Date: 2009-03-03 11:00:13 +0800 Remove some INDEX on py_phrase table to reduce the size of db file. And refine coding style. M engine/pysqlitedb.py commit 638416babf296f7f131de0c8b07221fa519cb929 Author: Huang Peng Date: 2009-02-24 17:19:48 +0800 Replace priority with rank. M engine/pinyin.xml.in.in commit ad6cffb02a0a50338fb9ded8996c446ec6d172dc Author: Huang Peng Date: 2009-02-24 16:41:03 +0800 Add priority in pinyin.xml. M engine/pinyin.xml.in.in commit 0867f5388828b3e82ff175a23e679fe8e2617d4d Author: Huang Peng Date: 2009-02-18 19:34:53 +0800 Fix problem when generate xml. M engine/pinyin.xml.in.in commit a135c88d75f76711683993abaa040c03ba7a39f5 Author: Peng Huang Date: 2009-02-12 11:15:22 +0800 Fix issue 254: Start pinyin setup failed when click setup property on language panel. M engine/ibus-engine-pinyin.in M engine/pinyin.py commit 1e04cf629ec734a17b2e2bff05af56654a2f78fe Author: Huang Peng Date: 2009-02-06 09:55:37 +0800 Fix problem when generate pinyin.xml M configure.ac M engine/Makefile.am D engine/pinyin.xml.in A engine/pinyin.xml.in.in M po/ja.po M po/zh_CN.po commit aaaa4768ecd33ee3f44b38fb29af7813c374f77f Author: Huang Peng Date: 2009-02-05 16:01:26 +0800 Migrate to ibus-1.1. M configure.ac M engine/Makefile.am M engine/factory.py M engine/ibus-engine-pinyin.in M engine/main.py D engine/pinyin.engine.in M engine/pinyin.py A engine/pinyin.xml.in M ibus-pinyin.spec.in M po/ja.po M po/zh_CN.po M setup/Makefile.am M setup/main.py commit fc2075852ca2fcce099625ecd524e0eadf38999f Author: Huang Peng Date: 2008-10-07 10:34:14 +0800 Disable user db optimizing. M setup/main.py M setup/setup.glade commit dc8bfa8aa8116b4182834bc5eea854575fec1fce Author: Huang Peng Date: 2008-10-04 10:35:07 +0800 Fix `make distcheck` error. M po/POTFILES.in commit 37d4be2d30fa8a2fd3a0bd39c9f7a8fbb155a1dc Author: Huang Peng Date: 2008-10-04 09:00:10 +0800 WIP. M engine/factory.py commit efdd39ea3e2e3d72da1921649454a75fb975318e Author: Huang Peng Date: 2008-10-03 17:29:02 +0800 Change config interface. M engine/pinyin.py M setup/main.py commit 4a0616f128ffead2a461600a0068d1495a03a21f Author: Huang Peng Date: 2008-09-25 13:55:01 +0800 Use pinyin-database-0.1.10.6.tar.bz2 M ibus-pinyin.spec.in commit 0892216bb1e017e9990f8ad6a86af5bc332632de Author: Huang Peng Date: 2008-09-15 20:32:11 +0800 Use pinyin-database-0.1.10.6.tar.bz2. M engine/Makefile.am commit 6a77264baf1037c9ab7950408f3456b177aef326 Author: Huang Peng Date: 2008-09-15 20:31:42 +0800 Change arguments of pycreatedb.py. M engine/pycreatedb.py commit 9cc7eb4d128cce38aa989b8d90e7404f0fa6a36b Author: Huang Peng Date: 2008-09-15 20:06:17 +0800 Refine coding style. M engine/pycreatedb.py commit 4293565d5ffac5938248e5c787ec11ebbf5e5a88 Author: Huang Peng Date: 2008-09-15 12:23:41 +0800 Fix some typoes. M engine/pinyin.py commit 196168b440f8cf160e23fd05d0663886e6f0aac3 Author: Huang Peng Date: 2008-09-15 02:56:52 +0800 Add Half punctuations feature by Jiahua Huang . M engine/pinyin.py M engine/pysqlitedb.py M po/ja.po M po/zh_CN.po M setup/main.py M setup/setup.glade commit e253a5d1a5cd03fa4d2bddb30d842122f2d1adcf Author: Huang Peng Date: 2008-09-12 07:50:28 +0800 Import debian packing 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-pinyin-default.ex A debian/ibus-pinyin.doc-base.EX 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.ex A debian/postrm.ex A debian/preinst.ex A debian/prerm.ex A debian/rules A debian/watch.ex commit 992d809adc9bb6e37ea68832868c2b0c405aed89 Author: Huang Peng Date: 2008-09-07 09:01:33 +0800 Hide fuzzy pinyin detial configure. M setup/setup.glade commit 9a4a296fef26a1729f7bb6da6a16a415ac39aa51 Author: Huang Peng Date: 2008-09-07 08:37:49 +0800 Hide fuzzy pinyin detial configure. M setup/setup.glade commit 26b7d6814d1d973b9cd227cdef8529aa402f6cf7 Author: Huang Peng Date: 2008-09-01 21:10:16 +0800 Update after process_key event. M engine/pinyin.py commit d7f72b5b9bb422b2eb2bec860ca8fc0bbaf1a12f Author: Huang Peng Date: 2008-08-31 11:50:38 +0800 Fix SpellCheck problems. M engine/pinyin.py commit 836819899a7b57428a50b475df20e41284832ef9 Author: Huang Peng Date: 2008-08-30 12:42:58 +0800 Add ja.po. A po/ja.po commit 778f3dc3f41040e9bfb9babb669605a6cfa1bf27 Author: Huang Peng Date: 2008-08-30 07:54:11 +0800 Translate engine name. M engine/factory.py M po/zh_CN.po commit 8ad05ac166e1e76d98c3eb15aee601eb56f2f8c2 Author: Huang Peng Date: 2008-08-29 07:23:42 +0800 Add Japanese translation by UTUMI Hirosi . M AUTHORS M po/LINGUAS commit 4fdfbb9cd8810b0621969ab823eecb3d7df7f4d7 Author: Huang Peng Date: 2008-08-25 13:59:13 +0800 Enable maintainer-mode. M configure.ac commit 6a3129c439a01cee7f8753618b36438b5014bcd8 Author: Huang Peng Date: 2008-08-22 12:03:02 +0800 Add Name.zh. M engine/pinyin.engine.in commit c35d180957dbf38a50d78b13a6acf0e2a27ef76a Author: Huang Peng Date: 2008-08-19 08:55:24 +0800 Refine code. M engine/pinyin.py commit ee5648bce5eac608e457504a605dea256469ad1c Author: Huang Peng Date: 2008-08-17 21:48:30 +0800 Fix problem when press LeftArrow with preedit. M engine/pinyin.py commit cfffb78b2c215fe9a4a729bee4ec1777c2324f69 Author: Huang Peng Date: 2008-08-17 08:24:51 +0800 Fix wrong path. M engine/pinyin.py commit 8a156d44015074655f3809b8fa9f5ed8cbb2604f Author: Huang Peng Date: 2008-08-15 12:17:29 +0800 Install ibus-setup-pinyin in bindir. M ibus-pinyin.spec.in M setup/Makefile.am commit 5aa6bf8b1ede1b38457cb5b5b5d92e4a41b1ce6f Author: Huang Peng Date: 2008-08-13 23:21:34 +0800 Remove unused sources files from POFILES.in. M po/POTFILES.in M po/zh_CN.po commit 559fb4a8497386c8a2f5684a58883fba432b6ae4 Author: Huang Peng Date: 2008-08-13 23:16:43 +0800 Use path to replace text. M icons/english.svg M icons/ibus-pinyin.svg commit f9d4c97799dc475a80cbebfaa9ec589e3e67b188 Author: Huang Peng Date: 2008-08-13 23:11:46 +0800 Add i18n support in spec file. M ibus-pinyin.spec.in commit 85b1ca77319a394977ca94f2f8c4e7a3f3cae68f Author: Huang Peng Date: 2008-08-13 23:08:46 +0800 Add zh_CN.po A po/zh_CN.po commit b8979fddf87da82a6a34cf57848be66ebe9393da Author: Huang Peng Date: 2008-08-13 22:54:13 +0800 i18n WIP. A po/LINGUAS M po/POTFILES.in commit d2d44a33909d71c5602a7bb7a9358b4eb089a1f0 Author: Huang Peng Date: 2008-08-13 18:28:49 +0800 Ignore NumLock mask. M engine/pinyin.py commit daff2154050c95f71a09664db4d9fd635612a097 Author: Huang Peng Date: 2008-08-13 16:01:57 +0800 Install ibus-engine-pinyin in @bindir@ M configure.ac M engine/Makefile.am M engine/pinyin.engine.in M ibus-pinyin.spec.in commit 8421a297e4e612558816377fc0c480b151b77081 Author: Huang Peng Date: 2008-08-11 01:16:22 +0800 optimize lookup_table transport performance. M engine/pinyin.py commit f72efe3a0d6a75e75fa23687586d3741c383b485 Author: Huang Peng Date: 2008-08-09 08:33:01 +0800 Refine coding style. M configure.ac commit c60fc3e24fa5bce8362487733004f444a1c9ccc2 Author: Huang Peng Date: 2008-08-08 17:22:01 +0800 Modify for fedora packaging review. M ibus-pinyin.spec.in commit 65ece255cd9d2e6d7ae8951a7f4e232406d568c2 Author: Huang Peng Date: 2008-08-08 15:13:10 +0800 Use GPLv2. M COPYING commit 4ec9e409834694cfe68fb83d5594d52209f79828 Author: Huang Peng Date: 2008-08-08 13:16:53 +0800 Refine doc. M README M ibus-pinyin.spec.in commit 6b59ed7ee0dc0e87e45e86c2677c5ecb1f418b42 Author: Huang Peng Date: 2008-08-08 09:41:24 +0800 Fix problems reported by rpmlint M Makefile.am M README M engine/Makefile.am M ibus-pinyin.spec.in commit 59a0e164ed3c807bc77e38e2f63068151fc5f68a Author: Huang Peng Date: 2008-08-07 19:26:14 +0800 Set tooltip for setup property. M engine/pinyin.py commit 275b8af0d38a3f3f8b2f167f6d32302880d09ddb Author: Huang Peng Date: 2008-08-06 14:29:19 +0800 Fix rpm problem. M engine/Makefile.am M engine/pinyin.engine.in M engine/pysqlitedb.py M ibus-pinyin.spec.in commit f9993e15e8554d1a6076b45319448b235343a266 Author: Huang Peng Date: 2008-08-05 21:18:56 +0800 Do not update ui duing English input mode. M engine/pinyin.py commit b7fda37131e221e42e4bd06f835d4c12bd82fcb1 Author: Huang Peng Date: 2008-08-05 18:09:12 +0800 Group item in full-punct.svg M icons/full-punct.svg commit a03c7edf5d96e2026ac865adcb09129e4bc2f59e Author: Huang Peng Date: 2008-08-05 18:08:03 +0800 Edit full-punct.svg. M icons/full-punct.svg commit 3fcd03547de68bcab9e3a5c84f30c78bded9fe43 Author: Huang Peng Date: 2008-08-05 11:25:32 +0800 Implement setup button in lanuage panel. M engine/pinyin.py commit 017b9ae582d12c6cc3a63b097577e3307f851b71 Author: Huang Peng Date: 2008-08-05 10:56:45 +0800 Get install location from $IBUS_PINYIN_LOCATION. M engine/Makefile.am M engine/factory.py M engine/pinyin.py M icons/Makefile.am commit 0fe97edd530b363b858d6e59731d2dcc85b55ba5 Author: Huang Peng Date: 2008-08-05 10:46:55 +0800 Get install location from $IBUS_PINYIN_LOCATION. M engine/Makefile.am M engine/ibus-engine-pinyin.in M engine/pinyin.py M engine/pysqlitedb.py M engine/specialphrase.py M engine/specialtable.py commit c85a12d8233a0de3c54bb75d1b8cea3d9b71c550 Author: Huang Peng Date: 2008-08-02 21:38:12 +0800 Disable GBK by default. M engine/pinyin.py M setup/main.py commit b8cc28392439f2ef89a8082b58e3abe993b719e3 Author: Huang Peng Date: 2008-08-02 16:38:32 +0800 Remove autoheader in autogen.sh. M autogen.sh commit 1cb0d2c1cbba0e5304db32d7242136f11575511a Author: Huang Peng Date: 2008-08-02 16:24:55 +0800 Download py.db from SCIM-Python project. M engine/Makefile.am commit 7f9640ee1fa7e6a404b63378163964ff0f46c90f Author: Huang Peng Date: 2008-07-31 20:27:08 +0800 WIP. M setup/main.py commit bd0b9b00f32a6e89ae02957d8bd87dc233b4bf6d Author: Huang Peng Date: 2008-07-31 19:48:57 +0800 Refine coding style. M setup/main.py commit 50a7676aa97b84719ffb16369052a9557c961dbf Author: Huang Peng Date: 2008-07-31 19:47:43 +0800 WIP. M setup/main.py M setup/setup.glade commit 4b70c60463cf791ebc820ba3740ed375bf348737 Author: Huang Peng Date: 2008-07-31 19:33:05 +0800 WIP. M setup/Makefile.am M setup/main.py commit ff2f5eb3c770d5bdacd919af0bcfac7fd7768107 Author: Huang Peng Date: 2008-07-31 19:28:59 +0800 Add a symbol link to ../engine/pydict.py A setup/pydict.py commit efcdfd3ffb3cc7c6eb6f20246aea3f7bb7133e50 Author: Huang Peng Date: 2008-07-31 18:11:25 +0800 Change static methods' name. M engine/factory.py M engine/pinyin.py commit 8532f6aacdbef9532b5b0143150c724ee246a66b Author: Huang Peng Date: 2008-07-31 17:01:59 +0800 Remove __init__.py. D setup/__init__.py commit 7c79ccacf56185c830b48c63fb1b57f4efb1a4cc Author: Huang Peng Date: 2008-07-31 16:28:52 +0800 WIP. M configure.ac M setup/Makefile.am A setup/ibus-setup-pinyin.in commit 882ca1c1a07e69d26b54f97d64b9898e2e315433 Author: Huang Peng Date: 2008-07-31 16:25:39 +0800 Add setup. M Makefile.am M configure.ac M engine/Makefile.am M engine/ibus-engine-pinyin.in A setup/Makefile.am A setup/__init__.py A setup/main.py A setup/setup.glade commit d5c39aac7b5999c6aa69dc72dad2ee0b1751ad8e Author: Huang Peng Date: 2008-07-31 16:13:12 +0800 Use ibus config schema. M engine/factory.py M engine/pinyin.py commit 6d2815e09ef2d068fa44d1dcfa5412631d64f235 Author: Huang Peng Date: 2008-07-31 13:13:36 +0800 Update UI before commit string. M engine/pinyin.py commit dc5047095aeaeae36b8f256fcac488e5ec8d02c8 Author: Huang Peng Date: 2008-07-31 13:03:18 +0800 Rename IBus to Bus. M engine/main.py commit fe89bf6474e902e26c14ea1a9fb1ae0671148ebb Author: Huang Peng Date: 2008-07-31 12:11:12 +0800 WIP. M engine/main.py commit 0d482d9d91b8013da8ad4fc9f7173d97a292eb39 Author: Huang Peng Date: 2008-07-28 14:29:47 +0800 Use IBus replace Connection. M engine/factory.py M engine/main.py commit 94039b8d966944bfa41435087bdd962124a8073a Author: Huang Peng Date: 2008-07-25 17:01:57 +0800 Use ibus.Connection to replace dbus.Connection M engine/main.py commit ffedf87ed82fadb762a00b1793c1c67ced06ed39 Author: Huang Peng Date: 2008-07-25 15:27:23 +0800 focus_in engine when enable. M engine/pinyin.py commit 4fd33361000bfcf80a549e1ba494277993fbf0fa Author: Huang Peng Date: 2008-07-25 11:15:39 +0800 Fix properties' problem when focus_in & focus_out M engine/pinyin.py commit 28bc29b4fdf65eb17628d4c5746ba5fe7583973d Author: Huang Peng Date: 2008-07-25 10:45:34 +0800 Check english if preedit is not empty. M engine/pinyin.py commit fb131cea327cb7e8d52eff4ecdd5a87b922e51ce Author: Huang Peng Date: 2008-07-24 13:31:19 +0800 Add shadown for icons. M icons/chinese.svg M icons/english.svg M icons/full-letter.svg M icons/full-punct.svg M icons/half-letter.svg M icons/half-punct.svg M icons/ibus-pinyin.svg commit bd67973a8e455647142636ac44f6c5d557fd889b Author: Huang Peng Date: 2008-07-24 13:01:32 +0800 Update pinyin icon. M icons/ibus-pinyin.svg commit ef7ec3481fab16f16ff9a0d09de6d439f617b270 Author: Huang Peng Date: 2008-07-24 12:59:46 +0800 Create new icons. M engine/factory.py M engine/pinyin.py M icons/Makefile.am A icons/chinese.svg A icons/english.svg A icons/full-letter.svg A icons/full-punct.svg A icons/half-letter.svg A icons/half-punct.svg commit cf110cb4094370ef59e42feef31407a6608ff8b9 Author: Huang Peng Date: 2008-07-23 16:09:06 +0800 Save data in ~/ibus/pinyin M engine/pysqlitedb.py commit 4395775c092ecad7e701f8f78ce0312aa0c343c0 Author: Huang Peng Date: 2008-07-22 22:34:02 +0800 WIP M engine/pinyin.py commit 0683bc7fdffe14e3d3370fd04a53926cbcb7ffa7 Author: Huang Peng Date: 2008-07-22 14:57:09 +0800 Add DBUS_DEBUG=true. M engine/Makefile.am commit c5f3a3f327f2ad5f34e1382a2df695ae86889cb3 Author: Huang Peng Date: 2008-07-22 12:50:38 +0800 WIP. M engine/pinyin.py commit 7c614c07c36c929caedabbb2b5ddd1cef0af67cb Author: Huang Peng Date: 2008-07-20 12:55:56 +0800 Enhance performance. M engine/pinyin.py commit 5ae43a9abd1775ab09775ef70799832bcce18dd4 Author: Huang Peng Date: 2008-07-20 07:37:42 +0800 Fix some typos. M engine/pinyin.py commit 74aaa879e95a05f63dce14e32439c01394cf1a4c Author: Huang Peng Date: 2008-07-20 07:37:03 +0800 Remove engine.py D engine/engine.py commit 3074f2ffba196c78b408f313cc2bc967b22e9ab1 Author: Huang Peng Date: 2008-07-18 16:54:22 +0800 Fix bug. M engine/Makefile.am M engine/pinyin.engine.in commit 09c183f51cd1e52109d5481d5191952faa893dc4 Merge: 39e0598 2cd5821 Author: Huang Peng Date: 2008-07-18 16:47:07 +0800 Merge commit 'tmpl/master' into temp Conflicts: configure.ac engine/Makefile.am engine/engine.py engine/factory.py engine/main.py commit 2cd58216d71607f7ee417a30fab016015e3b7025 Author: Huang Peng Date: 2008-07-18 16:40:51 +0800 Add enchant.engine.in. M configure.ac M engine/Makefile.am A engine/enchant.engine.in commit 39e0598679d369c2fae73929d8c098dfeb1b4202 Author: Huang Peng Date: 2008-07-18 16:35:55 +0800 Make page_{up,down} & cursor_{up,down} work. M engine/pinyin.py commit cd59896a961cf8edacbbdacd9a56c6f06fe3c333 Author: Huang Peng Date: 2008-07-18 16:25:50 +0800 WIP. M engine/pinyin.py commit 8f2318497a4e3e054ab549c4e29554ef4033252c Author: Huang Peng Date: 2008-07-18 16:18:03 +0800 Fix a bug when create KeyEvent object. M engine/pinyin.py commit 087557c33f2185c7866629e6729e5d428d93ec66 Author: Huang Peng Date: 2008-07-18 13:49:34 +0800 Add __invalidate function. M engine/factory.py M engine/pinyin.py commit 98051a45d3643233da16904dcd8c4a73727bbc0b Author: Huang Peng Date: 2008-07-18 13:39:23 +0800 Remove engine.py. M engine/Makefile.am D engine/engine.py commit 036f8e7a4805003bd84fb74934de9bd65efd2b72 Author: Huang Peng Date: 2008-07-18 11:31:09 +0800 WIP. M engine/factory.py M engine/main.py M engine/pinyin.py commit 08ed60f18bf97aa81ae63da4e162dfb008bb5f69 Author: Huang Peng Date: 2008-07-18 10:59:00 +0800 WIP. M engine/pinyin.py commit b97883b6daaaa5185d48bc0d6d9b61a19f71da4b Author: Huang Peng Date: 2008-07-18 10:45:14 +0800 Add LANG=en_US in test task. M engine/Makefile.am commit b5282fef3d73c78b956ba755bfeb2ffe30e15ecf Author: Huang Peng Date: 2008-07-18 10:40:35 +0800 Refactory Engine & EngineFactory. M engine/engine.py M engine/factory.py M engine/main.py commit 2d61073e078d64ba1393034113f0ef7b349223a5 Author: Huang Peng Date: 2008-07-17 07:44:51 +0800 Rename ibus-engine-enchant.in to ibus-engine-pinyin.in M configure.ac M engine/Makefile.am D engine/ibus-engine-enchant.in A engine/ibus-engine-pinyin.in commit 84965105c3d8b689d53bb00f4da778401921a4a5 Author: Huang Peng Date: 2008-07-16 22:46:06 +0800 WIP. A engine/pinyin.py A engine/special_phrase A engine/special_table A engine/specialphrase.py A engine/specialtable.py commit ceb12f46eaad2c186f0334369a62f3f19c76e9fb Author: Huang Peng Date: 2008-07-16 22:20:37 +0800 Add pycreatedb.py M engine/Makefile.am A engine/pycreatedb.py commit de72e8c5172d8b52391b8d02f576ded5e958a968 Author: Huang Peng Date: 2008-07-16 22:16:50 +0800 Add pysqlitedb.py M engine/Makefile.am A engine/pysqlitedb.py commit 2ff9d96200b0d905520c913ef3c652bf9e8b8e00 Author: Huang Peng Date: 2008-07-16 19:44:22 +0800 refine coding style. M engine/pydict.py M engine/pyparser.py M engine/pyutil.py commit efddab95f00292f4ffe69fbcc71055c4d1abbdb3 Author: Huang Peng Date: 2008-07-16 19:43:10 +0800 Replace tap with spaces. M engine/pydict.py M engine/pyparser.py M engine/pyutil.py commit 0239c6260e1f155122d18412142a1e4cb1eea0db Author: Huang Peng Date: 2008-07-16 19:42:10 +0800 Add pyutil.py M engine/Makefile.am A engine/pyutil.py commit 375f483fb28c88d443232576ff83bae74ac816c6 Author: Huang Peng Date: 2008-07-16 19:40:45 +0800 Add pyparser.py M engine/Makefile.am A engine/pyparser.py commit 9a4965b22dedf93de263ffe65da07632baf2f4ba Author: Huang Peng Date: 2008-07-16 19:38:25 +0800 Add pydict.py M engine/Makefile.am M engine/factory.py M engine/main.py A engine/pydict.py commit 85b2059354c5cb53dae32b675d988079391a312a Author: Huang Peng Date: 2008-07-15 17:05:53 +0800 Change vim settings and replace tab with spaces. M engine/engine.py M engine/factory.py M engine/main.py commit 0a5aa6c5a7cee64a9327aa6c615f98dcebc0763f Author: Huang Peng Date: 2008-07-15 17:05:17 +0800 Change vim settings and replace tab with spaces. M engine/engine.py M engine/factory.py M engine/main.py commit bdd57e9ca4fd3eb300706e975e10ba9a70d46dc3 Merge: 9294f79 1c4769d Author: Huang Peng Date: 2008-07-15 13:45:55 +0800 Merge commit 'tmpl/master' commit 1c4769d2d09646449ff5349cb047f99d7dcfc3e8 Author: Huang Peng Date: 2008-07-15 13:45:36 +0800 Fix a typo. M engine/factory.py commit 9294f791411fdfcd666cfdc1e30ae339024b9dcc Merge: 7c00eb9 41fd717 Author: Huang Peng Date: 2008-07-15 13:44:29 +0800 Merge commit 'tmpl/master' commit 41fd717f3b26c1e337e3d92f78f67c9a79926818 Author: Huang Peng Date: 2008-07-15 13:42:15 +0800 Refine coding style M engine/engine.py M engine/factory.py M engine/main.py commit 7c00eb9e07f6a6ae093d772900415fe0d94585de Author: Huang Peng Date: 2008-07-04 11:22:09 +0800 Add exec in shell launch script. M engine/ibus-engine-enchant.in commit 406ee586236520b70aee9e247828bae2f94b1d8b Author: Huang Peng Date: 2008-07-04 11:20:59 +0800 Add exec in shell launch script. M engine/ibus-engine-enchant.in commit add0371bc27ecfc6555cde544d6792fc7273b9ad Author: Huang Peng Date: 2008-07-02 18:38:45 +0800 Add Destroy functions. M engine/engine.py M engine/factory.py commit cf49f79e427188914c2a425df05b066a3fb33b6e Author: Huang Peng Date: 2008-07-02 17:44:51 +0800 Create PinYin project from template. M .gitignore M Makefile.am M configure.ac M engine/Makefile.am A ibus-pinyin.spec.in D ibus-tmpl.spec.in M icons/Makefile.am D icons/ibus-enchant.svg A icons/ibus-pinyin.svg commit 7d8b4502603d38e023e9eba90a2a8391fded6edc Author: Huang Peng Date: 2008-07-02 17:20:00 +0800 Use @PACKAGE_NAME@ to replace ibus-tmpl M ibus-tmpl.spec.in commit 26e5a0081d754ef1f1a52cc1a4c8cbfbac4f4551 Author: Huang Peng Date: 2008-07-02 17:16:57 +0800 Change header in icons/Makefile.am M icons/Makefile.am commit 3f3eecb73dfbdfca91d3bf7ae60ea8c7b41dd9bd Author: Huang Peng Date: 2008-07-02 17:12:20 +0800 define package_name macro. M Makefile.am M configure.ac commit f6303d37775aff4c1087bea9da91345a5c849afd Author: Huang Peng Date: 2008-06-29 16:48:38 +0800 Add icon. M Makefile.am M configure.ac M engine/factory.py M ibus-tmpl.spec.in A icons/Makefile.am A icons/ibus-enchant.svg commit b741f5db502727dfe40d4087019c882a85d96f9f Author: Huang Peng Date: 2008-06-29 16:18:54 +0800 Use GPLv2. M Makefile.am M configure.ac M engine/Makefile.am M engine/engine.py M engine/factory.py M engine/ibus-engine-enchant.in M engine/main.py M ibus-tmpl.spec.in M m4/Makefile.am commit 1e9f9787283d449fe7446a9fa19924c964980180 Author: Huang Peng Date: 2008-06-29 16:10:36 +0800 Add a template engine - enchant. M Makefile.am M configure.ac A engine/Makefile.am A engine/engine.py A engine/factory.py A engine/ibus-engine-enchant.in A engine/main.py M ibus-tmpl.spec.in commit 058ff8eec8aa8a7e5e8e7b404f2f47d87456bfaa Author: Huang Peng Date: 2008-06-29 15:57:07 +0800 Import IBus template project. A .gitignore A AUTHORS A COPYING A ChangeLog A Makefile.am A NEWS A README A autogen.sh A configure.ac A ibus-tmpl.spec.in A m4/.gitignore A m4/Makefile.am A m4/as-version.m4 A po/.gitignore A po/Makevars A po/POTFILES.in ibus-pinyin-1.5.0/setup/0000775000175000017500000000000012064356726012141 500000000000000ibus-pinyin-1.5.0/setup/version.py0000664000175000017500000000154512063705673014123 00000000000000# vim:set et ts=4 sts=4: # # ibus-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. def get_version(): return "1.5.0" ibus-pinyin-1.5.0/setup/version.py.in0000664000175000017500000000155111776565552014537 00000000000000# vim:set et ts=4 sts=4: # # ibus-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. def get_version(): return "@VERSION@" ibus-pinyin-1.5.0/setup/main.py0000664000175000017500000004463511776565552013403 00000000000000# vim:set et ts=4 sts=4: # -*- coding: utf-8 -*- # # ibus-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # Copyright (c) 2010 BYVoid # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. import gettext import locale import os import sys from gi.repository import GLib from gi.repository import Gtk from gi.repository import IBus from xdg import BaseDirectory import version _ = lambda a : gettext.dgettext("ibus-pinyin", a) class PreferencesDialog: def __init__(self, engine): locale.setlocale(locale.LC_ALL, "") localedir = os.getenv("IBUS_LOCALEDIR") gettext.bindtextdomain("ibus-pinyin", localedir) gettext.bind_textdomain_codeset("ibus-pinyin", "UTF-8") self.__bus = IBus.Bus() self.__config = self.__bus.get_config() self.__builder = Gtk.Builder() self.__builder.set_translation_domain("ibus-pinyin") self.__builder.add_from_file("ibus-pinyin-preferences.ui") self.__dialog = self.__builder.get_object("dialog") self.__init_pages() if engine == "pinyin": self.__config_namespace = "engine/Pinyin" self.__values = dict(self.__config.get_values(self.__config_namespace)) self.__init_general() self.__init_pinyin() self.__init_fuzzy() self.__init_dictionary() self.__init_about() elif engine == "bopomofo": self.__config_namespace = "engine/Bopomofo" self.__values = dict(self.__config.get_values(self.__config_namespace)) self.__init_general() self.__init_bopomofo() self.__init_fuzzy() self.__init_dictionary() self.__init_about() self.__convert_fuzzy_pinyin_to_bopomofo() else: print("Error: Unknown Engine") exit() self.__pages.set_current_page(0) def __init_pages(self): self.__pages = self.__builder.get_object("pages") self.__page_general = self.__builder.get_object("pageGeneral") self.__page_pinyin_mode = self.__builder.get_object("pagePinyinMode") self.__page_bopomofo_mode = self.__builder.get_object("pageBopomofoMode") self.__page_fuzzy = self.__builder.get_object("pageFuzzy") self.__page_dictionary = self.__builder.get_object("pageDictionary") self.__page_about = self.__builder.get_object("pageAbout") self.__page_general.hide() self.__page_pinyin_mode.hide() self.__page_bopomofo_mode.hide() self.__page_fuzzy.hide() self.__page_dictionary.hide() self.__page_about.hide() def __init_general(self): # page General self.__page_general.show() # init state self.__init_chinese = self.__builder.get_object("InitChinese") self.__init_english = self.__builder.get_object("InitEnglish") self.__init_full = self.__builder.get_object("InitFull") self.__init_half = self.__builder.get_object("InitHalf") self.__init_full_punct = self.__builder.get_object("InitFullPunct") self.__init_half_punct = self.__builder.get_object("InitHalfPunct") self.__init_simp = self.__builder.get_object("InitSimplifiedChinese") self.__init_trad = self.__builder.get_object("IniTraditionalChinese") # UI self.__lookup_table_page_size = self.__builder.get_object("LookupTablePageSize") self.__lookup_table_orientation = self.__builder.get_object("LookupTableOrientation") # read values self.__init_chinese.set_active(self.__get_value("InitChinese", True)) self.__init_full.set_active(self.__get_value("InitFull", False)) self.__init_full_punct.set_active(self.__get_value("InitFullPunct", True)) self.__init_simp.set_active(self.__get_value("InitSimplifiedChinese", True)) self.__lookup_table_orientation.set_active(self.__get_value("LookupTableOrientation", 0)) self.__lookup_table_page_size.set_value(self.__get_value("LookupTablePageSize", 5)) # connect signals self.__init_chinese.connect("toggled", self.__toggled_cb, "InitChinese") self.__init_full.connect("toggled", self.__toggled_cb, "InitFull") self.__init_full_punct.connect("toggled", self.__toggled_cb, "InitFullPunct") self.__init_simp.connect("toggled", self.__toggled_cb, "InitSimplifiedChinese") def __lookup_table_page_size_changed_cb(adjustment): self.__set_value("LookupTablePageSize", int(adjustment.get_value())) def __lookup_table_orientation_changed_cb(widget): self.__set_value("LookupTableOrientation", widget.get_active()) self.__lookup_table_orientation.connect("changed", __lookup_table_orientation_changed_cb) self.__lookup_table_page_size.connect("value-changed", __lookup_table_page_size_changed_cb) def __init_pinyin(self): # page self.__page_pinyin_mode.show() # pinyin self.__full_pinyin = self.__builder.get_object("FullPinyin") self.__incomplete_pinyin = self.__builder.get_object("IncompletePinyin") self.__double_pinyin = self.__builder.get_object("DoublePinyin") self.__double_pinyin_schema = self.__builder.get_object("DoublePinyinSchema") # self.__double_pinyin_schema_label = self.__builder.get_object("labelDoublePinyinSchema") self.__double_pinyin_show_raw = self.__builder.get_object("DoublePinyinShowRaw") # read value self.__incomplete_pinyin.set_active(self.__get_value("IncompletePinyin", True)) self.__full_pinyin.set_active(not self.__get_value("DoublePinyin", False)) self.__double_pinyin_schema.set_active(self.__get_value("DoublePinyinSchema", 0)) if self.__full_pinyin.get_active(): # self.__incomplete_pinyin.set_sensitive(True) self.__double_pinyin_schema.set_sensitive(False) # self.__double_pinyin_schema_label.set_sensitive(False) self.__double_pinyin_show_raw.set_sensitive(False) else: # self.__incomplete_pinyin.set_sensitive(False) self.__double_pinyin_schema.set_sensitive(True) # self.__double_pinyin_schema_label.set_sensitive(True) self.__double_pinyin_show_raw.set_sensitive(True) def __double_pinyin_toggled_cb(widget): val = widget.get_active() self.__set_value("DoublePinyin", val) self.__double_pinyin_schema.set_sensitive(val) # self.__double_pinyin_schema_label.set_sensitive(val) self.__double_pinyin_show_raw.set_sensitive(val) def __double_pinyin_schema_changed_cb(widget): self.__set_value("DoublePinyinSchema", widget.get_active()) # connect signals self.__double_pinyin.connect("toggled", __double_pinyin_toggled_cb) self.__incomplete_pinyin.connect("toggled", self.__toggled_cb, "IncompletePinyin") self.__double_pinyin_schema.connect("changed", __double_pinyin_schema_changed_cb) self.__double_pinyin_show_raw.connect("toggled", self.__toggled_cb, "DoublePinyinShowRaw") self.__init_input_custom() self.__init_correct_pinyin() def __init_bopomofo(self): # page Bopomodo Mode self.__page_bopomofo_mode.show() # bopomofo mode self.__incomplete_bopomofo = self.__builder.get_object("IncompleteBopomofo") self.__bopomofo_keyboard_mapping = self.__builder.get_object("BopomofoKeyboardMapping") # selection mode self.__select_keys = self.__builder.get_object("SelectKeys") self.__guide_key = self.__builder.get_object("GuideKey") self.__auxiliary_select_key_f = self.__builder.get_object("AuxiliarySelectKey_F") self.__auxiliary_select_key_kp = self.__builder.get_object("AuxiliarySelectKey_KP") # other self.__enter_key = self.__builder.get_object("CommitFirstCandidate") # read value self.__bopomofo_keyboard_mapping.set_active(self.__get_value("BopomofoKeyboardMapping", 0)) self.__incomplete_bopomofo.set_active(self.__get_value("IncompletePinyin", False)) self.__select_keys.set_active(self.__get_value("SelectKeys", 0)) self.__guide_key.set_active(self.__get_value("GuideKey", 1)) self.__auxiliary_select_key_f.set_active(self.__get_value("AuxiliarySelectKey_F", 1)) self.__auxiliary_select_key_kp.set_active(self.__get_value("AuxiliarySelectKey_KP", 1)) self.__enter_key.set_active(self.__get_value("EnterKey", True)) # connect signals def __bopomofo_keyboard_mapping_changed_cb(widget): self.__set_value("BopomofoKeyboardMapping", widget.get_active()) def __select_keys_changed_cb(widget): self.__set_value("SelectKeys", widget.get_active()) self.__bopomofo_keyboard_mapping.connect("changed", __bopomofo_keyboard_mapping_changed_cb) self.__incomplete_bopomofo.connect("toggled", self.__toggled_cb, "IncompletePinyin") self.__select_keys.connect("changed", __select_keys_changed_cb) self.__guide_key.connect("toggled", self.__toggled_cb, "GuideKey") self.__auxiliary_select_key_f.connect("toggled", self.__toggled_cb, "AuxiliarySelectKey_F") self.__auxiliary_select_key_kp.connect("toggled", self.__toggled_cb, "AuxiliarySelectKey_KP") self.__enter_key.connect("toggled", self.__toggled_cb, "EnterKey") def __init_input_custom(self): # others self.__shift_select_candidate = self.__builder.get_object("ShiftSelectCandidate") self.__minus_equal_page = self.__builder.get_object("MinusEqualPage") self.__comma_period_page = self.__builder.get_object("CommaPeriodPage") self.__auto_commit = self.__builder.get_object("AutoCommit") # read values self.__shift_select_candidate.set_active(self.__get_value("ShiftSelectCandidate", False)) self.__minus_equal_page.set_active(self.__get_value("MinusEqualPage", True)) self.__comma_period_page.set_active(self.__get_value("CommaPeriodPage", True)) self.__auto_commit.set_active(self.__get_value("AutoCommit", False)) # connect signals self.__shift_select_candidate.connect("toggled", self.__toggled_cb, "ShiftSelectCandidate") self.__minus_equal_page.connect("toggled", self.__toggled_cb, "MinusEqualPage") self.__comma_period_page.connect("toggled", self.__toggled_cb, "CommaPeriodPage") self.__auto_commit.connect("toggled", self.__toggled_cb, "AutoCommit") def __init_correct_pinyin(self): # auto correct self.__correct_pinyin = self.__builder.get_object("CorrectPinyin") self.__correct_pinyin_widgets = [ ("CorrectPinyin_GN_NG", True), ("CorrectPinyin_MG_NG", True), ("CorrectPinyin_IOU_IU", True), ("CorrectPinyin_UEI_UI", True), ("CorrectPinyin_UEN_UN", True), ("CorrectPinyin_UE_VE", True), ("CorrectPinyin_V_U", True), ("CorrectPinyin_ON_ONG", True), ] def __correct_pinyin_toggled_cb(widget): val = widget.get_active() map(lambda w: self.__builder.get_object(w[0]).set_sensitive(val), self.__correct_pinyin_widgets) self.__correct_pinyin.connect("toggled", __correct_pinyin_toggled_cb) # init value self.__correct_pinyin.set_active(self.__get_value("CorrectPinyin", True)) for name, defval in self.__correct_pinyin_widgets: widget = self.__builder.get_object(name) widget.set_active(self.__get_value(name, defval)) self.__correct_pinyin.connect("toggled", self.__toggled_cb, "CorrectPinyin") for name, defval in self.__correct_pinyin_widgets: widget = self.__builder.get_object(name) widget.connect("toggled", self.__toggled_cb, name) def __init_fuzzy(self): # page Fuzzy self.__page_fuzzy.show() # fuzzy pinyin self.__fuzzy_pinyin = self.__builder.get_object("FuzzyPinyin") self.__fuzzy_pinyin_widgets = [ ("FuzzyPinyin_C_CH", True), ("FuzzyPinyin_Z_ZH", True), ("FuzzyPinyin_S_SH", True), ("FuzzyPinyin_CH_C", False), ("FuzzyPinyin_ZH_Z", False), ("FuzzyPinyin_SH_S", False), ("FuzzyPinyin_L_N", True), ("FuzzyPinyin_F_H", True), ("FuzzyPinyin_L_R", False), ("FuzzyPinyin_K_G", True), ("FuzzyPinyin_N_L", False), ("FuzzyPinyin_H_F", False), ("FuzzyPinyin_R_L", False), ("FuzzyPinyin_G_K", False), ("FuzzyPinyin_AN_ANG", True), ("FuzzyPinyin_EN_ENG", True), ("FuzzyPinyin_IN_ING", True), ("FuzzyPinyin_ANG_AN", True), ("FuzzyPinyin_ENG_EN", True), ("FuzzyPinyin_ING_IN", True), # ("FuzzyPinyin_IAN_IANG", True), # ("FuzzyPinyin_UAN_UANG", True), # ("FuzzyPinyin_IANG_IAN", True), # ("FuzzyPinyin_UANG_UAN", True), ] def __fuzzy_pinyin_toggled_cb(widget): val = widget.get_active() map(lambda w: self.__builder.get_object(w[0]).set_sensitive(val), self.__fuzzy_pinyin_widgets) self.__fuzzy_pinyin.connect("toggled", __fuzzy_pinyin_toggled_cb) # init value self.__fuzzy_pinyin.set_active(self.__get_value("FuzzyPinyin", False)) for name, defval in self.__fuzzy_pinyin_widgets: widget = self.__builder.get_object(name) widget.set_active(self.__get_value(name, defval)) self.__fuzzy_pinyin.connect("toggled", self.__toggled_cb, "FuzzyPinyin") for name, defval in self.__fuzzy_pinyin_widgets: widget = self.__builder.get_object(name) widget.connect("toggled", self.__toggled_cb, name) def __convert_fuzzy_pinyin_to_bopomofo(self): options = [ ("FuzzyPinyin_C_CH", "ㄘ => ㄔ"), ("FuzzyPinyin_Z_ZH", "ㄗ => ㄓ"), ("FuzzyPinyin_S_SH", "ㄙ => ㄕ"), ("FuzzyPinyin_CH_C", "ㄔ => ㄘ"), ("FuzzyPinyin_ZH_Z", "ㄓ => ㄗ"), ("FuzzyPinyin_SH_S", "ㄕ => ㄙ"), ("FuzzyPinyin_L_N", "ㄌ => ㄋ"), ("FuzzyPinyin_F_H", "ㄈ => ㄏ"), ("FuzzyPinyin_L_R", "ㄌ => ㄖ"), ("FuzzyPinyin_K_G", "ㄎ => ㄍ"), ("FuzzyPinyin_N_L", "ㄋ => ㄌ"), ("FuzzyPinyin_H_F", "ㄏ => ㄈ"), ("FuzzyPinyin_R_L", "ㄖ => ㄌ"), ("FuzzyPinyin_G_K", "ㄍ => ㄎ"), ("FuzzyPinyin_AN_ANG", "ㄢ => ㄤ"), ("FuzzyPinyin_EN_ENG", "ㄣ => ㄥ"), ("FuzzyPinyin_IN_ING", "ㄧㄣ => ㄧㄥ"), ("FuzzyPinyin_ANG_AN", "ㄤ => ㄢ"), ("FuzzyPinyin_ENG_EN", "ㄥ => ㄣ"), ("FuzzyPinyin_ING_IN", "ㄧㄥ => ㄧㄣ"), # ("FuzzyPinyin_IAN_IANG", "ㄧㄢ => ㄧㄤ"), # ("FuzzyPinyin_UAN_UANG", "ㄨㄢ => ㄨㄤ"), # ("FuzzyPinyin_IANG_IAN", "ㄧㄤ => ㄧㄢ"), # ("FuzzyPinyin_UANG_UAN", "ㄨㄤ => ㄨㄢ"), ] for name, label in options: self.__builder.get_object(name).set_label(label) def __init_dictionary(self): # page Dictionary self.__page_dictionary.show() # dictionary self.__special_phrases = self.__builder.get_object("SpecialPhrases") self.__edit_special_phrases = self.__builder.get_object("EditSpecialPhrases") # read values self.__special_phrases.set_active(self.__get_value("SpecialPhrases", True)) def __edit_special_phrases_clicked_cb(widget): from xdg import BaseDirectory import shutil path = os.path.join(BaseDirectory.xdg_config_home, "ibus", "pinyin") os.path.exists(path) or os.makedirs(path) path = os.path.join(path, "phrases.txt") if not os.path.exists(path): datadir = os.getenv("IBUS_DATAROOTDIR") or "/usr/share" src = os.path.join(datadir, "ibus-pinyin", "phrases.txt") shutil.copyfile(src, path) os.system("xdg-open %s" % path) # connect signals self.__special_phrases.connect("toggled", self.__toggled_cb, "SpecialPhrases") self.__edit_special_phrases.connect("clicked", __edit_special_phrases_clicked_cb) def __init_about(self): # page About self.__page_about.show() self.__name_version = self.__builder.get_object("NameVersion") self.__name_version.set_markup(_("IBus Pinyin %s") % version.get_version()) def __changed_cb(self, widget, name): self.__set_value(name, widget.get_active()) def __toggled_cb(self, widget, name): self.__set_value(name, widget.get_active ()) def __get_value(self, name, defval): if name in self.__values: var = self.__values[name] if isinstance(defval, type(var)): return var self.__set_value(name, defval) return defval def __set_value(self, name, val): var = None if isinstance(val, bool): var = GLib.Variant.new_boolean(val) elif isinstance(val, int): var = GLib.Variant.new_int32(val) elif isinstance(val, str): var = GLib.Variant.new_string(val) else: print >> sys.stderr, "val(%s) is not in support type." % repr(val) return self.__values[name] = val self.__config.set_value(self.__config_namespace, name, var) def run(self): return self.__dialog.run() def main(): name = "pinyin" if len(sys.argv) == 2: name = sys.argv[1] if name not in ("pinyin", "bopomofo"): name = "pinyin" PreferencesDialog(name).run() if __name__ == "__main__": main() ibus-pinyin-1.5.0/setup/ibus-setup-pinyin.in0000664000175000017500000000204511776565552016026 00000000000000#!/bin/sh # vim:set noet ts=4: # # ibus-tmpl - The Input Bus template project # # Copyright (c) 2007-2008 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. prefix=@prefix@ exec_prefix=@exec_prefix@ datarootdir=@datarootdir@ export IBUS_PREFIX=@prefix@ export IBUS_DATAROOTDIR=@datarootdir@ export IBUS_LOCALEDIR=@localedir@ cd @prefix@/share/ibus-pinyin/setup/ exec python main.py $@ ibus-pinyin-1.5.0/setup/ibus-pinyin-preferences.ui0000664000175000017500000035236311762161772017200 00000000000000 1 11 1 1 1 1 400 False 5 Preferences center-always gtk-preferences normal True False vertical 2 True False end gtk-close True True True True True True True False True False False 0 False True end 0 True True True False 12 12 12 12 True False 18 True False 0 none True False 6 12 True False 4 3 12 6 True True False 0 Language: True False 0 Half/full width: 1 2 True False 0 Punctuations: 2 3 Chinese True True False False True InitEnglish 1 2 English True True False False True True 2 3 Full True True False False True InitHalf 1 2 1 2 Half True True False False True True 2 3 1 2 Full True True False False True InitHalfPunct 1 2 2 3 Half True True False False True True 2 3 2 3 True False 0 Chinese: 3 4 Simplified True True False False True InitTraditionalChinese 1 2 3 4 Traditional True True False False True True 2 3 3 4 True False <b>Initial state</b> True False False 0 True False 0 none True False 6 12 True False 6 True False 12 True True False 0 Orientation of candidates: True True True 0 True False liststoreLookupTableOrientation on 0 True True 1 True True 0 True False 12 True True False 0 Number of candidates: True True True 0 True True LookupTablePageSize 0 left True True 1 True True 1 True False <b>UI</b> True False False 1 True False General False True False 12 12 12 12 True False 18 True False 0 none True False 6 12 True False 6 True False 6 True Full pinyin True True False False True DoublePinyin False True 0 True False 6 Double pinyin True True False False True True False True 0 True False False liststoreDoublePinyin on 0 True True 1 False True 1 True True 0 Show raw input of Double Pinyin True True False False True True True 1 Incomplete pinyin True True False False True True True True 2 True False <b>Pinyin mode</b> True False True 0 True False 0 none True False 6 12 True False 6 True False 2 2 6 6 True [Shift] select candidate True True False False True [-] [=] flip page True True False False True True 1 2 [,] [.] flip page True True False False True True 1 2 Auto commit True True False False True 1 2 1 2 True True 0 True False <b>Input Custom</b> True False True 1 True False 0 none True False 6 12 True False 6 2 6 6 gn => ng True True False False True True 1 2 mg => ng True True False False True True 2 3 iou => iu True True False False True True 3 4 uei => ui True True False False True True 1 2 1 2 uen => un True True False False True True 1 2 2 3 ue => ve True True False False True True 1 2 3 4 v =>u, ve => ue, van => uan and etc True True False False True True 2 4 5 Enable correct pinyin True True False False True True 2 on => ong True True False False True True 5 6 True False <b>Correct pinyin</b> True True True 2 1 True False Pinyin mode 1 False True False 12 12 12 12 True False 18 True False 0 none True False 6 12 True False 6 Incomplete Bopomofo True True False False True True True True 0 True False True False 0 Keyboard Mapping: True True 0 True False liststoreBopomofoKeyboardMapping on 0 True True 1 True True 1 True False <b>Bopomofo mode</b> True False False 0 True False 0 none True False 6 12 True False 6 True False True False 0 Selection Keys: True True 0 True False liststoreSelectionKeys on 0 True True 1 True True 0 Enable Guidekey for Candidates Selection True True False False True True True True 1 Enable Auxiliary Select Keys F1 .. F10 True True False False True True True True 2 Enable Auxiliary Select Keys Numbers on Keypad True True False False True True True True 3 True False <b>Selection mode</b> True False False 1 True False 0 none True False 6 12 True False 6 True False 0 Feature of Enter key: True True 0 Commit first candidate True True False False True True CommitOriginalText True True 1 Commit original text True True False False True True True 2 True False <b>Other</b> True False False 2 2 True False Bopomofo mode 2 False True False 12 12 12 12 True False 12 True False 6 12 True False 12 2 6 6 True c => ch True False True False False True True 1 2 z => zh True False True False False True True 2 3 s => sh True False True False False True True 3 4 l => n True False True False False True True 4 5 f => h True False True False False True True 5 6 l => r True False True False False True 6 7 k => g True False True False False True True 7 8 an => ang True False True False False True True 8 9 en => eng True False True False False True True 9 10 in => ing True False True False False True True 10 11 ch => c True False True False False True 1 2 1 2 zh => z True False True False False True 1 2 2 3 sh => s True False True False False True 1 2 3 4 n => l True False True False False True 1 2 4 5 h => f True False True False False True 1 2 5 6 r => l True False True False False True 1 2 6 7 g => k True False True False False True 1 2 7 8 ang => an True False True False False True 1 2 8 9 eng => en True False True False False True 1 2 9 10 ing => in True False True False False True 1 2 10 11 Enable fuzzy syllable True True False False True 2 True True 0 3 True False Fuzzy syllable 3 False True False 12 12 12 12 True False True False 0 none True False 6 12 True False 6 True False 12 Use custom phrases True True False False True False True 0 Edit custom phrases True True True False False False 1 False False 0 True False <b>Dictionary option</b> True True True 0 4 True False Dictionary 4 False True False 12 12 12 12 True False 6 True False 6 True True 32 gtk-about True True 0 True False <big><b>IBus Pinyin %s</b></big> True True True True 1 True False Pinyin input method for IBus True True True 2 True False <small>Copyright (c) 2009-2010 Peng Huang</small> True True True True True 3 http://ibus.googlecode.com True True True False none http://ibus.googlecode.com False False 4 True False <small> <b>Authors:</b> Peng Huang BYVoid Peng Wu <b>Contributors:</b> koterpilla, Zerng07 </small> True center True True True 5 True False 0 5 True False About 5 False False True 1 buttonClose Standard GinYieh Eten IBM MSPY ZRM ABC ZGPY PYJJ XHE Horizontal Vertical 1234567890 asdfghjkl; 1qaz2wsxed asdfzxcvgb 1234qweras aoeu;qjkix aoeuhtnsid aoeuidhtns qweasdzxcr ibus-pinyin-1.5.0/setup/Makefile.in0000664000175000017500000004537312063705664014140 00000000000000# Makefile.in generated by automake 1.11.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. VPATH = @srcdir@ am__make_dryrun = \ { \ am__dry=no; \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ *) \ for am__flg in $$MAKEFLAGS; do \ case $$am__flg in \ *=*|--*) ;; \ *n*) am__dry=yes; break;; \ esac; \ done;; \ esac; \ test $$am__dry = yes; \ } 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 = setup DIST_COMMON = $(setup_pinyin_PYTHON) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in $(srcdir)/ibus-setup-pinyin.in \ $(srcdir)/version.py.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/as-version.m4 \ $(top_srcdir)/m4/boost.m4 $(top_srcdir)/m4/intltool.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = ibus-setup-pinyin version.py CONFIG_CLEAN_VPATH_FILES = 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 -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(libexecdir)" \ "$(DESTDIR)$(setup_pinyindir)" SCRIPTS = $(libexec_SCRIPTS) 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_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ 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__py_compile = PYTHON=$(PYTHON) $(SHELL) $(py_compile) py_compile = $(top_srcdir)/py-compile DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BOOST_CPPFLAGS = @BOOST_CPPFLAGS@ BOOST_ROOT = @BOOST_ROOT@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENV = @ENV@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ IBUS_CFLAGS = @IBUS_CFLAGS@ IBUS_LIBS = @IBUS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ LUA_CFLAGS = @LUA_CFLAGS@ LUA_LIBS = @LUA_LIBS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ 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@ PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@ PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@ PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@ PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@ PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PYTHON = @PYTHON@ PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ PYTHON_PLATFORM = @PYTHON_PLATFORM@ PYTHON_PREFIX = @PYTHON_PREFIX@ PYTHON_VERSION = @PYTHON_VERSION@ PYZY = @PYZY@ PYZY_CFLAGS = @PYZY_CFLAGS@ PYZY_LIBS = @PYZY_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SQLITE3 = @SQLITE3@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ 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@ 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@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ pkgpyexecdir = @pkgpyexecdir@ pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ 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@ setup_pinyin_PYTHON = \ main.py \ version.py \ ibus-pinyin-preferences.ui \ $(NULL) setup_pinyindir = $(datadir)/ibus-pinyin/setup libexec_SCRIPTS = ibus-setup-pinyin CLEANFILES = \ *.pyc \ $(NULL) EXTRA_DIST = \ version.py.in \ ibus-setup-pinyin.in \ $(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 setup/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu setup/Makefile .PRECIOUS: 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__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ 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): ibus-setup-pinyin: $(top_builddir)/config.status $(srcdir)/ibus-setup-pinyin.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ version.py: $(top_builddir)/config.status $(srcdir)/version.py.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ install-libexecSCRIPTS: $(libexec_SCRIPTS) @$(NORMAL_INSTALL) @list='$(libexec_SCRIPTS)'; test -n "$(libexecdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(libexecdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(libexecdir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ done | \ sed -e 'p;s,.*/,,;n' \ -e 'h;s|.*|.|' \ -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ if ($$2 == $$4) { files[d] = files[d] " " $$1; \ if (++n[d] == $(am__install_max)) { \ print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ else { print "f", d "/" $$4, $$1 } } \ END { for (d in files) print "f", d, files[d] }' | \ while read type dir files; do \ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ test -z "$$files" || { \ echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(libexecdir)$$dir'"; \ $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(libexecdir)$$dir" || exit $$?; \ } \ ; done uninstall-libexecSCRIPTS: @$(NORMAL_UNINSTALL) @list='$(libexec_SCRIPTS)'; test -n "$(libexecdir)" || exit 0; \ files=`for p in $$list; do echo "$$p"; done | \ sed -e 's,.*/,,;$(transform)'`; \ dir='$(DESTDIR)$(libexecdir)'; $(am__uninstall_files_from_dir) mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-setup_pinyinPYTHON: $(setup_pinyin_PYTHON) @$(NORMAL_INSTALL) @list='$(setup_pinyin_PYTHON)'; dlist=; list2=; test -n "$(setup_pinyindir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(setup_pinyindir)'"; \ $(MKDIR_P) "$(DESTDIR)$(setup_pinyindir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \ if test -f $$b$$p; then \ $(am__strip_dir) \ dlist="$$dlist $$f"; \ list2="$$list2 $$b$$p"; \ else :; fi; \ done; \ for file in $$list2; do echo $$file; done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(setup_pinyindir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(setup_pinyindir)" || exit $$?; \ done || exit $$?; \ if test -n "$$dlist"; then \ $(am__py_compile) --destdir "$(DESTDIR)" \ --basedir "$(setup_pinyindir)" $$dlist; \ else :; fi uninstall-setup_pinyinPYTHON: @$(NORMAL_UNINSTALL) @list='$(setup_pinyin_PYTHON)'; test -n "$(setup_pinyindir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ dir='$(DESTDIR)$(setup_pinyindir)'; \ filesc=`echo "$$files" | sed 's|$$|c|'`; \ fileso=`echo "$$files" | sed 's|$$|o|'`; \ st=0; \ for files in "$$files" "$$filesc" "$$fileso"; do \ $(am__uninstall_files_from_dir) || st=$$?; \ done; \ exit $$st tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(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 $(SCRIPTS) installdirs: for dir in "$(DESTDIR)$(libexecdir)" "$(DESTDIR)$(setup_pinyindir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done 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: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || 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-setup_pinyinPYTHON install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-libexecSCRIPTS 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: uninstall-libexecSCRIPTS uninstall-setup_pinyinPYTHON .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic clean-libtool \ 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-libexecSCRIPTS \ install-man install-pdf install-pdf-am install-ps \ install-ps-am install-setup_pinyinPYTHON install-strip \ installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ uninstall-libexecSCRIPTS uninstall-setup_pinyinPYTHON test-pinyin: $(ENV) DBUS_DEBUG=true \ IBUS_LOCALEDIR=@localedir@ \ PYTHONPATH=$(abs_top_srcdir):$(pyexecdir) \ $(PYTHON) $(srcdir)/main.py pinyin test-bopomofo: $(ENV) DBUS_DEBUG=true \ IBUS_LOCALEDIR=@localedir@ \ PYTHONPATH=$(abs_top_srcdir):$(pyexecdir) \ $(PYTHON) $(srcdir)/main.py bopomofo # 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: ibus-pinyin-1.5.0/setup/Makefile.am0000664000175000017500000000262612010524050014075 00000000000000# vim:set noet ts=4: # # ibus-pinyin - The Chinese PinYin engine for IBus # # Copyright (c) 2008-2010 Peng Huang # # 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, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. setup_pinyin_PYTHON = \ main.py \ version.py \ ibus-pinyin-preferences.ui \ $(NULL) setup_pinyindir = $(datadir)/ibus-pinyin/setup libexec_SCRIPTS = ibus-setup-pinyin CLEANFILES = \ *.pyc \ $(NULL) EXTRA_DIST = \ version.py.in \ ibus-setup-pinyin.in \ $(NULL) test-pinyin: $(ENV) DBUS_DEBUG=true \ IBUS_LOCALEDIR=@localedir@ \ PYTHONPATH=$(abs_top_srcdir):$(pyexecdir) \ $(PYTHON) $(srcdir)/main.py pinyin test-bopomofo: $(ENV) DBUS_DEBUG=true \ IBUS_LOCALEDIR=@localedir@ \ PYTHONPATH=$(abs_top_srcdir):$(pyexecdir) \ $(PYTHON) $(srcdir)/main.py bopomofo ibus-pinyin-1.5.0/config.h.in0000664000175000017500000000651512063705673012751 00000000000000/* config.h.in. Generated from configure.ac by autoheader. */ /* always defined to indicate that i18n is enabled */ #undef ENABLE_NLS /* Gettext package */ #undef GETTEXT_PACKAGE /* Define to 1 if you have the `bind_textdomain_codeset' function. */ #undef HAVE_BIND_TEXTDOMAIN_CODESET /* Defined if the requested minimum BOOST version is satisfied */ #undef HAVE_BOOST /* Define to 1 if you have */ #undef HAVE_BOOST_BIND_HPP /* Define to 1 if you have */ #undef HAVE_BOOST_SIGNALS2_HPP /* Define to 1 if you have the `dcgettext' function. */ #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 to 1 if you have the `ibus_config_get_values' function. */ #undef HAVE_IBUS_CONFIG_GET_VALUES /* Define to 1 if you have the header file. */ #undef HAVE_INTTYPES_H /* Define if your file defines LC_MESSAGES. */ #undef HAVE_LC_MESSAGES /* Define to 1 if you have the header file. */ #undef HAVE_LOCALE_H /* Define to 1 if you have the header file. */ #undef HAVE_MEMORY_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_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_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 the sub-directory in which libtool stores uninstalled libraries. */ #undef LT_OBJDIR /* Define to 1 if your C compiler doesn't accept -c and -o together. */ #undef NO_MINUS_C_MINUS_O /* 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 you have the ANSI C header files. */ #undef STDC_HEADERS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # undef _ALL_SOURCE #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # undef _GNU_SOURCE #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # undef _POSIX_PTHREAD_SEMANTICS #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # undef _TANDEM_SOURCE #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # undef __EXTENSIONS__ #endif /* Version number of package */ #undef VERSION /* Define to 1 if on MINIX. */ #undef _MINIX /* Define to 2 if the system does not provide POSIX.1 features except with this defined. */ #undef _POSIX_1_SOURCE /* Define to 1 if you need to in order for `stat' and other things to work. */ #undef _POSIX_SOURCE